graphene-django/graphene_django/static/graphiql/js/graphiql.min.js

2 lines
1.1 MiB
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

!function(f){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=f();else if("function"==typeof define&&define.amd)define([],f);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).GraphiQL=f()}}(function(){return function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a="function"==typeof require&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n||e)},l,l.exports,e,t,n,r)}return n[o].exports}for(var i="function"==typeof require&&require,o=0;o<r.length;o++)s(r[o]);return s}({1:[function(require,module,exports){(function(global){"use strict";function compare(a,b){if(a===b)return 0;for(var x=a.length,y=b.length,i=0,len=Math.min(x,y);i<len;++i)if(a[i]!==b[i]){x=a[i],y=b[i];break}return x<y?-1:y<x?1:0}function isBuffer(b){return global.Buffer&&"function"==typeof global.Buffer.isBuffer?global.Buffer.isBuffer(b):!(null==b||!b._isBuffer)}var util=require("util/"),hasOwn=Object.prototype.hasOwnProperty,pSlice=Array.prototype.slice,functionsHaveNames="foo"===function(){}.name;function pToString(obj){return Object.prototype.toString.call(obj)}function isView(arrbuf){return!isBuffer(arrbuf)&&("function"==typeof global.ArrayBuffer&&("function"==typeof ArrayBuffer.isView?ArrayBuffer.isView(arrbuf):!!arrbuf&&(arrbuf instanceof DataView||!!(arrbuf.buffer&&arrbuf.buffer instanceof ArrayBuffer))))}var assert=module.exports=ok,regex=/\s*function\s+([^\(\s]*)\s*/;function getName(func){if(util.isFunction(func)){if(functionsHaveNames)return func.name;var match=func.toString().match(regex);return match&&match[1]}}function truncate(s,n){return"string"==typeof s?s.length<n?s:s.slice(0,n):s}function inspect(something){if(functionsHaveNames||!util.isFunction(something))return util.inspect(something);var rawname=getName(something);return"[Function"+(rawname?": "+rawname:"")+"]"}function fail(actual,expected,message,operator,stackStartFunction){throw new assert.AssertionError({message:message,actual:actual,expected:expected,operator:operator,stackStartFunction:stackStartFunction})}function ok(value,message){value||fail(value,!0,message,"==",assert.ok)}function _deepEqual(actual,expected,strict,memos){if(actual===expected)return!0;if(isBuffer(actual)&&isBuffer(expected))return 0===compare(actual,expected);if(util.isDate(actual)&&util.isDate(expected))return actual.getTime()===expected.getTime();if(util.isRegExp(actual)&&util.isRegExp(expected))return actual.source===expected.source&&actual.global===expected.global&&actual.multiline===expected.multiline&&actual.lastIndex===expected.lastIndex&&actual.ignoreCase===expected.ignoreCase;if(null!==actual&&"object"==typeof actual||null!==expected&&"object"==typeof expected){if(isView(actual)&&isView(expected)&&pToString(actual)===pToString(expected)&&!(actual instanceof Float32Array||actual instanceof Float64Array))return 0===compare(new Uint8Array(actual.buffer),new Uint8Array(expected.buffer));if(isBuffer(actual)!==isBuffer(expected))return!1;var actualIndex=(memos=memos||{actual:[],expected:[]}).actual.indexOf(actual);return-1!==actualIndex&&actualIndex===memos.expected.indexOf(expected)||(memos.actual.push(actual),memos.expected.push(expected),function(a,b,strict,actualVisitedObjects){if(null==a||null==b)return!1;if(util.isPrimitive(a)||util.isPrimitive(b))return a===b;if(strict&&Object.getPrototypeOf(a)!==Object.getPrototypeOf(b))return!1;var aIsArgs=isArguments(a),bIsArgs=isArguments(b);if(aIsArgs&&!bIsArgs||!aIsArgs&&bIsArgs)return!1;if(aIsArgs)return a=pSlice.call(a),b=pSlice.call(b),_deepEqual(a,b,strict);var key,i,ka=objectKeys(a),kb=objectKeys(b);if(ka.length!==kb.length)return!1;for(ka.sort(),kb.sort(),i=ka.length-1;0<=i;i--)if(ka[i]!==kb[i])return!1;for(i=ka.length-1;0<=i;i--)if(key=ka[i],!_deepEqual(a[key],b[key],strict,actualVisitedObjects))return!1;return!0}(actual,expected,strict,memos))}return strict?actual===expected:actual==expected}function isArguments(object){return"[object Arguments]"==Object.prototype.toString.call(object)}function expectedException(actual,expected){if(!actual||!expected)return!1;if("[object RegExp]"==Object.prototype.toString.call(expected))return expected.test(actual);try{if(actual instanceof expected)return!0}catch(e){}return!Error.isPrototypeOf(expected)&&!0===expected.call({},actual)}function _throws(shouldThrow,block,expected,message){var actual;if("function"!=typeof block)throw new TypeError('"block" argument must be a function');"string"==typeof expected&&(message=expected,expected=null),actual=function(block){var error;try{block()}catch(e){error=e}return error}(block),message=(expected&&expected.name?" ("+expected.name+").":".")+(message?" "+message:"."),shouldThrow&&!actual&&fail(actual,expected,"Missing expected exception"+message);var userProvidedMessage="string"==typeof message,isUnexpectedException=!shouldThrow&&actual&&!expected;if((!shouldThrow&&util.isError(actual)&&userProvidedMessage&&expectedException(actual,expected)||isUnexpectedException)&&fail(actual,expected,"Got unwanted exception"+message),shouldThrow&&actual&&expected&&!expectedException(actual,expected)||!shouldThrow&&actual)throw actual}assert.AssertionError=function(options){this.name="AssertionError",this.actual=options.actual,this.expected=options.expected,this.operator=options.operator,options.message?(this.message=options.message,this.generatedMessage=!1):(this.message=function(self){return truncate(inspect(self.actual),128)+" "+self.operator+" "+truncate(inspect(self.expected),128)}(this),this.generatedMessage=!0);var stackStartFunction=options.stackStartFunction||fail;if(Error.captureStackTrace)Error.captureStackTrace(this,stackStartFunction);else{var err=new Error;if(err.stack){var out=err.stack,fn_name=getName(stackStartFunction),idx=out.indexOf("\n"+fn_name);if(0<=idx){var next_line=out.indexOf("\n",idx+1);out=out.substring(next_line+1)}this.stack=out}}},util.inherits(assert.AssertionError,Error),assert.fail=fail,assert.ok=ok,assert.equal=function(actual,expected,message){actual!=expected&&fail(actual,expected,message,"==",assert.equal)},assert.notEqual=function(actual,expected,message){actual==expected&&fail(actual,expected,message,"!=",assert.notEqual)},assert.deepEqual=function(actual,expected,message){_deepEqual(actual,expected,!1)||fail(actual,expected,message,"deepEqual",assert.deepEqual)},assert.deepStrictEqual=function(actual,expected,message){_deepEqual(actual,expected,!0)||fail(actual,expected,message,"deepStrictEqual",assert.deepStrictEqual)},assert.notDeepEqual=function(actual,expected,message){_deepEqual(actual,expected,!1)&&fail(actual,expected,message,"notDeepEqual",assert.notDeepEqual)},assert.notDeepStrictEqual=function notDeepStrictEqual(actual,expected,message){_deepEqual(actual,expected,!0)&&fail(actual,expected,message,"notDeepStrictEqual",notDeepStrictEqual)},assert.strictEqual=function(actual,expected,message){actual!==expected&&fail(actual,expected,message,"===",assert.strictEqual)},assert.notStrictEqual=function(actual,expected,message){actual===expected&&fail(actual,expected,message,"!==",assert.notStrictEqual)},assert.throws=function(block,error,message){_throws(!0,block,error,message)},assert.doesNotThrow=function(block,error,message){_throws(!1,block,error,message)},assert.ifError=function(err){if(err)throw err};var objectKeys=Object.keys||function(obj){var keys=[];for(var key in obj)hasOwn.call(obj,key)&&keys.push(key);return keys}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"util/":217}],2:[function(require,module,exports){(function(CodeMirror){"use strict";var noOptions={},nonWS=/[^\s\u00a0]/,Pos=CodeMirror.Pos;function firstNonWS(str){var found=str.search(nonWS);return-1==found?0:found}function getMode(cm,pos){var mode=cm.getMode();return!1!==mode.useInnerComments&&mode.innerMode?cm.getModeAt(pos):mode}CodeMirror.commands.toggleComment=function(cm){cm.toggleComment()},CodeMirror.defineExtension("toggleComment",function(options){options||(options=noOptions);for(var minLine=1/0,ranges=this.listSelections(),mode=null,i=ranges.length-1;0<=i;i--){var from=ranges[i].from(),to=ranges[i].to();from.line>=minLine||(to.line>=minLine&&(to=Pos(minLine,0)),minLine=from.line,null==mode?mode=this.uncomment(from,to,options)?"un":(this.lineComment(from,to,options),"line"):"un"==mode?this.uncomment(from,to,options):this.lineComment(from,to,options))}}),CodeMirror.defineExtension("lineComment",function(from,to,options){options||(options=noOptions);var self=this,mode=getMode(self,from),firstLine=self.getLine(from.line);if(null!=firstLine&&!function(cm,pos,line){return/\bstring\b/.test(cm.getTokenTypeAt(Pos(pos.line,0)))&&!/^[\'\"\`]/.test(line)}(self,from,firstLine)){var commentString=options.lineComment||mode.lineComment;if(commentString){var end=Math.min(0!=to.ch||to.line==from.line?to.line+1:to.line,self.lastLine()+1),pad=null==options.padding?" ":options.padding,blankLines=options.commentBlankLines||from.line==to.line;self.operation(function(){if(options.indent){for(var baseString=null,i=from.line;i<end;++i){var whitespace=(line=self.getLine(i)).slice(0,firstNonWS(line));(null==baseString||baseString.length>whitespace.length)&&(baseString=whitespace)}for(i=from.line;i<end;++i){var line=self.getLine(i),cut=baseString.length;(blankLines||nonWS.test(line))&&(line.slice(0,cut)!=baseString&&(cut=firstNonWS(line)),self.replaceRange(baseString+commentString+pad,Pos(i,0),Pos(i,cut)))}}else for(i=from.line;i<end;++i)(blankLines||nonWS.test(self.getLine(i)))&&self.replaceRange(commentString+pad,Pos(i,0))})}else(options.blockCommentStart||mode.blockCommentStart)&&(options.fullLines=!0,self.blockComment(from,to,options))}}),CodeMirror.defineExtension("blockComment",function(from,to,options){options||(options=noOptions);var self=this,mode=getMode(self,from),startString=options.blockCommentStart||mode.blockCommentStart,endString=options.blockCommentEnd||mode.blockCommentEnd;if(startString&&endString){if(!/\bcomment\b/.test(self.getTokenTypeAt(Pos(from.line,0)))){var end=Math.min(to.line,self.lastLine());end!=from.line&&0==to.ch&&nonWS.test(self.getLine(end))&&--end;var pad=null==options.padding?" ":options.padding;from.line>end||self.operation(function(){if(0!=options.fullLines){var lastLineHasText=nonWS.test(self.getLine(end));self.replaceRange(pad+endString,Pos(end)),self.replaceRange(startString+pad,Pos(from.line,0));var lead=options.blockCommentLead||mode.blockCommentLead;if(null!=lead)for(var i=from.line+1;i<=end;++i)i==end&&!lastLineHasText||self.replaceRange(lead+pad,Pos(i,0))}else self.replaceRange(endString,to),self.replaceRange(startString,from)})}}else(options.lineComment||mode.lineComment)&&0!=options.fullLines&&self.lineComment(from,to,options)}),CodeMirror.defineExtension("uncomment",function(from,to,options){options||(options=noOptions);var didSomething,self=this,mode=getMode(self,from),end=Math.min(0!=to.ch||to.line==from.line?to.line:to.line-1,self.lastLine()),start=Math.min(from.line,end),lineString=options.lineComment||mode.lineComment,lines=[],pad=null==options.padding?" ":options.padding;lineComment:if(lineString){for(var i=start;i<=end;++i){var line=self.getLine(i),found=line.indexOf(lineString);if(-1<found&&!/comment/.test(self.getTokenTypeAt(Pos(i,found+1)))&&(found=-1),-1==found&&nonWS.test(line))break lineComment;if(-1<found&&nonWS.test(line.slice(0,found)))break lineComment;lines.push(line)}if(self.operation(function(){for(var i=start;i<=end;++i){var line=lines[i-start],pos=line.indexOf(lineString),endPos=pos+lineString.length;pos<0||(line.slice(endPos,endPos+pad.length)==pad&&(endPos+=pad.length),didSomething=!0,self.replaceRange("",Pos(i,pos),Pos(i,endPos)))}}),didSomething)return!0}var startString=options.blockCommentStart||mode.blockCommentStart,endString=options.blockCommentEnd||mode.blockCommentEnd;if(!startString||!endString)return!1;var lead=options.blockCommentLead||mode.blockCommentLead,startLine=self.getLine(start),open=startLine.indexOf(startString);if(-1==open)return!1;var endLine=end==start?startLine:self.getLine(end),close=endLine.indexOf(endString,end==start?open+startString.length:0),insideStart=Pos(start,open+1),insideEnd=Pos(end,close+1);if(-1==close||!/comment/.test(self.getTokenTypeAt(insideStart))||!/comment/.test(self.getTokenTypeAt(insideEnd))||-1<self.getRange(insideStart,insideEnd,"\n").indexOf(endString))return!1;var lastStart=startLine.lastIndexOf(startString,from.ch),firstEnd=-1==lastStart?-1:startLine.slice(0,from.ch).indexOf(endString,lastStart+startString.length);if(-1!=lastStart&&-1!=firstEnd&&firstEnd+endString.length!=from.ch)return!1;firstEnd=endLine.indexOf(endString,to.ch);var almostLastStart=endLine.slice(to.ch).lastIndexOf(startString,firstEnd-to.ch);return lastStart=-1==firstEnd||-1==almostLastStart?-1:to.ch+almostLastStart,(-1==firstEnd||-1==lastStart||lastStart==to.ch)&&(self.operation(function(){self.replaceRange("",Pos(end,close-(pad&&endLine.slice(close-pad.length,close)==pad?pad.length:0)),Pos(end,close+endString.length));var openEnd=open+startString.length;if(pad&&startLine.slice(openEnd,openEnd+pad.length)==pad&&(openEnd+=pad.length),self.replaceRange("",Pos(start,open),Pos(start,openEnd)),lead)for(var i=start+1;i<=end;++i){var line=self.getLine(i),found=line.indexOf(lead);if(-1!=found&&!nonWS.test(line.slice(0,found))){var foundEnd=found+lead.length;pad&&line.slice(foundEnd,foundEnd+pad.length)==pad&&(foundEnd+=pad.length),self.replaceRange("",Pos(i,found),Pos(i,foundEnd))}}}),!0)})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],3:[function(require,module,exports){(function(CodeMirror){function dialogDiv(cm,template,bottom){var dialog,wrap=cm.getWrapperElement();return(dialog=wrap.appendChild(document.createElement("div"))).className=bottom?"CodeMirror-dialog CodeMirror-dialog-bottom":"CodeMirror-dialog CodeMirror-dialog-top","string"==typeof template?dialog.innerHTML=template:dialog.appendChild(template),CodeMirror.addClass(wrap,"dialog-opened"),dialog}function closeNotification(cm,newVal){cm.state.currentNotificationClose&&cm.state.currentNotificationClose(),cm.state.currentNotificationClose=newVal}CodeMirror.defineExtension("openDialog",function(template,callback,options){options||(options={}),closeNotification(this,null);var dialog=dialogDiv(this,template,options.bottom),closed=!1,me=this;function close(newVal){if("string"==typeof newVal)inp.value=newVal;else{if(closed)return;closed=!0,CodeMirror.rmClass(dialog.parentNode,"dialog-opened"),dialog.parentNode.removeChild(dialog),me.focus(),options.onClose&&options.onClose(dialog)}}var button,inp=dialog.getElementsByTagName("input")[0];return inp?(inp.focus(),options.value&&(inp.value=options.value,!1!==options.selectValueOnOpen&&inp.select()),options.onInput&&CodeMirror.on(inp,"input",function(e){options.onInput(e,inp.value,close)}),options.onKeyUp&&CodeMirror.on(inp,"keyup",function(e){options.onKeyUp(e,inp.value,close)}),CodeMirror.on(inp,"keydown",function(e){options&&options.onKeyDown&&options.onKeyDown(e,inp.value,close)||((27==e.keyCode||!1!==options.closeOnEnter&&13==e.keyCode)&&(inp.blur(),CodeMirror.e_stop(e),close()),13==e.keyCode&&callback(inp.value,e))}),!1!==options.closeOnBlur&&CodeMirror.on(inp,"blur",close)):(button=dialog.getElementsByTagName("button")[0])&&(CodeMirror.on(button,"click",function(){close(),me.focus()}),!1!==options.closeOnBlur&&CodeMirror.on(button,"blur",close),button.focus()),close}),CodeMirror.defineExtension("openConfirm",function(template,callbacks,options){closeNotification(this,null);var dialog=dialogDiv(this,template,options&&options.bottom),buttons=dialog.getElementsByTagName("button"),closed=!1,me=this,blurring=1;function close(){closed||(closed=!0,CodeMirror.rmClass(dialog.parentNode,"dialog-opened"),dialog.parentNode.removeChild(dialog),me.focus())}buttons[0].focus();for(var i=0;i<buttons.length;++i){var b=buttons[i];!function(callback){CodeMirror.on(b,"click",function(e){CodeMirror.e_preventDefault(e),close(),callback&&callback(me)})}(callbacks[i]),CodeMirror.on(b,"blur",function(){--blurring,setTimeout(function(){blurring<=0&&close()},200)}),CodeMirror.on(b,"focus",function(){++blurring})}}),CodeMirror.defineExtension("openNotification",function(template,options){closeNotification(this,close);var doneTimer,dialog=dialogDiv(this,template,options&&options.bottom),closed=!1,duration=options&&void 0!==options.duration?options.duration:5e3;function close(){closed||(closed=!0,clearTimeout(doneTimer),CodeMirror.rmClass(dialog.parentNode,"dialog-opened"),dialog.parentNode.removeChild(dialog))}return CodeMirror.on(dialog,"click",function(e){CodeMirror.e_preventDefault(e),close()}),duration&&(doneTimer=setTimeout(close,duration)),close})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],4:[function(require,module,exports){(function(CodeMirror){var defaults={pairs:"()[]{}''\"\"",closeBefore:")]}'\":;>",triples:"",explode:"[]{}"},Pos=CodeMirror.Pos;function getOption(conf,name){return"pairs"==name&&"string"==typeof conf?conf:"object"==typeof conf&&null!=conf[name]?conf[name]:defaults[name]}CodeMirror.defineOption("autoCloseBrackets",!1,function(cm,val,old){old&&old!=CodeMirror.Init&&(cm.removeKeyMap(keyMap),cm.state.closeBrackets=null),val&&(ensureBound(getOption(val,"pairs")),cm.state.closeBrackets=val,cm.addKeyMap(keyMap))});var keyMap={Backspace:function(cm){var conf=getConfig(cm);if(!conf||cm.getOption("disableInput"))return CodeMirror.Pass;for(var pairs=getOption(conf,"pairs"),ranges=cm.listSelections(),i=0;i<ranges.length;i++){if(!ranges[i].empty())return CodeMirror.Pass;var around=charsAround(cm,ranges[i].head);if(!around||pairs.indexOf(around)%2!=0)return CodeMirror.Pass}for(var i=ranges.length-1;0<=i;i--){var cur=ranges[i].head;cm.replaceRange("",Pos(cur.line,cur.ch-1),Pos(cur.line,cur.ch+1),"+delete")}},Enter:function(cm){var conf=getConfig(cm),explode=conf&&getOption(conf,"explode");if(!explode||cm.getOption("disableInput"))return CodeMirror.Pass;for(var ranges=cm.listSelections(),i=0;i<ranges.length;i++){if(!ranges[i].empty())return CodeMirror.Pass;var around=charsAround(cm,ranges[i].head);if(!around||explode.indexOf(around)%2!=0)return CodeMirror.Pass}cm.operation(function(){var linesep=cm.lineSeparator()||"\n";cm.replaceSelection(linesep+linesep,null),cm.execCommand("goCharLeft"),ranges=cm.listSelections();for(var i=0;i<ranges.length;i++){var line=ranges[i].head.line;cm.indentLine(line,null,!0),cm.indentLine(line+1,null,!0)}})}};function ensureBound(chars){for(var i=0;i<chars.length;i++){var ch=chars.charAt(i),key="'"+ch+"'";keyMap[key]||(keyMap[key]=handler(ch))}}function handler(ch){return function(cm){return function(cm,ch){var conf=getConfig(cm);if(!conf||cm.getOption("disableInput"))return CodeMirror.Pass;var pairs=getOption(conf,"pairs"),pos=pairs.indexOf(ch);if(-1==pos)return CodeMirror.Pass;for(var type,closeBefore=getOption(conf,"closeBefore"),triples=getOption(conf,"triples"),identical=pairs.charAt(pos+1)==ch,ranges=cm.listSelections(),opening=pos%2==0,i=0;i<ranges.length;i++){var curType,range=ranges[i],cur=range.head,next=cm.getRange(cur,Pos(cur.line,cur.ch+1));if(opening&&!range.empty())curType="surround";else if(!identical&&opening||next!=ch)if(identical&&1<cur.ch&&0<=triples.indexOf(ch)&&cm.getRange(Pos(cur.line,cur.ch-2),cur)==ch+ch){if(2<cur.ch&&/\bstring/.test(cm.getTokenTypeAt(Pos(cur.line,cur.ch-2))))return CodeMirror.Pass;curType="addFour"}else if(identical){var prev=0==cur.ch?" ":cm.getRange(Pos(cur.line,cur.ch-1),cur);if(CodeMirror.isWordChar(next)||prev==ch||CodeMirror.isWordChar(prev))return CodeMirror.Pass;curType="both"}else{if(!opening||!(0===next.length||/\s/.test(next)||-1<closeBefore.indexOf(next)))return CodeMirror.Pass;curType="both"}else curType=identical&&stringStartsAfter(cm,cur)?"both":0<=triples.indexOf(ch)&&cm.getRange(cur,Pos(cur.line,cur.ch+3))==ch+ch+ch?"skipThree":"skip";if(type){if(type!=curType)return CodeMirror.Pass}else type=curType}var left=pos%2?pairs.charAt(pos-1):ch,right=pos%2?ch:pairs.charAt(pos+1);cm.operation(function(){if("skip"==type)cm.execCommand("goCharRight");else if("skipThree"==type)for(var i=0;i<3;i++)cm.execCommand("goCharRight");else if("surround"==type){for(var sels=cm.getSelections(),i=0;i<sels.length;i++)sels[i]=left+sels[i]+right;cm.replaceSelections(sels,"around"),sels=cm.listSelections().slice();for(var i=0;i<sels.length;i++)sels[i]=(sel=sels[i],void 0,inverted=0<CodeMirror.cmpPos(sel.anchor,sel.head),{anchor:new Pos(sel.anchor.line,sel.anchor.ch+(inverted?-1:1)),head:new Pos(sel.head.line,sel.head.ch+(inverted?1:-1))});cm.setSelections(sels)}else"both"==type?(cm.replaceSelection(left+right,null),cm.triggerElectric(left+right),cm.execCommand("goCharLeft")):"addFour"==type&&(cm.replaceSelection(left+left+left+left,"before"),cm.execCommand("goCharRight"));var sel,inverted})}(cm,ch)}}function getConfig(cm){var deflt=cm.state.closeBrackets;return!deflt||deflt.override?deflt:cm.getModeAt(cm.getCursor()).closeBrackets||deflt}function charsAround(cm,pos){var str=cm.getRange(Pos(pos.line,pos.ch-1),Pos(pos.line,pos.ch+1));return 2==str.length?str:null}function stringStartsAfter(cm,pos){var token=cm.getTokenAt(Pos(pos.line,pos.ch+1));return/\bstring/.test(token.type)&&token.start==pos.ch&&(0==pos.ch||!/\bstring/.test(cm.getTokenTypeAt(pos)))}ensureBound(defaults.pairs+"`")})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],5:[function(require,module,exports){(function(CodeMirror){var ie_lt8=/MSIE \d/.test(navigator.userAgent)&&(null==document.documentMode||document.documentMode<8),Pos=CodeMirror.Pos,matching={"(":")>",")":"(<","[":"]>","]":"[<","{":"}>","}":"{<","<":">>",">":"<<"};function bracketRegex(config){return config&&config.bracketRegex||/[(){}[\]]/}function findMatchingBracket(cm,where,config){var line=cm.getLineHandle(where.line),pos=where.ch-1,afterCursor=config&&config.afterCursor;null==afterCursor&&(afterCursor=/(^| )cm-fat-cursor($| )/.test(cm.getWrapperElement().className));var re=bracketRegex(config),match=!afterCursor&&0<=pos&&re.test(line.text.charAt(pos))&&matching[line.text.charAt(pos)]||re.test(line.text.charAt(pos+1))&&matching[line.text.charAt(++pos)];if(!match)return null;var dir=">"==match.charAt(1)?1:-1;if(config&&config.strict&&0<dir!=(pos==where.ch))return null;var style=cm.getTokenTypeAt(Pos(where.line,pos+1)),found=scanForBracket(cm,Pos(where.line,pos+(0<dir?1:0)),dir,style||null,config);return null==found?null:{from:Pos(where.line,pos),to:found&&found.pos,match:found&&found.ch==match.charAt(0),forward:0<dir}}function scanForBracket(cm,where,dir,style,config){for(var maxScanLen=config&&config.maxScanLineLength||1e4,maxScanLines=config&&config.maxScanLines||1e3,stack=[],re=bracketRegex(config),lineEnd=0<dir?Math.min(where.line+maxScanLines,cm.lastLine()+1):Math.max(cm.firstLine()-1,where.line-maxScanLines),lineNo=where.line;lineNo!=lineEnd;lineNo+=dir){var line=cm.getLine(lineNo);if(line){var pos=0<dir?0:line.length-1,end=0<dir?line.length:-1;if(!(line.length>maxScanLen))for(lineNo==where.line&&(pos=where.ch-(dir<0?1:0));pos!=end;pos+=dir){var ch=line.charAt(pos);if(re.test(ch)&&(void 0===style||cm.getTokenTypeAt(Pos(lineNo,pos+1))==style)){var match=matching[ch];if(match&&">"==match.charAt(1)==0<dir)stack.push(ch);else{if(!stack.length)return{pos:Pos(lineNo,pos),ch:ch};stack.pop()}}}}}return lineNo-dir!=(0<dir?cm.lastLine():cm.firstLine())&&null}function matchBrackets(cm,autoclear,config){for(var maxHighlightLen=cm.state.matchBrackets.maxHighlightLineLength||1e3,marks=[],ranges=cm.listSelections(),i=0;i<ranges.length;i++){var match=ranges[i].empty()&&findMatchingBracket(cm,ranges[i].head,config);if(match&&cm.getLine(match.from.line).length<=maxHighlightLen){var style=match.match?"CodeMirror-matchingbracket":"CodeMirror-nonmatchingbracket";marks.push(cm.markText(match.from,Pos(match.from.line,match.from.ch+1),{className:style})),match.to&&cm.getLine(match.to.line).length<=maxHighlightLen&&marks.push(cm.markText(match.to,Pos(match.to.line,match.to.ch+1),{className:style}))}}if(marks.length){ie_lt8&&cm.state.focused&&cm.focus();function clear(){cm.operation(function(){for(var i=0;i<marks.length;i++)marks[i].clear()})}if(!autoclear)return clear;setTimeout(clear,800)}}function doMatchBrackets(cm){cm.operation(function(){cm.state.matchBrackets.currentlyHighlighted&&(cm.state.matchBrackets.currentlyHighlighted(),cm.state.matchBrackets.currentlyHighlighted=null),cm.state.matchBrackets.currentlyHighlighted=matchBrackets(cm,!1,cm.state.matchBrackets)})}CodeMirror.defineOption("matchBrackets",!1,function(cm,val,old){old&&old!=CodeMirror.Init&&(cm.off("cursorActivity",doMatchBrackets),cm.state.matchBrackets&&cm.state.matchBrackets.currentlyHighlighted&&(cm.state.matchBrackets.currentlyHighlighted(),cm.state.matchBrackets.currentlyHighlighted=null)),val&&(cm.state.matchBrackets="object"==typeof val?val:{},cm.on("cursorActivity",doMatchBrackets))}),CodeMirror.defineExtension("matchBrackets",function(){matchBrackets(this,!0)}),CodeMirror.defineExtension("findMatchingBracket",function(pos,config,oldConfig){return!oldConfig&&"boolean"!=typeof config||(config=oldConfig?(oldConfig.strict=config,oldConfig):config?{strict:!0}:null),findMatchingBracket(this,pos,config)}),CodeMirror.defineExtension("scanForBracket",function(pos,dir,style,config){return scanForBracket(this,pos,dir,style,config)})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],6:[function(require,module,exports){(function(CodeMirror){"use strict";CodeMirror.registerHelper("fold","brace",function(cm,start){var tokenType,line=start.line,lineText=cm.getLine(line);function findOpening(openCh){for(var at=start.ch,pass=0;;){var found=at<=0?-1:lineText.lastIndexOf(openCh,at-1);if(-1!=found){if(1==pass&&found<start.ch)break;if(tokenType=cm.getTokenTypeAt(CodeMirror.Pos(line,found+1)),!/^(comment|string)/.test(tokenType))return found+1;at=found-1}else{if(1==pass)break;pass=1,at=lineText.length}}}var startToken="{",endToken="}",startCh=findOpening("{");if(null==startCh&&(endToken="]",startCh=findOpening(startToken="[")),null!=startCh){var end,endCh,count=1,lastLine=cm.lastLine();outer:for(var i=line;i<=lastLine;++i)for(var text=cm.getLine(i),pos=i==line?startCh:0;;){var nextOpen=text.indexOf(startToken,pos),nextClose=text.indexOf(endToken,pos);if(nextOpen<0&&(nextOpen=text.length),nextClose<0&&(nextClose=text.length),(pos=Math.min(nextOpen,nextClose))==text.length)break;if(cm.getTokenTypeAt(CodeMirror.Pos(i,pos+1))==tokenType)if(pos==nextOpen)++count;else if(!--count){end=i,endCh=pos;break outer}++pos}if(null!=end&&line!=end)return{from:CodeMirror.Pos(line,startCh),to:CodeMirror.Pos(end,endCh)}}}),CodeMirror.registerHelper("fold","import",function(cm,start){function hasImport(line){if(line<cm.firstLine()||line>cm.lastLine())return null;var start=cm.getTokenAt(CodeMirror.Pos(line,1));if(/\S/.test(start.string)||(start=cm.getTokenAt(CodeMirror.Pos(line,start.end+1))),"keyword"!=start.type||"import"!=start.string)return null;for(var i=line,e=Math.min(cm.lastLine(),line+10);i<=e;++i){var semi=cm.getLine(i).indexOf(";");if(-1!=semi)return{startCh:start.end,end:CodeMirror.Pos(i,semi)}}}var prev,startLine=start.line,has=hasImport(startLine);if(!has||hasImport(startLine-1)||(prev=hasImport(startLine-2))&&prev.end.line==startLine-1)return null;for(var end=has.end;;){var next=hasImport(end.line+1);if(null==next)break;end=next.end}return{from:cm.clipPos(CodeMirror.Pos(startLine,has.startCh+1)),to:end}}),CodeMirror.registerHelper("fold","include",function(cm,start){function hasInclude(line){if(line<cm.firstLine()||line>cm.lastLine())return null;var start=cm.getTokenAt(CodeMirror.Pos(line,1));return/\S/.test(start.string)||(start=cm.getTokenAt(CodeMirror.Pos(line,start.end+1))),"meta"==start.type&&"#include"==start.string.slice(0,8)?start.start+8:void 0}var startLine=start.line,has=hasInclude(startLine);if(null==has||null!=hasInclude(startLine-1))return null;for(var end=startLine;;){if(null==hasInclude(end+1))break;++end}return{from:CodeMirror.Pos(startLine,has+1),to:cm.clipPos(CodeMirror.Pos(end))}})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],7:[function(require,module,exports){(function(CodeMirror){"use strict";function doFold(cm,pos,options,force){if(options&&options.call){var finder=options;options=null}else finder=getOption(cm,options,"rangeFinder");"number"==typeof pos&&(pos=CodeMirror.Pos(pos,0));var minSize=getOption(cm,options,"minFoldSize");function getRange(allowFolded){var range=finder(cm,pos);if(!range||range.to.line-range.from.line<minSize)return null;for(var marks=cm.findMarksAt(range.from),i=0;i<marks.length;++i)if(marks[i].__isFold&&"fold"!==force){if(!allowFolded)return null;range.cleared=!0,marks[i].clear()}return range}var range=getRange(!0);if(getOption(cm,options,"scanUp"))for(;!range&&pos.line>cm.firstLine();)pos=CodeMirror.Pos(pos.line-1,0),range=getRange(!1);if(range&&!range.cleared&&"unfold"!==force){var myWidget=function(cm,options){var widget=getOption(cm,options,"widget");if("string"==typeof widget){var text=document.createTextNode(widget);(widget=document.createElement("span")).appendChild(text),widget.className="CodeMirror-foldmarker"}else widget&&(widget=widget.cloneNode(!0));return widget}(cm,options);CodeMirror.on(myWidget,"mousedown",function(e){myRange.clear(),CodeMirror.e_preventDefault(e)});var myRange=cm.markText(range.from,range.to,{replacedWith:myWidget,clearOnEnter:getOption(cm,options,"clearOnEnter"),__isFold:!0});myRange.on("clear",function(from,to){CodeMirror.signal(cm,"unfold",cm,from,to)}),CodeMirror.signal(cm,"fold",cm,range.from,range.to)}}CodeMirror.newFoldFunction=function(rangeFinder,widget){return function(cm,pos){doFold(cm,pos,{rangeFinder:rangeFinder,widget:widget})}},CodeMirror.defineExtension("foldCode",function(pos,options,force){doFold(this,pos,options,force)}),CodeMirror.defineExtension("isFolded",function(pos){for(var marks=this.findMarksAt(pos),i=0;i<marks.length;++i)if(marks[i].__isFold)return!0}),CodeMirror.commands.toggleFold=function(cm){cm.foldCode(cm.getCursor())},CodeMirror.commands.fold=function(cm){cm.foldCode(cm.getCursor(),null,"fold")},CodeMirror.commands.unfold=function(cm){cm.foldCode(cm.getCursor(),null,"unfold")},CodeMirror.commands.foldAll=function(cm){cm.operation(function(){for(var i=cm.firstLine(),e=cm.lastLine();i<=e;i++)cm.foldCode(CodeMirror.Pos(i,0),null,"fold")})},CodeMirror.commands.unfoldAll=function(cm){cm.operation(function(){for(var i=cm.firstLine(),e=cm.lastLine();i<=e;i++)cm.foldCode(CodeMirror.Pos(i,0),null,"unfold")})},CodeMirror.registerHelper("fold","combine",function(){var funcs=Array.prototype.slice.call(arguments,0);return function(cm,start){for(var i=0;i<funcs.length;++i){var found=funcs[i](cm,start);if(found)return found}}}),CodeMirror.registerHelper("fold","auto",function(cm,start){for(var helpers=cm.getHelpers(start,"fold"),i=0;i<helpers.length;i++){var cur=helpers[i](cm,start);if(cur)return cur}});var defaultOptions={rangeFinder:CodeMirror.fold.auto,widget:"↔",minFoldSize:0,scanUp:!1,clearOnEnter:!0};function getOption(cm,options,name){if(options&&void 0!==options[name])return options[name];var editorOptions=cm.options.foldOptions;return editorOptions&&void 0!==editorOptions[name]?editorOptions[name]:defaultOptions[name]}CodeMirror.defineOption("foldOptions",null),CodeMirror.defineExtension("foldOption",function(options,name){return getOption(this,options,name)})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],8:[function(require,module,exports){var mod;mod=function(CodeMirror){"use strict";CodeMirror.defineOption("foldGutter",!1,function(cm,val,old){old&&old!=CodeMirror.Init&&(cm.clearGutter(cm.state.foldGutter.options.gutter),cm.state.foldGutter=null,cm.off("gutterClick",onGutterClick),cm.off("change",onChange),cm.off("viewportChange",onViewportChange),cm.off("fold",onFold),cm.off("unfold",onFold),cm.off("swapDoc",onChange)),val&&(cm.state.foldGutter=new State(function(opts){!0===opts&&(opts={});null==opts.gutter&&(opts.gutter="CodeMirror-foldgutter");null==opts.indicatorOpen&&(opts.indicatorOpen="CodeMirror-foldgutter-open");null==opts.indicatorFolded&&(opts.indicatorFolded="CodeMirror-foldgutter-folded");return opts}(val)),updateInViewport(cm),cm.on("gutterClick",onGutterClick),cm.on("change",onChange),cm.on("viewportChange",onViewportChange),cm.on("fold",onFold),cm.on("unfold",onFold),cm.on("swapDoc",onChange))});var Pos=CodeMirror.Pos;function State(options){this.options=options,this.from=this.to=0}function isFolded(cm,line){for(var marks=cm.findMarks(Pos(line,0),Pos(line+1,0)),i=0;i<marks.length;++i)if(marks[i].__isFold&&marks[i].find().from.line==line)return marks[i]}function marker(spec){if("string"!=typeof spec)return spec.cloneNode(!0);var elt=document.createElement("div");return elt.className=spec+" CodeMirror-guttermarker-subtle",elt}function updateFoldInfo(cm,from,to){var opts=cm.state.foldGutter.options,cur=from,minSize=cm.foldOption(opts,"minFoldSize"),func=cm.foldOption(opts,"rangeFinder");cm.eachLine(from,to,function(line){var mark=null;if(isFolded(cm,cur))mark=marker(opts.indicatorFolded);else{var pos=Pos(cur,0),range=func&&func(cm,pos);range&&range.to.line-range.from.line>=minSize&&(mark=marker(opts.indicatorOpen))}cm.setGutterMarker(line,opts.gutter,mark),++cur})}function updateInViewport(cm){var vp=cm.getViewport(),state=cm.state.foldGutter;state&&(cm.operation(function(){updateFoldInfo(cm,vp.from,vp.to)}),state.from=vp.from,state.to=vp.to)}function onGutterClick(cm,line,gutter){var state=cm.state.foldGutter;if(state){var opts=state.options;if(gutter==opts.gutter){var folded=isFolded(cm,line);folded?folded.clear():cm.foldCode(Pos(line,0),opts.rangeFinder)}}}function onChange(cm){var state=cm.state.foldGutter;if(state){var opts=state.options;state.from=state.to=0,clearTimeout(state.changeUpdate),state.changeUpdate=setTimeout(function(){updateInViewport(cm)},opts.foldOnChangeTimeSpan||600)}}function onViewportChange(cm){var state=cm.state.foldGutter;if(state){var opts=state.options;clearTimeout(state.changeUpdate),state.changeUpdate=setTimeout(function(){var vp=cm.getViewport();state.from==state.to||20<vp.from-state.to||20<state.from-vp.to?updateInViewport(cm):cm.operation(function(){vp.from<state.from&&(updateFoldInfo(cm,vp.from,state.from),state.from=vp.from),vp.to>state.to&&(updateFoldInfo(cm,state.to,vp.to),state.to=vp.to)})},opts.updateViewportTimeSpan||400)}}function onFold(cm,from){var state=cm.state.foldGutter;if(state){var line=from.line;line>=state.from&&line<state.to&&updateFoldInfo(cm,line,line+1)}}},"object"==typeof exports&&"object"==typeof module?mod(require("../../lib/codemirror"),require("./foldcode")):mod(CodeMirror)},{"../../lib/codemirror":15,"./foldcode":7}],9:[function(require,module,exports){(function(CodeMirror){"use strict";function Completion(cm,options){this.cm=cm,this.options=options,this.widget=null,this.debounce=0,this.tick=0,this.startPos=this.cm.getCursor("start"),this.startLen=this.cm.getLine(this.startPos.line).length-this.cm.getSelection().length;var self=this;cm.on("cursorActivity",this.activityFunc=function(){self.cursorActivity()})}CodeMirror.showHint=function(cm,getHints,options){if(!getHints)return cm.showHint(options);options&&options.async&&(getHints.async=!0);var newOpts={hint:getHints};if(options)for(var prop in options)newOpts[prop]=options[prop];return cm.showHint(newOpts)},CodeMirror.defineExtension("showHint",function(options){options=function(cm,pos,options){var editor=cm.options.hintOptions,out={};for(var prop in defaultOptions)out[prop]=defaultOptions[prop];if(editor)for(var prop in editor)void 0!==editor[prop]&&(out[prop]=editor[prop]);if(options)for(var prop in options)void 0!==options[prop]&&(out[prop]=options[prop]);out.hint.resolve&&(out.hint=out.hint.resolve(cm,pos));return out}(this,this.getCursor("start"),options);var selections=this.listSelections();if(!(1<selections.length)){if(this.somethingSelected()){if(!options.hint.supportsSelection)return;for(var i=0;i<selections.length;i++)if(selections[i].head.line!=selections[i].anchor.line)return}this.state.completionActive&&this.state.completionActive.close();var completion=this.state.completionActive=new Completion(this,options);completion.options.hint&&(CodeMirror.signal(this,"startCompletion",this),completion.update(!0))}}),CodeMirror.defineExtension("closeHint",function(){this.state.completionActive&&this.state.completionActive.close()});var requestAnimationFrame=window.requestAnimationFrame||function(fn){return setTimeout(fn,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||clearTimeout;function getText(completion){return"string"==typeof completion?completion:completion.text}function getHintElement(hintsElement,el){for(;el&&el!=hintsElement;){if("LI"===el.nodeName.toUpperCase()&&el.parentNode==hintsElement)return el;el=el.parentNode}}function Widget(completion,data){this.completion=completion,this.data=data,this.picked=!1;var widget=this,cm=completion.cm,ownerDocument=cm.getInputField().ownerDocument,parentWindow=ownerDocument.defaultView||ownerDocument.parentWindow,hints=this.hints=ownerDocument.createElement("ul"),theme=completion.cm.options.theme;hints.className="CodeMirror-hints "+theme,this.selectedHint=data.selectedHint||0;for(var completions=data.list,i=0;i<completions.length;++i){var elt=hints.appendChild(ownerDocument.createElement("li")),cur=completions[i],className="CodeMirror-hint"+(i!=this.selectedHint?"":" CodeMirror-hint-active");null!=cur.className&&(className=cur.className+" "+className),elt.className=className,cur.render?cur.render(elt,data,cur):elt.appendChild(ownerDocument.createTextNode(cur.displayText||getText(cur))),elt.hintId=i}var container=completion.options.container||ownerDocument.body,pos=cm.cursorCoords(completion.options.alignWithWord?data.from:null),left=pos.left,top=pos.bottom,below=!0,offsetLeft=0,offsetTop=0;if(container!==ownerDocument.body){var offsetParentPosition=(-1!==["absolute","relative","fixed"].indexOf(parentWindow.getComputedStyle(container).position)?container:container.offsetParent).getBoundingClientRect(),bodyPosition=ownerDocument.body.getBoundingClientRect();offsetLeft=offsetParentPosition.left-bodyPosition.left,offsetTop=offsetParentPosition.top-bodyPosition.top}hints.style.left=left-offsetLeft+"px",hints.style.top=top-offsetTop+"px";var winW=parentWindow.innerWidth||Math.max(ownerDocument.body.offsetWidth,ownerDocument.documentElement.offsetWidth),winH=parentWindow.innerHeight||Math.max(ownerDocument.body.offsetHeight,ownerDocument.documentElement.offsetHeight);container.appendChild(hints);var box=hints.getBoundingClientRect(),overlapY=box.bottom-winH,scrolls=hints.scrollHeight>hints.clientHeight+1,startScroll=cm.getScrollInfo();if(0<overlapY){var height=box.bottom-box.top;if(0<pos.top-(pos.bottom-box.top)-height)hints.style.top=(top=pos.top-height-offsetTop)+"px",below=!1;else if(winH<height){hints.style.height=winH-5+"px",hints.style.top=(top=pos.bottom-box.top-offsetTop)+"px";var cursor=cm.getCursor();data.from.ch!=cursor.ch&&(pos=cm.cursorCoords(cursor),hints.style.left=(left=pos.left-offsetLeft)+"px",box=hints.getBoundingClientRect())}}var closingOnBlur,overlapX=box.right-winW;if(0<overlapX&&(box.right-box.left>winW&&(hints.style.width=winW-5+"px",overlapX-=box.right-box.left-winW),hints.style.left=(left=pos.left-overlapX-offsetLeft)+"px"),scrolls)for(var node=hints.firstChild;node;node=node.nextSibling)node.style.paddingRight=cm.display.nativeBarWidth+"px";cm.addKeyMap(this.keyMap=function(completion,handle){var baseMap={Up:function(){handle.moveFocus(-1)},Down:function(){handle.moveFocus(1)},PageUp:function(){handle.moveFocus(1-handle.menuSize(),!0)},PageDown:function(){handle.moveFocus(handle.menuSize()-1,!0)},Home:function(){handle.setFocus(0)},End:function(){handle.setFocus(handle.length-1)},Enter:handle.pick,Tab:handle.pick,Esc:handle.close};/Mac/.test(navigator.platform)&&(baseMap["Ctrl-P"]=function(){handle.moveFocus(-1)},baseMap["Ctrl-N"]=function(){handle.moveFocus(1)});var custom=completion.options.customKeys,ourMap=custom?{}:baseMap;function addBinding(key,val){var bound;bound="string"!=typeof val?function(cm){return val(cm,handle)}:baseMap.hasOwnProperty(val)?baseMap[val]:val,ourMap[key]=bound}if(custom)for(var key in custom)custom.hasOwnProperty(key)&&addBinding(key,custom[key]);var extra=completion.options.extraKeys;if(extra)for(var key in extra)extra.hasOwnProperty(key)&&addBinding(key,extra[key]);return ourMap}(completion,{moveFocus:function(n,avoidWrap){widget.changeActive(widget.selectedHint+n,avoidWrap)},setFocus:function(n){widget.changeActive(n)},menuSize:function(){return widget.screenAmount()},length:completions.length,close:function(){completion.close()},pick:function(){widget.pick()},data:data})),completion.options.closeOnUnfocus&&(cm.on("blur",this.onBlur=function(){closingOnBlur=setTimeout(function(){completion.close()},100)}),cm.on("focus",this.onFocus=function(){clearTimeout(closingOnBlur)}));return cm.on("scroll",this.onScroll=function(){var curScroll=cm.getScrollInfo(),editor=cm.getWrapperElement().getBoundingClientRect(),newTop=top+startScroll.top-curScroll.top,point=newTop-(parentWindow.pageYOffset||(ownerDocument.documentElement||ownerDocument.body).scrollTop);if(below||(point+=hints.offsetHeight),point<=editor.top||point>=editor.bottom)return completion.close();hints.style.top=newTop+"px",hints.style.left=left+startScroll.left-curScroll.left+"px"}),CodeMirror.on(hints,"dblclick",function(e){var t=getHintElement(hints,e.target||e.srcElement);t&&null!=t.hintId&&(widget.changeActive(t.hintId),widget.pick())}),CodeMirror.on(hints,"click",function(e){var t=getHintElement(hints,e.target||e.srcElement);t&&null!=t.hintId&&(widget.changeActive(t.hintId),completion.options.completeOnSingleClick&&widget.pick())}),CodeMirror.on(hints,"mousedown",function(){setTimeout(function(){cm.focus()},20)}),CodeMirror.signal(data,"select",completions[this.selectedHint],hints.childNodes[this.selectedHint]),!0}function fetchHints(hint,cm,options,callback){if(hint.async)hint(cm,callback,options);else{var result=hint(cm,options);result&&result.then?result.then(callback):callback(result)}}Completion.prototype={close:function(){this.active()&&(this.cm.state.completionActive=null,this.tick=null,this.cm.off("cursorActivity",this.activityFunc),this.widget&&this.data&&CodeMirror.signal(this.data,"close"),this.widget&&this.widget.close(),CodeMirror.signal(this.cm,"endCompletion",this.cm))},active:function(){return this.cm.state.completionActive==this},pick:function(data,i){var completion=data.list[i];completion.hint?completion.hint(this.cm,data,completion):this.cm.replaceRange(getText(completion),completion.from||data.from,completion.to||data.to,"complete"),CodeMirror.signal(data,"pick",completion),this.close()},cursorActivity:function(){this.debounce&&(cancelAnimationFrame(this.debounce),this.debounce=0);var pos=this.cm.getCursor(),line=this.cm.getLine(pos.line);if(pos.line!=this.startPos.line||line.length-pos.ch!=this.startLen-this.startPos.ch||pos.ch<this.startPos.ch||this.cm.somethingSelected()||!pos.ch||this.options.closeCharacters.test(line.charAt(pos.ch-1)))this.close();else{var self=this;this.debounce=requestAnimationFrame(function(){self.update()}),this.widget&&this.widget.disable()}},update:function(first){if(null!=this.tick){var self=this,myTick=++this.tick;fetchHints(this.options.hint,this.cm,this.options,function(data){self.tick==myTick&&self.finishUpdate(data,first)})}},finishUpdate:function(data,first){this.data&&CodeMirror.signal(this.data,"update");var picked=this.widget&&this.widget.picked||first&&this.options.completeSingle;this.widget&&this.widget.close(),(this.data=data)&&data.list.length&&(picked&&1==data.list.length?this.pick(data,0):(this.widget=new Widget(this,data),CodeMirror.signal(data,"shown")))}},Widget.prototype={close:function(){if(this.completion.widget==this){this.completion.widget=null,this.hints.parentNode.removeChild(this.hints),this.completion.cm.removeKeyMap(this.keyMap);var cm=this.completion.cm;this.completion.options.closeOnUnfocus&&(cm.off("blur",this.onBlur),cm.off("focus",this.onFocus)),cm.off("scroll",this.onScroll)}},disable:function(){this.completion.cm.removeKeyMap(this.keyMap);var widget=this;this.keyMap={Enter:function(){widget.picked=!0}},this.completion.cm.addKeyMap(this.keyMap)},pick:function(){this.completion.pick(this.data,this.selectedHint)},changeActive:function(i,avoidWrap){if(i>=this.data.list.length?i=avoidWrap?this.data.list.length-1:0:i<0&&(i=avoidWrap?0:this.data.list.length-1),this.selectedHint!=i){var node=this.hints.childNodes[this.selectedHint];node&&(node.className=node.className.replace(" CodeMirror-hint-active","")),(node=this.hints.childNodes[this.selectedHint=i]).className+=" CodeMirror-hint-active",node.offsetTop<this.hints.scrollTop?this.hints.scrollTop=node.offsetTop-3:node.offsetTop+node.offsetHeight>this.hints.scrollTop+this.hints.clientHeight&&(this.hints.scrollTop=node.offsetTop+node.offsetHeight-this.hints.clientHeight+3),CodeMirror.signal(this.data,"select",this.data.list[this.selectedHint],node)}},screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.firstChild.offsetHeight)||1}},CodeMirror.registerHelper("hint","auto",{resolve:function(cm,pos){var words,helpers=cm.getHelpers(pos,"hint");if(helpers.length){var resolved=function(cm,callback,options){var app=function(cm,helpers){if(!cm.somethingSelected())return helpers;for(var result=[],i=0;i<helpers.length;i++)helpers[i].supportsSelection&&result.push(helpers[i]);return result}(cm,helpers);!function run(i){if(i==app.length)return callback(null);fetchHints(app[i],cm,options,function(result){result&&0<result.list.length?callback(result):run(i+1)})}(0)};return resolved.async=!0,resolved.supportsSelection=!0,resolved}return(words=cm.getHelper(cm.getCursor(),"hintWords"))?function(cm){return CodeMirror.hint.fromList(cm,{words:words})}:CodeMirror.hint.anyword?function(cm,options){return CodeMirror.hint.anyword(cm,options)}:function(){}}}),CodeMirror.registerHelper("hint","fromList",function(cm,options){var term,cur=cm.getCursor(),token=cm.getTokenAt(cur),from=CodeMirror.Pos(cur.line,token.start),to=cur;token.start<cur.ch&&/\w/.test(token.string.charAt(cur.ch-token.start-1))?term=token.string.substr(0,cur.ch-token.start):(term="",from=cur);for(var found=[],i=0;i<options.words.length;i++){var word=options.words[i];word.slice(0,term.length)==term&&found.push(word)}if(found.length)return{list:found,from:from,to:to}}),CodeMirror.commands.autocomplete=CodeMirror.showHint;var defaultOptions={hint:CodeMirror.hint.auto,completeSingle:!0,alignWithWord:!0,closeCharacters:/[\s()\[\]{};:>,]/,closeOnUnfocus:!0,completeOnSingleClick:!0,container:null,customKeys:null,extraKeys:null};CodeMirror.defineOption("hintOptions",null)})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],10:[function(require,module,exports){(function(CodeMirror){"use strict";var GUTTER_ID="CodeMirror-lint-markers";function rm(elt){elt.parentNode&&elt.parentNode.removeChild(elt)}function showTooltipFor(e,content,node){var tooltip=function(e,content){var tt=document.createElement("div");function position(e){if(!tt.parentNode)return CodeMirror.off(document,"mousemove",position);tt.style.top=Math.max(0,e.clientY-tt.offsetHeight-5)+"px",tt.style.left=e.clientX+5+"px"}return tt.className="CodeMirror-lint-tooltip",tt.appendChild(content.cloneNode(!0)),document.body.appendChild(tt),CodeMirror.on(document,"mousemove",position),position(e),null!=tt.style.opacity&&(tt.style.opacity=1),tt}(e,content);function hide(){CodeMirror.off(node,"mouseout",hide),tooltip&&(function(tt){tt.parentNode&&(null==tt.style.opacity&&rm(tt),tt.style.opacity=0,setTimeout(function(){rm(tt)},600))}(tooltip),tooltip=null)}var poll=setInterval(function(){if(tooltip)for(var n=node;;n=n.parentNode){if(n&&11==n.nodeType&&(n=n.host),n==document.body)return;if(!n){hide();break}}if(!tooltip)return clearInterval(poll)},400);CodeMirror.on(node,"mouseout",hide)}function LintState(cm,options,hasGutter){this.marked=[],this.options=options,this.timeout=null,this.hasGutter=hasGutter,this.onMouseOver=function(e){!function(cm,e){var target=e.target||e.srcElement;if(!/\bCodeMirror-lint-mark-/.test(target.className))return;for(var box=target.getBoundingClientRect(),x=(box.left+box.right)/2,y=(box.top+box.bottom)/2,spans=cm.findMarksAt(cm.coordsChar({left:x,top:y},"client")),annotations=[],i=0;i<spans.length;++i){var ann=spans[i].__annotation;ann&&annotations.push(ann)}annotations.length&&function(annotations,e){for(var target=e.target||e.srcElement,tooltip=document.createDocumentFragment(),i=0;i<annotations.length;i++){var ann=annotations[i];tooltip.appendChild(annotationTooltip(ann))}showTooltipFor(e,tooltip,target)}(annotations,e)}(cm,e)},this.waitingFor=0}function clearMarks(cm){var state=cm.state.lint;state.hasGutter&&cm.clearGutter(GUTTER_ID);for(var i=0;i<state.marked.length;++i)state.marked[i].clear();state.marked.length=0}function makeMarker(labels,severity,multiple,tooltips){var marker=document.createElement("div"),inner=marker;return marker.className="CodeMirror-lint-marker-"+severity,multiple&&((inner=marker.appendChild(document.createElement("div"))).className="CodeMirror-lint-marker-multiple"),0!=tooltips&&CodeMirror.on(inner,"mouseover",function(e){showTooltipFor(e,labels,inner)}),marker}function annotationTooltip(ann){var severity=ann.severity;severity||(severity="error");var tip=document.createElement("div");return tip.className="CodeMirror-lint-message-"+severity,void 0!==ann.messageHTML?tip.innerHTML=ann.messageHTML:tip.appendChild(document.createTextNode(ann.message)),tip}function startLinting(cm){var options=cm.state.lint.options,passOptions=options.options||options,getAnnotations=options.getAnnotations||cm.getHelper(CodeMirror.Pos(0,0),"lint");if(getAnnotations)if(options.async||getAnnotations.async)!function(cm,getAnnotations,passOptions){var state=cm.state.lint,id=++state.waitingFor;function abort(){id=-1,cm.off("change",abort)}cm.on("change",abort),getAnnotations(cm.getValue(),function(annotations,arg2){cm.off("change",abort),state.waitingFor==id&&(arg2&&annotations instanceof CodeMirror&&(annotations=arg2),cm.operation(function(){updateLinting(cm,annotations)}))},passOptions,cm)}(cm,getAnnotations,passOptions);else{var annotations=getAnnotations(cm.getValue(),passOptions,cm);if(!annotations)return;annotations.then?annotations.then(function(issues){cm.operation(function(){updateLinting(cm,issues)})}):cm.operation(function(){updateLinting(cm,annotations)})}}function updateLinting(cm,annotationsNotSorted){clearMarks(cm);for(var a,b,state=cm.state.lint,options=state.options,annotations=function(annotations){for(var lines=[],i=0;i<annotations.length;++i){var ann=annotations[i],line=ann.from.line;(lines[line]||(lines[line]=[])).push(ann)}return lines}(annotationsNotSorted),line=0;line<annotations.length;++line){var anns=annotations[line];if(anns){for(var maxSeverity=null,tipLabel=state.hasGutter&&document.createDocumentFragment(),i=0;i<anns.length;++i){var ann=anns[i],severity=ann.severity;severity||(severity="error"),b=severity,maxSeverity="error"==(a=maxSeverity)?a:b,options.formatAnnotation&&(ann=options.formatAnnotation(ann)),state.hasGutter&&tipLabel.appendChild(annotationTooltip(ann)),ann.to&&state.marked.push(cm.markText(ann.from,ann.to,{className:"CodeMirror-lint-mark-"+severity,__annotation:ann}))}state.hasGutter&&cm.setGutterMarker(line,GUTTER_ID,makeMarker(tipLabel,maxSeverity,1<anns.length,state.options.tooltips))}}options.onUpdateLinting&&options.onUpdateLinting(annotationsNotSorted,annotations,cm)}function onChange(cm){var state=cm.state.lint;state&&(clearTimeout(state.timeout),state.timeout=setTimeout(function(){startLinting(cm)},state.options.delay||500))}CodeMirror.defineOption("lint",!1,function(cm,val,old){if(old&&old!=CodeMirror.Init&&(clearMarks(cm),!1!==cm.state.lint.options.lintOnChange&&cm.off("change",onChange),CodeMirror.off(cm.getWrapperElement(),"mouseover",cm.state.lint.onMouseOver),clearTimeout(cm.state.lint.timeout),delete cm.state.lint),val){for(var gutters=cm.getOption("gutters"),hasLintGutter=!1,i=0;i<gutters.length;++i)gutters[i]==GUTTER_ID&&(hasLintGutter=!0);var state=cm.state.lint=new LintState(cm,function(_cm,options){return options instanceof Function?{getAnnotations:options}:(options&&!0!==options||(options={}),options)}(0,val),hasLintGutter);!1!==state.options.lintOnChange&&cm.on("change",onChange),0!=state.options.tooltips&&"gutter"!=state.options.tooltips&&CodeMirror.on(cm.getWrapperElement(),"mouseover",state.onMouseOver),startLinting(cm)}}),CodeMirror.defineExtension("performLint",function(){this.state.lint&&startLinting(this)})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],11:[function(require,module,exports){var mod;mod=function(CodeMirror){"use strict";function interpretLine(cm,string){var num=Number(string);return/^[-+]/.test(string)?cm.getCursor().line+num:num-1}CodeMirror.commands.jumpToLine=function(cm){var cur=cm.getCursor();!function(cm,text,shortText,deflt,f){cm.openDialog?cm.openDialog(text,f,{value:deflt,selectValueOnOpen:!0}):f(prompt(shortText,deflt))}(cm,function(cm){return cm.phrase("Jump to line:")+' <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">'+cm.phrase("(Use line:column or scroll% syntax)")+"</span>"}(cm),cm.phrase("Jump to line:"),cur.line+1+":"+cur.ch,function(posStr){var match;if(posStr)if(match=/^\s*([\+\-]?\d+)\s*\:\s*(\d+)\s*$/.exec(posStr))cm.setCursor(interpretLine(cm,match[1]),Number(match[2]));else if(match=/^\s*([\+\-]?\d+(\.\d+)?)\%\s*/.exec(posStr)){var line=Math.round(cm.lineCount()*Number(match[1])/100);/^[-+]/.test(match[1])&&(line=cur.line+line+1),cm.setCursor(line-1,cur.ch)}else(match=/^\s*\:?\s*([\+\-]?\d+)\s*/.exec(posStr))&&cm.setCursor(interpretLine(cm,match[1]),cur.ch)})},CodeMirror.keyMap.default["Alt-G"]="jumpToLine"},"object"==typeof exports&&"object"==typeof module?mod(require("../../lib/codemirror"),require("../dialog/dialog")):mod(CodeMirror)},{"../../lib/codemirror":15,"../dialog/dialog":3}],12:[function(require,module,exports){var mod;mod=function(CodeMirror){"use strict";function SearchState(){this.posFrom=this.posTo=this.lastQuery=this.query=null,this.overlay=null}function getSearchState(cm){return cm.state.search||(cm.state.search=new SearchState)}function queryCaseInsensitive(query){return"string"==typeof query&&query==query.toLowerCase()}function getSearchCursor(cm,query,pos){return cm.getSearchCursor(query,pos,{caseFold:queryCaseInsensitive(query),multiline:!0})}function dialog(cm,text,shortText,deflt,f){cm.openDialog?cm.openDialog(text,f,{value:deflt,selectValueOnOpen:!0}):f(prompt(shortText,deflt))}function parseString(string){return string.replace(/\\(.)/g,function(_,ch){return"n"==ch?"\n":"r"==ch?"\r":ch})}function parseQuery(query){var isRE=query.match(/^\/(.*)\/([a-z]*)$/);if(isRE)try{query=new RegExp(isRE[1],-1==isRE[2].indexOf("i")?"":"i")}catch(e){}else query=parseString(query);return("string"==typeof query?""==query:query.test(""))&&(query=/x^/),query}function startSearch(cm,state,query){state.queryText=query,state.query=parseQuery(query),cm.removeOverlay(state.overlay,queryCaseInsensitive(state.query)),state.overlay=function(query,caseInsensitive){return"string"==typeof query?query=new RegExp(query.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),caseInsensitive?"gi":"g"):query.global||(query=new RegExp(query.source,query.ignoreCase?"gi":"g")),{token:function(stream){query.lastIndex=stream.pos;var match=query.exec(stream.string);if(match&&match.index==stream.pos)return stream.pos+=match[0].length||1,"searching";match?stream.pos=match.index:stream.skipToEnd()}}}(state.query,queryCaseInsensitive(state.query)),cm.addOverlay(state.overlay),cm.showMatchesOnScrollbar&&(state.annotate&&(state.annotate.clear(),state.annotate=null),state.annotate=cm.showMatchesOnScrollbar(state.query,queryCaseInsensitive(state.query)))}function doSearch(cm,rev,persistent,immediate){var state=getSearchState(cm);if(state.query)return findNext(cm,rev);var q=cm.getSelection()||state.lastQuery;if(q instanceof RegExp&&"x^"==q.source&&(q=null),persistent&&cm.openDialog){var hiding=null,searchNext=function(query,event){CodeMirror.e_stop(event),query&&(query!=state.queryText&&(startSearch(cm,state,query),state.posFrom=state.posTo=cm.getCursor()),hiding&&(hiding.style.opacity=1),findNext(cm,event.shiftKey,function(_,to){var dialog;to.line<3&&document.querySelector&&(dialog=cm.display.wrapper.querySelector(".CodeMirror-dialog"))&&dialog.getBoundingClientRect().bottom-4>cm.cursorCoords(to,"window").top&&((hiding=dialog).style.opacity=.4)}))};!function(cm,text,deflt,onEnter,onKeyDown){cm.openDialog(text,onEnter,{value:deflt,selectValueOnOpen:!0,closeOnEnter:!1,onClose:function(){clearSearch(cm)},onKeyDown:onKeyDown})}(cm,getQueryDialog(cm),q,searchNext,function(event,query){var keyName=CodeMirror.keyName(event),extra=cm.getOption("extraKeys"),cmd=extra&&extra[keyName]||CodeMirror.keyMap[cm.getOption("keyMap")][keyName];"findNext"==cmd||"findPrev"==cmd||"findPersistentNext"==cmd||"findPersistentPrev"==cmd?(CodeMirror.e_stop(event),startSearch(cm,getSearchState(cm),query),cm.execCommand(cmd)):"find"!=cmd&&"findPersistent"!=cmd||(CodeMirror.e_stop(event),searchNext(query,event))}),immediate&&q&&(startSearch(cm,state,q),findNext(cm,rev))}else dialog(cm,getQueryDialog(cm),"Search for:",q,function(query){query&&!state.query&&cm.operation(function(){startSearch(cm,state,query),state.posFrom=state.posTo=cm.getCursor(),findNext(cm,rev)})})}function findNext(cm,rev,callback){cm.operation(function(){var state=getSearchState(cm),cursor=getSearchCursor(cm,state.query,rev?state.posFrom:state.posTo);(cursor.find(rev)||(cursor=getSearchCursor(cm,state.query,rev?CodeMirror.Pos(cm.lastLine()):CodeMirror.Pos(cm.firstLine(),0))).find(rev))&&(cm.setSelection(cursor.from(),cursor.to()),cm.scrollIntoView({from:cursor.from(),to:cursor.to()},20),state.posFrom=cursor.from(),state.posTo=cursor.to(),callback&&callback(cursor.from(),cursor.to()))})}function clearSearch(cm){cm.operation(function(){var state=getSearchState(cm);state.lastQuery=state.query,state.query&&(state.query=state.queryText=null,cm.removeOverlay(state.overlay),state.annotate&&(state.annotate.clear(),state.annotate=null))})}function getQueryDialog(cm){return'<span class="CodeMirror-search-label">'+cm.phrase("Search:")+'</span> <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">'+cm.phrase("(Use /re/ syntax for regexp search)")+"</span>"}function replaceAll(cm,query,text){cm.operation(function(){for(var cursor=getSearchCursor(cm,query);cursor.findNext();)if("string"!=typeof query){var match=cm.getRange(cursor.from(),cursor.to()).match(query);cursor.replace(text.replace(/\$(\d)/g,function(_,i){return match[i]}))}else cursor.replace(text)})}function replace(cm,all){if(!cm.getOption("readOnly")){var query=cm.getSelection()||getSearchState(cm).lastQuery,dialogText='<span class="CodeMirror-search-label">'+(all?cm.phrase("Replace all:"):cm.phrase("Replace:"))+"</span>";dialog(cm,dialogText+function(cm){return' <input type="text" style="width: 10em" class="CodeMirror-search-field"/> <span style="color: #888" class="CodeMirror-search-hint">'+cm.phrase("(Use /re/ syntax for regexp search)")+"</span>"}(cm),dialogText,query,function(query){query&&(query=parseQuery(query),dialog(cm,function(cm){return'<span class="CodeMirror-search-label">'+cm.phrase("With:")+'</span> <input type="text" style="width: 10em" class="CodeMirror-search-field"/>'}(cm),cm.phrase("Replace with:"),"",function(text){if(text=parseString(text),all)replaceAll(cm,query,text);else{clearSearch(cm);var cursor=getSearchCursor(cm,query,cm.getCursor("from")),advance=function(){var match,start=cursor.from();!(match=cursor.findNext())&&(cursor=getSearchCursor(cm,query),!(match=cursor.findNext())||start&&cursor.from().line==start.line&&cursor.from().ch==start.ch)||(cm.setSelection(cursor.from(),cursor.to()),cm.scrollIntoView({from:cursor.from(),to:cursor.to()}),function(cm,text,shortText,fs){cm.openConfirm?cm.openConfirm(text,fs):confirm(shortText)&&fs[0]()}(cm,function(cm){return'<span class="CodeMirror-search-label">'+cm.phrase("Replace?")+"</span> <button>"+cm.phrase("Yes")+"</button> <button>"+cm.phrase("No")+"</button> <button>"+cm.phrase("All")+"</button> <button>"+cm.phrase("Stop")+"</button> "}(cm),cm.phrase("Replace?"),[function(){doReplace(match)},advance,function(){replaceAll(cm,query,text)}]))},doReplace=function(match){cursor.replace("string"==typeof query?text:text.replace(/\$(\d)/g,function(_,i){return match[i]})),advance()};advance()}}))})}}CodeMirror.commands.find=function(cm){clearSearch(cm),doSearch(cm)},CodeMirror.commands.findPersistent=function(cm){clearSearch(cm),doSearch(cm,!1,!0)},CodeMirror.commands.findPersistentNext=function(cm){doSearch(cm,!1,!0,!0)},CodeMirror.commands.findPersistentPrev=function(cm){doSearch(cm,!0,!0,!0)},CodeMirror.commands.findNext=doSearch,CodeMirror.commands.findPrev=function(cm){doSearch(cm,!0)},CodeMirror.commands.clearSearch=clearSearch,CodeMirror.commands.replace=replace,CodeMirror.commands.replaceAll=function(cm){replace(cm,!0)}},"object"==typeof exports&&"object"==typeof module?mod(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):mod(CodeMirror)},{"../../lib/codemirror":15,"../dialog/dialog":3,"./searchcursor":13}],13:[function(require,module,exports){(function(CodeMirror){"use strict";var doFold,noFold,Pos=CodeMirror.Pos;function ensureFlags(regexp,flags){for(var current=function(regexp){var flags=regexp.flags;return null!=flags?flags:(regexp.ignoreCase?"i":"")+(regexp.global?"g":"")+(regexp.multiline?"m":"")}(regexp),target=current,i=0;i<flags.length;i++)-1==target.indexOf(flags.charAt(i))&&(target+=flags.charAt(i));return current==target?regexp:new RegExp(regexp.source,target)}function searchRegexpForward(doc,regexp,start){regexp=ensureFlags(regexp,"g");for(var line=start.line,ch=start.ch,last=doc.lastLine();line<=last;line++,ch=0){regexp.lastIndex=ch;var string=doc.getLine(line),match=regexp.exec(string);if(match)return{from:Pos(line,match.index),to:Pos(line,match.index+match[0].length),match:match}}}function lastMatchIn(string,regexp){for(var match,cutOff=0;;){regexp.lastIndex=cutOff;var newMatch=regexp.exec(string);if(!newMatch)return match;if((cutOff=(match=newMatch).index+(match[0].length||1))==string.length)return match}}function adjustPos(orig,folded,pos,foldFunc){if(orig.length==folded.length)return pos;for(var min=0,max=pos+Math.max(0,orig.length-folded.length);;){if(min==max)return min;var mid=min+max>>1,len=foldFunc(orig.slice(0,mid)).length;if(len==pos)return mid;pos<len?max=mid:min=1+mid}}function SearchCursor(doc,query,pos,options){var caseFold;this.atOccurrence=!1,this.doc=doc,pos=pos?doc.clipPos(pos):Pos(0,0),this.pos={from:pos,to:pos},"object"==typeof options?caseFold=options.caseFold:(caseFold=options,options=null),"string"==typeof query?(null==caseFold&&(caseFold=!1),this.matches=function(reverse,pos){return(reverse?function(doc,query,start,caseFold){if(!query.length)return null;var fold=caseFold?doFold:noFold,lines=fold(query).split(/\r|\n\r?/);search:for(var line=start.line,ch=start.ch,first=doc.firstLine()-1+lines.length;first<=line;line--,ch=-1){var orig=doc.getLine(line);-1<ch&&(orig=orig.slice(0,ch));var string=fold(orig);if(1==lines.length){var found=string.lastIndexOf(lines[0]);if(-1==found)continue search;return{from:Pos(line,adjustPos(orig,string,found,fold)),to:Pos(line,adjustPos(orig,string,found+lines[0].length,fold))}}var lastLine=lines[lines.length-1];if(string.slice(0,lastLine.length)==lastLine){var i=1;for(start=line-lines.length+1;i<lines.length-1;i++)if(fold(doc.getLine(start+i))!=lines[i])continue search;var top=doc.getLine(line+1-lines.length),topString=fold(top);if(topString.slice(topString.length-lines[0].length)==lines[0])return{from:Pos(line+1-lines.length,adjustPos(top,topString,top.length-lines[0].length,fold)),to:Pos(line,adjustPos(orig,string,lastLine.length,fold))}}}}:function(doc,query,start,caseFold){if(!query.length)return null;var fold=caseFold?doFold:noFold,lines=fold(query).split(/\r|\n\r?/);search:for(var line=start.line,ch=start.ch,last=doc.lastLine()+1-lines.length;line<=last;line++,ch=0){var orig=doc.getLine(line).slice(ch),string=fold(orig);if(1==lines.length){var found=string.indexOf(lines[0]);if(-1==found)continue search;return start=adjustPos(orig,string,found,fold)+ch,{from:Pos(line,adjustPos(orig,string,found,fold)+ch),to:Pos(line,adjustPos(orig,string,found+lines[0].length,fold)+ch)}}var cutFrom=string.length-lines[0].length;if(string.slice(cutFrom)==lines[0]){for(var i=1;i<lines.length-1;i++)if(fold(doc.getLine(line+i))!=lines[i])continue search;var end=doc.getLine(line+lines.length-1),endString=fold(end),lastLine=lines[lines.length-1];if(endString.slice(0,lastLine.length)==lastLine)return{from:Pos(line,adjustPos(orig,string,cutFrom,fold)+ch),to:Pos(line+lines.length-1,adjustPos(end,endString,lastLine.length,fold))}}}})(doc,query,pos,caseFold)}):(query=ensureFlags(query,"gm"),options&&!1===options.multiline?this.matches=function(reverse,pos){return(reverse?function(doc,regexp,start){regexp=ensureFlags(regexp,"g");for(var line=start.line,ch=start.ch,first=doc.firstLine();first<=line;line--,ch=-1){var string=doc.getLine(line);-1<ch&&(string=string.slice(0,ch));var match=lastMatchIn(string,regexp);if(match)return{from:Pos(line,match.index),to:Pos(line,match.index+match[0].length),match:match}}}:searchRegexpForward)(doc,query,pos)}:this.matches=function(reverse,pos){return(reverse?function(doc,regexp,start){regexp=ensureFlags(regexp,"gm");for(var string,chunk=1,line=start.line,first=doc.firstLine();first<=line;){for(var i=0;i<chunk;i++){var curLine=doc.getLine(line--);string=null==string?curLine.slice(0,start.ch):curLine+"\n"+string}chunk*=2;var match=lastMatchIn(string,regexp);if(match){var before=string.slice(0,match.index).split("\n"),inside=match[0].split("\n"),startLine=line+before.length,startCh=before[before.length-1].length;return{from:Pos(startLine,startCh),to:Pos(startLine+inside.length-1,1==inside.length?startCh+inside[0].length:inside[inside.length-1].length),match:match}}}}:function(doc,regexp,start){if(!function(regexp){return/\\s|\\n|\n|\\W|\\D|\[\^/.test(regexp.source)}(regexp))return searchRegexpForward(doc,regexp,start);regexp=ensureFlags(regexp,"gm");for(var string,chunk=1,line=start.line,last=doc.lastLine();line<=last;){for(var i=0;i<chunk&&!(last<line);i++){var curLine=doc.getLine(line++);string=null==string?curLine:string+"\n"+curLine}chunk*=2,regexp.lastIndex=start.ch;var match=regexp.exec(string);if(match){var before=string.slice(0,match.index).split("\n"),inside=match[0].split("\n"),startLine=start.line+before.length-1,startCh=before[before.length-1].length;return{from:Pos(startLine,startCh),to:Pos(startLine+inside.length-1,1==inside.length?startCh+inside[0].length:inside[inside.length-1].length),match:match}}}})(doc,query,pos)})}noFold=String.prototype.normalize?(doFold=function(str){return str.normalize("NFD").toLowerCase()},function(str){return str.normalize("NFD")}):(doFold=function(str){return str.toLowerCase()},function(str){return str}),SearchCursor.prototype={findNext:function(){return this.find(!1)},findPrevious:function(){return this.find(!0)},find:function(reverse){for(var result=this.matches(reverse,this.doc.clipPos(reverse?this.pos.from:this.pos.to));result&&0==CodeMirror.cmpPos(result.from,result.to);)reverse?result.from.ch?result.from=Pos(result.from.line,result.from.ch-1):result=result.from.line==this.doc.firstLine()?null:this.matches(reverse,this.doc.clipPos(Pos(result.from.line-1))):result.to.ch<this.doc.getLine(result.to.line).length?result.to=Pos(result.to.line,result.to.ch+1):result=result.to.line==this.doc.lastLine()?null:this.matches(reverse,Pos(result.to.line+1,0));if(result)return this.pos=result,this.atOccurrence=!0,this.pos.match||!0;var end=Pos(reverse?this.doc.firstLine():this.doc.lastLine()+1,0);return this.pos={from:end,to:end},this.atOccurrence=!1},from:function(){if(this.atOccurrence)return this.pos.from},to:function(){if(this.atOccurrence)return this.pos.to},replace:function(newText,origin){if(this.atOccurrence){var lines=CodeMirror.splitLines(newText);this.doc.replaceRange(lines,this.pos.from,this.pos.to,origin),this.pos.to=Pos(this.pos.from.line+lines.length-1,lines[lines.length-1].length+(1==lines.length?this.pos.from.ch:0))}}},CodeMirror.defineExtension("getSearchCursor",function(query,pos,caseFold){return new SearchCursor(this.doc,query,pos,caseFold)}),CodeMirror.defineDocExtension("getSearchCursor",function(query,pos,caseFold){return new SearchCursor(this,query,pos,caseFold)}),CodeMirror.defineExtension("selectMatches",function(query,caseFold){for(var ranges=[],cur=this.getSearchCursor(query,this.getCursor("from"),caseFold);cur.findNext()&&!(0<CodeMirror.cmpPos(cur.to(),this.getCursor("to")));)ranges.push({anchor:cur.from(),head:cur.to()});ranges.length&&this.setSelections(ranges,0)})})("object"==typeof exports&&"object"==typeof module?require("../../lib/codemirror"):CodeMirror)},{"../../lib/codemirror":15}],14:[function(require,module,exports){var mod;mod=function(CodeMirror){"use strict";var cmds=CodeMirror.commands,Pos=CodeMirror.Pos;function moveSubword(cm,dir){cm.extendSelectionsBy(function(range){return cm.display.shift||cm.doc.extend||range.empty()?function(doc,start,dir){if(dir<0&&0==start.ch)return doc.clipPos(Pos(start.line-1));var line=doc.getLine(start.line);if(0<dir&&start.ch>=line.length)return doc.clipPos(Pos(start.line+1,0));for(var type,state="start",pos=start.ch,e=dir<0?0:line.length,i=0;pos!=e;pos+=dir,i++){var next=line.charAt(dir<0?pos-1:pos),cat="_"!=next&&CodeMirror.isWordChar(next)?"w":"o";if("w"==cat&&next.toUpperCase()==next&&(cat="W"),"start"==state)"o"!=cat&&(state="in",type=cat);else if("in"==state&&type!=cat){if("w"==type&&"W"==cat&&dir<0&&pos--,"W"==type&&"w"==cat&&0<dir){type="w";continue}break}}return Pos(start.line,pos)}(cm.doc,range.head,dir):dir<0?range.from():range.to()})}function insertLine(cm,above){if(cm.isReadOnly())return CodeMirror.Pass;cm.operation(function(){for(var len=cm.listSelections().length,newSelection=[],last=-1,i=0;i<len;i++){var head=cm.listSelections()[i].head;if(!(head.line<=last)){var at=Pos(head.line+(above?0:1),0);cm.replaceRange("\n",at,null,"+insertLine"),cm.indentLine(at.line,null,!0),newSelection.push({head:at,anchor:at}),last=head.line+1}}cm.setSelections(newSelection)}),cm.execCommand("indentAuto")}function wordAt(cm,pos){for(var start=pos.ch,end=start,line=cm.getLine(pos.line);start&&CodeMirror.isWordChar(line.charAt(start-1));)--start;for(;end<line.length&&CodeMirror.isWordChar(line.charAt(end));)++end;return{from:Pos(pos.line,start),to:Pos(pos.line,end),word:line.slice(start,end)}}function addCursorToSelection(cm,dir){for(var ranges=cm.listSelections(),newRanges=[],i=0;i<ranges.length;i++){var range=ranges[i],newAnchor=cm.findPosV(range.anchor,dir,"line",range.anchor.goalColumn),newHead=cm.findPosV(range.head,dir,"line",range.head.goalColumn);newAnchor.goalColumn=null!=range.anchor.goalColumn?range.anchor.goalColumn:cm.cursorCoords(range.anchor,"div").left,newHead.goalColumn=null!=range.head.goalColumn?range.head.goalColumn:cm.cursorCoords(range.head,"div").left;var newRange={anchor:newAnchor,head:newHead};newRanges.push(range),newRanges.push(newRange)}cm.setSelections(newRanges)}cmds.goSubwordLeft=function(cm){moveSubword(cm,-1)},cmds.goSubwordRight=function(cm){moveSubword(cm,1)},cmds.scrollLineUp=function(cm){var info=cm.getScrollInfo();if(!cm.somethingSelected()){var visibleBottomLine=cm.lineAtHeight(info.top+info.clientHeight,"local");cm.getCursor().line>=visibleBottomLine&&cm.execCommand("goLineUp")}cm.scrollTo(null,info.top-cm.defaultTextHeight())},cmds.scrollLineDown=function(cm){var info=cm.getScrollInfo();if(!cm.somethingSelected()){var visibleTopLine=cm.lineAtHeight(info.top,"local")+1;cm.getCursor().line<=visibleTopLine&&cm.execCommand("goLineDown")}cm.scrollTo(null,info.top+cm.defaultTextHeight())},cmds.splitSelectionByLine=function(cm){for(var ranges=cm.listSelections(),lineRanges=[],i=0;i<ranges.length;i++)for(var from=ranges[i].from(),to=ranges[i].to(),line=from.line;line<=to.line;++line)to.line>from.line&&line==to.line&&0==to.ch||lineRanges.push({anchor:line==from.line?from:Pos(line,0),head:line==to.line?to:Pos(line)});cm.setSelections(lineRanges,0)},cmds.singleSelectionTop=function(cm){var range=cm.listSelections()[0];cm.setSelection(range.anchor,range.head,{scroll:!1})},cmds.selectLine=function(cm){for(var ranges=cm.listSelections(),extended=[],i=0;i<ranges.length;i++){var range=ranges[i];extended.push({anchor:Pos(range.from().line,0),head:Pos(range.to().line+1,0)})}cm.setSelections(extended)},cmds.insertLineAfter=function(cm){return insertLine(cm,!1)},cmds.insertLineBefore=function(cm){return insertLine(cm,!0)},cmds.selectNextOccurrence=function(cm){var from=cm.getCursor("from"),to=cm.getCursor("to"),fullWord=cm.state.sublimeFindFullWord==cm.doc.sel;if(0==CodeMirror.cmpPos(from,to)){var word=wordAt(cm,from);if(!word.word)return;cm.setSelection(word.from,word.to),fullWord=!0}else{var text=cm.getRange(from,to),query=fullWord?new RegExp("\\b"+text+"\\b"):text,cur=cm.getSearchCursor(query,to),found=cur.findNext();if(found||(found=(cur=cm.getSearchCursor(query,Pos(cm.firstLine(),0))).findNext()),!found||function(ranges,from,to){for(var i=0;i<ranges.length;i++)if(ranges[i].from()==from&&ranges[i].to()==to)return!0;return!1}(cm.listSelections(),cur.from(),cur.to()))return CodeMirror.Pass;cm.addSelection(cur.from(),cur.to())}fullWord&&(cm.state.sublimeFindFullWord=cm.doc.sel)},cmds.addCursorToPrevLine=function(cm){addCursorToSelection(cm,-1)},cmds.addCursorToNextLine=function(cm){addCursorToSelection(cm,1)};function selectBetweenBrackets(cm){for(var ranges=cm.listSelections(),newRanges=[],i=0;i<ranges.length;i++){var range=ranges[i],pos=range.head,opening=cm.scanForBracket(pos,-1);if(!opening)return!1;for(;;){var closing=cm.scanForBracket(pos,1);if(!closing)return!1;if(closing.ch=="(){}[]".charAt("(){}[]".indexOf(opening.ch)+1)){var startPos=Pos(opening.pos.line,opening.pos.ch+1);if(0!=CodeMirror.cmpPos(startPos,range.from())||0!=CodeMirror.cmpPos(closing.pos,range.to())){newRanges.push({anchor:startPos,head:closing.pos});break}if(!(opening=cm.scanForBracket(opening.pos,-1)))return!1}pos=Pos(closing.pos.line,closing.pos.ch+1)}}return cm.setSelections(newRanges),!0}function sortLines(cm,caseSensitive){if(cm.isReadOnly())return CodeMirror.Pass;for(var selected,ranges=cm.listSelections(),toSort=[],i=0;i<ranges.length;i++){var range=ranges[i];if(!range.empty()){for(var from=range.from().line,to=range.to().line;i<ranges.length-1&&ranges[i+1].from().line==to;)to=ranges[++i].to().line;ranges[i].to().ch||to--,toSort.push(from,to)}}toSort.length?selected=!0:toSort.push(cm.firstLine(),cm.lastLine()),cm.operation(function(){for(var ranges=[],i=0;i<toSort.length;i+=2){var from=toSort[i],to=toSort[i+1],start=Pos(from,0),end=Pos(to),lines=cm.getRange(start,end,!1);caseSensitive?lines.sort():lines.sort(function(a,b){var au=a.toUpperCase(),bu=b.toUpperCase();return au!=bu&&(a=au,b=bu),a<b?-1:a==b?0:1}),cm.replaceRange(lines,start,end),selected&&ranges.push({anchor:start,head:Pos(to+1,0)})}selected&&cm.setSelections(ranges,0)})}function modifyWordOrSelection(cm,mod){cm.operation(function(){for(var ranges=cm.listSelections(),indices=[],replacements=[],i=0;i<ranges.length;i++){(range=ranges[i]).empty()?(indices.push(i),replacements.push("")):replacements.push(mod(cm.getRange(range.from(),range.to())))}cm.replaceSelections(replacements,"around","case");var at;for(i=indices.length-1;0<=i;i--){var range=ranges[indices[i]];if(!(at&&0<CodeMirror.cmpPos(range.head,at))){var word=wordAt(cm,range.head);at=word.from,cm.replaceRange(mod(word.word),word.from,word.to)}}})}function getTarget(cm){var from=cm.getCursor("from"),to=cm.getCursor("to");if(0==CodeMirror.cmpPos(from,to)){var word=wordAt(cm,from);if(!word.word)return;from=word.from,to=word.to}return{from:from,to:to,query:cm.getRange(from,to),word:word}}function findAndGoTo(cm,forward){var target=getTarget(cm);if(target){var query=target.query,cur=cm.getSearchCursor(query,forward?target.to:target.from);(forward?cur.findNext():cur.findPrevious())?cm.setSelection(cur.from(),cur.to()):(cur=cm.getSearchCursor(query,forward?Pos(cm.firstLine(),0):cm.clipPos(Pos(cm.lastLine()))),(forward?cur.findNext():cur.findPrevious())?cm.setSelection(cur.from(),cur.to()):target.word&&cm.setSelection(target.from,target.to))}}cmds.selectScope=function(cm){selectBetweenBrackets(cm)||cm.execCommand("selectAll")},cmds.selectBetweenBrackets=function(cm){if(!selectBetweenBrackets(cm))return CodeMirror.Pass},cmds.goToBracket=function(cm){cm.extendSelectionsBy(function(range){var next=cm.scanForBracket(range.head,1);if(next&&0!=CodeMirror.cmpPos(next.pos,range.head))return next.pos;var prev=cm.scanForBracket(range.head,-1);return prev&&Pos(prev.pos.line,prev.pos.ch+1)||range.head})},cmds.swapLineUp=function(cm){if(cm.isReadOnly())return CodeMirror.Pass;for(var ranges=cm.listSelections(),linesToMove=[],at=cm.firstLine()-1,newSels=[],i=0;i<ranges.length;i++){var range=ranges[i],from=range.from().line-1,to=range.to().line;newSels.push({anchor:Pos(range.anchor.line-1,range.anchor.ch),head:Pos(range.head.line-1,range.head.ch)}),0!=range.to().ch||range.empty()||--to,at<from?linesToMove.push(from,to):linesToMove.length&&(linesToMove[linesToMove.length-1]=to),at=to}cm.operation(function(){for(var i=0;i<linesToMove.length;i+=2){var from=linesToMove[i],to=linesToMove[i+1],line=cm.getLine(from);cm.replaceRange("",Pos(from,0),Pos(from+1,0),"+swapLine"),to>cm.lastLine()?cm.replaceRange("\n"+line,Pos(cm.lastLine()),null,"+swapLine"):cm.replaceRange(line+"\n",Pos(to,0),null,"+swapLine")}cm.setSelections(newSels),cm.scrollIntoView()})},cmds.swapLineDown=function(cm){if(cm.isReadOnly())return CodeMirror.Pass;for(var ranges=cm.listSelections(),linesToMove=[],at=cm.lastLine()+1,i=ranges.length-1;0<=i;i--){var range=ranges[i],from=range.to().line+1,to=range.from().line;0!=range.to().ch||range.empty()||from--,from<at?linesToMove.push(from,to):linesToMove.length&&(linesToMove[linesToMove.length-1]=to),at=to}cm.operation(function(){for(var i=linesToMove.length-2;0<=i;i-=2){var from=linesToMove[i],to=linesToMove[i+1],line=cm.getLine(from);from==cm.lastLine()?cm.replaceRange("",Pos(from-1),Pos(from),"+swapLine"):cm.replaceRange("",Pos(from,0),Pos(from+1,0),"+swapLine"),cm.replaceRange(line+"\n",Pos(to,0),null,"+swapLine")}cm.scrollIntoView()})},cmds.toggleCommentIndented=function(cm){cm.toggleComment({indent:!0})},cmds.joinLines=function(cm){for(var ranges=cm.listSelections(),joined=[],i=0;i<ranges.length;i++){for(var range=ranges[i],from=range.from(),start=from.line,end=range.to().line;i<ranges.length-1&&ranges[i+1].from().line==end;)end=ranges[++i].to().line;joined.push({start:start,end:end,anchor:!range.empty()&&from})}cm.operation(function(){for(var offset=0,ranges=[],i=0;i<joined.length;i++){for(var head,obj=joined[i],anchor=obj.anchor&&Pos(obj.anchor.line-offset,obj.anchor.ch),line=obj.start;line<=obj.end;line++){var actual=line-offset;line==obj.end&&(head=Pos(actual,cm.getLine(actual).length+1)),actual<cm.lastLine()&&(cm.replaceRange(" ",Pos(actual),Pos(1+actual,/^\s*/.exec(cm.getLine(1+actual))[0].length)),++offset)}ranges.push({anchor:anchor||head,head:head})}cm.setSelections(ranges,0)})},cmds.duplicateLine=function(cm){cm.operation(function(){for(var rangeCount=cm.listSelections().length,i=0;i<rangeCount;i++){var range=cm.listSelections()[i];range.empty()?cm.replaceRange(cm.getLine(range.head.line)+"\n",Pos(range.head.line,0)):cm.replaceRange(cm.getRange(range.from(),range.to()),range.from())}cm.scrollIntoView()})},cmds.sortLines=function(cm){sortLines(cm,!0)},cmds.sortLinesInsensitive=function(cm){sortLines(cm,!1)},cmds.nextBookmark=function(cm){var marks=cm.state.sublimeBookmarks;if(marks)for(;marks.length;){var current=marks.shift(),found=current.find();if(found)return marks.push(current),cm.setSelection(found.from,found.to)}},cmds.prevBookmark=function(cm){var marks=cm.state.sublimeBookmarks;if(marks)for(;marks.length;){marks.unshift(marks.pop());var found=marks[marks.length-1].find();if(found)return cm.setSelection(found.from,found.to);marks.pop()}},cmds.toggleBookmark=function(cm){for(var ranges=cm.listSelections(),marks=cm.state.sublimeBookmarks||(cm.state.sublimeBookmarks=[]),i=0;i<ranges.length;i++){for(var from=ranges[i].from(),to=ranges[i].to(),found=ranges[i].empty()?cm.findMarksAt(from):cm.findMarks(from,to),j=0;j<found.length;j++)if(found[j].sublimeBookmark){found[j].clear();for(var k=0;k<marks.length;k++)marks[k]==found[j]&&marks.splice(k--,1);break}j==found.length&&marks.push(cm.markText(from,to,{sublimeBookmark:!0,clearWhenEmpty:!1}))}},cmds.clearBookmarks=function(cm){var marks=cm.state.sublimeBookmarks;if(marks)for(var i=0;i<marks.length;i++)marks[i].clear();marks.length=0},cmds.selectBookmarks=function(cm){var marks=cm.state.sublimeBookmarks,ranges=[];if(marks)for(var i=0;i<marks.length;i++){var found=marks[i].find();found?ranges.push({anchor:found.from,head:found.to}):marks.splice(i--,0)}ranges.length&&cm.setSelections(ranges,0)},cmds.smartBackspace=function(cm){if(cm.somethingSelected())return CodeMirror.Pass;cm.operation(function(){for(var cursors=cm.listSelections(),indentUnit=cm.getOption("indentUnit"),i=cursors.length-1;0<=i;i--){var cursor=cursors[i].head,toStartOfLine=cm.getRange({line:cursor.line,ch:0},cursor),column=CodeMirror.countColumn(toStartOfLine,null,cm.getOption("tabSize")),deletePos=cm.findPosH(cursor,-1,"char",!1);if(toStartOfLine&&!/\S/.test(toStartOfLine)&&column%indentUnit==0){var prevIndent=new Pos(cursor.line,CodeMirror.findColumn(toStartOfLine,column-indentUnit,indentUnit));prevIndent.ch!=cursor.ch&&(deletePos=prevIndent)}cm.replaceRange("",deletePos,cursor,"+delete")}})},cmds.delLineRight=function(cm){cm.operation(function(){for(var ranges=cm.listSelections(),i=ranges.length-1;0<=i;i--)cm.replaceRange("",ranges[i].anchor,Pos(ranges[i].to().line),"+delete");cm.scrollIntoView()})},cmds.upcaseAtCursor=function(cm){modifyWordOrSelection(cm,function(str){return str.toUpperCase()})},cmds.downcaseAtCursor=function(cm){modifyWordOrSelection(cm,function(str){return str.toLowerCase()})},cmds.setSublimeMark=function(cm){cm.state.sublimeMark&&cm.state.sublimeMark.clear(),cm.state.sublimeMark=cm.setBookmark(cm.getCursor())},cmds.selectToSublimeMark=function(cm){var found=cm.state.sublimeMark&&cm.state.sublimeMark.find();found&&cm.setSelection(cm.getCursor(),found)},cmds.deleteToSublimeMark=function(cm){var found=cm.state.sublimeMark&&cm.state.sublimeMark.find();if(found){var from=cm.getCursor(),to=found;if(0<CodeMirror.cmpPos(from,to)){var tmp=to;to=from,from=tmp}cm.state.sublimeKilled=cm.getRange(from,to),cm.replaceRange("",from,to)}},cmds.swapWithSublimeMark=function(cm){var found=cm.state.sublimeMark&&cm.state.sublimeMark.find();found&&(cm.state.sublimeMark.clear(),cm.state.sublimeMark=cm.setBookmark(cm.getCursor()),cm.setCursor(found))},cmds.sublimeYank=function(cm){null!=cm.state.sublimeKilled&&cm.replaceSelection(cm.state.sublimeKilled,null,"paste")},cmds.showInCenter=function(cm){var pos=cm.cursorCoords(null,"local");cm.scrollTo(null,(pos.top+pos.bottom)/2-cm.getScrollInfo().clientHeight/2)},cmds.findUnder=function(cm){findAndGoTo(cm,!0)},cmds.findUnderPrevious=function(cm){findAndGoTo(cm,!1)},cmds.findAllUnder=function(cm){var target=getTarget(cm);if(target){for(var cur=cm.getSearchCursor(target.query),matches=[],primaryIndex=-1;cur.findNext();)matches.push({anchor:cur.from(),head:cur.to()}),cur.from().line<=target.from.line&&cur.from().ch<=target.from.ch&&primaryIndex++;cm.setSelections(matches,primaryIndex)}};var keyMap=CodeMirror.keyMap;keyMap.macSublime={"Cmd-Left":"goLineStartSmart","Shift-Tab":"indentLess","Shift-Ctrl-K":"deleteLine","Alt-Q":"wrapLines","Ctrl-Left":"goSubwordLeft","Ctrl-Right":"goSubwordRight","Ctrl-Alt-Up":"scrollLineUp","Ctrl-Alt-Down":"scrollLineDown","Cmd-L":"selectLine","Shift-Cmd-L":"splitSelectionByLine",Esc:"singleSelectionTop","Cmd-Enter":"insertLineAfter","Shift-Cmd-Enter":"insertLineBefore","Cmd-D":"selectNextOccurrence","Shift-Cmd-Space":"selectScope","Shift-Cmd-M":"selectBetweenBrackets","Cmd-M":"goToBracket","Cmd-Ctrl-Up":"swapLineUp","Cmd-Ctrl-Down":"swapLineDown","Cmd-/":"toggleCommentIndented","Cmd-J":"joinLines","Shift-Cmd-D":"duplicateLine",F5:"sortLines","Cmd-F5":"sortLinesInsensitive",F2:"nextBookmark","Shift-F2":"prevBookmark","Cmd-F2":"toggleBookmark","Shift-Cmd-F2":"clearBookmarks","Alt-F2":"selectBookmarks",Backspace:"smartBackspace","Cmd-K Cmd-K":"delLineRight","Cmd-K Cmd-U":"upcaseAtCursor","Cmd-K Cmd-L":"downcaseAtCursor","Cmd-K Cmd-Space":"setSublimeMark","Cmd-K Cmd-A":"selectToSublimeMark","Cmd-K Cmd-W":"deleteToSublimeMark","Cmd-K Cmd-X":"swapWithSublimeMark","Cmd-K Cmd-Y":"sublimeYank","Cmd-K Cmd-C":"showInCenter","Cmd-K Cmd-G":"clearBookmarks","Cmd-K Cmd-Backspace":"delLineLeft","Cmd-K Cmd-0":"unfoldAll","Cmd-K Cmd-J":"unfoldAll","Ctrl-Shift-Up":"addCursorToPrevLine","Ctrl-Shift-Down":"addCursorToNextLine","Cmd-F3":"findUnder","Shift-Cmd-F3":"findUnderPrevious","Alt-F3":"findAllUnder","Shift-Cmd-[":"fold","Shift-Cmd-]":"unfold","Cmd-I":"findIncremental","Shift-Cmd-I":"findIncrementalReverse","Cmd-H":"replace",F3:"findNext","Shift-F3":"findPrev",fallthrough:"macDefault"},CodeMirror.normalizeKeyMap(keyMap.macSublime),keyMap.pcSublime={"Shift-Tab":"indentLess","Shift-Ctrl-K":"deleteLine","Alt-Q":"wrapLines","Ctrl-T":"transposeChars","Alt-Left":"goSubwordLeft","Alt-Right":"goSubwordRight","Ctrl-Up":"scrollLineUp","Ctrl-Down":"scrollLineDown","Ctrl-L":"selectLine","Shift-Ctrl-L":"splitSelectionByLine",Esc:"singleSelectionTop","Ctrl-Enter":"insertLineAfter","Shift-Ctrl-Enter":"insertLineBefore","Ctrl-D":"selectNextOccurrence","Shift-Ctrl-Space":"selectScope","Shift-Ctrl-M":"selectBetweenBrackets","Ctrl-M":"goToBracket","Shift-Ctrl-Up":"swapLineUp","Shift-Ctrl-Down":"swapLineDown","Ctrl-/":"toggleCommentIndented","Ctrl-J":"joinLines","Shift-Ctrl-D":"duplicateLine",F9:"sortLines","Ctrl-F9":"sortLinesInsensitive",F2:"nextBookmark","Shift-F2":"prevBookmark","Ctrl-F2":"toggleBookmark","Shift-Ctrl-F2":"clearBookmarks","Alt-F2":"selectBookmarks",Backspace:"smartBackspace","Ctrl-K Ctrl-K":"delLineRight","Ctrl-K Ctrl-U":"upcaseAtCursor","Ctrl-K Ctrl-L":"downcaseAtCursor","Ctrl-K Ctrl-Space":"setSublimeMark","Ctrl-K Ctrl-A":"selectToSublimeMark","Ctrl-K Ctrl-W":"deleteToSublimeMark","Ctrl-K Ctrl-X":"swapWithSublimeMark","Ctrl-K Ctrl-Y":"sublimeYank","Ctrl-K Ctrl-C":"showInCenter","Ctrl-K Ctrl-G":"clearBookmarks","Ctrl-K Ctrl-Backspace":"delLineLeft","Ctrl-K Ctrl-0":"unfoldAll","Ctrl-K Ctrl-J":"unfoldAll","Ctrl-Alt-Up":"addCursorToPrevLine","Ctrl-Alt-Down":"addCursorToNextLine","Ctrl-F3":"findUnder","Shift-Ctrl-F3":"findUnderPrevious","Alt-F3":"findAllUnder","Shift-Ctrl-[":"fold","Shift-Ctrl-]":"unfold","Ctrl-I":"findIncremental","Shift-Ctrl-I":"findIncrementalReverse","Ctrl-H":"replace",F3:"findNext","Shift-F3":"findPrev",fallthrough:"pcDefault"},CodeMirror.normalizeKeyMap(keyMap.pcSublime);var mac=keyMap.default==keyMap.macDefault;keyMap.sublime=mac?keyMap.macSublime:keyMap.pcSublime},"object"==typeof exports&&"object"==typeof module?mod(require("../lib/codemirror"),require("../addon/search/searchcursor"),require("../addon/edit/matchbrackets")):mod(CodeMirror)},{"../addon/edit/matchbrackets":5,"../addon/search/searchcursor":13,"../lib/codemirror":15}],15:[function(require,module,exports){var global,factory;global=this,factory=function(){"use strict";var userAgent=navigator.userAgent,platform=navigator.platform,gecko=/gecko\/\d/i.test(userAgent),ie_upto10=/MSIE \d/.test(userAgent),ie_11up=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(userAgent),edge=/Edge\/(\d+)/.exec(userAgent),ie=ie_upto10||ie_11up||edge,ie_version=ie&&(ie_upto10?document.documentMode||6:+(edge||ie_11up)[1]),webkit=!edge&&/WebKit\//.test(userAgent),qtwebkit=webkit&&/Qt\/\d+\.\d+/.test(userAgent),chrome=!edge&&/Chrome\//.test(userAgent),presto=/Opera\//.test(userAgent),safari=/Apple Computer/.test(navigator.vendor),mac_geMountainLion=/Mac OS X 1\d\D([8-9]|\d\d)\D/.test(userAgent),phantom=/PhantomJS/.test(userAgent),ios=!edge&&/AppleWebKit/.test(userAgent)&&/Mobile\/\w+/.test(userAgent),android=/Android/.test(userAgent),mobile=ios||android||/webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(userAgent),mac=ios||/Mac/.test(platform),chromeOS=/\bCrOS\b/.test(userAgent),windows=/win/i.test(platform),presto_version=presto&&userAgent.match(/Version\/(\d*\.\d*)/);presto_version&&(presto_version=Number(presto_version[1])),presto_version&&15<=presto_version&&(webkit=!(presto=!1));var flipCtrlCmd=mac&&(qtwebkit||presto&&(null==presto_version||presto_version<12.11)),captureRightClick=gecko||ie&&9<=ie_version;function classTest(cls){return new RegExp("(^|\\s)"+cls+"(?:$|\\s)\\s*")}var range,rmClass=function(node,cls){var current=node.className,match=classTest(cls).exec(current);if(match){var after=current.slice(match.index+match[0].length);node.className=current.slice(0,match.index)+(after?match[1]+after:"")}};function removeChildren(e){for(var count=e.childNodes.length;0<count;--count)e.removeChild(e.firstChild);return e}function removeChildrenAndAdd(parent,e){return removeChildren(parent).appendChild(e)}function elt(tag,content,className,style){var e=document.createElement(tag);if(className&&(e.className=className),style&&(e.style.cssText=style),"string"==typeof content)e.appendChild(document.createTextNode(content));else if(content)for(var i=0;i<content.length;++i)e.appendChild(content[i]);return e}function eltP(tag,content,className,style){var e=elt(tag,content,className,style);return e.setAttribute("role","presentation"),e}function contains(parent,child){if(3==child.nodeType&&(child=child.parentNode),parent.contains)return parent.contains(child);do{if(11==child.nodeType&&(child=child.host),child==parent)return!0}while(child=child.parentNode)}function activeElt(){var activeElement;try{activeElement=document.activeElement}catch(e){activeElement=document.body||null}for(;activeElement&&activeElement.shadowRoot&&activeElement.shadowRoot.activeElement;)activeElement=activeElement.shadowRoot.activeElement;return activeElement}function addClass(node,cls){var current=node.className;classTest(cls).test(current)||(node.className+=(current?" ":"")+cls)}function joinClasses(a,b){for(var as=a.split(" "),i=0;i<as.length;i++)as[i]&&!classTest(as[i]).test(b)&&(b+=" "+as[i]);return b}range=document.createRange?function(node,start,end,endNode){var r=document.createRange();return r.setEnd(endNode||node,end),r.setStart(node,start),r}:function(node,start,end){var r=document.body.createTextRange();try{r.moveToElementText(node.parentNode)}catch(e){return r}return r.collapse(!0),r.moveEnd("character",end),r.moveStart("character",start),r};var selectInput=function(node){node.select()};function bind(f){var args=Array.prototype.slice.call(arguments,1);return function(){return f.apply(null,args)}}function copyObj(obj,target,overwrite){for(var prop in target||(target={}),obj)!obj.hasOwnProperty(prop)||!1===overwrite&&target.hasOwnProperty(prop)||(target[prop]=obj[prop]);return target}function countColumn(string,end,tabSize,startIndex,startValue){null==end&&-1==(end=string.search(/[^\s\u00a0]/))&&(end=string.length);for(var i=startIndex||0,n=startValue||0;;){var nextTab=string.indexOf("\t",i);if(nextTab<0||end<=nextTab)return n+(end-i);n+=nextTab-i,n+=tabSize-n%tabSize,i=nextTab+1}}ios?selectInput=function(node){node.selectionStart=0,node.selectionEnd=node.value.length}:ie&&(selectInput=function(node){try{node.select()}catch(_e){}});var Delayed=function(){this.id=null};function indexOf(array,elt){for(var i=0;i<array.length;++i)if(array[i]==elt)return i;return-1}Delayed.prototype.set=function(ms,f){clearTimeout(this.id),this.id=setTimeout(f,ms)};var scrollerGap=30,Pass={toString:function(){return"CodeMirror.Pass"}},sel_dontScroll={scroll:!1},sel_mouse={origin:"*mouse"},sel_move={origin:"+move"};function findColumn(string,goal,tabSize){for(var pos=0,col=0;;){var nextTab=string.indexOf("\t",pos);-1==nextTab&&(nextTab=string.length);var skipped=nextTab-pos;if(nextTab==string.length||goal<=col+skipped)return pos+Math.min(skipped,goal-col);if(col+=nextTab-pos,pos=nextTab+1,goal<=(col+=tabSize-col%tabSize))return pos}}var spaceStrs=[""];function spaceStr(n){for(;spaceStrs.length<=n;)spaceStrs.push(lst(spaceStrs)+" ");return spaceStrs[n]}function lst(arr){return arr[arr.length-1]}function map(array,f){for(var out=[],i=0;i<array.length;i++)out[i]=f(array[i],i);return out}function nothing(){}function createObj(base,props){var inst;return inst=Object.create?Object.create(base):(nothing.prototype=base,new nothing),props&&copyObj(props,inst),inst}var nonASCIISingleCaseWordChar=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;function isWordCharBasic(ch){return/\w/.test(ch)||"€"<ch&&(ch.toUpperCase()!=ch.toLowerCase()||nonASCIISingleCaseWordChar.test(ch))}function isWordChar(ch,helper){return helper?!!(-1<helper.source.indexOf("\\w")&&isWordCharBasic(ch))||helper.test(ch):isWordCharBasic(ch)}function isEmpty(obj){for(var n in obj)if(obj.hasOwnProperty(n)&&obj[n])return!1;return!0}var extendingChars=/[\u0300-\u036f\u0483-\u0489\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u0610-\u061a\u064b-\u065e\u0670\u06d6-\u06dc\u06de-\u06e4\u06e7\u06e8\u06ea-\u06ed\u0711\u0730-\u074a\u07a6-\u07b0\u07eb-\u07f3\u0816-\u0819\u081b-\u0823\u0825-\u0827\u0829-\u082d\u0900-\u0902\u093c\u0941-\u0948\u094d\u0951-\u0955\u0962\u0963\u0981\u09bc\u09be\u09c1-\u09c4\u09cd\u09d7\u09e2\u09e3\u0a01\u0a02\u0a3c\u0a41\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a70\u0a71\u0a75\u0a81\u0a82\u0abc\u0ac1-\u0ac5\u0ac7\u0ac8\u0acd\u0ae2\u0ae3\u0b01\u0b3c\u0b3e\u0b3f\u0b41-\u0b44\u0b4d\u0b56\u0b57\u0b62\u0b63\u0b82\u0bbe\u0bc0\u0bcd\u0bd7\u0c3e-\u0c40\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c62\u0c63\u0cbc\u0cbf\u0cc2\u0cc6\u0ccc\u0ccd\u0cd5\u0cd6\u0ce2\u0ce3\u0d3e\u0d41-\u0d44\u0d4d\u0d57\u0d62\u0d63\u0dca\u0dcf\u0dd2-\u0dd4\u0dd6\u0ddf\u0e31\u0e34-\u0e3a\u0e47-\u0e4e\u0eb1\u0eb4-\u0eb9\u0ebb\u0ebc\u0ec8-\u0ecd\u0f18\u0f19\u0f35\u0f37\u0f39\u0f71-\u0f7e\u0f80-\u0f84\u0f86\u0f87\u0f90-\u0f97\u0f99-\u0fbc\u0fc6\u102d-\u1030\u1032-\u1037\u1039\u103a\u103d\u103e\u1058\u1059\u105e-\u1060\u1071-\u1074\u1082\u1085\u1086\u108d\u109d\u135f\u1712-\u1714\u1732-\u1734\u1752\u1753\u1772\u1773\u17b7-\u17bd\u17c6\u17c9-\u17d3\u17dd\u180b-\u180d\u18a9\u1920-\u1922\u1927\u1928\u1932\u1939-\u193b\u1a17\u1a18\u1a56\u1a58-\u1a5e\u1a60\u1a62\u1a65-\u1a6c\u1a73-\u1a7c\u1a7f\u1b00-\u1b03\u1b34\u1b36-\u1b3a\u1b3c\u1b42\u1b6b-\u1b73\u1b80\u1b81\u1ba2-\u1ba5\u1ba8\u1ba9\u1c2c-\u1c33\u1c36\u1c37\u1cd0-\u1cd2\u1cd4-\u1ce0\u1ce2-\u1ce8\u1ced\u1dc0-\u1de6\u1dfd-\u1dff\u200c\u200d\u20d0-\u20f0\u2cef-\u2cf1\u2de0-\u2dff\u302a-\u302f\u3099\u309a\ua66f-\ua672\ua67c\ua67d\ua6f0\ua6f1\ua802\ua806\ua80b\ua825\ua826\ua8c4\ua8e0-\ua8f1\ua926-\ua92d\ua947-\ua951\ua980-\ua982\ua9b3\ua9b6-\ua9b9\ua9bc\uaa29-\uaa2e\uaa31\uaa32\uaa35\uaa36\uaa43\uaa4c\uaab0\uaab2-\uaab4\uaab7\uaab8\uaabe\uaabf\uaac1\uabe5\uabe8\uabed\udc00-\udfff\ufb1e\ufe00-\ufe0f\ufe20-\ufe26\uff9e\uff9f]/;function isExtendingChar(ch){return 768<=ch.charCodeAt(0)&&extendingChars.test(ch)}function skipExtendingChars(str,pos,dir){for(;(dir<0?0<pos:pos<str.length)&&isExtendingChar(str.charAt(pos));)pos+=dir;return pos}function findFirst(pred,from,to){for(var dir=to<from?-1:1;;){if(from==to)return from;var midF=(from+to)/2,mid=dir<0?Math.ceil(midF):Math.floor(midF);if(mid==from)return pred(mid)?from:to;pred(mid)?to=mid:from=mid+dir}}var bidiOther=null;function getBidiPartAt(order,ch,sticky){var found;bidiOther=null;for(var i=0;i<order.length;++i){var cur=order[i];if(cur.from<ch&&cur.to>ch)return i;cur.to==ch&&(cur.from!=cur.to&&"before"==sticky?found=i:bidiOther=i),cur.from==ch&&(cur.from!=cur.to&&"before"!=sticky?found=i:bidiOther=i)}return null!=found?found:bidiOther}var lowTypes,arabicTypes,bidiRE,isNeutral,isStrong,countsAsLeft,countsAsNum,bidiOrdering=(lowTypes="bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLN",arabicTypes="nnnnnnNNr%%r,rNNmmmmmmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmmmnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmnNmmmmmmrrmmNmmmmrr1111111111",bidiRE=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/,isNeutral=/[stwN]/,isStrong=/[LRr]/,countsAsLeft=/[Lb1n]/,countsAsNum=/[1n]/,function(str,direction){var outerType="ltr"==direction?"L":"R";if(0==str.length||"ltr"==direction&&!bidiRE.test(str))return!1;for(var code,len=str.length,types=[],i=0;i<len;++i)types.push((code=str.charCodeAt(i))<=247?lowTypes.charAt(code):1424<=code&&code<=1524?"R":1536<=code&&code<=1785?arabicTypes.charAt(code-1536):1774<=code&&code<=2220?"r":8192<=code&&code<=8203?"w":8204==code?"b":"L");for(var i$1=0,prev=outerType;i$1<len;++i$1){var type=types[i$1];"m"==type?types[i$1]=prev:prev=type}for(var i$2=0,cur=outerType;i$2<len;++i$2){var type$1=types[i$2];"1"==type$1&&"r"==cur?types[i$2]="n":isStrong.test(type$1)&&"r"==(cur=type$1)&&(types[i$2]="R")}for(var i$3=1,prev$1=types[0];i$3<len-1;++i$3){var type$2=types[i$3];"+"==type$2&&"1"==prev$1&&"1"==types[i$3+1]?types[i$3]="1":","!=type$2||prev$1!=types[i$3+1]||"1"!=prev$1&&"n"!=prev$1||(types[i$3]=prev$1),prev$1=type$2}for(var i$4=0;i$4<len;++i$4){var type$3=types[i$4];if(","==type$3)types[i$4]="N";else if("%"==type$3){var end=void 0;for(end=i$4+1;end<len&&"%"==types[end];++end);for(var replace=i$4&&"!"==types[i$4-1]||end<len&&"1"==types[end]?"1":"N",j=i$4;j<end;++j)types[j]=replace;i$4=end-1}}for(var i$5=0,cur$1=outerType;i$5<len;++i$5){var type$4=types[i$5];"L"==cur$1&&"1"==type$4?types[i$5]="L":isStrong.test(type$4)&&(cur$1=type$4)}for(var i$6=0;i$6<len;++i$6)if(isNeutral.test(types[i$6])){var end$1=void 0;for(end$1=i$6+1;end$1<len&&isNeutral.test(types[end$1]);++end$1);for(var before="L"==(i$6?types[i$6-1]:outerType),replace$1=before==("L"==(end$1<len?types[end$1]:outerType))?before?"L":"R":outerType,j$1=i$6;j$1<end$1;++j$1)types[j$1]=replace$1;i$6=end$1-1}for(var m,order=[],i$7=0;i$7<len;)if(countsAsLeft.test(types[i$7])){var start=i$7;for(++i$7;i$7<len&&countsAsLeft.test(types[i$7]);++i$7);order.push(new BidiSpan(0,start,i$7))}else{var pos=i$7,at=order.length;for(++i$7;i$7<len&&"L"!=types[i$7];++i$7);for(var j$2=pos;j$2<i$7;)if(countsAsNum.test(types[j$2])){pos<j$2&&order.splice(at,0,new BidiSpan(1,pos,j$2));var nstart=j$2;for(++j$2;j$2<i$7&&countsAsNum.test(types[j$2]);++j$2);order.splice(at,0,new BidiSpan(2,nstart,j$2)),pos=j$2}else++j$2;pos<i$7&&order.splice(at,0,new BidiSpan(1,pos,i$7))}return"ltr"==direction&&(1==order[0].level&&(m=str.match(/^\s+/))&&(order[0].from=m[0].length,order.unshift(new BidiSpan(0,0,m[0].length))),1==lst(order).level&&(m=str.match(/\s+$/))&&(lst(order).to-=m[0].length,order.push(new BidiSpan(0,len-m[0].length,len)))),"rtl"==direction?order.reverse():order});function BidiSpan(level,from,to){this.level=level,this.from=from,this.to=to}function getOrder(line,direction){var order=line.order;return null==order&&(order=line.order=bidiOrdering(line.text,direction)),order}var noHandlers=[],on=function(emitter,type,f){if(emitter.addEventListener)emitter.addEventListener(type,f,!1);else if(emitter.attachEvent)emitter.attachEvent("on"+type,f);else{var map$$1=emitter._handlers||(emitter._handlers={});map$$1[type]=(map$$1[type]||noHandlers).concat(f)}};function getHandlers(emitter,type){return emitter._handlers&&emitter._handlers[type]||noHandlers}function off(emitter,type,f){if(emitter.removeEventListener)emitter.removeEventListener(type,f,!1);else if(emitter.detachEvent)emitter.detachEvent("on"+type,f);else{var map$$1=emitter._handlers,arr=map$$1&&map$$1[type];if(arr){var index=indexOf(arr,f);-1<index&&(map$$1[type]=arr.slice(0,index).concat(arr.slice(index+1)))}}}function signal(emitter,type){var handlers=getHandlers(emitter,type);if(handlers.length)for(var args=Array.prototype.slice.call(arguments,2),i=0;i<handlers.length;++i)handlers[i].apply(null,args)}function signalDOMEvent(cm,e,override){return"string"==typeof e&&(e={type:e,preventDefault:function(){this.defaultPrevented=!0}}),signal(cm,override||e.type,cm,e),e_defaultPrevented(e)||e.codemirrorIgnore}function signalCursorActivity(cm){var arr=cm._handlers&&cm._handlers.cursorActivity;if(arr)for(var set=cm.curOp.cursorActivityHandlers||(cm.curOp.cursorActivityHandlers=[]),i=0;i<arr.length;++i)-1==indexOf(set,arr[i])&&set.push(arr[i])}function hasHandler(emitter,type){return 0<getHandlers(emitter,type).length}function eventMixin(ctor){ctor.prototype.on=function(type,f){on(this,type,f)},ctor.prototype.off=function(type,f){off(this,type,f)}}function e_preventDefault(e){e.preventDefault?e.preventDefault():e.returnValue=!1}function e_stopPropagation(e){e.stopPropagation?e.stopPropagation():e.cancelBubble=!0}function e_defaultPrevented(e){return null!=e.defaultPrevented?e.defaultPrevented:0==e.returnValue}function e_stop(e){e_preventDefault(e),e_stopPropagation(e)}function e_target(e){return e.target||e.srcElement}function e_button(e){var b=e.which;return null==b&&(1&e.button?b=1:2&e.button?b=3:4&e.button&&(b=2)),mac&&e.ctrlKey&&1==b&&(b=3),b}var zwspSupported,badBidiRects,dragAndDrop=function(){if(ie&&ie_version<9)return!1;var div=elt("div");return"draggable"in div||"dragDrop"in div}();function zeroWidthElement(measure){if(null==zwspSupported){var test=elt("span","");removeChildrenAndAdd(measure,elt("span",[test,document.createTextNode("x")])),0!=measure.firstChild.offsetHeight&&(zwspSupported=test.offsetWidth<=1&&2<test.offsetHeight&&!(ie&&ie_version<8))}var node=zwspSupported?elt("span",""):elt("span"," ",null,"display: inline-block; width: 1px; margin-right: -1px");return node.setAttribute("cm-text",""),node}function hasBadBidiRects(measure){if(null!=badBidiRects)return badBidiRects;var txt=removeChildrenAndAdd(measure,document.createTextNode("AخA")),r0=range(txt,0,1).getBoundingClientRect(),r1=range(txt,1,2).getBoundingClientRect();return removeChildren(measure),!(!r0||r0.left==r0.right)&&(badBidiRects=r1.right-r0.right<3)}var e,splitLinesAuto=3!="\n\nb".split(/\n/).length?function(string){for(var pos=0,result=[],l=string.length;pos<=l;){var nl=string.indexOf("\n",pos);-1==nl&&(nl=string.length);var line=string.slice(pos,"\r"==string.charAt(nl-1)?nl-1:nl),rt=line.indexOf("\r");-1!=rt?(result.push(line.slice(0,rt)),pos+=rt+1):(result.push(line),pos=nl+1)}return result}:function(string){return string.split(/\r\n?|\n/)},hasSelection=window.getSelection?function(te){try{return te.selectionStart!=te.selectionEnd}catch(e){return!1}}:function(te){var range$$1;try{range$$1=te.ownerDocument.selection.createRange()}catch(e){}return!(!range$$1||range$$1.parentElement()!=te)&&0!=range$$1.compareEndPoints("StartToEnd",range$$1)},hasCopyEvent="oncopy"in(e=elt("div"))||(e.setAttribute("oncopy","return;"),"function"==typeof e.oncopy),badZoomedRects=null;var modes={},mimeModes={};function resolveMode(spec){if("string"==typeof spec&&mimeModes.hasOwnProperty(spec))spec=mimeModes[spec];else if(spec&&"string"==typeof spec.name&&mimeModes.hasOwnProperty(spec.name)){var found=mimeModes[spec.name];"string"==typeof found&&(found={name:found}),(spec=createObj(found,spec)).name=found.name}else{if("string"==typeof spec&&/^[\w\-]+\/[\w\-]+\+xml$/.test(spec))return resolveMode("application/xml");if("string"==typeof spec&&/^[\w\-]+\/[\w\-]+\+json$/.test(spec))return resolveMode("application/json")}return"string"==typeof spec?{name:spec}:spec||{name:"null"}}function getMode(options,spec){spec=resolveMode(spec);var mfactory=modes[spec.name];if(!mfactory)return getMode(options,"text/plain");var modeObj=mfactory(options,spec);if(modeExtensions.hasOwnProperty(spec.name)){var exts=modeExtensions[spec.name];for(var prop in exts)exts.hasOwnProperty(prop)&&(modeObj.hasOwnProperty(prop)&&(modeObj["_"+prop]=modeObj[prop]),modeObj[prop]=exts[prop])}if(modeObj.name=spec.name,spec.helperType&&(modeObj.helperType=spec.helperType),spec.modeProps)for(var prop$1 in spec.modeProps)modeObj[prop$1]=spec.modeProps[prop$1];return modeObj}var modeExtensions={};function extendMode(mode,properties){copyObj(properties,modeExtensions.hasOwnProperty(mode)?modeExtensions[mode]:modeExtensions[mode]={})}function copyState(mode,state){if(!0===state)return state;if(mode.copyState)return mode.copyState(state);var nstate={};for(var n in state){var val=state[n];val instanceof Array&&(val=val.concat([])),nstate[n]=val}return nstate}function innerMode(mode,state){for(var info;mode.innerMode&&(info=mode.innerMode(state))&&info.mode!=mode;)state=info.state,mode=info.mode;return info||{mode:mode,state:state}}function startState(mode,a1,a2){return!mode.startState||mode.startState(a1,a2)}var StringStream=function(string,tabSize,lineOracle){this.pos=this.start=0,this.string=string,this.tabSize=tabSize||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0,this.lineOracle=lineOracle};function getLine(doc,n){if((n-=doc.first)<0||n>=doc.size)throw new Error("There is no line "+(n+doc.first)+" in the document.");for(var chunk=doc;!chunk.lines;)for(var i=0;;++i){var child=chunk.children[i],sz=child.chunkSize();if(n<sz){chunk=child;break}n-=sz}return chunk.lines[n]}function getBetween(doc,start,end){var out=[],n=start.line;return doc.iter(start.line,end.line+1,function(line){var text=line.text;n==end.line&&(text=text.slice(0,end.ch)),n==start.line&&(text=text.slice(start.ch)),out.push(text),++n}),out}function getLines(doc,from,to){var out=[];return doc.iter(from,to,function(line){out.push(line.text)}),out}function updateLineHeight(line,height){var diff=height-line.height;if(diff)for(var n=line;n;n=n.parent)n.height+=diff}function lineNo(line){if(null==line.parent)return null;for(var cur=line.parent,no=indexOf(cur.lines,line),chunk=cur.parent;chunk;chunk=(cur=chunk).parent)for(var i=0;chunk.children[i]!=cur;++i)no+=chunk.children[i].chunkSize();return no+cur.first}function lineAtHeight(chunk,h){var n=chunk.first;outer:do{for(var i$1=0;i$1<chunk.children.length;++i$1){var child=chunk.children[i$1],ch=child.height;if(h<ch){chunk=child;continue outer}h-=ch,n+=child.chunkSize()}return n}while(!chunk.lines);for(var i=0;i<chunk.lines.length;++i){var lh=chunk.lines[i].height;if(h<lh)break;h-=lh}return n+i}function isLine(doc,l){return l>=doc.first&&l<doc.first+doc.size}function lineNumberFor(options,i){return String(options.lineNumberFormatter(i+options.firstLineNumber))}function Pos(line,ch,sticky){if(void 0===sticky&&(sticky=null),!(this instanceof Pos))return new Pos(line,ch,sticky);this.line=line,this.ch=ch,this.sticky=sticky}function cmp(a,b){return a.line-b.line||a.ch-b.ch}function equalCursorPos(a,b){return a.sticky==b.sticky&&0==cmp(a,b)}function copyPos(x){return Pos(x.line,x.ch)}function maxPos(a,b){return cmp(a,b)<0?b:a}function minPos(a,b){return cmp(a,b)<0?a:b}function clipLine(doc,n){return Math.max(doc.first,Math.min(n,doc.first+doc.size-1))}function clipPos(doc,pos){if(pos.line<doc.first)return Pos(doc.first,0);var last=doc.first+doc.size-1;return pos.line>last?Pos(last,getLine(doc,last).text.length):function(pos,linelen){var ch=pos.ch;return null==ch||linelen<ch?Pos(pos.line,linelen):ch<0?Pos(pos.line,0):pos}(pos,getLine(doc,pos.line).text.length)}function clipPosArray(doc,array){for(var out=[],i=0;i<array.length;i++)out[i]=clipPos(doc,array[i]);return out}StringStream.prototype.eol=function(){return this.pos>=this.string.length},StringStream.prototype.sol=function(){return this.pos==this.lineStart},StringStream.prototype.peek=function(){return this.string.charAt(this.pos)||void 0},StringStream.prototype.next=function(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)},StringStream.prototype.eat=function(match){var ch=this.string.charAt(this.pos);if("string"==typeof match?ch==match:ch&&(match.test?match.test(ch):match(ch)))return++this.pos,ch},StringStream.prototype.eatWhile=function(match){for(var start=this.pos;this.eat(match););return this.pos>start},StringStream.prototype.eatSpace=function(){for(var start=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>start},StringStream.prototype.skipToEnd=function(){this.pos=this.string.length},StringStream.prototype.skipTo=function(ch){var found=this.string.indexOf(ch,this.pos);if(-1<found)return this.pos=found,!0},StringStream.prototype.backUp=function(n){this.pos-=n},StringStream.prototype.column=function(){return this.lastColumnPos<this.start&&(this.lastColumnValue=countColumn(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue-(this.lineStart?countColumn(this.string,this.lineStart,this.tabSize):0)},StringStream.prototype.indentation=function(){return countColumn(this.string,null,this.tabSize)-(this.lineStart?countColumn(this.string,this.lineStart,this.tabSize):0)},StringStream.prototype.match=function(pattern,consume,caseInsensitive){if("string"!=typeof pattern){var match=this.string.slice(this.pos).match(pattern);return match&&0<match.index?null:(match&&!1!==consume&&(this.pos+=match[0].length),match)}function cased(str){return caseInsensitive?str.toLowerCase():str}if(cased(this.string.substr(this.pos,pattern.length))==cased(pattern))return!1!==consume&&(this.pos+=pattern.length),!0},StringStream.prototype.current=function(){return this.string.slice(this.start,this.pos)},StringStream.prototype.hideFirstChars=function(n,inner){this.lineStart+=n;try{return inner()}finally{this.lineStart-=n}},StringStream.prototype.lookAhead=function(n){var oracle=this.lineOracle;return oracle&&oracle.lookAhead(n)},StringStream.prototype.baseToken=function(){var oracle=this.lineOracle;return oracle&&oracle.baseToken(this.pos)};var SavedContext=function(state,lookAhead){this.state=state,this.lookAhead=lookAhead},Context=function(doc,state,line,lookAhead){this.state=state,this.doc=doc,this.line=line,this.maxLookAhead=lookAhead||0,this.baseTokens=null,this.baseTokenPos=1};function highlightLine(cm,line,context,forceToEnd){var st=[cm.state.modeGen],lineClasses={};runMode(cm,line.text,cm.doc.mode,context,function(end,style){return st.push(end,style)},lineClasses,forceToEnd);for(var state=context.state,loop=function(o){context.baseTokens=st;var overlay=cm.state.overlays[o],i=1,at=0;context.state=!0,runMode(cm,line.text,overlay.mode,context,function(end,style){for(var start=i;at<end;){var i_end=st[i];end<i_end&&st.splice(i,1,end,st[i+1],i_end),i+=2,at=Math.min(end,i_end)}if(style)if(overlay.opaque)st.splice(start,i-start,end,"overlay "+style),i=start+2;else for(;start<i;start+=2){var cur=st[start+1];st[start+1]=(cur?cur+" ":"")+"overlay "+style}},lineClasses),context.state=state,context.baseTokens=null,context.baseTokenPos=1},o=0;o<cm.state.overlays.length;++o)loop(o);return{styles:st,classes:lineClasses.bgClass||lineClasses.textClass?lineClasses:null}}function getLineStyles(cm,line,updateFrontier){if(!line.styles||line.styles[0]!=cm.state.modeGen){var context=getContextBefore(cm,lineNo(line)),resetState=line.text.length>cm.options.maxHighlightLength&&copyState(cm.doc.mode,context.state),result=highlightLine(cm,line,context);resetState&&(context.state=resetState),line.stateAfter=context.save(!resetState),line.styles=result.styles,result.classes?line.styleClasses=result.classes:line.styleClasses&&(line.styleClasses=null),updateFrontier===cm.doc.highlightFrontier&&(cm.doc.modeFrontier=Math.max(cm.doc.modeFrontier,++cm.doc.highlightFrontier))}return line.styles}function getContextBefore(cm,n,precise){var doc=cm.doc,display=cm.display;if(!doc.mode.startState)return new Context(doc,!0,n);var start=function(cm,n,precise){for(var minindent,minline,doc=cm.doc,lim=precise?-1:n-(cm.doc.mode.innerMode?1e3:100),search=n;lim<search;--search){if(search<=doc.first)return doc.first;var line=getLine(doc,search-1),after=line.stateAfter;if(after&&(!precise||search+(after instanceof SavedContext?after.lookAhead:0)<=doc.modeFrontier))return search;var indented=countColumn(line.text,null,cm.options.tabSize);(null==minline||indented<minindent)&&(minline=search-1,minindent=indented)}return minline}(cm,n,precise),saved=start>doc.first&&getLine(doc,start-1).stateAfter,context=saved?Context.fromSaved(doc,saved,start):new Context(doc,startState(doc.mode),start);return doc.iter(start,n,function(line){processLine(cm,line.text,context);var pos=context.line;line.stateAfter=pos==n-1||pos%5==0||pos>=display.viewFrom&&pos<display.viewTo?context.save():null,context.nextLine()}),precise&&(doc.modeFrontier=context.line),context}function processLine(cm,text,context,startAt){var mode=cm.doc.mode,stream=new StringStream(text,cm.options.tabSize,context);for(stream.start=stream.pos=startAt||0,""==text&&callBlankLine(mode,context.state);!stream.eol();)readToken(mode,stream,context.state),stream.start=stream.pos}function callBlankLine(mode,state){if(mode.blankLine)return mode.blankLine(state);if(mode.innerMode){var inner=innerMode(mode,state);return inner.mode.blankLine?inner.mode.blankLine(inner.state):void 0}}function readToken(mode,stream,state,inner){for(var i=0;i<10;i++){inner&&(inner[0]=innerMode(mode,state).mode);var style=mode.token(stream,state);if(stream.pos>stream.start)return style}throw new Error("Mode "+mode.name+" failed to advance stream.")}Context.prototype.lookAhead=function(n){var line=this.doc.getLine(this.line+n);return null!=line&&n>this.maxLookAhead&&(this.maxLookAhead=n),line},Context.prototype.baseToken=function(n){if(!this.baseTokens)return null;for(;this.baseTokens[this.baseTokenPos]<=n;)this.baseTokenPos+=2;var type=this.baseTokens[this.baseTokenPos+1];return{type:type&&type.replace(/( |^)overlay .*/,""),size:this.baseTokens[this.baseTokenPos]-n}},Context.prototype.nextLine=function(){this.line++,0<this.maxLookAhead&&this.maxLookAhead--},Context.fromSaved=function(doc,saved,line){return saved instanceof SavedContext?new Context(doc,copyState(doc.mode,saved.state),line,saved.lookAhead):new Context(doc,copyState(doc.mode,saved),line)},Context.prototype.save=function(copy){var state=!1!==copy?copyState(this.doc.mode,this.state):this.state;return 0<this.maxLookAhead?new SavedContext(state,this.maxLookAhead):state};var Token=function(stream,type,state){this.start=stream.start,this.end=stream.pos,this.string=stream.current(),this.type=type||null,this.state=state};function takeToken(cm,pos,precise,asArray){var style,tokens,doc=cm.doc,mode=doc.mode,line=getLine(doc,(pos=clipPos(doc,pos)).line),context=getContextBefore(cm,pos.line,precise),stream=new StringStream(line.text,cm.options.tabSize,context);for(asArray&&(tokens=[]);(asArray||stream.pos<pos.ch)&&!stream.eol();)stream.start=stream.pos,style=readToken(mode,stream,context.state),asArray&&tokens.push(new Token(stream,style,copyState(doc.mode,context.state)));return asArray?tokens:new Token(stream,style,context.state)}function extractLineClasses(type,output){if(type)for(;;){var lineClass=type.match(/(?:^|\s+)line-(background-)?(\S+)/);if(!lineClass)break;type=type.slice(0,lineClass.index)+type.slice(lineClass.index+lineClass[0].length);var prop=lineClass[1]?"bgClass":"textClass";null==output[prop]?output[prop]=lineClass[2]:new RegExp("(?:^|s)"+lineClass[2]+"(?:$|s)").test(output[prop])||(output[prop]+=" "+lineClass[2])}return type}function runMode(cm,text,mode,context,f,lineClasses,forceToEnd){var flattenSpans=mode.flattenSpans;null==flattenSpans&&(flattenSpans=cm.options.flattenSpans);var style,curStart=0,curStyle=null,stream=new StringStream(text,cm.options.tabSize,context),inner=cm.options.addModeClass&&[null];for(""==text&&extractLineClasses(callBlankLine(mode,context.state),lineClasses);!stream.eol();){if(style=stream.pos>cm.options.maxHighlightLength?(flattenSpans=!1,forceToEnd&&processLine(cm,text,context,stream.pos),stream.pos=text.length,null):extractLineClasses(readToken(mode,stream,context.state,inner),lineClasses),inner){var mName=inner[0].name;mName&&(style="m-"+(style?mName+" "+style:mName))}if(!flattenSpans||curStyle!=style){for(;curStart<stream.start;)f(curStart=Math.min(stream.start,curStart+5e3),curStyle);curStyle=style}stream.start=stream.pos}for(;curStart<stream.pos;){var pos=Math.min(stream.pos,curStart+5e3);f(pos,curStyle),curStart=pos}}var sawReadOnlySpans=!1,sawCollapsedSpans=!1;function MarkedSpan(marker,from,to){this.marker=marker,this.from=from,this.to=to}function getMarkedSpanFor(spans,marker){if(spans)for(var i=0;i<spans.length;++i){var span=spans[i];if(span.marker==marker)return span}}function removeMarkedSpan(spans,span){for(var r,i=0;i<spans.length;++i)spans[i]!=span&&(r||(r=[])).push(spans[i]);return r}function stretchSpansOverChange(doc,change){if(change.full)return null;var oldFirst=isLine(doc,change.from.line)&&getLine(doc,change.from.line).markedSpans,oldLast=isLine(doc,change.to.line)&&getLine(doc,change.to.line).markedSpans;if(!oldFirst&&!oldLast)return null;var startCh=change.from.ch,endCh=change.to.ch,isInsert=0==cmp(change.from,change.to),first=function(old,startCh,isInsert){var nw;if(old)for(var i=0;i<old.length;++i){var span=old[i],marker=span.marker;if(null==span.from||(marker.inclusiveLeft?span.from<=startCh:span.from<startCh)||span.from==startCh&&"bookmark"==marker.type&&(!isInsert||!span.marker.insertLeft)){var endsAfter=null==span.to||(marker.inclusiveRight?span.to>=startCh:span.to>startCh);(nw||(nw=[])).push(new MarkedSpan(marker,span.from,endsAfter?null:span.to))}}return nw}(oldFirst,startCh,isInsert),last=function(old,endCh,isInsert){var nw;if(old)for(var i=0;i<old.length;++i){var span=old[i],marker=span.marker;if(null==span.to||(marker.inclusiveRight?span.to>=endCh:span.to>endCh)||span.from==endCh&&"bookmark"==marker.type&&(!isInsert||span.marker.insertLeft)){var startsBefore=null==span.from||(marker.inclusiveLeft?span.from<=endCh:span.from<endCh);(nw||(nw=[])).push(new MarkedSpan(marker,startsBefore?null:span.from-endCh,null==span.to?null:span.to-endCh))}}return nw}(oldLast,endCh,isInsert),sameLine=1==change.text.length,offset=lst(change.text).length+(sameLine?startCh:0);if(first)for(var i=0;i<first.length;++i){var span=first[i];if(null==span.to){var found=getMarkedSpanFor(last,span.marker);found?sameLine&&(span.to=null==found.to?null:found.to+offset):span.to=startCh}}if(last)for(var i$1=0;i$1<last.length;++i$1){var span$1=last[i$1];if(null!=span$1.to&&(span$1.to+=offset),null==span$1.from)getMarkedSpanFor(first,span$1.marker)||(span$1.from=offset,sameLine&&(first||(first=[])).push(span$1));else span$1.from+=offset,sameLine&&(first||(first=[])).push(span$1)}first&&(first=clearEmptySpans(first)),last&&last!=first&&(last=clearEmptySpans(last));var newMarkers=[first];if(!sameLine){var gapMarkers,gap=change.text.length-2;if(0<gap&&first)for(var i$2=0;i$2<first.length;++i$2)null==first[i$2].to&&(gapMarkers||(gapMarkers=[])).push(new MarkedSpan(first[i$2].marker,null,null));for(var i$3=0;i$3<gap;++i$3)newMarkers.push(gapMarkers);newMarkers.push(last)}return newMarkers}function clearEmptySpans(spans){for(var i=0;i<spans.length;++i){var span=spans[i];null!=span.from&&span.from==span.to&&!1!==span.marker.clearWhenEmpty&&spans.splice(i--,1)}return spans.length?spans:null}function detachMarkedSpans(line){var spans=line.markedSpans;if(spans){for(var i=0;i<spans.length;++i)spans[i].marker.detachLine(line);line.markedSpans=null}}function attachMarkedSpans(line,spans){if(spans){for(var i=0;i<spans.length;++i)spans[i].marker.attachLine(line);line.markedSpans=spans}}function extraLeft(marker){return marker.inclusiveLeft?-1:0}function extraRight(marker){return marker.inclusiveRight?1:0}function compareCollapsedMarkers(a,b){var lenDiff=a.lines.length-b.lines.length;if(0!=lenDiff)return lenDiff;var aPos=a.find(),bPos=b.find(),fromCmp=cmp(aPos.from,bPos.from)||extraLeft(a)-extraLeft(b);if(fromCmp)return-fromCmp;var toCmp=cmp(aPos.to,bPos.to)||extraRight(a)-extraRight(b);return toCmp||b.id-a.id}function collapsedSpanAtSide(line,start){var found,sps=sawCollapsedSpans&&line.markedSpans;if(sps)for(var sp=void 0,i=0;i<sps.length;++i)(sp=sps[i]).marker.collapsed&&null==(start?sp.from:sp.to)&&(!found||compareCollapsedMarkers(found,sp.marker)<0)&&(found=sp.marker);return found}function collapsedSpanAtStart(line){return collapsedSpanAtSide(line,!0)}function collapsedSpanAtEnd(line){return collapsedSpanAtSide(line,!1)}function collapsedSpanAround(line,ch){var found,sps=sawCollapsedSpans&&line.markedSpans;if(sps)for(var i=0;i<sps.length;++i){var sp=sps[i];sp.marker.collapsed&&(null==sp.from||sp.from<ch)&&(null==sp.to||sp.to>ch)&&(!found||compareCollapsedMarkers(found,sp.marker)<0)&&(found=sp.marker)}return found}function conflictingCollapsedRange(doc,lineNo$$1,from,to,marker){var line=getLine(doc,lineNo$$1),sps=sawCollapsedSpans&&line.markedSpans;if(sps)for(var i=0;i<sps.length;++i){var sp=sps[i];if(sp.marker.collapsed){var found=sp.marker.find(0),fromCmp=cmp(found.from,from)||extraLeft(sp.marker)-extraLeft(marker),toCmp=cmp(found.to,to)||extraRight(sp.marker)-extraRight(marker);if(!(0<=fromCmp&&toCmp<=0||fromCmp<=0&&0<=toCmp)&&(fromCmp<=0&&(sp.marker.inclusiveRight&&marker.inclusiveLeft?0<=cmp(found.to,from):0<cmp(found.to,from))||0<=fromCmp&&(sp.marker.inclusiveRight&&marker.inclusiveLeft?cmp(found.from,to)<=0:cmp(found.from,to)<0)))return!0}}}function visualLine(line){for(var merged;merged=collapsedSpanAtStart(line);)line=merged.find(-1,!0).line;return line}function visualLineNo(doc,lineN){var line=getLine(doc,lineN),vis=visualLine(line);return line==vis?lineN:lineNo(vis)}function visualLineEndNo(doc,lineN){if(lineN>doc.lastLine())return lineN;var merged,line=getLine(doc,lineN);if(!lineIsHidden(doc,line))return lineN;for(;merged=collapsedSpanAtEnd(line);)line=merged.find(1,!0).line;return lineNo(line)+1}function lineIsHidden(doc,line){var sps=sawCollapsedSpans&&line.markedSpans;if(sps)for(var sp=void 0,i=0;i<sps.length;++i)if((sp=sps[i]).marker.collapsed){if(null==sp.from)return!0;if(!sp.marker.widgetNode&&0==sp.from&&sp.marker.inclusiveLeft&&lineIsHiddenInner(doc,line,sp))return!0}}function lineIsHiddenInner(doc,line,span){if(null==span.to){var end=span.marker.find(1,!0);return lineIsHiddenInner(doc,end.line,getMarkedSpanFor(end.line.markedSpans,span.marker))}if(span.marker.inclusiveRight&&span.to==line.text.length)return!0;for(var sp=void 0,i=0;i<line.markedSpans.length;++i)if((sp=line.markedSpans[i]).marker.collapsed&&!sp.marker.widgetNode&&sp.from==span.to&&(null==sp.to||sp.to!=span.from)&&(sp.marker.inclusiveLeft||span.marker.inclusiveRight)&&lineIsHiddenInner(doc,line,sp))return!0}function heightAtLine(lineObj){for(var h=0,chunk=(lineObj=visualLine(lineObj)).parent,i=0;i<chunk.lines.length;++i){var line=chunk.lines[i];if(line==lineObj)break;h+=line.height}for(var p=chunk.parent;p;p=(chunk=p).parent)for(var i$1=0;i$1<p.children.length;++i$1){var cur=p.children[i$1];if(cur==chunk)break;h+=cur.height}return h}function lineLength(line){if(0==line.height)return 0;for(var merged,len=line.text.length,cur=line;merged=collapsedSpanAtStart(cur);){var found=merged.find(0,!0);cur=found.from.line,len+=found.from.ch-found.to.ch}for(cur=line;merged=collapsedSpanAtEnd(cur);){var found$1=merged.find(0,!0);len-=cur.text.length-found$1.from.ch,len+=(cur=found$1.to.line).text.length-found$1.to.ch}return len}function findMaxLine(cm){var d=cm.display,doc=cm.doc;d.maxLine=getLine(doc,doc.first),d.maxLineLength=lineLength(d.maxLine),d.maxLineChanged=!0,doc.iter(function(line){var len=lineLength(line);len>d.maxLineLength&&(d.maxLineLength=len,d.maxLine=line)})}var Line=function(text,markedSpans,estimateHeight){this.text=text,attachMarkedSpans(this,markedSpans),this.height=estimateHeight?estimateHeight(this):1};function cleanUpLine(line){line.parent=null,detachMarkedSpans(line)}Line.prototype.lineNo=function(){return lineNo(this)},eventMixin(Line);var styleToClassCache={},styleToClassCacheWithMode={};function interpretTokenStyle(style,options){if(!style||/^\s*$/.test(style))return null;var cache=options.addModeClass?styleToClassCacheWithMode:styleToClassCache;return cache[style]||(cache[style]=style.replace(/\S+/g,"cm-$&"))}function buildLineContent(cm,lineView){var content=eltP("span",null,null,webkit?"padding-right: .1px":null),builder={pre:eltP("pre",[content],"CodeMirror-line"),content:content,col:0,pos:0,cm:cm,trailingSpace:!1,splitSpaces:cm.getOption("lineWrapping")};lineView.measure={};for(var i=0;i<=(lineView.rest?lineView.rest.length:0);i++){var line=i?lineView.rest[i-1]:lineView.line,order=void 0;builder.pos=0,builder.addToken=buildToken,hasBadBidiRects(cm.display.measure)&&(order=getOrder(line,cm.doc.direction))&&(builder.addToken=buildTokenBadBidi(builder.addToken,order)),builder.map=[],insertLineContent(line,builder,getLineStyles(cm,line,lineView!=cm.display.externalMeasured&&lineNo(line))),line.styleClasses&&(line.styleClasses.bgClass&&(builder.bgClass=joinClasses(line.styleClasses.bgClass,builder.bgClass||"")),line.styleClasses.textClass&&(builder.textClass=joinClasses(line.styleClasses.textClass,builder.textClass||""))),0==builder.map.length&&builder.map.push(0,0,builder.content.appendChild(zeroWidthElement(cm.display.measure))),0==i?(lineView.measure.map=builder.map,lineView.measure.cache={}):((lineView.measure.maps||(lineView.measure.maps=[])).push(builder.map),(lineView.measure.caches||(lineView.measure.caches=[])).push({}))}if(webkit){var last=builder.content.lastChild;(/\bcm-tab\b/.test(last.className)||last.querySelector&&last.querySelector(".cm-tab"))&&(builder.content.className="cm-tab-wrap-hack")}return signal(cm,"renderLine",cm,lineView.line,builder.pre),builder.pre.className&&(builder.textClass=joinClasses(builder.pre.className,builder.textClass||"")),builder}function defaultSpecialCharPlaceholder(ch){var token=elt("span","•","cm-invalidchar");return token.title="\\u"+ch.charCodeAt(0).toString(16),token.setAttribute("aria-label",token.title),token}function buildToken(builder,text,style,startStyle,endStyle,css,attributes){if(text){var content,displayText=builder.splitSpaces?function(text,trailingBefore){if(1<text.length&&!/ /.test(text))return text;for(var spaceBefore=trailingBefore,result="",i=0;i<text.length;i++){var ch=text.charAt(i);" "!=ch||!spaceBefore||i!=text.length-1&&32!=text.charCodeAt(i+1)||(ch=" "),result+=ch,spaceBefore=" "==ch}return result}(text,builder.trailingSpace):text,special=builder.cm.state.specialChars,mustWrap=!1;if(special.test(text)){content=document.createDocumentFragment();for(var pos=0;;){special.lastIndex=pos;var m=special.exec(text),skipped=m?m.index-pos:text.length-pos;if(skipped){var txt=document.createTextNode(displayText.slice(pos,pos+skipped));ie&&ie_version<9?content.appendChild(elt("span",[txt])):content.appendChild(txt),builder.map.push(builder.pos,builder.pos+skipped,txt),builder.col+=skipped,builder.pos+=skipped}if(!m)break;pos+=1+skipped;var txt$1=void 0;if("\t"==m[0]){var tabSize=builder.cm.options.tabSize,tabWidth=tabSize-builder.col%tabSize;(txt$1=content.appendChild(elt("span",spaceStr(tabWidth),"cm-tab"))).setAttribute("role","presentation"),txt$1.setAttribute("cm-text","\t"),builder.col+=tabWidth}else"\r"==m[0]||"\n"==m[0]?(txt$1=content.appendChild(elt("span","\r"==m[0]?"␍":"␤","cm-invalidchar"))).setAttribute("cm-text",m[0]):((txt$1=builder.cm.options.specialCharPlaceholder(m[0])).setAttribute("cm-text",m[0]),ie&&ie_version<9?content.appendChild(elt("span",[txt$1])):content.appendChild(txt$1)),builder.col+=1;builder.map.push(builder.pos,builder.pos+1,txt$1),builder.pos++}}else builder.col+=text.length,content=document.createTextNode(displayText),builder.map.push(builder.pos,builder.pos+text.length,content),ie&&ie_version<9&&(mustWrap=!0),builder.pos+=text.length;if(builder.trailingSpace=32==displayText.charCodeAt(text.length-1),style||startStyle||endStyle||mustWrap||css){var fullStyle=style||"";startStyle&&(fullStyle+=startStyle),endStyle&&(fullStyle+=endStyle);var token=elt("span",[content],fullStyle,css);if(attributes)for(var attr in attributes)attributes.hasOwnProperty(attr)&&"style"!=attr&&"class"!=attr&&token.setAttribute(attr,attributes[attr]);return builder.content.appendChild(token)}builder.content.appendChild(content)}}function buildTokenBadBidi(inner,order){return function(builder,text,style,startStyle,endStyle,css,attributes){style=style?style+" cm-force-border":"cm-force-border";for(var start=builder.pos,end=start+text.length;;){for(var part=void 0,i=0;i<order.length&&!((part=order[i]).to>start&&part.from<=start);i++);if(part.to>=end)return inner(builder,text,style,startStyle,endStyle,css,attributes);inner(builder,text.slice(0,part.to-start),style,startStyle,null,css,attributes),startStyle=null,text=text.slice(part.to-start),start=part.to}}}function buildCollapsedSpan(builder,size,marker,ignoreWidget){var widget=!ignoreWidget&&marker.widgetNode;widget&&builder.map.push(builder.pos,builder.pos+size,widget),!ignoreWidget&&builder.cm.display.input.needsContentAttribute&&(widget||(widget=builder.content.appendChild(document.createElement("span"))),widget.setAttribute("cm-marker",marker.id)),widget&&(builder.cm.display.input.setUneditable(widget),builder.content.appendChild(widget)),builder.pos+=size,builder.trailingSpace=!1}function insertLineContent(line,builder,styles){var spans=line.markedSpans,allText=line.text,at=0;if(spans)for(var style,css,spanStyle,spanEndStyle,spanStartStyle,collapsed,attributes,len=allText.length,pos=0,i=1,text="",nextChange=0;;){if(nextChange==pos){spanStyle=spanEndStyle=spanStartStyle=css="",collapsed=attributes=null,nextChange=1/0;for(var foundBookmarks=[],endStyles=void 0,j=0;j<spans.length;++j){var sp=spans[j],m=sp.marker;if("bookmark"==m.type&&sp.from==pos&&m.widgetNode)foundBookmarks.push(m);else if(sp.from<=pos&&(null==sp.to||sp.to>pos||m.collapsed&&sp.to==pos&&sp.from==pos)){if(null!=sp.to&&sp.to!=pos&&nextChange>sp.to&&(nextChange=sp.to,spanEndStyle=""),m.className&&(spanStyle+=" "+m.className),m.css&&(css=(css?css+";":"")+m.css),m.startStyle&&sp.from==pos&&(spanStartStyle+=" "+m.startStyle),m.endStyle&&sp.to==nextChange&&(endStyles||(endStyles=[])).push(m.endStyle,sp.to),m.title&&((attributes||(attributes={})).title=m.title),m.attributes)for(var attr in m.attributes)(attributes||(attributes={}))[attr]=m.attributes[attr];m.collapsed&&(!collapsed||compareCollapsedMarkers(collapsed.marker,m)<0)&&(collapsed=sp)}else sp.from>pos&&nextChange>sp.from&&(nextChange=sp.from)}if(endStyles)for(var j$1=0;j$1<endStyles.length;j$1+=2)endStyles[j$1+1]==nextChange&&(spanEndStyle+=" "+endStyles[j$1]);if(!collapsed||collapsed.from==pos)for(var j$2=0;j$2<foundBookmarks.length;++j$2)buildCollapsedSpan(builder,0,foundBookmarks[j$2]);if(collapsed&&(collapsed.from||0)==pos){if(buildCollapsedSpan(builder,(null==collapsed.to?len+1:collapsed.to)-pos,collapsed.marker,null==collapsed.from),null==collapsed.to)return;collapsed.to==pos&&(collapsed=!1)}}if(len<=pos)break;for(var upto=Math.min(len,nextChange);;){if(text){var end=pos+text.length;if(!collapsed){var tokenText=upto<end?text.slice(0,upto-pos):text;builder.addToken(builder,tokenText,style?style+spanStyle:spanStyle,spanStartStyle,pos+tokenText.length==nextChange?spanEndStyle:"",css,attributes)}if(upto<=end){text=text.slice(upto-pos),pos=upto;break}pos=end,spanStartStyle=""}text=allText.slice(at,at=styles[i++]),style=interpretTokenStyle(styles[i++],builder.cm.options)}}else for(var i$1=1;i$1<styles.length;i$1+=2)builder.addToken(builder,allText.slice(at,at=styles[i$1]),interpretTokenStyle(styles[i$1+1],builder.cm.options))}function LineView(doc,line,lineN){this.line=line,this.rest=function(line){for(var merged,lines;merged=collapsedSpanAtEnd(line);)line=merged.find(1,!0).line,(lines||(lines=[])).push(line);return lines}(line),this.size=this.rest?lineNo(lst(this.rest))-lineN+1:1,this.node=this.text=null,this.hidden=lineIsHidden(doc,line)}function buildViewArray(cm,from,to){for(var nextPos,array=[],pos=from;pos<to;pos=nextPos){var view=new LineView(cm.doc,getLine(cm.doc,pos),pos);nextPos=pos+view.size,array.push(view)}return array}var operationGroup=null;var orphanDelayedCallbacks=null;function signalLater(emitter,type){var arr=getHandlers(emitter,type);if(arr.length){var list,args=Array.prototype.slice.call(arguments,2);operationGroup?list=operationGroup.delayedCallbacks:orphanDelayedCallbacks?list=orphanDelayedCallbacks:(list=orphanDelayedCallbacks=[],setTimeout(fireOrphanDelayed,0));for(var loop=function(i){list.push(function(){return arr[i].apply(null,args)})},i=0;i<arr.length;++i)loop(i)}}function fireOrphanDelayed(){var delayed=orphanDelayedCallbacks;orphanDelayedCallbacks=null;for(var i=0;i<delayed.length;++i)delayed[i]()}function updateLineForChanges(cm,lineView,lineN,dims){for(var j=0;j<lineView.changes.length;j++){var type=lineView.changes[j];"text"==type?updateLineText(cm,lineView):"gutter"==type?updateLineGutter(cm,lineView,lineN,dims):"class"==type?updateLineClasses(cm,lineView):"widget"==type&&updateLineWidgets(cm,lineView,dims)}lineView.changes=null}function ensureLineWrapped(lineView){return lineView.node==lineView.text&&(lineView.node=elt("div",null,null,"position: relative"),lineView.text.parentNode&&lineView.text.parentNode.replaceChild(lineView.node,lineView.text),lineView.node.appendChild(lineView.text),ie&&ie_version<8&&(lineView.node.style.zIndex=2)),lineView.node}function getLineContent(cm,lineView){var ext=cm.display.externalMeasured;return ext&&ext.line==lineView.line?(cm.display.externalMeasured=null,lineView.measure=ext.measure,ext.built):buildLineContent(cm,lineView)}function updateLineText(cm,lineView){var cls=lineView.text.className,built=getLineContent(cm,lineView);lineView.text==lineView.node&&(lineView.node=built.pre),lineView.text.parentNode.replaceChild(built.pre,lineView.text),lineView.text=built.pre,built.bgClass!=lineView.bgClass||built.textClass!=lineView.textClass?(lineView.bgClass=built.bgClass,lineView.textClass=built.textClass,updateLineClasses(cm,lineView)):cls&&(lineView.text.className=cls)}function updateLineClasses(cm,lineView){!function(cm,lineView){var cls=lineView.bgClass?lineView.bgClass+" "+(lineView.line.bgClass||""):lineView.line.bgClass;if(cls&&(cls+=" CodeMirror-linebackground"),lineView.background)cls?lineView.background.className=cls:(lineView.background.parentNode.removeChild(lineView.background),lineView.background=null);else if(cls){var wrap=ensureLineWrapped(lineView);lineView.background=wrap.insertBefore(elt("div",null,cls),wrap.firstChild),cm.display.input.setUneditable(lineView.background)}}(cm,lineView),lineView.line.wrapClass?ensureLineWrapped(lineView).className=lineView.line.wrapClass:lineView.node!=lineView.text&&(lineView.node.className="");var textClass=lineView.textClass?lineView.textClass+" "+(lineView.line.textClass||""):lineView.line.textClass;lineView.text.className=textClass||""}function updateLineGutter(cm,lineView,lineN,dims){if(lineView.gutter&&(lineView.node.removeChild(lineView.gutter),lineView.gutter=null),lineView.gutterBackground&&(lineView.node.removeChild(lineView.gutterBackground),lineView.gutterBackground=null),lineView.line.gutterClass){var wrap=ensureLineWrapped(lineView);lineView.gutterBackground=elt("div",null,"CodeMirror-gutter-background "+lineView.line.gutterClass,"left: "+(cm.options.fixedGutter?dims.fixedPos:-dims.gutterTotalWidth)+"px; width: "+dims.gutterTotalWidth+"px"),cm.display.input.setUneditable(lineView.gutterBackground),wrap.insertBefore(lineView.gutterBackground,lineView.text)}var markers=lineView.line.gutterMarkers;if(cm.options.lineNumbers||markers){var wrap$1=ensureLineWrapped(lineView),gutterWrap=lineView.gutter=elt("div",null,"CodeMirror-gutter-wrapper","left: "+(cm.options.fixedGutter?dims.fixedPos:-dims.gutterTotalWidth)+"px");if(cm.display.input.setUneditable(gutterWrap),wrap$1.insertBefore(gutterWrap,lineView.text),lineView.line.gutterClass&&(gutterWrap.className+=" "+lineView.line.gutterClass),!cm.options.lineNumbers||markers&&markers["CodeMirror-linenumbers"]||(lineView.lineNumber=gutterWrap.appendChild(elt("div",lineNumberFor(cm.options,lineN),"CodeMirror-linenumber CodeMirror-gutter-elt","left: "+dims.gutterLeft["CodeMirror-linenumbers"]+"px; width: "+cm.display.lineNumInnerWidth+"px"))),markers)for(var k=0;k<cm.display.gutterSpecs.length;++k){var id=cm.display.gutterSpecs[k].className,found=markers.hasOwnProperty(id)&&markers[id];found&&gutterWrap.appendChild(elt("div",[found],"CodeMirror-gutter-elt","left: "+dims.gutterLeft[id]+"px; width: "+dims.gutterWidth[id]+"px"))}}}function updateLineWidgets(cm,lineView,dims){lineView.alignable&&(lineView.alignable=null);for(var node=lineView.node.firstChild,next=void 0;node;node=next)next=node.nextSibling,"CodeMirror-linewidget"==node.className&&lineView.node.removeChild(node);insertLineWidgets(cm,lineView,dims)}function buildLineElement(cm,lineView,lineN,dims){var built=getLineContent(cm,lineView);return lineView.text=lineView.node=built.pre,built.bgClass&&(lineView.bgClass=built.bgClass),built.textClass&&(lineView.textClass=built.textClass),updateLineClasses(cm,lineView),updateLineGutter(cm,lineView,lineN,dims),insertLineWidgets(cm,lineView,dims),lineView.node}function insertLineWidgets(cm,lineView,dims){if(insertLineWidgetsFor(cm,lineView.line,lineView,dims,!0),lineView.rest)for(var i=0;i<lineView.rest.length;i++)insertLineWidgetsFor(cm,lineView.rest[i],lineView,dims,!1)}function insertLineWidgetsFor(cm,line,lineView,dims,allowAbove){if(line.widgets)for(var wrap=ensureLineWrapped(lineView),i=0,ws=line.widgets;i<ws.length;++i){var widget=ws[i],node=elt("div",[widget.node],"CodeMirror-linewidget");widget.handleMouseEvents||node.setAttribute("cm-ignore-events","true"),positionLineWidget(widget,node,lineView,dims),cm.display.input.setUneditable(node),allowAbove&&widget.above?wrap.insertBefore(node,lineView.gutter||lineView.text):wrap.appendChild(node),signalLater(widget,"redraw")}}function positionLineWidget(widget,node,lineView,dims){if(widget.noHScroll){(lineView.alignable||(lineView.alignable=[])).push(node);var width=dims.wrapperWidth;node.style.left=dims.fixedPos+"px",widget.coverGutter||(width-=dims.gutterTotalWidth,node.style.paddingLeft=dims.gutterTotalWidth+"px"),node.style.width=width+"px"}widget.coverGutter&&(node.style.zIndex=5,node.style.position="relative",widget.noHScroll||(node.style.marginLeft=-dims.gutterTotalWidth+"px"))}function widgetHeight(widget){if(null!=widget.height)return widget.height;var cm=widget.doc.cm;if(!cm)return 0;if(!contains(document.body,widget.node)){var parentStyle="position: relative;";widget.coverGutter&&(parentStyle+="margin-left: -"+cm.display.gutters.offsetWidth+"px;"),widget.noHScroll&&(parentStyle+="width: "+cm.display.wrapper.clientWidth+"px;"),removeChildrenAndAdd(cm.display.measure,elt("div",[widget.node],null,parentStyle))}return widget.height=widget.node.parentNode.offsetHeight}function eventInWidget(display,e){for(var n=e_target(e);n!=display.wrapper;n=n.parentNode)if(!n||1==n.nodeType&&"true"==n.getAttribute("cm-ignore-events")||n.parentNode==display.sizer&&n!=display.mover)return!0}function paddingTop(display){return display.lineSpace.offsetTop}function paddingVert(display){return display.mover.offsetHeight-display.lineSpace.offsetHeight}function paddingH(display){if(display.cachedPaddingH)return display.cachedPaddingH;var e=removeChildrenAndAdd(display.measure,elt("pre","x")),style=window.getComputedStyle?window.getComputedStyle(e):e.currentStyle,data={left:parseInt(style.paddingLeft),right:parseInt(style.paddingRight)};return isNaN(data.left)||isNaN(data.right)||(display.cachedPaddingH=data),data}function scrollGap(cm){return scrollerGap-cm.display.nativeBarWidth}function displayWidth(cm){return cm.display.scroller.clientWidth-scrollGap(cm)-cm.display.barWidth}function displayHeight(cm){return cm.display.scroller.clientHeight-scrollGap(cm)-cm.display.barHeight}function mapFromLineView(lineView,line,lineN){if(lineView.line==line)return{map:lineView.measure.map,cache:lineView.measure.cache};for(var i=0;i<lineView.rest.length;i++)if(lineView.rest[i]==line)return{map:lineView.measure.maps[i],cache:lineView.measure.caches[i]};for(var i$1=0;i$1<lineView.rest.length;i$1++)if(lineNo(lineView.rest[i$1])>lineN)return{map:lineView.measure.maps[i$1],cache:lineView.measure.caches[i$1],before:!0}}function measureChar(cm,line,ch,bias){return measureCharPrepared(cm,prepareMeasureForLine(cm,line),ch,bias)}function findViewForLine(cm,lineN){if(lineN>=cm.display.viewFrom&&lineN<cm.display.viewTo)return cm.display.view[findViewIndex(cm,lineN)];var ext=cm.display.externalMeasured;return ext&&lineN>=ext.lineN&&lineN<ext.lineN+ext.size?ext:void 0}function prepareMeasureForLine(cm,line){var lineN=lineNo(line),view=findViewForLine(cm,lineN);view&&!view.text?view=null:view&&view.changes&&(updateLineForChanges(cm,view,lineN,getDimensions(cm)),cm.curOp.forceUpdate=!0),view||(view=function(cm,line){var lineN=lineNo(line=visualLine(line)),view=cm.display.externalMeasured=new LineView(cm.doc,line,lineN);view.lineN=lineN;var built=view.built=buildLineContent(cm,view);return view.text=built.pre,removeChildrenAndAdd(cm.display.lineMeasure,built.pre),view}(cm,line));var info=mapFromLineView(view,line,lineN);return{line:line,view:view,rect:null,map:info.map,cache:info.cache,before:info.before,hasHeights:!1}}function measureCharPrepared(cm,prepared,ch,bias,varHeight){prepared.before&&(ch=-1);var found,key=ch+(bias||"");return prepared.cache.hasOwnProperty(key)?found=prepared.cache[key]:(prepared.rect||(prepared.rect=prepared.view.text.getBoundingClientRect()),prepared.hasHeights||(function(cm,lineView,rect){var wrapping=cm.options.lineWrapping,curWidth=wrapping&&displayWidth(cm);if(!lineView.measure.heights||wrapping&&lineView.measure.width!=curWidth){var heights=lineView.measure.heights=[];if(wrapping){lineView.measure.width=curWidth;for(var rects=lineView.text.firstChild.getClientRects(),i=0;i<rects.length-1;i++){var cur=rects[i],next=rects[i+1];2<Math.abs(cur.bottom-next.bottom)&&heights.push((cur.bottom+next.top)/2-rect.top)}}heights.push(rect.bottom-rect.top)}}(cm,prepared.view,prepared.rect),prepared.hasHeights=!0),(found=function(cm,prepared,ch,bias){var rect,place=nodeAndOffsetInLineMap(prepared.map,ch,bias),node=place.node,start=place.start,end=place.end,collapse=place.collapse;if(3==node.nodeType){for(var i$1=0;i$1<4;i$1++){for(;start&&isExtendingChar(prepared.line.text.charAt(place.coverStart+start));)--start;for(;place.coverStart+end<place.coverEnd&&isExtendingChar(prepared.line.text.charAt(place.coverStart+end));)++end;if((rect=ie&&ie_version<9&&0==start&&end==place.coverEnd-place.coverStart?node.parentNode.getBoundingClientRect():getUsefulRect(range(node,start,end).getClientRects(),bias)).left||rect.right||0==start)break;end=start,start-=1,collapse="right"}ie&&ie_version<11&&(rect=function(measure,rect){if(!window.screen||null==screen.logicalXDPI||screen.logicalXDPI==screen.deviceXDPI||!function(measure){if(null!=badZoomedRects)return badZoomedRects;var node=removeChildrenAndAdd(measure,elt("span","x")),normal=node.getBoundingClientRect(),fromRange=range(node,0,1).getBoundingClientRect();return badZoomedRects=1<Math.abs(normal.left-fromRange.left)}(measure))return rect;var scaleX=screen.logicalXDPI/screen.deviceXDPI,scaleY=screen.logicalYDPI/screen.deviceYDPI;return{left:rect.left*scaleX,right:rect.right*scaleX,top:rect.top*scaleY,bottom:rect.bottom*scaleY}}(cm.display.measure,rect))}else{var rects;0<start&&(collapse=bias="right"),rect=cm.options.lineWrapping&&1<(rects=node.getClientRects()).length?rects["right"==bias?rects.length-1:0]:node.getBoundingClientRect()}if(ie&&ie_version<9&&!start&&(!rect||!rect.left&&!rect.right)){var rSpan=node.parentNode.getClientRects()[0];rect=rSpan?{left:rSpan.left,right:rSpan.left+charWidth(cm.display),top:rSpan.top,bottom:rSpan.bottom}:nullRect}for(var rtop=rect.top-prepared.rect.top,rbot=rect.bottom-prepared.rect.top,mid=(rtop+rbot)/2,heights=prepared.view.measure.heights,i=0;i<heights.length-1&&!(mid<heights[i]);i++);var top=i?heights[i-1]:0,bot=heights[i],result={left:("right"==collapse?rect.right:rect.left)-prepared.rect.left,right:("left"==collapse?rect.left:rect.right)-prepared.rect.left,top:top,bottom:bot};rect.left||rect.right||(result.bogus=!0);cm.options.singleCursorHeightPerLine||(result.rtop=rtop,result.rbottom=rbot);return result}(cm,prepared,ch,bias)).bogus||(prepared.cache[key]=found)),{left:found.left,right:found.right,top:varHeight?found.rtop:found.top,bottom:varHeight?found.rbottom:found.bottom}}var measureText,nullRect={left:0,right:0,top:0,bottom:0};function nodeAndOffsetInLineMap(map$$1,ch,bias){for(var node,start,end,collapse,mStart,mEnd,i=0;i<map$$1.length;i+=3)if(mStart=map$$1[i],mEnd=map$$1[i+1],ch<mStart?(start=0,end=1,collapse="left"):ch<mEnd?end=(start=ch-mStart)+1:(i==map$$1.length-3||ch==mEnd&&map$$1[i+3]>ch)&&(start=(end=mEnd-mStart)-1,mEnd<=ch&&(collapse="right")),null!=start){if(node=map$$1[i+2],mStart==mEnd&&bias==(node.insertLeft?"left":"right")&&(collapse=bias),"left"==bias&&0==start)for(;i&&map$$1[i-2]==map$$1[i-3]&&map$$1[i-1].insertLeft;)node=map$$1[2+(i-=3)],collapse="left";if("right"==bias&&start==mEnd-mStart)for(;i<map$$1.length-3&&map$$1[i+3]==map$$1[i+4]&&!map$$1[i+5].insertLeft;)node=map$$1[(i+=3)+2],collapse="right";break}return{node:node,start:start,end:end,collapse:collapse,coverStart:mStart,coverEnd:mEnd}}function getUsefulRect(rects,bias){var rect=nullRect;if("left"==bias)for(var i=0;i<rects.length&&(rect=rects[i]).left==rect.right;i++);else for(var i$1=rects.length-1;0<=i$1&&(rect=rects[i$1]).left==rect.right;i$1--);return rect}function clearLineMeasurementCacheFor(lineView){if(lineView.measure&&(lineView.measure.cache={},lineView.measure.heights=null,lineView.rest))for(var i=0;i<lineView.rest.length;i++)lineView.measure.caches[i]={}}function clearLineMeasurementCache(cm){cm.display.externalMeasure=null,removeChildren(cm.display.lineMeasure);for(var i=0;i<cm.display.view.length;i++)clearLineMeasurementCacheFor(cm.display.view[i])}function clearCaches(cm){clearLineMeasurementCache(cm),cm.display.cachedCharWidth=cm.display.cachedTextHeight=cm.display.cachedPaddingH=null,cm.options.lineWrapping||(cm.display.maxLineChanged=!0),cm.display.lineNumChars=null}function pageScrollX(){return chrome&&android?-(document.body.getBoundingClientRect().left-parseInt(getComputedStyle(document.body).marginLeft)):window.pageXOffset||(document.documentElement||document.body).scrollLeft}function pageScrollY(){return chrome&&android?-(document.body.getBoundingClientRect().top-parseInt(getComputedStyle(document.body).marginTop)):window.pageYOffset||(document.documentElement||document.body).scrollTop}function widgetTopHeight(lineObj){var height=0;if(lineObj.widgets)for(var i=0;i<lineObj.widgets.length;++i)lineObj.widgets[i].above&&(height+=widgetHeight(lineObj.widgets[i]));return height}function intoCoordSystem(cm,lineObj,rect,context,includeWidgets){if(!includeWidgets){var height=widgetTopHeight(lineObj);rect.top+=height,rect.bottom+=height}if("line"==context)return rect;context||(context="local");var yOff=heightAtLine(lineObj);if("local"==context?yOff+=paddingTop(cm.display):yOff-=cm.display.viewOffset,"page"==context||"window"==context){var lOff=cm.display.lineSpace.getBoundingClientRect();yOff+=lOff.top+("window"==context?0:pageScrollY());var xOff=lOff.left+("window"==context?0:pageScrollX());rect.left+=xOff,rect.right+=xOff}return rect.top+=yOff,rect.bottom+=yOff,rect}function fromCoordSystem(cm,coords,context){if("div"==context)return coords;var left=coords.left,top=coords.top;if("page"==context)left-=pageScrollX(),top-=pageScrollY();else if("local"==context||!context){var localBox=cm.display.sizer.getBoundingClientRect();left+=localBox.left,top+=localBox.top}var lineSpaceBox=cm.display.lineSpace.getBoundingClientRect();return{left:left-lineSpaceBox.left,top:top-lineSpaceBox.top}}function charCoords(cm,pos,context,lineObj,bias){return lineObj||(lineObj=getLine(cm.doc,pos.line)),intoCoordSystem(cm,lineObj,measureChar(cm,lineObj,pos.ch,bias),context)}function cursorCoords(cm,pos,context,lineObj,preparedMeasure,varHeight){function get(ch,right){var m=measureCharPrepared(cm,preparedMeasure,ch,right?"right":"left",varHeight);return right?m.left=m.right:m.right=m.left,intoCoordSystem(cm,lineObj,m,context)}lineObj=lineObj||getLine(cm.doc,pos.line),preparedMeasure||(preparedMeasure=prepareMeasureForLine(cm,lineObj));var order=getOrder(lineObj,cm.doc.direction),ch=pos.ch,sticky=pos.sticky;if(ch>=lineObj.text.length?(ch=lineObj.text.length,sticky="before"):ch<=0&&(ch=0,sticky="after"),!order)return get("before"==sticky?ch-1:ch,"before"==sticky);function getBidi(ch,partPos,invert){return get(invert?ch-1:ch,1==order[partPos].level!=invert)}var partPos=getBidiPartAt(order,ch,sticky),other=bidiOther,val=getBidi(ch,partPos,"before"==sticky);return null!=other&&(val.other=getBidi(ch,other,"before"!=sticky)),val}function estimateCoords(cm,pos){var left=0;pos=clipPos(cm.doc,pos),cm.options.lineWrapping||(left=charWidth(cm.display)*pos.ch);var lineObj=getLine(cm.doc,pos.line),top=heightAtLine(lineObj)+paddingTop(cm.display);return{left:left,right:left,top:top,bottom:top+lineObj.height}}function PosWithInfo(line,ch,sticky,outside,xRel){var pos=Pos(line,ch,sticky);return pos.xRel=xRel,outside&&(pos.outside=!0),pos}function coordsChar(cm,x,y){var doc=cm.doc;if((y+=cm.display.viewOffset)<0)return PosWithInfo(doc.first,0,null,!0,-1);var lineN=lineAtHeight(doc,y),last=doc.first+doc.size-1;if(last<lineN)return PosWithInfo(doc.first+doc.size-1,getLine(doc,last).text.length,null,!0,1);x<0&&(x=0);for(var lineObj=getLine(doc,lineN);;){var found=coordsCharInner(cm,lineObj,lineN,x,y),collapsed=collapsedSpanAround(lineObj,found.ch+(0<found.xRel?1:0));if(!collapsed)return found;var rangeEnd=collapsed.find(1);if(rangeEnd.line==lineN)return rangeEnd;lineObj=getLine(doc,lineN=rangeEnd.line)}}function wrappedLineExtent(cm,lineObj,preparedMeasure,y){y-=widgetTopHeight(lineObj);var end=lineObj.text.length,begin=findFirst(function(ch){return measureCharPrepared(cm,preparedMeasure,ch-1).bottom<=y},end,0);return{begin:begin,end:end=findFirst(function(ch){return measureCharPrepared(cm,preparedMeasure,ch).top>y},begin,end)}}function wrappedLineExtentChar(cm,lineObj,preparedMeasure,target){return preparedMeasure||(preparedMeasure=prepareMeasureForLine(cm,lineObj)),wrappedLineExtent(cm,lineObj,preparedMeasure,intoCoordSystem(cm,lineObj,measureCharPrepared(cm,preparedMeasure,target),"line").top)}function boxIsAfter(box,x,y,left){return!(box.bottom<=y)&&(box.top>y||(left?box.left:box.right)>x)}function coordsCharInner(cm,lineObj,lineNo$$1,x,y){y-=heightAtLine(lineObj);var preparedMeasure=prepareMeasureForLine(cm,lineObj),widgetHeight$$1=widgetTopHeight(lineObj),begin=0,end=lineObj.text.length,ltr=!0,order=getOrder(lineObj,cm.doc.direction);if(order){var part=(cm.options.lineWrapping?function(cm,lineObj,_lineNo,preparedMeasure,order,x,y){var ref=wrappedLineExtent(cm,lineObj,preparedMeasure,y),begin=ref.begin,end=ref.end;/\s/.test(lineObj.text.charAt(end-1))&&end--;for(var part=null,closestDist=null,i=0;i<order.length;i++){var p=order[i];if(!(p.from>=end||p.to<=begin)){var ltr=1!=p.level,endX=measureCharPrepared(cm,preparedMeasure,ltr?Math.min(end,p.to)-1:Math.max(begin,p.from)).right,dist=endX<x?x-endX+1e9:endX-x;(!part||dist<closestDist)&&(part=p,closestDist=dist)}}part||(part=order[order.length-1]);part.from<begin&&(part={from:begin,to:part.to,level:part.level});part.to>end&&(part={from:part.from,to:end,level:part.level});return part}:function(cm,lineObj,lineNo$$1,preparedMeasure,order,x,y){var index=findFirst(function(i){var part=order[i],ltr=1!=part.level;return boxIsAfter(cursorCoords(cm,Pos(lineNo$$1,ltr?part.to:part.from,ltr?"before":"after"),"line",lineObj,preparedMeasure),x,y,!0)},0,order.length-1),part=order[index];if(0<index){var ltr=1!=part.level,start=cursorCoords(cm,Pos(lineNo$$1,ltr?part.from:part.to,ltr?"after":"before"),"line",lineObj,preparedMeasure);boxIsAfter(start,x,y,!0)&&start.top>y&&(part=order[index-1])}return part})(cm,lineObj,lineNo$$1,preparedMeasure,order,x,y);begin=(ltr=1!=part.level)?part.from:part.to-1,end=ltr?part.to:part.from-1}var baseX,sticky,chAround=null,boxAround=null,ch=findFirst(function(ch){var box=measureCharPrepared(cm,preparedMeasure,ch);return box.top+=widgetHeight$$1,box.bottom+=widgetHeight$$1,!!boxIsAfter(box,x,y,!1)&&(box.top<=y&&box.left<=x&&(chAround=ch,boxAround=box),!0)},begin,end),outside=!1;if(boxAround){var atLeft=x-boxAround.left<boxAround.right-x,atStart=atLeft==ltr;ch=chAround+(atStart?0:1),sticky=atStart?"after":"before",baseX=atLeft?boxAround.left:boxAround.right}else{ltr||ch!=end&&ch!=begin||ch++,sticky=0==ch?"after":ch==lineObj.text.length?"before":measureCharPrepared(cm,preparedMeasure,ch-(ltr?1:0)).bottom+widgetHeight$$1<=y==ltr?"after":"before";var coords=cursorCoords(cm,Pos(lineNo$$1,ch,sticky),"line",lineObj,preparedMeasure);baseX=coords.left,outside=y<coords.top||y>=coords.bottom}return PosWithInfo(lineNo$$1,ch=skipExtendingChars(lineObj.text,ch,1),sticky,outside,x-baseX)}function textHeight(display){if(null!=display.cachedTextHeight)return display.cachedTextHeight;if(null==measureText){measureText=elt("pre");for(var i=0;i<49;++i)measureText.appendChild(document.createTextNode("x")),measureText.appendChild(elt("br"));measureText.appendChild(document.createTextNode("x"))}removeChildrenAndAdd(display.measure,measureText);var height=measureText.offsetHeight/50;return 3<height&&(display.cachedTextHeight=height),removeChildren(display.measure),height||1}function charWidth(display){if(null!=display.cachedCharWidth)return display.cachedCharWidth;var anchor=elt("span","xxxxxxxxxx"),pre=elt("pre",[anchor]);removeChildrenAndAdd(display.measure,pre);var rect=anchor.getBoundingClientRect(),width=(rect.right-rect.left)/10;return 2<width&&(display.cachedCharWidth=width),width||10}function getDimensions(cm){for(var d=cm.display,left={},width={},gutterLeft=d.gutters.clientLeft,n=d.gutters.firstChild,i=0;n;n=n.nextSibling,++i){var id=cm.display.gutterSpecs[i].className;left[id]=n.offsetLeft+n.clientLeft+gutterLeft,width[id]=n.clientWidth}return{fixedPos:compensateForHScroll(d),gutterTotalWidth:d.gutters.offsetWidth,gutterLeft:left,gutterWidth:width,wrapperWidth:d.wrapper.clientWidth}}function compensateForHScroll(display){return display.scroller.getBoundingClientRect().left-display.sizer.getBoundingClientRect().left}function estimateHeight(cm){var th=textHeight(cm.display),wrapping=cm.options.lineWrapping,perLine=wrapping&&Math.max(5,cm.display.scroller.clientWidth/charWidth(cm.display)-3);return function(line){if(lineIsHidden(cm.doc,line))return 0;var widgetsHeight=0;if(line.widgets)for(var i=0;i<line.widgets.length;i++)line.widgets[i].height&&(widgetsHeight+=line.widgets[i].height);return wrapping?widgetsHeight+(Math.ceil(line.text.length/perLine)||1)*th:widgetsHeight+th}}function estimateLineHeights(cm){var doc=cm.doc,est=estimateHeight(cm);doc.iter(function(line){var estHeight=est(line);estHeight!=line.height&&updateLineHeight(line,estHeight)})}function posFromMouse(cm,e,liberal,forRect){var display=cm.display;if(!liberal&&"true"==e_target(e).getAttribute("cm-not-content"))return null;var x,y,space=display.lineSpace.getBoundingClientRect();try{x=e.clientX-space.left,y=e.clientY-space.top}catch(e){return null}var line,coords=coordsChar(cm,x,y);if(forRect&&1==coords.xRel&&(line=getLine(cm.doc,coords.line).text).length==coords.ch){var colDiff=countColumn(line,line.length,cm.options.tabSize)-line.length;coords=Pos(coords.line,Math.max(0,Math.round((x-paddingH(cm.display).left)/charWidth(cm.display))-colDiff))}return coords}function findViewIndex(cm,n){if(n>=cm.display.viewTo)return null;if((n-=cm.display.viewFrom)<0)return null;for(var view=cm.display.view,i=0;i<view.length;i++)if((n-=view[i].size)<0)return i}function regChange(cm,from,to,lendiff){null==from&&(from=cm.doc.first),null==to&&(to=cm.doc.first+cm.doc.size),lendiff||(lendiff=0);var display=cm.display;if(lendiff&&to<display.viewTo&&(null==display.updateLineNumbers||display.updateLineNumbers>from)&&(display.updateLineNumbers=from),cm.curOp.viewChanged=!0,from>=display.viewTo)sawCollapsedSpans&&visualLineNo(cm.doc,from)<display.viewTo&&resetView(cm);else if(to<=display.viewFrom)sawCollapsedSpans&&visualLineEndNo(cm.doc,to+lendiff)>display.viewFrom?resetView(cm):(display.viewFrom+=lendiff,display.viewTo+=lendiff);else if(from<=display.viewFrom&&to>=display.viewTo)resetView(cm);else if(from<=display.viewFrom){var cut=viewCuttingPoint(cm,to,to+lendiff,1);cut?(display.view=display.view.slice(cut.index),display.viewFrom=cut.lineN,display.viewTo+=lendiff):resetView(cm)}else if(to>=display.viewTo){var cut$1=viewCuttingPoint(cm,from,from,-1);cut$1?(display.view=display.view.slice(0,cut$1.index),display.viewTo=cut$1.lineN):resetView(cm)}else{var cutTop=viewCuttingPoint(cm,from,from,-1),cutBot=viewCuttingPoint(cm,to,to+lendiff,1);cutTop&&cutBot?(display.view=display.view.slice(0,cutTop.index).concat(buildViewArray(cm,cutTop.lineN,cutBot.lineN)).concat(display.view.slice(cutBot.index)),display.viewTo+=lendiff):resetView(cm)}var ext=display.externalMeasured;ext&&(to<ext.lineN?ext.lineN+=lendiff:from<ext.lineN+ext.size&&(display.externalMeasured=null))}function regLineChange(cm,line,type){cm.curOp.viewChanged=!0;var display=cm.display,ext=cm.display.externalMeasured;if(ext&&line>=ext.lineN&&line<ext.lineN+ext.size&&(display.externalMeasured=null),!(line<display.viewFrom||line>=display.viewTo)){var lineView=display.view[findViewIndex(cm,line)];if(null!=lineView.node){var arr=lineView.changes||(lineView.changes=[]);-1==indexOf(arr,type)&&arr.push(type)}}}function resetView(cm){cm.display.viewFrom=cm.display.viewTo=cm.doc.first,cm.display.view=[],cm.display.viewOffset=0}function viewCuttingPoint(cm,oldN,newN,dir){var diff,index=findViewIndex(cm,oldN),view=cm.display.view;if(!sawCollapsedSpans||newN==cm.doc.first+cm.doc.size)return{index:index,lineN:newN};for(var n=cm.display.viewFrom,i=0;i<index;i++)n+=view[i].size;if(n!=oldN){if(0<dir){if(index==view.length-1)return null;diff=n+view[index].size-oldN,index++}else diff=n-oldN;oldN+=diff,newN+=diff}for(;visualLineNo(cm.doc,newN)!=newN;){if(index==(dir<0?0:view.length-1))return null;newN+=dir*view[index-(dir<0?1:0)].size,index+=dir}return{index:index,lineN:newN}}function countDirtyView(cm){for(var view=cm.display.view,dirty=0,i=0;i<view.length;i++){var lineView=view[i];lineView.hidden||lineView.node&&!lineView.changes||++dirty}return dirty}function updateSelection(cm){cm.display.input.showSelection(cm.display.input.prepareSelection())}function prepareSelection(cm,primary){void 0===primary&&(primary=!0);for(var doc=cm.doc,result={},curFragment=result.cursors=document.createDocumentFragment(),selFragment=result.selection=document.createDocumentFragment(),i=0;i<doc.sel.ranges.length;i++)if(primary||i!=doc.sel.primIndex){var range$$1=doc.sel.ranges[i];if(!(range$$1.from().line>=cm.display.viewTo||range$$1.to().line<cm.display.viewFrom)){var collapsed=range$$1.empty();(collapsed||cm.options.showCursorWhenSelecting)&&drawSelectionCursor(cm,range$$1.head,curFragment),collapsed||drawSelectionRange(cm,range$$1,selFragment)}}return result}function drawSelectionCursor(cm,head,output){var pos=cursorCoords(cm,head,"div",null,null,!cm.options.singleCursorHeightPerLine),cursor=output.appendChild(elt("div"," ","CodeMirror-cursor"));if(cursor.style.left=pos.left+"px",cursor.style.top=pos.top+"px",cursor.style.height=Math.max(0,pos.bottom-pos.top)*cm.options.cursorHeight+"px",pos.other){var otherCursor=output.appendChild(elt("div"," ","CodeMirror-cursor CodeMirror-secondarycursor"));otherCursor.style.display="",otherCursor.style.left=pos.other.left+"px",otherCursor.style.top=pos.other.top+"px",otherCursor.style.height=.85*(pos.other.bottom-pos.other.top)+"px"}}function cmpCoords(a,b){return a.top-b.top||a.left-b.left}function drawSelectionRange(cm,range$$1,output){var display=cm.display,doc=cm.doc,fragment=document.createDocumentFragment(),padding=paddingH(cm.display),leftSide=padding.left,rightSide=Math.max(display.sizerWidth,displayWidth(cm)-display.sizer.offsetLeft)-padding.right,docLTR="ltr"==doc.direction;function add(left,top,width,bottom){top<0&&(top=0),top=Math.round(top),bottom=Math.round(bottom),fragment.appendChild(elt("div",null,"CodeMirror-selected","position: absolute; left: "+left+"px;\n top: "+top+"px; width: "+(null==width?rightSide-left:width)+"px;\n height: "+(bottom-top)+"px"))}function drawForLine(line,fromArg,toArg){var start,end,lineObj=getLine(doc,line),lineLen=lineObj.text.length;function coords(ch,bias){return charCoords(cm,Pos(line,ch),"div",lineObj,bias)}function wrapX(pos,dir,side){var extent=wrappedLineExtentChar(cm,lineObj,null,pos),prop="ltr"==dir==("after"==side)?"left":"right";return coords("after"==side?extent.begin:extent.end-(/\s/.test(lineObj.text.charAt(extent.end-1))?2:1),prop)[prop]}var order=getOrder(lineObj,doc.direction);return function(order,from,to,f){if(!order)return f(from,to,"ltr",0);for(var found=!1,i=0;i<order.length;++i){var part=order[i];(part.from<to&&part.to>from||from==to&&part.to==from)&&(f(Math.max(part.from,from),Math.min(part.to,to),1==part.level?"rtl":"ltr",i),found=!0)}found||f(from,to,"ltr")}(order,fromArg||0,null==toArg?lineLen:toArg,function(from,to,dir,i){var ltr="ltr"==dir,fromPos=coords(from,ltr?"left":"right"),toPos=coords(to-1,ltr?"right":"left"),openStart=null==fromArg&&0==from,openEnd=null==toArg&&to==lineLen,first=0==i,last=!order||i==order.length-1;if(toPos.top-fromPos.top<=3){var openRight=(docLTR?openEnd:openStart)&&last,left=(docLTR?openStart:openEnd)&&first?leftSide:(ltr?fromPos:toPos).left,right=openRight?rightSide:(ltr?toPos:fromPos).right;add(left,fromPos.top,right-left,fromPos.bottom)}else{var topLeft,topRight,botLeft,botRight;botRight=ltr?(topLeft=docLTR&&openStart&&first?leftSide:fromPos.left,topRight=docLTR?rightSide:wrapX(from,dir,"before"),botLeft=docLTR?leftSide:wrapX(to,dir,"after"),docLTR&&openEnd&&last?rightSide:toPos.right):(topLeft=docLTR?wrapX(from,dir,"before"):leftSide,topRight=!docLTR&&openStart&&first?rightSide:fromPos.right,botLeft=!docLTR&&openEnd&&last?leftSide:toPos.left,docLTR?wrapX(to,dir,"after"):rightSide),add(topLeft,fromPos.top,topRight-topLeft,fromPos.bottom),fromPos.bottom<toPos.top&&add(leftSide,fromPos.bottom,null,toPos.top),add(botLeft,toPos.top,botRight-botLeft,toPos.bottom)}(!start||cmpCoords(fromPos,start)<0)&&(start=fromPos),cmpCoords(toPos,start)<0&&(start=toPos),(!end||cmpCoords(fromPos,end)<0)&&(end=fromPos),cmpCoords(toPos,end)<0&&(end=toPos)}),{start:start,end:end}}var sFrom=range$$1.from(),sTo=range$$1.to();if(sFrom.line==sTo.line)drawForLine(sFrom.line,sFrom.ch,sTo.ch);else{var fromLine=getLine(doc,sFrom.line),toLine=getLine(doc,sTo.line),singleVLine=visualLine(fromLine)==visualLine(toLine),leftEnd=drawForLine(sFrom.line,sFrom.ch,singleVLine?fromLine.text.length+1:null).end,rightStart=drawForLine(sTo.line,singleVLine?0:null,sTo.ch).start;singleVLine&&(leftEnd.top<rightStart.top-2?(add(leftEnd.right,leftEnd.top,null,leftEnd.bottom),add(leftSide,rightStart.top,rightStart.left,rightStart.bottom)):add(leftEnd.right,leftEnd.top,rightStart.left-leftEnd.right,leftEnd.bottom)),leftEnd.bottom<rightStart.top&&add(leftSide,leftEnd.bottom,null,rightStart.top)}output.appendChild(fragment)}function restartBlink(cm){if(cm.state.focused){var display=cm.display;clearInterval(display.blinker);var on=!0;display.cursorDiv.style.visibility="",0<cm.options.cursorBlinkRate?display.blinker=setInterval(function(){return display.cursorDiv.style.visibility=(on=!on)?"":"hidden"},cm.options.cursorBlinkRate):cm.options.cursorBlinkRate<0&&(display.cursorDiv.style.visibility="hidden")}}function ensureFocus(cm){cm.state.focused||(cm.display.input.focus(),onFocus(cm))}function delayBlurEvent(cm){cm.state.delayingBlurEvent=!0,setTimeout(function(){cm.state.delayingBlurEvent&&(cm.state.delayingBlurEvent=!1,onBlur(cm))},100)}function onFocus(cm,e){cm.state.delayingBlurEvent&&(cm.state.delayingBlurEvent=!1),"nocursor"!=cm.options.readOnly&&(cm.state.focused||(signal(cm,"focus",cm,e),cm.state.focused=!0,addClass(cm.display.wrapper,"CodeMirror-focused"),cm.curOp||cm.display.selForContextMenu==cm.doc.sel||(cm.display.input.reset(),webkit&&setTimeout(function(){return cm.display.input.reset(!0)},20)),cm.display.input.receivedFocus()),restartBlink(cm))}function onBlur(cm,e){cm.state.delayingBlurEvent||(cm.state.focused&&(signal(cm,"blur",cm,e),cm.state.focused=!1,rmClass(cm.display.wrapper,"CodeMirror-focused")),clearInterval(cm.display.blinker),setTimeout(function(){cm.state.focused||(cm.display.shift=!1)},150))}function updateHeightsInViewport(cm){for(var display=cm.display,prevBottom=display.lineDiv.offsetTop,i=0;i<display.view.length;i++){var cur=display.view[i],wrapping=cm.options.lineWrapping,height=void 0,width=0;if(!cur.hidden){if(ie&&ie_version<8){var bot=cur.node.offsetTop+cur.node.offsetHeight;height=bot-prevBottom,prevBottom=bot}else{var box=cur.node.getBoundingClientRect();height=box.bottom-box.top,!wrapping&&cur.text.firstChild&&(width=cur.text.firstChild.getBoundingClientRect().right-box.left-1)}var diff=cur.line.height-height;if((.005<diff||diff<-.005)&&(updateLineHeight(cur.line,height),updateWidgetHeight(cur.line),cur.rest))for(var j=0;j<cur.rest.length;j++)updateWidgetHeight(cur.rest[j]);if(width>cm.display.sizerWidth){var chWidth=Math.ceil(width/charWidth(cm.display));chWidth>cm.display.maxLineLength&&(cm.display.maxLineLength=chWidth,cm.display.maxLine=cur.line,cm.display.maxLineChanged=!0)}}}}function updateWidgetHeight(line){if(line.widgets)for(var i=0;i<line.widgets.length;++i){var w=line.widgets[i],parent=w.node.parentNode;parent&&(w.height=parent.offsetHeight)}}function visibleLines(display,doc,viewport){var top=viewport&&null!=viewport.top?Math.max(0,viewport.top):display.scroller.scrollTop;top=Math.floor(top-paddingTop(display));var bottom=viewport&&null!=viewport.bottom?viewport.bottom:top+display.wrapper.clientHeight,from=lineAtHeight(doc,top),to=lineAtHeight(doc,bottom);if(viewport&&viewport.ensure){var ensureFrom=viewport.ensure.from.line,ensureTo=viewport.ensure.to.line;ensureFrom<from?to=lineAtHeight(doc,heightAtLine(getLine(doc,from=ensureFrom))+display.wrapper.clientHeight):Math.min(ensureTo,doc.lastLine())>=to&&(from=lineAtHeight(doc,heightAtLine(getLine(doc,ensureTo))-display.wrapper.clientHeight),to=ensureTo)}return{from:from,to:Math.max(to,from+1)}}function calculateScrollPos(cm,rect){var display=cm.display,snapMargin=textHeight(cm.display);rect.top<0&&(rect.top=0);var screentop=cm.curOp&&null!=cm.curOp.scrollTop?cm.curOp.scrollTop:display.scroller.scrollTop,screen=displayHeight(cm),result={};rect.bottom-rect.top>screen&&(rect.bottom=rect.top+screen);var docBottom=cm.doc.height+paddingVert(display),atTop=rect.top<snapMargin,atBottom=rect.bottom>docBottom-snapMargin;if(rect.top<screentop)result.scrollTop=atTop?0:rect.top;else if(rect.bottom>screentop+screen){var newTop=Math.min(rect.top,(atBottom?docBottom:rect.bottom)-screen);newTop!=screentop&&(result.scrollTop=newTop)}var screenleft=cm.curOp&&null!=cm.curOp.scrollLeft?cm.curOp.scrollLeft:display.scroller.scrollLeft,screenw=displayWidth(cm)-(cm.options.fixedGutter?display.gutters.offsetWidth:0),tooWide=rect.right-rect.left>screenw;return tooWide&&(rect.right=rect.left+screenw),rect.left<10?result.scrollLeft=0:rect.left<screenleft?result.scrollLeft=Math.max(0,rect.left-(tooWide?0:10)):rect.right>screenw+screenleft-3&&(result.scrollLeft=rect.right+(tooWide?0:10)-screenw),result}function addToScrollTop(cm,top){null!=top&&(resolveScrollToPos(cm),cm.curOp.scrollTop=(null==cm.curOp.scrollTop?cm.doc.scrollTop:cm.curOp.scrollTop)+top)}function ensureCursorVisible(cm){resolveScrollToPos(cm);var cur=cm.getCursor();cm.curOp.scrollToPos={from:cur,to:cur,margin:cm.options.cursorScrollMargin}}function scrollToCoords(cm,x,y){null==x&&null==y||resolveScrollToPos(cm),null!=x&&(cm.curOp.scrollLeft=x),null!=y&&(cm.curOp.scrollTop=y)}function resolveScrollToPos(cm){var range$$1=cm.curOp.scrollToPos;range$$1&&(cm.curOp.scrollToPos=null,scrollToCoordsRange(cm,estimateCoords(cm,range$$1.from),estimateCoords(cm,range$$1.to),range$$1.margin))}function scrollToCoordsRange(cm,from,to,margin){var sPos=calculateScrollPos(cm,{left:Math.min(from.left,to.left),top:Math.min(from.top,to.top)-margin,right:Math.max(from.right,to.right),bottom:Math.max(from.bottom,to.bottom)+margin});scrollToCoords(cm,sPos.scrollLeft,sPos.scrollTop)}function updateScrollTop(cm,val){Math.abs(cm.doc.scrollTop-val)<2||(gecko||updateDisplaySimple(cm,{top:val}),setScrollTop(cm,val,!0),gecko&&updateDisplaySimple(cm),startWorker(cm,100))}function setScrollTop(cm,val,forceScroll){val=Math.min(cm.display.scroller.scrollHeight-cm.display.scroller.clientHeight,val),cm.display.scroller.scrollTop==val&&!forceScroll||(cm.doc.scrollTop=val,cm.display.scrollbars.setScrollTop(val),cm.display.scroller.scrollTop!=val&&(cm.display.scroller.scrollTop=val))}function setScrollLeft(cm,val,isScroller,forceScroll){val=Math.min(val,cm.display.scroller.scrollWidth-cm.display.scroller.clientWidth),(isScroller?val==cm.doc.scrollLeft:Math.abs(cm.doc.scrollLeft-val)<2)&&!forceScroll||(cm.doc.scrollLeft=val,alignHorizontally(cm),cm.display.scroller.scrollLeft!=val&&(cm.display.scroller.scrollLeft=val),cm.display.scrollbars.setScrollLeft(val))}function measureForScrollbars(cm){var d=cm.display,gutterW=d.gutters.offsetWidth,docH=Math.round(cm.doc.height+paddingVert(cm.display));return{clientHeight:d.scroller.clientHeight,viewHeight:d.wrapper.clientHeight,scrollWidth:d.scroller.scrollWidth,clientWidth:d.scroller.clientWidth,viewWidth:d.wrapper.clientWidth,barLeft:cm.options.fixedGutter?gutterW:0,docHeight:docH,scrollHeight:docH+scrollGap(cm)+d.barHeight,nativeBarWidth:d.nativeBarWidth,gutterWidth:gutterW}}function NativeScrollbars(place,scroll,cm){this.cm=cm;var vert=this.vert=elt("div",[elt("div",null,null,"min-width: 1px")],"CodeMirror-vscrollbar"),horiz=this.horiz=elt("div",[elt("div",null,null,"height: 100%; min-height: 1px")],"CodeMirror-hscrollbar");vert.tabIndex=horiz.tabIndex=-1,place(vert),place(horiz),on(vert,"scroll",function(){vert.clientHeight&&scroll(vert.scrollTop,"vertical")}),on(horiz,"scroll",function(){horiz.clientWidth&&scroll(horiz.scrollLeft,"horizontal")}),this.checkedZeroWidth=!1,ie&&ie_version<8&&(this.horiz.style.minHeight=this.vert.style.minWidth="18px")}NativeScrollbars.prototype.update=function(measure){var needsH=measure.scrollWidth>measure.clientWidth+1,needsV=measure.scrollHeight>measure.clientHeight+1,sWidth=measure.nativeBarWidth;if(needsV){this.vert.style.display="block",this.vert.style.bottom=needsH?sWidth+"px":"0";var totalHeight=measure.viewHeight-(needsH?sWidth:0);this.vert.firstChild.style.height=Math.max(0,measure.scrollHeight-measure.clientHeight+totalHeight)+"px"}else this.vert.style.display="",this.vert.firstChild.style.height="0";if(needsH){this.horiz.style.display="block",this.horiz.style.right=needsV?sWidth+"px":"0",this.horiz.style.left=measure.barLeft+"px";var totalWidth=measure.viewWidth-measure.barLeft-(needsV?sWidth:0);this.horiz.firstChild.style.width=Math.max(0,measure.scrollWidth-measure.clientWidth+totalWidth)+"px"}else this.horiz.style.display="",this.horiz.firstChild.style.width="0";return!this.checkedZeroWidth&&0<measure.clientHeight&&(0==sWidth&&this.zeroWidthHack(),this.checkedZeroWidth=!0),{right:needsV?sWidth:0,bottom:needsH?sWidth:0}},NativeScrollbars.prototype.setScrollLeft=function(pos){this.horiz.scrollLeft!=pos&&(this.horiz.scrollLeft=pos),this.disableHoriz&&this.enableZeroWidthBar(this.horiz,this.disableHoriz,"horiz")},NativeScrollbars.prototype.setScrollTop=function(pos){this.vert.scrollTop!=pos&&(this.vert.scrollTop=pos),this.disableVert&&this.enableZeroWidthBar(this.vert,this.disableVert,"vert")},NativeScrollbars.prototype.zeroWidthHack=function(){var w=mac&&!mac_geMountainLion?"12px":"18px";this.horiz.style.height=this.vert.style.width=w,this.horiz.style.pointerEvents=this.vert.style.pointerEvents="none",this.disableHoriz=new Delayed,this.disableVert=new Delayed},NativeScrollbars.prototype.enableZeroWidthBar=function(bar,delay,type){bar.style.pointerEvents="auto",delay.set(1e3,function maybeDisable(){var box=bar.getBoundingClientRect();("vert"==type?document.elementFromPoint(box.right-1,(box.top+box.bottom)/2):document.elementFromPoint((box.right+box.left)/2,box.bottom-1))!=bar?bar.style.pointerEvents="none":delay.set(1e3,maybeDisable)})},NativeScrollbars.prototype.clear=function(){var parent=this.horiz.parentNode;parent.removeChild(this.horiz),parent.removeChild(this.vert)};function NullScrollbars(){}function updateScrollbars(cm,measure){measure||(measure=measureForScrollbars(cm));var startWidth=cm.display.barWidth,startHeight=cm.display.barHeight;updateScrollbarsInner(cm,measure);for(var i=0;i<4&&startWidth!=cm.display.barWidth||startHeight!=cm.display.barHeight;i++)startWidth!=cm.display.barWidth&&cm.options.lineWrapping&&updateHeightsInViewport(cm),updateScrollbarsInner(cm,measureForScrollbars(cm)),startWidth=cm.display.barWidth,startHeight=cm.display.barHeight}function updateScrollbarsInner(cm,measure){var d=cm.display,sizes=d.scrollbars.update(measure);d.sizer.style.paddingRight=(d.barWidth=sizes.right)+"px",d.sizer.style.paddingBottom=(d.barHeight=sizes.bottom)+"px",d.heightForcer.style.borderBottom=sizes.bottom+"px solid transparent",sizes.right&&sizes.bottom?(d.scrollbarFiller.style.display="block",d.scrollbarFiller.style.height=sizes.bottom+"px",d.scrollbarFiller.style.width=sizes.right+"px"):d.scrollbarFiller.style.display="",sizes.bottom&&cm.options.coverGutterNextToScrollbar&&cm.options.fixedGutter?(d.gutterFiller.style.display="block",d.gutterFiller.style.height=sizes.bottom+"px",d.gutterFiller.style.width=measure.gutterWidth+"px"):d.gutterFiller.style.display=""}NullScrollbars.prototype.update=function(){return{bottom:0,right:0}},NullScrollbars.prototype.setScrollLeft=function(){},NullScrollbars.prototype.setScrollTop=function(){},NullScrollbars.prototype.clear=function(){};var scrollbarModel={native:NativeScrollbars,null:NullScrollbars};function initScrollbars(cm){cm.display.scrollbars&&(cm.display.scrollbars.clear(),cm.display.scrollbars.addClass&&rmClass(cm.display.wrapper,cm.display.scrollbars.addClass)),cm.display.scrollbars=new scrollbarModel[cm.options.scrollbarStyle](function(node){cm.display.wrapper.insertBefore(node,cm.display.scrollbarFiller),on(node,"mousedown",function(){cm.state.focused&&setTimeout(function(){return cm.display.input.focus()},0)}),node.setAttribute("cm-not-content","true")},function(pos,axis){"horizontal"==axis?setScrollLeft(cm,pos):updateScrollTop(cm,pos)},cm),cm.display.scrollbars.addClass&&addClass(cm.display.wrapper,cm.display.scrollbars.addClass)}var nextOpId=0;function startOperation(cm){cm.curOp={cm:cm,viewChanged:!1,startHeight:cm.doc.height,forceUpdate:!1,updateInput:0,typing:!1,changeObjs:null,cursorActivityHandlers:null,cursorActivityCalled:0,selectionChanged:!1,updateMaxLine:!1,scrollLeft:null,scrollTop:null,scrollToPos:null,focus:!1,id:++nextOpId},function(op){operationGroup?operationGroup.ops.push(op):op.ownsGroup=operationGroup={ops:[op],delayedCallbacks:[]}}(cm.curOp)}function endOperation(cm){var op=cm.curOp;op&&function(op,endCb){var group=op.ownsGroup;if(group)try{!function(group){var callbacks=group.delayedCallbacks,i=0;do{for(;i<callbacks.length;i++)callbacks[i].call(null);for(var j=0;j<group.ops.length;j++){var op=group.ops[j];if(op.cursorActivityHandlers)for(;op.cursorActivityCalled<op.cursorActivityHandlers.length;)op.cursorActivityHandlers[op.cursorActivityCalled++].call(null,op.cm)}}while(i<callbacks.length)}(group)}finally{operationGroup=null,endCb(group)}}(op,function(group){for(var i=0;i<group.ops.length;i++)group.ops[i].cm.curOp=null;!function(group){for(var ops=group.ops,i=0;i<ops.length;i++)endOperation_R1(ops[i]);for(var i$1=0;i$1<ops.length;i$1++)(op=ops[i$1]).updatedDisplay=op.mustUpdate&&updateDisplayIfNeeded(op.cm,op.update);var op;for(var i$2=0;i$2<ops.length;i$2++)endOperation_R2(ops[i$2]);for(var i$3=0;i$3<ops.length;i$3++)endOperation_W2(ops[i$3]);for(var i$4=0;i$4<ops.length;i$4++)endOperation_finish(ops[i$4])}(group)})}function endOperation_R1(op){var cm=op.cm,display=cm.display;!function(cm){var display=cm.display;!display.scrollbarsClipped&&display.scroller.offsetWidth&&(display.nativeBarWidth=display.scroller.offsetWidth-display.scroller.clientWidth,display.heightForcer.style.height=scrollGap(cm)+"px",display.sizer.style.marginBottom=-display.nativeBarWidth+"px",display.sizer.style.borderRightWidth=scrollGap(cm)+"px",display.scrollbarsClipped=!0)}(cm),op.updateMaxLine&&findMaxLine(cm),op.mustUpdate=op.viewChanged||op.forceUpdate||null!=op.scrollTop||op.scrollToPos&&(op.scrollToPos.from.line<display.viewFrom||op.scrollToPos.to.line>=display.viewTo)||display.maxLineChanged&&cm.options.lineWrapping,op.update=op.mustUpdate&&new DisplayUpdate(cm,op.mustUpdate&&{top:op.scrollTop,ensure:op.scrollToPos},op.forceUpdate)}function endOperation_R2(op){var cm=op.cm,display=cm.display;op.updatedDisplay&&updateHeightsInViewport(cm),op.barMeasure=measureForScrollbars(cm),display.maxLineChanged&&!cm.options.lineWrapping&&(op.adjustWidthTo=measureChar(cm,display.maxLine,display.maxLine.text.length).left+3,cm.display.sizerWidth=op.adjustWidthTo,op.barMeasure.scrollWidth=Math.max(display.scroller.clientWidth,display.sizer.offsetLeft+op.adjustWidthTo+scrollGap(cm)+cm.display.barWidth),op.maxScrollLeft=Math.max(0,display.sizer.offsetLeft+op.adjustWidthTo-displayWidth(cm))),(op.updatedDisplay||op.selectionChanged)&&(op.preparedSelection=display.input.prepareSelection())}function endOperation_W2(op){var cm=op.cm;null!=op.adjustWidthTo&&(cm.display.sizer.style.minWidth=op.adjustWidthTo+"px",op.maxScrollLeft<cm.doc.scrollLeft&&setScrollLeft(cm,Math.min(cm.display.scroller.scrollLeft,op.maxScrollLeft),!0),cm.display.maxLineChanged=!1);var takeFocus=op.focus&&op.focus==activeElt();op.preparedSelection&&cm.display.input.showSelection(op.preparedSelection,takeFocus),!op.updatedDisplay&&op.startHeight==cm.doc.height||updateScrollbars(cm,op.barMeasure),op.updatedDisplay&&setDocumentHeight(cm,op.barMeasure),op.selectionChanged&&restartBlink(cm),cm.state.focused&&op.updateInput&&cm.display.input.reset(op.typing),takeFocus&&ensureFocus(op.cm)}function endOperation_finish(op){var cm=op.cm,display=cm.display,doc=cm.doc;op.updatedDisplay&&postUpdateDisplay(cm,op.update),null==display.wheelStartX||null==op.scrollTop&&null==op.scrollLeft&&!op.scrollToPos||(display.wheelStartX=display.wheelStartY=null),null!=op.scrollTop&&setScrollTop(cm,op.scrollTop,op.forceScroll),null!=op.scrollLeft&&setScrollLeft(cm,op.scrollLeft,!0,!0),op.scrollToPos&&function(cm,rect){if(!signalDOMEvent(cm,"scrollCursorIntoView")){var display=cm.display,box=display.sizer.getBoundingClientRect(),doScroll=null;if(rect.top+box.top<0?doScroll=!0:rect.bottom+box.top>(window.innerHeight||document.documentElement.clientHeight)&&(doScroll=!1),null!=doScroll&&!phantom){var scrollNode=elt("div","",null,"position: absolute;\n top: "+(rect.top-display.viewOffset-paddingTop(cm.display))+"px;\n height: "+(rect.bottom-rect.top+scrollGap(cm)+display.barHeight)+"px;\n left: "+rect.left+"px; width: "+Math.max(2,rect.right-rect.left)+"px;");cm.display.lineSpace.appendChild(scrollNode),scrollNode.scrollIntoView(doScroll),cm.display.lineSpace.removeChild(scrollNode)}}}(cm,function(cm,pos,end,margin){var rect;null==margin&&(margin=0),cm.options.lineWrapping||pos!=end||(end="before"==(pos=pos.ch?Pos(pos.line,"before"==pos.sticky?pos.ch-1:pos.ch,"after"):pos).sticky?Pos(pos.line,pos.ch+1,"before"):pos);for(var limit=0;limit<5;limit++){var changed=!1,coords=cursorCoords(cm,pos),endCoords=end&&end!=pos?cursorCoords(cm,end):coords,scrollPos=calculateScrollPos(cm,rect={left:Math.min(coords.left,endCoords.left),top:Math.min(coords.top,endCoords.top)-margin,right:Math.max(coords.left,endCoords.left),bottom:Math.max(coords.bottom,endCoords.bottom)+margin}),startTop=cm.doc.scrollTop,startLeft=cm.doc.scrollLeft;if(null!=scrollPos.scrollTop&&(updateScrollTop(cm,scrollPos.scrollTop),1<Math.abs(cm.doc.scrollTop-startTop)&&(changed=!0)),null!=scrollPos.scrollLeft&&(setScrollLeft(cm,scrollPos.scrollLeft),1<Math.abs(cm.doc.scrollLeft-startLeft)&&(changed=!0)),!changed)break}return rect}(cm,clipPos(doc,op.scrollToPos.from),clipPos(doc,op.scrollToPos.to),op.scrollToPos.margin));var hidden=op.maybeHiddenMarkers,unhidden=op.maybeUnhiddenMarkers;if(hidden)for(var i=0;i<hidden.length;++i)hidden[i].lines.length||signal(hidden[i],"hide");if(unhidden)for(var i$1=0;i$1<unhidden.length;++i$1)unhidden[i$1].lines.length&&signal(unhidden[i$1],"unhide");display.wrapper.offsetHeight&&(doc.scrollTop=cm.display.scroller.scrollTop),op.changeObjs&&signal(cm,"changes",cm,op.changeObjs),op.update&&op.update.finish()}function runInOp(cm,f){if(cm.curOp)return f();startOperation(cm);try{return f()}finally{endOperation(cm)}}function operation(cm,f){return function(){if(cm.curOp)return f.apply(cm,arguments);startOperation(cm);try{return f.apply(cm,arguments)}finally{endOperation(cm)}}}function methodOp(f){return function(){if(this.curOp)return f.apply(this,arguments);startOperation(this);try{return f.apply(this,arguments)}finally{endOperation(this)}}}function docMethodOp(f){return function(){var cm=this.cm;if(!cm||cm.curOp)return f.apply(this,arguments);startOperation(cm);try{return f.apply(this,arguments)}finally{endOperation(cm)}}}function startWorker(cm,time){cm.doc.highlightFrontier<cm.display.viewTo&&cm.state.highlight.set(time,bind(highlightWorker,cm))}function highlightWorker(cm){var doc=cm.doc;if(!(doc.highlightFrontier>=cm.display.viewTo)){var end=+new Date+cm.options.workTime,context=getContextBefore(cm,doc.highlightFrontier),changedLines=[];doc.iter(context.line,Math.min(doc.first+doc.size,cm.display.viewTo+500),function(line){if(context.line>=cm.display.viewFrom){var oldStyles=line.styles,resetState=line.text.length>cm.options.maxHighlightLength?copyState(doc.mode,context.state):null,highlighted=highlightLine(cm,line,context,!0);resetState&&(context.state=resetState),line.styles=highlighted.styles;var oldCls=line.styleClasses,newCls=highlighted.classes;newCls?line.styleClasses=newCls:oldCls&&(line.styleClasses=null);for(var ischange=!oldStyles||oldStyles.length!=line.styles.length||oldCls!=newCls&&(!oldCls||!newCls||oldCls.bgClass!=newCls.bgClass||oldCls.textClass!=newCls.textClass),i=0;!ischange&&i<oldStyles.length;++i)ischange=oldStyles[i]!=line.styles[i];ischange&&changedLines.push(context.line),line.stateAfter=context.save(),context.nextLine()}else line.text.length<=cm.options.maxHighlightLength&&processLine(cm,line.text,context),line.stateAfter=context.line%5==0?context.save():null,context.nextLine();if(+new Date>end)return startWorker(cm,cm.options.workDelay),!0}),doc.highlightFrontier=context.line,doc.modeFrontier=Math.max(doc.modeFrontier,context.line),changedLines.length&&runInOp(cm,function(){for(var i=0;i<changedLines.length;i++)regLineChange(cm,changedLines[i],"text")})}}var DisplayUpdate=function(cm,viewport,force){var display=cm.display;this.viewport=viewport,this.visible=visibleLines(display,cm.doc,viewport),this.editorIsHidden=!display.wrapper.offsetWidth,this.wrapperHeight=display.wrapper.clientHeight,this.wrapperWidth=display.wrapper.clientWidth,this.oldDisplayWidth=displayWidth(cm),this.force=force,this.dims=getDimensions(cm),this.events=[]};function updateDisplayIfNeeded(cm,update){var display=cm.display,doc=cm.doc;if(update.editorIsHidden)return resetView(cm),!1;if(!update.force&&update.visible.from>=display.viewFrom&&update.visible.to<=display.viewTo&&(null==display.updateLineNumbers||display.updateLineNumbers>=display.viewTo)&&display.renderedView==display.view&&0==countDirtyView(cm))return!1;maybeUpdateLineNumberWidth(cm)&&(resetView(cm),update.dims=getDimensions(cm));var end=doc.first+doc.size,from=Math.max(update.visible.from-cm.options.viewportMargin,doc.first),to=Math.min(end,update.visible.to+cm.options.viewportMargin);display.viewFrom<from&&from-display.viewFrom<20&&(from=Math.max(doc.first,display.viewFrom)),display.viewTo>to&&display.viewTo-to<20&&(to=Math.min(end,display.viewTo)),sawCollapsedSpans&&(from=visualLineNo(cm.doc,from),to=visualLineEndNo(cm.doc,to));var different=from!=display.viewFrom||to!=display.viewTo||display.lastWrapHeight!=update.wrapperHeight||display.lastWrapWidth!=update.wrapperWidth;!function(cm,from,to){var display=cm.display;0==display.view.length||from>=display.viewTo||to<=display.viewFrom?(display.view=buildViewArray(cm,from,to),display.viewFrom=from):(display.viewFrom>from?display.view=buildViewArray(cm,from,display.viewFrom).concat(display.view):display.viewFrom<from&&(display.view=display.view.slice(findViewIndex(cm,from))),display.viewFrom=from,display.viewTo<to?display.view=display.view.concat(buildViewArray(cm,display.viewTo,to)):display.viewTo>to&&(display.view=display.view.slice(0,findViewIndex(cm,to)))),display.viewTo=to}(cm,from,to),display.viewOffset=heightAtLine(getLine(cm.doc,display.viewFrom)),cm.display.mover.style.top=display.viewOffset+"px";var toUpdate=countDirtyView(cm);if(!different&&0==toUpdate&&!update.force&&display.renderedView==display.view&&(null==display.updateLineNumbers||display.updateLineNumbers>=display.viewTo))return!1;var selSnapshot=function(cm){if(cm.hasFocus())return null;var active=activeElt();if(!active||!contains(cm.display.lineDiv,active))return null;var result={activeElt:active};if(window.getSelection){var sel=window.getSelection();sel.anchorNode&&sel.extend&&contains(cm.display.lineDiv,sel.anchorNode)&&(result.anchorNode=sel.anchorNode,result.anchorOffset=sel.anchorOffset,result.focusNode=sel.focusNode,result.focusOffset=sel.focusOffset)}return result}(cm);return 4<toUpdate&&(display.lineDiv.style.display="none"),function(cm,updateNumbersFrom,dims){var display=cm.display,lineNumbers=cm.options.lineNumbers,container=display.lineDiv,cur=container.firstChild;function rm(node){var next=node.nextSibling;return webkit&&mac&&cm.display.currentWheelTarget==node?node.style.display="none":node.parentNode.removeChild(node),next}for(var view=display.view,lineN=display.viewFrom,i=0;i<view.length;i++){var lineView=view[i];if(lineView.hidden);else if(lineView.node&&lineView.node.parentNode==container){for(;cur!=lineView.node;)cur=rm(cur);var updateNumber=lineNumbers&&null!=updateNumbersFrom&&updateNumbersFrom<=lineN&&lineView.lineNumber;lineView.changes&&(-1<indexOf(lineView.changes,"gutter")&&(updateNumber=!1),updateLineForChanges(cm,lineView,lineN,dims)),updateNumber&&(removeChildren(lineView.lineNumber),lineView.lineNumber.appendChild(document.createTextNode(lineNumberFor(cm.options,lineN)))),cur=lineView.node.nextSibling}else{var node=buildLineElement(cm,lineView,lineN,dims);container.insertBefore(node,cur)}lineN+=lineView.size}for(;cur;)cur=rm(cur)}(cm,display.updateLineNumbers,update.dims),4<toUpdate&&(display.lineDiv.style.display=""),display.renderedView=display.view,function(snapshot){if(snapshot&&snapshot.activeElt&&snapshot.activeElt!=activeElt()&&(snapshot.activeElt.focus(),snapshot.anchorNode&&contains(document.body,snapshot.anchorNode)&&contains(document.body,snapshot.focusNode))){var sel=window.getSelection(),range$$1=document.createRange();range$$1.setEnd(snapshot.anchorNode,snapshot.anchorOffset),range$$1.collapse(!1),sel.removeAllRanges(),sel.addRange(range$$1),sel.extend(snapshot.focusNode,snapshot.focusOffset)}}(selSnapshot),removeChildren(display.cursorDiv),removeChildren(display.selectionDiv),display.gutters.style.height=display.sizer.style.minHeight=0,different&&(display.lastWrapHeight=update.wrapperHeight,display.lastWrapWidth=update.wrapperWidth,startWorker(cm,400)),!(display.updateLineNumbers=null)}function postUpdateDisplay(cm,update){for(var viewport=update.viewport,first=!0;(first&&cm.options.lineWrapping&&update.oldDisplayWidth!=displayWidth(cm)||(viewport&&null!=viewport.top&&(viewport={top:Math.min(cm.doc.height+paddingVert(cm.display)-displayHeight(cm),viewport.top)}),update.visible=visibleLines(cm.display,cm.doc,viewport),!(update.visible.from>=cm.display.viewFrom&&update.visible.to<=cm.display.viewTo)))&&updateDisplayIfNeeded(cm,update);first=!1){updateHeightsInViewport(cm);var barMeasure=measureForScrollbars(cm);updateSelection(cm),updateScrollbars(cm,barMeasure),setDocumentHeight(cm,barMeasure),update.force=!1}update.signal(cm,"update",cm),cm.display.viewFrom==cm.display.reportedViewFrom&&cm.display.viewTo==cm.display.reportedViewTo||(update.signal(cm,"viewportChange",cm,cm.display.viewFrom,cm.display.viewTo),cm.display.reportedViewFrom=cm.display.viewFrom,cm.display.reportedViewTo=cm.display.viewTo)}function updateDisplaySimple(cm,viewport){var update=new DisplayUpdate(cm,viewport);if(updateDisplayIfNeeded(cm,update)){updateHeightsInViewport(cm),postUpdateDisplay(cm,update);var barMeasure=measureForScrollbars(cm);updateSelection(cm),updateScrollbars(cm,barMeasure),setDocumentHeight(cm,barMeasure),update.finish()}}function updateGutterSpace(display){var width=display.gutters.offsetWidth;display.sizer.style.marginLeft=width+"px"}function setDocumentHeight(cm,measure){cm.display.sizer.style.minHeight=measure.docHeight+"px",cm.display.heightForcer.style.top=measure.docHeight+"px",cm.display.gutters.style.height=measure.docHeight+cm.display.barHeight+scrollGap(cm)+"px"}function alignHorizontally(cm){var display=cm.display,view=display.view;if(display.alignWidgets||display.gutters.firstChild&&cm.options.fixedGutter){for(var comp=compensateForHScroll(display)-display.scroller.scrollLeft+cm.doc.scrollLeft,gutterW=display.gutters.offsetWidth,left=comp+"px",i=0;i<view.length;i++)if(!view[i].hidden){cm.options.fixedGutter&&(view[i].gutter&&(view[i].gutter.style.left=left),view[i].gutterBackground&&(view[i].gutterBackground.style.left=left));var align=view[i].alignable;if(align)for(var j=0;j<align.length;j++)align[j].style.left=left}cm.options.fixedGutter&&(display.gutters.style.left=comp+gutterW+"px")}}function maybeUpdateLineNumberWidth(cm){if(!cm.options.lineNumbers)return!1;var doc=cm.doc,last=lineNumberFor(cm.options,doc.first+doc.size-1),display=cm.display;if(last.length==display.lineNumChars)return!1;var test=display.measure.appendChild(elt("div",[elt("div",last)],"CodeMirror-linenumber CodeMirror-gutter-elt")),innerW=test.firstChild.offsetWidth,padding=test.offsetWidth-innerW;return display.lineGutter.style.width="",display.lineNumInnerWidth=Math.max(innerW,display.lineGutter.offsetWidth-padding)+1,display.lineNumWidth=display.lineNumInnerWidth+padding,display.lineNumChars=display.lineNumInnerWidth?last.length:-1,display.lineGutter.style.width=display.lineNumWidth+"px",updateGutterSpace(cm.display),!0}function getGutters(gutters,lineNumbers){for(var result=[],sawLineNumbers=!1,i=0;i<gutters.length;i++){var name=gutters[i],style=null;if("string"!=typeof name&&(style=name.style,name=name.className),"CodeMirror-linenumbers"==name){if(!lineNumbers)continue;sawLineNumbers=!0}result.push({className:name,style:style})}return lineNumbers&&!sawLineNumbers&&result.push({className:"CodeMirror-linenumbers",style:null}),result}function renderGutters(display){var gutters=display.gutters,specs=display.gutterSpecs;removeChildren(gutters),display.lineGutter=null;for(var i=0;i<specs.length;++i){var ref=specs[i],className=ref.className,style=ref.style,gElt=gutters.appendChild(elt("div",null,"CodeMirror-gutter "+className));style&&(gElt.style.cssText=style),"CodeMirror-linenumbers"==className&&((display.lineGutter=gElt).style.width=(display.lineNumWidth||1)+"px")}gutters.style.display=specs.length?"":"none",updateGutterSpace(display)}function updateGutters(cm){renderGutters(cm.display),regChange(cm),alignHorizontally(cm)}function Display(place,doc,input,options){var d=this;this.input=input,d.scrollbarFiller=elt("div",null,"CodeMirror-scrollbar-filler"),d.scrollbarFiller.setAttribute("cm-not-content","true"),d.gutterFiller=elt("div",null,"CodeMirror-gutter-filler"),d.gutterFiller.setAttribute("cm-not-content","true"),d.lineDiv=eltP("div",null,"CodeMirror-code"),d.selectionDiv=elt("div",null,null,"position: relative; z-index: 1"),d.cursorDiv=elt("div",null,"CodeMirror-cursors"),d.measure=elt("div",null,"CodeMirror-measure"),d.lineMeasure=elt("div",null,"CodeMirror-measure"),d.lineSpace=eltP("div",[d.measure,d.lineMeasure,d.selectionDiv,d.cursorDiv,d.lineDiv],null,"position: relative; outline: none");var lines=eltP("div",[d.lineSpace],"CodeMirror-lines");d.mover=elt("div",[lines],null,"position: relative"),d.sizer=elt("div",[d.mover],"CodeMirror-sizer"),d.sizerWidth=null,d.heightForcer=elt("div",null,null,"position: absolute; height: "+scrollerGap+"px; width: 1px;"),d.gutters=elt("div",null,"CodeMirror-gutters"),d.lineGutter=null,d.scroller=elt("div",[d.sizer,d.heightForcer,d.gutters],"CodeMirror-scroll"),d.scroller.setAttribute("tabIndex","-1"),d.wrapper=elt("div",[d.scrollbarFiller,d.gutterFiller,d.scroller],"CodeMirror"),ie&&ie_version<8&&(d.gutters.style.zIndex=-1,d.scroller.style.paddingRight=0),webkit||gecko&&mobile||(d.scroller.draggable=!0),place&&(place.appendChild?place.appendChild(d.wrapper):place(d.wrapper)),d.viewFrom=d.viewTo=doc.first,d.reportedViewFrom=d.reportedViewTo=doc.first,d.view=[],d.renderedView=null,d.externalMeasured=null,d.viewOffset=0,d.lastWrapHeight=d.lastWrapWidth=0,d.updateLineNumbers=null,d.nativeBarWidth=d.barHeight=d.barWidth=0,d.scrollbarsClipped=!1,d.lineNumWidth=d.lineNumInnerWidth=d.lineNumChars=null,d.alignWidgets=!1,d.cachedCharWidth=d.cachedTextHeight=d.cachedPaddingH=null,d.maxLine=null,d.maxLineLength=0,d.maxLineChanged=!1,d.wheelDX=d.wheelDY=d.wheelStartX=d.wheelStartY=null,d.shift=!1,d.selForContextMenu=null,d.activeTouch=null,d.gutterSpecs=getGutters(options.gutters,options.lineNumbers),renderGutters(d),input.init(d)}DisplayUpdate.prototype.signal=function(emitter,type){hasHandler(emitter,type)&&this.events.push(arguments)},DisplayUpdate.prototype.finish=function(){for(var i=0;i<this.events.length;i++)signal.apply(null,this.events[i])};var wheelSamples=0,wheelPixelsPerUnit=null;function wheelEventDelta(e){var dx=e.wheelDeltaX,dy=e.wheelDeltaY;return null==dx&&e.detail&&e.axis==e.HORIZONTAL_AXIS&&(dx=e.detail),null==dy&&e.detail&&e.axis==e.VERTICAL_AXIS?dy=e.detail:null==dy&&(dy=e.wheelDelta),{x:dx,y:dy}}function wheelEventPixels(e){var delta=wheelEventDelta(e);return delta.x*=wheelPixelsPerUnit,delta.y*=wheelPixelsPerUnit,delta}function onScrollWheel(cm,e){var delta=wheelEventDelta(e),dx=delta.x,dy=delta.y,display=cm.display,scroll=display.scroller,canScrollX=scroll.scrollWidth>scroll.clientWidth,canScrollY=scroll.scrollHeight>scroll.clientHeight;if(dx&&canScrollX||dy&&canScrollY){if(dy&&mac&&webkit)outer:for(var cur=e.target,view=display.view;cur!=scroll;cur=cur.parentNode)for(var i=0;i<view.length;i++)if(view[i].node==cur){cm.display.currentWheelTarget=cur;break outer}if(dx&&!gecko&&!presto&&null!=wheelPixelsPerUnit)return dy&&canScrollY&&updateScrollTop(cm,Math.max(0,scroll.scrollTop+dy*wheelPixelsPerUnit)),setScrollLeft(cm,Math.max(0,scroll.scrollLeft+dx*wheelPixelsPerUnit)),(!dy||dy&&canScrollY)&&e_preventDefault(e),void(display.wheelStartX=null);if(dy&&null!=wheelPixelsPerUnit){var pixels=dy*wheelPixelsPerUnit,top=cm.doc.scrollTop,bot=top+display.wrapper.clientHeight;pixels<0?top=Math.max(0,top+pixels-50):bot=Math.min(cm.doc.height,bot+pixels+50),updateDisplaySimple(cm,{top:top,bottom:bot})}wheelSamples<20&&(null==display.wheelStartX?(display.wheelStartX=scroll.scrollLeft,display.wheelStartY=scroll.scrollTop,display.wheelDX=dx,display.wheelDY=dy,setTimeout(function(){if(null!=display.wheelStartX){var movedX=scroll.scrollLeft-display.wheelStartX,movedY=scroll.scrollTop-display.wheelStartY,sample=movedY&&display.wheelDY&&movedY/display.wheelDY||movedX&&display.wheelDX&&movedX/display.wheelDX;display.wheelStartX=display.wheelStartY=null,sample&&(wheelPixelsPerUnit=(wheelPixelsPerUnit*wheelSamples+sample)/(wheelSamples+1),++wheelSamples)}},200)):(display.wheelDX+=dx,display.wheelDY+=dy))}}ie?wheelPixelsPerUnit=-.53:gecko?wheelPixelsPerUnit=15:chrome?wheelPixelsPerUnit=-.7:safari&&(wheelPixelsPerUnit=-1/3);var Selection=function(ranges,primIndex){this.ranges=ranges,this.primIndex=primIndex};Selection.prototype.primary=function(){return this.ranges[this.primIndex]},Selection.prototype.equals=function(other){if(other==this)return!0;if(other.primIndex!=this.primIndex||other.ranges.length!=this.ranges.length)return!1;for(var i=0;i<this.ranges.length;i++){var here=this.ranges[i],there=other.ranges[i];if(!equalCursorPos(here.anchor,there.anchor)||!equalCursorPos(here.head,there.head))return!1}return!0},Selection.prototype.deepCopy=function(){for(var out=[],i=0;i<this.ranges.length;i++)out[i]=new Range(copyPos(this.ranges[i].anchor),copyPos(this.ranges[i].head));return new Selection(out,this.primIndex)},Selection.prototype.somethingSelected=function(){for(var i=0;i<this.ranges.length;i++)if(!this.ranges[i].empty())return!0;return!1},Selection.prototype.contains=function(pos,end){end||(end=pos);for(var i=0;i<this.ranges.length;i++){var range=this.ranges[i];if(0<=cmp(end,range.from())&&cmp(pos,range.to())<=0)return i}return-1};var Range=function(anchor,head){this.anchor=anchor,this.head=head};function normalizeSelection(cm,ranges,primIndex){var mayTouch=cm&&cm.options.selectionsMayTouch,prim=ranges[primIndex];ranges.sort(function(a,b){return cmp(a.from(),b.from())}),primIndex=indexOf(ranges,prim);for(var i=1;i<ranges.length;i++){var cur=ranges[i],prev=ranges[i-1],diff=cmp(prev.to(),cur.from());if(mayTouch&&!cur.empty()?0<diff:0<=diff){var from=minPos(prev.from(),cur.from()),to=maxPos(prev.to(),cur.to()),inv=prev.empty()?cur.from()==cur.head:prev.from()==prev.head;i<=primIndex&&--primIndex,ranges.splice(--i,2,new Range(inv?to:from,inv?from:to))}}return new Selection(ranges,primIndex)}function simpleSelection(anchor,head){return new Selection([new Range(anchor,head||anchor)],0)}function changeEnd(change){return change.text?Pos(change.from.line+change.text.length-1,lst(change.text).length+(1==change.text.length?change.from.ch:0)):change.to}function adjustForChange(pos,change){if(cmp(pos,change.from)<0)return pos;if(cmp(pos,change.to)<=0)return changeEnd(change);var line=pos.line+change.text.length-(change.to.line-change.from.line)-1,ch=pos.ch;return pos.line==change.to.line&&(ch+=changeEnd(change).ch-change.to.ch),Pos(line,ch)}function computeSelAfterChange(doc,change){for(var out=[],i=0;i<doc.sel.ranges.length;i++){var range=doc.sel.ranges[i];out.push(new Range(adjustForChange(range.anchor,change),adjustForChange(range.head,change)))}return normalizeSelection(doc.cm,out,doc.sel.primIndex)}function offsetPos(pos,old,nw){return pos.line==old.line?Pos(nw.line,pos.ch-old.ch+nw.ch):Pos(nw.line+(pos.line-old.line),pos.ch)}function loadMode(cm){cm.doc.mode=getMode(cm.options,cm.doc.modeOption),resetModeState(cm)}function resetModeState(cm){cm.doc.iter(function(line){line.stateAfter&&(line.stateAfter=null),line.styles&&(line.styles=null)}),cm.doc.modeFrontier=cm.doc.highlightFrontier=cm.doc.first,startWorker(cm,100),cm.state.modeGen++,cm.curOp&&regChange(cm)}function isWholeLineUpdate(doc,change){return 0==change.from.ch&&0==change.to.ch&&""==lst(change.text)&&(!doc.cm||doc.cm.options.wholeLineUpdateBefore)}function updateDoc(doc,change,markedSpans,estimateHeight$$1){function spansFor(n){return markedSpans?markedSpans[n]:null}function update(line,text,spans){!function(line,text,markedSpans,estimateHeight){line.text=text,line.stateAfter&&(line.stateAfter=null),line.styles&&(line.styles=null),null!=line.order&&(line.order=null),detachMarkedSpans(line),attachMarkedSpans(line,markedSpans);var estHeight=estimateHeight?estimateHeight(line):1;estHeight!=line.height&&updateLineHeight(line,estHeight)}(line,text,spans,estimateHeight$$1),signalLater(line,"change",line,change)}function linesFor(start,end){for(var result=[],i=start;i<end;++i)result.push(new Line(text[i],spansFor(i),estimateHeight$$1));return result}var from=change.from,to=change.to,text=change.text,firstLine=getLine(doc,from.line),lastLine=getLine(doc,to.line),lastText=lst(text),lastSpans=spansFor(text.length-1),nlines=to.line-from.line;if(change.full)doc.insert(0,linesFor(0,text.length)),doc.remove(text.length,doc.size-text.length);else if(isWholeLineUpdate(doc,change)){var added=linesFor(0,text.length-1);update(lastLine,lastLine.text,lastSpans),nlines&&doc.remove(from.line,nlines),added.length&&doc.insert(from.line,added)}else if(firstLine==lastLine)if(1==text.length)update(firstLine,firstLine.text.slice(0,from.ch)+lastText+firstLine.text.slice(to.ch),lastSpans);else{var added$1=linesFor(1,text.length-1);added$1.push(new Line(lastText+firstLine.text.slice(to.ch),lastSpans,estimateHeight$$1)),update(firstLine,firstLine.text.slice(0,from.ch)+text[0],spansFor(0)),doc.insert(from.line+1,added$1)}else if(1==text.length)update(firstLine,firstLine.text.slice(0,from.ch)+text[0]+lastLine.text.slice(to.ch),spansFor(0)),doc.remove(from.line+1,nlines);else{update(firstLine,firstLine.text.slice(0,from.ch)+text[0],spansFor(0)),update(lastLine,lastText+lastLine.text.slice(to.ch),lastSpans);var added$2=linesFor(1,text.length-1);1<nlines&&doc.remove(from.line+1,nlines-1),doc.insert(from.line+1,added$2)}signalLater(doc,"change",doc,change)}function linkedDocs(doc,f,sharedHistOnly){!function propagate(doc,skip,sharedHist){if(doc.linked)for(var i=0;i<doc.linked.length;++i){var rel=doc.linked[i];if(rel.doc!=skip){var shared=sharedHist&&rel.sharedHist;sharedHistOnly&&!shared||(f(rel.doc,shared),propagate(rel.doc,doc,shared))}}}(doc,null,!0)}function attachDoc(cm,doc){if(doc.cm)throw new Error("This document is already in use.");estimateLineHeights((cm.doc=doc).cm=cm),loadMode(cm),setDirectionClass(cm),cm.options.lineWrapping||findMaxLine(cm),cm.options.mode=doc.modeOption,regChange(cm)}function setDirectionClass(cm){("rtl"==cm.doc.direction?addClass:rmClass)(cm.display.lineDiv,"CodeMirror-rtl")}function History(startGen){this.done=[],this.undone=[],this.undoDepth=1/0,this.lastModTime=this.lastSelTime=0,this.lastOp=this.lastSelOp=null,this.lastOrigin=this.lastSelOrigin=null,this.generation=this.maxGeneration=startGen||1}function historyChangeFromChange(doc,change){var histChange={from:copyPos(change.from),to:changeEnd(change),text:getBetween(doc,change.from,change.to)};return attachLocalSpans(doc,histChange,change.from.line,change.to.line+1),linkedDocs(doc,function(doc){return attachLocalSpans(doc,histChange,change.from.line,change.to.line+1)},!0),histChange}function clearSelectionEvents(array){for(;array.length;){if(!lst(array).ranges)break;array.pop()}}function addChangeToHistory(doc,change,selAfter,opId){var hist=doc.history;hist.undone.length=0;var cur,last,time=+new Date;if((hist.lastOp==opId||hist.lastOrigin==change.origin&&change.origin&&("+"==change.origin.charAt(0)&&hist.lastModTime>time-(doc.cm?doc.cm.options.historyEventDelay:500)||"*"==change.origin.charAt(0)))&&(cur=function(hist,force){return force?(clearSelectionEvents(hist.done),lst(hist.done)):hist.done.length&&!lst(hist.done).ranges?lst(hist.done):1<hist.done.length&&!hist.done[hist.done.length-2].ranges?(hist.done.pop(),lst(hist.done)):void 0}(hist,hist.lastOp==opId)))last=lst(cur.changes),0==cmp(change.from,change.to)&&0==cmp(change.from,last.to)?last.to=changeEnd(change):cur.changes.push(historyChangeFromChange(doc,change));else{var before=lst(hist.done);for(before&&before.ranges||pushSelectionToHistory(doc.sel,hist.done),cur={changes:[historyChangeFromChange(doc,change)],generation:hist.generation},hist.done.push(cur);hist.done.length>hist.undoDepth;)hist.done.shift(),hist.done[0].ranges||hist.done.shift()}hist.done.push(selAfter),hist.generation=++hist.maxGeneration,hist.lastModTime=hist.lastSelTime=time,hist.lastOp=hist.lastSelOp=opId,hist.lastOrigin=hist.lastSelOrigin=change.origin,last||signal(doc,"historyAdded")}function addSelectionToHistory(doc,sel,opId,options){var hist=doc.history,origin=options&&options.origin;opId==hist.lastSelOp||origin&&hist.lastSelOrigin==origin&&(hist.lastModTime==hist.lastSelTime&&hist.lastOrigin==origin||function(doc,origin,prev,sel){var ch=origin.charAt(0);return"*"==ch||"+"==ch&&prev.ranges.length==sel.ranges.length&&prev.somethingSelected()==sel.somethingSelected()&&new Date-doc.history.lastSelTime<=(doc.cm?doc.cm.options.historyEventDelay:500)}(doc,origin,lst(hist.done),sel))?hist.done[hist.done.length-1]=sel:pushSelectionToHistory(sel,hist.done),hist.lastSelTime=+new Date,hist.lastSelOrigin=origin,hist.lastSelOp=opId,options&&!1!==options.clearRedo&&clearSelectionEvents(hist.undone)}function pushSelectionToHistory(sel,dest){var top=lst(dest);top&&top.ranges&&top.equals(sel)||dest.push(sel)}function attachLocalSpans(doc,change,from,to){var existing=change["spans_"+doc.id],n=0;doc.iter(Math.max(doc.first,from),Math.min(doc.first+doc.size,to),function(line){line.markedSpans&&((existing||(existing=change["spans_"+doc.id]={}))[n]=line.markedSpans),++n})}function removeClearedSpans(spans){if(!spans)return null;for(var out,i=0;i<spans.length;++i)spans[i].marker.explicitlyCleared?out||(out=spans.slice(0,i)):out&&out.push(spans[i]);return out?out.length?out:null:spans}function mergeOldSpans(doc,change){var old=function(doc,change){var found=change["spans_"+doc.id];if(!found)return null;for(var nw=[],i=0;i<change.text.length;++i)nw.push(removeClearedSpans(found[i]));return nw}(doc,change),stretched=stretchSpansOverChange(doc,change);if(!old)return stretched;if(!stretched)return old;for(var i=0;i<old.length;++i){var oldCur=old[i],stretchCur=stretched[i];if(oldCur&&stretchCur)spans:for(var j=0;j<stretchCur.length;++j){for(var span=stretchCur[j],k=0;k<oldCur.length;++k)if(oldCur[k].marker==span.marker)continue spans;oldCur.push(span)}else stretchCur&&(old[i]=stretchCur)}return old}function copyHistoryArray(events,newGroup,instantiateSel){for(var copy=[],i=0;i<events.length;++i){var event=events[i];if(event.ranges)copy.push(instantiateSel?Selection.prototype.deepCopy.call(event):event);else{var changes=event.changes,newChanges=[];copy.push({changes:newChanges});for(var j=0;j<changes.length;++j){var change=changes[j],m=void 0;if(newChanges.push({from:change.from,to:change.to,text:change.text}),newGroup)for(var prop in change)(m=prop.match(/^spans_(\d+)$/))&&-1<indexOf(newGroup,Number(m[1]))&&(lst(newChanges)[prop]=change[prop],delete change[prop])}}}return copy}function extendRange(range,head,other,extend){if(extend){var anchor=range.anchor;if(other){var posBefore=cmp(head,anchor)<0;posBefore!=cmp(other,anchor)<0?(anchor=head,head=other):posBefore!=cmp(head,other)<0&&(head=other)}return new Range(anchor,head)}return new Range(other||head,head)}function extendSelection(doc,head,other,options,extend){null==extend&&(extend=doc.cm&&(doc.cm.display.shift||doc.extend)),setSelection(doc,new Selection([extendRange(doc.sel.primary(),head,other,extend)],0),options)}function extendSelections(doc,heads,options){for(var out=[],extend=doc.cm&&(doc.cm.display.shift||doc.extend),i=0;i<doc.sel.ranges.length;i++)out[i]=extendRange(doc.sel.ranges[i],heads[i],null,extend);setSelection(doc,normalizeSelection(doc.cm,out,doc.sel.primIndex),options)}function replaceOneSelection(doc,i,range,options){var ranges=doc.sel.ranges.slice(0);ranges[i]=range,setSelection(doc,normalizeSelection(doc.cm,ranges,doc.sel.primIndex),options)}function setSimpleSelection(doc,anchor,head,options){setSelection(doc,simpleSelection(anchor,head),options)}function setSelectionReplaceHistory(doc,sel,options){var done=doc.history.done,last=lst(done);last&&last.ranges?setSelectionNoUndo(doc,done[done.length-1]=sel,options):setSelection(doc,sel,options)}function setSelection(doc,sel,options){setSelectionNoUndo(doc,sel,options),addSelectionToHistory(doc,doc.sel,doc.cm?doc.cm.curOp.id:NaN,options)}function setSelectionNoUndo(doc,sel,options){(hasHandler(doc,"beforeSelectionChange")||doc.cm&&hasHandler(doc.cm,"beforeSelectionChange"))&&(sel=function(doc,sel,options){var obj={ranges:sel.ranges,update:function(ranges){this.ranges=[];for(var i=0;i<ranges.length;i++)this.ranges[i]=new Range(clipPos(doc,ranges[i].anchor),clipPos(doc,ranges[i].head))},origin:options&&options.origin};return signal(doc,"beforeSelectionChange",doc,obj),doc.cm&&signal(doc.cm,"beforeSelectionChange",doc.cm,obj),obj.ranges!=sel.ranges?normalizeSelection(doc.cm,obj.ranges,obj.ranges.length-1):sel}(doc,sel,options));var bias=options&&options.bias||(cmp(sel.primary().head,doc.sel.primary().head)<0?-1:1);setSelectionInner(doc,skipAtomicInSelection(doc,sel,bias,!0)),options&&!1===options.scroll||!doc.cm||ensureCursorVisible(doc.cm)}function setSelectionInner(doc,sel){sel.equals(doc.sel)||(doc.sel=sel,doc.cm&&(doc.cm.curOp.updateInput=1,doc.cm.curOp.selectionChanged=!0,signalCursorActivity(doc.cm)),signalLater(doc,"cursorActivity",doc))}function reCheckSelection(doc){setSelectionInner(doc,skipAtomicInSelection(doc,doc.sel,null,!1))}function skipAtomicInSelection(doc,sel,bias,mayClear){for(var out,i=0;i<sel.ranges.length;i++){var range=sel.ranges[i],old=sel.ranges.length==doc.sel.ranges.length&&doc.sel.ranges[i],newAnchor=skipAtomic(doc,range.anchor,old&&old.anchor,bias,mayClear),newHead=skipAtomic(doc,range.head,old&&old.head,bias,mayClear);!out&&newAnchor==range.anchor&&newHead==range.head||(out||(out=sel.ranges.slice(0,i)),out[i]=new Range(newAnchor,newHead))}return out?normalizeSelection(doc.cm,out,sel.primIndex):sel}function skipAtomicInner(doc,pos,oldPos,dir,mayClear){var line=getLine(doc,pos.line);if(line.markedSpans)for(var i=0;i<line.markedSpans.length;++i){var sp=line.markedSpans[i],m=sp.marker;if((null==sp.from||(m.inclusiveLeft?sp.from<=pos.ch:sp.from<pos.ch))&&(null==sp.to||(m.inclusiveRight?sp.to>=pos.ch:sp.to>pos.ch))){if(mayClear&&(signal(m,"beforeCursorEnter"),m.explicitlyCleared)){if(line.markedSpans){--i;continue}break}if(!m.atomic)continue;if(oldPos){var near=m.find(dir<0?1:-1),diff=void 0;if((dir<0?m.inclusiveRight:m.inclusiveLeft)&&(near=movePos(doc,near,-dir,near&&near.line==pos.line?line:null)),near&&near.line==pos.line&&(diff=cmp(near,oldPos))&&(dir<0?diff<0:0<diff))return skipAtomicInner(doc,near,pos,dir,mayClear)}var far=m.find(dir<0?-1:1);return(dir<0?m.inclusiveLeft:m.inclusiveRight)&&(far=movePos(doc,far,dir,far.line==pos.line?line:null)),far?skipAtomicInner(doc,far,pos,dir,mayClear):null}}return pos}function skipAtomic(doc,pos,oldPos,bias,mayClear){var dir=bias||1,found=skipAtomicInner(doc,pos,oldPos,dir,mayClear)||!mayClear&&skipAtomicInner(doc,pos,oldPos,dir,!0)||skipAtomicInner(doc,pos,oldPos,-dir,mayClear)||!mayClear&&skipAtomicInner(doc,pos,oldPos,-dir,!0);return found||(doc.cantEdit=!0,Pos(doc.first,0))}function movePos(doc,pos,dir,line){return dir<0&&0==pos.ch?pos.line>doc.first?clipPos(doc,Pos(pos.line-1)):null:0<dir&&pos.ch==(line||getLine(doc,pos.line)).text.length?pos.line<doc.first+doc.size-1?Pos(pos.line+1,0):null:new Pos(pos.line,pos.ch+dir)}function selectAll(cm){cm.setSelection(Pos(cm.firstLine(),0),Pos(cm.lastLine()),sel_dontScroll)}function filterChange(doc,change,update){var obj={canceled:!1,from:change.from,to:change.to,text:change.text,origin:change.origin,cancel:function(){return obj.canceled=!0}};return update&&(obj.update=function(from,to,text,origin){from&&(obj.from=clipPos(doc,from)),to&&(obj.to=clipPos(doc,to)),text&&(obj.text=text),void 0!==origin&&(obj.origin=origin)}),signal(doc,"beforeChange",doc,obj),doc.cm&&signal(doc.cm,"beforeChange",doc.cm,obj),obj.canceled?(doc.cm&&(doc.cm.curOp.updateInput=2),null):{from:obj.from,to:obj.to,text:obj.text,origin:obj.origin}}function makeChange(doc,change,ignoreReadOnly){if(doc.cm){if(!doc.cm.curOp)return operation(doc.cm,makeChange)(doc,change,ignoreReadOnly);if(doc.cm.state.suppressEdits)return}if(!(hasHandler(doc,"beforeChange")||doc.cm&&hasHandler(doc.cm,"beforeChange"))||(change=filterChange(doc,change,!0))){var split=sawReadOnlySpans&&!ignoreReadOnly&&function(doc,from,to){var markers=null;if(doc.iter(from.line,to.line+1,function(line){if(line.markedSpans)for(var i=0;i<line.markedSpans.length;++i){var mark=line.markedSpans[i].marker;!mark.readOnly||markers&&-1!=indexOf(markers,mark)||(markers||(markers=[])).push(mark)}}),!markers)return null;for(var parts=[{from:from,to:to}],i=0;i<markers.length;++i)for(var mk=markers[i],m=mk.find(0),j=0;j<parts.length;++j){var p=parts[j];if(!(cmp(p.to,m.from)<0||0<cmp(p.from,m.to))){var newParts=[j,1],dfrom=cmp(p.from,m.from),dto=cmp(p.to,m.to);(dfrom<0||!mk.inclusiveLeft&&!dfrom)&&newParts.push({from:p.from,to:m.from}),(0<dto||!mk.inclusiveRight&&!dto)&&newParts.push({from:m.to,to:p.to}),parts.splice.apply(parts,newParts),j+=newParts.length-3}}return parts}(doc,change.from,change.to);if(split)for(var i=split.length-1;0<=i;--i)makeChangeInner(doc,{from:split[i].from,to:split[i].to,text:i?[""]:change.text,origin:change.origin});else makeChangeInner(doc,change)}}function makeChangeInner(doc,change){if(1!=change.text.length||""!=change.text[0]||0!=cmp(change.from,change.to)){var selAfter=computeSelAfterChange(doc,change);addChangeToHistory(doc,change,selAfter,doc.cm?doc.cm.curOp.id:NaN),makeChangeSingleDoc(doc,change,selAfter,stretchSpansOverChange(doc,change));var rebased=[];linkedDocs(doc,function(doc,sharedHist){sharedHist||-1!=indexOf(rebased,doc.history)||(rebaseHist(doc.history,change),rebased.push(doc.history)),makeChangeSingleDoc(doc,change,null,stretchSpansOverChange(doc,change))})}}function makeChangeFromHistory(doc,type,allowSelectionOnly){var suppress=doc.cm&&doc.cm.state.suppressEdits;if(!suppress||allowSelectionOnly){for(var event,hist=doc.history,selAfter=doc.sel,source="undo"==type?hist.done:hist.undone,dest="undo"==type?hist.undone:hist.done,i=0;i<source.length&&(event=source[i],allowSelectionOnly?!event.ranges||event.equals(doc.sel):event.ranges);i++);if(i!=source.length){for(hist.lastOrigin=hist.lastSelOrigin=null;;){if(!(event=source.pop()).ranges){if(suppress)return void source.push(event);break}if(pushSelectionToHistory(event,dest),allowSelectionOnly&&!event.equals(doc.sel))return void setSelection(doc,event,{clearRedo:!1});selAfter=event}var antiChanges=[];pushSelectionToHistory(selAfter,dest),dest.push({changes:antiChanges,generation:hist.generation}),hist.generation=event.generation||++hist.maxGeneration;for(var filter=hasHandler(doc,"beforeChange")||doc.cm&&hasHandler(doc.cm,"beforeChange"),loop=function(i){var change=event.changes[i];if(change.origin=type,filter&&!filterChange(doc,change,!1))return source.length=0,{};antiChanges.push(historyChangeFromChange(doc,change));var after=i?computeSelAfterChange(doc,change):lst(source);makeChangeSingleDoc(doc,change,after,mergeOldSpans(doc,change)),!i&&doc.cm&&doc.cm.scrollIntoView({from:change.from,to:changeEnd(change)});var rebased=[];linkedDocs(doc,function(doc,sharedHist){sharedHist||-1!=indexOf(rebased,doc.history)||(rebaseHist(doc.history,change),rebased.push(doc.history)),makeChangeSingleDoc(doc,change,null,mergeOldSpans(doc,change))})},i$1=event.changes.length-1;0<=i$1;--i$1){var returned=loop(i$1);if(returned)return returned.v}}}}function shiftDoc(doc,distance){if(0!=distance&&(doc.first+=distance,doc.sel=new Selection(map(doc.sel.ranges,function(range){return new Range(Pos(range.anchor.line+distance,range.anchor.ch),Pos(range.head.line+distance,range.head.ch))}),doc.sel.primIndex),doc.cm)){regChange(doc.cm,doc.first,doc.first-distance,distance);for(var d=doc.cm.display,l=d.viewFrom;l<d.viewTo;l++)regLineChange(doc.cm,l,"gutter")}}function makeChangeSingleDoc(doc,change,selAfter,spans){if(doc.cm&&!doc.cm.curOp)return operation(doc.cm,makeChangeSingleDoc)(doc,change,selAfter,spans);if(change.to.line<doc.first)shiftDoc(doc,change.text.length-1-(change.to.line-change.from.line));else if(!(change.from.line>doc.lastLine())){if(change.from.line<doc.first){var shift=change.text.length-1-(doc.first-change.from.line);shiftDoc(doc,shift),change={from:Pos(doc.first,0),to:Pos(change.to.line+shift,change.to.ch),text:[lst(change.text)],origin:change.origin}}var last=doc.lastLine();change.to.line>last&&(change={from:change.from,to:Pos(last,getLine(doc,last).text.length),text:[change.text[0]],origin:change.origin}),change.removed=getBetween(doc,change.from,change.to),selAfter||(selAfter=computeSelAfterChange(doc,change)),doc.cm?function(cm,change,spans){var doc=cm.doc,display=cm.display,from=change.from,to=change.to,recomputeMaxLength=!1,checkWidthStart=from.line;cm.options.lineWrapping||(checkWidthStart=lineNo(visualLine(getLine(doc,from.line))),doc.iter(checkWidthStart,to.line+1,function(line){if(line==display.maxLine)return recomputeMaxLength=!0}));-1<doc.sel.contains(change.from,change.to)&&signalCursorActivity(cm);updateDoc(doc,change,spans,estimateHeight(cm)),cm.options.lineWrapping||(doc.iter(checkWidthStart,from.line+change.text.length,function(line){var len=lineLength(line);len>display.maxLineLength&&(display.maxLine=line,display.maxLineLength=len,display.maxLineChanged=!0,recomputeMaxLength=!1)}),recomputeMaxLength&&(cm.curOp.updateMaxLine=!0));(function(doc,n){if(doc.modeFrontier=Math.min(doc.modeFrontier,n),!(doc.highlightFrontier<n-10)){for(var start=doc.first,line=n-1;start<line;line--){var saved=getLine(doc,line).stateAfter;if(saved&&(!(saved instanceof SavedContext)||line+saved.lookAhead<n)){start=line+1;break}}doc.highlightFrontier=Math.min(doc.highlightFrontier,start)}})(doc,from.line),startWorker(cm,400);var lendiff=change.text.length-(to.line-from.line)-1;change.full?regChange(cm):from.line!=to.line||1!=change.text.length||isWholeLineUpdate(cm.doc,change)?regChange(cm,from.line,to.line+1,lendiff):regLineChange(cm,from.line,"text");var changesHandler=hasHandler(cm,"changes"),changeHandler=hasHandler(cm,"change");if(changeHandler||changesHandler){var obj={from:from,to:to,text:change.text,removed:change.removed,origin:change.origin};changeHandler&&signalLater(cm,"change",cm,obj),changesHandler&&(cm.curOp.changeObjs||(cm.curOp.changeObjs=[])).push(obj)}cm.display.selForContextMenu=null}(doc.cm,change,spans):updateDoc(doc,change,spans),setSelectionNoUndo(doc,selAfter,sel_dontScroll)}}function replaceRange(doc,code,from,to,origin){var assign;to||(to=from),cmp(to,from)<0&&(from=(assign=[to,from])[0],to=assign[1]),"string"==typeof code&&(code=doc.splitLines(code)),makeChange(doc,{from:from,to:to,text:code,origin:origin})}function rebaseHistSelSingle(pos,from,to,diff){to<pos.line?pos.line+=diff:from<pos.line&&(pos.line=from,pos.ch=0)}function rebaseHistArray(array,from,to,diff){for(var i=0;i<array.length;++i){var sub=array[i],ok=!0;if(sub.ranges){sub.copied||((sub=array[i]=sub.deepCopy()).copied=!0);for(var j=0;j<sub.ranges.length;j++)rebaseHistSelSingle(sub.ranges[j].anchor,from,to,diff),rebaseHistSelSingle(sub.ranges[j].head,from,to,diff)}else{for(var j$1=0;j$1<sub.changes.length;++j$1){var cur=sub.changes[j$1];if(to<cur.from.line)cur.from=Pos(cur.from.line+diff,cur.from.ch),cur.to=Pos(cur.to.line+diff,cur.to.ch);else if(from<=cur.to.line){ok=!1;break}}ok||(array.splice(0,i+1),i=0)}}}function rebaseHist(hist,change){var from=change.from.line,to=change.to.line,diff=change.text.length-(to-from)-1;rebaseHistArray(hist.done,from,to,diff),rebaseHistArray(hist.undone,from,to,diff)}function changeLine(doc,handle,changeType,op){var no=handle,line=handle;return"number"==typeof handle?line=getLine(doc,clipLine(doc,handle)):no=lineNo(handle),null==no?null:(op(line,no)&&doc.cm&&regLineChange(doc.cm,no,changeType),line)}function LeafChunk(lines){this.lines=lines,this.parent=null;for(var height=0,i=0;i<lines.length;++i)lines[i].parent=this,height+=lines[i].height;this.height=height}function BranchChunk(children){this.children=children;for(var size=0,height=0,i=0;i<children.length;++i){var ch=children[i];size+=ch.chunkSize(),height+=ch.height,ch.parent=this}this.size=size,this.height=height,this.parent=null}Range.prototype.from=function(){return minPos(this.anchor,this.head)},Range.prototype.to=function(){return maxPos(this.anchor,this.head)},Range.prototype.empty=function(){return this.head.line==this.anchor.line&&this.head.ch==this.anchor.ch},LeafChunk.prototype={chunkSize:function(){return this.lines.length},removeInner:function(at,n){for(var i=at,e=at+n;i<e;++i){var line=this.lines[i];this.height-=line.height,cleanUpLine(line),signalLater(line,"delete")}this.lines.splice(at,n)},collapse:function(lines){lines.push.apply(lines,this.lines)},insertInner:function(at,lines,height){this.height+=height,this.lines=this.lines.slice(0,at).concat(lines).concat(this.lines.slice(at));for(var i=0;i<lines.length;++i)lines[i].parent=this},iterN:function(at,n,op){for(var e=at+n;at<e;++at)if(op(this.lines[at]))return!0}},BranchChunk.prototype={chunkSize:function(){return this.size},removeInner:function(at,n){this.size-=n;for(var i=0;i<this.children.length;++i){var child=this.children[i],sz=child.chunkSize();if(at<sz){var rm=Math.min(n,sz-at),oldHeight=child.height;if(child.removeInner(at,rm),this.height-=oldHeight-child.height,sz==rm&&(this.children.splice(i--,1),child.parent=null),0==(n-=rm))break;at=0}else at-=sz}if(this.size-n<25&&(1<this.children.length||!(this.children[0]instanceof LeafChunk))){var lines=[];this.collapse(lines),this.children=[new LeafChunk(lines)],this.children[0].parent=this}},collapse:function(lines){for(var i=0;i<this.children.length;++i)this.children[i].collapse(lines)},insertInner:function(at,lines,height){this.size+=lines.length,this.height+=height;for(var i=0;i<this.children.length;++i){var child=this.children[i],sz=child.chunkSize();if(at<=sz){if(child.insertInner(at,lines,height),child.lines&&50<child.lines.length){for(var remaining=child.lines.length%25+25,pos=remaining;pos<child.lines.length;){var leaf=new LeafChunk(child.lines.slice(pos,pos+=25));child.height-=leaf.height,this.children.splice(++i,0,leaf),leaf.parent=this}child.lines=child.lines.slice(0,remaining),this.maybeSpill()}break}at-=sz}},maybeSpill:function(){if(!(this.children.length<=10)){var me=this;do{var sibling=new BranchChunk(me.children.splice(me.children.length-5,5));if(me.parent){me.size-=sibling.size,me.height-=sibling.height;var myIndex=indexOf(me.parent.children,me);me.parent.children.splice(myIndex+1,0,sibling)}else{var copy=new BranchChunk(me.children);(copy.parent=me).children=[copy,sibling],me=copy}sibling.parent=me.parent}while(10<me.children.length);me.parent.maybeSpill()}},iterN:function(at,n,op){for(var i=0;i<this.children.length;++i){var child=this.children[i],sz=child.chunkSize();if(at<sz){var used=Math.min(n,sz-at);if(child.iterN(at,used,op))return!0;if(0==(n-=used))break;at=0}else at-=sz}}};function LineWidget(doc,node,options){if(options)for(var opt in options)options.hasOwnProperty(opt)&&(this[opt]=options[opt]);this.doc=doc,this.node=node}function adjustScrollWhenAboveVisible(cm,line,diff){heightAtLine(line)<(cm.curOp&&cm.curOp.scrollTop||cm.doc.scrollTop)&&addToScrollTop(cm,diff)}LineWidget.prototype.clear=function(){var cm=this.doc.cm,ws=this.line.widgets,line=this.line,no=lineNo(line);if(null!=no&&ws){for(var i=0;i<ws.length;++i)ws[i]==this&&ws.splice(i--,1);ws.length||(line.widgets=null);var height=widgetHeight(this);updateLineHeight(line,Math.max(0,line.height-height)),cm&&(runInOp(cm,function(){adjustScrollWhenAboveVisible(cm,line,-height),regLineChange(cm,no,"widget")}),signalLater(cm,"lineWidgetCleared",cm,this,no))}},LineWidget.prototype.changed=function(){var this$1=this,oldH=this.height,cm=this.doc.cm,line=this.line;this.height=null;var diff=widgetHeight(this)-oldH;diff&&(lineIsHidden(this.doc,line)||updateLineHeight(line,line.height+diff),cm&&runInOp(cm,function(){cm.curOp.forceUpdate=!0,adjustScrollWhenAboveVisible(cm,line,diff),signalLater(cm,"lineWidgetChanged",cm,this$1,lineNo(line))}))},eventMixin(LineWidget);var nextMarkerId=0,TextMarker=function(doc,type){this.lines=[],this.type=type,this.doc=doc,this.id=++nextMarkerId};function markText(doc,from,to,options,type){if(options&&options.shared)return function(doc,from,to,options,type){(options=copyObj(options)).shared=!1;var markers=[markText(doc,from,to,options,type)],primary=markers[0],widget=options.widgetNode;return linkedDocs(doc,function(doc){widget&&(options.widgetNode=widget.cloneNode(!0)),markers.push(markText(doc,clipPos(doc,from),clipPos(doc,to),options,type));for(var i=0;i<doc.linked.length;++i)if(doc.linked[i].isParent)return;primary=lst(markers)}),new SharedTextMarker(markers,primary)}(doc,from,to,options,type);if(doc.cm&&!doc.cm.curOp)return operation(doc.cm,markText)(doc,from,to,options,type);var marker=new TextMarker(doc,type),diff=cmp(from,to);if(options&&copyObj(options,marker,!1),0<diff||0==diff&&!1!==marker.clearWhenEmpty)return marker;if(marker.replacedWith&&(marker.collapsed=!0,marker.widgetNode=eltP("span",[marker.replacedWith],"CodeMirror-widget"),options.handleMouseEvents||marker.widgetNode.setAttribute("cm-ignore-events","true"),options.insertLeft&&(marker.widgetNode.insertLeft=!0)),marker.collapsed){if(conflictingCollapsedRange(doc,from.line,from,to,marker)||from.line!=to.line&&conflictingCollapsedRange(doc,to.line,from,to,marker))throw new Error("Inserting collapsed marker partially overlapping an existing one");sawCollapsedSpans=!0}marker.addToHistory&&addChangeToHistory(doc,{from:from,to:to,origin:"markText"},doc.sel,NaN);var updateMaxLine,curLine=from.line,cm=doc.cm;if(doc.iter(curLine,to.line+1,function(line){cm&&marker.collapsed&&!cm.options.lineWrapping&&visualLine(line)==cm.display.maxLine&&(updateMaxLine=!0),marker.collapsed&&curLine!=from.line&&updateLineHeight(line,0),function(line,span){line.markedSpans=line.markedSpans?line.markedSpans.concat([span]):[span],span.marker.attachLine(line)}(line,new MarkedSpan(marker,curLine==from.line?from.ch:null,curLine==to.line?to.ch:null)),++curLine}),marker.collapsed&&doc.iter(from.line,to.line+1,function(line){lineIsHidden(doc,line)&&updateLineHeight(line,0)}),marker.clearOnEnter&&on(marker,"beforeCursorEnter",function(){return marker.clear()}),marker.readOnly&&(sawReadOnlySpans=!0,(doc.history.done.length||doc.history.undone.length)&&doc.clearHistory()),marker.collapsed&&(marker.id=++nextMarkerId,marker.atomic=!0),cm){if(updateMaxLine&&(cm.curOp.updateMaxLine=!0),marker.collapsed)regChange(cm,from.line,to.line+1);else if(marker.className||marker.startStyle||marker.endStyle||marker.css||marker.attributes||marker.title)for(var i=from.line;i<=to.line;i++)regLineChange(cm,i,"text");marker.atomic&&reCheckSelection(cm.doc),signalLater(cm,"markerAdded",cm,marker)}return marker}TextMarker.prototype.clear=function(){if(!this.explicitlyCleared){var cm=this.doc.cm,withOp=cm&&!cm.curOp;if(withOp&&startOperation(cm),hasHandler(this,"clear")){var found=this.find();found&&signalLater(this,"clear",found.from,found.to)}for(var min=null,max=null,i=0;i<this.lines.length;++i){var line=this.lines[i],span=getMarkedSpanFor(line.markedSpans,this);cm&&!this.collapsed?regLineChange(cm,lineNo(line),"text"):cm&&(null!=span.to&&(max=lineNo(line)),null!=span.from&&(min=lineNo(line))),line.markedSpans=removeMarkedSpan(line.markedSpans,span),null==span.from&&this.collapsed&&!lineIsHidden(this.doc,line)&&cm&&updateLineHeight(line,textHeight(cm.display))}if(cm&&this.collapsed&&!cm.options.lineWrapping)for(var i$1=0;i$1<this.lines.length;++i$1){var visual=visualLine(this.lines[i$1]),len=lineLength(visual);len>cm.display.maxLineLength&&(cm.display.maxLine=visual,cm.display.maxLineLength=len,cm.display.maxLineChanged=!0)}null!=min&&cm&&this.collapsed&&regChange(cm,min,max+1),this.lines.length=0,this.explicitlyCleared=!0,this.atomic&&this.doc.cantEdit&&(this.doc.cantEdit=!1,cm&&reCheckSelection(cm.doc)),cm&&signalLater(cm,"markerCleared",cm,this,min,max),withOp&&endOperation(cm),this.parent&&this.parent.clear()}},TextMarker.prototype.find=function(side,lineObj){var from,to;null==side&&"bookmark"==this.type&&(side=1);for(var i=0;i<this.lines.length;++i){var line=this.lines[i],span=getMarkedSpanFor(line.markedSpans,this);if(null!=span.from&&(from=Pos(lineObj?line:lineNo(line),span.from),-1==side))return from;if(null!=span.to&&(to=Pos(lineObj?line:lineNo(line),span.to),1==side))return to}return from&&{from:from,to:to}},TextMarker.prototype.changed=function(){var this$1=this,pos=this.find(-1,!0),widget=this,cm=this.doc.cm;pos&&cm&&runInOp(cm,function(){var line=pos.line,lineN=lineNo(pos.line),view=findViewForLine(cm,lineN);if(view&&(clearLineMeasurementCacheFor(view),cm.curOp.selectionChanged=cm.curOp.forceUpdate=!0),cm.curOp.updateMaxLine=!0,!lineIsHidden(widget.doc,line)&&null!=widget.height){var oldHeight=widget.height;widget.height=null;var dHeight=widgetHeight(widget)-oldHeight;dHeight&&updateLineHeight(line,line.height+dHeight)}signalLater(cm,"markerChanged",cm,this$1)})},TextMarker.prototype.attachLine=function(line){if(!this.lines.length&&this.doc.cm){var op=this.doc.cm.curOp;op.maybeHiddenMarkers&&-1!=indexOf(op.maybeHiddenMarkers,this)||(op.maybeUnhiddenMarkers||(op.maybeUnhiddenMarkers=[])).push(this)}this.lines.push(line)},TextMarker.prototype.detachLine=function(line){if(this.lines.splice(indexOf(this.lines,line),1),!this.lines.length&&this.doc.cm){var op=this.doc.cm.curOp;(op.maybeHiddenMarkers||(op.maybeHiddenMarkers=[])).push(this)}},eventMixin(TextMarker);var SharedTextMarker=function(markers,primary){this.markers=markers,this.primary=primary;for(var i=0;i<markers.length;++i)markers[i].parent=this};function findSharedMarkers(doc){return doc.findMarks(Pos(doc.first,0),doc.clipPos(Pos(doc.lastLine())),function(m){return m.parent})}function detachSharedMarkers(markers){for(var loop=function(i){var marker=markers[i],linked=[marker.primary.doc];linkedDocs(marker.primary.doc,function(d){return linked.push(d)});for(var j=0;j<marker.markers.length;j++){var subMarker=marker.markers[j];-1==indexOf(linked,subMarker.doc)&&(subMarker.parent=null,marker.markers.splice(j--,1))}},i=0;i<markers.length;i++)loop(i)}SharedTextMarker.prototype.clear=function(){if(!this.explicitlyCleared){this.explicitlyCleared=!0;for(var i=0;i<this.markers.length;++i)this.markers[i].clear();signalLater(this,"clear")}},SharedTextMarker.prototype.find=function(side,lineObj){return this.primary.find(side,lineObj)},eventMixin(SharedTextMarker);var nextDocId=0,Doc=function(text,mode,firstLine,lineSep,direction){if(!(this instanceof Doc))return new Doc(text,mode,firstLine,lineSep,direction);null==firstLine&&(firstLine=0),BranchChunk.call(this,[new LeafChunk([new Line("",null)])]),this.first=firstLine,this.scrollTop=this.scrollLeft=0,this.cantEdit=!1,this.cleanGeneration=1,this.modeFrontier=this.highlightFrontier=firstLine;var start=Pos(firstLine,0);this.sel=simpleSelection(start),this.history=new History(null),this.id=++nextDocId,this.modeOption=mode,this.lineSep=lineSep,this.direction="rtl"==direction?"rtl":"ltr",this.extend=!1,"string"==typeof text&&(text=this.splitLines(text)),updateDoc(this,{from:start,to:start,text:text}),setSelection(this,simpleSelection(start),sel_dontScroll)};Doc.prototype=createObj(BranchChunk.prototype,{constructor:Doc,iter:function(from,to,op){op?this.iterN(from-this.first,to-from,op):this.iterN(this.first,this.first+this.size,from)},insert:function(at,lines){for(var height=0,i=0;i<lines.length;++i)height+=lines[i].height;this.insertInner(at-this.first,lines,height)},remove:function(at,n){this.removeInner(at-this.first,n)},getValue:function(lineSep){var lines=getLines(this,this.first,this.first+this.size);return!1===lineSep?lines:lines.join(lineSep||this.lineSeparator())},setValue:docMethodOp(function(code){var top=Pos(this.first,0),last=this.first+this.size-1;makeChange(this,{from:top,to:Pos(last,getLine(this,last).text.length),text:this.splitLines(code),origin:"setValue",full:!0},!0),this.cm&&scrollToCoords(this.cm,0,0),setSelection(this,simpleSelection(top),sel_dontScroll)}),replaceRange:function(code,from,to,origin){replaceRange(this,code,from=clipPos(this,from),to=to?clipPos(this,to):from,origin)},getRange:function(from,to,lineSep){var lines=getBetween(this,clipPos(this,from),clipPos(this,to));return!1===lineSep?lines:lines.join(lineSep||this.lineSeparator())},getLine:function(line){var l=this.getLineHandle(line);return l&&l.text},getLineHandle:function(line){if(isLine(this,line))return getLine(this,line)},getLineNumber:function(line){return lineNo(line)},getLineHandleVisualStart:function(line){return"number"==typeof line&&(line=getLine(this,line)),visualLine(line)},lineCount:function(){return this.size},firstLine:function(){return this.first},lastLine:function(){return this.first+this.size-1},clipPos:function(pos){return clipPos(this,pos)},getCursor:function(start){var range$$1=this.sel.primary();return null==start||"head"==start?range$$1.head:"anchor"==start?range$$1.anchor:"end"==start||"to"==start||!1===start?range$$1.to():range$$1.from()},listSelections:function(){return this.sel.ranges},somethingSelected:function(){return this.sel.somethingSelected()},setCursor:docMethodOp(function(line,ch,options){setSimpleSelection(this,clipPos(this,"number"==typeof line?Pos(line,ch||0):line),null,options)}),setSelection:docMethodOp(function(anchor,head,options){setSimpleSelection(this,clipPos(this,anchor),clipPos(this,head||anchor),options)}),extendSelection:docMethodOp(function(head,other,options){extendSelection(this,clipPos(this,head),other&&clipPos(this,other),options)}),extendSelections:docMethodOp(function(heads,options){extendSelections(this,clipPosArray(this,heads),options)}),extendSelectionsBy:docMethodOp(function(f,options){extendSelections(this,clipPosArray(this,map(this.sel.ranges,f)),options)}),setSelections:docMethodOp(function(ranges,primary,options){if(ranges.length){for(var out=[],i=0;i<ranges.length;i++)out[i]=new Range(clipPos(this,ranges[i].anchor),clipPos(this,ranges[i].head));null==primary&&(primary=Math.min(ranges.length-1,this.sel.primIndex)),setSelection(this,normalizeSelection(this.cm,out,primary),options)}}),addSelection:docMethodOp(function(anchor,head,options){var ranges=this.sel.ranges.slice(0);ranges.push(new Range(clipPos(this,anchor),clipPos(this,head||anchor))),setSelection(this,normalizeSelection(this.cm,ranges,ranges.length-1),options)}),getSelection:function(lineSep){for(var lines,ranges=this.sel.ranges,i=0;i<ranges.length;i++){var sel=getBetween(this,ranges[i].from(),ranges[i].to());lines=lines?lines.concat(sel):sel}return!1===lineSep?lines:lines.join(lineSep||this.lineSeparator())},getSelections:function(lineSep){for(var parts=[],ranges=this.sel.ranges,i=0;i<ranges.length;i++){var sel=getBetween(this,ranges[i].from(),ranges[i].to());!1!==lineSep&&(sel=sel.join(lineSep||this.lineSeparator())),parts[i]=sel}return parts},replaceSelection:function(code,collapse,origin){for(var dup=[],i=0;i<this.sel.ranges.length;i++)dup[i]=code;this.replaceSelections(dup,collapse,origin||"+input")},replaceSelections:docMethodOp(function(code,collapse,origin){for(var changes=[],sel=this.sel,i=0;i<sel.ranges.length;i++){var range$$1=sel.ranges[i];changes[i]={from:range$$1.from(),to:range$$1.to(),text:this.splitLines(code[i]),origin:origin}}for(var newSel=collapse&&"end"!=collapse&&function(doc,changes,hint){for(var out=[],oldPrev=Pos(doc.first,0),newPrev=oldPrev,i=0;i<changes.length;i++){var change=changes[i],from=offsetPos(change.from,oldPrev,newPrev),to=offsetPos(changeEnd(change),oldPrev,newPrev);if(oldPrev=change.to,newPrev=to,"around"==hint){var range=doc.sel.ranges[i],inv=cmp(range.head,range.anchor)<0;out[i]=new Range(inv?to:from,inv?from:to)}else out[i]=new Range(from,from)}return new Selection(out,doc.sel.primIndex)}(this,changes,collapse),i$1=changes.length-1;0<=i$1;i$1--)makeChange(this,changes[i$1]);newSel?setSelectionReplaceHistory(this,newSel):this.cm&&ensureCursorVisible(this.cm)}),undo:docMethodOp(function(){makeChangeFromHistory(this,"undo")}),redo:docMethodOp(function(){makeChangeFromHistory(this,"redo")}),undoSelection:docMethodOp(function(){makeChangeFromHistory(this,"undo",!0)}),redoSelection:docMethodOp(function(){makeChangeFromHistory(this,"redo",!0)}),setExtending:function(val){this.extend=val},getExtending:function(){return this.extend},historySize:function(){for(var hist=this.history,done=0,undone=0,i=0;i<hist.done.length;i++)hist.done[i].ranges||++done;for(var i$1=0;i$1<hist.undone.length;i$1++)hist.undone[i$1].ranges||++undone;return{undo:done,redo:undone}},clearHistory:function(){this.history=new History(this.history.maxGeneration)},markClean:function(){this.cleanGeneration=this.changeGeneration(!0)},changeGeneration:function(forceSplit){return forceSplit&&(this.history.lastOp=this.history.lastSelOp=this.history.lastOrigin=null),this.history.generation},isClean:function(gen){return this.history.generation==(gen||this.cleanGeneration)},getHistory:function(){return{done:copyHistoryArray(this.history.done),undone:copyHistoryArray(this.history.undone)}},setHistory:function(histData){var hist=this.history=new History(this.history.maxGeneration);hist.done=copyHistoryArray(histData.done.slice(0),null,!0),hist.undone=copyHistoryArray(histData.undone.slice(0),null,!0)},setGutterMarker:docMethodOp(function(line,gutterID,value){return changeLine(this,line,"gutter",function(line){var markers=line.gutterMarkers||(line.gutterMarkers={});return!(markers[gutterID]=value)&&isEmpty(markers)&&(line.gutterMarkers=null),!0})}),clearGutter:docMethodOp(function(gutterID){var this$1=this;this.iter(function(line){line.gutterMarkers&&line.gutterMarkers[gutterID]&&changeLine(this$1,line,"gutter",function(){return line.gutterMarkers[gutterID]=null,isEmpty(line.gutterMarkers)&&(line.gutterMarkers=null),!0})})}),lineInfo:function(line){var n;if("number"==typeof line){if(!isLine(this,line))return null;if(!(line=getLine(this,n=line)))return null}else if(null==(n=lineNo(line)))return null;return{line:n,handle:line,text:line.text,gutterMarkers:line.gutterMarkers,textClass:line.textClass,bgClass:line.bgClass,wrapClass:line.wrapClass,widgets:line.widgets}},addLineClass:docMethodOp(function(handle,where,cls){return changeLine(this,handle,"gutter"==where?"gutter":"class",function(line){var prop="text"==where?"textClass":"background"==where?"bgClass":"gutter"==where?"gutterClass":"wrapClass";if(line[prop]){if(classTest(cls).test(line[prop]))return!1;line[prop]+=" "+cls}else line[prop]=cls;return!0})}),removeLineClass:docMethodOp(function(handle,where,cls){return changeLine(this,handle,"gutter"==where?"gutter":"class",function(line){var prop="text"==where?"textClass":"background"==where?"bgClass":"gutter"==where?"gutterClass":"wrapClass",cur=line[prop];if(!cur)return!1;if(null==cls)line[prop]=null;else{var found=cur.match(classTest(cls));if(!found)return!1;var end=found.index+found[0].length;line[prop]=cur.slice(0,found.index)+(found.index&&end!=cur.length?" ":"")+cur.slice(end)||null}return!0})}),addLineWidget:docMethodOp(function(handle,node,options){return function(doc,handle,node,options){var widget=new LineWidget(doc,node,options),cm=doc.cm;return cm&&widget.noHScroll&&(cm.display.alignWidgets=!0),changeLine(doc,handle,"widget",function(line){var widgets=line.widgets||(line.widgets=[]);if(null==widget.insertAt?widgets.push(widget):widgets.splice(Math.min(widgets.length-1,Math.max(0,widget.insertAt)),0,widget),widget.line=line,cm&&!lineIsHidden(doc,line)){var aboveVisible=heightAtLine(line)<doc.scrollTop;updateLineHeight(line,line.height+widgetHeight(widget)),aboveVisible&&addToScrollTop(cm,widget.height),cm.curOp.forceUpdate=!0}return!0}),cm&&signalLater(cm,"lineWidgetAdded",cm,widget,"number"==typeof handle?handle:lineNo(handle)),widget}(this,handle,node,options)}),removeLineWidget:function(widget){widget.clear()},markText:function(from,to,options){return markText(this,clipPos(this,from),clipPos(this,to),options,options&&options.type||"range")},setBookmark:function(pos,options){var realOpts={replacedWith:options&&(null==options.nodeType?options.widget:options),insertLeft:options&&options.insertLeft,clearWhenEmpty:!1,shared:options&&options.shared,handleMouseEvents:options&&options.handleMouseEvents};return markText(this,pos=clipPos(this,pos),pos,realOpts,"bookmark")},findMarksAt:function(pos){var markers=[],spans=getLine(this,(pos=clipPos(this,pos)).line).markedSpans;if(spans)for(var i=0;i<spans.length;++i){var span=spans[i];(null==span.from||span.from<=pos.ch)&&(null==span.to||span.to>=pos.ch)&&markers.push(span.marker.parent||span.marker)}return markers},findMarks:function(from,to,filter){from=clipPos(this,from),to=clipPos(this,to);var found=[],lineNo$$1=from.line;return this.iter(from.line,to.line+1,function(line){var spans=line.markedSpans;if(spans)for(var i=0;i<spans.length;i++){var span=spans[i];null!=span.to&&lineNo$$1==from.line&&from.ch>=span.to||null==span.from&&lineNo$$1!=from.line||null!=span.from&&lineNo$$1==to.line&&span.from>=to.ch||filter&&!filter(span.marker)||found.push(span.marker.parent||span.marker)}++lineNo$$1}),found},getAllMarks:function(){var markers=[];return this.iter(function(line){var sps=line.markedSpans;if(sps)for(var i=0;i<sps.length;++i)null!=sps[i].from&&markers.push(sps[i].marker)}),markers},posFromIndex:function(off){var ch,lineNo$$1=this.first,sepSize=this.lineSeparator().length;return this.iter(function(line){var sz=line.text.length+sepSize;if(off<sz)return ch=off,!0;off-=sz,++lineNo$$1}),clipPos(this,Pos(lineNo$$1,ch))},indexFromPos:function(coords){var index=(coords=clipPos(this,coords)).ch;if(coords.line<this.first||coords.ch<0)return 0;var sepSize=this.lineSeparator().length;return this.iter(this.first,coords.line,function(line){index+=line.text.length+sepSize}),index},copy:function(copyHistory){var doc=new Doc(getLines(this,this.first,this.first+this.size),this.modeOption,this.first,this.lineSep,this.direction);return doc.scrollTop=this.scrollTop,doc.scrollLeft=this.scrollLeft,doc.sel=this.sel,doc.extend=!1,copyHistory&&(doc.history.undoDepth=this.history.undoDepth,doc.setHistory(this.getHistory())),doc},linkedDoc:function(options){options||(options={});var from=this.first,to=this.first+this.size;null!=options.from&&options.from>from&&(from=options.from),null!=options.to&&options.to<to&&(to=options.to);var copy=new Doc(getLines(this,from,to),options.mode||this.modeOption,from,this.lineSep,this.direction);return options.sharedHist&&(copy.history=this.history),(this.linked||(this.linked=[])).push({doc:copy,sharedHist:options.sharedHist}),copy.linked=[{doc:this,isParent:!0,sharedHist:options.sharedHist}],function(doc,markers){for(var i=0;i<markers.length;i++){var marker=markers[i],pos=marker.find(),mFrom=doc.clipPos(pos.from),mTo=doc.clipPos(pos.to);if(cmp(mFrom,mTo)){var subMark=markText(doc,mFrom,mTo,marker.primary,marker.primary.type);marker.markers.push(subMark),subMark.parent=marker}}}(copy,findSharedMarkers(this)),copy},unlinkDoc:function(other){if(other instanceof CodeMirror&&(other=other.doc),this.linked)for(var i=0;i<this.linked.length;++i){if(this.linked[i].doc==other){this.linked.splice(i,1),other.unlinkDoc(this),detachSharedMarkers(findSharedMarkers(this));break}}if(other.history==this.history){var splitIds=[other.id];linkedDocs(other,function(doc){return splitIds.push(doc.id)},!0),other.history=new History(null),other.history.done=copyHistoryArray(this.history.done,splitIds),other.history.undone=copyHistoryArray(this.history.undone,splitIds)}},iterLinkedDocs:function(f){linkedDocs(this,f)},getMode:function(){return this.mode},getEditor:function(){return this.cm},splitLines:function(str){return this.lineSep?str.split(this.lineSep):splitLinesAuto(str)},lineSeparator:function(){return this.lineSep||"\n"},setDirection:docMethodOp(function(dir){"rtl"!=dir&&(dir="ltr"),dir!=this.direction&&(this.direction=dir,this.iter(function(line){return line.order=null}),this.cm&&function(cm){runInOp(cm,function(){setDirectionClass(cm),regChange(cm)})}(this.cm))})}),Doc.prototype.eachLine=Doc.prototype.iter;var lastDrop=0;function onDrop(e){var cm=this;if(clearDragCursor(cm),!signalDOMEvent(cm,e)&&!eventInWidget(cm.display,e)){e_preventDefault(e),ie&&(lastDrop=+new Date);var pos=posFromMouse(cm,e,!0),files=e.dataTransfer.files;if(pos&&!cm.isReadOnly())if(files&&files.length&&window.FileReader&&window.File)for(var n=files.length,text=Array(n),read=0,loadFile=function(file,i){if(!cm.options.allowDropFileTypes||-1!=indexOf(cm.options.allowDropFileTypes,file.type)){var reader=new FileReader;reader.onload=operation(cm,function(){var content=reader.result;if(/[\x00-\x08\x0e-\x1f]{2}/.test(content)&&(content=""),text[i]=content,++read==n){var change={from:pos=clipPos(cm.doc,pos),to:pos,text:cm.doc.splitLines(text.join(cm.doc.lineSeparator())),origin:"paste"};makeChange(cm.doc,change),setSelectionReplaceHistory(cm.doc,simpleSelection(pos,changeEnd(change)))}}),reader.readAsText(file)}},i=0;i<n;++i)loadFile(files[i],i);else{if(cm.state.draggingText&&-1<cm.doc.sel.contains(pos))return cm.state.draggingText(e),void setTimeout(function(){return cm.display.input.focus()},20);try{var text$1=e.dataTransfer.getData("Text");if(text$1){var selected;if(cm.state.draggingText&&!cm.state.draggingText.copy&&(selected=cm.listSelections()),setSelectionNoUndo(cm.doc,simpleSelection(pos,pos)),selected)for(var i$1=0;i$1<selected.length;++i$1)replaceRange(cm.doc,"",selected[i$1].anchor,selected[i$1].head,"drag");cm.replaceSelection(text$1,"around","paste"),cm.display.input.focus()}}catch(e){}}}}function clearDragCursor(cm){cm.display.dragCursor&&(cm.display.lineSpace.removeChild(cm.display.dragCursor),cm.display.dragCursor=null)}function forEachCodeMirror(f){if(document.getElementsByClassName){for(var byClass=document.getElementsByClassName("CodeMirror"),editors=[],i=0;i<byClass.length;i++){var cm=byClass[i].CodeMirror;cm&&editors.push(cm)}editors.length&&editors[0].operation(function(){for(var i=0;i<editors.length;i++)f(editors[i])})}}var globalsRegistered=!1;function ensureGlobalHandlers(){globalsRegistered||(function(){var resizeTimer;on(window,"resize",function(){null==resizeTimer&&(resizeTimer=setTimeout(function(){resizeTimer=null,forEachCodeMirror(onResize)},100))}),on(window,"blur",function(){return forEachCodeMirror(onBlur)})}(),globalsRegistered=!0)}function onResize(cm){var d=cm.display;d.cachedCharWidth=d.cachedTextHeight=d.cachedPaddingH=null,d.scrollbarsClipped=!1,cm.setSize()}for(var keyNames={3:"Pause",8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",20:"CapsLock",27:"Esc",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"Left",38:"Up",39:"Right",40:"Down",44:"PrintScrn",45:"Insert",46:"Delete",59:";",61:"=",91:"Mod",92:"Mod",93:"Mod",106:"*",107:"=",109:"-",110:".",111:"/",145:"ScrollLock",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",63232:"Up",63233:"Down",63234:"Left",63235:"Right",63272:"Delete",63273:"Home",63275:"End",63276:"PageUp",63277:"PageDown",63302:"Insert"},i=0;i<10;i++)keyNames[i+48]=keyNames[i+96]=String(i);for(var i$1=65;i$1<=90;i$1++)keyNames[i$1]=String.fromCharCode(i$1);for(var i$2=1;i$2<=12;i$2++)keyNames[i$2+111]=keyNames[i$2+63235]="F"+i$2;var keyMap={};function normalizeKeyName(name){var alt,ctrl,shift,cmd,parts=name.split(/-(?!$)/);name=parts[parts.length-1];for(var i=0;i<parts.length-1;i++){var mod=parts[i];if(/^(cmd|meta|m)$/i.test(mod))cmd=!0;else if(/^a(lt)?$/i.test(mod))alt=!0;else if(/^(c|ctrl|control)$/i.test(mod))ctrl=!0;else{if(!/^s(hift)?$/i.test(mod))throw new Error("Unrecognized modifier name: "+mod);shift=!0}}return alt&&(name="Alt-"+name),ctrl&&(name="Ctrl-"+name),cmd&&(name="Cmd-"+name),shift&&(name="Shift-"+name),name}function normalizeKeyMap(keymap){var copy={};for(var keyname in keymap)if(keymap.hasOwnProperty(keyname)){var value=keymap[keyname];if(/^(name|fallthrough|(de|at)tach)$/.test(keyname))continue;if("..."==value){delete keymap[keyname];continue}for(var keys=map(keyname.split(" "),normalizeKeyName),i=0;i<keys.length;i++){var val=void 0,name=void 0;val=i==keys.length-1?(name=keys.join(" "),value):(name=keys.slice(0,i+1).join(" "),"...");var prev=copy[name];if(prev){if(prev!=val)throw new Error("Inconsistent bindings for "+name)}else copy[name]=val}delete keymap[keyname]}for(var prop in copy)keymap[prop]=copy[prop];return keymap}function lookupKey(key,map$$1,handle,context){var found=(map$$1=getKeyMap(map$$1)).call?map$$1.call(key,context):map$$1[key];if(!1===found)return"nothing";if("..."===found)return"multi";if(null!=found&&handle(found))return"handled";if(map$$1.fallthrough){if("[object Array]"!=Object.prototype.toString.call(map$$1.fallthrough))return lookupKey(key,map$$1.fallthrough,handle,context);for(var i=0;i<map$$1.fallthrough.length;i++){var result=lookupKey(key,map$$1.fallthrough[i],handle,context);if(result)return result}}}function isModifierKey(value){var name="string"==typeof value?value:keyNames[value.keyCode];return"Ctrl"==name||"Alt"==name||"Shift"==name||"Mod"==name}function addModifierNames(name,event,noShift){var base=name;return event.altKey&&"Alt"!=base&&(name="Alt-"+name),(flipCtrlCmd?event.metaKey:event.ctrlKey)&&"Ctrl"!=base&&(name="Ctrl-"+name),(flipCtrlCmd?event.ctrlKey:event.metaKey)&&"Cmd"!=base&&(name="Cmd-"+name),!noShift&&event.shiftKey&&"Shift"!=base&&(name="Shift-"+name),name}function keyName(event,noShift){if(presto&&34==event.keyCode&&event.char)return!1;var name=keyNames[event.keyCode];return null!=name&&!event.altGraphKey&&(3==event.keyCode&&event.code&&(name=event.code),addModifierNames(name,event,noShift))}function getKeyMap(val){return"string"==typeof val?keyMap[val]:val}function deleteNearSelection(cm,compute){for(var ranges=cm.doc.sel.ranges,kill=[],i=0;i<ranges.length;i++){for(var toKill=compute(ranges[i]);kill.length&&cmp(toKill.from,lst(kill).to)<=0;){var replaced=kill.pop();if(cmp(replaced.from,toKill.from)<0){toKill.from=replaced.from;break}}kill.push(toKill)}runInOp(cm,function(){for(var i=kill.length-1;0<=i;i--)replaceRange(cm.doc,"",kill[i].from,kill[i].to,"+delete");ensureCursorVisible(cm)})}function moveCharLogically(line,ch,dir){var target=skipExtendingChars(line.text,ch+dir,dir);return target<0||target>line.text.length?null:target}function moveLogically(line,start,dir){var ch=moveCharLogically(line,start.ch,dir);return null==ch?null:new Pos(start.line,ch,dir<0?"after":"before")}function endOfLine(visually,cm,lineObj,lineNo,dir){if(visually){var order=getOrder(lineObj,cm.doc.direction);if(order){var ch,part=dir<0?lst(order):order[0],sticky=dir<0==(1==part.level)?"after":"before";if(0<part.level||"rtl"==cm.doc.direction){var prep=prepareMeasureForLine(cm,lineObj);ch=dir<0?lineObj.text.length-1:0;var targetTop=measureCharPrepared(cm,prep,ch).top;ch=findFirst(function(ch){return measureCharPrepared(cm,prep,ch).top==targetTop},dir<0==(1==part.level)?part.from:part.to-1,ch),"before"==sticky&&(ch=moveCharLogically(lineObj,ch,1))}else ch=dir<0?part.to:part.from;return new Pos(lineNo,ch,sticky)}}return new Pos(lineNo,dir<0?lineObj.text.length:0,dir<0?"before":"after")}keyMap.basic={Left:"goCharLeft",Right:"goCharRight",Up:"goLineUp",Down:"goLineDown",End:"goLineEnd",Home:"goLineStartSmart",PageUp:"goPageUp",PageDown:"goPageDown",Delete:"delCharAfter",Backspace:"delCharBefore","Shift-Backspace":"delCharBefore",Tab:"defaultTab","Shift-Tab":"indentAuto",Enter:"newlineAndIndent",Insert:"toggleOverwrite",Esc:"singleSelection"},keyMap.pcDefault={"Ctrl-A":"selectAll","Ctrl-D":"deleteLine","Ctrl-Z":"undo","Shift-Ctrl-Z":"redo","Ctrl-Y":"redo","Ctrl-Home":"goDocStart","Ctrl-End":"goDocEnd","Ctrl-Up":"goLineUp","Ctrl-Down":"goLineDown","Ctrl-Left":"goGroupLeft","Ctrl-Right":"goGroupRight","Alt-Left":"goLineStart","Alt-Right":"goLineEnd","Ctrl-Backspace":"delGroupBefore","Ctrl-Delete":"delGroupAfter","Ctrl-S":"save","Ctrl-F":"find","Ctrl-G":"findNext","Shift-Ctrl-G":"findPrev","Shift-Ctrl-F":"replace","Shift-Ctrl-R":"replaceAll","Ctrl-[":"indentLess","Ctrl-]":"indentMore","Ctrl-U":"undoSelection","Shift-Ctrl-U":"redoSelection","Alt-U":"redoSelection",fallthrough:"basic"},keyMap.emacsy={"Ctrl-F":"goCharRight","Ctrl-B":"goCharLeft","Ctrl-P":"goLineUp","Ctrl-N":"goLineDown","Alt-F":"goWordRight","Alt-B":"goWordLeft","Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd","Ctrl-V":"goPageDown","Shift-Ctrl-V":"goPageUp","Ctrl-D":"delCharAfter","Ctrl-H":"delCharBefore","Alt-D":"delWordAfter","Alt-Backspace":"delWordBefore","Ctrl-K":"killLine","Ctrl-T":"transposeChars","Ctrl-O":"openLine"},keyMap.macDefault={"Cmd-A":"selectAll","Cmd-D":"deleteLine","Cmd-Z":"undo","Shift-Cmd-Z":"redo","Cmd-Y":"redo","Cmd-Home":"goDocStart","Cmd-Up":"goDocStart","Cmd-End":"goDocEnd","Cmd-Down":"goDocEnd","Alt-Left":"goGroupLeft","Alt-Right":"goGroupRight","Cmd-Left":"goLineLeft","Cmd-Right":"goLineRight","Alt-Backspace":"delGroupBefore","Ctrl-Alt-Backspace":"delGroupAfter","Alt-Delete":"delGroupAfter","Cmd-S":"save","Cmd-F":"find","Cmd-G":"findNext","Shift-Cmd-G":"findPrev","Cmd-Alt-F":"replace","Shift-Cmd-Alt-F":"replaceAll","Cmd-[":"indentLess","Cmd-]":"indentMore","Cmd-Backspace":"delWrappedLineLeft","Cmd-Delete":"delWrappedLineRight","Cmd-U":"undoSelection","Shift-Cmd-U":"redoSelection","Ctrl-Up":"goDocStart","Ctrl-Down":"goDocEnd",fallthrough:["basic","emacsy"]},keyMap.default=mac?keyMap.macDefault:keyMap.pcDefault;var commands={selectAll:selectAll,singleSelection:function(cm){return cm.setSelection(cm.getCursor("anchor"),cm.getCursor("head"),sel_dontScroll)},killLine:function(cm){return deleteNearSelection(cm,function(range){if(range.empty()){var len=getLine(cm.doc,range.head.line).text.length;return range.head.ch==len&&range.head.line<cm.lastLine()?{from:range.head,to:Pos(range.head.line+1,0)}:{from:range.head,to:Pos(range.head.line,len)}}return{from:range.from(),to:range.to()}})},deleteLine:function(cm){return deleteNearSelection(cm,function(range){return{from:Pos(range.from().line,0),to:clipPos(cm.doc,Pos(range.to().line+1,0))}})},delLineLeft:function(cm){return deleteNearSelection(cm,function(range){return{from:Pos(range.from().line,0),to:range.from()}})},delWrappedLineLeft:function(cm){return deleteNearSelection(cm,function(range){var top=cm.charCoords(range.head,"div").top+5;return{from:cm.coordsChar({left:0,top:top},"div"),to:range.from()}})},delWrappedLineRight:function(cm){return deleteNearSelection(cm,function(range){var top=cm.charCoords(range.head,"div").top+5,rightPos=cm.coordsChar({left:cm.display.lineDiv.offsetWidth+100,top:top},"div");return{from:range.from(),to:rightPos}})},undo:function(cm){return cm.undo()},redo:function(cm){return cm.redo()},undoSelection:function(cm){return cm.undoSelection()},redoSelection:function(cm){return cm.redoSelection()},goDocStart:function(cm){return cm.extendSelection(Pos(cm.firstLine(),0))},goDocEnd:function(cm){return cm.extendSelection(Pos(cm.lastLine()))},goLineStart:function(cm){return cm.extendSelectionsBy(function(range){return lineStart(cm,range.head.line)},{origin:"+move",bias:1})},goLineStartSmart:function(cm){return cm.extendSelectionsBy(function(range){return lineStartSmart(cm,range.head)},{origin:"+move",bias:1})},goLineEnd:function(cm){return cm.extendSelectionsBy(function(range){return function(cm,lineN){var line=getLine(cm.doc,lineN),visual=function(line){for(var merged;merged=collapsedSpanAtEnd(line);)line=merged.find(1,!0).line;return line}(line);visual!=line&&(lineN=lineNo(visual));return endOfLine(!0,cm,line,lineN,-1)}(cm,range.head.line)},{origin:"+move",bias:-1})},goLineRight:function(cm){return cm.extendSelectionsBy(function(range){var top=cm.cursorCoords(range.head,"div").top+5;return cm.coordsChar({left:cm.display.lineDiv.offsetWidth+100,top:top},"div")},sel_move)},goLineLeft:function(cm){return cm.extendSelectionsBy(function(range){var top=cm.cursorCoords(range.head,"div").top+5;return cm.coordsChar({left:0,top:top},"div")},sel_move)},goLineLeftSmart:function(cm){return cm.extendSelectionsBy(function(range){var top=cm.cursorCoords(range.head,"div").top+5,pos=cm.coordsChar({left:0,top:top},"div");return pos.ch<cm.getLine(pos.line).search(/\S/)?lineStartSmart(cm,range.head):pos},sel_move)},goLineUp:function(cm){return cm.moveV(-1,"line")},goLineDown:function(cm){return cm.moveV(1,"line")},goPageUp:function(cm){return cm.moveV(-1,"page")},goPageDown:function(cm){return cm.moveV(1,"page")},goCharLeft:function(cm){return cm.moveH(-1,"char")},goCharRight:function(cm){return cm.moveH(1,"char")},goColumnLeft:function(cm){return cm.moveH(-1,"column")},goColumnRight:function(cm){return cm.moveH(1,"column")},goWordLeft:function(cm){return cm.moveH(-1,"word")},goGroupRight:function(cm){return cm.moveH(1,"group")},goGroupLeft:function(cm){return cm.moveH(-1,"group")},goWordRight:function(cm){return cm.moveH(1,"word")},delCharBefore:function(cm){return cm.deleteH(-1,"char")},delCharAfter:function(cm){return cm.deleteH(1,"char")},delWordBefore:function(cm){return cm.deleteH(-1,"word")},delWordAfter:function(cm){return cm.deleteH(1,"word")},delGroupBefore:function(cm){return cm.deleteH(-1,"group")},delGroupAfter:function(cm){return cm.deleteH(1,"group")},indentAuto:function(cm){return cm.indentSelection("smart")},indentMore:function(cm){return cm.indentSelection("add")},indentLess:function(cm){return cm.indentSelection("subtract")},insertTab:function(cm){return cm.replaceSelection("\t")},insertSoftTab:function(cm){for(var spaces=[],ranges=cm.listSelections(),tabSize=cm.options.tabSize,i=0;i<ranges.length;i++){var pos=ranges[i].from(),col=countColumn(cm.getLine(pos.line),pos.ch,tabSize);spaces.push(spaceStr(tabSize-col%tabSize))}cm.replaceSelections(spaces)},defaultTab:function(cm){cm.somethingSelected()?cm.indentSelection("add"):cm.execCommand("insertTab")},transposeChars:function(cm){return runInOp(cm,function(){for(var ranges=cm.listSelections(),newSel=[],i=0;i<ranges.length;i++)if(ranges[i].empty()){var cur=ranges[i].head,line=getLine(cm.doc,cur.line).text;if(line)if(cur.ch==line.length&&(cur=new Pos(cur.line,cur.ch-1)),0<cur.ch)cur=new Pos(cur.line,cur.ch+1),cm.replaceRange(line.charAt(cur.ch-1)+line.charAt(cur.ch-2),Pos(cur.line,cur.ch-2),cur,"+transpose");else if(cur.line>cm.doc.first){var prev=getLine(cm.doc,cur.line-1).text;prev&&(cur=new Pos(cur.line,1),cm.replaceRange(line.charAt(0)+cm.doc.lineSeparator()+prev.charAt(prev.length-1),Pos(cur.line-1,prev.length-1),cur,"+transpose"))}newSel.push(new Range(cur,cur))}cm.setSelections(newSel)})},newlineAndIndent:function(cm){return runInOp(cm,function(){for(var sels=cm.listSelections(),i=sels.length-1;0<=i;i--)cm.replaceRange(cm.doc.lineSeparator(),sels[i].anchor,sels[i].head,"+input");sels=cm.listSelections();for(var i$1=0;i$1<sels.length;i$1++)cm.indentLine(sels[i$1].from().line,null,!0);ensureCursorVisible(cm)})},openLine:function(cm){return cm.replaceSelection("\n","start")},toggleOverwrite:function(cm){return cm.toggleOverwrite()}};function lineStart(cm,lineN){var line=getLine(cm.doc,lineN),visual=visualLine(line);return visual!=line&&(lineN=lineNo(visual)),endOfLine(!0,cm,visual,lineN,1)}function lineStartSmart(cm,pos){var start=lineStart(cm,pos.line),line=getLine(cm.doc,start.line),order=getOrder(line,cm.doc.direction);if(order&&0!=order[0].level)return start;var firstNonWS=Math.max(0,line.text.search(/\S/)),inWS=pos.line==start.line&&pos.ch<=firstNonWS&&pos.ch;return Pos(start.line,inWS?0:firstNonWS,start.sticky)}function doHandleBinding(cm,bound,dropShift){if("string"==typeof bound&&!(bound=commands[bound]))return!1;cm.display.input.ensurePolled();var prevShift=cm.display.shift,done=!1;try{cm.isReadOnly()&&(cm.state.suppressEdits=!0),dropShift&&(cm.display.shift=!1),done=bound(cm)!=Pass}finally{cm.display.shift=prevShift,cm.state.suppressEdits=!1}return done}var stopSeq=new Delayed;function dispatchKey(cm,name,e,handle){var seq=cm.state.keySeq;if(seq){if(isModifierKey(name))return"handled";if(/\'$/.test(name)?cm.state.keySeq=null:stopSeq.set(50,function(){cm.state.keySeq==seq&&(cm.state.keySeq=null,cm.display.input.reset())}),dispatchKeyInner(cm,seq+" "+name,e,handle))return!0}return dispatchKeyInner(cm,name,e,handle)}function dispatchKeyInner(cm,name,e,handle){var result=function(cm,name,handle){for(var i=0;i<cm.state.keyMaps.length;i++){var result=lookupKey(name,cm.state.keyMaps[i],handle,cm);if(result)return result}return cm.options.extraKeys&&lookupKey(name,cm.options.extraKeys,handle,cm)||lookupKey(name,cm.options.keyMap,handle,cm)}(cm,name,handle);return"multi"==result&&(cm.state.keySeq=name),"handled"==result&&signalLater(cm,"keyHandled",cm,name,e),"handled"!=result&&"multi"!=result||(e_preventDefault(e),restartBlink(cm)),!!result}function handleKeyBinding(cm,e){var name=keyName(e,!0);return!!name&&(e.shiftKey&&!cm.state.keySeq?dispatchKey(cm,"Shift-"+name,e,function(b){return doHandleBinding(cm,b,!0)})||dispatchKey(cm,name,e,function(b){if("string"==typeof b?/^go[A-Z]/.test(b):b.motion)return doHandleBinding(cm,b)}):dispatchKey(cm,name,e,function(b){return doHandleBinding(cm,b)}))}var lastStoppedKey=null;function onKeyDown(e){var cm=this;if(cm.curOp.focus=activeElt(),!signalDOMEvent(cm,e)){ie&&ie_version<11&&27==e.keyCode&&(e.returnValue=!1);var code=e.keyCode;cm.display.shift=16==code||e.shiftKey;var handled=handleKeyBinding(cm,e);presto&&(lastStoppedKey=handled?code:null,!handled&&88==code&&!hasCopyEvent&&(mac?e.metaKey:e.ctrlKey)&&cm.replaceSelection("",null,"cut")),18!=code||/\bCodeMirror-crosshair\b/.test(cm.display.lineDiv.className)||function(cm){var lineDiv=cm.display.lineDiv;function up(e){18!=e.keyCode&&e.altKey||(rmClass(lineDiv,"CodeMirror-crosshair"),off(document,"keyup",up),off(document,"mouseover",up))}addClass(lineDiv,"CodeMirror-crosshair"),on(document,"keyup",up),on(document,"mouseover",up)}(cm)}}function onKeyUp(e){16==e.keyCode&&(this.doc.sel.shift=!1),signalDOMEvent(this,e)}function onKeyPress(e){var cm=this;if(!(eventInWidget(cm.display,e)||signalDOMEvent(cm,e)||e.ctrlKey&&!e.altKey||mac&&e.metaKey)){var keyCode=e.keyCode,charCode=e.charCode;if(presto&&keyCode==lastStoppedKey)return lastStoppedKey=null,void e_preventDefault(e);if(!presto||e.which&&!(e.which<10)||!handleKeyBinding(cm,e)){var ch=String.fromCharCode(null==charCode?keyCode:charCode);"\b"==ch||function(cm,e,ch){return dispatchKey(cm,"'"+ch+"'",e,function(b){return doHandleBinding(cm,b,!0)})}(cm,e,ch)||cm.display.input.onKeyPress(e)}}}var lastClick,lastDoubleClick,PastClick=function(time,pos,button){this.time=time,this.pos=pos,this.button=button};function onMouseDown(e){var cm=this,display=cm.display;if(!(signalDOMEvent(cm,e)||display.activeTouch&&display.input.supportsTouch()))if(display.input.ensurePolled(),display.shift=e.shiftKey,eventInWidget(display,e))webkit||(display.scroller.draggable=!1,setTimeout(function(){return display.scroller.draggable=!0},100));else if(!clickInGutter(cm,e)){var pos=posFromMouse(cm,e),button=e_button(e),repeat=pos?function(pos,button){var now=+new Date;return lastDoubleClick&&lastDoubleClick.compare(now,pos,button)?(lastClick=lastDoubleClick=null,"triple"):lastClick&&lastClick.compare(now,pos,button)?(lastDoubleClick=new PastClick(now,pos,button),lastClick=null,"double"):(lastClick=new PastClick(now,pos,button),lastDoubleClick=null,"single")}(pos,button):"single";window.focus(),1==button&&cm.state.selectingText&&cm.state.selectingText(e),pos&&function(cm,button,pos,repeat,event){var name="Click";"double"==repeat?name="Double"+name:"triple"==repeat&&(name="Triple"+name);return dispatchKey(cm,addModifierNames(name=(1==button?"Left":2==button?"Middle":"Right")+name,event),event,function(bound){if("string"==typeof bound&&(bound=commands[bound]),!bound)return!1;var done=!1;try{cm.isReadOnly()&&(cm.state.suppressEdits=!0),done=bound(cm,pos)!=Pass}finally{cm.state.suppressEdits=!1}return done})}(cm,button,pos,repeat,e)||(1==button?pos?function(cm,pos,repeat,event){ie?setTimeout(bind(ensureFocus,cm),0):cm.curOp.focus=activeElt();var contained,behavior=function(cm,repeat,event){var option=cm.getOption("configureMouse"),value=option?option(cm,repeat,event):{};if(null==value.unit){var rect=chromeOS?event.shiftKey&&event.metaKey:event.altKey;value.unit=rect?"rectangle":"single"==repeat?"char":"double"==repeat?"word":"line"}null!=value.extend&&!cm.doc.extend||(value.extend=cm.doc.extend||event.shiftKey);null==value.addNew&&(value.addNew=mac?event.metaKey:event.ctrlKey);null==value.moveOnDrag&&(value.moveOnDrag=!(mac?event.altKey:event.ctrlKey));return value}(cm,repeat,event),sel=cm.doc.sel;cm.options.dragDrop&&dragAndDrop&&!cm.isReadOnly()&&"single"==repeat&&-1<(contained=sel.contains(pos))&&(cmp((contained=sel.ranges[contained]).from(),pos)<0||0<pos.xRel)&&(0<cmp(contained.to(),pos)||pos.xRel<0)?function(cm,event,pos,behavior){var display=cm.display,moved=!1,dragEnd=operation(cm,function(e){webkit&&(display.scroller.draggable=!1),cm.state.draggingText=!1,off(display.wrapper.ownerDocument,"mouseup",dragEnd),off(display.wrapper.ownerDocument,"mousemove",mouseMove),off(display.scroller,"dragstart",dragStart),off(display.scroller,"drop",dragEnd),moved||(e_preventDefault(e),behavior.addNew||extendSelection(cm.doc,pos,null,null,behavior.extend),webkit||ie&&9==ie_version?setTimeout(function(){display.wrapper.ownerDocument.body.focus(),display.input.focus()},20):display.input.focus())}),mouseMove=function(e2){moved=moved||10<=Math.abs(event.clientX-e2.clientX)+Math.abs(event.clientY-e2.clientY)},dragStart=function(){return moved=!0};webkit&&(display.scroller.draggable=!0);(cm.state.draggingText=dragEnd).copy=!behavior.moveOnDrag,display.scroller.dragDrop&&display.scroller.dragDrop();on(display.wrapper.ownerDocument,"mouseup",dragEnd),on(display.wrapper.ownerDocument,"mousemove",mouseMove),on(display.scroller,"dragstart",dragStart),on(display.scroller,"drop",dragEnd),delayBlurEvent(cm),setTimeout(function(){return display.input.focus()},20)}(cm,event,pos,behavior):function(cm,event,start,behavior){var display=cm.display,doc=cm.doc;e_preventDefault(event);var ourRange,ourIndex,startSel=doc.sel,ranges=startSel.ranges;behavior.addNew&&!behavior.extend?(ourIndex=doc.sel.contains(start),ourRange=-1<ourIndex?ranges[ourIndex]:new Range(start,start)):(ourRange=doc.sel.primary(),ourIndex=doc.sel.primIndex);if("rectangle"==behavior.unit)behavior.addNew||(ourRange=new Range(start,start)),start=posFromMouse(cm,event,!0,!0),ourIndex=-1;else{var range$$1=rangeForUnit(cm,start,behavior.unit);ourRange=behavior.extend?extendRange(ourRange,range$$1.anchor,range$$1.head,behavior.extend):range$$1}behavior.addNew?-1==ourIndex?(ourIndex=ranges.length,setSelection(doc,normalizeSelection(cm,ranges.concat([ourRange]),ourIndex),{scroll:!1,origin:"*mouse"})):1<ranges.length&&ranges[ourIndex].empty()&&"char"==behavior.unit&&!behavior.extend?(setSelection(doc,normalizeSelection(cm,ranges.slice(0,ourIndex).concat(ranges.slice(ourIndex+1)),0),{scroll:!1,origin:"*mouse"}),startSel=doc.sel):replaceOneSelection(doc,ourIndex,ourRange,sel_mouse):(setSelection(doc,new Selection([ourRange],ourIndex=0),sel_mouse),startSel=doc.sel);var lastPos=start;function extendTo(pos){if(0!=cmp(lastPos,pos))if(lastPos=pos,"rectangle"==behavior.unit){for(var ranges=[],tabSize=cm.options.tabSize,startCol=countColumn(getLine(doc,start.line).text,start.ch,tabSize),posCol=countColumn(getLine(doc,pos.line).text,pos.ch,tabSize),left=Math.min(startCol,posCol),right=Math.max(startCol,posCol),line=Math.min(start.line,pos.line),end=Math.min(cm.lastLine(),Math.max(start.line,pos.line));line<=end;line++){var text=getLine(doc,line).text,leftPos=findColumn(text,left,tabSize);left==right?ranges.push(new Range(Pos(line,leftPos),Pos(line,leftPos))):text.length>leftPos&&ranges.push(new Range(Pos(line,leftPos),Pos(line,findColumn(text,right,tabSize))))}ranges.length||ranges.push(new Range(start,start)),setSelection(doc,normalizeSelection(cm,startSel.ranges.slice(0,ourIndex).concat(ranges),ourIndex),{origin:"*mouse",scroll:!1}),cm.scrollIntoView(pos)}else{var head,oldRange=ourRange,range$$1=rangeForUnit(cm,pos,behavior.unit),anchor=oldRange.anchor;anchor=0<cmp(range$$1.anchor,anchor)?(head=range$$1.head,minPos(oldRange.from(),range$$1.anchor)):(head=range$$1.anchor,maxPos(oldRange.to(),range$$1.head));var ranges$1=startSel.ranges.slice(0);ranges$1[ourIndex]=function(cm,range$$1){var anchor=range$$1.anchor,head=range$$1.head,anchorLine=getLine(cm.doc,anchor.line);if(0==cmp(anchor,head)&&anchor.sticky==head.sticky)return range$$1;var order=getOrder(anchorLine);if(!order)return range$$1;var index=getBidiPartAt(order,anchor.ch,anchor.sticky),part=order[index];if(part.from!=anchor.ch&&part.to!=anchor.ch)return range$$1;var leftSide,boundary=index+(part.from==anchor.ch==(1!=part.level)?0:1);if(0==boundary||boundary==order.length)return range$$1;if(head.line!=anchor.line)leftSide=0<(head.line-anchor.line)*("ltr"==cm.doc.direction?1:-1);else{var headIndex=getBidiPartAt(order,head.ch,head.sticky),dir=headIndex-index||(head.ch-anchor.ch)*(1==part.level?-1:1);leftSide=headIndex==boundary-1||headIndex==boundary?dir<0:0<dir}var usePart=order[boundary+(leftSide?-1:0)],from=leftSide==(1==usePart.level),ch=from?usePart.from:usePart.to,sticky=from?"after":"before";return anchor.ch==ch&&anchor.sticky==sticky?range$$1:new Range(new Pos(anchor.line,ch,sticky),head)}(cm,new Range(clipPos(doc,anchor),head)),setSelection(doc,normalizeSelection(cm,ranges$1,ourIndex),sel_mouse)}}var editorSize=display.wrapper.getBoundingClientRect(),counter=0;function done(e){cm.state.selectingText=!1,counter=1/0,e&&(e_preventDefault(e),display.input.focus()),off(display.wrapper.ownerDocument,"mousemove",move),off(display.wrapper.ownerDocument,"mouseup",up),doc.history.lastSelOrigin=null}var move=operation(cm,function(e){0!==e.buttons&&e_button(e)?function extend(e){var curCount=++counter;var cur=posFromMouse(cm,e,!0,"rectangle"==behavior.unit);if(!cur)return;if(0!=cmp(cur,lastPos)){cm.curOp.focus=activeElt(),extendTo(cur);var visible=visibleLines(display,doc);(cur.line>=visible.to||cur.line<visible.from)&&setTimeout(operation(cm,function(){counter==curCount&&extend(e)}),150)}else{var outside=e.clientY<editorSize.top?-20:e.clientY>editorSize.bottom?20:0;outside&&setTimeout(operation(cm,function(){counter==curCount&&(display.scroller.scrollTop+=outside,extend(e))}),50)}}(e):done(e)}),up=operation(cm,done);cm.state.selectingText=up,on(display.wrapper.ownerDocument,"mousemove",move),on(display.wrapper.ownerDocument,"mouseup",up)}(cm,event,pos,behavior)}(cm,pos,repeat,e):e_target(e)==display.scroller&&e_preventDefault(e):2==button?(pos&&extendSelection(cm.doc,pos),setTimeout(function(){return display.input.focus()},20)):3==button&&(captureRightClick?cm.display.input.onContextMenu(e):delayBlurEvent(cm)))}}function rangeForUnit(cm,pos,unit){if("char"==unit)return new Range(pos,pos);if("word"==unit)return cm.findWordAt(pos);if("line"==unit)return new Range(Pos(pos.line,0),clipPos(cm.doc,Pos(pos.line+1,0)));var result=unit(cm,pos);return new Range(result.from,result.to)}function gutterEvent(cm,e,type,prevent){var mX,mY;if(e.touches)mX=e.touches[0].clientX,mY=e.touches[0].clientY;else try{mX=e.clientX,mY=e.clientY}catch(e){return!1}if(mX>=Math.floor(cm.display.gutters.getBoundingClientRect().right))return!1;prevent&&e_preventDefault(e);var display=cm.display,lineBox=display.lineDiv.getBoundingClientRect();if(mY>lineBox.bottom||!hasHandler(cm,type))return e_defaultPrevented(e);mY-=lineBox.top-display.viewOffset;for(var i=0;i<cm.display.gutterSpecs.length;++i){var g=display.gutters.childNodes[i];if(g&&g.getBoundingClientRect().right>=mX)return signal(cm,type,cm,lineAtHeight(cm.doc,mY),cm.display.gutterSpecs[i].className,e),e_defaultPrevented(e)}}function clickInGutter(cm,e){return gutterEvent(cm,e,"gutterClick",!0)}function onContextMenu(cm,e){eventInWidget(cm.display,e)||function(cm,e){return!!hasHandler(cm,"gutterContextMenu")&&gutterEvent(cm,e,"gutterContextMenu",!1)}(cm,e)||signalDOMEvent(cm,e,"contextmenu")||captureRightClick||cm.display.input.onContextMenu(e)}function themeChanged(cm){cm.display.wrapper.className=cm.display.wrapper.className.replace(/\s*cm-s-\S+/g,"")+cm.options.theme.replace(/(^|\s)\s*/g," cm-s-"),clearCaches(cm)}PastClick.prototype.compare=function(time,pos,button){return this.time+400>time&&0==cmp(pos,this.pos)&&button==this.button};var Init={toString:function(){return"CodeMirror.Init"}},defaults={},optionHandlers={};function dragDropChanged(cm,value,old){if(!value!=!(old&&old!=Init)){var funcs=cm.display.dragFunctions,toggle=value?on:off;toggle(cm.display.scroller,"dragstart",funcs.start),toggle(cm.display.scroller,"dragenter",funcs.enter),toggle(cm.display.scroller,"dragover",funcs.over),toggle(cm.display.scroller,"dragleave",funcs.leave),toggle(cm.display.scroller,"drop",funcs.drop)}}function wrappingChanged(cm){cm.options.lineWrapping?(addClass(cm.display.wrapper,"CodeMirror-wrap"),cm.display.sizer.style.minWidth="",cm.display.sizerWidth=null):(rmClass(cm.display.wrapper,"CodeMirror-wrap"),findMaxLine(cm)),estimateLineHeights(cm),regChange(cm),clearCaches(cm),setTimeout(function(){return updateScrollbars(cm)},100)}function CodeMirror(place,options){var this$1=this;if(!(this instanceof CodeMirror))return new CodeMirror(place,options);this.options=options=options?copyObj(options):{},copyObj(defaults,options,!1);var doc=options.value;"string"==typeof doc?doc=new Doc(doc,options.mode,null,options.lineSeparator,options.direction):options.mode&&(doc.modeOption=options.mode),this.doc=doc;var input=new CodeMirror.inputStyles[options.inputStyle](this),display=this.display=new Display(place,doc,input,options);for(var opt in themeChanged(display.wrapper.CodeMirror=this),options.lineWrapping&&(this.display.wrapper.className+=" CodeMirror-wrap"),initScrollbars(this),this.state={keyMaps:[],overlays:[],modeGen:0,overwrite:!1,delayingBlurEvent:!1,focused:!1,suppressEdits:!1,pasteIncoming:-1,cutIncoming:-1,selectingText:!1,draggingText:!1,highlight:new Delayed,keySeq:null,specialChars:null},options.autofocus&&!mobile&&display.input.focus(),ie&&ie_version<11&&setTimeout(function(){return this$1.display.input.reset(!0)},20),function(cm){var d=cm.display;on(d.scroller,"mousedown",operation(cm,onMouseDown)),on(d.scroller,"dblclick",ie&&ie_version<11?operation(cm,function(e){if(!signalDOMEvent(cm,e)){var pos=posFromMouse(cm,e);if(pos&&!clickInGutter(cm,e)&&!eventInWidget(cm.display,e)){e_preventDefault(e);var word=cm.findWordAt(pos);extendSelection(cm.doc,word.anchor,word.head)}}}):function(e){return signalDOMEvent(cm,e)||e_preventDefault(e)});on(d.scroller,"contextmenu",function(e){return onContextMenu(cm,e)});var touchFinished,prevTouch={end:0};function finishTouch(){d.activeTouch&&(touchFinished=setTimeout(function(){return d.activeTouch=null},1e3),(prevTouch=d.activeTouch).end=+new Date)}function farAway(touch,other){if(null==other.left)return!0;var dx=other.left-touch.left,dy=other.top-touch.top;return 400<dx*dx+dy*dy}on(d.scroller,"touchstart",function(e){if(!signalDOMEvent(cm,e)&&!function(e){if(1!=e.touches.length)return!1;var touch=e.touches[0];return touch.radiusX<=1&&touch.radiusY<=1}(e)&&!clickInGutter(cm,e)){d.input.ensurePolled(),clearTimeout(touchFinished);var now=+new Date;d.activeTouch={start:now,moved:!1,prev:now-prevTouch.end<=300?prevTouch:null},1==e.touches.length&&(d.activeTouch.left=e.touches[0].pageX,d.activeTouch.top=e.touches[0].pageY)}}),on(d.scroller,"touchmove",function(){d.activeTouch&&(d.activeTouch.moved=!0)}),on(d.scroller,"touchend",function(e){var touch=d.activeTouch;if(touch&&!eventInWidget(d,e)&&null!=touch.left&&!touch.moved&&new Date-touch.start<300){var range,pos=cm.coordsChar(d.activeTouch,"page");range=!touch.prev||farAway(touch,touch.prev)?new Range(pos,pos):!touch.prev.prev||farAway(touch,touch.prev.prev)?cm.findWordAt(pos):new Range(Pos(pos.line,0),clipPos(cm.doc,Pos(pos.line+1,0))),cm.setSelection(range.anchor,range.head),cm.focus(),e_preventDefault(e)}finishTouch()}),on(d.scroller,"touchcancel",finishTouch),on(d.scroller,"scroll",function(){d.scroller.clientHeight&&(updateScrollTop(cm,d.scroller.scrollTop),setScrollLeft(cm,d.scroller.scrollLeft,!0),signal(cm,"scroll",cm))}),on(d.scroller,"mousewheel",function(e){return onScrollWheel(cm,e)}),on(d.scroller,"DOMMouseScroll",function(e){return onScrollWheel(cm,e)}),on(d.wrapper,"scroll",function(){return d.wrapper.scrollTop=d.wrapper.scrollLeft=0}),d.dragFunctions={enter:function(e){signalDOMEvent(cm,e)||e_stop(e)},over:function(e){signalDOMEvent(cm,e)||(function(cm,e){var pos=posFromMouse(cm,e);if(pos){var frag=document.createDocumentFragment();drawSelectionCursor(cm,pos,frag),cm.display.dragCursor||(cm.display.dragCursor=elt("div",null,"CodeMirror-cursors CodeMirror-dragcursors"),cm.display.lineSpace.insertBefore(cm.display.dragCursor,cm.display.cursorDiv)),removeChildrenAndAdd(cm.display.dragCursor,frag)}}(cm,e),e_stop(e))},start:function(e){return function(cm,e){if(ie&&(!cm.state.draggingText||+new Date-lastDrop<100))e_stop(e);else if(!signalDOMEvent(cm,e)&&!eventInWidget(cm.display,e)&&(e.dataTransfer.setData("Text",cm.getSelection()),e.dataTransfer.effectAllowed="copyMove",e.dataTransfer.setDragImage&&!safari)){var img=elt("img",null,null,"position: fixed; left: 0; top: 0;");img.src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==",presto&&(img.width=img.height=1,cm.display.wrapper.appendChild(img),img._top=img.offsetTop),e.dataTransfer.setDragImage(img,0,0),presto&&img.parentNode.removeChild(img)}}(cm,e)},drop:operation(cm,onDrop),leave:function(e){signalDOMEvent(cm,e)||clearDragCursor(cm)}};var inp=d.input.getField();on(inp,"keyup",function(e){return onKeyUp.call(cm,e)}),on(inp,"keydown",operation(cm,onKeyDown)),on(inp,"keypress",operation(cm,onKeyPress)),on(inp,"focus",function(e){return onFocus(cm,e)}),on(inp,"blur",function(e){return onBlur(cm,e)})}(this),ensureGlobalHandlers(),startOperation(this),this.curOp.forceUpdate=!0,attachDoc(this,doc),options.autofocus&&!mobile||this.hasFocus()?setTimeout(bind(onFocus,this),20):onBlur(this),optionHandlers)optionHandlers.hasOwnProperty(opt)&&optionHandlers[opt](this$1,options[opt],Init);maybeUpdateLineNumberWidth(this),options.finishInit&&options.finishInit(this);for(var i=0;i<initHooks.length;++i)initHooks[i](this$1);endOperation(this),webkit&&options.lineWrapping&&"optimizelegibility"==getComputedStyle(display.lineDiv).textRendering&&(display.lineDiv.style.textRendering="auto")}CodeMirror.defaults=defaults,CodeMirror.optionHandlers=optionHandlers;var initHooks=[];function indentLine(cm,n,how,aggressive){var state,doc=cm.doc;null==how&&(how="add"),"smart"==how&&(doc.mode.indent?state=getContextBefore(cm,n).state:how="prev");var tabSize=cm.options.tabSize,line=getLine(doc,n),curSpace=countColumn(line.text,null,tabSize);line.stateAfter&&(line.stateAfter=null);var indentation,curSpaceString=line.text.match(/^\s*/)[0];if(aggressive||/\S/.test(line.text)){if("smart"==how&&((indentation=doc.mode.indent(state,line.text.slice(curSpaceString.length),line.text))==Pass||150<indentation)){if(!aggressive)return;how="prev"}}else indentation=0,how="not";"prev"==how?indentation=n>doc.first?countColumn(getLine(doc,n-1).text,null,tabSize):0:"add"==how?indentation=curSpace+cm.options.indentUnit:"subtract"==how?indentation=curSpace-cm.options.indentUnit:"number"==typeof how&&(indentation=curSpace+how),indentation=Math.max(0,indentation);var indentString="",pos=0;if(cm.options.indentWithTabs)for(var i=Math.floor(indentation/tabSize);i;--i)pos+=tabSize,indentString+="\t";if(pos<indentation&&(indentString+=spaceStr(indentation-pos)),indentString!=curSpaceString)return replaceRange(doc,indentString,Pos(n,0),Pos(n,curSpaceString.length),"+input"),!(line.stateAfter=null);for(var i$1=0;i$1<doc.sel.ranges.length;i$1++){var range=doc.sel.ranges[i$1];if(range.head.line==n&&range.head.ch<curSpaceString.length){var pos$1=Pos(n,curSpaceString.length);replaceOneSelection(doc,i$1,new Range(pos$1,pos$1));break}}}CodeMirror.defineInitHook=function(f){return initHooks.push(f)};var lastCopied=null;function setLastCopied(newLastCopied){lastCopied=newLastCopied}function applyTextInput(cm,inserted,deleted,sel,origin){var doc=cm.doc;cm.display.shift=!1,sel||(sel=doc.sel);var recent=+new Date-200,paste="paste"==origin||cm.state.pasteIncoming>recent,textLines=splitLinesAuto(inserted),multiPaste=null;if(paste&&1<sel.ranges.length)if(lastCopied&&lastCopied.text.join("\n")==inserted){if(sel.ranges.length%lastCopied.text.length==0){multiPaste=[];for(var i=0;i<lastCopied.text.length;i++)multiPaste.push(doc.splitLines(lastCopied.text[i]))}}else textLines.length==sel.ranges.length&&cm.options.pasteLinesPerSelection&&(multiPaste=map(textLines,function(l){return[l]}));for(var updateInput=cm.curOp.updateInput,i$1=sel.ranges.length-1;0<=i$1;i$1--){var range$$1=sel.ranges[i$1],from=range$$1.from(),to=range$$1.to();range$$1.empty()&&(deleted&&0<deleted?from=Pos(from.line,from.ch-deleted):cm.state.overwrite&&!paste?to=Pos(to.line,Math.min(getLine(doc,to.line).text.length,to.ch+lst(textLines).length)):paste&&lastCopied&&lastCopied.lineWise&&lastCopied.text.join("\n")==inserted&&(from=to=Pos(from.line,0)));var changeEvent={from:from,to:to,text:multiPaste?multiPaste[i$1%multiPaste.length]:textLines,origin:origin||(paste?"paste":cm.state.cutIncoming>recent?"cut":"+input")};makeChange(cm.doc,changeEvent),signalLater(cm,"inputRead",cm,changeEvent)}inserted&&!paste&&triggerElectric(cm,inserted),ensureCursorVisible(cm),cm.curOp.updateInput<2&&(cm.curOp.updateInput=updateInput),cm.curOp.typing=!0,cm.state.pasteIncoming=cm.state.cutIncoming=-1}function handlePaste(e,cm){var pasted=e.clipboardData&&e.clipboardData.getData("Text");if(pasted)return e.preventDefault(),cm.isReadOnly()||cm.options.disableInput||runInOp(cm,function(){return applyTextInput(cm,pasted,0,null,"paste")}),!0}function triggerElectric(cm,inserted){if(cm.options.electricChars&&cm.options.smartIndent)for(var sel=cm.doc.sel,i=sel.ranges.length-1;0<=i;i--){var range$$1=sel.ranges[i];if(!(100<range$$1.head.ch||i&&sel.ranges[i-1].head.line==range$$1.head.line)){var mode=cm.getModeAt(range$$1.head),indented=!1;if(mode.electricChars){for(var j=0;j<mode.electricChars.length;j++)if(-1<inserted.indexOf(mode.electricChars.charAt(j))){indented=indentLine(cm,range$$1.head.line,"smart");break}}else mode.electricInput&&mode.electricInput.test(getLine(cm.doc,range$$1.head.line).text.slice(0,range$$1.head.ch))&&(indented=indentLine(cm,range$$1.head.line,"smart"));indented&&signalLater(cm,"electricInput",cm,range$$1.head.line)}}}function copyableRanges(cm){for(var text=[],ranges=[],i=0;i<cm.doc.sel.ranges.length;i++){var line=cm.doc.sel.ranges[i].head.line,lineRange={anchor:Pos(line,0),head:Pos(line+1,0)};ranges.push(lineRange),text.push(cm.getRange(lineRange.anchor,lineRange.head))}return{text:text,ranges:ranges}}function disableBrowserMagic(field,spellcheck,autocorrect,autocapitalize){field.setAttribute("autocorrect",autocorrect?"":"off"),field.setAttribute("autocapitalize",autocapitalize?"":"off"),field.setAttribute("spellcheck",!!spellcheck)}function hiddenTextarea(){var te=elt("textarea",null,null,"position: absolute; bottom: -1em; padding: 0; width: 1px; height: 1em; outline: none"),div=elt("div",[te],null,"overflow: hidden; position: relative; width: 3px; height: 0px;");return webkit?te.style.width="1000px":te.setAttribute("wrap","off"),ios&&(te.style.border="1px solid black"),disableBrowserMagic(te),div}function findPosH(doc,pos,dir,unit,visually){var oldPos=pos,origDir=dir,lineObj=getLine(doc,pos.line);function moveOnce(boundToLine){var next;if(null==(next=visually?function(cm,line,start,dir){var bidi=getOrder(line,cm.doc.direction);if(!bidi)return moveLogically(line,start,dir);start.ch>=line.text.length?(start.ch=line.text.length,start.sticky="before"):start.ch<=0&&(start.ch=0,start.sticky="after");var partPos=getBidiPartAt(bidi,start.ch,start.sticky),part=bidi[partPos];if("ltr"==cm.doc.direction&&part.level%2==0&&(0<dir?part.to>start.ch:part.from<start.ch))return moveLogically(line,start,dir);function mv(pos,dir){return moveCharLogically(line,pos instanceof Pos?pos.ch:pos,dir)}function getWrappedLineExtent(ch){return cm.options.lineWrapping?(prep=prep||prepareMeasureForLine(cm,line),wrappedLineExtentChar(cm,line,prep,ch)):{begin:0,end:line.text.length}}var prep,wrappedLineExtent=getWrappedLineExtent("before"==start.sticky?mv(start,-1):start.ch);if("rtl"==cm.doc.direction||1==part.level){var moveInStorageOrder=1==part.level==dir<0,ch=mv(start,moveInStorageOrder?1:-1);if(null!=ch&&(moveInStorageOrder?ch<=part.to&&ch<=wrappedLineExtent.end:ch>=part.from&&ch>=wrappedLineExtent.begin)){var sticky=moveInStorageOrder?"before":"after";return new Pos(start.line,ch,sticky)}}function searchInVisualLine(partPos,dir,wrappedLineExtent){for(var getRes=function(ch,moveInStorageOrder){return moveInStorageOrder?new Pos(start.line,mv(ch,1),"before"):new Pos(start.line,ch,"after")};0<=partPos&&partPos<bidi.length;partPos+=dir){var part=bidi[partPos],moveInStorageOrder=0<dir==(1!=part.level),ch=moveInStorageOrder?wrappedLineExtent.begin:mv(wrappedLineExtent.end,-1);if(part.from<=ch&&ch<part.to)return getRes(ch,moveInStorageOrder);if(ch=moveInStorageOrder?part.from:mv(part.to,-1),wrappedLineExtent.begin<=ch&&ch<wrappedLineExtent.end)return getRes(ch,moveInStorageOrder)}}var res=searchInVisualLine(partPos+dir,dir,wrappedLineExtent);if(res)return res;var nextCh=0<dir?wrappedLineExtent.end:mv(wrappedLineExtent.begin,-1);return null==nextCh||0<dir&&nextCh==line.text.length||!(res=searchInVisualLine(0<dir?0:bidi.length-1,dir,getWrappedLineExtent(nextCh)))?null:res}(doc.cm,lineObj,pos,dir):moveLogically(lineObj,pos,dir))){if(boundToLine||!function(){var l=pos.line+dir;return!(l<doc.first||l>=doc.first+doc.size)&&(pos=new Pos(l,pos.ch,pos.sticky),lineObj=getLine(doc,l))}())return!1;pos=endOfLine(visually,doc.cm,lineObj,pos.line,dir)}else pos=next;return!0}if("char"==unit)moveOnce();else if("column"==unit)moveOnce(!0);else if("word"==unit||"group"==unit)for(var sawType=null,group="group"==unit,helper=doc.cm&&doc.cm.getHelper(pos,"wordChars"),first=!0;!(dir<0)||moveOnce(!first);first=!1){var cur=lineObj.text.charAt(pos.ch)||"\n",type=isWordChar(cur,helper)?"w":group&&"\n"==cur?"n":!group||/\s/.test(cur)?null:"p";if(!group||first||type||(type="s"),sawType&&sawType!=type){dir<0&&(dir=1,moveOnce(),pos.sticky="after");break}if(type&&(sawType=type),0<dir&&!moveOnce(!first))break}var result=skipAtomic(doc,pos,oldPos,origDir,!0);return equalCursorPos(oldPos,result)&&(result.hitSide=!0),result}function findPosV(cm,pos,dir,unit){var y,target,doc=cm.doc,x=pos.left;if("page"==unit){var pageSize=Math.min(cm.display.wrapper.clientHeight,window.innerHeight||document.documentElement.clientHeight),moveAmount=Math.max(pageSize-.5*textHeight(cm.display),3);y=(0<dir?pos.bottom:pos.top)+dir*moveAmount}else"line"==unit&&(y=0<dir?pos.bottom+3:pos.top-3);for(;(target=coordsChar(cm,x,y)).outside;){if(dir<0?y<=0:y>=doc.height){target.hitSide=!0;break}y+=5*dir}return target}function ContentEditableInput(cm){this.cm=cm,this.lastAnchorNode=this.lastAnchorOffset=this.lastFocusNode=this.lastFocusOffset=null,this.polling=new Delayed,this.composing=null,this.gracePeriod=!1,this.readDOMTimeout=null}function posToDOM(cm,pos){var view=findViewForLine(cm,pos.line);if(!view||view.hidden)return null;var line=getLine(cm.doc,pos.line),info=mapFromLineView(view,line,pos.line),order=getOrder(line,cm.doc.direction),side="left";order&&(side=getBidiPartAt(order,pos.ch)%2?"right":"left");var result=nodeAndOffsetInLineMap(info.map,pos.ch,side);return result.offset="right"==result.collapse?result.end:result.start,result}function badPos(pos,bad){return bad&&(pos.bad=!0),pos}function domToPos(cm,node,offset){var lineNode;if(node==cm.display.lineDiv){if(!(lineNode=cm.display.lineDiv.childNodes[offset]))return badPos(cm.clipPos(Pos(cm.display.viewTo-1)),!0);node=null,offset=0}else for(lineNode=node;;lineNode=lineNode.parentNode){if(!lineNode||lineNode==cm.display.lineDiv)return null;if(lineNode.parentNode&&lineNode.parentNode==cm.display.lineDiv)break}for(var i=0;i<cm.display.view.length;i++){var lineView=cm.display.view[i];if(lineView.node==lineNode)return locateNodeInLineView(lineView,node,offset)}}function locateNodeInLineView(lineView,node,offset){var wrapper=lineView.text.firstChild,bad=!1;if(!node||!contains(wrapper,node))return badPos(Pos(lineNo(lineView.line),0),!0);if(node==wrapper&&(bad=!0,node=wrapper.childNodes[offset],offset=0,!node)){var line=lineView.rest?lst(lineView.rest):lineView.line;return badPos(Pos(lineNo(line),line.text.length),bad)}var textNode=3==node.nodeType?node:null,topNode=node;for(textNode||1!=node.childNodes.length||3!=node.firstChild.nodeType||(textNode=node.firstChild,offset&&(offset=textNode.nodeValue.length));topNode.parentNode!=wrapper;)topNode=topNode.parentNode;var measure=lineView.measure,maps=measure.maps;function find(textNode,topNode,offset){for(var i=-1;i<(maps?maps.length:0);i++)for(var map$$1=i<0?measure.map:maps[i],j=0;j<map$$1.length;j+=3){var curNode=map$$1[j+2];if(curNode==textNode||curNode==topNode){var line=lineNo(i<0?lineView.line:lineView.rest[i]),ch=map$$1[j]+offset;return(offset<0||curNode!=textNode)&&(ch=map$$1[j+(offset?1:0)]),Pos(line,ch)}}}var found=find(textNode,topNode,offset);if(found)return badPos(found,bad);for(var after=topNode.nextSibling,dist=textNode?textNode.nodeValue.length-offset:0;after;after=after.nextSibling){if(found=find(after,after.firstChild,0))return badPos(Pos(found.line,found.ch-dist),bad);dist+=after.textContent.length}for(var before=topNode.previousSibling,dist$1=offset;before;before=before.previousSibling){if(found=find(before,before.firstChild,-1))return badPos(Pos(found.line,found.ch+dist$1),bad);dist$1+=before.textContent.length}}ContentEditableInput.prototype.init=function(display){var this$1=this,input=this,cm=input.cm,div=input.div=display.lineDiv;function onCopyCut(e){if(!signalDOMEvent(cm,e)){if(cm.somethingSelected())setLastCopied({lineWise:!1,text:cm.getSelections()}),"cut"==e.type&&cm.replaceSelection("",null,"cut");else{if(!cm.options.lineWiseCopyCut)return;var ranges=copyableRanges(cm);setLastCopied({lineWise:!0,text:ranges.text}),"cut"==e.type&&cm.operation(function(){cm.setSelections(ranges.ranges,0,sel_dontScroll),cm.replaceSelection("",null,"cut")})}if(e.clipboardData){e.clipboardData.clearData();var content=lastCopied.text.join("\n");if(e.clipboardData.setData("Text",content),e.clipboardData.getData("Text")==content)return void e.preventDefault()}var kludge=hiddenTextarea(),te=kludge.firstChild;cm.display.lineSpace.insertBefore(kludge,cm.display.lineSpace.firstChild),te.value=lastCopied.text.join("\n");var hadFocus=document.activeElement;selectInput(te),setTimeout(function(){cm.display.lineSpace.removeChild(kludge),hadFocus.focus(),hadFocus==div&&input.showPrimarySelection()},50)}}disableBrowserMagic(div,cm.options.spellcheck,cm.options.autocorrect,cm.options.autocapitalize),on(div,"paste",function(e){signalDOMEvent(cm,e)||handlePaste(e,cm)||ie_version<=11&&setTimeout(operation(cm,function(){return this$1.updateFromDOM()}),20)}),on(div,"compositionstart",function(e){this$1.composing={data:e.data,done:!1}}),on(div,"compositionupdate",function(e){this$1.composing||(this$1.composing={data:e.data,done:!1})}),on(div,"compositionend",function(e){this$1.composing&&(e.data!=this$1.composing.data&&this$1.readFromDOMSoon(),this$1.composing.done=!0)}),on(div,"touchstart",function(){return input.forceCompositionEnd()}),on(div,"input",function(){this$1.composing||this$1.readFromDOMSoon()}),on(div,"copy",onCopyCut),on(div,"cut",onCopyCut)},ContentEditableInput.prototype.prepareSelection=function(){var result=prepareSelection(this.cm,!1);return result.focus=this.cm.state.focused,result},ContentEditableInput.prototype.showSelection=function(info,takeFocus){info&&this.cm.display.view.length&&((info.focus||takeFocus)&&this.showPrimarySelection(),this.showMultipleSelections(info))},ContentEditableInput.prototype.getSelection=function(){return this.cm.display.wrapper.ownerDocument.getSelection()},ContentEditableInput.prototype.showPrimarySelection=function(){var sel=this.getSelection(),cm=this.cm,prim=cm.doc.sel.primary(),from=prim.from(),to=prim.to();if(cm.display.viewTo==cm.display.viewFrom||from.line>=cm.display.viewTo||to.line<cm.display.viewFrom)sel.removeAllRanges();else{var curAnchor=domToPos(cm,sel.anchorNode,sel.anchorOffset),curFocus=domToPos(cm,sel.focusNode,sel.focusOffset);if(!curAnchor||curAnchor.bad||!curFocus||curFocus.bad||0!=cmp(minPos(curAnchor,curFocus),from)||0!=cmp(maxPos(curAnchor,curFocus),to)){var view=cm.display.view,start=from.line>=cm.display.viewFrom&&posToDOM(cm,from)||{node:view[0].measure.map[2],offset:0},end=to.line<cm.display.viewTo&&posToDOM(cm,to);if(!end){var measure=view[view.length-1].measure,map$$1=measure.maps?measure.maps[measure.maps.length-1]:measure.map;end={node:map$$1[map$$1.length-1],offset:map$$1[map$$1.length-2]-map$$1[map$$1.length-3]}}if(start&&end){var rng,old=sel.rangeCount&&sel.getRangeAt(0);try{rng=range(start.node,start.offset,end.offset,end.node)}catch(e){}rng&&(!gecko&&cm.state.focused?(sel.collapse(start.node,start.offset),rng.collapsed||(sel.removeAllRanges(),sel.addRange(rng))):(sel.removeAllRanges(),sel.addRange(rng)),old&&null==sel.anchorNode?sel.addRange(old):gecko&&this.startGracePeriod()),this.rememberSelection()}else sel.removeAllRanges()}}},ContentEditableInput.prototype.startGracePeriod=function(){var this$1=this;clearTimeout(this.gracePeriod),this.gracePeriod=setTimeout(function(){this$1.gracePeriod=!1,this$1.selectionChanged()&&this$1.cm.operation(function(){return this$1.cm.curOp.selectionChanged=!0})},20)},ContentEditableInput.prototype.showMultipleSelections=function(info){removeChildrenAndAdd(this.cm.display.cursorDiv,info.cursors),removeChildrenAndAdd(this.cm.display.selectionDiv,info.selection)},ContentEditableInput.prototype.rememberSelection=function(){var sel=this.getSelection();this.lastAnchorNode=sel.anchorNode,this.lastAnchorOffset=sel.anchorOffset,this.lastFocusNode=sel.focusNode,this.lastFocusOffset=sel.focusOffset},ContentEditableInput.prototype.selectionInEditor=function(){var sel=this.getSelection();if(!sel.rangeCount)return!1;var node=sel.getRangeAt(0).commonAncestorContainer;return contains(this.div,node)},ContentEditableInput.prototype.focus=function(){"nocursor"!=this.cm.options.readOnly&&(this.selectionInEditor()||this.showSelection(this.prepareSelection(),!0),this.div.focus())},ContentEditableInput.prototype.blur=function(){this.div.blur()},ContentEditableInput.prototype.getField=function(){return this.div},ContentEditableInput.prototype.supportsTouch=function(){return!0},ContentEditableInput.prototype.receivedFocus=function(){var input=this;this.selectionInEditor()?this.pollSelection():runInOp(this.cm,function(){return input.cm.curOp.selectionChanged=!0}),this.polling.set(this.cm.options.pollInterval,function poll(){input.cm.state.focused&&(input.pollSelection(),input.polling.set(input.cm.options.pollInterval,poll))})},ContentEditableInput.prototype.selectionChanged=function(){var sel=this.getSelection();return sel.anchorNode!=this.lastAnchorNode||sel.anchorOffset!=this.lastAnchorOffset||sel.focusNode!=this.lastFocusNode||sel.focusOffset!=this.lastFocusOffset},ContentEditableInput.prototype.pollSelection=function(){if(null==this.readDOMTimeout&&!this.gracePeriod&&this.selectionChanged()){var sel=this.getSelection(),cm=this.cm;if(android&&chrome&&this.cm.display.gutterSpecs.length&&function(node){for(var scan=node;scan;scan=scan.parentNode)if(/CodeMirror-gutter-wrapper/.test(scan.className))return!0;return!1}(sel.anchorNode))return this.cm.triggerOnKeyDown({type:"keydown",keyCode:8,preventDefault:Math.abs}),this.blur(),void this.focus();if(!this.composing){this.rememberSelection();var anchor=domToPos(cm,sel.anchorNode,sel.anchorOffset),head=domToPos(cm,sel.focusNode,sel.focusOffset);anchor&&head&&runInOp(cm,function(){setSelection(cm.doc,simpleSelection(anchor,head),sel_dontScroll),(anchor.bad||head.bad)&&(cm.curOp.selectionChanged=!0)})}}},ContentEditableInput.prototype.pollContent=function(){null!=this.readDOMTimeout&&(clearTimeout(this.readDOMTimeout),this.readDOMTimeout=null);var fromIndex,fromLine,fromNode,cm=this.cm,display=cm.display,sel=cm.doc.sel.primary(),from=sel.from(),to=sel.to();if(0==from.ch&&from.line>cm.firstLine()&&(from=Pos(from.line-1,getLine(cm.doc,from.line-1).length)),to.ch==getLine(cm.doc,to.line).text.length&&to.line<cm.lastLine()&&(to=Pos(to.line+1,0)),from.line<display.viewFrom||to.line>display.viewTo-1)return!1;fromNode=from.line==display.viewFrom||0==(fromIndex=findViewIndex(cm,from.line))?(fromLine=lineNo(display.view[0].line),display.view[0].node):(fromLine=lineNo(display.view[fromIndex].line),display.view[fromIndex-1].node.nextSibling);var toLine,toNode,toIndex=findViewIndex(cm,to.line);if(toNode=toIndex==display.view.length-1?(toLine=display.viewTo-1,display.lineDiv.lastChild):(toLine=lineNo(display.view[toIndex+1].line)-1,display.view[toIndex+1].node.previousSibling),!fromNode)return!1;for(var newText=cm.doc.splitLines(function(cm,from,to,fromLine,toLine){var text="",closing=!1,lineSep=cm.doc.lineSeparator(),extraLinebreak=!1;function close(){closing&&(text+=lineSep,extraLinebreak&&(text+=lineSep),closing=extraLinebreak=!1)}function addText(str){str&&(close(),text+=str)}function walk(node){if(1==node.nodeType){var cmText=node.getAttribute("cm-text");if(cmText)return void addText(cmText);var range$$1,markerID=node.getAttribute("cm-marker");if(markerID){var found=cm.findMarks(Pos(fromLine,0),Pos(toLine+1,0),function(id){return function(marker){return marker.id==id}}(+markerID));return void(found.length&&(range$$1=found[0].find(0))&&addText(getBetween(cm.doc,range$$1.from,range$$1.to).join(lineSep)))}if("false"==node.getAttribute("contenteditable"))return;var isBlock=/^(pre|div|p|li|table|br)$/i.test(node.nodeName);if(!/^br$/i.test(node.nodeName)&&0==node.textContent.length)return;isBlock&&close();for(var i=0;i<node.childNodes.length;i++)walk(node.childNodes[i]);/^(pre|p)$/i.test(node.nodeName)&&(extraLinebreak=!0),isBlock&&(closing=!0)}else 3==node.nodeType&&addText(node.nodeValue.replace(/\u200b/g,"").replace(/\u00a0/g," "))}for(;walk(from),from!=to;)from=from.nextSibling,extraLinebreak=!1;return text}(cm,fromNode,toNode,fromLine,toLine)),oldText=getBetween(cm.doc,Pos(fromLine,0),Pos(toLine,getLine(cm.doc,toLine).text.length));1<newText.length&&1<oldText.length;)if(lst(newText)==lst(oldText))newText.pop(),oldText.pop(),toLine--;else{if(newText[0]!=oldText[0])break;newText.shift(),oldText.shift(),fromLine++}for(var cutFront=0,cutEnd=0,newTop=newText[0],oldTop=oldText[0],maxCutFront=Math.min(newTop.length,oldTop.length);cutFront<maxCutFront&&newTop.charCodeAt(cutFront)==oldTop.charCodeAt(cutFront);)++cutFront;for(var newBot=lst(newText),oldBot=lst(oldText),maxCutEnd=Math.min(newBot.length-(1==newText.length?cutFront:0),oldBot.length-(1==oldText.length?cutFront:0));cutEnd<maxCutEnd&&newBot.charCodeAt(newBot.length-cutEnd-1)==oldBot.charCodeAt(oldBot.length-cutEnd-1);)++cutEnd;if(1==newText.length&&1==oldText.length&&fromLine==from.line)for(;cutFront&&cutFront>from.ch&&newBot.charCodeAt(newBot.length-cutEnd-1)==oldBot.charCodeAt(oldBot.length-cutEnd-1);)cutFront--,cutEnd++;newText[newText.length-1]=newBot.slice(0,newBot.length-cutEnd).replace(/^\u200b+/,""),newText[0]=newText[0].slice(cutFront).replace(/\u200b+$/,"");var chFrom=Pos(fromLine,cutFront),chTo=Pos(toLine,oldText.length?lst(oldText).length-cutEnd:0);return 1<newText.length||newText[0]||cmp(chFrom,chTo)?(replaceRange(cm.doc,newText,chFrom,chTo,"+input"),!0):void 0},ContentEditableInput.prototype.ensurePolled=function(){this.forceCompositionEnd()},ContentEditableInput.prototype.reset=function(){this.forceCompositionEnd()},ContentEditableInput.prototype.forceCompositionEnd=function(){this.composing&&(clearTimeout(this.readDOMTimeout),this.composing=null,this.updateFromDOM(),this.div.blur(),this.div.focus())},ContentEditableInput.prototype.readFromDOMSoon=function(){var this$1=this;null==this.readDOMTimeout&&(this.readDOMTimeout=setTimeout(function(){if(this$1.readDOMTimeout=null,this$1.composing){if(!this$1.composing.done)return;this$1.composing=null}this$1.updateFromDOM()},80))},ContentEditableInput.prototype.updateFromDOM=function(){var this$1=this;!this.cm.isReadOnly()&&this.pollContent()||runInOp(this.cm,function(){return regChange(this$1.cm)})},ContentEditableInput.prototype.setUneditable=function(node){node.contentEditable="false"},ContentEditableInput.prototype.onKeyPress=function(e){0==e.charCode||this.composing||(e.preventDefault(),this.cm.isReadOnly()||operation(this.cm,applyTextInput)(this.cm,String.fromCharCode(null==e.charCode?e.keyCode:e.charCode),0))},ContentEditableInput.prototype.readOnlyChanged=function(val){this.div.contentEditable=String("nocursor"!=val)},ContentEditableInput.prototype.onContextMenu=function(){},ContentEditableInput.prototype.resetPosition=function(){},ContentEditableInput.prototype.needsContentAttribute=!0;function TextareaInput(cm){this.cm=cm,this.prevInput="",this.pollingFast=!1,this.polling=new Delayed,this.hasSelection=!1,this.composing=null}TextareaInput.prototype.init=function(display){var this$1=this,input=this,cm=this.cm;this.createField(display);var te=this.textarea;function prepareCopyCut(e){if(!signalDOMEvent(cm,e)){if(cm.somethingSelected())setLastCopied({lineWise:!1,text:cm.getSelections()});else{if(!cm.options.lineWiseCopyCut)return;var ranges=copyableRanges(cm);setLastCopied({lineWise:!0,text:ranges.text}),"cut"==e.type?cm.setSelections(ranges.ranges,null,sel_dontScroll):(input.prevInput="",te.value=ranges.text.join("\n"),selectInput(te))}"cut"==e.type&&(cm.state.cutIncoming=+new Date)}}display.wrapper.insertBefore(this.wrapper,display.wrapper.firstChild),ios&&(te.style.width="0px"),on(te,"input",function(){ie&&9<=ie_version&&this$1.hasSelection&&(this$1.hasSelection=null),input.poll()}),on(te,"paste",function(e){signalDOMEvent(cm,e)||handlePaste(e,cm)||(cm.state.pasteIncoming=+new Date,input.fastPoll())}),on(te,"cut",prepareCopyCut),on(te,"copy",prepareCopyCut),on(display.scroller,"paste",function(e){if(!eventInWidget(display,e)&&!signalDOMEvent(cm,e)){if(!te.dispatchEvent)return cm.state.pasteIncoming=+new Date,void input.focus();var event=new Event("paste");event.clipboardData=e.clipboardData,te.dispatchEvent(event)}}),on(display.lineSpace,"selectstart",function(e){eventInWidget(display,e)||e_preventDefault(e)}),on(te,"compositionstart",function(){var start=cm.getCursor("from");input.composing&&input.composing.range.clear(),input.composing={start:start,range:cm.markText(start,cm.getCursor("to"),{className:"CodeMirror-composing"})}}),on(te,"compositionend",function(){input.composing&&(input.poll(),input.composing.range.clear(),input.composing=null)})},TextareaInput.prototype.createField=function(_display){this.wrapper=hiddenTextarea(),this.textarea=this.wrapper.firstChild},TextareaInput.prototype.prepareSelection=function(){var cm=this.cm,display=cm.display,doc=cm.doc,result=prepareSelection(cm);if(cm.options.moveInputWithCursor){var headPos=cursorCoords(cm,doc.sel.primary().head,"div"),wrapOff=display.wrapper.getBoundingClientRect(),lineOff=display.lineDiv.getBoundingClientRect();result.teTop=Math.max(0,Math.min(display.wrapper.clientHeight-10,headPos.top+lineOff.top-wrapOff.top)),result.teLeft=Math.max(0,Math.min(display.wrapper.clientWidth-10,headPos.left+lineOff.left-wrapOff.left))}return result},TextareaInput.prototype.showSelection=function(drawn){var display=this.cm.display;removeChildrenAndAdd(display.cursorDiv,drawn.cursors),removeChildrenAndAdd(display.selectionDiv,drawn.selection),null!=drawn.teTop&&(this.wrapper.style.top=drawn.teTop+"px",this.wrapper.style.left=drawn.teLeft+"px")},TextareaInput.prototype.reset=function(typing){if(!this.contextMenuPending&&!this.composing){var cm=this.cm;if(cm.somethingSelected()){this.prevInput="";var content=cm.getSelection();this.textarea.value=content,cm.state.focused&&selectInput(this.textarea),ie&&9<=ie_version&&(this.hasSelection=content)}else typing||(this.prevInput=this.textarea.value="",ie&&9<=ie_version&&(this.hasSelection=null))}},TextareaInput.prototype.getField=function(){return this.textarea},TextareaInput.prototype.supportsTouch=function(){return!1},TextareaInput.prototype.focus=function(){if("nocursor"!=this.cm.options.readOnly&&(!mobile||activeElt()!=this.textarea))try{this.textarea.focus()}catch(e){}},TextareaInput.prototype.blur=function(){this.textarea.blur()},TextareaInput.prototype.resetPosition=function(){this.wrapper.style.top=this.wrapper.style.left=0},TextareaInput.prototype.receivedFocus=function(){this.slowPoll()},TextareaInput.prototype.slowPoll=function(){var this$1=this;this.pollingFast||this.polling.set(this.cm.options.pollInterval,function(){this$1.poll(),this$1.cm.state.focused&&this$1.slowPoll()})},TextareaInput.prototype.fastPoll=function(){var missed=!1,input=this;input.pollingFast=!0,input.polling.set(20,function p(){input.poll()||missed?(input.pollingFast=!1,input.slowPoll()):(missed=!0,input.polling.set(60,p))})},TextareaInput.prototype.poll=function(){var this$1=this,cm=this.cm,input=this.textarea,prevInput=this.prevInput;if(this.contextMenuPending||!cm.state.focused||hasSelection(input)&&!prevInput&&!this.composing||cm.isReadOnly()||cm.options.disableInput||cm.state.keySeq)return!1;var text=input.value;if(text==prevInput&&!cm.somethingSelected())return!1;if(ie&&9<=ie_version&&this.hasSelection===text||mac&&/[\uf700-\uf7ff]/.test(text))return cm.display.input.reset(),!1;if(cm.doc.sel==cm.display.selForContextMenu){var first=text.charCodeAt(0);if(8203!=first||prevInput||(prevInput=""),8666==first)return this.reset(),this.cm.execCommand("undo")}for(var same=0,l=Math.min(prevInput.length,text.length);same<l&&prevInput.charCodeAt(same)==text.charCodeAt(same);)++same;return runInOp(cm,function(){applyTextInput(cm,text.slice(same),prevInput.length-same,null,this$1.composing?"*compose":null),1e3<text.length||-1<text.indexOf("\n")?input.value=this$1.prevInput="":this$1.prevInput=text,this$1.composing&&(this$1.composing.range.clear(),this$1.composing.range=cm.markText(this$1.composing.start,cm.getCursor("to"),{className:"CodeMirror-composing"}))}),!0},TextareaInput.prototype.ensurePolled=function(){this.pollingFast&&this.poll()&&(this.pollingFast=!1)},TextareaInput.prototype.onKeyPress=function(){ie&&9<=ie_version&&(this.hasSelection=null),this.fastPoll()},TextareaInput.prototype.onContextMenu=function(e){var input=this,cm=input.cm,display=cm.display,te=input.textarea;input.contextMenuPending&&input.contextMenuPending();var pos=posFromMouse(cm,e),scrollPos=display.scroller.scrollTop;if(pos&&!presto){cm.options.resetSelectionOnContextMenu&&-1==cm.doc.sel.contains(pos)&&operation(cm,setSelection)(cm.doc,simpleSelection(pos),sel_dontScroll);var oldScrollY,oldCSS=te.style.cssText,oldWrapperCSS=input.wrapper.style.cssText,wrapperBox=input.wrapper.offsetParent.getBoundingClientRect();if(input.wrapper.style.cssText="position: static",te.style.cssText="position: absolute; width: 30px; height: 30px;\n top: "+(e.clientY-wrapperBox.top-5)+"px; left: "+(e.clientX-wrapperBox.left-5)+"px;\n z-index: 1000; background: "+(ie?"rgba(255, 255, 255, .05)":"transparent")+";\n outline: none; border-width: 0; outline: none; overflow: hidden; opacity: .05; filter: alpha(opacity=5);",webkit&&(oldScrollY=window.scrollY),display.input.focus(),webkit&&window.scrollTo(null,oldScrollY),display.input.reset(),cm.somethingSelected()||(te.value=input.prevInput=" "),input.contextMenuPending=rehide,display.selForContextMenu=cm.doc.sel,clearTimeout(display.detectingSelectAll),ie&&9<=ie_version&&prepareSelectAllHack(),captureRightClick){e_stop(e);var mouseup=function(){off(window,"mouseup",mouseup),setTimeout(rehide,20)};on(window,"mouseup",mouseup)}else setTimeout(rehide,50)}function prepareSelectAllHack(){if(null!=te.selectionStart){var selected=cm.somethingSelected(),extval=""+(selected?te.value:"");te.value="⇚",te.value=extval,input.prevInput=selected?"":"",te.selectionStart=1,te.selectionEnd=extval.length,display.selForContextMenu=cm.doc.sel}}function rehide(){if(input.contextMenuPending==rehide&&(input.contextMenuPending=!1,input.wrapper.style.cssText=oldWrapperCSS,te.style.cssText=oldCSS,ie&&ie_version<9&&display.scrollbars.setScrollTop(display.scroller.scrollTop=scrollPos),null!=te.selectionStart)){(!ie||ie&&ie_version<9)&&prepareSelectAllHack();var i=0,poll=function(){display.selForContextMenu==cm.doc.sel&&0==te.selectionStart&&0<te.selectionEnd&&""==input.prevInput?operation(cm,selectAll)(cm):i++<10?display.detectingSelectAll=setTimeout(poll,500):(display.selForContextMenu=null,display.input.reset())};display.detectingSelectAll=setTimeout(poll,200)}}},TextareaInput.prototype.readOnlyChanged=function(val){val||this.reset(),this.textarea.disabled="nocursor"==val},TextareaInput.prototype.setUneditable=function(){},TextareaInput.prototype.needsContentAttribute=!1,function(CodeMirror){var optionHandlers=CodeMirror.optionHandlers;function option(name,deflt,handle,notOnInit){CodeMirror.defaults[name]=deflt,handle&&(optionHandlers[name]=notOnInit?function(cm,val,old){old!=Init&&handle(cm,val,old)}:handle)}CodeMirror.defineOption=option,CodeMirror.Init=Init,option("value","",function(cm,val){return cm.setValue(val)},!0),option("mode",null,function(cm,val){cm.doc.modeOption=val,loadMode(cm)},!0),option("indentUnit",2,loadMode,!0),option("indentWithTabs",!1),option("smartIndent",!0),option("tabSize",4,function(cm){resetModeState(cm),clearCaches(cm),regChange(cm)},!0),option("lineSeparator",null,function(cm,val){if(cm.doc.lineSep=val){var newBreaks=[],lineNo=cm.doc.first;cm.doc.iter(function(line){for(var pos=0;;){var found=line.text.indexOf(val,pos);if(-1==found)break;pos=found+val.length,newBreaks.push(Pos(lineNo,found))}lineNo++});for(var i=newBreaks.length-1;0<=i;i--)replaceRange(cm.doc,val,newBreaks[i],Pos(newBreaks[i].line,newBreaks[i].ch+val.length))}}),option("specialChars",/[\u0000-\u001f\u007f-\u009f\u00ad\u061c\u200b-\u200f\u2028\u2029\ufeff]/g,function(cm,val,old){cm.state.specialChars=new RegExp(val.source+(val.test("\t")?"":"|\t"),"g"),old!=Init&&cm.refresh()}),option("specialCharPlaceholder",defaultSpecialCharPlaceholder,function(cm){return cm.refresh()},!0),option("electricChars",!0),option("inputStyle",mobile?"contenteditable":"textarea",function(){throw new Error("inputStyle can not (yet) be changed in a running editor")},!0),option("spellcheck",!1,function(cm,val){return cm.getInputField().spellcheck=val},!0),option("autocorrect",!1,function(cm,val){return cm.getInputField().autocorrect=val},!0),option("autocapitalize",!1,function(cm,val){return cm.getInputField().autocapitalize=val},!0),option("rtlMoveVisually",!windows),option("wholeLineUpdateBefore",!0),option("theme","default",function(cm){themeChanged(cm),updateGutters(cm)},!0),option("keyMap","default",function(cm,val,old){var next=getKeyMap(val),prev=old!=Init&&getKeyMap(old);prev&&prev.detach&&prev.detach(cm,next),next.attach&&next.attach(cm,prev||null)}),option("extraKeys",null),option("configureMouse",null),option("lineWrapping",!1,wrappingChanged,!0),option("gutters",[],function(cm,val){cm.display.gutterSpecs=getGutters(val,cm.options.lineNumbers),updateGutters(cm)},!0),option("fixedGutter",!0,function(cm,val){cm.display.gutters.style.left=val?compensateForHScroll(cm.display)+"px":"0",cm.refresh()},!0),option("coverGutterNextToScrollbar",!1,function(cm){return updateScrollbars(cm)},!0),option("scrollbarStyle","native",function(cm){initScrollbars(cm),updateScrollbars(cm),cm.display.scrollbars.setScrollTop(cm.doc.scrollTop),cm.display.scrollbars.setScrollLeft(cm.doc.scrollLeft)},!0),option("lineNumbers",!1,function(cm,val){cm.display.gutterSpecs=getGutters(cm.options.gutters,val),updateGutters(cm)},!0),option("firstLineNumber",1,updateGutters,!0),option("lineNumberFormatter",function(integer){return integer},updateGutters,!0),option("showCursorWhenSelecting",!1,updateSelection,!0),option("resetSelectionOnContextMenu",!0),option("lineWiseCopyCut",!0),option("pasteLinesPerSelection",!0),option("selectionsMayTouch",!1),option("readOnly",!1,function(cm,val){"nocursor"==val&&(onBlur(cm),cm.display.input.blur()),cm.display.input.readOnlyChanged(val)}),option("disableInput",!1,function(cm,val){val||cm.display.input.reset()},!0),option("dragDrop",!0,dragDropChanged),option("allowDropFileTypes",null),option("cursorBlinkRate",530),option("cursorScrollMargin",0),option("cursorHeight",1,updateSelection,!0),option("singleCursorHeightPerLine",!0,updateSelection,!0),option("workTime",100),option("workDelay",100),option("flattenSpans",!0,resetModeState,!0),option("addModeClass",!1,resetModeState,!0),option("pollInterval",100),option("undoDepth",200,function(cm,val){return cm.doc.history.undoDepth=val}),option("historyEventDelay",1250),option("viewportMargin",10,function(cm){return cm.refresh()},!0),option("maxHighlightLength",1e4,resetModeState,!0),option("moveInputWithCursor",!0,function(cm,val){val||cm.display.input.resetPosition()}),option("tabindex",null,function(cm,val){return cm.display.input.getField().tabIndex=val||""}),option("autofocus",null),option("direction","ltr",function(cm,val){return cm.doc.setDirection(val)},!0),option("phrases",null)}(CodeMirror),function(CodeMirror){var optionHandlers=CodeMirror.optionHandlers,helpers=CodeMirror.helpers={};CodeMirror.prototype={constructor:CodeMirror,focus:function(){window.focus(),this.display.input.focus()},setOption:function(option,value){var options=this.options,old=options[option];options[option]==value&&"mode"!=option||(options[option]=value,optionHandlers.hasOwnProperty(option)&&operation(this,optionHandlers[option])(this,value,old),signal(this,"optionChange",this,option))},getOption:function(option){return this.options[option]},getDoc:function(){return this.doc},addKeyMap:function(map$$1,bottom){this.state.keyMaps[bottom?"push":"unshift"](getKeyMap(map$$1))},removeKeyMap:function(map$$1){for(var maps=this.state.keyMaps,i=0;i<maps.length;++i)if(maps[i]==map$$1||maps[i].name==map$$1)return maps.splice(i,1),!0},addOverlay:methodOp(function(spec,options){var mode=spec.token?spec:CodeMirror.getMode(this.options,spec);if(mode.startState)throw new Error("Overlays may not be stateful.");!function(array,value,score){for(var pos=0,priority=score(value);pos<array.length&&score(array[pos])<=priority;)pos++;array.splice(pos,0,value)}(this.state.overlays,{mode:mode,modeSpec:spec,opaque:options&&options.opaque,priority:options&&options.priority||0},function(overlay){return overlay.priority}),this.state.modeGen++,regChange(this)}),removeOverlay:methodOp(function(spec){for(var overlays=this.state.overlays,i=0;i<overlays.length;++i){var cur=overlays[i].modeSpec;if(cur==spec||"string"==typeof spec&&cur.name==spec)return overlays.splice(i,1),this.state.modeGen++,void regChange(this)}}),indentLine:methodOp(function(n,dir,aggressive){"string"!=typeof dir&&"number"!=typeof dir&&(dir=null==dir?this.options.smartIndent?"smart":"prev":dir?"add":"subtract"),isLine(this.doc,n)&&indentLine(this,n,dir,aggressive)}),indentSelection:methodOp(function(how){for(var ranges=this.doc.sel.ranges,end=-1,i=0;i<ranges.length;i++){var range$$1=ranges[i];if(range$$1.empty())range$$1.head.line>end&&(indentLine(this,range$$1.head.line,how,!0),end=range$$1.head.line,i==this.doc.sel.primIndex&&ensureCursorVisible(this));else{var from=range$$1.from(),to=range$$1.to(),start=Math.max(end,from.line);end=Math.min(this.lastLine(),to.line-(to.ch?0:1))+1;for(var j=start;j<end;++j)indentLine(this,j,how);var newRanges=this.doc.sel.ranges;0==from.ch&&ranges.length==newRanges.length&&0<newRanges[i].from().ch&&replaceOneSelection(this.doc,i,new Range(from,newRanges[i].to()),sel_dontScroll)}}}),getTokenAt:function(pos,precise){return takeToken(this,pos,precise)},getLineTokens:function(line,precise){return takeToken(this,Pos(line),precise,!0)},getTokenTypeAt:function(pos){pos=clipPos(this.doc,pos);var type,styles=getLineStyles(this,getLine(this.doc,pos.line)),before=0,after=(styles.length-1)/2,ch=pos.ch;if(0==ch)type=styles[2];else for(;;){var mid=before+after>>1;if((mid?styles[2*mid-1]:0)>=ch)after=mid;else{if(!(styles[2*mid+1]<ch)){type=styles[2*mid+2];break}before=1+mid}}var cut=type?type.indexOf("overlay "):-1;return cut<0?type:0==cut?null:type.slice(0,cut-1)},getModeAt:function(pos){var mode=this.doc.mode;return mode.innerMode?CodeMirror.innerMode(mode,this.getTokenAt(pos).state).mode:mode},getHelper:function(pos,type){return this.getHelpers(pos,type)[0]},getHelpers:function(pos,type){var found=[];if(!helpers.hasOwnProperty(type))return found;var help=helpers[type],mode=this.getModeAt(pos);if("string"==typeof mode[type])help[mode[type]]&&found.push(help[mode[type]]);else if(mode[type])for(var i=0;i<mode[type].length;i++){var val=help[mode[type][i]];val&&found.push(val)}else mode.helperType&&help[mode.helperType]?found.push(help[mode.helperType]):help[mode.name]&&found.push(help[mode.name]);for(var i$1=0;i$1<help._global.length;i$1++){var cur=help._global[i$1];cur.pred(mode,this)&&-1==indexOf(found,cur.val)&&found.push(cur.val)}return found},getStateAfter:function(line,precise){var doc=this.doc;return getContextBefore(this,(line=clipLine(doc,null==line?doc.first+doc.size-1:line))+1,precise).state},cursorCoords:function(start,mode){var range$$1=this.doc.sel.primary();return cursorCoords(this,null==start?range$$1.head:"object"==typeof start?clipPos(this.doc,start):start?range$$1.from():range$$1.to(),mode||"page")},charCoords:function(pos,mode){return charCoords(this,clipPos(this.doc,pos),mode||"page")},coordsChar:function(coords,mode){return coordsChar(this,(coords=fromCoordSystem(this,coords,mode||"page")).left,coords.top)},lineAtHeight:function(height,mode){return height=fromCoordSystem(this,{top:height,left:0},mode||"page").top,lineAtHeight(this.doc,height+this.display.viewOffset)},heightAtLine:function(line,mode,includeWidgets){var lineObj,end=!1;if("number"==typeof line){var last=this.doc.first+this.doc.size-1;line<this.doc.first?line=this.doc.first:last<line&&(line=last,end=!0),lineObj=getLine(this.doc,line)}else lineObj=line;return intoCoordSystem(this,lineObj,{top:0,left:0},mode||"page",includeWidgets||end).top+(end?this.doc.height-heightAtLine(lineObj):0)},defaultTextHeight:function(){return textHeight(this.display)},defaultCharWidth:function(){return charWidth(this.display)},getViewport:function(){return{from:this.display.viewFrom,to:this.display.viewTo}},addWidget:function(pos,node,scroll,vert,horiz){var display=this.display,top=(pos=cursorCoords(this,clipPos(this.doc,pos))).bottom,left=pos.left;if(node.style.position="absolute",node.setAttribute("cm-ignore-events","true"),this.display.input.setUneditable(node),display.sizer.appendChild(node),"over"==vert)top=pos.top;else if("above"==vert||"near"==vert){var vspace=Math.max(display.wrapper.clientHeight,this.doc.height),hspace=Math.max(display.sizer.clientWidth,display.lineSpace.clientWidth);("above"==vert||pos.bottom+node.offsetHeight>vspace)&&pos.top>node.offsetHeight?top=pos.top-node.offsetHeight:pos.bottom+node.offsetHeight<=vspace&&(top=pos.bottom),left+node.offsetWidth>hspace&&(left=hspace-node.offsetWidth)}node.style.top=top+"px",node.style.left=node.style.right="","right"==horiz?(left=display.sizer.clientWidth-node.offsetWidth,node.style.right="0px"):("left"==horiz?left=0:"middle"==horiz&&(left=(display.sizer.clientWidth-node.offsetWidth)/2),node.style.left=left+"px"),scroll&&function(cm,rect){var scrollPos=calculateScrollPos(cm,rect);null!=scrollPos.scrollTop&&updateScrollTop(cm,scrollPos.scrollTop),null!=scrollPos.scrollLeft&&setScrollLeft(cm,scrollPos.scrollLeft)}(this,{left:left,top:top,right:left+node.offsetWidth,bottom:top+node.offsetHeight})},triggerOnKeyDown:methodOp(onKeyDown),triggerOnKeyPress:methodOp(onKeyPress),triggerOnKeyUp:onKeyUp,triggerOnMouseDown:methodOp(onMouseDown),execCommand:function(cmd){if(commands.hasOwnProperty(cmd))return commands[cmd].call(null,this)},triggerElectric:methodOp(function(text){triggerElectric(this,text)}),findPosH:function(from,amount,unit,visually){var dir=1;amount<0&&(dir=-1,amount=-amount);for(var cur=clipPos(this.doc,from),i=0;i<amount&&!(cur=findPosH(this.doc,cur,dir,unit,visually)).hitSide;++i);return cur},moveH:methodOp(function(dir,unit){var this$1=this;this.extendSelectionsBy(function(range$$1){return this$1.display.shift||this$1.doc.extend||range$$1.empty()?findPosH(this$1.doc,range$$1.head,dir,unit,this$1.options.rtlMoveVisually):dir<0?range$$1.from():range$$1.to()},sel_move)}),deleteH:methodOp(function(dir,unit){var sel=this.doc.sel,doc=this.doc;sel.somethingSelected()?doc.replaceSelection("",null,"+delete"):deleteNearSelection(this,function(range$$1){var other=findPosH(doc,range$$1.head,dir,unit,!1);return dir<0?{from:other,to:range$$1.head}:{from:range$$1.head,to:other}})}),findPosV:function(from,amount,unit,goalColumn){var dir=1,x=goalColumn;amount<0&&(dir=-1,amount=-amount);for(var cur=clipPos(this.doc,from),i=0;i<amount;++i){var coords=cursorCoords(this,cur,"div");if(null==x?x=coords.left:coords.left=x,(cur=findPosV(this,coords,dir,unit)).hitSide)break}return cur},moveV:methodOp(function(dir,unit){var this$1=this,doc=this.doc,goals=[],collapse=!this.display.shift&&!doc.extend&&doc.sel.somethingSelected();if(doc.extendSelectionsBy(function(range$$1){if(collapse)return dir<0?range$$1.from():range$$1.to();var headPos=cursorCoords(this$1,range$$1.head,"div");null!=range$$1.goalColumn&&(headPos.left=range$$1.goalColumn),goals.push(headPos.left);var pos=findPosV(this$1,headPos,dir,unit);return"page"==unit&&range$$1==doc.sel.primary()&&addToScrollTop(this$1,charCoords(this$1,pos,"div").top-headPos.top),pos},sel_move),goals.length)for(var i=0;i<doc.sel.ranges.length;i++)doc.sel.ranges[i].goalColumn=goals[i]}),findWordAt:function(pos){var line=getLine(this.doc,pos.line).text,start=pos.ch,end=pos.ch;if(line){var helper=this.getHelper(pos,"wordChars");"before"!=pos.sticky&&end!=line.length||!start?++end:--start;for(var startChar=line.charAt(start),check=isWordChar(startChar,helper)?function(ch){return isWordChar(ch,helper)}:/\s/.test(startChar)?function(ch){return/\s/.test(ch)}:function(ch){return!/\s/.test(ch)&&!isWordChar(ch)};0<start&&check(line.charAt(start-1));)--start;for(;end<line.length&&check(line.charAt(end));)++end}return new Range(Pos(pos.line,start),Pos(pos.line,end))},toggleOverwrite:function(value){null!=value&&value==this.state.overwrite||((this.state.overwrite=!this.state.overwrite)?addClass(this.display.cursorDiv,"CodeMirror-overwrite"):rmClass(this.display.cursorDiv,"CodeMirror-overwrite"),signal(this,"overwriteToggle",this,this.state.overwrite))},hasFocus:function(){return this.display.input.getField()==activeElt()},isReadOnly:function(){return!(!this.options.readOnly&&!this.doc.cantEdit)},scrollTo:methodOp(function(x,y){scrollToCoords(this,x,y)}),getScrollInfo:function(){var scroller=this.display.scroller;return{left:scroller.scrollLeft,top:scroller.scrollTop,height:scroller.scrollHeight-scrollGap(this)-this.display.barHeight,width:scroller.scrollWidth-scrollGap(this)-this.display.barWidth,clientHeight:displayHeight(this),clientWidth:displayWidth(this)}},scrollIntoView:methodOp(function(range$$1,margin){null==range$$1?(range$$1={from:this.doc.sel.primary().head,to:null},null==margin&&(margin=this.options.cursorScrollMargin)):"number"==typeof range$$1?range$$1={from:Pos(range$$1,0),to:null}:null==range$$1.from&&(range$$1={from:range$$1,to:null}),range$$1.to||(range$$1.to=range$$1.from),range$$1.margin=margin||0,null!=range$$1.from.line?function(cm,range$$1){resolveScrollToPos(cm),cm.curOp.scrollToPos=range$$1}(this,range$$1):scrollToCoordsRange(this,range$$1.from,range$$1.to,range$$1.margin)}),setSize:methodOp(function(width,height){function interpret(val){return"number"==typeof val||/^\d+$/.test(String(val))?val+"px":val}var this$1=this;null!=width&&(this.display.wrapper.style.width=interpret(width)),null!=height&&(this.display.wrapper.style.height=interpret(height)),this.options.lineWrapping&&clearLineMeasurementCache(this);var lineNo$$1=this.display.viewFrom;this.doc.iter(lineNo$$1,this.display.viewTo,function(line){if(line.widgets)for(var i=0;i<line.widgets.length;i++)if(line.widgets[i].noHScroll){regLineChange(this$1,lineNo$$1,"widget");break}++lineNo$$1}),this.curOp.forceUpdate=!0,signal(this,"refresh",this)}),operation:function(f){return runInOp(this,f)},startOperation:function(){return startOperation(this)},endOperation:function(){return endOperation(this)},refresh:methodOp(function(){var oldHeight=this.display.cachedTextHeight;regChange(this),this.curOp.forceUpdate=!0,clearCaches(this),scrollToCoords(this,this.doc.scrollLeft,this.doc.scrollTop),updateGutterSpace(this.display),(null==oldHeight||.5<Math.abs(oldHeight-textHeight(this.display)))&&estimateLineHeights(this),signal(this,"refresh",this)}),swapDoc:methodOp(function(doc){var old=this.doc;return old.cm=null,this.state.selectingText&&this.state.selectingText(),attachDoc(this,doc),clearCaches(this),this.display.input.reset(),scrollToCoords(this,doc.scrollLeft,doc.scrollTop),this.curOp.forceScroll=!0,signalLater(this,"swapDoc",this,old),old}),phrase:function(phraseText){var phrases=this.options.phrases;return phrases&&Object.prototype.hasOwnProperty.call(phrases,phraseText)?phrases[phraseText]:phraseText},getInputField:function(){return this.display.input.getField()},getWrapperElement:function(){return this.display.wrapper},getScrollerElement:function(){return this.display.scroller},getGutterElement:function(){return this.display.gutters}},eventMixin(CodeMirror),CodeMirror.registerHelper=function(type,name,value){helpers.hasOwnProperty(type)||(helpers[type]=CodeMirror[type]={_global:[]}),helpers[type][name]=value},CodeMirror.registerGlobalHelper=function(type,name,predicate,value){CodeMirror.registerHelper(type,name,value),helpers[type]._global.push({pred:predicate,val:value})}}(CodeMirror);var dontDelegate="iter insert remove copy getEditor constructor".split(" ");for(var prop in Doc.prototype)Doc.prototype.hasOwnProperty(prop)&&indexOf(dontDelegate,prop)<0&&(CodeMirror.prototype[prop]=function(method){return function(){return method.apply(this.doc,arguments)}}(Doc.prototype[prop]));return eventMixin(Doc),CodeMirror.inputStyles={textarea:TextareaInput,contenteditable:ContentEditableInput},CodeMirror.defineMode=function(name){CodeMirror.defaults.mode||"null"==name||(CodeMirror.defaults.mode=name),function(name,mode){2<arguments.length&&(mode.dependencies=Array.prototype.slice.call(arguments,2)),modes[name]=mode}.apply(this,arguments)},CodeMirror.defineMIME=function(mime,spec){mimeModes[mime]=spec},CodeMirror.defineMode("null",function(){return{token:function(stream){return stream.skipToEnd()}}}),CodeMirror.defineMIME("text/plain","null"),CodeMirror.defineExtension=function(name,func){CodeMirror.prototype[name]=func},CodeMirror.defineDocExtension=function(name,func){Doc.prototype[name]=func},CodeMirror.fromTextArea=function(textarea,options){if((options=options?copyObj(options):{}).value=textarea.value,!options.tabindex&&textarea.tabIndex&&(options.tabindex=textarea.tabIndex),!options.placeholder&&textarea.placeholder&&(options.placeholder=textarea.placeholder),null==options.autofocus){var hasFocus=activeElt();options.autofocus=hasFocus==textarea||null!=textarea.getAttribute("autofocus")&&hasFocus==document.body}function save(){textarea.value=cm.getValue()}var realSubmit;if(textarea.form&&(on(textarea.form,"submit",save),!options.leaveSubmitMethodAlone)){var form=textarea.form;realSubmit=form.submit;try{var wrappedSubmit=form.submit=function(){save(),form.submit=realSubmit,form.submit(),form.submit=wrappedSubmit}}catch(e){}}options.finishInit=function(cm){cm.save=save,cm.getTextArea=function(){return textarea},cm.toTextArea=function(){cm.toTextArea=isNaN,save(),textarea.parentNode.removeChild(cm.getWrapperElement()),textarea.style.display="",textarea.form&&(off(textarea.form,"submit",save),"function"==typeof textarea.form.submit&&(textarea.form.submit=realSubmit))}},textarea.style.display="none";var cm=CodeMirror(function(node){return textarea.parentNode.insertBefore(node,textarea.nextSibling)},options);return cm},function(CodeMirror){CodeMirror.off=off,CodeMirror.on=on,CodeMirror.wheelEventPixels=wheelEventPixels,CodeMirror.Doc=Doc,CodeMirror.splitLines=splitLinesAuto,CodeMirror.countColumn=countColumn,CodeMirror.findColumn=findColumn,CodeMirror.isWordChar=isWordCharBasic,CodeMirror.Pass=Pass,CodeMirror.signal=signal,CodeMirror.Line=Line,CodeMirror.changeEnd=changeEnd,CodeMirror.scrollbarModel=scrollbarModel,CodeMirror.Pos=Pos,CodeMirror.cmpPos=cmp,CodeMirror.modes=modes,CodeMirror.mimeModes=mimeModes,CodeMirror.resolveMode=resolveMode,CodeMirror.getMode=getMode,CodeMirror.modeExtensions=modeExtensions,CodeMirror.extendMode=extendMode,CodeMirror.copyState=copyState,CodeMirror.startState=startState,CodeMirror.innerMode=innerMode,CodeMirror.commands=commands,CodeMirror.keyMap=keyMap,CodeMirror.keyName=keyName,CodeMirror.isModifierKey=isModifierKey,CodeMirror.lookupKey=lookupKey,CodeMirror.normalizeKeyMap=normalizeKeyMap,CodeMirror.StringStream=StringStream,CodeMirror.SharedTextMarker=SharedTextMarker,CodeMirror.TextMarker=TextMarker,CodeMirror.LineWidget=LineWidget,CodeMirror.e_preventDefault=e_preventDefault,CodeMirror.e_stopPropagation=e_stopPropagation,CodeMirror.e_stop=e_stop,CodeMirror.addClass=addClass,CodeMirror.contains=contains,CodeMirror.rmClass=rmClass,CodeMirror.keyNames=keyNames}(CodeMirror),CodeMirror.version="5.47.0",CodeMirror},"object"==typeof exports&&void 0!==module?module.exports=factory():global.CodeMirror=factory()},{}],16:[function(require,module,exports){"use strict";var deselectCurrent=require("toggle-selection");module.exports=function(text,options){var debug,message,reselectPrevious,range,selection,mark,success=!1;options||(options={}),debug=options.debug||!1;try{if(reselectPrevious=deselectCurrent(),range=document.createRange(),selection=document.getSelection(),(mark=document.createElement("span")).textContent=text,mark.style.all="unset",mark.style.position="fixed",mark.style.top=0,mark.style.clip="rect(0, 0, 0, 0)",mark.style.whiteSpace="pre",mark.style.webkitUserSelect="text",mark.style.MozUserSelect="text",mark.style.msUserSelect="text",mark.style.userSelect="text",mark.addEventListener("copy",function(e){e.stopPropagation(),options.format&&(e.preventDefault(),e.clipboardData.clearData(),e.clipboardData.setData(options.format,text))}),document.body.appendChild(mark),range.selectNodeContents(mark),selection.addRange(range),!document.execCommand("copy"))throw new Error("copy command was unsuccessful");success=!0}catch(err){debug&&console.error("unable to copy using execCommand: ",err),debug&&console.warn("trying IE specific stuff");try{window.clipboardData.setData(options.format||"text",text),success=!0}catch(err){debug&&console.error("unable to copy using clipboardData: ",err),debug&&console.error("falling back to prompt"),message=function(message){var copyKey=(/mac os x/i.test(navigator.userAgent)?"⌘":"Ctrl")+"+C";return message.replace(/#{\s*key\s*}/g,copyKey)}("message"in options?options.message:"Copy to clipboard: #{key}, Enter"),window.prompt(message,text)}}finally{selection&&("function"==typeof selection.removeRange?selection.removeRange(range):selection.removeAllRanges()),mark&&document.body.removeChild(mark),reselectPrevious()}return success}},{"toggle-selection":208}],17:[function(require,module,exports){module.exports={Aacute:"Á",aacute:"á",Abreve:"Ă",abreve:"ă",ac:"∾",acd:"∿",acE:"∾̳",Acirc:"Â",acirc:"â",acute:"´",Acy:"А",acy:"а",AElig:"Æ",aelig:"æ",af:"",Afr:"𝔄",afr:"𝔞",Agrave:"À",agrave:"à",alefsym:"ℵ",aleph:"ℵ",Alpha:"Α",alpha:"α",Amacr:"Ā",amacr:"ā",amalg:"⨿",amp:"&",AMP:"&",andand:"⩕",And:"⩓",and:"∧",andd:"⩜",andslope:"⩘",andv:"⩚",ang:"∠",ange:"⦤",angle:"∠",angmsdaa:"⦨",angmsdab:"⦩",angmsdac:"⦪",angmsdad:"⦫",angmsdae:"⦬",angmsdaf:"⦭",angmsdag:"⦮",angmsdah:"⦯",angmsd:"∡",angrt:"∟",angrtvb:"⊾",angrtvbd:"⦝",angsph:"∢",angst:"Å",angzarr:"⍼",Aogon:"Ą",aogon:"ą",Aopf:"𝔸",aopf:"𝕒",apacir:"⩯",ap:"≈",apE:"⩰",ape:"≊",apid:"≋",apos:"'",ApplyFunction:"",approx:"≈",approxeq:"≊",Aring:"Å",aring:"å",Ascr:"𝒜",ascr:"𝒶",Assign:"≔",ast:"*",asymp:"≈",asympeq:"≍",Atilde:"Ã",atilde:"ã",Auml:"Ä",auml:"ä",awconint:"∳",awint:"⨑",backcong:"≌",backepsilon:"϶",backprime:"",backsim:"∽",backsimeq:"⋍",Backslash:"",Barv:"⫧",barvee:"⊽",barwed:"⌅",Barwed:"⌆",barwedge:"⌅",bbrk:"⎵",bbrktbrk:"⎶",bcong:"≌",Bcy:"Б",bcy:"б",bdquo:"„",becaus:"∵",because:"∵",Because:"∵",bemptyv:"⦰",bepsi:"϶",bernou:"",Bernoullis:"",Beta:"Β",beta:"β",beth:"ℶ",between:"≬",Bfr:"𝔅",bfr:"𝔟",bigcap:"⋂",bigcirc:"◯",bigcup:"",bigodot:"⨀",bigoplus:"⨁",bigotimes:"⨂",bigsqcup:"⨆",bigstar:"★",bigtriangledown:"▽",bigtriangleup:"△",biguplus:"⨄",bigvee:"",bigwedge:"⋀",bkarow:"⤍",blacklozenge:"⧫",blacksquare:"▪",blacktriangle:"▴",blacktriangledown:"▾",blacktriangleleft:"◂",blacktriangleright:"▸",blank:"␣",blk12:"▒",blk14:"░",blk34:"▓",block:"█",bne:"=⃥",bnequiv:"≡⃥",bNot:"⫭",bnot:"⌐",Bopf:"𝔹",bopf:"𝕓",bot:"⊥",bottom:"⊥",bowtie:"⋈",boxbox:"⧉",boxdl:"┐",boxdL:"╕",boxDl:"╖",boxDL:"╗",boxdr:"┌",boxdR:"╒",boxDr:"╓",boxDR:"╔",boxh:"─",boxH:"═",boxhd:"┬",boxHd:"╤",boxhD:"╥",boxHD:"╦",boxhu:"┴",boxHu:"╧",boxhU:"╨",boxHU:"╩",boxminus:"⊟",boxplus:"⊞",boxtimes:"⊠",boxul:"┘",boxuL:"╛",boxUl:"╜",boxUL:"╝",boxur:"└",boxuR:"╘",boxUr:"╙",boxUR:"╚",boxv:"│",boxV:"║",boxvh:"┼",boxvH:"╪",boxVh:"╫",boxVH:"╬",boxvl:"┤",boxvL:"╡",boxVl:"╢",boxVL:"╣",boxvr:"├",boxvR:"╞",boxVr:"╟",boxVR:"╠",bprime:"",breve:"˘",Breve:"˘",brvbar:"¦",bscr:"𝒷",Bscr:"",bsemi:"⁏",bsim:"∽",bsime:"⋍",bsolb:"⧅",bsol:"\\",bsolhsub:"⟈",bull:"•",bullet:"•",bump:"≎",bumpE:"⪮",bumpe:"≏",Bumpeq:"≎",bumpeq:"≏",Cacute:"Ć",cacute:"ć",capand:"⩄",capbrcup:"⩉",capcap:"⩋",cap:"∩",Cap:"⋒",capcup:"⩇",capdot:"⩀",CapitalDifferentialD:"",caps:"∩︀",caret:"",caron:"ˇ",Cayleys:"",ccaps:"⩍",Ccaron:"Č",ccaron:"č",Ccedil:"Ç",ccedil:"ç",Ccirc:"Ĉ",ccirc:"ĉ",Cconint:"∰",ccups:"⩌",ccupssm:"⩐",Cdot:"Ċ",cdot:"ċ",cedil:"¸",Cedilla:"¸",cemptyv:"⦲",cent:"¢",centerdot:"·",CenterDot:"·",cfr:"𝔠",Cfr:"",CHcy:"Ч",chcy:"ч",check:"✓",checkmark:"✓",Chi:"Χ",chi:"χ",circ:"ˆ",circeq:"≗",circlearrowleft:"↺",circlearrowright:"↻",circledast:"⊛",circledcirc:"⊚",circleddash:"⊝",CircleDot:"⊙",circledR:"®",circledS:"Ⓢ",CircleMinus:"⊖",CirclePlus:"⊕",CircleTimes:"⊗",cir:"○",cirE:"⧃",cire:"≗",cirfnint:"⨐",cirmid:"⫯",cirscir:"⧂",ClockwiseContourIntegral:"∲",CloseCurlyDoubleQuote:"”",CloseCurlyQuote:"",clubs:"♣",clubsuit:"♣",colon:":",Colon:"∷",Colone:"⩴",colone:"≔",coloneq:"≔",comma:",",commat:"@",comp:"∁",compfn:"∘",complement:"∁",complexes:"",cong:"≅",congdot:"⩭",Congruent:"≡",conint:"∮",Conint:"∯",ContourIntegral:"∮",copf:"𝕔",Copf:"",coprod:"∐",Coproduct:"∐",copy:"©",COPY:"©",copysr:"℗",CounterClockwiseContourIntegral:"∳",crarr:"↵",cross:"✗",Cross:"",Cscr:"𝒞",cscr:"𝒸",csub:"⫏",csube:"⫑",csup:"⫐",csupe:"⫒",ctdot:"⋯",cudarrl:"⤸",cudarrr:"⤵",cuepr:"⋞",cuesc:"⋟",cularr:"↶",cularrp:"⤽",cupbrcap:"⩈",cupcap:"⩆",CupCap:"≍",cup:"",Cup:"⋓",cupcup:"⩊",cupdot:"⊍",cupor:"⩅",cups:"",curarr:"↷",curarrm:"⤼",curlyeqprec:"⋞",curlyeqsucc:"⋟",curlyvee:"⋎",curlywedge:"⋏",curren:"¤",curvearrowleft:"↶",curvearrowright:"↷",cuvee:"⋎",cuwed:"⋏",cwconint:"∲",cwint:"∱",cylcty:"⌭",dagger:"†",Dagger:"‡",daleth:"ℸ",darr:"↓",Darr:"↡",dArr:"⇓",dash:"",Dashv:"⫤",dashv:"⊣",dbkarow:"⤏",dblac:"˝",Dcaron:"Ď",dcaron:"ď",Dcy:"Д",dcy:"д",ddagger:"‡",ddarr:"⇊",DD:"",dd:"",DDotrahd:"⤑",ddotseq:"⩷",deg:"°",Del:"∇",Delta:"Δ",delta:"δ",demptyv:"⦱",dfisht:"⥿",Dfr:"𝔇",dfr:"𝔡",dHar:"⥥",dharl:"⇃",dharr:"⇂",DiacriticalAcute:"´",DiacriticalDot:"˙",DiacriticalDoubleAcute:"˝",DiacriticalGrave:"`",DiacriticalTilde:"˜",diam:"⋄",diamond:"⋄",Diamond:"⋄",diamondsuit:"♦",diams:"♦",die:"¨",DifferentialD:"",digamma:"ϝ",disin:"⋲",div:"÷",divide:"÷",divideontimes:"⋇",divonx:"⋇",DJcy:"Ђ",djcy:"ђ",dlcorn:"⌞",dlcrop:"⌍",dollar:"$",Dopf:"𝔻",dopf:"𝕕",Dot:"¨",dot:"˙",DotDot:"⃜",doteq:"≐",doteqdot:"≑",DotEqual:"≐",dotminus:"∸",dotplus:"∔",dotsquare:"⊡",doublebarwedge:"⌆",DoubleContourIntegral:"∯",DoubleDot:"¨",DoubleDownArrow:"⇓",DoubleLeftArrow:"⇐",DoubleLeftRightArrow:"⇔",DoubleLeftTee:"⫤",DoubleLongLeftArrow:"⟸",DoubleLongLeftRightArrow:"⟺",DoubleLongRightArrow:"⟹",DoubleRightArrow:"⇒",DoubleRightTee:"⊨",DoubleUpArrow:"⇑",DoubleUpDownArrow:"⇕",DoubleVerticalBar:"∥",DownArrowBar:"⤓",downarrow:"↓",DownArrow:"↓",Downarrow:"⇓",DownArrowUpArrow:"⇵",DownBreve:"̑",downdownarrows:"⇊",downharpoonleft:"⇃",downharpoonright:"⇂",DownLeftRightVector:"⥐",DownLeftTeeVector:"⥞",DownLeftVectorBar:"⥖",DownLeftVector:"↽",DownRightTeeVector:"⥟",DownRightVectorBar:"⥗",DownRightVector:"⇁",DownTeeArrow:"↧",DownTee:"",drbkarow:"⤐",drcorn:"⌟",drcrop:"⌌",Dscr:"𝒟",dscr:"𝒹",DScy:"Ѕ",dscy:"ѕ",dsol:"⧶",Dstrok:"Đ",dstrok:"đ",dtdot:"⋱",dtri:"▿",dtrif:"▾",duarr:"⇵",duhar:"⥯",dwangle:"⦦",DZcy:"Џ",dzcy:"џ",dzigrarr:"⟿",Eacute:"É",eacute:"é",easter:"⩮",Ecaron:"Ě",ecaron:"ě",Ecirc:"Ê",ecirc:"ê",ecir:"≖",ecolon:"≕",Ecy:"Э",ecy:"э",eDDot:"⩷",Edot:"Ė",edot:"ė",eDot:"≑",ee:"",efDot:"≒",Efr:"𝔈",efr:"𝔢",eg:"⪚",Egrave:"È",egrave:"è",egs:"⪖",egsdot:"⪘",el:"⪙",Element:"∈",elinters:"⏧",ell:"",els:"⪕",elsdot:"⪗",Emacr:"Ē",emacr:"ē",empty:"∅",emptyset:"∅",EmptySmallSquare:"◻",emptyv:"∅",EmptyVerySmallSquare:"▫",emsp13:"",emsp14:"",emsp:"",ENG:"Ŋ",eng:"ŋ",ensp:"",Eogon:"Ę",eogon:"ę",Eopf:"𝔼",eopf:"𝕖",epar:"⋕",eparsl:"⧣",eplus:"⩱",epsi:"ε",Epsilon:"Ε",epsilon:"ε",epsiv:"ϵ",eqcirc:"≖",eqcolon:"≕",eqsim:"≂",eqslantgtr:"⪖",eqslantless:"⪕",Equal:"⩵",equals:"=",EqualTilde:"≂",equest:"≟",Equilibrium:"⇌",equiv:"≡",equivDD:"⩸",eqvparsl:"⧥",erarr:"⥱",erDot:"≓",escr:"",Escr:"",esdot:"≐",Esim:"⩳",esim:"≂",Eta:"Η",eta:"η",ETH:"Ð",eth:"ð",Euml:"Ë",euml:"ë",euro:"€",excl:"!",exist:"∃",Exists:"∃",expectation:"",exponentiale:"",ExponentialE:"",fallingdotseq:"≒",Fcy:"Ф",fcy:"ф",female:"♀",ffilig:"ffi",fflig:"ff",ffllig:"ffl",Ffr:"𝔉",ffr:"𝔣",filig:"fi",FilledSmallSquare:"◼",FilledVerySmallSquare:"▪",fjlig:"fj",flat:"♭",fllig:"fl",fltns:"▱",fnof:"ƒ",Fopf:"𝔽",fopf:"𝕗",forall:"∀",ForAll:"∀",fork:"⋔",forkv:"⫙",Fouriertrf:"",fpartint:"⨍",frac12:"½",frac13:"⅓",frac14:"¼",frac15:"⅕",frac16:"⅙",frac18:"⅛",frac23:"⅔",frac25:"⅖",frac34:"¾",frac35:"⅗",frac38:"⅜",frac45:"⅘",frac56:"⅚",frac58:"⅝",frac78:"⅞",frasl:"",frown:"⌢",fscr:"𝒻",Fscr:"",gacute:"ǵ",Gamma:"Γ",gamma:"γ",Gammad:"Ϝ",gammad:"ϝ",gap:"⪆",Gbreve:"Ğ",gbreve:"ğ",Gcedil:"Ģ",Gcirc:"Ĝ",gcirc:"ĝ",Gcy:"Г",gcy:"г",Gdot:"Ġ",gdot:"ġ",ge:"≥",gE:"≧",gEl:"⪌",gel:"⋛",geq:"≥",geqq:"≧",geqslant:"⩾",gescc:"⪩",ges:"⩾",gesdot:"⪀",gesdoto:"⪂",gesdotol:"⪄",gesl:"⋛︀",gesles:"⪔",Gfr:"𝔊",gfr:"𝔤",gg:"≫",Gg:"⋙",ggg:"⋙",gimel:"ℷ",GJcy:"Ѓ",gjcy:"ѓ",gla:"⪥",gl:"≷",glE:"⪒",glj:"⪤",gnap:"⪊",gnapprox:"⪊",gne:"⪈",gnE:"≩",gneq:"⪈",gneqq:"≩",gnsim:"⋧",Gopf:"𝔾",gopf:"𝕘",grave:"`",GreaterEqual:"≥",GreaterEqualLess:"⋛",GreaterFullEqual:"≧",GreaterGreater:"⪢",GreaterLess:"≷",GreaterSlantEqual:"⩾",GreaterTilde:"≳",Gscr:"𝒢",gscr:"",gsim:"≳",gsime:"⪎",gsiml:"⪐",gtcc:"⪧",gtcir:"⩺",gt:">",GT:">",Gt:"≫",gtdot:"⋗",gtlPar:"⦕",gtquest:"⩼",gtrapprox:"⪆",gtrarr:"⥸",gtrdot:"⋗",gtreqless:"⋛",gtreqqless:"⪌",gtrless:"≷",gtrsim:"≳",gvertneqq:"≩︀",gvnE:"≩︀",Hacek:"ˇ",hairsp:"",half:"½",hamilt:"",HARDcy:"Ъ",hardcy:"ъ",harrcir:"⥈",harr:"↔",hArr:"⇔",harrw:"↭",Hat:"^",hbar:"ℏ",Hcirc:"Ĥ",hcirc:"ĥ",hearts:"♥",heartsuit:"♥",hellip:"…",hercon:"⊹",hfr:"𝔥",Hfr:"",HilbertSpace:"",hksearow:"⤥",hkswarow:"⤦",hoarr:"⇿",homtht:"∻",hookleftarrow:"↩",hookrightarrow:"↪",hopf:"𝕙",Hopf:"",horbar:"―",HorizontalLine:"─",hscr:"𝒽",Hscr:"",hslash:"ℏ",Hstrok:"Ħ",hstrok:"ħ",HumpDownHump:"≎",HumpEqual:"≏",hybull:"",hyphen:"",Iacute:"Í",iacute:"í",ic:"",Icirc:"Î",icirc:"î",Icy:"И",icy:"и",Idot:"İ",IEcy:"Е",iecy:"е",iexcl:"¡",iff:"⇔",ifr:"𝔦",Ifr:"",Igrave:"Ì",igrave:"ì",ii:"",iiiint:"⨌",iiint:"∭",iinfin:"⧜",iiota:"℩",IJlig:"IJ",ijlig:"ij",Imacr:"Ī",imacr:"ī",image:"",ImaginaryI:"",imagline:"",imagpart:"",imath:"ı",Im:"",imof:"⊷",imped:"Ƶ",Implies:"⇒",incare:"℅",in:"∈",infin:"∞",infintie:"⧝",inodot:"ı",intcal:"⊺",int:"∫",Int:"∬",integers:"",Integral:"∫",intercal:"⊺",Intersection:"⋂",intlarhk:"⨗",intprod:"⨼",InvisibleComma:"",InvisibleTimes:"",IOcy:"Ё",iocy:"ё",Iogon:"Į",iogon:"į",Iopf:"𝕀",iopf:"𝕚",Iota:"Ι",iota:"ι",iprod:"⨼",iquest:"¿",iscr:"𝒾",Iscr:"",isin:"∈",isindot:"⋵",isinE:"⋹",isins:"⋴",isinsv:"⋳",isinv:"∈",it:"",Itilde:"Ĩ",itilde:"ĩ",Iukcy:"І",iukcy:"і",Iuml:"Ï",iuml:"ï",Jcirc:"Ĵ",jcirc:"ĵ",Jcy:"Й",jcy:"й",Jfr:"𝔍",jfr:"𝔧",jmath:"ȷ",Jopf:"𝕁",jopf:"𝕛",Jscr:"𝒥",jscr:"𝒿",Jsercy:"Ј",jsercy:"ј",Jukcy:"Є",jukcy:"є",Kappa:"Κ",kappa:"κ",kappav:"ϰ",Kcedil:"Ķ",kcedil:"ķ",Kcy:"К",kcy:"к",Kfr:"𝔎",kfr:"𝔨",kgreen:"ĸ",KHcy:"Х",khcy:"х",KJcy:"Ќ",kjcy:"ќ",Kopf:"𝕂",kopf:"𝕜",Kscr:"𝒦",kscr:"𝓀",lAarr:"⇚",Lacute:"Ĺ",lacute:"ĺ",laemptyv:"⦴",lagran:"",Lambda:"Λ",lambda:"λ",lang:"⟨",Lang:"⟪",langd:"⦑",langle:"⟨",lap:"⪅",Laplacetrf:"",laquo:"«",larrb:"⇤",larrbfs:"⤟",larr:"←",Larr:"↞",lArr:"⇐",larrfs:"⤝",larrhk:"↩",larrlp:"↫",larrpl:"⤹",larrsim:"⥳",larrtl:"↢",latail:"⤙",lAtail:"⤛",lat:"⪫",late:"⪭",lates:"⪭︀",lbarr:"⤌",lBarr:"⤎",lbbrk:"",lbrace:"{",lbrack:"[",lbrke:"⦋",lbrksld:"⦏",lbrkslu:"⦍",Lcaron:"Ľ",lcaron:"ľ",Lcedil:"Ļ",lcedil:"ļ",lceil:"⌈",lcub:"{",Lcy:"Л",lcy:"л",ldca:"⤶",ldquo:"“",ldquor:"„",ldrdhar:"⥧",ldrushar:"⥋",ldsh:"↲",le:"≤",lE:"≦",LeftAngleBracket:"⟨",LeftArrowBar:"⇤",leftarrow:"←",LeftArrow:"←",Leftarrow:"⇐",LeftArrowRightArrow:"⇆",leftarrowtail:"↢",LeftCeiling:"⌈",LeftDoubleBracket:"⟦",LeftDownTeeVector:"⥡",LeftDownVectorBar:"⥙",LeftDownVector:"⇃",LeftFloor:"⌊",leftharpoondown:"↽",leftharpoonup:"↼",leftleftarrows:"⇇",leftrightarrow:"↔",LeftRightArrow:"↔",Leftrightarrow:"⇔",leftrightarrows:"⇆",leftrightharpoons:"⇋",leftrightsquigarrow:"↭",LeftRightVector:"⥎",LeftTeeArrow:"↤",LeftTee:"⊣",LeftTeeVector:"⥚",leftthreetimes:"⋋",LeftTriangleBar:"⧏",LeftTriangle:"⊲",LeftTriangleEqual:"⊴",LeftUpDownVector:"⥑",LeftUpTeeVector:"⥠",LeftUpVectorBar:"⥘",LeftUpVector:"↿",LeftVectorBar:"⥒",LeftVector:"↼",lEg:"⪋",leg:"⋚",leq:"≤",leqq:"≦",leqslant:"⩽",lescc:"⪨",les:"⩽",lesdot:"⩿",lesdoto:"⪁",lesdotor:"⪃",lesg:"⋚︀",lesges:"⪓",lessapprox:"⪅",lessdot:"⋖",lesseqgtr:"⋚",lesseqqgtr:"⪋",LessEqualGreater:"⋚",LessFullEqual:"≦",LessGreater:"≶",lessgtr:"≶",LessLess:"⪡",lesssim:"≲",LessSlantEqual:"⩽",LessTilde:"≲",lfisht:"⥼",lfloor:"⌊",Lfr:"𝔏",lfr:"𝔩",lg:"≶",lgE:"⪑",lHar:"⥢",lhard:"↽",lharu:"↼",lharul:"⥪",lhblk:"▄",LJcy:"Љ",ljcy:"љ",llarr:"⇇",ll:"≪",Ll:"⋘",llcorner:"⌞",Lleftarrow:"⇚",llhard:"⥫",lltri:"◺",Lmidot:"Ŀ",lmidot:"ŀ",lmoustache:"⎰",lmoust:"⎰",lnap:"⪉",lnapprox:"⪉",lne:"⪇",lnE:"≨",lneq:"⪇",lneqq:"≨",lnsim:"⋦",loang:"⟬",loarr:"⇽",lobrk:"⟦",longleftarrow:"⟵",LongLeftArrow:"⟵",Longleftarrow:"⟸",longleftrightarrow:"⟷",LongLeftRightArrow:"⟷",Longleftrightarrow:"⟺",longmapsto:"⟼",longrightarrow:"⟶",LongRightArrow:"⟶",Longrightarrow:"⟹",looparrowleft:"↫",looparrowright:"↬",lopar:"⦅",Lopf:"𝕃",lopf:"𝕝",loplus:"⨭",lotimes:"⨴",lowast:"",lowbar:"_",LowerLeftArrow:"↙",LowerRightArrow:"↘",loz:"◊",lozenge:"◊",lozf:"⧫",lpar:"(",lparlt:"⦓",lrarr:"⇆",lrcorner:"⌟",lrhar:"⇋",lrhard:"⥭",lrm:"",lrtri:"⊿",lsaquo:"",lscr:"𝓁",Lscr:"",lsh:"↰",Lsh:"↰",lsim:"≲",lsime:"⪍",lsimg:"⪏",lsqb:"[",lsquo:"",lsquor:"",Lstrok:"Ł",lstrok:"ł",ltcc:"⪦",ltcir:"⩹",lt:"<",LT:"<",Lt:"≪",ltdot:"⋖",lthree:"⋋",ltimes:"⋉",ltlarr:"⥶",ltquest:"⩻",ltri:"◃",ltrie:"⊴",ltrif:"◂",ltrPar:"⦖",lurdshar:"⥊",luruhar:"⥦",lvertneqq:"≨︀",lvnE:"≨︀",macr:"¯",male:"♂",malt:"✠",maltese:"✠",Map:"⤅",map:"↦",mapsto:"↦",mapstodown:"↧",mapstoleft:"↤",mapstoup:"↥",marker:"▮",mcomma:"⨩",Mcy:"М",mcy:"м",mdash:"—",mDDot:"∺",measuredangle:"∡",MediumSpace:"",Mellintrf:"",Mfr:"𝔐",mfr:"𝔪",mho:"℧",micro:"µ",midast:"*",midcir:"⫰",mid:"",middot:"·",minusb:"⊟",minus:"",minusd:"∸",minusdu:"⨪",MinusPlus:"∓",mlcp:"⫛",mldr:"…",mnplus:"∓",models:"⊧",Mopf:"𝕄",mopf:"𝕞",mp:"∓",mscr:"𝓂",Mscr:"",mstpos:"∾",Mu:"Μ",mu:"μ",multimap:"⊸",mumap:"⊸",nabla:"∇",Nacute:"Ń",nacute:"ń",nang:"∠⃒",nap:"≉",napE:"⩰̸",napid:"≋̸",napos:"ʼn",napprox:"≉",natural:"♮",naturals:"",natur:"♮",nbsp:" ",nbump:"≎̸",nbumpe:"≏̸",ncap:"⩃",Ncaron:"Ň",ncaron:"ň",Ncedil:"Ņ",ncedil:"ņ",ncong:"≇",ncongdot:"⩭̸",ncup:"⩂",Ncy:"Н",ncy:"н",ndash:"",nearhk:"⤤",nearr:"↗",neArr:"⇗",nearrow:"↗",ne:"≠",nedot:"≐̸",NegativeMediumSpace:"",NegativeThickSpace:"",NegativeThinSpace:"",NegativeVeryThinSpace:"",nequiv:"≢",nesear:"⤨",nesim:"≂̸",NestedGreaterGreater:"≫",NestedLessLess:"≪",NewLine:"\n",nexist:"∄",nexists:"∄",Nfr:"𝔑",nfr:"𝔫",ngE:"≧̸",nge:"≱",ngeq:"≱",ngeqq:"≧̸",ngeqslant:"⩾̸",nges:"⩾̸",nGg:"⋙̸",ngsim:"≵",nGt:"≫⃒",ngt:"≯",ngtr:"≯",nGtv:"≫̸",nharr:"↮",nhArr:"⇎",nhpar:"⫲",ni:"∋",nis:"⋼",nisd:"⋺",niv:"∋",NJcy:"Њ",njcy:"њ",nlarr:"↚",nlArr:"⇍",nldr:"‥",nlE:"≦̸",nle:"≰",nleftarrow:"↚",nLeftarrow:"⇍",nleftrightarrow:"↮",nLeftrightarrow:"⇎",nleq:"≰",nleqq:"≦̸",nleqslant:"⩽̸",nles:"⩽̸",nless:"≮",nLl:"⋘̸",nlsim:"≴",nLt:"≪⃒",nlt:"≮",nltri:"⋪",nltrie:"⋬",nLtv:"≪̸",nmid:"∤",NoBreak:"",NonBreakingSpace:" ",nopf:"𝕟",Nopf:"",Not:"⫬",not:"¬",NotCongruent:"≢",NotCupCap:"≭",NotDoubleVerticalBar:"∦",NotElement:"∉",NotEqual:"≠",NotEqualTilde:"≂̸",NotExists:"∄",NotGreater:"≯",NotGreaterEqual:"≱",NotGreaterFullEqual:"≧̸",NotGreaterGreater:"≫̸",NotGreaterLess:"≹",NotGreaterSlantEqual:"⩾̸",NotGreaterTilde:"≵",NotHumpDownHump:"≎̸",NotHumpEqual:"≏̸",notin:"∉",notindot:"⋵̸",notinE:"⋹̸",notinva:"∉",notinvb:"⋷",notinvc:"⋶",NotLeftTriangleBar:"⧏̸",NotLeftTriangle:"⋪",NotLeftTriangleEqual:"⋬",NotLess:"≮",NotLessEqual:"≰",NotLessGreater:"≸",NotLessLess:"≪̸",NotLessSlantEqual:"⩽̸",NotLessTilde:"≴",NotNestedGreaterGreater:"⪢̸",NotNestedLessLess:"⪡̸",notni:"∌",notniva:"∌",notnivb:"⋾",notnivc:"⋽",NotPrecedes:"⊀",NotPrecedesEqual:"⪯̸",NotPrecedesSlantEqual:"⋠",NotReverseElement:"∌",NotRightTriangleBar:"⧐̸",NotRightTriangle:"⋫",NotRightTriangleEqual:"⋭",NotSquareSubset:"⊏̸",NotSquareSubsetEqual:"⋢",NotSquareSuperset:"⊐̸",NotSquareSupersetEqual:"⋣",NotSubset:"⊂⃒",NotSubsetEqual:"⊈",NotSucceeds:"⊁",NotSucceedsEqual:"⪰̸",NotSucceedsSlantEqual:"⋡",NotSucceedsTilde:"≿̸",NotSuperset:"⊃⃒",NotSupersetEqual:"⊉",NotTilde:"≁",NotTildeEqual:"≄",NotTildeFullEqual:"≇",NotTildeTilde:"≉",NotVerticalBar:"∤",nparallel:"∦",npar:"∦",nparsl:"⫽⃥",npart:"∂̸",npolint:"⨔",npr:"⊀",nprcue:"⋠",nprec:"⊀",npreceq:"⪯̸",npre:"⪯̸",nrarrc:"⤳̸",nrarr:"↛",nrArr:"⇏",nrarrw:"↝̸",nrightarrow:"↛",nRightarrow:"⇏",nrtri:"⋫",nrtrie:"⋭",nsc:"⊁",nsccue:"⋡",nsce:"⪰̸",Nscr:"𝒩",nscr:"𝓃",nshortmid:"∤",nshortparallel:"∦",nsim:"≁",nsime:"≄",nsimeq:"≄",nsmid:"∤",nspar:"∦",nsqsube:"⋢",nsqsupe:"⋣",nsub:"⊄",nsubE:"⫅̸",nsube:"⊈",nsubset:"⊂⃒",nsubseteq:"⊈",nsubseteqq:"⫅̸",nsucc:"⊁",nsucceq:"⪰̸",nsup:"⊅",nsupE:"⫆̸",nsupe:"⊉",nsupset:"⊃⃒",nsupseteq:"⊉",nsupseteqq:"⫆̸",ntgl:"≹",Ntilde:"Ñ",ntilde:"ñ",ntlg:"≸",ntriangleleft:"⋪",ntrianglelefteq:"⋬",ntriangleright:"⋫",ntrianglerighteq:"⋭",Nu:"Ν",nu:"ν",num:"#",numero:"№",numsp:"",nvap:"≍⃒",nvdash:"⊬",nvDash:"⊭",nVdash:"⊮",nVDash:"⊯",nvge:"≥⃒",nvgt:">⃒",nvHarr:"⤄",nvinfin:"⧞",nvlArr:"⤂",nvle:"≤⃒",nvlt:"<⃒",nvltrie:"⊴⃒",nvrArr:"⤃",nvrtrie:"⊵⃒",nvsim:"∼⃒",nwarhk:"⤣",nwarr:"↖",nwArr:"⇖",nwarrow:"↖",nwnear:"⤧",Oacute:"Ó",oacute:"ó",oast:"⊛",Ocirc:"Ô",ocirc:"ô",ocir:"⊚",Ocy:"О",ocy:"о",odash:"⊝",Odblac:"Ő",odblac:"ő",odiv:"⨸",odot:"⊙",odsold:"⦼",OElig:"Œ",oelig:"œ",ofcir:"⦿",Ofr:"𝔒",ofr:"𝔬",ogon:"˛",Ograve:"Ò",ograve:"ò",ogt:"⧁",ohbar:"⦵",ohm:"Ω",oint:"∮",olarr:"↺",olcir:"⦾",olcross:"⦻",oline:"‾",olt:"⧀",Omacr:"Ō",omacr:"ō",Omega:"Ω",omega:"ω",Omicron:"Ο",omicron:"ο",omid:"⦶",ominus:"⊖",Oopf:"𝕆",oopf:"𝕠",opar:"⦷",OpenCurlyDoubleQuote:"“",OpenCurlyQuote:"",operp:"⦹",oplus:"⊕",orarr:"↻",Or:"⩔",or:"",ord:"⩝",order:"",orderof:"",ordf:"ª",ordm:"º",origof:"⊶",oror:"⩖",orslope:"⩗",orv:"⩛",oS:"Ⓢ",Oscr:"𝒪",oscr:"",Oslash:"Ø",oslash:"ø",osol:"⊘",Otilde:"Õ",otilde:"õ",otimesas:"⨶",Otimes:"⨷",otimes:"⊗",Ouml:"Ö",ouml:"ö",ovbar:"⌽",OverBar:"‾",OverBrace:"⏞",OverBracket:"⎴",OverParenthesis:"⏜",para:"¶",parallel:"∥",par:"∥",parsim:"⫳",parsl:"⫽",part:"∂",PartialD:"∂",Pcy:"П",pcy:"п",percnt:"%",period:".",permil:"‰",perp:"⊥",pertenk:"‱",Pfr:"𝔓",pfr:"𝔭",Phi:"Φ",phi:"φ",phiv:"ϕ",phmmat:"",phone:"☎",Pi:"Π",pi:"π",pitchfork:"⋔",piv:"ϖ",planck:"ℏ",planckh:"",plankv:"ℏ",plusacir:"⨣",plusb:"⊞",pluscir:"⨢",plus:"+",plusdo:"∔",plusdu:"⨥",pluse:"⩲",PlusMinus:"±",plusmn:"±",plussim:"⨦",plustwo:"⨧",pm:"±",Poincareplane:"",pointint:"⨕",popf:"𝕡",Popf:"",pound:"£",prap:"⪷",Pr:"⪻",pr:"≺",prcue:"≼",precapprox:"⪷",prec:"≺",preccurlyeq:"≼",Precedes:"≺",PrecedesEqual:"⪯",PrecedesSlantEqual:"≼",PrecedesTilde:"≾",preceq:"⪯",precnapprox:"⪹",precneqq:"⪵",precnsim:"⋨",pre:"⪯",prE:"⪳",precsim:"≾",prime:"",Prime:"″",primes:"",prnap:"⪹",prnE:"⪵",prnsim:"⋨",prod:"∏",Product:"∏",profalar:"⌮",profline:"⌒",profsurf:"⌓",prop:"∝",Proportional:"∝",Proportion:"∷",propto:"∝",prsim:"≾",prurel:"⊰",Pscr:"𝒫",pscr:"𝓅",Psi:"Ψ",psi:"ψ",puncsp:"",Qfr:"𝔔",qfr:"𝔮",qint:"⨌",qopf:"𝕢",Qopf:"",qprime:"⁗",Qscr:"𝒬",qscr:"𝓆",quaternions:"",quatint:"⨖",quest:"?",questeq:"≟",quot:'"',QUOT:'"',rAarr:"⇛",race:"∽̱",Racute:"Ŕ",racute:"ŕ",radic:"√",raemptyv:"⦳",rang:"⟩",Rang:"⟫",rangd:"⦒",range:"⦥",rangle:"⟩",raquo:"»",rarrap:"⥵",rarrb:"⇥",rarrbfs:"⤠",rarrc:"⤳",rarr:"→",Rarr:"↠",rArr:"⇒",rarrfs:"⤞",rarrhk:"↪",rarrlp:"↬",rarrpl:"⥅",rarrsim:"⥴",Rarrtl:"⤖",rarrtl:"↣",rarrw:"↝",ratail:"⤚",rAtail:"⤜",ratio:"",rationals:"",rbarr:"⤍",rBarr:"⤏",RBarr:"⤐",rbbrk:"",rbrace:"}",rbrack:"]",rbrke:"⦌",rbrksld:"⦎",rbrkslu:"⦐",Rcaron:"Ř",rcaron:"ř",Rcedil:"Ŗ",rcedil:"ŗ",rceil:"⌉",rcub:"}",Rcy:"Р",rcy:"р",rdca:"⤷",rdldhar:"⥩",rdquo:"”",rdquor:"”",rdsh:"↳",real:"",realine:"",realpart:"",reals:"",Re:"",rect:"▭",reg:"®",REG:"®",ReverseElement:"∋",ReverseEquilibrium:"⇋",ReverseUpEquilibrium:"⥯",rfisht:"⥽",rfloor:"⌋",rfr:"𝔯",Rfr:"",rHar:"⥤",rhard:"⇁",rharu:"⇀",rharul:"⥬",Rho:"Ρ",rho:"ρ",rhov:"ϱ",RightAngleBracket:"⟩",RightArrowBar:"⇥",rightarrow:"→",RightArrow:"→",Rightarrow:"⇒",RightArrowLeftArrow:"⇄",rightarrowtail:"↣",RightCeiling:"⌉",RightDoubleBracket:"⟧",RightDownTeeVector:"⥝",RightDownVectorBar:"⥕",RightDownVector:"⇂",RightFloor:"⌋",rightharpoondown:"⇁",rightharpoonup:"⇀",rightleftarrows:"⇄",rightleftharpoons:"⇌",rightrightarrows:"⇉",rightsquigarrow:"↝",RightTeeArrow:"↦",RightTee:"⊢",RightTeeVector:"⥛",rightthreetimes:"⋌",RightTriangleBar:"⧐",RightTriangle:"⊳",RightTriangleEqual:"⊵",RightUpDownVector:"⥏",RightUpTeeVector:"⥜",RightUpVectorBar:"⥔",RightUpVector:"↾",RightVectorBar:"⥓",RightVector:"⇀",ring:"˚",risingdotseq:"≓",rlarr:"⇄",rlhar:"⇌",rlm:"",rmoustache:"⎱",rmoust:"⎱",rnmid:"⫮",roang:"⟭",roarr:"⇾",robrk:"⟧",ropar:"⦆",ropf:"𝕣",Ropf:"",roplus:"⨮",rotimes:"⨵",RoundImplies:"⥰",rpar:")",rpargt:"⦔",rppolint:"⨒",rrarr:"⇉",Rrightarrow:"⇛",rsaquo:"",rscr:"𝓇",Rscr:"",rsh:"↱",Rsh:"↱",rsqb:"]",rsquo:"",rsquor:"",rthree:"⋌",rtimes:"⋊",rtri:"▹",rtrie:"⊵",rtrif:"▸",rtriltri:"⧎",RuleDelayed:"⧴",ruluhar:"⥨",rx:"℞",Sacute:"Ś",sacute:"ś",sbquo:"",scap:"⪸",Scaron:"Š",scaron:"š",Sc:"⪼",sc:"≻",sccue:"≽",sce:"⪰",scE:"⪴",Scedil:"Ş",scedil:"ş",Scirc:"Ŝ",scirc:"ŝ",scnap:"⪺",scnE:"⪶",scnsim:"⋩",scpolint:"⨓",scsim:"≿",Scy:"С",scy:"с",sdotb:"⊡",sdot:"⋅",sdote:"⩦",searhk:"⤥",searr:"↘",seArr:"⇘",searrow:"↘",sect:"§",semi:";",seswar:"⤩",setminus:"",setmn:"",sext:"✶",Sfr:"𝔖",sfr:"𝔰",sfrown:"⌢",sharp:"♯",SHCHcy:"Щ",shchcy:"щ",SHcy:"Ш",shcy:"ш",ShortDownArrow:"↓",ShortLeftArrow:"←",shortmid:"",shortparallel:"∥",ShortRightArrow:"→",ShortUpArrow:"↑",shy:"­",Sigma:"Σ",sigma:"σ",sigmaf:"ς",sigmav:"ς",sim:"",simdot:"⩪",sime:"≃",simeq:"≃",simg:"⪞",simgE:"⪠",siml:"⪝",simlE:"⪟",simne:"≆",simplus:"⨤",simrarr:"⥲",slarr:"←",SmallCircle:"∘",smallsetminus:"",smashp:"⨳",smeparsl:"⧤",smid:"",smile:"⌣",smt:"⪪",smte:"⪬",smtes:"⪬︀",SOFTcy:"Ь",softcy:"ь",solbar:"⌿",solb:"⧄",sol:"/",Sopf:"𝕊",sopf:"𝕤",spades:"♠",spadesuit:"♠",spar:"∥",sqcap:"⊓",sqcaps:"⊓︀",sqcup:"⊔",sqcups:"⊔︀",Sqrt:"√",sqsub:"⊏",sqsube:"⊑",sqsubset:"⊏",sqsubseteq:"⊑",sqsup:"⊐",sqsupe:"⊒",sqsupset:"⊐",sqsupseteq:"⊒",square:"□",Square:"□",SquareIntersection:"⊓",SquareSubset:"⊏",SquareSubsetEqual:"⊑",SquareSuperset:"⊐",SquareSupersetEqual:"⊒",SquareUnion:"⊔",squarf:"▪",squ:"□",squf:"▪",srarr:"→",Sscr:"𝒮",sscr:"𝓈",ssetmn:"",ssmile:"⌣",sstarf:"⋆",Star:"⋆",star:"☆",starf:"★",straightepsilon:"ϵ",straightphi:"ϕ",strns:"¯",sub:"⊂",Sub:"⋐",subdot:"⪽",subE:"⫅",sube:"⊆",subedot:"⫃",submult:"⫁",subnE:"⫋",subne:"⊊",subplus:"⪿",subrarr:"⥹",subset:"⊂",Subset:"⋐",subseteq:"⊆",subseteqq:"⫅",SubsetEqual:"⊆",subsetneq:"⊊",subsetneqq:"⫋",subsim:"⫇",subsub:"⫕",subsup:"⫓",succapprox:"⪸",succ:"≻",succcurlyeq:"≽",Succeeds:"≻",SucceedsEqual:"⪰",SucceedsSlantEqual:"≽",SucceedsTilde:"≿",succeq:"⪰",succnapprox:"⪺",succneqq:"⪶",succnsim:"⋩",succsim:"≿",SuchThat:"∋",sum:"∑",Sum:"∑",sung:"♪",sup1:"¹",sup2:"²",sup3:"³",sup:"⊃",Sup:"⋑",supdot:"⪾",supdsub:"⫘",supE:"⫆",supe:"⊇",supedot:"⫄",Superset:"⊃",SupersetEqual:"⊇",suphsol:"⟉",suphsub:"⫗",suplarr:"⥻",supmult:"⫂",supnE:"⫌",supne:"⊋",supplus:"⫀",supset:"⊃",Supset:"⋑",supseteq:"⊇",supseteqq:"⫆",supsetneq:"⊋",supsetneqq:"⫌",supsim:"⫈",supsub:"⫔",supsup:"⫖",swarhk:"⤦",swarr:"↙",swArr:"⇙",swarrow:"↙",swnwar:"⤪",szlig:"ß",Tab:"\t",target:"⌖",Tau:"Τ",tau:"τ",tbrk:"⎴",Tcaron:"Ť",tcaron:"ť",Tcedil:"Ţ",tcedil:"ţ",Tcy:"Т",tcy:"т",tdot:"⃛",telrec:"⌕",Tfr:"𝔗",tfr:"𝔱",there4:"∴",therefore:"∴",Therefore:"∴",Theta:"Θ",theta:"θ",thetasym:"ϑ",thetav:"ϑ",thickapprox:"≈",thicksim:"",ThickSpace:"",ThinSpace:"",thinsp:"",thkap:"≈",thksim:"",THORN:"Þ",thorn:"þ",tilde:"˜",Tilde:"",TildeEqual:"≃",TildeFullEqual:"≅",TildeTilde:"≈",timesbar:"⨱",timesb:"⊠",times:"×",timesd:"⨰",tint:"∭",toea:"⤨",topbot:"⌶",topcir:"⫱",top:"",Topf:"𝕋",topf:"𝕥",topfork:"⫚",tosa:"⤩",tprime:"‴",trade:"™",TRADE:"™",triangle:"▵",triangledown:"▿",triangleleft:"◃",trianglelefteq:"⊴",triangleq:"≜",triangleright:"▹",trianglerighteq:"⊵",tridot:"◬",trie:"≜",triminus:"⨺",TripleDot:"⃛",triplus:"⨹",trisb:"⧍",tritime:"⨻",trpezium:"⏢",Tscr:"𝒯",tscr:"𝓉",TScy:"Ц",tscy:"ц",TSHcy:"Ћ",tshcy:"ћ",Tstrok:"Ŧ",tstrok:"ŧ",twixt:"≬",twoheadleftarrow:"↞",twoheadrightarrow:"↠",Uacute:"Ú",uacute:"ú",uarr:"↑",Uarr:"↟",uArr:"⇑",Uarrocir:"⥉",Ubrcy:"Ў",ubrcy:"ў",Ubreve:"Ŭ",ubreve:"ŭ",Ucirc:"Û",ucirc:"û",Ucy:"У",ucy:"у",udarr:"⇅",Udblac:"Ű",udblac:"ű",udhar:"⥮",ufisht:"⥾",Ufr:"𝔘",ufr:"𝔲",Ugrave:"Ù",ugrave:"ù",uHar:"⥣",uharl:"↿",uharr:"↾",uhblk:"▀",ulcorn:"⌜",ulcorner:"⌜",ulcrop:"⌏",ultri:"◸",Umacr:"Ū",umacr:"ū",uml:"¨",UnderBar:"_",UnderBrace:"⏟",UnderBracket:"⎵",UnderParenthesis:"⏝",Union:"",UnionPlus:"⊎",Uogon:"Ų",uogon:"ų",Uopf:"𝕌",uopf:"𝕦",UpArrowBar:"⤒",uparrow:"↑",UpArrow:"↑",Uparrow:"⇑",UpArrowDownArrow:"⇅",updownarrow:"↕",UpDownArrow:"↕",Updownarrow:"⇕",UpEquilibrium:"⥮",upharpoonleft:"↿",upharpoonright:"↾",uplus:"⊎",UpperLeftArrow:"↖",UpperRightArrow:"↗",upsi:"υ",Upsi:"ϒ",upsih:"ϒ",Upsilon:"Υ",upsilon:"υ",UpTeeArrow:"↥",UpTee:"⊥",upuparrows:"⇈",urcorn:"⌝",urcorner:"⌝",urcrop:"⌎",Uring:"Ů",uring:"ů",urtri:"◹",Uscr:"𝒰",uscr:"𝓊",utdot:"⋰",Utilde:"Ũ",utilde:"ũ",utri:"▵",utrif:"▴",uuarr:"⇈",Uuml:"Ü",uuml:"ü",uwangle:"⦧",vangrt:"⦜",varepsilon:"ϵ",varkappa:"ϰ",varnothing:"∅",varphi:"ϕ",varpi:"ϖ",varpropto:"∝",varr:"↕",vArr:"⇕",varrho:"ϱ",varsigma:"ς",varsubsetneq:"⊊︀",varsubsetneqq:"⫋︀",varsupsetneq:"⊋︀",varsupsetneqq:"⫌︀",vartheta:"ϑ",vartriangleleft:"⊲",vartriangleright:"⊳",vBar:"⫨",Vbar:"⫫",vBarv:"⫩",Vcy:"В",vcy:"в",vdash:"⊢",vDash:"⊨",Vdash:"⊩",VDash:"⊫",Vdashl:"⫦",veebar:"⊻",vee:"",Vee:"",veeeq:"≚",vellip:"⋮",verbar:"|",Verbar:"‖",vert:"|",Vert:"‖",VerticalBar:"",VerticalLine:"|",VerticalSeparator:"❘",VerticalTilde:"≀",VeryThinSpace:"",Vfr:"𝔙",vfr:"𝔳",vltri:"⊲",vnsub:"⊂⃒",vnsup:"⊃⃒",Vopf:"𝕍",vopf:"𝕧",vprop:"∝",vrtri:"⊳",Vscr:"𝒱",vscr:"𝓋",vsubnE:"⫋︀",vsubne:"⊊︀",vsupnE:"⫌︀",vsupne:"⊋︀",Vvdash:"⊪",vzigzag:"⦚",Wcirc:"Ŵ",wcirc:"ŵ",wedbar:"⩟",wedge:"∧",Wedge:"⋀",wedgeq:"≙",weierp:"℘",Wfr:"𝔚",wfr:"𝔴",Wopf:"𝕎",wopf:"𝕨",wp:"℘",wr:"≀",wreath:"≀",Wscr:"𝒲",wscr:"𝓌",xcap:"⋂",xcirc:"◯",xcup:"",xdtri:"▽",Xfr:"𝔛",xfr:"𝔵",xharr:"⟷",xhArr:"⟺",Xi:"Ξ",xi:"ξ",xlarr:"⟵",xlArr:"⟸",xmap:"⟼",xnis:"⋻",xodot:"⨀",Xopf:"𝕏",xopf:"𝕩",xoplus:"⨁",xotime:"⨂",xrarr:"⟶",xrArr:"⟹",Xscr:"𝒳",xscr:"𝓍",xsqcup:"⨆",xuplus:"⨄",xutri:"△",xvee:"",xwedge:"⋀",Yacute:"Ý",yacute:"ý",YAcy:"Я",yacy:"я",Ycirc:"Ŷ",ycirc:"ŷ",Ycy:"Ы",ycy:"ы",yen:"¥",Yfr:"𝔜",yfr:"𝔶",YIcy:"Ї",yicy:"ї",Yopf:"𝕐",yopf:"𝕪",Yscr:"𝒴",yscr:"𝓎",YUcy:"Ю",yucy:"ю",yuml:"ÿ",Yuml:"Ÿ",Zacute:"Ź",zacute:"ź",Zcaron:"Ž",zcaron:"ž",Zcy:"З",zcy:"з",Zdot:"Ż",zdot:"ż",zeetrf:"",ZeroWidthSpace:"",Zeta:"Ζ",zeta:"ζ",zfr:"𝔷",Zfr:"",ZHcy:"Ж",zhcy:"ж",zigrarr:"⇝",zopf:"𝕫",Zopf:"",Zscr:"𝒵",zscr:"𝓏",zwj:"",zwnj:""}},{}],18:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.GraphQLError=GraphQLError;var _printError=require("./printError"),_location=require("../language/location");function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function GraphQLError(message,nodes,source,positions,path,originalError,extensions){var _nodes=Array.isArray(nodes)?0!==nodes.length?nodes:void 0:nodes?[nodes]:void 0,_source=source;if(!_source&&_nodes){var node=_nodes[0];_source=node&&node.loc&&node.loc.source}var _locations,_positions=positions;!_positions&&_nodes&&(_positions=_nodes.reduce(function(list,node){return node.loc&&list.push(node.loc.start),list},[])),_positions&&0===_positions.length&&(_positions=void 0),positions&&source?_locations=positions.map(function(pos){return(0,_location.getLocation)(source,pos)}):_nodes&&(_locations=_nodes.reduce(function(list,node){return node.loc&&list.push((0,_location.getLocation)(node.loc.source,node.loc.start)),list},[]));var _extensions=extensions;if(null==_extensions&&null!=originalError){var originalExtensions=originalError.extensions;null!=originalExtensions&&"object"===_typeof(originalExtensions)&&(_extensions=originalExtensions)}Object.defineProperties(this,{message:{value:message,enumerable:!0,writable:!0},locations:{value:_locations||void 0,enumerable:Boolean(_locations)},path:{value:path||void 0,enumerable:Boolean(path)},nodes:{value:_nodes||void 0},source:{value:_source||void 0},positions:{value:_positions||void 0},originalError:{value:originalError},extensions:{value:_extensions||void 0,enumerable:Boolean(_extensions)}}),originalError&&originalError.stack?Object.defineProperty(this,"stack",{value:originalError.stack,writable:!0,configurable:!0}):Error.captureStackTrace?Error.captureStackTrace(this,GraphQLError):Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0})}GraphQLError.prototype=Object.create(Error.prototype,{constructor:{value:GraphQLError},name:{value:"GraphQLError"},toString:{value:function(){return(0,_printError.printError)(this)}}})},{"../language/location":52,"./printError":22}],19:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.formatError=function(error){error||(0,_invariant.default)(0,"Received null or undefined error.");var message=error.message||"An unknown error occurred.",locations=error.locations,path=error.path,extensions=error.extensions;return extensions?{message:message,locations:locations,path:path,extensions:extensions}:{message:message,locations:locations,path:path}};var obj,_invariant=(obj=require("../jsutils/invariant"))&&obj.__esModule?obj:{default:obj}},{"../jsutils/invariant":33}],20:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"GraphQLError",{enumerable:!0,get:function(){return _GraphQLError.GraphQLError}}),Object.defineProperty(exports,"syntaxError",{enumerable:!0,get:function(){return _syntaxError.syntaxError}}),Object.defineProperty(exports,"locatedError",{enumerable:!0,get:function(){return _locatedError.locatedError}}),Object.defineProperty(exports,"printError",{enumerable:!0,get:function(){return _printError.printError}}),Object.defineProperty(exports,"formatError",{enumerable:!0,get:function(){return _formatError.formatError}});var _GraphQLError=require("./GraphQLError"),_syntaxError=require("./syntaxError"),_locatedError=require("./locatedError"),_printError=require("./printError"),_formatError=require("./formatError")},{"./GraphQLError":18,"./formatError":19,"./locatedError":21,"./printError":22,"./syntaxError":23}],21:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.locatedError=function(originalError,nodes,path){if(originalError&&Array.isArray(originalError.path))return originalError;return new _GraphQLError.GraphQLError(originalError&&originalError.message,originalError&&originalError.nodes||nodes,originalError&&originalError.source,originalError&&originalError.positions,path,originalError)};var _GraphQLError=require("./GraphQLError")},{"./GraphQLError":18}],22:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.printError=function(error){var printedLocations=[];if(error.nodes){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=error.nodes[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var node=_step.value;node.loc&&printedLocations.push(highlightSourceAtLocation(node.loc.source,(0,_location.getLocation)(node.loc.source,node.loc.start)))}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}else if(error.source&&error.locations){var source=error.source,_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=error.locations[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var location=_step2.value;printedLocations.push(highlightSourceAtLocation(source,location))}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}}return 0===printedLocations.length?error.message:[error.message].concat(printedLocations).join("\n\n")+"\n"};var _location=require("../language/location");function highlightSourceAtLocation(source,location){var firstLineColumnOffset=source.locationOffset.column-1,body=whitespace(firstLineColumnOffset)+source.body,lineIndex=location.line-1,lineOffset=source.locationOffset.line-1,lineNum=location.line+lineOffset,columnOffset=1===location.line?firstLineColumnOffset:0,columnNum=location.column+columnOffset,lines=body.split(/\r\n|[\n\r]/g);return"".concat(source.name," (").concat(lineNum,":").concat(columnNum,")\n")+function(lines){var existingLines=lines.filter(function(_ref){_ref[0];var line=_ref[1];return void 0!==line}),padLen=0,_iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=existingLines[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var _ref4=_step3.value,prefix=_ref4[0];padLen=Math.max(padLen,prefix.length)}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}return existingLines.map(function(_ref3){var prefix=_ref3[0],line=_ref3[1];return function(len,str){return whitespace(len-str.length)+str}(padLen,prefix)+line}).join("\n")}([["".concat(lineNum-1,": "),lines[lineIndex-1]],["".concat(lineNum,": "),lines[lineIndex]],["",whitespace(columnNum-1)+"^"],["".concat(lineNum+1,": "),lines[1+lineIndex]]])}function whitespace(len){return Array(len+1).join(" ")}},{"../language/location":52}],23:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.syntaxError=function(source,position,description){return new _GraphQLError.GraphQLError("Syntax Error: ".concat(description),void 0,source,[position])};var _GraphQLError=require("./GraphQLError")},{"./GraphQLError":18}],24:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.execute=function(argsOrSchema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver){return 1===arguments.length?executeImpl(argsOrSchema.schema,argsOrSchema.document,argsOrSchema.rootValue,argsOrSchema.contextValue,argsOrSchema.variableValues,argsOrSchema.operationName,argsOrSchema.fieldResolver,argsOrSchema.typeResolver):executeImpl(argsOrSchema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver)},exports.responsePathAsArray=responsePathAsArray,exports.addPath=addPath,exports.assertValidExecutionArguments=assertValidExecutionArguments,exports.buildExecutionContext=buildExecutionContext,exports.collectFields=collectFields,exports.buildResolveInfo=buildResolveInfo,exports.resolveFieldValueOrError=resolveFieldValueOrError,exports.getFieldDef=getFieldDef,exports.defaultFieldResolver=exports.defaultTypeResolver=void 0;var _iterall=require("iterall"),_GraphQLError=require("../error/GraphQLError"),_locatedError=require("../error/locatedError"),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_isInvalid=_interopRequireDefault(require("../jsutils/isInvalid")),_isNullish=_interopRequireDefault(require("../jsutils/isNullish")),_isPromise=_interopRequireDefault(require("../jsutils/isPromise")),_memoize=_interopRequireDefault(require("../jsutils/memoize3")),_promiseForObject=_interopRequireDefault(require("../jsutils/promiseForObject")),_promiseReduce=_interopRequireDefault(require("../jsutils/promiseReduce")),_getOperationRootType=require("../utilities/getOperationRootType"),_typeFromAST=require("../utilities/typeFromAST"),_kinds=require("../language/kinds"),_values=require("./values"),_definition=require("../type/definition"),_introspection=require("../type/introspection"),_directives=require("../type/directives"),_validate=require("../type/validate");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function executeImpl(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver){assertValidExecutionArguments(schema,document,variableValues);var exeContext=buildExecutionContext(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver);if(Array.isArray(exeContext))return{errors:exeContext};var data=function(exeContext,operation,rootValue){var type=(0,_getOperationRootType.getOperationRootType)(exeContext.schema,operation),fields=collectFields(exeContext,type,operation.selectionSet,Object.create(null),Object.create(null)),path=void 0;try{var result="mutation"===operation.operation?function(exeContext,parentType,sourceValue,path,fields){return(0,_promiseReduce.default)(Object.keys(fields),function(results,responseName){var fieldNodes=fields[responseName],fieldPath=addPath(path,responseName),result=resolveField(exeContext,parentType,sourceValue,fieldNodes,fieldPath);return void 0===result?results:(0,_isPromise.default)(result)?result.then(function(resolvedResult){return results[responseName]=resolvedResult,results}):(results[responseName]=result,results)},Object.create(null))}(exeContext,type,rootValue,path,fields):executeFields(exeContext,type,rootValue,path,fields);return(0,_isPromise.default)(result)?result.then(void 0,function(error){return exeContext.errors.push(error),Promise.resolve(null)}):result}catch(error){return exeContext.errors.push(error),null}}(exeContext,exeContext.operation,rootValue);return function buildResponse(exeContext,data){if((0,_isPromise.default)(data))return data.then(function(resolved){return buildResponse(exeContext,resolved)});return 0===exeContext.errors.length?{data:data}:{errors:exeContext.errors,data:data}}(exeContext,data)}function responsePathAsArray(path){for(var flattened=[],curr=path;curr;)flattened.push(curr.key),curr=curr.prev;return flattened.reverse()}function addPath(prev,key){return{prev:prev,key:key}}function assertValidExecutionArguments(schema,document,rawVariableValues){document||(0,_invariant.default)(0,"Must provide document"),(0,_validate.assertValidSchema)(schema),rawVariableValues&&"object"!==_typeof(rawVariableValues)&&(0,_invariant.default)(0,"Variables must be provided as an Object where each property is a variable value. Perhaps look to see if an unparsed JSON string was provided.")}function buildExecutionContext(schema,document,rootValue,contextValue,rawVariableValues,operationName,fieldResolver,typeResolver){for(var operation,variableValues,errors=[],hasMultipleAssumedOperations=!1,fragments=Object.create(null),i=0;i<document.definitions.length;i++){var definition=document.definitions[i];switch(definition.kind){case _kinds.Kind.OPERATION_DEFINITION:!operationName&&operation?hasMultipleAssumedOperations=!0:(!operationName||definition.name&&definition.name.value===operationName)&&(operation=definition);break;case _kinds.Kind.FRAGMENT_DEFINITION:fragments[definition.name.value]=definition}}if(operation?hasMultipleAssumedOperations&&errors.push(new _GraphQLError.GraphQLError("Must provide operation name if query contains multiple operations.")):operationName?errors.push(new _GraphQLError.GraphQLError('Unknown operation named "'.concat(operationName,'".'))):errors.push(new _GraphQLError.GraphQLError("Must provide an operation.")),operation){var coercedVariableValues=(0,_values.getVariableValues)(schema,operation.variableDefinitions||[],rawVariableValues||{});coercedVariableValues.errors?errors.push.apply(errors,coercedVariableValues.errors):variableValues=coercedVariableValues.coerced}return 0!==errors.length?errors:(operation||(0,_invariant.default)(0,"Has operation if no errors."),variableValues||(0,_invariant.default)(0,"Has variables if no errors."),{schema:schema,fragments:fragments,rootValue:rootValue,contextValue:contextValue,operation:operation,variableValues:variableValues,fieldResolver:fieldResolver||defaultFieldResolver,typeResolver:typeResolver||defaultTypeResolver,errors:errors})}function executeFields(exeContext,parentType,sourceValue,path,fields){for(var results=Object.create(null),containsPromise=!1,i=0,keys=Object.keys(fields);i<keys.length;++i){var responseName=keys[i],result=resolveField(exeContext,parentType,sourceValue,fields[responseName],addPath(path,responseName));void 0!==result&&(results[responseName]=result,!containsPromise&&(0,_isPromise.default)(result)&&(containsPromise=!0))}return containsPromise?(0,_promiseForObject.default)(results):results}function collectFields(exeContext,runtimeType,selectionSet,fields,visitedFragmentNames){for(var i=0;i<selectionSet.selections.length;i++){var selection=selectionSet.selections[i];switch(selection.kind){case _kinds.Kind.FIELD:if(!shouldIncludeNode(exeContext,selection))continue;var name=(node=selection).alias?node.alias.value:node.name.value;fields[name]||(fields[name]=[]),fields[name].push(selection);break;case _kinds.Kind.INLINE_FRAGMENT:if(!shouldIncludeNode(exeContext,selection)||!doesFragmentConditionMatch(exeContext,selection,runtimeType))continue;collectFields(exeContext,runtimeType,selection.selectionSet,fields,visitedFragmentNames);break;case _kinds.Kind.FRAGMENT_SPREAD:var fragName=selection.name.value;if(visitedFragmentNames[fragName]||!shouldIncludeNode(exeContext,selection))continue;visitedFragmentNames[fragName]=!0;var fragment=exeContext.fragments[fragName];if(!fragment||!doesFragmentConditionMatch(exeContext,fragment,runtimeType))continue;collectFields(exeContext,runtimeType,fragment.selectionSet,fields,visitedFragmentNames)}}var node;return fields}function shouldIncludeNode(exeContext,node){var skip=(0,_values.getDirectiveValues)(_directives.GraphQLSkipDirective,node,exeContext.variableValues);if(skip&&!0===skip.if)return!1;var include=(0,_values.getDirectiveValues)(_directives.GraphQLIncludeDirective,node,exeContext.variableValues);return!include||!1!==include.if}function doesFragmentConditionMatch(exeContext,fragment,type){var typeConditionNode=fragment.typeCondition;if(!typeConditionNode)return!0;var conditionalType=(0,_typeFromAST.typeFromAST)(exeContext.schema,typeConditionNode);return conditionalType===type||!!(0,_definition.isAbstractType)(conditionalType)&&exeContext.schema.isPossibleType(conditionalType,type)}function resolveField(exeContext,parentType,source,fieldNodes,path){var fieldName=fieldNodes[0].name.value,fieldDef=getFieldDef(exeContext.schema,parentType,fieldName);if(fieldDef){var resolveFn=fieldDef.resolve||exeContext.fieldResolver,info=buildResolveInfo(exeContext,fieldDef,fieldNodes,parentType,path),result=resolveFieldValueOrError(exeContext,fieldDef,fieldNodes,resolveFn,source,info);return completeValueCatchingError(exeContext,fieldDef.type,fieldNodes,info,path,result)}}function buildResolveInfo(exeContext,fieldDef,fieldNodes,parentType,path){return{fieldName:fieldDef.name,fieldNodes:fieldNodes,returnType:fieldDef.type,parentType:parentType,path:path,schema:exeContext.schema,fragments:exeContext.fragments,rootValue:exeContext.rootValue,operation:exeContext.operation,variableValues:exeContext.variableValues}}function resolveFieldValueOrError(exeContext,fieldDef,fieldNodes,resolveFn,source,info){try{var result=resolveFn(source,(0,_values.getArgumentValues)(fieldDef,fieldNodes[0],exeContext.variableValues),exeContext.contextValue,info);return(0,_isPromise.default)(result)?result.then(void 0,asErrorInstance):result}catch(error){return asErrorInstance(error)}}function asErrorInstance(error){return error instanceof Error?error:new Error("Unexpected error value: "+(0,_inspect.default)(error))}function completeValueCatchingError(exeContext,returnType,fieldNodes,info,path,result){try{var completed;return completed=(0,_isPromise.default)(result)?result.then(function(resolved){return completeValue(exeContext,returnType,fieldNodes,info,path,resolved)}):completeValue(exeContext,returnType,fieldNodes,info,path,result),(0,_isPromise.default)(completed)?completed.then(void 0,function(error){return handleFieldError(error,fieldNodes,path,returnType,exeContext)}):completed}catch(error){return handleFieldError(error,fieldNodes,path,returnType,exeContext)}}function handleFieldError(rawError,fieldNodes,path,returnType,exeContext){var error=(0,_locatedError.locatedError)(asErrorInstance(rawError),fieldNodes,responsePathAsArray(path));if((0,_definition.isNonNullType)(returnType))throw error;return exeContext.errors.push(error),null}function completeValue(exeContext,returnType,fieldNodes,info,path,result){if(result instanceof Error)throw result;if((0,_definition.isNonNullType)(returnType)){var completed=completeValue(exeContext,returnType.ofType,fieldNodes,info,path,result);if(null===completed)throw new Error("Cannot return null for non-nullable field ".concat(info.parentType.name,".").concat(info.fieldName,"."));return completed}if((0,_isNullish.default)(result))return null;if((0,_definition.isListType)(returnType))return function(exeContext,returnType,fieldNodes,info,path,result){(0,_iterall.isCollection)(result)||(0,_invariant.default)(0,"Expected Iterable, but did not find one for field ".concat(info.parentType.name,".").concat(info.fieldName,"."));var itemType=returnType.ofType,containsPromise=!1,completedResults=[];return(0,_iterall.forEach)(result,function(item,index){var fieldPath=addPath(path,index),completedItem=completeValueCatchingError(exeContext,itemType,fieldNodes,info,fieldPath,item);!containsPromise&&(0,_isPromise.default)(completedItem)&&(containsPromise=!0),completedResults.push(completedItem)}),containsPromise?Promise.all(completedResults):completedResults}(exeContext,returnType,fieldNodes,info,path,result);if((0,_definition.isLeafType)(returnType))return function(returnType,result){returnType.serialize||(0,_invariant.default)(0,"Missing serialize method on type");var serializedResult=returnType.serialize(result);if((0,_isInvalid.default)(serializedResult))throw new Error('Expected a value of type "'.concat((0,_inspect.default)(returnType),'" but ')+"received: ".concat((0,_inspect.default)(result)));return serializedResult}(returnType,result);if((0,_definition.isAbstractType)(returnType))return function(exeContext,returnType,fieldNodes,info,path,result){var resolveTypeFn=returnType.resolveType||exeContext.typeResolver,contextValue=exeContext.contextValue,runtimeType=resolveTypeFn(result,contextValue,info,returnType);if((0,_isPromise.default)(runtimeType))return runtimeType.then(function(resolvedRuntimeType){return completeObjectValue(exeContext,ensureValidRuntimeType(resolvedRuntimeType,exeContext,returnType,fieldNodes,info,result),fieldNodes,info,path,result)});return completeObjectValue(exeContext,ensureValidRuntimeType(runtimeType,exeContext,returnType,fieldNodes,info,result),fieldNodes,info,path,result)}(exeContext,returnType,fieldNodes,info,path,result);if((0,_definition.isObjectType)(returnType))return completeObjectValue(exeContext,returnType,fieldNodes,info,path,result);throw new Error('Cannot complete value of unexpected output type: "'.concat((0,_inspect.default)(returnType),'".'))}function ensureValidRuntimeType(runtimeTypeOrName,exeContext,returnType,fieldNodes,info,result){var runtimeType="string"==typeof runtimeTypeOrName?exeContext.schema.getType(runtimeTypeOrName):runtimeTypeOrName;if(!(0,_definition.isObjectType)(runtimeType))throw new _GraphQLError.GraphQLError("Abstract type ".concat(returnType.name," must resolve to an Object type at ")+"runtime for field ".concat(info.parentType.name,".").concat(info.fieldName," with ")+"value ".concat((0,_inspect.default)(result),', received "').concat((0,_inspect.default)(runtimeType),'". ')+"Either the ".concat(returnType.name,' type should provide a "resolveType" ')+'function or each possible type should provide an "isTypeOf" function.',fieldNodes);if(!exeContext.schema.isPossibleType(returnType,runtimeType))throw new _GraphQLError.GraphQLError('Runtime Object type "'.concat(runtimeType.name,'" is not a possible type ')+'for "'.concat(returnType.name,'".'),fieldNodes);return runtimeType}function completeObjectValue(exeContext,returnType,fieldNodes,info,path,result){if(returnType.isTypeOf){var isTypeOf=returnType.isTypeOf(result,exeContext.contextValue,info);if((0,_isPromise.default)(isTypeOf))return isTypeOf.then(function(resolvedIsTypeOf){if(!resolvedIsTypeOf)throw invalidReturnTypeError(returnType,result,fieldNodes);return collectAndExecuteSubfields(exeContext,returnType,fieldNodes,path,result)});if(!isTypeOf)throw invalidReturnTypeError(returnType,result,fieldNodes)}return collectAndExecuteSubfields(exeContext,returnType,fieldNodes,path,result)}function invalidReturnTypeError(returnType,result,fieldNodes){return new _GraphQLError.GraphQLError('Expected value of type "'.concat(returnType.name,'" but got: ').concat((0,_inspect.default)(result),"."),fieldNodes)}function collectAndExecuteSubfields(exeContext,returnType,fieldNodes,path,result){return executeFields(exeContext,returnType,result,path,collectSubfields(exeContext,returnType,fieldNodes))}var collectSubfields=(0,_memoize.default)(function(exeContext,returnType,fieldNodes){for(var subFieldNodes=Object.create(null),visitedFragmentNames=Object.create(null),i=0;i<fieldNodes.length;i++){var selectionSet=fieldNodes[i].selectionSet;selectionSet&&(subFieldNodes=collectFields(exeContext,returnType,selectionSet,subFieldNodes,visitedFragmentNames))}return subFieldNodes});var defaultTypeResolver=function(value,contextValue,info,abstractType){if(null!==value&&"object"===_typeof(value)&&"string"==typeof value.__typename)return value.__typename;for(var possibleTypes=info.schema.getPossibleTypes(abstractType),promisedIsTypeOfResults=[],i=0;i<possibleTypes.length;i++){var type=possibleTypes[i];if(type.isTypeOf){var isTypeOfResult=type.isTypeOf(value,contextValue,info);if((0,_isPromise.default)(isTypeOfResult))promisedIsTypeOfResults[i]=isTypeOfResult;else if(isTypeOfResult)return type}}return promisedIsTypeOfResults.length?Promise.all(promisedIsTypeOfResults).then(function(isTypeOfResults){for(var _i=0;_i<isTypeOfResults.length;_i++)if(isTypeOfResults[_i])return possibleTypes[_i]}):void 0};exports.defaultTypeResolver=defaultTypeResolver;var defaultFieldResolver=function(source,args,contextValue,info){if("object"===_typeof(source)||"function"==typeof source){var property=source[info.fieldName];return"function"==typeof property?source[info.fieldName](args,contextValue,info):property}};function getFieldDef(schema,parentType,fieldName){return fieldName===_introspection.SchemaMetaFieldDef.name&&schema.getQueryType()===parentType?_introspection.SchemaMetaFieldDef:fieldName===_introspection.TypeMetaFieldDef.name&&schema.getQueryType()===parentType?_introspection.TypeMetaFieldDef:fieldName===_introspection.TypeNameMetaFieldDef.name?_introspection.TypeNameMetaFieldDef:parentType.getFields()[fieldName]}exports.defaultFieldResolver=defaultFieldResolver},{"../error/GraphQLError":18,"../error/locatedError":21,"../jsutils/inspect":31,"../jsutils/invariant":33,"../jsutils/isInvalid":34,"../jsutils/isNullish":35,"../jsutils/isPromise":36,"../jsutils/memoize3":40,"../jsutils/promiseForObject":43,"../jsutils/promiseReduce":44,"../language/kinds":50,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/validate":73,"../utilities/getOperationRootType":85,"../utilities/typeFromAST":96,"./values":26,iterall:136}],25:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"execute",{enumerable:!0,get:function(){return _execute.execute}}),Object.defineProperty(exports,"defaultFieldResolver",{enumerable:!0,get:function(){return _execute.defaultFieldResolver}}),Object.defineProperty(exports,"defaultTypeResolver",{enumerable:!0,get:function(){return _execute.defaultTypeResolver}}),Object.defineProperty(exports,"responsePathAsArray",{enumerable:!0,get:function(){return _execute.responsePathAsArray}}),Object.defineProperty(exports,"getDirectiveValues",{enumerable:!0,get:function(){return _values.getDirectiveValues}});var _execute=require("./execute"),_values=require("./values")},{"./execute":24,"./values":26}],26:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getVariableValues=function(schema,varDefNodes,inputs){for(var errors=[],coercedValues={},i=0;i<varDefNodes.length;i++){var varDefNode=varDefNodes[i],varName=varDefNode.variable.name.value,varType=(0,_typeFromAST.typeFromAST)(schema,varDefNode.type);if((0,_definition.isInputType)(varType)){var hasValue=hasOwnProperty(inputs,varName),value=hasValue?inputs[varName]:void 0;if(!hasValue&&varDefNode.defaultValue)coercedValues[varName]=(0,_valueFromAST.valueFromAST)(varDefNode.defaultValue,varType);else if(hasValue&&null!==value||!(0,_definition.isNonNullType)(varType)){if(hasValue)if(null===value)coercedValues[varName]=null;else{var coerced=(0,_coerceValue.coerceValue)(value,varType,varDefNode),coercionErrors=coerced.errors;if(coercionErrors){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=coercionErrors[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var error=_step.value;error.message='Variable "$'.concat(varName,'" got invalid value ').concat((0,_inspect.default)(value),"; ")+error.message}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}errors.push.apply(errors,coercionErrors)}else coercedValues[varName]=coerced.value}}else errors.push(new _GraphQLError.GraphQLError(hasValue?'Variable "$'.concat(varName,'" of non-null type ')+'"'.concat((0,_inspect.default)(varType),'" must not be null.'):'Variable "$'.concat(varName,'" of required type ')+'"'.concat((0,_inspect.default)(varType),'" was not provided.'),varDefNode))}else errors.push(new _GraphQLError.GraphQLError('Variable "$'.concat(varName,'" expected value of type ')+'"'.concat((0,_printer.print)(varDefNode.type),'" which cannot be used as an input type.'),varDefNode.type))}return 0===errors.length?{errors:void 0,coerced:coercedValues}:{errors:errors,coerced:void 0}},exports.getArgumentValues=getArgumentValues,exports.getDirectiveValues=function(directiveDef,node,variableValues){var directiveNode=node.directives&&(0,_find.default)(node.directives,function(directive){return directive.name.value===directiveDef.name});if(directiveNode)return getArgumentValues(directiveDef,directiveNode,variableValues)};var _find=_interopRequireDefault(require("../polyfills/find")),_GraphQLError=require("../error/GraphQLError"),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_keyMap=_interopRequireDefault(require("../jsutils/keyMap")),_coerceValue=require("../utilities/coerceValue"),_typeFromAST=require("../utilities/typeFromAST"),_valueFromAST=require("../utilities/valueFromAST"),_kinds=require("../language/kinds"),_printer=require("../language/printer"),_definition=require("../type/definition");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function getArgumentValues(def,node,variableValues){var coercedValues={},argDefs=def.args,argNodes=node.arguments;if(!argDefs||!argNodes)return coercedValues;for(var argNodeMap=(0,_keyMap.default)(argNodes,function(arg){return arg.name.value}),i=0;i<argDefs.length;i++){var argDef=argDefs[i],name=argDef.name,argType=argDef.type,argumentNode=argNodeMap[name],hasValue=void 0,isNull=void 0;if(argumentNode&&argumentNode.value.kind===_kinds.Kind.VARIABLE){var variableName=argumentNode.value.name.value;hasValue=null!=variableValues&&hasOwnProperty(variableValues,variableName),isNull=null!=variableValues&&null===variableValues[variableName]}else isNull=(hasValue=null!=argumentNode)&&argumentNode.value.kind===_kinds.Kind.NULL;if(hasValue||void 0===argDef.defaultValue){if((!hasValue||isNull)&&(0,_definition.isNonNullType)(argType)){if(isNull)throw new _GraphQLError.GraphQLError('Argument "'.concat(name,'" of non-null type "').concat((0,_inspect.default)(argType),'" ')+"must not be null.",argumentNode.value);if(argumentNode&&argumentNode.value.kind===_kinds.Kind.VARIABLE){var _variableName=argumentNode.value.name.value;throw new _GraphQLError.GraphQLError('Argument "'.concat(name,'" of required type "').concat((0,_inspect.default)(argType),'" ')+'was provided the variable "$'.concat(_variableName,'" ')+"which was not provided a runtime value.",argumentNode.value)}throw new _GraphQLError.GraphQLError('Argument "'.concat(name,'" of required type "').concat((0,_inspect.default)(argType),'" ')+"was not provided.",node)}if(hasValue)if(argumentNode.value.kind===_kinds.Kind.NULL)coercedValues[name]=null;else if(argumentNode.value.kind===_kinds.Kind.VARIABLE){var _variableName2=argumentNode.value.name.value;variableValues||(0,_invariant.default)(0,"Must exist for hasValue to be true."),coercedValues[name]=variableValues[_variableName2]}else{var valueNode=argumentNode.value,coercedValue=(0,_valueFromAST.valueFromAST)(valueNode,argType,variableValues);if(void 0===coercedValue)throw new _GraphQLError.GraphQLError('Argument "'.concat(name,'" has invalid value ').concat((0,_printer.print)(valueNode),"."),argumentNode.value);coercedValues[name]=coercedValue}}else coercedValues[name]=argDef.defaultValue}return coercedValues}function hasOwnProperty(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop)}},{"../error/GraphQLError":18,"../jsutils/inspect":31,"../jsutils/invariant":33,"../jsutils/keyMap":37,"../language/kinds":50,"../language/printer":55,"../polyfills/find":58,"../type/definition":67,"../utilities/coerceValue":79,"../utilities/typeFromAST":96,"../utilities/valueFromAST":97}],27:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.graphql=function(argsOrSchema,source,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver){var _arguments=arguments;return new Promise(function(resolve){return resolve(1===_arguments.length?graphqlImpl(argsOrSchema.schema,argsOrSchema.source,argsOrSchema.rootValue,argsOrSchema.contextValue,argsOrSchema.variableValues,argsOrSchema.operationName,argsOrSchema.fieldResolver,argsOrSchema.typeResolver):graphqlImpl(argsOrSchema,source,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver))})},exports.graphqlSync=function(argsOrSchema,source,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver){var result=1===arguments.length?graphqlImpl(argsOrSchema.schema,argsOrSchema.source,argsOrSchema.rootValue,argsOrSchema.contextValue,argsOrSchema.variableValues,argsOrSchema.operationName,argsOrSchema.fieldResolver,argsOrSchema.typeResolver):graphqlImpl(argsOrSchema,source,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver);if((0,_isPromise.default)(result))throw new Error("GraphQL execution failed to complete synchronously.");return result};var obj,_isPromise=(obj=require("./jsutils/isPromise"))&&obj.__esModule?obj:{default:obj},_validate=require("./type/validate"),_parser=require("./language/parser"),_validate2=require("./validation/validate"),_execute=require("./execution/execute");function graphqlImpl(schema,source,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver){var document,schemaValidationErrors=(0,_validate.validateSchema)(schema);if(0<schemaValidationErrors.length)return{errors:schemaValidationErrors};try{document=(0,_parser.parse)(source)}catch(syntaxError){return{errors:[syntaxError]}}var validationErrors=(0,_validate2.validate)(schema,document);return 0<validationErrors.length?{errors:validationErrors}:(0,_execute.execute)(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,typeResolver)}},{"./execution/execute":24,"./jsutils/isPromise":36,"./language/parser":53,"./type/validate":73,"./validation/validate":135}],28:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"graphql",{enumerable:!0,get:function(){return _graphql.graphql}}),Object.defineProperty(exports,"graphqlSync",{enumerable:!0,get:function(){return _graphql.graphqlSync}}),Object.defineProperty(exports,"GraphQLSchema",{enumerable:!0,get:function(){return _type.GraphQLSchema}}),Object.defineProperty(exports,"GraphQLDirective",{enumerable:!0,get:function(){return _type.GraphQLDirective}}),Object.defineProperty(exports,"GraphQLScalarType",{enumerable:!0,get:function(){return _type.GraphQLScalarType}}),Object.defineProperty(exports,"GraphQLObjectType",{enumerable:!0,get:function(){return _type.GraphQLObjectType}}),Object.defineProperty(exports,"GraphQLInterfaceType",{enumerable:!0,get:function(){return _type.GraphQLInterfaceType}}),Object.defineProperty(exports,"GraphQLUnionType",{enumerable:!0,get:function(){return _type.GraphQLUnionType}}),Object.defineProperty(exports,"GraphQLEnumType",{enumerable:!0,get:function(){return _type.GraphQLEnumType}}),Object.defineProperty(exports,"GraphQLInputObjectType",{enumerable:!0,get:function(){return _type.GraphQLInputObjectType}}),Object.defineProperty(exports,"GraphQLList",{enumerable:!0,get:function(){return _type.GraphQLList}}),Object.defineProperty(exports,"GraphQLNonNull",{enumerable:!0,get:function(){return _type.GraphQLNonNull}}),Object.defineProperty(exports,"specifiedScalarTypes",{enumerable:!0,get:function(){return _type.specifiedScalarTypes}}),Object.defineProperty(exports,"GraphQLInt",{enumerable:!0,get:function(){return _type.GraphQLInt}}),Object.defineProperty(exports,"GraphQLFloat",{enumerable:!0,get:function(){return _type.GraphQLFloat}}),Object.defineProperty(exports,"GraphQLString",{enumerable:!0,get:function(){return _type.GraphQLString}}),Object.defineProperty(exports,"GraphQLBoolean",{enumerable:!0,get:function(){return _type.GraphQLBoolean}}),Object.defineProperty(exports,"GraphQLID",{enumerable:!0,get:function(){return _type.GraphQLID}}),Object.defineProperty(exports,"specifiedDirectives",{enumerable:!0,get:function(){return _type.specifiedDirectives}}),Object.defineProperty(exports,"GraphQLIncludeDirective",{enumerable:!0,get:function(){return _type.GraphQLIncludeDirective}}),Object.defineProperty(exports,"GraphQLSkipDirective",{enumerable:!0,get:function(){return _type.GraphQLSkipDirective}}),Object.defineProperty(exports,"GraphQLDeprecatedDirective",{enumerable:!0,get:function(){return _type.GraphQLDeprecatedDirective}}),Object.defineProperty(exports,"TypeKind",{enumerable:!0,get:function(){return _type.TypeKind}}),Object.defineProperty(exports,"DEFAULT_DEPRECATION_REASON",{enumerable:!0,get:function(){return _type.DEFAULT_DEPRECATION_REASON}}),Object.defineProperty(exports,"introspectionTypes",{enumerable:!0,get:function(){return _type.introspectionTypes}}),Object.defineProperty(exports,"__Schema",{enumerable:!0,get:function(){return _type.__Schema}}),Object.defineProperty(exports,"__Directive",{enumerable:!0,get:function(){return _type.__Directive}}),Object.defineProperty(exports,"__DirectiveLocation",{enumerable:!0,get:function(){return _type.__DirectiveLocation}}),Object.defineProperty(exports,"__Type",{enumerable:!0,get:function(){return _type.__Type}}),Object.defineProperty(exports,"__Field",{enumerable:!0,get:function(){return _type.__Field}}),Object.defineProperty(exports,"__InputValue",{enumerable:!0,get:function(){return _type.__InputValue}}),Object.defineProperty(exports,"__EnumValue",{enumerable:!0,get:function(){return _type.__EnumValue}}),Object.defineProperty(exports,"__TypeKind",{enumerable:!0,get:function(){return _type.__TypeKind}}),Object.defineProperty(exports,"SchemaMetaFieldDef",{enumerable:!0,get:function(){return _type.SchemaMetaFieldDef}}),Object.defineProperty(exports,"TypeMetaFieldDef",{enumerable:!0,get:function(){return _type.TypeMetaFieldDef}}),Object.defineProperty(exports,"TypeNameMetaFieldDef",{enumerable:!0,get:function(){return _type.TypeNameMetaFieldDef}}),Object.defineProperty(exports,"isSchema",{enumerable:!0,get:function(){return _type.isSchema}}),Object.defineProperty(exports,"isDirective",{enumerable:!0,get:function(){return _type.isDirective}}),Object.defineProperty(exports,"isType",{enumerable:!0,get:function(){return _type.isType}}),Object.defineProperty(exports,"isScalarType",{enumerable:!0,get:function(){return _type.isScalarType}}),Object.defineProperty(exports,"isObjectType",{enumerable:!0,get:function(){return _type.isObjectType}}),Object.defineProperty(exports,"isInterfaceType",{enumerable:!0,get:function(){return _type.isInterfaceType}}),Object.defineProperty(exports,"isUnionType",{enumerable:!0,get:function(){return _type.isUnionType}}),Object.defineProperty(exports,"isEnumType",{enumerable:!0,get:function(){return _type.isEnumType}}),Object.defineProperty(exports,"isInputObjectType",{enumerable:!0,get:function(){return _type.isInputObjectType}}),Object.defineProperty(exports,"isListType",{enumerable:!0,get:function(){return _type.isListType}}),Object.defineProperty(exports,"isNonNullType",{enumerable:!0,get:function(){return _type.isNonNullType}}),Object.defineProperty(exports,"isInputType",{enumerable:!0,get:function(){return _type.isInputType}}),Object.defineProperty(exports,"isOutputType",{enumerable:!0,get:function(){return _type.isOutputType}}),Object.defineProperty(exports,"isLeafType",{enumerable:!0,get:function(){return _type.isLeafType}}),Object.defineProperty(exports,"isCompositeType",{enumerable:!0,get:function(){return _type.isCompositeType}}),Object.defineProperty(exports,"isAbstractType",{enumerable:!0,get:function(){return _type.isAbstractType}}),Object.defineProperty(exports,"isWrappingType",{enumerable:!0,get:function(){return _type.isWrappingType}}),Object.defineProperty(exports,"isNullableType",{enumerable:!0,get:function(){return _type.isNullableType}}),Object.defineProperty(exports,"isNamedType",{enumerable:!0,get:function(){return _type.isNamedType}}),Object.defineProperty(exports,"isRequiredArgument",{enumerable:!0,get:function(){return _type.isRequiredArgument}}),Object.defineProperty(exports,"isRequiredInputField",{enumerable:!0,get:function(){return _type.isRequiredInputField}}),Object.defineProperty(exports,"isSpecifiedScalarType",{enumerable:!0,get:function(){return _type.isSpecifiedScalarType}}),Object.defineProperty(exports,"isIntrospectionType",{enumerable:!0,get:function(){return _type.isIntrospectionType}}),Object.defineProperty(exports,"isSpecifiedDirective",{enumerable:!0,get:function(){return _type.isSpecifiedDirective}}),Object.defineProperty(exports,"assertSchema",{enumerable:!0,get:function(){return _type.assertSchema}}),Object.defineProperty(exports,"assertDirective",{enumerable:!0,get:function(){return _type.assertDirective}}),Object.defineProperty(exports,"assertType",{enumerable:!0,get:function(){return _type.assertType}}),Object.defineProperty(exports,"assertScalarType",{enumerable:!0,get:function(){return _type.assertScalarType}}),Object.defineProperty(exports,"assertObjectType",{enumerable:!0,get:function(){return _type.assertObjectType}}),Object.defineProperty(exports,"assertInterfaceType",{enumerable:!0,get:function(){return _type.assertInterfaceType}}),Object.defineProperty(exports,"assertUnionType",{enumerable:!0,get:function(){return _type.assertUnionType}}),Object.defineProperty(exports,"assertEnumType",{enumerable:!0,get:function(){return _type.assertEnumType}}),Object.defineProperty(exports,"assertInputObjectType",{enumerable:!0,get:function(){return _type.assertInputObjectType}}),Object.defineProperty(exports,"assertListType",{enumerable:!0,get:function(){return _type.assertListType}}),Object.defineProperty(exports,"assertNonNullType",{enumerable:!0,get:function(){return _type.assertNonNullType}}),Object.defineProperty(exports,"assertInputType",{enumerable:!0,get:function(){return _type.assertInputType}}),Object.defineProperty(exports,"assertOutputType",{enumerable:!0,get:function(){return _type.assertOutputType}}),Object.defineProperty(exports,"assertLeafType",{enumerable:!0,get:function(){return _type.assertLeafType}}),Object.defineProperty(exports,"assertCompositeType",{enumerable:!0,get:function(){return _type.assertCompositeType}}),Object.defineProperty(exports,"assertAbstractType",{enumerable:!0,get:function(){return _type.assertAbstractType}}),Object.defineProperty(exports,"assertWrappingType",{enumerable:!0,get:function(){return _type.assertWrappingType}}),Object.defineProperty(exports,"assertNullableType",{enumerable:!0,get:function(){return _type.assertNullableType}}),Object.defineProperty(exports,"assertNamedType",{enumerable:!0,get:function(){return _type.assertNamedType}}),Object.defineProperty(exports,"getNullableType",{enumerable:!0,get:function(){return _type.getNullableType}}),Object.defineProperty(exports,"getNamedType",{enumerable:!0,get:function(){return _type.getNamedType}}),Object.defineProperty(exports,"validateSchema",{enumerable:!0,get:function(){return _type.validateSchema}}),Object.defineProperty(exports,"assertValidSchema",{enumerable:!0,get:function(){return _type.assertValidSchema}}),Object.defineProperty(exports,"Source",{enumerable:!0,get:function(){return _language.Source}}),Object.defineProperty(exports,"getLocation",{enumerable:!0,get:function(){return _language.getLocation}}),Object.defineProperty(exports,"createLexer",{enumerable:!0,get:function(){return _language.createLexer}}),Object.defineProperty(exports,"TokenKind",{enumerable:!0,get:function(){return _language.TokenKind}}),Object.defineProperty(exports,"parse",{enumerable:!0,get:function(){return _language.parse}}),Object.defineProperty(exports,"parseValue",{enumerable:!0,get:function(){return _language.parseValue}}),Object.defineProperty(exports,"parseType",{enumerable:!0,get:function(){return _language.parseType}}),Object.defineProperty(exports,"print",{enumerable:!0,get:function(){return _language.print}}),Object.defineProperty(exports,"visit",{enumerable:!0,get:function(){return _language.visit}}),Object.defineProperty(exports,"visitInParallel",{enumerable:!0,get:function(){return _language.visitInParallel}}),Object.defineProperty(exports,"visitWithTypeInfo",{enumerable:!0,get:function(){return _language.visitWithTypeInfo}}),Object.defineProperty(exports,"getVisitFn",{enumerable:!0,get:function(){return _language.getVisitFn}}),Object.defineProperty(exports,"BREAK",{enumerable:!0,get:function(){return _language.BREAK}}),Object.defineProperty(exports,"Kind",{enumerable:!0,get:function(){return _language.Kind}}),Object.defineProperty(exports,"DirectiveLocation",{enumerable:!0,get:function(){return _language.DirectiveLocation}}),Object.defineProperty(exports,"isDefinitionNode",{enumerable:!0,get:function(){return _language.isDefinitionNode}}),Object.defineProperty(exports,"isExecutableDefinitionNode",{enumerable:!0,get:function(){return _language.isExecutableDefinitionNode}}),Object.defineProperty(exports,"isSelectionNode",{enumerable:!0,get:function(){return _language.isSelectionNode}}),Object.defineProperty(exports,"isValueNode",{enumerable:!0,get:function(){return _language.isValueNode}}),Object.defineProperty(exports,"isTypeNode",{enumerable:!0,get:function(){return _language.isTypeNode}}),Object.defineProperty(exports,"isTypeSystemDefinitionNode",{enumerable:!0,get:function(){return _language.isTypeSystemDefinitionNode}}),Object.defineProperty(exports,"isTypeDefinitionNode",{enumerable:!0,get:function(){return _language.isTypeDefinitionNode}}),Object.defineProperty(exports,"isTypeSystemExtensionNode",{enumerable:!0,get:function(){return _language.isTypeSystemExtensionNode}}),Object.defineProperty(exports,"isTypeExtensionNode",{enumerable:!0,get:function(){return _language.isTypeExtensionNode}}),Object.defineProperty(exports,"execute",{enumerable:!0,get:function(){return _execution.execute}}),Object.defineProperty(exports,"defaultFieldResolver",{enumerable:!0,get:function(){return _execution.defaultFieldResolver}}),Object.defineProperty(exports,"defaultTypeResolver",{enumerable:!0,get:function(){return _execution.defaultTypeResolver}}),Object.defineProperty(exports,"responsePathAsArray",{enumerable:!0,get:function(){return _execution.responsePathAsArray}}),Object.defineProperty(exports,"getDirectiveValues",{enumerable:!0,get:function(){return _execution.getDirectiveValues}}),Object.defineProperty(exports,"subscribe",{enumerable:!0,get:function(){return _subscription.subscribe}}),Object.defineProperty(exports,"createSourceEventStream",{enumerable:!0,get:function(){return _subscription.createSourceEventStream}}),Object.defineProperty(exports,"validate",{enumerable:!0,get:function(){return _validation.validate}}),Object.defineProperty(exports,"ValidationContext",{enumerable:!0,get:function(){return _validation.ValidationContext}}),Object.defineProperty(exports,"specifiedRules",{enumerable:!0,get:function(){return _validation.specifiedRules}}),Object.defineProperty(exports,"FieldsOnCorrectTypeRule",{enumerable:!0,get:function(){return _validation.FieldsOnCorrectTypeRule}}),Object.defineProperty(exports,"FragmentsOnCompositeTypesRule",{enumerable:!0,get:function(){return _validation.FragmentsOnCompositeTypesRule}}),Object.defineProperty(exports,"KnownArgumentNamesRule",{enumerable:!0,get:function(){return _validation.KnownArgumentNamesRule}}),Object.defineProperty(exports,"KnownDirectivesRule",{enumerable:!0,get:function(){return _validation.KnownDirectivesRule}}),Object.defineProperty(exports,"KnownFragmentNamesRule",{enumerable:!0,get:function(){return _validation.KnownFragmentNamesRule}}),Object.defineProperty(exports,"KnownTypeNamesRule",{enumerable:!0,get:function(){return _validation.KnownTypeNamesRule}}),Object.defineProperty(exports,"LoneAnonymousOperationRule",{enumerable:!0,get:function(){return _validation.LoneAnonymousOperationRule}}),Object.defineProperty(exports,"NoFragmentCyclesRule",{enumerable:!0,get:function(){return _validation.NoFragmentCyclesRule}}),Object.defineProperty(exports,"NoUndefinedVariablesRule",{enumerable:!0,get:function(){return _validation.NoUndefinedVariablesRule}}),Object.defineProperty(exports,"NoUnusedFragmentsRule",{enumerable:!0,get:function(){return _validation.NoUnusedFragmentsRule}}),Object.defineProperty(exports,"NoUnusedVariablesRule",{enumerable:!0,get:function(){return _validation.NoUnusedVariablesRule}}),Object.defineProperty(exports,"OverlappingFieldsCanBeMergedRule",{enumerable:!0,get:function(){return _validation.OverlappingFieldsCanBeMergedRule}}),Object.defineProperty(exports,"PossibleFragmentSpreadsRule",{enumerable:!0,get:function(){return _validation.PossibleFragmentSpreadsRule}}),Object.defineProperty(exports,"ProvidedRequiredArgumentsRule",{enumerable:!0,get:function(){return _validation.ProvidedRequiredArgumentsRule}}),Object.defineProperty(exports,"ScalarLeafsRule",{enumerable:!0,get:function(){return _validation.ScalarLeafsRule}}),Object.defineProperty(exports,"SingleFieldSubscriptionsRule",{enumerable:!0,get:function(){return _validation.SingleFieldSubscriptionsRule}}),Object.defineProperty(exports,"UniqueArgumentNamesRule",{enumerable:!0,get:function(){return _validation.UniqueArgumentNamesRule}}),Object.defineProperty(exports,"UniqueDirectivesPerLocationRule",{enumerable:!0,get:function(){return _validation.UniqueDirectivesPerLocationRule}}),Object.defineProperty(exports,"UniqueFragmentNamesRule",{enumerable:!0,get:function(){return _validation.UniqueFragmentNamesRule}}),Object.defineProperty(exports,"UniqueInputFieldNamesRule",{enumerable:!0,get:function(){return _validation.UniqueInputFieldNamesRule}}),Object.defineProperty(exports,"UniqueOperationNamesRule",{enumerable:!0,get:function(){return _validation.UniqueOperationNamesRule}}),Object.defineProperty(exports,"UniqueVariableNamesRule",{enumerable:!0,get:function(){return _validation.UniqueVariableNamesRule}}),Object.defineProperty(exports,"ValuesOfCorrectTypeRule",{enumerable:!0,get:function(){return _validation.ValuesOfCorrectTypeRule}}),Object.defineProperty(exports,"VariablesAreInputTypesRule",{enumerable:!0,get:function(){return _validation.VariablesAreInputTypesRule}}),Object.defineProperty(exports,"VariablesInAllowedPositionRule",{enumerable:!0,get:function(){return _validation.VariablesInAllowedPositionRule}}),Object.defineProperty(exports,"GraphQLError",{enumerable:!0,get:function(){return _error.GraphQLError}}),Object.defineProperty(exports,"syntaxError",{enumerable:!0,get:function(){return _error.syntaxError}}),Object.defineProperty(exports,"locatedError",{enumerable:!0,get:function(){return _error.locatedError}}),Object.defineProperty(exports,"printError",{enumerable:!0,get:function(){return _error.printError}}),Object.defineProperty(exports,"formatError",{enumerable:!0,get:function(){return _error.formatError}}),Object.defineProperty(exports,"getIntrospectionQuery",{enumerable:!0,get:function(){return _utilities.getIntrospectionQuery}}),Object.defineProperty(exports,"introspectionQuery",{enumerable:!0,get:function(){return _utilities.introspectionQuery}}),Object.defineProperty(exports,"getOperationAST",{enumerable:!0,get:function(){return _utilities.getOperationAST}}),Object.defineProperty(exports,"getOperationRootType",{enumerable:!0,get:function(){return _utilities.getOperationRootType}}),Object.defineProperty(exports,"introspectionFromSchema",{enumerable:!0,get:function(){return _utilities.introspectionFromSchema}}),Object.defineProperty(exports,"buildClientSchema",{enumerable:!0,get:function(){return _utilities.buildClientSchema}}),Object.defineProperty(exports,"buildASTSchema",{enumerable:!0,get:function(){return _utilities.buildASTSchema}}),Object.defineProperty(exports,"buildSchema",{enumerable:!0,get:function(){return _utilities.buildSchema}}),Object.defineProperty(exports,"getDescription",{enumerable:!0,get:function(){return _utilities.getDescription}}),Object.defineProperty(exports,"extendSchema",{enumerable:!0,get:function(){return _utilities.extendSchema}}),Object.defineProperty(exports,"lexicographicSortSchema",{enumerable:!0,get:function(){return _utilities.lexicographicSortSchema}}),Object.defineProperty(exports,"printSchema",{enumerable:!0,get:function(){return _utilities.printSchema}}),Object.defineProperty(exports,"printType",{enumerable:!0,get:function(){return _utilities.printType}}),Object.defineProperty(exports,"printIntrospectionSchema",{enumerable:!0,get:function(){return _utilities.printIntrospectionSchema}}),Object.defineProperty(exports,"typeFromAST",{enumerable:!0,get:function(){return _utilities.typeFromAST}}),Object.defineProperty(exports,"valueFromAST",{enumerable:!0,get:function(){return _utilities.valueFromAST}}),Object.defineProperty(exports,"valueFromASTUntyped",{enumerable:!0,get:function(){return _utilities.valueFromASTUntyped}}),Object.defineProperty(exports,"astFromValue",{enumerable:!0,get:function(){return _utilities.astFromValue}}),Object.defineProperty(exports,"TypeInfo",{enumerable:!0,get:function(){return _utilities.TypeInfo}}),Object.defineProperty(exports,"coerceValue",{enumerable:!0,get:function(){return _utilities.coerceValue}}),Object.defineProperty(exports,"isValidJSValue",{enumerable:!0,get:function(){return _utilities.isValidJSValue}}),Object.defineProperty(exports,"isValidLiteralValue",{enumerable:!0,get:function(){return _utilities.isValidLiteralValue}}),Object.defineProperty(exports,"concatAST",{enumerable:!0,get:function(){return _utilities.concatAST}}),Object.defineProperty(exports,"separateOperations",{enumerable:!0,get:function(){return _utilities.separateOperations}}),Object.defineProperty(exports,"stripIgnoredCharacters",{enumerable:!0,get:function(){return _utilities.stripIgnoredCharacters}}),Object.defineProperty(exports,"isEqualType",{enumerable:!0,get:function(){return _utilities.isEqualType}}),Object.defineProperty(exports,"isTypeSubTypeOf",{enumerable:!0,get:function(){return _utilities.isTypeSubTypeOf}}),Object.defineProperty(exports,"doTypesOverlap",{enumerable:!0,get:function(){return _utilities.doTypesOverlap}}),Object.defineProperty(exports,"assertValidName",{enumerable:!0,get:function(){return _utilities.assertValidName}}),Object.defineProperty(exports,"isValidNameError",{enumerable:!0,get:function(){return _utilities.isValidNameError}}),Object.defineProperty(exports,"BreakingChangeType",{enumerable:!0,get:function(){return _utilities.BreakingChangeType}}),Object.defineProperty(exports,"DangerousChangeType",{enumerable:!0,get:function(){return _utilities.DangerousChangeType}}),Object.defineProperty(exports,"findBreakingChanges",{enumerable:!0,get:function(){return _utilities.findBreakingChanges}}),Object.defineProperty(exports,"findDangerousChanges",{enumerable:!0,get:function(){return _utilities.findDangerousChanges}}),Object.defineProperty(exports,"findDeprecatedUsages",{enumerable:!0,get:function(){return _utilities.findDeprecatedUsages}});var _graphql=require("./graphql"),_type=require("./type"),_language=require("./language"),_execution=require("./execution"),_subscription=require("./subscription"),_validation=require("./validation"),_error=require("./error"),_utilities=require("./utilities")},{"./error":20,"./execution":25,"./graphql":27,"./language":49,"./subscription":64,"./type":69,"./utilities":86,"./validation":100}],29:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(classObject){var fn=1<arguments.length&&void 0!==arguments[1]?arguments[1]:classObject.prototype.toString;classObject.prototype.toJSON=fn,classObject.prototype.inspect=fn,_nodejsCustomInspectSymbol.default&&(classObject.prototype[_nodejsCustomInspectSymbol.default]=fn)};var obj,_nodejsCustomInspectSymbol=(obj=require("./nodejsCustomInspectSymbol"))&&obj.__esModule?obj:{default:obj}},{"./nodejsCustomInspectSymbol":41}],30:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(classObject){"function"==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(classObject.prototype,Symbol.toStringTag,{get:function(){return this.constructor.name}})}},{}],31:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(value){return formatValue(value,[])};var obj,_nodejsCustomInspectSymbol=(obj=require("./nodejsCustomInspectSymbol"))&&obj.__esModule?obj:{default:obj};function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}var MAX_ARRAY_LENGTH=10,MAX_RECURSIVE_DEPTH=2;function formatValue(value,seenValues){switch(_typeof(value)){case"string":return JSON.stringify(value);case"function":return value.name?"[function ".concat(value.name,"]"):"[function]";case"object":return function(value,previouslySeenValues){if(-1!==previouslySeenValues.indexOf(value))return"[Circular]";var seenValues=[].concat(previouslySeenValues,[value]);if(value){var customInspectFn=function(object){var customInspectFn=object[String(_nodejsCustomInspectSymbol.default)];if("function"==typeof customInspectFn)return customInspectFn;if("function"==typeof object.inspect)return object.inspect}(value);if(void 0!==customInspectFn){var customValue=customInspectFn.call(value);if(customValue!==value)return"string"==typeof customValue?customValue:formatValue(customValue,seenValues)}else if(Array.isArray(value))return function(array,seenValues){if(0===array.length)return"[]";if(seenValues.length>MAX_RECURSIVE_DEPTH)return"[Array]";for(var len=Math.min(MAX_ARRAY_LENGTH,array.length),remaining=array.length-len,items=[],i=0;i<len;++i)items.push(formatValue(array[i],seenValues));1==remaining?items.push("... 1 more item"):1<remaining&&items.push("... ".concat(remaining," more items"));return"["+items.join(", ")+"]"}(value,seenValues);return function(object,seenValues){var keys=Object.keys(object);if(0===keys.length)return"{}";if(seenValues.length>MAX_RECURSIVE_DEPTH)return"["+function(object){var tag=Object.prototype.toString.call(object).replace(/^\[object /,"").replace(/]$/,"");if("Object"===tag&&"function"==typeof object.constructor){var name=object.constructor.name;if("string"==typeof name)return name}return tag}(object)+"]";return"{ "+keys.map(function(key){var value=formatValue(object[key],seenValues);return key+": "+value}).join(", ")+" }"}(value,seenValues)}return String(value)}(value,seenValues);default:return String(value)}}},{"./nodejsCustomInspectSymbol":41}],32:[function(require,module,exports){(function(process){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default="production"===process.env.NODE_ENV?function(value,constructor){return value instanceof constructor}:function(value,constructor){if(value instanceof constructor)return!0;if(value){var valueClass=value.constructor,className=constructor.name;if(className&&valueClass&&valueClass.name===className)throw new Error("Cannot use ".concat(className,' "').concat(value,'" from another module or realm.\n\nEnsure that there is only one instance of "graphql" in the node_modules\ndirectory. If different versions of "graphql" are the dependencies of other\nrelied on modules, use "resolutions" to ensure only one version is installed.\n\nhttps://yarnpkg.com/en/docs/selective-version-resolutions\n\nDuplicate "graphql" modules cannot be used at the same time since different\nversions may have different capabilities and behavior. The data from one\nversion used in the function from another could produce confusing and\nspurious results.'))}return!1};exports.default=_default}).call(this,require("_process"))},{_process:197}],33:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(condition,message){if(!Boolean(condition))throw new Error(message)}},{}],34:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(value){return void 0===value||value!=value}},{}],35:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(value){return null==value||value!=value}},{}],36:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(value){return Boolean(value&&"function"==typeof value.then)}},{}],37:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(list,keyFn){return list.reduce(function(map,item){return map[keyFn(item)]=item,map},Object.create(null))}},{}],38:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(list,keyFn,valFn){return list.reduce(function(map,item){return map[keyFn(item)]=valFn(item),map},Object.create(null))}},{}],39:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(map,fn){var result=Object.create(null),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(0,_objectEntries.default)(map)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var _ref2=_step.value,_key=_ref2[0],_value=_ref2[1];result[_key]=fn(_value,_key)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}return result};var obj,_objectEntries=(obj=require("../polyfills/objectEntries"))&&obj.__esModule?obj:{default:obj}},{"../polyfills/objectEntries":62}],40:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(fn){var cache0;return function(a1,a2,a3){cache0||(cache0=new WeakMap);var cache2,cache1=cache0.get(a1);if(cache1){if(cache2=cache1.get(a2)){var cachedValue=cache2.get(a3);if(void 0!==cachedValue)return cachedValue}}else cache1=new WeakMap,cache0.set(a1,cache1);cache2||(cache2=new WeakMap,cache1.set(a2,cache2));var newValue=fn(a1,a2,a3);return cache2.set(a3,newValue),newValue}}},{}],41:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default="function"==typeof Symbol?Symbol.for("nodejs.util.inspect.custom"):void 0;exports.default=_default},{}],42:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(items){if(0===items.length&&(0,_invariant.default)(0),1===items.length)return items[0];if(2===items.length)return items[0]+" or "+items[1];var selected=items.slice(0,MAX_LENGTH),lastItem=selected.pop();return selected.join(", ")+", or "+lastItem};var obj,_invariant=(obj=require("./invariant"))&&obj.__esModule?obj:{default:obj};var MAX_LENGTH=5},{"./invariant":33}],43:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(object){var keys=Object.keys(object),valuesAndPromises=keys.map(function(name){return object[name]});return Promise.all(valuesAndPromises).then(function(values){return values.reduce(function(resolvedObject,value,i){return resolvedObject[keys[i]]=value,resolvedObject},Object.create(null))})}},{}],44:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(values,callback,initialValue){return values.reduce(function(previous,value){return(0,_isPromise.default)(previous)?previous.then(function(resolved){return callback(resolved,value)}):callback(previous,value)},initialValue)};var obj,_isPromise=(obj=require("./isPromise"))&&obj.__esModule?obj:{default:obj}},{"./isPromise":36}],45:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(items){return(0,_orList.default)(items.map(function(item){return'"'.concat(item,'"')}))};var obj,_orList=(obj=require("./orList"))&&obj.__esModule?obj:{default:obj}},{"./orList":42}],46:[function(require,module,exports){"use strict";function lexicalDistance(aStr,bStr){if(aStr===bStr)return 0;var i,j,d=[],a=aStr.toLowerCase(),b=bStr.toLowerCase(),aLength=a.length,bLength=b.length;if(a===b)return 1;for(i=0;i<=aLength;i++)d[i]=[i];for(j=1;j<=bLength;j++)d[0][j]=j;for(i=1;i<=aLength;i++)for(j=1;j<=bLength;j++){var cost=a[i-1]===b[j-1]?0:1;d[i][j]=Math.min(d[i-1][j]+1,d[i][j-1]+1,d[i-1][j-1]+cost),1<i&&1<j&&a[i-1]===b[j-2]&&a[i-2]===b[j-1]&&(d[i][j]=Math.min(d[i][j],d[i-2][j-2]+cost))}return d[aLength][bLength]}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(input,options){for(var optionsByDistance=Object.create(null),oLength=options.length,inputThreshold=input.length/2,i=0;i<oLength;i++){var distance=lexicalDistance(input,options[i]),threshold=Math.max(inputThreshold,options[i].length/2,1);distance<=threshold&&(optionsByDistance[options[i]]=distance)}return Object.keys(optionsByDistance).sort(function(a,b){return optionsByDistance[a]-optionsByDistance[b]})}},{}],47:[function(require,module,exports){"use strict";function getBlockStringIndentation(lines){for(var commonIndent=null,i=1;i<lines.length;i++){var line=lines[i],indent=leadingWhitespace(line);if(indent!==line.length&&((null===commonIndent||indent<commonIndent)&&0===(commonIndent=indent)))break}return null===commonIndent?0:commonIndent}function leadingWhitespace(str){for(var i=0;i<str.length&&(" "===str[i]||"\t"===str[i]);)i++;return i}function isBlank(str){return leadingWhitespace(str)===str.length}Object.defineProperty(exports,"__esModule",{value:!0}),exports.dedentBlockStringValue=function(rawString){var lines=rawString.split(/\r\n|[\n\r]/g),commonIndent=getBlockStringIndentation(lines);if(0!==commonIndent)for(var i=1;i<lines.length;i++)lines[i]=lines[i].slice(commonIndent);for(;0<lines.length&&isBlank(lines[0]);)lines.shift();for(;0<lines.length&&isBlank(lines[lines.length-1]);)lines.pop();return lines.join("\n")},exports.getBlockStringIndentation=getBlockStringIndentation,exports.printBlockString=function(value){var indentation=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",preferMultipleLines=2<arguments.length&&void 0!==arguments[2]&&arguments[2],isSingleLine=-1===value.indexOf("\n"),hasLeadingSpace=" "===value[0]||"\t"===value[0],hasTrailingQuote='"'===value[value.length-1],printAsMultipleLines=!isSingleLine||hasTrailingQuote||preferMultipleLines,result="";!printAsMultipleLines||isSingleLine&&hasLeadingSpace||(result+="\n"+indentation);result+=indentation?value.replace(/\n/g,"\n"+indentation):value,printAsMultipleLines&&(result+="\n");return'"""'+result.replace(/"""/g,'\\"""')+'"""'}},{}],48:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DirectiveLocation=void 0;var DirectiveLocation=Object.freeze({QUERY:"QUERY",MUTATION:"MUTATION",SUBSCRIPTION:"SUBSCRIPTION",FIELD:"FIELD",FRAGMENT_DEFINITION:"FRAGMENT_DEFINITION",FRAGMENT_SPREAD:"FRAGMENT_SPREAD",INLINE_FRAGMENT:"INLINE_FRAGMENT",VARIABLE_DEFINITION:"VARIABLE_DEFINITION",SCHEMA:"SCHEMA",SCALAR:"SCALAR",OBJECT:"OBJECT",FIELD_DEFINITION:"FIELD_DEFINITION",ARGUMENT_DEFINITION:"ARGUMENT_DEFINITION",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",ENUM_VALUE:"ENUM_VALUE",INPUT_OBJECT:"INPUT_OBJECT",INPUT_FIELD_DEFINITION:"INPUT_FIELD_DEFINITION"});exports.DirectiveLocation=DirectiveLocation},{}],49:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"Source",{enumerable:!0,get:function(){return _source.Source}}),Object.defineProperty(exports,"getLocation",{enumerable:!0,get:function(){return _location.getLocation}}),Object.defineProperty(exports,"Kind",{enumerable:!0,get:function(){return _kinds.Kind}}),Object.defineProperty(exports,"createLexer",{enumerable:!0,get:function(){return _lexer.createLexer}}),Object.defineProperty(exports,"TokenKind",{enumerable:!0,get:function(){return _lexer.TokenKind}}),Object.defineProperty(exports,"parse",{enumerable:!0,get:function(){return _parser.parse}}),Object.defineProperty(exports,"parseValue",{enumerable:!0,get:function(){return _parser.parseValue}}),Object.defineProperty(exports,"parseType",{enumerable:!0,get:function(){return _parser.parseType}}),Object.defineProperty(exports,"print",{enumerable:!0,get:function(){return _printer.print}}),Object.defineProperty(exports,"visit",{enumerable:!0,get:function(){return _visitor.visit}}),Object.defineProperty(exports,"visitInParallel",{enumerable:!0,get:function(){return _visitor.visitInParallel}}),Object.defineProperty(exports,"visitWithTypeInfo",{enumerable:!0,get:function(){return _visitor.visitWithTypeInfo}}),Object.defineProperty(exports,"getVisitFn",{enumerable:!0,get:function(){return _visitor.getVisitFn}}),Object.defineProperty(exports,"BREAK",{enumerable:!0,get:function(){return _visitor.BREAK}}),Object.defineProperty(exports,"isDefinitionNode",{enumerable:!0,get:function(){return _predicates.isDefinitionNode}}),Object.defineProperty(exports,"isExecutableDefinitionNode",{enumerable:!0,get:function(){return _predicates.isExecutableDefinitionNode}}),Object.defineProperty(exports,"isSelectionNode",{enumerable:!0,get:function(){return _predicates.isSelectionNode}}),Object.defineProperty(exports,"isValueNode",{enumerable:!0,get:function(){return _predicates.isValueNode}}),Object.defineProperty(exports,"isTypeNode",{enumerable:!0,get:function(){return _predicates.isTypeNode}}),Object.defineProperty(exports,"isTypeSystemDefinitionNode",{enumerable:!0,get:function(){return _predicates.isTypeSystemDefinitionNode}}),Object.defineProperty(exports,"isTypeDefinitionNode",{enumerable:!0,get:function(){return _predicates.isTypeDefinitionNode}}),Object.defineProperty(exports,"isTypeSystemExtensionNode",{enumerable:!0,get:function(){return _predicates.isTypeSystemExtensionNode}}),Object.defineProperty(exports,"isTypeExtensionNode",{enumerable:!0,get:function(){return _predicates.isTypeExtensionNode}}),Object.defineProperty(exports,"DirectiveLocation",{enumerable:!0,get:function(){return _directiveLocation.DirectiveLocation}});var _source=require("./source"),_location=require("./location"),_kinds=require("./kinds"),_lexer=require("./lexer"),_parser=require("./parser"),_printer=require("./printer"),_visitor=require("./visitor"),_predicates=require("./predicates"),_directiveLocation=require("./directiveLocation")},{"./directiveLocation":48,"./kinds":50,"./lexer":51,"./location":52,"./parser":53,"./predicates":54,"./printer":55,"./source":56,"./visitor":57}],50:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Kind=void 0;var Kind=Object.freeze({NAME:"Name",DOCUMENT:"Document",OPERATION_DEFINITION:"OperationDefinition",VARIABLE_DEFINITION:"VariableDefinition",SELECTION_SET:"SelectionSet",FIELD:"Field",ARGUMENT:"Argument",FRAGMENT_SPREAD:"FragmentSpread",INLINE_FRAGMENT:"InlineFragment",FRAGMENT_DEFINITION:"FragmentDefinition",VARIABLE:"Variable",INT:"IntValue",FLOAT:"FloatValue",STRING:"StringValue",BOOLEAN:"BooleanValue",NULL:"NullValue",ENUM:"EnumValue",LIST:"ListValue",OBJECT:"ObjectValue",OBJECT_FIELD:"ObjectField",DIRECTIVE:"Directive",NAMED_TYPE:"NamedType",LIST_TYPE:"ListType",NON_NULL_TYPE:"NonNullType",SCHEMA_DEFINITION:"SchemaDefinition",OPERATION_TYPE_DEFINITION:"OperationTypeDefinition",SCALAR_TYPE_DEFINITION:"ScalarTypeDefinition",OBJECT_TYPE_DEFINITION:"ObjectTypeDefinition",FIELD_DEFINITION:"FieldDefinition",INPUT_VALUE_DEFINITION:"InputValueDefinition",INTERFACE_TYPE_DEFINITION:"InterfaceTypeDefinition",UNION_TYPE_DEFINITION:"UnionTypeDefinition",ENUM_TYPE_DEFINITION:"EnumTypeDefinition",ENUM_VALUE_DEFINITION:"EnumValueDefinition",INPUT_OBJECT_TYPE_DEFINITION:"InputObjectTypeDefinition",DIRECTIVE_DEFINITION:"DirectiveDefinition",SCHEMA_EXTENSION:"SchemaExtension",SCALAR_TYPE_EXTENSION:"ScalarTypeExtension",OBJECT_TYPE_EXTENSION:"ObjectTypeExtension",INTERFACE_TYPE_EXTENSION:"InterfaceTypeExtension",UNION_TYPE_EXTENSION:"UnionTypeExtension",ENUM_TYPE_EXTENSION:"EnumTypeExtension",INPUT_OBJECT_TYPE_EXTENSION:"InputObjectTypeExtension"});exports.Kind=Kind},{}],51:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.createLexer=function(source,options){var startOfFileToken=new Tok(TokenKind.SOF,0,0,0,0,null);return{source:source,options:options,lastToken:startOfFileToken,token:startOfFileToken,line:1,lineStart:0,advance:advanceLexer,lookahead:lookahead}},exports.isPunctuatorToken=function(token){var kind=token.kind;return kind===TokenKind.BANG||kind===TokenKind.DOLLAR||kind===TokenKind.AMP||kind===TokenKind.PAREN_L||kind===TokenKind.PAREN_R||kind===TokenKind.SPREAD||kind===TokenKind.COLON||kind===TokenKind.EQUALS||kind===TokenKind.AT||kind===TokenKind.BRACKET_L||kind===TokenKind.BRACKET_R||kind===TokenKind.BRACE_L||kind===TokenKind.PIPE||kind===TokenKind.BRACE_R},exports.getTokenDesc=function(token){var value=token.value;return value?"".concat(token.kind,' "').concat(value,'"'):token.kind},exports.TokenKind=void 0;var obj,_defineToJSON=(obj=require("../jsutils/defineToJSON"))&&obj.__esModule?obj:{default:obj},_error=require("../error"),_blockString=require("./blockString");function advanceLexer(){return this.lastToken=this.token,this.token=this.lookahead()}function lookahead(){var token=this.token;if(token.kind!==TokenKind.EOF)for(;(token=token.next||(token.next=readToken(this,token))).kind===TokenKind.COMMENT;);return token}var TokenKind=Object.freeze({SOF:"<SOF>",EOF:"<EOF>",BANG:"!",DOLLAR:"$",AMP:"&",PAREN_L:"(",PAREN_R:")",SPREAD:"...",COLON:":",EQUALS:"=",AT:"@",BRACKET_L:"[",BRACKET_R:"]",BRACE_L:"{",PIPE:"|",BRACE_R:"}",NAME:"Name",INT:"Int",FLOAT:"Float",STRING:"String",BLOCK_STRING:"BlockString",COMMENT:"Comment"});function Tok(kind,start,end,line,column,prev,value){this.kind=kind,this.start=start,this.end=end,this.line=line,this.column=column,this.value=value,this.prev=prev,this.next=null}function printCharCode(code){return isNaN(code)?TokenKind.EOF:code<127?JSON.stringify(String.fromCharCode(code)):'"\\u'.concat(("00"+code.toString(16).toUpperCase()).slice(-4),'"')}function readToken(lexer,prev){var source=lexer.source,body=source.body,bodyLength=body.length,pos=function(body,startPosition,lexer){var bodyLength=body.length,position=startPosition;for(;position<bodyLength;){var code=body.charCodeAt(position);if(9===code||32===code||44===code||65279===code)++position;else if(10===code)++position,++lexer.line,lexer.lineStart=position;else{if(13!==code)break;10===body.charCodeAt(position+1)?position+=2:++position,++lexer.line,lexer.lineStart=position}}return position}(body,prev.end,lexer),line=lexer.line,col=1+pos-lexer.lineStart;if(bodyLength<=pos)return new Tok(TokenKind.EOF,bodyLength,bodyLength,line,col,prev);var code=body.charCodeAt(pos);switch(code){case 33:return new Tok(TokenKind.BANG,pos,pos+1,line,col,prev);case 35:return function(source,start,line,col,prev){var code,body=source.body,position=start;for(;code=body.charCodeAt(++position),!isNaN(code)&&(31<code||9===code););return new Tok(TokenKind.COMMENT,start,position,line,col,prev,body.slice(start+1,position))}(source,pos,line,col,prev);case 36:return new Tok(TokenKind.DOLLAR,pos,pos+1,line,col,prev);case 38:return new Tok(TokenKind.AMP,pos,pos+1,line,col,prev);case 40:return new Tok(TokenKind.PAREN_L,pos,pos+1,line,col,prev);case 41:return new Tok(TokenKind.PAREN_R,pos,pos+1,line,col,prev);case 46:if(46===body.charCodeAt(pos+1)&&46===body.charCodeAt(pos+2))return new Tok(TokenKind.SPREAD,pos,pos+3,line,col,prev);break;case 58:return new Tok(TokenKind.COLON,pos,pos+1,line,col,prev);case 61:return new Tok(TokenKind.EQUALS,pos,pos+1,line,col,prev);case 64:return new Tok(TokenKind.AT,pos,pos+1,line,col,prev);case 91:return new Tok(TokenKind.BRACKET_L,pos,pos+1,line,col,prev);case 93:return new Tok(TokenKind.BRACKET_R,pos,pos+1,line,col,prev);case 123:return new Tok(TokenKind.BRACE_L,pos,pos+1,line,col,prev);case 124:return new Tok(TokenKind.PIPE,pos,pos+1,line,col,prev);case 125:return new Tok(TokenKind.BRACE_R,pos,pos+1,line,col,prev);case 65:case 66:case 67:case 68:case 69:case 70:case 71:case 72:case 73:case 74:case 75:case 76:case 77:case 78:case 79:case 80:case 81:case 82:case 83:case 84:case 85:case 86:case 87:case 88:case 89:case 90:case 95:case 97:case 98:case 99:case 100:case 101:case 102:case 103:case 104:case 105:case 106:case 107:case 108:case 109:case 110:case 111:case 112:case 113:case 114:case 115:case 116:case 117:case 118:case 119:case 120:case 121:case 122:return function(source,start,line,col,prev){var body=source.body,bodyLength=body.length,position=start+1,code=0;for(;position!==bodyLength&&!isNaN(code=body.charCodeAt(position))&&(95===code||48<=code&&code<=57||65<=code&&code<=90||97<=code&&code<=122);)++position;return new Tok(TokenKind.NAME,start,position,line,col,prev,body.slice(start,position))}(source,pos,line,col,prev);case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return function(source,start,firstCode,line,col,prev){var body=source.body,code=firstCode,position=start,isFloat=!1;45===code&&(code=body.charCodeAt(++position));if(48===code){if(48<=(code=body.charCodeAt(++position))&&code<=57)throw(0,_error.syntaxError)(source,position,"Invalid number, unexpected digit after 0: ".concat(printCharCode(code),"."))}else position=readDigits(source,position,code),code=body.charCodeAt(position);46===code&&(isFloat=!0,code=body.charCodeAt(++position),position=readDigits(source,position,code),code=body.charCodeAt(position));69!==code&&101!==code||(isFloat=!0,43!==(code=body.charCodeAt(++position))&&45!==code||(code=body.charCodeAt(++position)),position=readDigits(source,position,code));return new Tok(isFloat?TokenKind.FLOAT:TokenKind.INT,start,position,line,col,prev,body.slice(start,position))}(source,pos,code,line,col,prev);case 34:return 34===body.charCodeAt(pos+1)&&34===body.charCodeAt(pos+2)?function(source,start,line,col,prev,lexer){var body=source.body,position=start+3,chunkStart=position,code=0,rawValue="";for(;position<body.length&&!isNaN(code=body.charCodeAt(position));){if(34===code&&34===body.charCodeAt(position+1)&&34===body.charCodeAt(position+2))return rawValue+=body.slice(chunkStart,position),new Tok(TokenKind.BLOCK_STRING,start,position+3,line,col,prev,(0,_blockString.dedentBlockStringValue)(rawValue));if(code<32&&9!==code&&10!==code&&13!==code)throw(0,_error.syntaxError)(source,position,"Invalid character within String: ".concat(printCharCode(code),"."));10===code?(++position,++lexer.line,lexer.lineStart=position):13===code?(10===body.charCodeAt(position+1)?position+=2:++position,++lexer.line,lexer.lineStart=position):92===code&&34===body.charCodeAt(position+1)&&34===body.charCodeAt(position+2)&&34===body.charCodeAt(position+3)?(rawValue+=body.slice(chunkStart,position)+'"""',chunkStart=position+=4):++position}throw(0,_error.syntaxError)(source,position,"Unterminated string.")}(source,pos,line,col,prev,lexer):function(source,start,line,col,prev){var body=source.body,position=start+1,chunkStart=position,code=0,value="";for(;position<body.length&&!isNaN(code=body.charCodeAt(position))&&10!==code&&13!==code;){if(34===code)return value+=body.slice(chunkStart,position),new Tok(TokenKind.STRING,start,position+1,line,col,prev,value);if(code<32&&9!==code)throw(0,_error.syntaxError)(source,position,"Invalid character within String: ".concat(printCharCode(code),"."));if(++position,92===code){switch(value+=body.slice(chunkStart,position-1),code=body.charCodeAt(position)){case 34:value+='"';break;case 47:value+="/";break;case 92:value+="\\";break;case 98:value+="\b";break;case 102:value+="\f";break;case 110:value+="\n";break;case 114:value+="\r";break;case 116:value+="\t";break;case 117:var charCode=(a=body.charCodeAt(position+1),b=body.charCodeAt(position+2),c=body.charCodeAt(position+3),d=body.charCodeAt(position+4),char2hex(a)<<12|char2hex(b)<<8|char2hex(c)<<4|char2hex(d));if(charCode<0)throw(0,_error.syntaxError)(source,position,"Invalid character escape sequence: "+"\\u".concat(body.slice(position+1,position+5),"."));value+=String.fromCharCode(charCode),position+=4;break;default:throw(0,_error.syntaxError)(source,position,"Invalid character escape sequence: \\".concat(String.fromCharCode(code),"."))}chunkStart=++position}}var a,b,c,d;throw(0,_error.syntaxError)(source,position,"Unterminated string.")}(source,pos,line,col,prev)}throw(0,_error.syntaxError)(source,pos,function(code){if(code<32&&9!==code&&10!==code&&13!==code)return"Cannot contain the invalid character ".concat(printCharCode(code),".");return 39!==code?"Cannot parse the unexpected character ".concat(printCharCode(code),"."):"Unexpected single quote character ('), did you mean to use a double quote (\")?"}(code))}function readDigits(source,start,firstCode){var body=source.body,position=start,code=firstCode;if(48<=code&&code<=57){for(;48<=(code=body.charCodeAt(++position))&&code<=57;);return position}throw(0,_error.syntaxError)(source,position,"Invalid number, expected digit but got: ".concat(printCharCode(code),"."))}function char2hex(a){return 48<=a&&a<=57?a-48:65<=a&&a<=70?a-55:97<=a&&a<=102?a-87:-1}exports.TokenKind=TokenKind,(0,_defineToJSON.default)(Tok,function(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}})},{"../error":20,"../jsutils/defineToJSON":29,"./blockString":47}],52:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getLocation=function(source,position){var match,lineRegexp=/\r\n|[\n\r]/g,line=1,column=position+1;for(;(match=lineRegexp.exec(source.body))&&match.index<position;)line+=1,column=position+1-(match.index+match[0].length);return{line:line,column:column}}},{}],53:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.parse=function(source,options){var sourceObj="string"==typeof source?new _source.Source(source):source;if(sourceObj instanceof _source.Source)return function(lexer){var start=lexer.token;return{kind:_kinds.Kind.DOCUMENT,definitions:many(lexer,_lexer.TokenKind.SOF,parseDefinition,_lexer.TokenKind.EOF),loc:loc(lexer,start)}}((0,_lexer.createLexer)(sourceObj,options||{}));throw new TypeError("Must provide Source. Received: ".concat((0,_inspect.default)(sourceObj)))},exports.parseValue=function(source,options){var sourceObj="string"==typeof source?new _source.Source(source):source,lexer=(0,_lexer.createLexer)(sourceObj,options||{});expectToken(lexer,_lexer.TokenKind.SOF);var value=parseValueLiteral(lexer,!1);return expectToken(lexer,_lexer.TokenKind.EOF),value},exports.parseType=function(source,options){var sourceObj="string"==typeof source?new _source.Source(source):source,lexer=(0,_lexer.createLexer)(sourceObj,options||{});expectToken(lexer,_lexer.TokenKind.SOF);var type=parseTypeReference(lexer);return expectToken(lexer,_lexer.TokenKind.EOF),type},exports.parseConstValue=parseConstValue,exports.parseTypeReference=parseTypeReference,exports.parseNamedType=parseNamedType;var _inspect=_interopRequireDefault(require("../jsutils/inspect")),_defineToJSON=_interopRequireDefault(require("../jsutils/defineToJSON")),_source=require("./source"),_error=require("../error"),_lexer=require("./lexer"),_kinds=require("./kinds"),_directiveLocation=require("./directiveLocation");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function parseName(lexer){var token=expectToken(lexer,_lexer.TokenKind.NAME);return{kind:_kinds.Kind.NAME,value:token.value,loc:loc(lexer,token)}}function parseDefinition(lexer){if(peek(lexer,_lexer.TokenKind.NAME))switch(lexer.token.value){case"query":case"mutation":case"subscription":case"fragment":return parseExecutableDefinition(lexer);case"schema":case"scalar":case"type":case"interface":case"union":case"enum":case"input":case"directive":return parseTypeSystemDefinition(lexer);case"extend":return function(lexer){var keywordToken=lexer.lookahead();if(keywordToken.kind===_lexer.TokenKind.NAME)switch(keywordToken.value){case"schema":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"schema");var directives=parseDirectives(lexer,!0),operationTypes=peek(lexer,_lexer.TokenKind.BRACE_L)?many(lexer,_lexer.TokenKind.BRACE_L,parseOperationTypeDefinition,_lexer.TokenKind.BRACE_R):[];if(0!==directives.length||0!==operationTypes.length)return{kind:_kinds.Kind.SCHEMA_EXTENSION,directives:directives,operationTypes:operationTypes,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"scalar":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"scalar");var name=parseName(lexer),directives=parseDirectives(lexer,!0);if(0!==directives.length)return{kind:_kinds.Kind.SCALAR_TYPE_EXTENSION,name:name,directives:directives,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"type":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"type");var name=parseName(lexer),interfaces=parseImplementsInterfaces(lexer),directives=parseDirectives(lexer,!0),fields=parseFieldsDefinition(lexer);if(0!==interfaces.length||0!==directives.length||0!==fields.length)return{kind:_kinds.Kind.OBJECT_TYPE_EXTENSION,name:name,interfaces:interfaces,directives:directives,fields:fields,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"interface":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"interface");var name=parseName(lexer),directives=parseDirectives(lexer,!0),fields=parseFieldsDefinition(lexer);if(0!==directives.length||0!==fields.length)return{kind:_kinds.Kind.INTERFACE_TYPE_EXTENSION,name:name,directives:directives,fields:fields,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"union":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"union");var name=parseName(lexer),directives=parseDirectives(lexer,!0),types=parseUnionMemberTypes(lexer);if(0!==directives.length||0!==types.length)return{kind:_kinds.Kind.UNION_TYPE_EXTENSION,name:name,directives:directives,types:types,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"enum":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"enum");var name=parseName(lexer),directives=parseDirectives(lexer,!0),values=parseEnumValuesDefinition(lexer);if(0!==directives.length||0!==values.length)return{kind:_kinds.Kind.ENUM_TYPE_EXTENSION,name:name,directives:directives,values:values,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer);case"input":return function(lexer){var start=lexer.token;expectKeyword(lexer,"extend"),expectKeyword(lexer,"input");var name=parseName(lexer),directives=parseDirectives(lexer,!0),fields=parseInputFieldsDefinition(lexer);if(0!==directives.length||0!==fields.length)return{kind:_kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION,name:name,directives:directives,fields:fields,loc:loc(lexer,start)};throw unexpected(lexer)}(lexer)}throw unexpected(lexer,keywordToken)}(lexer)}else{if(peek(lexer,_lexer.TokenKind.BRACE_L))return parseExecutableDefinition(lexer);if(peekDescription(lexer))return parseTypeSystemDefinition(lexer)}throw unexpected(lexer)}function parseExecutableDefinition(lexer){if(peek(lexer,_lexer.TokenKind.NAME))switch(lexer.token.value){case"query":case"mutation":case"subscription":return parseOperationDefinition(lexer);case"fragment":return function(lexer){var start=lexer.token;if(expectKeyword(lexer,"fragment"),lexer.options.experimentalFragmentVariables)return{kind:_kinds.Kind.FRAGMENT_DEFINITION,name:parseFragmentName(lexer),variableDefinitions:parseVariableDefinitions(lexer),typeCondition:(expectKeyword(lexer,"on"),parseNamedType(lexer)),directives:parseDirectives(lexer,!1),selectionSet:parseSelectionSet(lexer),loc:loc(lexer,start)};return{kind:_kinds.Kind.FRAGMENT_DEFINITION,name:parseFragmentName(lexer),typeCondition:(expectKeyword(lexer,"on"),parseNamedType(lexer)),directives:parseDirectives(lexer,!1),selectionSet:parseSelectionSet(lexer),loc:loc(lexer,start)}}(lexer)}else if(peek(lexer,_lexer.TokenKind.BRACE_L))return parseOperationDefinition(lexer);throw unexpected(lexer)}function parseOperationDefinition(lexer){var start=lexer.token;if(peek(lexer,_lexer.TokenKind.BRACE_L))return{kind:_kinds.Kind.OPERATION_DEFINITION,operation:"query",name:void 0,variableDefinitions:[],directives:[],selectionSet:parseSelectionSet(lexer),loc:loc(lexer,start)};var name,operation=parseOperationType(lexer);return peek(lexer,_lexer.TokenKind.NAME)&&(name=parseName(lexer)),{kind:_kinds.Kind.OPERATION_DEFINITION,operation:operation,name:name,variableDefinitions:parseVariableDefinitions(lexer),directives:parseDirectives(lexer,!1),selectionSet:parseSelectionSet(lexer),loc:loc(lexer,start)}}function parseOperationType(lexer){var operationToken=expectToken(lexer,_lexer.TokenKind.NAME);switch(operationToken.value){case"query":return"query";case"mutation":return"mutation";case"subscription":return"subscription"}throw unexpected(lexer,operationToken)}function parseVariableDefinitions(lexer){return peek(lexer,_lexer.TokenKind.PAREN_L)?many(lexer,_lexer.TokenKind.PAREN_L,parseVariableDefinition,_lexer.TokenKind.PAREN_R):[]}function parseVariableDefinition(lexer){var start=lexer.token;return{kind:_kinds.Kind.VARIABLE_DEFINITION,variable:parseVariable(lexer),type:(expectToken(lexer,_lexer.TokenKind.COLON),parseTypeReference(lexer)),defaultValue:expectOptionalToken(lexer,_lexer.TokenKind.EQUALS)?parseValueLiteral(lexer,!0):void 0,directives:parseDirectives(lexer,!0),loc:loc(lexer,start)}}function parseVariable(lexer){var start=lexer.token;return expectToken(lexer,_lexer.TokenKind.DOLLAR),{kind:_kinds.Kind.VARIABLE,name:parseName(lexer),loc:loc(lexer,start)}}function parseSelectionSet(lexer){var start=lexer.token;return{kind:_kinds.Kind.SELECTION_SET,selections:many(lexer,_lexer.TokenKind.BRACE_L,parseSelection,_lexer.TokenKind.BRACE_R),loc:loc(lexer,start)}}function parseSelection(lexer){return peek(lexer,_lexer.TokenKind.SPREAD)?function(lexer){var start=lexer.token;expectToken(lexer,_lexer.TokenKind.SPREAD);var hasTypeCondition=expectOptionalKeyword(lexer,"on");return hasTypeCondition||!peek(lexer,_lexer.TokenKind.NAME)?{kind:_kinds.Kind.INLINE_FRAGMENT,typeCondition:hasTypeCondition?parseNamedType(lexer):void 0,directives:parseDirectives(lexer,!1),selectionSet:parseSelectionSet(lexer),loc:loc(lexer,start)}:{kind:_kinds.Kind.FRAGMENT_SPREAD,name:parseFragmentName(lexer),directives:parseDirectives(lexer,!1),loc:loc(lexer,start)}}(lexer):function(lexer){var alias,name,start=lexer.token,nameOrAlias=parseName(lexer);name=expectOptionalToken(lexer,_lexer.TokenKind.COLON)?(alias=nameOrAlias,parseName(lexer)):nameOrAlias;return{kind:_kinds.Kind.FIELD,alias:alias,name:name,arguments:parseArguments(lexer,!1),directives:parseDirectives(lexer,!1),selectionSet:peek(lexer,_lexer.TokenKind.BRACE_L)?parseSelectionSet(lexer):void 0,loc:loc(lexer,start)}}(lexer)}function parseArguments(lexer,isConst){var item=isConst?parseConstArgument:parseArgument;return peek(lexer,_lexer.TokenKind.PAREN_L)?many(lexer,_lexer.TokenKind.PAREN_L,item,_lexer.TokenKind.PAREN_R):[]}function parseArgument(lexer){var start=lexer.token,name=parseName(lexer);return expectToken(lexer,_lexer.TokenKind.COLON),{kind:_kinds.Kind.ARGUMENT,name:name,value:parseValueLiteral(lexer,!1),loc:loc(lexer,start)}}function parseConstArgument(lexer){var start=lexer.token;return{kind:_kinds.Kind.ARGUMENT,name:parseName(lexer),value:(expectToken(lexer,_lexer.TokenKind.COLON),parseConstValue(lexer)),loc:loc(lexer,start)}}function parseFragmentName(lexer){if("on"===lexer.token.value)throw unexpected(lexer);return parseName(lexer)}function parseValueLiteral(lexer,isConst){var token=lexer.token;switch(token.kind){case _lexer.TokenKind.BRACKET_L:return function(lexer,isConst){var start=lexer.token,item=isConst?parseConstValue:parseValueValue;return{kind:_kinds.Kind.LIST,values:any(lexer,_lexer.TokenKind.BRACKET_L,item,_lexer.TokenKind.BRACKET_R),loc:loc(lexer,start)}}(lexer,isConst);case _lexer.TokenKind.BRACE_L:return function(lexer,isConst){var start=lexer.token;return{kind:_kinds.Kind.OBJECT,fields:any(lexer,_lexer.TokenKind.BRACE_L,function(){return parseObjectField(lexer,isConst)},_lexer.TokenKind.BRACE_R),loc:loc(lexer,start)}}(lexer,isConst);case _lexer.TokenKind.INT:return lexer.advance(),{kind:_kinds.Kind.INT,value:token.value,loc:loc(lexer,token)};case _lexer.TokenKind.FLOAT:return lexer.advance(),{kind:_kinds.Kind.FLOAT,value:token.value,loc:loc(lexer,token)};case _lexer.TokenKind.STRING:case _lexer.TokenKind.BLOCK_STRING:return parseStringLiteral(lexer);case _lexer.TokenKind.NAME:return"true"===token.value||"false"===token.value?(lexer.advance(),{kind:_kinds.Kind.BOOLEAN,value:"true"===token.value,loc:loc(lexer,token)}):"null"===token.value?(lexer.advance(),{kind:_kinds.Kind.NULL,loc:loc(lexer,token)}):(lexer.advance(),{kind:_kinds.Kind.ENUM,value:token.value,loc:loc(lexer,token)});case _lexer.TokenKind.DOLLAR:if(!isConst)return parseVariable(lexer)}throw unexpected(lexer)}function parseStringLiteral(lexer){var token=lexer.token;return lexer.advance(),{kind:_kinds.Kind.STRING,value:token.value,block:token.kind===_lexer.TokenKind.BLOCK_STRING,loc:loc(lexer,token)}}function parseConstValue(lexer){return parseValueLiteral(lexer,!0)}function parseValueValue(lexer){return parseValueLiteral(lexer,!1)}function parseObjectField(lexer,isConst){var start=lexer.token,name=parseName(lexer);return expectToken(lexer,_lexer.TokenKind.COLON),{kind:_kinds.Kind.OBJECT_FIELD,name:name,value:parseValueLiteral(lexer,isConst),loc:loc(lexer,start)}}function parseDirectives(lexer,isConst){for(var directives=[];peek(lexer,_lexer.TokenKind.AT);)directives.push(parseDirective(lexer,isConst));return directives}function parseDirective(lexer,isConst){var start=lexer.token;return expectToken(lexer,_lexer.TokenKind.AT),{kind:_kinds.Kind.DIRECTIVE,name:parseName(lexer),arguments:parseArguments(lexer,isConst),loc:loc(lexer,start)}}function parseTypeReference(lexer){var type,start=lexer.token;return type=expectOptionalToken(lexer,_lexer.TokenKind.BRACKET_L)?(type=parseTypeReference(lexer),expectToken(lexer,_lexer.TokenKind.BRACKET_R),{kind:_kinds.Kind.LIST_TYPE,type:type,loc:loc(lexer,start)}):parseNamedType(lexer),expectOptionalToken(lexer,_lexer.TokenKind.BANG)?{kind:_kinds.Kind.NON_NULL_TYPE,type:type,loc:loc(lexer,start)}:type}function parseNamedType(lexer){var start=lexer.token;return{kind:_kinds.Kind.NAMED_TYPE,name:parseName(lexer),loc:loc(lexer,start)}}function parseTypeSystemDefinition(lexer){var keywordToken=peekDescription(lexer)?lexer.lookahead():lexer.token;if(keywordToken.kind===_lexer.TokenKind.NAME)switch(keywordToken.value){case"schema":return function(lexer){var start=lexer.token;expectKeyword(lexer,"schema");var directives=parseDirectives(lexer,!0),operationTypes=many(lexer,_lexer.TokenKind.BRACE_L,parseOperationTypeDefinition,_lexer.TokenKind.BRACE_R);return{kind:_kinds.Kind.SCHEMA_DEFINITION,directives:directives,operationTypes:operationTypes,loc:loc(lexer,start)}}(lexer);case"scalar":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"scalar");var name=parseName(lexer),directives=parseDirectives(lexer,!0);return{kind:_kinds.Kind.SCALAR_TYPE_DEFINITION,description:description,name:name,directives:directives,loc:loc(lexer,start)}}(lexer);case"type":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"type");var name=parseName(lexer),interfaces=parseImplementsInterfaces(lexer),directives=parseDirectives(lexer,!0),fields=parseFieldsDefinition(lexer);return{kind:_kinds.Kind.OBJECT_TYPE_DEFINITION,description:description,name:name,interfaces:interfaces,directives:directives,fields:fields,loc:loc(lexer,start)}}(lexer);case"interface":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"interface");var name=parseName(lexer),directives=parseDirectives(lexer,!0),fields=parseFieldsDefinition(lexer);return{kind:_kinds.Kind.INTERFACE_TYPE_DEFINITION,description:description,name:name,directives:directives,fields:fields,loc:loc(lexer,start)}}(lexer);case"union":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"union");var name=parseName(lexer),directives=parseDirectives(lexer,!0),types=parseUnionMemberTypes(lexer);return{kind:_kinds.Kind.UNION_TYPE_DEFINITION,description:description,name:name,directives:directives,types:types,loc:loc(lexer,start)}}(lexer);case"enum":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"enum");var name=parseName(lexer),directives=parseDirectives(lexer,!0),values=parseEnumValuesDefinition(lexer);return{kind:_kinds.Kind.ENUM_TYPE_DEFINITION,description:description,name:name,directives:directives,values:values,loc:loc(lexer,start)}}(lexer);case"input":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"input");var name=parseName(lexer),directives=parseDirectives(lexer,!0),fields=parseInputFieldsDefinition(lexer);return{kind:_kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION,description:description,name:name,directives:directives,fields:fields,loc:loc(lexer,start)}}(lexer);case"directive":return function(lexer){var start=lexer.token,description=parseDescription(lexer);expectKeyword(lexer,"directive"),expectToken(lexer,_lexer.TokenKind.AT);var name=parseName(lexer),args=parseArgumentDefs(lexer);expectKeyword(lexer,"on");var locations=function(lexer){expectOptionalToken(lexer,_lexer.TokenKind.PIPE);var locations=[];for(;locations.push(parseDirectiveLocation(lexer)),expectOptionalToken(lexer,_lexer.TokenKind.PIPE););return locations}(lexer);return{kind:_kinds.Kind.DIRECTIVE_DEFINITION,description:description,name:name,arguments:args,locations:locations,loc:loc(lexer,start)}}(lexer)}throw unexpected(lexer,keywordToken)}function peekDescription(lexer){return peek(lexer,_lexer.TokenKind.STRING)||peek(lexer,_lexer.TokenKind.BLOCK_STRING)}function parseDescription(lexer){if(peekDescription(lexer))return parseStringLiteral(lexer)}function parseOperationTypeDefinition(lexer){var start=lexer.token,operation=parseOperationType(lexer);expectToken(lexer,_lexer.TokenKind.COLON);var type=parseNamedType(lexer);return{kind:_kinds.Kind.OPERATION_TYPE_DEFINITION,operation:operation,type:type,loc:loc(lexer,start)}}function parseImplementsInterfaces(lexer){var types=[];if(expectOptionalKeyword(lexer,"implements"))for(expectOptionalToken(lexer,_lexer.TokenKind.AMP);types.push(parseNamedType(lexer)),expectOptionalToken(lexer,_lexer.TokenKind.AMP)||lexer.options.allowLegacySDLImplementsInterfaces&&peek(lexer,_lexer.TokenKind.NAME););return types}function parseFieldsDefinition(lexer){return lexer.options.allowLegacySDLEmptyFields&&peek(lexer,_lexer.TokenKind.BRACE_L)&&lexer.lookahead().kind===_lexer.TokenKind.BRACE_R?(lexer.advance(),lexer.advance(),[]):peek(lexer,_lexer.TokenKind.BRACE_L)?many(lexer,_lexer.TokenKind.BRACE_L,parseFieldDefinition,_lexer.TokenKind.BRACE_R):[]}function parseFieldDefinition(lexer){var start=lexer.token,description=parseDescription(lexer),name=parseName(lexer),args=parseArgumentDefs(lexer);expectToken(lexer,_lexer.TokenKind.COLON);var type=parseTypeReference(lexer),directives=parseDirectives(lexer,!0);return{kind:_kinds.Kind.FIELD_DEFINITION,description:description,name:name,arguments:args,type:type,directives:directives,loc:loc(lexer,start)}}function parseArgumentDefs(lexer){return peek(lexer,_lexer.TokenKind.PAREN_L)?many(lexer,_lexer.TokenKind.PAREN_L,parseInputValueDef,_lexer.TokenKind.PAREN_R):[]}function parseInputValueDef(lexer){var start=lexer.token,description=parseDescription(lexer),name=parseName(lexer);expectToken(lexer,_lexer.TokenKind.COLON);var defaultValue,type=parseTypeReference(lexer);expectOptionalToken(lexer,_lexer.TokenKind.EQUALS)&&(defaultValue=parseConstValue(lexer));var directives=parseDirectives(lexer,!0);return{kind:_kinds.Kind.INPUT_VALUE_DEFINITION,description:description,name:name,type:type,defaultValue:defaultValue,directives:directives,loc:loc(lexer,start)}}function parseUnionMemberTypes(lexer){var types=[];if(expectOptionalToken(lexer,_lexer.TokenKind.EQUALS))for(expectOptionalToken(lexer,_lexer.TokenKind.PIPE);types.push(parseNamedType(lexer)),expectOptionalToken(lexer,_lexer.TokenKind.PIPE););return types}function parseEnumValuesDefinition(lexer){return peek(lexer,_lexer.TokenKind.BRACE_L)?many(lexer,_lexer.TokenKind.BRACE_L,parseEnumValueDefinition,_lexer.TokenKind.BRACE_R):[]}function parseEnumValueDefinition(lexer){var start=lexer.token,description=parseDescription(lexer),name=parseName(lexer),directives=parseDirectives(lexer,!0);return{kind:_kinds.Kind.ENUM_VALUE_DEFINITION,description:description,name:name,directives:directives,loc:loc(lexer,start)}}function parseInputFieldsDefinition(lexer){return peek(lexer,_lexer.TokenKind.BRACE_L)?many(lexer,_lexer.TokenKind.BRACE_L,parseInputValueDef,_lexer.TokenKind.BRACE_R):[]}function parseDirectiveLocation(lexer){var start=lexer.token,name=parseName(lexer);if(void 0!==_directiveLocation.DirectiveLocation[name.value])return name;throw unexpected(lexer,start)}function loc(lexer,startToken){if(!lexer.options.noLocation)return new Loc(startToken,lexer.lastToken,lexer.source)}function Loc(startToken,endToken,source){this.start=startToken.start,this.end=endToken.end,this.startToken=startToken,this.endToken=endToken,this.source=source}function peek(lexer,kind){return lexer.token.kind===kind}function expectToken(lexer,kind){var token=lexer.token;if(token.kind===kind)return lexer.advance(),token;throw(0,_error.syntaxError)(lexer.source,token.start,"Expected ".concat(kind,", found ").concat((0,_lexer.getTokenDesc)(token)))}function expectOptionalToken(lexer,kind){var token=lexer.token;if(token.kind===kind)return lexer.advance(),token}function expectKeyword(lexer,value){var token=lexer.token;if(token.kind===_lexer.TokenKind.NAME&&token.value===value)return lexer.advance(),token;throw(0,_error.syntaxError)(lexer.source,token.start,'Expected "'.concat(value,'", found ').concat((0,_lexer.getTokenDesc)(token)))}function expectOptionalKeyword(lexer,value){var token=lexer.token;if(token.kind===_lexer.TokenKind.NAME&&token.value===value)return lexer.advance(),token}function unexpected(lexer,atToken){var token=atToken||lexer.token;return(0,_error.syntaxError)(lexer.source,token.start,"Unexpected ".concat((0,_lexer.getTokenDesc)(token)))}function any(lexer,openKind,parseFn,closeKind){expectToken(lexer,openKind);for(var nodes=[];!expectOptionalToken(lexer,closeKind);)nodes.push(parseFn(lexer));return nodes}function many(lexer,openKind,parseFn,closeKind){expectToken(lexer,openKind);for(var nodes=[parseFn(lexer)];!expectOptionalToken(lexer,closeKind);)nodes.push(parseFn(lexer));return nodes}(0,_defineToJSON.default)(Loc,function(){return{start:this.start,end:this.end}})},{"../error":20,"../jsutils/defineToJSON":29,"../jsutils/inspect":31,"./directiveLocation":48,"./kinds":50,"./lexer":51,"./source":56}],54:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isDefinitionNode=function(node){return isExecutableDefinitionNode(node)||isTypeSystemDefinitionNode(node)||isTypeSystemExtensionNode(node)},exports.isExecutableDefinitionNode=isExecutableDefinitionNode,exports.isSelectionNode=function(node){return node.kind===_kinds.Kind.FIELD||node.kind===_kinds.Kind.FRAGMENT_SPREAD||node.kind===_kinds.Kind.INLINE_FRAGMENT},exports.isValueNode=function(node){return node.kind===_kinds.Kind.VARIABLE||node.kind===_kinds.Kind.INT||node.kind===_kinds.Kind.FLOAT||node.kind===_kinds.Kind.STRING||node.kind===_kinds.Kind.BOOLEAN||node.kind===_kinds.Kind.NULL||node.kind===_kinds.Kind.ENUM||node.kind===_kinds.Kind.LIST||node.kind===_kinds.Kind.OBJECT},exports.isTypeNode=function(node){return node.kind===_kinds.Kind.NAMED_TYPE||node.kind===_kinds.Kind.LIST_TYPE||node.kind===_kinds.Kind.NON_NULL_TYPE},exports.isTypeSystemDefinitionNode=isTypeSystemDefinitionNode,exports.isTypeDefinitionNode=isTypeDefinitionNode,exports.isTypeSystemExtensionNode=isTypeSystemExtensionNode,exports.isTypeExtensionNode=isTypeExtensionNode;var _kinds=require("./kinds");function isExecutableDefinitionNode(node){return node.kind===_kinds.Kind.OPERATION_DEFINITION||node.kind===_kinds.Kind.FRAGMENT_DEFINITION}function isTypeSystemDefinitionNode(node){return node.kind===_kinds.Kind.SCHEMA_DEFINITION||isTypeDefinitionNode(node)||node.kind===_kinds.Kind.DIRECTIVE_DEFINITION}function isTypeDefinitionNode(node){return node.kind===_kinds.Kind.SCALAR_TYPE_DEFINITION||node.kind===_kinds.Kind.OBJECT_TYPE_DEFINITION||node.kind===_kinds.Kind.INTERFACE_TYPE_DEFINITION||node.kind===_kinds.Kind.UNION_TYPE_DEFINITION||node.kind===_kinds.Kind.ENUM_TYPE_DEFINITION||node.kind===_kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION}function isTypeSystemExtensionNode(node){return node.kind===_kinds.Kind.SCHEMA_EXTENSION||isTypeExtensionNode(node)}function isTypeExtensionNode(node){return node.kind===_kinds.Kind.SCALAR_TYPE_EXTENSION||node.kind===_kinds.Kind.OBJECT_TYPE_EXTENSION||node.kind===_kinds.Kind.INTERFACE_TYPE_EXTENSION||node.kind===_kinds.Kind.UNION_TYPE_EXTENSION||node.kind===_kinds.Kind.ENUM_TYPE_EXTENSION||node.kind===_kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION}},{"./kinds":50}],55:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.print=function(ast){return(0,_visitor.visit)(ast,{leave:printDocASTReducer})};var _visitor=require("./visitor"),_blockString=require("./blockString");var printDocASTReducer={Name:function(node){return node.value},Variable:function(node){return"$"+node.name},Document:function(node){return join(node.definitions,"\n\n")+"\n"},OperationDefinition:function(node){var op=node.operation,name=node.name,varDefs=wrap("(",join(node.variableDefinitions,", "),")"),directives=join(node.directives," "),selectionSet=node.selectionSet;return name||directives||varDefs||"query"!==op?join([op,join([name,varDefs]),directives,selectionSet]," "):selectionSet},VariableDefinition:function(_ref){var variable=_ref.variable,type=_ref.type,defaultValue=_ref.defaultValue,directives=_ref.directives;return variable+": "+type+wrap(" = ",defaultValue)+wrap(" ",join(directives," "))},SelectionSet:function(_ref2){return block(_ref2.selections)},Field:function(_ref3){var alias=_ref3.alias,name=_ref3.name,args=_ref3.arguments,directives=_ref3.directives,selectionSet=_ref3.selectionSet;return join([wrap("",alias,": ")+name+wrap("(",join(args,", "),")"),join(directives," "),selectionSet]," ")},Argument:function(_ref4){return _ref4.name+": "+_ref4.value},FragmentSpread:function(_ref5){return"..."+_ref5.name+wrap(" ",join(_ref5.directives," "))},InlineFragment:function(_ref6){var typeCondition=_ref6.typeCondition,directives=_ref6.directives,selectionSet=_ref6.selectionSet;return join(["...",wrap("on ",typeCondition),join(directives," "),selectionSet]," ")},FragmentDefinition:function(_ref7){var name=_ref7.name,typeCondition=_ref7.typeCondition,variableDefinitions=_ref7.variableDefinitions,directives=_ref7.directives,selectionSet=_ref7.selectionSet;return"fragment ".concat(name).concat(wrap("(",join(variableDefinitions,", "),")")," ")+"on ".concat(typeCondition," ").concat(wrap("",join(directives," ")," "))+selectionSet},IntValue:function(_ref8){return _ref8.value},FloatValue:function(_ref9){return _ref9.value},StringValue:function(_ref10,key){var value=_ref10.value;return _ref10.block?(0,_blockString.printBlockString)(value,"description"===key?"":" "):JSON.stringify(value)},BooleanValue:function(_ref11){return _ref11.value?"true":"false"},NullValue:function(){return"null"},EnumValue:function(_ref12){return _ref12.value},ListValue:function(_ref13){return"["+join(_ref13.values,", ")+"]"},ObjectValue:function(_ref14){return"{"+join(_ref14.fields,", ")+"}"},ObjectField:function(_ref15){return _ref15.name+": "+_ref15.value},Directive:function(_ref16){return"@"+_ref16.name+wrap("(",join(_ref16.arguments,", "),")")},NamedType:function(_ref17){return _ref17.name},ListType:function(_ref18){return"["+_ref18.type+"]"},NonNullType:function(_ref19){return _ref19.type+"!"},SchemaDefinition:function(_ref20){var directives=_ref20.directives,operationTypes=_ref20.operationTypes;return join(["schema",join(directives," "),block(operationTypes)]," ")},OperationTypeDefinition:function(_ref21){return _ref21.operation+": "+_ref21.type},ScalarTypeDefinition:addDescription(function(_ref22){return join(["scalar",_ref22.name,join(_ref22.directives," ")]," ")}),ObjectTypeDefinition:addDescription(function(_ref23){var name=_ref23.name,interfaces=_ref23.interfaces,directives=_ref23.directives,fields=_ref23.fields;return join(["type",name,wrap("implements ",join(interfaces," & ")),join(directives," "),block(fields)]," ")}),FieldDefinition:addDescription(function(_ref24){var name=_ref24.name,args=_ref24.arguments,type=_ref24.type,directives=_ref24.directives;return name+(hasMultilineItems(args)?wrap("(\n",indent(join(args,"\n")),"\n)"):wrap("(",join(args,", "),")"))+": "+type+wrap(" ",join(directives," "))}),InputValueDefinition:addDescription(function(_ref25){var name=_ref25.name,type=_ref25.type,defaultValue=_ref25.defaultValue,directives=_ref25.directives;return join([name+": "+type,wrap("= ",defaultValue),join(directives," ")]," ")}),InterfaceTypeDefinition:addDescription(function(_ref26){var name=_ref26.name,directives=_ref26.directives,fields=_ref26.fields;return join(["interface",name,join(directives," "),block(fields)]," ")}),UnionTypeDefinition:addDescription(function(_ref27){var name=_ref27.name,directives=_ref27.directives,types=_ref27.types;return join(["union",name,join(directives," "),types&&0!==types.length?"= "+join(types," | "):""]," ")}),EnumTypeDefinition:addDescription(function(_ref28){var name=_ref28.name,directives=_ref28.directives,values=_ref28.values;return join(["enum",name,join(directives," "),block(values)]," ")}),EnumValueDefinition:addDescription(function(_ref29){return join([_ref29.name,join(_ref29.directives," ")]," ")}),InputObjectTypeDefinition:addDescription(function(_ref30){var name=_ref30.name,directives=_ref30.directives,fields=_ref30.fields;return join(["input",name,join(directives," "),block(fields)]," ")}),DirectiveDefinition:addDescription(function(_ref31){var name=_ref31.name,args=_ref31.arguments,locations=_ref31.locations;return"directive @"+name+(hasMultilineItems(args)?wrap("(\n",indent(join(args,"\n")),"\n)"):wrap("(",join(args,", "),")"))+" on "+join(locations," | ")}),SchemaExtension:function(_ref32){var directives=_ref32.directives,operationTypes=_ref32.operationTypes;return join(["extend schema",join(directives," "),block(operationTypes)]," ")},ScalarTypeExtension:function(_ref33){return join(["extend scalar",_ref33.name,join(_ref33.directives," ")]," ")},ObjectTypeExtension:function(_ref34){var name=_ref34.name,interfaces=_ref34.interfaces,directives=_ref34.directives,fields=_ref34.fields;return join(["extend type",name,wrap("implements ",join(interfaces," & ")),join(directives," "),block(fields)]," ")},InterfaceTypeExtension:function(_ref35){var name=_ref35.name,directives=_ref35.directives,fields=_ref35.fields;return join(["extend interface",name,join(directives," "),block(fields)]," ")},UnionTypeExtension:function(_ref36){var name=_ref36.name,directives=_ref36.directives,types=_ref36.types;return join(["extend union",name,join(directives," "),types&&0!==types.length?"= "+join(types," | "):""]," ")},EnumTypeExtension:function(_ref37){var name=_ref37.name,directives=_ref37.directives,values=_ref37.values;return join(["extend enum",name,join(directives," "),block(values)]," ")},InputObjectTypeExtension:function(_ref38){var name=_ref38.name,directives=_ref38.directives,fields=_ref38.fields;return join(["extend input",name,join(directives," "),block(fields)]," ")}};function addDescription(cb){return function(node){return join([node.description,cb(node)],"\n")}}function join(maybeArray,separator){return maybeArray?maybeArray.filter(function(x){return x}).join(separator||""):""}function block(array){return array&&0!==array.length?"{\n"+indent(join(array,"\n"))+"\n}":""}function wrap(start,maybeString,end){return maybeString?start+maybeString+(end||""):""}function indent(maybeString){return maybeString&&" "+maybeString.replace(/\n/g,"\n ")}function isMultiline(string){return-1!==string.indexOf("\n")}function hasMultilineItems(maybeArray){return maybeArray&&maybeArray.some(isMultiline)}},{"./blockString":47,"./visitor":57}],56:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.Source=void 0;var _invariant=_interopRequireDefault(require("../jsutils/invariant")),_defineToStringTag=_interopRequireDefault(require("../jsutils/defineToStringTag"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Source=function(body,name,locationOffset){this.body=body,this.name=name||"GraphQL request",this.locationOffset=locationOffset||{line:1,column:1},0<this.locationOffset.line||(0,_invariant.default)(0,"line in locationOffset is 1-indexed and must be positive"),0<this.locationOffset.column||(0,_invariant.default)(0,"column in locationOffset is 1-indexed and must be positive")};exports.Source=Source,(0,_defineToStringTag.default)(Source)},{"../jsutils/defineToStringTag":30,"../jsutils/invariant":33}],57:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.visit=function(root,visitor){var visitorKeys=2<arguments.length&&void 0!==arguments[2]?arguments[2]:QueryDocumentKeys,stack=void 0,inArray=Array.isArray(root),keys=[root],index=-1,edits=[],node=void 0,key=void 0,parent=void 0,path=[],ancestors=[],newRoot=root;do{var isLeaving=++index===keys.length,isEdited=isLeaving&&0!==edits.length;if(isLeaving){if(key=0===ancestors.length?void 0:path[path.length-1],node=parent,parent=ancestors.pop(),isEdited){if(inArray)node=node.slice();else{for(var clone={},_i=0,_Object$keys=Object.keys(node);_i<_Object$keys.length;_i++){var k=_Object$keys[_i];clone[k]=node[k]}node=clone}for(var editOffset=0,ii=0;ii<edits.length;ii++){var editKey=edits[ii][0],editValue=edits[ii][1];inArray&&(editKey-=editOffset),inArray&&null===editValue?(node.splice(editKey,1),editOffset++):node[editKey]=editValue}}index=stack.index,keys=stack.keys,edits=stack.edits,inArray=stack.inArray,stack=stack.prev}else{if(key=parent?inArray?index:keys[index]:void 0,null==(node=parent?parent[key]:newRoot))continue;parent&&path.push(key)}var result=void 0;if(!Array.isArray(node)){if(!isNode(node))throw new Error("Invalid AST Node: "+(0,_inspect.default)(node));var visitFn=getVisitFn(visitor,node.kind,isLeaving);if(visitFn){if((result=visitFn.call(visitor,node,key,parent,path,ancestors))===BREAK)break;if(!1===result){if(!isLeaving){path.pop();continue}}else if(void 0!==result&&(edits.push([key,result]),!isLeaving)){if(!isNode(result)){path.pop();continue}node=result}}}void 0===result&&isEdited&&edits.push([key,node]),isLeaving?path.pop():(stack={inArray:inArray,index:index,keys:keys,edits:edits,prev:stack},inArray=Array.isArray(node),keys=inArray?node:visitorKeys[node.kind]||[],index=-1,edits=[],parent&&ancestors.push(parent),parent=node)}while(void 0!==stack);0!==edits.length&&(newRoot=edits[edits.length-1][1]);return newRoot},exports.visitInParallel=function(visitors){var skipping=new Array(visitors.length);return{enter:function(node){for(var i=0;i<visitors.length;i++)if(!skipping[i]){var fn=getVisitFn(visitors[i],node.kind,!1);if(fn){var result=fn.apply(visitors[i],arguments);if(!1===result)skipping[i]=node;else if(result===BREAK)skipping[i]=BREAK;else if(void 0!==result)return result}}},leave:function(node){for(var i=0;i<visitors.length;i++)if(skipping[i])skipping[i]===node&&(skipping[i]=null);else{var fn=getVisitFn(visitors[i],node.kind,!0);if(fn){var result=fn.apply(visitors[i],arguments);if(result===BREAK)skipping[i]=BREAK;else if(void 0!==result&&!1!==result)return result}}}}},exports.visitWithTypeInfo=function(typeInfo,visitor){return{enter:function(node){typeInfo.enter(node);var fn=getVisitFn(visitor,node.kind,!1);if(fn){var result=fn.apply(visitor,arguments);return void 0!==result&&(typeInfo.leave(node),isNode(result)&&typeInfo.enter(result)),result}},leave:function(node){var result,fn=getVisitFn(visitor,node.kind,!0);return fn&&(result=fn.apply(visitor,arguments)),typeInfo.leave(node),result}}},exports.getVisitFn=getVisitFn,exports.BREAK=exports.QueryDocumentKeys=void 0;var obj,_inspect=(obj=require("../jsutils/inspect"))&&obj.__esModule?obj:{default:obj};var QueryDocumentKeys={Name:[],Document:["definitions"],OperationDefinition:["name","variableDefinitions","directives","selectionSet"],VariableDefinition:["variable","type","defaultValue","directives"],Variable:["name"],SelectionSet:["selections"],Field:["alias","name","arguments","directives","selectionSet"],Argument:["name","value"],FragmentSpread:["name","directives"],InlineFragment:["typeCondition","directives","selectionSet"],FragmentDefinition:["name","variableDefinitions","typeCondition","directives","selectionSet"],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:["values"],ObjectValue:["fields"],ObjectField:["name","value"],Directive:["name","arguments"],NamedType:["name"],ListType:["type"],NonNullType:["type"],SchemaDefinition:["directives","operationTypes"],OperationTypeDefinition:["type"],ScalarTypeDefinition:["description","name","directives"],ObjectTypeDefinition:["description","name","interfaces","directives","fields"],FieldDefinition:["description","name","arguments","type","directives"],InputValueDefinition:["description","name","type","defaultValue","directives"],InterfaceTypeDefinition:["description","name","directives","fields"],UnionTypeDefinition:["description","name","directives","types"],EnumTypeDefinition:["description","name","directives","values"],EnumValueDefinition:["description","name","directives"],InputObjectTypeDefinition:["description","name","directives","fields"],DirectiveDefinition:["description","name","arguments","locations"],SchemaExtension:["directives","operationTypes"],ScalarTypeExtension:["name","directives"],ObjectTypeExtension:["name","interfaces","directives","fields"],InterfaceTypeExtension:["name","directives","fields"],UnionTypeExtension:["name","directives","types"],EnumTypeExtension:["name","directives","values"],InputObjectTypeExtension:["name","directives","fields"]};exports.QueryDocumentKeys=QueryDocumentKeys;var BREAK={};function isNode(maybeNode){return Boolean(maybeNode&&"string"==typeof maybeNode.kind)}function getVisitFn(visitor,kind,isLeaving){var kindVisitor=visitor[kind];if(kindVisitor){if(!isLeaving&&"function"==typeof kindVisitor)return kindVisitor;var kindSpecificVisitor=isLeaving?kindVisitor.leave:kindVisitor.enter;if("function"==typeof kindSpecificVisitor)return kindSpecificVisitor}else{var specificVisitor=isLeaving?visitor.leave:visitor.enter;if(specificVisitor){if("function"==typeof specificVisitor)return specificVisitor;var specificKindVisitor=specificVisitor[kind];if("function"==typeof specificKindVisitor)return specificKindVisitor}}}exports.BREAK=BREAK},{"../jsutils/inspect":31}],58:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=Array.prototype.find?function(list,predicate){return Array.prototype.find.call(list,predicate)}:function(list,predicate){for(var i=0;i<list.length;i++){var value=list[i];if(predicate(value))return value}};exports.default=_default},{}],59:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=Array.prototype.flatMap?function(list,fn){return Array.prototype.flatMap.call(list,fn)}:function(list,fn){for(var result=[],i=0;i<list.length;i++){var value=fn(list[i]);Array.isArray(value)?result=result.concat(value):result.push(value)}return result};exports.default=_default},{}],60:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var isFinite=Number.isFinite||function(value){return"number"==typeof value&&isFinite(value)},_default=isFinite;exports.default=_default},{}],61:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=Number.isInteger||function(value){return"number"==typeof value&&isFinite(value)&&Math.floor(value)===value};exports.default=_default},{}],62:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=Object.entries||function(obj){return Object.keys(obj).map(function(key){return[key,obj[key]]})};exports.default=_default},{}],63:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=Object.values||function(obj){return Object.keys(obj).map(function(key){return obj[key]})};exports.default=_default},{}],64:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"subscribe",{enumerable:!0,get:function(){return _subscribe.subscribe}}),Object.defineProperty(exports,"createSourceEventStream",{enumerable:!0,get:function(){return _subscribe.createSourceEventStream}});var _subscribe=require("./subscribe")},{"./subscribe":66}],65:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(iterable,callback,rejectCallback){var $return,abruptClose,mapReject,iterator=(0,_iterall.getAsyncIterator)(iterable);"function"==typeof iterator.return&&($return=iterator.return,abruptClose=function(error){var rethrow=function(){return Promise.reject(error)};return $return.call(iterator).then(rethrow,rethrow)});function mapResult(result){return result.done?result:asyncMapValue(result.value,callback).then(iteratorResult,abruptClose)}if(rejectCallback){var reject=rejectCallback;mapReject=function(error){return asyncMapValue(error,reject).then(iteratorResult,abruptClose)}}return function(obj,key,value){key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value;return obj}({next:function(){return iterator.next().then(mapResult,mapReject)},return:function(){return $return?$return.call(iterator).then(mapResult,mapReject):Promise.resolve({value:void 0,done:!0})},throw:function(error){return"function"==typeof iterator.throw?iterator.throw(error).then(mapResult,mapReject):Promise.reject(error).catch(abruptClose)}},_iterall.$$asyncIterator,function(){return this})};var _iterall=require("iterall");function asyncMapValue(value,callback){return new Promise(function(resolve){return resolve(callback(value))})}function iteratorResult(value){return{value:value,done:!1}}},{iterall:136}],66:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.subscribe=function(argsOrSchema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,subscribeFieldResolver){return 1===arguments.length?subscribeImpl(argsOrSchema.schema,argsOrSchema.document,argsOrSchema.rootValue,argsOrSchema.contextValue,argsOrSchema.variableValues,argsOrSchema.operationName,argsOrSchema.fieldResolver,argsOrSchema.subscribeFieldResolver):subscribeImpl(argsOrSchema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,subscribeFieldResolver)},exports.createSourceEventStream=createSourceEventStream;var _iterall=require("iterall"),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_GraphQLError=require("../error/GraphQLError"),_locatedError=require("../error/locatedError"),_execute=require("../execution/execute"),_mapAsyncIterator=_interopRequireDefault(require("./mapAsyncIterator")),_getOperationRootType=require("../utilities/getOperationRootType");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function reportGraphQLError(error){if(error instanceof _GraphQLError.GraphQLError)return{errors:[error]};throw error}function subscribeImpl(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver,subscribeFieldResolver){var sourcePromise=createSourceEventStream(schema,document,rootValue,contextValue,variableValues,operationName,subscribeFieldResolver),mapSourceToResponse=function(payload){return(0,_execute.execute)(schema,document,payload,contextValue,variableValues,operationName,fieldResolver)};return sourcePromise.then(function(resultOrStream){return(0,_iterall.isAsyncIterable)(resultOrStream)?(0,_mapAsyncIterator.default)(resultOrStream,mapSourceToResponse,reportGraphQLError):resultOrStream},reportGraphQLError)}function createSourceEventStream(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver){(0,_execute.assertValidExecutionArguments)(schema,document,variableValues);try{var exeContext=(0,_execute.buildExecutionContext)(schema,document,rootValue,contextValue,variableValues,operationName,fieldResolver);if(Array.isArray(exeContext))return Promise.resolve({errors:exeContext});var type=(0,_getOperationRootType.getOperationRootType)(schema,exeContext.operation),fields=(0,_execute.collectFields)(exeContext,type,exeContext.operation.selectionSet,Object.create(null),Object.create(null)),responseName=Object.keys(fields)[0],fieldNodes=fields[responseName],fieldName=fieldNodes[0].name.value,fieldDef=(0,_execute.getFieldDef)(schema,type,fieldName);if(!fieldDef)throw new _GraphQLError.GraphQLError('The subscription field "'.concat(fieldName,'" is not defined.'),fieldNodes);var resolveFn=fieldDef.subscribe||exeContext.fieldResolver,path=(0,_execute.addPath)(void 0,responseName),info=(0,_execute.buildResolveInfo)(exeContext,fieldDef,fieldNodes,type,path),result=(0,_execute.resolveFieldValueOrError)(exeContext,fieldDef,fieldNodes,resolveFn,rootValue,info);return Promise.resolve(result).then(function(eventStream){if(eventStream instanceof Error)throw(0,_locatedError.locatedError)(eventStream,fieldNodes,(0,_execute.responsePathAsArray)(path));if((0,_iterall.isAsyncIterable)(eventStream))return eventStream;throw new Error("Subscription field must return Async Iterable. Received: "+(0,_inspect.default)(eventStream))})}catch(error){return Promise.reject(error)}}},{"../error/GraphQLError":18,"../error/locatedError":21,"../execution/execute":24,"../jsutils/inspect":31,"../utilities/getOperationRootType":85,"./mapAsyncIterator":65,iterall:136}],67:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isType=isType,exports.assertType=assertType,exports.isScalarType=isScalarType,exports.assertScalarType=function(type){return isScalarType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Scalar type.")),type},exports.isObjectType=isObjectType,exports.assertObjectType=function(type){return isObjectType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Object type.")),type},exports.isInterfaceType=isInterfaceType,exports.assertInterfaceType=function(type){return isInterfaceType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Interface type.")),type},exports.isUnionType=isUnionType,exports.assertUnionType=function(type){return isUnionType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Union type.")),type},exports.isEnumType=isEnumType,exports.assertEnumType=function(type){return isEnumType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Enum type.")),type},exports.isInputObjectType=isInputObjectType,exports.assertInputObjectType=function(type){return isInputObjectType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Input Object type.")),type},exports.isListType=isListType,exports.assertListType=function(type){return isListType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL List type.")),type},exports.isNonNullType=isNonNullType,exports.assertNonNullType=function(type){return isNonNullType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL Non-Null type.")),type},exports.isInputType=isInputType,exports.assertInputType=function(type){return isInputType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL input type.")),type},exports.isOutputType=isOutputType,exports.assertOutputType=function(type){return isOutputType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL output type.")),type},exports.isLeafType=isLeafType,exports.assertLeafType=function(type){return isLeafType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL leaf type.")),type},exports.isCompositeType=isCompositeType,exports.assertCompositeType=function(type){return isCompositeType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL composite type.")),type},exports.isAbstractType=isAbstractType,exports.assertAbstractType=function(type){return isAbstractType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL abstract type.")),type},exports.GraphQLList=GraphQLList,exports.GraphQLNonNull=GraphQLNonNull,exports.isWrappingType=isWrappingType,exports.assertWrappingType=function(type){return isWrappingType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL wrapping type.")),type},exports.isNullableType=isNullableType,exports.assertNullableType=assertNullableType,exports.getNullableType=function(type){if(type)return isNonNullType(type)?type.ofType:type},exports.isNamedType=isNamedType,exports.assertNamedType=function(type){return isNamedType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL named type.")),type},exports.getNamedType=function(type){if(type){for(var unwrappedType=type;isWrappingType(unwrappedType);)unwrappedType=unwrappedType.ofType;return unwrappedType}},exports.argsToArgsConfig=argsToArgsConfig,exports.isRequiredArgument=function(arg){return isNonNullType(arg.type)&&void 0===arg.defaultValue},exports.isRequiredInputField=function(field){return isNonNullType(field.type)&&void 0===field.defaultValue},exports.GraphQLInputObjectType=exports.GraphQLEnumType=exports.GraphQLUnionType=exports.GraphQLInterfaceType=exports.GraphQLObjectType=exports.GraphQLScalarType=void 0;var _objectEntries=_interopRequireDefault(require("../polyfills/objectEntries")),_defineToJSON=_interopRequireDefault(require("../jsutils/defineToJSON")),_defineToStringTag=_interopRequireDefault(require("../jsutils/defineToStringTag")),_instanceOf=_interopRequireDefault(require("../jsutils/instanceOf")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_keyMap=_interopRequireDefault(require("../jsutils/keyMap")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_mapValue=_interopRequireDefault(require("../jsutils/mapValue")),_kinds=require("../language/kinds"),_valueFromASTUntyped=require("../utilities/valueFromASTUntyped");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function isType(type){return isScalarType(type)||isObjectType(type)||isInterfaceType(type)||isUnionType(type)||isEnumType(type)||isInputObjectType(type)||isListType(type)||isNonNullType(type)}function assertType(type){return isType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL type.")),type}function isScalarType(type){return(0,_instanceOf.default)(type,GraphQLScalarType)}function isObjectType(type){return(0,_instanceOf.default)(type,GraphQLObjectType)}function isInterfaceType(type){return(0,_instanceOf.default)(type,GraphQLInterfaceType)}function isUnionType(type){return(0,_instanceOf.default)(type,GraphQLUnionType)}function isEnumType(type){return(0,_instanceOf.default)(type,GraphQLEnumType)}function isInputObjectType(type){return(0,_instanceOf.default)(type,GraphQLInputObjectType)}function isListType(type){return(0,_instanceOf.default)(type,GraphQLList)}function isNonNullType(type){return(0,_instanceOf.default)(type,GraphQLNonNull)}function isInputType(type){return isScalarType(type)||isEnumType(type)||isInputObjectType(type)||isWrappingType(type)&&isInputType(type.ofType)}function isOutputType(type){return isScalarType(type)||isObjectType(type)||isInterfaceType(type)||isUnionType(type)||isEnumType(type)||isWrappingType(type)&&isOutputType(type.ofType)}function isLeafType(type){return isScalarType(type)||isEnumType(type)}function isCompositeType(type){return isObjectType(type)||isInterfaceType(type)||isUnionType(type)}function isAbstractType(type){return isInterfaceType(type)||isUnionType(type)}function GraphQLList(ofType){if(!(this instanceof GraphQLList))return new GraphQLList(ofType);this.ofType=assertType(ofType)}function GraphQLNonNull(ofType){if(!(this instanceof GraphQLNonNull))return new GraphQLNonNull(ofType);this.ofType=assertNullableType(ofType)}function isWrappingType(type){return isListType(type)||isNonNullType(type)}function isNullableType(type){return isType(type)&&!isNonNullType(type)}function assertNullableType(type){return isNullableType(type)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(type)," to be a GraphQL nullable type.")),type}function isNamedType(type){return isScalarType(type)||isObjectType(type)||isInterfaceType(type)||isUnionType(type)||isEnumType(type)||isInputObjectType(type)}function resolveThunk(thunk){return"function"==typeof thunk?thunk():thunk}function undefineIfEmpty(arr){return arr&&0<arr.length?arr:void 0}GraphQLList.prototype.toString=function(){return"["+String(this.ofType)+"]"},(0,_defineToStringTag.default)(GraphQLList),(0,_defineToJSON.default)(GraphQLList),GraphQLNonNull.prototype.toString=function(){return String(this.ofType)+"!"},(0,_defineToStringTag.default)(GraphQLNonNull),(0,_defineToJSON.default)(GraphQLNonNull);var GraphQLScalarType=function(){function GraphQLScalarType(config){this.name=config.name,this.description=config.description,this.serialize=config.serialize,this.parseValue=config.parseValue||function(value){return value},this.parseLiteral=config.parseLiteral||_valueFromASTUntyped.valueFromASTUntyped,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name."),"function"!=typeof config.serialize&&(0,_invariant.default)(0,"".concat(this.name,' must provide "serialize" function. If this custom Scalar ')+'is also used as an input type, ensure "parseValue" and "parseLiteral" functions are also provided.'),!config.parseValue&&!config.parseLiteral||"function"==typeof config.parseValue&&"function"==typeof config.parseLiteral||(0,_invariant.default)(0,"".concat(this.name,' must provide both "parseValue" and "parseLiteral" ')+"functions.")}var _proto=GraphQLScalarType.prototype;return _proto.toConfig=function(){return{name:this.name,description:this.description,serialize:this.serialize,parseValue:this.parseValue,parseLiteral:this.parseLiteral,astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto.toString=function(){return this.name},GraphQLScalarType}();exports.GraphQLScalarType=GraphQLScalarType,(0,_defineToStringTag.default)(GraphQLScalarType),(0,_defineToJSON.default)(GraphQLScalarType);var GraphQLObjectType=function(){function GraphQLObjectType(config){this.name=config.name,this.description=config.description,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),this.isTypeOf=config.isTypeOf,this._fields=defineFieldMap.bind(void 0,config),this._interfaces=function(config){var interfaces=resolveThunk(config.interfaces)||[];return Array.isArray(interfaces)||(0,_invariant.default)(0,"".concat(config.name," interfaces must be an Array or a function which returns ")+"an Array."),interfaces}.bind(void 0,config),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name."),null!=config.isTypeOf&&"function"!=typeof config.isTypeOf&&(0,_invariant.default)(0,"".concat(this.name,' must provide "isTypeOf" as a function, ')+"but got: ".concat((0,_inspect.default)(config.isTypeOf),"."))}var _proto2=GraphQLObjectType.prototype;return _proto2.getFields=function(){return"function"==typeof this._fields&&(this._fields=this._fields()),this._fields},_proto2.getInterfaces=function(){return"function"==typeof this._interfaces&&(this._interfaces=this._interfaces()),this._interfaces},_proto2.toConfig=function(){return{name:this.name,description:this.description,isTypeOf:this.isTypeOf,interfaces:this.getInterfaces(),fields:fieldsToFieldsConfig(this.getFields()),astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto2.toString=function(){return this.name},GraphQLObjectType}();function defineFieldMap(config){var fieldMap=resolveThunk(config.fields)||{};return isPlainObj(fieldMap)||(0,_invariant.default)(0,"".concat(config.name," fields must be an object with field names as keys or a ")+"function which returns such an object."),(0,_mapValue.default)(fieldMap,function(fieldConfig,fieldName){isPlainObj(fieldConfig)||(0,_invariant.default)(0,"".concat(config.name,".").concat(fieldName," field config must be an object")),"isDeprecated"in fieldConfig&&(0,_invariant.default)(0,"".concat(config.name,".").concat(fieldName,' should provide "deprecationReason" ')+'instead of "isDeprecated".'),null!=fieldConfig.resolve&&"function"!=typeof fieldConfig.resolve&&(0,_invariant.default)(0,"".concat(config.name,".").concat(fieldName," field resolver must be a function if ")+"provided, but got: ".concat((0,_inspect.default)(fieldConfig.resolve),"."));var argsConfig=fieldConfig.args||{};isPlainObj(argsConfig)||(0,_invariant.default)(0,"".concat(config.name,".").concat(fieldName," args must be an object with argument ")+"names as keys.");var args=(0,_objectEntries.default)(argsConfig).map(function(_ref){var argName=_ref[0],arg=_ref[1];return{name:argName,description:void 0===arg.description?null:arg.description,type:arg.type,defaultValue:arg.defaultValue,astNode:arg.astNode}});return _objectSpread({},fieldConfig,{isDeprecated:Boolean(fieldConfig.deprecationReason),name:fieldName,args:args})})}function isPlainObj(obj){return obj&&"object"===_typeof(obj)&&!Array.isArray(obj)}function fieldsToFieldsConfig(fields){return(0,_mapValue.default)(fields,function(field){return{type:field.type,args:argsToArgsConfig(field.args),resolve:field.resolve,subscribe:field.subscribe,deprecationReason:field.deprecationReason,description:field.description,astNode:field.astNode}})}function argsToArgsConfig(args){return(0,_keyValMap.default)(args,function(arg){return arg.name},function(arg){return{type:arg.type,defaultValue:arg.defaultValue,description:arg.description,astNode:arg.astNode}})}exports.GraphQLObjectType=GraphQLObjectType,(0,_defineToStringTag.default)(GraphQLObjectType),(0,_defineToJSON.default)(GraphQLObjectType);var GraphQLInterfaceType=function(){function GraphQLInterfaceType(config){this.name=config.name,this.description=config.description,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),this.resolveType=config.resolveType,this._fields=defineFieldMap.bind(void 0,config),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name."),null!=config.resolveType&&"function"!=typeof config.resolveType&&(0,_invariant.default)(0,"".concat(this.name,' must provide "resolveType" as a function, ')+"but got: ".concat((0,_inspect.default)(config.resolveType),"."))}var _proto3=GraphQLInterfaceType.prototype;return _proto3.getFields=function(){return"function"==typeof this._fields&&(this._fields=this._fields()),this._fields},_proto3.toConfig=function(){return{name:this.name,description:this.description,resolveType:this.resolveType,fields:fieldsToFieldsConfig(this.getFields()),astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto3.toString=function(){return this.name},GraphQLInterfaceType}();exports.GraphQLInterfaceType=GraphQLInterfaceType,(0,_defineToStringTag.default)(GraphQLInterfaceType),(0,_defineToJSON.default)(GraphQLInterfaceType);var GraphQLUnionType=function(){function GraphQLUnionType(config){this.name=config.name,this.description=config.description,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),this.resolveType=config.resolveType,this._types=function(config){var types=resolveThunk(config.types)||[];return Array.isArray(types)||(0,_invariant.default)(0,"Must provide Array of types or a function which returns "+"such an array for Union ".concat(config.name,".")),types}.bind(void 0,config),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name."),null!=config.resolveType&&"function"!=typeof config.resolveType&&(0,_invariant.default)(0,"".concat(this.name,' must provide "resolveType" as a function, ')+"but got: ".concat((0,_inspect.default)(config.resolveType),"."))}var _proto4=GraphQLUnionType.prototype;return _proto4.getTypes=function(){return"function"==typeof this._types&&(this._types=this._types()),this._types},_proto4.toConfig=function(){return{name:this.name,description:this.description,resolveType:this.resolveType,types:this.getTypes(),astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto4.toString=function(){return this.name},GraphQLUnionType}();exports.GraphQLUnionType=GraphQLUnionType,(0,_defineToStringTag.default)(GraphQLUnionType),(0,_defineToJSON.default)(GraphQLUnionType);var GraphQLEnumType=function(){function GraphQLEnumType(config){this.name=config.name,this.description=config.description,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),this._values=function(type,valueMap){return isPlainObj(valueMap)||(0,_invariant.default)(0,"".concat(type.name," values must be an object with value names as keys.")),(0,_objectEntries.default)(valueMap).map(function(_ref2){var valueName=_ref2[0],value=_ref2[1];return isPlainObj(value)||(0,_invariant.default)(0,"".concat(type.name,".").concat(valueName,' must refer to an object with a "value" key ')+"representing an internal value but got: ".concat((0,_inspect.default)(value),".")),"isDeprecated"in value&&(0,_invariant.default)(0,"".concat(type.name,".").concat(valueName,' should provide "deprecationReason" instead ')+'of "isDeprecated".'),{name:valueName,description:value.description,isDeprecated:Boolean(value.deprecationReason),deprecationReason:value.deprecationReason,astNode:value.astNode,value:"value"in value?value.value:valueName}})}(this,config.values),this._valueLookup=new Map(this._values.map(function(enumValue){return[enumValue.value,enumValue]})),this._nameLookup=(0,_keyMap.default)(this._values,function(value){return value.name}),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name.")}var _proto5=GraphQLEnumType.prototype;return _proto5.getValues=function(){return this._values},_proto5.getValue=function(name){return this._nameLookup[name]},_proto5.serialize=function(value){var enumValue=this._valueLookup.get(value);if(enumValue)return enumValue.name},_proto5.parseValue=function(value){if("string"==typeof value){var enumValue=this.getValue(value);if(enumValue)return enumValue.value}},_proto5.parseLiteral=function(valueNode,_variables){if(valueNode.kind===_kinds.Kind.ENUM){var enumValue=this.getValue(valueNode.value);if(enumValue)return enumValue.value}},_proto5.toConfig=function(){var values=(0,_keyValMap.default)(this.getValues(),function(value){return value.name},function(value){return{description:value.description,value:value.value,deprecationReason:value.deprecationReason,astNode:value.astNode}});return{name:this.name,description:this.description,values:values,astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto5.toString=function(){return this.name},GraphQLEnumType}();exports.GraphQLEnumType=GraphQLEnumType,(0,_defineToStringTag.default)(GraphQLEnumType),(0,_defineToJSON.default)(GraphQLEnumType);var GraphQLInputObjectType=function(){function GraphQLInputObjectType(config){this.name=config.name,this.description=config.description,this.astNode=config.astNode,this.extensionASTNodes=undefineIfEmpty(config.extensionASTNodes),this._fields=function(config){var fieldMap=resolveThunk(config.fields)||{};return isPlainObj(fieldMap)||(0,_invariant.default)(0,"".concat(config.name," fields must be an object with field names as keys or a ")+"function which returns such an object."),(0,_mapValue.default)(fieldMap,function(fieldConfig,fieldName){return"resolve"in fieldConfig&&(0,_invariant.default)(0,"".concat(config.name,".").concat(fieldName," field has a resolve property, but ")+"Input Types cannot define resolvers."),_objectSpread({},fieldConfig,{name:fieldName})})}.bind(void 0,config),"string"!=typeof config.name&&(0,_invariant.default)(0,"Must provide name.")}var _proto6=GraphQLInputObjectType.prototype;return _proto6.getFields=function(){return"function"==typeof this._fields&&(this._fields=this._fields()),this._fields},_proto6.toConfig=function(){var fields=(0,_mapValue.default)(this.getFields(),function(field){return{description:field.description,type:field.type,defaultValue:field.defaultValue,astNode:field.astNode}});return{name:this.name,description:this.description,fields:fields,astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[]}},_proto6.toString=function(){return this.name},GraphQLInputObjectType}();exports.GraphQLInputObjectType=GraphQLInputObjectType,(0,_defineToStringTag.default)(GraphQLInputObjectType),(0,_defineToJSON.default)(GraphQLInputObjectType)},{"../jsutils/defineToJSON":29,"../jsutils/defineToStringTag":30,"../jsutils/inspect":31,"../jsutils/instanceOf":32,"../jsutils/invariant":33,"../jsutils/keyMap":37,"../jsutils/keyValMap":38,"../jsutils/mapValue":39,"../language/kinds":50,"../polyfills/objectEntries":62,"../utilities/valueFromASTUntyped":98}],68:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isDirective=isDirective,exports.assertDirective=function(directive){return isDirective(directive)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(directive)," to be a GraphQL directive.")),directive},exports.isSpecifiedDirective=function(directive){return isDirective(directive)&&specifiedDirectives.some(function(_ref2){var name=_ref2.name;return name===directive.name})},exports.specifiedDirectives=exports.GraphQLDeprecatedDirective=exports.DEFAULT_DEPRECATION_REASON=exports.GraphQLSkipDirective=exports.GraphQLIncludeDirective=exports.GraphQLDirective=void 0;var _objectEntries=_interopRequireDefault(require("../polyfills/objectEntries")),_definition=require("./definition"),_scalars=require("./scalars"),_defineToStringTag=_interopRequireDefault(require("../jsutils/defineToStringTag")),_defineToJSON=_interopRequireDefault(require("../jsutils/defineToJSON")),_instanceOf=_interopRequireDefault(require("../jsutils/instanceOf")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_directiveLocation=require("../language/directiveLocation");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function isDirective(directive){return(0,_instanceOf.default)(directive,GraphQLDirective)}var GraphQLDirective=function(){function GraphQLDirective(config){this.name=config.name,this.description=config.description,this.locations=config.locations,this.astNode=config.astNode,config.name||(0,_invariant.default)(0,"Directive must be named."),Array.isArray(config.locations)||(0,_invariant.default)(0,"@".concat(config.name," locations must be an Array."));var args=config.args||{};"object"===_typeof(args)&&!Array.isArray(args)||(0,_invariant.default)(0,"@".concat(config.name," args must be an object with argument names as keys.")),this.args=(0,_objectEntries.default)(args).map(function(_ref){var argName=_ref[0],arg=_ref[1];return{name:argName,description:void 0===arg.description?null:arg.description,type:arg.type,defaultValue:arg.defaultValue,astNode:arg.astNode}})}var _proto=GraphQLDirective.prototype;return _proto.toString=function(){return"@"+this.name},_proto.toConfig=function(){return{name:this.name,description:this.description,locations:this.locations,args:(0,_definition.argsToArgsConfig)(this.args),astNode:this.astNode}},GraphQLDirective}();exports.GraphQLDirective=GraphQLDirective,(0,_defineToStringTag.default)(GraphQLDirective),(0,_defineToJSON.default)(GraphQLDirective);var GraphQLIncludeDirective=new GraphQLDirective({name:"include",description:"Directs the executor to include this field or fragment only when the `if` argument is true.",locations:[_directiveLocation.DirectiveLocation.FIELD,_directiveLocation.DirectiveLocation.FRAGMENT_SPREAD,_directiveLocation.DirectiveLocation.INLINE_FRAGMENT],args:{if:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLBoolean),description:"Included when true."}}});exports.GraphQLIncludeDirective=GraphQLIncludeDirective;var GraphQLSkipDirective=new GraphQLDirective({name:"skip",description:"Directs the executor to skip this field or fragment when the `if` argument is true.",locations:[_directiveLocation.DirectiveLocation.FIELD,_directiveLocation.DirectiveLocation.FRAGMENT_SPREAD,_directiveLocation.DirectiveLocation.INLINE_FRAGMENT],args:{if:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLBoolean),description:"Skipped when true."}}});exports.GraphQLSkipDirective=GraphQLSkipDirective;exports.DEFAULT_DEPRECATION_REASON="No longer supported";var GraphQLDeprecatedDirective=new GraphQLDirective({name:"deprecated",description:"Marks an element of a GraphQL schema as no longer supported.",locations:[_directiveLocation.DirectiveLocation.FIELD_DEFINITION,_directiveLocation.DirectiveLocation.ENUM_VALUE],args:{reason:{type:_scalars.GraphQLString,description:"Explains why this element was deprecated, usually also including a suggestion for how to access supported similar data. Formatted using the Markdown syntax (as specified by [CommonMark](https://commonmark.org/).",defaultValue:"No longer supported"}}}),specifiedDirectives=[GraphQLIncludeDirective,GraphQLSkipDirective,exports.GraphQLDeprecatedDirective=GraphQLDeprecatedDirective];exports.specifiedDirectives=specifiedDirectives},{"../jsutils/defineToJSON":29,"../jsutils/defineToStringTag":30,"../jsutils/inspect":31,"../jsutils/instanceOf":32,"../jsutils/invariant":33,"../language/directiveLocation":48,"../polyfills/objectEntries":62,"./definition":67,"./scalars":71}],69:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"isSchema",{enumerable:!0,get:function(){return _schema.isSchema}}),Object.defineProperty(exports,"assertSchema",{enumerable:!0,get:function(){return _schema.assertSchema}}),Object.defineProperty(exports,"GraphQLSchema",{enumerable:!0,get:function(){return _schema.GraphQLSchema}}),Object.defineProperty(exports,"isType",{enumerable:!0,get:function(){return _definition.isType}}),Object.defineProperty(exports,"isScalarType",{enumerable:!0,get:function(){return _definition.isScalarType}}),Object.defineProperty(exports,"isObjectType",{enumerable:!0,get:function(){return _definition.isObjectType}}),Object.defineProperty(exports,"isInterfaceType",{enumerable:!0,get:function(){return _definition.isInterfaceType}}),Object.defineProperty(exports,"isUnionType",{enumerable:!0,get:function(){return _definition.isUnionType}}),Object.defineProperty(exports,"isEnumType",{enumerable:!0,get:function(){return _definition.isEnumType}}),Object.defineProperty(exports,"isInputObjectType",{enumerable:!0,get:function(){return _definition.isInputObjectType}}),Object.defineProperty(exports,"isListType",{enumerable:!0,get:function(){return _definition.isListType}}),Object.defineProperty(exports,"isNonNullType",{enumerable:!0,get:function(){return _definition.isNonNullType}}),Object.defineProperty(exports,"isInputType",{enumerable:!0,get:function(){return _definition.isInputType}}),Object.defineProperty(exports,"isOutputType",{enumerable:!0,get:function(){return _definition.isOutputType}}),Object.defineProperty(exports,"isLeafType",{enumerable:!0,get:function(){return _definition.isLeafType}}),Object.defineProperty(exports,"isCompositeType",{enumerable:!0,get:function(){return _definition.isCompositeType}}),Object.defineProperty(exports,"isAbstractType",{enumerable:!0,get:function(){return _definition.isAbstractType}}),Object.defineProperty(exports,"isWrappingType",{enumerable:!0,get:function(){return _definition.isWrappingType}}),Object.defineProperty(exports,"isNullableType",{enumerable:!0,get:function(){return _definition.isNullableType}}),Object.defineProperty(exports,"isNamedType",{enumerable:!0,get:function(){return _definition.isNamedType}}),Object.defineProperty(exports,"isRequiredArgument",{enumerable:!0,get:function(){return _definition.isRequiredArgument}}),Object.defineProperty(exports,"isRequiredInputField",{enumerable:!0,get:function(){return _definition.isRequiredInputField}}),Object.defineProperty(exports,"assertType",{enumerable:!0,get:function(){return _definition.assertType}}),Object.defineProperty(exports,"assertScalarType",{enumerable:!0,get:function(){return _definition.assertScalarType}}),Object.defineProperty(exports,"assertObjectType",{enumerable:!0,get:function(){return _definition.assertObjectType}}),Object.defineProperty(exports,"assertInterfaceType",{enumerable:!0,get:function(){return _definition.assertInterfaceType}}),Object.defineProperty(exports,"assertUnionType",{enumerable:!0,get:function(){return _definition.assertUnionType}}),Object.defineProperty(exports,"assertEnumType",{enumerable:!0,get:function(){return _definition.assertEnumType}}),Object.defineProperty(exports,"assertInputObjectType",{enumerable:!0,get:function(){return _definition.assertInputObjectType}}),Object.defineProperty(exports,"assertListType",{enumerable:!0,get:function(){return _definition.assertListType}}),Object.defineProperty(exports,"assertNonNullType",{enumerable:!0,get:function(){return _definition.assertNonNullType}}),Object.defineProperty(exports,"assertInputType",{enumerable:!0,get:function(){return _definition.assertInputType}}),Object.defineProperty(exports,"assertOutputType",{enumerable:!0,get:function(){return _definition.assertOutputType}}),Object.defineProperty(exports,"assertLeafType",{enumerable:!0,get:function(){return _definition.assertLeafType}}),Object.defineProperty(exports,"assertCompositeType",{enumerable:!0,get:function(){return _definition.assertCompositeType}}),Object.defineProperty(exports,"assertAbstractType",{enumerable:!0,get:function(){return _definition.assertAbstractType}}),Object.defineProperty(exports,"assertWrappingType",{enumerable:!0,get:function(){return _definition.assertWrappingType}}),Object.defineProperty(exports,"assertNullableType",{enumerable:!0,get:function(){return _definition.assertNullableType}}),Object.defineProperty(exports,"assertNamedType",{enumerable:!0,get:function(){return _definition.assertNamedType}}),Object.defineProperty(exports,"getNullableType",{enumerable:!0,get:function(){return _definition.getNullableType}}),Object.defineProperty(exports,"getNamedType",{enumerable:!0,get:function(){return _definition.getNamedType}}),Object.defineProperty(exports,"GraphQLScalarType",{enumerable:!0,get:function(){return _definition.GraphQLScalarType}}),Object.defineProperty(exports,"GraphQLObjectType",{enumerable:!0,get:function(){return _definition.GraphQLObjectType}}),Object.defineProperty(exports,"GraphQLInterfaceType",{enumerable:!0,get:function(){return _definition.GraphQLInterfaceType}}),Object.defineProperty(exports,"GraphQLUnionType",{enumerable:!0,get:function(){return _definition.GraphQLUnionType}}),Object.defineProperty(exports,"GraphQLEnumType",{enumerable:!0,get:function(){return _definition.GraphQLEnumType}}),Object.defineProperty(exports,"GraphQLInputObjectType",{enumerable:!0,get:function(){return _definition.GraphQLInputObjectType}}),Object.defineProperty(exports,"GraphQLList",{enumerable:!0,get:function(){return _definition.GraphQLList}}),Object.defineProperty(exports,"GraphQLNonNull",{enumerable:!0,get:function(){return _definition.GraphQLNonNull}}),Object.defineProperty(exports,"isDirective",{enumerable:!0,get:function(){return _directives.isDirective}}),Object.defineProperty(exports,"assertDirective",{enumerable:!0,get:function(){return _directives.assertDirective}}),Object.defineProperty(exports,"GraphQLDirective",{enumerable:!0,get:function(){return _directives.GraphQLDirective}}),Object.defineProperty(exports,"isSpecifiedDirective",{enumerable:!0,get:function(){return _directives.isSpecifiedDirective}}),Object.defineProperty(exports,"specifiedDirectives",{enumerable:!0,get:function(){return _directives.specifiedDirectives}}),Object.defineProperty(exports,"GraphQLIncludeDirective",{enumerable:!0,get:function(){return _directives.GraphQLIncludeDirective}}),Object.defineProperty(exports,"GraphQLSkipDirective",{enumerable:!0,get:function(){return _directives.GraphQLSkipDirective}}),Object.defineProperty(exports,"GraphQLDeprecatedDirective",{enumerable:!0,get:function(){return _directives.GraphQLDeprecatedDirective}}),Object.defineProperty(exports,"DEFAULT_DEPRECATION_REASON",{enumerable:!0,get:function(){return _directives.DEFAULT_DEPRECATION_REASON}}),Object.defineProperty(exports,"isSpecifiedScalarType",{enumerable:!0,get:function(){return _scalars.isSpecifiedScalarType}}),Object.defineProperty(exports,"specifiedScalarTypes",{enumerable:!0,get:function(){return _scalars.specifiedScalarTypes}}),Object.defineProperty(exports,"GraphQLInt",{enumerable:!0,get:function(){return _scalars.GraphQLInt}}),Object.defineProperty(exports,"GraphQLFloat",{enumerable:!0,get:function(){return _scalars.GraphQLFloat}}),Object.defineProperty(exports,"GraphQLString",{enumerable:!0,get:function(){return _scalars.GraphQLString}}),Object.defineProperty(exports,"GraphQLBoolean",{enumerable:!0,get:function(){return _scalars.GraphQLBoolean}}),Object.defineProperty(exports,"GraphQLID",{enumerable:!0,get:function(){return _scalars.GraphQLID}}),Object.defineProperty(exports,"isIntrospectionType",{enumerable:!0,get:function(){return _introspection.isIntrospectionType}}),Object.defineProperty(exports,"introspectionTypes",{enumerable:!0,get:function(){return _introspection.introspectionTypes}}),Object.defineProperty(exports,"__Schema",{enumerable:!0,get:function(){return _introspection.__Schema}}),Object.defineProperty(exports,"__Directive",{enumerable:!0,get:function(){return _introspection.__Directive}}),Object.defineProperty(exports,"__DirectiveLocation",{enumerable:!0,get:function(){return _introspection.__DirectiveLocation}}),Object.defineProperty(exports,"__Type",{enumerable:!0,get:function(){return _introspection.__Type}}),Object.defineProperty(exports,"__Field",{enumerable:!0,get:function(){return _introspection.__Field}}),Object.defineProperty(exports,"__InputValue",{enumerable:!0,get:function(){return _introspection.__InputValue}}),Object.defineProperty(exports,"__EnumValue",{enumerable:!0,get:function(){return _introspection.__EnumValue}}),Object.defineProperty(exports,"__TypeKind",{enumerable:!0,get:function(){return _introspection.__TypeKind}}),Object.defineProperty(exports,"TypeKind",{enumerable:!0,get:function(){return _introspection.TypeKind}}),Object.defineProperty(exports,"SchemaMetaFieldDef",{enumerable:!0,get:function(){return _introspection.SchemaMetaFieldDef}}),Object.defineProperty(exports,"TypeMetaFieldDef",{enumerable:!0,get:function(){return _introspection.TypeMetaFieldDef}}),Object.defineProperty(exports,"TypeNameMetaFieldDef",{enumerable:!0,get:function(){return _introspection.TypeNameMetaFieldDef}}),Object.defineProperty(exports,"validateSchema",{enumerable:!0,get:function(){return _validate.validateSchema}}),Object.defineProperty(exports,"assertValidSchema",{enumerable:!0,get:function(){return _validate.assertValidSchema}});var _schema=require("./schema"),_definition=require("./definition"),_directives=require("./directives"),_scalars=require("./scalars"),_introspection=require("./introspection"),_validate=require("./validate")},{"./definition":67,"./directives":68,"./introspection":70,"./scalars":71,"./schema":72,"./validate":73}],70:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isIntrospectionType=function(type){return(0,_definition.isNamedType)(type)&&introspectionTypes.some(function(_ref8){var name=_ref8.name;return type.name===name})},exports.introspectionTypes=exports.TypeNameMetaFieldDef=exports.TypeMetaFieldDef=exports.SchemaMetaFieldDef=exports.__TypeKind=exports.TypeKind=exports.__EnumValue=exports.__InputValue=exports.__Field=exports.__Type=exports.__DirectiveLocation=exports.__Directive=exports.__Schema=void 0;var _objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_astFromValue=require("../utilities/astFromValue"),_printer=require("../language/printer"),_definition=require("./definition"),_scalars=require("./scalars"),_directiveLocation=require("../language/directiveLocation");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var __Schema=new _definition.GraphQLObjectType({name:"__Schema",description:"A GraphQL Schema defines the capabilities of a GraphQL server. It exposes all available types and directives on the server, as well as the entry points for query, mutation, and subscription operations.",fields:function(){return{types:{description:"A list of all types supported by this server.",type:(0,_definition.GraphQLNonNull)((0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__Type))),resolve:function(schema){return(0,_objectValues.default)(schema.getTypeMap())}},queryType:{description:"The type that query operations will be rooted at.",type:(0,_definition.GraphQLNonNull)(__Type),resolve:function(schema){return schema.getQueryType()}},mutationType:{description:"If this server supports mutation, the type that mutation operations will be rooted at.",type:__Type,resolve:function(schema){return schema.getMutationType()}},subscriptionType:{description:"If this server support subscription, the type that subscription operations will be rooted at.",type:__Type,resolve:function(schema){return schema.getSubscriptionType()}},directives:{description:"A list of all directives supported by this server.",type:(0,_definition.GraphQLNonNull)((0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__Directive))),resolve:function(schema){return schema.getDirectives()}}}}});exports.__Schema=__Schema;var __Directive=new _definition.GraphQLObjectType({name:"__Directive",description:"A Directive provides a way to describe alternate runtime execution and type validation behavior in a GraphQL document.\n\nIn some cases, you need to provide options to alter GraphQL's execution behavior in ways field arguments will not suffice, such as conditionally including or skipping a field. Directives provide this by describing additional information to the executor.",fields:function(){return{name:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString),resolve:function(obj){return obj.name}},description:{type:_scalars.GraphQLString,resolve:function(obj){return obj.description}},locations:{type:(0,_definition.GraphQLNonNull)((0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__DirectiveLocation))),resolve:function(obj){return obj.locations}},args:{type:(0,_definition.GraphQLNonNull)((0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__InputValue))),resolve:function(directive){return directive.args||[]}}}}});exports.__Directive=__Directive;var __DirectiveLocation=new _definition.GraphQLEnumType({name:"__DirectiveLocation",description:"A Directive can be adjacent to many parts of the GraphQL language, a __DirectiveLocation describes one such possible adjacencies.",values:{QUERY:{value:_directiveLocation.DirectiveLocation.QUERY,description:"Location adjacent to a query operation."},MUTATION:{value:_directiveLocation.DirectiveLocation.MUTATION,description:"Location adjacent to a mutation operation."},SUBSCRIPTION:{value:_directiveLocation.DirectiveLocation.SUBSCRIPTION,description:"Location adjacent to a subscription operation."},FIELD:{value:_directiveLocation.DirectiveLocation.FIELD,description:"Location adjacent to a field."},FRAGMENT_DEFINITION:{value:_directiveLocation.DirectiveLocation.FRAGMENT_DEFINITION,description:"Location adjacent to a fragment definition."},FRAGMENT_SPREAD:{value:_directiveLocation.DirectiveLocation.FRAGMENT_SPREAD,description:"Location adjacent to a fragment spread."},INLINE_FRAGMENT:{value:_directiveLocation.DirectiveLocation.INLINE_FRAGMENT,description:"Location adjacent to an inline fragment."},VARIABLE_DEFINITION:{value:_directiveLocation.DirectiveLocation.VARIABLE_DEFINITION,description:"Location adjacent to a variable definition."},SCHEMA:{value:_directiveLocation.DirectiveLocation.SCHEMA,description:"Location adjacent to a schema definition."},SCALAR:{value:_directiveLocation.DirectiveLocation.SCALAR,description:"Location adjacent to a scalar definition."},OBJECT:{value:_directiveLocation.DirectiveLocation.OBJECT,description:"Location adjacent to an object type definition."},FIELD_DEFINITION:{value:_directiveLocation.DirectiveLocation.FIELD_DEFINITION,description:"Location adjacent to a field definition."},ARGUMENT_DEFINITION:{value:_directiveLocation.DirectiveLocation.ARGUMENT_DEFINITION,description:"Location adjacent to an argument definition."},INTERFACE:{value:_directiveLocation.DirectiveLocation.INTERFACE,description:"Location adjacent to an interface definition."},UNION:{value:_directiveLocation.DirectiveLocation.UNION,description:"Location adjacent to a union definition."},ENUM:{value:_directiveLocation.DirectiveLocation.ENUM,description:"Location adjacent to an enum definition."},ENUM_VALUE:{value:_directiveLocation.DirectiveLocation.ENUM_VALUE,description:"Location adjacent to an enum value definition."},INPUT_OBJECT:{value:_directiveLocation.DirectiveLocation.INPUT_OBJECT,description:"Location adjacent to an input object type definition."},INPUT_FIELD_DEFINITION:{value:_directiveLocation.DirectiveLocation.INPUT_FIELD_DEFINITION,description:"Location adjacent to an input object field definition."}}});exports.__DirectiveLocation=__DirectiveLocation;var __Type=new _definition.GraphQLObjectType({name:"__Type",description:"The fundamental unit of any GraphQL Schema is the type. There are many kinds of types in GraphQL as represented by the `__TypeKind` enum.\n\nDepending on the kind of a type, certain fields describe information about that type. Scalar types provide no information beyond a name and description, while Enum types provide their values. Object and Interface types provide the fields they describe. Abstract types, Union and Interface, provide the Object types possible at runtime. List and NonNull types compose other types.",fields:function(){return{kind:{type:(0,_definition.GraphQLNonNull)(__TypeKind),resolve:function(type){if((0,_definition.isScalarType)(type))return TypeKind.SCALAR;if((0,_definition.isObjectType)(type))return TypeKind.OBJECT;if((0,_definition.isInterfaceType)(type))return TypeKind.INTERFACE;if((0,_definition.isUnionType)(type))return TypeKind.UNION;if((0,_definition.isEnumType)(type))return TypeKind.ENUM;if((0,_definition.isInputObjectType)(type))return TypeKind.INPUT_OBJECT;if((0,_definition.isListType)(type))return TypeKind.LIST;if((0,_definition.isNonNullType)(type))return TypeKind.NON_NULL;throw new Error('Unexpected type: "'.concat((0,_inspect.default)(type),'".'))}},name:{type:_scalars.GraphQLString,resolve:function(obj){return obj.name}},description:{type:_scalars.GraphQLString,resolve:function(obj){return obj.description}},fields:{type:(0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__Field)),args:{includeDeprecated:{type:_scalars.GraphQLBoolean,defaultValue:!1}},resolve:function(type,_ref){var includeDeprecated=_ref.includeDeprecated;if((0,_definition.isObjectType)(type)||(0,_definition.isInterfaceType)(type)){var fields=(0,_objectValues.default)(type.getFields());return includeDeprecated||(fields=fields.filter(function(field){return!field.deprecationReason})),fields}return null}},interfaces:{type:(0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__Type)),resolve:function(type){if((0,_definition.isObjectType)(type))return type.getInterfaces()}},possibleTypes:{type:(0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__Type)),resolve:function(type,args,context,_ref2){var schema=_ref2.schema;if((0,_definition.isAbstractType)(type))return schema.getPossibleTypes(type)}},enumValues:{type:(0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__EnumValue)),args:{includeDeprecated:{type:_scalars.GraphQLBoolean,defaultValue:!1}},resolve:function(type,_ref3){var includeDeprecated=_ref3.includeDeprecated;if((0,_definition.isEnumType)(type)){var values=type.getValues();return includeDeprecated||(values=values.filter(function(value){return!value.deprecationReason})),values}}},inputFields:{type:(0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__InputValue)),resolve:function(type){if((0,_definition.isInputObjectType)(type))return(0,_objectValues.default)(type.getFields())}},ofType:{type:__Type,resolve:function(obj){return obj.ofType}}}}});exports.__Type=__Type;var __Field=new _definition.GraphQLObjectType({name:"__Field",description:"Object and Interface types are described by a list of Fields, each of which has a name, potentially a list of arguments, and a return type.",fields:function(){return{name:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString),resolve:function(obj){return obj.name}},description:{type:_scalars.GraphQLString,resolve:function(obj){return obj.description}},args:{type:(0,_definition.GraphQLNonNull)((0,_definition.GraphQLList)((0,_definition.GraphQLNonNull)(__InputValue))),resolve:function(field){return field.args||[]}},type:{type:(0,_definition.GraphQLNonNull)(__Type),resolve:function(obj){return obj.type}},isDeprecated:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLBoolean),resolve:function(obj){return obj.isDeprecated}},deprecationReason:{type:_scalars.GraphQLString,resolve:function(obj){return obj.deprecationReason}}}}});exports.__Field=__Field;var __InputValue=new _definition.GraphQLObjectType({name:"__InputValue",description:"Arguments provided to Fields or Directives and the input fields of an InputObject are represented as Input Values which describe their type and optionally a default value.",fields:function(){return{name:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString),resolve:function(obj){return obj.name}},description:{type:_scalars.GraphQLString,resolve:function(obj){return obj.description}},type:{type:(0,_definition.GraphQLNonNull)(__Type),resolve:function(obj){return obj.type}},defaultValue:{type:_scalars.GraphQLString,description:"A GraphQL-formatted string representing the default value for this input value.",resolve:function(inputVal){var valueAST=(0,_astFromValue.astFromValue)(inputVal.defaultValue,inputVal.type);return valueAST?(0,_printer.print)(valueAST):null}}}}});exports.__InputValue=__InputValue;var __EnumValue=new _definition.GraphQLObjectType({name:"__EnumValue",description:"One possible value for a given Enum. Enum values are unique values, not a placeholder for a string or numeric value. However an Enum value is returned in a JSON response as a string.",fields:function(){return{name:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString),resolve:function(obj){return obj.name}},description:{type:_scalars.GraphQLString,resolve:function(obj){return obj.description}},isDeprecated:{type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLBoolean),resolve:function(obj){return obj.isDeprecated}},deprecationReason:{type:_scalars.GraphQLString,resolve:function(obj){return obj.deprecationReason}}}}});exports.__EnumValue=__EnumValue;var TypeKind={SCALAR:"SCALAR",OBJECT:"OBJECT",INTERFACE:"INTERFACE",UNION:"UNION",ENUM:"ENUM",INPUT_OBJECT:"INPUT_OBJECT",LIST:"LIST",NON_NULL:"NON_NULL"};exports.TypeKind=TypeKind;var __TypeKind=new _definition.GraphQLEnumType({name:"__TypeKind",description:"An enum describing what kind of type a given `__Type` is.",values:{SCALAR:{value:TypeKind.SCALAR,description:"Indicates this type is a scalar."},OBJECT:{value:TypeKind.OBJECT,description:"Indicates this type is an object. `fields` and `interfaces` are valid fields."},INTERFACE:{value:TypeKind.INTERFACE,description:"Indicates this type is an interface. `fields` and `possibleTypes` are valid fields."},UNION:{value:TypeKind.UNION,description:"Indicates this type is a union. `possibleTypes` is a valid field."},ENUM:{value:TypeKind.ENUM,description:"Indicates this type is an enum. `enumValues` is a valid field."},INPUT_OBJECT:{value:TypeKind.INPUT_OBJECT,description:"Indicates this type is an input object. `inputFields` is a valid field."},LIST:{value:TypeKind.LIST,description:"Indicates this type is a list. `ofType` is a valid field."},NON_NULL:{value:TypeKind.NON_NULL,description:"Indicates this type is a non-null. `ofType` is a valid field."}}});exports.__TypeKind=__TypeKind;var SchemaMetaFieldDef={name:"__schema",type:(0,_definition.GraphQLNonNull)(__Schema),description:"Access the current type schema of this server.",args:[],resolve:function(source,args,context,_ref4){return _ref4.schema}};exports.SchemaMetaFieldDef=SchemaMetaFieldDef;var TypeMetaFieldDef={name:"__type",type:__Type,description:"Request the type information of a single type.",args:[{name:"name",type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString)}],resolve:function(source,_ref5,context,_ref6){var name=_ref5.name;return _ref6.schema.getType(name)}};exports.TypeMetaFieldDef=TypeMetaFieldDef;var TypeNameMetaFieldDef={name:"__typename",type:(0,_definition.GraphQLNonNull)(_scalars.GraphQLString),description:"The name of the current Object type at runtime.",args:[],resolve:function(source,args,context,_ref7){return _ref7.parentType.name}};exports.TypeNameMetaFieldDef=TypeNameMetaFieldDef;var introspectionTypes=[__Schema,__Directive,__DirectiveLocation,__Type,__Field,__InputValue,__EnumValue,__TypeKind];exports.introspectionTypes=introspectionTypes},{"../jsutils/inspect":31,"../language/directiveLocation":48,"../language/printer":55,"../polyfills/objectValues":63,"../utilities/astFromValue":76,"./definition":67,"./scalars":71}],71:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isSpecifiedScalarType=function(type){return(0,_definition.isScalarType)(type)&&specifiedScalarTypes.some(function(_ref){var name=_ref.name;return type.name===name})},exports.specifiedScalarTypes=exports.GraphQLID=exports.GraphQLBoolean=exports.GraphQLString=exports.GraphQLFloat=exports.GraphQLInt=void 0;var _isFinite=_interopRequireDefault(require("../polyfills/isFinite")),_isInteger=_interopRequireDefault(require("../polyfills/isInteger")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_definition=require("./definition"),_kinds=require("../language/kinds");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}var GraphQLInt=new _definition.GraphQLScalarType({name:"Int",description:"The `Int` scalar type represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1. ",serialize:function(value){if("boolean"==typeof value)return value?1:0;var num=value;if("string"==typeof value&&""!==value&&(num=Number(value)),!(0,_isInteger.default)(num))throw new TypeError("Int cannot represent non-integer value: ".concat((0,_inspect.default)(value)));if(2147483647<num||num<-2147483648)throw new TypeError("Int cannot represent non 32-bit signed integer value: ".concat((0,_inspect.default)(value)));return num},parseValue:function(value){if(!(0,_isInteger.default)(value))throw new TypeError("Int cannot represent non-integer value: ".concat((0,_inspect.default)(value)));if(2147483647<value||value<-2147483648)throw new TypeError("Int cannot represent non 32-bit signed integer value: ".concat((0,_inspect.default)(value)));return value},parseLiteral:function(ast){if(ast.kind===_kinds.Kind.INT){var num=parseInt(ast.value,10);if(num<=2147483647&&-2147483648<=num)return num}}});exports.GraphQLInt=GraphQLInt;var GraphQLFloat=new _definition.GraphQLScalarType({name:"Float",description:"The `Float` scalar type represents signed double-precision fractional values as specified by [IEEE 754](https://en.wikipedia.org/wiki/IEEE_floating_point). ",serialize:function(value){if("boolean"==typeof value)return value?1:0;var num=value;if("string"==typeof value&&""!==value&&(num=Number(value)),!(0,_isFinite.default)(num))throw new TypeError("Float cannot represent non numeric value: ".concat((0,_inspect.default)(value)));return num},parseValue:function(value){if(!(0,_isFinite.default)(value))throw new TypeError("Float cannot represent non numeric value: ".concat((0,_inspect.default)(value)));return value},parseLiteral:function(ast){return ast.kind===_kinds.Kind.FLOAT||ast.kind===_kinds.Kind.INT?parseFloat(ast.value):void 0}});function serializeObject(value){if("object"===_typeof(value)&&null!==value){if("function"==typeof value.valueOf){var valueOfResult=value.valueOf();if("object"!==_typeof(valueOfResult))return valueOfResult}if("function"==typeof value.toJSON)return value.toJSON()}return value}exports.GraphQLFloat=GraphQLFloat;var GraphQLString=new _definition.GraphQLScalarType({name:"String",description:"The `String` scalar type represents textual data, represented as UTF-8 character sequences. The String type is most often used by GraphQL to represent free-form human-readable text.",serialize:function(rawValue){var value=serializeObject(rawValue);if("string"==typeof value)return value;if("boolean"==typeof value)return value?"true":"false";if((0,_isFinite.default)(value))return value.toString();throw new TypeError("String cannot represent value: ".concat((0,_inspect.default)(rawValue)))},parseValue:function(value){if("string"!=typeof value)throw new TypeError("String cannot represent a non string value: ".concat((0,_inspect.default)(value)));return value},parseLiteral:function(ast){return ast.kind===_kinds.Kind.STRING?ast.value:void 0}});exports.GraphQLString=GraphQLString;var GraphQLBoolean=new _definition.GraphQLScalarType({name:"Boolean",description:"The `Boolean` scalar type represents `true` or `false`.",serialize:function(value){if("boolean"==typeof value)return value;if((0,_isFinite.default)(value))return 0!==value;throw new TypeError("Boolean cannot represent a non boolean value: ".concat((0,_inspect.default)(value)))},parseValue:function(value){if("boolean"!=typeof value)throw new TypeError("Boolean cannot represent a non boolean value: ".concat((0,_inspect.default)(value)));return value},parseLiteral:function(ast){return ast.kind===_kinds.Kind.BOOLEAN?ast.value:void 0}});exports.GraphQLBoolean=GraphQLBoolean;var GraphQLID=new _definition.GraphQLScalarType({name:"ID",description:'The `ID` scalar type represents a unique identifier, often used to refetch an object or as key for a cache. The ID type appears in a JSON response as a String; however, it is not intended to be human-readable. When expected as an input type, any string (such as `"4"`) or integer (such as `4`) input value will be accepted as an ID.',serialize:function(rawValue){var value=serializeObject(rawValue);if("string"==typeof value)return value;if((0,_isInteger.default)(value))return String(value);throw new TypeError("ID cannot represent value: ".concat((0,_inspect.default)(rawValue)))},parseValue:function(value){if("string"==typeof value)return value;if((0,_isInteger.default)(value))return value.toString();throw new TypeError("ID cannot represent value: ".concat((0,_inspect.default)(value)))},parseLiteral:function(ast){return ast.kind===_kinds.Kind.STRING||ast.kind===_kinds.Kind.INT?ast.value:void 0}}),specifiedScalarTypes=[GraphQLString,GraphQLInt,GraphQLFloat,GraphQLBoolean,exports.GraphQLID=GraphQLID];exports.specifiedScalarTypes=specifiedScalarTypes},{"../jsutils/inspect":31,"../language/kinds":50,"../polyfills/isFinite":60,"../polyfills/isInteger":61,"./definition":67}],72:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isSchema=isSchema,exports.assertSchema=function(schema){return isSchema(schema)||(0,_invariant.default)(0,"Expected ".concat((0,_inspect.default)(schema)," to be a GraphQL schema.")),schema},exports.GraphQLSchema=void 0;var _find=_interopRequireDefault(require("../polyfills/find")),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_definition=require("./definition"),_directives=require("./directives"),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_introspection=require("./introspection"),_defineToStringTag=_interopRequireDefault(require("../jsutils/defineToStringTag")),_instanceOf=_interopRequireDefault(require("../jsutils/instanceOf")),_invariant=_interopRequireDefault(require("../jsutils/invariant"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function isSchema(schema){return(0,_instanceOf.default)(schema,GraphQLSchema)}var GraphQLSchema=function(){function GraphQLSchema(config){config&&config.assumeValid?this.__validationErrors=[]:(this.__validationErrors=void 0,"object"!==_typeof(config)&&(0,_invariant.default)(0,"Must provide configuration object."),config.types&&!Array.isArray(config.types)&&(0,_invariant.default)(0,'"types" must be Array if provided but got: '.concat((0,_inspect.default)(config.types),".")),config.directives&&!Array.isArray(config.directives)&&(0,_invariant.default)(0,'"directives" must be Array if provided but got: '+"".concat((0,_inspect.default)(config.directives),".")),config.allowedLegacyNames&&!Array.isArray(config.allowedLegacyNames)&&(0,_invariant.default)(0,'"allowedLegacyNames" must be Array if provided but got: '+"".concat((0,_inspect.default)(config.allowedLegacyNames),"."))),this.__allowedLegacyNames=config.allowedLegacyNames||[],this._queryType=config.query,this._mutationType=config.mutation,this._subscriptionType=config.subscription,this._directives=config.directives||_directives.specifiedDirectives,this.astNode=config.astNode,this.extensionASTNodes=config.extensionASTNodes;var initialTypes=[this.getQueryType(),this.getMutationType(),this.getSubscriptionType(),_introspection.__Schema],types=config.types;types&&(initialTypes=initialTypes.concat(types));var typeMap=Object.create(null);typeMap=initialTypes.reduce(typeMapReducer,typeMap),typeMap=this._directives.reduce(typeMapDirectiveReducer,typeMap),this._typeMap=typeMap,this._possibleTypeMap=Object.create(null),this._implementations=Object.create(null);var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(0,_objectValues.default)(this._typeMap)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var type=_step.value;if((0,_definition.isObjectType)(type)){var _iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=type.getInterfaces()[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var iface=_step2.value;if((0,_definition.isInterfaceType)(iface)){var impls=this._implementations[iface.name];impls?impls.push(type):this._implementations[iface.name]=[type]}}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}}else(0,_definition.isAbstractType)(type)&&!this._implementations[type.name]&&(this._implementations[type.name]=[])}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}var _proto=GraphQLSchema.prototype;return _proto.getQueryType=function(){return this._queryType},_proto.getMutationType=function(){return this._mutationType},_proto.getSubscriptionType=function(){return this._subscriptionType},_proto.getTypeMap=function(){return this._typeMap},_proto.getType=function(name){return this.getTypeMap()[name]},_proto.getPossibleTypes=function(abstractType){return(0,_definition.isUnionType)(abstractType)?abstractType.getTypes():this._implementations[abstractType.name]},_proto.isPossibleType=function(abstractType,possibleType){var possibleTypeMap=this._possibleTypeMap;if(!possibleTypeMap[abstractType.name]){var possibleTypes=this.getPossibleTypes(abstractType);possibleTypeMap[abstractType.name]=possibleTypes.reduce(function(map,type){return map[type.name]=!0,map},Object.create(null))}return Boolean(possibleTypeMap[abstractType.name][possibleType.name])},_proto.getDirectives=function(){return this._directives},_proto.getDirective=function(name){return(0,_find.default)(this.getDirectives(),function(directive){return directive.name===name})},_proto.toConfig=function(){return{types:(0,_objectValues.default)(this.getTypeMap()),directives:this.getDirectives().slice(),query:this.getQueryType(),mutation:this.getMutationType(),subscription:this.getSubscriptionType(),astNode:this.astNode,extensionASTNodes:this.extensionASTNodes||[],assumeValid:void 0!==this.__validationErrors,allowedLegacyNames:this.__allowedLegacyNames}},GraphQLSchema}();function typeMapReducer(map,type){if(!type)return map;if((0,_definition.isWrappingType)(type))return typeMapReducer(map,type.ofType);if(map[type.name])return map[type.name]!==type&&(0,_invariant.default)(0,"Schema must contain uniquely named types but contains multiple "+'types named "'.concat(type.name,'".')),map;map[type.name]=type;var reducedMap=map;if((0,_definition.isUnionType)(type)&&(reducedMap=type.getTypes().reduce(typeMapReducer,reducedMap)),(0,_definition.isObjectType)(type)&&(reducedMap=type.getInterfaces().reduce(typeMapReducer,reducedMap)),(0,_definition.isObjectType)(type)||(0,_definition.isInterfaceType)(type)){var _iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=(0,_objectValues.default)(type.getFields())[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var field=_step3.value;if(field.args)reducedMap=field.args.map(function(arg){return arg.type}).reduce(typeMapReducer,reducedMap);reducedMap=typeMapReducer(reducedMap,field.type)}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}}if((0,_definition.isInputObjectType)(type)){var _iteratorNormalCompletion4=!0,_didIteratorError4=!1,_iteratorError4=void 0;try{for(var _step4,_iterator4=(0,_objectValues.default)(type.getFields())[Symbol.iterator]();!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=!0){reducedMap=typeMapReducer(reducedMap,_step4.value.type)}}catch(err){_didIteratorError4=!0,_iteratorError4=err}finally{try{_iteratorNormalCompletion4||null==_iterator4.return||_iterator4.return()}finally{if(_didIteratorError4)throw _iteratorError4}}}return reducedMap}function typeMapDirectiveReducer(map,directive){return(0,_directives.isDirective)(directive)?directive.args.reduce(function(_map,arg){return typeMapReducer(_map,arg.type)},map):map}exports.GraphQLSchema=GraphQLSchema,(0,_defineToStringTag.default)(GraphQLSchema)},{"../jsutils/defineToStringTag":30,"../jsutils/inspect":31,"../jsutils/instanceOf":32,"../jsutils/invariant":33,"../polyfills/find":58,"../polyfills/objectValues":63,"./definition":67,"./directives":68,"./introspection":70}],73:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateSchema=validateSchema,exports.assertValidSchema=function(schema){var errors=validateSchema(schema);if(0!==errors.length)throw new Error(errors.map(function(error){return error.message}).join("\n\n"))};var _find=_interopRequireDefault(require("../polyfills/find")),_flatMap=_interopRequireDefault(require("../polyfills/flatMap")),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_objectEntries=_interopRequireDefault(require("../polyfills/objectEntries")),_definition=require("./definition"),_directives=require("./directives"),_introspection=require("./introspection"),_schema=require("./schema"),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_GraphQLError=require("../error/GraphQLError"),_assertValidName=require("../utilities/assertValidName"),_typeComparators=require("../utilities/typeComparators");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function validateSchema(schema){if((0,_schema.assertSchema)(schema),schema.__validationErrors)return schema.__validationErrors;var context=new SchemaValidationContext(schema);!function(context){var schema=context.schema,queryType=schema.getQueryType();queryType?(0,_definition.isObjectType)(queryType)||context.reportError("Query root type must be Object type, it cannot be ".concat((0,_inspect.default)(queryType),"."),getOperationTypeNode(schema,queryType,"query")):context.reportError("Query root type must be provided.",schema.astNode);var mutationType=schema.getMutationType();mutationType&&!(0,_definition.isObjectType)(mutationType)&&context.reportError("Mutation root type must be Object type if provided, it cannot be "+"".concat((0,_inspect.default)(mutationType),"."),getOperationTypeNode(schema,mutationType,"mutation"));var subscriptionType=schema.getSubscriptionType();subscriptionType&&!(0,_definition.isObjectType)(subscriptionType)&&context.reportError("Subscription root type must be Object type if provided, it cannot be "+"".concat((0,_inspect.default)(subscriptionType),"."),getOperationTypeNode(schema,subscriptionType,"subscription"))}(context),function(context){var _iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=context.schema.getDirectives()[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var directive=_step2.value;if((0,_directives.isDirective)(directive)){validateName(context,directive);var argNames=Object.create(null),_iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=directive.args[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var arg=_step3.value,argName=arg.name;validateName(context,arg),argNames[argName]?context.reportError("Argument @".concat(directive.name,"(").concat(argName,":) can only be defined once."),getAllDirectiveArgNodes(directive,argName)):(argNames[argName]=!0,(0,_definition.isInputType)(arg.type)||context.reportError("The type of @".concat(directive.name,"(").concat(argName,":) must be Input Type ")+"but got: ".concat((0,_inspect.default)(arg.type),"."),getDirectiveArgTypeNode(directive,argName)))}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}}else context.reportError("Expected directive but got: ".concat((0,_inspect.default)(directive),"."),directive&&directive.astNode)}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}}(context),function(context){var typeMap=context.schema.getTypeMap(),_iteratorNormalCompletion4=!0,_didIteratorError4=!1,_iteratorError4=void 0;try{for(var _step4,_iterator4=(0,_objectValues.default)(typeMap)[Symbol.iterator]();!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=!0){var type=_step4.value;(0,_definition.isNamedType)(type)?((0,_introspection.isIntrospectionType)(type)||validateName(context,type),(0,_definition.isObjectType)(type)?(validateFields(context,type),validateObjectInterfaces(context,type)):(0,_definition.isInterfaceType)(type)?validateFields(context,type):(0,_definition.isUnionType)(type)?validateUnionMembers(context,type):(0,_definition.isEnumType)(type)?validateEnumValues(context,type):(0,_definition.isInputObjectType)(type)&&validateInputFields(context,type)):context.reportError("Expected GraphQL named type but got: ".concat((0,_inspect.default)(type),"."),type&&type.astNode)}}catch(err){_didIteratorError4=!0,_iteratorError4=err}finally{try{_iteratorNormalCompletion4||null==_iterator4.return||_iterator4.return()}finally{if(_didIteratorError4)throw _iteratorError4}}}(context);var errors=context.getErrors();return schema.__validationErrors=errors}var SchemaValidationContext=function(){function SchemaValidationContext(schema){this._errors=[],this.schema=schema}var _proto=SchemaValidationContext.prototype;return _proto.reportError=function(message,nodes){var _nodes=Array.isArray(nodes)?nodes.filter(Boolean):nodes;this.addError(new _GraphQLError.GraphQLError(message,_nodes))},_proto.addError=function(error){this._errors.push(error)},_proto.getErrors=function(){return this._errors},SchemaValidationContext}();function getOperationTypeNode(schema,type,operation){var operationNodes=getAllSubNodes(schema,function(node){return node.operationTypes}),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=operationNodes[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var node=_step.value;if(node.operation===operation)return node.type}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}return type.astNode}function validateName(context,node){if(-1===context.schema.__allowedLegacyNames.indexOf(node.name)){var error=(0,_assertValidName.isValidNameError)(node.name,node.astNode||void 0);error&&context.addError(error)}}function validateFields(context,type){var fields=(0,_objectValues.default)(type.getFields());0===fields.length&&context.reportError("Type ".concat(type.name," must define one or more fields."),getAllNodes(type));var _iteratorNormalCompletion5=!0,_didIteratorError5=!1,_iteratorError5=void 0;try{for(var _step5,_iterator5=fields[Symbol.iterator]();!(_iteratorNormalCompletion5=(_step5=_iterator5.next()).done);_iteratorNormalCompletion5=!0){var field=_step5.value;validateName(context,field),(0,_definition.isOutputType)(field.type)||context.reportError("The type of ".concat(type.name,".").concat(field.name," must be Output Type ")+"but got: ".concat((0,_inspect.default)(field.type),"."),getFieldTypeNode(type,field.name));var argNames=Object.create(null),_iteratorNormalCompletion6=!0,_didIteratorError6=!1,_iteratorError6=void 0;try{for(var _step6,_iterator6=field.args[Symbol.iterator]();!(_iteratorNormalCompletion6=(_step6=_iterator6.next()).done);_iteratorNormalCompletion6=!0){var arg=_step6.value,argName=arg.name;validateName(context,arg),argNames[argName]&&context.reportError("Field argument ".concat(type.name,".").concat(field.name,"(").concat(argName,":) can only ")+"be defined once.",getAllFieldArgNodes(type,field.name,argName)),argNames[argName]=!0,(0,_definition.isInputType)(arg.type)||context.reportError("The type of ".concat(type.name,".").concat(field.name,"(").concat(argName,":) must be Input ")+"Type but got: ".concat((0,_inspect.default)(arg.type),"."),getFieldArgTypeNode(type,field.name,argName))}}catch(err){_didIteratorError6=!0,_iteratorError6=err}finally{try{_iteratorNormalCompletion6||null==_iterator6.return||_iterator6.return()}finally{if(_didIteratorError6)throw _iteratorError6}}}}catch(err){_didIteratorError5=!0,_iteratorError5=err}finally{try{_iteratorNormalCompletion5||null==_iterator5.return||_iterator5.return()}finally{if(_didIteratorError5)throw _iteratorError5}}}function validateObjectInterfaces(context,object){var implementedTypeNames=Object.create(null),_iteratorNormalCompletion7=!0,_didIteratorError7=!1,_iteratorError7=void 0;try{for(var _step7,_iterator7=object.getInterfaces()[Symbol.iterator]();!(_iteratorNormalCompletion7=(_step7=_iterator7.next()).done);_iteratorNormalCompletion7=!0){var iface=_step7.value;(0,_definition.isInterfaceType)(iface)?implementedTypeNames[iface.name]?context.reportError("Type ".concat(object.name," can only implement ").concat(iface.name," once."),getAllImplementsInterfaceNodes(object,iface)):(implementedTypeNames[iface.name]=!0,validateObjectImplementsInterface(context,object,iface)):context.reportError("Type ".concat((0,_inspect.default)(object)," must only implement Interface types, ")+"it cannot implement ".concat((0,_inspect.default)(iface),"."),getImplementsInterfaceNode(object,iface))}}catch(err){_didIteratorError7=!0,_iteratorError7=err}finally{try{_iteratorNormalCompletion7||null==_iterator7.return||_iterator7.return()}finally{if(_didIteratorError7)throw _iteratorError7}}}function validateObjectImplementsInterface(context,object,iface){var objectFieldMap=object.getFields(),ifaceFieldMap=iface.getFields(),_iteratorNormalCompletion8=!0,_didIteratorError8=!1,_iteratorError8=void 0;try{for(var _step8,_iterator8=(0,_objectEntries.default)(ifaceFieldMap)[Symbol.iterator]();!(_iteratorNormalCompletion8=(_step8=_iterator8.next()).done);_iteratorNormalCompletion8=!0){var _ref2=_step8.value,fieldName=_ref2[0],ifaceField=_ref2[1],objectField=objectFieldMap[fieldName];if(objectField){(0,_typeComparators.isTypeSubTypeOf)(context.schema,objectField.type,ifaceField.type)||context.reportError("Interface field ".concat(iface.name,".").concat(fieldName," expects type ")+"".concat((0,_inspect.default)(ifaceField.type)," but ").concat(object.name,".").concat(fieldName," ")+"is type ".concat((0,_inspect.default)(objectField.type),"."),[getFieldTypeNode(iface,fieldName),getFieldTypeNode(object,fieldName)]);var _iteratorNormalCompletion9=!0,_didIteratorError9=!1,_iteratorError9=void 0;try{for(var _step9,_loop=function(){var ifaceArg=_step9.value,argName=ifaceArg.name,objectArg=(0,_find.default)(objectField.args,function(arg){return arg.name===argName});if(!objectArg)return context.reportError("Interface field argument ".concat(iface.name,".").concat(fieldName,"(").concat(argName,":) ")+"expected but ".concat(object.name,".").concat(fieldName," does not provide it."),[getFieldArgNode(iface,fieldName,argName),getFieldNode(object,fieldName)]),"continue";(0,_typeComparators.isEqualType)(ifaceArg.type,objectArg.type)||context.reportError("Interface field argument ".concat(iface.name,".").concat(fieldName,"(").concat(argName,":) ")+"expects type ".concat((0,_inspect.default)(ifaceArg.type)," but ")+"".concat(object.name,".").concat(fieldName,"(").concat(argName,":) is type ")+"".concat((0,_inspect.default)(objectArg.type),"."),[getFieldArgTypeNode(iface,fieldName,argName),getFieldArgTypeNode(object,fieldName,argName)])},_iterator9=ifaceField.args[Symbol.iterator]();!(_iteratorNormalCompletion9=(_step9=_iterator9.next()).done);_iteratorNormalCompletion9=!0)_loop()}catch(err){_didIteratorError9=!0,_iteratorError9=err}finally{try{_iteratorNormalCompletion9||null==_iterator9.return||_iterator9.return()}finally{if(_didIteratorError9)throw _iteratorError9}}var _iteratorNormalCompletion10=!0,_didIteratorError10=!1,_iteratorError10=void 0;try{for(var _step10,_loop2=function(){var objectArg=_step10.value,argName=objectArg.name;!(0,_find.default)(ifaceField.args,function(arg){return arg.name===argName})&&(0,_definition.isRequiredArgument)(objectArg)&&context.reportError("Object field ".concat(object.name,".").concat(fieldName," includes required ")+"argument ".concat(argName," that is missing from the Interface field ")+"".concat(iface.name,".").concat(fieldName,"."),[getFieldArgNode(object,fieldName,argName),getFieldNode(iface,fieldName)])},_iterator10=objectField.args[Symbol.iterator]();!(_iteratorNormalCompletion10=(_step10=_iterator10.next()).done);_iteratorNormalCompletion10=!0)_loop2()}catch(err){_didIteratorError10=!0,_iteratorError10=err}finally{try{_iteratorNormalCompletion10||null==_iterator10.return||_iterator10.return()}finally{if(_didIteratorError10)throw _iteratorError10}}}else context.reportError("Interface field ".concat(iface.name,".").concat(fieldName," expected but ")+"".concat(object.name," does not provide it."),[getFieldNode(iface,fieldName)].concat(getAllNodes(object)))}}catch(err){_didIteratorError8=!0,_iteratorError8=err}finally{try{_iteratorNormalCompletion8||null==_iterator8.return||_iterator8.return()}finally{if(_didIteratorError8)throw _iteratorError8}}}function validateUnionMembers(context,union){var memberTypes=union.getTypes();0===memberTypes.length&&context.reportError("Union type ".concat(union.name," must define one or more member types."),getAllNodes(union));var includedTypeNames=Object.create(null),_iteratorNormalCompletion11=!0,_didIteratorError11=!1,_iteratorError11=void 0;try{for(var _step11,_iterator11=memberTypes[Symbol.iterator]();!(_iteratorNormalCompletion11=(_step11=_iterator11.next()).done);_iteratorNormalCompletion11=!0){var memberType=_step11.value;includedTypeNames[memberType.name]?context.reportError("Union type ".concat(union.name," can only include type ")+"".concat(memberType.name," once."),getUnionMemberTypeNodes(union,memberType.name)):(includedTypeNames[memberType.name]=!0,(0,_definition.isObjectType)(memberType)||context.reportError("Union type ".concat(union.name," can only include Object types, ")+"it cannot include ".concat((0,_inspect.default)(memberType),"."),getUnionMemberTypeNodes(union,String(memberType))))}}catch(err){_didIteratorError11=!0,_iteratorError11=err}finally{try{_iteratorNormalCompletion11||null==_iterator11.return||_iterator11.return()}finally{if(_didIteratorError11)throw _iteratorError11}}}function validateEnumValues(context,enumType){var enumValues=enumType.getValues();0===enumValues.length&&context.reportError("Enum type ".concat(enumType.name," must define one or more values."),getAllNodes(enumType));var _iteratorNormalCompletion12=!0,_didIteratorError12=!1,_iteratorError12=void 0;try{for(var _step12,_iterator12=enumValues[Symbol.iterator]();!(_iteratorNormalCompletion12=(_step12=_iterator12.next()).done);_iteratorNormalCompletion12=!0){var enumValue=_step12.value,valueName=enumValue.name;validateName(context,enumValue),"true"!==valueName&&"false"!==valueName&&"null"!==valueName||context.reportError("Enum type ".concat(enumType.name," cannot include value: ").concat(valueName,"."),enumValue.astNode)}}catch(err){_didIteratorError12=!0,_iteratorError12=err}finally{try{_iteratorNormalCompletion12||null==_iterator12.return||_iterator12.return()}finally{if(_didIteratorError12)throw _iteratorError12}}}function validateInputFields(context,inputObj){var fields=(0,_objectValues.default)(inputObj.getFields());0===fields.length&&context.reportError("Input Object type ".concat(inputObj.name," must define one or more fields."),getAllNodes(inputObj));var _iteratorNormalCompletion13=!0,_didIteratorError13=!1,_iteratorError13=void 0;try{for(var _step13,_iterator13=fields[Symbol.iterator]();!(_iteratorNormalCompletion13=(_step13=_iterator13.next()).done);_iteratorNormalCompletion13=!0){var field=_step13.value;validateName(context,field),(0,_definition.isInputType)(field.type)||context.reportError("The type of ".concat(inputObj.name,".").concat(field.name," must be Input Type ")+"but got: ".concat((0,_inspect.default)(field.type),"."),field.astNode&&field.astNode.type)}}catch(err){_didIteratorError13=!0,_iteratorError13=err}finally{try{_iteratorNormalCompletion13||null==_iterator13.return||_iterator13.return()}finally{if(_didIteratorError13)throw _iteratorError13}}}function getAllNodes(object){var astNode=object.astNode,extensionASTNodes=object.extensionASTNodes;return astNode?extensionASTNodes?[astNode].concat(extensionASTNodes):[astNode]:extensionASTNodes||[]}function getAllSubNodes(object,getter){return(0,_flatMap.default)(getAllNodes(object),function(item){return getter(item)||[]})}function getImplementsInterfaceNode(type,iface){return getAllImplementsInterfaceNodes(type,iface)[0]}function getAllImplementsInterfaceNodes(type,iface){return getAllSubNodes(type,function(typeNode){return typeNode.interfaces}).filter(function(ifaceNode){return ifaceNode.name.value===iface.name})}function getFieldNode(type,fieldName){return(0,_find.default)(getAllSubNodes(type,function(typeNode){return typeNode.fields}),function(fieldNode){return fieldNode.name.value===fieldName})}function getFieldTypeNode(type,fieldName){var fieldNode=getFieldNode(type,fieldName);return fieldNode&&fieldNode.type}function getFieldArgNode(type,fieldName,argName){return getAllFieldArgNodes(type,fieldName,argName)[0]}function getAllFieldArgNodes(type,fieldName,argName){var argNodes=[],fieldNode=getFieldNode(type,fieldName);if(fieldNode&&fieldNode.arguments){var _iteratorNormalCompletion14=!0,_didIteratorError14=!1,_iteratorError14=void 0;try{for(var _step14,_iterator14=fieldNode.arguments[Symbol.iterator]();!(_iteratorNormalCompletion14=(_step14=_iterator14.next()).done);_iteratorNormalCompletion14=!0){var node=_step14.value;node.name.value===argName&&argNodes.push(node)}}catch(err){_didIteratorError14=!0,_iteratorError14=err}finally{try{_iteratorNormalCompletion14||null==_iterator14.return||_iterator14.return()}finally{if(_didIteratorError14)throw _iteratorError14}}}return argNodes}function getFieldArgTypeNode(type,fieldName,argName){var fieldArgNode=getFieldArgNode(type,fieldName,argName);return fieldArgNode&&fieldArgNode.type}function getAllDirectiveArgNodes(directive,argName){return getAllSubNodes(directive,function(directiveNode){return directiveNode.arguments}).filter(function(argNode){return argNode.name.value===argName})}function getDirectiveArgTypeNode(directive,argName){var argNode=getAllDirectiveArgNodes(directive,argName)[0];return argNode&&argNode.type}function getUnionMemberTypeNodes(union,typeName){return getAllSubNodes(union,function(unionNode){return unionNode.types}).filter(function(typeNode){return typeNode.name.value===typeName})}},{"../error/GraphQLError":18,"../jsutils/inspect":31,"../polyfills/find":58,"../polyfills/flatMap":59,"../polyfills/objectEntries":62,"../polyfills/objectValues":63,"../utilities/assertValidName":75,"../utilities/typeComparators":95,"./definition":67,"./directives":68,"./introspection":70,"./schema":72}],74:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.TypeInfo=void 0;var obj,_find=(obj=require("../polyfills/find"))&&obj.__esModule?obj:{default:obj},_kinds=require("../language/kinds"),_definition=require("../type/definition"),_introspection=require("../type/introspection"),_typeFromAST=require("./typeFromAST");var TypeInfo=function(){function TypeInfo(schema,getFieldDefFn,initialType){this._schema=schema,this._typeStack=[],this._parentTypeStack=[],this._inputTypeStack=[],this._fieldDefStack=[],this._defaultValueStack=[],this._directive=null,this._argument=null,this._enumValue=null,this._getFieldDef=getFieldDefFn||getFieldDef,initialType&&((0,_definition.isInputType)(initialType)&&this._inputTypeStack.push(initialType),(0,_definition.isCompositeType)(initialType)&&this._parentTypeStack.push(initialType),(0,_definition.isOutputType)(initialType)&&this._typeStack.push(initialType))}var _proto=TypeInfo.prototype;return _proto.getType=function(){if(0<this._typeStack.length)return this._typeStack[this._typeStack.length-1]},_proto.getParentType=function(){if(0<this._parentTypeStack.length)return this._parentTypeStack[this._parentTypeStack.length-1]},_proto.getInputType=function(){if(0<this._inputTypeStack.length)return this._inputTypeStack[this._inputTypeStack.length-1]},_proto.getParentInputType=function(){if(1<this._inputTypeStack.length)return this._inputTypeStack[this._inputTypeStack.length-2]},_proto.getFieldDef=function(){if(0<this._fieldDefStack.length)return this._fieldDefStack[this._fieldDefStack.length-1]},_proto.getDefaultValue=function(){if(0<this._defaultValueStack.length)return this._defaultValueStack[this._defaultValueStack.length-1]},_proto.getDirective=function(){return this._directive},_proto.getArgument=function(){return this._argument},_proto.getEnumValue=function(){return this._enumValue},_proto.enter=function(node){var schema=this._schema;switch(node.kind){case _kinds.Kind.SELECTION_SET:var namedType=(0,_definition.getNamedType)(this.getType());this._parentTypeStack.push((0,_definition.isCompositeType)(namedType)?namedType:void 0);break;case _kinds.Kind.FIELD:var fieldDef,fieldType,parentType=this.getParentType();parentType&&(fieldDef=this._getFieldDef(schema,parentType,node))&&(fieldType=fieldDef.type),this._fieldDefStack.push(fieldDef),this._typeStack.push((0,_definition.isOutputType)(fieldType)?fieldType:void 0);break;case _kinds.Kind.DIRECTIVE:this._directive=schema.getDirective(node.name.value);break;case _kinds.Kind.OPERATION_DEFINITION:var type;"query"===node.operation?type=schema.getQueryType():"mutation"===node.operation?type=schema.getMutationType():"subscription"===node.operation&&(type=schema.getSubscriptionType()),this._typeStack.push((0,_definition.isObjectType)(type)?type:void 0);break;case _kinds.Kind.INLINE_FRAGMENT:case _kinds.Kind.FRAGMENT_DEFINITION:var typeConditionAST=node.typeCondition,outputType=typeConditionAST?(0,_typeFromAST.typeFromAST)(schema,typeConditionAST):(0,_definition.getNamedType)(this.getType());this._typeStack.push((0,_definition.isOutputType)(outputType)?outputType:void 0);break;case _kinds.Kind.VARIABLE_DEFINITION:var inputType=(0,_typeFromAST.typeFromAST)(schema,node.type);this._inputTypeStack.push((0,_definition.isInputType)(inputType)?inputType:void 0);break;case _kinds.Kind.ARGUMENT:var argDef,argType,fieldOrDirective=this.getDirective()||this.getFieldDef();fieldOrDirective&&(argDef=(0,_find.default)(fieldOrDirective.args,function(arg){return arg.name===node.name.value}))&&(argType=argDef.type),this._argument=argDef,this._defaultValueStack.push(argDef?argDef.defaultValue:void 0),this._inputTypeStack.push((0,_definition.isInputType)(argType)?argType:void 0);break;case _kinds.Kind.LIST:var listType=(0,_definition.getNullableType)(this.getInputType()),itemType=(0,_definition.isListType)(listType)?listType.ofType:listType;this._defaultValueStack.push(void 0),this._inputTypeStack.push((0,_definition.isInputType)(itemType)?itemType:void 0);break;case _kinds.Kind.OBJECT_FIELD:var inputFieldType,inputField,objectType=(0,_definition.getNamedType)(this.getInputType());(0,_definition.isInputObjectType)(objectType)&&(inputField=objectType.getFields()[node.name.value])&&(inputFieldType=inputField.type),this._defaultValueStack.push(inputField?inputField.defaultValue:void 0),this._inputTypeStack.push((0,_definition.isInputType)(inputFieldType)?inputFieldType:void 0);break;case _kinds.Kind.ENUM:var enumValue,enumType=(0,_definition.getNamedType)(this.getInputType());(0,_definition.isEnumType)(enumType)&&(enumValue=enumType.getValue(node.value)),this._enumValue=enumValue}},_proto.leave=function(node){switch(node.kind){case _kinds.Kind.SELECTION_SET:this._parentTypeStack.pop();break;case _kinds.Kind.FIELD:this._fieldDefStack.pop(),this._typeStack.pop();break;case _kinds.Kind.DIRECTIVE:this._directive=null;break;case _kinds.Kind.OPERATION_DEFINITION:case _kinds.Kind.INLINE_FRAGMENT:case _kinds.Kind.FRAGMENT_DEFINITION:this._typeStack.pop();break;case _kinds.Kind.VARIABLE_DEFINITION:this._inputTypeStack.pop();break;case _kinds.Kind.ARGUMENT:this._argument=null,this._defaultValueStack.pop(),this._inputTypeStack.pop();break;case _kinds.Kind.LIST:case _kinds.Kind.OBJECT_FIELD:this._defaultValueStack.pop(),this._inputTypeStack.pop();break;case _kinds.Kind.ENUM:this._enumValue=null}},TypeInfo}();function getFieldDef(schema,parentType,fieldNode){var name=fieldNode.name.value;return name===_introspection.SchemaMetaFieldDef.name&&schema.getQueryType()===parentType?_introspection.SchemaMetaFieldDef:name===_introspection.TypeMetaFieldDef.name&&schema.getQueryType()===parentType?_introspection.TypeMetaFieldDef:name===_introspection.TypeNameMetaFieldDef.name&&(0,_definition.isCompositeType)(parentType)?_introspection.TypeNameMetaFieldDef:(0,_definition.isObjectType)(parentType)||(0,_definition.isInterfaceType)(parentType)?parentType.getFields()[name]:void 0}exports.TypeInfo=TypeInfo},{"../language/kinds":50,"../polyfills/find":58,"../type/definition":67,"../type/introspection":70,"./typeFromAST":96}],75:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.assertValidName=function(name){var error=isValidNameError(name);if(error)throw error;return name},exports.isValidNameError=isValidNameError;var obj,_GraphQLError=require("../error/GraphQLError"),_invariant=(obj=require("../jsutils/invariant"))&&obj.__esModule?obj:{default:obj};var NAME_RX=/^[_a-zA-Z][_a-zA-Z0-9]*$/;function isValidNameError(name,node){return"string"!=typeof name&&(0,_invariant.default)(0,"Expected string"),1<name.length&&"_"===name[0]&&"_"===name[1]?new _GraphQLError.GraphQLError('Name "'.concat(name,'" must not begin with "__", which is reserved by ')+"GraphQL introspection.",node):NAME_RX.test(name)?void 0:new _GraphQLError.GraphQLError('Names must match /^[_a-zA-Z][_a-zA-Z0-9]*$/ but "'.concat(name,'" does not.'),node)}},{"../error/GraphQLError":18,"../jsutils/invariant":33}],76:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.astFromValue=function astFromValue(value,type){if((0,_definition.isNonNullType)(type)){var astValue=astFromValue(value,type.ofType);return astValue&&astValue.kind===_kinds.Kind.NULL?null:astValue}if(null===value)return{kind:_kinds.Kind.NULL};if((0,_isInvalid.default)(value))return null;if((0,_definition.isListType)(type)){var itemType=type.ofType;if((0,_iterall.isCollection)(value)){var valuesNodes=[];return(0,_iterall.forEach)(value,function(item){var itemNode=astFromValue(item,itemType);itemNode&&valuesNodes.push(itemNode)}),{kind:_kinds.Kind.LIST,values:valuesNodes}}return astFromValue(value,itemType)}if((0,_definition.isInputObjectType)(type)){if(null===value||"object"!==_typeof(value))return null;var fields=(0,_objectValues.default)(type.getFields()),fieldNodes=[],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=fields[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var field=_step.value,fieldValue=astFromValue(value[field.name],field.type);fieldValue&&fieldNodes.push({kind:_kinds.Kind.OBJECT_FIELD,name:{kind:_kinds.Kind.NAME,value:field.name},value:fieldValue})}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}return{kind:_kinds.Kind.OBJECT,fields:fieldNodes}}if((0,_definition.isLeafType)(type)){var serialized=type.serialize(value);if((0,_isNullish.default)(serialized))return null;if("boolean"==typeof serialized)return{kind:_kinds.Kind.BOOLEAN,value:serialized};if("number"==typeof serialized){var stringNum=String(serialized);return integerStringRegExp.test(stringNum)?{kind:_kinds.Kind.INT,value:stringNum}:{kind:_kinds.Kind.FLOAT,value:stringNum}}if("string"==typeof serialized)return(0,_definition.isEnumType)(type)?{kind:_kinds.Kind.ENUM,value:serialized}:type===_scalars.GraphQLID&&integerStringRegExp.test(serialized)?{kind:_kinds.Kind.INT,value:serialized}:{kind:_kinds.Kind.STRING,value:serialized};throw new TypeError("Cannot convert value to AST: ".concat((0,_inspect.default)(serialized)))}throw new Error('Unexpected input type: "'.concat((0,_inspect.default)(type),'".'))};var _iterall=require("iterall"),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_isNullish=_interopRequireDefault(require("../jsutils/isNullish")),_isInvalid=_interopRequireDefault(require("../jsutils/isInvalid")),_kinds=require("../language/kinds"),_definition=require("../type/definition"),_scalars=require("../type/scalars");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}var integerStringRegExp=/^-?(?:0|[1-9][0-9]*)$/},{"../jsutils/inspect":31,"../jsutils/isInvalid":34,"../jsutils/isNullish":35,"../language/kinds":50,"../polyfills/objectValues":63,"../type/definition":67,"../type/scalars":71,iterall:136}],77:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildASTSchema=buildASTSchema,exports.getDescription=getDescription,exports.buildSchema=function(source,options){return buildASTSchema((0,_parser.parse)(source,options),options)},exports.ASTDefinitionBuilder=void 0;var _objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_keyMap=_interopRequireDefault(require("../jsutils/keyMap")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_valueFromAST=require("./valueFromAST"),_validate=require("../validation/validate"),_blockString=require("../language/blockString"),_lexer=require("../language/lexer"),_parser=require("../language/parser"),_values=require("../execution/values"),_kinds=require("../language/kinds"),_predicates=require("../language/predicates"),_definition=require("../type/definition"),_directives=require("../type/directives"),_introspection=require("../type/introspection"),_scalars=require("../type/scalars"),_schema=require("../type/schema");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function buildASTSchema(documentAST,options){var schemaDef;documentAST&&documentAST.kind===_kinds.Kind.DOCUMENT||(0,_invariant.default)(0,"Must provide valid Document AST"),options&&(options.assumeValid||options.assumeValidSDL)||(0,_validate.assertValidSDL)(documentAST);var typeDefs=[],directiveDefs=[],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=documentAST.definitions[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var def=_step.value;def.kind===_kinds.Kind.SCHEMA_DEFINITION?schemaDef=def:(0,_predicates.isTypeDefinitionNode)(def)?typeDefs.push(def):def.kind===_kinds.Kind.DIRECTIVE_DEFINITION&&directiveDefs.push(def)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var astBuilder=new ASTDefinitionBuilder(options,function(typeName){var type=typeMap[typeName];return type||(0,_invariant.default)(0,'Type "'.concat(typeName,'" not found in document.')),type}),typeMap=keyByNameNode(typeDefs,function(node){return astBuilder.buildType(node)}),operationTypes=schemaDef?function(schema){var opTypes={},_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=schema.operationTypes[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var operationType=_step2.value;opTypes[operationType.operation]=operationType.type.name.value}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}return opTypes}(schemaDef):{query:"Query",mutation:"Mutation",subscription:"Subscription"},directives=directiveDefs.map(function(def){return astBuilder.buildDirective(def)});return directives.some(function(directive){return"skip"===directive.name})||directives.push(_directives.GraphQLSkipDirective),directives.some(function(directive){return"include"===directive.name})||directives.push(_directives.GraphQLIncludeDirective),directives.some(function(directive){return"deprecated"===directive.name})||directives.push(_directives.GraphQLDeprecatedDirective),new _schema.GraphQLSchema({query:operationTypes.query?typeMap[operationTypes.query]:null,mutation:operationTypes.mutation?typeMap[operationTypes.mutation]:null,subscription:operationTypes.subscription?typeMap[operationTypes.subscription]:null,types:(0,_objectValues.default)(typeMap),directives:directives,astNode:schemaDef,assumeValid:options&&options.assumeValid,allowedLegacyNames:options&&options.allowedLegacyNames})}var stdTypeMap=(0,_keyMap.default)(_scalars.specifiedScalarTypes.concat(_introspection.introspectionTypes),function(type){return type.name}),ASTDefinitionBuilder=function(){function ASTDefinitionBuilder(options,resolveType){this._options=options,this._resolveType=resolveType}var _proto=ASTDefinitionBuilder.prototype;return _proto.getNamedType=function(node){var name=node.name.value;return stdTypeMap[name]||this._resolveType(name)},_proto.getWrappedType=function(node){return node.kind===_kinds.Kind.LIST_TYPE?new _definition.GraphQLList(this.getWrappedType(node.type)):node.kind===_kinds.Kind.NON_NULL_TYPE?new _definition.GraphQLNonNull(this.getWrappedType(node.type)):this.getNamedType(node)},_proto.buildDirective=function(directive){var _this=this,locations=directive.locations.map(function(_ref){return _ref.value});return new _directives.GraphQLDirective({name:directive.name.value,description:getDescription(directive,this._options),locations:locations,args:keyByNameNode(directive.arguments||[],function(arg){return _this.buildArg(arg)}),astNode:directive})},_proto.buildField=function(field){var _this2=this;return{type:this.getWrappedType(field.type),description:getDescription(field,this._options),args:keyByNameNode(field.arguments||[],function(arg){return _this2.buildArg(arg)}),deprecationReason:getDeprecationReason(field),astNode:field}},_proto.buildArg=function(value){var type=this.getWrappedType(value.type);return{type:type,description:getDescription(value,this._options),defaultValue:(0,_valueFromAST.valueFromAST)(value.defaultValue,type),astNode:value}},_proto.buildInputField=function(value){var type=this.getWrappedType(value.type);return{type:type,description:getDescription(value,this._options),defaultValue:(0,_valueFromAST.valueFromAST)(value.defaultValue,type),astNode:value}},_proto.buildEnumValue=function(value){return{description:getDescription(value,this._options),deprecationReason:getDeprecationReason(value),astNode:value}},_proto.buildType=function(astNode){var name=astNode.name.value;if(stdTypeMap[name])return stdTypeMap[name];switch(astNode.kind){case _kinds.Kind.OBJECT_TYPE_DEFINITION:return this._makeTypeDef(astNode);case _kinds.Kind.INTERFACE_TYPE_DEFINITION:return this._makeInterfaceDef(astNode);case _kinds.Kind.ENUM_TYPE_DEFINITION:return this._makeEnumDef(astNode);case _kinds.Kind.UNION_TYPE_DEFINITION:return this._makeUnionDef(astNode);case _kinds.Kind.SCALAR_TYPE_DEFINITION:return this._makeScalarDef(astNode);case _kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION:return this._makeInputObjectDef(astNode)}throw new Error('Unexpected type definition node: "'.concat((0,_inspect.default)(astNode),'".'))},_proto._makeTypeDef=function(astNode){var _this3=this,interfaceNodes=astNode.interfaces,fieldNodes=astNode.fields,interfaces=interfaceNodes&&0<interfaceNodes.length?function(){return interfaceNodes.map(function(ref){return _this3.getNamedType(ref)})}:[],fields=fieldNodes&&0<fieldNodes.length?function(){return keyByNameNode(fieldNodes,function(field){return _this3.buildField(field)})}:Object.create(null);return new _definition.GraphQLObjectType({name:astNode.name.value,description:getDescription(astNode,this._options),interfaces:interfaces,fields:fields,astNode:astNode})},_proto._makeInterfaceDef=function(astNode){var _this4=this,fieldNodes=astNode.fields,fields=fieldNodes&&0<fieldNodes.length?function(){return keyByNameNode(fieldNodes,function(field){return _this4.buildField(field)})}:Object.create(null);return new _definition.GraphQLInterfaceType({name:astNode.name.value,description:getDescription(astNode,this._options),fields:fields,astNode:astNode})},_proto._makeEnumDef=function(astNode){var _this5=this,valueNodes=astNode.values||[];return new _definition.GraphQLEnumType({name:astNode.name.value,description:getDescription(astNode,this._options),values:keyByNameNode(valueNodes,function(value){return _this5.buildEnumValue(value)}),astNode:astNode})},_proto._makeUnionDef=function(astNode){var _this6=this,typeNodes=astNode.types,types=typeNodes&&0<typeNodes.length?function(){return typeNodes.map(function(ref){return _this6.getNamedType(ref)})}:[];return new _definition.GraphQLUnionType({name:astNode.name.value,description:getDescription(astNode,this._options),types:types,astNode:astNode})},_proto._makeScalarDef=function(astNode){return new _definition.GraphQLScalarType({name:astNode.name.value,description:getDescription(astNode,this._options),astNode:astNode,serialize:function(value){return value}})},_proto._makeInputObjectDef=function(def){var _this7=this,fields=def.fields;return new _definition.GraphQLInputObjectType({name:def.name.value,description:getDescription(def,this._options),fields:fields?function(){return keyByNameNode(fields,function(field){return _this7.buildInputField(field)})}:Object.create(null),astNode:def})},ASTDefinitionBuilder}();function keyByNameNode(list,valFn){return(0,_keyValMap.default)(list,function(_ref2){return _ref2.name.value},valFn)}function getDeprecationReason(node){var deprecated=(0,_values.getDirectiveValues)(_directives.GraphQLDeprecatedDirective,node);return deprecated&&deprecated.reason}function getDescription(node,options){if(node.description)return node.description.value;if(options&&options.commentDescriptions){var rawValue=function(node){var loc=node.loc;if(!loc)return;var comments=[],token=loc.startToken.prev;for(;token&&token.kind===_lexer.TokenKind.COMMENT&&token.next&&token.prev&&token.line+1===token.next.line&&token.line!==token.prev.line;){var value=String(token.value);comments.push(value),token=token.prev}return comments.reverse().join("\n")}(node);if(void 0!==rawValue)return(0,_blockString.dedentBlockStringValue)("\n"+rawValue)}}exports.ASTDefinitionBuilder=ASTDefinitionBuilder},{"../execution/values":26,"../jsutils/inspect":31,"../jsutils/invariant":33,"../jsutils/keyMap":37,"../jsutils/keyValMap":38,"../language/blockString":47,"../language/kinds":50,"../language/lexer":51,"../language/parser":53,"../language/predicates":54,"../polyfills/objectValues":63,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/scalars":71,"../type/schema":72,"../validation/validate":135,"./valueFromAST":97}],78:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.buildClientSchema=function(introspection,options){for(var schemaIntrospection=introspection.__schema,typeMap=(0,_keyValMap.default)(schemaIntrospection.types,function(typeIntrospection){return typeIntrospection.name},function(typeIntrospection){return function(type){if(type&&type.name&&type.kind)switch(type.kind){case _introspection.TypeKind.SCALAR:return function(scalarIntrospection){return new _definition.GraphQLScalarType({name:scalarIntrospection.name,description:scalarIntrospection.description,serialize:function(value){return value}})}(type);case _introspection.TypeKind.OBJECT:return function(objectIntrospection){if(objectIntrospection.interfaces)return new _definition.GraphQLObjectType({name:objectIntrospection.name,description:objectIntrospection.description,interfaces:function(){return objectIntrospection.interfaces.map(getInterfaceType)},fields:function(){return buildFieldDefMap(objectIntrospection)}});throw new Error("Introspection result missing interfaces: "+(0,_inspect.default)(objectIntrospection))}(type);case _introspection.TypeKind.INTERFACE:return function(interfaceIntrospection){return new _definition.GraphQLInterfaceType({name:interfaceIntrospection.name,description:interfaceIntrospection.description,fields:function(){return buildFieldDefMap(interfaceIntrospection)}})}(type);case _introspection.TypeKind.UNION:return function(unionIntrospection){if(unionIntrospection.possibleTypes)return new _definition.GraphQLUnionType({name:unionIntrospection.name,description:unionIntrospection.description,types:function(){return unionIntrospection.possibleTypes.map(getObjectType)}});throw new Error("Introspection result missing possibleTypes: "+(0,_inspect.default)(unionIntrospection))}(type);case _introspection.TypeKind.ENUM:return function(enumIntrospection){if(enumIntrospection.enumValues)return new _definition.GraphQLEnumType({name:enumIntrospection.name,description:enumIntrospection.description,values:(0,_keyValMap.default)(enumIntrospection.enumValues,function(valueIntrospection){return valueIntrospection.name},function(valueIntrospection){return{description:valueIntrospection.description,deprecationReason:valueIntrospection.deprecationReason}})});throw new Error("Introspection result missing enumValues: "+(0,_inspect.default)(enumIntrospection))}(type);case _introspection.TypeKind.INPUT_OBJECT:return function(inputObjectIntrospection){if(inputObjectIntrospection.inputFields)return new _definition.GraphQLInputObjectType({name:inputObjectIntrospection.name,description:inputObjectIntrospection.description,fields:function(){return buildInputValueDefMap(inputObjectIntrospection.inputFields)}});throw new Error("Introspection result missing inputFields: "+(0,_inspect.default)(inputObjectIntrospection))}(type)}throw new Error("Invalid or incomplete introspection result. Ensure that a full introspection query is used in order to build a client schema:"+(0,_inspect.default)(type))}(typeIntrospection)}),_i=0,_arr=[].concat(_scalars.specifiedScalarTypes,_introspection.introspectionTypes);_i<_arr.length;_i++){var stdType=_arr[_i];typeMap[stdType.name]&&(typeMap[stdType.name]=stdType)}var queryType=schemaIntrospection.queryType?getObjectType(schemaIntrospection.queryType):null,mutationType=schemaIntrospection.mutationType?getObjectType(schemaIntrospection.mutationType):null,subscriptionType=schemaIntrospection.subscriptionType?getObjectType(schemaIntrospection.subscriptionType):null,directives=schemaIntrospection.directives?schemaIntrospection.directives.map(function(directiveIntrospection){if(!directiveIntrospection.args)throw new Error("Introspection result missing directive args: "+(0,_inspect.default)(directiveIntrospection));if(directiveIntrospection.locations)return new _directives.GraphQLDirective({name:directiveIntrospection.name,description:directiveIntrospection.description,locations:directiveIntrospection.locations.slice(),args:buildInputValueDefMap(directiveIntrospection.args)});throw new Error("Introspection result missing directive locations: "+(0,_inspect.default)(directiveIntrospection))}):[];return new _schema.GraphQLSchema({query:queryType,mutation:mutationType,subscription:subscriptionType,types:(0,_objectValues.default)(typeMap),directives:directives,assumeValid:options&&options.assumeValid,allowedLegacyNames:options&&options.allowedLegacyNames});function getType(typeRef){if(typeRef.kind===_introspection.TypeKind.LIST){var itemRef=typeRef.ofType;if(!itemRef)throw new Error("Decorated type deeper than introspection query.");return(0,_definition.GraphQLList)(getType(itemRef))}if(typeRef.kind===_introspection.TypeKind.NON_NULL){var nullableRef=typeRef.ofType;if(!nullableRef)throw new Error("Decorated type deeper than introspection query.");var nullableType=getType(nullableRef);return(0,_definition.GraphQLNonNull)((0,_definition.assertNullableType)(nullableType))}if(!typeRef.name)throw new Error("Unknown type reference: "+(0,_inspect.default)(typeRef));return function(typeName){var type=typeMap[typeName];if(type)return type;throw new Error("Invalid or incomplete schema, unknown type: ".concat(typeName,". Ensure ")+"that a full introspection query is used in order to build a client schema.")}(typeRef.name)}function getObjectType(typeRef){var type=getType(typeRef);return(0,_definition.assertObjectType)(type)}function getInterfaceType(typeRef){var type=getType(typeRef);return(0,_definition.assertInterfaceType)(type)}function buildFieldDefMap(typeIntrospection){if(!typeIntrospection.fields)throw new Error("Introspection result missing fields: "+(0,_inspect.default)(typeIntrospection));return(0,_keyValMap.default)(typeIntrospection.fields,function(fieldIntrospection){return fieldIntrospection.name},function(fieldIntrospection){if(!fieldIntrospection.args)throw new Error("Introspection result missing field args: "+(0,_inspect.default)(fieldIntrospection));return{description:fieldIntrospection.description,deprecationReason:fieldIntrospection.deprecationReason,type:function(typeRef){var type=getType(typeRef);return(0,_definition.isOutputType)(type)||(0,_invariant.default)(0,"Introspection must provide output type for fields, but received: "+(0,_inspect.default)(type)+"."),type}(fieldIntrospection.type),args:buildInputValueDefMap(fieldIntrospection.args)}})}function buildInputValueDefMap(inputValueIntrospections){return(0,_keyValMap.default)(inputValueIntrospections,function(inputValue){return inputValue.name},buildInputValue)}function buildInputValue(inputValueIntrospection){var type=function(typeRef){var type=getType(typeRef);return(0,_definition.isInputType)(type)||(0,_invariant.default)(0,"Introspection must provide input type for arguments, but received: "+(0,_inspect.default)(type)+"."),type}(inputValueIntrospection.type),defaultValue=inputValueIntrospection.defaultValue?(0,_valueFromAST.valueFromAST)((0,_parser.parseValue)(inputValueIntrospection.defaultValue),type):void 0;return{description:inputValueIntrospection.description,type:type,defaultValue:defaultValue}}};var _objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_valueFromAST=require("./valueFromAST"),_parser=require("../language/parser"),_schema=require("../type/schema"),_definition=require("../type/definition"),_directives=require("../type/directives"),_introspection=require("../type/introspection"),_scalars=require("../type/scalars");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},{"../jsutils/inspect":31,"../jsutils/invariant":33,"../jsutils/keyValMap":38,"../language/parser":53,"../polyfills/objectValues":63,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/scalars":71,"../type/schema":72,"./valueFromAST":97}],79:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.coerceValue=function coerceValue(value,type,blameNode,path){if((0,_definition.isNonNullType)(type))return null==value?ofErrors([coercionError("Expected non-nullable type ".concat((0,_inspect.default)(type)," not to be null"),blameNode,path)]):coerceValue(value,type.ofType,blameNode,path);if(null==value)return ofValue(null);if((0,_definition.isScalarType)(type))try{var parseResult=type.parseValue(value);return(0,_isInvalid.default)(parseResult)?ofErrors([coercionError("Expected type ".concat(type.name),blameNode,path)]):ofValue(parseResult)}catch(error){return ofErrors([coercionError("Expected type ".concat(type.name),blameNode,path,error.message,error)])}if((0,_definition.isEnumType)(type)){if("string"==typeof value){var enumValue=type.getValue(value);if(enumValue)return ofValue(enumValue.value)}var suggestions=(0,_suggestionList.default)(String(value),type.getValues().map(function(enumValue){return enumValue.name})),didYouMean=0!==suggestions.length?"did you mean ".concat((0,_orList.default)(suggestions),"?"):void 0;return ofErrors([coercionError("Expected type ".concat(type.name),blameNode,path,didYouMean)])}if((0,_definition.isListType)(type)){var itemType=type.ofType;if((0,_iterall.isCollection)(value)){var errors,coercedValue=[];return(0,_iterall.forEach)(value,function(itemValue,index){var coercedItem=coerceValue(itemValue,itemType,blameNode,atPath(path,index));coercedItem.errors?errors=add(errors,coercedItem.errors):errors||coercedValue.push(coercedItem.value)}),errors?ofErrors(errors):ofValue(coercedValue)}var coercedItem=coerceValue(value,itemType,blameNode);return coercedItem.errors?coercedItem:ofValue([coercedItem.value])}if((0,_definition.isInputObjectType)(type)){if("object"!==_typeof(value))return ofErrors([coercionError("Expected type ".concat(type.name," to be an object"),blameNode,path)]);var _errors,_coercedValue={},fields=type.getFields(),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(0,_objectValues.default)(fields)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var field=_step.value,fieldValue=value[field.name];if((0,_isInvalid.default)(fieldValue))(0,_isInvalid.default)(field.defaultValue)?(0,_definition.isNonNullType)(field.type)&&(_errors=add(_errors,coercionError("Field ".concat(printPath(atPath(path,field.name))," of required ")+"type ".concat((0,_inspect.default)(field.type)," was not provided"),blameNode))):_coercedValue[field.name]=field.defaultValue;else{var coercedField=coerceValue(fieldValue,field.type,blameNode,atPath(path,field.name));coercedField.errors?_errors=add(_errors,coercedField.errors):_errors||(_coercedValue[field.name]=coercedField.value)}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}for(var _i=0,_Object$keys=Object.keys(value);_i<_Object$keys.length;_i++){var fieldName=_Object$keys[_i];if(!fields[fieldName]){var _suggestions=(0,_suggestionList.default)(fieldName,Object.keys(fields)),_didYouMean=0!==_suggestions.length?"did you mean ".concat((0,_orList.default)(_suggestions),"?"):void 0;_errors=add(_errors,coercionError('Field "'.concat(fieldName,'" is not defined by type ').concat(type.name),blameNode,path,_didYouMean))}}return _errors?ofErrors(_errors):ofValue(_coercedValue)}throw new Error('Unexpected input type: "'.concat((0,_inspect.default)(type),'".'))};var _iterall=require("iterall"),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_isInvalid=_interopRequireDefault(require("../jsutils/isInvalid")),_orList=_interopRequireDefault(require("../jsutils/orList")),_suggestionList=_interopRequireDefault(require("../jsutils/suggestionList")),_GraphQLError=require("../error/GraphQLError"),_definition=require("../type/definition");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _typeof(obj){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj})(obj)}function ofValue(value){return{errors:void 0,value:value}}function ofErrors(errors){return{errors:errors,value:void 0}}function add(errors,moreErrors){return(errors||[]).concat(moreErrors)}function atPath(prev,key){return{prev:prev,key:key}}function coercionError(message,blameNode,path,subMessage,originalError){var pathStr=printPath(path);return new _GraphQLError.GraphQLError(message+(pathStr?" at "+pathStr:"")+(subMessage?"; "+subMessage:"."),blameNode,void 0,void 0,void 0,originalError)}function printPath(path){for(var pathStr="",currentPath=path;currentPath;)pathStr=("string"==typeof currentPath.key?"."+currentPath.key:"["+String(currentPath.key)+"]")+pathStr,currentPath=currentPath.prev;return pathStr?"value"+pathStr:""}},{"../error/GraphQLError":18,"../jsutils/inspect":31,"../jsutils/isInvalid":34,"../jsutils/orList":42,"../jsutils/suggestionList":46,"../polyfills/objectValues":63,"../type/definition":67,iterall:136}],80:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.concatAST=function(asts){return{kind:"Document",definitions:(0,_flatMap.default)(asts,function(ast){return ast.definitions})}};var obj,_flatMap=(obj=require("../polyfills/flatMap"))&&obj.__esModule?obj:{default:obj}},{"../polyfills/flatMap":59}],81:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.extendSchema=function(schema,documentAST,options){(0,_schema.assertSchema)(schema),documentAST&&documentAST.kind===_kinds.Kind.DOCUMENT||(0,_invariant.default)(0,"Must provide valid Document AST"),options&&(options.assumeValid||options.assumeValidSDL)||(0,_validate.assertValidSDLExtension)(documentAST,schema);var schemaDef,typeDefs=[],typeExtsMap=Object.create(null),directiveDefs=[],schemaExts=[],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=documentAST.definitions[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var def=_step.value;if(def.kind===_kinds.Kind.SCHEMA_DEFINITION)schemaDef=def;else if(def.kind===_kinds.Kind.SCHEMA_EXTENSION)schemaExts.push(def);else if((0,_predicates.isTypeDefinitionNode)(def))typeDefs.push(def);else if((0,_predicates.isTypeExtensionNode)(def)){var extendedTypeName=def.name.value,existingTypeExts=typeExtsMap[extendedTypeName];typeExtsMap[extendedTypeName]=existingTypeExts?existingTypeExts.concat([def]):[def]}else def.kind===_kinds.Kind.DIRECTIVE_DEFINITION&&directiveDefs.push(def)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}if(0===Object.keys(typeExtsMap).length&&0===typeDefs.length&&0===directiveDefs.length&&0===schemaExts.length&&!schemaDef)return schema;var schemaConfig=schema.toConfig(),astBuilder=new _buildASTSchema.ASTDefinitionBuilder(options,function(typeName){var type=typeMap[typeName];return type||(0,_invariant.default)(0,'Unknown type: "'.concat(typeName,'".')),type}),typeMap=(0,_keyValMap.default)(typeDefs,function(node){return node.name.value},function(node){return astBuilder.buildType(node)}),_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=schemaConfig.types[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var existingType=_step2.value;typeMap[existingType.name]=extendNamedType(existingType)}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}var operationTypes={query:schemaConfig.query&&schemaConfig.query.name,mutation:schemaConfig.mutation&&schemaConfig.mutation.name,subscription:schemaConfig.subscription&&schemaConfig.subscription.name};if(schemaDef){var _iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=schemaDef.operationTypes[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var _ref2=_step3.value,operation=_ref2.operation,type=_ref2.type;operationTypes[operation]=type.name.value}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}}for(var _i=0,_schemaExts=schemaExts;_i<_schemaExts.length;_i++){var schemaExt=_schemaExts[_i];if(schemaExt.operationTypes){var _iteratorNormalCompletion4=!0,_didIteratorError4=!1,_iteratorError4=void 0;try{for(var _step4,_iterator4=schemaExt.operationTypes[Symbol.iterator]();!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=!0){var _ref4=_step4.value,_operation=_ref4.operation,_type=_ref4.type;operationTypes[_operation]=_type.name.value}}catch(err){_didIteratorError4=!0,_iteratorError4=err}finally{try{_iteratorNormalCompletion4||null==_iterator4.return||_iterator4.return()}finally{if(_didIteratorError4)throw _iteratorError4}}}}var allowedLegacyNames=schemaConfig.allowedLegacyNames.concat(options&&options.allowedLegacyNames||[]);return new _schema.GraphQLSchema({query:getMaybeTypeByName(operationTypes.query),mutation:getMaybeTypeByName(operationTypes.mutation),subscription:getMaybeTypeByName(operationTypes.subscription),types:(0,_objectValues.default)(typeMap),directives:function(){var existingDirectives=schema.getDirectives().map(extendDirective);return existingDirectives||(0,_invariant.default)(0,"schema must have default directives"),existingDirectives.concat(directiveDefs.map(function(node){return astBuilder.buildDirective(node)}))}(),astNode:schemaDef||schemaConfig.astNode,extensionASTNodes:schemaConfig.extensionASTNodes.concat(schemaExts),allowedLegacyNames:allowedLegacyNames});function replaceType(type){return(0,_definition.isListType)(type)?new _definition.GraphQLList(replaceType(type.ofType)):(0,_definition.isNonNullType)(type)?new _definition.GraphQLNonNull(replaceType(type.ofType)):replaceNamedType(type)}function replaceNamedType(type){return typeMap[type.name]}function getMaybeTypeByName(typeName){return typeName?typeMap[typeName]:null}function extendNamedType(type){if((0,_introspection.isIntrospectionType)(type)||(0,_scalars.isSpecifiedScalarType)(type))return type;if((0,_definition.isScalarType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[config.name]||[];return new _definition.GraphQLScalarType(_objectSpread({},config,{extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);if((0,_definition.isObjectType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[config.name]||[],interfaceNodes=(0,_flatMap.default)(extensions,function(node){return node.interfaces||[]}),fieldNodes=(0,_flatMap.default)(extensions,function(node){return node.fields||[]});return new _definition.GraphQLObjectType(_objectSpread({},config,{interfaces:function(){return[].concat(type.getInterfaces().map(replaceNamedType),interfaceNodes.map(function(node){return astBuilder.getNamedType(node)}))},fields:function(){return _objectSpread({},(0,_mapValue.default)(config.fields,extendField),(0,_keyValMap.default)(fieldNodes,function(node){return node.name.value},function(node){return astBuilder.buildField(node)}))},extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);if((0,_definition.isInterfaceType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[config.name]||[],fieldNodes=(0,_flatMap.default)(extensions,function(node){return node.fields||[]});return new _definition.GraphQLInterfaceType(_objectSpread({},config,{fields:function(){return _objectSpread({},(0,_mapValue.default)(config.fields,extendField),(0,_keyValMap.default)(fieldNodes,function(node){return node.name.value},function(node){return astBuilder.buildField(node)}))},extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);if((0,_definition.isUnionType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[config.name]||[],typeNodes=(0,_flatMap.default)(extensions,function(node){return node.types||[]});return new _definition.GraphQLUnionType(_objectSpread({},config,{types:function(){return[].concat(type.getTypes().map(replaceNamedType),typeNodes.map(function(node){return astBuilder.getNamedType(node)}))},extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);if((0,_definition.isEnumType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[type.name]||[],valueNodes=(0,_flatMap.default)(extensions,function(node){return node.values||[]});return new _definition.GraphQLEnumType(_objectSpread({},config,{values:_objectSpread({},config.values,(0,_keyValMap.default)(valueNodes,function(value){return value.name.value},function(value){return astBuilder.buildEnumValue(value)})),extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);if((0,_definition.isInputObjectType)(type))return function(type){var config=type.toConfig(),extensions=typeExtsMap[config.name]||[],fieldNodes=(0,_flatMap.default)(extensions,function(node){return node.fields||[]});return new _definition.GraphQLInputObjectType(_objectSpread({},config,{fields:function(){return _objectSpread({},(0,_mapValue.default)(config.fields,function(field){return _objectSpread({},field,{type:replaceType(field.type)})}),(0,_keyValMap.default)(fieldNodes,function(field){return field.name.value},function(field){return astBuilder.buildInputField(field)}))},extensionASTNodes:config.extensionASTNodes.concat(extensions)}))}(type);throw new Error('Unexpected type: "'.concat((0,_inspect.default)(type),'".'))}function extendDirective(directive){var config=directive.toConfig();return new _directives.GraphQLDirective(_objectSpread({},config,{args:(0,_mapValue.default)(config.args,extendArg)}))}function extendField(field){return _objectSpread({},field,{type:replaceType(field.type),args:(0,_mapValue.default)(field.args,extendArg)})}function extendArg(arg){return _objectSpread({},arg,{type:replaceType(arg.type)})}};var _flatMap=_interopRequireDefault(require("../polyfills/flatMap")),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_invariant=_interopRequireDefault(require("../jsutils/invariant")),_mapValue=_interopRequireDefault(require("../jsutils/mapValue")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_buildASTSchema=require("./buildASTSchema"),_validate=require("../validation/validate"),_schema=require("../type/schema"),_introspection=require("../type/introspection"),_scalars=require("../type/scalars"),_definition=require("../type/definition"),_directives=require("../type/directives"),_kinds=require("../language/kinds"),_predicates=require("../language/predicates");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}},{"../jsutils/inspect":31,"../jsutils/invariant":33,"../jsutils/keyValMap":38,"../jsutils/mapValue":39,"../language/kinds":50,"../language/predicates":54,"../polyfills/flatMap":59,"../polyfills/objectValues":63,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/scalars":71,"../type/schema":72,"../validation/validate":135,"./buildASTSchema":77}],82:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findBreakingChanges=function(oldSchema,newSchema){return[].concat(function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],_i=0,_Object$keys=Object.keys(oldTypeMap);_i<_Object$keys.length;_i++){var typeName=_Object$keys[_i];newTypeMap[typeName]||breakingChanges.push({type:BreakingChangeType.TYPE_REMOVED,description:"".concat(typeName," was removed.")})}return breakingChanges}(oldSchema,newSchema),function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],_i2=0,_Object$keys2=Object.keys(oldTypeMap);_i2<_Object$keys2.length;_i2++){var typeName=_Object$keys2[_i2];if(newTypeMap[typeName]){var oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];oldType.constructor!==newType.constructor&&breakingChanges.push({type:BreakingChangeType.TYPE_CHANGED_KIND,description:"".concat(typeName," changed from ")+"".concat(typeKindName(oldType)," to ").concat(typeKindName(newType),".")})}}return breakingChanges}(oldSchema,newSchema),function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],_i5=0,_Object$keys5=Object.keys(oldTypeMap);_i5<_Object$keys5.length;_i5++){var typeName=_Object$keys5[_i5],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if(((0,_definition.isObjectType)(oldType)||(0,_definition.isInterfaceType)(oldType))&&((0,_definition.isObjectType)(newType)||(0,_definition.isInterfaceType)(newType))&&newType.constructor===oldType.constructor)for(var oldTypeFieldsDef=oldType.getFields(),newTypeFieldsDef=newType.getFields(),_i6=0,_Object$keys6=Object.keys(oldTypeFieldsDef);_i6<_Object$keys6.length;_i6++){var fieldName=_Object$keys6[_i6];if(fieldName in newTypeFieldsDef){var oldFieldType=oldTypeFieldsDef[fieldName].type,newFieldType=newTypeFieldsDef[fieldName].type,isSafe=isChangeSafeForObjectOrInterfaceField(oldFieldType,newFieldType);if(!isSafe){var oldFieldTypeString=(0,_definition.isNamedType)(oldFieldType)?oldFieldType.name:oldFieldType.toString(),newFieldTypeString=(0,_definition.isNamedType)(newFieldType)?newFieldType.name:newFieldType.toString();breakingChanges.push({type:BreakingChangeType.FIELD_CHANGED_KIND,description:"".concat(typeName,".").concat(fieldName," changed type from ")+"".concat(oldFieldTypeString," to ").concat(newFieldTypeString,".")})}}else breakingChanges.push({type:BreakingChangeType.FIELD_REMOVED,description:"".concat(typeName,".").concat(fieldName," was removed.")})}}return breakingChanges}(oldSchema,newSchema),findFieldsThatChangedTypeOnInputObjectTypes(oldSchema,newSchema).breakingChanges,function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),typesRemovedFromUnion=[],_i10=0,_Object$keys10=Object.keys(oldTypeMap);_i10<_Object$keys10.length;_i10++){var typeName=_Object$keys10[_i10],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isUnionType)(oldType)&&(0,_definition.isUnionType)(newType)){var typeNamesInNewUnion=Object.create(null),_iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=newType.getTypes()[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var type=_step3.value;typeNamesInNewUnion[type.name]=!0}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}var _iteratorNormalCompletion4=!0,_didIteratorError4=!1,_iteratorError4=void 0;try{for(var _step4,_iterator4=oldType.getTypes()[Symbol.iterator]();!(_iteratorNormalCompletion4=(_step4=_iterator4.next()).done);_iteratorNormalCompletion4=!0){var _type=_step4.value;typeNamesInNewUnion[_type.name]||typesRemovedFromUnion.push({type:BreakingChangeType.TYPE_REMOVED_FROM_UNION,description:"".concat(_type.name," was removed from union type ").concat(typeName,".")})}}catch(err){_didIteratorError4=!0,_iteratorError4=err}finally{try{_iteratorNormalCompletion4||null==_iterator4.return||_iterator4.return()}finally{if(_didIteratorError4)throw _iteratorError4}}}}return typesRemovedFromUnion}(oldSchema,newSchema),function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),valuesRemovedFromEnums=[],_i12=0,_Object$keys12=Object.keys(oldTypeMap);_i12<_Object$keys12.length;_i12++){var typeName=_Object$keys12[_i12],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isEnumType)(oldType)&&(0,_definition.isEnumType)(newType)){var valuesInNewEnum=Object.create(null),_iteratorNormalCompletion7=!0,_didIteratorError7=!1,_iteratorError7=void 0;try{for(var _step7,_iterator7=newType.getValues()[Symbol.iterator]();!(_iteratorNormalCompletion7=(_step7=_iterator7.next()).done);_iteratorNormalCompletion7=!0){var value=_step7.value;valuesInNewEnum[value.name]=!0}}catch(err){_didIteratorError7=!0,_iteratorError7=err}finally{try{_iteratorNormalCompletion7||null==_iterator7.return||_iterator7.return()}finally{if(_didIteratorError7)throw _iteratorError7}}var _iteratorNormalCompletion8=!0,_didIteratorError8=!1,_iteratorError8=void 0;try{for(var _step8,_iterator8=oldType.getValues()[Symbol.iterator]();!(_iteratorNormalCompletion8=(_step8=_iterator8.next()).done);_iteratorNormalCompletion8=!0){var _value=_step8.value;valuesInNewEnum[_value.name]||valuesRemovedFromEnums.push({type:BreakingChangeType.VALUE_REMOVED_FROM_ENUM,description:"".concat(_value.name," was removed from enum type ").concat(typeName,".")})}}catch(err){_didIteratorError8=!0,_iteratorError8=err}finally{try{_iteratorNormalCompletion8||null==_iterator8.return||_iterator8.return()}finally{if(_didIteratorError8)throw _iteratorError8}}}}return valuesRemovedFromEnums}(oldSchema,newSchema),findArgChanges(oldSchema,newSchema).breakingChanges,function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],_i14=0,_Object$keys14=Object.keys(oldTypeMap);_i14<_Object$keys14.length;_i14++){var typeName=_Object$keys14[_i14],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isObjectType)(oldType)&&(0,_definition.isObjectType)(newType)){var oldInterfaces=oldType.getInterfaces(),newInterfaces=newType.getInterfaces(),_iteratorNormalCompletion11=!0,_didIteratorError11=!1,_iteratorError11=void 0;try{for(var _step11,_loop3=function(){var oldInterface=_step11.value;newInterfaces.some(function(int){return int.name===oldInterface.name})||breakingChanges.push({type:BreakingChangeType.INTERFACE_REMOVED_FROM_OBJECT,description:"".concat(typeName," no longer implements interface ")+"".concat(oldInterface.name,".")})},_iterator11=oldInterfaces[Symbol.iterator]();!(_iteratorNormalCompletion11=(_step11=_iterator11.next()).done);_iteratorNormalCompletion11=!0)_loop3()}catch(err){_didIteratorError11=!0,_iteratorError11=err}finally{try{_iteratorNormalCompletion11||null==_iterator11.return||_iterator11.return()}finally{if(_didIteratorError11)throw _iteratorError11}}}}return breakingChanges}(oldSchema,newSchema),function(oldSchema,newSchema){var removedDirectives=[],newSchemaDirectiveMap=getDirectiveMapForSchema(newSchema),_iteratorNormalCompletion13=!0,_didIteratorError13=!1,_iteratorError13=void 0;try{for(var _step13,_iterator13=oldSchema.getDirectives()[Symbol.iterator]();!(_iteratorNormalCompletion13=(_step13=_iterator13.next()).done);_iteratorNormalCompletion13=!0){var directive=_step13.value;newSchemaDirectiveMap[directive.name]||removedDirectives.push({type:BreakingChangeType.DIRECTIVE_REMOVED,description:"".concat(directive.name," was removed")})}}catch(err){_didIteratorError13=!0,_iteratorError13=err}finally{try{_iteratorNormalCompletion13||null==_iterator13.return||_iterator13.return()}finally{if(_didIteratorError13)throw _iteratorError13}}return removedDirectives}(oldSchema,newSchema),function(oldSchema,newSchema){var removedDirectiveArgs=[],oldSchemaDirectiveMap=getDirectiveMapForSchema(oldSchema),_iteratorNormalCompletion15=!0,_didIteratorError15=!1,_iteratorError15=void 0;try{for(var _step15,_iterator15=newSchema.getDirectives()[Symbol.iterator]();!(_iteratorNormalCompletion15=(_step15=_iterator15.next()).done);_iteratorNormalCompletion15=!0){var newDirective=_step15.value,oldDirective=oldSchemaDirectiveMap[newDirective.name];if(oldDirective){var _iteratorNormalCompletion16=!0,_didIteratorError16=!1,_iteratorError16=void 0;try{for(var _step16,_iterator16=findRemovedArgsForDirective(oldDirective,newDirective)[Symbol.iterator]();!(_iteratorNormalCompletion16=(_step16=_iterator16.next()).done);_iteratorNormalCompletion16=!0){var arg=_step16.value;removedDirectiveArgs.push({type:BreakingChangeType.DIRECTIVE_ARG_REMOVED,description:"".concat(arg.name," was removed from ").concat(newDirective.name)})}}catch(err){_didIteratorError16=!0,_iteratorError16=err}finally{try{_iteratorNormalCompletion16||null==_iterator16.return||_iterator16.return()}finally{if(_didIteratorError16)throw _iteratorError16}}}}}catch(err){_didIteratorError15=!0,_iteratorError15=err}finally{try{_iteratorNormalCompletion15||null==_iterator15.return||_iterator15.return()}finally{if(_didIteratorError15)throw _iteratorError15}}return removedDirectiveArgs}(oldSchema,newSchema),function(oldSchema,newSchema){var addedNonNullableArgs=[],oldSchemaDirectiveMap=getDirectiveMapForSchema(oldSchema),_iteratorNormalCompletion18=!0,_didIteratorError18=!1,_iteratorError18=void 0;try{for(var _step18,_iterator18=newSchema.getDirectives()[Symbol.iterator]();!(_iteratorNormalCompletion18=(_step18=_iterator18.next()).done);_iteratorNormalCompletion18=!0){var newDirective=_step18.value,oldDirective=oldSchemaDirectiveMap[newDirective.name];if(oldDirective){var _iteratorNormalCompletion19=!0,_didIteratorError19=!1,_iteratorError19=void 0;try{for(var _step19,_iterator19=findAddedArgsForDirective(oldDirective,newDirective)[Symbol.iterator]();!(_iteratorNormalCompletion19=(_step19=_iterator19.next()).done);_iteratorNormalCompletion19=!0){var arg=_step19.value;(0,_definition.isRequiredArgument)(arg)&&addedNonNullableArgs.push({type:BreakingChangeType.REQUIRED_DIRECTIVE_ARG_ADDED,description:"A required arg ".concat(arg.name," on directive ")+"".concat(newDirective.name," was added")})}}catch(err){_didIteratorError19=!0,_iteratorError19=err}finally{try{_iteratorNormalCompletion19||null==_iterator19.return||_iterator19.return()}finally{if(_didIteratorError19)throw _iteratorError19}}}}}catch(err){_didIteratorError18=!0,_iteratorError18=err}finally{try{_iteratorNormalCompletion18||null==_iterator18.return||_iterator18.return()}finally{if(_didIteratorError18)throw _iteratorError18}}return addedNonNullableArgs}(oldSchema,newSchema),function(oldSchema,newSchema){var removedLocations=[],oldSchemaDirectiveMap=getDirectiveMapForSchema(oldSchema),_iteratorNormalCompletion21=!0,_didIteratorError21=!1,_iteratorError21=void 0;try{for(var _step21,_iterator21=newSchema.getDirectives()[Symbol.iterator]();!(_iteratorNormalCompletion21=(_step21=_iterator21.next()).done);_iteratorNormalCompletion21=!0){var newDirective=_step21.value,oldDirective=oldSchemaDirectiveMap[newDirective.name];if(oldDirective){var _iteratorNormalCompletion22=!0,_didIteratorError22=!1,_iteratorError22=void 0;try{for(var _step22,_iterator22=findRemovedLocationsForDirective(oldDirective,newDirective)[Symbol.iterator]();!(_iteratorNormalCompletion22=(_step22=_iterator22.next()).done);_iteratorNormalCompletion22=!0){var location=_step22.value;removedLocations.push({type:BreakingChangeType.DIRECTIVE_LOCATION_REMOVED,description:"".concat(location," was removed from ").concat(newDirective.name)})}}catch(err){_didIteratorError22=!0,_iteratorError22=err}finally{try{_iteratorNormalCompletion22||null==_iterator22.return||_iterator22.return()}finally{if(_didIteratorError22)throw _iteratorError22}}}}}catch(err){_didIteratorError21=!0,_iteratorError21=err}finally{try{_iteratorNormalCompletion21||null==_iterator21.return||_iterator21.return()}finally{if(_didIteratorError21)throw _iteratorError21}}return removedLocations}(oldSchema,newSchema))},exports.findDangerousChanges=function(oldSchema,newSchema){return[].concat(findArgChanges(oldSchema,newSchema).dangerousChanges,function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),valuesAddedToEnums=[],_i13=0,_Object$keys13=Object.keys(oldTypeMap);_i13<_Object$keys13.length;_i13++){var typeName=_Object$keys13[_i13],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isEnumType)(oldType)&&(0,_definition.isEnumType)(newType)){var valuesInOldEnum=Object.create(null),_iteratorNormalCompletion9=!0,_didIteratorError9=!1,_iteratorError9=void 0;try{for(var _step9,_iterator9=oldType.getValues()[Symbol.iterator]();!(_iteratorNormalCompletion9=(_step9=_iterator9.next()).done);_iteratorNormalCompletion9=!0){var value=_step9.value;valuesInOldEnum[value.name]=!0}}catch(err){_didIteratorError9=!0,_iteratorError9=err}finally{try{_iteratorNormalCompletion9||null==_iterator9.return||_iterator9.return()}finally{if(_didIteratorError9)throw _iteratorError9}}var _iteratorNormalCompletion10=!0,_didIteratorError10=!1,_iteratorError10=void 0;try{for(var _step10,_iterator10=newType.getValues()[Symbol.iterator]();!(_iteratorNormalCompletion10=(_step10=_iterator10.next()).done);_iteratorNormalCompletion10=!0){var _value2=_step10.value;valuesInOldEnum[_value2.name]||valuesAddedToEnums.push({type:DangerousChangeType.VALUE_ADDED_TO_ENUM,description:"".concat(_value2.name," was added to enum type ").concat(typeName,".")})}}catch(err){_didIteratorError10=!0,_iteratorError10=err}finally{try{_iteratorNormalCompletion10||null==_iterator10.return||_iterator10.return()}finally{if(_didIteratorError10)throw _iteratorError10}}}}return valuesAddedToEnums}(oldSchema,newSchema),function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),interfacesAddedToObjectTypes=[],_i15=0,_Object$keys15=Object.keys(newTypeMap);_i15<_Object$keys15.length;_i15++){var typeName=_Object$keys15[_i15],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isObjectType)(oldType)&&(0,_definition.isObjectType)(newType)){var oldInterfaces=oldType.getInterfaces(),newInterfaces=newType.getInterfaces(),_iteratorNormalCompletion12=!0,_didIteratorError12=!1,_iteratorError12=void 0;try{for(var _step12,_loop4=function(){var newInterface=_step12.value;oldInterfaces.some(function(int){return int.name===newInterface.name})||interfacesAddedToObjectTypes.push({type:DangerousChangeType.INTERFACE_ADDED_TO_OBJECT,description:"".concat(newInterface.name," added to interfaces implemented ")+"by ".concat(typeName,".")})},_iterator12=newInterfaces[Symbol.iterator]();!(_iteratorNormalCompletion12=(_step12=_iterator12.next()).done);_iteratorNormalCompletion12=!0)_loop4()}catch(err){_didIteratorError12=!0,_iteratorError12=err}finally{try{_iteratorNormalCompletion12||null==_iterator12.return||_iterator12.return()}finally{if(_didIteratorError12)throw _iteratorError12}}}}return interfacesAddedToObjectTypes}(oldSchema,newSchema),function(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),typesAddedToUnion=[],_i11=0,_Object$keys11=Object.keys(newTypeMap);_i11<_Object$keys11.length;_i11++){var typeName=_Object$keys11[_i11],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isUnionType)(oldType)&&(0,_definition.isUnionType)(newType)){var typeNamesInOldUnion=Object.create(null),_iteratorNormalCompletion5=!0,_didIteratorError5=!1,_iteratorError5=void 0;try{for(var _step5,_iterator5=oldType.getTypes()[Symbol.iterator]();!(_iteratorNormalCompletion5=(_step5=_iterator5.next()).done);_iteratorNormalCompletion5=!0){var type=_step5.value;typeNamesInOldUnion[type.name]=!0}}catch(err){_didIteratorError5=!0,_iteratorError5=err}finally{try{_iteratorNormalCompletion5||null==_iterator5.return||_iterator5.return()}finally{if(_didIteratorError5)throw _iteratorError5}}var _iteratorNormalCompletion6=!0,_didIteratorError6=!1,_iteratorError6=void 0;try{for(var _step6,_iterator6=newType.getTypes()[Symbol.iterator]();!(_iteratorNormalCompletion6=(_step6=_iterator6.next()).done);_iteratorNormalCompletion6=!0){var _type2=_step6.value;typeNamesInOldUnion[_type2.name]||typesAddedToUnion.push({type:DangerousChangeType.TYPE_ADDED_TO_UNION,description:"".concat(_type2.name," was added to union type ").concat(typeName,".")})}}catch(err){_didIteratorError6=!0,_iteratorError6=err}finally{try{_iteratorNormalCompletion6||null==_iterator6.return||_iterator6.return()}finally{if(_didIteratorError6)throw _iteratorError6}}}}return typesAddedToUnion}(oldSchema,newSchema),findFieldsThatChangedTypeOnInputObjectTypes(oldSchema,newSchema).dangerousChanges)},exports.DangerousChangeType=exports.BreakingChangeType=void 0;var _find=_interopRequireDefault(require("../polyfills/find")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_definition=require("../type/definition"),_keyMap=_interopRequireDefault(require("../jsutils/keyMap"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BreakingChangeType={FIELD_CHANGED_KIND:"FIELD_CHANGED_KIND",FIELD_REMOVED:"FIELD_REMOVED",TYPE_CHANGED_KIND:"TYPE_CHANGED_KIND",TYPE_REMOVED:"TYPE_REMOVED",TYPE_REMOVED_FROM_UNION:"TYPE_REMOVED_FROM_UNION",VALUE_REMOVED_FROM_ENUM:"VALUE_REMOVED_FROM_ENUM",ARG_REMOVED:"ARG_REMOVED",ARG_CHANGED_KIND:"ARG_CHANGED_KIND",REQUIRED_ARG_ADDED:"REQUIRED_ARG_ADDED",REQUIRED_INPUT_FIELD_ADDED:"REQUIRED_INPUT_FIELD_ADDED",INTERFACE_REMOVED_FROM_OBJECT:"INTERFACE_REMOVED_FROM_OBJECT",DIRECTIVE_REMOVED:"DIRECTIVE_REMOVED",DIRECTIVE_ARG_REMOVED:"DIRECTIVE_ARG_REMOVED",DIRECTIVE_LOCATION_REMOVED:"DIRECTIVE_LOCATION_REMOVED",REQUIRED_DIRECTIVE_ARG_ADDED:"REQUIRED_DIRECTIVE_ARG_ADDED"};exports.BreakingChangeType=BreakingChangeType;var DangerousChangeType={ARG_DEFAULT_VALUE_CHANGE:"ARG_DEFAULT_VALUE_CHANGE",VALUE_ADDED_TO_ENUM:"VALUE_ADDED_TO_ENUM",INTERFACE_ADDED_TO_OBJECT:"INTERFACE_ADDED_TO_OBJECT",TYPE_ADDED_TO_UNION:"TYPE_ADDED_TO_UNION",OPTIONAL_INPUT_FIELD_ADDED:"OPTIONAL_INPUT_FIELD_ADDED",OPTIONAL_ARG_ADDED:"OPTIONAL_ARG_ADDED"};function findArgChanges(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],dangerousChanges=[],_i3=0,_Object$keys3=Object.keys(oldTypeMap);_i3<_Object$keys3.length;_i3++){var typeName=_Object$keys3[_i3],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if(((0,_definition.isObjectType)(oldType)||(0,_definition.isInterfaceType)(oldType))&&((0,_definition.isObjectType)(newType)||(0,_definition.isInterfaceType)(newType))&&newType.constructor===oldType.constructor)for(var oldTypeFields=oldType.getFields(),newTypeFields=newType.getFields(),_i4=0,_Object$keys4=Object.keys(oldTypeFields);_i4<_Object$keys4.length;_i4++){var fieldName=_Object$keys4[_i4];if(newTypeFields[fieldName]){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_loop=function(){var oldArgDef=_step.value,newArgs=newTypeFields[fieldName].args,newArgDef=(0,_find.default)(newArgs,function(arg){return arg.name===oldArgDef.name});newArgDef?isChangeSafeForInputObjectFieldOrFieldArg(oldArgDef.type,newArgDef.type)?void 0!==oldArgDef.defaultValue&&oldArgDef.defaultValue!==newArgDef.defaultValue&&dangerousChanges.push({type:DangerousChangeType.ARG_DEFAULT_VALUE_CHANGE,description:"".concat(oldType.name,".").concat(fieldName," arg ")+"".concat(oldArgDef.name," has changed defaultValue")}):breakingChanges.push({type:BreakingChangeType.ARG_CHANGED_KIND,description:"".concat(oldType.name,".").concat(fieldName," arg ")+"".concat(oldArgDef.name," has changed type from ")+"".concat(oldArgDef.type.toString()," to ").concat(newArgDef.type.toString())}):breakingChanges.push({type:BreakingChangeType.ARG_REMOVED,description:"".concat(oldType.name,".").concat(fieldName," arg ")+"".concat(oldArgDef.name," was removed")})},_iterator=oldTypeFields[fieldName].args[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0)_loop()}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var _iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_loop2=function(){var newArgDef=_step2.value,oldArgs=oldTypeFields[fieldName].args;if(!(0,_find.default)(oldArgs,function(arg){return arg.name===newArgDef.name})){var argName=newArgDef.name;(0,_definition.isRequiredArgument)(newArgDef)?breakingChanges.push({type:BreakingChangeType.REQUIRED_ARG_ADDED,description:"A required arg ".concat(argName," on ")+"".concat(typeName,".").concat(fieldName," was added")}):dangerousChanges.push({type:DangerousChangeType.OPTIONAL_ARG_ADDED,description:"An optional arg ".concat(argName," on ")+"".concat(typeName,".").concat(fieldName," was added")})}},_iterator2=newTypeFields[fieldName].args[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0)_loop2()}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}}}}return{breakingChanges:breakingChanges,dangerousChanges:dangerousChanges}}function typeKindName(type){if((0,_definition.isScalarType)(type))return"a Scalar type";if((0,_definition.isObjectType)(type))return"an Object type";if((0,_definition.isInterfaceType)(type))return"an Interface type";if((0,_definition.isUnionType)(type))return"a Union type";if((0,_definition.isEnumType)(type))return"an Enum type";if((0,_definition.isInputObjectType)(type))return"an Input type";throw new TypeError("Unexpected type: ".concat((0,_inspect.default)(type),"."))}function findFieldsThatChangedTypeOnInputObjectTypes(oldSchema,newSchema){for(var oldTypeMap=oldSchema.getTypeMap(),newTypeMap=newSchema.getTypeMap(),breakingChanges=[],dangerousChanges=[],_i7=0,_Object$keys7=Object.keys(oldTypeMap);_i7<_Object$keys7.length;_i7++){var typeName=_Object$keys7[_i7],oldType=oldTypeMap[typeName],newType=newTypeMap[typeName];if((0,_definition.isInputObjectType)(oldType)&&(0,_definition.isInputObjectType)(newType)){for(var oldTypeFieldsDef=oldType.getFields(),newTypeFieldsDef=newType.getFields(),_i8=0,_Object$keys8=Object.keys(oldTypeFieldsDef);_i8<_Object$keys8.length;_i8++){var fieldName=_Object$keys8[_i8];if(fieldName in newTypeFieldsDef){var oldFieldType=oldTypeFieldsDef[fieldName].type,newFieldType=newTypeFieldsDef[fieldName].type;if(!isChangeSafeForInputObjectFieldOrFieldArg(oldFieldType,newFieldType)){var oldFieldTypeString=(0,_definition.isNamedType)(oldFieldType)?oldFieldType.name:oldFieldType.toString(),newFieldTypeString=(0,_definition.isNamedType)(newFieldType)?newFieldType.name:newFieldType.toString();breakingChanges.push({type:BreakingChangeType.FIELD_CHANGED_KIND,description:"".concat(typeName,".").concat(fieldName," changed type from ")+"".concat(oldFieldTypeString," to ").concat(newFieldTypeString,".")})}}else breakingChanges.push({type:BreakingChangeType.FIELD_REMOVED,description:"".concat(typeName,".").concat(fieldName," was removed.")})}for(var _i9=0,_Object$keys9=Object.keys(newTypeFieldsDef);_i9<_Object$keys9.length;_i9++){var _fieldName=_Object$keys9[_i9];_fieldName in oldTypeFieldsDef||((0,_definition.isRequiredInputField)(newTypeFieldsDef[_fieldName])?breakingChanges.push({type:BreakingChangeType.REQUIRED_INPUT_FIELD_ADDED,description:"A required field ".concat(_fieldName," on ")+"input type ".concat(typeName," was added.")}):dangerousChanges.push({type:DangerousChangeType.OPTIONAL_INPUT_FIELD_ADDED,description:"An optional field ".concat(_fieldName," on ")+"input type ".concat(typeName," was added.")}))}}}return{breakingChanges:breakingChanges,dangerousChanges:dangerousChanges}}function isChangeSafeForObjectOrInterfaceField(oldType,newType){return(0,_definition.isListType)(oldType)?(0,_definition.isListType)(newType)&&isChangeSafeForObjectOrInterfaceField(oldType.ofType,newType.ofType)||(0,_definition.isNonNullType)(newType)&&isChangeSafeForObjectOrInterfaceField(oldType,newType.ofType):(0,_definition.isNonNullType)(oldType)?(0,_definition.isNonNullType)(newType)&&isChangeSafeForObjectOrInterfaceField(oldType.ofType,newType.ofType):(0,_definition.isNamedType)(newType)&&oldType.name===newType.name||(0,_definition.isNonNullType)(newType)&&isChangeSafeForObjectOrInterfaceField(oldType,newType.ofType)}function isChangeSafeForInputObjectFieldOrFieldArg(oldType,newType){return(0,_definition.isListType)(oldType)?(0,_definition.isListType)(newType)&&isChangeSafeForInputObjectFieldOrFieldArg(oldType.ofType,newType.ofType):(0,_definition.isNonNullType)(oldType)?(0,_definition.isNonNullType)(newType)&&isChangeSafeForInputObjectFieldOrFieldArg(oldType.ofType,newType.ofType)||!(0,_definition.isNonNullType)(newType)&&isChangeSafeForInputObjectFieldOrFieldArg(oldType.ofType,newType):(0,_definition.isNamedType)(newType)&&oldType.name===newType.name}function findRemovedArgsForDirective(oldDirective,newDirective){var removedArgs=[],newArgMap=getArgumentMapForDirective(newDirective),_iteratorNormalCompletion14=!0,_didIteratorError14=!1,_iteratorError14=void 0;try{for(var _step14,_iterator14=oldDirective.args[Symbol.iterator]();!(_iteratorNormalCompletion14=(_step14=_iterator14.next()).done);_iteratorNormalCompletion14=!0){var arg=_step14.value;newArgMap[arg.name]||removedArgs.push(arg)}}catch(err){_didIteratorError14=!0,_iteratorError14=err}finally{try{_iteratorNormalCompletion14||null==_iterator14.return||_iterator14.return()}finally{if(_didIteratorError14)throw _iteratorError14}}return removedArgs}function findAddedArgsForDirective(oldDirective,newDirective){var addedArgs=[],oldArgMap=getArgumentMapForDirective(oldDirective),_iteratorNormalCompletion17=!0,_didIteratorError17=!1,_iteratorError17=void 0;try{for(var _step17,_iterator17=newDirective.args[Symbol.iterator]();!(_iteratorNormalCompletion17=(_step17=_iterator17.next()).done);_iteratorNormalCompletion17=!0){var arg=_step17.value;oldArgMap[arg.name]||addedArgs.push(arg)}}catch(err){_didIteratorError17=!0,_iteratorError17=err}finally{try{_iteratorNormalCompletion17||null==_iterator17.return||_iterator17.return()}finally{if(_didIteratorError17)throw _iteratorError17}}return addedArgs}function findRemovedLocationsForDirective(oldDirective,newDirective){var removedLocations=[],newLocationSet=new Set(newDirective.locations),_iteratorNormalCompletion20=!0,_didIteratorError20=!1,_iteratorError20=void 0;try{for(var _step20,_iterator20=oldDirective.locations[Symbol.iterator]();!(_iteratorNormalCompletion20=(_step20=_iterator20.next()).done);_iteratorNormalCompletion20=!0){var oldLocation=_step20.value;newLocationSet.has(oldLocation)||removedLocations.push(oldLocation)}}catch(err){_didIteratorError20=!0,_iteratorError20=err}finally{try{_iteratorNormalCompletion20||null==_iterator20.return||_iterator20.return()}finally{if(_didIteratorError20)throw _iteratorError20}}return removedLocations}function getDirectiveMapForSchema(schema){return(0,_keyMap.default)(schema.getDirectives(),function(dir){return dir.name})}function getArgumentMapForDirective(directive){return(0,_keyMap.default)(directive.args,function(arg){return arg.name})}exports.DangerousChangeType=DangerousChangeType},{"../jsutils/inspect":31,"../jsutils/keyMap":37,"../polyfills/find":58,"../type/definition":67}],83:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.findDeprecatedUsages=function(schema,ast){var errors=[],typeInfo=new _TypeInfo.TypeInfo(schema);return(0,_visitor.visit)(ast,(0,_visitor.visitWithTypeInfo)(typeInfo,{Field:function(node){var fieldDef=typeInfo.getFieldDef();if(fieldDef&&fieldDef.isDeprecated){var parentType=typeInfo.getParentType();if(parentType){var reason=fieldDef.deprecationReason;errors.push(new _GraphQLError.GraphQLError("The field ".concat(parentType.name,".").concat(fieldDef.name," is deprecated.")+(reason?" "+reason:""),node))}}},EnumValue:function(node){var enumVal=typeInfo.getEnumValue();if(enumVal&&enumVal.isDeprecated){var type=(0,_definition.getNamedType)(typeInfo.getInputType());if(type){var reason=enumVal.deprecationReason;errors.push(new _GraphQLError.GraphQLError("The enum value ".concat(type.name,".").concat(enumVal.name," is deprecated.")+(reason?" "+reason:""),node))}}}})),errors};var _GraphQLError=require("../error/GraphQLError"),_visitor=require("../language/visitor"),_definition=require("../type/definition"),_TypeInfo=require("./TypeInfo")},{"../error/GraphQLError":18,"../language/visitor":57,"../type/definition":67,"./TypeInfo":74}],84:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getOperationAST=function(documentAST,operationName){for(var operation=null,i=0;i<documentAST.definitions.length;i++){var definition=documentAST.definitions[i];if(definition.kind===_kinds.Kind.OPERATION_DEFINITION)if(operationName){if(definition.name&&definition.name.value===operationName)return definition}else{if(operation)return null;operation=definition}}return operation};var _kinds=require("../language/kinds")},{"../language/kinds":50}],85:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getOperationRootType=function(schema,operation){if("query"===operation.operation){var queryType=schema.getQueryType();if(!queryType)throw new _GraphQLError.GraphQLError("Schema does not define the required query root type.",operation);return queryType}if("mutation"===operation.operation){var mutationType=schema.getMutationType();if(!mutationType)throw new _GraphQLError.GraphQLError("Schema is not configured for mutations.",operation);return mutationType}if("subscription"!==operation.operation)throw new _GraphQLError.GraphQLError("Can only have query, mutation and subscription operations.",operation);var subscriptionType=schema.getSubscriptionType();if(subscriptionType)return subscriptionType;throw new _GraphQLError.GraphQLError("Schema is not configured for subscriptions.",operation)};var _GraphQLError=require("../error/GraphQLError")},{"../error/GraphQLError":18}],86:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"getIntrospectionQuery",{enumerable:!0,get:function(){return _introspectionQuery.getIntrospectionQuery}}),Object.defineProperty(exports,"introspectionQuery",{enumerable:!0,get:function(){return _introspectionQuery.introspectionQuery}}),Object.defineProperty(exports,"getOperationAST",{enumerable:!0,get:function(){return _getOperationAST.getOperationAST}}),Object.defineProperty(exports,"getOperationRootType",{enumerable:!0,get:function(){return _getOperationRootType.getOperationRootType}}),Object.defineProperty(exports,"introspectionFromSchema",{enumerable:!0,get:function(){return _introspectionFromSchema.introspectionFromSchema}}),Object.defineProperty(exports,"buildClientSchema",{enumerable:!0,get:function(){return _buildClientSchema.buildClientSchema}}),Object.defineProperty(exports,"buildASTSchema",{enumerable:!0,get:function(){return _buildASTSchema.buildASTSchema}}),Object.defineProperty(exports,"buildSchema",{enumerable:!0,get:function(){return _buildASTSchema.buildSchema}}),Object.defineProperty(exports,"getDescription",{enumerable:!0,get:function(){return _buildASTSchema.getDescription}}),Object.defineProperty(exports,"extendSchema",{enumerable:!0,get:function(){return _extendSchema.extendSchema}}),Object.defineProperty(exports,"lexicographicSortSchema",{enumerable:!0,get:function(){return _lexicographicSortSchema.lexicographicSortSchema}}),Object.defineProperty(exports,"printSchema",{enumerable:!0,get:function(){return _schemaPrinter.printSchema}}),Object.defineProperty(exports,"printType",{enumerable:!0,get:function(){return _schemaPrinter.printType}}),Object.defineProperty(exports,"printIntrospectionSchema",{enumerable:!0,get:function(){return _schemaPrinter.printIntrospectionSchema}}),Object.defineProperty(exports,"typeFromAST",{enumerable:!0,get:function(){return _typeFromAST.typeFromAST}}),Object.defineProperty(exports,"valueFromAST",{enumerable:!0,get:function(){return _valueFromAST.valueFromAST}}),Object.defineProperty(exports,"valueFromASTUntyped",{enumerable:!0,get:function(){return _valueFromASTUntyped.valueFromASTUntyped}}),Object.defineProperty(exports,"astFromValue",{enumerable:!0,get:function(){return _astFromValue.astFromValue}}),Object.defineProperty(exports,"TypeInfo",{enumerable:!0,get:function(){return _TypeInfo.TypeInfo}}),Object.defineProperty(exports,"coerceValue",{enumerable:!0,get:function(){return _coerceValue.coerceValue}}),Object.defineProperty(exports,"isValidJSValue",{enumerable:!0,get:function(){return _isValidJSValue.isValidJSValue}}),Object.defineProperty(exports,"isValidLiteralValue",{enumerable:!0,get:function(){return _isValidLiteralValue.isValidLiteralValue}}),Object.defineProperty(exports,"concatAST",{enumerable:!0,get:function(){return _concatAST.concatAST}}),Object.defineProperty(exports,"separateOperations",{enumerable:!0,get:function(){return _separateOperations.separateOperations}}),Object.defineProperty(exports,"stripIgnoredCharacters",{enumerable:!0,get:function(){return _stripIgnoredCharacters.stripIgnoredCharacters}}),Object.defineProperty(exports,"isEqualType",{enumerable:!0,get:function(){return _typeComparators.isEqualType}}),Object.defineProperty(exports,"isTypeSubTypeOf",{enumerable:!0,get:function(){return _typeComparators.isTypeSubTypeOf}}),Object.defineProperty(exports,"doTypesOverlap",{enumerable:!0,get:function(){return _typeComparators.doTypesOverlap}}),Object.defineProperty(exports,"assertValidName",{enumerable:!0,get:function(){return _assertValidName.assertValidName}}),Object.defineProperty(exports,"isValidNameError",{enumerable:!0,get:function(){return _assertValidName.isValidNameError}}),Object.defineProperty(exports,"BreakingChangeType",{enumerable:!0,get:function(){return _findBreakingChanges.BreakingChangeType}}),Object.defineProperty(exports,"DangerousChangeType",{enumerable:!0,get:function(){return _findBreakingChanges.DangerousChangeType}}),Object.defineProperty(exports,"findBreakingChanges",{enumerable:!0,get:function(){return _findBreakingChanges.findBreakingChanges}}),Object.defineProperty(exports,"findDangerousChanges",{enumerable:!0,get:function(){return _findBreakingChanges.findDangerousChanges}}),Object.defineProperty(exports,"findDeprecatedUsages",{enumerable:!0,get:function(){return _findDeprecatedUsages.findDeprecatedUsages}});var _introspectionQuery=require("./introspectionQuery"),_getOperationAST=require("./getOperationAST"),_getOperationRootType=require("./getOperationRootType"),_introspectionFromSchema=require("./introspectionFromSchema"),_buildClientSchema=require("./buildClientSchema"),_buildASTSchema=require("./buildASTSchema"),_extendSchema=require("./extendSchema"),_lexicographicSortSchema=require("./lexicographicSortSchema"),_schemaPrinter=require("./schemaPrinter"),_typeFromAST=require("./typeFromAST"),_valueFromAST=require("./valueFromAST"),_valueFromASTUntyped=require("./valueFromASTUntyped"),_astFromValue=require("./astFromValue"),_TypeInfo=require("./TypeInfo"),_coerceValue=require("./coerceValue"),_isValidJSValue=require("./isValidJSValue"),_isValidLiteralValue=require("./isValidLiteralValue"),_concatAST=require("./concatAST"),_separateOperations=require("./separateOperations"),_stripIgnoredCharacters=require("./stripIgnoredCharacters"),_typeComparators=require("./typeComparators"),_assertValidName=require("./assertValidName"),_findBreakingChanges=require("./findBreakingChanges"),_findDeprecatedUsages=require("./findDeprecatedUsages")},{"./TypeInfo":74,"./assertValidName":75,"./astFromValue":76,"./buildASTSchema":77,"./buildClientSchema":78,"./coerceValue":79,"./concatAST":80,"./extendSchema":81,"./findBreakingChanges":82,"./findDeprecatedUsages":83,"./getOperationAST":84,"./getOperationRootType":85,"./introspectionFromSchema":87,"./introspectionQuery":88,"./isValidJSValue":89,"./isValidLiteralValue":90,"./lexicographicSortSchema":91,"./schemaPrinter":92,"./separateOperations":93,"./stripIgnoredCharacters":94,"./typeComparators":95,"./typeFromAST":96,"./valueFromAST":97,"./valueFromASTUntyped":98}],87:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.introspectionFromSchema=function(schema,options){var queryAST=(0,_parser.parse)((0,_introspectionQuery.getIntrospectionQuery)(options)),result=(0,_execute.execute)(schema,queryAST);return!(0,_isPromise.default)(result)&&!result.errors&&result.data||(0,_invariant.default)(0),result.data};var _invariant=_interopRequireDefault(require("../jsutils/invariant")),_isPromise=_interopRequireDefault(require("../jsutils/isPromise")),_execute=require("../execution/execute"),_parser=require("../language/parser"),_introspectionQuery=require("./introspectionQuery");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},{"../execution/execute":24,"../jsutils/invariant":33,"../jsutils/isPromise":36,"../language/parser":53,"./introspectionQuery":88}],88:[function(require,module,exports){"use strict";function getIntrospectionQuery(options){var descriptions=!(options&&!1===options.descriptions);return"\n query IntrospectionQuery {\n __schema {\n queryType { name }\n mutationType { name }\n subscriptionType { name }\n types {\n ...FullType\n }\n directives {\n name\n ".concat(descriptions?"description":"","\n locations\n args {\n ...InputValue\n }\n }\n }\n }\n\n fragment FullType on __Type {\n kind\n name\n ").concat(descriptions?"description":"","\n fields(includeDeprecated: true) {\n name\n ").concat(descriptions?"description":"","\n args {\n ...InputValue\n }\n type {\n ...TypeRef\n }\n isDeprecated\n deprecationReason\n }\n inputFields {\n ...InputValue\n }\n interfaces {\n ...TypeRef\n }\n enumValues(includeDeprecated: true) {\n name\n ").concat(descriptions?"description":"","\n isDeprecated\n deprecationReason\n }\n possibleTypes {\n ...TypeRef\n }\n }\n\n fragment InputValue on __InputValue {\n name\n ").concat(descriptions?"description":"","\n type { ...TypeRef }\n defaultValue\n }\n\n fragment TypeRef on __Type {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n }\n }\n }\n }\n }\n }\n }\n }\n ")}Object.defineProperty(exports,"__esModule",{value:!0}),exports.getIntrospectionQuery=getIntrospectionQuery,exports.introspectionQuery=void 0;var introspectionQuery=getIntrospectionQuery();exports.introspectionQuery=introspectionQuery},{}],89:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isValidJSValue=function(value,type){var errors=(0,_coerceValue.coerceValue)(value,type).errors;return errors?errors.map(function(error){return error.message}):[]};var _coerceValue=require("./coerceValue")},{"./coerceValue":79}],90:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isValidLiteralValue=function(type,valueNode){var emptySchema=new _schema.GraphQLSchema({}),emptyDoc={kind:_kinds.Kind.DOCUMENT,definitions:[]},typeInfo=new _TypeInfo.TypeInfo(emptySchema,void 0,type),context=new _ValidationContext.ValidationContext(emptySchema,emptyDoc,typeInfo),visitor=(0,_ValuesOfCorrectType.ValuesOfCorrectType)(context);return(0,_visitor.visit)(valueNode,(0,_visitor.visitWithTypeInfo)(typeInfo,visitor)),context.getErrors()};var _TypeInfo=require("./TypeInfo"),_kinds=require("../language/kinds"),_visitor=require("../language/visitor"),_schema=require("../type/schema"),_ValuesOfCorrectType=require("../validation/rules/ValuesOfCorrectType"),_ValidationContext=require("../validation/ValidationContext")},{"../language/kinds":50,"../language/visitor":57,"../type/schema":72,"../validation/ValidationContext":99,"../validation/rules/ValuesOfCorrectType":131,"./TypeInfo":74}],91:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.lexicographicSortSchema=function(schema){var schemaConfig=schema.toConfig(),typeMap=(0,_keyValMap.default)(sortByName(schemaConfig.types),function(type){return type.name},function(type){{if((0,_definition.isScalarType)(type)||(0,_introspection.isIntrospectionType)(type))return type;if((0,_definition.isObjectType)(type)){var config=type.toConfig();return new _definition.GraphQLObjectType(_objectSpread({},config,{interfaces:function(){return sortTypes(config.interfaces)},fields:function(){return sortFields(config.fields)}}))}if((0,_definition.isInterfaceType)(type)){var _config=type.toConfig();return new _definition.GraphQLInterfaceType(_objectSpread({},_config,{fields:function(){return sortFields(_config.fields)}}))}if((0,_definition.isUnionType)(type)){var _config2=type.toConfig();return new _definition.GraphQLUnionType(_objectSpread({},_config2,{types:function(){return sortTypes(_config2.types)}}))}if((0,_definition.isEnumType)(type)){var _config3=type.toConfig();return new _definition.GraphQLEnumType(_objectSpread({},_config3,{values:sortObjMap(_config3.values)}))}if((0,_definition.isInputObjectType)(type)){var _config4=type.toConfig();return new _definition.GraphQLInputObjectType(_objectSpread({},_config4,{fields:function(){return function(fieldsMap){return sortObjMap(fieldsMap,function(field){return _objectSpread({},field,{type:replaceType(field.type)})})}(_config4.fields)}}))}}throw new Error('Unexpected type: "'.concat((0,_inspect.default)(type),'".'))});return new _schema.GraphQLSchema(_objectSpread({},schemaConfig,{types:(0,_objectValues.default)(typeMap),directives:sortByName(schemaConfig.directives).map(function(directive){var config=directive.toConfig();return new _directives.GraphQLDirective(_objectSpread({},config,{locations:sortBy(config.locations,function(x){return x}),args:sortArgs(config.args)}))}),query:replaceMaybeType(schemaConfig.query),mutation:replaceMaybeType(schemaConfig.mutation),subscription:replaceMaybeType(schemaConfig.subscription)}));function replaceType(type){return(0,_definition.isListType)(type)?new _definition.GraphQLList(replaceType(type.ofType)):(0,_definition.isNonNullType)(type)?new _definition.GraphQLNonNull(replaceType(type.ofType)):replaceNamedType(type)}function replaceNamedType(type){return typeMap[type.name]}function replaceMaybeType(maybeType){return maybeType&&replaceNamedType(maybeType)}function sortArgs(args){return sortObjMap(args,function(arg){return _objectSpread({},arg,{type:replaceType(arg.type)})})}function sortFields(fieldsMap){return sortObjMap(fieldsMap,function(field){return _objectSpread({},field,{type:replaceType(field.type),args:sortArgs(field.args)})})}function sortTypes(arr){return sortByName(arr).map(replaceNamedType)}};var _objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_schema=require("../type/schema"),_directives=require("../type/directives"),_definition=require("../type/definition"),_introspection=require("../type/introspection");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function sortObjMap(map,sortValueFn){for(var sortedMap=Object.create(null),_i=0,_sortedKeys=sortBy(Object.keys(map),function(x){return x});_i<_sortedKeys.length;_i++){var key=_sortedKeys[_i],value=map[key];sortedMap[key]=sortValueFn?sortValueFn(value):value}return sortedMap}function sortByName(array){return sortBy(array,function(obj){return obj.name})}function sortBy(array,mapToKey){return array.slice().sort(function(obj1,obj2){var key1=mapToKey(obj1),key2=mapToKey(obj2);return key1.localeCompare(key2)})}},{"../jsutils/inspect":31,"../jsutils/keyValMap":38,"../polyfills/objectValues":63,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/schema":72}],92:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.printSchema=function(schema,options){return printFilteredSchema(schema,function(n){return!(0,_directives.isSpecifiedDirective)(n)},isDefinedType,options)},exports.printIntrospectionSchema=function(schema,options){return printFilteredSchema(schema,_directives.isSpecifiedDirective,_introspection.isIntrospectionType,options)},exports.printType=printType;var _flatMap=_interopRequireDefault(require("../polyfills/flatMap")),_objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_astFromValue=require("../utilities/astFromValue"),_printer=require("../language/printer"),_blockString=require("../language/blockString"),_definition=require("../type/definition"),_scalars=require("../type/scalars"),_directives=require("../type/directives"),_introspection=require("../type/introspection");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function isDefinedType(type){return!(0,_scalars.isSpecifiedScalarType)(type)&&!(0,_introspection.isIntrospectionType)(type)}function printFilteredSchema(schema,directiveFilter,typeFilter,options){var directives=schema.getDirectives().filter(directiveFilter),typeMap=schema.getTypeMap(),types=(0,_objectValues.default)(typeMap).sort(function(type1,type2){return type1.name.localeCompare(type2.name)}).filter(typeFilter);return[function(schema){if(function(schema){var queryType=schema.getQueryType();if(queryType&&"Query"!==queryType.name)return!1;var mutationType=schema.getMutationType();if(mutationType&&"Mutation"!==mutationType.name)return!1;var subscriptionType=schema.getSubscriptionType();if(subscriptionType&&"Subscription"!==subscriptionType.name)return!1;return!0}(schema))return;var operationTypes=[],queryType=schema.getQueryType();queryType&&operationTypes.push(" query: ".concat(queryType.name));var mutationType=schema.getMutationType();mutationType&&operationTypes.push(" mutation: ".concat(mutationType.name));var subscriptionType=schema.getSubscriptionType();subscriptionType&&operationTypes.push(" subscription: ".concat(subscriptionType.name));return"schema {\n".concat(operationTypes.join("\n"),"\n}")}(schema)].concat(directives.map(function(directive){return function(directive,options){return printDescription(options,directive)+"directive @"+directive.name+printArgs(options,directive.args)+" on "+directive.locations.join(" | ")}(directive,options)}),types.map(function(type){return printType(type,options)})).filter(Boolean).join("\n\n")+"\n"}function printType(type,options){if((0,_definition.isScalarType)(type))return function(type,options){return printDescription(options,type)+"scalar ".concat(type.name)}(type,options);if((0,_definition.isObjectType)(type))return function(type,options){var interfaces=type.getInterfaces(),implementedInterfaces=interfaces.length?" implements "+interfaces.map(function(i){return i.name}).join(" & "):"";return printDescription(options,type)+"type ".concat(type.name).concat(implementedInterfaces)+printFields(options,type)}(type,options);if((0,_definition.isInterfaceType)(type))return function(type,options){return printDescription(options,type)+"interface ".concat(type.name)+printFields(options,type)}(type,options);if((0,_definition.isUnionType)(type))return function(type,options){var types=type.getTypes(),possibleTypes=types.length?" = "+types.join(" | "):"";return printDescription(options,type)+"union "+type.name+possibleTypes}(type,options);if((0,_definition.isEnumType)(type))return function(type,options){var values=type.getValues().map(function(value,i){return printDescription(options,value," ",!i)+" "+value.name+printDeprecated(value)});return printDescription(options,type)+"enum ".concat(type.name)+printBlock(values)}(type,options);if((0,_definition.isInputObjectType)(type))return function(type,options){var fields=(0,_objectValues.default)(type.getFields()).map(function(f,i){return printDescription(options,f," ",!i)+" "+printInputValue(f)});return printDescription(options,type)+"input ".concat(type.name)+printBlock(fields)}(type,options);throw new Error('Unexpected type: "'.concat((0,_inspect.default)(type),'".'))}function printFields(options,type){return printBlock((0,_objectValues.default)(type.getFields()).map(function(f,i){return printDescription(options,f," ",!i)+" "+f.name+printArgs(options,f.args," ")+": "+String(f.type)+printDeprecated(f)}))}function printBlock(items){return 0!==items.length?" {\n"+items.join("\n")+"\n}":""}function printArgs(options,args){var indentation=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"";return 0===args.length?"":args.every(function(arg){return!arg.description})?"("+args.map(printInputValue).join(", ")+")":"(\n"+args.map(function(arg,i){return printDescription(options,arg," "+indentation,!i)+" "+indentation+printInputValue(arg)}).join("\n")+"\n"+indentation+")"}function printInputValue(arg){var defaultAST=(0,_astFromValue.astFromValue)(arg.defaultValue,arg.type),argDecl=arg.name+": "+String(arg.type);return defaultAST&&(argDecl+=" = ".concat((0,_printer.print)(defaultAST))),argDecl}function printDeprecated(fieldOrEnumVal){if(!fieldOrEnumVal.isDeprecated)return"";var reason=fieldOrEnumVal.deprecationReason,reasonAST=(0,_astFromValue.astFromValue)(reason,_scalars.GraphQLString);return reasonAST&&""!==reason&&reason!==_directives.DEFAULT_DEPRECATION_REASON?" @deprecated(reason: "+(0,_printer.print)(reasonAST)+")":" @deprecated"}function printDescription(options,def){var indentation=2<arguments.length&&void 0!==arguments[2]?arguments[2]:"",firstInBlock=!(3<arguments.length&&void 0!==arguments[3])||arguments[3];if(!def.description)return"";var lines=function(description,maxLen){var rawLines=description.split("\n");return(0,_flatMap.default)(rawLines,function(line){return line.length<maxLen+5?line:function(line,maxLen){var parts=line.split(new RegExp("((?: |^).{15,".concat(maxLen-40,"}(?= |$))")));if(parts.length<4)return[line];for(var sublines=[parts[0]+parts[1]+parts[2]],i=3;i<parts.length;i+=2)sublines.push(parts[i].slice(1)+parts[i+1]);return sublines}(line,maxLen)})}(def.description,120-indentation.length);if(options&&options.commentDescriptions)return function(lines,indentation,firstInBlock){for(var description=indentation&&!firstInBlock?"\n":"",i=0;i<lines.length;i++)""===lines[i]?description+=indentation+"#\n":description+=indentation+"# "+lines[i]+"\n";return description}(lines,indentation,firstInBlock);var text=lines.join("\n"),preferMultipleLines=70<text.length;return(indentation&&!firstInBlock?"\n"+indentation:indentation)+(0,_blockString.printBlockString)(text,"",preferMultipleLines).replace(/\n/g,"\n"+indentation)+"\n"}},{"../jsutils/inspect":31,"../language/blockString":47,"../language/printer":55,"../polyfills/flatMap":59,"../polyfills/objectValues":63,"../type/definition":67,"../type/directives":68,"../type/introspection":70,"../type/scalars":71,"../utilities/astFromValue":76}],93:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.separateOperations=function(documentAST){var fromName,operations=[],fragments=Object.create(null),positions=new Map,depGraph=Object.create(null),idx=0;(0,_visitor.visit)(documentAST,{OperationDefinition:function(node){fromName=opName(node),operations.push(node),positions.set(node,idx++)},FragmentDefinition:function(node){fromName=node.name.value,fragments[fromName]=node,positions.set(node,idx++)},FragmentSpread:function(node){var toName=node.name.value;(depGraph[fromName]||(depGraph[fromName]=Object.create(null)))[toName]=!0}});for(var separatedDocumentASTs=Object.create(null),_i=0,_operations=operations;_i<_operations.length;_i++){var operation=_operations[_i],operationName=opName(operation),dependencies=Object.create(null);collectTransitiveDependencies(dependencies,depGraph,operationName);for(var definitions=[operation],_i2=0,_Object$keys=Object.keys(dependencies);_i2<_Object$keys.length;_i2++){var name=_Object$keys[_i2];definitions.push(fragments[name])}definitions.sort(function(n1,n2){return(positions.get(n1)||0)-(positions.get(n2)||0)}),separatedDocumentASTs[operationName]={kind:"Document",definitions:definitions}}return separatedDocumentASTs};var _visitor=require("../language/visitor");function opName(operation){return operation.name?operation.name.value:""}function collectTransitiveDependencies(collected,depGraph,fromName){var immediateDeps=depGraph[fromName];if(immediateDeps)for(var _i3=0,_Object$keys2=Object.keys(immediateDeps);_i3<_Object$keys2.length;_i3++){var toName=_Object$keys2[_i3];collected[toName]||(collected[toName]=!0,collectTransitiveDependencies(collected,depGraph,toName))}}},{"../language/visitor":57}],94:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.stripIgnoredCharacters=function(source){var sourceObj="string"==typeof source?new _source.Source(source):source;if(!(sourceObj instanceof _source.Source))throw new TypeError("Must provide string or Source. Received: ".concat((0,_inspect.default)(sourceObj)));var body=sourceObj.body,lexer=(0,_lexer.createLexer)(sourceObj),strippedBody="",wasLastAddedTokenNonPunctuator=!1;for(;lexer.advance().kind!==_lexer.TokenKind.EOF;){var currentToken=lexer.token,tokenKind=currentToken.kind,isNonPunctuator=!(0,_lexer.isPunctuatorToken)(currentToken);wasLastAddedTokenNonPunctuator&&(!isNonPunctuator&&currentToken.kind!==_lexer.TokenKind.SPREAD||(strippedBody+=" "));var tokenBody=body.slice(currentToken.start,currentToken.end);tokenKind===_lexer.TokenKind.BLOCK_STRING?strippedBody+=dedentBlockString(tokenBody):strippedBody+=tokenBody,wasLastAddedTokenNonPunctuator=isNonPunctuator}return strippedBody};var obj,_inspect=(obj=require("../jsutils/inspect"))&&obj.__esModule?obj:{default:obj},_source=require("../language/source"),_lexer=require("../language/lexer"),_blockString=require("../language/blockString");function dedentBlockString(blockStr){var rawStr=blockStr.slice(3,-3),body=(0,_blockString.dedentBlockStringValue)(rawStr),lines=body.split(/\r\n|[\n\r]/g);0<(0,_blockString.getBlockStringIndentation)(lines)&&(body="\n"+body);var lastChar=body[body.length-1];return!('"'===lastChar&&'\\"""'!==body.slice(-4))&&"\\"!==lastChar||(body+="\n"),'"""'+body+'"""'}},{"../jsutils/inspect":31,"../language/blockString":47,"../language/lexer":51,"../language/source":56}],95:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.isEqualType=function isEqualType(typeA,typeB){if(typeA===typeB)return!0;if((0,_definition.isNonNullType)(typeA)&&(0,_definition.isNonNullType)(typeB))return isEqualType(typeA.ofType,typeB.ofType);if((0,_definition.isListType)(typeA)&&(0,_definition.isListType)(typeB))return isEqualType(typeA.ofType,typeB.ofType);return!1},exports.isTypeSubTypeOf=function isTypeSubTypeOf(schema,maybeSubType,superType){if(maybeSubType===superType)return!0;if((0,_definition.isNonNullType)(superType))return!!(0,_definition.isNonNullType)(maybeSubType)&&isTypeSubTypeOf(schema,maybeSubType.ofType,superType.ofType);if((0,_definition.isNonNullType)(maybeSubType))return isTypeSubTypeOf(schema,maybeSubType.ofType,superType);if((0,_definition.isListType)(superType))return!!(0,_definition.isListType)(maybeSubType)&&isTypeSubTypeOf(schema,maybeSubType.ofType,superType.ofType);if((0,_definition.isListType)(maybeSubType))return!1;if((0,_definition.isAbstractType)(superType)&&(0,_definition.isObjectType)(maybeSubType)&&schema.isPossibleType(superType,maybeSubType))return!0;return!1},exports.doTypesOverlap=function(schema,typeA,typeB){if(typeA===typeB)return!0;if((0,_definition.isAbstractType)(typeA))return(0,_definition.isAbstractType)(typeB)?schema.getPossibleTypes(typeA).some(function(type){return schema.isPossibleType(typeB,type)}):schema.isPossibleType(typeA,typeB);if((0,_definition.isAbstractType)(typeB))return schema.isPossibleType(typeB,typeA);return!1};var _definition=require("../type/definition")},{"../type/definition":67}],96:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.typeFromAST=function typeFromAST(schema,typeNode){var innerType;if(typeNode.kind===_kinds.Kind.LIST_TYPE)return(innerType=typeFromAST(schema,typeNode.type))&&(0,_definition.GraphQLList)(innerType);if(typeNode.kind===_kinds.Kind.NON_NULL_TYPE)return(innerType=typeFromAST(schema,typeNode.type))&&(0,_definition.GraphQLNonNull)(innerType);if(typeNode.kind===_kinds.Kind.NAMED_TYPE)return schema.getType(typeNode.name.value);throw new Error('Unexpected type node: "'.concat((0,_inspect.default)(typeNode),'".'))};var obj,_inspect=(obj=require("../jsutils/inspect"))&&obj.__esModule?obj:{default:obj},_kinds=require("../language/kinds"),_definition=require("../type/definition")},{"../jsutils/inspect":31,"../language/kinds":50,"../type/definition":67}],97:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.valueFromAST=function valueFromAST(valueNode,type,variables){if(!valueNode)return;if((0,_definition.isNonNullType)(type)){if(valueNode.kind===_kinds.Kind.NULL)return;return valueFromAST(valueNode,type.ofType,variables)}if(valueNode.kind===_kinds.Kind.NULL)return null;if(valueNode.kind===_kinds.Kind.VARIABLE){var variableName=valueNode.name.value;if(!variables||(0,_isInvalid.default)(variables[variableName]))return;var variableValue=variables[variableName];if(null===variableValue&&(0,_definition.isNonNullType)(type))return;return variableValue}if((0,_definition.isListType)(type)){var itemType=type.ofType;if(valueNode.kind===_kinds.Kind.LIST){for(var coercedValues=[],itemNodes=valueNode.values,i=0;i<itemNodes.length;i++)if(isMissingVariable(itemNodes[i],variables)){if((0,_definition.isNonNullType)(itemType))return;coercedValues.push(null)}else{var itemValue=valueFromAST(itemNodes[i],itemType,variables);if((0,_isInvalid.default)(itemValue))return;coercedValues.push(itemValue)}return coercedValues}var coercedValue=valueFromAST(valueNode,itemType,variables);if((0,_isInvalid.default)(coercedValue))return;return[coercedValue]}if((0,_definition.isInputObjectType)(type)){if(valueNode.kind!==_kinds.Kind.OBJECT)return;for(var coercedObj=Object.create(null),fieldNodes=(0,_keyMap.default)(valueNode.fields,function(field){return field.name.value}),fields=(0,_objectValues.default)(type.getFields()),_i=0;_i<fields.length;_i++){var field=fields[_i],fieldNode=fieldNodes[field.name];if(fieldNode&&!isMissingVariable(fieldNode.value,variables)){var fieldValue=valueFromAST(fieldNode.value,field.type,variables);if((0,_isInvalid.default)(fieldValue))return;coercedObj[field.name]=fieldValue}else if(void 0!==field.defaultValue)coercedObj[field.name]=field.defaultValue;else if((0,_definition.isNonNullType)(field.type))return}return coercedObj}if((0,_definition.isEnumType)(type)){if(valueNode.kind!==_kinds.Kind.ENUM)return;var enumValue=type.getValue(valueNode.value);if(!enumValue)return;return enumValue.value}if((0,_definition.isScalarType)(type)){var result;try{result=type.parseLiteral(valueNode,variables)}catch(_error){return}if((0,_isInvalid.default)(result))return;return result}throw new Error('Unexpected input type: "'.concat((0,_inspect.default)(type),'".'))};var _objectValues=_interopRequireDefault(require("../polyfills/objectValues")),_inspect=_interopRequireDefault(require("../jsutils/inspect")),_keyMap=_interopRequireDefault(require("../jsutils/keyMap")),_isInvalid=_interopRequireDefault(require("../jsutils/isInvalid")),_kinds=require("../language/kinds"),_definition=require("../type/definition");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function isMissingVariable(valueNode,variables){return valueNode.kind===_kinds.Kind.VARIABLE&&(!variables||(0,_isInvalid.default)(variables[valueNode.name.value]))}},{"../jsutils/inspect":31,"../jsutils/isInvalid":34,"../jsutils/keyMap":37,"../language/kinds":50,"../polyfills/objectValues":63,"../type/definition":67}],98:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.valueFromASTUntyped=function valueFromASTUntyped(valueNode,variables){switch(valueNode.kind){case _kinds.Kind.NULL:return null;case _kinds.Kind.INT:return parseInt(valueNode.value,10);case _kinds.Kind.FLOAT:return parseFloat(valueNode.value);case _kinds.Kind.STRING:case _kinds.Kind.ENUM:case _kinds.Kind.BOOLEAN:return valueNode.value;case _kinds.Kind.LIST:return valueNode.values.map(function(node){return valueFromASTUntyped(node,variables)});case _kinds.Kind.OBJECT:return(0,_keyValMap.default)(valueNode.fields,function(field){return field.name.value},function(field){return valueFromASTUntyped(field.value,variables)});case _kinds.Kind.VARIABLE:var variableName=valueNode.name.value;return variables&&!(0,_isInvalid.default)(variables[variableName])?variables[variableName]:void 0}throw new Error('Unexpected value node: "'.concat((0,_inspect.default)(valueNode),'".'))};var _inspect=_interopRequireDefault(require("../jsutils/inspect")),_keyValMap=_interopRequireDefault(require("../jsutils/keyValMap")),_isInvalid=_interopRequireDefault(require("../jsutils/isInvalid")),_kinds=require("../language/kinds");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},{"../jsutils/inspect":31,"../jsutils/isInvalid":34,"../jsutils/keyValMap":38,"../language/kinds":50}],99:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ValidationContext=exports.SDLValidationContext=exports.ASTValidationContext=void 0;var _visitor=require("../language/visitor"),_kinds=require("../language/kinds"),_TypeInfo=require("../utilities/TypeInfo");function _inheritsLoose(subClass,superClass){subClass.prototype=Object.create(superClass.prototype),(subClass.prototype.constructor=subClass).__proto__=superClass}var ASTValidationContext=function(){function ASTValidationContext(ast){this._ast=ast,this._errors=[],this._fragments=void 0,this._fragmentSpreads=new Map,this._recursivelyReferencedFragments=new Map}var _proto=ASTValidationContext.prototype;return _proto.reportError=function(error){this._errors.push(error)},_proto.getErrors=function(){return this._errors},_proto.getDocument=function(){return this._ast},_proto.getFragment=function(name){var fragments=this._fragments;return fragments||(this._fragments=fragments=this.getDocument().definitions.reduce(function(frags,statement){return statement.kind===_kinds.Kind.FRAGMENT_DEFINITION&&(frags[statement.name.value]=statement),frags},Object.create(null))),fragments[name]},_proto.getFragmentSpreads=function(node){var spreads=this._fragmentSpreads.get(node);if(!spreads){spreads=[];for(var setsToVisit=[node];0!==setsToVisit.length;)for(var set=setsToVisit.pop(),i=0;i<set.selections.length;i++){var selection=set.selections[i];selection.kind===_kinds.Kind.FRAGMENT_SPREAD?spreads.push(selection):selection.selectionSet&&setsToVisit.push(selection.selectionSet)}this._fragmentSpreads.set(node,spreads)}return spreads},_proto.getRecursivelyReferencedFragments=function(operation){var fragments=this._recursivelyReferencedFragments.get(operation);if(!fragments){fragments=[];for(var collectedNames=Object.create(null),nodesToVisit=[operation.selectionSet];0!==nodesToVisit.length;)for(var node=nodesToVisit.pop(),spreads=this.getFragmentSpreads(node),i=0;i<spreads.length;i++){var fragName=spreads[i].name.value;if(!0!==collectedNames[fragName]){collectedNames[fragName]=!0;var fragment=this.getFragment(fragName);fragment&&(fragments.push(fragment),nodesToVisit.push(fragment.selectionSet))}}this._recursivelyReferencedFragments.set(operation,fragments)}return fragments},ASTValidationContext}(),SDLValidationContext=function(_ASTValidationContext){function SDLValidationContext(ast,schema){var _this;return(_this=_ASTValidationContext.call(this,ast)||this)._schema=schema,_this}return _inheritsLoose(SDLValidationContext,_ASTValidationContext),SDLValidationContext.prototype.getSchema=function(){return this._schema},SDLValidationContext}(exports.ASTValidationContext=ASTValidationContext);exports.SDLValidationContext=SDLValidationContext;var ValidationContext=function(_ASTValidationContext2){function ValidationContext(schema,ast,typeInfo){var _this2;return(_this2=_ASTValidationContext2.call(this,ast)||this)._schema=schema,_this2._typeInfo=typeInfo,_this2._variableUsages=new Map,_this2._recursiveVariableUsages=new Map,_this2}_inheritsLoose(ValidationContext,_ASTValidationContext2);var _proto3=ValidationContext.prototype;return _proto3.getSchema=function(){return this._schema},_proto3.getVariableUsages=function(node){var usages=this._variableUsages.get(node);if(!usages){var newUsages=[],typeInfo=new _TypeInfo.TypeInfo(this._schema);(0,_visitor.visit)(node,(0,_visitor.visitWithTypeInfo)(typeInfo,{VariableDefinition:function(){return!1},Variable:function(variable){newUsages.push({node:variable,type:typeInfo.getInputType(),defaultValue:typeInfo.getDefaultValue()})}})),usages=newUsages,this._variableUsages.set(node,usages)}return usages},_proto3.getRecursiveVariableUsages=function(operation){var usages=this._recursiveVariableUsages.get(operation);if(!usages){usages=this.getVariableUsages(operation);for(var fragments=this.getRecursivelyReferencedFragments(operation),i=0;i<fragments.length;i++)Array.prototype.push.apply(usages,this.getVariableUsages(fragments[i]));this._recursiveVariableUsages.set(operation,usages)}return usages},_proto3.getType=function(){return this._typeInfo.getType()},_proto3.getParentType=function(){return this._typeInfo.getParentType()},_proto3.getInputType=function(){return this._typeInfo.getInputType()},_proto3.getParentInputType=function(){return this._typeInfo.getParentInputType()},_proto3.getFieldDef=function(){return this._typeInfo.getFieldDef()},_proto3.getDirective=function(){return this._typeInfo.getDirective()},_proto3.getArgument=function(){return this._typeInfo.getArgument()},ValidationContext}(ASTValidationContext);exports.ValidationContext=ValidationContext},{"../language/kinds":50,"../language/visitor":57,"../utilities/TypeInfo":74}],100:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"validate",{enumerable:!0,get:function(){return _validate.validate}}),Object.defineProperty(exports,"ValidationContext",{enumerable:!0,get:function(){return _ValidationContext.ValidationContext}}),Object.defineProperty(exports,"specifiedRules",{enumerable:!0,get:function(){return _specifiedRules.specifiedRules}}),Object.defineProperty(exports,"FieldsOnCorrectTypeRule",{enumerable:!0,get:function(){return _FieldsOnCorrectType.FieldsOnCorrectType}}),Object.defineProperty(exports,"FragmentsOnCompositeTypesRule",{enumerable:!0,get:function(){return _FragmentsOnCompositeTypes.FragmentsOnCompositeTypes}}),Object.defineProperty(exports,"KnownArgumentNamesRule",{enumerable:!0,get:function(){return _KnownArgumentNames.KnownArgumentNames}}),Object.defineProperty(exports,"KnownDirectivesRule",{enumerable:!0,get:function(){return _KnownDirectives.KnownDirectives}}),Object.defineProperty(exports,"KnownFragmentNamesRule",{enumerable:!0,get:function(){return _KnownFragmentNames.KnownFragmentNames}}),Object.defineProperty(exports,"KnownTypeNamesRule",{enumerable:!0,get:function(){return _KnownTypeNames.KnownTypeNames}}),Object.defineProperty(exports,"LoneAnonymousOperationRule",{enumerable:!0,get:function(){return _LoneAnonymousOperation.LoneAnonymousOperation}}),Object.defineProperty(exports,"NoFragmentCyclesRule",{enumerable:!0,get:function(){return _NoFragmentCycles.NoFragmentCycles}}),Object.defineProperty(exports,"NoUndefinedVariablesRule",{enumerable:!0,get:function(){return _NoUndefinedVariables.NoUndefinedVariables}}),Object.defineProperty(exports,"NoUnusedFragmentsRule",{enumerable:!0,get:function(){return _NoUnusedFragments.NoUnusedFragments}}),Object.defineProperty(exports,"NoUnusedVariablesRule",{enumerable:!0,get:function(){return _NoUnusedVariables.NoUnusedVariables}}),Object.defineProperty(exports,"OverlappingFieldsCanBeMergedRule",{enumerable:!0,get:function(){return _OverlappingFieldsCanBeMerged.OverlappingFieldsCanBeMerged}}),Object.defineProperty(exports,"PossibleFragmentSpreadsRule",{enumerable:!0,get:function(){return _PossibleFragmentSpreads.PossibleFragmentSpreads}}),Object.defineProperty(exports,"ProvidedRequiredArgumentsRule",{enumerable:!0,get:function(){return _ProvidedRequiredArguments.ProvidedRequiredArguments}}),Object.defineProperty(exports,"ScalarLeafsRule",{enumerable:!0,get:function(){return _ScalarLeafs.ScalarLeafs}}),Object.defineProperty(exports,"SingleFieldSubscriptionsRule",{enumerable:!0,get:function(){return _SingleFieldSubscriptions.SingleFieldSubscriptions}}),Object.defineProperty(exports,"UniqueArgumentNamesRule",{enumerable:!0,get:function(){return _UniqueArgumentNames.UniqueArgumentNames}}),Object.defineProperty(exports,"UniqueDirectivesPerLocationRule",{enumerable:!0,get:function(){return _UniqueDirectivesPerLocation.UniqueDirectivesPerLocation}}),Object.defineProperty(exports,"UniqueFragmentNamesRule",{enumerable:!0,get:function(){return _UniqueFragmentNames.UniqueFragmentNames}}),Object.defineProperty(exports,"UniqueInputFieldNamesRule",{enumerable:!0,get:function(){return _UniqueInputFieldNames.UniqueInputFieldNames}}),Object.defineProperty(exports,"UniqueOperationNamesRule",{enumerable:!0,get:function(){return _UniqueOperationNames.UniqueOperationNames}}),Object.defineProperty(exports,"UniqueVariableNamesRule",{enumerable:!0,get:function(){return _UniqueVariableNames.UniqueVariableNames}}),Object.defineProperty(exports,"ValuesOfCorrectTypeRule",{enumerable:!0,get:function(){return _ValuesOfCorrectType.ValuesOfCorrectType}}),Object.defineProperty(exports,"VariablesAreInputTypesRule",{enumerable:!0,get:function(){return _VariablesAreInputTypes.VariablesAreInputTypes}}),Object.defineProperty(exports,"VariablesInAllowedPositionRule",{enumerable:!0,get:function(){return _VariablesInAllowedPosition.VariablesInAllowedPosition}});var _validate=require("./validate"),_ValidationContext=require("./ValidationContext"),_specifiedRules=require("./specifiedRules"),_FieldsOnCorrectType=require("./rules/FieldsOnCorrectType"),_FragmentsOnCompositeTypes=require("./rules/FragmentsOnCompositeTypes"),_KnownArgumentNames=require("./rules/KnownArgumentNames"),_KnownDirectives=require("./rules/KnownDirectives"),_KnownFragmentNames=require("./rules/KnownFragmentNames"),_KnownTypeNames=require("./rules/KnownTypeNames"),_LoneAnonymousOperation=require("./rules/LoneAnonymousOperation"),_NoFragmentCycles=require("./rules/NoFragmentCycles"),_NoUndefinedVariables=require("./rules/NoUndefinedVariables"),_NoUnusedFragments=require("./rules/NoUnusedFragments"),_NoUnusedVariables=require("./rules/NoUnusedVariables"),_OverlappingFieldsCanBeMerged=require("./rules/OverlappingFieldsCanBeMerged"),_PossibleFragmentSpreads=require("./rules/PossibleFragmentSpreads"),_ProvidedRequiredArguments=require("./rules/ProvidedRequiredArguments"),_ScalarLeafs=require("./rules/ScalarLeafs"),_SingleFieldSubscriptions=require("./rules/SingleFieldSubscriptions"),_UniqueArgumentNames=require("./rules/UniqueArgumentNames"),_UniqueDirectivesPerLocation=require("./rules/UniqueDirectivesPerLocation"),_UniqueFragmentNames=require("./rules/UniqueFragmentNames"),_UniqueInputFieldNames=require("./rules/UniqueInputFieldNames"),_UniqueOperationNames=require("./rules/UniqueOperationNames"),_UniqueVariableNames=require("./rules/UniqueVariableNames"),_ValuesOfCorrectType=require("./rules/ValuesOfCorrectType"),_VariablesAreInputTypes=require("./rules/VariablesAreInputTypes"),_VariablesInAllowedPosition=require("./rules/VariablesInAllowedPosition")},{"./ValidationContext":99,"./rules/FieldsOnCorrectType":102,"./rules/FragmentsOnCompositeTypes":103,"./rules/KnownArgumentNames":104,"./rules/KnownDirectives":105,"./rules/KnownFragmentNames":106,"./rules/KnownTypeNames":107,"./rules/LoneAnonymousOperation":108,"./rules/NoFragmentCycles":110,"./rules/NoUndefinedVariables":111,"./rules/NoUnusedFragments":112,"./rules/NoUnusedVariables":113,"./rules/OverlappingFieldsCanBeMerged":114,"./rules/PossibleFragmentSpreads":115,"./rules/ProvidedRequiredArguments":117,"./rules/ScalarLeafs":118,"./rules/SingleFieldSubscriptions":119,"./rules/UniqueArgumentNames":120,"./rules/UniqueDirectivesPerLocation":122,"./rules/UniqueFragmentNames":125,"./rules/UniqueInputFieldNames":126,"./rules/UniqueOperationNames":127,"./rules/UniqueVariableNames":130,"./rules/ValuesOfCorrectType":131,"./rules/VariablesAreInputTypes":132,"./rules/VariablesInAllowedPosition":133,"./specifiedRules":134,"./validate":135}],101:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.nonExecutableDefinitionMessage=nonExecutableDefinitionMessage,exports.ExecutableDefinitions=function(context){return{Document:function(node){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=node.definitions[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var definition=_step.value;(0,_predicates.isExecutableDefinitionNode)(definition)||context.reportError(new _GraphQLError.GraphQLError(nonExecutableDefinitionMessage(definition.kind===_kinds.Kind.SCHEMA_DEFINITION||definition.kind===_kinds.Kind.SCHEMA_EXTENSION?"schema":definition.name.value),definition))}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}return!1}}};var _GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds"),_predicates=require("../../language/predicates");function nonExecutableDefinitionMessage(defName){return"The ".concat(defName," definition is not executable.")}},{"../../error/GraphQLError":18,"../../language/kinds":50,"../../language/predicates":54}],102:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.undefinedFieldMessage=undefinedFieldMessage,exports.FieldsOnCorrectType=function(context){return{Field:function(node){var type=context.getParentType();if(type){var fieldDef=context.getFieldDef();if(!fieldDef){var schema=context.getSchema(),fieldName=node.name.value,suggestedTypeNames=function(schema,type,fieldName){if((0,_definition.isAbstractType)(type)){var suggestedObjectTypes=[],interfaceUsageCount=Object.create(null),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=schema.getPossibleTypes(type)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var possibleType=_step.value;if(possibleType.getFields()[fieldName]){suggestedObjectTypes.push(possibleType.name);var _iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=possibleType.getInterfaces()[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var possibleInterface=_step2.value;possibleInterface.getFields()[fieldName]&&(interfaceUsageCount[possibleInterface.name]=(interfaceUsageCount[possibleInterface.name]||0)+1)}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var suggestedInterfaceTypes=Object.keys(interfaceUsageCount).sort(function(a,b){return interfaceUsageCount[b]-interfaceUsageCount[a]});return suggestedInterfaceTypes.concat(suggestedObjectTypes)}return[]}(schema,type,fieldName),suggestedFieldNames=0!==suggestedTypeNames.length?[]:function(schema,type,fieldName){if((0,_definition.isObjectType)(type)||(0,_definition.isInterfaceType)(type)){var possibleFieldNames=Object.keys(type.getFields());return(0,_suggestionList.default)(fieldName,possibleFieldNames)}return[]}(0,type,fieldName);context.reportError(new _GraphQLError.GraphQLError(undefinedFieldMessage(fieldName,type.name,suggestedTypeNames,suggestedFieldNames),node))}}}}};var _GraphQLError=require("../../error/GraphQLError"),_suggestionList=_interopRequireDefault(require("../../jsutils/suggestionList")),_quotedOrList=_interopRequireDefault(require("../../jsutils/quotedOrList")),_definition=require("../../type/definition");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function undefinedFieldMessage(fieldName,type,suggestedTypeNames,suggestedFieldNames){var message='Cannot query field "'.concat(fieldName,'" on type "').concat(type,'".');if(0!==suggestedTypeNames.length){var suggestions=(0,_quotedOrList.default)(suggestedTypeNames);message+=" Did you mean to use an inline fragment on ".concat(suggestions,"?")}else 0!==suggestedFieldNames.length&&(message+=" Did you mean ".concat((0,_quotedOrList.default)(suggestedFieldNames),"?"));return message}},{"../../error/GraphQLError":18,"../../jsutils/quotedOrList":45,"../../jsutils/suggestionList":46,"../../type/definition":67}],103:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.inlineFragmentOnNonCompositeErrorMessage=inlineFragmentOnNonCompositeErrorMessage,exports.fragmentOnNonCompositeErrorMessage=fragmentOnNonCompositeErrorMessage,exports.FragmentsOnCompositeTypes=function(context){return{InlineFragment:function(node){var typeCondition=node.typeCondition;if(typeCondition){var type=(0,_typeFromAST.typeFromAST)(context.getSchema(),typeCondition);type&&!(0,_definition.isCompositeType)(type)&&context.reportError(new _GraphQLError.GraphQLError(inlineFragmentOnNonCompositeErrorMessage((0,_printer.print)(typeCondition)),typeCondition))}},FragmentDefinition:function(node){var type=(0,_typeFromAST.typeFromAST)(context.getSchema(),node.typeCondition);type&&!(0,_definition.isCompositeType)(type)&&context.reportError(new _GraphQLError.GraphQLError(fragmentOnNonCompositeErrorMessage(node.name.value,(0,_printer.print)(node.typeCondition)),node.typeCondition))}}};var _GraphQLError=require("../../error/GraphQLError"),_printer=require("../../language/printer"),_definition=require("../../type/definition"),_typeFromAST=require("../../utilities/typeFromAST");function inlineFragmentOnNonCompositeErrorMessage(type){return'Fragment cannot condition on non composite type "'.concat(type,'".')}function fragmentOnNonCompositeErrorMessage(fragName,type){return'Fragment "'.concat(fragName,'" cannot condition on non composite ')+'type "'.concat(type,'".')}},{"../../error/GraphQLError":18,"../../language/printer":55,"../../type/definition":67,"../../utilities/typeFromAST":96}],104:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unknownArgMessage=unknownArgMessage,exports.unknownDirectiveArgMessage=unknownDirectiveArgMessage,exports.KnownArgumentNames=function(context){return function(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}({},KnownArgumentNamesOnDirectives(context),{Argument:function(argNode){var argDef=context.getArgument(),fieldDef=context.getFieldDef(),parentType=context.getParentType();if(!argDef&&fieldDef&&parentType){var argName=argNode.name.value,knownArgsNames=fieldDef.args.map(function(arg){return arg.name});context.reportError(new _GraphQLError.GraphQLError(unknownArgMessage(argName,fieldDef.name,parentType.name,(0,_suggestionList.default)(argName,knownArgsNames)),argNode))}}})},exports.KnownArgumentNamesOnDirectives=KnownArgumentNamesOnDirectives;var _GraphQLError=require("../../error/GraphQLError"),_suggestionList=_interopRequireDefault(require("../../jsutils/suggestionList")),_quotedOrList=_interopRequireDefault(require("../../jsutils/quotedOrList")),_kinds=require("../../language/kinds"),_directives=require("../../type/directives");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function unknownArgMessage(argName,fieldName,typeName,suggestedArgs){var message='Unknown argument "'.concat(argName,'" on field "').concat(fieldName,'" of ')+'type "'.concat(typeName,'".');return suggestedArgs.length&&(message+=" Did you mean ".concat((0,_quotedOrList.default)(suggestedArgs),"?")),message}function unknownDirectiveArgMessage(argName,directiveName,suggestedArgs){var message='Unknown argument "'.concat(argName,'" on directive "@').concat(directiveName,'".');return suggestedArgs.length&&(message+=" Did you mean ".concat((0,_quotedOrList.default)(suggestedArgs),"?")),message}function KnownArgumentNamesOnDirectives(context){var directiveArgs=Object.create(null),schema=context.getSchema(),definedDirectives=schema?schema.getDirectives():_directives.specifiedDirectives,_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=definedDirectives[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var directive=_step.value;directiveArgs[directive.name]=directive.args.map(function(arg){return arg.name})}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var astDefinitions=context.getDocument().definitions,_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=astDefinitions[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var def=_step2.value;def.kind===_kinds.Kind.DIRECTIVE_DEFINITION&&(directiveArgs[def.name.value]=def.arguments?def.arguments.map(function(arg){return arg.name.value}):[])}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}return{Directive:function(directiveNode){var directiveName=directiveNode.name.value,knownArgs=directiveArgs[directiveName];if(directiveNode.arguments&&knownArgs){var _iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=directiveNode.arguments[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var argNode=_step3.value,argName=argNode.name.value;if(-1===knownArgs.indexOf(argName)){var suggestions=(0,_suggestionList.default)(argName,knownArgs);context.reportError(new _GraphQLError.GraphQLError(unknownDirectiveArgMessage(argName,directiveName,suggestions),argNode))}}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}}return!1}}}},{"../../error/GraphQLError":18,"../../jsutils/quotedOrList":45,"../../jsutils/suggestionList":46,"../../language/kinds":50,"../../type/directives":68}],105:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unknownDirectiveMessage=unknownDirectiveMessage,exports.misplacedDirectiveMessage=misplacedDirectiveMessage,exports.KnownDirectives=function(context){var locationsMap=Object.create(null),schema=context.getSchema(),definedDirectives=schema?schema.getDirectives():_directives.specifiedDirectives,_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=definedDirectives[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var directive=_step.value;locationsMap[directive.name]=directive.locations}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var astDefinitions=context.getDocument().definitions,_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=astDefinitions[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var def=_step2.value;def.kind===_kinds.Kind.DIRECTIVE_DEFINITION&&(locationsMap[def.name.value]=def.locations.map(function(name){return name.value}))}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}return{Directive:function(node,key,parent,path,ancestors){var name=node.name.value,locations=locationsMap[name];if(locations){var candidateLocation=function(ancestors){var appliedTo=ancestors[ancestors.length-1];if(!Array.isArray(appliedTo))switch(appliedTo.kind){case _kinds.Kind.OPERATION_DEFINITION:switch(appliedTo.operation){case"query":return _directiveLocation.DirectiveLocation.QUERY;case"mutation":return _directiveLocation.DirectiveLocation.MUTATION;case"subscription":return _directiveLocation.DirectiveLocation.SUBSCRIPTION}break;case _kinds.Kind.FIELD:return _directiveLocation.DirectiveLocation.FIELD;case _kinds.Kind.FRAGMENT_SPREAD:return _directiveLocation.DirectiveLocation.FRAGMENT_SPREAD;case _kinds.Kind.INLINE_FRAGMENT:return _directiveLocation.DirectiveLocation.INLINE_FRAGMENT;case _kinds.Kind.FRAGMENT_DEFINITION:return _directiveLocation.DirectiveLocation.FRAGMENT_DEFINITION;case _kinds.Kind.VARIABLE_DEFINITION:return _directiveLocation.DirectiveLocation.VARIABLE_DEFINITION;case _kinds.Kind.SCHEMA_DEFINITION:case _kinds.Kind.SCHEMA_EXTENSION:return _directiveLocation.DirectiveLocation.SCHEMA;case _kinds.Kind.SCALAR_TYPE_DEFINITION:case _kinds.Kind.SCALAR_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.SCALAR;case _kinds.Kind.OBJECT_TYPE_DEFINITION:case _kinds.Kind.OBJECT_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.OBJECT;case _kinds.Kind.FIELD_DEFINITION:return _directiveLocation.DirectiveLocation.FIELD_DEFINITION;case _kinds.Kind.INTERFACE_TYPE_DEFINITION:case _kinds.Kind.INTERFACE_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.INTERFACE;case _kinds.Kind.UNION_TYPE_DEFINITION:case _kinds.Kind.UNION_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.UNION;case _kinds.Kind.ENUM_TYPE_DEFINITION:case _kinds.Kind.ENUM_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.ENUM;case _kinds.Kind.ENUM_VALUE_DEFINITION:return _directiveLocation.DirectiveLocation.ENUM_VALUE;case _kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION:case _kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION:return _directiveLocation.DirectiveLocation.INPUT_OBJECT;case _kinds.Kind.INPUT_VALUE_DEFINITION:var parentNode=ancestors[ancestors.length-3];return parentNode.kind===_kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION?_directiveLocation.DirectiveLocation.INPUT_FIELD_DEFINITION:_directiveLocation.DirectiveLocation.ARGUMENT_DEFINITION}}(ancestors);candidateLocation&&-1===locations.indexOf(candidateLocation)&&context.reportError(new _GraphQLError.GraphQLError(misplacedDirectiveMessage(name,candidateLocation),node))}else context.reportError(new _GraphQLError.GraphQLError(unknownDirectiveMessage(name),node))}}};var _GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds"),_directiveLocation=require("../../language/directiveLocation"),_directives=require("../../type/directives");function unknownDirectiveMessage(directiveName){return'Unknown directive "'.concat(directiveName,'".')}function misplacedDirectiveMessage(directiveName,location){return'Directive "'.concat(directiveName,'" may not be used on ').concat(location,".")}},{"../../error/GraphQLError":18,"../../language/directiveLocation":48,"../../language/kinds":50,"../../type/directives":68}],106:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unknownFragmentMessage=unknownFragmentMessage,exports.KnownFragmentNames=function(context){return{FragmentSpread:function(node){var fragmentName=node.name.value,fragment=context.getFragment(fragmentName);fragment||context.reportError(new _GraphQLError.GraphQLError(unknownFragmentMessage(fragmentName),node.name))}}};var _GraphQLError=require("../../error/GraphQLError");function unknownFragmentMessage(fragName){return'Unknown fragment "'.concat(fragName,'".')}},{"../../error/GraphQLError":18}],107:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unknownTypeMessage=unknownTypeMessage,exports.KnownTypeNames=function(context){var schema=context.getSchema(),existingTypesMap=schema?schema.getTypeMap():Object.create(null),definedTypes=Object.create(null),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=context.getDocument().definitions[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var def=_step.value;(0,_predicates.isTypeDefinitionNode)(def)&&(definedTypes[def.name.value]=!0)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}var typeNames=Object.keys(existingTypesMap).concat(Object.keys(definedTypes));return{NamedType:function(node,_1,parent,_2,ancestors){var typeName=node.name.value;if(!existingTypesMap[typeName]&&!definedTypes[typeName]){var definitionNode=ancestors[2]||parent,isSDL=function(value){return Boolean(value&&!Array.isArray(value)&&((0,_predicates.isTypeSystemDefinitionNode)(value)||(0,_predicates.isTypeSystemExtensionNode)(value)))}(definitionNode);if(isSDL&&function(typeName){return-1!==specifiedScalarsNames.indexOf(typeName)}(typeName))return;var suggestedTypes=(0,_suggestionList.default)(typeName,isSDL?specifiedScalarsNames.concat(typeNames):typeNames);context.reportError(new _GraphQLError.GraphQLError(unknownTypeMessage(typeName,suggestedTypes),node))}}}};var _GraphQLError=require("../../error/GraphQLError"),_suggestionList=_interopRequireDefault(require("../../jsutils/suggestionList")),_quotedOrList=_interopRequireDefault(require("../../jsutils/quotedOrList")),_predicates=require("../../language/predicates");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function unknownTypeMessage(typeName,suggestedTypes){var message='Unknown type "'.concat(typeName,'".');return suggestedTypes.length&&(message+=" Did you mean ".concat((0,_quotedOrList.default)(suggestedTypes),"?")),message}var specifiedScalarsNames=require("../../type/scalars").specifiedScalarTypes.map(function(type){return type.name})},{"../../error/GraphQLError":18,"../../jsutils/quotedOrList":45,"../../jsutils/suggestionList":46,"../../language/predicates":54,"../../type/scalars":71}],108:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.anonOperationNotAloneMessage=anonOperationNotAloneMessage,exports.LoneAnonymousOperation=function(context){var operationCount=0;return{Document:function(node){operationCount=node.definitions.filter(function(definition){return definition.kind===_kinds.Kind.OPERATION_DEFINITION}).length},OperationDefinition:function(node){!node.name&&1<operationCount&&context.reportError(new _GraphQLError.GraphQLError("This anonymous operation must be the only defined operation.",node))}}};var _GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds");function anonOperationNotAloneMessage(){return"This anonymous operation must be the only defined operation."}},{"../../error/GraphQLError":18,"../../language/kinds":50}],109:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.schemaDefinitionNotAloneMessage=schemaDefinitionNotAloneMessage,exports.canNotDefineSchemaWithinExtensionMessage=canNotDefineSchemaWithinExtensionMessage,exports.LoneSchemaDefinition=function(context){var oldSchema=context.getSchema(),alreadyDefined=oldSchema&&(oldSchema.astNode||oldSchema.getQueryType()||oldSchema.getMutationType()||oldSchema.getSubscriptionType()),schemaDefinitionsCount=0;return{SchemaDefinition:function(node){alreadyDefined?context.reportError(new _GraphQLError.GraphQLError("Cannot define a new schema within a schema extension.",node)):(0<schemaDefinitionsCount&&context.reportError(new _GraphQLError.GraphQLError("Must provide only one schema definition.",node)),++schemaDefinitionsCount)}}};var _GraphQLError=require("../../error/GraphQLError");function schemaDefinitionNotAloneMessage(){return"Must provide only one schema definition."}function canNotDefineSchemaWithinExtensionMessage(){return"Cannot define a new schema within a schema extension."}},{"../../error/GraphQLError":18}],110:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.cycleErrorMessage=cycleErrorMessage,exports.NoFragmentCycles=function(context){var visitedFrags=Object.create(null),spreadPath=[],spreadPathIndexByName=Object.create(null);return{OperationDefinition:function(){return!1},FragmentDefinition:function(node){return function detectCycleRecursive(fragment){if(visitedFrags[fragment.name.value])return;var fragmentName=fragment.name.value;visitedFrags[fragmentName]=!0;var spreadNodes=context.getFragmentSpreads(fragment.selectionSet);if(0===spreadNodes.length)return;spreadPathIndexByName[fragmentName]=spreadPath.length;for(var i=0;i<spreadNodes.length;i++){var spreadNode=spreadNodes[i],spreadName=spreadNode.name.value,cycleIndex=spreadPathIndexByName[spreadName];if(spreadPath.push(spreadNode),void 0===cycleIndex){var spreadFragment=context.getFragment(spreadName);spreadFragment&&detectCycleRecursive(spreadFragment)}else{var cyclePath=spreadPath.slice(cycleIndex),fragmentNames=cyclePath.slice(0,-1).map(function(s){return s.name.value});context.reportError(new _GraphQLError.GraphQLError(cycleErrorMessage(spreadName,fragmentNames),cyclePath))}spreadPath.pop()}spreadPathIndexByName[fragmentName]=void 0}(node),!1}}};var _GraphQLError=require("../../error/GraphQLError");function cycleErrorMessage(fragName,spreadNames){var via=spreadNames.length?" via "+spreadNames.join(", "):"";return'Cannot spread fragment "'.concat(fragName,'" within itself').concat(via,".")}},{"../../error/GraphQLError":18}],111:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.undefinedVarMessage=undefinedVarMessage,exports.NoUndefinedVariables=function(context){var variableNameDefined=Object.create(null);return{OperationDefinition:{enter:function(){variableNameDefined=Object.create(null)},leave:function(operation){var usages=context.getRecursiveVariableUsages(operation),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=usages[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var _ref2=_step.value,node=_ref2.node,varName=node.name.value;!0!==variableNameDefined[varName]&&context.reportError(new _GraphQLError.GraphQLError(undefinedVarMessage(varName,operation.name&&operation.name.value),[node,operation]))}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}},VariableDefinition:function(node){variableNameDefined[node.variable.name.value]=!0}}};var _GraphQLError=require("../../error/GraphQLError");function undefinedVarMessage(varName,opName){return opName?'Variable "$'.concat(varName,'" is not defined by operation "').concat(opName,'".'):'Variable "$'.concat(varName,'" is not defined.')}},{"../../error/GraphQLError":18}],112:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unusedFragMessage=unusedFragMessage,exports.NoUnusedFragments=function(context){var operationDefs=[],fragmentDefs=[];return{OperationDefinition:function(node){return operationDefs.push(node),!1},FragmentDefinition:function(node){return fragmentDefs.push(node),!1},Document:{leave:function(){for(var fragmentNameUsed=Object.create(null),_i=0,_operationDefs=operationDefs;_i<_operationDefs.length;_i++){var operation=_operationDefs[_i],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=context.getRecursivelyReferencedFragments(operation)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var fragment=_step.value;fragmentNameUsed[fragment.name.value]=!0}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}for(var _i2=0,_fragmentDefs=fragmentDefs;_i2<_fragmentDefs.length;_i2++){var fragmentDef=_fragmentDefs[_i2],fragName=fragmentDef.name.value;!0!==fragmentNameUsed[fragName]&&context.reportError(new _GraphQLError.GraphQLError(unusedFragMessage(fragName),fragmentDef))}}}}};var _GraphQLError=require("../../error/GraphQLError");function unusedFragMessage(fragName){return'Fragment "'.concat(fragName,'" is never used.')}},{"../../error/GraphQLError":18}],113:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.unusedVariableMessage=unusedVariableMessage,exports.NoUnusedVariables=function(context){var variableDefs=[];return{OperationDefinition:{enter:function(){variableDefs=[]},leave:function(operation){var variableNameUsed=Object.create(null),usages=context.getRecursiveVariableUsages(operation),opName=operation.name?operation.name.value:null,_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=usages[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var _ref2=_step.value,node=_ref2.node;variableNameUsed[node.name.value]=!0}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}for(var _i=0,_variableDefs=variableDefs;_i<_variableDefs.length;_i++){var variableDef=_variableDefs[_i],variableName=variableDef.variable.name.value;!0!==variableNameUsed[variableName]&&context.reportError(new _GraphQLError.GraphQLError(unusedVariableMessage(variableName,opName),variableDef))}}},VariableDefinition:function(def){variableDefs.push(def)}}};var _GraphQLError=require("../../error/GraphQLError");function unusedVariableMessage(varName,opName){return opName?'Variable "$'.concat(varName,'" is never used in operation "').concat(opName,'".'):'Variable "$'.concat(varName,'" is never used.')}},{"../../error/GraphQLError":18}],114:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.fieldsConflictMessage=fieldsConflictMessage,exports.OverlappingFieldsCanBeMerged=function(context){var comparedFragmentPairs=new PairSet,cachedFieldsAndFragmentNames=new Map;return{SelectionSet:function(selectionSet){for(var conflicts=function(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,parentType,selectionSet){var conflicts=[],_getFieldsAndFragment=getFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,parentType,selectionSet),fieldMap=_getFieldsAndFragment[0],fragmentNames=_getFieldsAndFragment[1];if(function(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,fieldMap){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(0,_objectEntries.default)(fieldMap)[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var _ref5=_step.value,responseName=_ref5[0],fields=_ref5[1];if(1<fields.length)for(var i=0;i<fields.length;i++)for(var j=i+1;j<fields.length;j++){var conflict=findConflict(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,!1,responseName,fields[i],fields[j]);conflict&&conflicts.push(conflict)}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,fieldMap),0!==fragmentNames.length)for(var comparedFragments=Object.create(null),i=0;i<fragmentNames.length;i++){collectConflictsBetweenFieldsAndFragment(context,conflicts,cachedFieldsAndFragmentNames,comparedFragments,comparedFragmentPairs,!1,fieldMap,fragmentNames[i]);for(var j=i+1;j<fragmentNames.length;j++)collectConflictsBetweenFragments(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,!1,fragmentNames[i],fragmentNames[j])}return conflicts}(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,context.getParentType(),selectionSet),_i=0,_conflicts=conflicts;_i<_conflicts.length;_i++){var _ref3=_conflicts[_i],_ref2$=_ref3[0],responseName=_ref2$[0],reason=_ref2$[1],fields1=_ref3[1],fields2=_ref3[2];context.reportError(new _GraphQLError.GraphQLError(fieldsConflictMessage(responseName,reason),fields1.concat(fields2)))}}}};var _find=_interopRequireDefault(require("../../polyfills/find")),_objectEntries=_interopRequireDefault(require("../../polyfills/objectEntries")),_GraphQLError=require("../../error/GraphQLError"),_inspect=_interopRequireDefault(require("../../jsutils/inspect")),_kinds=require("../../language/kinds"),_printer=require("../../language/printer"),_definition=require("../../type/definition"),_typeFromAST=require("../../utilities/typeFromAST");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function fieldsConflictMessage(responseName,reason){return'Fields "'.concat(responseName,'" conflict because ').concat(function reasonMessage(reason){if(Array.isArray(reason))return reason.map(function(_ref){var responseName=_ref[0],subreason=_ref[1];return'subfields "'.concat(responseName,'" conflict because ').concat(reasonMessage(subreason))}).join(" and ");return reason}(reason),". ")+"Use different aliases on the fields to fetch both if this was intentional."}function collectConflictsBetweenFieldsAndFragment(context,conflicts,cachedFieldsAndFragmentNames,comparedFragments,comparedFragmentPairs,areMutuallyExclusive,fieldMap,fragmentName){if(!comparedFragments[fragmentName]){comparedFragments[fragmentName]=!0;var fragment=context.getFragment(fragmentName);if(fragment){var _getReferencedFieldsA=getReferencedFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,fragment),fieldMap2=_getReferencedFieldsA[0],fragmentNames2=_getReferencedFieldsA[1];if(fieldMap!==fieldMap2){collectConflictsBetween(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fieldMap,fieldMap2);for(var i=0;i<fragmentNames2.length;i++)collectConflictsBetweenFieldsAndFragment(context,conflicts,cachedFieldsAndFragmentNames,comparedFragments,comparedFragmentPairs,areMutuallyExclusive,fieldMap,fragmentNames2[i])}}}}function collectConflictsBetweenFragments(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fragmentName1,fragmentName2){if(fragmentName1!==fragmentName2&&!comparedFragmentPairs.has(fragmentName1,fragmentName2,areMutuallyExclusive)){comparedFragmentPairs.add(fragmentName1,fragmentName2,areMutuallyExclusive);var fragment1=context.getFragment(fragmentName1),fragment2=context.getFragment(fragmentName2);if(fragment1&&fragment2){var _getReferencedFieldsA2=getReferencedFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,fragment1),fieldMap1=_getReferencedFieldsA2[0],fragmentNames1=_getReferencedFieldsA2[1],_getReferencedFieldsA3=getReferencedFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,fragment2),fieldMap2=_getReferencedFieldsA3[0],fragmentNames2=_getReferencedFieldsA3[1];collectConflictsBetween(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fieldMap1,fieldMap2);for(var j=0;j<fragmentNames2.length;j++)collectConflictsBetweenFragments(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fragmentName1,fragmentNames2[j]);for(var i=0;i<fragmentNames1.length;i++)collectConflictsBetweenFragments(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fragmentNames1[i],fragmentName2)}}}function collectConflictsBetween(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,parentFieldsAreMutuallyExclusive,fieldMap1,fieldMap2){for(var _i3=0,_Object$keys=Object.keys(fieldMap1);_i3<_Object$keys.length;_i3++){var responseName=_Object$keys[_i3],fields2=fieldMap2[responseName];if(fields2)for(var fields1=fieldMap1[responseName],i=0;i<fields1.length;i++)for(var j=0;j<fields2.length;j++){var conflict=findConflict(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,parentFieldsAreMutuallyExclusive,responseName,fields1[i],fields2[j]);conflict&&conflicts.push(conflict)}}}function findConflict(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,parentFieldsAreMutuallyExclusive,responseName,field1,field2){var parentType1=field1[0],node1=field1[1],def1=field1[2],parentType2=field2[0],node2=field2[1],def2=field2[2],areMutuallyExclusive=parentFieldsAreMutuallyExclusive||parentType1!==parentType2&&(0,_definition.isObjectType)(parentType1)&&(0,_definition.isObjectType)(parentType2),type1=def1&&def1.type,type2=def2&&def2.type;if(!areMutuallyExclusive){var name1=node1.name.value,name2=node2.name.value;if(name1!==name2)return[[responseName,"".concat(name1," and ").concat(name2," are different fields")],[node1],[node2]];if(!function(arguments1,arguments2){return arguments1.length===arguments2.length&&arguments1.every(function(argument1){var argument2=(0,_find.default)(arguments2,function(argument){return argument.name.value===argument1.name.value});return!!argument2&&function(value1,value2){return!value1&&!value2||(0,_printer.print)(value1)===(0,_printer.print)(value2)}(argument1.value,argument2.value)})}(node1.arguments||[],node2.arguments||[]))return[[responseName,"they have differing arguments"],[node1],[node2]]}if(type1&&type2&&function doTypesConflict(type1,type2){if((0,_definition.isListType)(type1))return!(0,_definition.isListType)(type2)||doTypesConflict(type1.ofType,type2.ofType);if((0,_definition.isListType)(type2))return!0;if((0,_definition.isNonNullType)(type1))return!(0,_definition.isNonNullType)(type2)||doTypesConflict(type1.ofType,type2.ofType);if((0,_definition.isNonNullType)(type2))return!0;if((0,_definition.isLeafType)(type1)||(0,_definition.isLeafType)(type2))return type1!==type2;return!1}(type1,type2))return[[responseName,"they return conflicting types ".concat((0,_inspect.default)(type1)," and ").concat((0,_inspect.default)(type2))],[node1],[node2]];var selectionSet1=node1.selectionSet,selectionSet2=node2.selectionSet;return selectionSet1&&selectionSet2?function(conflicts,responseName,node1,node2){if(0<conflicts.length)return[[responseName,conflicts.map(function(_ref6){var reason=_ref6[0];return reason})],conflicts.reduce(function(allFields,_ref7){var fields1=_ref7[1];return allFields.concat(fields1)},[node1]),conflicts.reduce(function(allFields,_ref8){var fields2=_ref8[2];return allFields.concat(fields2)},[node2])]}(function(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,parentType1,selectionSet1,parentType2,selectionSet2){var conflicts=[],_getFieldsAndFragment2=getFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,parentType1,selectionSet1),fieldMap1=_getFieldsAndFragment2[0],fragmentNames1=_getFieldsAndFragment2[1],_getFieldsAndFragment3=getFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,parentType2,selectionSet2),fieldMap2=_getFieldsAndFragment3[0],fragmentNames2=_getFieldsAndFragment3[1];if(collectConflictsBetween(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fieldMap1,fieldMap2),0!==fragmentNames2.length)for(var comparedFragments=Object.create(null),j=0;j<fragmentNames2.length;j++)collectConflictsBetweenFieldsAndFragment(context,conflicts,cachedFieldsAndFragmentNames,comparedFragments,comparedFragmentPairs,areMutuallyExclusive,fieldMap1,fragmentNames2[j]);if(0!==fragmentNames1.length)for(var _comparedFragments=Object.create(null),i=0;i<fragmentNames1.length;i++)collectConflictsBetweenFieldsAndFragment(context,conflicts,cachedFieldsAndFragmentNames,_comparedFragments,comparedFragmentPairs,areMutuallyExclusive,fieldMap2,fragmentNames1[i]);for(var _i2=0;_i2<fragmentNames1.length;_i2++)for(var _j=0;_j<fragmentNames2.length;_j++)collectConflictsBetweenFragments(context,conflicts,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,fragmentNames1[_i2],fragmentNames2[_j]);return conflicts}(context,cachedFieldsAndFragmentNames,comparedFragmentPairs,areMutuallyExclusive,(0,_definition.getNamedType)(type1),selectionSet1,(0,_definition.getNamedType)(type2),selectionSet2),responseName,node1,node2):void 0}function getFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,parentType,selectionSet){var cached=cachedFieldsAndFragmentNames.get(selectionSet);if(!cached){var nodeAndDefs=Object.create(null),fragmentNames=Object.create(null);!function _collectFieldsAndFragmentNames(context,parentType,selectionSet,nodeAndDefs,fragmentNames){for(var i=0;i<selectionSet.selections.length;i++){var selection=selectionSet.selections[i];switch(selection.kind){case _kinds.Kind.FIELD:var fieldName=selection.name.value,fieldDef=void 0;((0,_definition.isObjectType)(parentType)||(0,_definition.isInterfaceType)(parentType))&&(fieldDef=parentType.getFields()[fieldName]);var responseName=selection.alias?selection.alias.value:fieldName;nodeAndDefs[responseName]||(nodeAndDefs[responseName]=[]),nodeAndDefs[responseName].push([parentType,selection,fieldDef]);break;case _kinds.Kind.FRAGMENT_SPREAD:fragmentNames[selection.name.value]=!0;break;case _kinds.Kind.INLINE_FRAGMENT:var typeCondition=selection.typeCondition,inlineFragmentType=typeCondition?(0,_typeFromAST.typeFromAST)(context.getSchema(),typeCondition):parentType;_collectFieldsAndFragmentNames(context,inlineFragmentType,selection.selectionSet,nodeAndDefs,fragmentNames)}}}(context,parentType,selectionSet,nodeAndDefs,fragmentNames),cached=[nodeAndDefs,Object.keys(fragmentNames)],cachedFieldsAndFragmentNames.set(selectionSet,cached)}return cached}function getReferencedFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,fragment){var cached=cachedFieldsAndFragmentNames.get(fragment.selectionSet);if(cached)return cached;var fragmentType=(0,_typeFromAST.typeFromAST)(context.getSchema(),fragment.typeCondition);return getFieldsAndFragmentNames(context,cachedFieldsAndFragmentNames,fragmentType,fragment.selectionSet)}var PairSet=function(){function PairSet(){this._data=Object.create(null)}var _proto=PairSet.prototype;return _proto.has=function(a,b,areMutuallyExclusive){var first=this._data[a],result=first&&first[b];return void 0!==result&&(!1!==areMutuallyExclusive||!1===result)},_proto.add=function(a,b,areMutuallyExclusive){_pairSetAdd(this._data,a,b,areMutuallyExclusive),_pairSetAdd(this._data,b,a,areMutuallyExclusive)},PairSet}();function _pairSetAdd(data,a,b,areMutuallyExclusive){var map=data[a];map||(map=Object.create(null),data[a]=map),map[b]=areMutuallyExclusive}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../language/kinds":50,"../../language/printer":55,"../../polyfills/find":58,"../../polyfills/objectEntries":62,"../../type/definition":67,"../../utilities/typeFromAST":96}],115:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.typeIncompatibleSpreadMessage=typeIncompatibleSpreadMessage,exports.typeIncompatibleAnonSpreadMessage=typeIncompatibleAnonSpreadMessage,exports.PossibleFragmentSpreads=function(context){return{InlineFragment:function(node){var fragType=context.getType(),parentType=context.getParentType();(0,_definition.isCompositeType)(fragType)&&(0,_definition.isCompositeType)(parentType)&&!(0,_typeComparators.doTypesOverlap)(context.getSchema(),fragType,parentType)&&context.reportError(new _GraphQLError.GraphQLError(typeIncompatibleAnonSpreadMessage((0,_inspect.default)(parentType),(0,_inspect.default)(fragType)),node))},FragmentSpread:function(node){var fragName=node.name.value,fragType=function(context,name){var frag=context.getFragment(name);if(frag){var type=(0,_typeFromAST.typeFromAST)(context.getSchema(),frag.typeCondition);if((0,_definition.isCompositeType)(type))return type}}(context,fragName),parentType=context.getParentType();fragType&&parentType&&!(0,_typeComparators.doTypesOverlap)(context.getSchema(),fragType,parentType)&&context.reportError(new _GraphQLError.GraphQLError(typeIncompatibleSpreadMessage(fragName,(0,_inspect.default)(parentType),(0,_inspect.default)(fragType)),node))}}};var obj,_inspect=(obj=require("../../jsutils/inspect"))&&obj.__esModule?obj:{default:obj},_GraphQLError=require("../../error/GraphQLError"),_typeComparators=require("../../utilities/typeComparators"),_typeFromAST=require("../../utilities/typeFromAST"),_definition=require("../../type/definition");function typeIncompatibleSpreadMessage(fragName,parentType,fragType){return'Fragment "'.concat(fragName,'" cannot be spread here as objects of ')+'type "'.concat(parentType,'" can never be of type "').concat(fragType,'".')}function typeIncompatibleAnonSpreadMessage(parentType,fragType){return"Fragment cannot be spread here as objects of "+'type "'.concat(parentType,'" can never be of type "').concat(fragType,'".')}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../type/definition":67,"../../utilities/typeComparators":95,"../../utilities/typeFromAST":96}],116:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.extendingUnknownTypeMessage=extendingUnknownTypeMessage,exports.extendingDifferentTypeKindMessage=extendingDifferentTypeKindMessage,exports.PossibleTypeExtensions=function(context){var schema=context.getSchema(),definedTypes=Object.create(null),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=context.getDocument().definitions[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var def=_step.value;(0,_predicates.isTypeDefinitionNode)(def)&&(definedTypes[def.name.value]=def)}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}return{ScalarTypeExtension:checkExtension,ObjectTypeExtension:checkExtension,InterfaceTypeExtension:checkExtension,UnionTypeExtension:checkExtension,EnumTypeExtension:checkExtension,InputObjectTypeExtension:checkExtension};function checkExtension(node){var typeName=node.name.value,defNode=definedTypes[typeName],existingType=schema&&schema.getType(typeName);if(defNode){var expectedKind=defKindToExtKind[defNode.kind];expectedKind!==node.kind&&context.reportError(new _GraphQLError.GraphQLError(extendingDifferentTypeKindMessage(typeName,extensionKindToTypeName(expectedKind)),[defNode,node]))}else if(existingType){var _expectedKind=function(type){{if((0,_definition.isScalarType)(type))return _kinds.Kind.SCALAR_TYPE_EXTENSION;if((0,_definition.isObjectType)(type))return _kinds.Kind.OBJECT_TYPE_EXTENSION;if((0,_definition.isInterfaceType)(type))return _kinds.Kind.INTERFACE_TYPE_EXTENSION;if((0,_definition.isUnionType)(type))return _kinds.Kind.UNION_TYPE_EXTENSION;if((0,_definition.isEnumType)(type))return _kinds.Kind.ENUM_TYPE_EXTENSION;if((0,_definition.isInputObjectType)(type))return _kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION}}(existingType);_expectedKind!==node.kind&&context.reportError(new _GraphQLError.GraphQLError(extendingDifferentTypeKindMessage(typeName,extensionKindToTypeName(_expectedKind)),node))}else{var allTypeNames=Object.keys(definedTypes);schema&&(allTypeNames=allTypeNames.concat(Object.keys(schema.getTypeMap())));var suggestedTypes=(0,_suggestionList.default)(typeName,allTypeNames);context.reportError(new _GraphQLError.GraphQLError(extendingUnknownTypeMessage(typeName,suggestedTypes),node.name))}}};var _defKindToExtKind,_quotedOrList=_interopRequireDefault(require("../../jsutils/quotedOrList")),_suggestionList=_interopRequireDefault(require("../../jsutils/suggestionList")),_GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds"),_predicates=require("../../language/predicates"),_definition=require("../../type/definition");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function extendingUnknownTypeMessage(typeName,suggestedTypes){var message='Cannot extend type "'.concat(typeName,'" because it is not defined.');return suggestedTypes.length&&(message+=" Did you mean ".concat((0,_quotedOrList.default)(suggestedTypes),"?")),message}function extendingDifferentTypeKindMessage(typeName,kind){return"Cannot extend non-".concat(kind,' type "').concat(typeName,'".')}var defKindToExtKind=(_defineProperty(_defKindToExtKind={},_kinds.Kind.SCALAR_TYPE_DEFINITION,_kinds.Kind.SCALAR_TYPE_EXTENSION),_defineProperty(_defKindToExtKind,_kinds.Kind.OBJECT_TYPE_DEFINITION,_kinds.Kind.OBJECT_TYPE_EXTENSION),_defineProperty(_defKindToExtKind,_kinds.Kind.INTERFACE_TYPE_DEFINITION,_kinds.Kind.INTERFACE_TYPE_EXTENSION),_defineProperty(_defKindToExtKind,_kinds.Kind.UNION_TYPE_DEFINITION,_kinds.Kind.UNION_TYPE_EXTENSION),_defineProperty(_defKindToExtKind,_kinds.Kind.ENUM_TYPE_DEFINITION,_kinds.Kind.ENUM_TYPE_EXTENSION),_defineProperty(_defKindToExtKind,_kinds.Kind.INPUT_OBJECT_TYPE_DEFINITION,_kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION),_defKindToExtKind);function extensionKindToTypeName(kind){switch(kind){case _kinds.Kind.SCALAR_TYPE_EXTENSION:return"scalar";case _kinds.Kind.OBJECT_TYPE_EXTENSION:return"object";case _kinds.Kind.INTERFACE_TYPE_EXTENSION:return"interface";case _kinds.Kind.UNION_TYPE_EXTENSION:return"union";case _kinds.Kind.ENUM_TYPE_EXTENSION:return"enum";case _kinds.Kind.INPUT_OBJECT_TYPE_EXTENSION:return"input object";default:return"unknown type"}}},{"../../error/GraphQLError":18,"../../jsutils/quotedOrList":45,"../../jsutils/suggestionList":46,"../../language/kinds":50,"../../language/predicates":54,"../../type/definition":67}],117:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.missingFieldArgMessage=missingFieldArgMessage,exports.missingDirectiveArgMessage=missingDirectiveArgMessage,exports.ProvidedRequiredArguments=function(context){return function(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}({},ProvidedRequiredArgumentsOnDirectives(context),{Field:{leave:function(fieldNode){var fieldDef=context.getFieldDef();if(!fieldDef)return!1;var argNodes=fieldNode.arguments||[],argNodeMap=(0,_keyMap.default)(argNodes,function(arg){return arg.name.value}),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=fieldDef.args[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var argDef=_step.value,argNode=argNodeMap[argDef.name];!argNode&&(0,_definition.isRequiredArgument)(argDef)&&context.reportError(new _GraphQLError.GraphQLError(missingFieldArgMessage(fieldDef.name,argDef.name,(0,_inspect.default)(argDef.type)),fieldNode))}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}}})},exports.ProvidedRequiredArgumentsOnDirectives=ProvidedRequiredArgumentsOnDirectives;var _GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds"),_inspect=_interopRequireDefault(require("../../jsutils/inspect")),_keyMap=_interopRequireDefault(require("../../jsutils/keyMap")),_definition=require("../../type/definition"),_printer=require("../../language/printer"),_directives=require("../../type/directives");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function missingFieldArgMessage(fieldName,argName,type){return'Field "'.concat(fieldName,'" argument "').concat(argName,'" of type ')+'"'.concat(type,'" is required, but it was not provided.')}function missingDirectiveArgMessage(directiveName,argName,type){return'Directive "@'.concat(directiveName,'" argument "').concat(argName,'" of type ')+'"'.concat(type,'" is required, but it was not provided.')}function ProvidedRequiredArgumentsOnDirectives(context){var requiredArgsMap=Object.create(null),schema=context.getSchema(),definedDirectives=schema?schema.getDirectives():_directives.specifiedDirectives,_iteratorNormalCompletion2=!0,_didIteratorError2=!1,_iteratorError2=void 0;try{for(var _step2,_iterator2=definedDirectives[Symbol.iterator]();!(_iteratorNormalCompletion2=(_step2=_iterator2.next()).done);_iteratorNormalCompletion2=!0){var directive=_step2.value;requiredArgsMap[directive.name]=(0,_keyMap.default)(directive.args.filter(_definition.isRequiredArgument),function(arg){return arg.name})}}catch(err){_didIteratorError2=!0,_iteratorError2=err}finally{try{_iteratorNormalCompletion2||null==_iterator2.return||_iterator2.return()}finally{if(_didIteratorError2)throw _iteratorError2}}var astDefinitions=context.getDocument().definitions,_iteratorNormalCompletion3=!0,_didIteratorError3=!1,_iteratorError3=void 0;try{for(var _step3,_iterator3=astDefinitions[Symbol.iterator]();!(_iteratorNormalCompletion3=(_step3=_iterator3.next()).done);_iteratorNormalCompletion3=!0){var def=_step3.value;def.kind===_kinds.Kind.DIRECTIVE_DEFINITION&&(requiredArgsMap[def.name.value]=(0,_keyMap.default)(def.arguments?def.arguments.filter(isRequiredArgumentNode):[],function(arg){return arg.name.value}))}}catch(err){_didIteratorError3=!0,_iteratorError3=err}finally{try{_iteratorNormalCompletion3||null==_iterator3.return||_iterator3.return()}finally{if(_didIteratorError3)throw _iteratorError3}}return{Directive:{leave:function(directiveNode){var directiveName=directiveNode.name.value,requiredArgs=requiredArgsMap[directiveName];if(requiredArgs)for(var argNodes=directiveNode.arguments||[],argNodeMap=(0,_keyMap.default)(argNodes,function(arg){return arg.name.value}),_i=0,_Object$keys=Object.keys(requiredArgs);_i<_Object$keys.length;_i++){var argName=_Object$keys[_i];if(!argNodeMap[argName]){var argType=requiredArgs[argName].type;context.reportError(new _GraphQLError.GraphQLError(missingDirectiveArgMessage(directiveName,argName,(0,_definition.isType)(argType)?(0,_inspect.default)(argType):(0,_printer.print)(argType)),directiveNode))}}}}}}function isRequiredArgumentNode(arg){return arg.type.kind===_kinds.Kind.NON_NULL_TYPE&&null==arg.defaultValue}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../jsutils/keyMap":37,"../../language/kinds":50,"../../language/printer":55,"../../type/definition":67,"../../type/directives":68}],118:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.noSubselectionAllowedMessage=noSubselectionAllowedMessage,exports.requiredSubselectionMessage=requiredSubselectionMessage,exports.ScalarLeafs=function(context){return{Field:function(node){var type=context.getType(),selectionSet=node.selectionSet;type&&((0,_definition.isLeafType)((0,_definition.getNamedType)(type))?selectionSet&&context.reportError(new _GraphQLError.GraphQLError(noSubselectionAllowedMessage(node.name.value,(0,_inspect.default)(type)),selectionSet)):selectionSet||context.reportError(new _GraphQLError.GraphQLError(requiredSubselectionMessage(node.name.value,(0,_inspect.default)(type)),node)))}}};var obj,_inspect=(obj=require("../../jsutils/inspect"))&&obj.__esModule?obj:{default:obj},_GraphQLError=require("../../error/GraphQLError"),_definition=require("../../type/definition");function noSubselectionAllowedMessage(fieldName,type){return'Field "'.concat(fieldName,'" must not have a selection since ')+'type "'.concat(type,'" has no subfields.')}function requiredSubselectionMessage(fieldName,type){return'Field "'.concat(fieldName,'" of type "').concat(type,'" must have a ')+'selection of subfields. Did you mean "'.concat(fieldName,' { ... }"?')}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../type/definition":67}],119:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.singleFieldOnlyMessage=singleFieldOnlyMessage,exports.SingleFieldSubscriptions=function(context){return{OperationDefinition:function(node){"subscription"===node.operation&&1!==node.selectionSet.selections.length&&context.reportError(new _GraphQLError.GraphQLError(singleFieldOnlyMessage(node.name&&node.name.value),node.selectionSet.selections.slice(1)))}}};var _GraphQLError=require("../../error/GraphQLError");function singleFieldOnlyMessage(name){return(name?'Subscription "'.concat(name,'" '):"Anonymous Subscription ")+"must select only one top level field."}},{"../../error/GraphQLError":18}],120:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateArgMessage=duplicateArgMessage,exports.UniqueArgumentNames=function(context){var knownArgNames=Object.create(null);return{Field:function(){knownArgNames=Object.create(null)},Directive:function(){knownArgNames=Object.create(null)},Argument:function(node){var argName=node.name.value;return knownArgNames[argName]?context.reportError(new _GraphQLError.GraphQLError(duplicateArgMessage(argName),[knownArgNames[argName],node.name])):knownArgNames[argName]=node.name,!1}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateArgMessage(argName){return'There can be only one argument named "'.concat(argName,'".')}},{"../../error/GraphQLError":18}],121:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateDirectiveNameMessage=duplicateDirectiveNameMessage,exports.existedDirectiveNameMessage=existedDirectiveNameMessage,exports.UniqueDirectiveNames=function(context){var knownDirectiveNames=Object.create(null),schema=context.getSchema();return{DirectiveDefinition:function(node){var directiveName=node.name.value;if(!schema||!schema.getDirective(directiveName))return knownDirectiveNames[directiveName]?context.reportError(new _GraphQLError.GraphQLError(duplicateDirectiveNameMessage(directiveName),[knownDirectiveNames[directiveName],node.name])):knownDirectiveNames[directiveName]=node.name,!1;context.reportError(new _GraphQLError.GraphQLError(existedDirectiveNameMessage(directiveName),node.name))}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateDirectiveNameMessage(directiveName){return'There can be only one directive named "'.concat(directiveName,'".')}function existedDirectiveNameMessage(directiveName){return'Directive "'.concat(directiveName,'" already exists in the schema. ')+"It cannot be redefined."}},{"../../error/GraphQLError":18}],122:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateDirectiveMessage=duplicateDirectiveMessage,exports.UniqueDirectivesPerLocation=function(context){return{enter:function(node){var directives=node.directives;if(directives){var knownDirectives=Object.create(null),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=directives[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var directive=_step.value,directiveName=directive.name.value;knownDirectives[directiveName]?context.reportError(new _GraphQLError.GraphQLError(duplicateDirectiveMessage(directiveName),[knownDirectives[directiveName],directive])):knownDirectives[directiveName]=directive}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateDirectiveMessage(directiveName){return'The directive "'.concat(directiveName,'" can only be used once at ')+"this location."}},{"../../error/GraphQLError":18}],123:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateEnumValueNameMessage=duplicateEnumValueNameMessage,exports.existedEnumValueNameMessage=existedEnumValueNameMessage,exports.UniqueEnumValueNames=function(context){var schema=context.getSchema(),existingTypeMap=schema?schema.getTypeMap():Object.create(null),knownValueNames=Object.create(null);return{EnumTypeDefinition:checkValueUniqueness,EnumTypeExtension:checkValueUniqueness};function checkValueUniqueness(node){var typeName=node.name.value;if(knownValueNames[typeName]||(knownValueNames[typeName]=Object.create(null)),node.values){var valueNames=knownValueNames[typeName],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=node.values[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var valueDef=_step.value,valueName=valueDef.name.value,existingType=existingTypeMap[typeName];(0,_definition.isEnumType)(existingType)&&existingType.getValue(valueName)?context.reportError(new _GraphQLError.GraphQLError(existedEnumValueNameMessage(typeName,valueName),valueDef.name)):valueNames[valueName]?context.reportError(new _GraphQLError.GraphQLError(duplicateEnumValueNameMessage(typeName,valueName),[valueNames[valueName],valueDef.name])):valueNames[valueName]=valueDef.name}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}return!1}};var _GraphQLError=require("../../error/GraphQLError"),_definition=require("../../type/definition");function duplicateEnumValueNameMessage(typeName,valueName){return'Enum value "'.concat(typeName,".").concat(valueName,'" can only be defined once.')}function existedEnumValueNameMessage(typeName,valueName){return'Enum value "'.concat(typeName,".").concat(valueName,'" already exists in the schema. ')+"It cannot also be defined in this type extension."}},{"../../error/GraphQLError":18,"../../type/definition":67}],124:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateFieldDefinitionNameMessage=duplicateFieldDefinitionNameMessage,exports.existedFieldDefinitionNameMessage=existedFieldDefinitionNameMessage,exports.UniqueFieldDefinitionNames=function(context){var schema=context.getSchema(),existingTypeMap=schema?schema.getTypeMap():Object.create(null),knownFieldNames=Object.create(null);return{InputObjectTypeDefinition:checkFieldUniqueness,InputObjectTypeExtension:checkFieldUniqueness,InterfaceTypeDefinition:checkFieldUniqueness,InterfaceTypeExtension:checkFieldUniqueness,ObjectTypeDefinition:checkFieldUniqueness,ObjectTypeExtension:checkFieldUniqueness};function checkFieldUniqueness(node){var typeName=node.name.value;if(knownFieldNames[typeName]||(knownFieldNames[typeName]=Object.create(null)),node.fields){var fieldNames=knownFieldNames[typeName],_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=node.fields[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var fieldDef=_step.value,fieldName=fieldDef.name.value;hasField(existingTypeMap[typeName],fieldName)?context.reportError(new _GraphQLError.GraphQLError(existedFieldDefinitionNameMessage(typeName,fieldName),fieldDef.name)):fieldNames[fieldName]?context.reportError(new _GraphQLError.GraphQLError(duplicateFieldDefinitionNameMessage(typeName,fieldName),[fieldNames[fieldName],fieldDef.name])):fieldNames[fieldName]=fieldDef.name}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}return!1}};var _GraphQLError=require("../../error/GraphQLError"),_definition=require("../../type/definition");function duplicateFieldDefinitionNameMessage(typeName,fieldName){return'Field "'.concat(typeName,".").concat(fieldName,'" can only be defined once.')}function existedFieldDefinitionNameMessage(typeName,fieldName){return'Field "'.concat(typeName,".").concat(fieldName,'" already exists in the schema. ')+"It cannot also be defined in this type extension."}function hasField(type,fieldName){return!!((0,_definition.isObjectType)(type)||(0,_definition.isInterfaceType)(type)||(0,_definition.isInputObjectType)(type))&&type.getFields()[fieldName]}},{"../../error/GraphQLError":18,"../../type/definition":67}],125:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateFragmentNameMessage=duplicateFragmentNameMessage,exports.UniqueFragmentNames=function(context){var knownFragmentNames=Object.create(null);return{OperationDefinition:function(){return!1},FragmentDefinition:function(node){var fragmentName=node.name.value;return knownFragmentNames[fragmentName]?context.reportError(new _GraphQLError.GraphQLError(duplicateFragmentNameMessage(fragmentName),[knownFragmentNames[fragmentName],node.name])):knownFragmentNames[fragmentName]=node.name,!1}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateFragmentNameMessage(fragName){return'There can be only one fragment named "'.concat(fragName,'".')}},{"../../error/GraphQLError":18}],126:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateInputFieldMessage=duplicateInputFieldMessage,exports.UniqueInputFieldNames=function(context){var knownNameStack=[],knownNames=Object.create(null);return{ObjectValue:{enter:function(){knownNameStack.push(knownNames),knownNames=Object.create(null)},leave:function(){knownNames=knownNameStack.pop()}},ObjectField:function(node){var fieldName=node.name.value;knownNames[fieldName]?context.reportError(new _GraphQLError.GraphQLError(duplicateInputFieldMessage(fieldName),[knownNames[fieldName],node.name])):knownNames[fieldName]=node.name}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateInputFieldMessage(fieldName){return'There can be only one input field named "'.concat(fieldName,'".')}},{"../../error/GraphQLError":18}],127:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateOperationNameMessage=duplicateOperationNameMessage,exports.UniqueOperationNames=function(context){var knownOperationNames=Object.create(null);return{OperationDefinition:function(node){var operationName=node.name;return operationName&&(knownOperationNames[operationName.value]?context.reportError(new _GraphQLError.GraphQLError(duplicateOperationNameMessage(operationName.value),[knownOperationNames[operationName.value],operationName])):knownOperationNames[operationName.value]=operationName),!1},FragmentDefinition:function(){return!1}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateOperationNameMessage(operationName){return'There can be only one operation named "'.concat(operationName,'".')}},{"../../error/GraphQLError":18}],128:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateOperationTypeMessage=duplicateOperationTypeMessage,exports.existedOperationTypeMessage=existedOperationTypeMessage,exports.UniqueOperationTypes=function(context){var schema=context.getSchema(),definedOperationTypes=Object.create(null),existingOperationTypes=schema?{query:schema.getQueryType(),mutation:schema.getMutationType(),subscription:schema.getSubscriptionType()}:{};return{SchemaDefinition:checkOperationTypes,SchemaExtension:checkOperationTypes};function checkOperationTypes(node){if(node.operationTypes){var _iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(node.operationTypes||[])[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var operationType=_step.value,operation=operationType.operation,alreadyDefinedOperationType=definedOperationTypes[operation];existingOperationTypes[operation]?context.reportError(new _GraphQLError.GraphQLError(existedOperationTypeMessage(operation),operationType)):alreadyDefinedOperationType?context.reportError(new _GraphQLError.GraphQLError(duplicateOperationTypeMessage(operation),[alreadyDefinedOperationType,operationType])):definedOperationTypes[operation]=operationType}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}return!1}};var _GraphQLError=require("../../error/GraphQLError");function duplicateOperationTypeMessage(operation){return"There can be only one ".concat(operation," type in schema.")}function existedOperationTypeMessage(operation){return"Type for ".concat(operation," already defined in the schema. ")+"It cannot be redefined."}},{"../../error/GraphQLError":18}],129:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateTypeNameMessage=duplicateTypeNameMessage,exports.existedTypeNameMessage=existedTypeNameMessage,exports.UniqueTypeNames=function(context){var knownTypeNames=Object.create(null),schema=context.getSchema();return{ScalarTypeDefinition:checkTypeName,ObjectTypeDefinition:checkTypeName,InterfaceTypeDefinition:checkTypeName,UnionTypeDefinition:checkTypeName,EnumTypeDefinition:checkTypeName,InputObjectTypeDefinition:checkTypeName};function checkTypeName(node){var typeName=node.name.value;if(!schema||!schema.getType(typeName))return knownTypeNames[typeName]?context.reportError(new _GraphQLError.GraphQLError(duplicateTypeNameMessage(typeName),[knownTypeNames[typeName],node.name])):knownTypeNames[typeName]=node.name,!1;context.reportError(new _GraphQLError.GraphQLError(existedTypeNameMessage(typeName),node.name))}};var _GraphQLError=require("../../error/GraphQLError");function duplicateTypeNameMessage(typeName){return'There can be only one type named "'.concat(typeName,'".')}function existedTypeNameMessage(typeName){return'Type "'.concat(typeName,'" already exists in the schema. ')+"It cannot also be defined in this type definition."}},{"../../error/GraphQLError":18}],130:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.duplicateVariableMessage=duplicateVariableMessage,exports.UniqueVariableNames=function(context){var knownVariableNames=Object.create(null);return{OperationDefinition:function(){knownVariableNames=Object.create(null)},VariableDefinition:function(node){var variableName=node.variable.name.value;knownVariableNames[variableName]?context.reportError(new _GraphQLError.GraphQLError(duplicateVariableMessage(variableName),[knownVariableNames[variableName],node.variable.name])):knownVariableNames[variableName]=node.variable.name}}};var _GraphQLError=require("../../error/GraphQLError");function duplicateVariableMessage(variableName){return'There can be only one variable named "'.concat(variableName,'".')}},{"../../error/GraphQLError":18}],131:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.badValueMessage=badValueMessage,exports.requiredFieldMessage=requiredFieldMessage,exports.unknownFieldMessage=unknownFieldMessage,exports.ValuesOfCorrectType=function(context){return{NullValue:function(node){var type=context.getInputType();(0,_definition.isNonNullType)(type)&&context.reportError(new _GraphQLError.GraphQLError(badValueMessage((0,_inspect.default)(type),(0,_printer.print)(node)),node))},ListValue:function(node){var type=(0,_definition.getNullableType)(context.getParentInputType());if(!(0,_definition.isListType)(type))return isValidScalar(context,node),!1},ObjectValue:function(node){var type=(0,_definition.getNamedType)(context.getInputType());if(!(0,_definition.isInputObjectType)(type))return isValidScalar(context,node),!1;var fieldNodeMap=(0,_keyMap.default)(node.fields,function(field){return field.name.value}),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=(0,_objectValues.default)(type.getFields())[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var fieldDef=_step.value,fieldNode=fieldNodeMap[fieldDef.name];if(!fieldNode&&(0,_definition.isRequiredInputField)(fieldDef)){var typeStr=(0,_inspect.default)(fieldDef.type);context.reportError(new _GraphQLError.GraphQLError(requiredFieldMessage(type.name,fieldDef.name,typeStr),node))}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}},ObjectField:function(node){var parentType=(0,_definition.getNamedType)(context.getParentInputType()),fieldType=context.getInputType();if(!fieldType&&(0,_definition.isInputObjectType)(parentType)){var suggestions=(0,_suggestionList.default)(node.name.value,Object.keys(parentType.getFields())),didYouMean=0!==suggestions.length?"Did you mean ".concat((0,_orList.default)(suggestions),"?"):void 0;context.reportError(new _GraphQLError.GraphQLError(unknownFieldMessage(parentType.name,node.name.value,didYouMean),node))}},EnumValue:function(node){var type=(0,_definition.getNamedType)(context.getInputType());(0,_definition.isEnumType)(type)?type.getValue(node.value)||context.reportError(new _GraphQLError.GraphQLError(badValueMessage(type.name,(0,_printer.print)(node),enumTypeSuggestion(type,node)),node)):isValidScalar(context,node)},IntValue:function(node){return isValidScalar(context,node)},FloatValue:function(node){return isValidScalar(context,node)},StringValue:function(node){return isValidScalar(context,node)},BooleanValue:function(node){return isValidScalar(context,node)}}};var _objectValues=_interopRequireDefault(require("../../polyfills/objectValues")),_GraphQLError=require("../../error/GraphQLError"),_printer=require("../../language/printer"),_definition=require("../../type/definition"),_inspect=_interopRequireDefault(require("../../jsutils/inspect")),_isInvalid=_interopRequireDefault(require("../../jsutils/isInvalid")),_keyMap=_interopRequireDefault(require("../../jsutils/keyMap")),_orList=_interopRequireDefault(require("../../jsutils/orList")),_suggestionList=_interopRequireDefault(require("../../jsutils/suggestionList"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function badValueMessage(typeName,valueName,message){return"Expected type ".concat(typeName,", found ").concat(valueName)+(message?"; ".concat(message):".")}function requiredFieldMessage(typeName,fieldName,fieldTypeName){return"Field ".concat(typeName,".").concat(fieldName," of required type ")+"".concat(fieldTypeName," was not provided.")}function unknownFieldMessage(typeName,fieldName,message){return'Field "'.concat(fieldName,'" is not defined by type ').concat(typeName)+(message?"; ".concat(message):".")}function isValidScalar(context,node){var locationType=context.getInputType();if(locationType){var type=(0,_definition.getNamedType)(locationType);if((0,_definition.isScalarType)(type))try{var parseResult=type.parseLiteral(node,void 0);(0,_isInvalid.default)(parseResult)&&context.reportError(new _GraphQLError.GraphQLError(badValueMessage((0,_inspect.default)(locationType),(0,_printer.print)(node)),node))}catch(error){context.reportError(new _GraphQLError.GraphQLError(badValueMessage((0,_inspect.default)(locationType),(0,_printer.print)(node),error.message),node,void 0,void 0,void 0,error))}else context.reportError(new _GraphQLError.GraphQLError(badValueMessage((0,_inspect.default)(locationType),(0,_printer.print)(node),enumTypeSuggestion(type,node)),node))}}function enumTypeSuggestion(type,node){if((0,_definition.isEnumType)(type)){var suggestions=(0,_suggestionList.default)((0,_printer.print)(node),type.getValues().map(function(value){return value.name}));if(0!==suggestions.length)return"Did you mean the enum value ".concat((0,_orList.default)(suggestions),"?")}}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../jsutils/isInvalid":34,"../../jsutils/keyMap":37,"../../jsutils/orList":42,"../../jsutils/suggestionList":46,"../../language/printer":55,"../../polyfills/objectValues":63,"../../type/definition":67}],132:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.nonInputTypeOnVarMessage=nonInputTypeOnVarMessage,exports.VariablesAreInputTypes=function(context){return{VariableDefinition:function(node){var type=(0,_typeFromAST.typeFromAST)(context.getSchema(),node.type);if(type&&!(0,_definition.isInputType)(type)){var variableName=node.variable.name.value;context.reportError(new _GraphQLError.GraphQLError(nonInputTypeOnVarMessage(variableName,(0,_printer.print)(node.type)),node.type))}}}};var _GraphQLError=require("../../error/GraphQLError"),_printer=require("../../language/printer"),_definition=require("../../type/definition"),_typeFromAST=require("../../utilities/typeFromAST");function nonInputTypeOnVarMessage(variableName,typeName){return'Variable "$'.concat(variableName,'" cannot be non-input type "').concat(typeName,'".')}},{"../../error/GraphQLError":18,"../../language/printer":55,"../../type/definition":67,"../../utilities/typeFromAST":96}],133:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.badVarPosMessage=badVarPosMessage,exports.VariablesInAllowedPosition=function(context){var varDefMap=Object.create(null);return{OperationDefinition:{enter:function(){varDefMap=Object.create(null)},leave:function(operation){var usages=context.getRecursiveVariableUsages(operation),_iteratorNormalCompletion=!0,_didIteratorError=!1,_iteratorError=void 0;try{for(var _step,_iterator=usages[Symbol.iterator]();!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=!0){var _ref2=_step.value,node=_ref2.node,type=_ref2.type,defaultValue=_ref2.defaultValue,varName=node.name.value,varDef=varDefMap[varName];if(varDef&&type){var schema=context.getSchema(),varType=(0,_typeFromAST.typeFromAST)(schema,varDef.type);varType&&!allowedVariableUsage(schema,varType,varDef.defaultValue,type,defaultValue)&&context.reportError(new _GraphQLError.GraphQLError(badVarPosMessage(varName,(0,_inspect.default)(varType),(0,_inspect.default)(type)),[varDef,node]))}}}catch(err){_didIteratorError=!0,_iteratorError=err}finally{try{_iteratorNormalCompletion||null==_iterator.return||_iterator.return()}finally{if(_didIteratorError)throw _iteratorError}}}},VariableDefinition:function(node){varDefMap[node.variable.name.value]=node}}};var obj,_inspect=(obj=require("../../jsutils/inspect"))&&obj.__esModule?obj:{default:obj},_GraphQLError=require("../../error/GraphQLError"),_kinds=require("../../language/kinds"),_definition=require("../../type/definition"),_typeComparators=require("../../utilities/typeComparators"),_typeFromAST=require("../../utilities/typeFromAST");function badVarPosMessage(varName,varType,expectedType){return'Variable "$'.concat(varName,'" of type "').concat(varType,'" used in ')+'position expecting type "'.concat(expectedType,'".')}function allowedVariableUsage(schema,varType,varDefaultValue,locationType,locationDefaultValue){if(!(0,_definition.isNonNullType)(locationType)||(0,_definition.isNonNullType)(varType))return(0,_typeComparators.isTypeSubTypeOf)(schema,varType,locationType);if(!(null!=varDefaultValue&&varDefaultValue.kind!==_kinds.Kind.NULL)&&!(void 0!==locationDefaultValue))return!1;var nullableLocationType=locationType.ofType;return(0,_typeComparators.isTypeSubTypeOf)(schema,varType,nullableLocationType)}},{"../../error/GraphQLError":18,"../../jsutils/inspect":31,"../../language/kinds":50,"../../type/definition":67,"../../utilities/typeComparators":95,"../../utilities/typeFromAST":96}],134:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.specifiedSDLRules=exports.specifiedRules=void 0;var _ExecutableDefinitions=require("./rules/ExecutableDefinitions"),_UniqueOperationNames=require("./rules/UniqueOperationNames"),_LoneAnonymousOperation=require("./rules/LoneAnonymousOperation"),_SingleFieldSubscriptions=require("./rules/SingleFieldSubscriptions"),_KnownTypeNames=require("./rules/KnownTypeNames"),_FragmentsOnCompositeTypes=require("./rules/FragmentsOnCompositeTypes"),_VariablesAreInputTypes=require("./rules/VariablesAreInputTypes"),_ScalarLeafs=require("./rules/ScalarLeafs"),_FieldsOnCorrectType=require("./rules/FieldsOnCorrectType"),_UniqueFragmentNames=require("./rules/UniqueFragmentNames"),_KnownFragmentNames=require("./rules/KnownFragmentNames"),_NoUnusedFragments=require("./rules/NoUnusedFragments"),_PossibleFragmentSpreads=require("./rules/PossibleFragmentSpreads"),_NoFragmentCycles=require("./rules/NoFragmentCycles"),_UniqueVariableNames=require("./rules/UniqueVariableNames"),_NoUndefinedVariables=require("./rules/NoUndefinedVariables"),_NoUnusedVariables=require("./rules/NoUnusedVariables"),_KnownDirectives=require("./rules/KnownDirectives"),_UniqueDirectivesPerLocation=require("./rules/UniqueDirectivesPerLocation"),_KnownArgumentNames=require("./rules/KnownArgumentNames"),_UniqueArgumentNames=require("./rules/UniqueArgumentNames"),_ValuesOfCorrectType=require("./rules/ValuesOfCorrectType"),_ProvidedRequiredArguments=require("./rules/ProvidedRequiredArguments"),_VariablesInAllowedPosition=require("./rules/VariablesInAllowedPosition"),_OverlappingFieldsCanBeMerged=require("./rules/OverlappingFieldsCanBeMerged"),_UniqueInputFieldNames=require("./rules/UniqueInputFieldNames"),_LoneSchemaDefinition=require("./rules/LoneSchemaDefinition"),_UniqueOperationTypes=require("./rules/UniqueOperationTypes"),_UniqueTypeNames=require("./rules/UniqueTypeNames"),_UniqueEnumValueNames=require("./rules/UniqueEnumValueNames"),_UniqueFieldDefinitionNames=require("./rules/UniqueFieldDefinitionNames"),_UniqueDirectiveNames=require("./rules/UniqueDirectiveNames"),_PossibleTypeExtensions=require("./rules/PossibleTypeExtensions"),specifiedRules=[_ExecutableDefinitions.ExecutableDefinitions,_UniqueOperationNames.UniqueOperationNames,_LoneAnonymousOperation.LoneAnonymousOperation,_SingleFieldSubscriptions.SingleFieldSubscriptions,_KnownTypeNames.KnownTypeNames,_FragmentsOnCompositeTypes.FragmentsOnCompositeTypes,_VariablesAreInputTypes.VariablesAreInputTypes,_ScalarLeafs.ScalarLeafs,_FieldsOnCorrectType.FieldsOnCorrectType,_UniqueFragmentNames.UniqueFragmentNames,_KnownFragmentNames.KnownFragmentNames,_NoUnusedFragments.NoUnusedFragments,_PossibleFragmentSpreads.PossibleFragmentSpreads,_NoFragmentCycles.NoFragmentCycles,_UniqueVariableNames.UniqueVariableNames,_NoUndefinedVariables.NoUndefinedVariables,_NoUnusedVariables.NoUnusedVariables,_KnownDirectives.KnownDirectives,_UniqueDirectivesPerLocation.UniqueDirectivesPerLocation,_KnownArgumentNames.KnownArgumentNames,_UniqueArgumentNames.UniqueArgumentNames,_ValuesOfCorrectType.ValuesOfCorrectType,_ProvidedRequiredArguments.ProvidedRequiredArguments,_VariablesInAllowedPosition.VariablesInAllowedPosition,_OverlappingFieldsCanBeMerged.OverlappingFieldsCanBeMerged,_UniqueInputFieldNames.UniqueInputFieldNames];exports.specifiedRules=specifiedRules;var specifiedSDLRules=[_LoneSchemaDefinition.LoneSchemaDefinition,_UniqueOperationTypes.UniqueOperationTypes,_UniqueTypeNames.UniqueTypeNames,_UniqueEnumValueNames.UniqueEnumValueNames,_UniqueFieldDefinitionNames.UniqueFieldDefinitionNames,_UniqueDirectiveNames.UniqueDirectiveNames,_KnownTypeNames.KnownTypeNames,_KnownDirectives.KnownDirectives,_UniqueDirectivesPerLocation.UniqueDirectivesPerLocation,_PossibleTypeExtensions.PossibleTypeExtensions,_KnownArgumentNames.KnownArgumentNamesOnDirectives,_UniqueArgumentNames.UniqueArgumentNames,_UniqueInputFieldNames.UniqueInputFieldNames,_ProvidedRequiredArguments.ProvidedRequiredArgumentsOnDirectives];exports.specifiedSDLRules=specifiedSDLRules},{"./rules/ExecutableDefinitions":101,"./rules/FieldsOnCorrectType":102,"./rules/FragmentsOnCompositeTypes":103,"./rules/KnownArgumentNames":104,"./rules/KnownDirectives":105,"./rules/KnownFragmentNames":106,"./rules/KnownTypeNames":107,"./rules/LoneAnonymousOperation":108,"./rules/LoneSchemaDefinition":109,"./rules/NoFragmentCycles":110,"./rules/NoUndefinedVariables":111,"./rules/NoUnusedFragments":112,"./rules/NoUnusedVariables":113,"./rules/OverlappingFieldsCanBeMerged":114,"./rules/PossibleFragmentSpreads":115,"./rules/PossibleTypeExtensions":116,"./rules/ProvidedRequiredArguments":117,"./rules/ScalarLeafs":118,"./rules/SingleFieldSubscriptions":119,"./rules/UniqueArgumentNames":120,"./rules/UniqueDirectiveNames":121,"./rules/UniqueDirectivesPerLocation":122,"./rules/UniqueEnumValueNames":123,"./rules/UniqueFieldDefinitionNames":124,"./rules/UniqueFragmentNames":125,"./rules/UniqueInputFieldNames":126,"./rules/UniqueOperationNames":127,"./rules/UniqueOperationTypes":128,"./rules/UniqueTypeNames":129,"./rules/UniqueVariableNames":130,"./rules/ValuesOfCorrectType":131,"./rules/VariablesAreInputTypes":132,"./rules/VariablesInAllowedPosition":133}],135:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.validate=function(schema,documentAST){var rules=2<arguments.length&&void 0!==arguments[2]?arguments[2]:_specifiedRules.specifiedRules,typeInfo=3<arguments.length&&void 0!==arguments[3]?arguments[3]:new _TypeInfo.TypeInfo(schema);documentAST||(0,_invariant.default)(0,"Must provide document"),(0,_validate.assertValidSchema)(schema);var context=new _ValidationContext.ValidationContext(schema,documentAST,typeInfo),visitor=(0,_visitor.visitInParallel)(rules.map(function(rule){return rule(context)}));return(0,_visitor.visit)(documentAST,(0,_visitor.visitWithTypeInfo)(typeInfo,visitor)),context.getErrors()},exports.validateSDL=validateSDL,exports.assertValidSDL=function(documentAST){var errors=validateSDL(documentAST);if(0!==errors.length)throw new Error(errors.map(function(error){return error.message}).join("\n\n"))},exports.assertValidSDLExtension=function(documentAST,schema){var errors=validateSDL(documentAST,schema);if(0!==errors.length)throw new Error(errors.map(function(error){return error.message}).join("\n\n"))};var obj,_invariant=(obj=require("../jsutils/invariant"))&&obj.__esModule?obj:{default:obj},_visitor=require("../language/visitor"),_validate=require("../type/validate"),_TypeInfo=require("../utilities/TypeInfo"),_specifiedRules=require("./specifiedRules"),_ValidationContext=require("./ValidationContext");function validateSDL(documentAST,schemaToExtend){var rules=2<arguments.length&&void 0!==arguments[2]?arguments[2]:_specifiedRules.specifiedSDLRules,context=new _ValidationContext.SDLValidationContext(documentAST,schemaToExtend),visitors=rules.map(function(rule){return rule(context)});return(0,_visitor.visit)(documentAST,(0,_visitor.visitInParallel)(visitors)),context.getErrors()}},{"../jsutils/invariant":33,"../language/visitor":57,"../type/validate":73,"../utilities/TypeInfo":74,"./ValidationContext":99,"./specifiedRules":134}],136:[function(require,module,exports){"use strict";exports.isIterable=isIterable,exports.isArrayLike=isArrayLike,exports.isCollection=function(obj){return Object(obj)===obj&&(isArrayLike(obj)||isIterable(obj))},exports.getIterator=getIterator,exports.getIteratorMethod=getIteratorMethod,exports.createIterator=createIterator,exports.forEach=function(collection,callback,thisArg){if(null!=collection){if("function"==typeof collection.forEach)return collection.forEach(callback,thisArg);var i=0,iterator=getIterator(collection);if(iterator){for(var step;!(step=iterator.next()).done;)if(callback.call(thisArg,step.value,i++,collection),9999999<i)throw new TypeError("Near-infinite iteration.")}else if(isArrayLike(collection))for(;i<collection.length;i++)collection.hasOwnProperty(i)&&callback.call(thisArg,collection[i],i,collection)}},exports.isAsyncIterable=function(obj){return!!getAsyncIteratorMethod(obj)},exports.getAsyncIterator=getAsyncIterator,exports.getAsyncIteratorMethod=getAsyncIteratorMethod,exports.createAsyncIterator=createAsyncIterator,exports.forAwaitEach=function(source,callback,thisArg){var asyncIterator=createAsyncIterator(source);if(asyncIterator){var i=0;return new Promise(function(resolve,reject){!function next(){asyncIterator.next().then(function(step){return step.done?resolve():Promise.resolve(callback.call(thisArg,step.value,i++,source)).then(next).catch(reject),null}).catch(reject);return null}()})}};var SYMBOL="function"==typeof Symbol?Symbol:void 0,SYMBOL_ITERATOR=SYMBOL&&SYMBOL.iterator,$$iterator=exports.$$iterator=SYMBOL_ITERATOR||"@@iterator";function isIterable(obj){return!!getIteratorMethod(obj)}function isArrayLike(obj){var length=null!=obj&&obj.length;return"number"==typeof length&&0<=length&&length%1==0}function getIterator(iterable){var method=getIteratorMethod(iterable);if(method)return method.call(iterable)}function getIteratorMethod(iterable){if(null!=iterable){var method=SYMBOL_ITERATOR&&iterable[SYMBOL_ITERATOR]||iterable["@@iterator"];if("function"==typeof method)return method}}function createIterator(collection){if(null!=collection){var iterator=getIterator(collection);if(iterator)return iterator;if(isArrayLike(collection))return new ArrayLikeIterator(collection)}}function ArrayLikeIterator(obj){this._o=obj,this._i=0}ArrayLikeIterator.prototype[$$iterator]=function(){return this},ArrayLikeIterator.prototype.next=function(){return void 0===this._o||this._i>=this._o.length?{value:this._o=void 0,done:!0}:{value:this._o[this._i++],done:!1}};var SYMBOL_ASYNC_ITERATOR=SYMBOL&&SYMBOL.asyncIterator,$$asyncIterator=exports.$$asyncIterator=SYMBOL_ASYNC_ITERATOR||"@@asyncIterator";function getAsyncIterator(asyncIterable){var method=getAsyncIteratorMethod(asyncIterable);if(method)return method.call(asyncIterable)}function getAsyncIteratorMethod(asyncIterable){if(null!=asyncIterable){var method=SYMBOL_ASYNC_ITERATOR&&asyncIterable[SYMBOL_ASYNC_ITERATOR]||asyncIterable["@@asyncIterator"];if("function"==typeof method)return method}}function createAsyncIterator(source){if(null!=source){var asyncIterator=getAsyncIterator(source);if(asyncIterator)return asyncIterator;var iterator=createIterator(source);if(iterator)return new AsyncFromSyncIterator(iterator)}}function AsyncFromSyncIterator(iterator){this._i=iterator}AsyncFromSyncIterator.prototype[$$asyncIterator]=function(){return this},AsyncFromSyncIterator.prototype.next=function(){var step=this._i.next();return Promise.resolve(step.value).then(function(value){return{value:value,done:step.done}})}},{}],137:[function(require,module,exports){"use strict";function assign(obj){return Array.prototype.slice.call(arguments,1).forEach(function(source){source&&Object.keys(source).forEach(function(key){obj[key]=source[key]})}),obj}function _class(obj){return Object.prototype.toString.call(obj)}function isFunction(obj){return"[object Function]"===_class(obj)}function escapeRE(str){return str.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}var defaultOptions={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};var defaultSchemas={"http:":{validate:function(text,pos,self){var tail=text.slice(pos);return self.re.http||(self.re.http=new RegExp("^\\/\\/"+self.re.src_auth+self.re.src_host_port_strict+self.re.src_path,"i")),self.re.http.test(tail)?tail.match(self.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(text,pos,self){var tail=text.slice(pos);return self.re.no_http||(self.re.no_http=new RegExp("^"+self.re.src_auth+"(?:localhost|(?:(?:"+self.re.src_domain+")\\.)+"+self.re.src_domain_root+")"+self.re.src_port+self.re.src_host_terminator+self.re.src_path,"i")),self.re.no_http.test(tail)?3<=pos&&":"===text[pos-3]?0:3<=pos&&"/"===text[pos-3]?0:tail.match(self.re.no_http)[0].length:0}},"mailto:":{validate:function(text,pos,self){var tail=text.slice(pos);return self.re.mailto||(self.re.mailto=new RegExp("^"+self.re.src_email_name+"@"+self.re.src_host_strict,"i")),self.re.mailto.test(tail)?tail.match(self.re.mailto)[0].length:0}}},tlds_2ch_src_re="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",tlds_default="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|рф".split("|");function compile(self){var re=self.re=require("./lib/re")(self.__opts__),tlds=self.__tlds__.slice();function untpl(tpl){return tpl.replace("%TLDS%",re.src_tlds)}self.onCompile(),self.__tlds_replaced__||tlds.push(tlds_2ch_src_re),tlds.push(re.src_xn),re.src_tlds=tlds.join("|"),re.email_fuzzy=RegExp(untpl(re.tpl_email_fuzzy),"i"),re.link_fuzzy=RegExp(untpl(re.tpl_link_fuzzy),"i"),re.link_no_ip_fuzzy=RegExp(untpl(re.tpl_link_no_ip_fuzzy),"i"),re.host_fuzzy_test=RegExp(untpl(re.tpl_host_fuzzy_test),"i");var aliases=[];function schemaError(name,val){throw new Error('(LinkifyIt) Invalid schema "'+name+'": '+val)}self.__compiled__={},Object.keys(self.__schemas__).forEach(function(name){var val=self.__schemas__[name];if(null!==val){var compiled={validate:null,link:null};if(self.__compiled__[name]=compiled,function(obj){return"[object Object]"===_class(obj)}(val))return!function(obj){return"[object RegExp]"===_class(obj)}(val.validate)?isFunction(val.validate)?compiled.validate=val.validate:schemaError(name,val):compiled.validate=function(re){return function(text,pos){var tail=text.slice(pos);return re.test(tail)?tail.match(re)[0].length:0}}(val.validate),void(isFunction(val.normalize)?compiled.normalize=val.normalize:val.normalize?schemaError(name,val):compiled.normalize=function(match,self){self.normalize(match)});!function(obj){return"[object String]"===_class(obj)}(val)?schemaError(name,val):aliases.push(name)}}),aliases.forEach(function(alias){self.__compiled__[self.__schemas__[alias]]&&(self.__compiled__[alias].validate=self.__compiled__[self.__schemas__[alias]].validate,self.__compiled__[alias].normalize=self.__compiled__[self.__schemas__[alias]].normalize)}),self.__compiled__[""]={validate:null,normalize:function(match,self){self.normalize(match)}};var slist=Object.keys(self.__compiled__).filter(function(name){return 0<name.length&&self.__compiled__[name]}).map(escapeRE).join("|");self.re.schema_test=RegExp("(^|(?!_)(?:[><]|"+re.src_ZPCc+"))("+slist+")","i"),self.re.schema_search=RegExp("(^|(?!_)(?:[><]|"+re.src_ZPCc+"))("+slist+")","ig"),self.re.pretest=RegExp("("+self.re.schema_test.source+")|("+self.re.host_fuzzy_test.source+")|@","i"),function(self){self.__index__=-1,self.__text_cache__=""}(self)}function Match(self,shift){var start=self.__index__,end=self.__last_index__,text=self.__text_cache__.slice(start,end);this.schema=self.__schema__.toLowerCase(),this.index=start+shift,this.lastIndex=end+shift,this.raw=text,this.text=text,this.url=text}function createMatch(self,shift){var match=new Match(self,shift);return self.__compiled__[match.schema].normalize(match,self),match}function LinkifyIt(schemas,options){if(!(this instanceof LinkifyIt))return new LinkifyIt(schemas,options);options||!function(obj){return Object.keys(obj||{}).reduce(function(acc,k){return acc||defaultOptions.hasOwnProperty(k)},!1)}(schemas)||(options=schemas,schemas={}),this.__opts__=assign({},defaultOptions,options),this.__index__=-1,this.__last_index__=-1,this.__schema__="",this.__text_cache__="",this.__schemas__=assign({},defaultSchemas,schemas),this.__compiled__={},this.__tlds__=tlds_default,this.__tlds_replaced__=!1,this.re={},compile(this)}LinkifyIt.prototype.add=function(schema,definition){return this.__schemas__[schema]=definition,compile(this),this},LinkifyIt.prototype.set=function(options){return this.__opts__=assign(this.__opts__,options),this},LinkifyIt.prototype.test=function(text){if(this.__text_cache__=text,this.__index__=-1,!text.length)return!1;var m,ml,me,len,shift,next,re,tld_pos;if(this.re.schema_test.test(text))for((re=this.re.schema_search).lastIndex=0;null!==(m=re.exec(text));)if(len=this.testSchemaAt(text,m[2],re.lastIndex)){this.__schema__=m[2],this.__index__=m.index+m[1].length,this.__last_index__=m.index+m[0].length+len;break}return this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&0<=(tld_pos=text.search(this.re.host_fuzzy_test))&&(this.__index__<0||tld_pos<this.__index__)&&null!==(ml=text.match(this.__opts__.fuzzyIP?this.re.link_fuzzy:this.re.link_no_ip_fuzzy))&&(shift=ml.index+ml[1].length,(this.__index__<0||shift<this.__index__)&&(this.__schema__="",this.__index__=shift,this.__last_index__=ml.index+ml[0].length)),this.__opts__.fuzzyEmail&&this.__compiled__["mailto:"]&&0<=text.indexOf("@")&&null!==(me=text.match(this.re.email_fuzzy))&&(shift=me.index+me[1].length,next=me.index+me[0].length,(this.__index__<0||shift<this.__index__||shift===this.__index__&&next>this.__last_index__)&&(this.__schema__="mailto:",this.__index__=shift,this.__last_index__=next)),0<=this.__index__},LinkifyIt.prototype.pretest=function(text){return this.re.pretest.test(text)},LinkifyIt.prototype.testSchemaAt=function(text,schema,pos){return this.__compiled__[schema.toLowerCase()]?this.__compiled__[schema.toLowerCase()].validate(text,pos,this):0},LinkifyIt.prototype.match=function(text){var shift=0,result=[];0<=this.__index__&&this.__text_cache__===text&&(result.push(createMatch(this,shift)),shift=this.__last_index__);for(var tail=shift?text.slice(shift):text;this.test(tail);)result.push(createMatch(this,shift)),tail=tail.slice(this.__last_index__),shift+=this.__last_index__;return result.length?result:null},LinkifyIt.prototype.tlds=function(list,keepOld){return list=Array.isArray(list)?list:[list],keepOld?this.__tlds__=this.__tlds__.concat(list).sort().filter(function(el,idx,arr){return el!==arr[idx-1]}).reverse():(this.__tlds__=list.slice(),this.__tlds_replaced__=!0),compile(this),this},LinkifyIt.prototype.normalize=function(match){match.schema||(match.url="http://"+match.url),"mailto:"!==match.schema||/^mailto:/i.test(match.url)||(match.url="mailto:"+match.url)},LinkifyIt.prototype.onCompile=function(){},module.exports=LinkifyIt},{"./lib/re":138}],138:[function(require,module,exports){"use strict";module.exports=function(opts){var re={};re.src_Any=require("uc.micro/properties/Any/regex").source,re.src_Cc=require("uc.micro/categories/Cc/regex").source,re.src_Z=require("uc.micro/categories/Z/regex").source,re.src_P=require("uc.micro/categories/P/regex").source,re.src_ZPCc=[re.src_Z,re.src_P,re.src_Cc].join("|"),re.src_ZCc=[re.src_Z,re.src_Cc].join("|");return re.src_pseudo_letter="(?:(?![><]|"+re.src_ZPCc+")"+re.src_Any+")",re.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",re.src_auth="(?:(?:(?!"+re.src_ZCc+"|[@/\\[\\]()]).)+@)?",re.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",re.src_host_terminator="(?=$|[><]|"+re.src_ZPCc+")(?!-|_|:\\d|\\.-|\\.(?!$|"+re.src_ZPCc+"))",re.src_path="(?:[/?#](?:(?!"+re.src_ZCc+"|[><]|[()[\\]{}.,\"'?!\\-]).|\\[(?:(?!"+re.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+re.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+re.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+re.src_ZCc+'|["]).)+\\"|\\\'(?:(?!'+re.src_ZCc+"|[']).)+\\'|\\'(?="+re.src_pseudo_letter+"|[-]).|\\.{2,3}[a-zA-Z0-9%/]|\\.(?!"+re.src_ZCc+"|[.]).|"+(opts&&opts["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+"\\,(?!"+re.src_ZCc+").|\\!(?!"+re.src_ZCc+"|[!]).|\\?(?!"+re.src_ZCc+"|[?]).)+|\\/)?",re.src_email_name='[\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]+',re.src_xn="xn--[a-z0-9\\-]{1,59}",re.src_domain_root="(?:"+re.src_xn+"|"+re.src_pseudo_letter+"{1,63})",re.src_domain="(?:"+re.src_xn+"|(?:"+re.src_pseudo_letter+")|(?:"+re.src_pseudo_letter+"(?:-(?!-)|"+re.src_pseudo_letter+"){0,61}"+re.src_pseudo_letter+"))",re.src_host="(?:(?:(?:(?:"+re.src_domain+")\\.)*"+re.src_domain+"))",re.tpl_host_fuzzy="(?:"+re.src_ip4+"|(?:(?:(?:"+re.src_domain+")\\.)+(?:%TLDS%)))",re.tpl_host_no_ip_fuzzy="(?:(?:(?:"+re.src_domain+")\\.)+(?:%TLDS%))",re.src_host_strict=re.src_host+re.src_host_terminator,re.tpl_host_fuzzy_strict=re.tpl_host_fuzzy+re.src_host_terminator,re.src_host_port_strict=re.src_host+re.src_port+re.src_host_terminator,re.tpl_host_port_fuzzy_strict=re.tpl_host_fuzzy+re.src_port+re.src_host_terminator,re.tpl_host_port_no_ip_fuzzy_strict=re.tpl_host_no_ip_fuzzy+re.src_port+re.src_host_terminator,re.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+re.src_ZPCc+"|>|$))",re.tpl_email_fuzzy="(^|[><]|\\(|"+re.src_ZCc+")("+re.src_email_name+"@"+re.tpl_host_fuzzy_strict+")",re.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|]|"+re.src_ZPCc+"))((?![$+<=>^`|])"+re.tpl_host_port_fuzzy_strict+re.src_path+")",re.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|]|"+re.src_ZPCc+"))((?![$+<=>^`|])"+re.tpl_host_port_no_ip_fuzzy_strict+re.src_path+")",re}},{"uc.micro/categories/Cc/regex":209,"uc.micro/categories/P/regex":211,"uc.micro/categories/Z/regex":212,"uc.micro/properties/Any/regex":214}],139:[function(require,module,exports){"use strict";module.exports=require("./lib/")},{"./lib/":148}],140:[function(require,module,exports){"use strict";module.exports=require("entities/maps/entities.json")},{"entities/maps/entities.json":17}],141:[function(require,module,exports){"use strict";module.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","meta","nav","noframes","ol","optgroup","option","p","param","section","source","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]},{}],142:[function(require,module,exports){"use strict";var open_tag="<[A-Za-z][A-Za-z0-9\\-]*(?:\\s+[a-zA-Z_:][a-zA-Z0-9:._-]*(?:\\s*=\\s*(?:[^\"'=<>`\\x00-\\x20]+|'[^']*'|\"[^\"]*\"))?)*\\s*\\/?>",close_tag="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",HTML_TAG_RE=new RegExp("^(?:"+open_tag+"|"+close_tag+"|\x3c!----\x3e|\x3c!--(?:-?[^>-])(?:-?[^-])*--\x3e|<[?].*?[?]>|<![A-Z]+\\s+[^>]*>|<!\\[CDATA\\[[\\s\\S]*?\\]\\]>)"),HTML_OPEN_CLOSE_TAG_RE=new RegExp("^(?:"+open_tag+"|"+close_tag+")");module.exports.HTML_TAG_RE=HTML_TAG_RE,module.exports.HTML_OPEN_CLOSE_TAG_RE=HTML_OPEN_CLOSE_TAG_RE},{}],143:[function(require,module,exports){"use strict";var _hasOwnProperty=Object.prototype.hasOwnProperty;function has(object,key){return _hasOwnProperty.call(object,key)}function isValidEntityCode(c){return!(55296<=c&&c<=57343)&&(!(64976<=c&&c<=65007)&&(65535!=(65535&c)&&65534!=(65535&c)&&(!(0<=c&&c<=8)&&(11!==c&&(!(14<=c&&c<=31)&&(!(127<=c&&c<=159)&&!(1114111<c)))))))}function fromCodePoint(c){if(65535<c){var surrogate1=55296+((c-=65536)>>10),surrogate2=56320+(1023&c);return String.fromCharCode(surrogate1,surrogate2)}return String.fromCharCode(c)}var UNESCAPE_MD_RE=/\\([!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~])/g,UNESCAPE_ALL_RE=new RegExp(UNESCAPE_MD_RE.source+"|"+/&([a-z#][a-z0-9]{1,31});/gi.source,"gi"),DIGITAL_ENTITY_TEST_RE=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))/i,entities=require("./entities");var HTML_ESCAPE_TEST_RE=/[&<>"]/,HTML_ESCAPE_REPLACE_RE=/[&<>"]/g,HTML_REPLACEMENTS={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"};function replaceUnsafeChar(ch){return HTML_REPLACEMENTS[ch]}var REGEXP_ESCAPE_RE=/[.?*+^$[\]\\(){}|-]/g;var UNICODE_PUNCT_RE=require("uc.micro/categories/P/regex");exports.lib={},exports.lib.mdurl=require("mdurl"),exports.lib.ucmicro=require("uc.micro"),exports.assign=function(obj){return Array.prototype.slice.call(arguments,1).forEach(function(source){if(source){if("object"!=typeof source)throw new TypeError(source+"must be object");Object.keys(source).forEach(function(key){obj[key]=source[key]})}}),obj},exports.isString=function(obj){return"[object String]"===function(obj){return Object.prototype.toString.call(obj)}(obj)},exports.has=has,exports.unescapeMd=function(str){return str.indexOf("\\")<0?str:str.replace(UNESCAPE_MD_RE,"$1")},exports.unescapeAll=function(str){return str.indexOf("\\")<0&&str.indexOf("&")<0?str:str.replace(UNESCAPE_ALL_RE,function(match,escaped,entity){return escaped||function(match,name){var code=0;return has(entities,name)?entities[name]:35===name.charCodeAt(0)&&DIGITAL_ENTITY_TEST_RE.test(name)&&isValidEntityCode(code="x"===name[1].toLowerCase()?parseInt(name.slice(2),16):parseInt(name.slice(1),10))?fromCodePoint(code):match}(match,entity)})},exports.isValidEntityCode=isValidEntityCode,exports.fromCodePoint=fromCodePoint,exports.escapeHtml=function(str){return HTML_ESCAPE_TEST_RE.test(str)?str.replace(HTML_ESCAPE_REPLACE_RE,replaceUnsafeChar):str},exports.arrayReplaceAt=function(src,pos,newElements){return[].concat(src.slice(0,pos),newElements,src.slice(pos+1))},exports.isSpace=function(code){switch(code){case 9:case 32:return!0}return!1},exports.isWhiteSpace=function(code){if(8192<=code&&code<=8202)return!0;switch(code){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1},exports.isMdAsciiPunct=function(ch){switch(ch){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}},exports.isPunctChar=function(ch){return UNICODE_PUNCT_RE.test(ch)},exports.escapeRE=function(str){return str.replace(REGEXP_ESCAPE_RE,"\\$&")},exports.normalizeReference=function(str){return str.trim().replace(/\s+/g," ").toUpperCase()}},{"./entities":140,mdurl:194,"uc.micro":213,"uc.micro/categories/P/regex":211}],144:[function(require,module,exports){"use strict";exports.parseLinkLabel=require("./parse_link_label"),exports.parseLinkDestination=require("./parse_link_destination"),exports.parseLinkTitle=require("./parse_link_title")},{"./parse_link_destination":145,"./parse_link_label":146,"./parse_link_title":147}],145:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace,unescapeAll=require("../common/utils").unescapeAll;module.exports=function(str,pos,max){var code,level,start=pos,result={ok:!1,pos:0,lines:0,str:""};if(60===str.charCodeAt(pos)){for(pos++;pos<max;){if(10===(code=str.charCodeAt(pos))||isSpace(code))return result;if(62===code)return result.pos=pos+1,result.str=unescapeAll(str.slice(start+1,pos)),result.ok=!0,result;92===code&&pos+1<max?pos+=2:pos++}return result}for(level=0;pos<max&&32!==(code=str.charCodeAt(pos))&&!(code<32||127===code);)if(92===code&&pos+1<max)pos+=2;else{if(40===code&&level++,41===code){if(0===level)break;level--}pos++}return start===pos||0!==level||(result.str=unescapeAll(str.slice(start,pos)),result.lines=0,result.pos=pos,result.ok=!0),result}},{"../common/utils":143}],146:[function(require,module,exports){"use strict";module.exports=function(state,start,disableNested){var level,found,marker,prevPos,labelEnd=-1,max=state.posMax,oldPos=state.pos;for(state.pos=start+1,level=1;state.pos<max;){if(93===(marker=state.src.charCodeAt(state.pos))&&0===--level){found=!0;break}if(prevPos=state.pos,state.md.inline.skipToken(state),91===marker)if(prevPos===state.pos-1)level++;else if(disableNested)return state.pos=oldPos,-1}return found&&(labelEnd=state.pos),state.pos=oldPos,labelEnd}},{}],147:[function(require,module,exports){"use strict";var unescapeAll=require("../common/utils").unescapeAll;module.exports=function(str,pos,max){var code,marker,lines=0,start=pos,result={ok:!1,pos:0,lines:0,str:""};if(max<=pos)return result;if(34!==(marker=str.charCodeAt(pos))&&39!==marker&&40!==marker)return result;for(pos++,40===marker&&(marker=41);pos<max;){if((code=str.charCodeAt(pos))===marker)return result.pos=pos+1,result.lines=lines,result.str=unescapeAll(str.slice(start+1,pos)),result.ok=!0,result;10===code?lines++:92===code&&pos+1<max&&(pos++,10===str.charCodeAt(pos)&&lines++),pos++}return result}},{"../common/utils":143}],148:[function(require,module,exports){"use strict";var utils=require("./common/utils"),helpers=require("./helpers"),Renderer=require("./renderer"),ParserCore=require("./parser_core"),ParserBlock=require("./parser_block"),ParserInline=require("./parser_inline"),LinkifyIt=require("linkify-it"),mdurl=require("mdurl"),punycode=require("punycode"),config={default:require("./presets/default"),zero:require("./presets/zero"),commonmark:require("./presets/commonmark")},BAD_PROTO_RE=/^(vbscript|javascript|file|data):/,GOOD_DATA_RE=/^data:image\/(gif|png|jpeg|webp);/;function validateLink(url){var str=url.trim().toLowerCase();return!BAD_PROTO_RE.test(str)||!!GOOD_DATA_RE.test(str)}var RECODE_HOSTNAME_FOR=["http:","https:","mailto:"];function normalizeLink(url){var parsed=mdurl.parse(url,!0);if(parsed.hostname&&(!parsed.protocol||0<=RECODE_HOSTNAME_FOR.indexOf(parsed.protocol)))try{parsed.hostname=punycode.toASCII(parsed.hostname)}catch(er){}return mdurl.encode(mdurl.format(parsed))}function normalizeLinkText(url){var parsed=mdurl.parse(url,!0);if(parsed.hostname&&(!parsed.protocol||0<=RECODE_HOSTNAME_FOR.indexOf(parsed.protocol)))try{parsed.hostname=punycode.toUnicode(parsed.hostname)}catch(er){}return mdurl.decode(mdurl.format(parsed))}function MarkdownIt(presetName,options){if(!(this instanceof MarkdownIt))return new MarkdownIt(presetName,options);options||utils.isString(presetName)||(options=presetName||{},presetName="default"),this.inline=new ParserInline,this.block=new ParserBlock,this.core=new ParserCore,this.renderer=new Renderer,this.linkify=new LinkifyIt,this.validateLink=validateLink,this.normalizeLink=normalizeLink,this.normalizeLinkText=normalizeLinkText,this.utils=utils,this.helpers=utils.assign({},helpers),this.options={},this.configure(presetName),options&&this.set(options)}MarkdownIt.prototype.set=function(options){return utils.assign(this.options,options),this},MarkdownIt.prototype.configure=function(presets){var presetName,self=this;if(utils.isString(presets)&&!(presets=config[presetName=presets]))throw new Error('Wrong `markdown-it` preset "'+presetName+'", check name');if(!presets)throw new Error("Wrong `markdown-it` preset, can't be empty");return presets.options&&self.set(presets.options),presets.components&&Object.keys(presets.components).forEach(function(name){presets.components[name].rules&&self[name].ruler.enableOnly(presets.components[name].rules),presets.components[name].rules2&&self[name].ruler2.enableOnly(presets.components[name].rules2)}),this},MarkdownIt.prototype.enable=function(list,ignoreInvalid){var result=[];Array.isArray(list)||(list=[list]),["core","block","inline"].forEach(function(chain){result=result.concat(this[chain].ruler.enable(list,!0))},this),result=result.concat(this.inline.ruler2.enable(list,!0));var missed=list.filter(function(name){return result.indexOf(name)<0});if(missed.length&&!ignoreInvalid)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+missed);return this},MarkdownIt.prototype.disable=function(list,ignoreInvalid){var result=[];Array.isArray(list)||(list=[list]),["core","block","inline"].forEach(function(chain){result=result.concat(this[chain].ruler.disable(list,!0))},this),result=result.concat(this.inline.ruler2.disable(list,!0));var missed=list.filter(function(name){return result.indexOf(name)<0});if(missed.length&&!ignoreInvalid)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+missed);return this},MarkdownIt.prototype.use=function(plugin){var args=[this].concat(Array.prototype.slice.call(arguments,1));return plugin.apply(plugin,args),this},MarkdownIt.prototype.parse=function(src,env){if("string"!=typeof src)throw new Error("Input data should be a String");var state=new this.core.State(src,this,env);return this.core.process(state),state.tokens},MarkdownIt.prototype.render=function(src,env){return env=env||{},this.renderer.render(this.parse(src,env),this.options,env)},MarkdownIt.prototype.parseInline=function(src,env){var state=new this.core.State(src,this,env);return state.inlineMode=!0,this.core.process(state),state.tokens},MarkdownIt.prototype.renderInline=function(src,env){return env=env||{},this.renderer.render(this.parseInline(src,env),this.options,env)},module.exports=MarkdownIt},{"./common/utils":143,"./helpers":144,"./parser_block":149,"./parser_core":150,"./parser_inline":151,"./presets/commonmark":152,"./presets/default":153,"./presets/zero":154,"./renderer":155,"linkify-it":137,mdurl:194,punycode:203}],149:[function(require,module,exports){"use strict";var Ruler=require("./ruler"),_rules=[["table",require("./rules_block/table"),["paragraph","reference"]],["code",require("./rules_block/code")],["fence",require("./rules_block/fence"),["paragraph","reference","blockquote","list"]],["blockquote",require("./rules_block/blockquote"),["paragraph","reference","blockquote","list"]],["hr",require("./rules_block/hr"),["paragraph","reference","blockquote","list"]],["list",require("./rules_block/list"),["paragraph","reference","blockquote"]],["reference",require("./rules_block/reference")],["heading",require("./rules_block/heading"),["paragraph","reference","blockquote"]],["lheading",require("./rules_block/lheading")],["html_block",require("./rules_block/html_block"),["paragraph","reference","blockquote"]],["paragraph",require("./rules_block/paragraph")]];function ParserBlock(){this.ruler=new Ruler;for(var i=0;i<_rules.length;i++)this.ruler.push(_rules[i][0],_rules[i][1],{alt:(_rules[i][2]||[]).slice()})}ParserBlock.prototype.tokenize=function(state,startLine,endLine){for(var i,rules=this.ruler.getRules(""),len=rules.length,line=startLine,hasEmptyLines=!1,maxNesting=state.md.options.maxNesting;line<endLine&&(state.line=line=state.skipEmptyLines(line),!(endLine<=line))&&!(state.sCount[line]<state.blkIndent);){if(state.level>=maxNesting){state.line=endLine;break}for(i=0;i<len&&!rules[i](state,line,endLine,!1);i++);state.tight=!hasEmptyLines,state.isEmpty(state.line-1)&&(hasEmptyLines=!0),(line=state.line)<endLine&&state.isEmpty(line)&&(hasEmptyLines=!0,line++,state.line=line)}},ParserBlock.prototype.parse=function(src,md,env,outTokens){var state;src&&(state=new this.State(src,md,env,outTokens),this.tokenize(state,state.line,state.lineMax))},ParserBlock.prototype.State=require("./rules_block/state_block"),module.exports=ParserBlock},{"./ruler":156,"./rules_block/blockquote":157,"./rules_block/code":158,"./rules_block/fence":159,"./rules_block/heading":160,"./rules_block/hr":161,"./rules_block/html_block":162,"./rules_block/lheading":163,"./rules_block/list":164,"./rules_block/paragraph":165,"./rules_block/reference":166,"./rules_block/state_block":167,"./rules_block/table":168}],150:[function(require,module,exports){"use strict";var Ruler=require("./ruler"),_rules=[["normalize",require("./rules_core/normalize")],["block",require("./rules_core/block")],["inline",require("./rules_core/inline")],["linkify",require("./rules_core/linkify")],["replacements",require("./rules_core/replacements")],["smartquotes",require("./rules_core/smartquotes")]];function Core(){this.ruler=new Ruler;for(var i=0;i<_rules.length;i++)this.ruler.push(_rules[i][0],_rules[i][1])}Core.prototype.process=function(state){var i,l,rules;for(i=0,l=(rules=this.ruler.getRules("")).length;i<l;i++)rules[i](state)},Core.prototype.State=require("./rules_core/state_core"),module.exports=Core},{"./ruler":156,"./rules_core/block":169,"./rules_core/inline":170,"./rules_core/linkify":171,"./rules_core/normalize":172,"./rules_core/replacements":173,"./rules_core/smartquotes":174,"./rules_core/state_core":175}],151:[function(require,module,exports){"use strict";var Ruler=require("./ruler"),_rules=[["text",require("./rules_inline/text")],["newline",require("./rules_inline/newline")],["escape",require("./rules_inline/escape")],["backticks",require("./rules_inline/backticks")],["strikethrough",require("./rules_inline/strikethrough").tokenize],["emphasis",require("./rules_inline/emphasis").tokenize],["link",require("./rules_inline/link")],["image",require("./rules_inline/image")],["autolink",require("./rules_inline/autolink")],["html_inline",require("./rules_inline/html_inline")],["entity",require("./rules_inline/entity")]],_rules2=[["balance_pairs",require("./rules_inline/balance_pairs")],["strikethrough",require("./rules_inline/strikethrough").postProcess],["emphasis",require("./rules_inline/emphasis").postProcess],["text_collapse",require("./rules_inline/text_collapse")]];function ParserInline(){var i;for(this.ruler=new Ruler,i=0;i<_rules.length;i++)this.ruler.push(_rules[i][0],_rules[i][1]);for(this.ruler2=new Ruler,i=0;i<_rules2.length;i++)this.ruler2.push(_rules2[i][0],_rules2[i][1])}ParserInline.prototype.skipToken=function(state){var ok,i,pos=state.pos,rules=this.ruler.getRules(""),len=rules.length,maxNesting=state.md.options.maxNesting,cache=state.cache;if(void 0===cache[pos]){if(state.level<maxNesting)for(i=0;i<len&&(state.level++,ok=rules[i](state,!0),state.level--,!ok);i++);else state.pos=state.posMax;ok||state.pos++,cache[pos]=state.pos}else state.pos=cache[pos]},ParserInline.prototype.tokenize=function(state){for(var ok,i,rules=this.ruler.getRules(""),len=rules.length,end=state.posMax,maxNesting=state.md.options.maxNesting;state.pos<end;){if(state.level<maxNesting)for(i=0;i<len&&!(ok=rules[i](state,!1));i++);if(ok){if(state.pos>=end)break}else state.pending+=state.src[state.pos++]}state.pending&&state.pushPending()},ParserInline.prototype.parse=function(str,md,env,outTokens){var i,rules,len,state=new this.State(str,md,env,outTokens);for(this.tokenize(state),len=(rules=this.ruler2.getRules("")).length,i=0;i<len;i++)rules[i](state)},ParserInline.prototype.State=require("./rules_inline/state_inline"),module.exports=ParserInline},{"./ruler":156,"./rules_inline/autolink":176,"./rules_inline/backticks":177,"./rules_inline/balance_pairs":178,"./rules_inline/emphasis":179,"./rules_inline/entity":180,"./rules_inline/escape":181,"./rules_inline/html_inline":182,"./rules_inline/image":183,"./rules_inline/link":184,"./rules_inline/newline":185,"./rules_inline/state_inline":186,"./rules_inline/strikethrough":187,"./rules_inline/text":188,"./rules_inline/text_collapse":189}],152:[function(require,module,exports){"use strict";module.exports={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","text_collapse"]}}}},{}],153:[function(require,module,exports){"use strict";module.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}}},{}],154:[function(require,module,exports){"use strict";module.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"“”‘’",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","text_collapse"]}}}},{}],155:[function(require,module,exports){"use strict";var assign=require("./common/utils").assign,unescapeAll=require("./common/utils").unescapeAll,escapeHtml=require("./common/utils").escapeHtml,default_rules={};function Renderer(){this.rules=assign({},default_rules)}default_rules.code_inline=function(tokens,idx,options,env,slf){var token=tokens[idx];return"<code"+slf.renderAttrs(token)+">"+escapeHtml(tokens[idx].content)+"</code>"},default_rules.code_block=function(tokens,idx,options,env,slf){var token=tokens[idx];return"<pre"+slf.renderAttrs(token)+"><code>"+escapeHtml(tokens[idx].content)+"</code></pre>\n"},default_rules.fence=function(tokens,idx,options,env,slf){var highlighted,i,tmpAttrs,tmpToken,token=tokens[idx],info=token.info?unescapeAll(token.info).trim():"",langName="";return info&&(langName=info.split(/\s+/g)[0]),0===(highlighted=options.highlight&&options.highlight(token.content,langName)||escapeHtml(token.content)).indexOf("<pre")?highlighted+"\n":info?(i=token.attrIndex("class"),tmpAttrs=token.attrs?token.attrs.slice():[],i<0?tmpAttrs.push(["class",options.langPrefix+langName]):tmpAttrs[i][1]+=" "+options.langPrefix+langName,tmpToken={attrs:tmpAttrs},"<pre><code"+slf.renderAttrs(tmpToken)+">"+highlighted+"</code></pre>\n"):"<pre><code"+slf.renderAttrs(token)+">"+highlighted+"</code></pre>\n"},default_rules.image=function(tokens,idx,options,env,slf){var token=tokens[idx];return token.attrs[token.attrIndex("alt")][1]=slf.renderInlineAsText(token.children,options,env),slf.renderToken(tokens,idx,options)},default_rules.hardbreak=function(tokens,idx,options){return options.xhtmlOut?"<br />\n":"<br>\n"},default_rules.softbreak=function(tokens,idx,options){return options.breaks?options.xhtmlOut?"<br />\n":"<br>\n":"\n"},default_rules.text=function(tokens,idx){return escapeHtml(tokens[idx].content)},default_rules.html_block=function(tokens,idx){return tokens[idx].content},default_rules.html_inline=function(tokens,idx){return tokens[idx].content},Renderer.prototype.renderAttrs=function(token){var i,l,result;if(!token.attrs)return"";for(result="",i=0,l=token.attrs.length;i<l;i++)result+=" "+escapeHtml(token.attrs[i][0])+'="'+escapeHtml(token.attrs[i][1])+'"';return result},Renderer.prototype.renderToken=function(tokens,idx,options){var nextToken,result="",needLf=!1,token=tokens[idx];return token.hidden?"":(token.block&&-1!==token.nesting&&idx&&tokens[idx-1].hidden&&(result+="\n"),result+=(-1===token.nesting?"</":"<")+token.tag,result+=this.renderAttrs(token),0===token.nesting&&options.xhtmlOut&&(result+=" /"),token.block&&(needLf=!0,1===token.nesting&&idx+1<tokens.length&&("inline"===(nextToken=tokens[idx+1]).type||nextToken.hidden?needLf=!1:-1===nextToken.nesting&&nextToken.tag===token.tag&&(needLf=!1))),result+=needLf?">\n":">")},Renderer.prototype.renderInline=function(tokens,options,env){for(var type,result="",rules=this.rules,i=0,len=tokens.length;i<len;i++)void 0!==rules[type=tokens[i].type]?result+=rules[type](tokens,i,options,env,this):result+=this.renderToken(tokens,i,options);return result},Renderer.prototype.renderInlineAsText=function(tokens,options,env){for(var result="",i=0,len=tokens.length;i<len;i++)"text"===tokens[i].type?result+=tokens[i].content:"image"===tokens[i].type&&(result+=this.renderInlineAsText(tokens[i].children,options,env));return result},Renderer.prototype.render=function(tokens,options,env){var i,len,type,result="",rules=this.rules;for(i=0,len=tokens.length;i<len;i++)"inline"===(type=tokens[i].type)?result+=this.renderInline(tokens[i].children,options,env):void 0!==rules[type]?result+=rules[tokens[i].type](tokens,i,options,env,this):result+=this.renderToken(tokens,i,options,env);return result},module.exports=Renderer},{"./common/utils":143}],156:[function(require,module,exports){"use strict";function Ruler(){this.__rules__=[],this.__cache__=null}Ruler.prototype.__find__=function(name){for(var i=0;i<this.__rules__.length;i++)if(this.__rules__[i].name===name)return i;return-1},Ruler.prototype.__compile__=function(){var self=this,chains=[""];self.__rules__.forEach(function(rule){rule.enabled&&rule.alt.forEach(function(altName){chains.indexOf(altName)<0&&chains.push(altName)})}),self.__cache__={},chains.forEach(function(chain){self.__cache__[chain]=[],self.__rules__.forEach(function(rule){rule.enabled&&(chain&&rule.alt.indexOf(chain)<0||self.__cache__[chain].push(rule.fn))})})},Ruler.prototype.at=function(name,fn,options){var index=this.__find__(name),opt=options||{};if(-1===index)throw new Error("Parser rule not found: "+name);this.__rules__[index].fn=fn,this.__rules__[index].alt=opt.alt||[],this.__cache__=null},Ruler.prototype.before=function(beforeName,ruleName,fn,options){var index=this.__find__(beforeName),opt=options||{};if(-1===index)throw new Error("Parser rule not found: "+beforeName);this.__rules__.splice(index,0,{name:ruleName,enabled:!0,fn:fn,alt:opt.alt||[]}),this.__cache__=null},Ruler.prototype.after=function(afterName,ruleName,fn,options){var index=this.__find__(afterName),opt=options||{};if(-1===index)throw new Error("Parser rule not found: "+afterName);this.__rules__.splice(index+1,0,{name:ruleName,enabled:!0,fn:fn,alt:opt.alt||[]}),this.__cache__=null},Ruler.prototype.push=function(ruleName,fn,options){var opt=options||{};this.__rules__.push({name:ruleName,enabled:!0,fn:fn,alt:opt.alt||[]}),this.__cache__=null},Ruler.prototype.enable=function(list,ignoreInvalid){Array.isArray(list)||(list=[list]);var result=[];return list.forEach(function(name){var idx=this.__find__(name);if(idx<0){if(ignoreInvalid)return;throw new Error("Rules manager: invalid rule name "+name)}this.__rules__[idx].enabled=!0,result.push(name)},this),this.__cache__=null,result},Ruler.prototype.enableOnly=function(list,ignoreInvalid){Array.isArray(list)||(list=[list]),this.__rules__.forEach(function(rule){rule.enabled=!1}),this.enable(list,ignoreInvalid)},Ruler.prototype.disable=function(list,ignoreInvalid){Array.isArray(list)||(list=[list]);var result=[];return list.forEach(function(name){var idx=this.__find__(name);if(idx<0){if(ignoreInvalid)return;throw new Error("Rules manager: invalid rule name "+name)}this.__rules__[idx].enabled=!1,result.push(name)},this),this.__cache__=null,result},Ruler.prototype.getRules=function(chainName){return null===this.__cache__&&this.__compile__(),this.__cache__[chainName]||[]},module.exports=Ruler},{}],157:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;module.exports=function(state,startLine,endLine,silent){var adjustTab,ch,i,initial,l,lastLineEmpty,lines,nextLine,offset,oldBMarks,oldBSCount,oldIndent,oldParentType,oldSCount,oldTShift,spaceAfterMarker,terminate,terminatorRules,token,wasOutdented,oldLineMax=state.lineMax,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine];if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(62!==state.src.charCodeAt(pos++))return!1;if(silent)return!0;for(initial=offset=state.sCount[startLine]+pos-(state.bMarks[startLine]+state.tShift[startLine]),32===state.src.charCodeAt(pos)?(pos++,initial++,offset++,spaceAfterMarker=!(adjustTab=!1)):9===state.src.charCodeAt(pos)?(spaceAfterMarker=!0,adjustTab=(state.bsCount[startLine]+offset)%4!=3||(pos++,initial++,offset++,!1)):spaceAfterMarker=!1,oldBMarks=[state.bMarks[startLine]],state.bMarks[startLine]=pos;pos<max&&(ch=state.src.charCodeAt(pos),isSpace(ch));)9===ch?offset+=4-(offset+state.bsCount[startLine]+(adjustTab?1:0))%4:offset++,pos++;for(oldBSCount=[state.bsCount[startLine]],state.bsCount[startLine]=state.sCount[startLine]+1+(spaceAfterMarker?1:0),lastLineEmpty=max<=pos,oldSCount=[state.sCount[startLine]],state.sCount[startLine]=offset-initial,oldTShift=[state.tShift[startLine]],state.tShift[startLine]=pos-state.bMarks[startLine],terminatorRules=state.md.block.ruler.getRules("blockquote"),oldParentType=state.parentType,wasOutdented=!(state.parentType="blockquote"),nextLine=startLine+1;nextLine<endLine&&(state.sCount[nextLine]<state.blkIndent&&(wasOutdented=!0),pos=state.bMarks[nextLine]+state.tShift[nextLine],!((max=state.eMarks[nextLine])<=pos));nextLine++)if(62!==state.src.charCodeAt(pos++)||wasOutdented){if(lastLineEmpty)break;for(terminate=!1,i=0,l=terminatorRules.length;i<l;i++)if(terminatorRules[i](state,nextLine,endLine,!0)){terminate=!0;break}if(terminate){state.lineMax=nextLine,0!==state.blkIndent&&(oldBMarks.push(state.bMarks[nextLine]),oldBSCount.push(state.bsCount[nextLine]),oldTShift.push(state.tShift[nextLine]),oldSCount.push(state.sCount[nextLine]),state.sCount[nextLine]-=state.blkIndent);break}oldBMarks.push(state.bMarks[nextLine]),oldBSCount.push(state.bsCount[nextLine]),oldTShift.push(state.tShift[nextLine]),oldSCount.push(state.sCount[nextLine]),state.sCount[nextLine]=-1}else{for(initial=offset=state.sCount[nextLine]+pos-(state.bMarks[nextLine]+state.tShift[nextLine]),32===state.src.charCodeAt(pos)?(pos++,initial++,offset++,spaceAfterMarker=!(adjustTab=!1)):9===state.src.charCodeAt(pos)?(spaceAfterMarker=!0,adjustTab=(state.bsCount[nextLine]+offset)%4!=3||(pos++,initial++,offset++,!1)):spaceAfterMarker=!1,oldBMarks.push(state.bMarks[nextLine]),state.bMarks[nextLine]=pos;pos<max&&(ch=state.src.charCodeAt(pos),isSpace(ch));)9===ch?offset+=4-(offset+state.bsCount[nextLine]+(adjustTab?1:0))%4:offset++,pos++;lastLineEmpty=max<=pos,oldBSCount.push(state.bsCount[nextLine]),state.bsCount[nextLine]=state.sCount[nextLine]+1+(spaceAfterMarker?1:0),oldSCount.push(state.sCount[nextLine]),state.sCount[nextLine]=offset-initial,oldTShift.push(state.tShift[nextLine]),state.tShift[nextLine]=pos-state.bMarks[nextLine]}for(oldIndent=state.blkIndent,state.blkIndent=0,(token=state.push("blockquote_open","blockquote",1)).markup=">",token.map=lines=[startLine,0],state.md.block.tokenize(state,startLine,nextLine),(token=state.push("blockquote_close","blockquote",-1)).markup=">",state.lineMax=oldLineMax,state.parentType=oldParentType,lines[1]=state.line,i=0;i<oldTShift.length;i++)state.bMarks[i+startLine]=oldBMarks[i],state.tShift[i+startLine]=oldTShift[i],state.sCount[i+startLine]=oldSCount[i],state.bsCount[i+startLine]=oldBSCount[i];return state.blkIndent=oldIndent,!0}},{"../common/utils":143}],158:[function(require,module,exports){"use strict";module.exports=function(state,startLine,endLine){var nextLine,last,token;if(state.sCount[startLine]-state.blkIndent<4)return!1;for(last=nextLine=startLine+1;nextLine<endLine;)if(state.isEmpty(nextLine))nextLine++;else{if(!(4<=state.sCount[nextLine]-state.blkIndent))break;last=++nextLine}return state.line=last,(token=state.push("code_block","code",0)).content=state.getLines(startLine,last,4+state.blkIndent,!0),token.map=[startLine,state.line],!0}},{}],159:[function(require,module,exports){"use strict";module.exports=function(state,startLine,endLine,silent){var marker,len,params,nextLine,mem,token,markup,haveEndMarker=!1,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine];if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(max<pos+3)return!1;if(126!==(marker=state.src.charCodeAt(pos))&&96!==marker)return!1;if(mem=pos,(len=(pos=state.skipChars(pos,marker))-mem)<3)return!1;if(markup=state.src.slice(mem,pos),0<=(params=state.src.slice(pos,max)).indexOf(String.fromCharCode(marker)))return!1;if(silent)return!0;for(nextLine=startLine;!(endLine<=++nextLine)&&!((pos=mem=state.bMarks[nextLine]+state.tShift[nextLine])<(max=state.eMarks[nextLine])&&state.sCount[nextLine]<state.blkIndent);)if(state.src.charCodeAt(pos)===marker&&!(4<=state.sCount[nextLine]-state.blkIndent||(pos=state.skipChars(pos,marker))-mem<len||(pos=state.skipSpaces(pos))<max)){haveEndMarker=!0;break}return len=state.sCount[startLine],state.line=nextLine+(haveEndMarker?1:0),(token=state.push("fence","code",0)).info=params,token.content=state.getLines(startLine+1,nextLine,len,!0),token.markup=markup,token.map=[startLine,state.line],!0}},{}],160:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;module.exports=function(state,startLine,endLine,silent){var ch,level,tmp,token,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine];if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(35!==(ch=state.src.charCodeAt(pos))||max<=pos)return!1;for(level=1,ch=state.src.charCodeAt(++pos);35===ch&&pos<max&&level<=6;)level++,ch=state.src.charCodeAt(++pos);return!(6<level||pos<max&&!isSpace(ch))&&(silent||(max=state.skipSpacesBack(max,pos),pos<(tmp=state.skipCharsBack(max,35,pos))&&isSpace(state.src.charCodeAt(tmp-1))&&(max=tmp),state.line=startLine+1,(token=state.push("heading_open","h"+String(level),1)).markup="########".slice(0,level),token.map=[startLine,state.line],(token=state.push("inline","",0)).content=state.src.slice(pos,max).trim(),token.map=[startLine,state.line],token.children=[],(token=state.push("heading_close","h"+String(level),-1)).markup="########".slice(0,level)),!0)}},{"../common/utils":143}],161:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;module.exports=function(state,startLine,endLine,silent){var marker,cnt,ch,token,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine];if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(42!==(marker=state.src.charCodeAt(pos++))&&45!==marker&&95!==marker)return!1;for(cnt=1;pos<max;){if((ch=state.src.charCodeAt(pos++))!==marker&&!isSpace(ch))return!1;ch===marker&&cnt++}return!(cnt<3)&&(silent||(state.line=startLine+1,(token=state.push("hr","hr",0)).map=[startLine,state.line],token.markup=Array(cnt+1).join(String.fromCharCode(marker))),!0)}},{"../common/utils":143}],162:[function(require,module,exports){"use strict";var block_names=require("../common/html_blocks"),HTML_OPEN_CLOSE_TAG_RE=require("../common/html_re").HTML_OPEN_CLOSE_TAG_RE,HTML_SEQUENCES=[[/^<(script|pre|style)(?=(\s|>|$))/i,/<\/(script|pre|style)>/i,!0],[/^<!--/,/-->/,!0],[/^<\?/,/\?>/,!0],[/^<![A-Z]/,/>/,!0],[/^<!\[CDATA\[/,/\]\]>/,!0],[new RegExp("^</?("+block_names.join("|")+")(?=(\\s|/?>|$))","i"),/^$/,!0],[new RegExp(HTML_OPEN_CLOSE_TAG_RE.source+"\\s*$"),/^$/,!1]];module.exports=function(state,startLine,endLine,silent){var i,nextLine,token,lineText,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine];if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(!state.md.options.html)return!1;if(60!==state.src.charCodeAt(pos))return!1;for(lineText=state.src.slice(pos,max),i=0;i<HTML_SEQUENCES.length&&!HTML_SEQUENCES[i][0].test(lineText);i++);if(i===HTML_SEQUENCES.length)return!1;if(silent)return HTML_SEQUENCES[i][2];if(nextLine=startLine+1,!HTML_SEQUENCES[i][1].test(lineText))for(;nextLine<endLine&&!(state.sCount[nextLine]<state.blkIndent);nextLine++)if(pos=state.bMarks[nextLine]+state.tShift[nextLine],max=state.eMarks[nextLine],lineText=state.src.slice(pos,max),HTML_SEQUENCES[i][1].test(lineText)){0!==lineText.length&&nextLine++;break}return state.line=nextLine,(token=state.push("html_block","",0)).map=[startLine,nextLine],token.content=state.getLines(startLine,nextLine,state.blkIndent,!0),!0}},{"../common/html_blocks":141,"../common/html_re":142}],163:[function(require,module,exports){"use strict";module.exports=function(state,startLine,endLine){var content,terminate,i,l,token,pos,max,level,marker,oldParentType,nextLine=startLine+1,terminatorRules=state.md.block.ruler.getRules("paragraph");if(4<=state.sCount[startLine]-state.blkIndent)return!1;for(oldParentType=state.parentType,state.parentType="paragraph";nextLine<endLine&&!state.isEmpty(nextLine);nextLine++)if(!(3<state.sCount[nextLine]-state.blkIndent)){if(state.sCount[nextLine]>=state.blkIndent&&(pos=state.bMarks[nextLine]+state.tShift[nextLine])<(max=state.eMarks[nextLine])&&(45===(marker=state.src.charCodeAt(pos))||61===marker)&&(pos=state.skipChars(pos,marker),max<=(pos=state.skipSpaces(pos)))){level=61===marker?1:2;break}if(!(state.sCount[nextLine]<0)){for(terminate=!1,i=0,l=terminatorRules.length;i<l;i++)if(terminatorRules[i](state,nextLine,endLine,!0)){terminate=!0;break}if(terminate)break}}return!!level&&(content=state.getLines(startLine,nextLine,state.blkIndent,!1).trim(),state.line=nextLine+1,(token=state.push("heading_open","h"+String(level),1)).markup=String.fromCharCode(marker),token.map=[startLine,state.line],(token=state.push("inline","",0)).content=content,token.map=[startLine,state.line-1],token.children=[],(token=state.push("heading_close","h"+String(level),-1)).markup=String.fromCharCode(marker),state.parentType=oldParentType,!0)}},{}],164:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;function skipBulletListMarker(state,startLine){var marker,pos,max,ch;return pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine],42!==(marker=state.src.charCodeAt(pos++))&&45!==marker&&43!==marker?-1:pos<max&&(ch=state.src.charCodeAt(pos),!isSpace(ch))?-1:pos}function skipOrderedListMarker(state,startLine){var ch,start=state.bMarks[startLine]+state.tShift[startLine],pos=start,max=state.eMarks[startLine];if(max<=pos+1)return-1;if((ch=state.src.charCodeAt(pos++))<48||57<ch)return-1;for(;;){if(max<=pos)return-1;if(!(48<=(ch=state.src.charCodeAt(pos++))&&ch<=57)){if(41===ch||46===ch)break;return-1}if(10<=pos-start)return-1}return pos<max&&(ch=state.src.charCodeAt(pos),!isSpace(ch))?-1:pos}module.exports=function(state,startLine,endLine,silent){var ch,contentStart,i,indent,indentAfterMarker,initial,isOrdered,itemLines,l,listLines,listTokIdx,markerCharCode,markerValue,max,nextLine,offset,oldIndent,oldLIndent,oldParentType,oldTShift,oldTight,pos,posAfterMarker,prevEmptyEnd,start,terminate,terminatorRules,token,isTerminatingParagraph=!1,tight=!0;if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(silent&&"paragraph"===state.parentType&&state.tShift[startLine]>=state.blkIndent&&(isTerminatingParagraph=!0),0<=(posAfterMarker=skipOrderedListMarker(state,startLine))){if(isOrdered=!0,start=state.bMarks[startLine]+state.tShift[startLine],markerValue=Number(state.src.substr(start,posAfterMarker-start-1)),isTerminatingParagraph&&1!==markerValue)return!1}else{if(!(0<=(posAfterMarker=skipBulletListMarker(state,startLine))))return!1;isOrdered=!1}if(isTerminatingParagraph&&state.skipSpaces(posAfterMarker)>=state.eMarks[startLine])return!1;if(markerCharCode=state.src.charCodeAt(posAfterMarker-1),silent)return!0;for(listTokIdx=state.tokens.length,isOrdered?(token=state.push("ordered_list_open","ol",1),1!==markerValue&&(token.attrs=[["start",markerValue]])):token=state.push("bullet_list_open","ul",1),token.map=listLines=[startLine,0],token.markup=String.fromCharCode(markerCharCode),nextLine=startLine,prevEmptyEnd=!1,terminatorRules=state.md.block.ruler.getRules("list"),oldParentType=state.parentType,state.parentType="list";nextLine<endLine;){for(pos=posAfterMarker,max=state.eMarks[nextLine],initial=offset=state.sCount[nextLine]+posAfterMarker-(state.bMarks[startLine]+state.tShift[startLine]);pos<max;){if(9===(ch=state.src.charCodeAt(pos)))offset+=4-(offset+state.bsCount[nextLine])%4;else{if(32!==ch)break;offset++}pos++}if(4<(indentAfterMarker=max<=(contentStart=pos)?1:offset-initial)&&(indentAfterMarker=1),indent=initial+indentAfterMarker,(token=state.push("list_item_open","li",1)).markup=String.fromCharCode(markerCharCode),token.map=itemLines=[startLine,0],oldIndent=state.blkIndent,oldTight=state.tight,oldTShift=state.tShift[startLine],oldLIndent=state.sCount[startLine],state.blkIndent=indent,state.tight=!0,state.tShift[startLine]=contentStart-state.bMarks[startLine],state.sCount[startLine]=offset,max<=contentStart&&state.isEmpty(startLine+1)?state.line=Math.min(state.line+2,endLine):state.md.block.tokenize(state,startLine,endLine,!0),state.tight&&!prevEmptyEnd||(tight=!1),prevEmptyEnd=1<state.line-startLine&&state.isEmpty(state.line-1),state.blkIndent=oldIndent,state.tShift[startLine]=oldTShift,state.sCount[startLine]=oldLIndent,state.tight=oldTight,(token=state.push("list_item_close","li",-1)).markup=String.fromCharCode(markerCharCode),nextLine=startLine=state.line,itemLines[1]=nextLine,contentStart=state.bMarks[startLine],endLine<=nextLine)break;if(state.sCount[nextLine]<state.blkIndent)break;for(terminate=!1,i=0,l=terminatorRules.length;i<l;i++)if(terminatorRules[i](state,nextLine,endLine,!0)){terminate=!0;break}if(terminate)break;if(isOrdered){if((posAfterMarker=skipOrderedListMarker(state,nextLine))<0)break}else if((posAfterMarker=skipBulletListMarker(state,nextLine))<0)break;if(markerCharCode!==state.src.charCodeAt(posAfterMarker-1))break}return(token=isOrdered?state.push("ordered_list_close","ol",-1):state.push("bullet_list_close","ul",-1)).markup=String.fromCharCode(markerCharCode),listLines[1]=nextLine,state.line=nextLine,state.parentType=oldParentType,tight&&function(state,idx){var i,l,level=state.level+2;for(i=idx+2,l=state.tokens.length-2;i<l;i++)state.tokens[i].level===level&&"paragraph_open"===state.tokens[i].type&&(state.tokens[i+2].hidden=!0,state.tokens[i].hidden=!0,i+=2)}(state,listTokIdx),!0}},{"../common/utils":143}],165:[function(require,module,exports){"use strict";module.exports=function(state,startLine){var content,terminate,i,l,token,oldParentType,nextLine=startLine+1,terminatorRules=state.md.block.ruler.getRules("paragraph"),endLine=state.lineMax;for(oldParentType=state.parentType,state.parentType="paragraph";nextLine<endLine&&!state.isEmpty(nextLine);nextLine++)if(!(3<state.sCount[nextLine]-state.blkIndent||state.sCount[nextLine]<0)){for(terminate=!1,i=0,l=terminatorRules.length;i<l;i++)if(terminatorRules[i](state,nextLine,endLine,!0)){terminate=!0;break}if(terminate)break}return content=state.getLines(startLine,nextLine,state.blkIndent,!1).trim(),state.line=nextLine,(token=state.push("paragraph_open","p",1)).map=[startLine,state.line],(token=state.push("inline","",0)).content=content,token.map=[startLine,state.line],token.children=[],token=state.push("paragraph_close","p",-1),state.parentType=oldParentType,!0}},{}],166:[function(require,module,exports){"use strict";var normalizeReference=require("../common/utils").normalizeReference,isSpace=require("../common/utils").isSpace;module.exports=function(state,startLine,_endLine,silent){var ch,destEndPos,destEndLineNo,endLine,href,i,l,label,labelEnd,oldParentType,res,start,str,terminate,terminatorRules,title,lines=0,pos=state.bMarks[startLine]+state.tShift[startLine],max=state.eMarks[startLine],nextLine=startLine+1;if(4<=state.sCount[startLine]-state.blkIndent)return!1;if(91!==state.src.charCodeAt(pos))return!1;for(;++pos<max;)if(93===state.src.charCodeAt(pos)&&92!==state.src.charCodeAt(pos-1)){if(pos+1===max)return!1;if(58!==state.src.charCodeAt(pos+1))return!1;break}for(endLine=state.lineMax,terminatorRules=state.md.block.ruler.getRules("reference"),oldParentType=state.parentType,state.parentType="reference";nextLine<endLine&&!state.isEmpty(nextLine);nextLine++)if(!(3<state.sCount[nextLine]-state.blkIndent||state.sCount[nextLine]<0)){for(terminate=!1,i=0,l=terminatorRules.length;i<l;i++)if(terminatorRules[i](state,nextLine,endLine,!0)){terminate=!0;break}if(terminate)break}for(max=(str=state.getLines(startLine,nextLine,state.blkIndent,!1).trim()).length,pos=1;pos<max;pos++){if(91===(ch=str.charCodeAt(pos)))return!1;if(93===ch){labelEnd=pos;break}10===ch?lines++:92===ch&&++pos<max&&10===str.charCodeAt(pos)&&lines++}if(labelEnd<0||58!==str.charCodeAt(labelEnd+1))return!1;for(pos=labelEnd+2;pos<max;pos++)if(10===(ch=str.charCodeAt(pos)))lines++;else if(!isSpace(ch))break;if(!(res=state.md.helpers.parseLinkDestination(str,pos,max)).ok)return!1;if(href=state.md.normalizeLink(res.str),!state.md.validateLink(href))return!1;for(pos=res.pos,destEndLineNo=lines+=res.lines,start=destEndPos=pos;pos<max;pos++)if(10===(ch=str.charCodeAt(pos)))lines++;else if(!isSpace(ch))break;for(res=state.md.helpers.parseLinkTitle(str,pos,max),pos<max&&start!==pos&&res.ok?(title=res.str,pos=res.pos,lines+=res.lines):(title="",pos=destEndPos,lines=destEndLineNo);pos<max&&(ch=str.charCodeAt(pos),isSpace(ch));)pos++;if(pos<max&&10!==str.charCodeAt(pos)&&title)for(title="",pos=destEndPos,lines=destEndLineNo;pos<max&&(ch=str.charCodeAt(pos),isSpace(ch));)pos++;return!(pos<max&&10!==str.charCodeAt(pos))&&(!!(label=normalizeReference(str.slice(1,labelEnd)))&&(silent||(void 0===state.env.references&&(state.env.references={}),void 0===state.env.references[label]&&(state.env.references[label]={title:title,href:href}),state.parentType=oldParentType,state.line=startLine+lines+1),!0))}},{"../common/utils":143}],167:[function(require,module,exports){"use strict";var Token=require("../token"),isSpace=require("../common/utils").isSpace;function StateBlock(src,md,env,tokens){var ch,s,start,pos,len,indent,offset,indent_found;for(this.src=src,this.md=md,this.env=env,this.tokens=tokens,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.parentType="root",this.level=0,this.result="",indent_found=!1,start=pos=indent=offset=0,len=(s=this.src).length;pos<len;pos++){if(ch=s.charCodeAt(pos),!indent_found){if(isSpace(ch)){indent++,9===ch?offset+=4-offset%4:offset++;continue}indent_found=!0}10!==ch&&pos!==len-1||(10!==ch&&pos++,this.bMarks.push(start),this.eMarks.push(pos),this.tShift.push(indent),this.sCount.push(offset),this.bsCount.push(0),indent_found=!1,offset=indent=0,start=pos+1)}this.bMarks.push(s.length),this.eMarks.push(s.length),this.tShift.push(0),this.sCount.push(0),this.bsCount.push(0),this.lineMax=this.bMarks.length-1}StateBlock.prototype.push=function(type,tag,nesting){var token=new Token(type,tag,nesting);return token.block=!0,nesting<0&&this.level--,token.level=this.level,0<nesting&&this.level++,this.tokens.push(token),token},StateBlock.prototype.isEmpty=function(line){return this.bMarks[line]+this.tShift[line]>=this.eMarks[line]},StateBlock.prototype.skipEmptyLines=function(from){for(var max=this.lineMax;from<max&&!(this.bMarks[from]+this.tShift[from]<this.eMarks[from]);from++);return from},StateBlock.prototype.skipSpaces=function(pos){for(var ch,max=this.src.length;pos<max&&(ch=this.src.charCodeAt(pos),isSpace(ch));pos++);return pos},StateBlock.prototype.skipSpacesBack=function(pos,min){if(pos<=min)return pos;for(;min<pos;)if(!isSpace(this.src.charCodeAt(--pos)))return pos+1;return pos},StateBlock.prototype.skipChars=function(pos,code){for(var max=this.src.length;pos<max&&this.src.charCodeAt(pos)===code;pos++);return pos},StateBlock.prototype.skipCharsBack=function(pos,code,min){if(pos<=min)return pos;for(;min<pos;)if(code!==this.src.charCodeAt(--pos))return pos+1;return pos},StateBlock.prototype.getLines=function(begin,end,indent,keepLastLF){var i,lineIndent,ch,first,last,queue,lineStart,line=begin;if(end<=begin)return"";for(queue=new Array(end-begin),i=0;line<end;line++,i++){for(lineIndent=0,lineStart=first=this.bMarks[line],last=line+1<end||keepLastLF?this.eMarks[line]+1:this.eMarks[line];first<last&&lineIndent<indent;){if(ch=this.src.charCodeAt(first),isSpace(ch))9===ch?lineIndent+=4-(lineIndent+this.bsCount[line])%4:lineIndent++;else{if(!(first-lineStart<this.tShift[line]))break;lineIndent++}first++}queue[i]=indent<lineIndent?new Array(lineIndent-indent+1).join(" ")+this.src.slice(first,last):this.src.slice(first,last)}return queue.join("")},StateBlock.prototype.Token=Token,module.exports=StateBlock},{"../common/utils":143,"../token":190}],168:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;function getLine(state,line){var pos=state.bMarks[line]+state.blkIndent,max=state.eMarks[line];return state.src.substr(pos,max-pos)}function escapedSplit(str){var ch,result=[],pos=0,max=str.length,escapes=0,lastPos=0,backTicked=!1,lastBackTick=0;for(ch=str.charCodeAt(pos);pos<max;)96===ch?backTicked?(backTicked=!1,lastBackTick=pos):escapes%2==0&&(backTicked=!0,lastBackTick=pos):124!==ch||escapes%2!=0||backTicked||(result.push(str.substring(lastPos,pos)),lastPos=pos+1),92===ch?escapes++:escapes=0,++pos===max&&backTicked&&(backTicked=!1,pos=lastBackTick+1),ch=str.charCodeAt(pos);return result.push(str.substring(lastPos)),result}module.exports=function(state,startLine,endLine,silent){var ch,lineText,pos,i,nextLine,columns,columnCount,token,aligns,t,tableLines,tbodyLines;if(endLine<startLine+2)return!1;if(nextLine=startLine+1,state.sCount[nextLine]<state.blkIndent)return!1;if(4<=state.sCount[nextLine]-state.blkIndent)return!1;if((pos=state.bMarks[nextLine]+state.tShift[nextLine])>=state.eMarks[nextLine])return!1;if(124!==(ch=state.src.charCodeAt(pos++))&&45!==ch&&58!==ch)return!1;for(;pos<state.eMarks[nextLine];){if(124!==(ch=state.src.charCodeAt(pos))&&45!==ch&&58!==ch&&!isSpace(ch))return!1;pos++}for(columns=(lineText=getLine(state,startLine+1)).split("|"),aligns=[],i=0;i<columns.length;i++){if(!(t=columns[i].trim())){if(0===i||i===columns.length-1)continue;return!1}if(!/^:?-+:?$/.test(t))return!1;58===t.charCodeAt(t.length-1)?aligns.push(58===t.charCodeAt(0)?"center":"right"):58===t.charCodeAt(0)?aligns.push("left"):aligns.push("")}if(-1===(lineText=getLine(state,startLine).trim()).indexOf("|"))return!1;if(4<=state.sCount[startLine]-state.blkIndent)return!1;if((columnCount=(columns=escapedSplit(lineText.replace(/^\||\|$/g,""))).length)>aligns.length)return!1;if(silent)return!0;for((token=state.push("table_open","table",1)).map=tableLines=[startLine,0],(token=state.push("thead_open","thead",1)).map=[startLine,startLine+1],(token=state.push("tr_open","tr",1)).map=[startLine,startLine+1],i=0;i<columns.length;i++)(token=state.push("th_open","th",1)).map=[startLine,startLine+1],aligns[i]&&(token.attrs=[["style","text-align:"+aligns[i]]]),(token=state.push("inline","",0)).content=columns[i].trim(),token.map=[startLine,startLine+1],token.children=[],token=state.push("th_close","th",-1);for(token=state.push("tr_close","tr",-1),token=state.push("thead_close","thead",-1),(token=state.push("tbody_open","tbody",1)).map=tbodyLines=[startLine+2,0],nextLine=startLine+2;nextLine<endLine&&!(state.sCount[nextLine]<state.blkIndent)&&-1!==(lineText=getLine(state,nextLine).trim()).indexOf("|")&&!(4<=state.sCount[nextLine]-state.blkIndent);nextLine++){for(columns=escapedSplit(lineText.replace(/^\||\|$/g,"")),token=state.push("tr_open","tr",1),i=0;i<columnCount;i++)token=state.push("td_open","td",1),aligns[i]&&(token.attrs=[["style","text-align:"+aligns[i]]]),(token=state.push("inline","",0)).content=columns[i]?columns[i].trim():"",token.children=[],token=state.push("td_close","td",-1);token=state.push("tr_close","tr",-1)}return token=state.push("tbody_close","tbody",-1),token=state.push("table_close","table",-1),tableLines[1]=tbodyLines[1]=nextLine,state.line=nextLine,!0}},{"../common/utils":143}],169:[function(require,module,exports){"use strict";module.exports=function(state){var token;state.inlineMode?((token=new state.Token("inline","",0)).content=state.src,token.map=[0,1],token.children=[],state.tokens.push(token)):state.md.block.parse(state.src,state.md,state.env,state.tokens)}},{}],170:[function(require,module,exports){"use strict";module.exports=function(state){var tok,i,l,tokens=state.tokens;for(i=0,l=tokens.length;i<l;i++)"inline"===(tok=tokens[i]).type&&state.md.inline.parse(tok.content,state.md,state.env,tok.children)}},{}],171:[function(require,module,exports){"use strict";var arrayReplaceAt=require("../common/utils").arrayReplaceAt;function isLinkClose(str){return/^<\/a\s*>/i.test(str)}module.exports=function(state){var i,j,l,tokens,token,currentToken,nodes,ln,text,pos,lastPos,level,htmlLinkLevel,url,fullUrl,urlText,links,str,blockTokens=state.tokens;if(state.md.options.linkify)for(j=0,l=blockTokens.length;j<l;j++)if("inline"===blockTokens[j].type&&state.md.linkify.pretest(blockTokens[j].content))for(htmlLinkLevel=0,i=(tokens=blockTokens[j].children).length-1;0<=i;i--)if("link_close"!==(currentToken=tokens[i]).type){if("html_inline"===currentToken.type&&(str=currentToken.content,/^<a[>\s]/i.test(str)&&0<htmlLinkLevel&&htmlLinkLevel--,isLinkClose(currentToken.content)&&htmlLinkLevel++),!(0<htmlLinkLevel)&&"text"===currentToken.type&&state.md.linkify.test(currentToken.content)){for(text=currentToken.content,links=state.md.linkify.match(text),nodes=[],level=currentToken.level,ln=lastPos=0;ln<links.length;ln++)url=links[ln].url,fullUrl=state.md.normalizeLink(url),state.md.validateLink(fullUrl)&&(urlText=links[ln].text,urlText=links[ln].schema?"mailto:"!==links[ln].schema||/^mailto:/i.test(urlText)?state.md.normalizeLinkText(urlText):state.md.normalizeLinkText("mailto:"+urlText).replace(/^mailto:/,""):state.md.normalizeLinkText("http://"+urlText).replace(/^http:\/\//,""),lastPos<(pos=links[ln].index)&&((token=new state.Token("text","",0)).content=text.slice(lastPos,pos),token.level=level,nodes.push(token)),(token=new state.Token("link_open","a",1)).attrs=[["href",fullUrl]],token.level=level++,token.markup="linkify",token.info="auto",nodes.push(token),(token=new state.Token("text","",0)).content=urlText,token.level=level,nodes.push(token),(token=new state.Token("link_close","a",-1)).level=--level,token.markup="linkify",token.info="auto",nodes.push(token),lastPos=links[ln].lastIndex);lastPos<text.length&&((token=new state.Token("text","",0)).content=text.slice(lastPos),token.level=level,nodes.push(token)),blockTokens[j].children=tokens=arrayReplaceAt(tokens,i,nodes)}}else for(i--;tokens[i].level!==currentToken.level&&"link_open"!==tokens[i].type;)i--}},{"../common/utils":143}],172:[function(require,module,exports){"use strict";var NEWLINES_RE=/\r[\n\u0085]?|[\u2424\u2028\u0085]/g,NULL_RE=/\u0000/g;module.exports=function(state){var str;str=(str=state.src.replace(NEWLINES_RE,"\n")).replace(NULL_RE,"<22>"),state.src=str}},{}],173:[function(require,module,exports){"use strict";var RARE_RE=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,SCOPED_ABBR_TEST_RE=/\((c|tm|r|p)\)/i,SCOPED_ABBR_RE=/\((c|tm|r|p)\)/gi,SCOPED_ABBR={c:"©",r:"®",p:"§",tm:"™"};function replaceFn(match,name){return SCOPED_ABBR[name.toLowerCase()]}function replace_scoped(inlineTokens){var i,token,inside_autolink=0;for(i=inlineTokens.length-1;0<=i;i--)"text"!==(token=inlineTokens[i]).type||inside_autolink||(token.content=token.content.replace(SCOPED_ABBR_RE,replaceFn)),"link_open"===token.type&&"auto"===token.info&&inside_autolink--,"link_close"===token.type&&"auto"===token.info&&inside_autolink++}function replace_rare(inlineTokens){var i,token,inside_autolink=0;for(i=inlineTokens.length-1;0<=i;i--)"text"!==(token=inlineTokens[i]).type||inside_autolink||RARE_RE.test(token.content)&&(token.content=token.content.replace(/\+-/g,"±").replace(/\.{2,}/g,"…").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---([^-]|$)/gm,"$1—$2").replace(/(^|\s)--(\s|$)/gm,"$1$2").replace(/(^|[^-\s])--([^-\s]|$)/gm,"$1$2")),"link_open"===token.type&&"auto"===token.info&&inside_autolink--,"link_close"===token.type&&"auto"===token.info&&inside_autolink++}module.exports=function(state){var blkIdx;if(state.md.options.typographer)for(blkIdx=state.tokens.length-1;0<=blkIdx;blkIdx--)"inline"===state.tokens[blkIdx].type&&(SCOPED_ABBR_TEST_RE.test(state.tokens[blkIdx].content)&&replace_scoped(state.tokens[blkIdx].children),RARE_RE.test(state.tokens[blkIdx].content)&&replace_rare(state.tokens[blkIdx].children))}},{}],174:[function(require,module,exports){"use strict";var isWhiteSpace=require("../common/utils").isWhiteSpace,isPunctChar=require("../common/utils").isPunctChar,isMdAsciiPunct=require("../common/utils").isMdAsciiPunct,QUOTE_TEST_RE=/['"]/,QUOTE_RE=/['"]/g,APOSTROPHE="";function replaceAt(str,index,ch){return str.substr(0,index)+ch+str.substr(index+1)}function process_inlines(tokens,state){var i,token,text,t,pos,max,thisLevel,item,lastChar,nextChar,isLastPunctChar,isNextPunctChar,isLastWhiteSpace,isNextWhiteSpace,canOpen,canClose,j,isSingle,stack,openQuote,closeQuote;for(stack=[],i=0;i<tokens.length;i++){for(token=tokens[i],thisLevel=tokens[i].level,j=stack.length-1;0<=j&&!(stack[j].level<=thisLevel);j--);if(stack.length=j+1,"text"===token.type){pos=0,max=(text=token.content).length;OUTER:for(;pos<max&&(QUOTE_RE.lastIndex=pos,t=QUOTE_RE.exec(text));){if(canOpen=canClose=!0,pos=t.index+1,isSingle="'"===t[0],lastChar=32,0<=t.index-1)lastChar=text.charCodeAt(t.index-1);else for(j=i-1;0<=j&&("softbreak"!==tokens[j].type&&"hardbreak"!==tokens[j].type);j--)if("text"===tokens[j].type){lastChar=tokens[j].content.charCodeAt(tokens[j].content.length-1);break}if(nextChar=32,pos<max)nextChar=text.charCodeAt(pos);else for(j=i+1;j<tokens.length&&("softbreak"!==tokens[j].type&&"hardbreak"!==tokens[j].type);j++)if("text"===tokens[j].type){nextChar=tokens[j].content.charCodeAt(0);break}if(isLastPunctChar=isMdAsciiPunct(lastChar)||isPunctChar(String.fromCharCode(lastChar)),isNextPunctChar=isMdAsciiPunct(nextChar)||isPunctChar(String.fromCharCode(nextChar)),isLastWhiteSpace=isWhiteSpace(lastChar),(isNextWhiteSpace=isWhiteSpace(nextChar))?canOpen=!1:isNextPunctChar&&(isLastWhiteSpace||isLastPunctChar||(canOpen=!1)),isLastWhiteSpace?canClose=!1:isLastPunctChar&&(isNextWhiteSpace||isNextPunctChar||(canClose=!1)),34===nextChar&&'"'===t[0]&&48<=lastChar&&lastChar<=57&&(canClose=canOpen=!1),canOpen&&canClose&&(canOpen=!1,canClose=isNextPunctChar),canOpen||canClose){if(canClose)for(j=stack.length-1;0<=j&&(item=stack[j],!(stack[j].level<thisLevel));j--)if(item.single===isSingle&&stack[j].level===thisLevel){item=stack[j],closeQuote=isSingle?(openQuote=state.md.options.quotes[2],state.md.options.quotes[3]):(openQuote=state.md.options.quotes[0],state.md.options.quotes[1]),token.content=replaceAt(token.content,t.index,closeQuote),tokens[item.token].content=replaceAt(tokens[item.token].content,item.pos,openQuote),pos+=closeQuote.length-1,item.token===i&&(pos+=openQuote.length-1),max=(text=token.content).length,stack.length=j;continue OUTER}canOpen?stack.push({token:i,pos:t.index,single:isSingle,level:thisLevel}):canClose&&isSingle&&(token.content=replaceAt(token.content,t.index,APOSTROPHE))}else isSingle&&(token.content=replaceAt(token.content,t.index,APOSTROPHE))}}}}module.exports=function(state){var blkIdx;if(state.md.options.typographer)for(blkIdx=state.tokens.length-1;0<=blkIdx;blkIdx--)"inline"===state.tokens[blkIdx].type&&QUOTE_TEST_RE.test(state.tokens[blkIdx].content)&&process_inlines(state.tokens[blkIdx].children,state)}},{"../common/utils":143}],175:[function(require,module,exports){"use strict";var Token=require("../token");function StateCore(src,md,env){this.src=src,this.env=env,this.tokens=[],this.inlineMode=!1,this.md=md}StateCore.prototype.Token=Token,module.exports=StateCore},{"../token":190}],176:[function(require,module,exports){"use strict";var EMAIL_RE=/^<([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)>/,AUTOLINK_RE=/^<([a-zA-Z][a-zA-Z0-9+.\-]{1,31}):([^<>\x00-\x20]*)>/;module.exports=function(state,silent){var tail,linkMatch,emailMatch,url,fullUrl,token,pos=state.pos;return 60===state.src.charCodeAt(pos)&&(!((tail=state.src.slice(pos)).indexOf(">")<0)&&(AUTOLINK_RE.test(tail)?(url=(linkMatch=tail.match(AUTOLINK_RE))[0].slice(1,-1),fullUrl=state.md.normalizeLink(url),!!state.md.validateLink(fullUrl)&&(silent||((token=state.push("link_open","a",1)).attrs=[["href",fullUrl]],token.markup="autolink",token.info="auto",(token=state.push("text","",0)).content=state.md.normalizeLinkText(url),(token=state.push("link_close","a",-1)).markup="autolink",token.info="auto"),state.pos+=linkMatch[0].length,!0)):!!EMAIL_RE.test(tail)&&(url=(emailMatch=tail.match(EMAIL_RE))[0].slice(1,-1),fullUrl=state.md.normalizeLink("mailto:"+url),!!state.md.validateLink(fullUrl)&&(silent||((token=state.push("link_open","a",1)).attrs=[["href",fullUrl]],token.markup="autolink",token.info="auto",(token=state.push("text","",0)).content=state.md.normalizeLinkText(url),(token=state.push("link_close","a",-1)).markup="autolink",token.info="auto"),state.pos+=emailMatch[0].length,!0))))}},{}],177:[function(require,module,exports){"use strict";module.exports=function(state,silent){var start,max,marker,matchStart,matchEnd,token,pos=state.pos;if(96!==state.src.charCodeAt(pos))return!1;for(start=pos,pos++,max=state.posMax;pos<max&&96===state.src.charCodeAt(pos);)pos++;for(marker=state.src.slice(start,pos),matchStart=matchEnd=pos;-1!==(matchStart=state.src.indexOf("`",matchEnd));){for(matchEnd=matchStart+1;matchEnd<max&&96===state.src.charCodeAt(matchEnd);)matchEnd++;if(matchEnd-matchStart===marker.length)return silent||((token=state.push("code_inline","code",0)).markup=marker,token.content=state.src.slice(pos,matchStart).replace(/[ \n]+/g," ").trim()),state.pos=matchEnd,!0}return silent||(state.pending+=marker),state.pos+=marker.length,!0}},{}],178:[function(require,module,exports){"use strict";module.exports=function(state){var i,j,lastDelim,currDelim,delimiters=state.delimiters,max=state.delimiters.length;for(i=0;i<max;i++)if((lastDelim=delimiters[i]).close)for(j=i-lastDelim.jump-1;0<=j;){if((currDelim=delimiters[j]).open&&currDelim.marker===lastDelim.marker&&currDelim.end<0&&currDelim.level===lastDelim.level)if(!((currDelim.close||lastDelim.open)&&void 0!==currDelim.length&&void 0!==lastDelim.length&&(currDelim.length+lastDelim.length)%3==0)){lastDelim.jump=i-j,lastDelim.open=!1,currDelim.end=i,currDelim.jump=0;break}j-=currDelim.jump+1}}},{}],179:[function(require,module,exports){"use strict";module.exports.tokenize=function(state,silent){var i,scanned,start=state.pos,marker=state.src.charCodeAt(start);if(silent)return!1;if(95!==marker&&42!==marker)return!1;for(scanned=state.scanDelims(state.pos,42===marker),i=0;i<scanned.length;i++)state.push("text","",0).content=String.fromCharCode(marker),state.delimiters.push({marker:marker,length:scanned.length,jump:i,token:state.tokens.length-1,level:state.level,end:-1,open:scanned.can_open,close:scanned.can_close});return state.pos+=scanned.length,!0},module.exports.postProcess=function(state){var i,startDelim,endDelim,token,ch,isStrong,delimiters=state.delimiters;for(i=state.delimiters.length-1;0<=i;i--)95!==(startDelim=delimiters[i]).marker&&42!==startDelim.marker||-1!==startDelim.end&&(endDelim=delimiters[startDelim.end],isStrong=0<i&&delimiters[i-1].end===startDelim.end+1&&delimiters[i-1].token===startDelim.token-1&&delimiters[startDelim.end+1].token===endDelim.token+1&&delimiters[i-1].marker===startDelim.marker,ch=String.fromCharCode(startDelim.marker),(token=state.tokens[startDelim.token]).type=isStrong?"strong_open":"em_open",token.tag=isStrong?"strong":"em",token.nesting=1,token.markup=isStrong?ch+ch:ch,token.content="",(token=state.tokens[endDelim.token]).type=isStrong?"strong_close":"em_close",token.tag=isStrong?"strong":"em",token.nesting=-1,token.markup=isStrong?ch+ch:ch,token.content="",isStrong&&(state.tokens[delimiters[i-1].token].content="",state.tokens[delimiters[startDelim.end+1].token].content="",i--))}},{}],180:[function(require,module,exports){"use strict";var entities=require("../common/entities"),has=require("../common/utils").has,isValidEntityCode=require("../common/utils").isValidEntityCode,fromCodePoint=require("../common/utils").fromCodePoint,DIGITAL_RE=/^&#((?:x[a-f0-9]{1,8}|[0-9]{1,8}));/i,NAMED_RE=/^&([a-z][a-z0-9]{1,31});/i;module.exports=function(state,silent){var code,match,pos=state.pos,max=state.posMax;if(38!==state.src.charCodeAt(pos))return!1;if(pos+1<max)if(35===state.src.charCodeAt(pos+1)){if(match=state.src.slice(pos).match(DIGITAL_RE))return silent||(code="x"===match[1][0].toLowerCase()?parseInt(match[1].slice(1),16):parseInt(match[1],10),state.pending+=isValidEntityCode(code)?fromCodePoint(code):fromCodePoint(65533)),state.pos+=match[0].length,!0}else if((match=state.src.slice(pos).match(NAMED_RE))&&has(entities,match[1]))return silent||(state.pending+=entities[match[1]]),state.pos+=match[0].length,!0;return silent||(state.pending+="&"),state.pos++,!0}},{"../common/entities":140,"../common/utils":143}],181:[function(require,module,exports){"use strict";for(var isSpace=require("../common/utils").isSpace,ESCAPED=[],i=0;i<256;i++)ESCAPED.push(0);"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(ch){ESCAPED[ch.charCodeAt(0)]=1}),module.exports=function(state,silent){var ch,pos=state.pos,max=state.posMax;if(92!==state.src.charCodeAt(pos))return!1;if(++pos<max){if((ch=state.src.charCodeAt(pos))<256&&0!==ESCAPED[ch])return silent||(state.pending+=state.src[pos]),state.pos+=2,!0;if(10===ch){for(silent||state.push("hardbreak","br",0),pos++;pos<max&&(ch=state.src.charCodeAt(pos),isSpace(ch));)pos++;return state.pos=pos,!0}}return silent||(state.pending+="\\"),state.pos++,!0}},{"../common/utils":143}],182:[function(require,module,exports){"use strict";var HTML_TAG_RE=require("../common/html_re").HTML_TAG_RE;module.exports=function(state,silent){var ch,match,max,pos=state.pos;return!!state.md.options.html&&(max=state.posMax,!(60!==state.src.charCodeAt(pos)||max<=pos+2)&&(!(33!==(ch=state.src.charCodeAt(pos+1))&&63!==ch&&47!==ch&&!function(ch){var lc=32|ch;return 97<=lc&&lc<=122}(ch))&&(!!(match=state.src.slice(pos).match(HTML_TAG_RE))&&(silent||(state.push("html_inline","",0).content=state.src.slice(pos,pos+match[0].length)),state.pos+=match[0].length,!0))))}},{"../common/html_re":142}],183:[function(require,module,exports){"use strict";var normalizeReference=require("../common/utils").normalizeReference,isSpace=require("../common/utils").isSpace;module.exports=function(state,silent){var attrs,code,content,label,labelEnd,labelStart,pos,ref,res,title,token,tokens,start,href="",oldPos=state.pos,max=state.posMax;if(33!==state.src.charCodeAt(state.pos))return!1;if(91!==state.src.charCodeAt(state.pos+1))return!1;if(labelStart=state.pos+2,(labelEnd=state.md.helpers.parseLinkLabel(state,state.pos+1,!1))<0)return!1;if((pos=labelEnd+1)<max&&40===state.src.charCodeAt(pos)){for(pos++;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);if(max<=pos)return!1;for(start=pos,(res=state.md.helpers.parseLinkDestination(state.src,pos,state.posMax)).ok&&(href=state.md.normalizeLink(res.str),state.md.validateLink(href)?pos=res.pos:href=""),start=pos;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);if(res=state.md.helpers.parseLinkTitle(state.src,pos,state.posMax),pos<max&&start!==pos&&res.ok)for(title=res.str,pos=res.pos;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);else title="";if(max<=pos||41!==state.src.charCodeAt(pos))return state.pos=oldPos,!1;pos++}else{if(void 0===state.env.references)return!1;if(pos<max&&91===state.src.charCodeAt(pos)?(start=pos+1,0<=(pos=state.md.helpers.parseLinkLabel(state,pos))?label=state.src.slice(start,pos++):pos=labelEnd+1):pos=labelEnd+1,label||(label=state.src.slice(labelStart,labelEnd)),!(ref=state.env.references[normalizeReference(label)]))return state.pos=oldPos,!1;href=ref.href,title=ref.title}return silent||(content=state.src.slice(labelStart,labelEnd),state.md.inline.parse(content,state.md,state.env,tokens=[]),(token=state.push("image","img",0)).attrs=attrs=[["src",href],["alt",""]],token.children=tokens,token.content=content,title&&attrs.push(["title",title])),state.pos=pos,state.posMax=max,!0}},{"../common/utils":143}],184:[function(require,module,exports){"use strict";var normalizeReference=require("../common/utils").normalizeReference,isSpace=require("../common/utils").isSpace;module.exports=function(state,silent){var attrs,code,label,labelEnd,labelStart,pos,res,ref,title,href="",oldPos=state.pos,max=state.posMax,start=state.pos,parseReference=!0;if(91!==state.src.charCodeAt(state.pos))return!1;if(labelStart=state.pos+1,(labelEnd=state.md.helpers.parseLinkLabel(state,state.pos,!0))<0)return!1;if((pos=labelEnd+1)<max&&40===state.src.charCodeAt(pos)){for(parseReference=!1,pos++;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);if(max<=pos)return!1;for(start=pos,(res=state.md.helpers.parseLinkDestination(state.src,pos,state.posMax)).ok&&(href=state.md.normalizeLink(res.str),state.md.validateLink(href)?pos=res.pos:href=""),start=pos;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);if(res=state.md.helpers.parseLinkTitle(state.src,pos,state.posMax),pos<max&&start!==pos&&res.ok)for(title=res.str,pos=res.pos;pos<max&&(code=state.src.charCodeAt(pos),isSpace(code)||10===code);pos++);else title="";(max<=pos||41!==state.src.charCodeAt(pos))&&(parseReference=!0),pos++}if(parseReference){if(void 0===state.env.references)return!1;if(pos<max&&91===state.src.charCodeAt(pos)?(start=pos+1,0<=(pos=state.md.helpers.parseLinkLabel(state,pos))?label=state.src.slice(start,pos++):pos=labelEnd+1):pos=labelEnd+1,label||(label=state.src.slice(labelStart,labelEnd)),!(ref=state.env.references[normalizeReference(label)]))return state.pos=oldPos,!1;href=ref.href,title=ref.title}return silent||(state.pos=labelStart,state.posMax=labelEnd,state.push("link_open","a",1).attrs=attrs=[["href",href]],title&&attrs.push(["title",title]),state.md.inline.tokenize(state),state.push("link_close","a",-1)),state.pos=pos,state.posMax=max,!0}},{"../common/utils":143}],185:[function(require,module,exports){"use strict";var isSpace=require("../common/utils").isSpace;module.exports=function(state,silent){var pmax,max,pos=state.pos;if(10!==state.src.charCodeAt(pos))return!1;for(pmax=state.pending.length-1,max=state.posMax,silent||(0<=pmax&&32===state.pending.charCodeAt(pmax)?1<=pmax&&32===state.pending.charCodeAt(pmax-1)?(state.pending=state.pending.replace(/ +$/,""),state.push("hardbreak","br",0)):(state.pending=state.pending.slice(0,-1),state.push("softbreak","br",0)):state.push("softbreak","br",0)),pos++;pos<max&&isSpace(state.src.charCodeAt(pos));)pos++;return state.pos=pos,!0}},{"../common/utils":143}],186:[function(require,module,exports){"use strict";var Token=require("../token"),isWhiteSpace=require("../common/utils").isWhiteSpace,isPunctChar=require("../common/utils").isPunctChar,isMdAsciiPunct=require("../common/utils").isMdAsciiPunct;function StateInline(src,md,env,outTokens){this.src=src,this.env=env,this.md=md,this.tokens=outTokens,this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[]}StateInline.prototype.pushPending=function(){var token=new Token("text","",0);return token.content=this.pending,token.level=this.pendingLevel,this.tokens.push(token),this.pending="",token},StateInline.prototype.push=function(type,tag,nesting){this.pending&&this.pushPending();var token=new Token(type,tag,nesting);return nesting<0&&this.level--,token.level=this.level,0<nesting&&this.level++,this.pendingLevel=this.level,this.tokens.push(token),token},StateInline.prototype.scanDelims=function(start,canSplitWord){var lastChar,nextChar,count,can_open,can_close,isLastWhiteSpace,isLastPunctChar,isNextWhiteSpace,isNextPunctChar,pos=start,left_flanking=!0,right_flanking=!0,max=this.posMax,marker=this.src.charCodeAt(start);for(lastChar=0<start?this.src.charCodeAt(start-1):32;pos<max&&this.src.charCodeAt(pos)===marker;)pos++;return count=pos-start,nextChar=pos<max?this.src.charCodeAt(pos):32,isLastPunctChar=isMdAsciiPunct(lastChar)||isPunctChar(String.fromCharCode(lastChar)),isNextPunctChar=isMdAsciiPunct(nextChar)||isPunctChar(String.fromCharCode(nextChar)),isLastWhiteSpace=isWhiteSpace(lastChar),(isNextWhiteSpace=isWhiteSpace(nextChar))?left_flanking=!1:isNextPunctChar&&(isLastWhiteSpace||isLastPunctChar||(left_flanking=!1)),isLastWhiteSpace?right_flanking=!1:isLastPunctChar&&(isNextWhiteSpace||isNextPunctChar||(right_flanking=!1)),can_close=canSplitWord?(can_open=left_flanking,right_flanking):(can_open=left_flanking&&(!right_flanking||isLastPunctChar),right_flanking&&(!left_flanking||isNextPunctChar)),{can_open:can_open,can_close:can_close,length:count}},StateInline.prototype.Token=Token,module.exports=StateInline},{"../common/utils":143,"../token":190}],187:[function(require,module,exports){"use strict";module.exports.tokenize=function(state,silent){var i,scanned,len,ch,start=state.pos,marker=state.src.charCodeAt(start);if(silent)return!1;if(126!==marker)return!1;if(len=(scanned=state.scanDelims(state.pos,!0)).length,ch=String.fromCharCode(marker),len<2)return!1;for(len%2&&(state.push("text","",0).content=ch,len--),i=0;i<len;i+=2)state.push("text","",0).content=ch+ch,state.delimiters.push({marker:marker,jump:i,token:state.tokens.length-1,level:state.level,end:-1,open:scanned.can_open,close:scanned.can_close});return state.pos+=scanned.length,!0},module.exports.postProcess=function(state){var i,j,startDelim,endDelim,token,loneMarkers=[],delimiters=state.delimiters,max=state.delimiters.length;for(i=0;i<max;i++)126===(startDelim=delimiters[i]).marker&&-1!==startDelim.end&&(endDelim=delimiters[startDelim.end],(token=state.tokens[startDelim.token]).type="s_open",token.tag="s",token.nesting=1,token.markup="~~",token.content="",(token=state.tokens[endDelim.token]).type="s_close",token.tag="s",token.nesting=-1,token.markup="~~",token.content="","text"===state.tokens[endDelim.token-1].type&&"~"===state.tokens[endDelim.token-1].content&&loneMarkers.push(endDelim.token-1));for(;loneMarkers.length;){for(j=(i=loneMarkers.pop())+1;j<state.tokens.length&&"s_close"===state.tokens[j].type;)j++;i!==--j&&(token=state.tokens[j],state.tokens[j]=state.tokens[i],state.tokens[i]=token)}}},{}],188:[function(require,module,exports){"use strict";function isTerminatorChar(ch){switch(ch){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}module.exports=function(state,silent){for(var pos=state.pos;pos<state.posMax&&!isTerminatorChar(state.src.charCodeAt(pos));)pos++;return pos!==state.pos&&(silent||(state.pending+=state.src.slice(state.pos,pos)),state.pos=pos,!0)}},{}],189:[function(require,module,exports){"use strict";module.exports=function(state){var curr,last,level=0,tokens=state.tokens,max=state.tokens.length;for(curr=last=0;curr<max;curr++)level+=tokens[curr].nesting,tokens[curr].level=level,"text"===tokens[curr].type&&curr+1<max&&"text"===tokens[curr+1].type?tokens[curr+1].content=tokens[curr].content+tokens[curr+1].content:(curr!==last&&(tokens[last]=tokens[curr]),last++);curr!==last&&(tokens.length=last)}},{}],190:[function(require,module,exports){"use strict";function Token(type,tag,nesting){this.type=type,this.tag=tag,this.attrs=null,this.map=null,this.nesting=nesting,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}Token.prototype.attrIndex=function(name){var attrs,i,len;if(!this.attrs)return-1;for(i=0,len=(attrs=this.attrs).length;i<len;i++)if(attrs[i][0]===name)return i;return-1},Token.prototype.attrPush=function(attrData){this.attrs?this.attrs.push(attrData):this.attrs=[attrData]},Token.prototype.attrSet=function(name,value){var idx=this.attrIndex(name),attrData=[name,value];idx<0?this.attrPush(attrData):this.attrs[idx]=attrData},Token.prototype.attrGet=function(name){var idx=this.attrIndex(name),value=null;return 0<=idx&&(value=this.attrs[idx][1]),value},Token.prototype.attrJoin=function(name,value){var idx=this.attrIndex(name);idx<0?this.attrPush([name,value]):this.attrs[idx][1]=this.attrs[idx][1]+" "+value},module.exports=Token},{}],191:[function(require,module,exports){"use strict";var decodeCache={};function decode(string,exclude){var cache;return"string"!=typeof exclude&&(exclude=decode.defaultChars),cache=function(exclude){var i,ch,cache=decodeCache[exclude];if(cache)return cache;for(cache=decodeCache[exclude]=[],i=0;i<128;i++)ch=String.fromCharCode(i),cache.push(ch);for(i=0;i<exclude.length;i++)cache[ch=exclude.charCodeAt(i)]="%"+("0"+ch.toString(16).toUpperCase()).slice(-2);return cache}(exclude),string.replace(/(%[a-f0-9]{2})+/gi,function(seq){var i,l,b1,b2,b3,b4,chr,result="";for(i=0,l=seq.length;i<l;i+=3)(b1=parseInt(seq.slice(i+1,i+3),16))<128?result+=cache[b1]:192==(224&b1)&&i+3<l&&128==(192&(b2=parseInt(seq.slice(i+4,i+6),16)))?(result+=(chr=b1<<6&1984|63&b2)<128?"<22><>":String.fromCharCode(chr),i+=3):224==(240&b1)&&i+6<l&&(b2=parseInt(seq.slice(i+4,i+6),16),b3=parseInt(seq.slice(i+7,i+9),16),128==(192&b2)&&128==(192&b3))?(result+=(chr=b1<<12&61440|b2<<6&4032|63&b3)<2048||55296<=chr&&chr<=57343?"<22><><EFBFBD>":String.fromCharCode(chr),i+=6):240==(248&b1)&&i+9<l&&(b2=parseInt(seq.slice(i+4,i+6),16),b3=parseInt(seq.slice(i+7,i+9),16),b4=parseInt(seq.slice(i+10,i+12),16),128==(192&b2)&&128==(192&b3)&&128==(192&b4))?((chr=b1<<18&1835008|b2<<12&258048|b3<<6&4032|63&b4)<65536||1114111<chr?result+="<22><><EFBFBD><EFBFBD>":(chr-=65536,result+=String.fromCharCode(55296+(chr>>10),56320+(1023&chr))),i+=9):result+="<22>";return result})}decode.defaultChars=";/?:@&=+$,#",decode.componentChars="",module.exports=decode},{}],192:[function(require,module,exports){"use strict";var encodeCache={};function encode(string,exclude,keepEscaped){var i,l,code,nextCode,cache,result="";for("string"!=typeof exclude&&(keepEscaped=exclude,exclude=encode.defaultChars),void 0===keepEscaped&&(keepEscaped=!0),cache=function(exclude){var i,ch,cache=encodeCache[exclude];if(cache)return cache;for(cache=encodeCache[exclude]=[],i=0;i<128;i++)ch=String.fromCharCode(i),/^[0-9a-z]$/i.test(ch)?cache.push(ch):cache.push("%"+("0"+i.toString(16).toUpperCase()).slice(-2));for(i=0;i<exclude.length;i++)cache[exclude.charCodeAt(i)]=exclude[i];return cache}(exclude),i=0,l=string.length;i<l;i++)if(code=string.charCodeAt(i),keepEscaped&&37===code&&i+2<l&&/^[0-9a-f]{2}$/i.test(string.slice(i+1,i+3)))result+=string.slice(i,i+3),i+=2;else if(code<128)result+=cache[code];else if(55296<=code&&code<=57343){if(55296<=code&&code<=56319&&i+1<l&&56320<=(nextCode=string.charCodeAt(i+1))&&nextCode<=57343){result+=encodeURIComponent(string[i]+string[i+1]),i++;continue}result+="%EF%BF%BD"}else result+=encodeURIComponent(string[i]);return result}encode.defaultChars=";/?:@&=+$,-_.!~*'()#",encode.componentChars="-_.!~*'()",module.exports=encode},{}],193:[function(require,module,exports){"use strict";module.exports=function(url){var result="";return result+=url.protocol||"",result+=url.slashes?"//":"",result+=url.auth?url.auth+"@":"",url.hostname&&-1!==url.hostname.indexOf(":")?result+="["+url.hostname+"]":result+=url.hostname||"",result+=url.port?":"+url.port:"",result+=url.pathname||"",result+=url.search||"",result+=url.hash||""}},{}],194:[function(require,module,exports){"use strict";module.exports.encode=require("./encode"),module.exports.decode=require("./decode"),module.exports.format=require("./format"),module.exports.parse=require("./parse")},{"./decode":191,"./encode":192,"./format":193,"./parse":195}],195:[function(require,module,exports){"use strict";function Url(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var protocolPattern=/^([a-z0-9.+-]+:)/i,portPattern=/:[0-9]*$/,simplePathPattern=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,unwise=["{","}","|","\\","^","`"].concat(["<",">",'"',"`"," ","\r","\n","\t"]),autoEscape=["'"].concat(unwise),nonHostChars=["%","/","?",";","#"].concat(autoEscape),hostEndingChars=["/","?","#"],hostnamePartPattern=/^[+a-z0-9A-Z_-]{0,63}$/,hostnamePartStart=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,hostlessProtocol={javascript:!0,"javascript:":!0},slashedProtocol={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};Url.prototype.parse=function(url,slashesDenoteHost){var i,l,lowerProto,hec,slashes,rest=url;if(rest=rest.trim(),!slashesDenoteHost&&1===url.split("#").length){var simplePath=simplePathPattern.exec(rest);if(simplePath)return this.pathname=simplePath[1],simplePath[2]&&(this.search=simplePath[2]),this}var proto=protocolPattern.exec(rest);if(proto&&(lowerProto=(proto=proto[0]).toLowerCase(),this.protocol=proto,rest=rest.substr(proto.length)),(slashesDenoteHost||proto||rest.match(/^\/\/[^@\/]+@[^@\/]+/))&&(!(slashes="//"===rest.substr(0,2))||proto&&hostlessProtocol[proto]||(rest=rest.substr(2),this.slashes=!0)),!hostlessProtocol[proto]&&(slashes||proto&&!slashedProtocol[proto])){var auth,atSign,hostEnd=-1;for(i=0;i<hostEndingChars.length;i++)-1!==(hec=rest.indexOf(hostEndingChars[i]))&&(-1===hostEnd||hec<hostEnd)&&(hostEnd=hec);for(-1!==(atSign=-1===hostEnd?rest.lastIndexOf("@"):rest.lastIndexOf("@",hostEnd))&&(auth=rest.slice(0,atSign),rest=rest.slice(atSign+1),this.auth=auth),hostEnd=-1,i=0;i<nonHostChars.length;i++)-1!==(hec=rest.indexOf(nonHostChars[i]))&&(-1===hostEnd||hec<hostEnd)&&(hostEnd=hec);-1===hostEnd&&(hostEnd=rest.length),":"===rest[hostEnd-1]&&hostEnd--;var host=rest.slice(0,hostEnd);rest=rest.slice(hostEnd),this.parseHost(host),this.hostname=this.hostname||"";var ipv6Hostname="["===this.hostname[0]&&"]"===this.hostname[this.hostname.length-1];if(!ipv6Hostname){var hostparts=this.hostname.split(/\./);for(i=0,l=hostparts.length;i<l;i++){var part=hostparts[i];if(part&&!part.match(hostnamePartPattern)){for(var newpart="",j=0,k=part.length;j<k;j++)127<part.charCodeAt(j)?newpart+="x":newpart+=part[j];if(!newpart.match(hostnamePartPattern)){var validParts=hostparts.slice(0,i),notHost=hostparts.slice(i+1),bit=part.match(hostnamePartStart);bit&&(validParts.push(bit[1]),notHost.unshift(bit[2])),notHost.length&&(rest=notHost.join(".")+rest),this.hostname=validParts.join(".");break}}}}255<this.hostname.length&&(this.hostname=""),ipv6Hostname&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}var hash=rest.indexOf("#");-1!==hash&&(this.hash=rest.substr(hash),rest=rest.slice(0,hash));var qm=rest.indexOf("?");return-1!==qm&&(this.search=rest.substr(qm),rest=rest.slice(0,qm)),rest&&(this.pathname=rest),slashedProtocol[lowerProto]&&this.hostname&&!this.pathname&&(this.pathname=""),this},Url.prototype.parseHost=function(host){var port=portPattern.exec(host);port&&(":"!==(port=port[0])&&(this.port=port.substr(1)),host=host.substr(0,host.length-port.length)),host&&(this.hostname=host)},module.exports=function(url,slashesDenoteHost){if(url&&url instanceof Url)return url;var u=new Url;return u.parse(url,slashesDenoteHost),u}},{}],196:[function(require,module,exports){"use strict";var getOwnPropertySymbols=Object.getOwnPropertySymbols,hasOwnProperty=Object.prototype.hasOwnProperty,propIsEnumerable=Object.prototype.propertyIsEnumerable;module.exports=function(){try{if(!Object.assign)return!1;var test1=new String("abc");if(test1[5]="de","5"===Object.getOwnPropertyNames(test1)[0])return!1;for(var test2={},i=0;i<10;i++)test2["_"+String.fromCharCode(i)]=i;if("0123456789"!==Object.getOwnPropertyNames(test2).map(function(n){return test2[n]}).join(""))return!1;var test3={};return"abcdefghijklmnopqrst".split("").forEach(function(letter){test3[letter]=letter}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},test3)).join("")}catch(err){return!1}}()?Object.assign:function(target,source){for(var from,symbols,to=function(val){if(null==val)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(val)}(target),s=1;s<arguments.length;s++){for(var key in from=Object(arguments[s]))hasOwnProperty.call(from,key)&&(to[key]=from[key]);if(getOwnPropertySymbols){symbols=getOwnPropertySymbols(from);for(var i=0;i<symbols.length;i++)propIsEnumerable.call(from,symbols[i])&&(to[symbols[i]]=from[symbols[i]])}}return to}},{}],197:[function(require,module,exports){var cachedSetTimeout,cachedClearTimeout,process=module.exports={};function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}function runTimeout(fun){if(cachedSetTimeout===setTimeout)return setTimeout(fun,0);if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout)return cachedSetTimeout=setTimeout,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(){try{cachedSetTimeout="function"==typeof setTimeout?setTimeout:defaultSetTimout}catch(e){cachedSetTimeout=defaultSetTimout}try{cachedClearTimeout="function"==typeof clearTimeout?clearTimeout:defaultClearTimeout}catch(e){cachedClearTimeout=defaultClearTimeout}}();var currentQueue,queue=[],draining=!1,queueIndex=-1;function cleanUpNextTick(){draining&&currentQueue&&(draining=!1,currentQueue.length?queue=currentQueue.concat(queue):queueIndex=-1,queue.length&&drainQueue())}function drainQueue(){if(!draining){var timeout=runTimeout(cleanUpNextTick);draining=!0;for(var len=queue.length;len;){for(currentQueue=queue,queue=[];++queueIndex<len;)currentQueue&&currentQueue[queueIndex].run();queueIndex=-1,len=queue.length}currentQueue=null,draining=!1,function(marker){if(cachedClearTimeout===clearTimeout)return clearTimeout(marker);if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout)return cachedClearTimeout=clearTimeout,clearTimeout(marker);try{cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}(timeout)}}function Item(fun,array){this.fun=fun,this.array=array}function noop(){}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(1<arguments.length)for(var i=1;i<arguments.length;i++)args[i-1]=arguments[i];queue.push(new Item(fun,args)),1!==queue.length||draining||runTimeout(drainQueue)},Item.prototype.run=function(){this.fun.apply(null,this.array)},process.title="browser",process.browser=!0,process.env={},process.argv=[],process.version="",process.versions={},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}},{}],198:[function(require,module,exports){(function(process){"use strict";var printWarning=function(){};if("production"!==process.env.NODE_ENV){var ReactPropTypesSecret=require("./lib/ReactPropTypesSecret"),loggedTypeFailures={},has=Function.call.bind(Object.prototype.hasOwnProperty);printWarning=function(text){var message="Warning: "+text;"undefined"!=typeof console&&console.error(message);try{throw new Error(message)}catch(x){}}}function checkPropTypes(typeSpecs,values,location,componentName,getStack){if("production"!==process.env.NODE_ENV)for(var typeSpecName in typeSpecs)if(has(typeSpecs,typeSpecName)){var error;try{if("function"!=typeof typeSpecs[typeSpecName]){var err=Error((componentName||"React class")+": "+location+" type `"+typeSpecName+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof typeSpecs[typeSpecName]+"`.");throw err.name="Invariant Violation",err}error=typeSpecs[typeSpecName](values,typeSpecName,componentName,location,null,ReactPropTypesSecret)}catch(ex){error=ex}if(!error||error instanceof Error||printWarning((componentName||"React class")+": type specification of "+location+" `"+typeSpecName+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof error+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),error instanceof Error&&!(error.message in loggedTypeFailures)){loggedTypeFailures[error.message]=!0;var stack=getStack?getStack():"";printWarning("Failed "+location+" type: "+error.message+(null!=stack?stack:""))}}}checkPropTypes.resetWarningCache=function(){"production"!==process.env.NODE_ENV&&(loggedTypeFailures={})},module.exports=checkPropTypes}).call(this,require("_process"))},{"./lib/ReactPropTypesSecret":202,_process:197}],199:[function(require,module,exports){"use strict";var ReactPropTypesSecret=require("./lib/ReactPropTypesSecret");function emptyFunction(){}function emptyFunctionWithReset(){}emptyFunctionWithReset.resetWarningCache=emptyFunction,module.exports=function(){function shim(props,propName,componentName,location,propFullName,secret){if(secret!==ReactPropTypesSecret){var err=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw err.name="Invariant Violation",err}}function getShim(){return shim}var ReactPropTypes={array:shim.isRequired=shim,bool:shim,func:shim,number:shim,object:shim,string:shim,symbol:shim,any:shim,arrayOf:getShim,element:shim,elementType:shim,instanceOf:getShim,node:shim,objectOf:getShim,oneOf:getShim,oneOfType:getShim,shape:getShim,exact:getShim,checkPropTypes:emptyFunctionWithReset,resetWarningCache:emptyFunction};return ReactPropTypes.PropTypes=ReactPropTypes}},{"./lib/ReactPropTypesSecret":202}],200:[function(require,module,exports){(function(process){"use strict";var ReactIs=require("react-is"),assign=require("object-assign"),ReactPropTypesSecret=require("./lib/ReactPropTypesSecret"),checkPropTypes=require("./checkPropTypes"),has=Function.call.bind(Object.prototype.hasOwnProperty),printWarning=function(){};function emptyFunctionThatReturnsNull(){return null}"production"!==process.env.NODE_ENV&&(printWarning=function(text){var message="Warning: "+text;"undefined"!=typeof console&&console.error(message);try{throw new Error(message)}catch(x){}}),module.exports=function(isValidElement,throwOnDirectAccess){var ITERATOR_SYMBOL="function"==typeof Symbol&&Symbol.iterator,FAUX_ITERATOR_SYMBOL="@@iterator";var ANONYMOUS="<<anonymous>>",ReactPropTypes={array:createPrimitiveTypeChecker("array"),bool:createPrimitiveTypeChecker("boolean"),func:createPrimitiveTypeChecker("function"),number:createPrimitiveTypeChecker("number"),object:createPrimitiveTypeChecker("object"),string:createPrimitiveTypeChecker("string"),symbol:createPrimitiveTypeChecker("symbol"),any:createChainableTypeChecker(emptyFunctionThatReturnsNull),arrayOf:function(typeChecker){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){if("function"!=typeof typeChecker)return new PropTypeError("Property `"+propFullName+"` of component `"+componentName+"` has invalid PropType notation inside arrayOf.");var propValue=props[propName];if(!Array.isArray(propValue)){var propType=getPropType(propValue);return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected an array.")}for(var i=0;i<propValue.length;i++){var error=typeChecker(propValue,i,componentName,location,propFullName+"["+i+"]",ReactPropTypesSecret);if(error instanceof Error)return error}return null})},element:createChainableTypeChecker(function(props,propName,componentName,location,propFullName){var propValue=props[propName];if(isValidElement(propValue))return null;var propType=getPropType(propValue);return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected a single ReactElement.")}),elementType:createChainableTypeChecker(function(props,propName,componentName,location,propFullName){var propValue=props[propName];if(ReactIs.isValidElementType(propValue))return null;var propType=getPropType(propValue);return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected a single ReactElement type.")}),instanceOf:function(expectedClass){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){if(props[propName]instanceof expectedClass)return null;var expectedClassName=expectedClass.name||ANONYMOUS,actualClassName=(propValue=props[propName],propValue.constructor&&propValue.constructor.name?propValue.constructor.name:ANONYMOUS);var propValue;return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+actualClassName+"` supplied to `"+componentName+"`, expected instance of `"+expectedClassName+"`.")})},node:createChainableTypeChecker(function(props,propName,componentName,location,propFullName){return isNode(props[propName])?null:new PropTypeError("Invalid "+location+" `"+propFullName+"` supplied to `"+componentName+"`, expected a ReactNode.")}),objectOf:function(typeChecker){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){if("function"!=typeof typeChecker)return new PropTypeError("Property `"+propFullName+"` of component `"+componentName+"` has invalid PropType notation inside objectOf.");var propValue=props[propName],propType=getPropType(propValue);if("object"!==propType)return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected an object.");for(var key in propValue)if(has(propValue,key)){var error=typeChecker(propValue,key,componentName,location,propFullName+"."+key,ReactPropTypesSecret);if(error instanceof Error)return error}return null})},oneOf:function(expectedValues){if(!Array.isArray(expectedValues))return"production"!==process.env.NODE_ENV&&(1<arguments.length?printWarning("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):printWarning("Invalid argument supplied to oneOf, expected an array.")),emptyFunctionThatReturnsNull;return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){for(var propValue=props[propName],i=0;i<expectedValues.length;i++)if(is(propValue,expectedValues[i]))return null;var valuesString=JSON.stringify(expectedValues,function(key,value){var type=getPreciseType(value);return"symbol"===type?String(value):value});return new PropTypeError("Invalid "+location+" `"+propFullName+"` of value `"+String(propValue)+"` supplied to `"+componentName+"`, expected one of "+valuesString+".")})},oneOfType:function(arrayOfTypeCheckers){if(!Array.isArray(arrayOfTypeCheckers))return"production"!==process.env.NODE_ENV&&printWarning("Invalid argument supplied to oneOfType, expected an instance of array."),emptyFunctionThatReturnsNull;for(var i=0;i<arrayOfTypeCheckers.length;i++){var checker=arrayOfTypeCheckers[i];if("function"!=typeof checker)return printWarning("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+getPostfixForTypeWarning(checker)+" at index "+i+"."),emptyFunctionThatReturnsNull}return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){for(var i=0;i<arrayOfTypeCheckers.length;i++){var checker=arrayOfTypeCheckers[i];if(null==checker(props,propName,componentName,location,propFullName,ReactPropTypesSecret))return null}return new PropTypeError("Invalid "+location+" `"+propFullName+"` supplied to `"+componentName+"`.")})},shape:function(shapeTypes){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){var propValue=props[propName],propType=getPropType(propValue);if("object"!==propType)return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected `object`.");for(var key in shapeTypes){var checker=shapeTypes[key];if(checker){var error=checker(propValue,key,componentName,location,propFullName+"."+key,ReactPropTypesSecret);if(error)return error}}return null})},exact:function(shapeTypes){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName){var propValue=props[propName],propType=getPropType(propValue);if("object"!==propType)return new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+propType+"` supplied to `"+componentName+"`, expected `object`.");var allKeys=assign({},props[propName],shapeTypes);for(var key in allKeys){var checker=shapeTypes[key];if(!checker)return new PropTypeError("Invalid "+location+" `"+propFullName+"` key `"+key+"` supplied to `"+componentName+"`.\nBad object: "+JSON.stringify(props[propName],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(shapeTypes),null," "));var error=checker(propValue,key,componentName,location,propFullName+"."+key,ReactPropTypesSecret);if(error)return error}return null})}};function is(x,y){return x===y?0!==x||1/x==1/y:x!=x&&y!=y}function PropTypeError(message){this.message=message,this.stack=""}function createChainableTypeChecker(validate){if("production"!==process.env.NODE_ENV)var manualPropTypeCallCache={},manualPropTypeWarningCount=0;function checkType(isRequired,props,propName,componentName,location,propFullName,secret){if(componentName=componentName||ANONYMOUS,propFullName=propFullName||propName,secret!==ReactPropTypesSecret){if(throwOnDirectAccess){var err=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw err.name="Invariant Violation",err}if("production"!==process.env.NODE_ENV&&"undefined"!=typeof console){var cacheKey=componentName+":"+propName;!manualPropTypeCallCache[cacheKey]&&manualPropTypeWarningCount<3&&(printWarning("You are manually calling a React.PropTypes validation function for the `"+propFullName+"` prop on `"+componentName+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),manualPropTypeCallCache[cacheKey]=!0,manualPropTypeWarningCount++)}}return null==props[propName]?isRequired?null===props[propName]?new PropTypeError("The "+location+" `"+propFullName+"` is marked as required in `"+componentName+"`, but its value is `null`."):new PropTypeError("The "+location+" `"+propFullName+"` is marked as required in `"+componentName+"`, but its value is `undefined`."):null:validate(props,propName,componentName,location,propFullName)}var chainedCheckType=checkType.bind(null,!1);return chainedCheckType.isRequired=checkType.bind(null,!0),chainedCheckType}function createPrimitiveTypeChecker(expectedType){return createChainableTypeChecker(function(props,propName,componentName,location,propFullName,secret){var propValue=props[propName];return getPropType(propValue)===expectedType?null:new PropTypeError("Invalid "+location+" `"+propFullName+"` of type `"+getPreciseType(propValue)+"` supplied to `"+componentName+"`, expected `"+expectedType+"`.")})}function isNode(propValue){switch(typeof propValue){case"number":case"string":case"undefined":return!0;case"boolean":return!propValue;case"object":if(Array.isArray(propValue))return propValue.every(isNode);if(null===propValue||isValidElement(propValue))return!0;var iteratorFn=function(maybeIterable){var iteratorFn=maybeIterable&&(ITERATOR_SYMBOL&&maybeIterable[ITERATOR_SYMBOL]||maybeIterable[FAUX_ITERATOR_SYMBOL]);if("function"==typeof iteratorFn)return iteratorFn}(propValue);if(!iteratorFn)return!1;var step,iterator=iteratorFn.call(propValue);if(iteratorFn!==propValue.entries){for(;!(step=iterator.next()).done;)if(!isNode(step.value))return!1}else for(;!(step=iterator.next()).done;){var entry=step.value;if(entry&&!isNode(entry[1]))return!1}return!0;default:return!1}}function getPropType(propValue){var propType=typeof propValue;return Array.isArray(propValue)?"array":propValue instanceof RegExp?"object":function(propType,propValue){return"symbol"===propType||!!propValue&&("Symbol"===propValue["@@toStringTag"]||"function"==typeof Symbol&&propValue instanceof Symbol)}(propType,propValue)?"symbol":propType}function getPreciseType(propValue){if(null==propValue)return""+propValue;var propType=getPropType(propValue);if("object"===propType){if(propValue instanceof Date)return"date";if(propValue instanceof RegExp)return"regexp"}return propType}function getPostfixForTypeWarning(value){var type=getPreciseType(value);switch(type){case"array":case"object":return"an "+type;case"boolean":case"date":case"regexp":return"a "+type;default:return type}}return PropTypeError.prototype=Error.prototype,ReactPropTypes.checkPropTypes=checkPropTypes,ReactPropTypes.resetWarningCache=checkPropTypes.resetWarningCache,ReactPropTypes.PropTypes=ReactPropTypes}}).call(this,require("_process"))},{"./checkPropTypes":198,"./lib/ReactPropTypesSecret":202,_process:197,"object-assign":196,"react-is":206}],201:[function(require,module,exports){(function(process){if("production"!==process.env.NODE_ENV){var ReactIs=require("react-is");module.exports=require("./factoryWithTypeCheckers")(ReactIs.isElement,!0)}else module.exports=require("./factoryWithThrowingShims")()}).call(this,require("_process"))},{"./factoryWithThrowingShims":199,"./factoryWithTypeCheckers":200,_process:197,"react-is":206}],202:[function(require,module,exports){"use strict";module.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},{}],203:[function(require,module,exports){(function(global){!function(root){var freeExports="object"==typeof exports&&exports&&!exports.nodeType&&exports,freeModule="object"==typeof module&&module&&!module.nodeType&&module,freeGlobal="object"==typeof global&&global;freeGlobal.global!==freeGlobal&&freeGlobal.window!==freeGlobal&&freeGlobal.self!==freeGlobal||(root=freeGlobal);var punycode,key,maxInt=2147483647,base=36,tMin=1,tMax=26,skew=38,damp=700,initialBias=72,initialN=128,delimiter="-",regexPunycode=/^xn--/,regexNonASCII=/[^\x20-\x7E]/,regexSeparators=/[\x2E\u3002\uFF0E\uFF61]/g,errors={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},baseMinusTMin=base-tMin,floor=Math.floor,stringFromCharCode=String.fromCharCode;function error(type){throw new RangeError(errors[type])}function map(array,fn){for(var length=array.length,result=[];length--;)result[length]=fn(array[length]);return result}function mapDomain(string,fn){var parts=string.split("@"),result="";return 1<parts.length&&(result=parts[0]+"@",string=parts[1]),result+map((string=string.replace(regexSeparators,".")).split("."),fn).join(".")}function ucs2decode(string){for(var value,extra,output=[],counter=0,length=string.length;counter<length;)55296<=(value=string.charCodeAt(counter++))&&value<=56319&&counter<length?56320==(64512&(extra=string.charCodeAt(counter++)))?output.push(((1023&value)<<10)+(1023&extra)+65536):(output.push(value),counter--):output.push(value);return output}function ucs2encode(array){return map(array,function(value){var output="";return 65535<value&&(output+=stringFromCharCode((value-=65536)>>>10&1023|55296),value=56320|1023&value),output+=stringFromCharCode(value)}).join("")}function digitToBasic(digit,flag){return digit+22+75*(digit<26)-((0!=flag)<<5)}function adapt(delta,numPoints,firstTime){var k=0;for(delta=firstTime?floor(delta/damp):delta>>1,delta+=floor(delta/numPoints);baseMinusTMin*tMax>>1<delta;k+=base)delta=floor(delta/baseMinusTMin);return floor(k+(baseMinusTMin+1)*delta/(delta+skew))}function decode(input){var out,basic,j,index,oldi,w,k,digit,t,baseMinusT,codePoint,output=[],inputLength=input.length,i=0,n=initialN,bias=initialBias;for((basic=input.lastIndexOf(delimiter))<0&&(basic=0),j=0;j<basic;++j)128<=input.charCodeAt(j)&&error("not-basic"),output.push(input.charCodeAt(j));for(index=0<basic?basic+1:0;index<inputLength;){for(oldi=i,w=1,k=base;inputLength<=index&&error("invalid-input"),codePoint=input.charCodeAt(index++),(base<=(digit=codePoint-48<10?codePoint-22:codePoint-65<26?codePoint-65:codePoint-97<26?codePoint-97:base)||digit>floor((maxInt-i)/w))&&error("overflow"),i+=digit*w,!(digit<(t=k<=bias?tMin:bias+tMax<=k?tMax:k-bias));k+=base)w>floor(maxInt/(baseMinusT=base-t))&&error("overflow"),w*=baseMinusT;bias=adapt(i-oldi,out=output.length+1,0==oldi),floor(i/out)>maxInt-n&&error("overflow"),n+=floor(i/out),i%=out,output.splice(i++,0,n)}return ucs2encode(output)}function encode(input){var n,delta,handledCPCount,basicLength,bias,j,m,q,k,t,currentValue,inputLength,handledCPCountPlusOne,baseMinusT,qMinusT,output=[];for(inputLength=(input=ucs2decode(input)).length,n=initialN,bias=initialBias,j=delta=0;j<inputLength;++j)(currentValue=input[j])<128&&output.push(stringFromCharCode(currentValue));for(handledCPCount=basicLength=output.length,basicLength&&output.push(delimiter);handledCPCount<inputLength;){for(m=maxInt,j=0;j<inputLength;++j)n<=(currentValue=input[j])&&currentValue<m&&(m=currentValue);for(m-n>floor((maxInt-delta)/(handledCPCountPlusOne=handledCPCount+1))&&error("overflow"),delta+=(m-n)*handledCPCountPlusOne,n=m,j=0;j<inputLength;++j)if((currentValue=input[j])<n&&++delta>maxInt&&error("overflow"),currentValue==n){for(q=delta,k=base;!(q<(t=k<=bias?tMin:bias+tMax<=k?tMax:k-bias));k+=base)qMinusT=q-t,baseMinusT=base-t,output.push(stringFromCharCode(digitToBasic(t+qMinusT%baseMinusT,0))),q=floor(qMinusT/baseMinusT);output.push(stringFromCharCode(digitToBasic(q,0))),bias=adapt(delta,handledCPCountPlusOne,handledCPCount==basicLength),delta=0,++handledCPCount}++delta,++n}return output.join("")}if(punycode={version:"1.4.1",ucs2:{decode:ucs2decode,encode:ucs2encode},decode:decode,encode:encode,toASCII:function(input){return mapDomain(input,function(string){return regexNonASCII.test(string)?"xn--"+encode(string):string})},toUnicode:function(input){return mapDomain(input,function(string){return regexPunycode.test(string)?decode(string.slice(4).toLowerCase()):string})}},freeExports&&freeModule)if(module.exports==freeExports)freeModule.exports=punycode;else for(key in punycode)punycode.hasOwnProperty(key)&&(freeExports[key]=punycode[key]);else root.punycode=punycode}(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],204:[function(require,module,exports){(function(process){"use strict";"production"!==process.env.NODE_ENV&&function(){Object.defineProperty(exports,"__esModule",{value:!0});var hasSymbol="function"==typeof Symbol&&Symbol.for,REACT_ELEMENT_TYPE=hasSymbol?Symbol.for("react.element"):60103,REACT_PORTAL_TYPE=hasSymbol?Symbol.for("react.portal"):60106,REACT_FRAGMENT_TYPE=hasSymbol?Symbol.for("react.fragment"):60107,REACT_STRICT_MODE_TYPE=hasSymbol?Symbol.for("react.strict_mode"):60108,REACT_PROFILER_TYPE=hasSymbol?Symbol.for("react.profiler"):60114,REACT_PROVIDER_TYPE=hasSymbol?Symbol.for("react.provider"):60109,REACT_CONTEXT_TYPE=hasSymbol?Symbol.for("react.context"):60110,REACT_ASYNC_MODE_TYPE=hasSymbol?Symbol.for("react.async_mode"):60111,REACT_CONCURRENT_MODE_TYPE=hasSymbol?Symbol.for("react.concurrent_mode"):60111,REACT_FORWARD_REF_TYPE=hasSymbol?Symbol.for("react.forward_ref"):60112,REACT_SUSPENSE_TYPE=hasSymbol?Symbol.for("react.suspense"):60113,REACT_MEMO_TYPE=hasSymbol?Symbol.for("react.memo"):60115,REACT_LAZY_TYPE=hasSymbol?Symbol.for("react.lazy"):60116;var lowPriorityWarning$1=function(condition,format){if(void 0===format)throw new Error("`lowPriorityWarning(condition, format, ...args)` requires a warning message argument");if(!condition){for(var _len2=arguments.length,args=Array(2<_len2?_len2-2:0),_key2=2;_key2<_len2;_key2++)args[_key2-2]=arguments[_key2];(function(format){for(var _len=arguments.length,args=Array(1<_len?_len-1:0),_key=1;_key<_len;_key++)args[_key-1]=arguments[_key];var argIndex=0,message="Warning: "+format.replace(/%s/g,function(){return args[argIndex++]});"undefined"!=typeof console&&console.warn(message);try{throw new Error(message)}catch(x){}}).apply(void 0,[format].concat(args))}};function typeOf(object){if("object"==typeof object&&null!==object){var $$typeof=object.$$typeof;switch($$typeof){case REACT_ELEMENT_TYPE:var type=object.type;switch(type){case REACT_ASYNC_MODE_TYPE:case REACT_CONCURRENT_MODE_TYPE:case REACT_FRAGMENT_TYPE:case REACT_PROFILER_TYPE:case REACT_STRICT_MODE_TYPE:case REACT_SUSPENSE_TYPE:return type;default:var $$typeofType=type&&type.$$typeof;switch($$typeofType){case REACT_CONTEXT_TYPE:case REACT_FORWARD_REF_TYPE:case REACT_PROVIDER_TYPE:return $$typeofType;default:return $$typeof}}case REACT_LAZY_TYPE:case REACT_MEMO_TYPE:case REACT_PORTAL_TYPE:return $$typeof}}}var AsyncMode=REACT_ASYNC_MODE_TYPE,ConcurrentMode=REACT_CONCURRENT_MODE_TYPE,ContextConsumer=REACT_CONTEXT_TYPE,ContextProvider=REACT_PROVIDER_TYPE,Element=REACT_ELEMENT_TYPE,ForwardRef=REACT_FORWARD_REF_TYPE,Fragment=REACT_FRAGMENT_TYPE,Lazy=REACT_LAZY_TYPE,Memo=REACT_MEMO_TYPE,Portal=REACT_PORTAL_TYPE,Profiler=REACT_PROFILER_TYPE,StrictMode=REACT_STRICT_MODE_TYPE,Suspense=REACT_SUSPENSE_TYPE,hasWarnedAboutDeprecatedIsAsyncMode=!1;function isConcurrentMode(object){return typeOf(object)===REACT_CONCURRENT_MODE_TYPE}exports.typeOf=typeOf,exports.AsyncMode=AsyncMode,exports.ConcurrentMode=ConcurrentMode,exports.ContextConsumer=ContextConsumer,exports.ContextProvider=ContextProvider,exports.Element=Element,exports.ForwardRef=ForwardRef,exports.Fragment=Fragment,exports.Lazy=Lazy,exports.Memo=Memo,exports.Portal=Portal,exports.Profiler=Profiler,exports.StrictMode=StrictMode,exports.Suspense=Suspense,exports.isValidElementType=function(type){return"string"==typeof type||"function"==typeof type||type===REACT_FRAGMENT_TYPE||type===REACT_CONCURRENT_MODE_TYPE||type===REACT_PROFILER_TYPE||type===REACT_STRICT_MODE_TYPE||type===REACT_SUSPENSE_TYPE||"object"==typeof type&&null!==type&&(type.$$typeof===REACT_LAZY_TYPE||type.$$typeof===REACT_MEMO_TYPE||type.$$typeof===REACT_PROVIDER_TYPE||type.$$typeof===REACT_CONTEXT_TYPE||type.$$typeof===REACT_FORWARD_REF_TYPE)},exports.isAsyncMode=function(object){return hasWarnedAboutDeprecatedIsAsyncMode||lowPriorityWarning$1(!(hasWarnedAboutDeprecatedIsAsyncMode=!0),"The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API."),isConcurrentMode(object)||typeOf(object)===REACT_ASYNC_MODE_TYPE},exports.isConcurrentMode=isConcurrentMode,exports.isContextConsumer=function(object){return typeOf(object)===REACT_CONTEXT_TYPE},exports.isContextProvider=function(object){return typeOf(object)===REACT_PROVIDER_TYPE},exports.isElement=function(object){return"object"==typeof object&&null!==object&&object.$$typeof===REACT_ELEMENT_TYPE},exports.isForwardRef=function(object){return typeOf(object)===REACT_FORWARD_REF_TYPE},exports.isFragment=function(object){return typeOf(object)===REACT_FRAGMENT_TYPE},exports.isLazy=function(object){return typeOf(object)===REACT_LAZY_TYPE},exports.isMemo=function(object){return typeOf(object)===REACT_MEMO_TYPE},exports.isPortal=function(object){return typeOf(object)===REACT_PORTAL_TYPE},exports.isProfiler=function(object){return typeOf(object)===REACT_PROFILER_TYPE},exports.isStrictMode=function(object){return typeOf(object)===REACT_STRICT_MODE_TYPE},exports.isSuspense=function(object){return typeOf(object)===REACT_SUSPENSE_TYPE}}()}).call(this,require("_process"))},{_process:197}],205:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var b="function"==typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?Symbol.for("react.memo"):60115,r=b?Symbol.for("react.lazy"):60116;function t(a){if("object"==typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof){case k:case n:case h:return a;default:return u}}case r:case q:case d:return u}}}function v(a){return t(a)===m}exports.typeOf=t,exports.AsyncMode=l,exports.ConcurrentMode=m,exports.ContextConsumer=k,exports.ContextProvider=h,exports.Element=c,exports.ForwardRef=n,exports.Fragment=e,exports.Lazy=r,exports.Memo=q,exports.Portal=d,exports.Profiler=g,exports.StrictMode=f,exports.Suspense=p,exports.isValidElementType=function(a){return"string"==typeof a||"function"==typeof a||a===e||a===m||a===g||a===f||a===p||"object"==typeof a&&null!==a&&(a.$$typeof===r||a.$$typeof===q||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n)},exports.isAsyncMode=function(a){return v(a)||t(a)===l},exports.isConcurrentMode=v,exports.isContextConsumer=function(a){return t(a)===k},exports.isContextProvider=function(a){return t(a)===h},exports.isElement=function(a){return"object"==typeof a&&null!==a&&a.$$typeof===c},exports.isForwardRef=function(a){return t(a)===n},exports.isFragment=function(a){return t(a)===e},exports.isLazy=function(a){return t(a)===r},exports.isMemo=function(a){return t(a)===q},exports.isPortal=function(a){return t(a)===d},exports.isProfiler=function(a){return t(a)===g},exports.isStrictMode=function(a){return t(a)===f},exports.isSuspense=function(a){return t(a)===p}},{}],206:[function(require,module,exports){(function(process){"use strict";"production"===process.env.NODE_ENV?module.exports=require("./cjs/react-is.production.min.js"):module.exports=require("./cjs/react-is.development.js")}).call(this,require("_process"))},{"./cjs/react-is.development.js":204,"./cjs/react-is.production.min.js":205,_process:197}],207:[function(require,module,exports){var runtime=function(exports){"use strict";var undefined,Op=Object.prototype,hasOwn=Op.hasOwnProperty,$Symbol="function"==typeof Symbol?Symbol:{},iteratorSymbol=$Symbol.iterator||"@@iterator",asyncIteratorSymbol=$Symbol.asyncIterator||"@@asyncIterator",toStringTagSymbol=$Symbol.toStringTag||"@@toStringTag";function wrap(innerFn,outerFn,self,tryLocsList){var protoGenerator=outerFn&&outerFn.prototype instanceof Generator?outerFn:Generator,generator=Object.create(protoGenerator.prototype),context=new Context(tryLocsList||[]);return generator._invoke=function(innerFn,self,context){var state=GenStateSuspendedStart;return function(method,arg){if(state===GenStateExecuting)throw new Error("Generator is already running");if(state===GenStateCompleted){if("throw"===method)throw arg;return doneResult()}for(context.method=method,context.arg=arg;;){var delegate=context.delegate;if(delegate){var delegateResult=maybeInvokeDelegate(delegate,context);if(delegateResult){if(delegateResult===ContinueSentinel)continue;return delegateResult}}if("next"===context.method)context.sent=context._sent=context.arg;else if("throw"===context.method){if(state===GenStateSuspendedStart)throw state=GenStateCompleted,context.arg;context.dispatchException(context.arg)}else"return"===context.method&&context.abrupt("return",context.arg);state=GenStateExecuting;var record=tryCatch(innerFn,self,context);if("normal"===record.type){if(state=context.done?GenStateCompleted:GenStateSuspendedYield,record.arg===ContinueSentinel)continue;return{value:record.arg,done:context.done}}"throw"===record.type&&(state=GenStateCompleted,context.method="throw",context.arg=record.arg)}}}(innerFn,self,context),generator}function tryCatch(fn,obj,arg){try{return{type:"normal",arg:fn.call(obj,arg)}}catch(err){return{type:"throw",arg:err}}}exports.wrap=wrap;var GenStateSuspendedStart="suspendedStart",GenStateSuspendedYield="suspendedYield",GenStateExecuting="executing",GenStateCompleted="completed",ContinueSentinel={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}var IteratorPrototype={};IteratorPrototype[iteratorSymbol]=function(){return this};var getProto=Object.getPrototypeOf,NativeIteratorPrototype=getProto&&getProto(getProto(values([])));NativeIteratorPrototype&&NativeIteratorPrototype!==Op&&hasOwn.call(NativeIteratorPrototype,iteratorSymbol)&&(IteratorPrototype=NativeIteratorPrototype);var Gp=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(IteratorPrototype);function defineIteratorMethods(prototype){["next","throw","return"].forEach(function(method){prototype[method]=function(arg){return this._invoke(method,arg)}})}function AsyncIterator(generator){var previousPromise;this._invoke=function(method,arg){function callInvokeWithMethodAndArg(){return new Promise(function(resolve,reject){!function invoke(method,arg,resolve,reject){var record=tryCatch(generator[method],generator,arg);if("throw"!==record.type){var result=record.arg,value=result.value;return value&&"object"==typeof value&&hasOwn.call(value,"__await")?Promise.resolve(value.__await).then(function(value){invoke("next",value,resolve,reject)},function(err){invoke("throw",err,resolve,reject)}):Promise.resolve(value).then(function(unwrapped){result.value=unwrapped,resolve(result)},function(error){return invoke("throw",error,resolve,reject)})}reject(record.arg)}(method,arg,resolve,reject)})}return previousPromise=previousPromise?previousPromise.then(callInvokeWithMethodAndArg,callInvokeWithMethodAndArg):callInvokeWithMethodAndArg()}}function maybeInvokeDelegate(delegate,context){var method=delegate.iterator[context.method];if(method===undefined){if(context.delegate=null,"throw"===context.method){if(delegate.iterator.return&&(context.method="return",context.arg=undefined,maybeInvokeDelegate(delegate,context),"throw"===context.method))return ContinueSentinel;context.method="throw",context.arg=new TypeError("The iterator does not provide a 'throw' method")}return ContinueSentinel}var record=tryCatch(method,delegate.iterator,context.arg);if("throw"===record.type)return context.method="throw",context.arg=record.arg,context.delegate=null,ContinueSentinel;var info=record.arg;return info?info.done?(context[delegate.resultName]=info.value,context.next=delegate.nextLoc,"return"!==context.method&&(context.method="next",context.arg=undefined),context.delegate=null,ContinueSentinel):info:(context.method="throw",context.arg=new TypeError("iterator result is not an object"),context.delegate=null,ContinueSentinel)}function pushTryEntry(locs){var entry={tryLoc:locs[0]};1 in locs&&(entry.catchLoc=locs[1]),2 in locs&&(entry.finallyLoc=locs[2],entry.afterLoc=locs[3]),this.tryEntries.push(entry)}function resetTryEntry(entry){var record=entry.completion||{};record.type="normal",delete record.arg,entry.completion=record}function Context(tryLocsList){this.tryEntries=[{tryLoc:"root"}],tryLocsList.forEach(pushTryEntry,this),this.reset(!0)}function values(iterable){if(iterable){var iteratorMethod=iterable[iteratorSymbol];if(iteratorMethod)return iteratorMethod.call(iterable);if("function"==typeof iterable.next)return iterable;if(!isNaN(iterable.length)){var i=-1,next=function next(){for(;++i<iterable.length;)if(hasOwn.call(iterable,i))return next.value=iterable[i],next.done=!1,next;return next.value=undefined,next.done=!0,next};return next.next=next}}return{next:doneResult}}function doneResult(){return{value:undefined,done:!0}}return GeneratorFunction.prototype=Gp.constructor=GeneratorFunctionPrototype,GeneratorFunctionPrototype.constructor=GeneratorFunction,GeneratorFunctionPrototype[toStringTagSymbol]=GeneratorFunction.displayName="GeneratorFunction",exports.isGeneratorFunction=function(genFun){var ctor="function"==typeof genFun&&genFun.constructor;return!!ctor&&(ctor===GeneratorFunction||"GeneratorFunction"===(ctor.displayName||ctor.name))},exports.mark=function(genFun){return Object.setPrototypeOf?Object.setPrototypeOf(genFun,GeneratorFunctionPrototype):(genFun.__proto__=GeneratorFunctionPrototype,toStringTagSymbol in genFun||(genFun[toStringTagSymbol]="GeneratorFunction")),genFun.prototype=Object.create(Gp),genFun},exports.awrap=function(arg){return{__await:arg}},defineIteratorMethods(AsyncIterator.prototype),AsyncIterator.prototype[asyncIteratorSymbol]=function(){return this},exports.AsyncIterator=AsyncIterator,exports.async=function(innerFn,outerFn,self,tryLocsList){var iter=new AsyncIterator(wrap(innerFn,outerFn,self,tryLocsList));return exports.isGeneratorFunction(outerFn)?iter:iter.next().then(function(result){return result.done?result.value:iter.next()})},defineIteratorMethods(Gp),Gp[toStringTagSymbol]="Generator",Gp[iteratorSymbol]=function(){return this},Gp.toString=function(){return"[object Generator]"},exports.keys=function(object){var keys=[];for(var key in object)keys.push(key);return keys.reverse(),function next(){for(;keys.length;){var key=keys.pop();if(key in object)return next.value=key,next.done=!1,next}return next.done=!0,next}},exports.values=values,Context.prototype={constructor:Context,reset:function(skipTempReset){if(this.prev=0,this.next=0,this.sent=this._sent=undefined,this.done=!1,this.delegate=null,this.method="next",this.arg=undefined,this.tryEntries.forEach(resetTryEntry),!skipTempReset)for(var name in this)"t"===name.charAt(0)&&hasOwn.call(this,name)&&!isNaN(+name.slice(1))&&(this[name]=undefined)},stop:function(){this.done=!0;var rootRecord=this.tryEntries[0].completion;if("throw"===rootRecord.type)throw rootRecord.arg;return this.rval},dispatchException:function(exception){if(this.done)throw exception;var context=this;function handle(loc,caught){return record.type="throw",record.arg=exception,context.next=loc,caught&&(context.method="next",context.arg=undefined),!!caught}for(var i=this.tryEntries.length-1;0<=i;--i){var entry=this.tryEntries[i],record=entry.completion;if("root"===entry.tryLoc)return handle("end");if(entry.tryLoc<=this.prev){var hasCatch=hasOwn.call(entry,"catchLoc"),hasFinally=hasOwn.call(entry,"finallyLoc");if(hasCatch&&hasFinally){if(this.prev<entry.catchLoc)return handle(entry.catchLoc,!0);if(this.prev<entry.finallyLoc)return handle(entry.finallyLoc)}else if(hasCatch){if(this.prev<entry.catchLoc)return handle(entry.catchLoc,!0)}else{if(!hasFinally)throw new Error("try statement without catch or finally");if(this.prev<entry.finallyLoc)return handle(entry.finallyLoc)}}}},abrupt:function(type,arg){for(var i=this.tryEntries.length-1;0<=i;--i){var entry=this.tryEntries[i];if(entry.tryLoc<=this.prev&&hasOwn.call(entry,"finallyLoc")&&this.prev<entry.finallyLoc){var finallyEntry=entry;break}}finallyEntry&&("break"===type||"continue"===type)&&finallyEntry.tryLoc<=arg&&arg<=finallyEntry.finallyLoc&&(finallyEntry=null);var record=finallyEntry?finallyEntry.completion:{};return record.type=type,record.arg=arg,finallyEntry?(this.method="next",this.next=finallyEntry.finallyLoc,ContinueSentinel):this.complete(record)},complete:function(record,afterLoc){if("throw"===record.type)throw record.arg;return"break"===record.type||"continue"===record.type?this.next=record.arg:"return"===record.type?(this.rval=this.arg=record.arg,this.method="return",this.next="end"):"normal"===record.type&&afterLoc&&(this.next=afterLoc),ContinueSentinel},finish:function(finallyLoc){for(var i=this.tryEntries.length-1;0<=i;--i){var entry=this.tryEntries[i];if(entry.finallyLoc===finallyLoc)return this.complete(entry.completion,entry.afterLoc),resetTryEntry(entry),ContinueSentinel}},catch:function(tryLoc){for(var i=this.tryEntries.length-1;0<=i;--i){var entry=this.tryEntries[i];if(entry.tryLoc===tryLoc){var record=entry.completion;if("throw"===record.type){var thrown=record.arg;resetTryEntry(entry)}return thrown}}throw new Error("illegal catch attempt")},delegateYield:function(iterable,resultName,nextLoc){return this.delegate={iterator:values(iterable),resultName:resultName,nextLoc:nextLoc},"next"===this.method&&(this.arg=undefined),ContinueSentinel}},exports}("object"==typeof module?module.exports:{});try{regeneratorRuntime=runtime}catch(accidentalStrictMode){Function("r","regeneratorRuntime = r")(runtime)}},{}],208:[function(require,module,exports){module.exports=function(){var selection=document.getSelection();if(!selection.rangeCount)return function(){};for(var active=document.activeElement,ranges=[],i=0;i<selection.rangeCount;i++)ranges.push(selection.getRangeAt(i));switch(active.tagName.toUpperCase()){case"INPUT":case"TEXTAREA":active.blur();break;default:active=null}return selection.removeAllRanges(),function(){"Caret"===selection.type&&selection.removeAllRanges(),selection.rangeCount||ranges.forEach(function(range){selection.addRange(range)}),active&&active.focus()}}},{}],209:[function(require,module,exports){module.exports=/[\0-\x1F\x7F-\x9F]/},{}],210:[function(require,module,exports){module.exports=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/},{}],211:[function(require,module,exports){module.exports=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4E\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDF55-\uDF59]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDF3C-\uDF3E]|\uD806[\uDC3B\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/},{}],212:[function(require,module,exports){module.exports=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/},{}],213:[function(require,module,exports){"use strict";exports.Any=require("./properties/Any/regex"),exports.Cc=require("./categories/Cc/regex"),exports.Cf=require("./categories/Cf/regex"),exports.P=require("./categories/P/regex"),exports.Z=require("./categories/Z/regex")},{"./categories/Cc/regex":209,"./categories/Cf/regex":210,"./categories/P/regex":211,"./categories/Z/regex":212,"./properties/Any/regex":214}],214:[function(require,module,exports){module.exports=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/},{}],215:[function(require,module,exports){"function"==typeof Object.create?module.exports=function(ctor,superCtor){ctor.super_=superCtor,ctor.prototype=Object.create(superCtor.prototype,{constructor:{value:ctor,enumerable:!1,writable:!0,configurable:!0}})}:module.exports=function(ctor,superCtor){ctor.super_=superCtor;function TempCtor(){}TempCtor.prototype=superCtor.prototype,ctor.prototype=new TempCtor,ctor.prototype.constructor=ctor}},{}],216:[function(require,module,exports){module.exports=function(arg){return arg&&"object"==typeof arg&&"function"==typeof arg.copy&&"function"==typeof arg.fill&&"function"==typeof arg.readUInt8}},{}],217:[function(require,module,exports){(function(process,global){var formatRegExp=/%[sdj%]/g;exports.format=function(f){if(!isString(f)){for(var objects=[],i=0;i<arguments.length;i++)objects.push(inspect(arguments[i]));return objects.join(" ")}i=1;for(var args=arguments,len=args.length,str=String(f).replace(formatRegExp,function(x){if("%%"===x)return"%";if(len<=i)return x;switch(x){case"%s":return String(args[i++]);case"%d":return Number(args[i++]);case"%j":try{return JSON.stringify(args[i++])}catch(_){return"[Circular]"}default:return x}}),x=args[i];i<len;x=args[++i])isNull(x)||!isObject(x)?str+=" "+x:str+=" "+inspect(x);return str},exports.deprecate=function(fn,msg){if(isUndefined(global.process))return function(){return exports.deprecate(fn,msg).apply(this,arguments)};if(!0===process.noDeprecation)return fn;var warned=!1;return function(){if(!warned){if(process.throwDeprecation)throw new Error(msg);process.traceDeprecation?console.trace(msg):console.error(msg),warned=!0}return fn.apply(this,arguments)}};var debugEnviron,debugs={};function inspect(obj,opts){var ctx={seen:[],stylize:stylizeNoColor};return 3<=arguments.length&&(ctx.depth=arguments[2]),4<=arguments.length&&(ctx.colors=arguments[3]),isBoolean(opts)?ctx.showHidden=opts:opts&&exports._extend(ctx,opts),isUndefined(ctx.showHidden)&&(ctx.showHidden=!1),isUndefined(ctx.depth)&&(ctx.depth=2),isUndefined(ctx.colors)&&(ctx.colors=!1),isUndefined(ctx.customInspect)&&(ctx.customInspect=!0),ctx.colors&&(ctx.stylize=stylizeWithColor),formatValue(ctx,obj,ctx.depth)}function stylizeWithColor(str,styleType){var style=inspect.styles[styleType];return style?"["+inspect.colors[style][0]+"m"+str+"["+inspect.colors[style][1]+"m":str}function stylizeNoColor(str,styleType){return str}function formatValue(ctx,value,recurseTimes){if(ctx.customInspect&&value&&isFunction(value.inspect)&&value.inspect!==exports.inspect&&(!value.constructor||value.constructor.prototype!==value)){var ret=value.inspect(recurseTimes,ctx);return isString(ret)||(ret=formatValue(ctx,ret,recurseTimes)),ret}var primitive=function(ctx,value){if(isUndefined(value))return ctx.stylize("undefined","undefined");if(isString(value)){var simple="'"+JSON.stringify(value).replace(/^"|"$/g,"").replace(/'/g,"\\'").replace(/\\"/g,'"')+"'";return ctx.stylize(simple,"string")}if(isNumber(value))return ctx.stylize(""+value,"number");if(isBoolean(value))return ctx.stylize(""+value,"boolean");if(isNull(value))return ctx.stylize("null","null")}(ctx,value);if(primitive)return primitive;var keys=Object.keys(value),visibleKeys=function(array){var hash={};return array.forEach(function(val,idx){hash[val]=!0}),hash}(keys);if(ctx.showHidden&&(keys=Object.getOwnPropertyNames(value)),isError(value)&&(0<=keys.indexOf("message")||0<=keys.indexOf("description")))return formatError(value);if(0===keys.length){if(isFunction(value)){var name=value.name?": "+value.name:"";return ctx.stylize("[Function"+name+"]","special")}if(isRegExp(value))return ctx.stylize(RegExp.prototype.toString.call(value),"regexp");if(isDate(value))return ctx.stylize(Date.prototype.toString.call(value),"date");if(isError(value))return formatError(value)}var output,base="",array=!1,braces=["{","}"];isArray(value)&&(array=!0,braces=["[","]"]),isFunction(value)&&(base=" [Function"+(value.name?": "+value.name:"")+"]");return isRegExp(value)&&(base=" "+RegExp.prototype.toString.call(value)),isDate(value)&&(base=" "+Date.prototype.toUTCString.call(value)),isError(value)&&(base=" "+formatError(value)),0!==keys.length||array&&0!=value.length?recurseTimes<0?isRegExp(value)?ctx.stylize(RegExp.prototype.toString.call(value),"regexp"):ctx.stylize("[Object]","special"):(ctx.seen.push(value),output=array?function(ctx,value,recurseTimes,visibleKeys,keys){for(var output=[],i=0,l=value.length;i<l;++i)hasOwnProperty(value,String(i))?output.push(formatProperty(ctx,value,recurseTimes,visibleKeys,String(i),!0)):output.push("");return keys.forEach(function(key){key.match(/^\d+$/)||output.push(formatProperty(ctx,value,recurseTimes,visibleKeys,key,!0))}),output}(ctx,value,recurseTimes,visibleKeys,keys):keys.map(function(key){return formatProperty(ctx,value,recurseTimes,visibleKeys,key,array)}),ctx.seen.pop(),function(output,base,braces){if(60<output.reduce(function(prev,cur){return 0,0<=cur.indexOf("\n")&&0,prev+cur.replace(/\u001b\[\d\d?m/g,"").length+1},0))return braces[0]+(""===base?"":base+"\n ")+" "+output.join(",\n ")+" "+braces[1];return braces[0]+base+" "+output.join(", ")+" "+braces[1]}(output,base,braces)):braces[0]+base+braces[1]}function formatError(value){return"["+Error.prototype.toString.call(value)+"]"}function formatProperty(ctx,value,recurseTimes,visibleKeys,key,array){var name,str,desc;if((desc=Object.getOwnPropertyDescriptor(value,key)||{value:value[key]}).get?str=desc.set?ctx.stylize("[Getter/Setter]","special"):ctx.stylize("[Getter]","special"):desc.set&&(str=ctx.stylize("[Setter]","special")),hasOwnProperty(visibleKeys,key)||(name="["+key+"]"),str||(ctx.seen.indexOf(desc.value)<0?-1<(str=isNull(recurseTimes)?formatValue(ctx,desc.value,null):formatValue(ctx,desc.value,recurseTimes-1)).indexOf("\n")&&(str=array?str.split("\n").map(function(line){return" "+line}).join("\n").substr(2):"\n"+str.split("\n").map(function(line){return" "+line}).join("\n")):str=ctx.stylize("[Circular]","special")),isUndefined(name)){if(array&&key.match(/^\d+$/))return str;name=(name=JSON.stringify(""+key)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(name=name.substr(1,name.length-2),ctx.stylize(name,"name")):(name=name.replace(/'/g,"\\'").replace(/\\"/g,'"').replace(/(^"|"$)/g,"'"),ctx.stylize(name,"string"))}return name+": "+str}function isArray(ar){return Array.isArray(ar)}function isBoolean(arg){return"boolean"==typeof arg}function isNull(arg){return null===arg}function isNumber(arg){return"number"==typeof arg}function isString(arg){return"string"==typeof arg}function isUndefined(arg){return void 0===arg}function isRegExp(re){return isObject(re)&&"[object RegExp]"===objectToString(re)}function isObject(arg){return"object"==typeof arg&&null!==arg}function isDate(d){return isObject(d)&&"[object Date]"===objectToString(d)}function isError(e){return isObject(e)&&("[object Error]"===objectToString(e)||e instanceof Error)}function isFunction(arg){return"function"==typeof arg}function objectToString(o){return Object.prototype.toString.call(o)}function pad(n){return n<10?"0"+n.toString(10):n.toString(10)}exports.debuglog=function(set){if(isUndefined(debugEnviron)&&(debugEnviron=process.env.NODE_DEBUG||""),set=set.toUpperCase(),!debugs[set])if(new RegExp("\\b"+set+"\\b","i").test(debugEnviron)){var pid=process.pid;debugs[set]=function(){var msg=exports.format.apply(exports,arguments);console.error("%s %d: %s",set,pid,msg)}}else debugs[set]=function(){};return debugs[set]},(exports.inspect=inspect).colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},inspect.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},exports.isArray=isArray,exports.isBoolean=isBoolean,exports.isNull=isNull,exports.isNullOrUndefined=function(arg){return null==arg},exports.isNumber=isNumber,exports.isString=isString,exports.isSymbol=function(arg){return"symbol"==typeof arg},exports.isUndefined=isUndefined,exports.isRegExp=isRegExp,exports.isObject=isObject,exports.isDate=isDate,exports.isError=isError,exports.isFunction=isFunction,exports.isPrimitive=function(arg){return null===arg||"boolean"==typeof arg||"number"==typeof arg||"string"==typeof arg||"symbol"==typeof arg||void 0===arg},exports.isBuffer=require("./support/isBuffer");var months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function hasOwnProperty(obj,prop){return Object.prototype.hasOwnProperty.call(obj,prop)}exports.log=function(){console.log("%s - %s",function(){var d=new Date,time=[pad(d.getHours()),pad(d.getMinutes()),pad(d.getSeconds())].join(":");return[d.getDate(),months[d.getMonth()],time].join(" ")}(),exports.format.apply(exports,arguments))},exports.inherits=require("inherits"),exports._extend=function(origin,add){if(!add||!isObject(add))return origin;for(var keys=Object.keys(add),i=keys.length;i--;)origin[keys[i]]=add[keys[i]];return origin}}).call(this,require("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./support/isBuffer":216,_process:197,inherits:215}],218:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj},_graphqlLanguageServiceInterface=require("graphql-language-service-interface");_codemirror.default.registerHelper("hint","graphql",function(editor,options){var schema=options.schema;if(schema){var cur=editor.getCursor(),token=editor.getTokenAt(cur),rawResults=(0,_graphqlLanguageServiceInterface.getAutocompleteSuggestions)(schema,editor.getValue(),cur,token),tokenStart=null!==token.type&&/"|\w/.test(token.string[0])?token.start:token.end,results={list:rawResults.map(function(item){return{text:item.label,type:schema.getType(item.detail),description:item.documentation,isDeprecated:item.isDeprecated,deprecationReason:item.deprecationReason}}),from:{line:cur.line,column:tokenStart},to:{line:cur.line,column:token.end}};return results&&results.list&&0<results.list.length&&(results.from=_codemirror.default.Pos(results.from.line,results.from.column),results.to=_codemirror.default.Pos(results.to.line,results.to.column),_codemirror.default.signal(editor,"hasCompletion",editor,results,token)),results}})},{codemirror:15,"graphql-language-service-interface":278}],219:[function(require,module,exports){"use strict";var _graphql=require("graphql"),_codemirror=_interopRequireDefault(require("codemirror")),_getTypeInfo=_interopRequireDefault(require("./utils/getTypeInfo")),_SchemaReference=require("./utils/SchemaReference");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function renderQualifiedField(into,typeInfo,options){var fieldName=typeInfo.fieldDef.name;"__"!==fieldName.slice(0,2)&&(renderType(into,typeInfo,options,typeInfo.parentType),text(into,".")),text(into,fieldName,"field-name",options,(0,_SchemaReference.getFieldReference)(typeInfo))}function renderDirective(into,typeInfo,options){text(into,"@"+typeInfo.directiveDef.name,"directive-name",options,(0,_SchemaReference.getDirectiveReference)(typeInfo))}function renderTypeAnnotation(into,typeInfo,options,t){text(into,": "),renderType(into,typeInfo,options,t)}function renderType(into,typeInfo,options,t){t instanceof _graphql.GraphQLNonNull?(renderType(into,typeInfo,options,t.ofType),text(into,"!")):t instanceof _graphql.GraphQLList?(text(into,"["),renderType(into,typeInfo,options,t.ofType),text(into,"]")):text(into,t.name,"type-name",options,(0,_SchemaReference.getTypeReference)(typeInfo,t))}function renderDescription(into,options,def){var description=def.description;if(description){var descriptionDiv=document.createElement("div");descriptionDiv.className="info-description",options.renderDescription?descriptionDiv.innerHTML=options.renderDescription(description):descriptionDiv.appendChild(document.createTextNode(description)),into.appendChild(descriptionDiv)}!function(into,options,def){var reason=def.deprecationReason;if(reason){var deprecationDiv=document.createElement("div");deprecationDiv.className="info-deprecation",options.renderDescription?deprecationDiv.innerHTML=options.renderDescription(reason):deprecationDiv.appendChild(document.createTextNode(reason));var label=document.createElement("span");label.className="info-deprecation-label",label.appendChild(document.createTextNode("Deprecated: ")),deprecationDiv.insertBefore(label,deprecationDiv.firstChild),into.appendChild(deprecationDiv)}}(into,options,def)}function text(into,content,className){var options=3<arguments.length&&void 0!==arguments[3]?arguments[3]:{onClick:null},ref=4<arguments.length?arguments[4]:void 0;if(className){var node,onClick=options.onClick;onClick?((node=document.createElement("a")).href="javascript:void 0",node.addEventListener("click",function(e){onClick(ref,e)})):node=document.createElement("span"),node.className=className,node.appendChild(document.createTextNode(content)),into.appendChild(node)}else into.appendChild(document.createTextNode(content))}require("./utils/info-addon"),_codemirror.default.registerHelper("info","graphql",function(token,options){if(options.schema&&token.state){var state=token.state,kind=state.kind,step=state.step,typeInfo=(0,_getTypeInfo.default)(options.schema,token.state);if("Field"===kind&&0===step&&typeInfo.fieldDef||"AliasedField"===kind&&2===step&&typeInfo.fieldDef){var into=document.createElement("div");return function(into,typeInfo,options){renderQualifiedField(into,typeInfo,options),renderTypeAnnotation(into,typeInfo,options,typeInfo.type)}(into,typeInfo,options),renderDescription(into,options,typeInfo.fieldDef),into}if("Directive"===kind&&1===step&&typeInfo.directiveDef){var _into=document.createElement("div");return renderDirective(_into,typeInfo,options),renderDescription(_into,options,typeInfo.directiveDef),_into}if("Argument"===kind&&0===step&&typeInfo.argDef){var _into2=document.createElement("div");return function(into,typeInfo,options){typeInfo.directiveDef?renderDirective(into,typeInfo,options):typeInfo.fieldDef&&renderQualifiedField(into,typeInfo,options);var name=typeInfo.argDef.name;text(into,"("),text(into,name,"arg-name",options,(0,_SchemaReference.getArgumentReference)(typeInfo)),renderTypeAnnotation(into,typeInfo,options,typeInfo.inputType),text(into,")")}(_into2,typeInfo,options),renderDescription(_into2,options,typeInfo.argDef),_into2}if("EnumValue"===kind&&typeInfo.enumValue&&typeInfo.enumValue.description){var _into3=document.createElement("div");return function(into,typeInfo,options){var name=typeInfo.enumValue.name;renderType(into,typeInfo,options,typeInfo.inputType),text(into,"."),text(into,name,"enum-value",options,(0,_SchemaReference.getEnumValueReference)(typeInfo))}(_into3,typeInfo,options),renderDescription(_into3,options,typeInfo.enumValue),_into3}if("NamedType"===kind&&typeInfo.type&&typeInfo.type.description){var _into4=document.createElement("div");return renderType(_into4,typeInfo,options,typeInfo.type),renderDescription(_into4,options,typeInfo.type),_into4}}})},{"./utils/SchemaReference":224,"./utils/getTypeInfo":226,"./utils/info-addon":228,codemirror:15,graphql:28}],220:[function(require,module,exports){"use strict";var _codemirror=_interopRequireDefault(require("codemirror")),_getTypeInfo=_interopRequireDefault(require("./utils/getTypeInfo")),_SchemaReference=require("./utils/SchemaReference");function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}require("./utils/jump-addon"),_codemirror.default.registerHelper("jump","graphql",function(token,options){if(options.schema&&options.onClick&&token.state){var state=token.state,kind=state.kind,step=state.step,typeInfo=(0,_getTypeInfo.default)(options.schema,state);return"Field"===kind&&0===step&&typeInfo.fieldDef||"AliasedField"===kind&&2===step&&typeInfo.fieldDef?(0,_SchemaReference.getFieldReference)(typeInfo):"Directive"===kind&&1===step&&typeInfo.directiveDef?(0,_SchemaReference.getDirectiveReference)(typeInfo):"Argument"===kind&&0===step&&typeInfo.argDef?(0,_SchemaReference.getArgumentReference)(typeInfo):"EnumValue"===kind&&typeInfo.enumValue?(0,_SchemaReference.getEnumValueReference)(typeInfo):"NamedType"===kind&&typeInfo.type?(0,_SchemaReference.getTypeReference)(typeInfo):void 0}})},{"./utils/SchemaReference":224,"./utils/getTypeInfo":226,"./utils/jump-addon":230,codemirror:15}],221:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj},_graphqlLanguageServiceInterface=require("graphql-language-service-interface");var SEVERITY=["error","warning","information","hint"],TYPE={"GraphQL: Validation":"validation","GraphQL: Deprecation":"deprecation","GraphQL: Syntax":"syntax"};_codemirror.default.registerHelper("lint","graphql",function(text,options){var schema=options.schema;return(0,_graphqlLanguageServiceInterface.getDiagnostics)(text,schema).map(function(error){return{message:error.message,severity:SEVERITY[error.severity-1],type:TYPE[error.source],from:_codemirror.default.Pos(error.range.start.line,error.range.start.character),to:_codemirror.default.Pos(error.range.end.line,error.range.end.character)}})})},{codemirror:15,"graphql-language-service-interface":278}],222:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj},_graphqlLanguageServiceParser=require("graphql-language-service-parser");function indent(state,textAfter){var levels=state.levels;return(levels&&0!==levels.length?levels[levels.length-1]-(this.electricInput.test(textAfter)?1:0):state.indentLevel)*this.config.indentUnit}_codemirror.default.defineMode("graphql",function(config){var parser=(0,_graphqlLanguageServiceParser.onlineParser)({eatWhitespace:function(stream){return stream.eatWhile(_graphqlLanguageServiceParser.isIgnored)},lexRules:_graphqlLanguageServiceParser.LexRules,parseRules:_graphqlLanguageServiceParser.ParseRules,editorConfig:{tabSize:config.tabSize}});return{config:config,startState:parser.startState,token:parser.token,indent:indent,electricInput:/^\s*[})\]]/,fold:"brace",lineComment:"#",closeBrackets:{pairs:'()[]{}""',explode:"()[]{}"}}})},{codemirror:15,"graphql-language-service-parser":282}],223:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj},_graphqlLanguageServiceParser=require("graphql-language-service-parser");function indent(state,textAfter){var levels=state.levels;return(levels&&0!==levels.length?levels[levels.length-1]-(this.electricInput.test(textAfter)?1:0):state.indentLevel)*this.config.indentUnit}_codemirror.default.defineMode("graphql-results",function(config){var parser=(0,_graphqlLanguageServiceParser.onlineParser)({eatWhitespace:function(stream){return stream.eatSpace()},lexRules:LexRules,parseRules:ParseRules,editorConfig:{tabSize:config.tabSize}});return{config:config,startState:parser.startState,token:parser.token,indent:indent,electricInput:/^\s*[}\]]/,fold:"brace",closeBrackets:{pairs:'[]{}""',explode:"[]{}"}}});var LexRules={Punctuation:/^\[|]|\{|\}|:|,/,Number:/^-?(?:0|(?:[1-9][0-9]*))(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?/,String:/^"(?:[^"\\]|\\(?:"|\/|\\|b|f|n|r|t|u[0-9a-fA-F]{4}))*"?/,Keyword:/^true|false|null/},ParseRules={Document:[(0,_graphqlLanguageServiceParser.p)("{"),(0,_graphqlLanguageServiceParser.list)("Entry",(0,_graphqlLanguageServiceParser.p)(",")),(0,_graphqlLanguageServiceParser.p)("}")],Entry:[(0,_graphqlLanguageServiceParser.t)("String","def"),(0,_graphqlLanguageServiceParser.p)(":"),"Value"],Value:function(token){switch(token.kind){case"Number":return"NumberValue";case"String":return"StringValue";case"Punctuation":switch(token.value){case"[":return"ListValue";case"{":return"ObjectValue"}return null;case"Keyword":switch(token.value){case"true":case"false":return"BooleanValue";case"null":return"NullValue"}return null}},NumberValue:[(0,_graphqlLanguageServiceParser.t)("Number","number")],StringValue:[(0,_graphqlLanguageServiceParser.t)("String","string")],BooleanValue:[(0,_graphqlLanguageServiceParser.t)("Keyword","builtin")],NullValue:[(0,_graphqlLanguageServiceParser.t)("Keyword","keyword")],ListValue:[(0,_graphqlLanguageServiceParser.p)("["),(0,_graphqlLanguageServiceParser.list)("Value",(0,_graphqlLanguageServiceParser.p)(",")),(0,_graphqlLanguageServiceParser.p)("]")],ObjectValue:[(0,_graphqlLanguageServiceParser.p)("{"),(0,_graphqlLanguageServiceParser.list)("ObjectField",(0,_graphqlLanguageServiceParser.p)(",")),(0,_graphqlLanguageServiceParser.p)("}")],ObjectField:[(0,_graphqlLanguageServiceParser.t)("String","property"),(0,_graphqlLanguageServiceParser.p)(":"),"Value"]}},{codemirror:15,"graphql-language-service-parser":282}],224:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getFieldReference=function(typeInfo){return{kind:"Field",schema:typeInfo.schema,field:typeInfo.fieldDef,type:isMetaField(typeInfo.fieldDef)?null:typeInfo.parentType}},exports.getDirectiveReference=function(typeInfo){return{kind:"Directive",schema:typeInfo.schema,directive:typeInfo.directiveDef}},exports.getArgumentReference=function(typeInfo){return typeInfo.directiveDef?{kind:"Argument",schema:typeInfo.schema,argument:typeInfo.argDef,directive:typeInfo.directiveDef}:{kind:"Argument",schema:typeInfo.schema,argument:typeInfo.argDef,field:typeInfo.fieldDef,type:isMetaField(typeInfo.fieldDef)?null:typeInfo.parentType}},exports.getEnumValueReference=function(typeInfo){return{kind:"EnumValue",value:typeInfo.enumValue,type:(0,_graphql.getNamedType)(typeInfo.inputType)}},exports.getTypeReference=function(typeInfo,type){return{kind:"Type",schema:typeInfo.schema,type:type||typeInfo.type}};var _graphql=require("graphql");function isMetaField(fieldDef){return"__"===fieldDef.name.slice(0,2)}},{graphql:28}],225:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(stack,fn){var reverseStateStack=[],state=stack;for(;state&&state.kind;)reverseStateStack.push(state),state=state.prevState;for(var i=reverseStateStack.length-1;0<=i;i--)fn(reverseStateStack[i])}},{}],226:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(schema,tokenState){var info={schema:schema,type:null,parentType:null,inputType:null,directiveDef:null,fieldDef:null,argDef:null,argDefs:null,objectFieldDefs:null};return(0,_forEachState.default)(tokenState,function(state){switch(state.kind){case"Query":case"ShortQuery":info.type=schema.getQueryType();break;case"Mutation":info.type=schema.getMutationType();break;case"Subscription":info.type=schema.getSubscriptionType();break;case"InlineFragment":case"FragmentDefinition":state.type&&(info.type=schema.getType(state.type));break;case"Field":case"AliasedField":info.fieldDef=info.type&&state.name?getFieldDef(schema,info.parentType,state.name):null,info.type=info.fieldDef&&info.fieldDef.type;break;case"SelectionSet":info.parentType=(0,_graphql.getNamedType)(info.type);break;case"Directive":info.directiveDef=state.name&&schema.getDirective(state.name);break;case"Arguments":var parentDef="Field"===state.prevState.kind?info.fieldDef:"Directive"===state.prevState.kind?info.directiveDef:"AliasedField"===state.prevState.kind?state.prevState.name&&getFieldDef(schema,info.parentType,state.prevState.name):null;info.argDefs=parentDef&&parentDef.args;break;case"Argument":if(info.argDef=null,info.argDefs)for(var i=0;i<info.argDefs.length;i++)if(info.argDefs[i].name===state.name){info.argDef=info.argDefs[i];break}info.inputType=info.argDef&&info.argDef.type;break;case"EnumValue":var enumType=(0,_graphql.getNamedType)(info.inputType);info.enumValue=enumType instanceof _graphql.GraphQLEnumType?function(array,predicate){for(var i=0;i<array.length;i++)if(predicate(array[i]))return array[i]}(enumType.getValues(),function(val){return val.value===state.name}):null;break;case"ListValue":var nullableType=(0,_graphql.getNullableType)(info.inputType);info.inputType=nullableType instanceof _graphql.GraphQLList?nullableType.ofType:null;break;case"ObjectValue":var objectType=(0,_graphql.getNamedType)(info.inputType);info.objectFieldDefs=objectType instanceof _graphql.GraphQLInputObjectType?objectType.getFields():null;break;case"ObjectField":var objectField=state.name&&info.objectFieldDefs?info.objectFieldDefs[state.name]:null;info.inputType=objectField&&objectField.type;break;case"NamedType":info.type=schema.getType(state.name)}}),info};var obj,_graphql=require("graphql"),_introspection=require("graphql/type/introspection"),_forEachState=(obj=require("./forEachState"))&&obj.__esModule?obj:{default:obj};function getFieldDef(schema,type,fieldName){return fieldName===_introspection.SchemaMetaFieldDef.name&&schema.getQueryType()===type?_introspection.SchemaMetaFieldDef:fieldName===_introspection.TypeMetaFieldDef.name&&schema.getQueryType()===type?_introspection.TypeMetaFieldDef:fieldName===_introspection.TypeNameMetaFieldDef.name&&(0,_graphql.isCompositeType)(type)?_introspection.TypeNameMetaFieldDef:type.getFields?type.getFields()[fieldName]:void 0}},{"./forEachState":225,graphql:28,"graphql/type/introspection":70}],227:[function(require,module,exports){"use strict";function filterNonEmpty(array,predicate){var filtered=array.filter(predicate);return 0===filtered.length?array:filtered}function normalizeText(text){return text.toLowerCase().replace(/\W/g,"")}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(cursor,token,list){var hints=function(list,text){return text?filterNonEmpty(filterNonEmpty(list.map(function(entry){return{proximity:function(suggestion,text){var proximity=function(a,b){var i,j,d=[],aLength=a.length,bLength=b.length;for(i=0;i<=aLength;i++)d[i]=[i];for(j=1;j<=bLength;j++)d[0][j]=j;for(i=1;i<=aLength;i++)for(j=1;j<=bLength;j++){var cost=a[i-1]===b[j-1]?0:1;d[i][j]=Math.min(d[i-1][j]+1,d[i][j-1]+1,d[i-1][j-1]+cost),1<i&&1<j&&a[i-1]===b[j-2]&&a[i-2]===b[j-1]&&(d[i][j]=Math.min(d[i][j],d[i-2][j-2]+cost))}return d[aLength][bLength]}(text,suggestion);return suggestion.length>text.length&&(proximity-=suggestion.length-text.length-1,proximity+=0===suggestion.indexOf(text)?0:.5),proximity}(normalizeText(entry.text),text),entry:entry}}),function(pair){return pair.proximity<=2}),function(pair){return!pair.entry.isDeprecated}).sort(function(a,b){return(a.entry.isDeprecated?1:0)-(b.entry.isDeprecated?1:0)||a.proximity-b.proximity||a.entry.text.length-b.entry.text.length}).map(function(pair){return pair.entry}):filterNonEmpty(list,function(entry){return!entry.isDeprecated})}(list,normalizeText(token.string));if(!hints)return;var tokenStart=null!==token.type&&/"|\w/.test(token.string[0])?token.start:token.end;return{list:hints,from:{line:cursor.line,column:tokenStart},to:{line:cursor.line,column:token.end}}}},{}],228:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj};_codemirror.default.defineOption("info",!1,function(cm,options,old){if(old&&old!==_codemirror.default.Init){var oldOnMouseOver=cm.state.info.onMouseOver;_codemirror.default.off(cm.getWrapperElement(),"mouseover",oldOnMouseOver),clearTimeout(cm.state.info.hoverTimeout),delete cm.state.info}if(options){var state=cm.state.info=function(options){return{options:options instanceof Function?{render:options}:!0===options?{}:options}}(options);state.onMouseOver=function(cm,e){var state=cm.state.info,target=e.target||e.srcElement;if("SPAN"!==target.nodeName||void 0!==state.hoverTimeout)return;var box=target.getBoundingClientRect(),hoverTime=function(cm){var options=cm.state.info.options;return options&&options.hoverTime||500}(cm);state.hoverTimeout=setTimeout(onHover,hoverTime);var onMouseMove=function(){clearTimeout(state.hoverTimeout),state.hoverTimeout=setTimeout(onHover,hoverTime)},onMouseOut=function onMouseOut(){_codemirror.default.off(document,"mousemove",onMouseMove),_codemirror.default.off(cm.getWrapperElement(),"mouseout",onMouseOut),clearTimeout(state.hoverTimeout),state.hoverTimeout=void 0},onHover=function(){_codemirror.default.off(document,"mousemove",onMouseMove),_codemirror.default.off(cm.getWrapperElement(),"mouseout",onMouseOut),state.hoverTimeout=void 0,function(cm,box){var pos=cm.coordsChar({left:(box.left+box.right)/2,top:(box.top+box.bottom)/2}),options=cm.state.info.options,render=options.render||cm.getHelper(pos,"info");if(render){var token=cm.getTokenAt(pos,!0);if(token){var info=render(token,options,cm,pos);info&&function(cm,box,info){var popup=document.createElement("div");popup.className="CodeMirror-info",popup.appendChild(info),document.body.appendChild(popup);var popupBox=popup.getBoundingClientRect(),popupStyle=popup.currentStyle||window.getComputedStyle(popup),popupWidth=popupBox.right-popupBox.left+parseFloat(popupStyle.marginLeft)+parseFloat(popupStyle.marginRight),popupHeight=popupBox.bottom-popupBox.top+parseFloat(popupStyle.marginTop)+parseFloat(popupStyle.marginBottom),topPos=box.bottom;popupHeight>window.innerHeight-box.bottom-15&&box.top>window.innerHeight-box.bottom&&(topPos=box.top-popupHeight);topPos<0&&(topPos=box.bottom);var popupTimeout,leftPos=Math.max(0,window.innerWidth-popupWidth-15);leftPos>box.left&&(leftPos=box.left);popup.style.opacity=1,popup.style.top=topPos+"px",popup.style.left=leftPos+"px";var onMouseOverPopup=function(){clearTimeout(popupTimeout)},onMouseOut=function(){clearTimeout(popupTimeout),popupTimeout=setTimeout(hidePopup,200)},hidePopup=function(){_codemirror.default.off(popup,"mouseover",onMouseOverPopup),_codemirror.default.off(popup,"mouseout",onMouseOut),_codemirror.default.off(cm.getWrapperElement(),"mouseout",onMouseOut),popup.style.opacity?(popup.style.opacity=0,setTimeout(function(){popup.parentNode&&popup.parentNode.removeChild(popup)},600)):popup.parentNode&&popup.parentNode.removeChild(popup)};_codemirror.default.on(popup,"mouseover",onMouseOverPopup),_codemirror.default.on(popup,"mouseout",onMouseOut),_codemirror.default.on(cm.getWrapperElement(),"mouseout",onMouseOut)}(cm,box,info)}}}(cm,box)};_codemirror.default.on(document,"mousemove",onMouseMove),_codemirror.default.on(cm.getWrapperElement(),"mouseout",onMouseOut)}.bind(null,cm),_codemirror.default.on(cm.getWrapperElement(),"mouseover",state.onMouseOver)}})},{codemirror:15}],229:[function(require,module,exports){"use strict";var string,strLen,start,end,lastEnd,code,kind;function parseObj(){var nodeStart=start,members=[];if(expect("{"),!skip("}")){for(;members.push(parseMember()),skip(","););expect("}")}return{kind:"Object",start:nodeStart,end:lastEnd,members:members}}function parseMember(){var nodeStart=start,key="String"===kind?curToken():null;expect("String"),expect(":");var value=parseVal();return{kind:"Member",start:nodeStart,end:lastEnd,key:key,value:value}}function parseVal(){switch(kind){case"[":return function(){var nodeStart=start,values=[];if(expect("["),!skip("]")){for(;values.push(parseVal()),skip(","););expect("]")}return{kind:"Array",start:nodeStart,end:lastEnd,values:values}}();case"{":return parseObj();case"String":case"Number":case"Boolean":case"Null":var token=curToken();return lex(),token}return expect("Value")}function curToken(){return{kind:kind,start:start,end:end,value:JSON.parse(string.slice(start,end))}}function expect(str){if(kind!==str){var found;if("EOF"===kind)found="[end of file]";else if(1<end-start)found="`"+string.slice(start,end)+"`";else{var match=string.slice(start).match(/^.+?\b/);found="`"+(match?match[0]:string[start])+"`"}throw syntaxError("Expected ".concat(str," but found ").concat(found,"."))}lex()}function syntaxError(message){return{message:message,start:start,end:end}}function skip(k){if(kind===k)return lex(),!0}function ch(){end<strLen&&(code=++end===strLen?0:string.charCodeAt(end))}function lex(){for(lastEnd=end;9===code||10===code||13===code||32===code;)ch();if(0!==code){switch(start=end,code){case 34:return kind="String",function(){ch();for(;34!==code&&31<code;)if(92===code)switch(ch(),code){case 34:case 47:case 92:case 98:case 102:case 110:case 114:case 116:ch();break;case 117:ch(),readHex(),readHex(),readHex(),readHex();break;default:throw syntaxError("Bad character escape sequence.")}else{if(end===strLen)throw syntaxError("Unterminated string.");ch()}if(34!==code)throw syntaxError("Unterminated string.");return void ch()}();case 45:case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return kind="Number",function(){45===code&&ch();48===code?ch():readDigits();46===code&&(ch(),readDigits());69!==code&&101!==code||(ch(),43!==code&&45!==code||ch(),readDigits())}();case 102:if("false"!==string.slice(start,start+5))break;return end+=4,ch(),void(kind="Boolean");case 110:if("null"!==string.slice(start,start+4))break;return end+=3,ch(),void(kind="Null");case 116:if("true"!==string.slice(start,start+4))break;return end+=3,ch(),void(kind="Boolean")}kind=string[start],ch()}else kind="EOF"}function readHex(){if(48<=code&&code<=57||65<=code&&code<=70||97<=code&&code<=102)return ch();throw syntaxError("Expected hexadecimal digit.")}function readDigits(){if(code<48||57<code)throw syntaxError("Expected decimal digit.");for(;ch(),48<=code&&code<=57;);}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(str){strLen=(string=str).length,start=end=lastEnd=-1,ch(),lex();var ast=parseObj();return expect("EOF"),ast}},{}],230:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj};_codemirror.default.defineOption("jump",!1,function(cm,options,old){if(old&&old!==_codemirror.default.Init){var oldOnMouseOver=cm.state.jump.onMouseOver;_codemirror.default.off(cm.getWrapperElement(),"mouseover",oldOnMouseOver);var oldOnMouseOut=cm.state.jump.onMouseOut;_codemirror.default.off(cm.getWrapperElement(),"mouseout",oldOnMouseOut),_codemirror.default.off(document,"keydown",cm.state.jump.onKeyDown),delete cm.state.jump}if(options){var state=cm.state.jump={options:options,onMouseOver:function(cm,event){var target=event.target||event.srcElement;if("SPAN"!==target.nodeName)return;var box=target.getBoundingClientRect(),cursor={left:(box.left+box.right)/2,top:(box.top+box.bottom)/2};cm.state.jump.cursor=cursor,cm.state.jump.isHoldingModifier&&enableJumpMode(cm)}.bind(null,cm),onMouseOut:function(cm){if(!cm.state.jump.isHoldingModifier&&cm.state.jump.cursor)return void(cm.state.jump.cursor=null);cm.state.jump.isHoldingModifier&&cm.state.jump.marker&&disableJumpMode(cm)}.bind(null,cm),onKeyDown:function(cm,event){if(cm.state.jump.isHoldingModifier||!function(key){return key===(isMac?"Meta":"Control")}(event.key))return;cm.state.jump.isHoldingModifier=!0,cm.state.jump.cursor&&enableJumpMode(cm);var onClick=function(clickEvent){var destination=cm.state.jump.destination;destination&&cm.state.jump.options.onClick(destination,clickEvent)},onMouseDown=function(_,downEvent){cm.state.jump.destination&&(downEvent.codemirrorIgnore=!0)};_codemirror.default.on(document,"keyup",function onKeyUp(upEvent){if(upEvent.code!==event.code)return;cm.state.jump.isHoldingModifier=!1,cm.state.jump.marker&&disableJumpMode(cm);_codemirror.default.off(document,"keyup",onKeyUp),_codemirror.default.off(document,"click",onClick),cm.off("mousedown",onMouseDown)}),_codemirror.default.on(document,"click",onClick),cm.on("mousedown",onMouseDown)}.bind(null,cm)};_codemirror.default.on(cm.getWrapperElement(),"mouseover",state.onMouseOver),_codemirror.default.on(cm.getWrapperElement(),"mouseout",state.onMouseOut),_codemirror.default.on(document,"keydown",state.onKeyDown)}});var isMac=navigator&&-1!==navigator.appVersion.indexOf("Mac");function enableJumpMode(cm){if(!cm.state.jump.marker){var cursor=cm.state.jump.cursor,pos=cm.coordsChar(cursor),token=cm.getTokenAt(pos,!0),options=cm.state.jump.options,getDestination=options.getDestination||cm.getHelper(pos,"jump");if(getDestination){var destination=getDestination(token,options,cm);if(destination){var marker=cm.markText({line:pos.line,ch:token.start},{line:pos.line,ch:token.end},{className:"CodeMirror-jump-token"});cm.state.jump.marker=marker,cm.state.jump.destination=destination}}}}function disableJumpMode(cm){var marker=cm.state.jump.marker;cm.state.jump.marker=null,cm.state.jump.destination=null,marker.clear()}},{codemirror:15}],231:[function(require,module,exports){"use strict";var _codemirror=_interopRequireDefault(require("codemirror")),_graphql=require("graphql"),_forEachState=_interopRequireDefault(require("../utils/forEachState")),_hintList=_interopRequireDefault(require("../utils/hintList"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}_codemirror.default.registerHelper("hint","graphql-variables",function(editor,options){var cur=editor.getCursor(),token=editor.getTokenAt(cur),results=function(cur,token,options){var state="Invalid"===token.state.kind?token.state.prevState:token.state,kind=state.kind,step=state.step;if("Document"===kind&&0===step)return(0,_hintList.default)(cur,token,[{text:"{"}]);var variableToType=options.variableToType;if(!variableToType)return;var typeInfo=function(variableToType,tokenState){var info={type:null,fields:null};return(0,_forEachState.default)(tokenState,function(state){if("Variable"===state.kind)info.type=variableToType[state.name];else if("ListValue"===state.kind){var nullableType=(0,_graphql.getNullableType)(info.type);info.type=nullableType instanceof _graphql.GraphQLList?nullableType.ofType:null}else if("ObjectValue"===state.kind){var objectType=(0,_graphql.getNamedType)(info.type);info.fields=objectType instanceof _graphql.GraphQLInputObjectType?objectType.getFields():null}else if("ObjectField"===state.kind){var objectField=state.name&&info.fields?info.fields[state.name]:null;info.type=objectField&&objectField.type}}),info}(variableToType,token.state);if("Document"===kind||"Variable"===kind&&0===step){var variableNames=Object.keys(variableToType);return(0,_hintList.default)(cur,token,variableNames.map(function(name){return{text:'"'.concat(name,'": '),type:variableToType[name]}}))}if(("ObjectValue"===kind||"ObjectField"===kind&&0===step)&&typeInfo.fields){var inputFields=Object.keys(typeInfo.fields).map(function(fieldName){return typeInfo.fields[fieldName]});return(0,_hintList.default)(cur,token,inputFields.map(function(field){return{text:'"'.concat(field.name,'": '),type:field.type,description:field.description}}))}if("StringValue"===kind||"NumberValue"===kind||"BooleanValue"===kind||"NullValue"===kind||"ListValue"===kind&&1===step||"ObjectField"===kind&&2===step||"Variable"===kind&&2===step){var namedInputType=(0,_graphql.getNamedType)(typeInfo.type);if(namedInputType instanceof _graphql.GraphQLInputObjectType)return(0,_hintList.default)(cur,token,[{text:"{"}]);if(namedInputType instanceof _graphql.GraphQLEnumType){var valueMap=namedInputType.getValues(),values=Object.keys(valueMap).map(function(name){return valueMap[name]});return(0,_hintList.default)(cur,token,values.map(function(value){return{text:'"'.concat(value.name,'"'),type:namedInputType,description:value.description}}))}if(namedInputType===_graphql.GraphQLBoolean)return(0,_hintList.default)(cur,token,[{text:"true",type:_graphql.GraphQLBoolean,description:"Not false."},{text:"false",type:_graphql.GraphQLBoolean,description:"Not true."}])}}(cur,token,options);return results&&results.list&&0<results.list.length&&(results.from=_codemirror.default.Pos(results.from.line,results.from.column),results.to=_codemirror.default.Pos(results.to.line,results.to.column),_codemirror.default.signal(editor,"hasCompletion",editor,results,token)),results})},{"../utils/forEachState":225,"../utils/hintList":227,codemirror:15,graphql:28}],232:[function(require,module,exports){"use strict";var _codemirror=_interopRequireDefault(require("codemirror")),_graphql=require("graphql"),_jsonParse=_interopRequireDefault(require("../utils/jsonParse"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _slicedToArray(arr,i){return function(arr){if(Array.isArray(arr))return arr}(arr)||function(arr,i){var _arr=[],_n=!0,_d=!1,_e=void 0;try{for(var _s,_i=arr[Symbol.iterator]();!(_n=(_s=_i.next()).done)&&(_arr.push(_s.value),!i||_arr.length!==i);_n=!0);}catch(err){_d=!0,_e=err}finally{try{_n||null==_i.return||_i.return()}finally{if(_d)throw _e}}return _arr}(arr,i)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function lintError(editor,node,message){return{message:message,severity:"error",type:"validation",from:editor.posFromIndex(node.start),to:editor.posFromIndex(node.end)}}function mapCat(array,mapper){return Array.prototype.concat.apply([],array.map(mapper))}_codemirror.default.registerHelper("lint","graphql-variables",function(text,options,editor){if(!text)return[];var ast;try{ast=(0,_jsonParse.default)(text)}catch(syntaxError){if(syntaxError.stack)throw syntaxError;return[lintError(editor,syntaxError,syntaxError.message)]}var variableToType=options.variableToType;return variableToType?function(editor,variableToType,variablesAST){var errors=[];return variablesAST.members.forEach(function(member){var variableName=member.key.value,type=variableToType[variableName];type?function validateValue(type,valueAST){if(type instanceof _graphql.GraphQLNonNull)return"Null"===valueAST.kind?[[valueAST,'Type "'.concat(type,'" is non-nullable and cannot be null.')]]:validateValue(type.ofType,valueAST);if("Null"===valueAST.kind)return[];if(type instanceof _graphql.GraphQLList){var itemType=type.ofType;return"Array"===valueAST.kind?mapCat(valueAST.values,function(item){return validateValue(itemType,item)}):validateValue(itemType,valueAST)}if(type instanceof _graphql.GraphQLInputObjectType){if("Object"!==valueAST.kind)return[[valueAST,'Type "'.concat(type,'" must be an Object.')]];var providedFields=Object.create(null),fieldErrors=mapCat(valueAST.members,function(member){var fieldName=member.key.value;providedFields[fieldName]=!0;var inputField=type.getFields()[fieldName];if(!inputField)return[[member.key,'Type "'.concat(type,'" does not have a field "').concat(fieldName,'".')]];var fieldType=inputField?inputField.type:void 0;return validateValue(fieldType,member.value)});return Object.keys(type.getFields()).forEach(function(fieldName){if(!providedFields[fieldName]){var fieldType=type.getFields()[fieldName].type;fieldType instanceof _graphql.GraphQLNonNull&&fieldErrors.push([valueAST,'Object of type "'.concat(type,'" is missing required field "').concat(fieldName,'".')])}}),fieldErrors}return"Boolean"===type.name&&"Boolean"!==valueAST.kind||"String"===type.name&&"String"!==valueAST.kind||"ID"===type.name&&"Number"!==valueAST.kind&&"String"!==valueAST.kind||"Float"===type.name&&"Number"!==valueAST.kind||"Int"===type.name&&("Number"!==valueAST.kind||(0|valueAST.value)!==valueAST.value)?[[valueAST,'Expected value of type "'.concat(type,'".')]]:(type instanceof _graphql.GraphQLEnumType||type instanceof _graphql.GraphQLScalarType)&&("String"!==valueAST.kind&&"Number"!==valueAST.kind&&"Boolean"!==valueAST.kind&&"Null"!==valueAST.kind||null==(value=type.parseValue(valueAST.value))||value!=value)?[[valueAST,'Expected value of type "'.concat(type,'".')]]:[];var value}(type,member.value).forEach(function(_ref){var _ref2=_slicedToArray(_ref,2),node=_ref2[0],message=_ref2[1];errors.push(lintError(editor,node,message))}):errors.push(lintError(editor,member.key,'Variable "$'.concat(variableName,'" does not appear in any GraphQL query.')))}),errors}(editor,variableToType,ast):[]})},{"../utils/jsonParse":229,codemirror:15,graphql:28}],233:[function(require,module,exports){"use strict";var obj,_codemirror=(obj=require("codemirror"))&&obj.__esModule?obj:{default:obj},_graphqlLanguageServiceParser=require("graphql-language-service-parser");function indent(state,textAfter){var levels=state.levels;return(levels&&0!==levels.length?levels[levels.length-1]-(this.electricInput.test(textAfter)?1:0):state.indentLevel)*this.config.indentUnit}_codemirror.default.defineMode("graphql-variables",function(config){var parser=(0,_graphqlLanguageServiceParser.onlineParser)({eatWhitespace:function(stream){return stream.eatSpace()},lexRules:LexRules,parseRules:ParseRules,editorConfig:{tabSize:config.tabSize}});return{config:config,startState:parser.startState,token:parser.token,indent:indent,electricInput:/^\s*[}\]]/,fold:"brace",closeBrackets:{pairs:'[]{}""',explode:"[]{}"}}});var LexRules={Punctuation:/^\[|]|\{|\}|:|,/,Number:/^-?(?:0|(?:[1-9][0-9]*))(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?/,String:/^"(?:[^"\\]|\\(?:"|\/|\\|b|f|n|r|t|u[0-9a-fA-F]{4}))*"?/,Keyword:/^true|false|null/},ParseRules={Document:[(0,_graphqlLanguageServiceParser.p)("{"),(0,_graphqlLanguageServiceParser.list)("Variable",(0,_graphqlLanguageServiceParser.opt)((0,_graphqlLanguageServiceParser.p)(","))),(0,_graphqlLanguageServiceParser.p)("}")],Variable:[namedKey("variable"),(0,_graphqlLanguageServiceParser.p)(":"),"Value"],Value:function(token){switch(token.kind){case"Number":return"NumberValue";case"String":return"StringValue";case"Punctuation":switch(token.value){case"[":return"ListValue";case"{":return"ObjectValue"}return null;case"Keyword":switch(token.value){case"true":case"false":return"BooleanValue";case"null":return"NullValue"}return null}},NumberValue:[(0,_graphqlLanguageServiceParser.t)("Number","number")],StringValue:[(0,_graphqlLanguageServiceParser.t)("String","string")],BooleanValue:[(0,_graphqlLanguageServiceParser.t)("Keyword","builtin")],NullValue:[(0,_graphqlLanguageServiceParser.t)("Keyword","keyword")],ListValue:[(0,_graphqlLanguageServiceParser.p)("["),(0,_graphqlLanguageServiceParser.list)("Value",(0,_graphqlLanguageServiceParser.opt)((0,_graphqlLanguageServiceParser.p)(","))),(0,_graphqlLanguageServiceParser.p)("]")],ObjectValue:[(0,_graphqlLanguageServiceParser.p)("{"),(0,_graphqlLanguageServiceParser.list)("ObjectField",(0,_graphqlLanguageServiceParser.opt)((0,_graphqlLanguageServiceParser.p)(","))),(0,_graphqlLanguageServiceParser.p)("}")],ObjectField:[namedKey("attribute"),(0,_graphqlLanguageServiceParser.p)(":"),"Value"]};function namedKey(style){return{style:style,match:function(token){return"String"===token.kind},update:function(state,token){state.name=token.value.slice(1,-1)}}}},{codemirror:15,"graphql-language-service-parser":282}],234:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.DocExplorer=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_graphql=require("graphql"),_FieldDoc=_interopRequireDefault(require("./DocExplorer/FieldDoc")),_SchemaDoc=_interopRequireDefault(require("./DocExplorer/SchemaDoc")),_SearchBox=_interopRequireDefault(require("./DocExplorer/SearchBox")),_SearchResults=_interopRequireDefault(require("./DocExplorer/SearchResults")),_TypeDoc=_interopRequireDefault(require("./DocExplorer/TypeDoc"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var initialNav={name:"Schema",title:"Documentation Explorer"},DocExplorer=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e,t){return this.props.schema!==e.schema||this.state.navStack!==t.navStack}},{key:"render",value:function(){var e,t=this.props.schema,r=this.state.navStack,a=r[r.length-1];e=void 0===t?_react.default.createElement("div",{className:"spinner-container"},_react.default.createElement("div",{className:"spinner"})):t?a.search?_react.default.createElement(_SearchResults.default,{searchValue:a.search,withinType:a.def,schema:t,onClickType:this.handleClickTypeOrField,onClickField:this.handleClickTypeOrField}):1===r.length?_react.default.createElement(_SchemaDoc.default,{schema:t,onClickType:this.handleClickTypeOrField}):(0,_graphql.isType)(a.def)?_react.default.createElement(_TypeDoc.default,{schema:t,type:a.def,onClickType:this.handleClickTypeOrField,onClickField:this.handleClickTypeOrField}):_react.default.createElement(_FieldDoc.default,{field:a.def,onClickType:this.handleClickTypeOrField}):_react.default.createElement("div",{className:"error-container"},"No Schema Available");var n,o=1===r.length||(0,_graphql.isType)(a.def)&&a.def.getFields;return 1<r.length&&(n=r[r.length-2].name),_react.default.createElement("div",{className:"doc-explorer",key:a.name},_react.default.createElement("div",{className:"doc-explorer-title-bar"},n&&_react.default.createElement("div",{className:"doc-explorer-back",onClick:this.handleNavBackClick},n),_react.default.createElement("div",{className:"doc-explorer-title"},a.title||a.name),_react.default.createElement("div",{className:"doc-explorer-rhs"},this.props.children)),_react.default.createElement("div",{className:"doc-explorer-contents"},o&&_react.default.createElement(_SearchBox.default,{value:a.search,placeholder:"Search ".concat(a.name,"..."),onSearch:this.handleSearch}),e))}},{key:"showDoc",value:function(e){var t=this.state.navStack;t[t.length-1].def!==e&&this.setState({navStack:t.concat([{name:e.name,def:e}])})}},{key:"showDocForReference",value:function(e){"Type"===e.kind?this.showDoc(e.type):"Field"===e.kind?this.showDoc(e.field):"Argument"===e.kind&&e.field?this.showDoc(e.field):"EnumValue"===e.kind&&e.type&&this.showDoc(e.type)}},{key:"showSearch",value:function(e){var t=this.state.navStack.slice(),r=t[t.length-1];t[t.length-1]=function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},a=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(a=a.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),a.forEach(function(t){_defineProperty(e,t,r[t])})}return e}({},r,{search:e}),this.setState({navStack:t})}},{key:"reset",value:function(){this.setState({navStack:[initialNav]})}}]),t);function t(){var e;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(e=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this))),"handleNavBackClick",function(){1<e.state.navStack.length&&e.setState({navStack:e.state.navStack.slice(0,-1)})}),_defineProperty(_assertThisInitialized(e),"handleClickTypeOrField",function(t){e.showDoc(t)}),_defineProperty(_assertThisInitialized(e),"handleSearch",function(t){e.showSearch(t)}),e.state={navStack:[initialNav]},e}_defineProperty(exports.DocExplorer=DocExplorer,"propTypes",{schema:_propTypes.default.instanceOf(_graphql.GraphQLSchema)})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./DocExplorer/FieldDoc":237,"./DocExplorer/SchemaDoc":239,"./DocExplorer/SearchBox":240,"./DocExplorer/SearchResults":241,"./DocExplorer/TypeDoc":242,graphql:28,"prop-types":201}],235:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=Argument;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_TypeLink=_interopRequireDefault(require("./TypeLink")),_DefaultValue=_interopRequireDefault(require("./DefaultValue"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function Argument(e){var t=e.arg,r=e.onClickType,a=e.showDefaultValue;return _react.default.createElement("span",{className:"arg"},_react.default.createElement("span",{className:"arg-name"},t.name),": ",_react.default.createElement(_TypeLink.default,{type:t.type,onClick:r}),!1!==a&&_react.default.createElement(_DefaultValue.default,{field:t}))}Argument.propTypes={arg:_propTypes.default.object.isRequired,onClickType:_propTypes.default.func.isRequired,showDefaultValue:_propTypes.default.bool}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./DefaultValue":236,"./TypeLink":243,"prop-types":201}],236:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=DefaultValue;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_graphql=require("graphql");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function DefaultValue(e){var r=e.field,t=r.type,a=r.defaultValue;return void 0!==a?_react.default.createElement("span",null," = ",_react.default.createElement("span",{className:"arg-default-value"},(0,_graphql.print)((0,_graphql.astFromValue)(a,t)))):null}DefaultValue.propTypes={field:_propTypes.default.object.isRequired}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{graphql:28,"prop-types":201}],237:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_Argument=_interopRequireDefault(require("./Argument")),_MarkdownContent=_interopRequireDefault(require("./MarkdownContent")),_TypeLink=_interopRequireDefault(require("./TypeLink"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _possibleConstructorReturn(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var FieldDoc=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e){return this.props.field!==e.field}},{key:"render",value:function(){var e,t=this,r=this.props.field;return r.args&&0<r.args.length&&(e=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"arguments"),r.args.map(function(e){return _react.default.createElement("div",{key:e.name,className:"doc-category-item"},_react.default.createElement("div",null,_react.default.createElement(_Argument.default,{arg:e,onClickType:t.props.onClickType})),_react.default.createElement(_MarkdownContent.default,{className:"doc-value-description",markdown:e.description}))}))),_react.default.createElement("div",null,_react.default.createElement(_MarkdownContent.default,{className:"doc-type-description",markdown:r.description||"No Description"}),r.deprecationReason&&_react.default.createElement(_MarkdownContent.default,{className:"doc-deprecation",markdown:r.deprecationReason}),_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"type"),_react.default.createElement(_TypeLink.default,{type:r.type,onClick:this.props.onClickType})),e)}}]),t);function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}(function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(exports.default=FieldDoc,"propTypes",{field:_propTypes.default.object,onClickType:_propTypes.default.func})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./Argument":235,"./MarkdownContent":238,"./TypeLink":243,"prop-types":201}],238:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _possibleConstructorReturn(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var md=new(_interopRequireDefault(require("markdown-it")).default),MarkdownContent=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e){return this.props.markdown!==e.markdown}},{key:"render",value:function(){var e=this.props.markdown;return e?_react.default.createElement("div",{className:this.props.className,dangerouslySetInnerHTML:{__html:md.render(e)}}):_react.default.createElement("div",null)}}]),t);function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}(function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(exports.default=MarkdownContent,"propTypes",{markdown:_propTypes.default.string,className:_propTypes.default.string})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"markdown-it":139,"prop-types":201}],239:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_TypeLink=_interopRequireDefault(require("./TypeLink")),_MarkdownContent=_interopRequireDefault(require("./MarkdownContent"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _possibleConstructorReturn(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var SchemaDoc=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e){return this.props.schema!==e.schema}},{key:"render",value:function(){var e=this.props.schema,t=e.getQueryType(),r=e.getMutationType&&e.getMutationType(),o=e.getSubscriptionType&&e.getSubscriptionType();return _react.default.createElement("div",null,_react.default.createElement(_MarkdownContent.default,{className:"doc-type-description",markdown:"A GraphQL schema provides a root type for each kind of operation."}),_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"root types"),_react.default.createElement("div",{className:"doc-category-item"},_react.default.createElement("span",{className:"keyword"},"query"),": ",_react.default.createElement(_TypeLink.default,{type:t,onClick:this.props.onClickType})),r&&_react.default.createElement("div",{className:"doc-category-item"},_react.default.createElement("span",{className:"keyword"},"mutation"),": ",_react.default.createElement(_TypeLink.default,{type:r,onClick:this.props.onClickType})),o&&_react.default.createElement("div",{className:"doc-category-item"},_react.default.createElement("span",{className:"keyword"},"subscription"),": ",_react.default.createElement(_TypeLink.default,{type:o,onClick:this.props.onClickType}))))}}]),t);function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}(function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(exports.default=SchemaDoc,"propTypes",{schema:_propTypes.default.object,onClickType:_propTypes.default.func})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./MarkdownContent":238,"./TypeLink":243,"prop-types":201}],240:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_debounce=_interopRequireDefault(require("../../utility/debounce"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var SearchBox=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"render",value:function(){return _react.default.createElement("label",{className:"search-box"},_react.default.createElement("input",{value:this.state.value,onChange:this.handleChange,type:"text",placeholder:this.props.placeholder}),this.state.value&&_react.default.createElement("div",{className:"search-box-clear",onClick:this.handleClear},"✕"))}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleChange",function(e){var t=e.target.value;r.setState({value:t}),r.debouncedOnSearch(t)}),_defineProperty(_assertThisInitialized(r),"handleClear",function(){r.setState({value:""}),r.props.onSearch("")}),r.state={value:e.value||""},r.debouncedOnSearch=(0,_debounce.default)(200,r.props.onSearch),r}_defineProperty(exports.default=SearchBox,"propTypes",{value:_propTypes.default.string,placeholder:_propTypes.default.string,onSearch:_propTypes.default.func})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../../utility/debounce":261,"prop-types":201}],241:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_Argument=_interopRequireDefault(require("./Argument")),_TypeLink=_interopRequireDefault(require("./TypeLink"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _possibleConstructorReturn(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var SearchResults=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e){return this.props.schema!==e.schema||this.props.searchValue!==e.searchValue}},{key:"render",value:function(){var e=this.props.searchValue,t=this.props.withinType,r=this.props.schema,n=this.props.onClickType,o=this.props.onClickField,a=[],i=[],u=[],l=r.getTypeMap(),c=Object.keys(l);t&&(c=c.filter(function(e){return e!==t.name})).unshift(t.name);var s=!0,f=!1,p=void 0;try{for(var y,_=function(){var r=y.value;if(100<=a.length+i.length+u.length)return"break";var c=l[r];if(t!==c&&isMatch(r,e)&&i.push(_react.default.createElement("div",{className:"doc-category-item",key:r},_react.default.createElement(_TypeLink.default,{type:c,onClick:n}))),c.getFields){var s=c.getFields();Object.keys(s).forEach(function(i){var l,f=s[i];if(!isMatch(i,e)){if(!f.args||!f.args.length)return;if(0===(l=f.args.filter(function(t){return isMatch(t.name,e)})).length)return}var p=_react.default.createElement("div",{className:"doc-category-item",key:r+"."+i},t!==c&&[_react.default.createElement(_TypeLink.default,{key:"type",type:c,onClick:n}),"."],_react.default.createElement("a",{className:"field-name",onClick:function(e){return o(f,c,e)}},f.name),l&&["(",_react.default.createElement("span",{key:"args"},l.map(function(e){return _react.default.createElement(_Argument.default,{key:e.name,arg:e,onClickType:n,showDefaultValue:!1})})),")"]);t===c?a.push(p):u.push(p)})}},d=c[Symbol.iterator]();!(s=(y=d.next()).done)&&"break"!==_();s=!0);}catch(e){f=!0,p=e}finally{try{s||null==d.return||d.return()}finally{if(f)throw p}}return a.length+i.length+u.length===0?_react.default.createElement("span",{className:"doc-alert-text"},"No results found."):t&&0<i.length+u.length?_react.default.createElement("div",null,a,_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"other results"),i,u)):_react.default.createElement("div",null,a,i,u)}}]),t);function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}function isMatch(e,t){try{var r=t.replace(/[^_0-9A-Za-z]/g,function(e){return"\\"+e});return-1!==e.search(new RegExp(r,"i"))}catch(r){return-1!==e.toLowerCase().indexOf(t.toLowerCase())}}(function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(exports.default=SearchResults,"propTypes",{schema:_propTypes.default.object,withinType:_propTypes.default.object,searchValue:_propTypes.default.string,onClickType:_propTypes.default.func,onClickField:_propTypes.default.func})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./Argument":235,"./TypeLink":243,"prop-types":201}],242:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_graphql=require("graphql"),_Argument=_interopRequireDefault(require("./Argument")),_MarkdownContent=_interopRequireDefault(require("./MarkdownContent")),_TypeLink=_interopRequireDefault(require("./TypeLink")),_DefaultValue=_interopRequireDefault(require("./DefaultValue"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var TypeDoc=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e,t){return this.props.type!==e.type||this.props.schema!==e.schema||this.state.showDeprecated!==t.showDeprecated}},{key:"render",value:function(){var e,t,r,a,n,o,c,l=this.props.schema,i=this.props.type,u=this.props.onClickType,p=this.props.onClickField;if(i instanceof _graphql.GraphQLUnionType?(e="possible types",t=l.getPossibleTypes(i)):i instanceof _graphql.GraphQLInterfaceType?(e="implementations",t=l.getPossibleTypes(i)):i instanceof _graphql.GraphQLObjectType&&(e="implements",t=i.getInterfaces()),t&&0<t.length&&(r=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},e),t.map(function(e){return _react.default.createElement("div",{key:e.name,className:"doc-category-item"},_react.default.createElement(_TypeLink.default,{type:e,onClick:u}))}))),i.getFields){var s=i.getFields(),d=Object.keys(s).map(function(e){return s[e]});a=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"fields"),d.filter(function(e){return!e.isDeprecated}).map(function(e){return _react.default.createElement(Field,{key:e.name,type:i,field:e,onClickType:u,onClickField:p})}));var f=d.filter(function(e){return e.isDeprecated});0<f.length&&(n=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"deprecated fields"),this.state.showDeprecated?f.map(function(e){return _react.default.createElement(Field,{key:e.name,type:i,field:e,onClickType:u,onClickField:p})}):_react.default.createElement("button",{className:"show-btn",onClick:this.handleShowDeprecated},"Show deprecated fields...")))}if(i instanceof _graphql.GraphQLEnumType){var y=i.getValues();o=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"values"),y.filter(function(e){return!e.isDeprecated}).map(function(e){return _react.default.createElement(EnumValue,{key:e.name,value:e})}));var _=y.filter(function(e){return e.isDeprecated});0<_.length&&(c=_react.default.createElement("div",{className:"doc-category"},_react.default.createElement("div",{className:"doc-category-title"},"deprecated values"),this.state.showDeprecated?_.map(function(e){return _react.default.createElement(EnumValue,{key:e.name,value:e})}):_react.default.createElement("button",{className:"show-btn",onClick:this.handleShowDeprecated},"Show deprecated values...")))}return _react.default.createElement("div",null,_react.default.createElement(_MarkdownContent.default,{className:"doc-type-description",markdown:i.description||"No Description"}),i instanceof _graphql.GraphQLObjectType&&r,a,n,o,c,!(i instanceof _graphql.GraphQLObjectType)&&r)}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleShowDeprecated",function(){return r.setState({showDeprecated:!0})}),r.state={showDeprecated:!1},r}function Field(e){var t=e.type,r=e.field,a=e.onClickType,n=e.onClickField;return _react.default.createElement("div",{className:"doc-category-item"},_react.default.createElement("a",{className:"field-name",onClick:function(e){return n(r,t,e)}},r.name),r.args&&0<r.args.length&&["(",_react.default.createElement("span",{key:"args"},r.args.map(function(e){return _react.default.createElement(_Argument.default,{key:e.name,arg:e,onClickType:a})})),")"],": ",_react.default.createElement(_TypeLink.default,{type:r.type,onClick:a}),_react.default.createElement(_DefaultValue.default,{field:r}),r.description&&_react.default.createElement(_MarkdownContent.default,{className:"field-short-description",markdown:r.description}),r.deprecationReason&&_react.default.createElement(_MarkdownContent.default,{className:"doc-deprecation",markdown:r.deprecationReason}))}function EnumValue(e){var t=e.value;return _react.default.createElement("div",{className:"doc-category-item"},_react.default.createElement("div",{className:"enum-value"},t.name),_react.default.createElement(_MarkdownContent.default,{className:"doc-value-description",markdown:t.description}),t.deprecationReason&&_react.default.createElement(_MarkdownContent.default,{className:"doc-deprecation",markdown:t.deprecationReason}))}_defineProperty(exports.default=TypeDoc,"propTypes",{schema:_propTypes.default.instanceOf(_graphql.GraphQLSchema),type:_propTypes.default.object,onClickType:_propTypes.default.func,onClickField:_propTypes.default.func}),Field.propTypes={type:_propTypes.default.object,field:_propTypes.default.object,onClickType:_propTypes.default.func,onClickField:_propTypes.default.func},EnumValue.propTypes={value:_propTypes.default.object}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./Argument":235,"./DefaultValue":236,"./MarkdownContent":238,"./TypeLink":243,graphql:28,"prop-types":201}],243:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_graphql=require("graphql");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _possibleConstructorReturn(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):t}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}var TypeLink=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"shouldComponentUpdate",value:function(e){return this.props.type!==e.type}},{key:"render",value:function(){return function renderType(e,t){return e instanceof _graphql.GraphQLNonNull?_react.default.createElement("span",null,renderType(e.ofType,t),"!"):e instanceof _graphql.GraphQLList?_react.default.createElement("span",null,"[",renderType(e.ofType,t),"]"):_react.default.createElement("a",{className:"type-name",onClick:function(r){return t(e,r)}},e.name)}(this.props.type,this.props.onClick)}}]),t);function t(){return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_possibleConstructorReturn(this,_getPrototypeOf(t).apply(this,arguments))}(function(e,t,r){t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})(exports.default=TypeLink,"propTypes",{type:_propTypes.default.object,onClick:_propTypes.default.func})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{graphql:28,"prop-types":201}],244:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ExecuteButton=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var o=t[n];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ExecuteButton=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,n){t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n)}(t,[{key:"render",value:function(){var e,t,n=this,o=this.props.operations,r=this.state.optionsOpen,i=o&&1<o.length,u=null;if(i&&r){var s=this.state.highlight;u=_react.default.createElement("ul",{className:"execute-options"},o.map(function(e){return _react.default.createElement("li",{key:e.name?e.name.value:"*",className:e===s?"selected":void 0,onMouseOver:function(){return n.setState({highlight:e})},onMouseOut:function(){return n.setState({highlight:null})},onMouseUp:function(){return n._onOptionSelected(e)}},e.name?e.name.value:"<Unnamed>")}))}!this.props.isRunning&&i||(e=this._onClick),this.props.isRunning||!i||r||(t=this._onOptionsOpen);var a=this.props.isRunning?_react.default.createElement("path",{d:"M 10 10 L 23 10 L 23 23 L 10 23 z"}):_react.default.createElement("path",{d:"M 11 9 L 24 16 L 11 23 z"});return _react.default.createElement("div",{className:"execute-button-wrap"},_react.default.createElement("button",{type:"button",className:"execute-button",onMouseDown:t,onClick:e,title:"Execute Query (Ctrl-Enter)"},_react.default.createElement("svg",{width:"34",height:"34"},a)),u)}}]),t);function t(e){var n;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(n=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"_onClick",function(){n.props.isRunning?n.props.onStop():n.props.onRun()}),_defineProperty(_assertThisInitialized(n),"_onOptionSelected",function(e){n.setState({optionsOpen:!1}),n.props.onRun(e.name&&e.name.value)}),_defineProperty(_assertThisInitialized(n),"_onOptionsOpen",function(e){var t=!0,o=e.target;n.setState({highlight:null,optionsOpen:!0});var r=function(e){t&&e.target===o?t=!1:(document.removeEventListener("mouseup",r),r=null,o.parentNode.compareDocumentPosition(e.target)&Node.DOCUMENT_POSITION_CONTAINED_BY||n.setState({optionsOpen:!1}))};document.addEventListener("mouseup",r)}),n.state={optionsOpen:!1,highlight:null},n}_defineProperty(exports.ExecuteButton=ExecuteButton,"propTypes",{onRun:_propTypes.default.func,onStop:_propTypes.default.func,isRunning:_propTypes.default.bool,operations:_propTypes.default.array})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],245:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.GraphiQL=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_reactDom=_interopRequireDefault("undefined"!=typeof window?window.ReactDOM:void 0!==global?global.ReactDOM:null),_graphql=require("graphql"),_copyToClipboard=_interopRequireDefault(require("copy-to-clipboard")),_ExecuteButton=require("./ExecuteButton"),_ImagePreview=require("./ImagePreview"),_ToolbarButton=require("./ToolbarButton"),_ToolbarGroup=require("./ToolbarGroup"),_ToolbarMenu=require("./ToolbarMenu"),_ToolbarSelect=require("./ToolbarSelect"),_QueryEditor=require("./QueryEditor"),_VariableEditor=require("./VariableEditor"),_ResultViewer=require("./ResultViewer"),_DocExplorer=require("./DocExplorer"),_QueryHistory=require("./QueryHistory"),_CodeMirrorSizer=_interopRequireDefault(require("../utility/CodeMirrorSizer")),_StorageAPI=_interopRequireDefault(require("../utility/StorageAPI")),_getQueryFacts=_interopRequireDefault(require("../utility/getQueryFacts")),_getSelectedOperationName=_interopRequireDefault(require("../utility/getSelectedOperationName")),_debounce=_interopRequireDefault(require("../utility/debounce")),_find=_interopRequireDefault(require("../utility/find")),_fillLeafs2=require("../utility/fillLeafs"),_elementPosition=require("../utility/elementPosition"),_mergeAst=require("../utility/mergeAst"),_introspectionQueries=require("../utility/introspectionQueries");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _objectSpread(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){_defineProperty(e,t,r[t])})}return e}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var GraphiQL=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"componentDidMount",value:function(){void 0===this.state.schema&&this._fetchSchema(),this.codeMirrorSizer=new _CodeMirrorSizer.default,global.g=this}},{key:"componentWillReceiveProps",value:function(e){var t=this,r=this.state.schema,o=this.state.query,i=this.state.variables,n=this.state.operationName,a=this.state.response;if(void 0!==e.schema&&(r=e.schema),void 0!==e.query&&(o=e.query),void 0!==e.variables&&(i=e.variables),void 0!==e.operationName&&(n=e.operationName),void 0!==e.response&&(a=e.response),r!==this.state.schema||o!==this.state.query||n!==this.state.operationName){var s=this._updateQueryFacts(o,n,this.state.operations,r);void 0!==s&&(n=s.operationName,this.setState(s))}void 0===e.schema&&e.fetcher!==this.props.fetcher&&(r=void 0),this.setState({schema:r,query:o,variables:i,operationName:n,response:a},function(){void 0===t.state.schema&&(t.docExplorerComponent&&t.docExplorerComponent.reset(),t._fetchSchema())})}},{key:"componentDidUpdate",value:function(){this.codeMirrorSizer.updateSizes([this.queryEditorComponent,this.variableEditorComponent,this.resultComponent])}},{key:"componentWillUnmount",value:function(){this._storage.set("query",this.state.query),this._storage.set("variables",this.state.variables),this._storage.set("operationName",this.state.operationName),this._storage.set("editorFlex",this.state.editorFlex),this._storage.set("variableEditorHeight",this.state.variableEditorHeight),this._storage.set("docExplorerWidth",this.state.docExplorerWidth),this._storage.set("docExplorerOpen",this.state.docExplorerOpen),this._storage.set("historyPaneOpen",this.state.historyPaneOpen)}},{key:"render",value:function(){var e=this,r=_react.default.Children.toArray(this.props.children),o=(0,_find.default)(r,function(e){return e.type===t.Logo})||_react.default.createElement(t.Logo,null),i=(0,_find.default)(r,function(e){return e.type===t.Toolbar})||_react.default.createElement(t.Toolbar,null,_react.default.createElement(_ToolbarButton.ToolbarButton,{onClick:this.handlePrettifyQuery,title:"Prettify Query (Shift-Ctrl-P)",label:"Prettify"}),_react.default.createElement(_ToolbarButton.ToolbarButton,{onClick:this.handleMergeQuery,title:"Merge Query (Shift-Ctrl-M)",label:"Merge"}),_react.default.createElement(_ToolbarButton.ToolbarButton,{onClick:this.handleCopyQuery,title:"Copy Query (Shift-Ctrl-C)",label:"Copy"}),_react.default.createElement(_ToolbarButton.ToolbarButton,{onClick:this.handleToggleHistory,title:"Show History",label:"History"})),n=(0,_find.default)(r,function(e){return e.type===t.Footer}),a={WebkitFlex:this.state.editorFlex,flex:this.state.editorFlex},s={display:"block",width:this.state.docExplorerWidth},l="docExplorerWrap"+(this.state.docExplorerWidth<200?" doc-explorer-narrow":""),u={display:this.state.historyPaneOpen?"block":"none",width:"230px",zIndex:"7"},p=this.state.variableEditorOpen,d={height:p?this.state.variableEditorHeight:null};return _react.default.createElement("div",{className:"graphiql-container"},_react.default.createElement("div",{className:"historyPaneWrap",style:u},_react.default.createElement(_QueryHistory.QueryHistory,{operationName:this.state.operationName,query:this.state.query,variables:this.state.variables,onSelectQuery:this.handleSelectHistoryQuery,storage:this._storage,queryID:this._editorQueryID},_react.default.createElement("div",{className:"docExplorerHide",onClick:this.handleToggleHistory},"✕"))),_react.default.createElement("div",{className:"editorWrap"},_react.default.createElement("div",{className:"topBarWrap"},_react.default.createElement("div",{className:"topBar"},o,_react.default.createElement(_ExecuteButton.ExecuteButton,{isRunning:Boolean(this.state.subscription),onRun:this.handleRunQuery,onStop:this.handleStopQuery,operations:this.state.operations}),i),!this.state.docExplorerOpen&&_react.default.createElement("button",{className:"docExplorerShow",onClick:this.handleToggleDocs},"Docs")),_react.default.createElement("div",{ref:function(t){e.editorBarComponent=t},className:"editorBar",onDoubleClick:this.handleResetResize,onMouseDown:this.handleResizeStart},_react.default.createElement("div",{className:"queryWrap",style:a},_react.default.createElement(_QueryEditor.QueryEditor,{ref:function(t){e.queryEditorComponent=t},schema:this.state.schema,value:this.state.query,onEdit:this.handleEditQuery,onHintInformationRender:this.handleHintInformationRender,onClickReference:this.handleClickReference,onCopyQuery:this.handleCopyQuery,onPrettifyQuery:this.handlePrettifyQuery,onMergeQuery:this.handleMergeQuery,onRunQuery:this.handleEditorRunQuery,editorTheme:this.props.editorTheme,readOnly:this.props.readOnly}),_react.default.createElement("div",{className:"variable-editor",style:d},_react.default.createElement("div",{className:"variable-editor-title",style:{cursor:p?"row-resize":"n-resize"},onMouseDown:this.handleVariableResizeStart},"Query Variables"),_react.default.createElement(_VariableEditor.VariableEditor,{ref:function(t){e.variableEditorComponent=t},value:this.state.variables,variableToType:this.state.variableToType,onEdit:this.handleEditVariables,onHintInformationRender:this.handleHintInformationRender,onPrettifyQuery:this.handlePrettifyQuery,onMergeQuery:this.handleMergeQuery,onRunQuery:this.handleEditorRunQuery,editorTheme:this.props.editorTheme,readOnly:this.props.readOnly}))),_react.default.createElement("div",{className:"resultWrap"},this.state.isWaitingForResponse&&_react.default.createElement("div",{className:"spinner-container"},_react.default.createElement("div",{className:"spinner"})),_react.default.createElement(_ResultViewer.ResultViewer,{ref:function(t){e.resultComponent=t},value:this.state.response,editorTheme:this.props.editorTheme,ResultsTooltip:this.props.ResultsTooltip,ImagePreview:_ImagePreview.ImagePreview}),n))),this.state.docExplorerOpen&&_react.default.createElement("div",{className:l,style:s},_react.default.createElement("div",{className:"docExplorerResizer",onDoubleClick:this.handleDocsResetResize,onMouseDown:this.handleDocsResizeStart}),_react.default.createElement(_DocExplorer.DocExplorer,{ref:function(t){e.docExplorerComponent=t},schema:this.state.schema},_react.default.createElement("div",{className:"docExplorerHide",onClick:this.handleToggleDocs},"✕"))))}},{key:"getQueryEditor",value:function(){return this.queryEditorComponent.getCodeMirror()}},{key:"getVariableEditor",value:function(){return this.variableEditorComponent.getCodeMirror()}},{key:"refresh",value:function(){this.queryEditorComponent.getCodeMirror().refresh(),this.variableEditorComponent.getCodeMirror().refresh(),this.resultComponent.getCodeMirror().refresh()}},{key:"autoCompleteLeafs",value:function(){var e=(0,_fillLeafs2.fillLeafs)(this.state.schema,this.state.query,this.props.getDefaultFieldNames),t=e.insertions,r=e.result;if(t&&0<t.length){var o=this.getQueryEditor();o.operation(function(){var e=o.getCursor(),i=o.indexFromPos(e);o.setValue(r);var n=0,a=t.map(function(e){var t=e.index,r=e.string;return o.markText(o.posFromIndex(t+n),o.posFromIndex(t+(n+=r.length)),{className:"autoInsertedLeaf",clearOnEnter:!0,title:"Automatically added leaf fields"})});setTimeout(function(){return a.forEach(function(e){return e.clear()})},7e3);var s=i;t.forEach(function(e){var t=e.index,r=e.string;t<i&&(s+=r.length)}),o.setCursor(o.posFromIndex(s))})}return r}},{key:"_fetchSchema",value:function(){var e=this,r=this.props.fetcher,o=observableToPromise(r({query:_introspectionQueries.introspectionQuery,operationName:_introspectionQueries.introspectionQueryName}));isPromise(o)?o.then(function(e){if(e.data)return e;var t=observableToPromise(r({query:_introspectionQueries.introspectionQuerySansSubscriptions,operationName:_introspectionQueries.introspectionQueryName}));if(!isPromise(o))throw new Error("Fetcher did not return a Promise for introspection.");return t}).then(function(r){if(void 0===e.state.schema)if(r&&r.data){var o=(0,_graphql.buildClientSchema)(r.data),i=(0,_getQueryFacts.default)(o,e.state.query);e.setState(_objectSpread({schema:o},i))}else{var n="string"==typeof r?r:t.formatResult(r);e.setState({schema:null,response:n})}}).catch(function(r){e.setState({schema:null,response:r?t.formatError(r):null})}):this.setState({response:"Fetcher did not return a Promise for introspection."})}},{key:"_fetchQuery",value:function(e,r,o,i){var n=this,a=this.props.fetcher,s=null;try{s=r&&""!==r.trim()?JSON.parse(r):null}catch(e){throw new Error("Variables are invalid JSON: ".concat(e.message,"."))}if("object"!==_typeof(s))throw new Error("Variables are not a JSON object.");var l=a({query:e,variables:s,operationName:o});if(!isPromise(l)){if(isObservable(l))return l.subscribe({next:i,error:function(e){n.setState({isWaitingForResponse:!1,response:e?t.formatError(e):null,subscription:null})},complete:function(){n.setState({isWaitingForResponse:!1,subscription:null})}});throw new Error("Fetcher did not return Promise or Observable.")}l.then(i).catch(function(e){n.setState({isWaitingForResponse:!1,response:e?t.formatError(e):null})})}},{key:"_runQueryAtCursor",value:function(){if(this.state.subscription)this.handleStopQuery();else{var e,t=this.state.operations;if(t){var r=this.getQueryEditor();if(r.hasFocus())for(var o=r.getCursor(),i=r.indexFromPos(o),n=0;n<t.length;n++){var a=t[n];if(a.loc.start<=i&&a.loc.end>=i){e=a.name&&a.name.value;break}}}this.handleRunQuery(e)}}},{key:"_didClickDragBar",value:function(e){if(0!==e.button||e.ctrlKey)return!1;var t=e.target;if(0!==t.className.indexOf("CodeMirror-gutter"))return!1;for(var r=_reactDom.default.findDOMNode(this.resultComponent);t;){if(t===r)return!0;t=t.parentNode}return!1}}]),t);function t(e){var r;if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleClickReference",function(e){r.setState({docExplorerOpen:!0},function(){r.docExplorerComponent.showDocForReference(e)})}),_defineProperty(_assertThisInitialized(r),"handleRunQuery",function(e){r._editorQueryID++;var o=r._editorQueryID,i=r.autoCompleteLeafs()||r.state.query,n=r.state.variables,a=r.state.operationName;e&&e!==a&&(a=e,r.handleEditOperationName(a));try{r.setState({isWaitingForResponse:!0,response:null,operationName:a});var s=r._fetchQuery(i,n,a,function(e){o===r._editorQueryID&&r.setState({isWaitingForResponse:!1,response:t.formatResult(e)})});r.setState({subscription:s})}catch(e){r.setState({isWaitingForResponse:!1,response:e.message})}}),_defineProperty(_assertThisInitialized(r),"handleStopQuery",function(){var e=r.state.subscription;r.setState({isWaitingForResponse:!1,subscription:null}),e&&e.unsubscribe()}),_defineProperty(_assertThisInitialized(r),"handlePrettifyQuery",function(){var e=r.getQueryEditor();e.setValue((0,_graphql.print)((0,_graphql.parse)(e.getValue())))}),_defineProperty(_assertThisInitialized(r),"handleMergeQuery",function(){var e=r.getQueryEditor(),t=e.getValue();if(t){var o=(0,_graphql.parse)(t);e.setValue((0,_graphql.print)((0,_mergeAst.mergeAst)(o)))}}),_defineProperty(_assertThisInitialized(r),"handleEditQuery",(0,_debounce.default)(100,function(e){var t=r._updateQueryFacts(e,r.state.operationName,r.state.operations,r.state.schema);if(r.setState(_objectSpread({query:e},t)),r.props.onEditQuery)return r.props.onEditQuery(e)})),_defineProperty(_assertThisInitialized(r),"handleCopyQuery",function(){var e=r.getQueryEditor().getValue();if(e)return(0,_copyToClipboard.default)(e),r.props.onCopyQuery?r.props.onCopyQuery(e):void 0}),_defineProperty(_assertThisInitialized(r),"_updateQueryFacts",function(e,t,o,i){var n=(0,_getQueryFacts.default)(i,e);if(n){var a=(0,_getSelectedOperationName.default)(o,t,n.operations),s=r.props.onEditOperationName;return s&&t!==a&&s(a),_objectSpread({operationName:a},n)}}),_defineProperty(_assertThisInitialized(r),"handleEditVariables",function(e){r.setState({variables:e}),r.props.onEditVariables&&r.props.onEditVariables(e)}),_defineProperty(_assertThisInitialized(r),"handleEditOperationName",function(e){var t=r.props.onEditOperationName;t&&t(e)}),_defineProperty(_assertThisInitialized(r),"handleHintInformationRender",function(e){var t;e.addEventListener("click",r._onClickHintInformation),e.addEventListener("DOMNodeRemoved",t=function(){e.removeEventListener("DOMNodeRemoved",t),e.removeEventListener("click",r._onClickHintInformation)})}),_defineProperty(_assertThisInitialized(r),"handleEditorRunQuery",function(){r._runQueryAtCursor()}),_defineProperty(_assertThisInitialized(r),"_onClickHintInformation",function(e){if("typeName"===e.target.className){var t=e.target.innerHTML,o=r.state.schema;if(o){var i=o.getType(t);i&&r.setState({docExplorerOpen:!0},function(){r.docExplorerComponent.showDoc(i)})}}}),_defineProperty(_assertThisInitialized(r),"handleToggleDocs",function(){"function"==typeof r.props.onToggleDocs&&r.props.onToggleDocs(!r.state.docExplorerOpen),r.setState({docExplorerOpen:!r.state.docExplorerOpen})}),_defineProperty(_assertThisInitialized(r),"handleToggleHistory",function(){"function"==typeof r.props.onToggleHistory&&r.props.onToggleHistory(!r.state.historyPaneOpen),r.setState({historyPaneOpen:!r.state.historyPaneOpen})}),_defineProperty(_assertThisInitialized(r),"handleSelectHistoryQuery",function(e,t,o){r.handleEditQuery(e),r.handleEditVariables(t),r.handleEditOperationName(o)}),_defineProperty(_assertThisInitialized(r),"handleResizeStart",function(e){if(r._didClickDragBar(e)){e.preventDefault();var t=e.clientX-(0,_elementPosition.getLeft)(e.target),o=function(e){if(0===e.buttons)return i();var o=_reactDom.default.findDOMNode(r.editorBarComponent),n=e.clientX-(0,_elementPosition.getLeft)(o)-t,a=o.clientWidth-n;r.setState({editorFlex:n/a})},i=function(){document.removeEventListener("mousemove",o),document.removeEventListener("mouseup",i),i=o=null};document.addEventListener("mousemove",o),document.addEventListener("mouseup",i)}}),_defineProperty(_assertThisInitialized(r),"handleResetResize",function(){r.setState({editorFlex:1})}),_defineProperty(_assertThisInitialized(r),"handleDocsResizeStart",function(e){e.preventDefault();var t=r.state.docExplorerWidth,o=e.clientX-(0,_elementPosition.getLeft)(e.target),i=function(e){if(0===e.buttons)return n();var t=_reactDom.default.findDOMNode(_assertThisInitialized(r)),i=e.clientX-(0,_elementPosition.getLeft)(t)-o,a=t.clientWidth-i;a<100?r.setState({docExplorerOpen:!1}):r.setState({docExplorerOpen:!0,docExplorerWidth:Math.min(a,650)})},n=function(){r.state.docExplorerOpen||r.setState({docExplorerWidth:t}),document.removeEventListener("mousemove",i),document.removeEventListener("mouseup",n),n=i=null};document.addEventListener("mousemove",i),document.addEventListener("mouseup",n)}),_defineProperty(_assertThisInitialized(r),"handleDocsResetResize",function(){r.setState({docExplorerWidth:350})}),_defineProperty(_assertThisInitialized(r),"handleVariableResizeStart",function(e){e.preventDefault();var t=!1,o=r.state.variableEditorOpen,i=r.state.variableEditorHeight,n=e.clientY-(0,_elementPosition.getTop)(e.target),a=function(e){if(0===e.buttons)return s();t=!0;var o=_reactDom.default.findDOMNode(r.editorBarComponent),a=e.clientY-(0,_elementPosition.getTop)(o)-n,l=o.clientHeight-a;l<60?r.setState({variableEditorOpen:!1,variableEditorHeight:i}):r.setState({variableEditorOpen:!0,variableEditorHeight:l})},s=function(){t||r.setState({variableEditorOpen:!o}),document.removeEventListener("mousemove",a),document.removeEventListener("mouseup",s),s=a=null};document.addEventListener("mousemove",a),document.addEventListener("mouseup",s)}),"function"!=typeof e.fetcher)throw new TypeError("GraphiQL requires a fetcher function.");r._storage=new _StorageAPI.default(e.storage);var o=void 0!==e.query?e.query:null!==r._storage.get("query")?r._storage.get("query"):void 0!==e.defaultQuery?e.defaultQuery:defaultQuery,i=(0,_getQueryFacts.default)(e.schema,o),n=void 0!==e.variables?e.variables:r._storage.get("variables"),a=void 0!==e.operationName?e.operationName:(0,_getSelectedOperationName.default)(null,r._storage.get("operationName"),i&&i.operations),s=e.docExplorerOpen||!1;r._storage.get("docExplorerOpen")&&(s="true"===r._storage.get("docExplorerOpen"));var l=void 0!==e.defaultVariableEditorOpen?e.defaultVariableEditorOpen:Boolean(n);return r.state=_objectSpread({schema:e.schema,query:o,variables:n,operationName:a,docExplorerOpen:s,response:e.response,editorFlex:Number(r._storage.get("editorFlex"))||1,variableEditorOpen:l,variableEditorHeight:Number(r._storage.get("variableEditorHeight"))||200,historyPaneOpen:"true"===r._storage.get("historyPaneOpen")||!1,docExplorerWidth:Number(r._storage.get("docExplorerWidth"))||350,isWaitingForResponse:!1,subscription:null},i),r._editorQueryID=0,"object"===("undefined"==typeof window?"undefined":_typeof(window))&&window.addEventListener("beforeunload",function(){return r.componentWillUnmount()}),r}_defineProperty(exports.GraphiQL=GraphiQL,"propTypes",{fetcher:_propTypes.default.func.isRequired,schema:_propTypes.default.instanceOf(_graphql.GraphQLSchema),query:_propTypes.default.string,variables:_propTypes.default.string,operationName:_propTypes.default.string,response:_propTypes.default.string,storage:_propTypes.default.shape({getItem:_propTypes.default.func,setItem:_propTypes.default.func,removeItem:_propTypes.default.func}),defaultQuery:_propTypes.default.string,defaultVariableEditorOpen:_propTypes.default.bool,onCopyQuery:_propTypes.default.func,onEditQuery:_propTypes.default.func,onEditVariables:_propTypes.default.func,onEditOperationName:_propTypes.default.func,onToggleDocs:_propTypes.default.func,getDefaultFieldNames:_propTypes.default.func,editorTheme:_propTypes.default.string,onToggleHistory:_propTypes.default.func,ResultsTooltip:_propTypes.default.any,readOnly:_propTypes.default.bool,docExplorerOpen:_propTypes.default.bool}),GraphiQL.Logo=function(e){return _react.default.createElement("div",{className:"title"},e.children||_react.default.createElement("span",null,"Graph",_react.default.createElement("em",null,"i"),"QL"))},GraphiQL.Toolbar=function(e){return _react.default.createElement("div",{className:"toolbar"},e.children)},GraphiQL.QueryEditor=_QueryEditor.QueryEditor,GraphiQL.VariableEditor=_VariableEditor.VariableEditor,GraphiQL.ResultViewer=_ResultViewer.ResultViewer,GraphiQL.Button=_ToolbarButton.ToolbarButton,GraphiQL.ToolbarButton=_ToolbarButton.ToolbarButton,GraphiQL.Group=_ToolbarGroup.ToolbarGroup,GraphiQL.Menu=_ToolbarMenu.ToolbarMenu,GraphiQL.MenuItem=_ToolbarMenu.ToolbarMenuItem,GraphiQL.Select=_ToolbarSelect.ToolbarSelect,GraphiQL.SelectOption=_ToolbarSelect.ToolbarSelectOption,GraphiQL.Footer=function(e){return _react.default.createElement("div",{className:"footer"},e.children)},GraphiQL.formatResult=function(e){return JSON.stringify(e,null,2)};function formatSingleError(e){return _objectSpread({},e,{message:e.message,stack:e.stack})}GraphiQL.formatError=function(e){var t=Array.isArray(e)?e.map(formatSingleError):formatSingleError(e);return JSON.stringify(t,null,2)};var defaultQuery='# Welcome to GraphiQL\n#\n# GraphiQL is an in-browser tool for writing, validating, and\n# testing GraphQL queries.\n#\n# Type queries into this side of the screen, and you will see intelligent\n# typeaheads aware of the current GraphQL type schema and live syntax and\n# validation errors highlighted within the text.\n#\n# GraphQL queries typically start with a "{" character. Lines that starts\n# with a # are ignored.\n#\n# An example GraphQL query might look like:\n#\n# {\n# field(arg: "value") {\n# subField\n# }\n# }\n#\n# Keyboard shortcuts:\n#\n# Prettify Query: Shift-Ctrl-P (or press the prettify button above)\n#\n# Merge Query: Shift-Ctrl-M (or press the merge button above)\n#\n# Run Query: Ctrl-Enter (or press the play button above)\n#\n# Auto Complete: Ctrl-Space (or just start typing)\n#\n\n';function isPromise(e){return"object"===_typeof(e)&&"function"==typeof e.then}function observableToPromise(e){return isObservable(e)?new Promise(function(t,r){var o=e.subscribe(function(e){t(e),o.unsubscribe()},r,function(){r(new Error("no value resolved"))})}):e}function isObservable(e){return"object"===_typeof(e)&&"function"==typeof e.subscribe}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../utility/CodeMirrorSizer":257,"../utility/StorageAPI":259,"../utility/debounce":261,"../utility/elementPosition":262,"../utility/fillLeafs":263,"../utility/find":264,"../utility/getQueryFacts":265,"../utility/getSelectedOperationName":266,"../utility/introspectionQueries":267,"../utility/mergeAst":268,"./DocExplorer":234,"./ExecuteButton":244,"./ImagePreview":247,"./QueryEditor":248,"./QueryHistory":249,"./ResultViewer":250,"./ToolbarButton":251,"./ToolbarGroup":252,"./ToolbarMenu":253,"./ToolbarSelect":254,"./VariableEditor":255,"copy-to-clipboard":16,graphql:28,"prop-types":201}],246:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var HistoryQuery=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"render",value:function(){var e=this,t={display:this.state.showButtons?"":"none",marginLeft:"10px"},r={display:this.props.favorite||this.state.showButtons?"":"none",marginLeft:"10px"},o=this.props.label||this.props.operationName||this.props.query.split("\n").filter(function(e){return 0!==e.indexOf("#")}).join(""),i=this.props.favorite?"★":"☆";return _react.default.createElement("p",{className:this.state.editable?"editable":void 0,onClick:this.handleClick.bind(this),onMouseEnter:this.handleMouseEnter.bind(this),onMouseLeave:this.handleMouseLeave.bind(this)},this.state.editable?_react.default.createElement("input",{type:"text",defaultValue:this.props.label,ref:function(t){return e.editField=t},onBlur:this.handleFieldBlur.bind(this),onKeyDown:this.handleFieldKeyDown.bind(this),placeholder:"Type a label"}):_react.default.createElement("span",{className:"history-label"},o),_react.default.createElement("span",{onClick:this.handleEditClick.bind(this),style:t},"✎"),_react.default.createElement("span",{onClick:this.handleStarClick.bind(this),style:r},i))}},{key:"handleMouseEnter",value:function(){this.setState({showButtons:!0})}},{key:"handleMouseLeave",value:function(){this.setState({showButtons:!1})}},{key:"handleClick",value:function(){this.props.onSelect(this.props.query,this.props.variables,this.props.operationName,this.props.label)}},{key:"handleStarClick",value:function(e){e.stopPropagation(),this.props.handleToggleFavorite(this.props.query,this.props.variables,this.props.operationName,this.props.label,this.props.favorite)}},{key:"handleFieldBlur",value:function(e){e.stopPropagation(),this.setState({editable:!1}),this.props.handleEditLabel(this.props.query,this.props.variables,this.props.operationName,e.target.value,this.props.favorite)}},{key:"handleFieldKeyDown",value:function(e){13===e.keyCode&&(e.stopPropagation(),this.setState({editable:!1}),this.props.handleEditLabel(this.props.query,this.props.variables,this.props.operationName,e.target.value,this.props.favorite))}},{key:"handleEditClick",value:function(e){var t=this;e.stopPropagation(),this.setState({editable:!0},function(){t.editField&&t.editField.focus()})}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"editField",null),r.state={showButtons:!1,editable:!1},r}_defineProperty(exports.default=HistoryQuery,"propTypes",{favorite:_propTypes.default.bool,favoriteSize:_propTypes.default.number,handleEditLabel:_propTypes.default.func,handleToggleFavorite:_propTypes.default.func,operationName:_propTypes.default.string,onSelect:_propTypes.default.func,query:_propTypes.default.string,variables:_propTypes.default.string,label:_propTypes.default.string})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],247:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ImagePreview=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function tokenToURL(e){if("string"!==e.type)return null;var t=e.string.slice(1).slice(0,-1).trim();try{var r=window.location;return new URL(t,r.protocol+"//"+r.host)}catch(e){return null}}var ImagePreview=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),_createClass(t,null,[{key:"shouldRender",value:function(e){var t=tokenToURL(e);return!!t&&function(e){return/(bmp|gif|jpeg|jpg|png|svg)$/.test(e.pathname)}(t)}}]),_createClass(t,[{key:"componentDidMount",value:function(){this._updateMetadata()}},{key:"componentDidUpdate",value:function(){this._updateMetadata()}},{key:"render",value:function(){var e=this,t=null;if(null!==this.state.width&&null!==this.state.height){var r=this.state.width+"x"+this.state.height;null!==this.state.mime&&(r+=" "+this.state.mime),t=_react.default.createElement("div",null,r)}return _react.default.createElement("div",null,_react.default.createElement("img",{onLoad:function(){return e._updateMetadata()},ref:function(t){e._node=t},src:tokenToURL(this.props.token)}),t)}},{key:"_updateMetadata",value:function(){var e=this;if(this._node){var t=this._node.naturalWidth,r=this._node.naturalHeight,n=this._node.src;n!==this.state.src&&(this.setState({src:n}),fetch(n,{method:"HEAD"}).then(function(t){e.setState({mime:t.headers.get("Content-Type")})})),t===this.state.width&&r===this.state.height||this.setState({height:r,width:t})}}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"state",{width:null,height:null,src:null,mime:null}),r}_defineProperty(exports.ImagePreview=ImagePreview,"propTypes",{token:_propTypes.default.any})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],248:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.QueryEditor=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_graphql=require("graphql"),_markdownIt=_interopRequireDefault(require("markdown-it")),_normalizeWhitespace=require("../utility/normalizeWhitespace"),_onHasCompletion=_interopRequireDefault(require("../utility/onHasCompletion")),_commonKeys=_interopRequireDefault(require("../utility/commonKeys"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,r){return(_setPrototypeOf=Object.setPrototypeOf||function(e,r){return e.__proto__=r,e})(e,r)}function _defineProperty(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var md=new _markdownIt.default,AUTO_COMPLETE_AFTER_KEY=/^[a-zA-Z0-9_@(]$/,QueryEditor=(function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),r&&_setPrototypeOf(e,r)}(r,_react.default.Component),function(e,r,t){r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t)}(r,[{key:"componentDidMount",value:function(){var e=this,r=require("codemirror");require("codemirror/addon/hint/show-hint"),require("codemirror/addon/comment/comment"),require("codemirror/addon/edit/matchbrackets"),require("codemirror/addon/edit/closebrackets"),require("codemirror/addon/fold/foldgutter"),require("codemirror/addon/fold/brace-fold"),require("codemirror/addon/search/search"),require("codemirror/addon/search/searchcursor"),require("codemirror/addon/search/jump-to-line"),require("codemirror/addon/dialog/dialog"),require("codemirror/addon/lint/lint"),require("codemirror/keymap/sublime"),require("codemirror-graphql/hint"),require("codemirror-graphql/lint"),require("codemirror-graphql/info"),require("codemirror-graphql/jump"),require("codemirror-graphql/mode"),this.editor=r(this._node,{value:this.props.value||"",lineNumbers:!0,tabSize:2,mode:"graphql",theme:this.props.editorTheme||"graphiql",keyMap:"sublime",autoCloseBrackets:!0,matchBrackets:!0,showCursorWhenSelecting:!0,readOnly:!!this.props.readOnly&&"nocursor",foldGutter:{minFoldSize:4},lint:{schema:this.props.schema},hintOptions:{schema:this.props.schema,closeOnUnfocus:!1,completeSingle:!1,container:this._node},info:{schema:this.props.schema,renderDescription:function(e){return md.render(e)},onClick:function(r){return e.props.onClickReference(r)}},jump:{schema:this.props.schema,onClick:function(r){return e.props.onClickReference(r)}},gutters:["CodeMirror-linenumbers","CodeMirror-foldgutter"],extraKeys:function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),o.forEach(function(r){_defineProperty(e,r,t[r])})}return e}({"Cmd-Space":function(){return e.editor.showHint({completeSingle:!0,container:e._node})},"Ctrl-Space":function(){return e.editor.showHint({completeSingle:!0,container:e._node})},"Alt-Space":function(){return e.editor.showHint({completeSingle:!0,container:e._node})},"Shift-Space":function(){return e.editor.showHint({completeSingle:!0,container:e._node})},"Shift-Alt-Space":function(){return e.editor.showHint({completeSingle:!0,container:e._node})},"Cmd-Enter":function(){e.props.onRunQuery&&e.props.onRunQuery()},"Ctrl-Enter":function(){e.props.onRunQuery&&e.props.onRunQuery()},"Shift-Ctrl-C":function(){e.props.onCopyQuery&&e.props.onCopyQuery()},"Shift-Ctrl-P":function(){e.props.onPrettifyQuery&&e.props.onPrettifyQuery()},"Shift-Ctrl-M":function(){e.props.onMergeQuery&&e.props.onMergeQuery()}},_commonKeys.default)}),this.editor.on("change",this._onEdit),this.editor.on("keyup",this._onKeyUp),this.editor.on("hasCompletion",this._onHasCompletion),this.editor.on("beforeChange",this._onBeforeChange)}},{key:"componentDidUpdate",value:function(e){var r=require("codemirror");this.ignoreChangeEvent=!0,this.props.schema!==e.schema&&(this.editor.options.lint.schema=this.props.schema,this.editor.options.hintOptions.schema=this.props.schema,this.editor.options.info.schema=this.props.schema,this.editor.options.jump.schema=this.props.schema,r.signal(this.editor,"change",this.editor)),this.props.value!==e.value&&this.props.value!==this.cachedValue&&(this.cachedValue=this.props.value,this.editor.setValue(this.props.value)),this.ignoreChangeEvent=!1}},{key:"componentWillUnmount",value:function(){this.editor&&(this.editor.off("change",this._onEdit),this.editor.off("keyup",this._onKeyUp),this.editor.off("hasCompletion",this._onHasCompletion),this.editor=null)}},{key:"render",value:function(){var e=this;return _react.default.createElement("div",{className:"query-editor",ref:function(r){e._node=r}})}},{key:"getCodeMirror",value:function(){return this.editor}},{key:"getClientHeight",value:function(){return this._node&&this._node.clientHeight}},{key:"_onBeforeChange",value:function(e,r){if("paste"===r.origin){var t=r.text.map(_normalizeWhitespace.normalizeWhitespace);r.update(r.from,r.to,t)}}}]),r);function r(e){var t;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,r),_defineProperty(_assertThisInitialized(t=function(e,r){return!r||"object"!==_typeof(r)&&"function"!=typeof r?_assertThisInitialized(e):r}(this,_getPrototypeOf(r).call(this))),"_onKeyUp",function(e,r){AUTO_COMPLETE_AFTER_KEY.test(r.key)&&t.editor.execCommand("autocomplete")}),_defineProperty(_assertThisInitialized(t),"_onEdit",function(){t.ignoreChangeEvent||(t.cachedValue=t.editor.getValue(),t.props.onEdit&&t.props.onEdit(t.cachedValue))}),_defineProperty(_assertThisInitialized(t),"_onHasCompletion",function(e,r){(0,_onHasCompletion.default)(e,r,t.props.onHintInformationRender)}),t.cachedValue=e.value||"",t}_defineProperty(exports.QueryEditor=QueryEditor,"propTypes",{schema:_propTypes.default.instanceOf(_graphql.GraphQLSchema),value:_propTypes.default.string,onEdit:_propTypes.default.func,readOnly:_propTypes.default.bool,onHintInformationRender:_propTypes.default.func,onClickReference:_propTypes.default.func,onCopyQuery:_propTypes.default.func,onPrettifyQuery:_propTypes.default.func,onMergeQuery:_propTypes.default.func,onRunQuery:_propTypes.default.func,editorTheme:_propTypes.default.string})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../utility/commonKeys":260,"../utility/normalizeWhitespace":269,"../utility/onHasCompletion":270,codemirror:15,"codemirror-graphql/hint":218,"codemirror-graphql/info":219,"codemirror-graphql/jump":220,"codemirror-graphql/lint":221,"codemirror-graphql/mode":222,"codemirror/addon/comment/comment":2,"codemirror/addon/dialog/dialog":3,"codemirror/addon/edit/closebrackets":4,"codemirror/addon/edit/matchbrackets":5,"codemirror/addon/fold/brace-fold":6,"codemirror/addon/fold/foldgutter":8,"codemirror/addon/hint/show-hint":9,"codemirror/addon/lint/lint":10,"codemirror/addon/search/jump-to-line":11,"codemirror/addon/search/search":12,"codemirror/addon/search/searchcursor":13,"codemirror/keymap/sublime":14,graphql:28,"markdown-it":139,"prop-types":201}],249:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.QueryHistory=void 0;var _graphql=require("graphql"),_react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_QueryStore=_interopRequireDefault(require("../utility/QueryStore")),_HistoryQuery=_interopRequireDefault(require("./HistoryQuery"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var o in r)Object.prototype.hasOwnProperty.call(r,o)&&(e[o]=r[o])}return e}).apply(this,arguments)}function _toConsumableArray(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t<e.length;t++)r[t]=e[t];return r}}(e)||function(e){if(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e))return Array.from(e)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var QueryHistory=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"componentWillReceiveProps",value:function(e){if(function(e,t,r){if(e.queryID===t.queryID)return!1;try{(0,_graphql.parse)(e.query)}catch(e){return!1}if(!r)return!0;if(JSON.stringify(e.query)===JSON.stringify(r.query)){if(JSON.stringify(e.variables)===JSON.stringify(r.variables))return!1;if(!e.variables&&!r.variables)return!1}return!0}(e,this.props,this.historyStore.fetchRecent())){var t={query:e.query,variables:e.variables,operationName:e.operationName};this.historyStore.push(t),20<this.historyStore.length&&this.historyStore.shift();var r=this.historyStore.items,o=this.favoriteStore.items,i=r.concat(o);this.setState({queries:i})}}},{key:"render",value:function(){var e=this,t=this.state.queries.slice().reverse().map(function(t,r){return _react.default.createElement(_HistoryQuery.default,_extends({handleEditLabel:e.editLabel,handleToggleFavorite:e.toggleFavorite,key:r,onSelect:e.props.onSelectQuery},t))});return _react.default.createElement("div",null,_react.default.createElement("div",{className:"history-title-bar"},_react.default.createElement("div",{className:"history-title"},"History"),_react.default.createElement("div",{className:"doc-explorer-rhs"},this.props.children)),_react.default.createElement("div",{className:"history-contents"},t))}}]),t);function t(e){var r;(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"toggleFavorite",function(e,t,o,i,n){var a={query:e,variables:t,operationName:o,label:i};r.favoriteStore.contains(a)?n&&(a.favorite=!1,r.favoriteStore.delete(a)):(a.favorite=!0,r.favoriteStore.push(a)),r.setState({queries:[].concat(_toConsumableArray(r.historyStore.items),_toConsumableArray(r.favoriteStore.items))})}),_defineProperty(_assertThisInitialized(r),"editLabel",function(e,t,o,i,n){var a={query:e,variables:t,operationName:o,label:i};n?r.favoriteStore.edit(function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(t){_defineProperty(e,t,r[t])})}return e}({},a,{favorite:n})):r.historyStore.edit(a),r.setState({queries:[].concat(_toConsumableArray(r.historyStore.items),_toConsumableArray(r.favoriteStore.items))})}),r.historyStore=new _QueryStore.default("queries",e.storage),r.favoriteStore=new _QueryStore.default("favorites",e.storage);var o=r.historyStore.fetchAll(),i=r.favoriteStore.fetchAll(),n=o.concat(i);return r.state={queries:n},r}_defineProperty(exports.QueryHistory=QueryHistory,"propTypes",{query:_propTypes.default.string,variables:_propTypes.default.string,operationName:_propTypes.default.string,queryID:_propTypes.default.number,onSelectQuery:_propTypes.default.func,storage:_propTypes.default.object})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../utility/QueryStore":258,"./HistoryQuery":246,graphql:28,"prop-types":201}],250:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ResultViewer=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_reactDom=_interopRequireDefault("undefined"!=typeof window?window.ReactDOM:void 0!==global?global.ReactDOM:null),_propTypes=_interopRequireDefault(require("prop-types")),_commonKeys=_interopRequireDefault(require("../utility/commonKeys"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _possibleConstructorReturn(e,r){return!r||"object"!==_typeof(r)&&"function"!=typeof r?function(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e):r}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _setPrototypeOf(e,r){return(_setPrototypeOf=Object.setPrototypeOf||function(e,r){return e.__proto__=r,e})(e,r)}var ResultViewer=(function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),r&&_setPrototypeOf(e,r)}(r,_react.default.Component),function(e,r,t){r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t)}(r,[{key:"componentDidMount",value:function(){var e=require("codemirror");require("codemirror/addon/fold/foldgutter"),require("codemirror/addon/fold/brace-fold"),require("codemirror/addon/dialog/dialog"),require("codemirror/addon/search/search"),require("codemirror/addon/search/searchcursor"),require("codemirror/addon/search/jump-to-line"),require("codemirror/keymap/sublime"),require("codemirror-graphql/results/mode");var r=this.props.ResultsTooltip,t=this.props.ImagePreview;if(r||t){require("codemirror-graphql/utils/info-addon");var o=document.createElement("div");e.registerHelper("info","graphql-results",function(e,n,i,u){var l=[];return r&&l.push(_react.default.createElement(r,{pos:u})),t&&"function"==typeof t.shouldRender&&t.shouldRender(e)&&l.push(_react.default.createElement(t,{token:e})),l.length?(_reactDom.default.render(_react.default.createElement("div",null,l),o),o):(_reactDom.default.unmountComponentAtNode(o),null)})}this.viewer=e(this._node,{lineWrapping:!0,value:this.props.value||"",readOnly:!0,theme:this.props.editorTheme||"graphiql",mode:"graphql-results",keyMap:"sublime",foldGutter:{minFoldSize:4},gutters:["CodeMirror-foldgutter"],info:Boolean(this.props.ResultsTooltip||this.props.ImagePreview),extraKeys:_commonKeys.default})}},{key:"shouldComponentUpdate",value:function(e){return this.props.value!==e.value}},{key:"componentDidUpdate",value:function(){this.viewer.setValue(this.props.value||"")}},{key:"componentWillUnmount",value:function(){this.viewer=null}},{key:"render",value:function(){var e=this;return _react.default.createElement("div",{className:"result-window",ref:function(r){e._node=r}})}},{key:"getCodeMirror",value:function(){return this.viewer}},{key:"getClientHeight",value:function(){return this._node&&this._node.clientHeight}}]),r);function r(){return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,r),_possibleConstructorReturn(this,_getPrototypeOf(r).call(this))}(function(e,r,t){r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t})(exports.ResultViewer=ResultViewer,"propTypes",{value:_propTypes.default.string,editorTheme:_propTypes.default.string,ResultsTooltip:_propTypes.default.any,ImagePreview:_propTypes.default.any})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../utility/commonKeys":260,codemirror:15,"codemirror-graphql/results/mode":223,"codemirror-graphql/utils/info-addon":228,"codemirror/addon/dialog/dialog":3,"codemirror/addon/fold/brace-fold":6,"codemirror/addon/fold/foldgutter":8,"codemirror/addon/search/jump-to-line":11,"codemirror/addon/search/search":12,"codemirror/addon/search/searchcursor":13,"codemirror/keymap/sublime":14,"prop-types":201}],251:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ToolbarButton=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var o=t[r];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ToolbarButton=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"render",value:function(){var e=this.state.error;return _react.default.createElement("a",{className:"toolbar-button"+(e?" error":""),onMouseDown:preventDefault,onClick:this.handleClick,title:e?e.message:this.props.title},this.props.label)}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleClick",function(e){e.preventDefault();try{r.props.onClick(),r.setState({error:null})}catch(e){r.setState({error:e})}}),r.state={error:null},r}function preventDefault(e){e.preventDefault()}_defineProperty(exports.ToolbarButton=ToolbarButton,"propTypes",{onClick:_propTypes.default.func,title:_propTypes.default.string,label:_propTypes.default.string})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],252:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ToolbarGroup=function(e){var r=e.children;return _react.default.createElement("div",{className:"toolbar-button-group"},r)};var e,_react=(e="undefined"!=typeof window?window.React:void 0!==global?global.React:null)&&e.__esModule?e:{default:e}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],253:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ToolbarMenuItem=ToolbarMenuItem,exports.ToolbarMenu=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ToolbarMenu=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"componentWillUnmount",value:function(){this._release()}},{key:"render",value:function(){var e=this,t=this.state.visible;return _react.default.createElement("a",{className:"toolbar-menu toolbar-button",onClick:this.handleOpen.bind(this),onMouseDown:preventDefault,ref:function(t){e._node=t},title:this.props.title},this.props.label,_react.default.createElement("svg",{width:"14",height:"8"},_react.default.createElement("path",{fill:"#666",d:"M 5 1.5 L 14 1.5 L 9.5 7 z"})),_react.default.createElement("ul",{className:"toolbar-menu-items"+(t?" open":"")},this.props.children))}},{key:"_subscribe",value:function(){this._listener||(this._listener=this.handleClick.bind(this),document.addEventListener("click",this._listener))}},{key:"_release",value:function(){this._listener&&(document.removeEventListener("click",this._listener),this._listener=null)}},{key:"handleClick",value:function(e){this._node!==e.target&&(preventDefault(e),this.setState({visible:!1}),this._release())}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleOpen",function(e){preventDefault(e),r.setState({visible:!0}),r._subscribe()}),r.state={visible:!1},r}function ToolbarMenuItem(e){var t=e.onSelect,r=e.title,n=e.label;return _react.default.createElement("li",{onMouseOver:function(e){e.target.className="hover"},onMouseOut:function(e){e.target.className=null},onMouseDown:preventDefault,onMouseUp:t,title:r},n)}function preventDefault(e){e.preventDefault()}_defineProperty(exports.ToolbarMenu=ToolbarMenu,"propTypes",{title:_propTypes.default.string,label:_propTypes.default.string}),ToolbarMenuItem.propTypes={onSelect:_propTypes.default.func,title:_propTypes.default.string,label:_propTypes.default.string}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],254:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ToolbarSelectOption=ToolbarSelectOption,exports.ToolbarSelect=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _extends(){return(_extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e}).apply(this,arguments)}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function _defineProperty(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var ToolbarSelect=(function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),t&&_setPrototypeOf(e,t)}(t,_react.default.Component),function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(t,[{key:"componentWillUnmount",value:function(){this._release()}},{key:"render",value:function(){var e,t=this,r=this.state.visible,n=_react.default.Children.map(this.props.children,function(r,n){e&&!r.props.selected||(e=r);var o=r.props.onSelect||t.props.onSelect&&t.props.onSelect.bind(null,r.props.value,n);return _react.default.createElement(ToolbarSelectOption,_extends({},r.props,{onSelect:o}))});return _react.default.createElement("a",{className:"toolbar-select toolbar-button",onClick:this.handleOpen.bind(this),onMouseDown:preventDefault,ref:function(e){t._node=e},title:this.props.title},e.props.label,_react.default.createElement("svg",{width:"13",height:"10"},_react.default.createElement("path",{fill:"#666",d:"M 5 5 L 13 5 L 9 1 z"}),_react.default.createElement("path",{fill:"#666",d:"M 5 6 L 13 6 L 9 10 z"})),_react.default.createElement("ul",{className:"toolbar-select-options"+(r?" open":"")},n))}},{key:"_subscribe",value:function(){this._listener||(this._listener=this.handleClick.bind(this),document.addEventListener("click",this._listener))}},{key:"_release",value:function(){this._listener&&(document.removeEventListener("click",this._listener),this._listener=null)}},{key:"handleClick",value:function(e){this._node!==e.target&&(preventDefault(e),this.setState({visible:!1}),this._release())}}]),t);function t(e){var r;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,t),_defineProperty(_assertThisInitialized(r=function(e,t){return!t||"object"!==_typeof(t)&&"function"!=typeof t?_assertThisInitialized(e):t}(this,_getPrototypeOf(t).call(this,e))),"handleOpen",function(e){preventDefault(e),r.setState({visible:!0}),r._subscribe()}),r.state={visible:!1},r}function ToolbarSelectOption(e){var t=e.onSelect,r=e.label,n=e.selected;return _react.default.createElement("li",{onMouseOver:function(e){e.target.className="hover"},onMouseOut:function(e){e.target.className=null},onMouseDown:preventDefault,onMouseUp:t},r,n&&_react.default.createElement("svg",{width:"13",height:"13"},_react.default.createElement("polygon",{points:"4.851,10.462 0,5.611 2.314,3.297 4.851,5.835 10.686,0 13,2.314 4.851,10.462"})))}function preventDefault(e){e.preventDefault()}_defineProperty(exports.ToolbarSelect=ToolbarSelect,"propTypes",{title:_propTypes.default.string,label:_propTypes.default.string,onSelect:_propTypes.default.func}),ToolbarSelectOption.propTypes={onSelect:_propTypes.default.func,selected:_propTypes.default.bool,label:_propTypes.default.string,value:_propTypes.default.any}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"prop-types":201}],255:[function(require,module,exports){(function(global){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.VariableEditor=void 0;var _react=_interopRequireDefault("undefined"!=typeof window?window.React:void 0!==global?global.React:null),_propTypes=_interopRequireDefault(require("prop-types")),_onHasCompletion=_interopRequireDefault(require("../utility/onHasCompletion")),_commonKeys=_interopRequireDefault(require("../utility/commonKeys"));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _defineProperties(e,r){for(var t=0;t<r.length;t++){var o=r[t];o.enumerable=o.enumerable||!1,o.configurable=!0,"value"in o&&(o.writable=!0),Object.defineProperty(e,o.key,o)}}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function _setPrototypeOf(e,r){return(_setPrototypeOf=Object.setPrototypeOf||function(e,r){return e.__proto__=r,e})(e,r)}function _defineProperty(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}var VariableEditor=(function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),r&&_setPrototypeOf(e,r)}(r,_react.default.Component),function(e,r,t){r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t)}(r,[{key:"componentDidMount",value:function(){var e=this,r=require("codemirror");require("codemirror/addon/hint/show-hint"),require("codemirror/addon/edit/matchbrackets"),require("codemirror/addon/edit/closebrackets"),require("codemirror/addon/fold/brace-fold"),require("codemirror/addon/fold/foldgutter"),require("codemirror/addon/lint/lint"),require("codemirror/addon/search/searchcursor"),require("codemirror/addon/search/jump-to-line"),require("codemirror/addon/dialog/dialog"),require("codemirror/keymap/sublime"),require("codemirror-graphql/variables/hint"),require("codemirror-graphql/variables/lint"),require("codemirror-graphql/variables/mode"),this.editor=r(this._node,{value:this.props.value||"",lineNumbers:!0,tabSize:2,mode:"graphql-variables",theme:this.props.editorTheme||"graphiql",keyMap:"sublime",autoCloseBrackets:!0,matchBrackets:!0,showCursorWhenSelecting:!0,readOnly:!!this.props.readOnly&&"nocursor",foldGutter:{minFoldSize:4},lint:{variableToType:this.props.variableToType},hintOptions:{variableToType:this.props.variableToType,closeOnUnfocus:!1,completeSingle:!1,container:this._node},gutters:["CodeMirror-linenumbers","CodeMirror-foldgutter"],extraKeys:function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),o.forEach(function(r){_defineProperty(e,r,t[r])})}return e}({"Cmd-Space":function(){return e.editor.showHint({completeSingle:!1,container:e._node})},"Ctrl-Space":function(){return e.editor.showHint({completeSingle:!1,container:e._node})},"Alt-Space":function(){return e.editor.showHint({completeSingle:!1,container:e._node})},"Shift-Space":function(){return e.editor.showHint({completeSingle:!1,container:e._node})},"Cmd-Enter":function(){e.props.onRunQuery&&e.props.onRunQuery()},"Ctrl-Enter":function(){e.props.onRunQuery&&e.props.onRunQuery()},"Shift-Ctrl-P":function(){e.props.onPrettifyQuery&&e.props.onPrettifyQuery()},"Shift-Ctrl-M":function(){e.props.onMergeQuery&&e.props.onMergeQuery()}},_commonKeys.default)}),this.editor.on("change",this._onEdit),this.editor.on("keyup",this._onKeyUp),this.editor.on("hasCompletion",this._onHasCompletion)}},{key:"componentDidUpdate",value:function(e){var r=require("codemirror");if(this.ignoreChangeEvent=!0,this.props.variableToType!==e.variableToType&&(this.editor.options.lint.variableToType=this.props.variableToType,this.editor.options.hintOptions.variableToType=this.props.variableToType,r.signal(this.editor,"change",this.editor)),this.props.value!==e.value&&this.props.value!==this.cachedValue){var t=this.props.value||"";this.cachedValue=t,this.editor.setValue(t)}this.ignoreChangeEvent=!1}},{key:"componentWillUnmount",value:function(){this.editor.off("change",this._onEdit),this.editor.off("keyup",this._onKeyUp),this.editor.off("hasCompletion",this._onHasCompletion),this.editor=null}},{key:"render",value:function(){var e=this;return _react.default.createElement("div",{className:"codemirrorWrap",ref:function(r){e._node=r}})}},{key:"getCodeMirror",value:function(){return this.editor}},{key:"getClientHeight",value:function(){return this._node&&this._node.clientHeight}}]),r);function r(e){var t;return function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")}(this,r),_defineProperty(_assertThisInitialized(t=function(e,r){return!r||"object"!==_typeof(r)&&"function"!=typeof r?_assertThisInitialized(e):r}(this,_getPrototypeOf(r).call(this))),"_onKeyUp",function(e,r){var o=r.keyCode;(65<=o&&o<=90||!r.shiftKey&&48<=o&&o<=57||r.shiftKey&&189===o||r.shiftKey&&222===o)&&t.editor.execCommand("autocomplete")}),_defineProperty(_assertThisInitialized(t),"_onEdit",function(){t.ignoreChangeEvent||(t.cachedValue=t.editor.getValue(),t.props.onEdit&&t.props.onEdit(t.cachedValue))}),_defineProperty(_assertThisInitialized(t),"_onHasCompletion",function(e,r){(0,_onHasCompletion.default)(e,r,t.props.onHintInformationRender)}),t.cachedValue=e.value||"",t}_defineProperty(exports.VariableEditor=VariableEditor,"propTypes",{variableToType:_propTypes.default.object,value:_propTypes.default.string,onEdit:_propTypes.default.func,readOnly:_propTypes.default.bool,onHintInformationRender:_propTypes.default.func,onPrettifyQuery:_propTypes.default.func,onMergeQuery:_propTypes.default.func,onRunQuery:_propTypes.default.func,editorTheme:_propTypes.default.string})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"../utility/commonKeys":260,"../utility/onHasCompletion":270,codemirror:15,"codemirror-graphql/variables/hint":231,"codemirror-graphql/variables/lint":232,"codemirror-graphql/variables/mode":233,"codemirror/addon/dialog/dialog":3,"codemirror/addon/edit/closebrackets":4,"codemirror/addon/edit/matchbrackets":5,"codemirror/addon/fold/brace-fold":6,"codemirror/addon/fold/foldgutter":8,"codemirror/addon/hint/show-hint":9,"codemirror/addon/lint/lint":10,"codemirror/addon/search/jump-to-line":11,"codemirror/addon/search/searchcursor":13,"codemirror/keymap/sublime":14,"prop-types":201}],256:[function(require,module,exports){"use strict";require("regenerator-runtime/runtime"),module.exports=require("./components/GraphiQL").GraphiQL},{"./components/GraphiQL":245,"regenerator-runtime/runtime":207}],257:[function(require,module,exports){"use strict";function _defineProperties(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||!1,i.configurable=!0,"value"in i&&(i.writable=!0),Object.defineProperty(e,i.key,i)}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var CodeMirrorSizer=(function(e,r,t){r&&_defineProperties(e.prototype,r),t&&_defineProperties(e,t)}(e,[{key:"updateSizes",value:function(e){var r=this;e.forEach(function(e,t){var i=e.getClientHeight();t<=r.sizes.length&&i!==r.sizes[t]&&e.getCodeMirror().setSize(),r.sizes[t]=i})}}]),e);function e(){(function(e,r){if(!(e instanceof r))throw new TypeError("Cannot call a class as a function")})(this,e),this.sizes=[]}exports.default=CodeMirrorSizer},{}],258:[function(require,module,exports){"use strict";function _defineProperties(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var QueryStore=(function(e,t,i){t&&_defineProperties(e.prototype,t),i&&_defineProperties(e,i)}(e,[{key:"contains",value:function(e){return this.items.some(function(t){return t.query===e.query&&t.variables===e.variables&&t.operationName===e.operationName})}},{key:"edit",value:function(e){var t=this.items.findIndex(function(t){return t.query===e.query&&t.variables===e.variables&&t.operationName===e.operationName});-1!==t&&(this.items.splice(t,1,e),this.save())}},{key:"delete",value:function(e){var t=this.items.findIndex(function(t){return t.query===e.query&&t.variables===e.variables&&t.operationName===e.operationName});-1!==t&&(this.items.splice(t,1),this.save())}},{key:"fetchRecent",value:function(){return this.items[this.items.length-1]}},{key:"fetchAll",value:function(){var e=this.storage.get(this.key);return e?JSON.parse(e)[this.key]:[]}},{key:"push",value:function(e){this.items.push(e),this.save()}},{key:"shift",value:function(){this.items.shift(),this.save()}},{key:"save",value:function(){this.storage.set(this.key,JSON.stringify(function(e,t,i){return t in e?Object.defineProperty(e,t,{value:i,enumerable:!0,configurable:!0,writable:!0}):e[t]=i,e}({},this.key,this.items)))}},{key:"length",get:function(){return this.items.length}}]),e);function e(t,i){(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this.key=t,this.storage=i,this.items=this.fetchAll()}exports.default=QueryStore},{}],259:[function(require,module,exports){"use strict";function _defineProperties(e,t){for(var r=0;r<t.length;r++){var a=t[r];a.enumerable=a.enumerable||!1,a.configurable=!0,"value"in a&&(a.writable=!0),Object.defineProperty(e,a.key,a)}}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var StorageAPI=(function(e,t,r){t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r)}(e,[{key:"get",value:function(e){if(this.storage){var t=this.storage.getItem("graphiql:"+e);if("null"!==t&&"undefined"!==t)return t;this.storage.removeItem("graphiql:"+e)}}},{key:"set",value:function(e,t){if(this.storage){var r="graphiql:".concat(e);t?function(e,t,r){try{return e.setItem(t,r),!0}catch(t){return t instanceof DOMException&&(22===t.code||1014===t.code||"QuotaExceededError"===t.name||"NS_ERROR_DOM_QUOTA_REACHED"===t.name)&&0!==e.length}}(this.storage,r,t)&&this.storage.setItem(r,t):this.storage.removeItem(r)}}}]),e);function e(t){(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")})(this,e),this.storage=t||window.localStorage}exports.default=StorageAPI},{}],260:[function(require,module,exports){"use strict";var _commonKeys;function _defineProperty(e,o,t){return o in e?Object.defineProperty(e,o,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[o]=t,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var _default=(_defineProperty(_commonKeys={},"MacIntel"===window.navigator.platform?"Cmd-F":"Ctrl-F","findPersistent"),_defineProperty(_commonKeys,"Cmd-G","findPersistent"),_defineProperty(_commonKeys,"Ctrl-G","findPersistent"),_defineProperty(_commonKeys,"Ctrl-Left","goSubwordLeft"),_defineProperty(_commonKeys,"Ctrl-Right","goSubwordRight"),_defineProperty(_commonKeys,"Alt-Left","goGroupLeft"),_defineProperty(_commonKeys,"Alt-Right","goGroupRight"),_commonKeys);exports.default=_default},{}],261:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(e,t){var u;return function(){var n=this,o=arguments;clearTimeout(u),u=setTimeout(function(){u=null,t.apply(n,o)},e)}}},{}],262:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getLeft=function(e){for(var t=0,f=e;f.offsetParent;)t+=f.offsetLeft,f=f.offsetParent;return t},exports.getTop=function(e){for(var t=0,f=e;f.offsetParent;)t+=f.offsetTop,f=f.offsetParent;return t}},{}],263:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.fillLeafs=function(e,t,r){var n,i=[];if(!e)return{insertions:i,result:t};try{n=(0,_graphql.parse)(t)}catch(e){return{insertions:i,result:t}}var a=r||defaultGetDefaultFieldNames,l=new _graphql.TypeInfo(e);return(0,_graphql.visit)(n,{leave:function(e){l.leave(e)},enter:function(e){if(l.enter(e),"Field"===e.kind&&!e.selectionSet){var r=function buildSelectionSet(e,t){var r=(0,_graphql.getNamedType)(e);if(e&&!(0,_graphql.isLeafType)(e)){var n=t(r);if(Array.isArray(n)&&0!==n.length)return{kind:"SelectionSet",selections:n.map(function(e){var n=r.getFields()[e];return{kind:"Field",name:{kind:"Name",value:e},selectionSet:buildSelectionSet(n?n.type:null,t)}})}}}(l.getType(),a);if(r){var n=function(e,t){for(var r=t,n=t;r;){var i=e.charCodeAt(r-1);if(10===i||13===i||8232===i||8233===i)break;r--,9!==i&&11!==i&&12!==i&&32!==i&&160!==i&&(n=r)}return e.substring(r,n)}(t,e.loc.start);i.push({index:e.loc.end,string:" "+(0,_graphql.print)(r).replace(/\n/g,"\n"+n)})}}}}),{insertions:i,result:function(e,t){if(0===t.length)return e;var r="",n=0;return t.forEach(function(t){var i=t.index,a=t.string;r+=e.slice(n,i)+a,n=i}),r+=e.slice(n)}(t,i)}};var _graphql=require("graphql");function defaultGetDefaultFieldNames(e){if(!e.getFields)return[];var t=e.getFields();if(t.id)return["id"];if(t.edges)return["edges"];if(t.node)return["node"];var r=[];return Object.keys(t).forEach(function(e){(0,_graphql.isLeafType)(t[e].type)&&r.push(e)}),r}},{graphql:28}],264:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(e,t){for(var r=0;r<e.length;r++)if(t(e[r]))return e[r]}},{}],265:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(e,r){if(r){var a;try{a=(0,_graphql.parse)(r)}catch(e){return}var t=e?collectVariables(e,a):null,i=[];return a.definitions.forEach(function(e){"OperationDefinition"===e.kind&&i.push(e)}),{variableToType:t,operations:i}}},exports.collectVariables=collectVariables;var _graphql=require("graphql");function collectVariables(e,r){var a=Object.create(null);return r.definitions.forEach(function(r){if("OperationDefinition"===r.kind){var t=r.variableDefinitions;t&&t.forEach(function(r){var t=r.variable,i=r.type,n=(0,_graphql.typeFromAST)(e,i);n&&(a[t.name.value]=n)})}}),a}},{graphql:28}],266:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(e,t,n){if(n&&!(n.length<1)){var r=n.map(function(e){return e.name&&e.name.value});if(t&&-1!==r.indexOf(t))return t;if(t&&e){var a=e.map(function(e){return e.name&&e.name.value}).indexOf(t);if(-1!==a&&a<r.length)return r[a]}return r[0]}}},{}],267:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"introspectionQuery",{enumerable:!0,get:function(){return _graphql.introspectionQuery}}),exports.introspectionQuerySansSubscriptions=exports.introspectionQueryName=void 0;var _graphql=require("graphql"),introspectionQueryName=(0,_graphql.getOperationAST)((0,_graphql.parse)(_graphql.introspectionQuery)).name.value;exports.introspectionQueryName=introspectionQueryName;var introspectionQuerySansSubscriptions="\n query ".concat(introspectionQueryName," {\n __schema {\n queryType { name }\n mutationType { name }\n types {\n ...FullType\n }\n directives {\n name\n description\n locations\n args {\n ...InputValue\n }\n }\n }\n }\n\n fragment FullType on __Type {\n kind\n name\n description\n fields(includeDeprecated: true) {\n name\n description\n args {\n ...InputValue\n }\n type {\n ...TypeRef\n }\n isDeprecated\n deprecationReason\n }\n inputFields {\n ...InputValue\n }\n interfaces {\n ...TypeRef\n }\n enumValues(includeDeprecated: true) {\n name\n description\n isDeprecated\n deprecationReason\n }\n possibleTypes {\n ...TypeRef\n }\n }\n\n fragment InputValue on __InputValue {\n name\n description\n type { ...TypeRef }\n defaultValue\n }\n\n fragment TypeRef on __Type {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n ofType {\n kind\n name\n }\n }\n }\n }\n }\n }\n }\n }\n");exports.introspectionQuerySansSubscriptions=introspectionQuerySansSubscriptions},{graphql:28}],268:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.mergeAst=function(n){var e={};n.definitions.filter(function(n){return n.kind===_kinds.Kind.FRAGMENT_DEFINITION}).forEach(function(n){var i=Object.assign({},n);i.kind=_kinds.Kind.INLINE_FRAGMENT,e[n.name.value]=i});var i=Object.assign({},n);return i.definitions=n.definitions.filter(function(n){return n.kind!==_kinds.Kind.FRAGMENT_DEFINITION}).map(function(n){return function resolveDefinition(n,e){var i=e;return i.kind===_kinds.Kind.FRAGMENT_SPREAD&&(i=n[i.name.value]),i.selectionSet&&(i.selectionSet.selections=i.selectionSet.selections.filter(function(n,e,i){return n.kind!==_kinds.Kind.FRAGMENT_SPREAD||e===i.findIndex(function(e){return e.kind===_kinds.Kind.FRAGMENT_SPREAD&&n.name.value===e.name.value})}).map(function(e){return resolveDefinition(n,e)})),i}(e,n)}),i};var _kinds=require("graphql/language/kinds")},{"graphql/language/kinds":50}],269:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.normalizeWhitespace=function(e){return e.replace(sanitizeRegex," ")},exports.invalidCharacters=void 0;var invalidCharacters=Array.from({length:11},function(e,r){return String.fromCharCode(8192+r)}).concat(["\u2028","\u2029",""," "]);exports.invalidCharacters=invalidCharacters;var sanitizeRegex=new RegExp("["+invalidCharacters.join("")+"]","g")},{}],270:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(e,n,r){var t,a;require("codemirror").on(n,"select",function(e,n){if(!t){var o,i=n.parentNode;(t=document.createElement("div")).className="CodeMirror-hint-information",i.appendChild(t),(a=document.createElement("div")).className="CodeMirror-hint-deprecation",i.appendChild(a),i.addEventListener("DOMNodeRemoved",o=function(e){e.target===i&&(i.removeEventListener("DOMNodeRemoved",o),o=a=t=null)})}var d=e.description?md.render(e.description):"Self descriptive.",p=e.type?'<span class="infoType">'+function renderType(e){return e instanceof _graphql.GraphQLNonNull?"".concat(renderType(e.ofType),"!"):e instanceof _graphql.GraphQLList?"[".concat(renderType(e.ofType),"]"):'<a class="typeName">'.concat(e.name,"</a>")}(e.type)+"</span>":"";if(t.innerHTML='<div class="content">'+("<p>"===d.slice(0,3)?"<p>"+p+d.slice(3):p+d)+"</div>",e.isDeprecated){var l=e.deprecationReason?md.render(e.deprecationReason):"";a.innerHTML='<span class="deprecation-label">Deprecated</span>'+l,a.style.display="block"}else a.style.display="none";r&&r(t)})};var e,_graphql=require("graphql");var md=new(((e=require("markdown-it"))&&e.__esModule?e:{default:e}).default)},{codemirror:15,graphql:28,"markdown-it":139}],271:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.GraphQLLanguageService=void 0;var _graphql=require("graphql"),_getAutocompleteSuggestions3=require("./getAutocompleteSuggestions"),_getHoverInformation3=require("./getHoverInformation"),_getDiagnostics2=require("./getDiagnostics"),_getDefinition2=require("./getDefinition"),_graphqlLanguageServiceUtils=require("graphql-language-service-utils");function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg),value=info.value}catch(error){return void reject(error)}info.done?resolve(value):Promise.resolve(value).then(_next,_throw)}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(void 0)})}}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}var FRAGMENT_DEFINITION=_graphql.Kind.FRAGMENT_DEFINITION,OBJECT_TYPE_DEFINITION=_graphql.Kind.OBJECT_TYPE_DEFINITION,INTERFACE_TYPE_DEFINITION=_graphql.Kind.INTERFACE_TYPE_DEFINITION,ENUM_TYPE_DEFINITION=_graphql.Kind.ENUM_TYPE_DEFINITION,UNION_TYPE_DEFINITION=_graphql.Kind.UNION_TYPE_DEFINITION,SCALAR_TYPE_DEFINITION=_graphql.Kind.SCALAR_TYPE_DEFINITION,INPUT_OBJECT_TYPE_DEFINITION=_graphql.Kind.INPUT_OBJECT_TYPE_DEFINITION,SCALAR_TYPE_EXTENSION=_graphql.Kind.SCALAR_TYPE_EXTENSION,OBJECT_TYPE_EXTENSION=_graphql.Kind.OBJECT_TYPE_EXTENSION,INTERFACE_TYPE_EXTENSION=_graphql.Kind.INTERFACE_TYPE_EXTENSION,UNION_TYPE_EXTENSION=_graphql.Kind.UNION_TYPE_EXTENSION,ENUM_TYPE_EXTENSION=_graphql.Kind.ENUM_TYPE_EXTENSION,INPUT_OBJECT_TYPE_EXTENSION=_graphql.Kind.INPUT_OBJECT_TYPE_EXTENSION,DIRECTIVE_DEFINITION=_graphql.Kind.DIRECTIVE_DEFINITION,FRAGMENT_SPREAD=_graphql.Kind.FRAGMENT_SPREAD,OPERATION_DEFINITION=_graphql.Kind.OPERATION_DEFINITION,NAMED_TYPE=_graphql.Kind.NAMED_TYPE,GraphQLLanguageService=function(){function GraphQLLanguageService(cache){!function(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}(this,GraphQLLanguageService),_defineProperty(this,"_graphQLCache",void 0),_defineProperty(this,"_graphQLConfig",void 0),this._graphQLCache=cache,this._graphQLConfig=cache.getGraphQLConfig()}var _getDefinitionForFragmentSpread2,_getDefinitionForNamedType2,_getDefinition,_getHoverInformation2,_getAutocompleteSuggestions2,_getDiagnostics;return function(Constructor,protoProps,staticProps){protoProps&&_defineProperties(Constructor.prototype,protoProps),staticProps&&_defineProperties(Constructor,staticProps)}(GraphQLLanguageService,[{key:"getDiagnostics",value:(_getDiagnostics=_asyncToGenerator(regeneratorRuntime.mark(function _callee(query,uri,isRelayCompatMode){var queryHasExtensions,projectConfig,schemaPath,queryAST,range,source,fragmentDefinitions,fragmentDependencies,dependenciesSource,validationAst,customRules,customRulesModulePath,rulesPath,schema;return regeneratorRuntime.wrap(function(_context){for(;;)switch(_context.prev=_context.next){case 0:queryHasExtensions=!1,projectConfig=this._graphQLConfig.getConfigForFile(uri),schemaPath=projectConfig.schemaPath,_context.prev=3,queryAST=(0,_graphql.parse)(query),schemaPath&&uri===schemaPath||(queryHasExtensions=queryAST.definitions.some(function(definition){switch(definition.kind){case OBJECT_TYPE_DEFINITION:case INTERFACE_TYPE_DEFINITION:case ENUM_TYPE_DEFINITION:case UNION_TYPE_DEFINITION:case SCALAR_TYPE_DEFINITION:case INPUT_OBJECT_TYPE_DEFINITION:case SCALAR_TYPE_EXTENSION:case OBJECT_TYPE_EXTENSION:case INTERFACE_TYPE_EXTENSION:case UNION_TYPE_EXTENSION:case ENUM_TYPE_EXTENSION:case INPUT_OBJECT_TYPE_EXTENSION:case DIRECTIVE_DEFINITION:return!0}return!1})),_context.next=12;break;case 8:return _context.prev=8,_context.t0=_context.catch(3),range=(0,_getDiagnostics2.getRange)(_context.t0.locations[0],query),_context.abrupt("return",[{severity:_getDiagnostics2.SEVERITY.ERROR,message:_context.t0.message,source:"GraphQL: Syntax",range:range}]);case 12:return source=query,_context.next=15,this._graphQLCache.getFragmentDefinitions(projectConfig);case 15:return fragmentDefinitions=_context.sent,_context.next=18,this._graphQLCache.getFragmentDependencies(query,fragmentDefinitions);case 18:fragmentDependencies=_context.sent,dependenciesSource=fragmentDependencies.reduce(function(prev,cur){return"".concat(prev," ").concat((0,_graphql.print)(cur.definition))},""),source="".concat(source," ").concat(dependenciesSource),validationAst=null,_context.prev=22,validationAst=(0,_graphql.parse)(source),_context.next=29;break;case 26:return _context.prev=26,_context.t1=_context.catch(22),_context.abrupt("return",[]);case 29:return(customRulesModulePath=projectConfig.extensions.customValidationRules)&&(rulesPath=require.resolve("".concat(customRulesModulePath)))&&(customRules=require("".concat(rulesPath))(this._graphQLConfig)),_context.next=33,this._graphQLCache.getSchema(projectConfig.projectName,queryHasExtensions).catch(function(){return null});case 33:if(schema=_context.sent){_context.next=36;break}return _context.abrupt("return",[]);case 36:return _context.abrupt("return",(0,_getDiagnostics2.validateQuery)(validationAst,schema,customRules,isRelayCompatMode));case 37:case"end":return _context.stop()}},_callee,this,[[3,8],[22,26]])})),function(_x,_x2,_x3){return _getDiagnostics.apply(this,arguments)})},{key:"getAutocompleteSuggestions",value:(_getAutocompleteSuggestions2=_asyncToGenerator(regeneratorRuntime.mark(function _callee2(query,position,filePath){var projectConfig,schema;return regeneratorRuntime.wrap(function(_context2){for(;;)switch(_context2.prev=_context2.next){case 0:return projectConfig=this._graphQLConfig.getConfigForFile(filePath),_context2.next=3,this._graphQLCache.getSchema(projectConfig.projectName).catch(function(){return null});case 3:if(schema=_context2.sent)return _context2.abrupt("return",(0,_getAutocompleteSuggestions3.getAutocompleteSuggestions)(schema,query,position));_context2.next=6;break;case 6:return _context2.abrupt("return",[]);case 7:case"end":return _context2.stop()}},_callee2,this)})),function(_x4,_x5,_x6){return _getAutocompleteSuggestions2.apply(this,arguments)})},{key:"getHoverInformation",value:(_getHoverInformation2=_asyncToGenerator(regeneratorRuntime.mark(function _callee3(query,position,filePath){var projectConfig,schema;return regeneratorRuntime.wrap(function(_context3){for(;;)switch(_context3.prev=_context3.next){case 0:return projectConfig=this._graphQLConfig.getConfigForFile(filePath),_context3.next=3,this._graphQLCache.getSchema(projectConfig.projectName).catch(function(){return null});case 3:if(schema=_context3.sent)return _context3.abrupt("return",(0,_getHoverInformation3.getHoverInformation)(schema,query,position));_context3.next=6;break;case 6:return _context3.abrupt("return","");case 7:case"end":return _context3.stop()}},_callee3,this)})),function(_x7,_x8,_x9){return _getHoverInformation2.apply(this,arguments)})},{key:"getDefinition",value:(_getDefinition=_asyncToGenerator(regeneratorRuntime.mark(function _callee4(query,position,filePath){var projectConfig,ast,node;return regeneratorRuntime.wrap(function(_context4){for(;;)switch(_context4.prev=_context4.next){case 0:projectConfig=this._graphQLConfig.getConfigForFile(filePath),_context4.prev=1,ast=(0,_graphql.parse)(query),_context4.next=8;break;case 5:return _context4.prev=5,_context4.t0=_context4.catch(1),_context4.abrupt("return",null);case 8:if(!(node=(0,_graphqlLanguageServiceUtils.getASTNodeAtPosition)(query,ast,position))){_context4.next=16;break}_context4.t1=node.kind,_context4.next=_context4.t1===FRAGMENT_SPREAD?13:_context4.t1===FRAGMENT_DEFINITION?14:_context4.t1===OPERATION_DEFINITION?14:_context4.t1===NAMED_TYPE?15:16;break;case 13:return _context4.abrupt("return",this._getDefinitionForFragmentSpread(query,ast,node,filePath,projectConfig));case 14:return _context4.abrupt("return",(0,_getDefinition2.getDefinitionQueryResultForDefinitionNode)(filePath,query,node));case 15:return _context4.abrupt("return",this._getDefinitionForNamedType(query,ast,node,filePath,projectConfig));case 16:return _context4.abrupt("return",null);case 17:case"end":return _context4.stop()}},_callee4,this,[[1,5]])})),function(_x10,_x11,_x12){return _getDefinition.apply(this,arguments)})},{key:"_getDefinitionForNamedType",value:(_getDefinitionForNamedType2=_asyncToGenerator(regeneratorRuntime.mark(function _callee5(query,ast,node,filePath,projectConfig){var objectTypeDefinitions,dependencies,localObjectTypeDefinitions,localOperationDefinationInfos,result;return regeneratorRuntime.wrap(function(_context5){for(;;)switch(_context5.prev=_context5.next){case 0:return _context5.next=2,this._graphQLCache.getObjectTypeDefinitions(projectConfig);case 2:return objectTypeDefinitions=_context5.sent,_context5.next=5,this._graphQLCache.getObjectTypeDependenciesForAST(ast,objectTypeDefinitions);case 5:return dependencies=_context5.sent,localObjectTypeDefinitions=ast.definitions.filter(function(definition){return definition.kind===OBJECT_TYPE_DEFINITION||definition.kind===INPUT_OBJECT_TYPE_DEFINITION||definition.kind===ENUM_TYPE_DEFINITION}),localOperationDefinationInfos=localObjectTypeDefinitions.map(function(definition){return{filePath:filePath,content:query,definition:definition}}),_context5.next=11,(0,_getDefinition2.getDefinitionQueryResultForNamedType)(query,node,dependencies.concat(localOperationDefinationInfos));case 11:return result=_context5.sent,_context5.abrupt("return",result);case 13:case"end":return _context5.stop()}},_callee5,this)})),function(_x13,_x14,_x15,_x16,_x17){return _getDefinitionForNamedType2.apply(this,arguments)})},{key:"_getDefinitionForFragmentSpread",value:(_getDefinitionForFragmentSpread2=_asyncToGenerator(regeneratorRuntime.mark(function _callee6(query,ast,node,filePath,projectConfig){var fragmentDefinitions,dependencies,localFragDefinitions,localFragInfos,result;return regeneratorRuntime.wrap(function(_context6){for(;;)switch(_context6.prev=_context6.next){case 0:return _context6.next=2,this._graphQLCache.getFragmentDefinitions(projectConfig);case 2:return fragmentDefinitions=_context6.sent,_context6.next=5,this._graphQLCache.getFragmentDependenciesForAST(ast,fragmentDefinitions);case 5:return dependencies=_context6.sent,localFragDefinitions=ast.definitions.filter(function(definition){return definition.kind===FRAGMENT_DEFINITION}),localFragInfos=localFragDefinitions.map(function(definition){return{filePath:filePath,content:query,definition:definition}}),_context6.next=11,(0,_getDefinition2.getDefinitionQueryResultForFragmentSpread)(query,node,dependencies.concat(localFragInfos));case 11:return result=_context6.sent,_context6.abrupt("return",result);case 13:case"end":return _context6.stop()}},_callee6,this)})),function(_x18,_x19,_x20,_x21,_x22){return _getDefinitionForFragmentSpread2.apply(this,arguments)})}]),GraphQLLanguageService}();exports.GraphQLLanguageService=GraphQLLanguageService},{"./getAutocompleteSuggestions":273,"./getDefinition":274,"./getDiagnostics":275,"./getHoverInformation":276,graphql:28,"graphql-language-service-utils":286}],272:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDefinitionState=function(tokenState){var definitionState;return forEachState(tokenState,function(state){switch(state.kind){case"Query":case"ShortQuery":case"Mutation":case"Subscription":case"FragmentDefinition":definitionState=state}}),definitionState},exports.getFieldDef=function(schema,type,fieldName){if(fieldName===_introspection.SchemaMetaFieldDef.name&&schema.getQueryType()===type)return _introspection.SchemaMetaFieldDef;if(fieldName===_introspection.TypeMetaFieldDef.name&&schema.getQueryType()===type)return _introspection.TypeMetaFieldDef;if(fieldName===_introspection.TypeNameMetaFieldDef.name&&(0,_graphql.isCompositeType)(type))return _introspection.TypeNameMetaFieldDef;if(type.getFields&&"function"==typeof type.getFields)return type.getFields()[fieldName];return null},exports.forEachState=forEachState,exports.objectValues=function(object){for(var keys=Object.keys(object),len=keys.length,values=new Array(len),i=0;i<len;++i)values[i]=object[keys[i]];return values},exports.hintList=function(token,list){return function(list,text){return text?filterNonEmpty(filterNonEmpty(list.map(function(entry){return{proximity:function(suggestion,text){var proximity=function(a,b){var i,j,d=[],aLength=a.length,bLength=b.length;for(i=0;i<=aLength;i++)d[i]=[i];for(j=1;j<=bLength;j++)d[0][j]=j;for(i=1;i<=aLength;i++)for(j=1;j<=bLength;j++){var cost=a[i-1]===b[j-1]?0:1;d[i][j]=Math.min(d[i-1][j]+1,d[i][j-1]+1,d[i-1][j-1]+cost),1<i&&1<j&&a[i-1]===b[j-2]&&a[i-2]===b[j-1]&&(d[i][j]=Math.min(d[i][j],d[i-2][j-2]+cost))}return d[aLength][bLength]}(text,suggestion);return suggestion.length>text.length&&(proximity-=suggestion.length-text.length-1,proximity+=0===suggestion.indexOf(text)?0:.5),proximity}(normalizeText(entry.label),text),entry:entry}}),function(pair){return pair.proximity<=2}),function(pair){return!pair.entry.isDeprecated}).sort(function(a,b){return(a.entry.isDeprecated?1:0)-(b.entry.isDeprecated?1:0)||a.proximity-b.proximity||a.entry.label.length-b.entry.label.length}).map(function(pair){return pair.entry}):filterNonEmpty(list,function(entry){return!entry.isDeprecated})}(list,normalizeText(token.string))};var _graphql=require("graphql"),_introspection=require("graphql/type/introspection");function forEachState(stack,fn){for(var reverseStateStack=[],state=stack;state&&state.kind;)reverseStateStack.push(state),state=state.prevState;for(var i=reverseStateStack.length-1;0<=i;i--)fn(reverseStateStack[i])}function filterNonEmpty(array,predicate){var filtered=array.filter(predicate);return 0===filtered.length?array:filtered}function normalizeText(text){return text.toLowerCase().replace(/\W/g,"")}},{graphql:28,"graphql/type/introspection":70}],273:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getAutocompleteSuggestions=function(schema,queryText,cursor,contextToken){var token=contextToken||getTokenAtPosition(queryText,cursor),state="Invalid"===token.state.kind?token.state.prevState:token.state;if(!state)return[];var kind=state.kind,step=state.step,typeInfo=getTypeInfo(schema,token.state);if("Document"===kind)return(0,_autocompleteUtils.hintList)(token,[{label:"query"},{label:"mutation"},{label:"subscription"},{label:"fragment"},{label:"{"}]);if("SelectionSet"===kind||"Field"===kind||"AliasedField"===kind)return function(token,typeInfo,schema){if(typeInfo.parentType){var parentType=typeInfo.parentType,fields=parentType.getFields instanceof Function?(0,_autocompleteUtils.objectValues)(parentType.getFields()):[];return(0,_graphql.isCompositeType)(parentType)&&fields.push(_graphql.TypeNameMetaFieldDef),parentType===schema.getQueryType()&&fields.push(_graphql.SchemaMetaFieldDef,_graphql.TypeMetaFieldDef),(0,_autocompleteUtils.hintList)(token,fields.map(function(field,index){return{sortText:String(index)+field.name,label:field.name,detail:String(field.type),documentation:field.description,isDeprecated:field.isDeprecated,deprecationReason:field.deprecationReason}}))}return[]}(token,typeInfo,schema);if("Arguments"===kind||"Argument"===kind&&0===step){var argDefs=typeInfo.argDefs;if(argDefs)return(0,_autocompleteUtils.hintList)(token,argDefs.map(function(argDef){return{label:argDef.name,detail:String(argDef.type),documentation:argDef.description}}))}if(("ObjectValue"===kind||"ObjectField"===kind&&0===step)&&typeInfo.objectFieldDefs){var objectFields=(0,_autocompleteUtils.objectValues)(typeInfo.objectFieldDefs);return(0,_autocompleteUtils.hintList)(token,objectFields.map(function(field){return{label:field.name,detail:String(field.type),documentation:field.description}}))}if("EnumValue"===kind||"ListValue"===kind&&1===step||"ObjectField"===kind&&2===step||"Argument"===kind&&2===step)return function(token,typeInfo){var namedInputType=(0,_graphql.getNamedType)(typeInfo.inputType);{if(namedInputType instanceof _graphql.GraphQLEnumType){var values=namedInputType.getValues();return(0,_autocompleteUtils.hintList)(token,values.map(function(value){return{label:value.name,detail:String(namedInputType),documentation:value.description,isDeprecated:value.isDeprecated,deprecationReason:value.deprecationReason}}))}if(namedInputType===_graphql.GraphQLBoolean)return(0,_autocompleteUtils.hintList)(token,[{label:"true",detail:String(_graphql.GraphQLBoolean),documentation:"Not false."},{label:"false",detail:String(_graphql.GraphQLBoolean),documentation:"Not true."}])}return[]}(token,typeInfo);if("TypeCondition"===kind&&1===step||"NamedType"===kind&&null!=state.prevState&&"TypeCondition"===state.prevState.kind)return function(token,typeInfo,schema){var possibleTypes;if(typeInfo.parentType)if((0,_graphql.isAbstractType)(typeInfo.parentType)){var abstractType=(0,_graphql.assertAbstractType)(typeInfo.parentType),possibleObjTypes=schema.getPossibleTypes(abstractType),possibleIfaceMap=Object.create(null);possibleObjTypes.forEach(function(type){type.getInterfaces().forEach(function(iface){possibleIfaceMap[iface.name]=iface})}),possibleTypes=possibleObjTypes.concat((0,_autocompleteUtils.objectValues)(possibleIfaceMap))}else possibleTypes=[typeInfo.parentType];else{var typeMap=schema.getTypeMap();possibleTypes=(0,_autocompleteUtils.objectValues)(typeMap).filter(_graphql.isCompositeType)}return(0,_autocompleteUtils.hintList)(token,possibleTypes.map(function(type){var namedType=(0,_graphql.getNamedType)(type);return{label:String(type),documentation:namedType&&namedType.description||""}}))}(token,typeInfo,schema);if("FragmentSpread"===kind&&1===step)return function(token,typeInfo,schema,queryText){var typeMap=schema.getTypeMap(),defState=(0,_autocompleteUtils.getDefinitionState)(token.state),relevantFrags=function(queryText){var fragmentDefs=[];return runOnlineParser(queryText,function(_,state){"FragmentDefinition"===state.kind&&state.name&&state.type&&fragmentDefs.push({kind:"FragmentDefinition",name:{kind:"Name",value:state.name},selectionSet:{kind:"SelectionSet",selections:[]},typeCondition:{kind:"NamedType",name:{kind:"Name",value:state.type}}})}),fragmentDefs}(queryText).filter(function(frag){return typeMap[frag.typeCondition.name.value]&&!(defState&&"FragmentDefinition"===defState.kind&&defState.name===frag.name.value)&&(0,_graphql.isCompositeType)(typeInfo.parentType)&&(0,_graphql.isCompositeType)(typeMap[frag.typeCondition.name.value])&&(0,_graphql.doTypesOverlap)(schema,typeInfo.parentType,typeMap[frag.typeCondition.name.value])});return(0,_autocompleteUtils.hintList)(token,relevantFrags.map(function(frag){return{label:frag.name.value,detail:String(typeMap[frag.typeCondition.name.value]),documentation:"fragment ".concat(frag.name.value," on ").concat(frag.typeCondition.name.value)}}))}(token,typeInfo,schema,queryText);if("VariableDefinition"===kind&&2===step||"ListType"===kind&&1===step||"NamedType"===kind&&state.prevState&&("VariableDefinition"===state.prevState.kind||"ListType"===state.prevState.kind))return function(token,schema){var inputTypeMap=schema.getTypeMap(),inputTypes=(0,_autocompleteUtils.objectValues)(inputTypeMap).filter(_graphql.isInputType);return(0,_autocompleteUtils.hintList)(token,inputTypes.map(function(type){return{label:type.name,documentation:type.description}}))}(token,schema);return"Directive"!==kind?[]:function(token,state,schema){if(state.prevState&&state.prevState.kind){var directives=schema.getDirectives().filter(function(directive){return function(state,directive){if(!state||!state.kind)return!1;var kind=state.kind,locations=directive.locations;switch(kind){case"Query":return-1!==locations.indexOf("QUERY");case"Mutation":return-1!==locations.indexOf("MUTATION");case"Subscription":return-1!==locations.indexOf("SUBSCRIPTION");case"Field":case"AliasedField":return-1!==locations.indexOf("FIELD");case"FragmentDefinition":return-1!==locations.indexOf("FRAGMENT_DEFINITION");case"FragmentSpread":return-1!==locations.indexOf("FRAGMENT_SPREAD");case"InlineFragment":return-1!==locations.indexOf("INLINE_FRAGMENT");case"SchemaDef":return-1!==locations.indexOf("SCHEMA");case"ScalarDef":return-1!==locations.indexOf("SCALAR");case"ObjectTypeDef":return-1!==locations.indexOf("OBJECT");case"FieldDef":return-1!==locations.indexOf("FIELD_DEFINITION");case"InterfaceDef":return-1!==locations.indexOf("INTERFACE");case"UnionDef":return-1!==locations.indexOf("UNION");case"EnumDef":return-1!==locations.indexOf("ENUM");case"EnumValue":return-1!==locations.indexOf("ENUM_VALUE");case"InputDef":return-1!==locations.indexOf("INPUT_OBJECT");case"InputValueDef":var prevStateKind=state.prevState&&state.prevState.kind;switch(prevStateKind){case"ArgumentsDef":return-1!==locations.indexOf("ARGUMENT_DEFINITION");case"InputDef":return-1!==locations.indexOf("INPUT_FIELD_DEFINITION")}}return!1}(state.prevState,directive)});return(0,_autocompleteUtils.hintList)(token,directives.map(function(directive){return{label:directive.name,documentation:directive.description||""}}))}return[]}(token,state,schema)},exports.getTokenAtPosition=getTokenAtPosition,exports.getTypeInfo=getTypeInfo;var _graphql=require("graphql"),_graphqlLanguageServiceParser=require("graphql-language-service-parser"),_autocompleteUtils=require("./autocompleteUtils");function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function getTokenAtPosition(queryText,cursor){var styleAtCursor=null,stateAtCursor=null,stringAtCursor=null,token=runOnlineParser(queryText,function(stream,state,style,index){if(index===cursor.line&&stream.getCurrentPosition()>=cursor.character)return styleAtCursor=style,stateAtCursor=function(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}({},state),stringAtCursor=stream.current(),"BREAK"});return{start:token.start,end:token.end,string:stringAtCursor||token.string,state:stateAtCursor||token.state,style:styleAtCursor||token.style}}function runOnlineParser(queryText,callback){for(var lines=queryText.split("\n"),parser=(0,_graphqlLanguageServiceParser.onlineParser)(),state=parser.startState(),style="",stream=new _graphqlLanguageServiceParser.CharacterStream(""),i=0;i<lines.length;i++){for(stream=new _graphqlLanguageServiceParser.CharacterStream(lines[i]);!stream.eol();){if("BREAK"===callback(stream,state,style=parser.token(stream,state),i))break}callback(stream,state,style,i),state.kind||(state=parser.startState())}return{start:stream.getStartOfToken(),end:stream.getCurrentPosition(),string:stream.current(),state:state,style:style}}function getTypeInfo(schema,tokenState){var argDef,argDefs,directiveDef,enumValue,fieldDef,inputType,objectFieldDefs,parentType,type;return(0,_autocompleteUtils.forEachState)(tokenState,function(state){switch(state.kind){case"Query":case"ShortQuery":type=schema.getQueryType();break;case"Mutation":type=schema.getMutationType();break;case"Subscription":type=schema.getSubscriptionType();break;case"InlineFragment":case"FragmentDefinition":state.type&&(type=schema.getType(state.type));break;case"Field":case"AliasedField":type&&state.name?(fieldDef=parentType?(0,_autocompleteUtils.getFieldDef)(schema,parentType,state.name):null,type=fieldDef?fieldDef.type:null):fieldDef=null;break;case"SelectionSet":parentType=(0,_graphql.getNamedType)(type);break;case"Directive":directiveDef=state.name?schema.getDirective(state.name):null;break;case"Arguments":if(state.prevState)switch(state.prevState.kind){case"Field":argDefs=fieldDef&&fieldDef.args;break;case"Directive":argDefs=directiveDef&&directiveDef.args;break;case"AliasedField":var name=state.prevState&&state.prevState.name;if(!name){argDefs=null;break}var field=parentType?(0,_autocompleteUtils.getFieldDef)(schema,parentType,name):null;if(!field){argDefs=null;break}argDefs=field.args;break;default:argDefs=null}else argDefs=null;break;case"Argument":if(argDefs)for(var i=0;i<argDefs.length;i++)if(argDefs[i].name===state.name){argDef=argDefs[i];break}inputType=argDef&&argDef.type;break;case"EnumValue":var enumType=(0,_graphql.getNamedType)(inputType);enumValue=enumType instanceof _graphql.GraphQLEnumType?function(array,predicate){for(var i=0;i<array.length;i++)if(predicate(array[i]))return array[i];return null}(enumType.getValues(),function(val){return val.value===state.name}):null;break;case"ListValue":var nullableType=(0,_graphql.getNullableType)(inputType);inputType=nullableType instanceof _graphql.GraphQLList?nullableType.ofType:null;break;case"ObjectValue":var objectType=(0,_graphql.getNamedType)(inputType);objectFieldDefs=objectType instanceof _graphql.GraphQLInputObjectType?objectType.getFields():null;break;case"ObjectField":var objectField=state.name&&objectFieldDefs?objectFieldDefs[state.name]:null;inputType=objectField&&objectField.type;break;case"NamedType":state.name&&(type=schema.getType(state.name))}}),{argDef:argDef,argDefs:argDefs,directiveDef:directiveDef,enumValue:enumValue,fieldDef:fieldDef,inputType:inputType,objectFieldDefs:objectFieldDefs,parentType:parentType,type:type}}},{"./autocompleteUtils":272,graphql:28,"graphql-language-service-parser":282}],274:[function(require,module,exports){(function(process){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDefinitionQueryResultForNamedType=function(_x,_x2,_x3){return _getDefinitionQueryResultForNamedType.apply(this,arguments)},exports.getDefinitionQueryResultForFragmentSpread=function(_x4,_x5,_x6){return _getDefinitionQueryResultForFragmentSpread.apply(this,arguments)},exports.getDefinitionQueryResultForDefinitionNode=function(path,text,definition){return{definitions:[getDefinitionForFragmentDefinition(path,text,definition)],queryRange:definition.name?[getRange(text,definition.name)]:[]}},exports.LANGUAGE=void 0;var obj,_graphqlLanguageServiceUtils=require("graphql-language-service-utils"),_assert=(obj=require("assert"))&&obj.__esModule?obj:{default:obj};function asyncGeneratorStep(gen,resolve,reject,_next,_throw,key,arg){try{var info=gen[key](arg),value=info.value}catch(error){return void reject(error)}info.done?resolve(value):Promise.resolve(value).then(_next,_throw)}function _asyncToGenerator(fn){return function(){var self=this,args=arguments;return new Promise(function(resolve,reject){var gen=fn.apply(self,args);function _next(value){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"next",value)}function _throw(err){asyncGeneratorStep(gen,resolve,reject,_next,_throw,"throw",err)}_next(void 0)})}}var LANGUAGE="GraphQL";function getRange(text,node){var location=node.loc;return(0,_assert.default)(location,"Expected ASTNode to have a location."),(0,_graphqlLanguageServiceUtils.locToRange)(text,location)}function getPosition(text,node){var location=node.loc;return(0,_assert.default)(location,"Expected ASTNode to have a location."),(0,_graphqlLanguageServiceUtils.offsetToPosition)(text,location.start)}function _getDefinitionQueryResultForNamedType(){return(_getDefinitionQueryResultForNamedType=_asyncToGenerator(regeneratorRuntime.mark(function _callee(text,node,dependencies){var name,defNodes,definitions;return regeneratorRuntime.wrap(function(_context){for(;;)switch(_context.prev=_context.next){case 0:if(name=node.name.value,0===(defNodes=dependencies.filter(function(_ref){var definition=_ref.definition;return definition.name&&definition.name.value===name})).length)return process.stderr.write("Definition not found for GraphQL type ".concat(name)),_context.abrupt("return",{queryRange:[],definitions:[]});_context.next=5;break;case 5:return definitions=defNodes.map(function(_ref2){return getDefinitionForNodeDefinition(_ref2.filePath||"",_ref2.content,_ref2.definition)}),_context.abrupt("return",{definitions:definitions,queryRange:definitions.map(function(_){return getRange(text,node)})});case 7:case"end":return _context.stop()}},_callee)}))).apply(this,arguments)}function _getDefinitionQueryResultForFragmentSpread(){return(_getDefinitionQueryResultForFragmentSpread=_asyncToGenerator(regeneratorRuntime.mark(function _callee2(text,fragment,dependencies){var name,defNodes,definitions;return regeneratorRuntime.wrap(function(_context2){for(;;)switch(_context2.prev=_context2.next){case 0:if(name=fragment.name.value,0===(defNodes=dependencies.filter(function(_ref3){return _ref3.definition.name.value===name})).length)return process.stderr.write("Definition not found for GraphQL fragment ".concat(name)),_context2.abrupt("return",{queryRange:[],definitions:[]});_context2.next=5;break;case 5:return definitions=defNodes.map(function(_ref4){return getDefinitionForFragmentDefinition(_ref4.filePath||"",_ref4.content,_ref4.definition)}),_context2.abrupt("return",{definitions:definitions,queryRange:definitions.map(function(_){return getRange(text,fragment)})});case 7:case"end":return _context2.stop()}},_callee2)}))).apply(this,arguments)}function getDefinitionForFragmentDefinition(path,text,definition){var name=definition.name;return(0,_assert.default)(name,"Expected ASTNode to have a Name."),{path:path,position:getPosition(text,definition),range:getRange(text,definition),name:name.value||"",language:LANGUAGE,projectRoot:path}}function getDefinitionForNodeDefinition(path,text,definition){var name=definition.name;return(0,_assert.default)(name,"Expected ASTNode to have a Name."),{path:path,position:getPosition(text,definition),range:getRange(text,definition),name:name.value||"",language:LANGUAGE,projectRoot:path}}exports.LANGUAGE=LANGUAGE}).call(this,require("_process"))},{_process:197,assert:1,"graphql-language-service-utils":286}],275:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getDiagnostics=function(query){var schema=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,customRules=2<arguments.length?arguments[2]:void 0,isRelayCompatMode=3<arguments.length?arguments[3]:void 0,ast=null;try{ast=(0,_graphql.parse)(query)}catch(error){var range=getRange(error.locations[0],query);return[{severity:SEVERITY.ERROR,message:error.message,source:"GraphQL: Syntax",range:range}]}return validateQuery(ast,schema,customRules,isRelayCompatMode)},exports.validateQuery=validateQuery,exports.getRange=getRange,exports.SEVERITY=void 0;var obj,_assert=(obj=require("assert"))&&obj.__esModule?obj:{default:obj},_graphql=require("graphql"),_graphqlLanguageServiceParser=require("graphql-language-service-parser"),_graphqlLanguageServiceUtils=require("graphql-language-service-utils");var SEVERITY={ERROR:1,WARNING:2,INFORMATION:3,HINT:4};function validateQuery(ast){var schema=1<arguments.length&&void 0!==arguments[1]?arguments[1]:null,customRules=2<arguments.length?arguments[2]:void 0,isRelayCompatMode=3<arguments.length?arguments[3]:void 0;if(!schema)return[];var validationErrorAnnotations=mapCat((0,_graphqlLanguageServiceUtils.validateWithCustomRules)(schema,ast,customRules,isRelayCompatMode),function(error){return annotations(error,SEVERITY.ERROR,"Validation")}),deprecationWarningAnnotations=_graphql.findDeprecatedUsages?mapCat((0,_graphql.findDeprecatedUsages)(schema,ast),function(error){return annotations(error,SEVERITY.WARNING,"Deprecation")}):[];return validationErrorAnnotations.concat(deprecationWarningAnnotations)}function mapCat(array,mapper){return Array.prototype.concat.apply([],array.map(mapper))}function annotations(error,severity,type){return error.nodes?error.nodes.map(function(node){var highlightNode="Variable"!==node.kind&&node.name?node.name:node.variable?node.variable:node;(0,_assert.default)(error.locations,"GraphQL validation error requires locations.");var loc=error.locations[0],highlightLoc=function(node){var location=node.loc;return(0,_assert.default)(location,"Expected ASTNode to have a location."),location}(highlightNode),end=loc.column+(highlightLoc.end-highlightLoc.start);return{source:"GraphQL: ".concat(type),message:error.message,severity:severity,range:new _graphqlLanguageServiceUtils.Range(new _graphqlLanguageServiceUtils.Position(loc.line-1,loc.column-1),new _graphqlLanguageServiceUtils.Position(loc.line-1,end))}}):[]}function getRange(location,queryText){var parser=(0,_graphqlLanguageServiceParser.onlineParser)(),state=parser.startState(),lines=queryText.split("\n");(0,_assert.default)(lines.length>=location.line,"Query text must have more lines than where the error happened");for(var stream=null,i=0;i<location.line;i++)for(stream=new _graphqlLanguageServiceParser.CharacterStream(lines[i]);!stream.eol();){if("invalidchar"===parser.token(stream,state))break}(0,_assert.default)(stream,"Expected Parser stream to be available.");var line=location.line-1,start=stream.getStartOfToken(),end=stream.getCurrentPosition();return new _graphqlLanguageServiceUtils.Range(new _graphqlLanguageServiceUtils.Position(line,start),new _graphqlLanguageServiceUtils.Position(line,end))}exports.SEVERITY=SEVERITY},{assert:1,graphql:28,"graphql-language-service-parser":282,"graphql-language-service-utils":286}],276:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getHoverInformation=function(schema,queryText,cursor,contextToken){var token=contextToken||(0,_getAutocompleteSuggestions.getTokenAtPosition)(queryText,cursor);if(!schema||!token||!token.state)return[];var state=token.state,kind=state.kind,step=state.step,typeInfo=(0,_getAutocompleteSuggestions.getTypeInfo)(schema,token.state),options={schema:schema};{if("Field"===kind&&0===step&&typeInfo.fieldDef||"AliasedField"===kind&&2===step&&typeInfo.fieldDef){var into=[];return function(into,typeInfo,options){renderQualifiedField(into,typeInfo,options),renderTypeAnnotation(into,typeInfo,options,typeInfo.type)}(into,typeInfo,options),renderDescription(into,options,typeInfo.fieldDef),into.join("").trim()}if("Directive"===kind&&1===step&&typeInfo.directiveDef){var _into=[];return renderDirective(_into,typeInfo,options),renderDescription(_into,options,typeInfo.directiveDef),_into.join("").trim()}if("Argument"===kind&&0===step&&typeInfo.argDef){var _into2=[];return function(into,typeInfo,options){typeInfo.directiveDef?renderDirective(into,typeInfo,options):typeInfo.fieldDef&&renderQualifiedField(into,typeInfo,options);if(!typeInfo.argDef)return;var name=typeInfo.argDef.name;text(into,"("),text(into,name),renderTypeAnnotation(into,typeInfo,options,typeInfo.inputType),text(into,")")}(_into2,typeInfo,options),renderDescription(_into2,options,typeInfo.argDef),_into2.join("").trim()}if("EnumValue"===kind&&typeInfo.enumValue&&typeInfo.enumValue.description){var _into3=[];return function(into,typeInfo,options){if(!typeInfo.enumValue)return;var name=typeInfo.enumValue.name;renderType(into,typeInfo,options,typeInfo.inputType),text(into,"."),text(into,name)}(_into3,typeInfo,options),renderDescription(_into3,options,typeInfo.enumValue),_into3.join("").trim()}if("NamedType"===kind&&typeInfo.type&&typeInfo.type.description){var _into4=[];return renderType(_into4,typeInfo,options,typeInfo.type),renderDescription(_into4,options,typeInfo.type),_into4.join("").trim()}}};var _getAutocompleteSuggestions=require("./getAutocompleteSuggestions"),_graphql=require("graphql");function renderQualifiedField(into,typeInfo,options){if(typeInfo.fieldDef){var fieldName=typeInfo.fieldDef.name;"__"!==fieldName.slice(0,2)&&(renderType(into,typeInfo,options,typeInfo.parentType),text(into,".")),text(into,fieldName)}}function renderDirective(into,typeInfo,options){typeInfo.directiveDef&&text(into,"@"+typeInfo.directiveDef.name)}function renderTypeAnnotation(into,typeInfo,options,t){text(into,": "),renderType(into,typeInfo,options,t)}function renderType(into,typeInfo,options,t){t&&(t instanceof _graphql.GraphQLNonNull?(renderType(into,typeInfo,options,t.ofType),text(into,"!")):t instanceof _graphql.GraphQLList?(text(into,"["),renderType(into,typeInfo,options,t.ofType),text(into,"]")):text(into,t.name))}function renderDescription(into,options,def){if(def){var description="string"==typeof def.description?def.description:null;description&&(text(into,"\n\n"),text(into,description)),function(into,options,def){if(!def)return;var reason="string"==typeof def.deprecationReason?def.deprecationReason:null;if(!reason)return;text(into,"\n\n"),text(into,"Deprecated: "),text(into,reason)}(into,0,def)}}function text(into,content){into.push(content)}},{"./getAutocompleteSuggestions":273,graphql:28}],277:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getOutline=function(queryText){var ast;try{ast=(0,_graphql.parse)(queryText)}catch(error){return null}var visitorFns=function(docText){var meta=function(node){return{representativeName:node.name,startPosition:(0,_graphqlLanguageServiceUtils.offsetToPosition)(docText,node.loc.start),endPosition:(0,_graphqlLanguageServiceUtils.offsetToPosition)(docText,node.loc.end),children:node.selectionSet||[]}};return{Field:function(node){var tokenizedText=node.alias?[buildToken("plain",node.alias),buildToken("plain",": ")]:[];return tokenizedText.push(buildToken("plain",node.name)),_objectSpread({tokenizedText:tokenizedText},meta(node))},OperationDefinition:function(node){return _objectSpread({tokenizedText:[buildToken("keyword",node.operation),buildToken("whitespace"," "),buildToken("class-name",node.name)]},meta(node))},Document:function(node){return node.definitions},SelectionSet:function(node){return function(arr,fn){for(var res=[],i=0;i<arr.length;i++){var x=fn(arr[i],i);Array.isArray(x)?res.push.apply(res,_toConsumableArray(x)):res.push(x)}return res}(node.selections,function(child){return child.kind===INLINE_FRAGMENT?child.selectionSet:child})},Name:function(node){return node.value},FragmentDefinition:function(node){return _objectSpread({tokenizedText:[buildToken("keyword","fragment"),buildToken("whitespace"," "),buildToken("class-name",node.name)]},meta(node))},FragmentSpread:function(node){return _objectSpread({tokenizedText:[buildToken("plain","..."),buildToken("class-name",node.name)]},meta(node))},InlineFragment:function(node){return node.selectionSet}}}(queryText);return{outlineTrees:(0,_graphql.visit)(ast,{leave:function(node){return OUTLINEABLE_KINDS.hasOwnProperty(node.kind)&&visitorFns[node.kind]?visitorFns[node.kind](node):null}})}};var _graphql=require("graphql"),_graphqlLanguageServiceUtils=require("graphql-language-service-utils");function _toConsumableArray(arr){return function(arr){if(Array.isArray(arr)){for(var i=0,arr2=new Array(arr.length);i<arr.length;i++)arr2[i]=arr[i];return arr2}}(arr)||function(iter){if(Symbol.iterator in Object(iter)||"[object Arguments]"===Object.prototype.toString.call(iter))return Array.from(iter)}(arr)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance")}()}function _objectSpread(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}var INLINE_FRAGMENT=_graphql.Kind.INLINE_FRAGMENT,OUTLINEABLE_KINDS={Field:!0,OperationDefinition:!0,Document:!0,SelectionSet:!0,Name:!0,FragmentDefinition:!0,FragmentSpread:!0,InlineFragment:!0};function buildToken(kind,value){return{kind:kind,value:value}}},{graphql:28,"graphql-language-service-utils":286}],278:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"getDefinitionState",{enumerable:!0,get:function(){return _autocompleteUtils.getDefinitionState}}),Object.defineProperty(exports,"getFieldDef",{enumerable:!0,get:function(){return _autocompleteUtils.getFieldDef}}),Object.defineProperty(exports,"forEachState",{enumerable:!0,get:function(){return _autocompleteUtils.forEachState}}),Object.defineProperty(exports,"objectValues",{enumerable:!0,get:function(){return _autocompleteUtils.objectValues}}),Object.defineProperty(exports,"hintList",{enumerable:!0,get:function(){return _autocompleteUtils.hintList}}),Object.defineProperty(exports,"getAutocompleteSuggestions",{enumerable:!0,get:function(){return _getAutocompleteSuggestions.getAutocompleteSuggestions}}),Object.defineProperty(exports,"LANGUAGE",{enumerable:!0,get:function(){return _getDefinition.LANGUAGE}}),Object.defineProperty(exports,"getDefinitionQueryResultForFragmentSpread",{enumerable:!0,get:function(){return _getDefinition.getDefinitionQueryResultForFragmentSpread}}),Object.defineProperty(exports,"getDefinitionQueryResultForDefinitionNode",{enumerable:!0,get:function(){return _getDefinition.getDefinitionQueryResultForDefinitionNode}}),Object.defineProperty(exports,"getDiagnostics",{enumerable:!0,get:function(){return _getDiagnostics.getDiagnostics}}),Object.defineProperty(exports,"validateQuery",{enumerable:!0,get:function(){return _getDiagnostics.validateQuery}}),Object.defineProperty(exports,"getOutline",{enumerable:!0,get:function(){return _getOutline.getOutline}}),Object.defineProperty(exports,"getHoverInformation",{enumerable:!0,get:function(){return _getHoverInformation.getHoverInformation}}),Object.defineProperty(exports,"GraphQLLanguageService",{enumerable:!0,get:function(){return _GraphQLLanguageService.GraphQLLanguageService}});var _autocompleteUtils=require("./autocompleteUtils"),_getAutocompleteSuggestions=require("./getAutocompleteSuggestions"),_getDefinition=require("./getDefinition"),_getDiagnostics=require("./getDiagnostics"),_getOutline=require("./getOutline"),_getHoverInformation=require("./getHoverInformation"),_GraphQLLanguageService=require("./GraphQLLanguageService")},{"./GraphQLLanguageService":271,"./autocompleteUtils":272,"./getAutocompleteSuggestions":273,"./getDefinition":274,"./getDiagnostics":275,"./getHoverInformation":276,"./getOutline":277}],279:[function(require,module,exports){"use strict";function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var CharacterStream=function(){function CharacterStream(sourceText){var _this=this;!function(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}(this,CharacterStream),_defineProperty(this,"_start",void 0),_defineProperty(this,"_pos",void 0),_defineProperty(this,"_sourceText",void 0),_defineProperty(this,"getStartOfToken",function(){return _this._start}),_defineProperty(this,"getCurrentPosition",function(){return _this._pos}),_defineProperty(this,"eol",function(){return _this._sourceText.length===_this._pos}),_defineProperty(this,"sol",function(){return 0===_this._pos}),_defineProperty(this,"peek",function(){return _this._sourceText.charAt(_this._pos)?_this._sourceText.charAt(_this._pos):null}),_defineProperty(this,"next",function(){var _char=_this._sourceText.charAt(_this._pos);return _this._pos++,_char}),_defineProperty(this,"eat",function(pattern){if(_this._testNextCharacter(pattern))return _this._start=_this._pos,_this._pos++,_this._sourceText.charAt(_this._pos-1)}),_defineProperty(this,"eatWhile",function(match){var isMatched=_this._testNextCharacter(match),didEat=!1;for(isMatched&&(didEat=isMatched,_this._start=_this._pos);isMatched;)_this._pos++,isMatched=_this._testNextCharacter(match),didEat=!0;return didEat}),_defineProperty(this,"eatSpace",function(){return _this.eatWhile(/[\s\u00a0]/)}),_defineProperty(this,"skipToEnd",function(){_this._pos=_this._sourceText.length}),_defineProperty(this,"skipTo",function(position){_this._pos=position}),_defineProperty(this,"match",function(pattern){var consume=!(1<arguments.length&&void 0!==arguments[1])||arguments[1],caseFold=2<arguments.length&&void 0!==arguments[2]&&arguments[2],token=null,match=null;"string"==typeof pattern?(match=new RegExp(pattern,caseFold?"i":"g").test(_this._sourceText.substr(_this._pos,pattern.length)),token=pattern):pattern instanceof RegExp&&(token=(match=_this._sourceText.slice(_this._pos).match(pattern))&&match[0]);return!(null==match||!("string"==typeof pattern||match instanceof Array&&_this._sourceText.startsWith(match[0],_this._pos)))&&(consume&&(_this._start=_this._pos,token&&token.length&&(_this._pos+=token.length)),match)}),_defineProperty(this,"backUp",function(num){_this._pos-=num}),_defineProperty(this,"column",function(){return _this._pos}),_defineProperty(this,"indentation",function(){var match=_this._sourceText.match(/\s*/),indent=0;if(match&&0===match.length)for(var whitespaces=match[0],pos=0;whitespaces.length>pos;)9===whitespaces.charCodeAt(pos)?indent+=2:indent++,pos++;return indent}),_defineProperty(this,"current",function(){return _this._sourceText.slice(_this._start,_this._pos)}),this._start=0,this._pos=0,this._sourceText=sourceText}return function(Constructor,protoProps,staticProps){protoProps&&_defineProperties(Constructor.prototype,protoProps),staticProps&&_defineProperties(Constructor,staticProps)}(CharacterStream,[{key:"_testNextCharacter",value:function(pattern){var character=this._sourceText.charAt(this._pos);return"string"==typeof pattern?character===pattern:pattern instanceof RegExp?pattern.test(character):pattern(character)}}]),CharacterStream}();exports.default=CharacterStream},{}],280:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.opt=function(ofRule){return{ofRule:ofRule}},exports.list=function(ofRule,separator){return{ofRule:ofRule,isList:!0,separator:separator}},exports.butNot=function(rule,exclusions){var ruleMatch=rule.match;return rule.match=function(token){var check=!1;return ruleMatch&&(check=ruleMatch(token)),check&&exclusions.every(function(exclusion){return exclusion.match&&!exclusion.match(token)})},rule},exports.t=function(kind,style){return{style:style,match:function(token){return token.kind===kind}}},exports.p=function(value,style){return{style:style||"punctuation",match:function(token){return"Punctuation"===token.kind&&token.value===value}}}},{}],281:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.ParseRules=exports.LexRules=exports.isIgnored=void 0;var _RuleHelpers=require("./RuleHelpers");exports.isIgnored=function(ch){return" "===ch||"\t"===ch||","===ch||"\n"===ch||"\r"===ch||"\ufeff"===ch};exports.LexRules={Name:/^[_A-Za-z][_0-9A-Za-z]*/,Punctuation:/^(?:!|\$|\(|\)|\.\.\.|:|=|@|\[|]|\{|\||\})/,Number:/^-?(?:0|(?:[1-9][0-9]*))(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?/,String:/^(?:"""(?:\\"""|[^"]|"[^"]|""[^"])*(?:""")?|"(?:[^"\\]|\\(?:"|\/|\\|b|f|n|r|t|u[0-9a-fA-F]{4}))*"?)/,Comment:/^#.*/};var style,ParseRules={Document:[(0,_RuleHelpers.list)("Definition")],Definition:function(token){switch(token.value){case"{":return"ShortQuery";case"query":return"Query";case"mutation":return"Mutation";case"subscription":return"Subscription";case"fragment":return"FragmentDefinition";case"schema":return"SchemaDef";case"scalar":return"ScalarDef";case"type":return"ObjectTypeDef";case"interface":return"InterfaceDef";case"union":return"UnionDef";case"enum":return"EnumDef";case"input":return"InputDef";case"extend":return"ExtendDef";case"directive":return"DirectiveDef"}},ShortQuery:["SelectionSet"],Query:[word("query"),(0,_RuleHelpers.opt)(name("def")),(0,_RuleHelpers.opt)("VariableDefinitions"),(0,_RuleHelpers.list)("Directive"),"SelectionSet"],Mutation:[word("mutation"),(0,_RuleHelpers.opt)(name("def")),(0,_RuleHelpers.opt)("VariableDefinitions"),(0,_RuleHelpers.list)("Directive"),"SelectionSet"],Subscription:[word("subscription"),(0,_RuleHelpers.opt)(name("def")),(0,_RuleHelpers.opt)("VariableDefinitions"),(0,_RuleHelpers.list)("Directive"),"SelectionSet"],VariableDefinitions:[(0,_RuleHelpers.p)("("),(0,_RuleHelpers.list)("VariableDefinition"),(0,_RuleHelpers.p)(")")],VariableDefinition:["Variable",(0,_RuleHelpers.p)(":"),"Type",(0,_RuleHelpers.opt)("DefaultValue")],Variable:[(0,_RuleHelpers.p)("$","variable"),name("variable")],DefaultValue:[(0,_RuleHelpers.p)("="),"Value"],SelectionSet:[(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("Selection"),(0,_RuleHelpers.p)("}")],Selection:function(token,stream){return"..."===token.value?stream.match(/[\s\u00a0,]*(on\b|@|{)/,!1)?"InlineFragment":"FragmentSpread":stream.match(/[\s\u00a0,]*:/,!1)?"AliasedField":"Field"},AliasedField:[name("property"),(0,_RuleHelpers.p)(":"),name("qualifier"),(0,_RuleHelpers.opt)("Arguments"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.opt)("SelectionSet")],Field:[name("property"),(0,_RuleHelpers.opt)("Arguments"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.opt)("SelectionSet")],Arguments:[(0,_RuleHelpers.p)("("),(0,_RuleHelpers.list)("Argument"),(0,_RuleHelpers.p)(")")],Argument:[name("attribute"),(0,_RuleHelpers.p)(":"),"Value"],FragmentSpread:[(0,_RuleHelpers.p)("..."),name("def"),(0,_RuleHelpers.list)("Directive")],InlineFragment:[(0,_RuleHelpers.p)("..."),(0,_RuleHelpers.opt)("TypeCondition"),(0,_RuleHelpers.list)("Directive"),"SelectionSet"],FragmentDefinition:[word("fragment"),(0,_RuleHelpers.opt)((0,_RuleHelpers.butNot)(name("def"),[word("on")])),"TypeCondition",(0,_RuleHelpers.list)("Directive"),"SelectionSet"],TypeCondition:[word("on"),"NamedType"],Value:function(token){switch(token.kind){case"Number":return"NumberValue";case"String":return"StringValue";case"Punctuation":switch(token.value){case"[":return"ListValue";case"{":return"ObjectValue";case"$":return"Variable"}return null;case"Name":switch(token.value){case"true":case"false":return"BooleanValue"}return"null"===token.value?"NullValue":"EnumValue"}},NumberValue:[(0,_RuleHelpers.t)("Number","number")],StringValue:[(0,_RuleHelpers.t)("String","string")],BooleanValue:[(0,_RuleHelpers.t)("Name","builtin")],NullValue:[(0,_RuleHelpers.t)("Name","keyword")],EnumValue:[name("string-2")],ListValue:[(0,_RuleHelpers.p)("["),(0,_RuleHelpers.list)("Value"),(0,_RuleHelpers.p)("]")],ObjectValue:[(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("ObjectField"),(0,_RuleHelpers.p)("}")],ObjectField:[name("attribute"),(0,_RuleHelpers.p)(":"),"Value"],Type:function(token){return"["===token.value?"ListType":"NonNullType"},ListType:[(0,_RuleHelpers.p)("["),"Type",(0,_RuleHelpers.p)("]"),(0,_RuleHelpers.opt)((0,_RuleHelpers.p)("!"))],NonNullType:["NamedType",(0,_RuleHelpers.opt)((0,_RuleHelpers.p)("!"))],NamedType:[(style="atom",{style:style,match:function(token){return"Name"===token.kind},update:function(state,token){state.prevState&&state.prevState.prevState&&(state.name=token.value,state.prevState.prevState.type=token.value)}})],Directive:[(0,_RuleHelpers.p)("@","meta"),name("meta"),(0,_RuleHelpers.opt)("Arguments")],SchemaDef:[word("schema"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("OperationTypeDef"),(0,_RuleHelpers.p)("}")],OperationTypeDef:[name("keyword"),(0,_RuleHelpers.p)(":"),name("atom")],ScalarDef:[word("scalar"),name("atom"),(0,_RuleHelpers.list)("Directive")],ObjectTypeDef:[word("type"),name("atom"),(0,_RuleHelpers.opt)("Implements"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("FieldDef"),(0,_RuleHelpers.p)("}")],Implements:[word("implements"),(0,_RuleHelpers.list)("NamedType")],FieldDef:[name("property"),(0,_RuleHelpers.opt)("ArgumentsDef"),(0,_RuleHelpers.p)(":"),"Type",(0,_RuleHelpers.list)("Directive")],ArgumentsDef:[(0,_RuleHelpers.p)("("),(0,_RuleHelpers.list)("InputValueDef"),(0,_RuleHelpers.p)(")")],InputValueDef:[name("attribute"),(0,_RuleHelpers.p)(":"),"Type",(0,_RuleHelpers.opt)("DefaultValue"),(0,_RuleHelpers.list)("Directive")],InterfaceDef:[word("interface"),name("atom"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("FieldDef"),(0,_RuleHelpers.p)("}")],UnionDef:[word("union"),name("atom"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("="),(0,_RuleHelpers.list)("UnionMember",(0,_RuleHelpers.p)("|"))],UnionMember:["NamedType"],EnumDef:[word("enum"),name("atom"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("EnumValueDef"),(0,_RuleHelpers.p)("}")],EnumValueDef:[name("string-2"),(0,_RuleHelpers.list)("Directive")],InputDef:[word("input"),name("atom"),(0,_RuleHelpers.list)("Directive"),(0,_RuleHelpers.p)("{"),(0,_RuleHelpers.list)("InputValueDef"),(0,_RuleHelpers.p)("}")],ExtendDef:[word("extend"),"ObjectTypeDef"],DirectiveDef:[word("directive"),(0,_RuleHelpers.p)("@","meta"),name("meta"),(0,_RuleHelpers.opt)("ArgumentsDef"),word("on"),(0,_RuleHelpers.list)("DirectiveLocation",(0,_RuleHelpers.p)("|"))],DirectiveLocation:[name("string-2")]};function word(value){return{style:"keyword",match:function(token){return"Name"===token.kind&&token.value===value}}}function name(style){return{style:style,match:function(token){return"Name"===token.kind},update:function(state,token){state.name=token.value}}}exports.ParseRules=ParseRules},{"./RuleHelpers":280}],282:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"CharacterStream",{enumerable:!0,get:function(){return _CharacterStream.default}}),Object.defineProperty(exports,"LexRules",{enumerable:!0,get:function(){return _Rules.LexRules}}),Object.defineProperty(exports,"ParseRules",{enumerable:!0,get:function(){return _Rules.ParseRules}}),Object.defineProperty(exports,"isIgnored",{enumerable:!0,get:function(){return _Rules.isIgnored}}),Object.defineProperty(exports,"butNot",{enumerable:!0,get:function(){return _RuleHelpers.butNot}}),Object.defineProperty(exports,"list",{enumerable:!0,get:function(){return _RuleHelpers.list}}),Object.defineProperty(exports,"opt",{enumerable:!0,get:function(){return _RuleHelpers.opt}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return _RuleHelpers.p}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return _RuleHelpers.t}}),Object.defineProperty(exports,"onlineParser",{enumerable:!0,get:function(){return _onlineParser.default}});var _CharacterStream=_interopRequireDefault(require("./CharacterStream")),_Rules=require("./Rules"),_RuleHelpers=require("./RuleHelpers"),_onlineParser=_interopRequireDefault(require("./onlineParser"));function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}},{"./CharacterStream":279,"./RuleHelpers":280,"./Rules":281,"./onlineParser":283}],283:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=function(){var options=0<arguments.length&&void 0!==arguments[0]?arguments[0]:{eatWhitespace:function(stream){return stream.eatWhile(_Rules.isIgnored)},lexRules:_Rules.LexRules,parseRules:_Rules.ParseRules,editorConfig:{}};return{startState:function(){var initialState={level:0,step:0,name:null,kind:null,type:null,rule:null,needsSeperator:!1,prevState:null};return pushRule(options.parseRules,initialState,"Document"),initialState},token:function(stream,state){return function(stream,state,options){var lexRules=options.lexRules,parseRules=options.parseRules,eatWhitespace=options.eatWhitespace,editorConfig=options.editorConfig;state.rule&&0===state.rule.length?popRule(state):state.needsAdvance&&(state.needsAdvance=!1,advanceRule(state,!0));if(stream.sol()){var tabSize=editorConfig&&editorConfig.tabSize||2;state.indentLevel=Math.floor(stream.indentation()/tabSize)}if(eatWhitespace(stream))return"ws";var token=function(lexRules,stream){for(var kinds=Object.keys(lexRules),i=0;i<kinds.length;i++){var match=stream.match(lexRules[kinds[i]]);if(match&&match instanceof Array)return{kind:kinds[i],value:match[0]}}}(lexRules,stream);if(!token){var matchedSomething=stream.match(/\S+/);return matchedSomething||stream.match(/\s/),pushRule(SpecialParseRules,state,"Invalid"),"invalidchar"}if("Comment"===token.kind)return pushRule(SpecialParseRules,state,"Comment"),"comment";var backupState=assign({},state);if("Punctuation"===token.kind)if(/^[{([]/.test(token.value))state.levels=(state.levels||[]).concat(state.indentLevel+1);else if(/^[})\]]/.test(token.value)){var levels=state.levels=(state.levels||[]).slice(0,-1);state.indentLevel&&0<levels.length&&levels[levels.length-1]<state.indentLevel&&(state.indentLevel=levels[levels.length-1])}for(;state.rule;){var expected="function"==typeof state.rule?0===state.step?state.rule(token,stream):null:state.rule[state.step];if(state.needsSeperator&&(expected=expected&&expected.separator),expected){if(expected.ofRule&&(expected=expected.ofRule),"string"==typeof expected){pushRule(parseRules,state,expected);continue}if(expected.match&&expected.match(token))return expected.update&&expected.update(state,token),"Punctuation"===token.kind?advanceRule(state,!0):state.needsAdvance=!0,expected.style}unsuccessful(state)}return assign(state,backupState),pushRule(SpecialParseRules,state,"Invalid"),"invalidchar"}(stream,state,options)}}};var _Rules=require("./Rules");function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}function assign(to,from){for(var keys=Object.keys(from),i=0;i<keys.length;i++)to[keys[i]]=from[keys[i]];return to}var SpecialParseRules={Invalid:[],Comment:[]};function pushRule(rules,state,ruleKind){if(!rules[ruleKind])throw new TypeError("Unknown rule: "+ruleKind);state.prevState=function(target){for(var i=1;i<arguments.length;i++){var source=null!=arguments[i]?arguments[i]:{},ownKeys=Object.keys(source);"function"==typeof Object.getOwnPropertySymbols&&(ownKeys=ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym){return Object.getOwnPropertyDescriptor(source,sym).enumerable}))),ownKeys.forEach(function(key){_defineProperty(target,key,source[key])})}return target}({},state),state.kind=ruleKind,state.name=null,state.type=null,state.rule=rules[ruleKind],state.step=0,state.needsSeperator=!1}function popRule(state){state.prevState&&(state.kind=state.prevState.kind,state.name=state.prevState.name,state.type=state.prevState.type,state.rule=state.prevState.rule,state.step=state.prevState.step,state.needsSeperator=state.prevState.needsSeperator,state.prevState=state.prevState.prevState)}function advanceRule(state,successful){if(isList(state)){if(state.rule&&state.rule[state.step].separator){var separator=state.rule[state.step].separator;if(state.needsSeperator=!state.needsSeperator,!state.needsSeperator&&separator.ofRule)return}if(successful)return}for(state.needsSeperator=!1,state.step++;state.rule&&!(Array.isArray(state.rule)&&state.step<state.rule.length);)popRule(state),state.rule&&(isList(state)?state.rule&&state.rule[state.step].separator&&(state.needsSeperator=!state.needsSeperator):(state.needsSeperator=!1,state.step++))}function isList(state){return Array.isArray(state.rule)&&"string"!=typeof state.rule[state.step]&&state.rule[state.step].isList}function unsuccessful(state){for(;state.rule&&(!Array.isArray(state.rule)||!state.rule[state.step].ofRule);)popRule(state);state.rule&&advanceRule(state,!1)}},{"./Rules":281}],284:[function(require,module,exports){"use strict";function _classCallCheck(instance,Constructor){if(!(instance instanceof Constructor))throw new TypeError("Cannot call a class as a function")}function _defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||!1,descriptor.configurable=!0,"value"in descriptor&&(descriptor.writable=!0),Object.defineProperty(target,descriptor.key,descriptor)}}function _createClass(Constructor,protoProps,staticProps){return protoProps&&_defineProperties(Constructor.prototype,protoProps),staticProps&&_defineProperties(Constructor,staticProps),Constructor}function _defineProperty(obj,key,value){return key in obj?Object.defineProperty(obj,key,{value:value,enumerable:!0,configurable:!0,writable:!0}):obj[key]=value,obj}Object.defineProperty(exports,"__esModule",{value:!0}),exports.offsetToPosition=offsetToPosition,exports.locToRange=function(text,loc){var start=offsetToPosition(text,loc.start),end=offsetToPosition(text,loc.end);return new Range(start,end)},exports.Position=exports.Range=void 0;var Range=function(){function Range(start,end){var _this=this;_classCallCheck(this,Range),_defineProperty(this,"start",void 0),_defineProperty(this,"end",void 0),_defineProperty(this,"containsPosition",function(position){return _this.start.line===position.line?_this.start.character<=position.character:_this.end.line===position.line?_this.end.character>=position.character:_this.start.line<=position.line&&_this.end.line>=position.line}),this.start=start,this.end=end}return _createClass(Range,[{key:"setStart",value:function(line,character){this.start=new Position(line,character)}},{key:"setEnd",value:function(line,character){this.end=new Position(line,character)}}]),Range}();exports.Range=Range;var Position=function(){function Position(line,character){var _this2=this;_classCallCheck(this,Position),_defineProperty(this,"line",void 0),_defineProperty(this,"character",void 0),_defineProperty(this,"lessThanOrEqualTo",function(position){return _this2.line<position.line||_this2.line===position.line&&_this2.character<=position.character}),this.line=line,this.character=character}return _createClass(Position,[{key:"setLine",value:function(line){this.line=line}},{key:"setCharacter",value:function(character){this.character=character}}]),Position}();function offsetToPosition(text,loc){var buf=text.slice(0,loc),lines=buf.split("\n").length-1,lastLineIndex=buf.lastIndexOf("\n");return new Position(lines,loc-lastLineIndex-1)}exports.Position=Position},{}],285:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.getASTNodeAtPosition=function(query,ast,point){var nodeContainingPosition,offset=pointToOffset(query,point);return(0,_graphql.visit)(ast,{enter:function(node){if(!("Name"!==node.kind&&node.loc&&node.loc.start<=offset&&offset<=node.loc.end))return!1;nodeContainingPosition=node},leave:function(node){if(node.loc&&node.loc.start<=offset&&offset<=node.loc.end)return!1}}),nodeContainingPosition},exports.pointToOffset=pointToOffset;require("./Range");var _graphql=require("graphql");function pointToOffset(text,point){var linesUntilPosition=text.split("\n").slice(0,point.line);return point.character+linesUntilPosition.map(function(line){return line.length+1}).reduce(function(a,b){return a+b},0)}},{"./Range":284,graphql:28}],286:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"getASTNodeAtPosition",{enumerable:!0,get:function(){return _getASTNodeAtPosition.getASTNodeAtPosition}}),Object.defineProperty(exports,"pointToOffset",{enumerable:!0,get:function(){return _getASTNodeAtPosition.pointToOffset}}),Object.defineProperty(exports,"Position",{enumerable:!0,get:function(){return _Range.Position}}),Object.defineProperty(exports,"Range",{enumerable:!0,get:function(){return _Range.Range}}),Object.defineProperty(exports,"locToRange",{enumerable:!0,get:function(){return _Range.locToRange}}),Object.defineProperty(exports,"offsetToPosition",{enumerable:!0,get:function(){return _Range.offsetToPosition}}),Object.defineProperty(exports,"validateWithCustomRules",{enumerable:!0,get:function(){return _validateWithCustomRules.validateWithCustomRules}});var _getASTNodeAtPosition=require("./getASTNodeAtPosition"),_Range=require("./Range"),_validateWithCustomRules=require("./validateWithCustomRules")},{"./Range":284,"./getASTNodeAtPosition":285,"./validateWithCustomRules":287}],287:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateWithCustomRules=function(schema,ast,customRules,isRelayCompatMode){var NoUnusedFragments=require("graphql/validation/rules/NoUnusedFragments").NoUnusedFragments,ExecutableDefinitions=require("graphql/validation/rules/ExecutableDefinitions").ExecutableDefinitions,rulesToSkip=[NoUnusedFragments,ExecutableDefinitions];if(isRelayCompatMode){var _require3=require("graphql/validation/rules/KnownFragmentNames"),KnownFragmentNames=_require3.KnownFragmentNames;rulesToSkip.push(KnownFragmentNames)}var rules=_graphql.specifiedRules.filter(function(rule){return!rulesToSkip.some(function(r){return r===rule})}),typeInfo=new _graphql.TypeInfo(schema);customRules&&Array.prototype.push.apply(rules,customRules);var errors=(0,_graphql.validate)(schema,ast,rules,typeInfo);if(0<errors.length)return errors.filter(function(error){return-1===error.message.indexOf("Unknown directive")||!(error.nodes&&error.nodes[0]&&error.nodes[0].name&&"arguments"===error.nodes[0].name.value||error.nodes&&error.nodes[0]&&error.nodes[0].name&&error.nodes[0].name.value&&"argumentDefinitions"===error.nodes[0].name.value)});return[]};var _graphql=require("graphql")},{graphql:28,"graphql/validation/rules/ExecutableDefinitions":101,"graphql/validation/rules/KnownFragmentNames":106,"graphql/validation/rules/NoUnusedFragments":112}]},{},[256])(256)});