Created
May 26, 2020 00:15
-
-
Save cjavad/042f302b67d2b44b87b9389da44d1b5b to your computer and use it in GitHub Desktop.
node-xml2js 1832e0b6b2de30a5e326d1cf21708cd32305a538 browerified and minified. https://github.com/Leonidas-from-XIV/node-xml2js/issues/277
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.xml2js=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r}()({1:[function(require,module,exports){(function(){"use strict";exports.stripBOM=function(str){if(str[0]==="\ufeff"){return str.substring(1)}else{return str}}}).call(this)},{}],2:[function(require,module,exports){(function(){"use strict";var builder,defaults,escapeCDATA,requiresCDATA,wrapCDATA,hasProp={}.hasOwnProperty;builder=require("xmlbuilder");defaults=require("./defaults").defaults;requiresCDATA=function(entry){return typeof entry==="string"&&(entry.indexOf("&")>=0||entry.indexOf(">")>=0||entry.indexOf("<")>=0)};wrapCDATA=function(entry){return"<![CDATA["+escapeCDATA(entry)+"]]>"};escapeCDATA=function(entry){return entry.replace("]]>","]]]]><![CDATA[>")};exports.Builder=function(){function Builder(opts){var key,ref,value;this.options={};ref=defaults["0.2"];for(key in ref){if(!hasProp.call(ref,key))continue;value=ref[key];this.options[key]=value}for(key in opts){if(!hasProp.call(opts,key))continue;value=opts[key];this.options[key]=value}}Builder.prototype.buildObject=function(rootObj){var attrkey,charkey,render,rootElement,rootName;attrkey=this.options.attrkey;charkey=this.options.charkey;if(Object.keys(rootObj).length===1&&this.options.rootName===defaults["0.2"].rootName){rootName=Object.keys(rootObj)[0];rootObj=rootObj[rootName]}else{rootName=this.options.rootName}render=function(_this){return function(element,obj){var attr,child,entry,index,key,value;if(typeof obj!=="object"){if(_this.options.cdata&&requiresCDATA(obj)){element.raw(wrapCDATA(obj))}else{element.txt(obj)}}else if(Array.isArray(obj)){for(index in obj){if(!hasProp.call(obj,index))continue;child=obj[index];for(key in child){entry=child[key];element=render(element.ele(key),entry).up()}}}else{for(key in obj){if(!hasProp.call(obj,key))continue;child=obj[key];if(key===attrkey){if(typeof child==="object"){for(attr in child){value=child[attr];element=element.att(attr,value)}}}else if(key===charkey){if(_this.options.cdata&&requiresCDATA(child)){element=element.raw(wrapCDATA(child))}else{element=element.txt(child)}}else if(Array.isArray(child)){for(index in child){if(!hasProp.call(child,index))continue;entry=child[index];if(typeof entry==="string"){if(_this.options.cdata&&requiresCDATA(entry)){element=element.ele(key).raw(wrapCDATA(entry)).up()}else{element=element.ele(key,entry).up()}}else{element=render(element.ele(key),entry).up()}}}else if(typeof child==="object"){element=render(element.ele(key),child).up()}else{if(typeof child==="string"&&_this.options.cdata&&requiresCDATA(child)){element=element.ele(key).raw(wrapCDATA(child)).up()}else{if(child==null){child=""}element=element.ele(key,child.toString()).up()}}}}return element}}(this);rootElement=builder.create(rootName,this.options.xmldec,this.options.doctype,{headless:this.options.headless,allowSurrogateChars:this.options.allowSurrogateChars});return render(rootElement,rootObj).end(this.options.renderOpts)};return Builder}()}).call(this)},{"./defaults":3,xmlbuilder:40}],3:[function(require,module,exports){(function(){exports.defaults={.1:{explicitCharkey:false,trim:true,normalize:true,normalizeTags:false,attrkey:"@",charkey:"#",explicitArray:false,ignoreAttrs:false,mergeAttrs:false,explicitRoot:false,validator:null,xmlns:false,explicitChildren:false,childkey:"@@",charsAsChildren:false,includeWhiteChars:false,async:false,strict:true,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,emptyTag:""},.2:{explicitCharkey:false,trim:false,normalize:false,normalizeTags:false,attrkey:"$",charkey:"_",explicitArray:true,ignoreAttrs:false,mergeAttrs:false,explicitRoot:true,validator:null,xmlns:false,explicitChildren:false,preserveChildrenOrder:false,childkey:"$$",charsAsChildren:false,includeWhiteChars:false,async:false,strict:true,attrNameProcessors:null,attrValueProcessors:null,tagNameProcessors:null,valueProcessors:null,rootName:"root",xmldec:{version:"1.0",encoding:"UTF-8",standalone:true},doctype:null,renderOpts:{pretty:true,indent:" ",newline:"\n"},headless:false,chunkSize:1e4,emptyTag:"",cdata:false}}}).call(this)},{}],4:[function(require,module,exports){(function(){"use strict";var bom,defaults,events,isEmpty,processItem,processors,sax,setImmediate,bind=function(fn,me){return function(){return fn.apply(me,arguments)}},extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;sax=require("sax");events=require("events");bom=require("./bom");processors=require("./processors");setImmediate=require("timers").setImmediate;defaults=require("./defaults").defaults;isEmpty=function(thing){return typeof thing==="object"&&thing!=null&&Object.keys(thing).length===0};processItem=function(processors,item,key){var i,len,process;for(i=0,len=processors.length;i<len;i++){process=processors[i];item=process(item,key)}return item};exports.Parser=function(superClass){extend(Parser,superClass);function Parser(opts){this.parseStringPromise=bind(this.parseStringPromise,this);this.parseString=bind(this.parseString,this);this.reset=bind(this.reset,this);this.assignOrPush=bind(this.assignOrPush,this);this.processAsync=bind(this.processAsync,this);var key,ref,value;if(!(this instanceof exports.Parser)){return new exports.Parser(opts)}this.options={};ref=defaults["0.2"];for(key in ref){if(!hasProp.call(ref,key))continue;value=ref[key];this.options[key]=value}for(key in opts){if(!hasProp.call(opts,key))continue;value=opts[key];this.options[key]=value}if(this.options.xmlns){this.options.xmlnskey=this.options.attrkey+"ns"}if(this.options.normalizeTags){if(!this.options.tagNameProcessors){this.options.tagNameProcessors=[]}this.options.tagNameProcessors.unshift(processors.normalize)}this.reset()}Parser.prototype.processAsync=function(){var chunk,err;try{if(this.remaining.length<=this.options.chunkSize){chunk=this.remaining;this.remaining="";this.saxParser=this.saxParser.write(chunk);return this.saxParser.close()}else{chunk=this.remaining.substr(0,this.options.chunkSize);this.remaining=this.remaining.substr(this.options.chunkSize,this.remaining.length);this.saxParser=this.saxParser.write(chunk);return setImmediate(this.processAsync)}}catch(error1){err=error1;if(!this.saxParser.errThrown){this.saxParser.errThrown=true;return this.emit(err)}}};Parser.prototype.assignOrPush=function(obj,key,newValue){if(!(key in obj)){if(!this.options.explicitArray){return obj[key]=newValue}else{return obj[key]=[newValue]}}else{if(!(obj[key]instanceof Array)){obj[key]=[obj[key]]}return obj[key].push(newValue)}};Parser.prototype.reset=function(){var attrkey,charkey,ontext,stack;this.removeAllListeners();this.saxParser=sax.parser(this.options.strict,{trim:false,normalize:false,xmlns:this.options.xmlns});this.saxParser.errThrown=false;this.saxParser.onerror=function(_this){return function(error){_this.saxParser.resume();if(!_this.saxParser.errThrown){_this.saxParser.errThrown=true;return _this.emit("error",error)}}}(this);this.saxParser.onend=function(_this){return function(){if(!_this.saxParser.ended){_this.saxParser.ended=true;return _this.emit("end",_this.resultObject)}}}(this);this.saxParser.ended=false;this.EXPLICIT_CHARKEY=this.options.explicitCharkey;this.resultObject=null;stack=[];attrkey=this.options.attrkey;charkey=this.options.charkey;this.saxParser.onopentag=function(_this){return function(node){var key,newValue,obj,processedKey,ref;obj={};obj[charkey]="";if(!_this.options.ignoreAttrs){ref=node.attributes;for(key in ref){if(!hasProp.call(ref,key))continue;if(!(attrkey in obj)&&!_this.options.mergeAttrs){obj[attrkey]={}}newValue=_this.options.attrValueProcessors?processItem(_this.options.attrValueProcessors,node.attributes[key],key):node.attributes[key];processedKey=_this.options.attrNameProcessors?processItem(_this.options.attrNameProcessors,key):key;if(_this.options.mergeAttrs){_this.assignOrPush(obj,processedKey,newValue)}else{obj[attrkey][processedKey]=newValue}}}obj["#name"]=_this.options.tagNameProcessors?processItem(_this.options.tagNameProcessors,node.name):node.name;if(_this.options.xmlns){obj[_this.options.xmlnskey]={uri:node.uri,local:node.local}}return stack.push(obj)}}(this);this.saxParser.onclosetag=function(_this){return function(){var cdata,emptyStr,key,node,nodeName,obj,objClone,old,s,xpath;obj=stack.pop();nodeName=obj["#name"];if(!_this.options.explicitChildren||!_this.options.preserveChildrenOrder){delete obj["#name"]}if(obj.cdata===true){cdata=obj.cdata;delete obj.cdata}s=stack[stack.length-1];if(obj[charkey].match(/^\s*$/)&&!cdata){emptyStr=obj[charkey];delete obj[charkey]}else{if(_this.options.trim){obj[charkey]=obj[charkey].trim()}if(_this.options.normalize){obj[charkey]=obj[charkey].replace(/\s{2,}/g," ").trim()}obj[charkey]=_this.options.valueProcessors?processItem(_this.options.valueProcessors,obj[charkey],nodeName):obj[charkey];if(Object.keys(obj).length===1&&charkey in obj&&!_this.EXPLICIT_CHARKEY){obj=obj[charkey]}}if(isEmpty(obj)){if(typeof _this.options.emptyTag==="function"){obj=_this.options.emptyTag()}else{obj=_this.options.emptyTag!==""?_this.options.emptyTag:emptyStr}}if(_this.options.validator!=null){xpath="/"+function(){var i,len,results;results=[];for(i=0,len=stack.length;i<len;i++){node=stack[i];results.push(node["#name"])}return results}().concat(nodeName).join("/");(function(){var err;try{return obj=_this.options.validator(xpath,s&&s[nodeName],obj)}catch(error1){err=error1;return _this.emit("error",err)}})()}if(_this.options.explicitChildren&&!_this.options.mergeAttrs&&typeof obj==="object"){if(!_this.options.preserveChildrenOrder){node={};if(_this.options.attrkey in obj){node[_this.options.attrkey]=obj[_this.options.attrkey];delete obj[_this.options.attrkey]}if(!_this.options.charsAsChildren&&_this.options.charkey in obj){node[_this.options.charkey]=obj[_this.options.charkey];delete obj[_this.options.charkey]}if(Object.getOwnPropertyNames(obj).length>0){node[_this.options.childkey]=obj}obj=node}else if(s){s[_this.options.childkey]=s[_this.options.childkey]||[];objClone={};for(key in obj){if(!hasProp.call(obj,key))continue;objClone[key]=obj[key]}s[_this.options.childkey].push(objClone);delete obj["#name"];if(Object.keys(obj).length===1&&charkey in obj&&!_this.EXPLICIT_CHARKEY){obj=obj[charkey]}}}if(stack.length>0){return _this.assignOrPush(s,nodeName,obj)}else{if(_this.options.explicitRoot){old=obj;obj={};obj[nodeName]=old}_this.resultObject=obj;_this.saxParser.ended=true;return _this.emit("end",_this.resultObject)}}}(this);ontext=function(_this){return function(text){var charChild,s;s=stack[stack.length-1];if(s){s[charkey]+=text;if(_this.options.explicitChildren&&_this.options.preserveChildrenOrder&&_this.options.charsAsChildren&&(_this.options.includeWhiteChars||text.replace(/\\n/g,"").trim()!=="")){s[_this.options.childkey]=s[_this.options.childkey]||[];charChild={"#name":"__text__"};charChild[charkey]=text;if(_this.options.normalize){charChild[charkey]=charChild[charkey].replace(/\s{2,}/g," ").trim()}s[_this.options.childkey].push(charChild)}return s}}}(this);this.saxParser.ontext=ontext;return this.saxParser.oncdata=function(_this){return function(text){var s;s=ontext(text);if(s){return s.cdata=true}}}(this)};Parser.prototype.parseString=function(str,cb){var err;if(cb!=null&&typeof cb==="function"){this.on("end",function(result){this.reset();return cb(null,result)});this.on("error",function(err){this.reset();return cb(err)})}try{str=str.toString();if(str.trim()===""){this.emit("end",null);return true}str=bom.stripBOM(str);if(this.options.async){this.remaining=str;setImmediate(this.processAsync);return this.saxParser}return this.saxParser.write(str).close()}catch(error1){err=error1;if(!(this.saxParser.errThrown||this.saxParser.ended)){this.emit("error",err);return this.saxParser.errThrown=true}else if(this.saxParser.ended){throw err}}};Parser.prototype.parseStringPromise=function(str){return new Promise(function(_this){return function(resolve,reject){return _this.parseString(str,function(err,value){if(err){return reject(err)}else{return resolve(value)}})}}(this))};return Parser}(events);exports.parseString=function(str,a,b){var cb,options,parser;if(b!=null){if(typeof b==="function"){cb=b}if(typeof a==="object"){options=a}}else{if(typeof a==="function"){cb=a}options={}}parser=new exports.Parser(options);return parser.parseString(str,cb)};exports.parseStringPromise=function(str,a){var options,parser;if(typeof a==="object"){options=a}parser=new exports.Parser(options);return parser.parseStringPromise(str)}}).call(this)},{"./bom":1,"./defaults":3,"./processors":5,events:45,sax:7,timers:70}],5:[function(require,module,exports){(function(){"use strict";var prefixMatch;prefixMatch=new RegExp(/(?!xmlns)^.*:/);exports.normalize=function(str){return str.toLowerCase()};exports.firstCharLowerCase=function(str){return str.charAt(0).toLowerCase()+str.slice(1)};exports.stripPrefix=function(str){return str.replace(prefixMatch,"")};exports.parseNumbers=function(str){if(!isNaN(str)){str=str%1===0?parseInt(str,10):parseFloat(str)}return str};exports.parseBooleans=function(str){if(/^(?:true|false)$/i.test(str)){str=str.toLowerCase()==="true"}return str}}).call(this)},{}],6:[function(require,module,exports){(function(){"use strict";var builder,defaults,parser,processors,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;defaults=require("./defaults");builder=require("./builder");parser=require("./parser");processors=require("./processors");exports.defaults=defaults.defaults;exports.processors=processors;exports.ValidationError=function(superClass){extend(ValidationError,superClass);function ValidationError(message){this.message=message}return ValidationError}(Error);exports.Builder=builder.Builder;exports.Parser=parser.Parser;exports.parseString=parser.parseString;exports.parseStringPromise=parser.parseStringPromise}).call(this)},{"./builder":2,"./defaults":3,"./parser":4,"./processors":5}],7:[function(require,module,exports){(function(Buffer){(function(sax){sax.parser=function(strict,opt){return new SAXParser(strict,opt)};sax.SAXParser=SAXParser;sax.SAXStream=SAXStream;sax.createStream=createStream;sax.MAX_BUFFER_LENGTH=64*1024;var buffers=["comment","sgmlDecl","textNode","tagName","doctype","procInstName","procInstBody","entity","attribName","attribValue","cdata","script"];sax.EVENTS=["text","processinginstruction","sgmldeclaration","doctype","comment","opentagstart","attribute","opentag","closetag","opencdata","cdata","closecdata","error","end","ready","script","opennamespace","closenamespace"];function SAXParser(strict,opt){if(!(this instanceof SAXParser)){return new SAXParser(strict,opt)}var parser=this;clearBuffers(parser);parser.q=parser.c="";parser.bufferCheckPosition=sax.MAX_BUFFER_LENGTH;parser.opt=opt||{};parser.opt.lowercase=parser.opt.lowercase||parser.opt.lowercasetags;parser.looseCase=parser.opt.lowercase?"toLowerCase":"toUpperCase";parser.tags=[];parser.closed=parser.closedRoot=parser.sawRoot=false;parser.tag=parser.error=null;parser.strict=!!strict;parser.noscript=!!(strict||parser.opt.noscript);parser.state=S.BEGIN;parser.strictEntities=parser.opt.strictEntities;parser.ENTITIES=parser.strictEntities?Object.create(sax.XML_ENTITIES):Object.create(sax.ENTITIES);parser.attribList=[];if(parser.opt.xmlns){parser.ns=Object.create(rootNS)}parser.trackPosition=parser.opt.position!==false;if(parser.trackPosition){parser.position=parser.line=parser.column=0}emit(parser,"onready")}if(!Object.create){Object.create=function(o){function F(){}F.prototype=o;var newf=new F;return newf}}if(!Object.keys){Object.keys=function(o){var a=[];for(var i in o)if(o.hasOwnProperty(i))a.push(i);return a}}function checkBufferLength(parser){var maxAllowed=Math.max(sax.MAX_BUFFER_LENGTH,10);var maxActual=0;for(var i=0,l=buffers.length;i<l;i++){var len=parser[buffers[i]].length;if(len>maxAllowed){switch(buffers[i]){case"textNode":closeText(parser);break;case"cdata":emitNode(parser,"oncdata",parser.cdata);parser.cdata="";break;case"script":emitNode(parser,"onscript",parser.script);parser.script="";break;default:error(parser,"Max buffer length exceeded: "+buffers[i])}}maxActual=Math.max(maxActual,len)}var m=sax.MAX_BUFFER_LENGTH-maxActual;parser.bufferCheckPosition=m+parser.position}function clearBuffers(parser){for(var i=0,l=buffers.length;i<l;i++){parser[buffers[i]]=""}}function flushBuffers(parser){closeText(parser);if(parser.cdata!==""){emitNode(parser,"oncdata",parser.cdata);parser.cdata=""}if(parser.script!==""){emitNode(parser,"onscript",parser.script);parser.script=""}}SAXParser.prototype={end:function(){end(this)},write:write,resume:function(){this.error=null;return this},close:function(){return this.write(null)},flush:function(){flushBuffers(this)}};var Stream;try{Stream=require("stream").Stream}catch(ex){Stream=function(){}}var streamWraps=sax.EVENTS.filter(function(ev){return ev!=="error"&&ev!=="end"});function createStream(strict,opt){return new SAXStream(strict,opt)}function SAXStream(strict,opt){if(!(this instanceof SAXStream)){return new SAXStream(strict,opt)}Stream.apply(this);this._parser=new SAXParser(strict,opt);this.writable=true;this.readable=true;var me=this;this._parser.onend=function(){me.emit("end")};this._parser.onerror=function(er){me.emit("error",er);me._parser.error=null};this._decoder=null;streamWraps.forEach(function(ev){Object.defineProperty(me,"on"+ev,{get:function(){return me._parser["on"+ev]},set:function(h){if(!h){me.removeAllListeners(ev);me._parser["on"+ev]=h;return h}me.on(ev,h)},enumerable:true,configurable:false})})}SAXStream.prototype=Object.create(Stream.prototype,{constructor:{value:SAXStream}});SAXStream.prototype.write=function(data){if(typeof Buffer==="function"&&typeof Buffer.isBuffer==="function"&&Buffer.isBuffer(data)){if(!this._decoder){var SD=require("string_decoder").StringDecoder;this._decoder=new SD("utf8")}data=this._decoder.write(data)}this._parser.write(data.toString());this.emit("data",data);return true};SAXStream.prototype.end=function(chunk){if(chunk&&chunk.length){this.write(chunk)}this._parser.end();return true};SAXStream.prototype.on=function(ev,handler){var me=this;if(!me._parser["on"+ev]&&streamWraps.indexOf(ev)!==-1){me._parser["on"+ev]=function(){var args=arguments.length===1?[arguments[0]]:Array.apply(null,arguments);args.splice(0,0,ev);me.emit.apply(me,args)}}return Stream.prototype.on.call(me,ev,handler)};var CDATA="[CDATA[";var DOCTYPE="DOCTYPE";var XML_NAMESPACE="http://www.w3.org/XML/1998/namespace";var XMLNS_NAMESPACE="http://www.w3.org/2000/xmlns/";var rootNS={xml:XML_NAMESPACE,xmlns:XMLNS_NAMESPACE};var nameStart=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/;var nameBody=/[:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;var entityStart=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/;var entityBody=/[#:_A-Za-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u00B7\u0300-\u036F\u203F-\u2040.\d-]/;function isWhitespace(c){return c===" "||c==="\n"||c==="\r"||c==="\t"}function isQuote(c){return c==='"'||c==="'"}function isAttribEnd(c){return c===">"||isWhitespace(c)}function isMatch(regex,c){return regex.test(c)}function notMatch(regex,c){return!isMatch(regex,c)}var S=0;sax.STATE={BEGIN:S++,BEGIN_WHITESPACE:S++,TEXT:S++,TEXT_ENTITY:S++,OPEN_WAKA:S++,SGML_DECL:S++,SGML_DECL_QUOTED:S++,DOCTYPE:S++,DOCTYPE_QUOTED:S++,DOCTYPE_DTD:S++,DOCTYPE_DTD_QUOTED:S++,COMMENT_STARTING:S++,COMMENT:S++,COMMENT_ENDING:S++,COMMENT_ENDED:S++,CDATA:S++,CDATA_ENDING:S++,CDATA_ENDING_2:S++,PROC_INST:S++,PROC_INST_BODY:S++,PROC_INST_ENDING:S++,OPEN_TAG:S++,OPEN_TAG_SLASH:S++,ATTRIB:S++,ATTRIB_NAME:S++,ATTRIB_NAME_SAW_WHITE:S++,ATTRIB_VALUE:S++,ATTRIB_VALUE_QUOTED:S++,ATTRIB_VALUE_CLOSED:S++,ATTRIB_VALUE_UNQUOTED:S++,ATTRIB_VALUE_ENTITY_Q:S++,ATTRIB_VALUE_ENTITY_U:S++,CLOSE_TAG:S++,CLOSE_TAG_SAW_WHITE:S++,SCRIPT:S++,SCRIPT_ENDING:S++};sax.XML_ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'"};sax.ENTITIES={amp:"&",gt:">",lt:"<",quot:'"',apos:"'",AElig:198,Aacute:193,Acirc:194,Agrave:192,Aring:197,Atilde:195,Auml:196,Ccedil:199,ETH:208,Eacute:201,Ecirc:202,Egrave:200,Euml:203,Iacute:205,Icirc:206,Igrave:204,Iuml:207,Ntilde:209,Oacute:211,Ocirc:212,Ograve:210,Oslash:216,Otilde:213,Ouml:214,THORN:222,Uacute:218,Ucirc:219,Ugrave:217,Uuml:220,Yacute:221,aacute:225,acirc:226,aelig:230,agrave:224,aring:229,atilde:227,auml:228,ccedil:231,eacute:233,ecirc:234,egrave:232,eth:240,euml:235,iacute:237,icirc:238,igrave:236,iuml:239,ntilde:241,oacute:243,ocirc:244,ograve:242,oslash:248,otilde:245,ouml:246,szlig:223,thorn:254,uacute:250,ucirc:251,ugrave:249,uuml:252,yacute:253,yuml:255,copy:169,reg:174,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,ordf:170,laquo:171,not:172,shy:173,macr:175,deg:176,plusmn:177,sup1:185,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,times:215,divide:247,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830};Object.keys(sax.ENTITIES).forEach(function(key){var e=sax.ENTITIES[key];var s=typeof e==="number"?String.fromCharCode(e):e;sax.ENTITIES[key]=s});for(var s in sax.STATE){sax.STATE[sax.STATE[s]]=s}S=sax.STATE;function emit(parser,event,data){parser[event]&&parser[event](data)}function emitNode(parser,nodeType,data){if(parser.textNode)closeText(parser);emit(parser,nodeType,data)}function closeText(parser){parser.textNode=textopts(parser.opt,parser.textNode);if(parser.textNode)emit(parser,"ontext",parser.textNode);parser.textNode=""}function textopts(opt,text){if(opt.trim)text=text.trim();if(opt.normalize)text=text.replace(/\s+/g," ");return text}function error(parser,er){closeText(parser);if(parser.trackPosition){er+="\nLine: "+parser.line+"\nColumn: "+parser.column+"\nChar: "+parser.c}er=new Error(er);parser.error=er;emit(parser,"onerror",er);return parser}function end(parser){if(parser.sawRoot&&!parser.closedRoot)strictFail(parser,"Unclosed root tag");if(parser.state!==S.BEGIN&&parser.state!==S.BEGIN_WHITESPACE&&parser.state!==S.TEXT){error(parser,"Unexpected end")}closeText(parser);parser.c="";parser.closed=true;emit(parser,"onend");SAXParser.call(parser,parser.strict,parser.opt);return parser}function strictFail(parser,message){if(typeof parser!=="object"||!(parser instanceof SAXParser)){throw new Error("bad call to strictFail")}if(parser.strict){error(parser,message)}}function newTag(parser){if(!parser.strict)parser.tagName=parser.tagName[parser.looseCase]();var parent=parser.tags[parser.tags.length-1]||parser;var tag=parser.tag={name:parser.tagName,attributes:{}};if(parser.opt.xmlns){tag.ns=parent.ns}parser.attribList.length=0;emitNode(parser,"onopentagstart",tag)}function qname(name,attribute){var i=name.indexOf(":");var qualName=i<0?["",name]:name.split(":");var prefix=qualName[0];var local=qualName[1];if(attribute&&name==="xmlns"){prefix="xmlns";local=""}return{prefix:prefix,local:local}}function attrib(parser){if(!parser.strict){parser.attribName=parser.attribName[parser.looseCase]()}if(parser.attribList.indexOf(parser.attribName)!==-1||parser.tag.attributes.hasOwnProperty(parser.attribName)){parser.attribName=parser.attribValue="";return}if(parser.opt.xmlns){var qn=qname(parser.attribName,true);var prefix=qn.prefix;var local=qn.local;if(prefix==="xmlns"){if(local==="xml"&&parser.attribValue!==XML_NAMESPACE){strictFail(parser,"xml: prefix must be bound to "+XML_NAMESPACE+"\n"+"Actual: "+parser.attribValue)}else if(local==="xmlns"&&parser.attribValue!==XMLNS_NAMESPACE){strictFail(parser,"xmlns: prefix must be bound to "+XMLNS_NAMESPACE+"\n"+"Actual: "+parser.attribValue)}else{var tag=parser.tag;var parent=parser.tags[parser.tags.length-1]||parser;if(tag.ns===parent.ns){tag.ns=Object.create(parent.ns)}tag.ns[local]=parser.attribValue}}parser.attribList.push([parser.attribName,parser.attribValue])}else{parser.tag.attributes[parser.attribName]=parser.attribValue;emitNode(parser,"onattribute",{name:parser.attribName,value:parser.attribValue})}parser.attribName=parser.attribValue=""}function openTag(parser,selfClosing){if(parser.opt.xmlns){var tag=parser.tag;var qn=qname(parser.tagName);tag.prefix=qn.prefix;tag.local=qn.local;tag.uri=tag.ns[qn.prefix]||"";if(tag.prefix&&!tag.uri){strictFail(parser,"Unbound namespace prefix: "+JSON.stringify(parser.tagName));tag.uri=qn.prefix}var parent=parser.tags[parser.tags.length-1]||parser;if(tag.ns&&parent.ns!==tag.ns){Object.keys(tag.ns).forEach(function(p){emitNode(parser,"onopennamespace",{prefix:p,uri:tag.ns[p]})})}for(var i=0,l=parser.attribList.length;i<l;i++){var nv=parser.attribList[i];var name=nv[0];var value=nv[1];var qualName=qname(name,true);var prefix=qualName.prefix;var local=qualName.local;var uri=prefix===""?"":tag.ns[prefix]||"";var a={name:name,value:value,prefix:prefix,local:local,uri:uri};if(prefix&&prefix!=="xmlns"&&!uri){strictFail(parser,"Unbound namespace prefix: "+JSON.stringify(prefix));a.uri=prefix}parser.tag.attributes[name]=a;emitNode(parser,"onattribute",a)}parser.attribList.length=0}parser.tag.isSelfClosing=!!selfClosing;parser.sawRoot=true;parser.tags.push(parser.tag);emitNode(parser,"onopentag",parser.tag);if(!selfClosing){if(!parser.noscript&&parser.tagName.toLowerCase()==="script"){parser.state=S.SCRIPT}else{parser.state=S.TEXT}parser.tag=null;parser.tagName=""}parser.attribName=parser.attribValue="";parser.attribList.length=0}function closeTag(parser){if(!parser.tagName){strictFail(parser,"Weird empty close tag.");parser.textNode+="</>";parser.state=S.TEXT;return}if(parser.script){if(parser.tagName!=="script"){parser.script+="</"+parser.tagName+">";parser.tagName="";parser.state=S.SCRIPT;return}emitNode(parser,"onscript",parser.script);parser.script=""}var t=parser.tags.length;var tagName=parser.tagName;if(!parser.strict){tagName=tagName[parser.looseCase]()}var closeTo=tagName;while(t--){var close=parser.tags[t];if(close.name!==closeTo){strictFail(parser,"Unexpected close tag")}else{break}}if(t<0){strictFail(parser,"Unmatched closing tag: "+parser.tagName);parser.textNode+="</"+parser.tagName+">";parser.state=S.TEXT;return}parser.tagName=tagName;var s=parser.tags.length;while(s-- >t){var tag=parser.tag=parser.tags.pop();parser.tagName=parser.tag.name;emitNode(parser,"onclosetag",parser.tagName);var x={};for(var i in tag.ns){x[i]=tag.ns[i]}var parent=parser.tags[parser.tags.length-1]||parser;if(parser.opt.xmlns&&tag.ns!==parent.ns){Object.keys(tag.ns).forEach(function(p){var n=tag.ns[p];emitNode(parser,"onclosenamespace",{prefix:p,uri:n})})}}if(t===0)parser.closedRoot=true;parser.tagName=parser.attribValue=parser.attribName="";parser.attribList.length=0;parser.state=S.TEXT}function parseEntity(parser){var entity=parser.entity;var entityLC=entity.toLowerCase();var num;var numStr="";if(parser.ENTITIES[entity]){return parser.ENTITIES[entity]}if(parser.ENTITIES[entityLC]){return parser.ENTITIES[entityLC]}entity=entityLC;if(entity.charAt(0)==="#"){if(entity.charAt(1)==="x"){entity=entity.slice(2);num=parseInt(entity,16);numStr=num.toString(16)}else{entity=entity.slice(1);num=parseInt(entity,10);numStr=num.toString(10)}}entity=entity.replace(/^0+/,"");if(isNaN(num)||numStr.toLowerCase()!==entity){strictFail(parser,"Invalid character entity");return"&"+parser.entity+";"}return String.fromCodePoint(num)}function beginWhiteSpace(parser,c){if(c==="<"){parser.state=S.OPEN_WAKA;parser.startTagPosition=parser.position}else if(!isWhitespace(c)){strictFail(parser,"Non-whitespace before first tag.");parser.textNode=c;parser.state=S.TEXT}}function charAt(chunk,i){var result="";if(i<chunk.length){result=chunk.charAt(i)}return result}function write(chunk){var parser=this;if(this.error){throw this.error}if(parser.closed){return error(parser,"Cannot write after close. Assign an onready handler.")}if(chunk===null){return end(parser)}if(typeof chunk==="object"){chunk=chunk.toString()}var i=0;var c="";while(true){c=charAt(chunk,i++);parser.c=c;if(!c){break}if(parser.trackPosition){parser.position++;if(c==="\n"){parser.line++;parser.column=0}else{parser.column++}}switch(parser.state){case S.BEGIN:parser.state=S.BEGIN_WHITESPACE;if(c==="\ufeff"){continue}beginWhiteSpace(parser,c);continue;case S.BEGIN_WHITESPACE:beginWhiteSpace(parser,c);continue;case S.TEXT:if(parser.sawRoot&&!parser.closedRoot){var starti=i-1;while(c&&c!=="<"&&c!=="&"){c=charAt(chunk,i++);if(c&&parser.trackPosition){parser.position++;if(c==="\n"){parser.line++;parser.column=0}else{parser.column++}}}parser.textNode+=chunk.substring(starti,i-1)}if(c==="<"&&!(parser.sawRoot&&parser.closedRoot&&!parser.strict)){parser.state=S.OPEN_WAKA;parser.startTagPosition=parser.position}else{if(!isWhitespace(c)&&(!parser.sawRoot||parser.closedRoot)){strictFail(parser,"Text data outside of root node.")}if(c==="&"){parser.state=S.TEXT_ENTITY}else{parser.textNode+=c}}continue;case S.SCRIPT:if(c==="<"){parser.state=S.SCRIPT_ENDING}else{parser.script+=c}continue;case S.SCRIPT_ENDING:if(c==="/"){parser.state=S.CLOSE_TAG}else{parser.script+="<"+c;parser.state=S.SCRIPT}continue;case S.OPEN_WAKA:if(c==="!"){parser.state=S.SGML_DECL;parser.sgmlDecl=""}else if(isWhitespace(c)){}else if(isMatch(nameStart,c)){parser.state=S.OPEN_TAG;parser.tagName=c}else if(c==="/"){parser.state=S.CLOSE_TAG;parser.tagName=""}else if(c==="?"){parser.state=S.PROC_INST;parser.procInstName=parser.procInstBody=""}else{strictFail(parser,"Unencoded <");if(parser.startTagPosition+1<parser.position){var pad=parser.position-parser.startTagPosition;c=new Array(pad).join(" ")+c}parser.textNode+="<"+c;parser.state=S.TEXT}continue;case S.SGML_DECL:if((parser.sgmlDecl+c).toUpperCase()===CDATA){emitNode(parser,"onopencdata");parser.state=S.CDATA;parser.sgmlDecl="";parser.cdata=""}else if(parser.sgmlDecl+c==="--"){parser.state=S.COMMENT;parser.comment="";parser.sgmlDecl=""}else if((parser.sgmlDecl+c).toUpperCase()===DOCTYPE){parser.state=S.DOCTYPE;if(parser.doctype||parser.sawRoot){strictFail(parser,"Inappropriately located doctype declaration")}parser.doctype="";parser.sgmlDecl=""}else if(c===">"){emitNode(parser,"onsgmldeclaration",parser.sgmlDecl);parser.sgmlDecl="";parser.state=S.TEXT}else if(isQuote(c)){parser.state=S.SGML_DECL_QUOTED;parser.sgmlDecl+=c}else{parser.sgmlDecl+=c}continue;case S.SGML_DECL_QUOTED:if(c===parser.q){parser.state=S.SGML_DECL;parser.q=""}parser.sgmlDecl+=c;continue;case S.DOCTYPE:if(c===">"){parser.state=S.TEXT;emitNode(parser,"ondoctype",parser.doctype);parser.doctype=true}else{parser.doctype+=c;if(c==="["){parser.state=S.DOCTYPE_DTD}else if(isQuote(c)){parser.state=S.DOCTYPE_QUOTED;parser.q=c}}continue;case S.DOCTYPE_QUOTED:parser.doctype+=c;if(c===parser.q){parser.q="";parser.state=S.DOCTYPE}continue;case S.DOCTYPE_DTD:parser.doctype+=c;if(c==="]"){parser.state=S.DOCTYPE}else if(isQuote(c)){parser.state=S.DOCTYPE_DTD_QUOTED;parser.q=c}continue;case S.DOCTYPE_DTD_QUOTED:parser.doctype+=c;if(c===parser.q){parser.state=S.DOCTYPE_DTD;parser.q=""}continue;case S.COMMENT:if(c==="-"){parser.state=S.COMMENT_ENDING}else{parser.comment+=c}continue;case S.COMMENT_ENDING:if(c==="-"){parser.state=S.COMMENT_ENDED;parser.comment=textopts(parser.opt,parser.comment);if(parser.comment){emitNode(parser,"oncomment",parser.comment)}parser.comment=""}else{parser.comment+="-"+c;parser.state=S.COMMENT}continue;case S.COMMENT_ENDED:if(c!==">"){strictFail(parser,"Malformed comment");parser.comment+="--"+c;parser.state=S.COMMENT}else{parser.state=S.TEXT}continue;case S.CDATA:if(c==="]"){parser.state=S.CDATA_ENDING}else{parser.cdata+=c}continue;case S.CDATA_ENDING:if(c==="]"){parser.state=S.CDATA_ENDING_2}else{parser.cdata+="]"+c;parser.state=S.CDATA}continue;case S.CDATA_ENDING_2:if(c===">"){if(parser.cdata){emitNode(parser,"oncdata",parser.cdata)}emitNode(parser,"onclosecdata");parser.cdata="";parser.state=S.TEXT}else if(c==="]"){parser.cdata+="]"}else{parser.cdata+="]]"+c;parser.state=S.CDATA}continue;case S.PROC_INST:if(c==="?"){parser.state=S.PROC_INST_ENDING}else if(isWhitespace(c)){parser.state=S.PROC_INST_BODY}else{parser.procInstName+=c}continue;case S.PROC_INST_BODY:if(!parser.procInstBody&&isWhitespace(c)){continue}else if(c==="?"){parser.state=S.PROC_INST_ENDING}else{parser.procInstBody+=c}continue;case S.PROC_INST_ENDING:if(c===">"){emitNode(parser,"onprocessinginstruction",{name:parser.procInstName,body:parser.procInstBody});parser.procInstName=parser.procInstBody="";parser.state=S.TEXT}else{parser.procInstBody+="?"+c;parser.state=S.PROC_INST_BODY}continue;case S.OPEN_TAG:if(isMatch(nameBody,c)){parser.tagName+=c}else{newTag(parser);if(c===">"){openTag(parser)}else if(c==="/"){parser.state=S.OPEN_TAG_SLASH}else{if(!isWhitespace(c)){strictFail(parser,"Invalid character in tag name")}parser.state=S.ATTRIB}}continue;case S.OPEN_TAG_SLASH:if(c===">"){openTag(parser,true);closeTag(parser)}else{strictFail(parser,"Forward-slash in opening tag not followed by >");parser.state=S.ATTRIB}continue;case S.ATTRIB:if(isWhitespace(c)){continue}else if(c===">"){openTag(parser)}else if(c==="/"){parser.state=S.OPEN_TAG_SLASH}else if(isMatch(nameStart,c)){parser.attribName=c;parser.attribValue="";parser.state=S.ATTRIB_NAME}else{strictFail(parser,"Invalid attribute name")}continue;case S.ATTRIB_NAME:if(c==="="){parser.state=S.ATTRIB_VALUE}else if(c===">"){strictFail(parser,"Attribute without value");parser.attribValue=parser.attribName;attrib(parser);openTag(parser)}else if(isWhitespace(c)){parser.state=S.ATTRIB_NAME_SAW_WHITE}else if(isMatch(nameBody,c)){parser.attribName+=c}else{strictFail(parser,"Invalid attribute name")}continue;case S.ATTRIB_NAME_SAW_WHITE:if(c==="="){parser.state=S.ATTRIB_VALUE}else if(isWhitespace(c)){continue}else{strictFail(parser,"Attribute without value");parser.tag.attributes[parser.attribName]="";parser.attribValue="";emitNode(parser,"onattribute",{name:parser.attribName,value:""});parser.attribName="";if(c===">"){openTag(parser)}else if(isMatch(nameStart,c)){parser.attribName=c;parser.state=S.ATTRIB_NAME}else{strictFail(parser,"Invalid attribute name");parser.state=S.ATTRIB}}continue;case S.ATTRIB_VALUE:if(isWhitespace(c)){continue}else if(isQuote(c)){parser.q=c;parser.state=S.ATTRIB_VALUE_QUOTED}else{strictFail(parser,"Unquoted attribute value");parser.state=S.ATTRIB_VALUE_UNQUOTED;parser.attribValue=c}continue;case S.ATTRIB_VALUE_QUOTED:if(c!==parser.q){if(c==="&"){parser.state=S.ATTRIB_VALUE_ENTITY_Q}else{parser.attribValue+=c}continue}attrib(parser);parser.q="";parser.state=S.ATTRIB_VALUE_CLOSED;continue;case S.ATTRIB_VALUE_CLOSED:if(isWhitespace(c)){parser.state=S.ATTRIB}else if(c===">"){openTag(parser)}else if(c==="/"){parser.state=S.OPEN_TAG_SLASH}else if(isMatch(nameStart,c)){strictFail(parser,"No whitespace between attributes");parser.attribName=c;parser.attribValue="";parser.state=S.ATTRIB_NAME}else{strictFail(parser,"Invalid attribute name")}continue;case S.ATTRIB_VALUE_UNQUOTED:if(!isAttribEnd(c)){if(c==="&"){parser.state=S.ATTRIB_VALUE_ENTITY_U}else{parser.attribValue+=c}continue}attrib(parser);if(c===">"){openTag(parser)}else{parser.state=S.ATTRIB}continue;case S.CLOSE_TAG:if(!parser.tagName){if(isWhitespace(c)){continue}else if(notMatch(nameStart,c)){if(parser.script){parser.script+="</"+c;parser.state=S.SCRIPT}else{strictFail(parser,"Invalid tagname in closing tag.")}}else{parser.tagName=c}}else if(c===">"){closeTag(parser)}else if(isMatch(nameBody,c)){parser.tagName+=c}else if(parser.script){parser.script+="</"+parser.tagName;parser.tagName="";parser.state=S.SCRIPT}else{if(!isWhitespace(c)){strictFail(parser,"Invalid tagname in closing tag")}parser.state=S.CLOSE_TAG_SAW_WHITE}continue;case S.CLOSE_TAG_SAW_WHITE:if(isWhitespace(c)){continue}if(c===">"){closeTag(parser)}else{strictFail(parser,"Invalid characters in closing tag")}continue;case S.TEXT_ENTITY:case S.ATTRIB_VALUE_ENTITY_Q:case S.ATTRIB_VALUE_ENTITY_U:var returnState;var buffer;switch(parser.state){case S.TEXT_ENTITY:returnState=S.TEXT;buffer="textNode";break;case S.ATTRIB_VALUE_ENTITY_Q:returnState=S.ATTRIB_VALUE_QUOTED;buffer="attribValue";break;case S.ATTRIB_VALUE_ENTITY_U:returnState=S.ATTRIB_VALUE_UNQUOTED;buffer="attribValue";break}if(c===";"){parser[buffer]+=parseEntity(parser);parser.entity="";parser.state=returnState}else if(isMatch(parser.entity.length?entityBody:entityStart,c)){parser.entity+=c}else{strictFail(parser,"Invalid character in entity name");parser[buffer]+="&"+parser.entity+c;parser.entity="";parser.state=returnState}continue;default:throw new Error(parser,"Unknown state: "+parser.state)}}if(parser.position>=parser.bufferCheckPosition){checkBufferLength(parser)}return parser}if(!String.fromCodePoint){(function(){var stringFromCharCode=String.fromCharCode;var floor=Math.floor;var fromCodePoint=function(){var MAX_SIZE=16384;var codeUnits=[];var highSurrogate;var lowSurrogate;var index=-1;var length=arguments.length;if(!length){return""}var result="";while(++index<length){var codePoint=Number(arguments[index]);if(!isFinite(codePoint)||codePoint<0||codePoint>1114111||floor(codePoint)!==codePoint){throw RangeError("Invalid code point: "+codePoint)}if(codePoint<=65535){codeUnits.push(codePoint)}else{codePoint-=65536;highSurrogate=(codePoint>>10)+55296;lowSurrogate=codePoint%1024+56320;codeUnits.push(highSurrogate,lowSurrogate)}if(index+1===length||codeUnits.length>MAX_SIZE){result+=stringFromCharCode.apply(null,codeUnits);codeUnits.length=0}}return result};if(Object.defineProperty){Object.defineProperty(String,"fromCodePoint",{value:fromCodePoint,configurable:true,writable:true})}else{String.fromCodePoint=fromCodePoint}})()}})(typeof exports==="undefined"?this.sax={}:exports)}).call(this,require("buffer").Buffer)},{buffer:43,stream:68,string_decoder:69}],8:[function(require,module,exports){(function(){module.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(this)},{}],9:[function(require,module,exports){(function(){module.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(this)},{}],10:[function(require,module,exports){(function(){var assign,getValue,isArray,isEmpty,isFunction,isObject,isPlainObject,slice=[].slice,hasProp={}.hasOwnProperty;assign=function(){var i,key,len,source,sources,target;target=arguments[0],sources=2<=arguments.length?slice.call(arguments,1):[];if(isFunction(Object.assign)){Object.assign.apply(null,arguments)}else{for(i=0,len=sources.length;i<len;i++){source=sources[i];if(source!=null){for(key in source){if(!hasProp.call(source,key))continue;target[key]=source[key]}}}}return target};isFunction=function(val){return!!val&&Object.prototype.toString.call(val)==="[object Function]"};isObject=function(val){var ref;return!!val&&((ref=typeof val)==="function"||ref==="object")};isArray=function(val){if(isFunction(Array.isArray)){return Array.isArray(val)}else{return Object.prototype.toString.call(val)==="[object Array]"}};isEmpty=function(val){var key;if(isArray(val)){return!val.length}else{for(key in val){if(!hasProp.call(val,key))continue;return false}return true}};isPlainObject=function(val){var ctor,proto;return isObject(val)&&(proto=Object.getPrototypeOf(val))&&(ctor=proto.constructor)&&typeof ctor==="function"&&ctor instanceof ctor&&Function.prototype.toString.call(ctor)===Function.prototype.toString.call(Object)};getValue=function(obj){if(isFunction(obj.valueOf)){return obj.valueOf()}else{return obj}};module.exports.assign=assign;module.exports.isFunction=isFunction;module.exports.isObject=isObject;module.exports.isArray=isArray;module.exports.isEmpty=isEmpty;module.exports.isPlainObject=isPlainObject;module.exports.getValue=getValue}).call(this)},{}],11:[function(require,module,exports){(function(){module.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(this)},{}],12:[function(require,module,exports){(function(){var NodeType,XMLAttribute,XMLNode;NodeType=require("./NodeType");XMLNode=require("./XMLNode");module.exports=XMLAttribute=function(){function XMLAttribute(parent,name,value){this.parent=parent;if(this.parent){this.options=this.parent.options;this.stringify=this.parent.stringify}if(name==null){throw new Error("Missing attribute name. "+this.debugInfo(name))}this.name=this.stringify.name(name);this.value=this.stringify.attValue(value);this.type=NodeType.Attribute;this.isId=false;this.schemaTypeInfo=null}Object.defineProperty(XMLAttribute.prototype,"nodeType",{get:function(){return this.type}});Object.defineProperty(XMLAttribute.prototype,"ownerElement",{get:function(){return this.parent}});Object.defineProperty(XMLAttribute.prototype,"textContent",{get:function(){return this.value},set:function(value){return this.value=value||""}});Object.defineProperty(XMLAttribute.prototype,"namespaceURI",{get:function(){return""}});Object.defineProperty(XMLAttribute.prototype,"prefix",{get:function(){return""}});Object.defineProperty(XMLAttribute.prototype,"localName",{get:function(){return this.name}});Object.defineProperty(XMLAttribute.prototype,"specified",{get:function(){return true}});XMLAttribute.prototype.clone=function(){return Object.create(this)};XMLAttribute.prototype.toString=function(options){return this.options.writer.attribute(this,this.options.writer.filterOptions(options))};XMLAttribute.prototype.debugInfo=function(name){name=name||this.name;if(name==null){return"parent: <"+this.parent.name+">"}else{return"attribute: {"+name+"}, parent: <"+this.parent.name+">"}};XMLAttribute.prototype.isEqualNode=function(node){if(node.namespaceURI!==this.namespaceURI){return false}if(node.prefix!==this.prefix){return false}if(node.localName!==this.localName){return false}if(node.value!==this.value){return false}return true};return XMLAttribute}()}).call(this)},{"./NodeType":9,"./XMLNode":31}],13:[function(require,module,exports){(function(){var NodeType,XMLCData,XMLCharacterData,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLCharacterData=require("./XMLCharacterData");module.exports=XMLCData=function(superClass){extend(XMLCData,superClass);function XMLCData(parent,text){XMLCData.__super__.constructor.call(this,parent);if(text==null){throw new Error("Missing CDATA text. "+this.debugInfo())}this.name="#cdata-section";this.type=NodeType.CData;this.value=this.stringify.cdata(text)}XMLCData.prototype.clone=function(){return Object.create(this)};XMLCData.prototype.toString=function(options){return this.options.writer.cdata(this,this.options.writer.filterOptions(options))};return XMLCData}(XMLCharacterData)}).call(this)},{"./NodeType":9,"./XMLCharacterData":14}],14:[function(require,module,exports){(function(){var XMLCharacterData,XMLNode,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLNode=require("./XMLNode");module.exports=XMLCharacterData=function(superClass){extend(XMLCharacterData,superClass);function XMLCharacterData(parent){XMLCharacterData.__super__.constructor.call(this,parent);this.value=""}Object.defineProperty(XMLCharacterData.prototype,"data",{get:function(){return this.value},set:function(value){return this.value=value||""}});Object.defineProperty(XMLCharacterData.prototype,"length",{get:function(){return this.value.length}});Object.defineProperty(XMLCharacterData.prototype,"textContent",{get:function(){return this.value},set:function(value){return this.value=value||""}});XMLCharacterData.prototype.clone=function(){return Object.create(this)};XMLCharacterData.prototype.substringData=function(offset,count){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLCharacterData.prototype.appendData=function(arg){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLCharacterData.prototype.insertData=function(offset,arg){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLCharacterData.prototype.deleteData=function(offset,count){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLCharacterData.prototype.replaceData=function(offset,count,arg){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLCharacterData.prototype.isEqualNode=function(node){if(!XMLCharacterData.__super__.isEqualNode.apply(this,arguments).isEqualNode(node)){return false}if(node.data!==this.data){return false}return true};return XMLCharacterData}(XMLNode)}).call(this)},{"./XMLNode":31}],15:[function(require,module,exports){(function(){var NodeType,XMLCharacterData,XMLComment,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLCharacterData=require("./XMLCharacterData");module.exports=XMLComment=function(superClass){extend(XMLComment,superClass);function XMLComment(parent,text){XMLComment.__super__.constructor.call(this,parent);if(text==null){throw new Error("Missing comment text. "+this.debugInfo())}this.name="#comment";this.type=NodeType.Comment;this.value=this.stringify.comment(text)}XMLComment.prototype.clone=function(){return Object.create(this)};XMLComment.prototype.toString=function(options){return this.options.writer.comment(this,this.options.writer.filterOptions(options))};return XMLComment}(XMLCharacterData)}).call(this)},{"./NodeType":9,"./XMLCharacterData":14}],16:[function(require,module,exports){(function(){var XMLDOMConfiguration,XMLDOMErrorHandler,XMLDOMStringList;XMLDOMErrorHandler=require("./XMLDOMErrorHandler");XMLDOMStringList=require("./XMLDOMStringList");module.exports=XMLDOMConfiguration=function(){function XMLDOMConfiguration(){var clonedSelf;this.defaultParams={"canonical-form":false,"cdata-sections":false,comments:false,"datatype-normalization":false,"element-content-whitespace":true,entities:true,"error-handler":new XMLDOMErrorHandler,infoset:true,"validate-if-schema":false,namespaces:true,"namespace-declarations":true,"normalize-characters":false,"schema-location":"","schema-type":"","split-cdata-sections":true,validate:false,"well-formed":true};this.params=clonedSelf=Object.create(this.defaultParams)}Object.defineProperty(XMLDOMConfiguration.prototype,"parameterNames",{get:function(){return new XMLDOMStringList(Object.keys(this.defaultParams))}});XMLDOMConfiguration.prototype.getParameter=function(name){if(this.params.hasOwnProperty(name)){return this.params[name]}else{return null}};XMLDOMConfiguration.prototype.canSetParameter=function(name,value){return true};XMLDOMConfiguration.prototype.setParameter=function(name,value){if(value!=null){return this.params[name]=value}else{return delete this.params[name]}};return XMLDOMConfiguration}()}).call(this)},{"./XMLDOMErrorHandler":17,"./XMLDOMStringList":19}],17:[function(require,module,exports){(function(){var XMLDOMErrorHandler;module.exports=XMLDOMErrorHandler=function(){function XMLDOMErrorHandler(){}XMLDOMErrorHandler.prototype.handleError=function(error){throw new Error(error)};return XMLDOMErrorHandler}()}).call(this)},{}],18:[function(require,module,exports){(function(){var XMLDOMImplementation;module.exports=XMLDOMImplementation=function(){function XMLDOMImplementation(){}XMLDOMImplementation.prototype.hasFeature=function(feature,version){return true};XMLDOMImplementation.prototype.createDocumentType=function(qualifiedName,publicId,systemId){throw new Error("This DOM method is not implemented.")};XMLDOMImplementation.prototype.createDocument=function(namespaceURI,qualifiedName,doctype){throw new Error("This DOM method is not implemented.")};XMLDOMImplementation.prototype.createHTMLDocument=function(title){throw new Error("This DOM method is not implemented.")};XMLDOMImplementation.prototype.getFeature=function(feature,version){throw new Error("This DOM method is not implemented.")};return XMLDOMImplementation}()}).call(this)},{}],19:[function(require,module,exports){(function(){var XMLDOMStringList;module.exports=XMLDOMStringList=function(){function XMLDOMStringList(arr){this.arr=arr||[]}Object.defineProperty(XMLDOMStringList.prototype,"length",{get:function(){return this.arr.length}});XMLDOMStringList.prototype.item=function(index){return this.arr[index]||null};XMLDOMStringList.prototype.contains=function(str){return this.arr.indexOf(str)!==-1};return XMLDOMStringList}()}).call(this)},{}],20:[function(require,module,exports){(function(){var NodeType,XMLDTDAttList,XMLNode,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDTDAttList=function(superClass){extend(XMLDTDAttList,superClass);function XMLDTDAttList(parent,elementName,attributeName,attributeType,defaultValueType,defaultValue){XMLDTDAttList.__super__.constructor.call(this,parent);if(elementName==null){throw new Error("Missing DTD element name. "+this.debugInfo())}if(attributeName==null){throw new Error("Missing DTD attribute name. "+this.debugInfo(elementName))}if(!attributeType){throw new Error("Missing DTD attribute type. "+this.debugInfo(elementName))}if(!defaultValueType){throw new Error("Missing DTD attribute default. "+this.debugInfo(elementName))}if(defaultValueType.indexOf("#")!==0){defaultValueType="#"+defaultValueType}if(!defaultValueType.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/)){throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(elementName))}if(defaultValue&&!defaultValueType.match(/^(#FIXED|#DEFAULT)$/)){throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(elementName))}this.elementName=this.stringify.name(elementName);this.type=NodeType.AttributeDeclaration;this.attributeName=this.stringify.name(attributeName);this.attributeType=this.stringify.dtdAttType(attributeType);if(defaultValue){this.defaultValue=this.stringify.dtdAttDefault(defaultValue)}this.defaultValueType=defaultValueType}XMLDTDAttList.prototype.toString=function(options){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(options))};return XMLDTDAttList}(XMLNode)}).call(this)},{"./NodeType":9,"./XMLNode":31}],21:[function(require,module,exports){(function(){var NodeType,XMLDTDElement,XMLNode,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDTDElement=function(superClass){extend(XMLDTDElement,superClass);function XMLDTDElement(parent,name,value){XMLDTDElement.__super__.constructor.call(this,parent);if(name==null){throw new Error("Missing DTD element name. "+this.debugInfo())}if(!value){value="(#PCDATA)"}if(Array.isArray(value)){value="("+value.join(",")+")"}this.name=this.stringify.name(name);this.type=NodeType.ElementDeclaration;this.value=this.stringify.dtdElementValue(value)}XMLDTDElement.prototype.toString=function(options){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(options))};return XMLDTDElement}(XMLNode)}).call(this)},{"./NodeType":9,"./XMLNode":31}],22:[function(require,module,exports){(function(){var NodeType,XMLDTDEntity,XMLNode,isObject,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;isObject=require("./Utility").isObject;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDTDEntity=function(superClass){extend(XMLDTDEntity,superClass);function XMLDTDEntity(parent,pe,name,value){XMLDTDEntity.__super__.constructor.call(this,parent);if(name==null){throw new Error("Missing DTD entity name. "+this.debugInfo(name))}if(value==null){throw new Error("Missing DTD entity value. "+this.debugInfo(name))}this.pe=!!pe;this.name=this.stringify.name(name);this.type=NodeType.EntityDeclaration;if(!isObject(value)){this.value=this.stringify.dtdEntityValue(value);this.internal=true}else{if(!value.pubID&&!value.sysID){throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(name))}if(value.pubID&&!value.sysID){throw new Error("System identifier is required for a public external entity. "+this.debugInfo(name))}this.internal=false;if(value.pubID!=null){this.pubID=this.stringify.dtdPubID(value.pubID)}if(value.sysID!=null){this.sysID=this.stringify.dtdSysID(value.sysID)}if(value.nData!=null){this.nData=this.stringify.dtdNData(value.nData)}if(this.pe&&this.nData){throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(name))}}}Object.defineProperty(XMLDTDEntity.prototype,"publicId",{get:function(){return this.pubID}});Object.defineProperty(XMLDTDEntity.prototype,"systemId",{get:function(){return this.sysID}});Object.defineProperty(XMLDTDEntity.prototype,"notationName",{get:function(){return this.nData||null}});Object.defineProperty(XMLDTDEntity.prototype,"inputEncoding",{get:function(){return null}});Object.defineProperty(XMLDTDEntity.prototype,"xmlEncoding",{get:function(){return null}});Object.defineProperty(XMLDTDEntity.prototype,"xmlVersion",{get:function(){return null}});XMLDTDEntity.prototype.toString=function(options){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(options))};return XMLDTDEntity}(XMLNode)}).call(this)},{"./NodeType":9,"./Utility":10,"./XMLNode":31}],23:[function(require,module,exports){(function(){var NodeType,XMLDTDNotation,XMLNode,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDTDNotation=function(superClass){extend(XMLDTDNotation,superClass);function XMLDTDNotation(parent,name,value){XMLDTDNotation.__super__.constructor.call(this,parent);if(name==null){throw new Error("Missing DTD notation name. "+this.debugInfo(name))}if(!value.pubID&&!value.sysID){throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(name))}this.name=this.stringify.name(name);this.type=NodeType.NotationDeclaration;if(value.pubID!=null){this.pubID=this.stringify.dtdPubID(value.pubID)}if(value.sysID!=null){this.sysID=this.stringify.dtdSysID(value.sysID)}}Object.defineProperty(XMLDTDNotation.prototype,"publicId",{get:function(){return this.pubID}});Object.defineProperty(XMLDTDNotation.prototype,"systemId",{get:function(){return this.sysID}});XMLDTDNotation.prototype.toString=function(options){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(options))};return XMLDTDNotation}(XMLNode)}).call(this)},{"./NodeType":9,"./XMLNode":31}],24:[function(require,module,exports){(function(){var NodeType,XMLDeclaration,XMLNode,isObject,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;isObject=require("./Utility").isObject;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDeclaration=function(superClass){extend(XMLDeclaration,superClass);function XMLDeclaration(parent,version,encoding,standalone){var ref;XMLDeclaration.__super__.constructor.call(this,parent);if(isObject(version)){ref=version,version=ref.version,encoding=ref.encoding,standalone=ref.standalone}if(!version){version="1.0"}this.type=NodeType.Declaration;this.version=this.stringify.xmlVersion(version);if(encoding!=null){this.encoding=this.stringify.xmlEncoding(encoding)}if(standalone!=null){this.standalone=this.stringify.xmlStandalone(standalone)}}XMLDeclaration.prototype.toString=function(options){return this.options.writer.declaration(this,this.options.writer.filterOptions(options))};return XMLDeclaration}(XMLNode)}).call(this)},{"./NodeType":9,"./Utility":10,"./XMLNode":31}],25:[function(require,module,exports){(function(){var NodeType,XMLDTDAttList,XMLDTDElement,XMLDTDEntity,XMLDTDNotation,XMLDocType,XMLNamedNodeMap,XMLNode,isObject,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;isObject=require("./Utility").isObject;XMLNode=require("./XMLNode");NodeType=require("./NodeType");XMLDTDAttList=require("./XMLDTDAttList");XMLDTDEntity=require("./XMLDTDEntity");XMLDTDElement=require("./XMLDTDElement");XMLDTDNotation=require("./XMLDTDNotation");XMLNamedNodeMap=require("./XMLNamedNodeMap");module.exports=XMLDocType=function(superClass){extend(XMLDocType,superClass);function XMLDocType(parent,pubID,sysID){var child,i,len,ref,ref1,ref2;XMLDocType.__super__.constructor.call(this,parent);this.type=NodeType.DocType;if(parent.children){ref=parent.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];if(child.type===NodeType.Element){this.name=child.name;break}}}this.documentObject=parent;if(isObject(pubID)){ref1=pubID,pubID=ref1.pubID,sysID=ref1.sysID}if(sysID==null){ref2=[pubID,sysID],sysID=ref2[0],pubID=ref2[1]}if(pubID!=null){this.pubID=this.stringify.dtdPubID(pubID)}if(sysID!=null){this.sysID=this.stringify.dtdSysID(sysID)}}Object.defineProperty(XMLDocType.prototype,"entities",{get:function(){var child,i,len,nodes,ref;nodes={};ref=this.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];if(child.type===NodeType.EntityDeclaration&&!child.pe){nodes[child.name]=child}}return new XMLNamedNodeMap(nodes)}});Object.defineProperty(XMLDocType.prototype,"notations",{get:function(){var child,i,len,nodes,ref;nodes={};ref=this.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];if(child.type===NodeType.NotationDeclaration){nodes[child.name]=child}}return new XMLNamedNodeMap(nodes)}});Object.defineProperty(XMLDocType.prototype,"publicId",{get:function(){return this.pubID}});Object.defineProperty(XMLDocType.prototype,"systemId",{get:function(){return this.sysID}});Object.defineProperty(XMLDocType.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}});XMLDocType.prototype.element=function(name,value){var child;child=new XMLDTDElement(this,name,value);this.children.push(child);return this};XMLDocType.prototype.attList=function(elementName,attributeName,attributeType,defaultValueType,defaultValue){var child;child=new XMLDTDAttList(this,elementName,attributeName,attributeType,defaultValueType,defaultValue);this.children.push(child);return this};XMLDocType.prototype.entity=function(name,value){var child;child=new XMLDTDEntity(this,false,name,value);this.children.push(child);return this};XMLDocType.prototype.pEntity=function(name,value){var child;child=new XMLDTDEntity(this,true,name,value);this.children.push(child);return this};XMLDocType.prototype.notation=function(name,value){var child;child=new XMLDTDNotation(this,name,value);this.children.push(child);return this};XMLDocType.prototype.toString=function(options){return this.options.writer.docType(this,this.options.writer.filterOptions(options))};XMLDocType.prototype.ele=function(name,value){return this.element(name,value)};XMLDocType.prototype.att=function(elementName,attributeName,attributeType,defaultValueType,defaultValue){return this.attList(elementName,attributeName,attributeType,defaultValueType,defaultValue)};XMLDocType.prototype.ent=function(name,value){return this.entity(name,value)};XMLDocType.prototype.pent=function(name,value){return this.pEntity(name,value)};XMLDocType.prototype.not=function(name,value){return this.notation(name,value)};XMLDocType.prototype.up=function(){return this.root()||this.documentObject};XMLDocType.prototype.isEqualNode=function(node){if(!XMLDocType.__super__.isEqualNode.apply(this,arguments).isEqualNode(node)){return false}if(node.name!==this.name){return false}if(node.publicId!==this.publicId){return false}if(node.systemId!==this.systemId){return false}return true};return XMLDocType}(XMLNode)}).call(this)},{"./NodeType":9,"./Utility":10,"./XMLDTDAttList":20,"./XMLDTDElement":21,"./XMLDTDEntity":22,"./XMLDTDNotation":23,"./XMLNamedNodeMap":30,"./XMLNode":31}],26:[function(require,module,exports){(function(){var NodeType,XMLDOMConfiguration,XMLDOMImplementation,XMLDocument,XMLNode,XMLStringWriter,XMLStringifier,isPlainObject,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;isPlainObject=require("./Utility").isPlainObject;XMLDOMImplementation=require("./XMLDOMImplementation");XMLDOMConfiguration=require("./XMLDOMConfiguration");XMLNode=require("./XMLNode");NodeType=require("./NodeType");XMLStringifier=require("./XMLStringifier");XMLStringWriter=require("./XMLStringWriter");module.exports=XMLDocument=function(superClass){extend(XMLDocument,superClass);function XMLDocument(options){XMLDocument.__super__.constructor.call(this,null);this.name="#document";this.type=NodeType.Document;this.documentURI=null;this.domConfig=new XMLDOMConfiguration;options||(options={});if(!options.writer){options.writer=new XMLStringWriter}this.options=options;this.stringify=new XMLStringifier(options)}Object.defineProperty(XMLDocument.prototype,"implementation",{value:new XMLDOMImplementation});Object.defineProperty(XMLDocument.prototype,"doctype",{get:function(){var child,i,len,ref;ref=this.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];if(child.type===NodeType.DocType){return child}}return null}});Object.defineProperty(XMLDocument.prototype,"documentElement",{get:function(){return this.rootObject||null}});Object.defineProperty(XMLDocument.prototype,"inputEncoding",{get:function(){return null}});Object.defineProperty(XMLDocument.prototype,"strictErrorChecking",{get:function(){return false}});Object.defineProperty(XMLDocument.prototype,"xmlEncoding",{get:function(){if(this.children.length!==0&&this.children[0].type===NodeType.Declaration){return this.children[0].encoding}else{return null}}});Object.defineProperty(XMLDocument.prototype,"xmlStandalone",{get:function(){if(this.children.length!==0&&this.children[0].type===NodeType.Declaration){return this.children[0].standalone==="yes"}else{return false}}});Object.defineProperty(XMLDocument.prototype,"xmlVersion",{get:function(){if(this.children.length!==0&&this.children[0].type===NodeType.Declaration){return this.children[0].version}else{return"1.0"}}});Object.defineProperty(XMLDocument.prototype,"URL",{get:function(){return this.documentURI}});Object.defineProperty(XMLDocument.prototype,"origin",{get:function(){return null}});Object.defineProperty(XMLDocument.prototype,"compatMode",{get:function(){return null}});Object.defineProperty(XMLDocument.prototype,"characterSet",{get:function(){return null}});Object.defineProperty(XMLDocument.prototype,"contentType",{get:function(){return null}});XMLDocument.prototype.end=function(writer){var writerOptions;writerOptions={};if(!writer){writer=this.options.writer}else if(isPlainObject(writer)){writerOptions=writer;writer=this.options.writer}return writer.document(this,writer.filterOptions(writerOptions))};XMLDocument.prototype.toString=function(options){return this.options.writer.document(this,this.options.writer.filterOptions(options))};XMLDocument.prototype.createElement=function(tagName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createDocumentFragment=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createTextNode=function(data){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createComment=function(data){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createCDATASection=function(data){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createProcessingInstruction=function(target,data){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createAttribute=function(name){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createEntityReference=function(name){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.getElementsByTagName=function(tagname){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.importNode=function(importedNode,deep){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createElementNS=function(namespaceURI,qualifiedName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createAttributeNS=function(namespaceURI,qualifiedName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.getElementsByTagNameNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.getElementById=function(elementId){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.adoptNode=function(source){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.normalizeDocument=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.renameNode=function(node,namespaceURI,qualifiedName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.getElementsByClassName=function(classNames){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createEvent=function(eventInterface){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createRange=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createNodeIterator=function(root,whatToShow,filter){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLDocument.prototype.createTreeWalker=function(root,whatToShow,filter){throw new Error("This DOM method is not implemented."+this.debugInfo())};return XMLDocument}(XMLNode)}).call(this)},{"./NodeType":9,"./Utility":10,"./XMLDOMConfiguration":16,"./XMLDOMImplementation":18,"./XMLNode":31,"./XMLStringWriter":36,"./XMLStringifier":37}],27:[function(require,module,exports){(function(){var NodeType,WriterState,XMLAttribute,XMLCData,XMLComment,XMLDTDAttList,XMLDTDElement,XMLDTDEntity,XMLDTDNotation,XMLDeclaration,XMLDocType,XMLDocument,XMLDocumentCB,XMLElement,XMLProcessingInstruction,XMLRaw,XMLStringWriter,XMLStringifier,XMLText,getValue,isFunction,isObject,isPlainObject,ref,hasProp={}.hasOwnProperty;ref=require("./Utility"),isObject=ref.isObject,isFunction=ref.isFunction,isPlainObject=ref.isPlainObject,getValue=ref.getValue;NodeType=require("./NodeType");XMLDocument=require("./XMLDocument");XMLElement=require("./XMLElement");XMLCData=require("./XMLCData");XMLComment=require("./XMLComment");XMLRaw=require("./XMLRaw");XMLText=require("./XMLText");XMLProcessingInstruction=require("./XMLProcessingInstruction");XMLDeclaration=require("./XMLDeclaration");XMLDocType=require("./XMLDocType");XMLDTDAttList=require("./XMLDTDAttList");XMLDTDEntity=require("./XMLDTDEntity");XMLDTDElement=require("./XMLDTDElement");XMLDTDNotation=require("./XMLDTDNotation");XMLAttribute=require("./XMLAttribute");XMLStringifier=require("./XMLStringifier");XMLStringWriter=require("./XMLStringWriter");WriterState=require("./WriterState");module.exports=XMLDocumentCB=function(){function XMLDocumentCB(options,onData,onEnd){var writerOptions;this.name="?xml";this.type=NodeType.Document;options||(options={});writerOptions={};if(!options.writer){options.writer=new XMLStringWriter}else if(isPlainObject(options.writer)){writerOptions=options.writer;options.writer=new XMLStringWriter}this.options=options;this.writer=options.writer;this.writerOptions=this.writer.filterOptions(writerOptions);this.stringify=new XMLStringifier(options);this.onDataCallback=onData||function(){};this.onEndCallback=onEnd||function(){};this.currentNode=null;this.currentLevel=-1;this.openTags={};this.documentStarted=false;this.documentCompleted=false;this.root=null}XMLDocumentCB.prototype.createChildNode=function(node){var att,attName,attributes,child,i,len,ref1,ref2;switch(node.type){case NodeType.CData:this.cdata(node.value);break;case NodeType.Comment:this.comment(node.value);break;case NodeType.Element:attributes={};ref1=node.attribs;for(attName in ref1){if(!hasProp.call(ref1,attName))continue;att=ref1[attName];attributes[attName]=att.value}this.node(node.name,attributes);break;case NodeType.Dummy:this.dummy();break;case NodeType.Raw:this.raw(node.value);break;case NodeType.Text:this.text(node.value);break;case NodeType.ProcessingInstruction:this.instruction(node.target,node.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+node.constructor.name)}ref2=node.children;for(i=0,len=ref2.length;i<len;i++){child=ref2[i];this.createChildNode(child);if(child.type===NodeType.Element){this.up()}}return this};XMLDocumentCB.prototype.dummy=function(){return this};XMLDocumentCB.prototype.node=function(name,attributes,text){var ref1;if(name==null){throw new Error("Missing node name.")}if(this.root&&this.currentLevel===-1){throw new Error("Document can only have one root node. "+this.debugInfo(name))}this.openCurrent();name=getValue(name);if(attributes==null){attributes={}}attributes=getValue(attributes);if(!isObject(attributes)){ref1=[attributes,text],text=ref1[0],attributes=ref1[1]}this.currentNode=new XMLElement(this,name,attributes);this.currentNode.children=false;this.currentLevel++;this.openTags[this.currentLevel]=this.currentNode;if(text!=null){this.text(text)}return this};XMLDocumentCB.prototype.element=function(name,attributes,text){var child,i,len,oldValidationFlag,ref1,root;if(this.currentNode&&this.currentNode.type===NodeType.DocType){this.dtdElement.apply(this,arguments)}else{if(Array.isArray(name)||isObject(name)||isFunction(name)){oldValidationFlag=this.options.noValidation;this.options.noValidation=true;root=new XMLDocument(this.options).element("TEMP_ROOT");root.element(name);this.options.noValidation=oldValidationFlag;ref1=root.children;for(i=0,len=ref1.length;i<len;i++){child=ref1[i];this.createChildNode(child);if(child.type===NodeType.Element){this.up()}}}else{this.node(name,attributes,text)}}return this};XMLDocumentCB.prototype.attribute=function(name,value){var attName,attValue;if(!this.currentNode||this.currentNode.children){throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(name))}if(name!=null){name=getValue(name)}if(isObject(name)){for(attName in name){if(!hasProp.call(name,attName))continue;attValue=name[attName];this.attribute(attName,attValue)}}else{if(isFunction(value)){value=value.apply()}if(this.options.keepNullAttributes&&value==null){this.currentNode.attribs[name]=new XMLAttribute(this,name,"")}else if(value!=null){this.currentNode.attribs[name]=new XMLAttribute(this,name,value)}}return this};XMLDocumentCB.prototype.text=function(value){var node;this.openCurrent();node=new XMLText(this,value);this.onData(this.writer.text(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.cdata=function(value){var node;this.openCurrent();node=new XMLCData(this,value);this.onData(this.writer.cdata(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.comment=function(value){var node;this.openCurrent();node=new XMLComment(this,value);this.onData(this.writer.comment(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.raw=function(value){var node;this.openCurrent();node=new XMLRaw(this,value);this.onData(this.writer.raw(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.instruction=function(target,value){var i,insTarget,insValue,len,node;this.openCurrent();if(target!=null){target=getValue(target)}if(value!=null){value=getValue(value)}if(Array.isArray(target)){for(i=0,len=target.length;i<len;i++){insTarget=target[i];this.instruction(insTarget)}}else if(isObject(target)){for(insTarget in target){if(!hasProp.call(target,insTarget))continue;insValue=target[insTarget];this.instruction(insTarget,insValue)}}else{if(isFunction(value)){value=value.apply()}node=new XMLProcessingInstruction(this,target,value);this.onData(this.writer.processingInstruction(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1)}return this};XMLDocumentCB.prototype.declaration=function(version,encoding,standalone){var node;this.openCurrent();if(this.documentStarted){throw new Error("declaration() must be the first node.")}node=new XMLDeclaration(this,version,encoding,standalone);this.onData(this.writer.declaration(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.doctype=function(root,pubID,sysID){this.openCurrent();if(root==null){throw new Error("Missing root node name.")}if(this.root){throw new Error("dtd() must come before the root node.")}this.currentNode=new XMLDocType(this,pubID,sysID);this.currentNode.rootNodeName=root;this.currentNode.children=false;this.currentLevel++;this.openTags[this.currentLevel]=this.currentNode;return this};XMLDocumentCB.prototype.dtdElement=function(name,value){var node;this.openCurrent();node=new XMLDTDElement(this,name,value);this.onData(this.writer.dtdElement(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.attList=function(elementName,attributeName,attributeType,defaultValueType,defaultValue){var node;this.openCurrent();node=new XMLDTDAttList(this,elementName,attributeName,attributeType,defaultValueType,defaultValue);this.onData(this.writer.dtdAttList(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.entity=function(name,value){var node;this.openCurrent();node=new XMLDTDEntity(this,false,name,value);this.onData(this.writer.dtdEntity(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.pEntity=function(name,value){var node;this.openCurrent();node=new XMLDTDEntity(this,true,name,value);this.onData(this.writer.dtdEntity(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.notation=function(name,value){var node;this.openCurrent();node=new XMLDTDNotation(this,name,value);this.onData(this.writer.dtdNotation(node,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this};XMLDocumentCB.prototype.up=function(){if(this.currentLevel<0){throw new Error("The document node has no parent.")}if(this.currentNode){if(this.currentNode.children){this.closeNode(this.currentNode)}else{this.openNode(this.currentNode)}this.currentNode=null}else{this.closeNode(this.openTags[this.currentLevel])}delete this.openTags[this.currentLevel];this.currentLevel--;return this};XMLDocumentCB.prototype.end=function(){while(this.currentLevel>=0){this.up()}return this.onEnd()};XMLDocumentCB.prototype.openCurrent=function(){if(this.currentNode){this.currentNode.children=true;return this.openNode(this.currentNode)}};XMLDocumentCB.prototype.openNode=function(node){var att,chunk,name,ref1;if(!node.isOpen){if(!this.root&&this.currentLevel===0&&node.type===NodeType.Element){this.root=node}chunk="";if(node.type===NodeType.Element){this.writerOptions.state=WriterState.OpenTag;chunk=this.writer.indent(node,this.writerOptions,this.currentLevel)+"<"+node.name;ref1=node.attribs;for(name in ref1){if(!hasProp.call(ref1,name))continue;att=ref1[name];chunk+=this.writer.attribute(att,this.writerOptions,this.currentLevel)}chunk+=(node.children?">":"/>")+this.writer.endline(node,this.writerOptions,this.currentLevel);this.writerOptions.state=WriterState.InsideTag}else{this.writerOptions.state=WriterState.OpenTag;chunk=this.writer.indent(node,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+node.rootNodeName;if(node.pubID&&node.sysID){chunk+=' PUBLIC "'+node.pubID+'" "'+node.sysID+'"'}else if(node.sysID){chunk+=' SYSTEM "'+node.sysID+'"'}if(node.children){chunk+=" [";this.writerOptions.state=WriterState.InsideTag}else{this.writerOptions.state=WriterState.CloseTag;chunk+=">"}chunk+=this.writer.endline(node,this.writerOptions,this.currentLevel)}this.onData(chunk,this.currentLevel);return node.isOpen=true}};XMLDocumentCB.prototype.closeNode=function(node){var chunk;if(!node.isClosed){chunk="";this.writerOptions.state=WriterState.CloseTag;if(node.type===NodeType.Element){chunk=this.writer.indent(node,this.writerOptions,this.currentLevel)+"</"+node.name+">"+this.writer.endline(node,this.writerOptions,this.currentLevel)}else{chunk=this.writer.indent(node,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(node,this.writerOptions,this.currentLevel)}this.writerOptions.state=WriterState.None;this.onData(chunk,this.currentLevel);return node.isClosed=true}};XMLDocumentCB.prototype.onData=function(chunk,level){this.documentStarted=true;return this.onDataCallback(chunk,level+1)};XMLDocumentCB.prototype.onEnd=function(){this.documentCompleted=true;return this.onEndCallback()};XMLDocumentCB.prototype.debugInfo=function(name){if(name==null){return""}else{return"node: <"+name+">"}};XMLDocumentCB.prototype.ele=function(){return this.element.apply(this,arguments)};XMLDocumentCB.prototype.nod=function(name,attributes,text){return this.node(name,attributes,text)};XMLDocumentCB.prototype.txt=function(value){return this.text(value)};XMLDocumentCB.prototype.dat=function(value){return this.cdata(value)};XMLDocumentCB.prototype.com=function(value){return this.comment(value)};XMLDocumentCB.prototype.ins=function(target,value){return this.instruction(target,value)};XMLDocumentCB.prototype.dec=function(version,encoding,standalone){return this.declaration(version,encoding,standalone)};XMLDocumentCB.prototype.dtd=function(root,pubID,sysID){return this.doctype(root,pubID,sysID)};XMLDocumentCB.prototype.e=function(name,attributes,text){return this.element(name,attributes,text)};XMLDocumentCB.prototype.n=function(name,attributes,text){return this.node(name,attributes,text)};XMLDocumentCB.prototype.t=function(value){return this.text(value)};XMLDocumentCB.prototype.d=function(value){return this.cdata(value)};XMLDocumentCB.prototype.c=function(value){return this.comment(value)};XMLDocumentCB.prototype.r=function(value){return this.raw(value)};XMLDocumentCB.prototype.i=function(target,value){return this.instruction(target,value)};XMLDocumentCB.prototype.att=function(){if(this.currentNode&&this.currentNode.type===NodeType.DocType){return this.attList.apply(this,arguments)}else{return this.attribute.apply(this,arguments)}};XMLDocumentCB.prototype.a=function(){if(this.currentNode&&this.currentNode.type===NodeType.DocType){return this.attList.apply(this,arguments)}else{return this.attribute.apply(this,arguments)}};XMLDocumentCB.prototype.ent=function(name,value){return this.entity(name,value)};XMLDocumentCB.prototype.pent=function(name,value){return this.pEntity(name,value)};XMLDocumentCB.prototype.not=function(name,value){return this.notation(name,value)};return XMLDocumentCB}()}).call(this)},{"./NodeType":9,"./Utility":10,"./WriterState":11,"./XMLAttribute":12,"./XMLCData":13,"./XMLComment":15,"./XMLDTDAttList":20,"./XMLDTDElement":21,"./XMLDTDEntity":22,"./XMLDTDNotation":23,"./XMLDeclaration":24,"./XMLDocType":25,"./XMLDocument":26,"./XMLElement":29,"./XMLProcessingInstruction":33,"./XMLRaw":34,"./XMLStringWriter":36,"./XMLStringifier":37,"./XMLText":38}],28:[function(require,module,exports){(function(){var NodeType,XMLDummy,XMLNode,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLNode=require("./XMLNode");NodeType=require("./NodeType");module.exports=XMLDummy=function(superClass){extend(XMLDummy,superClass);function XMLDummy(parent){XMLDummy.__super__.constructor.call(this,parent);this.type=NodeType.Dummy}XMLDummy.prototype.clone=function(){return Object.create(this)};XMLDummy.prototype.toString=function(options){return""};return XMLDummy}(XMLNode)}).call(this)},{"./NodeType":9,"./XMLNode":31}],29:[function(require,module,exports){(function(){var NodeType,XMLAttribute,XMLElement,XMLNamedNodeMap,XMLNode,getValue,isFunction,isObject,ref,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;ref=require("./Utility"),isObject=ref.isObject,isFunction=ref.isFunction,getValue=ref.getValue;XMLNode=require("./XMLNode");NodeType=require("./NodeType");XMLAttribute=require("./XMLAttribute");XMLNamedNodeMap=require("./XMLNamedNodeMap");module.exports=XMLElement=function(superClass){extend(XMLElement,superClass);function XMLElement(parent,name,attributes){var child,j,len,ref1;XMLElement.__super__.constructor.call(this,parent);if(name==null){throw new Error("Missing element name. "+this.debugInfo())}this.name=this.stringify.name(name);this.type=NodeType.Element;this.attribs={};this.schemaTypeInfo=null;if(attributes!=null){this.attribute(attributes)}if(parent.type===NodeType.Document){this.isRoot=true;this.documentObject=parent;parent.rootObject=this;if(parent.children){ref1=parent.children;for(j=0,len=ref1.length;j<len;j++){child=ref1[j];if(child.type===NodeType.DocType){child.name=this.name;break}}}}}Object.defineProperty(XMLElement.prototype,"tagName",{get:function(){return this.name}});Object.defineProperty(XMLElement.prototype,"namespaceURI",{get:function(){return""}});Object.defineProperty(XMLElement.prototype,"prefix",{get:function(){return""}});Object.defineProperty(XMLElement.prototype,"localName",{get:function(){return this.name}});Object.defineProperty(XMLElement.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}});Object.defineProperty(XMLElement.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}});Object.defineProperty(XMLElement.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}});Object.defineProperty(XMLElement.prototype,"attributes",{get:function(){if(!this.attributeMap||!this.attributeMap.nodes){this.attributeMap=new XMLNamedNodeMap(this.attribs)}return this.attributeMap}});XMLElement.prototype.clone=function(){var att,attName,clonedSelf,ref1;clonedSelf=Object.create(this);if(clonedSelf.isRoot){clonedSelf.documentObject=null}clonedSelf.attribs={};ref1=this.attribs;for(attName in ref1){if(!hasProp.call(ref1,attName))continue;att=ref1[attName];clonedSelf.attribs[attName]=att.clone()}clonedSelf.children=[];this.children.forEach(function(child){var clonedChild;clonedChild=child.clone();clonedChild.parent=clonedSelf;return clonedSelf.children.push(clonedChild)});return clonedSelf};XMLElement.prototype.attribute=function(name,value){var attName,attValue;if(name!=null){name=getValue(name)}if(isObject(name)){for(attName in name){if(!hasProp.call(name,attName))continue;attValue=name[attName];this.attribute(attName,attValue)}}else{if(isFunction(value)){value=value.apply()}if(this.options.keepNullAttributes&&value==null){this.attribs[name]=new XMLAttribute(this,name,"")}else if(value!=null){this.attribs[name]=new XMLAttribute(this,name,value)}}return this};XMLElement.prototype.removeAttribute=function(name){var attName,j,len;if(name==null){throw new Error("Missing attribute name. "+this.debugInfo())}name=getValue(name);if(Array.isArray(name)){for(j=0,len=name.length;j<len;j++){attName=name[j];delete this.attribs[attName]}}else{delete this.attribs[name]}return this};XMLElement.prototype.toString=function(options){return this.options.writer.element(this,this.options.writer.filterOptions(options))};XMLElement.prototype.att=function(name,value){return this.attribute(name,value)};XMLElement.prototype.a=function(name,value){return this.attribute(name,value)};XMLElement.prototype.getAttribute=function(name){if(this.attribs.hasOwnProperty(name)){return this.attribs[name].value}else{return null}};XMLElement.prototype.setAttribute=function(name,value){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getAttributeNode=function(name){if(this.attribs.hasOwnProperty(name)){return this.attribs[name]}else{return null}};XMLElement.prototype.setAttributeNode=function(newAttr){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.removeAttributeNode=function(oldAttr){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getElementsByTagName=function(name){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getAttributeNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.setAttributeNS=function(namespaceURI,qualifiedName,value){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.removeAttributeNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getAttributeNodeNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.setAttributeNodeNS=function(newAttr){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getElementsByTagNameNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.hasAttribute=function(name){return this.attribs.hasOwnProperty(name)};XMLElement.prototype.hasAttributeNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.setIdAttribute=function(name,isId){if(this.attribs.hasOwnProperty(name)){return this.attribs[name].isId}else{return isId}};XMLElement.prototype.setIdAttributeNS=function(namespaceURI,localName,isId){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.setIdAttributeNode=function(idAttr,isId){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getElementsByTagName=function(tagname){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getElementsByTagNameNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.getElementsByClassName=function(classNames){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLElement.prototype.isEqualNode=function(node){var i,j,ref1;if(!XMLElement.__super__.isEqualNode.apply(this,arguments).isEqualNode(node)){return false}if(node.namespaceURI!==this.namespaceURI){return false}if(node.prefix!==this.prefix){return false}if(node.localName!==this.localName){return false}if(node.attribs.length!==this.attribs.length){return false}for(i=j=0,ref1=this.attribs.length-1;0<=ref1?j<=ref1:j>=ref1;i=0<=ref1?++j:--j){if(!this.attribs[i].isEqualNode(node.attribs[i])){return false}}return true};return XMLElement}(XMLNode)}).call(this)},{"./NodeType":9,"./Utility":10,"./XMLAttribute":12,"./XMLNamedNodeMap":30,"./XMLNode":31}],30:[function(require,module,exports){(function(){var XMLNamedNodeMap;module.exports=XMLNamedNodeMap=function(){function XMLNamedNodeMap(nodes){this.nodes=nodes}Object.defineProperty(XMLNamedNodeMap.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}});XMLNamedNodeMap.prototype.clone=function(){return this.nodes=null};XMLNamedNodeMap.prototype.getNamedItem=function(name){return this.nodes[name]};XMLNamedNodeMap.prototype.setNamedItem=function(node){var oldNode;oldNode=this.nodes[node.nodeName];this.nodes[node.nodeName]=node;return oldNode||null};XMLNamedNodeMap.prototype.removeNamedItem=function(name){var oldNode;oldNode=this.nodes[name];delete this.nodes[name];return oldNode||null};XMLNamedNodeMap.prototype.item=function(index){return this.nodes[Object.keys(this.nodes)[index]]||null};XMLNamedNodeMap.prototype.getNamedItemNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented.")};XMLNamedNodeMap.prototype.setNamedItemNS=function(node){throw new Error("This DOM method is not implemented.")};XMLNamedNodeMap.prototype.removeNamedItemNS=function(namespaceURI,localName){throw new Error("This DOM method is not implemented.")};return XMLNamedNodeMap}()}).call(this)},{}],31:[function(require,module,exports){(function(){var DocumentPosition,NodeType,XMLCData,XMLComment,XMLDeclaration,XMLDocType,XMLDummy,XMLElement,XMLNamedNodeMap,XMLNode,XMLNodeList,XMLProcessingInstruction,XMLRaw,XMLText,getValue,isEmpty,isFunction,isObject,ref1,hasProp={}.hasOwnProperty;ref1=require("./Utility"),isObject=ref1.isObject,isFunction=ref1.isFunction,isEmpty=ref1.isEmpty,getValue=ref1.getValue;XMLElement=null;XMLCData=null;XMLComment=null;XMLDeclaration=null;XMLDocType=null;XMLRaw=null;XMLText=null;XMLProcessingInstruction=null;XMLDummy=null;NodeType=null;XMLNodeList=null;XMLNamedNodeMap=null;DocumentPosition=null;module.exports=XMLNode=function(){function XMLNode(parent1){this.parent=parent1;if(this.parent){this.options=this.parent.options;this.stringify=this.parent.stringify}this.value=null;this.children=[];this.baseURI=null;if(!XMLElement){XMLElement=require("./XMLElement");XMLCData=require("./XMLCData");XMLComment=require("./XMLComment");XMLDeclaration=require("./XMLDeclaration");XMLDocType=require("./XMLDocType");XMLRaw=require("./XMLRaw");XMLText=require("./XMLText");XMLProcessingInstruction=require("./XMLProcessingInstruction");XMLDummy=require("./XMLDummy");NodeType=require("./NodeType");XMLNodeList=require("./XMLNodeList");XMLNamedNodeMap=require("./XMLNamedNodeMap");DocumentPosition=require("./DocumentPosition")}}Object.defineProperty(XMLNode.prototype,"nodeName",{get:function(){return this.name}});Object.defineProperty(XMLNode.prototype,"nodeType",{get:function(){return this.type}});Object.defineProperty(XMLNode.prototype,"nodeValue",{get:function(){return this.value}});Object.defineProperty(XMLNode.prototype,"parentNode",{get:function(){return this.parent}});Object.defineProperty(XMLNode.prototype,"childNodes",{get:function(){if(!this.childNodeList||!this.childNodeList.nodes){this.childNodeList=new XMLNodeList(this.children)}return this.childNodeList}});Object.defineProperty(XMLNode.prototype,"firstChild",{get:function(){return this.children[0]||null}});Object.defineProperty(XMLNode.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}});Object.defineProperty(XMLNode.prototype,"previousSibling",{get:function(){var i;i=this.parent.children.indexOf(this);return this.parent.children[i-1]||null}});Object.defineProperty(XMLNode.prototype,"nextSibling",{get:function(){var i;i=this.parent.children.indexOf(this);return this.parent.children[i+1]||null}});Object.defineProperty(XMLNode.prototype,"ownerDocument",{get:function(){return this.document()||null}});Object.defineProperty(XMLNode.prototype,"textContent",{get:function(){var child,j,len,ref2,str;if(this.nodeType===NodeType.Element||this.nodeType===NodeType.DocumentFragment){str="";ref2=this.children;for(j=0,len=ref2.length;j<len;j++){child=ref2[j];if(child.textContent){str+=child.textContent}}return str}else{return null}},set:function(value){throw new Error("This DOM method is not implemented."+this.debugInfo())}});XMLNode.prototype.setParent=function(parent){var child,j,len,ref2,results;this.parent=parent;if(parent){this.options=parent.options;this.stringify=parent.stringify}ref2=this.children;results=[];for(j=0,len=ref2.length;j<len;j++){child=ref2[j];results.push(child.setParent(this))}return results};XMLNode.prototype.element=function(name,attributes,text){var childNode,item,j,k,key,lastChild,len,len1,ref2,ref3,val;lastChild=null;if(attributes===null&&text==null){ref2=[{},null],attributes=ref2[0],text=ref2[1]}if(attributes==null){attributes={}}attributes=getValue(attributes);if(!isObject(attributes)){ref3=[attributes,text],text=ref3[0],attributes=ref3[1]}if(name!=null){name=getValue(name)}if(Array.isArray(name)){for(j=0,len=name.length;j<len;j++){item=name[j];lastChild=this.element(item)}}else if(isFunction(name)){lastChild=this.element(name.apply())}else if(isObject(name)){for(key in name){if(!hasProp.call(name,key))continue;val=name[key];if(isFunction(val)){val=val.apply()}if(!this.options.ignoreDecorators&&this.stringify.convertAttKey&&key.indexOf(this.stringify.convertAttKey)===0){lastChild=this.attribute(key.substr(this.stringify.convertAttKey.length),val)}else if(!this.options.separateArrayItems&&Array.isArray(val)&&isEmpty(val)){lastChild=this.dummy()}else if(isObject(val)&&isEmpty(val)){lastChild=this.element(key)}else if(!this.options.keepNullNodes&&val==null){lastChild=this.dummy()}else if(!this.options.separateArrayItems&&Array.isArray(val)){for(k=0,len1=val.length;k<len1;k++){item=val[k];childNode={};childNode[key]=item;lastChild=this.element(childNode)}}else if(isObject(val)){if(!this.options.ignoreDecorators&&this.stringify.convertTextKey&&key.indexOf(this.stringify.convertTextKey)===0){lastChild=this.element(val)}else{lastChild=this.element(key);lastChild.element(val)}}else{lastChild=this.element(key,val)}}}else if(!this.options.keepNullNodes&&text===null){lastChild=this.dummy()}else{if(!this.options.ignoreDecorators&&this.stringify.convertTextKey&&name.indexOf(this.stringify.convertTextKey)===0){lastChild=this.text(text)}else if(!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&name.indexOf(this.stringify.convertCDataKey)===0){lastChild=this.cdata(text)}else if(!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&name.indexOf(this.stringify.convertCommentKey)===0){lastChild=this.comment(text)}else if(!this.options.ignoreDecorators&&this.stringify.convertRawKey&&name.indexOf(this.stringify.convertRawKey)===0){lastChild=this.raw(text)}else if(!this.options.ignoreDecorators&&this.stringify.convertPIKey&&name.indexOf(this.stringify.convertPIKey)===0){lastChild=this.instruction(name.substr(this.stringify.convertPIKey.length),text)}else{lastChild=this.node(name,attributes,text)}}if(lastChild==null){throw new Error("Could not create any elements with: "+name+". "+this.debugInfo())}return lastChild};XMLNode.prototype.insertBefore=function(name,attributes,text){var child,i,newChild,refChild,removed;if(name!=null?name.type:void 0){newChild=name;refChild=attributes;newChild.setParent(this);if(refChild){i=children.indexOf(refChild);removed=children.splice(i);children.push(newChild);Array.prototype.push.apply(children,removed)}else{children.push(newChild)}return newChild}else{if(this.isRoot){throw new Error("Cannot insert elements at root level. "+this.debugInfo(name))}i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i);child=this.parent.element(name,attributes,text);Array.prototype.push.apply(this.parent.children,removed);return child}};XMLNode.prototype.insertAfter=function(name,attributes,text){var child,i,removed;if(this.isRoot){throw new Error("Cannot insert elements at root level. "+this.debugInfo(name))}i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i+1);child=this.parent.element(name,attributes,text);Array.prototype.push.apply(this.parent.children,removed);return child};XMLNode.prototype.remove=function(){var i,ref2;if(this.isRoot){throw new Error("Cannot remove the root element. "+this.debugInfo())}i=this.parent.children.indexOf(this);[].splice.apply(this.parent.children,[i,i-i+1].concat(ref2=[])),ref2;return this.parent};XMLNode.prototype.node=function(name,attributes,text){var child,ref2;if(name!=null){name=getValue(name)}attributes||(attributes={});attributes=getValue(attributes);if(!isObject(attributes)){ref2=[attributes,text],text=ref2[0],attributes=ref2[1]}child=new XMLElement(this,name,attributes);if(text!=null){child.text(text)}this.children.push(child);return child};XMLNode.prototype.text=function(value){var child;if(isObject(value)){this.element(value)}child=new XMLText(this,value);this.children.push(child);return this};XMLNode.prototype.cdata=function(value){var child;child=new XMLCData(this,value);this.children.push(child);return this};XMLNode.prototype.comment=function(value){var child;child=new XMLComment(this,value);this.children.push(child);return this};XMLNode.prototype.commentBefore=function(value){var child,i,removed;i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i);child=this.parent.comment(value);Array.prototype.push.apply(this.parent.children,removed);return this};XMLNode.prototype.commentAfter=function(value){var child,i,removed;i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i+1);child=this.parent.comment(value);Array.prototype.push.apply(this.parent.children,removed);return this};XMLNode.prototype.raw=function(value){var child;child=new XMLRaw(this,value);this.children.push(child);return this};XMLNode.prototype.dummy=function(){var child;child=new XMLDummy(this);return child};XMLNode.prototype.instruction=function(target,value){var insTarget,insValue,instruction,j,len;if(target!=null){target=getValue(target)}if(value!=null){value=getValue(value)}if(Array.isArray(target)){for(j=0,len=target.length;j<len;j++){insTarget=target[j];this.instruction(insTarget)}}else if(isObject(target)){for(insTarget in target){if(!hasProp.call(target,insTarget))continue;insValue=target[insTarget];this.instruction(insTarget,insValue)}}else{if(isFunction(value)){value=value.apply()}instruction=new XMLProcessingInstruction(this,target,value);this.children.push(instruction)}return this};XMLNode.prototype.instructionBefore=function(target,value){var child,i,removed;i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i);child=this.parent.instruction(target,value);Array.prototype.push.apply(this.parent.children,removed);return this};XMLNode.prototype.instructionAfter=function(target,value){var child,i,removed;i=this.parent.children.indexOf(this);removed=this.parent.children.splice(i+1);child=this.parent.instruction(target,value);Array.prototype.push.apply(this.parent.children,removed);return this};XMLNode.prototype.declaration=function(version,encoding,standalone){var doc,xmldec;doc=this.document();xmldec=new XMLDeclaration(doc,version,encoding,standalone);if(doc.children.length===0){doc.children.unshift(xmldec)}else if(doc.children[0].type===NodeType.Declaration){doc.children[0]=xmldec}else{doc.children.unshift(xmldec)}return doc.root()||doc};XMLNode.prototype.dtd=function(pubID,sysID){var child,doc,doctype,i,j,k,len,len1,ref2,ref3;doc=this.document();doctype=new XMLDocType(doc,pubID,sysID);ref2=doc.children;for(i=j=0,len=ref2.length;j<len;i=++j){child=ref2[i];if(child.type===NodeType.DocType){doc.children[i]=doctype;return doctype}}ref3=doc.children;for(i=k=0,len1=ref3.length;k<len1;i=++k){child=ref3[i];if(child.isRoot){doc.children.splice(i,0,doctype);return doctype}}doc.children.push(doctype);return doctype};XMLNode.prototype.up=function(){if(this.isRoot){throw new Error("The root node has no parent. Use doc() if you need to get the document object.")}return this.parent};XMLNode.prototype.root=function(){var node;node=this;while(node){if(node.type===NodeType.Document){return node.rootObject}else if(node.isRoot){return node}else{node=node.parent}}};XMLNode.prototype.document=function(){var node;node=this;while(node){if(node.type===NodeType.Document){return node}else{node=node.parent}}};XMLNode.prototype.end=function(options){return this.document().end(options)};XMLNode.prototype.prev=function(){var i;i=this.parent.children.indexOf(this);if(i<1){throw new Error("Already at the first node. "+this.debugInfo())}return this.parent.children[i-1]};XMLNode.prototype.next=function(){var i;i=this.parent.children.indexOf(this);if(i===-1||i===this.parent.children.length-1){throw new Error("Already at the last node. "+this.debugInfo())}return this.parent.children[i+1]};XMLNode.prototype.importDocument=function(doc){var clonedRoot;clonedRoot=doc.root().clone();clonedRoot.parent=this;clonedRoot.isRoot=false;this.children.push(clonedRoot);return this};XMLNode.prototype.debugInfo=function(name){var ref2,ref3;name=name||this.name;if(name==null&&!((ref2=this.parent)!=null?ref2.name:void 0)){return""}else if(name==null){return"parent: <"+this.parent.name+">"}else if(!((ref3=this.parent)!=null?ref3.name:void 0)){return"node: <"+name+">"}else{return"node: <"+name+">, parent: <"+this.parent.name+">"}};XMLNode.prototype.ele=function(name,attributes,text){return this.element(name,attributes,text)};XMLNode.prototype.nod=function(name,attributes,text){return this.node(name,attributes,text)};XMLNode.prototype.txt=function(value){return this.text(value)};XMLNode.prototype.dat=function(value){return this.cdata(value)};XMLNode.prototype.com=function(value){return this.comment(value)};XMLNode.prototype.ins=function(target,value){return this.instruction(target,value)};XMLNode.prototype.doc=function(){return this.document()};XMLNode.prototype.dec=function(version,encoding,standalone){return this.declaration(version,encoding,standalone)};XMLNode.prototype.e=function(name,attributes,text){return this.element(name,attributes,text)};XMLNode.prototype.n=function(name,attributes,text){return this.node(name,attributes,text)};XMLNode.prototype.t=function(value){return this.text(value)};XMLNode.prototype.d=function(value){return this.cdata(value)};XMLNode.prototype.c=function(value){return this.comment(value)};XMLNode.prototype.r=function(value){return this.raw(value)};XMLNode.prototype.i=function(target,value){return this.instruction(target,value)};XMLNode.prototype.u=function(){return this.up()};XMLNode.prototype.importXMLBuilder=function(doc){return this.importDocument(doc)};XMLNode.prototype.replaceChild=function(newChild,oldChild){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.removeChild=function(oldChild){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.appendChild=function(newChild){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.hasChildNodes=function(){return this.children.length!==0};XMLNode.prototype.cloneNode=function(deep){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.normalize=function(){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.isSupported=function(feature,version){return true};XMLNode.prototype.hasAttributes=function(){return this.attribs.length!==0};XMLNode.prototype.compareDocumentPosition=function(other){var ref,res;ref=this;if(ref===other){return 0}else if(this.document()!==other.document()){res=DocumentPosition.Disconnected|DocumentPosition.ImplementationSpecific;if(Math.random()<.5){res|=DocumentPosition.Preceding}else{res|=DocumentPosition.Following}return res}else if(ref.isAncestor(other)){return DocumentPosition.Contains|DocumentPosition.Preceding}else if(ref.isDescendant(other)){return DocumentPosition.Contains|DocumentPosition.Following}else if(ref.isPreceding(other)){return DocumentPosition.Preceding}else{return DocumentPosition.Following}};XMLNode.prototype.isSameNode=function(other){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.lookupPrefix=function(namespaceURI){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.isDefaultNamespace=function(namespaceURI){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.lookupNamespaceURI=function(prefix){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.isEqualNode=function(node){var i,j,ref2;if(node.nodeType!==this.nodeType){return false}if(node.children.length!==this.children.length){return false}for(i=j=0,ref2=this.children.length-1;0<=ref2?j<=ref2:j>=ref2;i=0<=ref2?++j:--j){if(!this.children[i].isEqualNode(node.children[i])){return false}}return true};XMLNode.prototype.getFeature=function(feature,version){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.setUserData=function(key,data,handler){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.getUserData=function(key){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLNode.prototype.contains=function(other){if(!other){return false}return other===this||this.isDescendant(other)};XMLNode.prototype.isDescendant=function(node){var child,isDescendantChild,j,len,ref2;ref2=this.children;for(j=0,len=ref2.length;j<len;j++){child=ref2[j];if(node===child){return true}isDescendantChild=child.isDescendant(node);if(isDescendantChild){return true}}return false};XMLNode.prototype.isAncestor=function(node){return node.isDescendant(this)};XMLNode.prototype.isPreceding=function(node){var nodePos,thisPos;nodePos=this.treePosition(node);thisPos=this.treePosition(this);if(nodePos===-1||thisPos===-1){return false}else{return nodePos<thisPos}};XMLNode.prototype.isFollowing=function(node){var nodePos,thisPos;nodePos=this.treePosition(node);thisPos=this.treePosition(this);if(nodePos===-1||thisPos===-1){return false}else{return nodePos>thisPos}};XMLNode.prototype.treePosition=function(node){var found,pos;pos=0;found=false;this.foreachTreeNode(this.document(),function(childNode){pos++;if(!found&&childNode===node){return found=true}});if(found){return pos}else{return-1}};XMLNode.prototype.foreachTreeNode=function(node,func){var child,j,len,ref2,res;node||(node=this.document());ref2=node.children;for(j=0,len=ref2.length;j<len;j++){child=ref2[j];if(res=func(child)){return res}else{res=this.foreachTreeNode(child,func);if(res){return res}}}};return XMLNode}()}).call(this)},{"./DocumentPosition":8,"./NodeType":9,"./Utility":10,"./XMLCData":13,"./XMLComment":15,"./XMLDeclaration":24,"./XMLDocType":25,"./XMLDummy":28,"./XMLElement":29,"./XMLNamedNodeMap":30,"./XMLNodeList":32,"./XMLProcessingInstruction":33,"./XMLRaw":34,"./XMLText":38}],32:[function(require,module,exports){(function(){var XMLNodeList;module.exports=XMLNodeList=function(){function XMLNodeList(nodes){this.nodes=nodes}Object.defineProperty(XMLNodeList.prototype,"length",{get:function(){return this.nodes.length||0}});XMLNodeList.prototype.clone=function(){return this.nodes=null};XMLNodeList.prototype.item=function(index){return this.nodes[index]||null};return XMLNodeList}()}).call(this)},{}],33:[function(require,module,exports){(function(){var NodeType,XMLCharacterData,XMLProcessingInstruction,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLCharacterData=require("./XMLCharacterData");module.exports=XMLProcessingInstruction=function(superClass){extend(XMLProcessingInstruction,superClass);function XMLProcessingInstruction(parent,target,value){XMLProcessingInstruction.__super__.constructor.call(this,parent);if(target==null){throw new Error("Missing instruction target. "+this.debugInfo())}this.type=NodeType.ProcessingInstruction;this.target=this.stringify.insTarget(target);this.name=this.target;if(value){this.value=this.stringify.insValue(value)}}XMLProcessingInstruction.prototype.clone=function(){return Object.create(this)};XMLProcessingInstruction.prototype.toString=function(options){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(options))};XMLProcessingInstruction.prototype.isEqualNode=function(node){if(!XMLProcessingInstruction.__super__.isEqualNode.apply(this,arguments).isEqualNode(node)){return false}if(node.target!==this.target){return false}return true};return XMLProcessingInstruction}(XMLCharacterData)}).call(this)},{"./NodeType":9,"./XMLCharacterData":14}],34:[function(require,module,exports){(function(){var NodeType,XMLNode,XMLRaw,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLNode=require("./XMLNode");module.exports=XMLRaw=function(superClass){extend(XMLRaw,superClass);function XMLRaw(parent,text){XMLRaw.__super__.constructor.call(this,parent);if(text==null){throw new Error("Missing raw text. "+this.debugInfo())}this.type=NodeType.Raw;this.value=this.stringify.raw(text)}XMLRaw.prototype.clone=function(){return Object.create(this)};XMLRaw.prototype.toString=function(options){return this.options.writer.raw(this,this.options.writer.filterOptions(options))};return XMLRaw}(XMLNode)}).call(this)},{"./NodeType":9,"./XMLNode":31}],35:[function(require,module,exports){(function(){var NodeType,WriterState,XMLStreamWriter,XMLWriterBase,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLWriterBase=require("./XMLWriterBase");WriterState=require("./WriterState");module.exports=XMLStreamWriter=function(superClass){extend(XMLStreamWriter,superClass);function XMLStreamWriter(stream,options){this.stream=stream;XMLStreamWriter.__super__.constructor.call(this,options)}XMLStreamWriter.prototype.endline=function(node,options,level){if(node.isLastRootNode&&options.state===WriterState.CloseTag){return""}else{return XMLStreamWriter.__super__.endline.call(this,node,options,level)}};XMLStreamWriter.prototype.document=function(doc,options){var child,i,j,k,len,len1,ref,ref1,results;ref=doc.children;for(i=j=0,len=ref.length;j<len;i=++j){child=ref[i];child.isLastRootNode=i===doc.children.length-1}options=this.filterOptions(options);ref1=doc.children;results=[];for(k=0,len1=ref1.length;k<len1;k++){child=ref1[k];results.push(this.writeChildNode(child,options,0))}return results};XMLStreamWriter.prototype.attribute=function(att,options,level){return this.stream.write(XMLStreamWriter.__super__.attribute.call(this,att,options,level))};XMLStreamWriter.prototype.cdata=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.cdata.call(this,node,options,level))};XMLStreamWriter.prototype.comment=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.comment.call(this,node,options,level))};XMLStreamWriter.prototype.declaration=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.declaration.call(this,node,options,level))};XMLStreamWriter.prototype.docType=function(node,options,level){var child,j,len,ref;level||(level=0);this.openNode(node,options,level);options.state=WriterState.OpenTag;this.stream.write(this.indent(node,options,level));this.stream.write("<!DOCTYPE "+node.root().name);if(node.pubID&&node.sysID){this.stream.write(' PUBLIC "'+node.pubID+'" "'+node.sysID+'"')}else if(node.sysID){this.stream.write(' SYSTEM "'+node.sysID+'"')}if(node.children.length>0){this.stream.write(" [");this.stream.write(this.endline(node,options,level));options.state=WriterState.InsideTag;ref=node.children;for(j=0,len=ref.length;j<len;j++){child=ref[j];this.writeChildNode(child,options,level+1)}options.state=WriterState.CloseTag;this.stream.write("]")}options.state=WriterState.CloseTag;this.stream.write(options.spaceBeforeSlash+">");this.stream.write(this.endline(node,options,level));options.state=WriterState.None;return this.closeNode(node,options,level)};XMLStreamWriter.prototype.element=function(node,options,level){var att,child,childNodeCount,firstChildNode,j,len,name,prettySuppressed,ref,ref1;level||(level=0);this.openNode(node,options,level);options.state=WriterState.OpenTag;this.stream.write(this.indent(node,options,level)+"<"+node.name);ref=node.attribs;for(name in ref){if(!hasProp.call(ref,name))continue;att=ref[name];this.attribute(att,options,level)}childNodeCount=node.children.length;firstChildNode=childNodeCount===0?null:node.children[0];if(childNodeCount===0||node.children.every(function(e){return(e.type===NodeType.Text||e.type===NodeType.Raw)&&e.value===""})){if(options.allowEmpty){this.stream.write(">");options.state=WriterState.CloseTag;this.stream.write("</"+node.name+">")}else{options.state=WriterState.CloseTag;this.stream.write(options.spaceBeforeSlash+"/>")}}else if(options.pretty&&childNodeCount===1&&(firstChildNode.type===NodeType.Text||firstChildNode.type===NodeType.Raw)&&firstChildNode.value!=null){this.stream.write(">");options.state=WriterState.InsideTag;options.suppressPrettyCount++;prettySuppressed=true;this.writeChildNode(firstChildNode,options,level+1);options.suppressPrettyCount--;prettySuppressed=false;options.state=WriterState.CloseTag;this.stream.write("</"+node.name+">")}else{this.stream.write(">"+this.endline(node,options,level));options.state=WriterState.InsideTag;ref1=node.children;for(j=0,len=ref1.length;j<len;j++){child=ref1[j];this.writeChildNode(child,options,level+1)}options.state=WriterState.CloseTag;this.stream.write(this.indent(node,options,level)+"</"+node.name+">")}this.stream.write(this.endline(node,options,level));options.state=WriterState.None;return this.closeNode(node,options,level)};XMLStreamWriter.prototype.processingInstruction=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.processingInstruction.call(this,node,options,level))};XMLStreamWriter.prototype.raw=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.raw.call(this,node,options,level))};XMLStreamWriter.prototype.text=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.text.call(this,node,options,level))};XMLStreamWriter.prototype.dtdAttList=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.dtdAttList.call(this,node,options,level))};XMLStreamWriter.prototype.dtdElement=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.dtdElement.call(this,node,options,level))};XMLStreamWriter.prototype.dtdEntity=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.dtdEntity.call(this,node,options,level))};XMLStreamWriter.prototype.dtdNotation=function(node,options,level){return this.stream.write(XMLStreamWriter.__super__.dtdNotation.call(this,node,options,level))};return XMLStreamWriter}(XMLWriterBase)}).call(this)},{"./NodeType":9,"./WriterState":11,"./XMLWriterBase":39}],36:[function(require,module,exports){(function(){var XMLStringWriter,XMLWriterBase,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;XMLWriterBase=require("./XMLWriterBase");module.exports=XMLStringWriter=function(superClass){extend(XMLStringWriter,superClass);function XMLStringWriter(options){XMLStringWriter.__super__.constructor.call(this,options)}XMLStringWriter.prototype.document=function(doc,options){var child,i,len,r,ref;options=this.filterOptions(options);r="";ref=doc.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];r+=this.writeChildNode(child,options,0)}if(options.pretty&&r.slice(-options.newline.length)===options.newline){r=r.slice(0,-options.newline.length)}return r};return XMLStringWriter}(XMLWriterBase)}).call(this)},{"./XMLWriterBase":39}],37:[function(require,module,exports){(function(){var XMLStringifier,bind=function(fn,me){return function(){return fn.apply(me,arguments)}},hasProp={}.hasOwnProperty;module.exports=XMLStringifier=function(){function XMLStringifier(options){this.assertLegalName=bind(this.assertLegalName,this);this.assertLegalChar=bind(this.assertLegalChar,this);var key,ref,value;options||(options={});this.options=options;if(!this.options.version){this.options.version="1.0"}ref=options.stringify||{};for(key in ref){if(!hasProp.call(ref,key))continue;value=ref[key];this[key]=value}}XMLStringifier.prototype.name=function(val){if(this.options.noValidation){return val}return this.assertLegalName(""+val||"")};XMLStringifier.prototype.text=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(this.textEscape(""+val||""))};XMLStringifier.prototype.cdata=function(val){if(this.options.noValidation){return val}val=""+val||"";val=val.replace("]]>","]]]]><![CDATA[>");return this.assertLegalChar(val)};XMLStringifier.prototype.comment=function(val){if(this.options.noValidation){return val}val=""+val||"";if(val.match(/--/)){throw new Error("Comment text cannot contain double-hypen: "+val)}return this.assertLegalChar(val)};XMLStringifier.prototype.raw=function(val){if(this.options.noValidation){return val}return""+val||""};XMLStringifier.prototype.attValue=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(this.attEscape(val=""+val||""))};XMLStringifier.prototype.insTarget=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.insValue=function(val){if(this.options.noValidation){return val}val=""+val||"";if(val.match(/\?>/)){throw new Error("Invalid processing instruction value: "+val)}return this.assertLegalChar(val)};XMLStringifier.prototype.xmlVersion=function(val){if(this.options.noValidation){return val}val=""+val||"";if(!val.match(/1\.[0-9]+/)){throw new Error("Invalid version number: "+val)}return val};XMLStringifier.prototype.xmlEncoding=function(val){if(this.options.noValidation){return val}val=""+val||"";if(!val.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/)){throw new Error("Invalid encoding: "+val)}return this.assertLegalChar(val)};XMLStringifier.prototype.xmlStandalone=function(val){if(this.options.noValidation){return val}if(val){return"yes"}else{return"no"}};XMLStringifier.prototype.dtdPubID=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdSysID=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdElementValue=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdAttType=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdAttDefault=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdEntityValue=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.dtdNData=function(val){if(this.options.noValidation){return val}return this.assertLegalChar(""+val||"")};XMLStringifier.prototype.convertAttKey="@";XMLStringifier.prototype.convertPIKey="?";XMLStringifier.prototype.convertTextKey="#text";XMLStringifier.prototype.convertCDataKey="#cdata";XMLStringifier.prototype.convertCommentKey="#comment";XMLStringifier.prototype.convertRawKey="#raw";XMLStringifier.prototype.assertLegalChar=function(str){var regex,res;if(this.options.noValidation){return str}regex="";if(this.options.version==="1.0"){regex=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;if(res=str.match(regex)){throw new Error("Invalid character in string: "+str+" at index "+res.index)}}else if(this.options.version==="1.1"){regex=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/;if(res=str.match(regex)){throw new Error("Invalid character in string: "+str+" at index "+res.index)}}return str};XMLStringifier.prototype.assertLegalName=function(str){var regex;if(this.options.noValidation){return str}this.assertLegalChar(str);regex=/^([:A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/;if(!str.match(regex)){throw new Error("Invalid character in name")}return str};XMLStringifier.prototype.textEscape=function(str){var ampregex;if(this.options.noValidation){return str}ampregex=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g;return str.replace(ampregex,"&").replace(/</g,"<").replace(/>/g,">").replace(/\r/g,"
")};XMLStringifier.prototype.attEscape=function(str){var ampregex;if(this.options.noValidation){return str}ampregex=this.options.noDoubleEncoding?/(?!&\S+;)&/g:/&/g;return str.replace(ampregex,"&").replace(/</g,"<").replace(/"/g,""").replace(/\t/g,"	").replace(/\n/g,"
").replace(/\r/g,"
")};return XMLStringifier}()}).call(this)},{}],38:[function(require,module,exports){(function(){var NodeType,XMLCharacterData,XMLText,extend=function(child,parent){for(var key in parent){if(hasProp.call(parent,key))child[key]=parent[key]}function ctor(){this.constructor=child}ctor.prototype=parent.prototype;child.prototype=new ctor;child.__super__=parent.prototype;return child},hasProp={}.hasOwnProperty;NodeType=require("./NodeType");XMLCharacterData=require("./XMLCharacterData");module.exports=XMLText=function(superClass){extend(XMLText,superClass);function XMLText(parent,text){XMLText.__super__.constructor.call(this,parent);if(text==null){throw new Error("Missing element text. "+this.debugInfo())}this.name="#text";this.type=NodeType.Text;this.value=this.stringify.text(text)}Object.defineProperty(XMLText.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}});Object.defineProperty(XMLText.prototype,"wholeText",{get:function(){var next,prev,str;str="";prev=this.previousSibling;while(prev){str=prev.data+str;prev=prev.previousSibling}str+=this.data;next=this.nextSibling;while(next){str=str+next.data;next=next.nextSibling}return str}});XMLText.prototype.clone=function(){return Object.create(this)};XMLText.prototype.toString=function(options){return this.options.writer.text(this,this.options.writer.filterOptions(options))};XMLText.prototype.splitText=function(offset){throw new Error("This DOM method is not implemented."+this.debugInfo())};XMLText.prototype.replaceWholeText=function(content){throw new Error("This DOM method is not implemented."+this.debugInfo())};return XMLText}(XMLCharacterData)}).call(this)},{"./NodeType":9,"./XMLCharacterData":14}],39:[function(require,module,exports){(function(){var NodeType,WriterState,XMLCData,XMLComment,XMLDTDAttList,XMLDTDElement,XMLDTDEntity,XMLDTDNotation,XMLDeclaration,XMLDocType,XMLDummy,XMLElement,XMLProcessingInstruction,XMLRaw,XMLText,XMLWriterBase,assign,hasProp={}.hasOwnProperty;assign=require("./Utility").assign;NodeType=require("./NodeType");XMLDeclaration=require("./XMLDeclaration");XMLDocType=require("./XMLDocType");XMLCData=require("./XMLCData");XMLComment=require("./XMLComment");XMLElement=require("./XMLElement");XMLRaw=require("./XMLRaw");XMLText=require("./XMLText");XMLProcessingInstruction=require("./XMLProcessingInstruction");XMLDummy=require("./XMLDummy");XMLDTDAttList=require("./XMLDTDAttList");XMLDTDElement=require("./XMLDTDElement");XMLDTDEntity=require("./XMLDTDEntity");XMLDTDNotation=require("./XMLDTDNotation");WriterState=require("./WriterState");module.exports=XMLWriterBase=function(){function XMLWriterBase(options){var key,ref,value;options||(options={});this.options=options;ref=options.writer||{};for(key in ref){if(!hasProp.call(ref,key))continue;value=ref[key];this["_"+key]=this[key];this[key]=value}}XMLWriterBase.prototype.filterOptions=function(options){var filteredOptions,ref,ref1,ref2,ref3,ref4,ref5,ref6;options||(options={});options=assign({},this.options,options);filteredOptions={writer:this};filteredOptions.pretty=options.pretty||false;filteredOptions.allowEmpty=options.allowEmpty||false;filteredOptions.indent=(ref=options.indent)!=null?ref:" ";filteredOptions.newline=(ref1=options.newline)!=null?ref1:"\n";filteredOptions.offset=(ref2=options.offset)!=null?ref2:0;filteredOptions.dontPrettyTextNodes=(ref3=(ref4=options.dontPrettyTextNodes)!=null?ref4:options.dontprettytextnodes)!=null?ref3:0;filteredOptions.spaceBeforeSlash=(ref5=(ref6=options.spaceBeforeSlash)!=null?ref6:options.spacebeforeslash)!=null?ref5:"";if(filteredOptions.spaceBeforeSlash===true){filteredOptions.spaceBeforeSlash=" "}filteredOptions.suppressPrettyCount=0;filteredOptions.user={};filteredOptions.state=WriterState.None;return filteredOptions};XMLWriterBase.prototype.indent=function(node,options,level){var indentLevel;if(!options.pretty||options.suppressPrettyCount){return""}else if(options.pretty){indentLevel=(level||0)+options.offset+1;if(indentLevel>0){return new Array(indentLevel).join(options.indent)}}return""};XMLWriterBase.prototype.endline=function(node,options,level){if(!options.pretty||options.suppressPrettyCount){return""}else{return options.newline}};XMLWriterBase.prototype.attribute=function(att,options,level){var r;this.openAttribute(att,options,level);r=" "+att.name+'="'+att.value+'"';this.closeAttribute(att,options,level);return r};XMLWriterBase.prototype.cdata=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<![CDATA[";options.state=WriterState.InsideTag;r+=node.value;options.state=WriterState.CloseTag;r+="]]>"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.comment=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"\x3c!-- ";options.state=WriterState.InsideTag;r+=node.value;options.state=WriterState.CloseTag;r+=" --\x3e"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.declaration=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<?xml";options.state=WriterState.InsideTag;r+=' version="'+node.version+'"';if(node.encoding!=null){r+=' encoding="'+node.encoding+'"'}if(node.standalone!=null){r+=' standalone="'+node.standalone+'"'}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+"?>";r+=this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.docType=function(node,options,level){var child,i,len,r,ref;level||(level=0);this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level);r+="<!DOCTYPE "+node.root().name;if(node.pubID&&node.sysID){r+=' PUBLIC "'+node.pubID+'" "'+node.sysID+'"'}else if(node.sysID){r+=' SYSTEM "'+node.sysID+'"'}if(node.children.length>0){r+=" [";r+=this.endline(node,options,level);options.state=WriterState.InsideTag;ref=node.children;for(i=0,len=ref.length;i<len;i++){child=ref[i];r+=this.writeChildNode(child,options,level+1)}options.state=WriterState.CloseTag;r+="]"}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+">";r+=this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.element=function(node,options,level){var att,child,childNodeCount,firstChildNode,i,j,len,len1,name,prettySuppressed,r,ref,ref1,ref2;level||(level=0);prettySuppressed=false;r="";this.openNode(node,options,level);options.state=WriterState.OpenTag;r+=this.indent(node,options,level)+"<"+node.name;ref=node.attribs;for(name in ref){if(!hasProp.call(ref,name))continue;att=ref[name];r+=this.attribute(att,options,level)}childNodeCount=node.children.length;firstChildNode=childNodeCount===0?null:node.children[0];if(childNodeCount===0||node.children.every(function(e){return(e.type===NodeType.Text||e.type===NodeType.Raw)&&e.value===""})){if(options.allowEmpty){r+=">";options.state=WriterState.CloseTag;r+="</"+node.name+">"+this.endline(node,options,level)}else{options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+"/>"+this.endline(node,options,level)}}else if(options.pretty&&childNodeCount===1&&(firstChildNode.type===NodeType.Text||firstChildNode.type===NodeType.Raw)&&firstChildNode.value!=null){r+=">";options.state=WriterState.InsideTag;options.suppressPrettyCount++;prettySuppressed=true;r+=this.writeChildNode(firstChildNode,options,level+1);options.suppressPrettyCount--;prettySuppressed=false;options.state=WriterState.CloseTag;r+="</"+node.name+">"+this.endline(node,options,level)}else{if(options.dontPrettyTextNodes){ref1=node.children;for(i=0,len=ref1.length;i<len;i++){child=ref1[i];if((child.type===NodeType.Text||child.type===NodeType.Raw)&&child.value!=null){options.suppressPrettyCount++;prettySuppressed=true;break}}}r+=">"+this.endline(node,options,level);options.state=WriterState.InsideTag;ref2=node.children;for(j=0,len1=ref2.length;j<len1;j++){child=ref2[j];r+=this.writeChildNode(child,options,level+1)}options.state=WriterState.CloseTag;r+=this.indent(node,options,level)+"</"+node.name+">";if(prettySuppressed){options.suppressPrettyCount--}r+=this.endline(node,options,level);options.state=WriterState.None}this.closeNode(node,options,level);return r};XMLWriterBase.prototype.writeChildNode=function(node,options,level){switch(node.type){case NodeType.CData:return this.cdata(node,options,level);case NodeType.Comment:return this.comment(node,options,level);case NodeType.Element:return this.element(node,options,level);case NodeType.Raw:return this.raw(node,options,level);case NodeType.Text:return this.text(node,options,level);case NodeType.ProcessingInstruction:return this.processingInstruction(node,options,level);case NodeType.Dummy:return"";case NodeType.Declaration:return this.declaration(node,options,level);case NodeType.DocType:return this.docType(node,options,level);case NodeType.AttributeDeclaration:return this.dtdAttList(node,options,level);case NodeType.ElementDeclaration:return this.dtdElement(node,options,level);case NodeType.EntityDeclaration:return this.dtdEntity(node,options,level);case NodeType.NotationDeclaration:return this.dtdNotation(node,options,level);default:throw new Error("Unknown XML node type: "+node.constructor.name)}};XMLWriterBase.prototype.processingInstruction=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<?";options.state=WriterState.InsideTag;r+=node.target;if(node.value){r+=" "+node.value}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+"?>";r+=this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.raw=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level);options.state=WriterState.InsideTag;r+=node.value;options.state=WriterState.CloseTag;r+=this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.text=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level);options.state=WriterState.InsideTag;r+=node.value;options.state=WriterState.CloseTag;r+=this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.dtdAttList=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<!ATTLIST";options.state=WriterState.InsideTag;r+=" "+node.elementName+" "+node.attributeName+" "+node.attributeType;if(node.defaultValueType!=="#DEFAULT"){r+=" "+node.defaultValueType}if(node.defaultValue){r+=' "'+node.defaultValue+'"'}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+">"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.dtdElement=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<!ELEMENT";options.state=WriterState.InsideTag;r+=" "+node.name+" "+node.value;options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+">"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.dtdEntity=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<!ENTITY";options.state=WriterState.InsideTag;if(node.pe){r+=" %"}r+=" "+node.name;if(node.value){r+=' "'+node.value+'"'}else{if(node.pubID&&node.sysID){r+=' PUBLIC "'+node.pubID+'" "'+node.sysID+'"'}else if(node.sysID){r+=' SYSTEM "'+node.sysID+'"'}if(node.nData){r+=" NDATA "+node.nData}}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+">"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.dtdNotation=function(node,options,level){var r;this.openNode(node,options,level);options.state=WriterState.OpenTag;r=this.indent(node,options,level)+"<!NOTATION";options.state=WriterState.InsideTag;r+=" "+node.name;if(node.pubID&&node.sysID){r+=' PUBLIC "'+node.pubID+'" "'+node.sysID+'"'}else if(node.pubID){r+=' PUBLIC "'+node.pubID+'"'}else if(node.sysID){r+=' SYSTEM "'+node.sysID+'"'}options.state=WriterState.CloseTag;r+=options.spaceBeforeSlash+">"+this.endline(node,options,level);options.state=WriterState.None;this.closeNode(node,options,level);return r};XMLWriterBase.prototype.openNode=function(node,options,level){};XMLWriterBase.prototype.closeNode=function(node,options,level){};XMLWriterBase.prototype.openAttribute=function(att,options,level){};XMLWriterBase.prototype.closeAttribute=function(att,options,level){};return XMLWriterBase}()}).call(this)},{"./NodeType":9,"./Utility":10,"./WriterState":11,"./XMLCData":13,"./XMLComment":15,"./XMLDTDAttList":20,"./XMLDTDElement":21,"./XMLDTDEntity":22,"./XMLDTDNotation":23,"./XMLDeclaration":24,"./XMLDocType":25,"./XMLDummy":28,"./XMLElement":29,"./XMLProcessingInstruction":33,"./XMLRaw":34,"./XMLText":38}],40:[function(require,module,exports){(function(){var NodeType,WriterState,XMLDOMImplementation,XMLDocument,XMLDocumentCB,XMLStreamWriter,XMLStringWriter,assign,isFunction,ref;ref=require("./Utility"),assign=ref.assign,isFunction=ref.isFunction;XMLDOMImplementation=require("./XMLDOMImplementation");XMLDocument=require("./XMLDocument");XMLDocumentCB=require("./XMLDocumentCB");XMLStringWriter=require("./XMLStringWriter");XMLStreamWriter=require("./XMLStreamWriter");NodeType=require("./NodeType");WriterState=require("./WriterState");module.exports.create=function(name,xmldec,doctype,options){var doc,root;if(name==null){throw new Error("Root element needs a name.")}options=assign({},xmldec,doctype,options);doc=new XMLDocument(options);root=doc.element(name);if(!options.headless){doc.declaration(options);if(options.pubID!=null||options.sysID!=null){doc.dtd(options)}}return root};module.exports.begin=function(options,onData,onEnd){var ref1;if(isFunction(options)){ref1=[options,onData],onData=ref1[0],onEnd=ref1[1];options={}}if(onData){return new XMLDocumentCB(options,onData,onEnd)}else{return new XMLDocument(options)}};module.exports.stringWriter=function(options){return new XMLStringWriter(options)};module.exports.streamWriter=function(stream,options){return new XMLStreamWriter(stream,options)};module.exports.implementation=new XMLDOMImplementation;module.exports.nodeType=NodeType;module.exports.writerState=WriterState}).call(this)},{"./NodeType":9,"./Utility":10,"./WriterState":11,"./XMLDOMImplementation":18,"./XMLDocument":26,"./XMLDocumentCB":27,"./XMLStreamWriter":35,"./XMLStringWriter":36}],41:[function(require,module,exports){"use strict";exports.byteLength=byteLength;exports.toByteArray=toByteArray;exports.fromByteArray=fromByteArray;var lookup=[];var revLookup=[];var Arr=typeof Uint8Array!=="undefined"?Uint8Array:Array;var code="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(var i=0,len=code.length;i<len;++i){lookup[i]=code[i];revLookup[code.charCodeAt(i)]=i}revLookup["-".charCodeAt(0)]=62;revLookup["_".charCodeAt(0)]=63;function getLens(b64){var len=b64.length;if(len%4>0){throw new Error("Invalid string. Length must be a multiple of 4")}var validLen=b64.indexOf("=");if(validLen===-1)validLen=len;var placeHoldersLen=validLen===len?0:4-validLen%4;return[validLen,placeHoldersLen]}function byteLength(b64){var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function _byteLength(b64,validLen,placeHoldersLen){return(validLen+placeHoldersLen)*3/4-placeHoldersLen}function toByteArray(b64){var tmp;var lens=getLens(b64);var validLen=lens[0];var placeHoldersLen=lens[1];var arr=new Arr(_byteLength(b64,validLen,placeHoldersLen));var curByte=0;var len=placeHoldersLen>0?validLen-4:validLen;var i;for(i=0;i<len;i+=4){tmp=revLookup[b64.charCodeAt(i)]<<18|revLookup[b64.charCodeAt(i+1)]<<12|revLookup[b64.charCodeAt(i+2)]<<6|revLookup[b64.charCodeAt(i+3)];arr[curByte++]=tmp>>16&255;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}if(placeHoldersLen===2){tmp=revLookup[b64.charCodeAt(i)]<<2|revLookup[b64.charCodeAt(i+1)]>>4;arr[curByte++]=tmp&255}if(placeHoldersLen===1){tmp=revLookup[b64.charCodeAt(i)]<<10|revLookup[b64.charCodeAt(i+1)]<<4|revLookup[b64.charCodeAt(i+2)]>>2;arr[curByte++]=tmp>>8&255;arr[curByte++]=tmp&255}return arr}function tripletToBase64(num){return lookup[num>>18&63]+lookup[num>>12&63]+lookup[num>>6&63]+lookup[num&63]}function encodeChunk(uint8,start,end){var tmp;var output=[];for(var i=start;i<end;i+=3){tmp=(uint8[i]<<16&16711680)+(uint8[i+1]<<8&65280)+(uint8[i+2]&255);output.push(tripletToBase64(tmp))}return output.join("")}function fromByteArray(uint8){var tmp;var len=uint8.length;var extraBytes=len%3;var parts=[];var maxChunkLength=16383;for(var i=0,len2=len-extraBytes;i<len2;i+=maxChunkLength){parts.push(encodeChunk(uint8,i,i+maxChunkLength>len2?len2:i+maxChunkLength))}if(extraBytes===1){tmp=uint8[len-1];parts.push(lookup[tmp>>2]+lookup[tmp<<4&63]+"==")}else if(extraBytes===2){tmp=(uint8[len-2]<<8)+uint8[len-1];parts.push(lookup[tmp>>10]+lookup[tmp>>4&63]+lookup[tmp<<2&63]+"=")}return parts.join("")}},{}],42:[function(require,module,exports){},{}],43:[function(require,module,exports){(function(Buffer){"use strict";var base64=require("base64-js");var ieee754=require("ieee754");exports.Buffer=Buffer;exports.SlowBuffer=SlowBuffer;exports.INSPECT_MAX_BYTES=50;var K_MAX_LENGTH=2147483647;exports.kMaxLength=K_MAX_LENGTH;Buffer.TYPED_ARRAY_SUPPORT=typedArraySupport();if(!Buffer.TYPED_ARRAY_SUPPORT&&typeof console!=="undefined"&&typeof console.error==="function"){console.error("This browser lacks typed array (Uint8Array) support which is required by "+"`buffer` v5.x. Use `buffer` v4.x if you require old browser support.")}function typedArraySupport(){try{var arr=new Uint8Array(1);arr.__proto__={__proto__:Uint8Array.prototype,foo:function(){return 42}};return arr.foo()===42}catch(e){return false}}Object.defineProperty(Buffer.prototype,"parent",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.buffer}});Object.defineProperty(Buffer.prototype,"offset",{enumerable:true,get:function(){if(!Buffer.isBuffer(this))return undefined;return this.byteOffset}});function createBuffer(length){if(length>K_MAX_LENGTH){throw new RangeError('The value "'+length+'" is invalid for option "size"')}var buf=new Uint8Array(length);buf.__proto__=Buffer.prototype;return buf}function Buffer(arg,encodingOrOffset,length){if(typeof arg==="number"){if(typeof encodingOrOffset==="string"){throw new TypeError('The "string" argument must be of type string. Received type number')}return allocUnsafe(arg)}return from(arg,encodingOrOffset,length)}if(typeof Symbol!=="undefined"&&Symbol.species!=null&&Buffer[Symbol.species]===Buffer){Object.defineProperty(Buffer,Symbol.species,{value:null,configurable:true,enumerable:false,writable:false})}Buffer.poolSize=8192;function from(value,encodingOrOffset,length){if(typeof value==="string"){return fromString(value,encodingOrOffset)}if(ArrayBuffer.isView(value)){return fromArrayLike(value)}if(value==null){throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}if(isInstance(value,ArrayBuffer)||value&&isInstance(value.buffer,ArrayBuffer)){return fromArrayBuffer(value,encodingOrOffset,length)}if(typeof value==="number"){throw new TypeError('The "value" argument must not be of type number. Received type number')}var valueOf=value.valueOf&&value.valueOf();if(valueOf!=null&&valueOf!==value){return Buffer.from(valueOf,encodingOrOffset,length)}var b=fromObject(value);if(b)return b;if(typeof Symbol!=="undefined"&&Symbol.toPrimitive!=null&&typeof value[Symbol.toPrimitive]==="function"){return Buffer.from(value[Symbol.toPrimitive]("string"),encodingOrOffset,length)}throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, "+"or Array-like Object. Received type "+typeof value)}Buffer.from=function(value,encodingOrOffset,length){return from(value,encodingOrOffset,length)};Buffer.prototype.__proto__=Uint8Array.prototype;Buffer.__proto__=Uint8Array;function assertSize(size){if(typeof size!=="number"){throw new TypeError('"size" argument must be of type number')}else if(size<0){throw new RangeError('The value "'+size+'" is invalid for option "size"')}}function alloc(size,fill,encoding){assertSize(size);if(size<=0){return createBuffer(size)}if(fill!==undefined){return typeof encoding==="string"?createBuffer(size).fill(fill,encoding):createBuffer(size).fill(fill)}return createBuffer(size)}Buffer.alloc=function(size,fill,encoding){return alloc(size,fill,encoding)};function allocUnsafe(size){assertSize(size);return createBuffer(size<0?0:checked(size)|0)}Buffer.allocUnsafe=function(size){return allocUnsafe(size)};Buffer.allocUnsafeSlow=function(size){return allocUnsafe(size)};function fromString(string,encoding){if(typeof encoding!=="string"||encoding===""){encoding="utf8"}if(!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}var length=byteLength(string,encoding)|0;var buf=createBuffer(length);var actual=buf.write(string,encoding);if(actual!==length){buf=buf.slice(0,actual)}return buf}function fromArrayLike(array){var length=array.length<0?0:checked(array.length)|0;var buf=createBuffer(length);for(var i=0;i<length;i+=1){buf[i]=array[i]&255}return buf}function fromArrayBuffer(array,byteOffset,length){if(byteOffset<0||array.byteLength<byteOffset){throw new RangeError('"offset" is outside of buffer bounds')}if(array.byteLength<byteOffset+(length||0)){throw new RangeError('"length" is outside of buffer bounds')}var buf;if(byteOffset===undefined&&length===undefined){buf=new Uint8Array(array)}else if(length===undefined){buf=new Uint8Array(array,byteOffset)}else{buf=new Uint8Array(array,byteOffset,length)}buf.__proto__=Buffer.prototype;return buf}function fromObject(obj){if(Buffer.isBuffer(obj)){var len=checked(obj.length)|0;var buf=createBuffer(len);if(buf.length===0){return buf}obj.copy(buf,0,0,len);return buf}if(obj.length!==undefined){if(typeof obj.length!=="number"||numberIsNaN(obj.length)){return createBuffer(0)}return fromArrayLike(obj)}if(obj.type==="Buffer"&&Array.isArray(obj.data)){return fromArrayLike(obj.data)}}function checked(length){if(length>=K_MAX_LENGTH){throw new RangeError("Attempt to allocate Buffer larger than maximum "+"size: 0x"+K_MAX_LENGTH.toString(16)+" bytes")}return length|0}function SlowBuffer(length){if(+length!=length){length=0}return Buffer.alloc(+length)}Buffer.isBuffer=function isBuffer(b){return b!=null&&b._isBuffer===true&&b!==Buffer.prototype};Buffer.compare=function compare(a,b){if(isInstance(a,Uint8Array))a=Buffer.from(a,a.offset,a.byteLength);if(isInstance(b,Uint8Array))b=Buffer.from(b,b.offset,b.byteLength);if(!Buffer.isBuffer(a)||!Buffer.isBuffer(b)){throw new TypeError('The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array')}if(a===b)return 0;var x=a.length;var y=b.length;for(var i=0,len=Math.min(x,y);i<len;++i){if(a[i]!==b[i]){x=a[i];y=b[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};Buffer.isEncoding=function isEncoding(encoding){switch(String(encoding).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"latin1":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return true;default:return false}};Buffer.concat=function concat(list,length){if(!Array.isArray(list)){throw new TypeError('"list" argument must be an Array of Buffers')}if(list.length===0){return Buffer.alloc(0)}var i;if(length===undefined){length=0;for(i=0;i<list.length;++i){length+=list[i].length}}var buffer=Buffer.allocUnsafe(length);var pos=0;for(i=0;i<list.length;++i){var buf=list[i];if(isInstance(buf,Uint8Array)){buf=Buffer.from(buf)}if(!Buffer.isBuffer(buf)){throw new TypeError('"list" argument must be an Array of Buffers')}buf.copy(buffer,pos);pos+=buf.length}return buffer};function byteLength(string,encoding){if(Buffer.isBuffer(string)){return string.length}if(ArrayBuffer.isView(string)||isInstance(string,ArrayBuffer)){return string.byteLength}if(typeof string!=="string"){throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. '+"Received type "+typeof string)}var len=string.length;var mustMatch=arguments.length>2&&arguments[2]===true;if(!mustMatch&&len===0)return 0;var loweredCase=false;for(;;){switch(encoding){case"ascii":case"latin1":case"binary":return len;case"utf8":case"utf-8":return utf8ToBytes(string).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return len*2;case"hex":return len>>>1;case"base64":return base64ToBytes(string).length;default:if(loweredCase){return mustMatch?-1:utf8ToBytes(string).length}encoding=(""+encoding).toLowerCase();loweredCase=true}}}Buffer.byteLength=byteLength;function slowToString(encoding,start,end){var loweredCase=false;if(start===undefined||start<0){start=0}if(start>this.length){return""}if(end===undefined||end>this.length){end=this.length}if(end<=0){return""}end>>>=0;start>>>=0;if(end<=start){return""}if(!encoding)encoding="utf8";while(true){switch(encoding){case"hex":return hexSlice(this,start,end);case"utf8":case"utf-8":return utf8Slice(this,start,end);case"ascii":return asciiSlice(this,start,end);case"latin1":case"binary":return latin1Slice(this,start,end);case"base64":return base64Slice(this,start,end);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return utf16leSlice(this,start,end);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(encoding+"").toLowerCase();loweredCase=true}}}Buffer.prototype._isBuffer=true;function swap(b,n,m){var i=b[n];b[n]=b[m];b[m]=i}Buffer.prototype.swap16=function swap16(){var len=this.length;if(len%2!==0){throw new RangeError("Buffer size must be a multiple of 16-bits")}for(var i=0;i<len;i+=2){swap(this,i,i+1)}return this};Buffer.prototype.swap32=function swap32(){var len=this.length;if(len%4!==0){throw new RangeError("Buffer size must be a multiple of 32-bits")}for(var i=0;i<len;i+=4){swap(this,i,i+3);swap(this,i+1,i+2)}return this};Buffer.prototype.swap64=function swap64(){var len=this.length;if(len%8!==0){throw new RangeError("Buffer size must be a multiple of 64-bits")}for(var i=0;i<len;i+=8){swap(this,i,i+7);swap(this,i+1,i+6);swap(this,i+2,i+5);swap(this,i+3,i+4)}return this};Buffer.prototype.toString=function toString(){var length=this.length;if(length===0)return"";if(arguments.length===0)return utf8Slice(this,0,length);return slowToString.apply(this,arguments)};Buffer.prototype.toLocaleString=Buffer.prototype.toString;Buffer.prototype.equals=function equals(b){if(!Buffer.isBuffer(b))throw new TypeError("Argument must be a Buffer");if(this===b)return true;return Buffer.compare(this,b)===0};Buffer.prototype.inspect=function inspect(){var str="";var max=exports.INSPECT_MAX_BYTES;str=this.toString("hex",0,max).replace(/(.{2})/g,"$1 ").trim();if(this.length>max)str+=" ... ";return"<Buffer "+str+">"};Buffer.prototype.compare=function compare(target,start,end,thisStart,thisEnd){if(isInstance(target,Uint8Array)){target=Buffer.from(target,target.offset,target.byteLength)}if(!Buffer.isBuffer(target)){throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. '+"Received type "+typeof target)}if(start===undefined){start=0}if(end===undefined){end=target?target.length:0}if(thisStart===undefined){thisStart=0}if(thisEnd===undefined){thisEnd=this.length}if(start<0||end>target.length||thisStart<0||thisEnd>this.length){throw new RangeError("out of range index")}if(thisStart>=thisEnd&&start>=end){return 0}if(thisStart>=thisEnd){return-1}if(start>=end){return 1}start>>>=0;end>>>=0;thisStart>>>=0;thisEnd>>>=0;if(this===target)return 0;var x=thisEnd-thisStart;var y=end-start;var len=Math.min(x,y);var thisCopy=this.slice(thisStart,thisEnd);var targetCopy=target.slice(start,end);for(var i=0;i<len;++i){if(thisCopy[i]!==targetCopy[i]){x=thisCopy[i];y=targetCopy[i];break}}if(x<y)return-1;if(y<x)return 1;return 0};function bidirectionalIndexOf(buffer,val,byteOffset,encoding,dir){if(buffer.length===0)return-1;if(typeof byteOffset==="string"){encoding=byteOffset;byteOffset=0}else if(byteOffset>2147483647){byteOffset=2147483647}else if(byteOffset<-2147483648){byteOffset=-2147483648}byteOffset=+byteOffset;if(numberIsNaN(byteOffset)){byteOffset=dir?0:buffer.length-1}if(byteOffset<0)byteOffset=buffer.length+byteOffset;if(byteOffset>=buffer.length){if(dir)return-1;else byteOffset=buffer.length-1}else if(byteOffset<0){if(dir)byteOffset=0;else return-1}if(typeof val==="string"){val=Buffer.from(val,encoding)}if(Buffer.isBuffer(val)){if(val.length===0){return-1}return arrayIndexOf(buffer,val,byteOffset,encoding,dir)}else if(typeof val==="number"){val=val&255;if(typeof Uint8Array.prototype.indexOf==="function"){if(dir){return Uint8Array.prototype.indexOf.call(buffer,val,byteOffset)}else{return Uint8Array.prototype.lastIndexOf.call(buffer,val,byteOffset)}}return arrayIndexOf(buffer,[val],byteOffset,encoding,dir)}throw new TypeError("val must be string, number or Buffer")}function arrayIndexOf(arr,val,byteOffset,encoding,dir){var indexSize=1;var arrLength=arr.length;var valLength=val.length;if(encoding!==undefined){encoding=String(encoding).toLowerCase();if(encoding==="ucs2"||encoding==="ucs-2"||encoding==="utf16le"||encoding==="utf-16le"){if(arr.length<2||val.length<2){return-1}indexSize=2;arrLength/=2;valLength/=2;byteOffset/=2}}function read(buf,i){if(indexSize===1){return buf[i]}else{return buf.readUInt16BE(i*indexSize)}}var i;if(dir){var foundIndex=-1;for(i=byteOffset;i<arrLength;i++){if(read(arr,i)===read(val,foundIndex===-1?0:i-foundIndex)){if(foundIndex===-1)foundIndex=i;if(i-foundIndex+1===valLength)return foundIndex*indexSize}else{if(foundIndex!==-1)i-=i-foundIndex;foundIndex=-1}}}else{if(byteOffset+valLength>arrLength)byteOffset=arrLength-valLength;for(i=byteOffset;i>=0;i--){var found=true;for(var j=0;j<valLength;j++){if(read(arr,i+j)!==read(val,j)){found=false;break}}if(found)return i}}return-1}Buffer.prototype.includes=function includes(val,byteOffset,encoding){return this.indexOf(val,byteOffset,encoding)!==-1};Buffer.prototype.indexOf=function indexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,true)};Buffer.prototype.lastIndexOf=function lastIndexOf(val,byteOffset,encoding){return bidirectionalIndexOf(this,val,byteOffset,encoding,false)};function hexWrite(buf,string,offset,length){offset=Number(offset)||0;var remaining=buf.length-offset;if(!length){length=remaining}else{length=Number(length);if(length>remaining){length=remaining}}var strLen=string.length;if(length>strLen/2){length=strLen/2}for(var i=0;i<length;++i){var parsed=parseInt(string.substr(i*2,2),16);if(numberIsNaN(parsed))return i;buf[offset+i]=parsed}return i}function utf8Write(buf,string,offset,length){return blitBuffer(utf8ToBytes(string,buf.length-offset),buf,offset,length)}function asciiWrite(buf,string,offset,length){return blitBuffer(asciiToBytes(string),buf,offset,length)}function latin1Write(buf,string,offset,length){return asciiWrite(buf,string,offset,length)}function base64Write(buf,string,offset,length){return blitBuffer(base64ToBytes(string),buf,offset,length)}function ucs2Write(buf,string,offset,length){return blitBuffer(utf16leToBytes(string,buf.length-offset),buf,offset,length)}Buffer.prototype.write=function write(string,offset,length,encoding){if(offset===undefined){encoding="utf8";length=this.length;offset=0}else if(length===undefined&&typeof offset==="string"){encoding=offset;length=this.length;offset=0}else if(isFinite(offset)){offset=offset>>>0;if(isFinite(length)){length=length>>>0;if(encoding===undefined)encoding="utf8"}else{encoding=length;length=undefined}}else{throw new Error("Buffer.write(string, encoding, offset[, length]) is no longer supported")}var remaining=this.length-offset;if(length===undefined||length>remaining)length=remaining;if(string.length>0&&(length<0||offset<0)||offset>this.length){throw new RangeError("Attempt to write outside buffer bounds")}if(!encoding)encoding="utf8";var loweredCase=false;for(;;){switch(encoding){case"hex":return hexWrite(this,string,offset,length);case"utf8":case"utf-8":return utf8Write(this,string,offset,length);case"ascii":return asciiWrite(this,string,offset,length);case"latin1":case"binary":return latin1Write(this,string,offset,length);case"base64":return base64Write(this,string,offset,length);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return ucs2Write(this,string,offset,length);default:if(loweredCase)throw new TypeError("Unknown encoding: "+encoding);encoding=(""+encoding).toLowerCase();loweredCase=true}}};Buffer.prototype.toJSON=function toJSON(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};function base64Slice(buf,start,end){if(start===0&&end===buf.length){return base64.fromByteArray(buf)}else{return base64.fromByteArray(buf.slice(start,end))}}function utf8Slice(buf,start,end){end=Math.min(buf.length,end);var res=[];var i=start;while(i<end){var firstByte=buf[i];var codePoint=null;var bytesPerSequence=firstByte>239?4:firstByte>223?3:firstByte>191?2:1;if(i+bytesPerSequence<=end){var secondByte,thirdByte,fourthByte,tempCodePoint;switch(bytesPerSequence){case 1:if(firstByte<128){codePoint=firstByte}break;case 2:secondByte=buf[i+1];if((secondByte&192)===128){tempCodePoint=(firstByte&31)<<6|secondByte&63;if(tempCodePoint>127){codePoint=tempCodePoint}}break;case 3:secondByte=buf[i+1];thirdByte=buf[i+2];if((secondByte&192)===128&&(thirdByte&192)===128){tempCodePoint=(firstByte&15)<<12|(secondByte&63)<<6|thirdByte&63;if(tempCodePoint>2047&&(tempCodePoint<55296||tempCodePoint>57343)){codePoint=tempCodePoint}}break;case 4:secondByte=buf[i+1];thirdByte=buf[i+2];fourthByte=buf[i+3];if((secondByte&192)===128&&(thirdByte&192)===128&&(fourthByte&192)===128){tempCodePoint=(firstByte&15)<<18|(secondByte&63)<<12|(thirdByte&63)<<6|fourthByte&63;if(tempCodePoint>65535&&tempCodePoint<1114112){codePoint=tempCodePoint}}}}if(codePoint===null){codePoint=65533;bytesPerSequence=1}else if(codePoint>65535){codePoint-=65536;res.push(codePoint>>>10&1023|55296);codePoint=56320|codePoint&1023}res.push(codePoint);i+=bytesPerSequence}return decodeCodePointsArray(res)}var MAX_ARGUMENTS_LENGTH=4096;function decodeCodePointsArray(codePoints){var len=codePoints.length;if(len<=MAX_ARGUMENTS_LENGTH){return String.fromCharCode.apply(String,codePoints)}var res="";var i=0;while(i<len){res+=String.fromCharCode.apply(String,codePoints.slice(i,i+=MAX_ARGUMENTS_LENGTH))}return res}function asciiSlice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i]&127)}return ret}function latin1Slice(buf,start,end){var ret="";end=Math.min(buf.length,end);for(var i=start;i<end;++i){ret+=String.fromCharCode(buf[i])}return ret}function hexSlice(buf,start,end){var len=buf.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(buf[i])}return out}function utf16leSlice(buf,start,end){var bytes=buf.slice(start,end);var res="";for(var i=0;i<bytes.length;i+=2){res+=String.fromCharCode(bytes[i]+bytes[i+1]*256)}return res}Buffer.prototype.slice=function slice(start,end){var len=this.length;start=~~start;end=end===undefined?len:~~end;if(start<0){start+=len;if(start<0)start=0}else if(start>len){start=len}if(end<0){end+=len;if(end<0)end=0}else if(end>len){end=len}if(end<start)end=start;var newBuf=this.subarray(start,end);newBuf.__proto__=Buffer.prototype;return newBuf};function checkOffset(offset,ext,length){if(offset%1!==0||offset<0)throw new RangeError("offset is not uint");if(offset+ext>length)throw new RangeError("Trying to access beyond buffer length")}Buffer.prototype.readUIntLE=function readUIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}return val};Buffer.prototype.readUIntBE=function readUIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){checkOffset(offset,byteLength,this.length)}var val=this[offset+--byteLength];var mul=1;while(byteLength>0&&(mul*=256)){val+=this[offset+--byteLength]*mul}return val};Buffer.prototype.readUInt8=function readUInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);return this[offset]};Buffer.prototype.readUInt16LE=function readUInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]|this[offset+1]<<8};Buffer.prototype.readUInt16BE=function readUInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);return this[offset]<<8|this[offset+1]};Buffer.prototype.readUInt32LE=function readUInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return(this[offset]|this[offset+1]<<8|this[offset+2]<<16)+this[offset+3]*16777216};Buffer.prototype.readUInt32BE=function readUInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]*16777216+(this[offset+1]<<16|this[offset+2]<<8|this[offset+3])};Buffer.prototype.readIntLE=function readIntLE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var val=this[offset];var mul=1;var i=0;while(++i<byteLength&&(mul*=256)){val+=this[offset+i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readIntBE=function readIntBE(offset,byteLength,noAssert){offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert)checkOffset(offset,byteLength,this.length);var i=byteLength;var mul=1;var val=this[offset+--i];while(i>0&&(mul*=256)){val+=this[offset+--i]*mul}mul*=128;if(val>=mul)val-=Math.pow(2,8*byteLength);return val};Buffer.prototype.readInt8=function readInt8(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,1,this.length);if(!(this[offset]&128))return this[offset];return(255-this[offset]+1)*-1};Buffer.prototype.readInt16LE=function readInt16LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset]|this[offset+1]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt16BE=function readInt16BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,2,this.length);var val=this[offset+1]|this[offset]<<8;return val&32768?val|4294901760:val};Buffer.prototype.readInt32LE=function readInt32LE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]|this[offset+1]<<8|this[offset+2]<<16|this[offset+3]<<24};Buffer.prototype.readInt32BE=function readInt32BE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return this[offset]<<24|this[offset+1]<<16|this[offset+2]<<8|this[offset+3]};Buffer.prototype.readFloatLE=function readFloatLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,true,23,4)};Buffer.prototype.readFloatBE=function readFloatBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,4,this.length);return ieee754.read(this,offset,false,23,4)};Buffer.prototype.readDoubleLE=function readDoubleLE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,true,52,8)};Buffer.prototype.readDoubleBE=function readDoubleBE(offset,noAssert){offset=offset>>>0;if(!noAssert)checkOffset(offset,8,this.length);return ieee754.read(this,offset,false,52,8)};function checkInt(buf,value,offset,ext,max,min){if(!Buffer.isBuffer(buf))throw new TypeError('"buffer" argument must be a Buffer instance');if(value>max||value<min)throw new RangeError('"value" argument is out of bounds');if(offset+ext>buf.length)throw new RangeError("Index out of range")}Buffer.prototype.writeUIntLE=function writeUIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var mul=1;var i=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUIntBE=function writeUIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;byteLength=byteLength>>>0;if(!noAssert){var maxBytes=Math.pow(2,8*byteLength)-1;checkInt(this,value,offset,byteLength,maxBytes,0)}var i=byteLength-1;var mul=1;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){this[offset+i]=value/mul&255}return offset+byteLength};Buffer.prototype.writeUInt8=function writeUInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,255,0);this[offset]=value&255;return offset+1};Buffer.prototype.writeUInt16LE=function writeUInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeUInt16BE=function writeUInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,65535,0);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeUInt32LE=function writeUInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset+3]=value>>>24;this[offset+2]=value>>>16;this[offset+1]=value>>>8;this[offset]=value&255;return offset+4};Buffer.prototype.writeUInt32BE=function writeUInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,4294967295,0);this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};Buffer.prototype.writeIntLE=function writeIntLE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=0;var mul=1;var sub=0;this[offset]=value&255;while(++i<byteLength&&(mul*=256)){if(value<0&&sub===0&&this[offset+i-1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeIntBE=function writeIntBE(value,offset,byteLength,noAssert){value=+value;offset=offset>>>0;if(!noAssert){var limit=Math.pow(2,8*byteLength-1);checkInt(this,value,offset,byteLength,limit-1,-limit)}var i=byteLength-1;var mul=1;var sub=0;this[offset+i]=value&255;while(--i>=0&&(mul*=256)){if(value<0&&sub===0&&this[offset+i+1]!==0){sub=1}this[offset+i]=(value/mul>>0)-sub&255}return offset+byteLength};Buffer.prototype.writeInt8=function writeInt8(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,1,127,-128);if(value<0)value=255+value+1;this[offset]=value&255;return offset+1};Buffer.prototype.writeInt16LE=function writeInt16LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value&255;this[offset+1]=value>>>8;return offset+2};Buffer.prototype.writeInt16BE=function writeInt16BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,2,32767,-32768);this[offset]=value>>>8;this[offset+1]=value&255;return offset+2};Buffer.prototype.writeInt32LE=function writeInt32LE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);this[offset]=value&255;this[offset+1]=value>>>8;this[offset+2]=value>>>16;this[offset+3]=value>>>24;return offset+4};Buffer.prototype.writeInt32BE=function writeInt32BE(value,offset,noAssert){value=+value;offset=offset>>>0;if(!noAssert)checkInt(this,value,offset,4,2147483647,-2147483648);if(value<0)value=4294967295+value+1;this[offset]=value>>>24;this[offset+1]=value>>>16;this[offset+2]=value>>>8;this[offset+3]=value&255;return offset+4};function checkIEEE754(buf,value,offset,ext,max,min){if(offset+ext>buf.length)throw new RangeError("Index out of range");if(offset<0)throw new RangeError("Index out of range")}function writeFloat(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,4,34028234663852886e22,-34028234663852886e22)}ieee754.write(buf,value,offset,littleEndian,23,4);return offset+4}Buffer.prototype.writeFloatLE=function writeFloatLE(value,offset,noAssert){return writeFloat(this,value,offset,true,noAssert)};Buffer.prototype.writeFloatBE=function writeFloatBE(value,offset,noAssert){return writeFloat(this,value,offset,false,noAssert)};function writeDouble(buf,value,offset,littleEndian,noAssert){value=+value;offset=offset>>>0;if(!noAssert){checkIEEE754(buf,value,offset,8,17976931348623157e292,-17976931348623157e292)}ieee754.write(buf,value,offset,littleEndian,52,8);return offset+8}Buffer.prototype.writeDoubleLE=function writeDoubleLE(value,offset,noAssert){return writeDouble(this,value,offset,true,noAssert)};Buffer.prototype.writeDoubleBE=function writeDoubleBE(value,offset,noAssert){return writeDouble(this,value,offset,false,noAssert)};Buffer.prototype.copy=function copy(target,targetStart,start,end){if(!Buffer.isBuffer(target))throw new TypeError("argument should be a Buffer");if(!start)start=0;if(!end&&end!==0)end=this.length;if(targetStart>=target.length)targetStart=target.length;if(!targetStart)targetStart=0;if(end>0&&end<start)end=start;if(end===start)return 0;if(target.length===0||this.length===0)return 0;if(targetStart<0){throw new RangeError("targetStart out of bounds")}if(start<0||start>=this.length)throw new RangeError("Index out of range");if(end<0)throw new RangeError("sourceEnd out of bounds");if(end>this.length)end=this.length;if(target.length-targetStart<end-start){end=target.length-targetStart+start}var len=end-start;if(this===target&&typeof Uint8Array.prototype.copyWithin==="function"){this.copyWithin(targetStart,start,end)}else if(this===target&&start<targetStart&&targetStart<end){for(var i=len-1;i>=0;--i){target[i+targetStart]=this[i+start]}}else{Uint8Array.prototype.set.call(target,this.subarray(start,end),targetStart)}return len};Buffer.prototype.fill=function fill(val,start,end,encoding){if(typeof val==="string"){if(typeof start==="string"){encoding=start;start=0;end=this.length}else if(typeof end==="string"){encoding=end;end=this.length}if(encoding!==undefined&&typeof encoding!=="string"){throw new TypeError("encoding must be a string")}if(typeof encoding==="string"&&!Buffer.isEncoding(encoding)){throw new TypeError("Unknown encoding: "+encoding)}if(val.length===1){var code=val.charCodeAt(0);if(encoding==="utf8"&&code<128||encoding==="latin1"){val=code}}}else if(typeof val==="number"){val=val&255}if(start<0||this.length<start||this.length<end){throw new RangeError("Out of range index")}if(end<=start){return this}start=start>>>0;end=end===undefined?this.length:end>>>0;if(!val)val=0;var i;if(typeof val==="number"){for(i=start;i<end;++i){this[i]=val}}else{var bytes=Buffer.isBuffer(val)?val:Buffer.from(val,encoding);var len=bytes.length;if(len===0){throw new TypeError('The value "'+val+'" is invalid for argument "value"')}for(i=0;i<end-start;++i){this[i+start]=bytes[i%len]}}return this};var INVALID_BASE64_RE=/[^+/0-9A-Za-z-_]/g;function base64clean(str){str=str.split("=")[0];str=str.trim().replace(INVALID_BASE64_RE,"");if(str.length<2)return"";while(str.length%4!==0){str=str+"="}return str}function toHex(n){if(n<16)return"0"+n.toString(16);return n.toString(16)}function utf8ToBytes(string,units){units=units||Infinity;var codePoint;var length=string.length;var leadSurrogate=null;var bytes=[];for(var i=0;i<length;++i){codePoint=string.charCodeAt(i);if(codePoint>55295&&codePoint<57344){if(!leadSurrogate){if(codePoint>56319){if((units-=3)>-1)bytes.push(239,191,189);continue}else if(i+1===length){if((units-=3)>-1)bytes.push(239,191,189);continue}leadSurrogate=codePoint;continue}if(codePoint<56320){if((units-=3)>-1)bytes.push(239,191,189);leadSurrogate=codePoint;continue}codePoint=(leadSurrogate-55296<<10|codePoint-56320)+65536}else if(leadSurrogate){if((units-=3)>-1)bytes.push(239,191,189)}leadSurrogate=null;if(codePoint<128){if((units-=1)<0)break;bytes.push(codePoint)}else if(codePoint<2048){if((units-=2)<0)break;bytes.push(codePoint>>6|192,codePoint&63|128)}else if(codePoint<65536){if((units-=3)<0)break;bytes.push(codePoint>>12|224,codePoint>>6&63|128,codePoint&63|128)}else if(codePoint<1114112){if((units-=4)<0)break;bytes.push(codePoint>>18|240,codePoint>>12&63|128,codePoint>>6&63|128,codePoint&63|128)}else{throw new Error("Invalid code point")}}return bytes}function asciiToBytes(str){var byteArray=[];for(var i=0;i<str.length;++i){byteArray.push(str.charCodeAt(i)&255)}return byteArray}function utf16leToBytes(str,units){var c,hi,lo;var byteArray=[];for(var i=0;i<str.length;++i){if((units-=2)<0)break;c=str.charCodeAt(i);hi=c>>8;lo=c%256;byteArray.push(lo);byteArray.push(hi)}return byteArray}function base64ToBytes(str){return base64.toByteArray(base64clean(str))}function blitBuffer(src,dst,offset,length){for(var i=0;i<length;++i){if(i+offset>=dst.length||i>=src.length)break;dst[i+offset]=src[i]}return i}function isInstance(obj,type){return obj instanceof type||obj!=null&&obj.constructor!=null&&obj.constructor.name!=null&&obj.constructor.name===type.name}function numberIsNaN(obj){return obj!==obj}}).call(this,require("buffer").Buffer)},{"base64-js":41,buffer:43,ieee754:46}],44:[function(require,module,exports){(function(Buffer){function isArray(arg){if(Array.isArray){return Array.isArray(arg)}return objectToString(arg)==="[object Array]"}exports.isArray=isArray;function isBoolean(arg){return typeof arg==="boolean"}exports.isBoolean=isBoolean;function isNull(arg){return arg===null}exports.isNull=isNull;function isNullOrUndefined(arg){return arg==null}exports.isNullOrUndefined=isNullOrUndefined;function isNumber(arg){return typeof arg==="number"}exports.isNumber=isNumber;function isString(arg){return typeof arg==="string"}exports.isString=isString;function isSymbol(arg){return typeof arg==="symbol"}exports.isSymbol=isSymbol;function isUndefined(arg){return arg===void 0}exports.isUndefined=isUndefined;function isRegExp(re){return objectToString(re)==="[object RegExp]"}exports.isRegExp=isRegExp;function isObject(arg){return typeof arg==="object"&&arg!==null}exports.isObject=isObject;function isDate(d){return objectToString(d)==="[object Date]"}exports.isDate=isDate;function isError(e){return objectToString(e)==="[object Error]"||e instanceof Error}exports.isError=isError;function isFunction(arg){return typeof arg==="function"}exports.isFunction=isFunction;function isPrimitive(arg){return arg===null||typeof arg==="boolean"||typeof arg==="number"||typeof arg==="string"||typeof arg==="symbol"||typeof arg==="undefined"}exports.isPrimitive=isPrimitive;exports.isBuffer=Buffer.isBuffer;function objectToString(o){return Object.prototype.toString.call(o)}}).call(this,{isBuffer:require("../../is-buffer/index.js")})},{"../../is-buffer/index.js":48}],45:[function(require,module,exports){var objectCreate=Object.create||objectCreatePolyfill;var objectKeys=Object.keys||objectKeysPolyfill;var bind=Function.prototype.bind||functionBindPolyfill;function EventEmitter(){if(!this._events||!Object.prototype.hasOwnProperty.call(this,"_events")){this._events=objectCreate(null);this._eventsCount=0}this._maxListeners=this._maxListeners||undefined}module.exports=EventEmitter;EventEmitter.EventEmitter=EventEmitter;EventEmitter.prototype._events=undefined;EventEmitter.prototype._maxListeners=undefined;var defaultMaxListeners=10;var hasDefineProperty;try{var o={};if(Object.defineProperty)Object.defineProperty(o,"x",{value:0});hasDefineProperty=o.x===0}catch(err){hasDefineProperty=false}if(hasDefineProperty){Object.defineProperty(EventEmitter,"defaultMaxListeners",{enumerable:true,get:function(){return defaultMaxListeners},set:function(arg){if(typeof arg!=="number"||arg<0||arg!==arg)throw new TypeError('"defaultMaxListeners" must be a positive number');defaultMaxListeners=arg}})}else{EventEmitter.defaultMaxListeners=defaultMaxListeners}EventEmitter.prototype.setMaxListeners=function setMaxListeners(n){if(typeof n!=="number"||n<0||isNaN(n))throw new TypeError('"n" argument must be a positive number');this._maxListeners=n;return this};function $getMaxListeners(that){if(that._maxListeners===undefined)return EventEmitter.defaultMaxListeners;return that._maxListeners}EventEmitter.prototype.getMaxListeners=function getMaxListeners(){return $getMaxListeners(this)};function emitNone(handler,isFn,self){if(isFn)handler.call(self);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self)}}function emitOne(handler,isFn,self,arg1){if(isFn)handler.call(self,arg1);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1)}}function emitTwo(handler,isFn,self,arg1,arg2){if(isFn)handler.call(self,arg1,arg2);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2)}}function emitThree(handler,isFn,self,arg1,arg2,arg3){if(isFn)handler.call(self,arg1,arg2,arg3);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].call(self,arg1,arg2,arg3)}}function emitMany(handler,isFn,self,args){if(isFn)handler.apply(self,args);else{var len=handler.length;var listeners=arrayClone(handler,len);for(var i=0;i<len;++i)listeners[i].apply(self,args)}}EventEmitter.prototype.emit=function emit(type){var er,handler,len,args,i,events;var doError=type==="error";events=this._events;if(events)doError=doError&&events.error==null;else if(!doError)return false;if(doError){if(arguments.length>1)er=arguments[1];if(er instanceof Error){throw er}else{var err=new Error('Unhandled "error" event. ('+er+")");err.context=er;throw err}return false}handler=events[type];if(!handler)return false;var isFn=typeof handler==="function";len=arguments.length;switch(len){case 1:emitNone(handler,isFn,this);break;case 2:emitOne(handler,isFn,this,arguments[1]);break;case 3:emitTwo(handler,isFn,this,arguments[1],arguments[2]);break;case 4:emitThree(handler,isFn,this,arguments[1],arguments[2],arguments[3]);break;default:args=new Array(len-1);for(i=1;i<len;i++)args[i-1]=arguments[i];emitMany(handler,isFn,this,args)}return true};function _addListener(target,type,listener,prepend){var m;var events;var existing;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=target._events;if(!events){events=target._events=objectCreate(null);target._eventsCount=0}else{if(events.newListener){target.emit("newListener",type,listener.listener?listener.listener:listener);events=target._events}existing=events[type]}if(!existing){existing=events[type]=listener;++target._eventsCount}else{if(typeof existing==="function"){existing=events[type]=prepend?[listener,existing]:[existing,listener]}else{if(prepend){existing.unshift(listener)}else{existing.push(listener)}}if(!existing.warned){m=$getMaxListeners(target);if(m&&m>0&&existing.length>m){existing.warned=true;var w=new Error("Possible EventEmitter memory leak detected. "+existing.length+' "'+String(type)+'" listeners '+"added. Use emitter.setMaxListeners() to "+"increase limit.");w.name="MaxListenersExceededWarning";w.emitter=target;w.type=type;w.count=existing.length;if(typeof console==="object"&&console.warn){console.warn("%s: %s",w.name,w.message)}}}}return target}EventEmitter.prototype.addListener=function addListener(type,listener){return _addListener(this,type,listener,false)};EventEmitter.prototype.on=EventEmitter.prototype.addListener;EventEmitter.prototype.prependListener=function prependListener(type,listener){return _addListener(this,type,listener,true)};function onceWrapper(){if(!this.fired){this.target.removeListener(this.type,this.wrapFn);this.fired=true;switch(arguments.length){case 0:return this.listener.call(this.target);case 1:return this.listener.call(this.target,arguments[0]);case 2:return this.listener.call(this.target,arguments[0],arguments[1]);case 3:return this.listener.call(this.target,arguments[0],arguments[1],arguments[2]);default:var args=new Array(arguments.length);for(var i=0;i<args.length;++i)args[i]=arguments[i];this.listener.apply(this.target,args)}}}function _onceWrap(target,type,listener){var state={fired:false,wrapFn:undefined,target:target,type:type,listener:listener};var wrapped=bind.call(onceWrapper,state);wrapped.listener=listener;state.wrapFn=wrapped;return wrapped}EventEmitter.prototype.once=function once(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.on(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.prependOnceListener=function prependOnceListener(type,listener){if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');this.prependListener(type,_onceWrap(this,type,listener));return this};EventEmitter.prototype.removeListener=function removeListener(type,listener){var list,events,position,i,originalListener;if(typeof listener!=="function")throw new TypeError('"listener" argument must be a function');events=this._events;if(!events)return this;list=events[type];if(!list)return this;if(list===listener||list.listener===listener){if(--this._eventsCount===0)this._events=objectCreate(null);else{delete events[type];if(events.removeListener)this.emit("removeListener",type,list.listener||listener)}}else if(typeof list!=="function"){position=-1;for(i=list.length-1;i>=0;i--){if(list[i]===listener||list[i].listener===listener){originalListener=list[i].listener;position=i;break}}if(position<0)return this;if(position===0)list.shift();else spliceOne(list,position);if(list.length===1)events[type]=list[0];if(events.removeListener)this.emit("removeListener",type,originalListener||listener)}return this};EventEmitter.prototype.removeAllListeners=function removeAllListeners(type){var listeners,events,i;events=this._events;if(!events)return this;if(!events.removeListener){if(arguments.length===0){this._events=objectCreate(null);this._eventsCount=0}else if(events[type]){if(--this._eventsCount===0)this._events=objectCreate(null);else delete events[type]}return this}if(arguments.length===0){var keys=objectKeys(events);var key;for(i=0;i<keys.length;++i){key=keys[i];if(key==="removeListener")continue;this.removeAllListeners(key)}this.removeAllListeners("removeListener");this._events=objectCreate(null);this._eventsCount=0;return this}listeners=events[type];if(typeof listeners==="function"){this.removeListener(type,listeners)}else if(listeners){for(i=listeners.length-1;i>=0;i--){this.removeListener(type,listeners[i])}}return this};function _listeners(target,type,unwrap){var events=target._events;if(!events)return[];var evlistener=events[type];if(!evlistener)return[];if(typeof evlistener==="function")return unwrap?[evlistener.listener||evlistener]:[evlistener];return unwrap?unwrapListeners(evlistener):arrayClone(evlistener,evlistener.length)}EventEmitter.prototype.listeners=function listeners(type){return _listeners(this,type,true)};EventEmitter.prototype.rawListeners=function rawListeners(type){return _listeners(this,type,false)};EventEmitter.listenerCount=function(emitter,type){if(typeof emitter.listenerCount==="function"){return emitter.listenerCount(type)}else{return listenerCount.call(emitter,type)}};EventEmitter.prototype.listenerCount=listenerCount;function listenerCount(type){var events=this._events;if(events){var evlistener=events[type];if(typeof evlistener==="function"){return 1}else if(evlistener){return evlistener.length}}return 0}EventEmitter.prototype.eventNames=function eventNames(){return this._eventsCount>0?Reflect.ownKeys(this._events):[]};function spliceOne(list,index){for(var i=index,k=i+1,n=list.length;k<n;i+=1,k+=1)list[i]=list[k];list.pop()}function arrayClone(arr,n){var copy=new Array(n);for(var i=0;i<n;++i)copy[i]=arr[i];return copy}function unwrapListeners(arr){var ret=new Array(arr.length);for(var i=0;i<ret.length;++i){ret[i]=arr[i].listener||arr[i]}return ret}function objectCreatePolyfill(proto){var F=function(){};F.prototype=proto;return new F}function objectKeysPolyfill(obj){var keys=[];for(var k in obj)if(Object.prototype.hasOwnProperty.call(obj,k)){keys.push(k)}return k}function functionBindPolyfill(context){var fn=this;return function(){return fn.apply(context,arguments)}}},{}],46:[function(require,module,exports){exports.read=function(buffer,offset,isLE,mLen,nBytes){var e,m;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var nBits=-7;var i=isLE?nBytes-1:0;var d=isLE?-1:1;var 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.write=function(buffer,value,offset,isLE,mLen,nBytes){var e,m,c;var eLen=nBytes*8-mLen-1;var eMax=(1<<eLen)-1;var eBias=eMax>>1;var rt=mLen===23?Math.pow(2,-24)-Math.pow(2,-77):0;var i=isLE?0:nBytes-1;var d=isLE?1:-1;var 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}},{}],47:[function(require,module,exports){if(typeof Object.create==="function"){module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:false,writable:true,configurable:true}})}}}else{module.exports=function inherits(ctor,superCtor){if(superCtor){ctor.super_=superCtor;var TempCtor=function(){};TempCtor.prototype=superCtor.prototype;ctor.prototype=new TempCtor;ctor.prototype.constructor=ctor}}}},{}],48:[function(require,module,exports){module.exports=function(obj){return obj!=null&&(isBuffer(obj)||isSlowBuffer(obj)||!!obj._isBuffer)};function isBuffer(obj){return!!obj.constructor&&typeof obj.constructor.isBuffer==="function"&&obj.constructor.isBuffer(obj)}function isSlowBuffer(obj){return typeof obj.readFloatLE==="function"&&typeof obj.slice==="function"&&isBuffer(obj.slice(0,0))}},{}],49:[function(require,module,exports){var toString={}.toString;module.exports=Array.isArray||function(arr){return toString.call(arr)=="[object Array]"}},{}],50:[function(require,module,exports){(function(process){"use strict";if(typeof process==="undefined"||!process.version||process.version.indexOf("v0.")===0||process.version.indexOf("v1.")===0&&process.version.indexOf("v1.8.")!==0){module.exports={nextTick:nextTick}}else{module.exports=process}function nextTick(fn,arg1,arg2,arg3){if(typeof fn!=="function"){throw new TypeError('"callback" argument must be a function')}var len=arguments.length;var args,i;switch(len){case 0:case 1:return process.nextTick(fn);case 2:return process.nextTick(function afterTickOne(){fn.call(null,arg1)});case 3:return process.nextTick(function afterTickTwo(){fn.call(null,arg1,arg2)});case 4:return process.nextTick(function afterTickThree(){fn.call(null,arg1,arg2,arg3)});default:args=new Array(len-1);i=0;while(i<args.length){args[i++]=arguments[i]}return process.nextTick(function afterTick(){fn.apply(null,args)})}}}).call(this,require("_process"))},{_process:51}],51:[function(require,module,exports){var process=module.exports={};var cachedSetTimeout;var cachedClearTimeout;function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}(function(){try{if(typeof setTimeout==="function"){cachedSetTimeout=setTimeout}else{cachedSetTimeout=defaultSetTimout}}catch(e){cachedSetTimeout=defaultSetTimout}try{if(typeof clearTimeout==="function"){cachedClearTimeout=clearTimeout}else{cachedClearTimeout=defaultClearTimeout}}catch(e){cachedClearTimeout=defaultClearTimeout}})();function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTimeout(fun,0)}if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout){cachedSetTimeout=setTimeout;return setTimeout(fun,0)}try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){return clearTimeout(marker)}if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout){cachedClearTimeout=clearTimeout;return clearTimeout(marker)}try{return cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}var queue=[];var draining=false;var currentQueue;var queueIndex=-1;function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=false;if(currentQueue.length){queue=currentQueue.concat(queue)}else{queueIndex=-1}if(queue.length){drainQueue()}}function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUpNextTick);draining=true;var len=queue.length;while(len){currentQueue=queue;queue=[];while(++queueIndex<len){if(currentQueue){currentQueue[queueIndex].run()}}queueIndex=-1;len=queue.length}currentQueue=null;draining=false;runClearTimeout(timeout)}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1){for(var i=1;i<arguments.length;i++){args[i-1]=arguments[i]}}queue.push(new Item(fun,args));if(queue.length===1&&!draining){runTimeout(drainQueue)}};function Item(fun,array){this.fun=fun;this.array=array}Item.prototype.run=function(){this.fun.apply(null,this.array)};process.title="browser";process.browser=true;process.env={};process.argv=[];process.version="";process.versions={};function noop(){}process.on=noop;process.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=noop;process.emit=noop;process.prependListener=noop;process.prependOnceListener=noop;process.listeners=function(name){return[]};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")};process.umask=function(){return 0}},{}],52:[function(require,module,exports){module.exports=require("./lib/_stream_duplex.js")},{"./lib/_stream_duplex.js":53}],53:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj){keys.push(key)}return keys};module.exports=Duplex;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var Readable=require("./_stream_readable");var Writable=require("./_stream_writable");util.inherits(Duplex,Readable);{var keys=objectKeys(Writable.prototype);for(var v=0;v<keys.length;v++){var method=keys[v];if(!Duplex.prototype[method])Duplex.prototype[method]=Writable.prototype[method]}}function Duplex(options){if(!(this instanceof Duplex))return new Duplex(options);Readable.call(this,options);Writable.call(this,options);if(options&&options.readable===false)this.readable=false;if(options&&options.writable===false)this.writable=false;this.allowHalfOpen=true;if(options&&options.allowHalfOpen===false)this.allowHalfOpen=false;this.once("end",onend)}Object.defineProperty(Duplex.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function onend(){if(this.allowHalfOpen||this._writableState.ended)return;pna.nextTick(onEndNT,this)}function onEndNT(self){self.end()}Object.defineProperty(Duplex.prototype,"destroyed",{get:function(){if(this._readableState===undefined||this._writableState===undefined){return false}return this._readableState.destroyed&&this._writableState.destroyed},set:function(value){if(this._readableState===undefined||this._writableState===undefined){return}this._readableState.destroyed=value;this._writableState.destroyed=value}});Duplex.prototype._destroy=function(err,cb){this.push(null);this.end();pna.nextTick(cb,err)}},{"./_stream_readable":55,"./_stream_writable":57,"core-util-is":44,inherits:47,"process-nextick-args":50}],54:[function(require,module,exports){"use strict";module.exports=PassThrough;var Transform=require("./_stream_transform");var util=Object.create(require("core-util-is"));util.inherits=require("inherits");util.inherits(PassThrough,Transform);function PassThrough(options){if(!(this instanceof PassThrough))return new PassThrough(options);Transform.call(this,options)}PassThrough.prototype._transform=function(chunk,encoding,cb){cb(null,chunk)}},{"./_stream_transform":56,"core-util-is":44,inherits:47}],55:[function(require,module,exports){(function(process,global){"use strict";var pna=require("process-nextick-args");module.exports=Readable;var isArray=require("isarray");var Duplex;Readable.ReadableState=ReadableState;var EE=require("events").EventEmitter;var EElistenerCount=function(emitter,type){return emitter.listeners(type).length};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var debugUtil=require("util");var debug=void 0;if(debugUtil&&debugUtil.debuglog){debug=debugUtil.debuglog("stream")}else{debug=function(){}}var BufferList=require("./internal/streams/BufferList");var destroyImpl=require("./internal/streams/destroy");var StringDecoder;util.inherits(Readable,Stream);var kProxyEvents=["error","close","destroy","pause","resume"];function prependListener(emitter,event,fn){if(typeof emitter.prependListener==="function")return emitter.prependListener(event,fn);if(!emitter._events||!emitter._events[event])emitter.on(event,fn);else if(isArray(emitter._events[event]))emitter._events[event].unshift(fn);else emitter._events[event]=[fn,emitter._events[event]]}function ReadableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.readableObjectMode;var hwm=options.highWaterMark;var readableHwm=options.readableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(readableHwm||readableHwm===0))this.highWaterMark=readableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.buffer=new BufferList;this.length=0;this.pipes=null;this.pipesCount=0;this.flowing=null;this.ended=false;this.endEmitted=false;this.reading=false;this.sync=true;this.needReadable=false;this.emittedReadable=false;this.readableListening=false;this.resumeScheduled=false;this.destroyed=false;this.defaultEncoding=options.defaultEncoding||"utf8";this.awaitDrain=0;this.readingMore=false;this.decoder=null;this.encoding=null;if(options.encoding){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this.decoder=new StringDecoder(options.encoding);this.encoding=options.encoding}}function Readable(options){Duplex=Duplex||require("./_stream_duplex");if(!(this instanceof Readable))return new Readable(options);this._readableState=new ReadableState(options,this);this.readable=true;if(options){if(typeof options.read==="function")this._read=options.read;if(typeof options.destroy==="function")this._destroy=options.destroy}Stream.call(this)}Object.defineProperty(Readable.prototype,"destroyed",{get:function(){if(this._readableState===undefined){return false}return this._readableState.destroyed},set:function(value){if(!this._readableState){return}this._readableState.destroyed=value}});Readable.prototype.destroy=destroyImpl.destroy;Readable.prototype._undestroy=destroyImpl.undestroy;Readable.prototype._destroy=function(err,cb){this.push(null);cb(err)};Readable.prototype.push=function(chunk,encoding){var state=this._readableState;var skipChunkCheck;if(!state.objectMode){if(typeof chunk==="string"){encoding=encoding||state.defaultEncoding;if(encoding!==state.encoding){chunk=Buffer.from(chunk,encoding);encoding=""}skipChunkCheck=true}}else{skipChunkCheck=true}return readableAddChunk(this,chunk,encoding,false,skipChunkCheck)};Readable.prototype.unshift=function(chunk){return readableAddChunk(this,chunk,null,true,false)};function readableAddChunk(stream,chunk,encoding,addToFront,skipChunkCheck){var state=stream._readableState;if(chunk===null){state.reading=false;onEofChunk(stream,state)}else{var er;if(!skipChunkCheck)er=chunkInvalid(state,chunk);if(er){stream.emit("error",er)}else if(state.objectMode||chunk&&chunk.length>0){if(typeof chunk!=="string"&&!state.objectMode&&Object.getPrototypeOf(chunk)!==Buffer.prototype){chunk=_uint8ArrayToBuffer(chunk)}if(addToFront){if(state.endEmitted)stream.emit("error",new Error("stream.unshift() after end event"));else addChunk(stream,state,chunk,true)}else if(state.ended){stream.emit("error",new Error("stream.push() after EOF"))}else{state.reading=false;if(state.decoder&&!encoding){chunk=state.decoder.write(chunk);if(state.objectMode||chunk.length!==0)addChunk(stream,state,chunk,false);else maybeReadMore(stream,state)}else{addChunk(stream,state,chunk,false)}}}else if(!addToFront){state.reading=false}}return needMoreData(state)}function addChunk(stream,state,chunk,addToFront){if(state.flowing&&state.length===0&&!state.sync){stream.emit("data",chunk);stream.read(0)}else{state.length+=state.objectMode?1:chunk.length;if(addToFront)state.buffer.unshift(chunk);else state.buffer.push(chunk);if(state.needReadable)emitReadable(stream)}maybeReadMore(stream,state)}function chunkInvalid(state,chunk){var er;if(!_isUint8Array(chunk)&&typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}return er}function needMoreData(state){return!state.ended&&(state.needReadable||state.length<state.highWaterMark||state.length===0)}Readable.prototype.isPaused=function(){return this._readableState.flowing===false};Readable.prototype.setEncoding=function(enc){if(!StringDecoder)StringDecoder=require("string_decoder/").StringDecoder;this._readableState.decoder=new StringDecoder(enc);this._readableState.encoding=enc;return this};var MAX_HWM=8388608;function computeNewHighWaterMark(n){if(n>=MAX_HWM){n=MAX_HWM}else{n--;n|=n>>>1;n|=n>>>2;n|=n>>>4;n|=n>>>8;n|=n>>>16;n++}return n}function howMuchToRead(n,state){if(n<=0||state.length===0&&state.ended)return 0;if(state.objectMode)return 1;if(n!==n){if(state.flowing&&state.length)return state.buffer.head.data.length;else return state.length}if(n>state.highWaterMark)state.highWaterMark=computeNewHighWaterMark(n);if(n<=state.length)return n;if(!state.ended){state.needReadable=true;return 0}return state.length}Readable.prototype.read=function(n){debug("read",n);n=parseInt(n,10);var state=this._readableState;var nOrig=n;if(n!==0)state.emittedReadable=false;if(n===0&&state.needReadable&&(state.length>=state.highWaterMark||state.ended)){debug("read: emitReadable",state.length,state.ended);if(state.length===0&&state.ended)endReadable(this);else emitReadable(this);return null}n=howMuchToRead(n,state);if(n===0&&state.ended){if(state.length===0)endReadable(this);return null}var doRead=state.needReadable;debug("need readable",doRead);if(state.length===0||state.length-n<state.highWaterMark){doRead=true;debug("length less than watermark",doRead)}if(state.ended||state.reading){doRead=false;debug("reading or ended",doRead)}else if(doRead){debug("do read");state.reading=true;state.sync=true;if(state.length===0)state.needReadable=true;this._read(state.highWaterMark);state.sync=false;if(!state.reading)n=howMuchToRead(nOrig,state)}var ret;if(n>0)ret=fromList(n,state);else ret=null;if(ret===null){state.needReadable=true;n=0}else{state.length-=n}if(state.length===0){if(!state.ended)state.needReadable=true;if(nOrig!==n&&state.ended)endReadable(this)}if(ret!==null)this.emit("data",ret);return ret};function onEofChunk(stream,state){if(state.ended)return;if(state.decoder){var chunk=state.decoder.end();if(chunk&&chunk.length){state.buffer.push(chunk);state.length+=state.objectMode?1:chunk.length}}state.ended=true;emitReadable(stream)}function emitReadable(stream){var state=stream._readableState;state.needReadable=false;if(!state.emittedReadable){debug("emitReadable",state.flowing);state.emittedReadable=true;if(state.sync)pna.nextTick(emitReadable_,stream);else emitReadable_(stream)}}function emitReadable_(stream){debug("emit readable");stream.emit("readable");flow(stream)}function maybeReadMore(stream,state){if(!state.readingMore){state.readingMore=true;pna.nextTick(maybeReadMore_,stream,state)}}function maybeReadMore_(stream,state){var len=state.length;while(!state.reading&&!state.flowing&&!state.ended&&state.length<state.highWaterMark){debug("maybeReadMore read 0");stream.read(0);if(len===state.length)break;else len=state.length}state.readingMore=false}Readable.prototype._read=function(n){this.emit("error",new Error("_read() is not implemented"))};Readable.prototype.pipe=function(dest,pipeOpts){var src=this;var state=this._readableState;switch(state.pipesCount){case 0:state.pipes=dest;break;case 1:state.pipes=[state.pipes,dest];break;default:state.pipes.push(dest);break}state.pipesCount+=1;debug("pipe count=%d opts=%j",state.pipesCount,pipeOpts);var doEnd=(!pipeOpts||pipeOpts.end!==false)&&dest!==process.stdout&&dest!==process.stderr;var endFn=doEnd?onend:unpipe;if(state.endEmitted)pna.nextTick(endFn);else src.once("end",endFn);dest.on("unpipe",onunpipe);function onunpipe(readable,unpipeInfo){debug("onunpipe");if(readable===src){if(unpipeInfo&&unpipeInfo.hasUnpiped===false){unpipeInfo.hasUnpiped=true;cleanup()}}}function onend(){debug("onend");dest.end()}var ondrain=pipeOnDrain(src);dest.on("drain",ondrain);var cleanedUp=false;function cleanup(){debug("cleanup");dest.removeListener("close",onclose);dest.removeListener("finish",onfinish);dest.removeListener("drain",ondrain);dest.removeListener("error",onerror);dest.removeListener("unpipe",onunpipe);src.removeListener("end",onend);src.removeListener("end",unpipe);src.removeListener("data",ondata);cleanedUp=true;if(state.awaitDrain&&(!dest._writableState||dest._writableState.needDrain))ondrain()}var increasedAwaitDrain=false;src.on("data",ondata);function ondata(chunk){debug("ondata");increasedAwaitDrain=false;var ret=dest.write(chunk);if(false===ret&&!increasedAwaitDrain){if((state.pipesCount===1&&state.pipes===dest||state.pipesCount>1&&indexOf(state.pipes,dest)!==-1)&&!cleanedUp){debug("false write response, pause",src._readableState.awaitDrain);src._readableState.awaitDrain++;increasedAwaitDrain=true}src.pause()}}function onerror(er){debug("onerror",er);unpipe();dest.removeListener("error",onerror);if(EElistenerCount(dest,"error")===0)dest.emit("error",er)}prependListener(dest,"error",onerror);function onclose(){dest.removeListener("finish",onfinish);unpipe()}dest.once("close",onclose);function onfinish(){debug("onfinish");dest.removeListener("close",onclose);unpipe()}dest.once("finish",onfinish);function unpipe(){debug("unpipe");src.unpipe(dest)}dest.emit("pipe",src);if(!state.flowing){debug("pipe resume");src.resume()}return dest};function pipeOnDrain(src){return function(){var state=src._readableState;debug("pipeOnDrain",state.awaitDrain);if(state.awaitDrain)state.awaitDrain--;if(state.awaitDrain===0&&EElistenerCount(src,"data")){state.flowing=true;flow(src)}}}Readable.prototype.unpipe=function(dest){var state=this._readableState;var unpipeInfo={hasUnpiped:false};if(state.pipesCount===0)return this;if(state.pipesCount===1){if(dest&&dest!==state.pipes)return this;if(!dest)dest=state.pipes;state.pipes=null;state.pipesCount=0;state.flowing=false;if(dest)dest.emit("unpipe",this,unpipeInfo);return this}if(!dest){var dests=state.pipes;var len=state.pipesCount;state.pipes=null;state.pipesCount=0;state.flowing=false;for(var i=0;i<len;i++){dests[i].emit("unpipe",this,unpipeInfo)}return this}var index=indexOf(state.pipes,dest);if(index===-1)return this;state.pipes.splice(index,1);state.pipesCount-=1;if(state.pipesCount===1)state.pipes=state.pipes[0];dest.emit("unpipe",this,unpipeInfo);return this};Readable.prototype.on=function(ev,fn){var res=Stream.prototype.on.call(this,ev,fn);if(ev==="data"){if(this._readableState.flowing!==false)this.resume()}else if(ev==="readable"){var state=this._readableState;if(!state.endEmitted&&!state.readableListening){state.readableListening=state.needReadable=true;state.emittedReadable=false;if(!state.reading){pna.nextTick(nReadingNextTick,this)}else if(state.length){emitReadable(this)}}}return res};Readable.prototype.addListener=Readable.prototype.on;function nReadingNextTick(self){debug("readable nexttick read 0");self.read(0)}Readable.prototype.resume=function(){var state=this._readableState;if(!state.flowing){debug("resume");state.flowing=true;resume(this,state)}return this};function resume(stream,state){if(!state.resumeScheduled){state.resumeScheduled=true;pna.nextTick(resume_,stream,state)}}function resume_(stream,state){if(!state.reading){debug("resume read 0");stream.read(0)}state.resumeScheduled=false;state.awaitDrain=0;stream.emit("resume");flow(stream);if(state.flowing&&!state.reading)stream.read(0)}Readable.prototype.pause=function(){debug("call pause flowing=%j",this._readableState.flowing);if(false!==this._readableState.flowing){debug("pause");this._readableState.flowing=false;this.emit("pause")}return this};function flow(stream){var state=stream._readableState;debug("flow",state.flowing);while(state.flowing&&stream.read()!==null){}}Readable.prototype.wrap=function(stream){var _this=this;var state=this._readableState;var paused=false;stream.on("end",function(){debug("wrapped end");if(state.decoder&&!state.ended){var chunk=state.decoder.end();if(chunk&&chunk.length)_this.push(chunk)}_this.push(null)});stream.on("data",function(chunk){debug("wrapped data");if(state.decoder)chunk=state.decoder.write(chunk);if(state.objectMode&&(chunk===null||chunk===undefined))return;else if(!state.objectMode&&(!chunk||!chunk.length))return;var ret=_this.push(chunk);if(!ret){paused=true;stream.pause()}});for(var i in stream){if(this[i]===undefined&&typeof stream[i]==="function"){this[i]=function(method){return function(){return stream[method].apply(stream,arguments)}}(i)}}for(var n=0;n<kProxyEvents.length;n++){stream.on(kProxyEvents[n],this.emit.bind(this,kProxyEvents[n]))}this._read=function(n){debug("wrapped _read",n);if(paused){paused=false;stream.resume()}};return this};Object.defineProperty(Readable.prototype,"readableHighWaterMark",{enumerable:false,get:function(){return this._readableState.highWaterMark}});Readable._fromList=fromList;function fromList(n,state){if(state.length===0)return null;var ret;if(state.objectMode)ret=state.buffer.shift();else if(!n||n>=state.length){if(state.decoder)ret=state.buffer.join("");else if(state.buffer.length===1)ret=state.buffer.head.data;else ret=state.buffer.concat(state.length);state.buffer.clear()}else{ret=fromListPartial(n,state.buffer,state.decoder)}return ret}function fromListPartial(n,list,hasStrings){var ret;if(n<list.head.data.length){ret=list.head.data.slice(0,n);list.head.data=list.head.data.slice(n)}else if(n===list.head.data.length){ret=list.shift()}else{ret=hasStrings?copyFromBufferString(n,list):copyFromBuffer(n,list)}return ret}function copyFromBufferString(n,list){var p=list.head;var c=1;var ret=p.data;n-=ret.length;while(p=p.next){var str=p.data;var nb=n>str.length?str.length:n;if(nb===str.length)ret+=str;else ret+=str.slice(0,n);n-=nb;if(n===0){if(nb===str.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=str.slice(nb)}break}++c}list.length-=c;return ret}function copyFromBuffer(n,list){var ret=Buffer.allocUnsafe(n);var p=list.head;var c=1;p.data.copy(ret);n-=p.data.length;while(p=p.next){var buf=p.data;var nb=n>buf.length?buf.length:n;buf.copy(ret,ret.length-n,0,nb);n-=nb;if(n===0){if(nb===buf.length){++c;if(p.next)list.head=p.next;else list.head=list.tail=null}else{list.head=p;p.data=buf.slice(nb)}break}++c}list.length-=c;return ret}function endReadable(stream){var state=stream._readableState;if(state.length>0)throw new Error('"endReadable()" called on non-empty stream');if(!state.endEmitted){state.ended=true;pna.nextTick(endReadableNT,state,stream)}}function endReadableNT(state,stream){if(!state.endEmitted&&state.length===0){state.endEmitted=true;stream.readable=false;stream.emit("end")}}function indexOf(xs,x){for(var i=0,l=xs.length;i<l;i++){if(xs[i]===x)return i}return-1}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{"./_stream_duplex":53,"./internal/streams/BufferList":58,"./internal/streams/destroy":59,"./internal/streams/stream":60,_process:51,"core-util-is":44,events:45,inherits:47,isarray:49,"process-nextick-args":50,"safe-buffer":61,"string_decoder/":62,util:42}],56:[function(require,module,exports){"use strict";module.exports=Transform;var Duplex=require("./_stream_duplex");var util=Object.create(require("core-util-is"));util.inherits=require("inherits");util.inherits(Transform,Duplex);function afterTransform(er,data){var ts=this._transformState;ts.transforming=false;var cb=ts.writecb;if(!cb){return this.emit("error",new Error("write callback called multiple times"))}ts.writechunk=null;ts.writecb=null;if(data!=null)this.push(data);cb(er);var rs=this._readableState;rs.reading=false;if(rs.needReadable||rs.length<rs.highWaterMark){this._read(rs.highWaterMark)}}function Transform(options){if(!(this instanceof Transform))return new Transform(options);Duplex.call(this,options);this._transformState={afterTransform:afterTransform.bind(this),needTransform:false,transforming:false,writecb:null,writechunk:null,writeencoding:null};this._readableState.needReadable=true;this._readableState.sync=false;if(options){if(typeof options.transform==="function")this._transform=options.transform;if(typeof options.flush==="function")this._flush=options.flush}this.on("prefinish",prefinish)}function prefinish(){var _this=this;if(typeof this._flush==="function"){this._flush(function(er,data){done(_this,er,data)})}else{done(this,null,null)}}Transform.prototype.push=function(chunk,encoding){this._transformState.needTransform=false;return Duplex.prototype.push.call(this,chunk,encoding)};Transform.prototype._transform=function(chunk,encoding,cb){throw new Error("_transform() is not implemented")};Transform.prototype._write=function(chunk,encoding,cb){var ts=this._transformState;ts.writecb=cb;ts.writechunk=chunk;ts.writeencoding=encoding;if(!ts.transforming){var rs=this._readableState;if(ts.needTransform||rs.needReadable||rs.length<rs.highWaterMark)this._read(rs.highWaterMark)}};Transform.prototype._read=function(n){var ts=this._transformState;if(ts.writechunk!==null&&ts.writecb&&!ts.transforming){ts.transforming=true;this._transform(ts.writechunk,ts.writeencoding,ts.afterTransform)}else{ts.needTransform=true}};Transform.prototype._destroy=function(err,cb){var _this2=this;Duplex.prototype._destroy.call(this,err,function(err2){cb(err2);_this2.emit("close")})};function done(stream,er,data){if(er)return stream.emit("error",er);if(data!=null)stream.push(data);if(stream._writableState.length)throw new Error("Calling transform done when ws.length != 0");if(stream._transformState.transforming)throw new Error("Calling transform done when still transforming");return stream.push(null)}},{"./_stream_duplex":53,"core-util-is":44,inherits:47}],57:[function(require,module,exports){(function(process,global,setImmediate){"use strict";var pna=require("process-nextick-args");module.exports=Writable;function WriteReq(chunk,encoding,cb){this.chunk=chunk;this.encoding=encoding;this.callback=cb;this.next=null}function CorkedRequest(state){var _this=this;this.next=null;this.entry=null;this.finish=function(){onCorkedFinish(_this,state)}}var asyncWrite=!process.browser&&["v0.10","v0.9."].indexOf(process.version.slice(0,5))>-1?setImmediate:pna.nextTick;var Duplex;Writable.WritableState=WritableState;var util=Object.create(require("core-util-is"));util.inherits=require("inherits");var internalUtil={deprecate:require("util-deprecate")};var Stream=require("./internal/streams/stream");var Buffer=require("safe-buffer").Buffer;var OurUint8Array=global.Uint8Array||function(){};function _uint8ArrayToBuffer(chunk){return Buffer.from(chunk)}function _isUint8Array(obj){return Buffer.isBuffer(obj)||obj instanceof OurUint8Array}var destroyImpl=require("./internal/streams/destroy");util.inherits(Writable,Stream);function nop(){}function WritableState(options,stream){Duplex=Duplex||require("./_stream_duplex");options=options||{};var isDuplex=stream instanceof Duplex;this.objectMode=!!options.objectMode;if(isDuplex)this.objectMode=this.objectMode||!!options.writableObjectMode;var hwm=options.highWaterMark;var writableHwm=options.writableHighWaterMark;var defaultHwm=this.objectMode?16:16*1024;if(hwm||hwm===0)this.highWaterMark=hwm;else if(isDuplex&&(writableHwm||writableHwm===0))this.highWaterMark=writableHwm;else this.highWaterMark=defaultHwm;this.highWaterMark=Math.floor(this.highWaterMark);this.finalCalled=false;this.needDrain=false;this.ending=false;this.ended=false;this.finished=false;this.destroyed=false;var noDecode=options.decodeStrings===false;this.decodeStrings=!noDecode;this.defaultEncoding=options.defaultEncoding||"utf8";this.length=0;this.writing=false;this.corked=0;this.sync=true;this.bufferProcessing=false;this.onwrite=function(er){onwrite(stream,er)};this.writecb=null;this.writelen=0;this.bufferedRequest=null;this.lastBufferedRequest=null;this.pendingcb=0;this.prefinished=false;this.errorEmitted=false;this.bufferedRequestCount=0;this.corkedRequestsFree=new CorkedRequest(this)}WritableState.prototype.getBuffer=function getBuffer(){var current=this.bufferedRequest;var out=[];while(current){out.push(current);current=current.next}return out};(function(){try{Object.defineProperty(WritableState.prototype,"buffer",{get:internalUtil.deprecate(function(){return this.getBuffer()},"_writableState.buffer is deprecated. Use _writableState.getBuffer "+"instead.","DEP0003")})}catch(_){}})();var realHasInstance;if(typeof Symbol==="function"&&Symbol.hasInstance&&typeof Function.prototype[Symbol.hasInstance]==="function"){realHasInstance=Function.prototype[Symbol.hasInstance];Object.defineProperty(Writable,Symbol.hasInstance,{value:function(object){if(realHasInstance.call(this,object))return true;if(this!==Writable)return false;return object&&object._writableState instanceof WritableState}})}else{realHasInstance=function(object){return object instanceof this}}function Writable(options){Duplex=Duplex||require("./_stream_duplex");if(!realHasInstance.call(Writable,this)&&!(this instanceof Duplex)){return new Writable(options)}this._writableState=new WritableState(options,this);this.writable=true;if(options){if(typeof options.write==="function")this._write=options.write;if(typeof options.writev==="function")this._writev=options.writev;if(typeof options.destroy==="function")this._destroy=options.destroy;if(typeof options.final==="function")this._final=options.final}Stream.call(this)}Writable.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))};function writeAfterEnd(stream,cb){var er=new Error("write after end");stream.emit("error",er);pna.nextTick(cb,er)}function validChunk(stream,state,chunk,cb){var valid=true;var er=false;if(chunk===null){er=new TypeError("May not write null values to stream")}else if(typeof chunk!=="string"&&chunk!==undefined&&!state.objectMode){er=new TypeError("Invalid non-string/buffer chunk")}if(er){stream.emit("error",er);pna.nextTick(cb,er);valid=false}return valid}Writable.prototype.write=function(chunk,encoding,cb){var state=this._writableState;var ret=false;var isBuf=!state.objectMode&&_isUint8Array(chunk);if(isBuf&&!Buffer.isBuffer(chunk)){chunk=_uint8ArrayToBuffer(chunk)}if(typeof encoding==="function"){cb=encoding;encoding=null}if(isBuf)encoding="buffer";else if(!encoding)encoding=state.defaultEncoding;if(typeof cb!=="function")cb=nop;if(state.ended)writeAfterEnd(this,cb);else if(isBuf||validChunk(this,state,chunk,cb)){state.pendingcb++;ret=writeOrBuffer(this,state,isBuf,chunk,encoding,cb)}return ret};Writable.prototype.cork=function(){var state=this._writableState;state.corked++};Writable.prototype.uncork=function(){var state=this._writableState;if(state.corked){state.corked--;if(!state.writing&&!state.corked&&!state.finished&&!state.bufferProcessing&&state.bufferedRequest)clearBuffer(this,state)}};Writable.prototype.setDefaultEncoding=function setDefaultEncoding(encoding){if(typeof encoding==="string")encoding=encoding.toLowerCase();if(!(["hex","utf8","utf-8","ascii","binary","base64","ucs2","ucs-2","utf16le","utf-16le","raw"].indexOf((encoding+"").toLowerCase())>-1))throw new TypeError("Unknown encoding: "+encoding);this._writableState.defaultEncoding=encoding;return this};function decodeChunk(state,chunk,encoding){if(!state.objectMode&&state.decodeStrings!==false&&typeof chunk==="string"){chunk=Buffer.from(chunk,encoding)}return chunk}Object.defineProperty(Writable.prototype,"writableHighWaterMark",{enumerable:false,get:function(){return this._writableState.highWaterMark}});function writeOrBuffer(stream,state,isBuf,chunk,encoding,cb){if(!isBuf){var newChunk=decodeChunk(state,chunk,encoding);if(chunk!==newChunk){isBuf=true;encoding="buffer";chunk=newChunk}}var len=state.objectMode?1:chunk.length;state.length+=len;var ret=state.length<state.highWaterMark;if(!ret)state.needDrain=true;if(state.writing||state.corked){var last=state.lastBufferedRequest;state.lastBufferedRequest={chunk:chunk,encoding:encoding,isBuf:isBuf,callback:cb,next:null};if(last){last.next=state.lastBufferedRequest}else{state.bufferedRequest=state.lastBufferedRequest}state.bufferedRequestCount+=1}else{doWrite(stream,state,false,len,chunk,encoding,cb)}return ret}function doWrite(stream,state,writev,len,chunk,encoding,cb){state.writelen=len;state.writecb=cb;state.writing=true;state.sync=true;if(writev)stream._writev(chunk,state.onwrite);else stream._write(chunk,encoding,state.onwrite);state.sync=false}function onwriteError(stream,state,sync,er,cb){--state.pendingcb;if(sync){pna.nextTick(cb,er);pna.nextTick(finishMaybe,stream,state);stream._writableState.errorEmitted=true;stream.emit("error",er)}else{cb(er);stream._writableState.errorEmitted=true;stream.emit("error",er);finishMaybe(stream,state)}}function onwriteStateUpdate(state){state.writing=false;state.writecb=null;state.length-=state.writelen;state.writelen=0}function onwrite(stream,er){var state=stream._writableState;var sync=state.sync;var cb=state.writecb;onwriteStateUpdate(state);if(er)onwriteError(stream,state,sync,er,cb);else{var finished=needFinish(state);if(!finished&&!state.corked&&!state.bufferProcessing&&state.bufferedRequest){clearBuffer(stream,state)}if(sync){asyncWrite(afterWrite,stream,state,finished,cb)}else{afterWrite(stream,state,finished,cb)}}}function afterWrite(stream,state,finished,cb){if(!finished)onwriteDrain(stream,state);state.pendingcb--;cb();finishMaybe(stream,state)}function onwriteDrain(stream,state){if(state.length===0&&state.needDrain){state.needDrain=false;stream.emit("drain")}}function clearBuffer(stream,state){state.bufferProcessing=true;var entry=state.bufferedRequest;if(stream._writev&&entry&&entry.next){var l=state.bufferedRequestCount;var buffer=new Array(l);var holder=state.corkedRequestsFree;holder.entry=entry;var count=0;var allBuffers=true;while(entry){buffer[count]=entry;if(!entry.isBuf)allBuffers=false;entry=entry.next;count+=1}buffer.allBuffers=allBuffers;doWrite(stream,state,true,state.length,buffer,"",holder.finish);state.pendingcb++;state.lastBufferedRequest=null;if(holder.next){state.corkedRequestsFree=holder.next;holder.next=null}else{state.corkedRequestsFree=new CorkedRequest(state)}state.bufferedRequestCount=0}else{while(entry){var chunk=entry.chunk;var encoding=entry.encoding;var cb=entry.callback;var len=state.objectMode?1:chunk.length;doWrite(stream,state,false,len,chunk,encoding,cb);entry=entry.next;state.bufferedRequestCount--;if(state.writing){break}}if(entry===null)state.lastBufferedRequest=null}state.bufferedRequest=entry;state.bufferProcessing=false}Writable.prototype._write=function(chunk,encoding,cb){cb(new Error("_write() is not implemented"))};Writable.prototype._writev=null;Writable.prototype.end=function(chunk,encoding,cb){var state=this._writableState;if(typeof chunk==="function"){cb=chunk;chunk=null;encoding=null}else if(typeof encoding==="function"){cb=encoding;encoding=null}if(chunk!==null&&chunk!==undefined)this.write(chunk,encoding);if(state.corked){state.corked=1;this.uncork()}if(!state.ending&&!state.finished)endWritable(this,state,cb)};function needFinish(state){return state.ending&&state.length===0&&state.bufferedRequest===null&&!state.finished&&!state.writing}function callFinal(stream,state){stream._final(function(err){state.pendingcb--;if(err){stream.emit("error",err)}state.prefinished=true;stream.emit("prefinish");finishMaybe(stream,state)})}function prefinish(stream,state){if(!state.prefinished&&!state.finalCalled){if(typeof stream._final==="function"){state.pendingcb++;state.finalCalled=true;pna.nextTick(callFinal,stream,state)}else{state.prefinished=true;stream.emit("prefinish")}}}function finishMaybe(stream,state){var need=needFinish(state);if(need){prefinish(stream,state);if(state.pendingcb===0){state.finished=true;stream.emit("finish")}}return need}function endWritable(stream,state,cb){state.ending=true;finishMaybe(stream,state);if(cb){if(state.finished)pna.nextTick(cb);else stream.once("finish",cb)}state.ended=true;stream.writable=false}function onCorkedFinish(corkReq,state,err){var entry=corkReq.entry;corkReq.entry=null;while(entry){var cb=entry.callback;state.pendingcb--;cb(err);entry=entry.next}if(state.corkedRequestsFree){state.corkedRequestsFree.next=corkReq}else{state.corkedRequestsFree=corkReq}}Object.defineProperty(Writable.prototype,"destroyed",{get:function(){if(this._writableState===undefined){return false}return this._writableState.destroyed},set:function(value){if(!this._writableState){return}this._writableState.destroyed=value}});Writable.prototype.destroy=destroyImpl.destroy;Writable.prototype._undestroy=destroyImpl.undestroy;Writable.prototype._destroy=function(err,cb){this.end();cb(err)}}).call(this,require("_process"),typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{},require("timers").setImmediate)},{"./_stream_duplex":53,"./internal/streams/destroy":59,"./internal/streams/stream":60,_process:51,"core-util-is":44,inherits:47,"process-nextick-args":50,"safe-buffer":61,timers:70,"util-deprecate":71}],58:[function(require,module,exports){"use strict";function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError("Cannot call a class as a function")}}var Buffer=require("safe-buffer").Buffer;var util=require("util");function copyBuffer(src,target,offset){src.copy(target,offset)}module.exports=function(){function BufferList(){_classCallCheck(this,BufferList);this.head=null;this.tail=null;this.length=0}BufferList.prototype.push=function push(v){var entry={data:v,next:null};if(this.length>0)this.tail.next=entry;else this.head=entry;this.tail=entry;++this.length};BufferList.prototype.unshift=function unshift(v){var entry={data:v,next:this.head};if(this.length===0)this.tail=entry;this.head=entry;++this.length};BufferList.prototype.shift=function shift(){if(this.length===0)return;var ret=this.head.data;if(this.length===1)this.head=this.tail=null;else this.head=this.head.next;--this.length;return ret};BufferList.prototype.clear=function clear(){this.head=this.tail=null;this.length=0};BufferList.prototype.join=function join(s){if(this.length===0)return"";var p=this.head;var ret=""+p.data;while(p=p.next){ret+=s+p.data}return ret};BufferList.prototype.concat=function concat(n){if(this.length===0)return Buffer.alloc(0);if(this.length===1)return this.head.data;var ret=Buffer.allocUnsafe(n>>>0);var p=this.head;var i=0;while(p){copyBuffer(p.data,ret,i);i+=p.data.length;p=p.next}return ret};return BufferList}();if(util&&util.inspect&&util.inspect.custom){module.exports.prototype[util.inspect.custom]=function(){var obj=util.inspect({length:this.length});return this.constructor.name+" "+obj}}},{"safe-buffer":61,util:42}],59:[function(require,module,exports){"use strict";var pna=require("process-nextick-args");function destroy(err,cb){var _this=this;var readableDestroyed=this._readableState&&this._readableState.destroyed;var writableDestroyed=this._writableState&&this._writableState.destroyed;if(readableDestroyed||writableDestroyed){if(cb){cb(err)}else if(err&&(!this._writableState||!this._writableState.errorEmitted)){pna.nextTick(emitErrorNT,this,err)}return this}if(this._readableState){this._readableState.destroyed=true}if(this._writableState){this._writableState.destroyed=true}this._destroy(err||null,function(err){if(!cb&&err){pna.nextTick(emitErrorNT,_this,err);if(_this._writableState){_this._writableState.errorEmitted=true}}else if(cb){cb(err)}});return this}function undestroy(){if(this._readableState){this._readableState.destroyed=false;this._readableState.reading=false;this._readableState.ended=false;this._readableState.endEmitted=false}if(this._writableState){this._writableState.destroyed=false;this._writableState.ended=false;this._writableState.ending=false;this._writableState.finished=false;this._writableState.errorEmitted=false}}function emitErrorNT(self,err){self.emit("error",err)}module.exports={destroy:destroy,undestroy:undestroy}},{"process-nextick-args":50}],60:[function(require,module,exports){module.exports=require("events").EventEmitter},{events:45}],61:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:43}],62:[function(require,module,exports){"use strict";var Buffer=require("safe-buffer").Buffer;var isEncoding=Buffer.isEncoding||function(encoding){encoding=""+encoding;switch(encoding&&encoding.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return true;default:return false}};function _normalizeEncoding(enc){if(!enc)return"utf8";var retried;while(true){switch(enc){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return enc;default:if(retried)return;enc=(""+enc).toLowerCase();retried=true}}}function normalizeEncoding(enc){var nenc=_normalizeEncoding(enc);if(typeof nenc!=="string"&&(Buffer.isEncoding===isEncoding||!isEncoding(enc)))throw new Error("Unknown encoding: "+enc);return nenc||enc}exports.StringDecoder=StringDecoder;function StringDecoder(encoding){this.encoding=normalizeEncoding(encoding);var nb;switch(this.encoding){case"utf16le":this.text=utf16Text;this.end=utf16End;nb=4;break;case"utf8":this.fillLast=utf8FillLast;nb=4;break;case"base64":this.text=base64Text;this.end=base64End;nb=3;break;default:this.write=simpleWrite;this.end=simpleEnd;return}this.lastNeed=0;this.lastTotal=0;this.lastChar=Buffer.allocUnsafe(nb)}StringDecoder.prototype.write=function(buf){if(buf.length===0)return"";var r;var i;if(this.lastNeed){r=this.fillLast(buf);if(r===undefined)return"";i=this.lastNeed;this.lastNeed=0}else{i=0}if(i<buf.length)return r?r+this.text(buf,i):this.text(buf,i);return r||""};StringDecoder.prototype.end=utf8End;StringDecoder.prototype.text=utf8Text;StringDecoder.prototype.fillLast=function(buf){if(this.lastNeed<=buf.length){buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,this.lastTotal-this.lastNeed,0,buf.length);this.lastNeed-=buf.length};function utf8CheckByte(byte){if(byte<=127)return 0;else if(byte>>5===6)return 2;else if(byte>>4===14)return 3;else if(byte>>3===30)return 4;return byte>>6===2?-1:-2}function utf8CheckIncomplete(self,buf,i){var j=buf.length-1;if(j<i)return 0;var nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-1;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0)self.lastNeed=nb-2;return nb}if(--j<i||nb===-2)return 0;nb=utf8CheckByte(buf[j]);if(nb>=0){if(nb>0){if(nb===2)nb=0;else self.lastNeed=nb-3}return nb}return 0}function utf8CheckExtraBytes(self,buf,p){if((buf[0]&192)!==128){self.lastNeed=0;return"�"}if(self.lastNeed>1&&buf.length>1){if((buf[1]&192)!==128){self.lastNeed=1;return"�"}if(self.lastNeed>2&&buf.length>2){if((buf[2]&192)!==128){self.lastNeed=2;return"�"}}}}function utf8FillLast(buf){var p=this.lastTotal-this.lastNeed;var r=utf8CheckExtraBytes(this,buf,p);if(r!==undefined)return r;if(this.lastNeed<=buf.length){buf.copy(this.lastChar,p,0,this.lastNeed);return this.lastChar.toString(this.encoding,0,this.lastTotal)}buf.copy(this.lastChar,p,0,buf.length);this.lastNeed-=buf.length}function utf8Text(buf,i){var total=utf8CheckIncomplete(this,buf,i);if(!this.lastNeed)return buf.toString("utf8",i);this.lastTotal=total;var end=buf.length-(total-this.lastNeed);buf.copy(this.lastChar,0,end);return buf.toString("utf8",i,end)}function utf8End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+"�";return r}function utf16Text(buf,i){if((buf.length-i)%2===0){var r=buf.toString("utf16le",i);if(r){var c=r.charCodeAt(r.length-1);if(c>=55296&&c<=56319){this.lastNeed=2;this.lastTotal=4;this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1];return r.slice(0,-1)}}return r}this.lastNeed=1;this.lastTotal=2;this.lastChar[0]=buf[buf.length-1];return buf.toString("utf16le",i,buf.length-1)}function utf16End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed){var end=this.lastTotal-this.lastNeed;return r+this.lastChar.toString("utf16le",0,end)}return r}function base64Text(buf,i){var n=(buf.length-i)%3;if(n===0)return buf.toString("base64",i);this.lastNeed=3-n;this.lastTotal=3;if(n===1){this.lastChar[0]=buf[buf.length-1]}else{this.lastChar[0]=buf[buf.length-2];this.lastChar[1]=buf[buf.length-1]}return buf.toString("base64",i,buf.length-n)}function base64End(buf){var r=buf&&buf.length?this.write(buf):"";if(this.lastNeed)return r+this.lastChar.toString("base64",0,3-this.lastNeed);return r}function simpleWrite(buf){return buf.toString(this.encoding)}function simpleEnd(buf){return buf&&buf.length?this.write(buf):""}},{"safe-buffer":61}],63:[function(require,module,exports){module.exports=require("./readable").PassThrough},{"./readable":64}],64:[function(require,module,exports){exports=module.exports=require("./lib/_stream_readable.js");exports.Stream=exports;exports.Readable=exports;exports.Writable=require("./lib/_stream_writable.js");exports.Duplex=require("./lib/_stream_duplex.js");exports.Transform=require("./lib/_stream_transform.js");exports.PassThrough=require("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":53,"./lib/_stream_passthrough.js":54,"./lib/_stream_readable.js":55,"./lib/_stream_transform.js":56,"./lib/_stream_writable.js":57}],65:[function(require,module,exports){module.exports=require("./readable").Transform},{"./readable":64}],66:[function(require,module,exports){module.exports=require("./lib/_stream_writable.js")},{"./lib/_stream_writable.js":57}],67:[function(require,module,exports){var buffer=require("buffer");var Buffer=buffer.Buffer;function copyProps(src,dst){for(var key in src){dst[key]=src[key]}}if(Buffer.from&&Buffer.alloc&&Buffer.allocUnsafe&&Buffer.allocUnsafeSlow){module.exports=buffer}else{copyProps(buffer,exports);exports.Buffer=SafeBuffer}function SafeBuffer(arg,encodingOrOffset,length){return Buffer(arg,encodingOrOffset,length)}SafeBuffer.prototype=Object.create(Buffer.prototype);copyProps(Buffer,SafeBuffer);SafeBuffer.from=function(arg,encodingOrOffset,length){if(typeof arg==="number"){throw new TypeError("Argument must not be a number")}return Buffer(arg,encodingOrOffset,length)};SafeBuffer.alloc=function(size,fill,encoding){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}var buf=Buffer(size);if(fill!==undefined){if(typeof encoding==="string"){buf.fill(fill,encoding)}else{buf.fill(fill)}}else{buf.fill(0)}return buf};SafeBuffer.allocUnsafe=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return Buffer(size)};SafeBuffer.allocUnsafeSlow=function(size){if(typeof size!=="number"){throw new TypeError("Argument must be a number")}return buffer.SlowBuffer(size)}},{buffer:43}],68:[function(require,module,exports){module.exports=Stream;var EE=require("events").EventEmitter;var inherits=require("inherits");inherits(Stream,EE);Stream.Readable=require("readable-stream/readable.js");Stream.Writable=require("readable-stream/writable.js");Stream.Duplex=require("readable-stream/duplex.js");Stream.Transform=require("readable-stream/transform.js");Stream.PassThrough=require("readable-stream/passthrough.js");Stream.Stream=Stream;function Stream(){EE.call(this)}Stream.prototype.pipe=function(dest,options){var source=this;function ondata(chunk){if(dest.writable){if(false===dest.write(chunk)&&source.pause){source.pause()}}}source.on("data",ondata);function ondrain(){if(source.readable&&source.resume){source.resume()}}dest.on("drain",ondrain);if(!dest._isStdio&&(!options||options.end!==false)){source.on("end",onend);source.on("close",onclose)}var didOnEnd=false;function onend(){if(didOnEnd)return;didOnEnd=true;dest.end()}function onclose(){if(didOnEnd)return;didOnEnd=true;if(typeof dest.destroy==="function")dest.destroy()}function onerror(er){cleanup();if(EE.listenerCount(this,"error")===0){throw er}}source.on("error",onerror);dest.on("error",onerror);function cleanup(){source.removeListener("data",ondata);dest.removeListener("drain",ondrain);source.removeListener("end",onend);source.removeListener("close",onclose);source.removeListener("error",onerror);dest.removeListener("error",onerror);source.removeListener("end",cleanup);source.removeListener("close",cleanup);dest.removeListener("close",cleanup)}source.on("end",cleanup);source.on("close",cleanup);dest.on("close",cleanup);dest.emit("pipe",source);return dest}},{events:45,inherits:47,"readable-stream/duplex.js":52,"readable-stream/passthrough.js":63,"readable-stream/readable.js":64,"readable-stream/transform.js":65,"readable-stream/writable.js":66}],69:[function(require,module,exports){arguments[4][62][0].apply(exports,arguments)},{dup:62,"safe-buffer":67}],70:[function(require,module,exports){(function(setImmediate,clearImmediate){var nextTick=require("process/browser.js").nextTick;var apply=Function.prototype.apply;var slice=Array.prototype.slice;var immediateIds={};var nextImmediateId=0;exports.setTimeout=function(){return new Timeout(apply.call(setTimeout,window,arguments),clearTimeout)};exports.setInterval=function(){return new Timeout(apply.call(setInterval,window,arguments),clearInterval)};exports.clearTimeout=exports.clearInterval=function(timeout){timeout.close()};function Timeout(id,clearFn){this._id=id;this._clearFn=clearFn}Timeout.prototype.unref=Timeout.prototype.ref=function(){};Timeout.prototype.close=function(){this._clearFn.call(window,this._id)};exports.enroll=function(item,msecs){clearTimeout(item._idleTimeoutId);item._idleTimeout=msecs};exports.unenroll=function(item){clearTimeout(item._idleTimeoutId);item._idleTimeout=-1};exports._unrefActive=exports.active=function(item){clearTimeout(item._idleTimeoutId);var msecs=item._idleTimeout;if(msecs>=0){item._idleTimeoutId=setTimeout(function onTimeout(){if(item._onTimeout)item._onTimeout()},msecs)}};exports.setImmediate=typeof setImmediate==="function"?setImmediate:function(fn){var id=nextImmediateId++;var args=arguments.length<2?false:slice.call(arguments,1);immediateIds[id]=true;nextTick(function onNextTick(){if(immediateIds[id]){if(args){fn.apply(null,args)}else{fn.call(null)}exports.clearImmediate(id)}});return id};exports.clearImmediate=typeof clearImmediate==="function"?clearImmediate:function(id){delete immediateIds[id]}}).call(this,require("timers").setImmediate,require("timers").clearImmediate)},{"process/browser.js":51,timers:70}],71:[function(require,module,exports){(function(global){module.exports=deprecate;function deprecate(fn,msg){if(config("noDeprecation")){return fn}var warned=false;function deprecated(){if(!warned){if(config("throwDeprecation")){throw new Error(msg)}else if(config("traceDeprecation")){console.trace(msg)}else{console.warn(msg)}warned=true}return fn.apply(this,arguments)}return deprecated}function config(name){try{if(!global.localStorage)return false}catch(_){return false}var val=global.localStorage[name];if(null==val)return false;return String(val).toLowerCase()==="true"}}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}]},{},[6])(6)}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment