webhook-action/node_modules/@vercel/ncc/dist/ncc/loaders/ts-loader.js.cache.js
2020-08-27 18:23:33 +10:00

1 line
2.9 MiB
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.

module.exports=(()=>{var e={6253:e=>{"use strict";e.exports=function diff(e){var t=arguments.length;var r=0;while(++r<t){e=diffArray(e,arguments[r])}return e};function diffArray(e,t){if(!Array.isArray(t)){return e.slice()}var r=t.length;var n=e.length;var i=-1;var a=[];while(++i<n){var o=e[i];var s=false;for(var c=0;c<r;c++){var u=t[c];if(o===u){s=true;break}}if(s===false){a.push(o)}}return a}},7994:e=>{"use strict";e.exports=function(e){return flat(e,[])};function flat(e,t){var r=0,n;var i=e.length;for(;r<i;r++){n=e[r];Array.isArray(n)?flat(n,t):t.push(n)}return t}},8441:e=>{"use strict";e.exports=function union(e){if(!Array.isArray(e)){throw new TypeError("arr-union expects the first argument to be an array.")}var t=arguments.length;var r=0;while(++r<t){var n=arguments[r];if(!n)continue;if(!Array.isArray(n)){n=[n]}for(var i=0;i<n.length;i++){var a=n[i];if(e.indexOf(a)>=0){continue}e.push(a)}}return e}},6974:e=>{"use strict";e.exports=function unique(e){if(!Array.isArray(e)){throw new TypeError("array-unique expects an array.")}var t=e.length;var r=-1;while(r++<t){var n=r+1;for(;n<e.length;++n){if(e[r]===e[n]){e.splice(n--,1)}}}return e};e.exports.immutable=function uniqueImmutable(t){if(!Array.isArray(t)){throw new TypeError("array-unique expects an array.")}var r=t.length;var n=new Array(r);for(var i=0;i<r;i++){n[i]=t[i]}return e.exports(n)}},7954:e=>{"use strict";e.exports=function(e,t){if(e===null||typeof e==="undefined"){throw new TypeError("expected first argument to be an object.")}if(typeof t==="undefined"||typeof Symbol==="undefined"){return e}if(typeof Object.getOwnPropertySymbols!=="function"){return e}var r=Object.prototype.propertyIsEnumerable;var n=Object(e);var i=arguments.length,a=0;while(++a<i){var o=Object(arguments[a]);var s=Object.getOwnPropertySymbols(o);for(var c=0;c<s.length;c++){var u=s[c];if(r.call(o,u)){n[u]=o[u]}}}return n}},731:e=>{"use strict";function atob(e){return Buffer.from(e,"base64").toString("binary")}e.exports=atob.atob=atob},7322:(e,t,r)=>{"use strict";var n=r(1669);var i=r(3479);var a=r(9184);var o=r(2045);var s=r(977);var c=r(9811);var u=r(771);var l=r(3010);function namespace(e){var t=e?a.namespace(e):a;var r=[];function Base(e,r){if(!(this instanceof Base)){return new Base(e,r)}t.call(this,e);this.is("base");this.initBase(e,r)}n.inherits(Base,t);o(Base);Base.prototype.initBase=function(t,n){this.options=c({},this.options,n);this.cache=this.cache||{};this.define("registered",{});if(e)this[e]={};this.define("_callbacks",this._callbacks);if(s(t)){this.visit("set",t)}Base.run(this,"use",r)};Base.prototype.is=function(e){if(typeof e!=="string"){throw new TypeError("expected name to be a string")}this.define("is"+u(e),true);this.define("_name",e);this.define("_appname",e);return this};Base.prototype.isRegistered=function(e,t){if(this.registered.hasOwnProperty(e)){return true}if(t!==false){this.registered[e]=true;this.emit("plugin",e)}return false};Base.prototype.use=function(e){e.call(this,this);return this};Base.prototype.define=function(e,t){if(s(e)){return this.visit("define",e)}i(this,e,t);return this};Base.prototype.mixin=function(e,t){Base.prototype[e]=t;return this};Base.prototype.mixins=Base.prototype.mixins||[];Object.defineProperty(Base.prototype,"base",{configurable:true,get:function(){return this.parent?this.parent.base:this}});i(Base,"use",function(e){r.push(e);return Base});i(Base,"run",function(e,t,r){var n=r.length,i=0;while(n--){e[t](r[i++])}return Base});i(Base,"extend",l.extend(Base,function(e,t){e.prototype.mixins=e.prototype.mixins||[];i(e,"mixin",function(t){var r=t(e.prototype,e);if(typeof r==="function"){e.prototype.mixins.push(r)}return e});i(e,"mixins",function(t){Base.run(t,"mixin",e.prototype.mixins);return e});e.prototype.mixin=function(t,r){e.prototype[t]=r;return this};return Base}));i(Base,"mixin",function(e){var t=e(Base.prototype,Base);if(typeof t==="function"){Base.prototype.mixins.push(t)}return Base});i(Base,"mixins",function(e){Base.run(e,"mixin",Base.prototype.mixins);return Base});i(Base,"inherit",l.inherit);i(Base,"bubble",l.bubble);return Base}e.exports=namespace();e.exports.namespace=namespace},3479:(e,t,r)=>{"use strict";var n=r(8586);e.exports=function defineProperty(e,t,r){if(typeof e!=="object"&&typeof e!=="function"){throw new TypeError("expected an object or function.")}if(typeof t!=="string"){throw new TypeError("expected `prop` to be a string.")}if(n(r)&&("set"in r||"get"in r)){return Object.defineProperty(e,t,r)}return Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}},4495:(e,t,r)=>{"use strict";var n=r(9532);var i=r(6974);var a=r(8333);var o=r(6059);var s=r(5380);var c=r(4877);var u=r(3762);var l=1024*64;var f={};function braces(e,t){var r=u.createKey(String(e),t);var n=[];var a=t&&t.cache===false;if(!a&&f.hasOwnProperty(r)){return f[r]}if(Array.isArray(e)){for(var o=0;o<e.length;o++){n.push.apply(n,braces.create(e[o],t))}}else{n=braces.create(e,t)}if(t&&t.nodupes===true){n=i(n)}if(!a){f[r]=n}return n}braces.expand=function(e,t){return braces.create(e,a({},t,{expand:true}))};braces.optimize=function(e,t){return braces.create(e,t)};braces.create=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}var r=t&&t.maxLength||l;if(e.length>=r){throw new Error("expected pattern to be less than "+r+" characters")}function create(){if(e===""||e.length<3){return[e]}if(u.isEmptySets(e)){return[]}if(u.isQuotedString(e)){return[e.slice(1,-1)]}var r=new c(t);var n=!t||t.expand!==true?r.optimize(e,t):r.expand(e,t);var a=n.output;if(t&&t.noempty===true){a=a.filter(Boolean)}if(t&&t.nodupes===true){a=i(a)}Object.defineProperty(a,"result",{enumerable:false,value:n});return a}return memoize("create",e,t,create)};braces.makeRe=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}var r=t&&t.maxLength||l;if(e.length>=r){throw new Error("expected pattern to be less than "+r+" characters")}function makeRe(){var r=braces(e,t);var i=a({strictErrors:false},t);return n(r,i)}return memoize("makeRe",e,t,makeRe)};braces.parse=function(e,t){var r=new c(t);return r.parse(e,t)};braces.compile=function(e,t){var r=new c(t);return r.compile(e,t)};braces.clearCache=function(){f=braces.cache={}};function memoize(e,t,r,n){var i=u.createKey(e+":"+t,r);var a=r&&r.cache===false;if(a){braces.clearCache();return n(t,r)}if(f.hasOwnProperty(i)){return f[i]}var o=n(t,r);f[i]=o;return o}braces.Braces=c;braces.compilers=o;braces.parsers=s;braces.cache=f;e.exports=braces},4877:(e,t,r)=>{"use strict";var n=r(8333);var i=r(9769);var a=r(6059);var o=r(5380);var s=r(3762);function Braces(e){this.options=n({},e)}Braces.prototype.init=function(e){if(this.isInitialized)return;this.isInitialized=true;var t=s.createOptions({},this.options,e);this.snapdragon=this.options.snapdragon||new i(t);this.compiler=this.snapdragon.compiler;this.parser=this.snapdragon.parser;a(this.snapdragon,t);o(this.snapdragon,t);s.define(this.snapdragon,"parse",function(e,t){var r=i.prototype.parse.apply(this,arguments);this.parser.ast.input=e;var n=this.parser.stack;while(n.length){addParent({type:"brace.close",val:""},n.pop())}function addParent(e,t){s.define(e,"parent",t);t.nodes.push(e)}s.define(r,"parser",this.parser);return r})};Braces.prototype.parse=function(e,t){if(e&&typeof e==="object"&&e.nodes)return e;this.init(t);return this.snapdragon.parse(e,t)};Braces.prototype.compile=function(e,t){if(typeof e==="string"){e=this.parse(e,t)}else{this.init(t)}return this.snapdragon.compile(e,t)};Braces.prototype.expand=function(e){var t=this.parse(e,{expand:true});return this.compile(t,{expand:true})};Braces.prototype.optimize=function(e){var t=this.parse(e,{optimize:true});return this.compile(t,{optimize:true})};e.exports=Braces},6059:(e,t,r)=>{"use strict";var n=r(3762);e.exports=function(e,t){e.compiler.set("bos",function(){if(this.output)return;this.ast.queue=isEscaped(this.ast)?[this.ast.val]:[];this.ast.count=1}).set("bracket",function(e){var t=e.close;var r=!e.escaped?"[":"\\[";var i=e.negated;var a=e.inner;a=a.replace(/\\(?=[\\\w]|$)/g,"\\\\");if(a==="]-"){a="\\]\\-"}if(i&&a.indexOf(".")===-1){a+="."}if(i&&a.indexOf("/")===-1){a+="/"}var o=r+i+a+t;var s=e.parent.queue;var c=n.arrayify(s.pop());s.push(n.join(c,o));s.push.apply(s,[])}).set("brace",function(e){e.queue=isEscaped(e)?[e.val]:[];e.count=1;return this.mapVisit(e.nodes)}).set("brace.open",function(e){e.parent.open=e.val}).set("text",function(e){var r=e.parent.queue;var i=e.escaped;var a=[e.val];if(e.optimize===false){t=n.extend({},t,{optimize:false})}if(e.multiplier>1){e.parent.count*=e.multiplier}if(t.quantifiers===true&&n.isQuantifier(e.val)){i=true}else if(e.val.length>1){if(isType(e.parent,"brace")&&!isEscaped(e)){var o=n.expand(e.val,t);a=o.segs;if(o.isOptimized){e.parent.isOptimized=true}if(!a.length){var s=o.val||e.val;if(t.unescape!==false){s=s.replace(/\\([,.])/g,"$1");s=s.replace(/["'`]/g,"")}a=[s];i=true}}}else if(e.val===","){if(t.expand){e.parent.queue.push([""]);a=[""]}else{a=["|"]}}else{i=true}if(i&&isType(e.parent,"brace")){if(e.parent.nodes.length<=4&&e.parent.count===1){e.parent.escaped=true}else if(e.parent.length<=3){e.parent.escaped=true}}if(!hasQueue(e.parent)){e.parent.queue=a;return}var c=n.arrayify(r.pop());if(e.parent.count>1&&t.expand){c=multiply(c,e.parent.count);e.parent.count=1}r.push(n.join(n.flatten(c),a.shift()));r.push.apply(r,a)}).set("brace.close",function(e){var r=e.parent.queue;var i=e.parent.parent;var a=i.queue.pop();var o=e.parent.open;var s=e.val;if(o&&s&&isOptimized(e,t)){o="(";s=")"}var c=n.last(r);if(e.parent.count>1&&t.expand){c=multiply(r.pop(),e.parent.count);e.parent.count=1;r.push(c)}if(s&&typeof c==="string"&&c.length===1){o="";s=""}if((isLiteralBrace(e,t)||noInner(e))&&!e.parent.hasEmpty){r.push(n.join(o,r.pop()||""));r=n.flatten(n.join(r,s))}if(typeof a==="undefined"){i.queue=[r]}else{i.queue.push(n.flatten(n.join(a,r)))}}).set("eos",function(e){if(this.input)return;if(t.optimize!==false){this.output=n.last(n.flatten(this.ast.queue))}else if(Array.isArray(n.last(this.ast.queue))){this.output=n.flatten(this.ast.queue.pop())}else{this.output=n.flatten(this.ast.queue)}if(e.parent.count>1&&t.expand){this.output=multiply(this.output,e.parent.count)}this.output=n.arrayify(this.output);this.ast.queue=[]})};function multiply(e,t,r){return n.flatten(n.repeat(n.arrayify(e),t))}function isEscaped(e){return e.escaped===true}function isOptimized(e,t){if(e.parent.isOptimized)return true;return isType(e.parent,"brace")&&!isEscaped(e.parent)&&t.expand!==true}function isLiteralBrace(e,t){return isEscaped(e.parent)||t.optimize!==false}function noInner(e,t){if(e.parent.queue.length===1){return true}var r=e.parent.nodes;return r.length===3&&isType(r[0],"brace.open")&&!isType(r[1],"text")&&isType(r[2],"brace.close")}function isType(e,t){return typeof e!=="undefined"&&e.type===t}function hasQueue(e){return Array.isArray(e.queue)&&e.queue.length}},5380:(e,t,r)=>{"use strict";var n=r(4240);var i=r(3762);e.exports=function(e,t){e.parser.set("bos",function(){if(!this.parsed){this.ast=this.nodes[0]=new n(this.ast)}}).set("escape",function(){var e=this.position();var r=this.match(/^(?:\\(.)|\$\{)/);if(!r)return;var a=this.prev();var o=i.last(a.nodes);var s=e(new n({type:"text",multiplier:1,val:r[0]}));if(s.val==="\\\\"){return s}if(s.val==="${"){var c=this.input;var u=-1;var l;while(l=c[++u]){this.consume(1);s.val+=l;if(l==="\\"){s.val+=c[++u];continue}if(l==="}"){break}}}if(this.options.unescape!==false){s.val=s.val.replace(/\\([{}])/g,"$1")}if(o.val==='"'&&this.input.charAt(0)==='"'){o.val=s.val;this.consume(1);return}return concatNodes.call(this,e,s,a,t)}).set("bracket",function(){var e=this.isInside("brace");var t=this.position();var r=this.match(/^(?:\[([!^]?)([^\]]{2,}|\]-)(\]|[^*+?]+)|\[)/);if(!r)return;var i=this.prev();var a=r[0];var o=r[1]?"^":"";var s=r[2]||"";var c=r[3]||"";if(e&&i.type==="brace"){i.text=i.text||"";i.text+=a}var u=this.input.slice(0,2);if(s===""&&u==="\\]"){s+=u;this.consume(2);var l=this.input;var f=-1;var d;while(d=l[++f]){this.consume(1);if(d==="]"){c=d;break}s+=d}}return t(new n({type:"bracket",val:a,escaped:c!=="]",negated:o,inner:s,close:c}))}).set("multiplier",function(){var e=this.isInside("brace");var r=this.position();var i=this.match(/^\{((?:,|\{,+\})+)\}/);if(!i)return;this.multiplier=true;var a=this.prev();var o=i[0];if(e&&a.type==="brace"){a.text=a.text||"";a.text+=o}var s=r(new n({type:"text",multiplier:1,match:i,val:o}));return concatNodes.call(this,r,s,a,t)}).set("brace.open",function(){var e=this.position();var t=this.match(/^\{(?!(?:[^\\}]?|,+)\})/);if(!t)return;var r=this.prev();var a=i.last(r.nodes);if(a&&a.val&&isExtglobChar(a.val.slice(-1))){a.optimize=false}var o=e(new n({type:"brace.open",val:t[0]}));var s=e(new n({type:"brace",nodes:[]}));s.push(o);r.push(s);this.push("brace",s)}).set("brace.close",function(){var e=this.position();var t=this.match(/^\}/);if(!t||!t[0])return;var r=this.pop("brace");var a=e(new n({type:"brace.close",val:t[0]}));if(!this.isType(r,"brace")){if(this.options.strict){throw new Error('missing opening "{"')}a.type="text";a.multiplier=0;a.escaped=true;return a}var o=this.prev();var s=i.last(o.nodes);if(s.text){var c=i.last(s.nodes);if(c.val===")"&&/[!@*?+]\(/.test(s.text)){var u=s.nodes[0];var l=s.nodes[1];if(u.type==="brace.open"&&l&&l.type==="text"){l.optimize=false}}}if(r.nodes.length>2){var f=r.nodes[1];if(f.type==="text"&&f.val===","){r.nodes.splice(1,1);r.nodes.push(f)}}r.push(a)}).set("boundary",function(){var e=this.position();var t=this.match(/^[$^](?!\{)/);if(!t)return;return e(new n({type:"text",val:t[0]}))}).set("nobrace",function(){var e=this.isInside("brace");var t=this.position();var r=this.match(/^\{[^,]?\}/);if(!r)return;var i=this.prev();var a=r[0];if(e&&i.type==="brace"){i.text=i.text||"";i.text+=a}return t(new n({type:"text",multiplier:0,val:a}))}).set("text",function(){var e=this.isInside("brace");var r=this.position();var i=this.match(/^((?!\\)[^${}[\]])+/);if(!i)return;var a=this.prev();var o=i[0];if(e&&a.type==="brace"){a.text=a.text||"";a.text+=o}var s=r(new n({type:"text",multiplier:1,val:o}));return concatNodes.call(this,r,s,a,t)})};function isExtglobChar(e){return e==="!"||e==="@"||e==="*"||e==="?"||e==="+"}function concatNodes(e,t,r,n){t.orig=t.val;var a=this.prev();var o=i.last(a.nodes);var s=false;if(t.val.length>1){var c=t.val.charAt(0);var u=t.val.slice(-1);s=c==='"'&&u==='"'||c==="'"&&u==="'"||c==="`"&&u==="`"}if(s&&n.unescape!==false){t.val=t.val.slice(1,t.val.length-1);t.escaped=true}if(t.match){var l=t.match[1];if(!l||l.indexOf("}")===-1){l=t.match[0]}var f=l.replace(/\{/g,",").replace(/\}/g,"");t.multiplier*=f.length;t.val=""}var d=o.type==="text"&&o.multiplier===1&&t.multiplier===1&&t.val;if(d){o.val+=t.val;return}a.push(t)}},3762:(e,t,r)=>{"use strict";var n=r(6439);var i=e.exports;i.extend=r(8333);i.flatten=r(7994);i.isObject=r(977);i.fillRange=r(9430);i.repeat=r(193);i.unique=r(6974);i.define=function(e,t,r){Object.defineProperty(e,t,{writable:true,configurable:true,enumerable:false,value:r})};i.isEmptySets=function(e){return/^(?:\{,\})+$/.test(e)};i.isQuotedString=function(e){var t=e.charAt(0);if(t==="'"||t==='"'||t==="`"){return e.slice(-1)===t}return false};i.createKey=function(e,t){var r=e;if(typeof t==="undefined"){return r}var n=Object.keys(t);for(var i=0;i<n.length;i++){var a=n[i];r+=";"+a+"="+String(t[a])}return r};i.createOptions=function(e){var t=i.extend.apply(null,arguments);if(typeof t.expand==="boolean"){t.optimize=!t.expand}if(typeof t.optimize==="boolean"){t.expand=!t.optimize}if(t.optimize===true){t.makeRe=true}return t};i.join=function(e,t,r){r=r||{};e=i.arrayify(e);t=i.arrayify(t);if(!e.length)return t;if(!t.length)return e;var n=e.length;var a=-1;var o=[];while(++a<n){var s=e[a];if(Array.isArray(s)){for(var c=0;c<s.length;c++){s[c]=i.join(s[c],t,r)}o.push(s);continue}for(var u=0;u<t.length;u++){var l=t[u];if(Array.isArray(l)){o.push(i.join(s,l,r))}else{o.push(s+l)}}}return o};i.split=function(e,t){var r=i.extend({sep:","},t);if(typeof r.keepQuotes!=="boolean"){r.keepQuotes=true}if(r.unescape===false){r.keepEscaping=true}return n(e,r,i.escapeBrackets(r))};i.expand=function(e,t){var r=i.extend({rangeLimit:1e4},t);var n=i.split(e,r);var a={segs:n};if(i.isQuotedString(e)){return a}if(r.rangeLimit===true){r.rangeLimit=1e4}if(n.length>1){if(r.optimize===false){a.val=n[0];return a}a.segs=i.stringifyArray(a.segs)}else if(n.length===1){var o=e.split("..");if(o.length===1){a.val=a.segs[a.segs.length-1]||a.val||e;a.segs=[];return a}if(o.length===2&&o[0]===o[1]){a.escaped=true;a.val=o[0];a.segs=[];return a}if(o.length>1){if(r.optimize!==false){r.optimize=true;delete r.expand}if(r.optimize!==true){var s=Math.min(o[0],o[1]);var c=Math.max(o[0],o[1]);var u=o[2]||1;if(r.rangeLimit!==false&&(c-s)/u>=r.rangeLimit){throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.")}}o.push(r);a.segs=i.fillRange.apply(null,o);if(!a.segs.length){a.escaped=true;a.val=e;return a}if(r.optimize===true){a.segs=i.stringifyArray(a.segs)}if(a.segs===""){a.val=e}else{a.val=a.segs[0]}return a}}else{a.val=e}return a};i.escapeBrackets=function(e){return function(t){if(t.escaped&&t.val==="b"){t.val="\\b";return}if(t.val!=="("&&t.val!=="[")return;var r=i.extend({},e);var n=[];var a=[];var o=[];var s=t.val;var c=t.str;var u=t.idx-1;while(++u<c.length){var l=c[u];if(l==="\\"){s+=(r.keepEscaping===false?"":l)+c[++u];continue}if(l==="("){a.push(l);o.push(l)}if(l==="["){n.push(l);o.push(l)}if(l===")"){a.pop();o.pop();if(!o.length){s+=l;break}}if(l==="]"){n.pop();o.pop();if(!o.length){s+=l;break}}s+=l}t.split=false;t.val=s.slice(1);t.idx=u}};i.isQuantifier=function(e){return/^(?:[0-9]?,[0-9]|[0-9],)$/.test(e)};i.stringifyArray=function(e){return[i.arrayify(e).join("|")]};i.arrayify=function(e){if(typeof e==="undefined"){return[]}if(typeof e==="string"){return[e]}return e};i.isString=function(e){return e!=null&&typeof e==="string"};i.last=function(e,t){return e[e.length-(t||1)]};i.escapeRegex=function(e){return e.replace(/\\?([!^*?()[\]{}+?/])/g,"\\$1")}},6650:e=>{var t=Object.prototype.toString;var r=typeof Buffer.alloc==="function"&&typeof Buffer.allocUnsafe==="function"&&typeof Buffer.from==="function";function isArrayBuffer(e){return t.call(e).slice(8,-1)==="ArrayBuffer"}function fromArrayBuffer(e,t,n){t>>>=0;var i=e.byteLength-t;if(i<0){throw new RangeError("'offset' is out of bounds")}if(n===undefined){n=i}else{n>>>=0;if(n>i){throw new RangeError("'length' is out of bounds")}}return r?Buffer.from(e.slice(t,t+n)):new Buffer(new Uint8Array(e.slice(t,t+n)))}function fromString(e,t){if(typeof t!=="string"||t===""){t="utf8"}if(!Buffer.isEncoding(t)){throw new TypeError('"encoding" must be a valid string encoding')}return r?Buffer.from(e,t):new Buffer(e,t)}function bufferFrom(e,t,n){if(typeof e==="number"){throw new TypeError('"value" argument must not be a number')}if(isArrayBuffer(e)){return fromArrayBuffer(e,t,n)}if(typeof e==="string"){return fromString(e,t)}return r?Buffer.from(e):new Buffer(e)}e.exports=bufferFrom},9184:(e,t,r)=>{"use strict";var n=r(977);var i=r(2045);var a=r(5521);var o=r(3919);var s=r(5770);var c=r(2093);var u=r(3826);var l=r(3283);var f=r(6469);function namespace(e){function Cache(t){if(e){this[e]={}}if(t){this.set(t)}}i(Cache.prototype);Cache.prototype.set=function(t,r){if(Array.isArray(t)&&arguments.length===2){t=o(t)}if(n(t)||Array.isArray(t)){this.visit("set",t)}else{f(e?this[e]:this,t,r);this.emit("set",t,r)}return this};Cache.prototype.union=function(t,r){if(Array.isArray(t)&&arguments.length===2){t=o(t)}var n=e?this[e]:this;s(n,t,arrayify(r));this.emit("union",r);return this};Cache.prototype.get=function(t){t=o(arguments);var r=e?this[e]:this;var n=u(r,t);this.emit("get",t,n);return n};Cache.prototype.has=function(t){t=o(arguments);var r=e?this[e]:this;var n=u(r,t);var i=typeof n!=="undefined";this.emit("has",t,i);return i};Cache.prototype.del=function(t){if(Array.isArray(t)){this.visit("del",t)}else{c(e?this[e]:this,t);this.emit("del",t)}return this};Cache.prototype.clear=function(){if(e){this[e]={}}};Cache.prototype.visit=function(e,t){a(this,e,t);return this};return Cache}function arrayify(e){return e?Array.isArray(e)?e:[e]:[]}e.exports=namespace();e.exports.namespace=namespace},3010:(e,t,r)=>{"use strict";var n=r(1669);var i=r(8441);var a=r(4728);var o=r(1261);var s=r(977);var c=e.exports;c.isObject=function isObject(e){return s(e)||typeof e==="function"};c.has=function has(e,t){t=c.arrayify(t);var r=t.length;if(c.isObject(e)){for(var n in e){if(t.indexOf(n)>-1){return true}}var i=c.nativeKeys(e);return c.has(i,t)}if(Array.isArray(e)){var a=e;while(r--){if(a.indexOf(t[r])>-1){return true}}return false}throw new TypeError("expected an array or object.")};c.hasAll=function hasAll(e,t){t=c.arrayify(t);var r=t.length;while(r--){if(!c.has(e,t[r])){return false}}return true};c.arrayify=function arrayify(e){return e?Array.isArray(e)?e:[e]:[]};c.noop=function noop(){return};c.identity=function identity(e){return e};c.hasConstructor=function hasConstructor(e){return c.isObject(e)&&typeof e.constructor!=="undefined"};c.nativeKeys=function nativeKeys(e){if(!c.hasConstructor(e))return[];var t=Object.getOwnPropertyNames(e);if("caller"in e)t.push("caller");return t};c.getDescriptor=function getDescriptor(e,t){if(!c.isObject(e)){throw new TypeError("expected an object.")}if(typeof t!=="string"){throw new TypeError("expected key to be a string.")}return Object.getOwnPropertyDescriptor(e,t)};c.copyDescriptor=function copyDescriptor(e,t,r){if(!c.isObject(e)){throw new TypeError("expected receiving object to be an object.")}if(!c.isObject(t)){throw new TypeError("expected providing object to be an object.")}if(typeof r!=="string"){throw new TypeError("expected name to be a string.")}var n=c.getDescriptor(t,r);if(n)Object.defineProperty(e,r,n)};c.copy=function copy(e,t,r){if(!c.isObject(e)){throw new TypeError("expected receiving object to be an object.")}if(!c.isObject(t)){throw new TypeError("expected providing object to be an object.")}var n=Object.getOwnPropertyNames(t);var i=Object.keys(t);var o=n.length,s;r=c.arrayify(r);while(o--){s=n[o];if(c.has(i,s)){a(e,s,t[s])}else if(!(s in e)&&!c.has(r,s)){c.copyDescriptor(e,t,s)}}};c.inherit=function inherit(e,t,r){if(!c.isObject(e)){throw new TypeError("expected receiving object to be an object.")}if(!c.isObject(t)){throw new TypeError("expected providing object to be an object.")}var n=[];for(var i in t){n.push(i);e[i]=t[i]}n=n.concat(c.arrayify(r));var a=t.prototype||t;var o=e.prototype||e;c.copy(o,a,n)};c.extend=function(){return o.apply(null,arguments)};c.bubble=function(e,t){t=t||[];e.bubble=function(r,n){if(Array.isArray(n)){t=i([],t,n)}var a=t.length;var o=-1;while(++o<a){var s=t[o];e.on(s,r.emit.bind(r,s))}c.bubble(r,t)}}},5521:(e,t,r)=>{"use strict";var n=r(4274);var i=r(8098);e.exports=function(e,t,r){var a;if(typeof r==="string"&&t in e){var o=[].slice.call(arguments,2);a=e[t].apply(e,o)}else if(Array.isArray(r)){a=i.apply(null,arguments)}else{a=n.apply(null,arguments)}if(typeof a!=="undefined"){return a}return e}},3644:(e,t,r)=>{var n=r(9187);var i={};for(var a in n){if(n.hasOwnProperty(a)){i[n[a]]=a}}var o=e.exports={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};for(var s in o){if(o.hasOwnProperty(s)){if(!("channels"in o[s])){throw new Error("missing channels property: "+s)}if(!("labels"in o[s])){throw new Error("missing channel labels property: "+s)}if(o[s].labels.length!==o[s].channels){throw new Error("channel and label counts mismatch: "+s)}var c=o[s].channels;var u=o[s].labels;delete o[s].channels;delete o[s].labels;Object.defineProperty(o[s],"channels",{value:c});Object.defineProperty(o[s],"labels",{value:u})}}o.rgb.hsl=function(e){var t=e[0]/255;var r=e[1]/255;var n=e[2]/255;var i=Math.min(t,r,n);var a=Math.max(t,r,n);var o=a-i;var s;var c;var u;if(a===i){s=0}else if(t===a){s=(r-n)/o}else if(r===a){s=2+(n-t)/o}else if(n===a){s=4+(t-r)/o}s=Math.min(s*60,360);if(s<0){s+=360}u=(i+a)/2;if(a===i){c=0}else if(u<=.5){c=o/(a+i)}else{c=o/(2-a-i)}return[s,c*100,u*100]};o.rgb.hsv=function(e){var t;var r;var n;var i;var a;var o=e[0]/255;var s=e[1]/255;var c=e[2]/255;var u=Math.max(o,s,c);var l=u-Math.min(o,s,c);var f=function(e){return(u-e)/6/l+1/2};if(l===0){i=a=0}else{a=l/u;t=f(o);r=f(s);n=f(c);if(o===u){i=n-r}else if(s===u){i=1/3+t-n}else if(c===u){i=2/3+r-t}if(i<0){i+=1}else if(i>1){i-=1}}return[i*360,a*100,u*100]};o.rgb.hwb=function(e){var t=e[0];var r=e[1];var n=e[2];var i=o.rgb.hsl(e)[0];var a=1/255*Math.min(t,Math.min(r,n));n=1-1/255*Math.max(t,Math.max(r,n));return[i,a*100,n*100]};o.rgb.cmyk=function(e){var t=e[0]/255;var r=e[1]/255;var n=e[2]/255;var i;var a;var o;var s;s=Math.min(1-t,1-r,1-n);i=(1-t-s)/(1-s)||0;a=(1-r-s)/(1-s)||0;o=(1-n-s)/(1-s)||0;return[i*100,a*100,o*100,s*100]};function comparativeDistance(e,t){return Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2)+Math.pow(e[2]-t[2],2)}o.rgb.keyword=function(e){var t=i[e];if(t){return t}var r=Infinity;var a;for(var o in n){if(n.hasOwnProperty(o)){var s=n[o];var c=comparativeDistance(e,s);if(c<r){r=c;a=o}}}return a};o.keyword.rgb=function(e){return n[e]};o.rgb.xyz=function(e){var t=e[0]/255;var r=e[1]/255;var n=e[2]/255;t=t>.04045?Math.pow((t+.055)/1.055,2.4):t/12.92;r=r>.04045?Math.pow((r+.055)/1.055,2.4):r/12.92;n=n>.04045?Math.pow((n+.055)/1.055,2.4):n/12.92;var i=t*.4124+r*.3576+n*.1805;var a=t*.2126+r*.7152+n*.0722;var o=t*.0193+r*.1192+n*.9505;return[i*100,a*100,o*100]};o.rgb.lab=function(e){var t=o.rgb.xyz(e);var r=t[0];var n=t[1];var i=t[2];var a;var s;var c;r/=95.047;n/=100;i/=108.883;r=r>.008856?Math.pow(r,1/3):7.787*r+16/116;n=n>.008856?Math.pow(n,1/3):7.787*n+16/116;i=i>.008856?Math.pow(i,1/3):7.787*i+16/116;a=116*n-16;s=500*(r-n);c=200*(n-i);return[a,s,c]};o.hsl.rgb=function(e){var t=e[0]/360;var r=e[1]/100;var n=e[2]/100;var i;var a;var o;var s;var c;if(r===0){c=n*255;return[c,c,c]}if(n<.5){a=n*(1+r)}else{a=n+r-n*r}i=2*n-a;s=[0,0,0];for(var u=0;u<3;u++){o=t+1/3*-(u-1);if(o<0){o++}if(o>1){o--}if(6*o<1){c=i+(a-i)*6*o}else if(2*o<1){c=a}else if(3*o<2){c=i+(a-i)*(2/3-o)*6}else{c=i}s[u]=c*255}return s};o.hsl.hsv=function(e){var t=e[0];var r=e[1]/100;var n=e[2]/100;var i=r;var a=Math.max(n,.01);var o;var s;n*=2;r*=n<=1?n:2-n;i*=a<=1?a:2-a;s=(n+r)/2;o=n===0?2*i/(a+i):2*r/(n+r);return[t,o*100,s*100]};o.hsv.rgb=function(e){var t=e[0]/60;var r=e[1]/100;var n=e[2]/100;var i=Math.floor(t)%6;var a=t-Math.floor(t);var o=255*n*(1-r);var s=255*n*(1-r*a);var c=255*n*(1-r*(1-a));n*=255;switch(i){case 0:return[n,c,o];case 1:return[s,n,o];case 2:return[o,n,c];case 3:return[o,s,n];case 4:return[c,o,n];case 5:return[n,o,s]}};o.hsv.hsl=function(e){var t=e[0];var r=e[1]/100;var n=e[2]/100;var i=Math.max(n,.01);var a;var o;var s;s=(2-r)*n;a=(2-r)*i;o=r*i;o/=a<=1?a:2-a;o=o||0;s/=2;return[t,o*100,s*100]};o.hwb.rgb=function(e){var t=e[0]/360;var r=e[1]/100;var n=e[2]/100;var i=r+n;var a;var o;var s;var c;if(i>1){r/=i;n/=i}a=Math.floor(6*t);o=1-n;s=6*t-a;if((a&1)!==0){s=1-s}c=r+s*(o-r);var u;var l;var f;switch(a){default:case 6:case 0:u=o;l=c;f=r;break;case 1:u=c;l=o;f=r;break;case 2:u=r;l=o;f=c;break;case 3:u=r;l=c;f=o;break;case 4:u=c;l=r;f=o;break;case 5:u=o;l=r;f=c;break}return[u*255,l*255,f*255]};o.cmyk.rgb=function(e){var t=e[0]/100;var r=e[1]/100;var n=e[2]/100;var i=e[3]/100;var a;var o;var s;a=1-Math.min(1,t*(1-i)+i);o=1-Math.min(1,r*(1-i)+i);s=1-Math.min(1,n*(1-i)+i);return[a*255,o*255,s*255]};o.xyz.rgb=function(e){var t=e[0]/100;var r=e[1]/100;var n=e[2]/100;var i;var a;var o;i=t*3.2406+r*-1.5372+n*-.4986;a=t*-.9689+r*1.8758+n*.0415;o=t*.0557+r*-.204+n*1.057;i=i>.0031308?1.055*Math.pow(i,1/2.4)-.055:i*12.92;a=a>.0031308?1.055*Math.pow(a,1/2.4)-.055:a*12.92;o=o>.0031308?1.055*Math.pow(o,1/2.4)-.055:o*12.92;i=Math.min(Math.max(0,i),1);a=Math.min(Math.max(0,a),1);o=Math.min(Math.max(0,o),1);return[i*255,a*255,o*255]};o.xyz.lab=function(e){var t=e[0];var r=e[1];var n=e[2];var i;var a;var o;t/=95.047;r/=100;n/=108.883;t=t>.008856?Math.pow(t,1/3):7.787*t+16/116;r=r>.008856?Math.pow(r,1/3):7.787*r+16/116;n=n>.008856?Math.pow(n,1/3):7.787*n+16/116;i=116*r-16;a=500*(t-r);o=200*(r-n);return[i,a,o]};o.lab.xyz=function(e){var t=e[0];var r=e[1];var n=e[2];var i;var a;var o;a=(t+16)/116;i=r/500+a;o=a-n/200;var s=Math.pow(a,3);var c=Math.pow(i,3);var u=Math.pow(o,3);a=s>.008856?s:(a-16/116)/7.787;i=c>.008856?c:(i-16/116)/7.787;o=u>.008856?u:(o-16/116)/7.787;i*=95.047;a*=100;o*=108.883;return[i,a,o]};o.lab.lch=function(e){var t=e[0];var r=e[1];var n=e[2];var i;var a;var o;i=Math.atan2(n,r);a=i*360/2/Math.PI;if(a<0){a+=360}o=Math.sqrt(r*r+n*n);return[t,o,a]};o.lch.lab=function(e){var t=e[0];var r=e[1];var n=e[2];var i;var a;var o;o=n/360*2*Math.PI;i=r*Math.cos(o);a=r*Math.sin(o);return[t,i,a]};o.rgb.ansi16=function(e){var t=e[0];var r=e[1];var n=e[2];var i=1 in arguments?arguments[1]:o.rgb.hsv(e)[2];i=Math.round(i/50);if(i===0){return 30}var a=30+(Math.round(n/255)<<2|Math.round(r/255)<<1|Math.round(t/255));if(i===2){a+=60}return a};o.hsv.ansi16=function(e){return o.rgb.ansi16(o.hsv.rgb(e),e[2])};o.rgb.ansi256=function(e){var t=e[0];var r=e[1];var n=e[2];if(t===r&&r===n){if(t<8){return 16}if(t>248){return 231}return Math.round((t-8)/247*24)+232}var i=16+36*Math.round(t/255*5)+6*Math.round(r/255*5)+Math.round(n/255*5);return i};o.ansi16.rgb=function(e){var t=e%10;if(t===0||t===7){if(e>50){t+=3.5}t=t/10.5*255;return[t,t,t]}var r=(~~(e>50)+1)*.5;var n=(t&1)*r*255;var i=(t>>1&1)*r*255;var a=(t>>2&1)*r*255;return[n,i,a]};o.ansi256.rgb=function(e){if(e>=232){var t=(e-232)*10+8;return[t,t,t]}e-=16;var r;var n=Math.floor(e/36)/5*255;var i=Math.floor((r=e%36)/6)/5*255;var a=r%6/5*255;return[n,i,a]};o.rgb.hex=function(e){var t=((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255);var r=t.toString(16).toUpperCase();return"000000".substring(r.length)+r};o.hex.rgb=function(e){var t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t){return[0,0,0]}var r=t[0];if(t[0].length===3){r=r.split("").map(function(e){return e+e}).join("")}var n=parseInt(r,16);var i=n>>16&255;var a=n>>8&255;var o=n&255;return[i,a,o]};o.rgb.hcg=function(e){var t=e[0]/255;var r=e[1]/255;var n=e[2]/255;var i=Math.max(Math.max(t,r),n);var a=Math.min(Math.min(t,r),n);var o=i-a;var s;var c;if(o<1){s=a/(1-o)}else{s=0}if(o<=0){c=0}else if(i===t){c=(r-n)/o%6}else if(i===r){c=2+(n-t)/o}else{c=4+(t-r)/o+4}c/=6;c%=1;return[c*360,o*100,s*100]};o.hsl.hcg=function(e){var t=e[1]/100;var r=e[2]/100;var n=1;var i=0;if(r<.5){n=2*t*r}else{n=2*t*(1-r)}if(n<1){i=(r-.5*n)/(1-n)}return[e[0],n*100,i*100]};o.hsv.hcg=function(e){var t=e[1]/100;var r=e[2]/100;var n=t*r;var i=0;if(n<1){i=(r-n)/(1-n)}return[e[0],n*100,i*100]};o.hcg.rgb=function(e){var t=e[0]/360;var r=e[1]/100;var n=e[2]/100;if(r===0){return[n*255,n*255,n*255]}var i=[0,0,0];var a=t%1*6;var o=a%1;var s=1-o;var c=0;switch(Math.floor(a)){case 0:i[0]=1;i[1]=o;i[2]=0;break;case 1:i[0]=s;i[1]=1;i[2]=0;break;case 2:i[0]=0;i[1]=1;i[2]=o;break;case 3:i[0]=0;i[1]=s;i[2]=1;break;case 4:i[0]=o;i[1]=0;i[2]=1;break;default:i[0]=1;i[1]=0;i[2]=s}c=(1-r)*n;return[(r*i[0]+c)*255,(r*i[1]+c)*255,(r*i[2]+c)*255]};o.hcg.hsv=function(e){var t=e[1]/100;var r=e[2]/100;var n=t+r*(1-t);var i=0;if(n>0){i=t/n}return[e[0],i*100,n*100]};o.hcg.hsl=function(e){var t=e[1]/100;var r=e[2]/100;var n=r*(1-t)+.5*t;var i=0;if(n>0&&n<.5){i=t/(2*n)}else if(n>=.5&&n<1){i=t/(2*(1-n))}return[e[0],i*100,n*100]};o.hcg.hwb=function(e){var t=e[1]/100;var r=e[2]/100;var n=t+r*(1-t);return[e[0],(n-t)*100,(1-n)*100]};o.hwb.hcg=function(e){var t=e[1]/100;var r=e[2]/100;var n=1-r;var i=n-t;var a=0;if(i<1){a=(n-i)/(1-i)}return[e[0],i*100,a*100]};o.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};o.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};o.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};o.gray.hsl=o.gray.hsv=function(e){return[0,0,e[0]]};o.gray.hwb=function(e){return[0,100,e[0]]};o.gray.cmyk=function(e){return[0,0,0,e[0]]};o.gray.lab=function(e){return[e[0],0,0]};o.gray.hex=function(e){var t=Math.round(e[0]/100*255)&255;var r=(t<<16)+(t<<8)+t;var n=r.toString(16).toUpperCase();return"000000".substring(n.length)+n};o.rgb.gray=function(e){var t=(e[0]+e[1]+e[2])/3;return[t/255*100]}},8215:(e,t,r)=>{var n=r(3644);var i=r(2076);var a={};var o=Object.keys(n);function wrapRaw(e){var t=function(t){if(t===undefined||t===null){return t}if(arguments.length>1){t=Array.prototype.slice.call(arguments)}return e(t)};if("conversion"in e){t.conversion=e.conversion}return t}function wrapRounded(e){var t=function(t){if(t===undefined||t===null){return t}if(arguments.length>1){t=Array.prototype.slice.call(arguments)}var r=e(t);if(typeof r==="object"){for(var n=r.length,i=0;i<n;i++){r[i]=Math.round(r[i])}}return r};if("conversion"in e){t.conversion=e.conversion}return t}o.forEach(function(e){a[e]={};Object.defineProperty(a[e],"channels",{value:n[e].channels});Object.defineProperty(a[e],"labels",{value:n[e].labels});var t=i(e);var r=Object.keys(t);r.forEach(function(r){var n=t[r];a[e][r]=wrapRounded(n);a[e][r].raw=wrapRaw(n)})});e.exports=a},9187:e=>{"use strict";e.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},2076:(e,t,r)=>{var n=r(3644);function buildGraph(){var e={};var t=Object.keys(n);for(var r=t.length,i=0;i<r;i++){e[t[i]]={distance:-1,parent:null}}return e}function deriveBFS(e){var t=buildGraph();var r=[e];t[e].distance=0;while(r.length){var i=r.pop();var a=Object.keys(n[i]);for(var o=a.length,s=0;s<o;s++){var c=a[s];var u=t[c];if(u.distance===-1){u.distance=t[i].distance+1;u.parent=i;r.unshift(c)}}}return t}function link(e,t){return function(r){return t(e(r))}}function wrapConversion(e,t){var r=[t[e].parent,e];var i=n[t[e].parent][e];var a=t[e].parent;while(t[a].parent){r.unshift(t[a].parent);i=link(n[t[a].parent][a],i);a=t[a].parent}i.conversion=r;return i}e.exports=function(e){var t=deriveBFS(e);var r={};var n=Object.keys(t);for(var i=n.length,a=0;a<i;a++){var o=n[a];var s=t[o];if(s.parent===null){continue}r[o]=wrapConversion(o,t)}return r}},2045:e=>{if(true){e.exports=Emitter}function Emitter(e){if(e)return mixin(e)}function mixin(e){for(var t in Emitter.prototype){e[t]=Emitter.prototype[t]}return e}Emitter.prototype.on=Emitter.prototype.addEventListener=function(e,t){this._callbacks=this._callbacks||{};(this._callbacks["$"+e]=this._callbacks["$"+e]||[]).push(t);return this};Emitter.prototype.once=function(e,t){function on(){this.off(e,on);t.apply(this,arguments)}on.fn=t;this.on(e,on);return this};Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(e,t){this._callbacks=this._callbacks||{};if(0==arguments.length){this._callbacks={};return this}var r=this._callbacks["$"+e];if(!r)return this;if(1==arguments.length){delete this._callbacks["$"+e];return this}var n;for(var i=0;i<r.length;i++){n=r[i];if(n===t||n.fn===t){r.splice(i,1);break}}return this};Emitter.prototype.emit=function(e){this._callbacks=this._callbacks||{};var t=[].slice.call(arguments,1),r=this._callbacks["$"+e];if(r){r=r.slice(0);for(var n=0,i=r.length;n<i;++n){r[n].apply(this,t)}}return this};Emitter.prototype.listeners=function(e){this._callbacks=this._callbacks||{};return this._callbacks["$"+e]||[]};Emitter.prototype.hasListeners=function(e){return!!this.listeners(e).length}},5320:e=>{"use strict";e.exports=function copyDescriptor(e,t,r,n){if(!isObject(t)&&typeof t!=="function"){n=r;r=t;t=e}if(!isObject(e)&&typeof e!=="function"){throw new TypeError("expected the first argument to be an object")}if(!isObject(t)&&typeof t!=="function"){throw new TypeError("expected provider to be an object")}if(typeof n!=="string"){n=r}if(typeof r!=="string"){throw new TypeError("expected key to be a string")}if(!(r in t)){throw new Error('property "'+r+'" does not exist')}var i=Object.getOwnPropertyDescriptor(t,r);if(i)Object.defineProperty(e,n,i)};function isObject(e){return{}.toString.call(e)==="[object Object]"}},535:e=>{"use strict";var t="%[a-f0-9]{2}";var r=new RegExp(t,"gi");var n=new RegExp("("+t+")+","gi");function decodeComponents(e,t){try{return decodeURIComponent(e.join(""))}catch(e){}if(e.length===1){return e}t=t||1;var r=e.slice(0,t);var n=e.slice(t);return Array.prototype.concat.call([],decodeComponents(r),decodeComponents(n))}function decode(e){try{return decodeURIComponent(e)}catch(i){var t=e.match(r);for(var n=1;n<t.length;n++){e=decodeComponents(t,n).join("");t=e.match(r)}return e}}function customDecodeURIComponent(e){var t={"%FE%FF":"<22><>","%FF%FE":"<22><>"};var r=n.exec(e);while(r){try{t[r[0]]=decodeURIComponent(r[0])}catch(e){var i=decode(r[0]);if(i!==r[0]){t[r[0]]=i}}r=n.exec(e)}t["%C2"]="<22>";var a=Object.keys(t);for(var o=0;o<a.length;o++){var s=a[o];e=e.replace(new RegExp(s,"g"),t[s])}return e}e.exports=function(e){if(typeof e!=="string"){throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`")}try{e=e.replace(/\+/g," ");return decodeURIComponent(e)}catch(t){return customDecodeURIComponent(e)}}},4728:(e,t,r)=>{"use strict";var n=r(6203);e.exports=function defineProperty(e,t,r){if(typeof e!=="object"&&typeof e!=="function"){throw new TypeError("expected an object or function.")}if(typeof t!=="string"){throw new TypeError("expected `prop` to be a string.")}if(n(r)&&("set"in r||"get"in r)){return Object.defineProperty(e,t,r)}return Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}},6398:(e,t,r)=>{"use strict";var n=r(2585);var i={get:"function",set:"function",configurable:"boolean",enumerable:"boolean"};function isAccessorDescriptor(e,t){if(typeof t==="string"){var r=Object.getOwnPropertyDescriptor(e,t);return typeof r!=="undefined"}if(n(e)!=="object"){return false}if(has(e,"value")||has(e,"writable")){return false}if(!has(e,"get")||typeof e.get!=="function"){return false}if(has(e,"set")&&typeof e[a]!=="function"&&typeof e[a]!=="undefined"){return false}for(var a in e){if(!i.hasOwnProperty(a)){continue}if(n(e[a])===i[a]){continue}if(typeof e[a]!=="undefined"){return false}}return true}function has(e,t){return{}.hasOwnProperty.call(e,t)}e.exports=isAccessorDescriptor},2585:(e,t,r)=>{var n=r(4950);var i=Object.prototype.toString;e.exports=function kindOf(e){if(typeof e==="undefined"){return"undefined"}if(e===null){return"null"}if(e===true||e===false||e instanceof Boolean){return"boolean"}if(typeof e==="string"||e instanceof String){return"string"}if(typeof e==="number"||e instanceof Number){return"number"}if(typeof e==="function"||e instanceof Function){return"function"}if(typeof Array.isArray!=="undefined"&&Array.isArray(e)){return"array"}if(e instanceof RegExp){return"regexp"}if(e instanceof Date){return"date"}var t=i.call(e);if(t==="[object RegExp]"){return"regexp"}if(t==="[object Date]"){return"date"}if(t==="[object Arguments]"){return"arguments"}if(t==="[object Error]"){return"error"}if(n(e)){return"buffer"}if(t==="[object Set]"){return"set"}if(t==="[object WeakSet]"){return"weakset"}if(t==="[object Map]"){return"map"}if(t==="[object WeakMap]"){return"weakmap"}if(t==="[object Symbol]"){return"symbol"}if(t==="[object Int8Array]"){return"int8array"}if(t==="[object Uint8Array]"){return"uint8array"}if(t==="[object Uint8ClampedArray]"){return"uint8clampedarray"}if(t==="[object Int16Array]"){return"int16array"}if(t==="[object Uint16Array]"){return"uint16array"}if(t==="[object Int32Array]"){return"int32array"}if(t==="[object Uint32Array]"){return"uint32array"}if(t==="[object Float32Array]"){return"float32array"}if(t==="[object Float64Array]"){return"float64array"}return"object"}},7725:(e,t,r)=>{"use strict";var n=r(5060);var i={configurable:"boolean",enumerable:"boolean",writable:"boolean"};function isDataDescriptor(e,t){if(n(e)!=="object"){return false}if(typeof t==="string"){var r=Object.getOwnPropertyDescriptor(e,t);return typeof r!=="undefined"}if(!("value"in e)&&!("writable"in e)){return false}for(var a in e){if(a==="value")continue;if(!i.hasOwnProperty(a)){continue}if(n(e[a])===i[a]){continue}if(typeof e[a]!=="undefined"){return false}}return true}e.exports=isDataDescriptor},5060:(e,t,r)=>{var n=r(4950);var i=Object.prototype.toString;e.exports=function kindOf(e){if(typeof e==="undefined"){return"undefined"}if(e===null){return"null"}if(e===true||e===false||e instanceof Boolean){return"boolean"}if(typeof e==="string"||e instanceof String){return"string"}if(typeof e==="number"||e instanceof Number){return"number"}if(typeof e==="function"||e instanceof Function){return"function"}if(typeof Array.isArray!=="undefined"&&Array.isArray(e)){return"array"}if(e instanceof RegExp){return"regexp"}if(e instanceof Date){return"date"}var t=i.call(e);if(t==="[object RegExp]"){return"regexp"}if(t==="[object Date]"){return"date"}if(t==="[object Arguments]"){return"arguments"}if(t==="[object Error]"){return"error"}if(n(e)){return"buffer"}if(t==="[object Set]"){return"set"}if(t==="[object WeakSet]"){return"weakset"}if(t==="[object Map]"){return"map"}if(t==="[object WeakMap]"){return"weakmap"}if(t==="[object Symbol]"){return"symbol"}if(t==="[object Int8Array]"){return"int8array"}if(t==="[object Uint8Array]"){return"uint8array"}if(t==="[object Uint8ClampedArray]"){return"uint8clampedarray"}if(t==="[object Int16Array]"){return"int16array"}if(t==="[object Uint16Array]"){return"uint16array"}if(t==="[object Int32Array]"){return"int32array"}if(t==="[object Uint32Array]"){return"uint32array"}if(t==="[object Float32Array]"){return"float32array"}if(t==="[object Float64Array]"){return"float64array"}return"object"}},6203:(e,t,r)=>{"use strict";var n=r(1284);var i=r(6398);var a=r(7725);e.exports=function isDescriptor(e,t){if(n(e)!=="object"){return false}if("get"in e){return i(e,t)}return a(e,t)}},1284:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){var r=typeof e;if(r==="undefined"){return"undefined"}if(e===null){return"null"}if(e===true||e===false||e instanceof Boolean){return"boolean"}if(r==="string"||e instanceof String){return"string"}if(r==="number"||e instanceof Number){return"number"}if(r==="function"||e instanceof Function){if(typeof e.constructor.name!=="undefined"&&e.constructor.name.slice(0,9)==="Generator"){return"generatorfunction"}return"function"}if(typeof Array.isArray!=="undefined"&&Array.isArray(e)){return"array"}if(e instanceof RegExp){return"regexp"}if(e instanceof Date){return"date"}r=t.call(e);if(r==="[object RegExp]"){return"regexp"}if(r==="[object Date]"){return"date"}if(r==="[object Arguments]"){return"arguments"}if(r==="[object Error]"){return"error"}if(r==="[object Promise]"){return"promise"}if(isBuffer(e)){return"buffer"}if(r==="[object Set]"){return"set"}if(r==="[object WeakSet]"){return"weakset"}if(r==="[object Map]"){return"map"}if(r==="[object WeakMap]"){return"weakmap"}if(r==="[object Symbol]"){return"symbol"}if(r==="[object Map Iterator]"){return"mapiterator"}if(r==="[object Set Iterator]"){return"setiterator"}if(r==="[object String Iterator]"){return"stringiterator"}if(r==="[object Array Iterator]"){return"arrayiterator"}if(r==="[object Int8Array]"){return"int8array"}if(r==="[object Uint8Array]"){return"uint8array"}if(r==="[object Uint8ClampedArray]"){return"uint8clampedarray"}if(r==="[object Int16Array]"){return"int16array"}if(r==="[object Uint16Array]"){return"uint16array"}if(r==="[object Int32Array]"){return"int32array"}if(r==="[object Uint32Array]"){return"uint32array"}if(r==="[object Float32Array]"){return"float32array"}if(r==="[object Float64Array]"){return"float64array"}return"object"};function isBuffer(e){return e.constructor&&typeof e.constructor.isBuffer==="function"&&e.constructor.isBuffer(e)}},1356:e=>{e.exports=["🀄","🃏","🅰","🅱","🅾","🅿","🆎","🆑","🆒","🆓","🆔","🆕","🆖","🆗","🆘","🆙","🆚","🇦🇨","🇦🇩","🇦🇪","🇦🇫","🇦🇬","🇦🇮","🇦🇱","🇦🇲","🇦🇴","🇦🇶","🇦🇷","🇦🇸","🇦🇹","🇦🇺","🇦🇼","🇦🇽","🇦🇿","🇦","🇧🇦","🇧🇧","🇧🇩","🇧🇪","🇧🇫","🇧🇬","🇧🇭","🇧🇮","🇧🇯","🇧🇱","🇧🇲","🇧🇳","🇧🇴","🇧🇶","🇧🇷","🇧🇸","🇧🇹","🇧🇻","🇧🇼","🇧🇾","🇧🇿","🇧","🇨🇦","🇨🇨","🇨🇩","🇨🇫","🇨🇬","🇨🇭","🇨🇮","🇨🇰","🇨🇱","🇨🇲","🇨🇳","🇨🇴","🇨🇵","🇨🇷","🇨🇺","🇨🇻","🇨🇼","🇨🇽","🇨🇾","🇨🇿","🇨","🇩🇪","🇩🇬","🇩🇯","🇩🇰","🇩🇲","🇩🇴","🇩🇿","🇩","🇪🇦","🇪🇨","🇪🇪","🇪🇬","🇪🇭","🇪🇷","🇪🇸","🇪🇹","🇪🇺","🇪","🇫🇮","🇫🇯","🇫🇰","🇫🇲","🇫🇴","🇫🇷","🇫","🇬🇦","🇬🇧","🇬🇩","🇬🇪","🇬🇫","🇬🇬","🇬🇭","🇬🇮","🇬🇱","🇬🇲","🇬🇳","🇬🇵","🇬🇶","🇬🇷","🇬🇸","🇬🇹","🇬🇺","🇬🇼","🇬🇾","🇬","🇭🇰","🇭🇲","🇭🇳","🇭🇷","🇭🇹","🇭🇺","🇭","🇮🇨","🇮🇩","🇮🇪","🇮🇱","🇮🇲","🇮🇳","🇮🇴","🇮🇶","🇮🇷","🇮🇸","🇮🇹","🇮","🇯🇪","🇯🇲","🇯🇴","🇯🇵","🇯","🇰🇪","🇰🇬","🇰🇭","🇰🇮","🇰🇲","🇰🇳","🇰🇵","🇰🇷","🇰🇼","🇰🇾","🇰🇿","🇰","🇱🇦","🇱🇧","🇱🇨","🇱🇮","🇱🇰","🇱🇷","🇱🇸","🇱🇹","🇱🇺","🇱🇻","🇱🇾","🇱","🇲🇦","🇲🇨","🇲🇩","🇲🇪","🇲🇫","🇲🇬","🇲🇭","🇲🇰","🇲🇱","🇲🇲","🇲🇳","🇲🇴","🇲🇵","🇲🇶","🇲🇷","🇲🇸","🇲🇹","🇲🇺","🇲🇻","🇲🇼","🇲🇽","🇲🇾","🇲🇿","🇲","🇳🇦","🇳🇨","🇳🇪","🇳🇫","🇳🇬","🇳🇮","🇳🇱","🇳🇴","🇳🇵","🇳🇷","🇳🇺","🇳🇿","🇳","🇴🇲","🇴","🇵🇦","🇵🇪","🇵🇫","🇵🇬","🇵🇭","🇵🇰","🇵🇱","🇵🇲","🇵🇳","🇵🇷","🇵🇸","🇵🇹","🇵🇼","🇵🇾","🇵","🇶🇦","🇶","🇷🇪","🇷🇴","🇷🇸","🇷🇺","🇷🇼","🇷","🇸🇦","🇸🇧","🇸🇨","🇸🇩","🇸🇪","🇸🇬","🇸🇭","🇸🇮","🇸🇯","🇸🇰","🇸🇱","🇸🇲","🇸🇳","🇸🇴","🇸🇷","🇸🇸","🇸🇹","🇸🇻","🇸🇽","🇸🇾","🇸🇿","🇸","🇹🇦","🇹🇨","🇹🇩","🇹🇫","🇹🇬","🇹🇭","🇹🇯","🇹🇰","🇹🇱","🇹🇲","🇹🇳","🇹🇴","🇹🇷","🇹🇹","🇹🇻","🇹🇼","🇹🇿","🇹","🇺🇦","🇺🇬","🇺🇲","🇺🇳","🇺🇸","🇺🇾","🇺🇿","🇺","🇻🇦","🇻🇨","🇻🇪","🇻🇬","🇻🇮","🇻🇳","🇻🇺","🇻","🇼🇫","🇼🇸","🇼","🇽🇰","🇽","🇾🇪","🇾🇹","🇾","🇿🇦","🇿🇲","🇿🇼","🇿","🈁","🈂","🈚","🈯","🈲","🈳","🈴","🈵","🈶","🈷","🈸","🈹","🈺","🉐","🉑","🌀","🌁","🌂","🌃","🌄","🌅","🌆","🌇","🌈","🌉","🌊","🌋","🌌","🌍","🌎","🌏","🌐","🌑","🌒","🌓","🌔","🌕","🌖","🌗","🌘","🌙","🌚","🌛","🌜","🌝","🌞","🌟","🌠","🌡","🌤","🌥","🌦","🌧","🌨","🌩","🌪","🌫","🌬","🌭","🌮","🌯","🌰","🌱","🌲","🌳","🌴","🌵","🌶","🌷","🌸","🌹","🌺","🌻","🌼","🌽","🌾","🌿","🍀","🍁","🍂","🍃","🍄","🍅","🍆","🍇","🍈","🍉","🍊","🍋","🍌","🍍","🍎","🍏","🍐","🍑","🍒","🍓","🍔","🍕","🍖","🍗","🍘","🍙","🍚","🍛","🍜","🍝","🍞","🍟","🍠","🍡","🍢","🍣","🍤","🍥","🍦","🍧","🍨","🍩","🍪","🍫","🍬","🍭","🍮","🍯","🍰","🍱","🍲","🍳","🍴","🍵","🍶","🍷","🍸","🍹","🍺","🍻","🍼","🍽","🍾","🍿","🎀","🎁","🎂","🎃","🎄","🎅🏻","🎅🏼","🎅🏽","🎅🏾","🎅🏿","🎅","🎆","🎇","🎈","🎉","🎊","🎋","🎌","🎍","🎎","🎏","🎐","🎑","🎒","🎓","🎖","🎗","🎙","🎚","🎛","🎞","🎟","🎠","🎡","🎢","🎣","🎤","🎥","🎦","🎧","🎨","🎩","🎪","🎫","🎬","🎭","🎮","🎯","🎰","🎱","🎲","🎳","🎴","🎵","🎶","🎷","🎸","🎹","🎺","🎻","🎼","🎽","🎾","🎿","🏀","🏁","🏂🏻","🏂🏼","🏂🏽","🏂🏾","🏂🏿","🏂","🏃🏻‍♀️","🏃🏻‍♂️","🏃🏻","🏃🏼‍♀️","🏃🏼‍♂️","🏃🏼","🏃🏽‍♀️","🏃🏽‍♂️","🏃🏽","🏃🏾‍♀️","🏃🏾‍♂️","🏃🏾","🏃🏿‍♀️","🏃🏿‍♂️","🏃🏿","🏃‍♀️","🏃‍♂️","🏃","🏄🏻‍♀️","🏄🏻‍♂️","🏄🏻","🏄🏼‍♀️","🏄🏼‍♂️","🏄🏼","🏄🏽‍♀️","🏄🏽‍♂️","🏄🏽","🏄🏾‍♀️","🏄🏾‍♂️","🏄🏾","🏄🏿‍♀️","🏄🏿‍♂️","🏄🏿","🏄‍♀️","🏄‍♂️","🏄","🏅","🏆","🏇🏻","🏇🏼","🏇🏽","🏇🏾","🏇🏿","🏇","🏈","🏉","🏊🏻‍♀️","🏊🏻‍♂️","🏊🏻","🏊🏼‍♀️","🏊🏼‍♂️","🏊🏼","🏊🏽‍♀️","🏊🏽‍♂️","🏊🏽","🏊🏾‍♀️","🏊🏾‍♂️","🏊🏾","🏊🏿‍♀️","🏊🏿‍♂️","🏊🏿","🏊‍♀️","🏊‍♂️","🏊","🏋🏻‍♀️","🏋🏻‍♂️","🏋🏻","🏋🏼‍♀️","🏋🏼‍♂️","🏋🏼","🏋🏽‍♀️","🏋🏽‍♂️","🏋🏽","🏋🏾‍♀️","🏋🏾‍♂️","🏋🏾","🏋🏿‍♀️","🏋🏿‍♂️","🏋🏿","🏋️‍♀️","🏋️‍♂️","🏋","🏌🏻‍♀️","🏌🏻‍♂️","🏌🏻","🏌🏼‍♀️","🏌🏼‍♂️","🏌🏼","🏌🏽‍♀️","🏌🏽‍♂️","🏌🏽","🏌🏾‍♀️","🏌🏾‍♂️","🏌🏾","🏌🏿‍♀️","🏌🏿‍♂️","🏌🏿","🏌️‍♀️","🏌️‍♂️","🏌","🏍","🏎","🏏","🏐","🏑","🏒","🏓","🏔","🏕","🏖","🏗","🏘","🏙","🏚","🏛","🏜","🏝","🏞","🏟","🏠","🏡","🏢","🏣","🏤","🏥","🏦","🏧","🏨","🏩","🏪","🏫","🏬","🏭","🏮","🏯","🏰","🏳️‍🌈","🏳","🏴‍☠️","🏴","🏵","🏷","🏸","🏹","🏺","🏻","🏼","🏽","🏾","🏿","🐀","🐁","🐂","🐃","🐄","🐅","🐆","🐇","🐈","🐉","🐊","🐋","🐌","🐍","🐎","🐏","🐐","🐑","🐒","🐓","🐔","🐕","🐖","🐗","🐘","🐙","🐚","🐛","🐜","🐝","🐞","🐟","🐠","🐡","🐢","🐣","🐤","🐥","🐦","🐧","🐨","🐩","🐪","🐫","🐬","🐭","🐮","🐯","🐰","🐱","🐲","🐳","🐴","🐵","🐶","🐷","🐸","🐹","🐺","🐻","🐼","🐽","🐾","🐿","👀","👁‍🗨","👁","👂🏻","👂🏼","👂🏽","👂🏾","👂🏿","👂","👃🏻","👃🏼","👃🏽","👃🏾","👃🏿","👃","👄","👅","👆🏻","👆🏼","👆🏽","👆🏾","👆🏿","👆","👇🏻","👇🏼","👇🏽","👇🏾","👇🏿","👇","👈🏻","👈🏼","👈🏽","👈🏾","👈🏿","👈","👉🏻","👉🏼","👉🏽","👉🏾","👉🏿","👉","👊🏻","👊🏼","👊🏽","👊🏾","👊🏿","👊","👋🏻","👋🏼","👋🏽","👋🏾","👋🏿","👋","👌🏻","👌🏼","👌🏽","👌🏾","👌🏿","👌","👍🏻","👍🏼","👍🏽","👍🏾","👍🏿","👍","👎🏻","👎🏼","👎🏽","👎🏾","👎🏿","👎","👏🏻","👏🏼","👏🏽","👏🏾","👏🏿","👏","👐🏻","👐🏼","👐🏽","👐🏾","👐🏿","👐","👑","👒","👓","👔","👕","👖","👗","👘","👙","👚","👛","👜","👝","👞","👟","👠","👡","👢","👣","👤","👥","👦🏻","👦🏼","👦🏽","👦🏾","👦🏿","👦","👧🏻","👧🏼","👧🏽","👧🏾","👧🏿","👧","👨🏻‍🌾","👨🏻‍🍳","👨🏻‍🎓","👨🏻‍🎤","👨🏻‍🎨","👨🏻‍🏫","👨🏻‍🏭","👨🏻‍💻","👨🏻‍💼","👨🏻‍🔧","👨🏻‍🔬","👨🏻‍🚀","👨🏻‍🚒","👨🏻‍⚕️","👨🏻‍⚖️","👨🏻‍✈️","👨🏻","👨🏼‍🌾","👨🏼‍🍳","👨🏼‍🎓","👨🏼‍🎤","👨🏼‍🎨","👨🏼‍🏫","👨🏼‍🏭","👨🏼‍💻","👨🏼‍💼","👨🏼‍🔧","👨🏼‍🔬","👨🏼‍🚀","👨🏼‍🚒","👨🏼‍⚕️","👨🏼‍⚖️","👨🏼‍✈️","👨🏼","👨🏽‍🌾","👨🏽‍🍳","👨🏽‍🎓","👨🏽‍🎤","👨🏽‍🎨","👨🏽‍🏫","👨🏽‍🏭","👨🏽‍💻","👨🏽‍💼","👨🏽‍🔧","👨🏽‍🔬","👨🏽‍🚀","👨🏽‍🚒","👨🏽‍⚕️","👨🏽‍⚖️","👨🏽‍✈️","👨🏽","👨🏾‍🌾","👨🏾‍🍳","👨🏾‍🎓","👨🏾‍🎤","👨🏾‍🎨","👨🏾‍🏫","👨🏾‍🏭","👨🏾‍💻","👨🏾‍💼","👨🏾‍🔧","👨🏾‍🔬","👨🏾‍🚀","👨🏾‍🚒","👨🏾‍⚕️","👨🏾‍⚖️","👨🏾‍✈️","👨🏾","👨🏿‍🌾","👨🏿‍🍳","👨🏿‍🎓","👨🏿‍🎤","👨🏿‍🎨","👨🏿‍🏫","👨🏿‍🏭","👨🏿‍💻","👨🏿‍💼","👨🏿‍🔧","👨🏿‍🔬","👨🏿‍🚀","👨🏿‍🚒","👨🏿‍⚕️","👨🏿‍⚖️","👨🏿‍✈️","👨🏿","👨‍🌾","👨‍🍳","👨‍🎓","👨‍🎤","👨‍🎨","👨‍🏫","👨‍🏭","👨‍👦‍👦","👨‍👦","👨‍👧‍👦","👨‍👧‍👧","👨‍👧","👨‍👨‍👦‍👦","👨‍👨‍👦","👨‍👨‍👧‍👦","👨‍👨‍👧‍👧","👨‍👨‍👧","👨‍👩‍👦‍👦","👨‍👩‍👦","👨‍👩‍👧‍👦","👨‍👩‍👧‍👧","👨‍👩‍👧","👨‍💻","👨‍💼","👨‍🔧","👨‍🔬","👨‍🚀","👨‍🚒","👨‍⚕️","👨‍⚖️","👨‍✈️","👨‍❤️‍👨","👨‍❤️‍💋‍👨","👨","👩🏻‍🌾","👩🏻‍🍳","👩🏻‍🎓","👩🏻‍🎤","👩🏻‍🎨","👩🏻‍🏫","👩🏻‍🏭","👩🏻‍💻","👩🏻‍💼","👩🏻‍🔧","👩🏻‍🔬","👩🏻‍🚀","👩🏻‍🚒","👩🏻‍⚕️","👩🏻‍⚖️","👩🏻‍✈️","👩🏻","👩🏼‍🌾","👩🏼‍🍳","👩🏼‍🎓","👩🏼‍🎤","👩🏼‍🎨","👩🏼‍🏫","👩🏼‍🏭","👩🏼‍💻","👩🏼‍💼","👩🏼‍🔧","👩🏼‍🔬","👩🏼‍🚀","👩🏼‍🚒","👩🏼‍⚕️","👩🏼‍⚖️","👩🏼‍✈️","👩🏼","👩🏽‍🌾","👩🏽‍🍳","👩🏽‍🎓","👩🏽‍🎤","👩🏽‍🎨","👩🏽‍🏫","👩🏽‍🏭","👩🏽‍💻","👩🏽‍💼","👩🏽‍🔧","👩🏽‍🔬","👩🏽‍🚀","👩🏽‍🚒","👩🏽‍⚕️","👩🏽‍⚖️","👩🏽‍✈️","👩🏽","👩🏾‍🌾","👩🏾‍🍳","👩🏾‍🎓","👩🏾‍🎤","👩🏾‍🎨","👩🏾‍🏫","👩🏾‍🏭","👩🏾‍💻","👩🏾‍💼","👩🏾‍🔧","👩🏾‍🔬","👩🏾‍🚀","👩🏾‍🚒","👩🏾‍⚕️","👩🏾‍⚖️","👩🏾‍✈️","👩🏾","👩🏿‍🌾","👩🏿‍🍳","👩🏿‍🎓","👩🏿‍🎤","👩🏿‍🎨","👩🏿‍🏫","👩🏿‍🏭","👩🏿‍💻","👩🏿‍💼","👩🏿‍🔧","👩🏿‍🔬","👩🏿‍🚀","👩🏿‍🚒","👩🏿‍⚕️","👩🏿‍⚖️","👩🏿‍✈️","👩🏿","👩‍🌾","👩‍🍳","👩‍🎓","👩‍🎤","👩‍🎨","👩‍🏫","👩‍🏭","👩‍👦‍👦","👩‍👦","👩‍👧‍👦","👩‍👧‍👧","👩‍👧","👩‍👩‍👦‍👦","👩‍👩‍👦","👩‍👩‍👧‍👦","👩‍👩‍👧‍👧","👩‍👩‍👧","👩‍💻","👩‍💼","👩‍🔧","👩‍🔬","👩‍🚀","👩‍🚒","👩‍⚕️","👩‍⚖️","👩‍✈️","👩‍❤️‍👨","👩‍❤️‍👩","👩‍❤️‍💋‍👨","👩‍❤️‍💋‍👩","👩","👪🏻","👪🏼","👪🏽","👪🏾","👪🏿","👪","👫🏻","👫🏼","👫🏽","👫🏾","👫🏿","👫","👬🏻","👬🏼","👬🏽","👬🏾","👬🏿","👬","👭🏻","👭🏼","👭🏽","👭🏾","👭🏿","👭","👮🏻‍♀️","👮🏻‍♂️","👮🏻","👮🏼‍♀️","👮🏼‍♂️","👮🏼","👮🏽‍♀️","👮🏽‍♂️","👮🏽","👮🏾‍♀️","👮🏾‍♂️","👮🏾","👮🏿‍♀️","👮🏿‍♂️","👮🏿","👮‍♀️","👮‍♂️","👮","👯🏻‍♀️","👯🏻‍♂️","👯🏻","👯🏼‍♀️","👯🏼‍♂️","👯🏼","👯🏽‍♀️","👯🏽‍♂️","👯🏽","👯🏾‍♀️","👯🏾‍♂️","👯🏾","👯🏿‍♀️","👯🏿‍♂️","👯🏿","👯‍♀️","👯‍♂️","👯","👰🏻","👰🏼","👰🏽","👰🏾","👰🏿","👰","👱🏻‍♀️","👱🏻‍♂️","👱🏻","👱🏼‍♀️","👱🏼‍♂️","👱🏼","👱🏽‍♀️","👱🏽‍♂️","👱🏽","👱🏾‍♀️","👱🏾‍♂️","👱🏾","👱🏿‍♀️","👱🏿‍♂️","👱🏿","👱‍♀️","👱‍♂️","👱","👲🏻","👲🏼","👲🏽","👲🏾","👲🏿","👲","👳🏻‍♀️","👳🏻‍♂️","👳🏻","👳🏼‍♀️","👳🏼‍♂️","👳🏼","👳🏽‍♀️","👳🏽‍♂️","👳🏽","👳🏾‍♀️","👳🏾‍♂️","👳🏾","👳🏿‍♀️","👳🏿‍♂️","👳🏿","👳‍♀️","👳‍♂️","👳","👴🏻","👴🏼","👴🏽","👴🏾","👴🏿","👴","👵🏻","👵🏼","👵🏽","👵🏾","👵🏿","👵","👶🏻","👶🏼","👶🏽","👶🏾","👶🏿","👶","👷🏻‍♀️","👷🏻‍♂️","👷🏻","👷🏼‍♀️","👷🏼‍♂️","👷🏼","👷🏽‍♀️","👷🏽‍♂️","👷🏽","👷🏾‍♀️","👷🏾‍♂️","👷🏾","👷🏿‍♀️","👷🏿‍♂️","👷🏿","👷‍♀️","👷‍♂️","👷","👸🏻","👸🏼","👸🏽","👸🏾","👸🏿","👸","👹","👺","👻","👼🏻","👼🏼","👼🏽","👼🏾","👼🏿","👼","👽","👾","👿","💀","💁🏻‍♀️","💁🏻‍♂️","💁🏻","💁🏼‍♀️","💁🏼‍♂️","💁🏼","💁🏽‍♀️","💁🏽‍♂️","💁🏽","💁🏾‍♀️","💁🏾‍♂️","💁🏾","💁🏿‍♀️","💁🏿‍♂️","💁🏿","💁‍♀️","💁‍♂️","💁","💂🏻‍♀️","💂🏻‍♂️","💂🏻","💂🏼‍♀️","💂🏼‍♂️","💂🏼","💂🏽‍♀️","💂🏽‍♂️","💂🏽","💂🏾‍♀️","💂🏾‍♂️","💂🏾","💂🏿‍♀️","💂🏿‍♂️","💂🏿","💂‍♀️","💂‍♂️","💂","💃🏻","💃🏼","💃🏽","💃🏾","💃🏿","💃","💄","💅🏻","💅🏼","💅🏽","💅🏾","💅🏿","💅","💆🏻‍♀️","💆🏻‍♂️","💆🏻","💆🏼‍♀️","💆🏼‍♂️","💆🏼","💆🏽‍♀️","💆🏽‍♂️","💆🏽","💆🏾‍♀️","💆🏾‍♂️","💆🏾","💆🏿‍♀️","💆🏿‍♂️","💆🏿","💆‍♀️","💆‍♂️","💆","💇🏻‍♀️","💇🏻‍♂️","💇🏻","💇🏼‍♀️","💇🏼‍♂️","💇🏼","💇🏽‍♀️","💇🏽‍♂️","💇🏽","💇🏾‍♀️","💇🏾‍♂️","💇🏾","💇🏿‍♀️","💇🏿‍♂️","💇🏿","💇‍♀️","💇‍♂️","💇","💈","💉","💊","💋","💌","💍","💎","💏","💐","💑","💒","💓","💔","💕","💖","💗","💘","💙","💚","💛","💜","💝","💞","💟","💠","💡","💢","💣","💤","💥","💦","💧","💨","💩","💪🏻","💪🏼","💪🏽","💪🏾","💪🏿","💪","💫","💬","💭","💮","💯","💰","💱","💲","💳","💴","💵","💶","💷","💸","💹","💺","💻","💼","💽","💾","💿","📀","📁","📂","📃","📄","📅","📆","📇","📈","📉","📊","📋","📌","📍","📎","📏","📐","📑","📒","📓","📔","📕","📖","📗","📘","📙","📚","📛","📜","📝","📞","📟","📠","📡","📢","📣","📤","📥","📦","📧","📨","📩","📪","📫","📬","📭","📮","📯","📰","📱","📲","📳","📴","📵","📶","📷","📸","📹","📺","📻","📼","📽","📿","🔀","🔁","🔂","🔃","🔄","🔅","🔆","🔇","🔈","🔉","🔊","🔋","🔌","🔍","🔎","🔏","🔐","🔑","🔒","🔓","🔔","🔕","🔖","🔗","🔘","🔙","🔚","🔛","🔜","🔝","🔞","🔟","🔠","🔡","🔢","🔣","🔤","🔥","🔦","🔧","🔨","🔩","🔪","🔫","🔬","🔭","🔮","🔯","🔰","🔱","🔲","🔳","🔴","🔵","🔶","🔷","🔸","🔹","🔺","🔻","🔼","🔽","🕉","🕊","🕋","🕌","🕍","🕎","🕐","🕑","🕒","🕓","🕔","🕕","🕖","🕗","🕘","🕙","🕚","🕛","🕜","🕝","🕞","🕟","🕠","🕡","🕢","🕣","🕤","🕥","🕦","🕧","🕯","🕰","🕳","🕴🏻","🕴🏼","🕴🏽","🕴🏾","🕴🏿","🕴","🕵🏻‍♀️","🕵🏻‍♂️","🕵🏻","🕵🏼‍♀️","🕵🏼‍♂️","🕵🏼","🕵🏽‍♀️","🕵🏽‍♂️","🕵🏽","🕵🏾‍♀️","🕵🏾‍♂️","🕵🏾","🕵🏿‍♀️","🕵🏿‍♂️","🕵🏿","🕵️‍♀️","🕵️‍♂️","🕵","🕶","🕷","🕸","🕹","🕺🏻","🕺🏼","🕺🏽","🕺🏾","🕺🏿","🕺","🖇","🖊","🖋","🖌","🖍","🖐🏻","🖐🏼","🖐🏽","🖐🏾","🖐🏿","🖐","🖕🏻","🖕🏼","🖕🏽","🖕🏾","🖕🏿","🖕","🖖🏻","🖖🏼","🖖🏽","🖖🏾","🖖🏿","🖖","🖤","🖥","🖨","🖱","🖲","🖼","🗂","🗃","🗄","🗑","🗒","🗓","🗜","🗝","🗞","🗡","🗣","🗨","🗯","🗳","🗺","🗻","🗼","🗽","🗾","🗿","😀","😁","😂","😃","😄","😅","😆","😇","😈","😉","😊","😋","😌","😍","😎","😏","😐","😑","😒","😓","😔","😕","😖","😗","😘","😙","😚","😛","😜","😝","😞","😟","😠","😡","😢","😣","😤","😥","😦","😧","😨","😩","😪","😫","😬","😭","😮","😯","😰","😱","😲","😳","😴","😵","😶","😷","😸","😹","😺","😻","😼","😽","😾","😿","🙀","🙁","🙂","🙃","🙄","🙅🏻‍♀️","🙅🏻‍♂️","🙅🏻","🙅🏼‍♀️","🙅🏼‍♂️","🙅🏼","🙅🏽‍♀️","🙅🏽‍♂️","🙅🏽","🙅🏾‍♀️","🙅🏾‍♂️","🙅🏾","🙅🏿‍♀️","🙅🏿‍♂️","🙅🏿","🙅‍♀️","🙅‍♂️","🙅","🙆🏻‍♀️","🙆🏻‍♂️","🙆🏻","🙆🏼‍♀️","🙆🏼‍♂️","🙆🏼","🙆🏽‍♀️","🙆🏽‍♂️","🙆🏽","🙆🏾‍♀️","🙆🏾‍♂️","🙆🏾","🙆🏿‍♀️","🙆🏿‍♂️","🙆🏿","🙆‍♀️","🙆‍♂️","🙆","🙇🏻‍♀️","🙇🏻‍♂️","🙇🏻","🙇🏼‍♀️","🙇🏼‍♂️","🙇🏼","🙇🏽‍♀️","🙇🏽‍♂️","🙇🏽","🙇🏾‍♀️","🙇🏾‍♂️","🙇🏾","🙇🏿‍♀️","🙇🏿‍♂️","🙇🏿","🙇‍♀️","🙇‍♂️","🙇","🙈","🙉","🙊","🙋🏻‍♀️","🙋🏻‍♂️","🙋🏻","🙋🏼‍♀️","🙋🏼‍♂️","🙋🏼","🙋🏽‍♀️","🙋🏽‍♂️","🙋🏽","🙋🏾‍♀️","🙋🏾‍♂️","🙋🏾","🙋🏿‍♀️","🙋🏿‍♂️","🙋🏿","🙋‍♀️","🙋‍♂️","🙋","🙌🏻","🙌🏼","🙌🏽","🙌🏾","🙌🏿","🙌","🙍🏻‍♀️","🙍🏻‍♂️","🙍🏻","🙍🏼‍♀️","🙍🏼‍♂️","🙍🏼","🙍🏽‍♀️","🙍🏽‍♂️","🙍🏽","🙍🏾‍♀️","🙍🏾‍♂️","🙍🏾","🙍🏿‍♀️","🙍🏿‍♂️","🙍🏿","🙍‍♀️","🙍‍♂️","🙍","🙎🏻‍♀️","🙎🏻‍♂️","🙎🏻","🙎🏼‍♀️","🙎🏼‍♂️","🙎🏼","🙎🏽‍♀️","🙎🏽‍♂️","🙎🏽","🙎🏾‍♀️","🙎🏾‍♂️","🙎🏾","🙎🏿‍♀️","🙎🏿‍♂️","🙎🏿","🙎‍♀️","🙎‍♂️","🙎","🙏🏻","🙏🏼","🙏🏽","🙏🏾","🙏🏿","🙏","🚀","🚁","🚂","🚃","🚄","🚅","🚆","🚇","🚈","🚉","🚊","🚋","🚌","🚍","🚎","🚏","🚐","🚑","🚒","🚓","🚔","🚕","🚖","🚗","🚘","🚙","🚚","🚛","🚜","🚝","🚞","🚟","🚠","🚡","🚢","🚣🏻‍♀️","🚣🏻‍♂️","🚣🏻","🚣🏼‍♀️","🚣🏼‍♂️","🚣🏼","🚣🏽‍♀️","🚣🏽‍♂️","🚣🏽","🚣🏾‍♀️","🚣🏾‍♂️","🚣🏾","🚣🏿‍♀️","🚣🏿‍♂️","🚣🏿","🚣‍♀️","🚣‍♂️","🚣","🚤","🚥","🚦","🚧","🚨","🚩","🚪","🚫","🚬","🚭","🚮","🚯","🚰","🚱","🚲","🚳","🚴🏻‍♀️","🚴🏻‍♂️","🚴🏻","🚴🏼‍♀️","🚴🏼‍♂️","🚴🏼","🚴🏽‍♀️","🚴🏽‍♂️","🚴🏽","🚴🏾‍♀️","🚴🏾‍♂️","🚴🏾","🚴🏿‍♀️","🚴🏿‍♂️","🚴🏿","🚴‍♀️","🚴‍♂️","🚴","🚵🏻‍♀️","🚵🏻‍♂️","🚵🏻","🚵🏼‍♀️","🚵🏼‍♂️","🚵🏼","🚵🏽‍♀️","🚵🏽‍♂️","🚵🏽","🚵🏾‍♀️","🚵🏾‍♂️","🚵🏾","🚵🏿‍♀️","🚵🏿‍♂️","🚵🏿","🚵‍♀️","🚵‍♂️","🚵","🚶🏻‍♀️","🚶🏻‍♂️","🚶🏻","🚶🏼‍♀️","🚶🏼‍♂️","🚶🏼","🚶🏽‍♀️","🚶🏽‍♂️","🚶🏽","🚶🏾‍♀️","🚶🏾‍♂️","🚶🏾","🚶🏿‍♀️","🚶🏿‍♂️","🚶🏿","🚶‍♀️","🚶‍♂️","🚶","🚷","🚸","🚹","🚺","🚻","🚼","🚽","🚾","🚿","🛀🏻","🛀🏼","🛀🏽","🛀🏾","🛀🏿","🛀","🛁","🛂","🛃","🛄","🛅","🛋","🛌🏻","🛌🏼","🛌🏽","🛌🏾","🛌🏿","🛌","🛍","🛎","🛏","🛐","🛑","🛒","🛠","🛡","🛢","🛣","🛤","🛥","🛩","🛫","🛬","🛰","🛳","🛴","🛵","🛶","🤐","🤑","🤒","🤓","🤔","🤕","🤖","🤗","🤘🏻","🤘🏼","🤘🏽","🤘🏾","🤘🏿","🤘","🤙🏻","🤙🏼","🤙🏽","🤙🏾","🤙🏿","🤙","🤚🏻","🤚🏼","🤚🏽","🤚🏾","🤚🏿","🤚","🤛🏻","🤛🏼","🤛🏽","🤛🏾","🤛🏿","🤛","🤜🏻","🤜🏼","🤜🏽","🤜🏾","🤜🏿","🤜","🤝🏻","🤝🏼","🤝🏽","🤝🏾","🤝🏿","🤝","🤞🏻","🤞🏼","🤞🏽","🤞🏾","🤞🏿","🤞","🤠","🤡","🤢","🤣","🤤","🤥","🤦🏻‍♀️","🤦🏻‍♂️","🤦🏻","🤦🏼‍♀️","🤦🏼‍♂️","🤦🏼","🤦🏽‍♀️","🤦🏽‍♂️","🤦🏽","🤦🏾‍♀️","🤦🏾‍♂️","🤦🏾","🤦🏿‍♀️","🤦🏿‍♂️","🤦🏿","🤦‍♀️","🤦‍♂️","🤦","🤧","🤰🏻","🤰🏼","🤰🏽","🤰🏾","🤰🏿","🤰","🤳🏻","🤳🏼","🤳🏽","🤳🏾","🤳🏿","🤳","🤴🏻","🤴🏼","🤴🏽","🤴🏾","🤴🏿","🤴","🤵🏻","🤵🏼","🤵🏽","🤵🏾","🤵🏿","🤵","🤶🏻","🤶🏼","🤶🏽","🤶🏾","🤶🏿","🤶","🤷🏻‍♀️","🤷🏻‍♂️","🤷🏻","🤷🏼‍♀️","🤷🏼‍♂️","🤷🏼","🤷🏽‍♀️","🤷🏽‍♂️","🤷🏽","🤷🏾‍♀️","🤷🏾‍♂️","🤷🏾","🤷🏿‍♀️","🤷🏿‍♂️","🤷🏿","🤷‍♀️","🤷‍♂️","🤷","🤸🏻‍♀️","🤸🏻‍♂️","🤸🏻","🤸🏼‍♀️","🤸🏼‍♂️","🤸🏼","🤸🏽‍♀️","🤸🏽‍♂️","🤸🏽","🤸🏾‍♀️","🤸🏾‍♂️","🤸🏾","🤸🏿‍♀️","🤸🏿‍♂️","🤸🏿","🤸‍♀️","🤸‍♂️","🤸","🤹🏻‍♀️","🤹🏻‍♂️","🤹🏻","🤹🏼‍♀️","🤹🏼‍♂️","🤹🏼","🤹🏽‍♀️","🤹🏽‍♂️","🤹🏽","🤹🏾‍♀️","🤹🏾‍♂️","🤹🏾","🤹🏿‍♀️","🤹🏿‍♂️","🤹🏿","🤹‍♀️","🤹‍♂️","🤹","🤺","🤼🏻‍♀️","🤼🏻‍♂️","🤼🏻","🤼🏼‍♀️","🤼🏼‍♂️","🤼🏼","🤼🏽‍♀️","🤼🏽‍♂️","🤼🏽","🤼🏾‍♀️","🤼🏾‍♂️","🤼🏾","🤼🏿‍♀️","🤼🏿‍♂️","🤼🏿","🤼‍♀️","🤼‍♂️","🤼","🤽🏻‍♀️","🤽🏻‍♂️","🤽🏻","🤽🏼‍♀️","🤽🏼‍♂️","🤽🏼","🤽🏽‍♀️","🤽🏽‍♂️","🤽🏽","🤽🏾‍♀️","🤽🏾‍♂️","🤽🏾","🤽🏿‍♀️","🤽🏿‍♂️","🤽🏿","🤽‍♀️","🤽‍♂️","🤽","🤾🏻‍♀️","🤾🏻‍♂️","🤾🏻","🤾🏼‍♀️","🤾🏼‍♂️","🤾🏼","🤾🏽‍♀️","🤾🏽‍♂️","🤾🏽","🤾🏾‍♀️","🤾🏾‍♂️","🤾🏾","🤾🏿‍♀️","🤾🏿‍♂️","🤾🏿","🤾‍♀️","🤾‍♂️","🤾","🥀","🥁","🥂","🥃","🥄","🥅","🥇","🥈","🥉","🥊","🥋","🥐","🥑","🥒","🥓","🥔","🥕","🥖","🥗","🥘","🥙","🥚","🥛","🥜","🥝","🥞","🦀","🦁","🦂","🦃","🦄","🦅","🦆","🦇","🦈","🦉","🦊","🦋","🦌","🦍","🦎","🦏","🦐","🦑","🧀","‼","⁉","™","","↔","↕","↖","↗","↘","↙","↩","↪","#⃣","⌚","⌛","⌨","⏏","⏩","⏪","⏫","⏬","⏭","⏮","⏯","⏰","⏱","⏲","⏳","⏸","⏹","⏺","Ⓜ","▪","▫","▶","◀","◻","◼","◽","◾","☀","☁","☂","☃","☄","☎","☑","☔","☕","☘","☝🏻","☝🏼","☝🏽","☝🏾","☝🏿","☝","☠","☢","☣","☦","☪","☮","☯","☸","☹","☺","♀","♂","♈","♉","♊","♋","♌","♍","♎","♏","♐","♑","♒","♓","♠","♣","♥","♦","♨","♻","♿","⚒","⚓","⚔","⚕","⚖","⚗","⚙","⚛","⚜","⚠","⚡","⚪","⚫","⚰","⚱","⚽","⚾","⛄","⛅","⛈","⛎","⛏","⛑","⛓","⛔","⛩","⛪","⛰","⛱","⛲","⛳","⛴","⛵","⛷🏻","⛷🏼","⛷🏽","⛷🏾","⛷🏿","⛷","⛸","⛹🏻‍♀️","⛹🏻‍♂️","⛹🏻","⛹🏼‍♀️","⛹🏼‍♂️","⛹🏼","⛹🏽‍♀️","⛹🏽‍♂️","⛹🏽","⛹🏾‍♀️","⛹🏾‍♂️","⛹🏾","⛹🏿‍♀️","⛹🏿‍♂️","⛹🏿","⛹️‍♀️","⛹️‍♂️","⛹","⛺","⛽","✂","✅","✈","✉","✊🏻","✊🏼","✊🏽","✊🏾","✊🏿","✊","✋🏻","✋🏼","✋🏽","✋🏾","✋🏿","✋","✌🏻","✌🏼","✌🏽","✌🏾","✌🏿","✌","✍🏻","✍🏼","✍🏽","✍🏾","✍🏿","✍","✏","✒","✔","✖","✝","✡","✨","✳","✴","❄","❇","❌","❎","❓","❔","❕","❗","❣","❤","","","➗","➡","➰","➿","⤴","⤵","*⃣","⬅","⬆","⬇","⬛","⬜","⭐","⭕","0⃣","〰","〽","1⃣","2⃣","㊗","㊙","3⃣","4⃣","5⃣","6⃣","7⃣","8⃣","9⃣","©","®",""]},7235:(e,t,r)=>{"use strict";const n=r(3881);const i=r(2471);e.exports=class AliasFieldPlugin{constructor(e,t,r){this.source=e;this.field=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("AliasFieldPlugin",(r,a,o)=>{if(!r.descriptionFileData)return o();const s=i(e,r);if(!s)return o();const c=n.getField(r.descriptionFileData,this.field);if(typeof c!=="object"){if(a.log)a.log("Field '"+this.field+"' doesn't contain a valid alias configuration");return o()}const u=c[s];const l=c[s.replace(/^\.\//,"")];const f=typeof u!=="undefined"?u:l;if(f===s)return o();if(f===undefined)return o();if(f===false){const e=Object.assign({},r,{path:false});return o(null,e)}const d=Object.assign({},r,{path:r.descriptionFileRoot,request:f});e.doResolve(t,d,"aliased from description file "+r.descriptionFilePath+" with mapping '"+s+"' to '"+f+"'",a,(e,t)=>{if(e)return o(e);if(t===undefined)return o(null,null);o(null,t)})})}}},2002:e=>{"use strict";function startsWith(e,t){const r=e.length;const n=t.length;if(n>r){return false}let i=-1;while(++i<n){if(e.charCodeAt(i)!==t.charCodeAt(i)){return false}}return true}e.exports=class AliasPlugin{constructor(e,t,r){this.source=e;this.options=Array.isArray(t)?t:[t];this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("AliasPlugin",(r,n,i)=>{const a=r.request||r.path;if(!a)return i();for(const o of this.options){if(a===o.name||!o.onlyModule&&startsWith(a,o.name+"/")){if(a!==o.alias&&!startsWith(a,o.alias+"/")){const s=o.alias+a.substr(o.name.length);const c=Object.assign({},r,{request:s});return e.doResolve(t,c,"aliased with mapping '"+o.name+"': '"+o.alias+"' to '"+s+"'",n,(e,t)=>{if(e)return i(e);if(t===undefined)return i(null,null);i(null,t)})}}}return i()})}}},803:e=>{"use strict";e.exports=class AppendPlugin{constructor(e,t,r){this.source=e;this.appending=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("AppendPlugin",(r,n,i)=>{const a=Object.assign({},r,{path:r.path+this.appending,relativePath:r.relativePath&&r.relativePath+this.appending});e.doResolve(t,a,this.appending,n,i)})}}},7703:e=>{"use strict";class Storage{constructor(e){this.duration=e;this.running=new Map;this.data=new Map;this.levels=[];if(e>0){this.levels.push(new Set,new Set,new Set,new Set,new Set,new Set,new Set,new Set,new Set);for(let t=8e3;t<e;t+=500)this.levels.push(new Set)}this.count=0;this.interval=null;this.needTickCheck=false;this.nextTick=null;this.passive=true;this.tick=this.tick.bind(this)}ensureTick(){if(!this.interval&&this.duration>0&&!this.nextTick)this.interval=setInterval(this.tick,Math.floor(this.duration/this.levels.length))}finished(e,t,r){const n=this.running.get(e);this.running.delete(e);if(this.duration>0){this.data.set(e,[t,r]);const n=this.levels[0];this.count-=n.size;n.add(e);this.count+=n.size;this.ensureTick()}for(let e=0;e<n.length;e++){n[e](t,r)}}finishedSync(e,t,r){if(this.duration>0){this.data.set(e,[t,r]);const n=this.levels[0];this.count-=n.size;n.add(e);this.count+=n.size;this.ensureTick()}}provide(e,t,r){if(typeof e!=="string"){r(new TypeError("path must be a string"));return}let n=this.running.get(e);if(n){n.push(r);return}if(this.duration>0){this.checkTicks();const t=this.data.get(e);if(t){return process.nextTick(()=>{r.apply(null,t)})}}this.running.set(e,n=[r]);t(e,(t,r)=>{this.finished(e,t,r)})}provideSync(e,t){if(typeof e!=="string"){throw new TypeError("path must be a string")}if(this.duration>0){this.checkTicks();const t=this.data.get(e);if(t){if(t[0])throw t[0];return t[1]}}let r;try{r=t(e)}catch(t){this.finishedSync(e,t);throw t}this.finishedSync(e,null,r);return r}tick(){const e=this.levels.pop();for(let t of e){this.data.delete(t)}this.count-=e.size;e.clear();this.levels.unshift(e);if(this.count===0){clearInterval(this.interval);this.interval=null;this.nextTick=null;return true}else if(this.nextTick){this.nextTick+=Math.floor(this.duration/this.levels.length);const e=(new Date).getTime();if(this.nextTick>e){this.nextTick=null;this.interval=setInterval(this.tick,Math.floor(this.duration/this.levels.length));return true}}else if(this.passive){clearInterval(this.interval);this.interval=null;this.nextTick=(new Date).getTime()+Math.floor(this.duration/this.levels.length)}else{this.passive=true}}checkTicks(){this.passive=false;if(this.nextTick){while(!this.tick());}}purge(e){if(!e){this.count=0;clearInterval(this.interval);this.nextTick=null;this.data.clear();this.levels.forEach(e=>{e.clear()})}else if(typeof e==="string"){for(let t of this.data.keys()){if(t.startsWith(e))this.data.delete(t)}}else{for(let t=e.length-1;t>=0;t--){this.purge(e[t])}}}}e.exports=class CachedInputFileSystem{constructor(e,t){this.fileSystem=e;this._statStorage=new Storage(t);this._readdirStorage=new Storage(t);this._readFileStorage=new Storage(t);this._readJsonStorage=new Storage(t);this._readlinkStorage=new Storage(t);this._stat=this.fileSystem.stat?this.fileSystem.stat.bind(this.fileSystem):null;if(!this._stat)this.stat=null;this._statSync=this.fileSystem.statSync?this.fileSystem.statSync.bind(this.fileSystem):null;if(!this._statSync)this.statSync=null;this._readdir=this.fileSystem.readdir?this.fileSystem.readdir.bind(this.fileSystem):null;if(!this._readdir)this.readdir=null;this._readdirSync=this.fileSystem.readdirSync?this.fileSystem.readdirSync.bind(this.fileSystem):null;if(!this._readdirSync)this.readdirSync=null;this._readFile=this.fileSystem.readFile?this.fileSystem.readFile.bind(this.fileSystem):null;if(!this._readFile)this.readFile=null;this._readFileSync=this.fileSystem.readFileSync?this.fileSystem.readFileSync.bind(this.fileSystem):null;if(!this._readFileSync)this.readFileSync=null;if(this.fileSystem.readJson){this._readJson=this.fileSystem.readJson.bind(this.fileSystem)}else if(this.readFile){this._readJson=((e,t)=>{this.readFile(e,(e,r)=>{if(e)return t(e);let n;try{n=JSON.parse(r.toString("utf-8"))}catch(e){return t(e)}t(null,n)})})}else{this.readJson=null}if(this.fileSystem.readJsonSync){this._readJsonSync=this.fileSystem.readJsonSync.bind(this.fileSystem)}else if(this.readFileSync){this._readJsonSync=(e=>{const t=this.readFileSync(e);const r=JSON.parse(t.toString("utf-8"));return r})}else{this.readJsonSync=null}this._readlink=this.fileSystem.readlink?this.fileSystem.readlink.bind(this.fileSystem):null;if(!this._readlink)this.readlink=null;this._readlinkSync=this.fileSystem.readlinkSync?this.fileSystem.readlinkSync.bind(this.fileSystem):null;if(!this._readlinkSync)this.readlinkSync=null}stat(e,t){this._statStorage.provide(e,this._stat,t)}readdir(e,t){this._readdirStorage.provide(e,this._readdir,t)}readFile(e,t){this._readFileStorage.provide(e,this._readFile,t)}readJson(e,t){this._readJsonStorage.provide(e,this._readJson,t)}readlink(e,t){this._readlinkStorage.provide(e,this._readlink,t)}statSync(e){return this._statStorage.provideSync(e,this._statSync)}readdirSync(e){return this._readdirStorage.provideSync(e,this._readdirSync)}readFileSync(e){return this._readFileStorage.provideSync(e,this._readFileSync)}readJsonSync(e){return this._readJsonStorage.provideSync(e,this._readJsonSync)}readlinkSync(e){return this._readlinkStorage.provideSync(e,this._readlinkSync)}purge(e){this._statStorage.purge(e);this._readdirStorage.purge(e);this._readFileStorage.purge(e);this._readlinkStorage.purge(e);this._readJsonStorage.purge(e)}}},5810:(e,t,r)=>{"use strict";const n=r(4426);const i=r(3881);const a=r(3556);e.exports=class ConcordExtensionsPlugin{constructor(e,t,r){this.source=e;this.options=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ConcordExtensionsPlugin",(r,o,s)=>{const c=i.getField(r.descriptionFileData,"concord");if(!c)return s();const u=n.getExtensions(r.context,c);if(!u)return s();a(u,(n,i)=>{const a=Object.assign({},r,{path:r.path+n,relativePath:r.relativePath&&r.relativePath+n});e.doResolve(t,a,"concord extension: "+n,o,i)},(e,t)=>{if(e)return s(e);if(t===undefined)return s(null,null);s(null,t)})})}}},6683:(e,t,r)=>{"use strict";const n=r(5622);const i=r(4426);const a=r(3881);e.exports=class ConcordMainPlugin{constructor(e,t,r){this.source=e;this.options=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ConcordMainPlugin",(r,o,s)=>{if(r.path!==r.descriptionFileRoot)return s();const c=a.getField(r.descriptionFileData,"concord");if(!c)return s();const u=i.getMain(r.context,c);if(!u)return s();const l=Object.assign({},r,{request:u});const f=n.basename(r.descriptionFilePath);return e.doResolve(t,l,"use "+u+" from "+f,o,s)})}}},9912:(e,t,r)=>{"use strict";const n=r(4426);const i=r(3881);const a=r(2471);e.exports=class ConcordModulesPlugin{constructor(e,t,r){this.source=e;this.options=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ConcordModulesPlugin",(r,o,s)=>{const c=a(e,r);if(!c)return s();const u=i.getField(r.descriptionFileData,"concord");if(!u)return s();const l=n.matchModule(r.context,u,c);if(l===c)return s();if(l===undefined)return s();if(l===false){const e=Object.assign({},r,{path:false});return s(null,e)}const f=Object.assign({},r,{path:r.descriptionFileRoot,request:l});e.doResolve(t,f,"aliased from description file "+r.descriptionFilePath+" with mapping '"+c+"' to '"+l+"'",o,(e,t)=>{if(e)return s(e);if(t===undefined)return s(null,null);s(null,t)})})}}},5943:(e,t,r)=>{"use strict";const n=r(3881);e.exports=class DescriptionFilePlugin{constructor(e,t,r){this.source=e;this.filenames=[].concat(t);this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("DescriptionFilePlugin",(r,i,a)=>{const o=r.path;n.loadDescriptionFile(e,o,this.filenames,i,(n,s)=>{if(n)return a(n);if(!s){if(i.missing){this.filenames.forEach(t=>{i.missing.add(e.join(o,t))})}if(i.log)i.log("No description file found");return a()}const c="."+r.path.substr(s.directory.length).replace(/\\/g,"/");const u=Object.assign({},r,{descriptionFilePath:s.path,descriptionFileData:s.content,descriptionFileRoot:s.directory,relativePath:c});e.doResolve(t,u,"using description file: "+s.path+" (relative path: "+c+")",i,(e,t)=>{if(e)return a(e);if(t===undefined)return a(null,null);a(null,t)})})})}}},3881:(e,t,r)=>{"use strict";const n=r(3556);function loadDescriptionFile(e,t,r,i,a){(function findDescriptionFile(){n(r,(r,n)=>{const a=e.join(t,r);if(e.fileSystem.readJson){e.fileSystem.readJson(a,(e,t)=>{if(e){if(typeof e.code!=="undefined")return n();return onJson(e)}onJson(null,t)})}else{e.fileSystem.readFile(a,(e,t)=>{if(e)return n();let r;try{r=JSON.parse(t)}catch(e){onJson(e)}onJson(null,r)})}function onJson(e,r){if(e){if(i.log)i.log(a+" (directory description file): "+e);else e.message=a+" (directory description file): "+e;return n(e)}n(null,{content:r,directory:t,path:a})}},(e,r)=>{if(e)return a(e);if(r){return a(null,r)}else{t=cdUp(t);if(!t){return a()}else{return findDescriptionFile()}}})})()}function getField(e,t){if(!e)return undefined;if(Array.isArray(t)){let r=e;for(let e=0;e<t.length;e++){if(r===null||typeof r!=="object"){r=null;break}r=r[t[e]]}if(typeof r==="object"){return r}}else{if(typeof e[t]==="object"){return e[t]}}}function cdUp(e){if(e==="/")return null;const t=e.lastIndexOf("/"),r=e.lastIndexOf("\\");const n=t<0?r:r<0?t:t<r?r:t;if(n<0)return null;return e.substr(0,n||1)}t.loadDescriptionFile=loadDescriptionFile;t.getField=getField;t.cdUp=cdUp},2575:e=>{"use strict";e.exports=class DirectoryExistsPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("DirectoryExistsPlugin",(r,n,i)=>{const a=e.fileSystem;const o=r.path;a.stat(o,(a,s)=>{if(a||!s){if(n.missing)n.missing.add(o);if(n.log)n.log(o+" doesn't exist");return i()}if(!s.isDirectory()){if(n.missing)n.missing.add(o);if(n.log)n.log(o+" is not a directory");return i()}e.doResolve(t,r,"existing directory",n,i)})})}}},7876:e=>{"use strict";e.exports=class FileExistsPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);const r=e.fileSystem;e.getHook(this.source).tapAsync("FileExistsPlugin",(n,i,a)=>{const o=n.path;r.stat(o,(r,s)=>{if(r||!s){if(i.missing)i.missing.add(o);if(i.log)i.log(o+" doesn't exist");return a()}if(!s.isFile()){if(i.missing)i.missing.add(o);if(i.log)i.log(o+" is not a file");return a()}e.doResolve(t,n,"existing file: "+o,i,a)})})}}},3072:e=>{"use strict";e.exports=class FileKindPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("FileKindPlugin",(r,n,i)=>{if(r.directory)return i();const a=Object.assign({},r);delete a.directory;e.doResolve(t,a,null,n,i)})}}},8277:e=>{"use strict";e.exports=class JoinRequestPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("JoinRequestPlugin",(r,n,i)=>{const a=Object.assign({},r,{path:e.join(r.path,r.request),relativePath:r.relativePath&&e.join(r.relativePath,r.request),request:undefined});e.doResolve(t,a,null,n,i)})}}},6713:(e,t,r)=>{"use strict";const n=r(5622);e.exports=class MainFieldPlugin{constructor(e,t,r){this.source=e;this.options=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("MainFieldPlugin",(r,i,a)=>{if(r.path!==r.descriptionFileRoot)return a();if(r.alreadyTriedMainField===r.descriptionFilePath)return a();const o=r.descriptionFileData;const s=n.basename(r.descriptionFilePath);let c;const u=this.options.name;if(Array.isArray(u)){let e=o;for(let t=0;t<u.length;t++){if(e===null||typeof e!=="object"){e=null;break}e=e[u[t]]}if(typeof e==="string"){c=e}}else{if(typeof o[u]==="string"){c=o[u]}}if(!c)return a();if(this.options.forceRelative&&!/^\.\.?\//.test(c))c="./"+c;const l=Object.assign({},r,{request:c,alreadyTriedMainField:r.descriptionFilePath});return e.doResolve(t,l,"use "+c+" from "+this.options.name+" in "+s,i,a)})}}},2766:e=>{"use strict";e.exports=class ModuleAppendPlugin{constructor(e,t,r){this.source=e;this.appending=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ModuleAppendPlugin",(r,n,i)=>{const a=r.request.indexOf("/"),o=r.request.indexOf("\\");const s=a<0?o:o<0?a:a<o?a:o;let c,u;if(s<0){c=r.request;u=""}else{c=r.request.substr(0,s);u=r.request.substr(s)}if(c==="."||c==="..")return i();const l=c+this.appending;const f=Object.assign({},r,{request:l+u});e.doResolve(t,f,"module variation "+l,n,i)})}}},6642:e=>{"use strict";e.exports=class ModuleKindPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ModuleKindPlugin",(r,n,i)=>{if(!r.module)return i();const a=Object.assign({},r);delete a.module;e.doResolve(t,a,"resolve as module",n,(e,t)=>{if(e)return i(e);if(t===undefined)return i(null,null);i(null,t)})})}}},6067:(e,t,r)=>{"use strict";const n=r(3556);const i=r(9835);e.exports=class ModulesInHierachicDirectoriesPlugin{constructor(e,t,r){this.source=e;this.directories=[].concat(t);this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ModulesInHierachicDirectoriesPlugin",(r,a,o)=>{const s=e.fileSystem;const c=i(r.path).paths.map(t=>{return this.directories.map(r=>e.join(t,r))}).reduce((e,t)=>{e.push.apply(e,t);return e},[]);n(c,(n,i)=>{s.stat(n,(o,s)=>{if(!o&&s&&s.isDirectory()){const o=Object.assign({},r,{path:n,request:"./"+r.request});const s="looking for modules in "+n;return e.doResolve(t,o,s,a,i)}if(a.log)a.log(n+" doesn't exist or is not a directory");if(a.missing)a.missing.add(n);return i()})},o)})}}},2433:e=>{"use strict";e.exports=class ModulesInRootPlugin{constructor(e,t,r){this.source=e;this.path=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ModulesInRootPlugin",(r,n,i)=>{const a=Object.assign({},r,{path:this.path,request:"./"+r.request});e.doResolve(t,a,"looking for modules in "+this.path,n,i)})}}},2276:e=>{"use strict";e.exports=class NextPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("NextPlugin",(r,n,i)=>{e.doResolve(t,r,null,n,i)})}}},7365:(e,t,r)=>{"use strict";const n=r(5808);class NodeJsInputFileSystem{readdir(e,t){n.readdir(e,(e,r)=>{t(e,r&&r.map(e=>{return e.normalize?e.normalize("NFC"):e}))})}readdirSync(e){const t=n.readdirSync(e);return t&&t.map(e=>{return e.normalize?e.normalize("NFC"):e})}}const i=["stat","statSync","readFile","readFileSync","readlink","readlinkSync"];for(const e of i){Object.defineProperty(NodeJsInputFileSystem.prototype,e,{configurable:true,writable:true,value:n[e].bind(n)})}e.exports=NodeJsInputFileSystem},1121:e=>{"use strict";e.exports=class ParsePlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("ParsePlugin",(r,n,i)=>{const a=e.parse(r.request);const o=Object.assign({},r,a);if(r.query&&!a.query){o.query=r.query}if(a&&n.log){if(a.module)n.log("Parsed request is a module");if(a.directory)n.log("Parsed request is a directory")}e.doResolve(t,o,null,n,i)})}}},3679:(e,t,r)=>{"use strict";const n=r(1669);const i=r(3460);const a=r(3575);const o=r(2980);const s=r(2039);const c=r(2227);const u=/^\.$|^\.[\\\/]|^\.\.$|^\.\.[\/\\]|^\/|^[A-Z]:[\\\/]/i;const l=/[\/\\]$/i;const f=r(9987);const d=new Map;const p=r(5369);function withName(e,t){t.name=e;return t}function toCamelCase(e){return e.replace(/-([a-z])/g,e=>e.substr(1).toUpperCase())}const g=n.deprecate((e,t)=>{e.add(t)},"Resolver: 'missing' is now a Set. Use add instead of push.");const _=n.deprecate(e=>{return e},"Resolver: The callback argument was splitted into resolveContext and callback.");const m=n.deprecate(e=>{return e},"Resolver#doResolve: The type arguments (string) is now a hook argument (Hook). Pass a reference to the hook instead.");class Resolver extends i{constructor(e){super();this.fileSystem=e;this.hooks={resolveStep:withName("resolveStep",new a(["hook","request"])),noResolve:withName("noResolve",new a(["request","error"])),resolve:withName("resolve",new o(["request","resolveContext"])),result:new s(["result","resolveContext"])};this._pluginCompat.tap("Resolver: before/after",e=>{if(/^before-/.test(e.name)){e.name=e.name.substr(7);e.stage=-10}else if(/^after-/.test(e.name)){e.name=e.name.substr(6);e.stage=10}});this._pluginCompat.tap("Resolver: step hooks",e=>{const t=e.name;const r=!/^resolve(-s|S)tep$|^no(-r|R)esolve$/.test(t);if(r){e.async=true;this.ensureHook(t);const r=e.fn;e.fn=((e,t,n)=>{const i=(e,t)=>{if(e)return n(e);if(t!==undefined)return n(null,t);n()};for(const e in t){i[e]=t[e]}r.call(this,e,i)})}})}ensureHook(e){if(typeof e!=="string")return e;e=toCamelCase(e);if(/^before/.test(e)){return this.ensureHook(e[6].toLowerCase()+e.substr(7)).withOptions({stage:-10})}if(/^after/.test(e)){return this.ensureHook(e[5].toLowerCase()+e.substr(6)).withOptions({stage:10})}const t=this.hooks[e];if(!t){return this.hooks[e]=withName(e,new o(["request","resolveContext"]))}return t}getHook(e){if(typeof e!=="string")return e;e=toCamelCase(e);if(/^before/.test(e)){return this.getHook(e[6].toLowerCase()+e.substr(7)).withOptions({stage:-10})}if(/^after/.test(e)){return this.getHook(e[5].toLowerCase()+e.substr(6)).withOptions({stage:10})}const t=this.hooks[e];if(!t){throw new Error(`Hook ${e} doesn't exist`)}return t}resolveSync(e,t,r){let n,i,a=false;this.resolve(e,t,r,{},(e,t)=>{n=e;i=t;a=true});if(!a)throw new Error("Cannot 'resolveSync' because the fileSystem is not sync. Use 'resolve'!");if(n)throw n;return i}resolve(e,t,r,n,i){if(typeof i!=="function"){i=_(n)}const a={context:e,path:t,request:r};const o="resolve '"+r+"' in '"+t+"'";return this.doResolve(this.hooks.resolve,a,o,{missing:n.missing,stack:n.stack},(e,t)=>{if(!e&&t){return i(null,t.path===false?false:t.path+(t.query||""),t)}const r=new Set;r.push=(e=>g(r,e));const s=[];return this.doResolve(this.hooks.resolve,a,o,{log:e=>{if(n.log){n.log(e)}s.push(e)},missing:r,stack:n.stack},(e,t)=>{if(e)return i(e);const n=new Error("Can't "+o);n.details=s.join("\n");n.missing=Array.from(r);this.hooks.noResolve.call(a,n);return i(n)})})}doResolve(e,t,r,n,i){if(typeof i!=="function"){i=_(n)}if(typeof e==="string"){const t=toCamelCase(e);e=m(this.hooks[t]);if(!e){throw new Error(`Hook "${t}" doesn't exist`)}}if(typeof i!=="function")throw new Error("callback is not a function "+Array.from(arguments));if(!n)throw new Error("resolveContext is not an object "+Array.from(arguments));const a=e.name+": ("+t.path+") "+(t.request||"")+(t.query||"")+(t.directory?" directory":"")+(t.module?" module":"");let o;if(n.stack){o=new Set(n.stack);if(n.stack.has(a)){const e=new Error("Recursion in resolving\nStack:\n "+Array.from(o).join("\n "));e.recursion=true;if(n.log)n.log("abort resolving because of recursion");return i(e)}o.add(a)}else{o=new Set([a])}this.hooks.resolveStep.call(e,t);if(e.isUsed()){const a=c({log:n.log,missing:n.missing,stack:o},r);return e.callAsync(t,a,(e,t)=>{if(e)return i(e);if(t)return i(null,t);i()})}else{i()}}parse(e){if(e==="")return null;const t={request:"",query:"",module:false,directory:false,file:false};const r=e.indexOf("?");if(r===0){t.query=e}else if(r>0){t.request=e.slice(0,r);t.query=e.slice(r)}else{t.request=e}if(t.request){t.module=this.isModule(t.request);t.directory=this.isDirectory(t.request);if(t.directory){t.request=t.request.substr(0,t.request.length-1)}}return t}isModule(e){return!u.test(e)}isDirectory(e){return l.test(e)}join(e,t){let r;let n=d.get(e);if(typeof n==="undefined"){d.set(e,n=new Map)}else{r=n.get(t);if(typeof r!=="undefined")return r}r=f(e,t);n.set(t,r);return r}normalize(e){return p(e)}}e.exports=Resolver},7934:(e,t,r)=>{"use strict";const n=r(3679);const i=r(4407);const a=r(1121);const o=r(5943);const s=r(2276);const c=r(8029);const u=r(6642);const l=r(3072);const f=r(8277);const d=r(6067);const p=r(2433);const g=r(2002);const _=r(7235);const m=r(5810);const y=r(6683);const h=r(9912);const v=r(2575);const T=r(7876);const S=r(4362);const b=r(6713);const x=r(5187);const C=r(803);const E=r(6182);const D=r(2766);const k=r(2216);t.createResolver=function(e){let t=e.modules||["node_modules"];const r=e.descriptionFiles||["package.json"];const N=e.plugins&&e.plugins.slice()||[];let A=e.mainFields||["main"];const O=e.aliasFields||[];const F=e.mainFiles||["index"];let P=e.extensions||[".js",".json",".node"];const I=e.enforceExtension||false;let w=e.moduleExtensions||[];const M=e.enforceModuleExtension||false;let L=e.alias||[];const R=typeof e.symlinks!=="undefined"?e.symlinks:true;const B=e.resolveToContext||false;let j=e.unsafeCache||false;const J=typeof e.cacheWithContext!=="undefined"?e.cacheWithContext:true;const W=e.concord||false;const U=e.cachePredicate||function(){return true};const z=e.fileSystem;const V=e.useSyncFileSystemCalls;let K=e.resolver;if(!K){K=new n(V?new i(z):z)}P=[].concat(P);w=[].concat(w);t=mergeFilteredToArray([].concat(t),e=>{return!isAbsolutePath(e)});A=A.map(e=>{if(typeof e==="string"||Array.isArray(e)){e={name:e,forceRelative:true}}return e});if(typeof L==="object"&&!Array.isArray(L)){L=Object.keys(L).map(e=>{let t=false;let r=L[e];if(/\$$/.test(e)){t=true;e=e.substr(0,e.length-1)}if(typeof r==="string"){r={alias:r}}r=Object.assign({name:e,onlyModule:t},r);return r})}if(j&&typeof j!=="object"){j={}}K.ensureHook("resolve");K.ensureHook("parsedResolve");K.ensureHook("describedResolve");K.ensureHook("rawModule");K.ensureHook("module");K.ensureHook("relative");K.ensureHook("describedRelative");K.ensureHook("directory");K.ensureHook("existingDirectory");K.ensureHook("undescribedRawFile");K.ensureHook("rawFile");K.ensureHook("file");K.ensureHook("existingFile");K.ensureHook("resolved");if(j){N.push(new k("resolve",U,j,J,"new-resolve"));N.push(new a("new-resolve","parsed-resolve"))}else{N.push(new a("resolve","parsed-resolve"))}N.push(new o("parsed-resolve",r,"described-resolve"));N.push(new s("after-parsed-resolve","described-resolve"));if(L.length>0)N.push(new g("described-resolve",L,"resolve"));if(W){N.push(new h("described-resolve",{},"resolve"))}O.forEach(e=>{N.push(new _("described-resolve",e,"resolve"))});N.push(new u("after-described-resolve","raw-module"));N.push(new f("after-described-resolve","relative"));w.forEach(e=>{N.push(new D("raw-module",e,"module"))});if(!M)N.push(new c("raw-module",null,"module"));t.forEach(e=>{if(Array.isArray(e))N.push(new d("module",e,"resolve"));else N.push(new p("module",e,"resolve"))});N.push(new o("relative",r,"described-relative"));N.push(new s("after-relative","described-relative"));N.push(new l("described-relative","raw-file"));N.push(new c("described-relative","as directory","directory"));N.push(new v("directory","existing-directory"));if(B){N.push(new s("existing-directory","resolved"))}else{if(W){N.push(new y("existing-directory",{},"resolve"))}A.forEach(e=>{N.push(new b("existing-directory",e,"resolve"))});F.forEach(e=>{N.push(new x("existing-directory",e,"undescribed-raw-file"))});N.push(new o("undescribed-raw-file",r,"raw-file"));N.push(new s("after-undescribed-raw-file","raw-file"));if(!I){N.push(new c("raw-file","no extension","file"))}if(W){N.push(new m("raw-file",{},"file"))}P.forEach(e=>{N.push(new C("raw-file",e,"file"))});if(L.length>0)N.push(new g("file",L,"resolve"));if(W){N.push(new h("file",{},"resolve"))}O.forEach(e=>{N.push(new _("file",e,"resolve"))});if(R)N.push(new S("file","relative"));N.push(new T("file","existing-file"));N.push(new s("existing-file","resolved"))}N.push(new E(K.hooks.resolved));N.forEach(e=>{e.apply(K)});return K};function mergeFilteredToArray(e,t){return e.reduce((e,r)=>{if(t(r)){const t=e[e.length-1];if(Array.isArray(t)){t.push(r)}else{e.push([r])}return e}else{e.push(r);return e}},[])}function isAbsolutePath(e){return/^[A-Z]:|^\//.test(e)}},6182:e=>{"use strict";e.exports=class ResultPlugin{constructor(e){this.source=e}apply(e){this.source.tapAsync("ResultPlugin",(t,r,n)=>{const i=Object.assign({},t);if(r.log)r.log("reporting result "+i.path);e.hooks.result.callAsync(i,r,e=>{if(e)return n(e);n(null,i)})})}}},4362:(e,t,r)=>{"use strict";const n=r(9835);const i=r(3556);e.exports=class SymlinkPlugin{constructor(e,t){this.source=e;this.target=t}apply(e){const t=e.ensureHook(this.target);const r=e.fileSystem;e.getHook(this.source).tapAsync("SymlinkPlugin",(a,o,s)=>{const c=n(a.path);const u=c.seqments;const l=c.paths;let f=false;i.withIndex(l,(e,t,n)=>{r.readlink(e,(e,r)=>{if(!e&&r){u[t]=r;f=true;if(/^(\/|[a-zA-Z]:($|\\))/.test(r))return n(null,t)}n()})},(r,n)=>{if(!f)return s();const i=typeof n==="number"?u.slice(0,n+1):u.slice();const c=i.reverse().reduce((t,r)=>{return e.join(t,r)});const l=Object.assign({},a,{path:c});e.doResolve(t,l,"resolved symlink to "+c,o,s)})})}}},4407:e=>{"use strict";function SyncAsyncFileSystemDecorator(e){this.fs=e;if(e.statSync){this.stat=function(t,r){let n;try{n=e.statSync(t)}catch(e){return r(e)}r(null,n)}}if(e.readdirSync){this.readdir=function(t,r){let n;try{n=e.readdirSync(t)}catch(e){return r(e)}r(null,n)}}if(e.readFileSync){this.readFile=function(t,r){let n;try{n=e.readFileSync(t)}catch(e){return r(e)}r(null,n)}}if(e.readlinkSync){this.readlink=function(t,r){let n;try{n=e.readlinkSync(t)}catch(e){return r(e)}r(null,n)}}if(e.readJsonSync){this.readJson=function(t,r){let n;try{n=e.readJsonSync(t)}catch(e){return r(e)}r(null,n)}}}e.exports=SyncAsyncFileSystemDecorator},8029:e=>{"use strict";e.exports=class TryNextPlugin{constructor(e,t,r){this.source=e;this.message=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("TryNextPlugin",(r,n,i)=>{e.doResolve(t,r,this.message,n,i)})}}},2216:e=>{"use strict";function getCacheId(e,t){return JSON.stringify({context:t?e.context:"",path:e.path,query:e.query,request:e.request})}e.exports=class UnsafeCachePlugin{constructor(e,t,r,n,i){this.source=e;this.filterPredicate=t;this.withContext=n;this.cache=r||{};this.target=i}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("UnsafeCachePlugin",(r,n,i)=>{if(!this.filterPredicate(r))return i();const a=getCacheId(r,this.withContext);const o=this.cache[a];if(o){return i(null,o)}e.doResolve(t,r,null,n,(e,t)=>{if(e)return i(e);if(t)return i(null,this.cache[a]=t);i()})})}}},5187:e=>{"use strict";e.exports=class UseFilePlugin{constructor(e,t,r){this.source=e;this.filename=t;this.target=r}apply(e){const t=e.ensureHook(this.target);e.getHook(this.source).tapAsync("UseFilePlugin",(r,n,i)=>{const a=e.join(r.path,this.filename);const o=Object.assign({},r,{path:a,relativePath:r.relativePath&&e.join(r.relativePath,this.filename)});e.doResolve(t,o,"using path: "+a,n,i)})}}},4426:(e,t,r)=>{"use strict";const n=r(4353).P;function parseType(e){const t=e.split("+");const r=t.shift();return{type:r==="*"?null:r,features:t}}function isTypeMatched(e,t){if(typeof e==="string")e=parseType(e);if(typeof t==="string")t=parseType(t);if(t.type&&t.type!==e.type)return false;return t.features.every(t=>{return e.features.indexOf(t)>=0})}function isResourceTypeMatched(e,t){e=e.split("/");t=t.split("/");if(e.length!==t.length)return false;for(let r=0;r<e.length;r++){if(!isTypeMatched(e[r],t[r]))return false}return true}function isResourceTypeSupported(e,t){return e.supportedResourceTypes&&e.supportedResourceTypes.some(e=>{return isResourceTypeMatched(e,t)})}function isEnvironment(e,t){return e.environments&&e.environments.every(e=>{return isTypeMatched(e,t)})}const i={};function getGlobRegExp(e){const t=i[e]||(i[e]=n(e));return t}function matchGlob(e,t){const r=getGlobRegExp(e);return r.exec(t)}function isGlobMatched(e,t){return!!matchGlob(e,t)}function isConditionMatched(e,t){const r=t.split("|");return r.some(function testFn(t){t=t.trim();const r=/^!/.test(t);if(r)return!testFn(t.substr(1));if(/^[a-z]+:/.test(t)){const r=/^([a-z]+):\s*/.exec(t);const n=t.substr(r[0].length);const i=r[1];switch(i){case"referrer":return isGlobMatched(n,e.referrer);default:return false}}else if(t.indexOf("/")>=0){return isResourceTypeSupported(e,t)}else{return isEnvironment(e,t)}})}function isKeyMatched(e,t){while(true){const r=/^\[([^\]]+)\]\s*/.exec(t);if(!r)return t;t=t.substr(r[0].length);const n=r[1];if(!isConditionMatched(e,n)){return false}}}function getField(e,t,r){let n;Object.keys(t).forEach(i=>{const a=isKeyMatched(e,i);if(a===r){n=t[i]}});return n}function getMain(e,t){return getField(e,t,"main")}function getExtensions(e,t){return getField(e,t,"extensions")}function matchModule(e,t,r){const n=getField(e,t,"modules");if(!n)return r;let i=r;const a=Object.keys(n);let o=0;let s;let c;for(let t=0;t<a.length;t++){const u=a[t];const l=isKeyMatched(e,u);s=matchGlob(l,i);if(s){const e=n[u];if(typeof e!=="string"){return e}else if(/^\(.+\)$/.test(l)){i=i.replace(getGlobRegExp(l),e)}else{c=1;i=e.replace(/(\/?\*)?\*/g,replaceMatcher)}t=-1;if(o++>a.length){throw new Error("Request '"+r+"' matches recursively")}}}return i;function replaceMatcher(e){switch(e){case"/**":{const e=s[c++];return e?"/"+e:""}case"**":case"*":return s[c++]}}}function matchType(e,t,r){const n=getField(e,t,"types");if(!n)return undefined;let i;Object.keys(n).forEach(t=>{const a=isKeyMatched(e,t);if(isGlobMatched(a,r)){const e=n[t];if(!i&&/\/\*$/.test(e))throw new Error("value ('"+e+"') of key '"+t+"' contains '*', but there is no previous value defined");i=e.replace(/\/\*$/,"/"+i)}});return i}t.parseType=parseType;t.isTypeMatched=isTypeMatched;t.isResourceTypeSupported=isResourceTypeSupported;t.isEnvironment=isEnvironment;t.isGlobMatched=isGlobMatched;t.isConditionMatched=isConditionMatched;t.isKeyMatched=isKeyMatched;t.getField=getField;t.getMain=getMain;t.getExtensions=getExtensions;t.matchModule=matchModule;t.matchType=matchType},2227:e=>{"use strict";e.exports=function createInnerContext(e,t,r){let n=false;const i={log:(()=>{if(!e.log)return undefined;if(!t)return e.log;const r=r=>{if(!n){e.log(t);n=true}e.log(" "+r)};return r})(),stack:e.stack,missing:e.missing};return i}},3556:e=>{"use strict";e.exports=function forEachBail(e,t,r){if(e.length===0)return r();let n=e.length;let i;let a=[];for(let r=0;r<e.length;r++){const i=createIteratorCallback(r);t(e[r],i);if(n===0)break}function createIteratorCallback(e){return(...t)=>{if(e>=n)return;a.push(e);if(t.length>0){n=e+1;a=a.filter(t=>{return t<=e});i=t}if(a.length===n){r.apply(null,i);n=0}}}};e.exports.withIndex=function forEachBailWithIndex(e,t,r){if(e.length===0)return r();let n=e.length;let i;let a=[];for(let r=0;r<e.length;r++){const i=createIteratorCallback(r);t(e[r],r,i);if(n===0)break}function createIteratorCallback(e){return(...t)=>{if(e>=n)return;a.push(e);if(t.length>0){n=e+1;a=a.filter(t=>{return t<=e});i=t}if(a.length===n){r.apply(null,i);n=0}}}}},2471:e=>{"use strict";e.exports=function getInnerRequest(e,t){if(typeof t.__innerRequest==="string"&&t.__innerRequest_request===t.request&&t.__innerRequest_relativePath===t.relativePath)return t.__innerRequest;let r;if(t.request){r=t.request;if(/^\.\.?\//.test(r)&&t.relativePath){r=e.join(t.relativePath,r)}}else{r=t.relativePath}t.__innerRequest_request=t.request;t.__innerRequest_relativePath=t.relativePath;return t.__innerRequest=r}},9835:e=>{"use strict";e.exports=function getPaths(e){const t=e.split(/(.*?[\\\/]+)/);const r=[e];const n=[t[t.length-1]];let i=t[t.length-1];e=e.substr(0,e.length-i.length-1);for(let a=t.length-2;a>2;a-=2){r.push(e);i=t[a];e=e.substr(0,e.length-i.length)||"/";n.push(i.substr(0,i.length-1))}i=t[1];n.push(i);r.push(i);return{paths:r,seqments:n}};e.exports.basename=function basename(e){const t=e.lastIndexOf("/"),r=e.lastIndexOf("\\");const n=t<0?r:r<0?t:t<r?r:t;if(n<0)return null;const i=e.substr(n+1);return i}},4353:(e,t)=>{"use strict";function globToRegExp(e){if(/^\(.+\)$/.test(e)){return new RegExp(e.substr(1,e.length-2))}const t=tokenize(e);const r=createRoot();const n=t.map(r).join("");return new RegExp("^"+n+"$")}const r={"@(":"one","?(":"zero-one","+(":"one-many","*(":"zero-many","|":"segment-sep","/**/":"any-path-segments","**":"any-path","*":"any-path-segment","?":"any-char","{":"or","/":"path-sep",",":"comma",")":"closing-segment","}":"closing-or"};function tokenize(e){return e.split(/([@?+*]\(|\/\*\*\/|\*\*|[?*]|\[[\!\^]?(?:[^\]\\]|\\.)+\]|\{|,|\/|[|)}])/g).map(e=>{if(!e)return null;const t=r[e];if(t){return{type:t}}if(e[0]==="["){if(e[1]==="^"||e[1]==="!"){return{type:"inverted-char-set",value:e.substr(2,e.length-3)}}else{return{type:"char-set",value:e.substr(1,e.length-2)}}}return{type:"string",value:e}}).filter(Boolean).concat({type:"end"})}function createRoot(){const e=[];const t=createSeqment();let r=true;return function(n){switch(n.type){case"or":e.push(r);return"(";case"comma":if(e.length){r=e[e.length-1];return"|"}else{return t({type:"string",value:","},r)}case"closing-or":if(e.length===0)throw new Error("Unmatched '}'");e.pop();return")";case"end":if(e.length)throw new Error("Unmatched '{'");return t(n,r);default:{const e=t(n,r);r=false;return e}}}}function createSeqment(){const e=[];const t=createSimple();return function(r,n){switch(r.type){case"one":case"one-many":case"zero-many":case"zero-one":e.push(r.type);return"(";case"segment-sep":if(e.length){return"|"}else{return t({type:"string",value:"|"},n)}case"closing-segment":{const t=e.pop();switch(t){case"one":return")";case"one-many":return")+";case"zero-many":return")*";case"zero-one":return")?"}throw new Error("Unexcepted segment "+t)}case"end":if(e.length>0){throw new Error("Unmatched segment, missing ')'")}return t(r,n);default:return t(r,n)}}}function createSimple(){return function(e,t){switch(e.type){case"path-sep":return"[\\\\/]+";case"any-path-segments":return"[\\\\/]+(?:(.+)[\\\\/]+)?";case"any-path":return"(.*)";case"any-path-segment":if(t){return"\\.[\\\\/]+(?:.*[\\\\/]+)?([^\\\\/]+)"}else{return"([^\\\\/]*)"}case"any-char":return"[^\\\\/]";case"inverted-char-set":return"[^"+e.value+"]";case"char-set":return"["+e.value+"]";case"string":return e.value.replace(/[-[\]{}()*+?.,\\^$|#\s]/g,"\\$&");case"end":return"";default:throw new Error("Unsupported token '"+e.type+"'")}}}t.P=globToRegExp},1324:(e,t,r)=>{"use strict";const n=r(7934);const i=r(7365);const a=r(7703);const o=new a(new i,4e3);const s={environments:["node+es3+es5+process+native"]};const c=n.createResolver({extensions:[".js",".json",".node"],fileSystem:o});e.exports=function resolve(e,t,r,n,i){if(typeof e==="string"){i=n;n=r;r=t;t=e;e=s}if(typeof i!=="function"){i=n}c.resolve(e,t,r,n,i)};const u=n.createResolver({extensions:[".js",".json",".node"],useSyncFileSystemCalls:true,fileSystem:o});e.exports.sync=function resolveSync(e,t,r){if(typeof e==="string"){r=t;t=e;e=s}return u.resolveSync(e,t,r)};const l=n.createResolver({extensions:[".js",".json",".node"],resolveToContext:true,fileSystem:o});e.exports.context=function resolveContext(e,t,r,resolveContext,n){if(typeof e==="string"){n=resolveContext;resolveContext=r;r=t;t=e;e=s}if(typeof n!=="function"){n=resolveContext}l.resolve(e,t,r,resolveContext,n)};const f=n.createResolver({extensions:[".js",".json",".node"],resolveToContext:true,useSyncFileSystemCalls:true,fileSystem:o});e.exports.context.sync=function resolveContextSync(e,t,r){if(typeof e==="string"){r=t;t=e;e=s}return f.resolveSync(e,t,r)};const d=n.createResolver({extensions:[".js",".json",".node"],moduleExtensions:["-loader"],mainFields:["loader","main"],fileSystem:o});e.exports.loader=function resolveLoader(e,t,r,n,i){if(typeof e==="string"){i=n;n=r;r=t;t=e;e=s}if(typeof i!=="function"){i=n}d.resolve(e,t,r,n,i)};const p=n.createResolver({extensions:[".js",".json",".node"],moduleExtensions:["-loader"],mainFields:["loader","main"],useSyncFileSystemCalls:true,fileSystem:o});e.exports.loader.sync=function resolveLoaderSync(e,t,r){if(typeof e==="string"){r=t;t=e;e=s}return p.resolveSync(e,t,r)};e.exports.create=function create(e){e=Object.assign({fileSystem:o},e);const t=n.createResolver(e);return function(e,r,n,i,a){if(typeof e==="string"){a=i;i=n;n=r;r=e;e=s}if(typeof a!=="function"){a=i}t.resolve(e,r,n,i,a)}};e.exports.create.sync=function createSync(e){e=Object.assign({useSyncFileSystemCalls:true,fileSystem:o},e);const t=n.createResolver(e);return function(e,r,n){if(typeof e==="string"){n=r;r=e;e=s}return t.resolveSync(e,r,n)}};e.exports.ResolverFactory=n;e.exports.NodeJsInputFileSystem=i;e.exports.CachedInputFileSystem=a},2980:(e,t,r)=>{"use strict";const n=r(528);const i=r(3207);class AsyncSeriesBailHookCodeFactory extends i{content({onError:e,onResult:t,onDone:r}){return this.callTapsSeries({onError:(t,r,n,i)=>e(r)+i(true),onResult:(e,r,n)=>`if(${r} !== undefined) {\n${t(r)};\n} else {\n${n()}}\n`,onDone:r})}}const a=new AsyncSeriesBailHookCodeFactory;class AsyncSeriesBailHook extends n{compile(e){a.setup(this,e);return a.create(e)}}Object.defineProperties(AsyncSeriesBailHook.prototype,{_call:{value:undefined,configurable:true,writable:true}});e.exports=AsyncSeriesBailHook},2039:(e,t,r)=>{"use strict";const n=r(528);const i=r(3207);class AsyncSeriesHookCodeFactory extends i{content({onError:e,onDone:t}){return this.callTapsSeries({onError:(t,r,n,i)=>e(r)+i(true),onDone:t})}}const a=new AsyncSeriesHookCodeFactory;class AsyncSeriesHook extends n{compile(e){a.setup(this,e);return a.create(e)}}Object.defineProperties(AsyncSeriesHook.prototype,{_call:{value:undefined,configurable:true,writable:true}});e.exports=AsyncSeriesHook},528:e=>{"use strict";class Hook{constructor(e){if(!Array.isArray(e))e=[];this._args=e;this.taps=[];this.interceptors=[];this.call=this._call;this.promise=this._promise;this.callAsync=this._callAsync;this._x=undefined}compile(e){throw new Error("Abstract: should be overriden")}_createCall(e){return this.compile({taps:this.taps,interceptors:this.interceptors,args:this._args,type:e})}tap(e,t){if(typeof e==="string")e={name:e};if(typeof e!=="object"||e===null)throw new Error("Invalid arguments to tap(options: Object, fn: function)");e=Object.assign({type:"sync",fn:t},e);if(typeof e.name!=="string"||e.name==="")throw new Error("Missing name for tap");e=this._runRegisterInterceptors(e);this._insert(e)}tapAsync(e,t){if(typeof e==="string")e={name:e};if(typeof e!=="object"||e===null)throw new Error("Invalid arguments to tapAsync(options: Object, fn: function)");e=Object.assign({type:"async",fn:t},e);if(typeof e.name!=="string"||e.name==="")throw new Error("Missing name for tapAsync");e=this._runRegisterInterceptors(e);this._insert(e)}tapPromise(e,t){if(typeof e==="string")e={name:e};if(typeof e!=="object"||e===null)throw new Error("Invalid arguments to tapPromise(options: Object, fn: function)");e=Object.assign({type:"promise",fn:t},e);if(typeof e.name!=="string"||e.name==="")throw new Error("Missing name for tapPromise");e=this._runRegisterInterceptors(e);this._insert(e)}_runRegisterInterceptors(e){for(const t of this.interceptors){if(t.register){const r=t.register(e);if(r!==undefined)e=r}}return e}withOptions(e){const t=t=>Object.assign({},e,typeof t==="string"?{name:t}:t);e=Object.assign({},e,this._withOptions);const r=this._withOptionsBase||this;const n=Object.create(r);n.tapAsync=((e,n)=>r.tapAsync(t(e),n)),n.tap=((e,n)=>r.tap(t(e),n));n.tapPromise=((e,n)=>r.tapPromise(t(e),n));n._withOptions=e;n._withOptionsBase=r;return n}isUsed(){return this.taps.length>0||this.interceptors.length>0}intercept(e){this._resetCompilation();this.interceptors.push(Object.assign({},e));if(e.register){for(let t=0;t<this.taps.length;t++)this.taps[t]=e.register(this.taps[t])}}_resetCompilation(){this.call=this._call;this.callAsync=this._callAsync;this.promise=this._promise}_insert(e){this._resetCompilation();let t;if(typeof e.before==="string")t=new Set([e.before]);else if(Array.isArray(e.before)){t=new Set(e.before)}let r=0;if(typeof e.stage==="number")r=e.stage;let n=this.taps.length;while(n>0){n--;const e=this.taps[n];this.taps[n+1]=e;const i=e.stage||0;if(t){if(t.has(e.name)){t.delete(e.name);continue}if(t.size>0){continue}}if(i>r){continue}n++;break}this.taps[n]=e}}function createCompileDelegate(e,t){return function lazyCompileHook(...r){this[e]=this._createCall(t);return this[e](...r)}}Object.defineProperties(Hook.prototype,{_call:{value:createCompileDelegate("call","sync"),configurable:true,writable:true},_promise:{value:createCompileDelegate("promise","promise"),configurable:true,writable:true},_callAsync:{value:createCompileDelegate("callAsync","async"),configurable:true,writable:true}});e.exports=Hook},3207:e=>{"use strict";class HookCodeFactory{constructor(e){this.config=e;this.options=undefined;this._args=undefined}create(e){this.init(e);let t;switch(this.options.type){case"sync":t=new Function(this.args(),'"use strict";\n'+this.header()+this.content({onError:e=>`throw ${e};\n`,onResult:e=>`return ${e};\n`,onDone:()=>"",rethrowIfPossible:true}));break;case"async":t=new Function(this.args({after:"_callback"}),'"use strict";\n'+this.header()+this.content({onError:e=>`_callback(${e});\n`,onResult:e=>`_callback(null, ${e});\n`,onDone:()=>"_callback();\n"}));break;case"promise":let e="";e+='"use strict";\n';e+="return new Promise((_resolve, _reject) => {\n";e+="var _sync = true;\n";e+=this.header();e+=this.content({onError:e=>{let t="";t+="if(_sync)\n";t+=`_resolve(Promise.resolve().then(() => { throw ${e}; }));\n`;t+="else\n";t+=`_reject(${e});\n`;return t},onResult:e=>`_resolve(${e});\n`,onDone:()=>"_resolve();\n"});e+="_sync = false;\n";e+="});\n";t=new Function(this.args(),e);break}this.deinit();return t}setup(e,t){e._x=t.taps.map(e=>e.fn)}init(e){this.options=e;this._args=e.args.slice()}deinit(){this.options=undefined;this._args=undefined}header(){let e="";if(this.needContext()){e+="var _context = {};\n"}else{e+="var _context;\n"}e+="var _x = this._x;\n";if(this.options.interceptors.length>0){e+="var _taps = this.taps;\n";e+="var _interceptors = this.interceptors;\n"}for(let t=0;t<this.options.interceptors.length;t++){const r=this.options.interceptors[t];if(r.call){e+=`${this.getInterceptor(t)}.call(${this.args({before:r.context?"_context":undefined})});\n`}}return e}needContext(){for(const e of this.options.taps)if(e.context)return true;return false}callTap(e,{onError:t,onResult:r,onDone:n,rethrowIfPossible:i}){let a="";let o=false;for(let t=0;t<this.options.interceptors.length;t++){const r=this.options.interceptors[t];if(r.tap){if(!o){a+=`var _tap${e} = ${this.getTap(e)};\n`;o=true}a+=`${this.getInterceptor(t)}.tap(${r.context?"_context, ":""}_tap${e});\n`}}a+=`var _fn${e} = ${this.getTapFn(e)};\n`;const s=this.options.taps[e];switch(s.type){case"sync":if(!i){a+=`var _hasError${e} = false;\n`;a+="try {\n"}if(r){a+=`var _result${e} = _fn${e}(${this.args({before:s.context?"_context":undefined})});\n`}else{a+=`_fn${e}(${this.args({before:s.context?"_context":undefined})});\n`}if(!i){a+="} catch(_err) {\n";a+=`_hasError${e} = true;\n`;a+=t("_err");a+="}\n";a+=`if(!_hasError${e}) {\n`}if(r){a+=r(`_result${e}`)}if(n){a+=n()}if(!i){a+="}\n"}break;case"async":let o="";if(r)o+=`(_err${e}, _result${e}) => {\n`;else o+=`_err${e} => {\n`;o+=`if(_err${e}) {\n`;o+=t(`_err${e}`);o+="} else {\n";if(r){o+=r(`_result${e}`)}if(n){o+=n()}o+="}\n";o+="}";a+=`_fn${e}(${this.args({before:s.context?"_context":undefined,after:o})});\n`;break;case"promise":a+=`var _hasResult${e} = false;\n`;a+=`var _promise${e} = _fn${e}(${this.args({before:s.context?"_context":undefined})});\n`;a+=`if (!_promise${e} || !_promise${e}.then)\n`;a+=` throw new Error('Tap function (tapPromise) did not return promise (returned ' + _promise${e} + ')');\n`;a+=`_promise${e}.then(_result${e} => {\n`;a+=`_hasResult${e} = true;\n`;if(r){a+=r(`_result${e}`)}if(n){a+=n()}a+=`}, _err${e} => {\n`;a+=`if(_hasResult${e}) throw _err${e};\n`;a+=t(`_err${e}`);a+="});\n";break}return a}callTapsSeries({onError:e,onResult:t,onDone:r,rethrowIfPossible:n}){if(this.options.taps.length===0)return r();const i=this.options.taps.findIndex(e=>e.type!=="sync");const a=o=>{if(o>=this.options.taps.length){return r()}const s=()=>a(o+1);const c=e=>{if(e)return"";return r()};return this.callTap(o,{onError:t=>e(o,t,s,c),onResult:t&&(e=>{return t(o,e,s,c)}),onDone:!t&&(()=>{return s()}),rethrowIfPossible:n&&(i<0||o<i)})};return a(0)}callTapsLooping({onError:e,onDone:t,rethrowIfPossible:r}){if(this.options.taps.length===0)return t();const n=this.options.taps.every(e=>e.type==="sync");let i="";if(!n){i+="var _looper = () => {\n";i+="var _loopAsync = false;\n"}i+="var _loop;\n";i+="do {\n";i+="_loop = false;\n";for(let e=0;e<this.options.interceptors.length;e++){const t=this.options.interceptors[e];if(t.loop){i+=`${this.getInterceptor(e)}.loop(${this.args({before:t.context?"_context":undefined})});\n`}}i+=this.callTapsSeries({onError:e,onResult:(e,t,r,i)=>{let a="";a+=`if(${t} !== undefined) {\n`;a+="_loop = true;\n";if(!n)a+="if(_loopAsync) _looper();\n";a+=i(true);a+=`} else {\n`;a+=r();a+=`}\n`;return a},onDone:t&&(()=>{let e="";e+="if(!_loop) {\n";e+=t();e+="}\n";return e}),rethrowIfPossible:r&&n});i+="} while(_loop);\n";if(!n){i+="_loopAsync = true;\n";i+="};\n";i+="_looper();\n"}return i}callTapsParallel({onError:e,onResult:t,onDone:r,rethrowIfPossible:n,onTap:i=((e,t)=>t())}){if(this.options.taps.length<=1){return this.callTapsSeries({onError:e,onResult:t,onDone:r,rethrowIfPossible:n})}let a="";a+="do {\n";a+=`var _counter = ${this.options.taps.length};\n`;if(r){a+="var _done = () => {\n";a+=r();a+="};\n"}for(let o=0;o<this.options.taps.length;o++){const s=()=>{if(r)return"if(--_counter === 0) _done();\n";else return"--_counter;"};const c=e=>{if(e||!r)return"_counter = 0;\n";else return"_counter = 0;\n_done();\n"};a+="if(_counter <= 0) break;\n";a+=i(o,()=>this.callTap(o,{onError:t=>{let r="";r+="if(_counter > 0) {\n";r+=e(o,t,s,c);r+="}\n";return r},onResult:t&&(e=>{let r="";r+="if(_counter > 0) {\n";r+=t(o,e,s,c);r+="}\n";return r}),onDone:!t&&(()=>{return s()}),rethrowIfPossible:n}),s,c)}a+="} while(false);\n";return a}args({before:e,after:t}={}){let r=this._args;if(e)r=[e].concat(r);if(t)r=r.concat(t);if(r.length===0){return""}else{return r.join(", ")}}getTapFn(e){return`_x[${e}]`}getTap(e){return`_taps[${e}]`}getInterceptor(e){return`_interceptors[${e}]`}}e.exports=HookCodeFactory},1475:(e,t,r)=>{"use strict";const n=r(528);const i=r(3207);class SyncBailHookCodeFactory extends i{content({onError:e,onResult:t,onDone:r,rethrowIfPossible:n}){return this.callTapsSeries({onError:(t,r)=>e(r),onResult:(e,r,n)=>`if(${r} !== undefined) {\n${t(r)};\n} else {\n${n()}}\n`,onDone:r,rethrowIfPossible:n})}}const a=new SyncBailHookCodeFactory;class SyncBailHook extends n{tapAsync(){throw new Error("tapAsync is not supported on a SyncBailHook")}tapPromise(){throw new Error("tapPromise is not supported on a SyncBailHook")}compile(e){a.setup(this,e);return a.create(e)}}e.exports=SyncBailHook},3575:(e,t,r)=>{"use strict";const n=r(528);const i=r(3207);class SyncHookCodeFactory extends i{content({onError:e,onResult:t,onDone:r,rethrowIfPossible:n}){return this.callTapsSeries({onError:(t,r)=>e(r),onDone:r,rethrowIfPossible:n})}}const a=new SyncHookCodeFactory;class SyncHook extends n{tapAsync(){throw new Error("tapAsync is not supported on a SyncHook")}tapPromise(){throw new Error("tapPromise is not supported on a SyncHook")}compile(e){a.setup(this,e);return a.create(e)}}e.exports=SyncHook},3460:(e,t,r)=>{"use strict";const n=r(1669);const i=r(1475);function Tapable(){this._pluginCompat=new i(["options"]);this._pluginCompat.tap({name:"Tapable camelCase",stage:100},e=>{e.names.add(e.name.replace(/[- ]([a-z])/g,(e,t)=>t.toUpperCase()))});this._pluginCompat.tap({name:"Tapable this.hooks",stage:200},e=>{let t;for(const r of e.names){t=this.hooks[r];if(t!==undefined){break}}if(t!==undefined){const r={name:e.fn.name||"unnamed compat plugin",stage:e.stage||0};if(e.async)t.tapAsync(r,e.fn);else t.tap(r,e.fn);return true}})}e.exports=Tapable;Tapable.addCompatLayer=function addCompatLayer(e){Tapable.call(e);e.plugin=Tapable.prototype.plugin;e.apply=Tapable.prototype.apply};Tapable.prototype.plugin=n.deprecate(function plugin(e,t){if(Array.isArray(e)){e.forEach(function(e){this.plugin(e,t)},this);return}const r=this._pluginCompat.call({name:e,fn:t,names:new Set([e])});if(!r){throw new Error(`Plugin could not be registered at '${e}'. Hook was not found.\n`+"BREAKING CHANGE: There need to exist a hook at 'this.hooks'. "+"To create a compatibility layer for this hook, hook into 'this._pluginCompat'.")}},"Tapable.plugin is deprecated. Use new API on `.hooks` instead");Tapable.prototype.apply=n.deprecate(function apply(){for(var e=0;e<arguments.length;e++){arguments[e].apply(this)}},"Tapable.apply is deprecated. Call apply on the plugin directly instead")},8732:e=>{"use strict";var t=/[|\\{}()[\]^$+*?.]/g;e.exports=function(e){if(typeof e!=="string"){throw new TypeError("Expected a string")}return e.replace(t,"\\$&")}},6030:(e,t,r)=>{"use strict";var n=r(7553);var i=r(572);var a=r(9641)("expand-brackets");var o=r(8333);var s=r(9769);var c=r(9532);function brackets(e,t){a("initializing from <%s>",__filename);var r=brackets.create(e,t);return r.output}brackets.match=function(e,t,r){e=[].concat(e);var n=o({},r);var i=brackets.matcher(t,n);var a=e.length;var s=-1;var c=[];while(++s<a){var u=e[s];if(i(u)){c.push(u)}}if(c.length===0){if(n.failglob===true){throw new Error('no matches found for "'+t+'"')}if(n.nonull===true||n.nullglob===true){return[t.split("\\").join("")]}}return c};brackets.isMatch=function(e,t,r){return brackets.matcher(t,r)(e)};brackets.matcher=function(e,t){var r=brackets.makeRe(e,t);return function(e){return r.test(e)}};brackets.makeRe=function(e,t){var r=brackets.create(e,t);var n=o({strictErrors:false},t);return c(r.output,n)};brackets.create=function(e,t){var r=t&&t.snapdragon||new s(t);n(r);i(r);var a=r.parse(e,t);a.input=e;var o=r.compile(a,t);o.input=e;return o};brackets.compilers=n;brackets.parsers=i;e.exports=brackets},7553:(e,t,r)=>{"use strict";var n=r(5419);e.exports=function(e){e.compiler.set("escape",function(e){return this.emit("\\"+e.val.replace(/^\\/,""),e)}).set("text",function(e){return this.emit(e.val.replace(/([{}])/g,"\\$1"),e)}).set("posix",function(e){if(e.val==="[::]"){return this.emit("\\[::\\]",e)}var t=n[e.inner];if(typeof t==="undefined"){t="["+e.inner+"]"}return this.emit(t,e)}).set("bracket",function(e){return this.mapVisit(e.nodes)}).set("bracket.open",function(e){return this.emit(e.val,e)}).set("bracket.inner",function(e){var t=e.val;if(t==="["||t==="]"){return this.emit("\\"+e.val,e)}if(t==="^]"){return this.emit("^\\]",e)}if(t==="^"){return this.emit("^",e)}if(/-/.test(t)&&!/(\d-\d|\w-\w)/.test(t)){t=t.split("-").join("\\-")}var r=t.charAt(0)==="^";if(r&&t.indexOf("/")===-1){t+="/"}if(r&&t.indexOf(".")===-1){t+="."}t=t.replace(/\\([1-9])/g,"$1");return this.emit(t,e)}).set("bracket.close",function(e){var t=e.val.replace(/^\\/,"");if(e.parent.escaped===true){return this.emit("\\"+t,e)}return this.emit(t,e)})}},572:(e,t,r)=>{"use strict";var n=r(126);var i=r(4728);var a="(\\[(?=.*\\])|\\])+";var o=n.createRegex(a);function parsers(e){e.state=e.state||{};e.parser.sets.bracket=e.parser.sets.bracket||[];e.parser.capture("escape",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(/^\\(.)/);if(!t)return;return e({type:"escape",val:t[0]})}).capture("text",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(o);if(!t||!t[0])return;return e({type:"text",val:t[0]})}).capture("posix",function(){var t=this.position();var r=this.match(/^\[:(.*?):\](?=.*\])/);if(!r)return;var n=this.isInside("bracket");if(n){e.posix++}return t({type:"posix",insideBracket:n,inner:r[1],val:r[0]})}).capture("bracket",function(){}).capture("bracket.open",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\[(?=.*\])/);if(!r)return;var a=this.prev();var o=n.last(a.nodes);if(e.slice(-1)==="\\"&&!this.isInside("bracket")){o.val=o.val.slice(0,o.val.length-1);return t({type:"escape",val:r[0]})}var s=t({type:"bracket.open",val:r[0]});if(o.type==="bracket.open"||this.isInside("bracket")){s.val="\\"+s.val;s.type="bracket.inner";s.escaped=true;return s}var c=t({type:"bracket",nodes:[s]});i(c,"parent",a);i(s,"parent",c);this.push("bracket",c);a.nodes.push(c)}).capture("bracket.inner",function(){if(!this.isInside("bracket"))return;var e=this.position();var t=this.match(o);if(!t||!t[0])return;var r=this.input.charAt(0);var n=t[0];var i=e({type:"bracket.inner",val:n});if(n==="\\\\"){return i}var a=n.charAt(0);var s=n.slice(-1);if(a==="!"){n="^"+n.slice(1)}if(s==="\\"||n==="^"&&r==="]"){n+=this.input[0];this.consume(1)}i.val=n;return i}).capture("bracket.close",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\]/);if(!r)return;var a=this.prev();var o=n.last(a.nodes);if(e.slice(-1)==="\\"&&!this.isInside("bracket")){o.val=o.val.slice(0,o.val.length-1);return t({type:"escape",val:r[0]})}var s=t({type:"bracket.close",rest:this.input,val:r[0]});if(o.type==="bracket.open"){s.type="bracket.inner";s.escaped=true;return s}var c=this.pop("bracket");if(!this.isType(c,"bracket")){if(this.options.strict){throw new Error('missing opening "["')}s.type="bracket.inner";s.escaped=true;return s}c.nodes.push(s);i(s,"parent",c)})}e.exports=parsers;e.exports.TEXT_REGEX=a},126:(e,t,r)=>{"use strict";var n=r(9532);var i=r(3089);var a;t.last=function(e){return e[e.length-1]};t.createRegex=function(e,t){if(a)return a;var r={contains:true,strictClose:false};var o=i.create(e,r);var s;if(typeof t==="string"){s=n("^(?:"+t+"|"+o+")",r)}else{s=n(o,r)}return a=s}},6157:(e,t,r)=>{t=e.exports=r(5763);t.log=log;t.formatArgs=formatArgs;t.save=save;t.load=load;t.useColors=useColors;t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:localstorage();t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function useColors(){if(typeof window!=="undefined"&&window.process&&window.process.type==="renderer"){return true}return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function formatArgs(e){var r=this.useColors;e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+t.humanize(this.diff);if(!r)return;var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0;var a=0;e[0].replace(/%[a-zA-Z%]/g,function(e){if("%%"===e)return;i++;if("%c"===e){a=i}});e.splice(a,0,n)}function log(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function save(e){try{if(null==e){t.storage.removeItem("debug")}else{t.storage.debug=e}}catch(e){}}function load(){var e;try{e=t.storage.debug}catch(e){}if(!e&&typeof process!=="undefined"&&"env"in process){e=process.env.DEBUG}return e}t.enable(load());function localstorage(){try{return window.localStorage}catch(e){}}},5763:(e,t,r)=>{t=e.exports=createDebug.debug=createDebug["default"]=createDebug;t.coerce=coerce;t.disable=disable;t.enable=enable;t.enabled=enabled;t.humanize=r(8888);t.names=[];t.skips=[];t.formatters={};var n;function selectColor(e){var r=0,n;for(n in e){r=(r<<5)-r+e.charCodeAt(n);r|=0}return t.colors[Math.abs(r)%t.colors.length]}function createDebug(e){function debug(){if(!debug.enabled)return;var e=debug;var r=+new Date;var i=r-(n||r);e.diff=i;e.prev=n;e.curr=r;n=r;var a=new Array(arguments.length);for(var o=0;o<a.length;o++){a[o]=arguments[o]}a[0]=t.coerce(a[0]);if("string"!==typeof a[0]){a.unshift("%O")}var s=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,function(r,n){if(r==="%%")return r;s++;var i=t.formatters[n];if("function"===typeof i){var o=a[s];r=i.call(e,o);a.splice(s,1);s--}return r});t.formatArgs.call(e,a);var c=debug.log||t.log||console.log.bind(console);c.apply(e,a)}debug.namespace=e;debug.enabled=t.enabled(e);debug.useColors=t.useColors();debug.color=selectColor(e);if("function"===typeof t.init){t.init(debug)}return debug}function enable(e){t.save(e);t.names=[];t.skips=[];var r=(typeof e==="string"?e:"").split(/[\s,]+/);var n=r.length;for(var i=0;i<n;i++){if(!r[i])continue;e=r[i].replace(/\*/g,".*?");if(e[0]==="-"){t.skips.push(new RegExp("^"+e.substr(1)+"$"))}else{t.names.push(new RegExp("^"+e+"$"))}}}function disable(){t.enable("")}function enabled(e){var r,n;for(r=0,n=t.skips.length;r<n;r++){if(t.skips[r].test(e)){return false}}for(r=0,n=t.names.length;r<n;r++){if(t.names[r].test(e)){return true}}return false}function coerce(e){if(e instanceof Error)return e.stack||e.message;return e}},9641:(e,t,r)=>{if(typeof process!=="undefined"&&process.type==="renderer"){e.exports=r(6157)}else{e.exports=r(2681)}},2681:(e,t,r)=>{var n=r(8993);var i=r(1669);t=e.exports=r(5763);t.init=init;t.log=log;t.formatArgs=formatArgs;t.save=save;t.load=load;t.useColors=useColors;t.colors=[6,2,3,4,5,1];t.inspectOpts=Object.keys(process.env).filter(function(e){return/^debug_/i.test(e)}).reduce(function(e,t){var r=t.substring(6).toLowerCase().replace(/_([a-z])/g,function(e,t){return t.toUpperCase()});var n=process.env[t];if(/^(yes|on|true|enabled)$/i.test(n))n=true;else if(/^(no|off|false|disabled)$/i.test(n))n=false;else if(n==="null")n=null;else n=Number(n);e[r]=n;return e},{});var a=parseInt(process.env.DEBUG_FD,10)||2;if(1!==a&&2!==a){i.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")()}var o=1===a?process.stdout:2===a?process.stderr:createWritableStdioStream(a);function useColors(){return"colors"in t.inspectOpts?Boolean(t.inspectOpts.colors):n.isatty(a)}t.formatters.o=function(e){this.inspectOpts.colors=this.useColors;return i.inspect(e,this.inspectOpts).split("\n").map(function(e){return e.trim()}).join(" ")};t.formatters.O=function(e){this.inspectOpts.colors=this.useColors;return i.inspect(e,this.inspectOpts)};function formatArgs(e){var r=this.namespace;var n=this.useColors;if(n){var i=this.color;var a=" [3"+i+";1m"+r+" "+"";e[0]=a+e[0].split("\n").join("\n"+a);e.push("[3"+i+"m+"+t.humanize(this.diff)+"")}else{e[0]=(new Date).toUTCString()+" "+r+" "+e[0]}}function log(){return o.write(i.format.apply(i,arguments)+"\n")}function save(e){if(null==e){delete process.env.DEBUG}else{process.env.DEBUG=e}}function load(){return process.env.DEBUG}function createWritableStdioStream(e){var t;var i=process.binding("tty_wrap");switch(i.guessHandleType(e)){case"TTY":t=new n.WriteStream(e);t._type="tty";if(t._handle&&t._handle.unref){t._handle.unref()}break;case"FILE":var a=r(5747);t=new a.SyncWriteStream(e,{autoClose:false});t._type="fs";break;case"PIPE":case"TCP":var o=r(1631);t=new o.Socket({fd:e,readable:false,writable:true});t.readable=false;t.read=null;t._type="pipe";if(t._handle&&t._handle.unref){t._handle.unref()}break;default:throw new Error("Implement me. Unknown stream file type!")}t.fd=e;t._isStdio=true;return t}function init(e){e.inspectOpts={};var r=Object.keys(t.inspectOpts);for(var n=0;n<r.length;n++){e.inspectOpts[r[n]]=t.inspectOpts[r[n]]}}t.enable(load())},8888:e=>{var t=1e3;var r=t*60;var n=r*60;var i=n*24;var a=i*365.25;e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0){return parse(e)}else if(r==="number"&&isNaN(e)===false){return t.long?fmtLong(e):fmtShort(e)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function parse(e){e=String(e);if(e.length>100){return}var o=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(!o){return}var s=parseFloat(o[1]);var c=(o[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*a;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return undefined}}function fmtShort(e){if(e>=i){return Math.round(e/i)+"d"}if(e>=n){return Math.round(e/n)+"h"}if(e>=r){return Math.round(e/r)+"m"}if(e>=t){return Math.round(e/t)+"s"}return e+"ms"}function fmtLong(e){return plural(e,i,"day")||plural(e,n,"hour")||plural(e,r,"minute")||plural(e,t,"second")||e+" ms"}function plural(e,t,r){if(e<t){return}if(e<t*1.5){return Math.floor(e/t)+" "+r}return Math.ceil(e/t)+" "+r+"s"}},8333:(e,t,r)=>{"use strict";var n=r(485);e.exports=function extend(e){if(!n(e)){e={}}var t=arguments.length;for(var r=1;r<t;r++){var i=arguments[r];if(n(i)){assign(e,i)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},2655:(e,t,r)=>{"use strict";var n=r(8333);var i=r(6974);var a=r(9532);var o=r(569);var s=r(3041);var c=r(8992);var u=r(8366);var l=1024*64;function extglob(e,t){return extglob.create(e,t).output}extglob.match=function(e,t,r){if(typeof t!=="string"){throw new TypeError("expected pattern to be a string")}e=u.arrayify(e);var n=extglob.matcher(t,r);var a=e.length;var o=-1;var s=[];while(++o<a){var c=e[o];if(n(c)){s.push(c)}}if(typeof r==="undefined"){return i(s)}if(s.length===0){if(r.failglob===true){throw new Error('no matches found for "'+t+'"')}if(r.nonull===true||r.nullglob===true){return[t.split("\\").join("")]}}return r.nodupes!==false?i(s):s};extglob.isMatch=function(e,t,r){if(typeof t!=="string"){throw new TypeError("expected pattern to be a string")}if(typeof e!=="string"){throw new TypeError("expected a string")}if(t===e){return true}if(t===""||t===" "||t==="."){return t===e}var n=u.memoize("isMatch",t,r,extglob.matcher);return n(e)};extglob.contains=function(e,t,r){if(typeof e!=="string"){throw new TypeError("expected a string")}if(t===""||t===" "||t==="."){return t===e}var i=n({},r,{contains:true});i.strictClose=false;i.strictOpen=false;return extglob.isMatch(e,t,i)};extglob.matcher=function(e,t){if(typeof e!=="string"){throw new TypeError("expected pattern to be a string")}function matcher(){var r=extglob.makeRe(e,t);return function(e){return r.test(e)}}return u.memoize("matcher",e,t,matcher)};extglob.create=function(e,t){if(typeof e!=="string"){throw new TypeError("expected pattern to be a string")}function create(){var r=new c(t);var n=r.parse(e,t);return r.compile(n,t)}return u.memoize("create",e,t,create)};extglob.capture=function(e,t,r){var i=extglob.makeRe(e,n({capture:true},r));function match(){return function(e){var t=i.exec(e);if(!t){return null}return t.slice(1)}}var a=u.memoize("capture",e,r,match);return a(t)};extglob.makeRe=function(e,t){if(e instanceof RegExp){return e}if(typeof e!=="string"){throw new TypeError("expected pattern to be a string")}if(e.length>l){throw new Error("expected pattern to be less than "+l+" characters")}function makeRe(){var r=n({strictErrors:false},t);if(r.strictErrors===true)r.strict=true;var i=extglob.create(e,r);return a(i.output,r)}var r=u.memoize("makeRe",e,t,makeRe);if(r.source.length>l){throw new SyntaxError("potentially malicious regex detected")}return r};extglob.cache=u.cache;extglob.clearCache=function(){extglob.cache.__data__={}};extglob.Extglob=c;extglob.compilers=o;extglob.parsers=s;e.exports=extglob},569:(e,t,r)=>{"use strict";var n=r(6030);e.exports=function(e){function star(){if(typeof e.options.star==="function"){return e.options.star.apply(this,arguments)}if(typeof e.options.star==="string"){return e.options.star}return".*?"}e.use(n.compilers);e.compiler.set("escape",function(e){return this.emit(e.val,e)}).set("dot",function(e){return this.emit("\\"+e.val,e)}).set("qmark",function(e){var t="[^\\\\/.]";var r=this.prev();if(e.parsed.slice(-1)==="("){var n=e.rest.charAt(0);if(n!=="!"&&n!=="="&&n!==":"){return this.emit(t,e)}return this.emit(e.val,e)}if(r.type==="text"&&r.val){return this.emit(t,e)}if(e.val.length>1){t+="{"+e.val.length+"}"}return this.emit(t,e)}).set("plus",function(e){var t=e.parsed.slice(-1);if(t==="]"||t===")"){return this.emit(e.val,e)}var r=this.output.slice(-1);if(!this.output||/[?*+]/.test(r)&&e.parent.type!=="bracket"){return this.emit("\\+",e)}if(/\w/.test(r)&&!e.inside){return this.emit("+\\+?",e)}return this.emit("+",e)}).set("star",function(e){var t=this.prev();var r=t.type!=="text"&&t.type!=="escape"?"(?!\\.)":"";return this.emit(r+star.call(this,e),e)}).set("paren",function(e){return this.mapVisit(e.nodes)}).set("paren.open",function(e){var t=this.options.capture?"(":"";switch(e.parent.prefix){case"!":case"^":return this.emit(t+"(?:(?!(?:",e);case"*":case"+":case"?":case"@":return this.emit(t+"(?:",e);default:{var r=e.val;if(this.options.bash===true){r="\\"+r}else if(!this.options.capture&&r==="("&&e.parent.rest[0]!=="?"){r+="?:"}return this.emit(r,e)}}}).set("paren.close",function(e){var t=this.options.capture?")":"";switch(e.prefix){case"!":case"^":var r=/^(\)|$)/.test(e.rest)?"$":"";var n=star.call(this,e);if(e.parent.hasSlash&&!this.options.star&&this.options.slash!==false){n=".*?"}return this.emit(r+("))"+n+")")+t,e);case"*":case"+":case"?":return this.emit(")"+e.prefix+t,e);case"@":return this.emit(")"+t,e);default:{var i=(this.options.bash===true?"\\":"")+")";return this.emit(i,e)}}}).set("text",function(e){var t=e.val.replace(/[\[\]]/g,"\\$&");return this.emit(t,e)})}},8992:(e,t,r)=>{"use strict";var n=r(9769);var i=r(5855);var a=r(8333);var o=r(569);var s=r(3041);function Extglob(e){this.options=a({source:"extglob"},e);this.snapdragon=this.options.snapdragon||new n(this.options);this.snapdragon.patterns=this.snapdragon.patterns||{};this.compiler=this.snapdragon.compiler;this.parser=this.snapdragon.parser;o(this.snapdragon);s(this.snapdragon);i(this.snapdragon,"parse",function(e,t){var r=n.prototype.parse.apply(this,arguments);r.input=e;var a=this.parser.stack.pop();if(a&&this.options.strict!==true){var o=a.nodes[0];o.val="\\"+o.val;var s=o.parent.nodes[1];if(s.type==="star"){s.loose=true}}i(r,"parser",this.parser);return r});i(this,"parse",function(e,t){return this.snapdragon.parse.apply(this.snapdragon,arguments)});i(this,"compile",function(e,t){return this.snapdragon.compile.apply(this.snapdragon,arguments)})}e.exports=Extglob},3041:(e,t,r)=>{"use strict";var n=r(6030);var i=r(5855);var a=r(8366);var o="([!@*?+]?\\(|\\)|[*?.+\\\\]|\\[:?(?=.*\\])|:?\\])+";var s=a.createRegex(o);function parsers(e){e.state=e.state||{};e.use(n.parsers);e.parser.sets.paren=e.parser.sets.paren||[];e.parser.capture("paren.open",function(){var e=this.parsed;var t=this.position();var r=this.match(/^([!@*?+])?\(/);if(!r)return;var n=this.prev();var a=r[1];var o=r[0];var s=t({type:"paren.open",parsed:e,val:o});var c=t({type:"paren",prefix:a,nodes:[s]});if(a==="!"&&n.type==="paren"&&n.prefix==="!"){n.prefix="@";c.prefix="@"}i(c,"rest",this.input);i(c,"parsed",e);i(c,"parent",n);i(s,"parent",c);this.push("paren",c);n.nodes.push(c)}).capture("paren.close",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\)/);if(!r)return;var n=this.pop("paren");var a=t({type:"paren.close",rest:this.input,parsed:e,val:r[0]});if(!this.isType(n,"paren")){if(this.options.strict){throw new Error('missing opening paren: "("')}a.escaped=true;return a}a.prefix=n.prefix;n.nodes.push(a);i(a,"parent",n)}).capture("escape",function(){var e=this.position();var t=this.match(/^\\(.)/);if(!t)return;return e({type:"escape",val:t[0],ch:t[1]})}).capture("qmark",function(){var t=this.parsed;var r=this.position();var n=this.match(/^\?+(?!\()/);if(!n)return;e.state.metachar=true;return r({type:"qmark",rest:this.input,parsed:t,val:n[0]})}).capture("star",/^\*(?!\()/).capture("plus",/^\+(?!\()/).capture("dot",/^\./).capture("text",s)}e.exports.TEXT_REGEX=o;e.exports=parsers},8366:(e,t,r)=>{"use strict";var n=r(3089);var i=r(9111);var a=e.exports;var o=a.cache=new i;a.arrayify=function(e){if(!Array.isArray(e)){return[e]}return e};a.memoize=function(e,t,r,n){var i=a.createKey(e+t,r);if(o.has(e,i)){return o.get(e,i)}var s=n(t,r);if(r&&r.cache===false){return s}o.set(e,i,s);return s};a.createKey=function(e,t){var r=e;if(typeof t==="undefined"){return r}for(var n in t){r+=";"+n+"="+String(t[n])}return r};a.createRegex=function(e){var t={contains:true,strictClose:false};return n(e,t)}},5855:(e,t,r)=>{"use strict";var n=r(8586);e.exports=function defineProperty(e,t,r){if(typeof e!=="object"&&typeof e!=="function"){throw new TypeError("expected an object or function.")}if(typeof t!=="string"){throw new TypeError("expected `prop` to be a string.")}if(n(r)&&("set"in r||"get"in r)){return Object.defineProperty(e,t,r)}return Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}},9430:(e,t,r)=>{"use strict";var n=r(1669);var i=r(5552);var a=r(8333);var o=r(9437);var s=r(5837);function fillRange(e,t,r,o){if(typeof e==="undefined"){return[]}if(typeof t==="undefined"||e===t){var s=typeof e==="string";if(i(e)&&!toNumber(e)){return[s?"0":0]}return[e]}if(typeof r!=="number"&&typeof r!=="string"){o=r;r=undefined}if(typeof o==="function"){o={transform:o}}var c=a({step:r},o);if(c.step&&!isValidNumber(c.step)){if(c.strictRanges===true){throw new TypeError("expected options.step to be a number")}return[]}c.isNumber=isValidNumber(e)&&isValidNumber(t);if(!c.isNumber&&!isValid(e,t)){if(c.strictRanges===true){throw new RangeError("invalid range arguments: "+n.inspect([e,t]))}return[]}c.isPadded=isPadded(e)||isPadded(t);c.toString=c.stringify||typeof c.step==="string"||typeof e==="string"||typeof t==="string"||!c.isNumber;if(c.isPadded){c.maxLength=Math.max(String(e).length,String(t).length)}if(typeof c.optimize==="boolean")c.toRegex=c.optimize;if(typeof c.makeRe==="boolean")c.toRegex=c.makeRe;return expand(e,t,c)}function expand(e,t,r){var n=r.isNumber?toNumber(e):e.charCodeAt(0);var i=r.isNumber?toNumber(t):t.charCodeAt(0);var a=Math.abs(toNumber(r.step))||1;if(r.toRegex&&a===1){return toRange(n,i,e,t,r)}var o={greater:[],lesser:[]};var s=n<i;var c=new Array(Math.round((s?i-n:n-i)/a));var u=0;while(s?n<=i:n>=i){var l=r.isNumber?n:String.fromCharCode(n);if(r.toRegex&&(l>=0||!r.isNumber)){o.greater.push(l)}else{o.lesser.push(Math.abs(l))}if(r.isPadded){l=zeros(l,r)}if(r.toString){l=String(l)}if(typeof r.transform==="function"){c[u++]=r.transform(l,n,i,a,u,c,r)}else{c[u++]=l}if(s){n+=a}else{n-=a}}if(r.toRegex===true){return toSequence(c,o,r)}return c}function toRange(e,t,r,n,i){if(i.isPadded){return s(r,n,i)}if(i.isNumber){return s(Math.min(e,t),Math.max(e,t),i)}var r=String.fromCharCode(Math.min(e,t));var n=String.fromCharCode(Math.max(e,t));return"["+r+"-"+n+"]"}function toSequence(e,t,r){var n="",i="";if(t.greater.length){n=t.greater.join("|")}if(t.lesser.length){i="-("+t.lesser.join("|")+")"}var a=n&&i?n+"|"+i:n||i;if(r.capture){return"("+a+")"}return a}function zeros(e,t){if(t.isPadded){var r=String(e);var n=r.length;var i="";if(r.charAt(0)==="-"){i="-";r=r.slice(1)}var a=t.maxLength-n;var s=o("0",a);e=i+s+r}if(t.stringify){return String(e)}return e}function toNumber(e){return Number(e)||0}function isPadded(e){return/^-?0\d/.test(e)}function isValid(e,t){return(isValidNumber(e)||isValidLetter(e))&&(isValidNumber(t)||isValidLetter(t))}function isValidLetter(e){return typeof e==="string"&&e.length===1&&/^\w+$/.test(e)}function isValidNumber(e){return i(e)&&!/\./.test(e)}e.exports=fillRange},1718:e=>{"use strict";e.exports=function forIn(e,t,r){for(var n in e){if(t.call(r,e[n],n,e)===false){break}}}},9111:(e,t,r)=>{"use strict";var n=r(1637);function FragmentCache(e){this.caches=e||{}}FragmentCache.prototype={cache:function(e){return this.caches[e]||(this.caches[e]=new n)},set:function(e,t,r){var n=this.cache(e);n.set(t,r);return n},has:function(e,t){return typeof this.get(e,t)!=="undefined"},get:function(e,t){var r=this.cache(e);if(typeof t==="string"){return r.get(t)}return r}};t=e.exports=FragmentCache},3826:e=>{e.exports=function(e,t,r,n,i){if(!isObject(e)||!t){return e}t=toString(t);if(r)t+="."+toString(r);if(n)t+="."+toString(n);if(i)t+="."+toString(i);if(t in e){return e[t]}var a=t.split(".");var o=a.length;var s=-1;while(e&&++s<o){var c=a[s];while(c[c.length-1]==="\\"){c=c.slice(0,-1)+"."+a[++s]}e=e[c]}return e};function isObject(e){return e!==null&&(typeof e==="object"||typeof e==="function")}function toString(e){if(!e)return"";if(Array.isArray(e)){return e.join(".")}return e}},858:e=>{"use strict";e.exports=clone;function clone(e){if(e===null||typeof e!=="object")return e;if(e instanceof Object)var t={__proto__:e.__proto__};else var t=Object.create(null);Object.getOwnPropertyNames(e).forEach(function(r){Object.defineProperty(t,r,Object.getOwnPropertyDescriptor(e,r))});return t}},5808:(e,t,r)=>{var n=r(5747);var i=r(2444);var a=r(4073);var o=r(858);var s=r(1669);var c;var u;if(typeof Symbol==="function"&&typeof Symbol.for==="function"){c=Symbol.for("graceful-fs.queue");u=Symbol.for("graceful-fs.previous")}else{c="___graceful-fs.queue";u="___graceful-fs.previous"}function noop(){}function publishQueue(e,t){Object.defineProperty(e,c,{get:function(){return t}})}var l=noop;if(s.debuglog)l=s.debuglog("gfs4");else if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||""))l=function(){var e=s.format.apply(s,arguments);e="GFS4: "+e.split(/\n/).join("\nGFS4: ");console.error(e)};if(!n[c]){var f=global[c]||[];publishQueue(n,f);n.close=function(e){function close(t,r){return e.call(n,t,function(e){if(!e){retry()}if(typeof r==="function")r.apply(this,arguments)})}Object.defineProperty(close,u,{value:e});return close}(n.close);n.closeSync=function(e){function closeSync(t){e.apply(n,arguments);retry()}Object.defineProperty(closeSync,u,{value:e});return closeSync}(n.closeSync);if(/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")){process.on("exit",function(){l(n[c]);r(2357).equal(n[c].length,0)})}}if(!global[c]){publishQueue(global,n[c])}e.exports=patch(o(n));if(process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!n.__patched){e.exports=patch(n);n.__patched=true}function patch(e){i(e);e.gracefulify=patch;e.createReadStream=createReadStream;e.createWriteStream=createWriteStream;var t=e.readFile;e.readFile=readFile;function readFile(e,r,n){if(typeof r==="function")n=r,r=null;return go$readFile(e,r,n);function go$readFile(e,r,n){return t(e,r,function(t){if(t&&(t.code==="EMFILE"||t.code==="ENFILE"))enqueue([go$readFile,[e,r,n]]);else{if(typeof n==="function")n.apply(this,arguments);retry()}})}}var r=e.writeFile;e.writeFile=writeFile;function writeFile(e,t,n,i){if(typeof n==="function")i=n,n=null;return go$writeFile(e,t,n,i);function go$writeFile(e,t,n,i){return r(e,t,n,function(r){if(r&&(r.code==="EMFILE"||r.code==="ENFILE"))enqueue([go$writeFile,[e,t,n,i]]);else{if(typeof i==="function")i.apply(this,arguments);retry()}})}}var n=e.appendFile;if(n)e.appendFile=appendFile;function appendFile(e,t,r,i){if(typeof r==="function")i=r,r=null;return go$appendFile(e,t,r,i);function go$appendFile(e,t,r,i){return n(e,t,r,function(n){if(n&&(n.code==="EMFILE"||n.code==="ENFILE"))enqueue([go$appendFile,[e,t,r,i]]);else{if(typeof i==="function")i.apply(this,arguments);retry()}})}}var o=e.readdir;e.readdir=readdir;function readdir(e,t,r){var n=[e];if(typeof t!=="function"){n.push(t)}else{r=t}n.push(go$readdir$cb);return go$readdir(n);function go$readdir$cb(e,t){if(t&&t.sort)t.sort();if(e&&(e.code==="EMFILE"||e.code==="ENFILE"))enqueue([go$readdir,[n]]);else{if(typeof r==="function")r.apply(this,arguments);retry()}}}function go$readdir(t){return o.apply(e,t)}if(process.version.substr(0,4)==="v0.8"){var s=a(e);ReadStream=s.ReadStream;WriteStream=s.WriteStream}var c=e.ReadStream;if(c){ReadStream.prototype=Object.create(c.prototype);ReadStream.prototype.open=ReadStream$open}var u=e.WriteStream;if(u){WriteStream.prototype=Object.create(u.prototype);WriteStream.prototype.open=WriteStream$open}Object.defineProperty(e,"ReadStream",{get:function(){return ReadStream},set:function(e){ReadStream=e},enumerable:true,configurable:true});Object.defineProperty(e,"WriteStream",{get:function(){return WriteStream},set:function(e){WriteStream=e},enumerable:true,configurable:true});var l=ReadStream;Object.defineProperty(e,"FileReadStream",{get:function(){return l},set:function(e){l=e},enumerable:true,configurable:true});var f=WriteStream;Object.defineProperty(e,"FileWriteStream",{get:function(){return f},set:function(e){f=e},enumerable:true,configurable:true});function ReadStream(e,t){if(this instanceof ReadStream)return c.apply(this,arguments),this;else return ReadStream.apply(Object.create(ReadStream.prototype),arguments)}function ReadStream$open(){var e=this;open(e.path,e.flags,e.mode,function(t,r){if(t){if(e.autoClose)e.destroy();e.emit("error",t)}else{e.fd=r;e.emit("open",r);e.read()}})}function WriteStream(e,t){if(this instanceof WriteStream)return u.apply(this,arguments),this;else return WriteStream.apply(Object.create(WriteStream.prototype),arguments)}function WriteStream$open(){var e=this;open(e.path,e.flags,e.mode,function(t,r){if(t){e.destroy();e.emit("error",t)}else{e.fd=r;e.emit("open",r)}})}function createReadStream(t,r){return new e.ReadStream(t,r)}function createWriteStream(t,r){return new e.WriteStream(t,r)}var d=e.open;e.open=open;function open(e,t,r,n){if(typeof r==="function")n=r,r=null;return go$open(e,t,r,n);function go$open(e,t,r,n){return d(e,t,r,function(i,a){if(i&&(i.code==="EMFILE"||i.code==="ENFILE"))enqueue([go$open,[e,t,r,n]]);else{if(typeof n==="function")n.apply(this,arguments);retry()}})}}return e}function enqueue(e){l("ENQUEUE",e[0].name,e[1]);n[c].push(e)}function retry(){var e=n[c].shift();if(e){l("RETRY",e[0].name,e[1]);e[0].apply(null,e[1])}}},4073:(e,t,r)=>{var n=r(2413).Stream;e.exports=legacy;function legacy(e){return{ReadStream:ReadStream,WriteStream:WriteStream};function ReadStream(t,r){if(!(this instanceof ReadStream))return new ReadStream(t,r);n.call(this);var i=this;this.path=t;this.fd=null;this.readable=true;this.paused=false;this.flags="r";this.mode=438;this.bufferSize=64*1024;r=r||{};var a=Object.keys(r);for(var o=0,s=a.length;o<s;o++){var c=a[o];this[c]=r[c]}if(this.encoding)this.setEncoding(this.encoding);if(this.start!==undefined){if("number"!==typeof this.start){throw TypeError("start must be a Number")}if(this.end===undefined){this.end=Infinity}else if("number"!==typeof this.end){throw TypeError("end must be a Number")}if(this.start>this.end){throw new Error("start must be <= end")}this.pos=this.start}if(this.fd!==null){process.nextTick(function(){i._read()});return}e.open(this.path,this.flags,this.mode,function(e,t){if(e){i.emit("error",e);i.readable=false;return}i.fd=t;i.emit("open",t);i._read()})}function WriteStream(t,r){if(!(this instanceof WriteStream))return new WriteStream(t,r);n.call(this);this.path=t;this.fd=null;this.writable=true;this.flags="w";this.encoding="binary";this.mode=438;this.bytesWritten=0;r=r||{};var i=Object.keys(r);for(var a=0,o=i.length;a<o;a++){var s=i[a];this[s]=r[s]}if(this.start!==undefined){if("number"!==typeof this.start){throw TypeError("start must be a Number")}if(this.start<0){throw new Error("start must be >= zero")}this.pos=this.start}this.busy=false;this._queue=[];if(this.fd===null){this._open=e.open;this._queue.push([this._open,this.path,this.flags,this.mode,undefined]);this.flush()}}}},2444:(e,t,r)=>{var n=r(7619);var i=process.cwd;var a=null;var o=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){if(!a)a=i.call(process);return a};try{process.cwd()}catch(e){}var s=process.chdir;process.chdir=function(e){a=null;s.call(process,e)};e.exports=patch;function patch(e){if(n.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)){patchLchmod(e)}if(!e.lutimes){patchLutimes(e)}e.chown=chownFix(e.chown);e.fchown=chownFix(e.fchown);e.lchown=chownFix(e.lchown);e.chmod=chmodFix(e.chmod);e.fchmod=chmodFix(e.fchmod);e.lchmod=chmodFix(e.lchmod);e.chownSync=chownFixSync(e.chownSync);e.fchownSync=chownFixSync(e.fchownSync);e.lchownSync=chownFixSync(e.lchownSync);e.chmodSync=chmodFixSync(e.chmodSync);e.fchmodSync=chmodFixSync(e.fchmodSync);e.lchmodSync=chmodFixSync(e.lchmodSync);e.stat=statFix(e.stat);e.fstat=statFix(e.fstat);e.lstat=statFix(e.lstat);e.statSync=statFixSync(e.statSync);e.fstatSync=statFixSync(e.fstatSync);e.lstatSync=statFixSync(e.lstatSync);if(!e.lchmod){e.lchmod=function(e,t,r){if(r)process.nextTick(r)};e.lchmodSync=function(){}}if(!e.lchown){e.lchown=function(e,t,r,n){if(n)process.nextTick(n)};e.lchownSync=function(){}}if(o==="win32"){e.rename=function(t){return function(r,n,i){var a=Date.now();var o=0;t(r,n,function CB(s){if(s&&(s.code==="EACCES"||s.code==="EPERM")&&Date.now()-a<6e4){setTimeout(function(){e.stat(n,function(e,a){if(e&&e.code==="ENOENT")t(r,n,CB);else i(s)})},o);if(o<100)o+=10;return}if(i)i(s)})}}(e.rename)}e.read=function(t){function read(r,n,i,a,o,s){var c;if(s&&typeof s==="function"){var u=0;c=function(l,f,d){if(l&&l.code==="EAGAIN"&&u<10){u++;return t.call(e,r,n,i,a,o,c)}s.apply(this,arguments)}}return t.call(e,r,n,i,a,o,c)}read.__proto__=t;return read}(e.read);e.readSync=function(t){return function(r,n,i,a,o){var s=0;while(true){try{return t.call(e,r,n,i,a,o)}catch(e){if(e.code==="EAGAIN"&&s<10){s++;continue}throw e}}}}(e.readSync);function patchLchmod(e){e.lchmod=function(t,r,i){e.open(t,n.O_WRONLY|n.O_SYMLINK,r,function(t,n){if(t){if(i)i(t);return}e.fchmod(n,r,function(t){e.close(n,function(e){if(i)i(t||e)})})})};e.lchmodSync=function(t,r){var i=e.openSync(t,n.O_WRONLY|n.O_SYMLINK,r);var a=true;var o;try{o=e.fchmodSync(i,r);a=false}finally{if(a){try{e.closeSync(i)}catch(e){}}else{e.closeSync(i)}}return o}}function patchLutimes(e){if(n.hasOwnProperty("O_SYMLINK")){e.lutimes=function(t,r,i,a){e.open(t,n.O_SYMLINK,function(t,n){if(t){if(a)a(t);return}e.futimes(n,r,i,function(t){e.close(n,function(e){if(a)a(t||e)})})})};e.lutimesSync=function(t,r,i){var a=e.openSync(t,n.O_SYMLINK);var o;var s=true;try{o=e.futimesSync(a,r,i);s=false}finally{if(s){try{e.closeSync(a)}catch(e){}}else{e.closeSync(a)}}return o}}else{e.lutimes=function(e,t,r,n){if(n)process.nextTick(n)};e.lutimesSync=function(){}}}function chmodFix(t){if(!t)return t;return function(r,n,i){return t.call(e,r,n,function(e){if(chownErOk(e))e=null;if(i)i.apply(this,arguments)})}}function chmodFixSync(t){if(!t)return t;return function(r,n){try{return t.call(e,r,n)}catch(e){if(!chownErOk(e))throw e}}}function chownFix(t){if(!t)return t;return function(r,n,i,a){return t.call(e,r,n,i,function(e){if(chownErOk(e))e=null;if(a)a.apply(this,arguments)})}}function chownFixSync(t){if(!t)return t;return function(r,n,i){try{return t.call(e,r,n,i)}catch(e){if(!chownErOk(e))throw e}}}function statFix(t){if(!t)return t;return function(r,n,i){if(typeof n==="function"){i=n;n=null}function callback(e,t){if(t){if(t.uid<0)t.uid+=4294967296;if(t.gid<0)t.gid+=4294967296}if(i)i.apply(this,arguments)}return n?t.call(e,r,n,callback):t.call(e,r,callback)}}function statFixSync(t){if(!t)return t;return function(r,n){var i=n?t.call(e,r,n):t.call(e,r);if(i.uid<0)i.uid+=4294967296;if(i.gid<0)i.gid+=4294967296;return i}}function chownErOk(e){if(!e)return true;if(e.code==="ENOSYS")return true;var t=!process.getuid||process.getuid()!==0;if(t){if(e.code==="EINVAL"||e.code==="EPERM")return true}return false}}},3283:(e,t,r)=>{"use strict";var n=r(977);var i=r(2160);var a=r(3826);e.exports=function(e,t){return i(n(e)&&t?a(e,t):e)}},2160:(e,t,r)=>{"use strict";var n=r(7217);var i=r(5552);e.exports=function hasValue(e){if(i(e)){return true}switch(n(e)){case"null":case"boolean":case"function":return true;case"string":case"arguments":return e.length!==0;case"error":return e.message!=="";case"array":var t=e.length;if(t===0){return false}for(var r=0;r<t;r++){if(hasValue(e[r])){return true}}return false;case"file":case"map":case"set":return e.size!==0;case"object":var a=Object.keys(e);if(a.length===0){return false}for(var r=0;r<a.length;r++){var o=a[r];if(hasValue(e[o])){return true}}return false;default:{return false}}}},7217:(e,t,r)=>{var n=r(4950);var i=Object.prototype.toString;e.exports=function kindOf(e){if(typeof e==="undefined"){return"undefined"}if(e===null){return"null"}if(e===true||e===false||e instanceof Boolean){return"boolean"}if(typeof e==="string"||e instanceof String){return"string"}if(typeof e==="number"||e instanceof Number){return"number"}if(typeof e==="function"||e instanceof Function){return"function"}if(typeof Array.isArray!=="undefined"&&Array.isArray(e)){return"array"}if(e instanceof RegExp){return"regexp"}if(e instanceof Date){return"date"}var t=i.call(e);if(t==="[object RegExp]"){return"regexp"}if(t==="[object Date]"){return"date"}if(t==="[object Arguments]"){return"arguments"}if(t==="[object Error]"){return"error"}if(t==="[object Promise]"){return"promise"}if(n(e)){return"buffer"}if(t==="[object Set]"){return"set"}if(t==="[object WeakSet]"){return"weakset"}if(t==="[object Map]"){return"map"}if(t==="[object WeakMap]"){return"weakmap"}if(t==="[object Symbol]"){return"symbol"}if(t==="[object Int8Array]"){return"int8array"}if(t==="[object Uint8Array]"){return"uint8array"}if(t==="[object Uint8ClampedArray]"){return"uint8clampedarray"}if(t==="[object Int16Array]"){return"int16array"}if(t==="[object Uint16Array]"){return"uint16array"}if(t==="[object Int32Array]"){return"int32array"}if(t==="[object Uint32Array]"){return"uint32array"}if(t==="[object Float32Array]"){return"float32array"}if(t==="[object Float64Array]"){return"float64array"}return"object"}},1790:(e,t,r)=>{"use strict";var n=r(9948);var i={get:"function",set:"function",configurable:"boolean",enumerable:"boolean"};function isAccessorDescriptor(e,t){if(typeof t==="string"){var r=Object.getOwnPropertyDescriptor(e,t);return typeof r!=="undefined"}if(n(e)!=="object"){return false}if(has(e,"value")||has(e,"writable")){return false}if(!has(e,"get")||typeof e.get!=="function"){return false}if(has(e,"set")&&typeof e[a]!=="function"&&typeof e[a]!=="undefined"){return false}for(var a in e){if(!i.hasOwnProperty(a)){continue}if(n(e[a])===i[a]){continue}if(typeof e[a]!=="undefined"){return false}}return true}function has(e,t){return{}.hasOwnProperty.call(e,t)}e.exports=isAccessorDescriptor},9948:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){if(e===void 0)return"undefined";if(e===null)return"null";var r=typeof e;if(r==="boolean")return"boolean";if(r==="string")return"string";if(r==="number")return"number";if(r==="symbol")return"symbol";if(r==="function"){return isGeneratorFn(e)?"generatorfunction":"function"}if(isArray(e))return"array";if(isBuffer(e))return"buffer";if(isArguments(e))return"arguments";if(isDate(e))return"date";if(isError(e))return"error";if(isRegexp(e))return"regexp";switch(ctorName(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(isGeneratorObj(e)){return"generator"}r=t.call(e);switch(r){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return r.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ctorName(e){return e.constructor?e.constructor.name:null}function isArray(e){if(Array.isArray)return Array.isArray(e);return e instanceof Array}function isError(e){return e instanceof Error||typeof e.message==="string"&&e.constructor&&typeof e.constructor.stackTraceLimit==="number"}function isDate(e){if(e instanceof Date)return true;return typeof e.toDateString==="function"&&typeof e.getDate==="function"&&typeof e.setDate==="function"}function isRegexp(e){if(e instanceof RegExp)return true;return typeof e.flags==="string"&&typeof e.ignoreCase==="boolean"&&typeof e.multiline==="boolean"&&typeof e.global==="boolean"}function isGeneratorFn(e,t){return ctorName(e)==="GeneratorFunction"}function isGeneratorObj(e){return typeof e.throw==="function"&&typeof e.return==="function"&&typeof e.next==="function"}function isArguments(e){try{if(typeof e.length==="number"&&typeof e.callee==="function"){return true}}catch(e){if(e.message.indexOf("callee")!==-1){return true}}return false}function isBuffer(e){if(e.constructor&&typeof e.constructor.isBuffer==="function"){return e.constructor.isBuffer(e)}return false}},4950:e=>{e.exports=function(e){return e!=null&&(isBuffer(e)||isSlowBuffer(e)||!!e._isBuffer)};function isBuffer(e){return!!e.constructor&&typeof e.constructor.isBuffer==="function"&&e.constructor.isBuffer(e)}function isSlowBuffer(e){return typeof e.readFloatLE==="function"&&typeof e.slice==="function"&&isBuffer(e.slice(0,0))}},9035:(e,t,r)=>{"use strict";var n=r(1275);e.exports=function isDataDescriptor(e,t){var r={configurable:"boolean",enumerable:"boolean",writable:"boolean"};if(n(e)!=="object"){return false}if(typeof t==="string"){var i=Object.getOwnPropertyDescriptor(e,t);return typeof i!=="undefined"}if(!("value"in e)&&!("writable"in e)){return false}for(var a in e){if(a==="value")continue;if(!r.hasOwnProperty(a)){continue}if(n(e[a])===r[a]){continue}if(typeof e[a]!=="undefined"){return false}}return true}},1275:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){if(e===void 0)return"undefined";if(e===null)return"null";var r=typeof e;if(r==="boolean")return"boolean";if(r==="string")return"string";if(r==="number")return"number";if(r==="symbol")return"symbol";if(r==="function"){return isGeneratorFn(e)?"generatorfunction":"function"}if(isArray(e))return"array";if(isBuffer(e))return"buffer";if(isArguments(e))return"arguments";if(isDate(e))return"date";if(isError(e))return"error";if(isRegexp(e))return"regexp";switch(ctorName(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(isGeneratorObj(e)){return"generator"}r=t.call(e);switch(r){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return r.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ctorName(e){return e.constructor?e.constructor.name:null}function isArray(e){if(Array.isArray)return Array.isArray(e);return e instanceof Array}function isError(e){return e instanceof Error||typeof e.message==="string"&&e.constructor&&typeof e.constructor.stackTraceLimit==="number"}function isDate(e){if(e instanceof Date)return true;return typeof e.toDateString==="function"&&typeof e.getDate==="function"&&typeof e.setDate==="function"}function isRegexp(e){if(e instanceof RegExp)return true;return typeof e.flags==="string"&&typeof e.ignoreCase==="boolean"&&typeof e.multiline==="boolean"&&typeof e.global==="boolean"}function isGeneratorFn(e,t){return ctorName(e)==="GeneratorFunction"}function isGeneratorObj(e){return typeof e.throw==="function"&&typeof e.return==="function"&&typeof e.next==="function"}function isArguments(e){try{if(typeof e.length==="number"&&typeof e.callee==="function"){return true}}catch(e){if(e.message.indexOf("callee")!==-1){return true}}return false}function isBuffer(e){if(e.constructor&&typeof e.constructor.isBuffer==="function"){return e.constructor.isBuffer(e)}return false}},8586:(e,t,r)=>{"use strict";var n=r(9914);var i=r(1790);var a=r(9035);e.exports=function isDescriptor(e,t){if(n(e)!=="object"){return false}if("get"in e){return i(e,t)}return a(e,t)}},9914:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){if(e===void 0)return"undefined";if(e===null)return"null";var r=typeof e;if(r==="boolean")return"boolean";if(r==="string")return"string";if(r==="number")return"number";if(r==="symbol")return"symbol";if(r==="function"){return isGeneratorFn(e)?"generatorfunction":"function"}if(isArray(e))return"array";if(isBuffer(e))return"buffer";if(isArguments(e))return"arguments";if(isDate(e))return"date";if(isError(e))return"error";if(isRegexp(e))return"regexp";switch(ctorName(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(isGeneratorObj(e)){return"generator"}r=t.call(e);switch(r){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return r.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ctorName(e){return e.constructor?e.constructor.name:null}function isArray(e){if(Array.isArray)return Array.isArray(e);return e instanceof Array}function isError(e){return e instanceof Error||typeof e.message==="string"&&e.constructor&&typeof e.constructor.stackTraceLimit==="number"}function isDate(e){if(e instanceof Date)return true;return typeof e.toDateString==="function"&&typeof e.getDate==="function"&&typeof e.setDate==="function"}function isRegexp(e){if(e instanceof RegExp)return true;return typeof e.flags==="string"&&typeof e.ignoreCase==="boolean"&&typeof e.multiline==="boolean"&&typeof e.global==="boolean"}function isGeneratorFn(e,t){return ctorName(e)==="GeneratorFunction"}function isGeneratorObj(e){return typeof e.throw==="function"&&typeof e.return==="function"&&typeof e.next==="function"}function isArguments(e){try{if(typeof e.length==="number"&&typeof e.callee==="function"){return true}}catch(e){if(e.message.indexOf("callee")!==-1){return true}}return false}function isBuffer(e){if(e.constructor&&typeof e.constructor.isBuffer==="function"){return e.constructor.isBuffer(e)}return false}},485:e=>{"use strict";e.exports=function isExtendable(e){return typeof e!=="undefined"&&e!==null&&(typeof e==="object"||typeof e==="function")}},5552:(e,t,r)=>{"use strict";var n=r(2046);e.exports=function isNumber(e){var t=n(e);if(t==="string"){if(!e.trim())return false}else if(t!=="number"){return false}return e-e+1>=0}},1221:(e,t,r)=>{"use strict";var n=r(977);function isObjectObject(e){return n(e)===true&&Object.prototype.toString.call(e)==="[object Object]"}e.exports=function isPlainObject(e){var t,r;if(isObjectObject(e)===false)return false;t=e.constructor;if(typeof t!=="function")return false;r=t.prototype;if(isObjectObject(r)===false)return false;if(r.hasOwnProperty("isPrototypeOf")===false){return false}return true}},7523:e=>{var t={}.toString;e.exports=Array.isArray||function(e){return t.call(e)=="[object Array]"}},977:e=>{"use strict";e.exports=function isObject(e){return e!=null&&typeof e==="object"&&Array.isArray(e)===false}},2046:(e,t,r)=>{var n=r(4950);var i=Object.prototype.toString;e.exports=function kindOf(e){if(typeof e==="undefined"){return"undefined"}if(e===null){return"null"}if(e===true||e===false||e instanceof Boolean){return"boolean"}if(typeof e==="string"||e instanceof String){return"string"}if(typeof e==="number"||e instanceof Number){return"number"}if(typeof e==="function"||e instanceof Function){return"function"}if(typeof Array.isArray!=="undefined"&&Array.isArray(e)){return"array"}if(e instanceof RegExp){return"regexp"}if(e instanceof Date){return"date"}var t=i.call(e);if(t==="[object RegExp]"){return"regexp"}if(t==="[object Date]"){return"date"}if(t==="[object Arguments]"){return"arguments"}if(t==="[object Error]"){return"error"}if(n(e)){return"buffer"}if(t==="[object Set]"){return"set"}if(t==="[object WeakSet]"){return"weakset"}if(t==="[object Map]"){return"map"}if(t==="[object WeakMap]"){return"weakmap"}if(t==="[object Symbol]"){return"symbol"}if(t==="[object Int8Array]"){return"int8array"}if(t==="[object Uint8Array]"){return"uint8array"}if(t==="[object Uint8ClampedArray]"){return"uint8clampedarray"}if(t==="[object Int16Array]"){return"int16array"}if(t==="[object Uint16Array]"){return"uint16array"}if(t==="[object Int32Array]"){return"int32array"}if(t==="[object Uint32Array]"){return"uint32array"}if(t==="[object Float32Array]"){return"float32array"}if(t==="[object Float64Array]"){return"float64array"}return"object"}},6559:e=>{"use strict";function getCurrentRequest(e){if(e.currentRequest)return e.currentRequest;const t=e.loaders.slice(e.loaderIndex).map(e=>e.request).concat([e.resource]);return t.join("!")}e.exports=getCurrentRequest},2669:(e,t,r)=>{"use strict";const n={26:"abcdefghijklmnopqrstuvwxyz",32:"123456789abcdefghjkmnpqrstuvwxyz",36:"0123456789abcdefghijklmnopqrstuvwxyz",49:"abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",52:"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",58:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ",62:"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",64:"0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-_"};function encodeBufferToBase(e,t){const i=n[t];if(!i)throw new Error("Unknown encoding base"+t);const a=e.length;const o=r(2558);o.RM=o.DP=0;let s=new o(0);for(let t=a-1;t>=0;t--){s=s.times(256).plus(e[t])}let c="";while(s.gt(0)){c=i[s.mod(t)]+c;s=s.div(t)}o.DP=20;o.RM=1;return c}function getHashDigest(e,t,n,i){t=t||"md5";i=i||9999;const a=r(6417).createHash(t);a.update(e);if(n==="base26"||n==="base32"||n==="base36"||n==="base49"||n==="base52"||n==="base58"||n==="base62"||n==="base64"){return encodeBufferToBase(a.digest(),n.substr(4)).substr(0,i)}else{return a.digest(n||"hex").substr(0,i)}}e.exports=getHashDigest},2245:(e,t,r)=>{"use strict";const n=r(9170);function getOptions(e){const t=e.query;if(typeof t==="string"&&t!==""){return n(e.query)}if(!t||typeof t!=="object"){return null}return t}e.exports=getOptions},2078:e=>{"use strict";function getRemainingRequest(e){if(e.remainingRequest)return e.remainingRequest;const t=e.loaders.slice(e.loaderIndex+1).map(e=>e.request).concat([e.resource]);return t.join("!")}e.exports=getRemainingRequest},8244:(e,t,r)=>{"use strict";const n=r(2245);const i=r(9170);const a=r(1412);const o=r(2078);const s=r(6559);const c=r(1077);const u=r(4608);const l=r(5231);const f=r(2669);const d=r(7872);t.getOptions=n;t.parseQuery=i;t.stringifyRequest=a;t.getRemainingRequest=o;t.getCurrentRequest=s;t.isUrlRequest=c;t.urlToRequest=u;t.parseString=l;t.getHashDigest=f;t.interpolateName=d},7872:(e,t,r)=>{"use strict";const n=r(5622);const i=r(1356);const a=r(2669);const o=/[\uD800-\uDFFF]./;const s=i.filter(e=>o.test(e));const c={};function encodeStringToEmoji(e,t){if(c[e])return c[e];t=t||1;const r=[];do{const e=Math.floor(Math.random()*s.length);r.push(s[e]);s.splice(e,1)}while(--t>0);const n=r.join("");c[e]=n;return n}function interpolateName(e,t,r){let i;if(typeof t==="function"){i=t(e.resourcePath)}else{i=t||"[hash].[ext]"}const o=r.context;const s=r.content;const c=r.regExp;let u="bin";let l="file";let f="";let d="";if(e.resourcePath){const t=n.parse(e.resourcePath);let r=e.resourcePath;if(t.ext){u=t.ext.substr(1)}if(t.dir){l=t.name;r=t.dir+n.sep}if(typeof o!=="undefined"){f=n.relative(o,r+"_").replace(/\\/g,"/").replace(/\.\.(\/)?/g,"_$1");f=f.substr(0,f.length-1)}else{f=r.replace(/\\/g,"/").replace(/\.\.(\/)?/g,"_$1")}if(f.length===1){f=""}else if(f.length>1){d=n.basename(f)}}let p=i;if(s){p=p.replace(/\[(?:(\w+):)?hash(?::([a-z]+\d*))?(?::(\d+))?\]/gi,(e,t,r,n)=>a(s,t,r,parseInt(n,10))).replace(/\[emoji(?::(\d+))?\]/gi,(e,t)=>encodeStringToEmoji(s,t))}p=p.replace(/\[ext\]/gi,()=>u).replace(/\[name\]/gi,()=>l).replace(/\[path\]/gi,()=>f).replace(/\[folder\]/gi,()=>d);if(c&&e.resourcePath){const t=e.resourcePath.match(new RegExp(c));t&&t.forEach((e,t)=>{p=p.replace(new RegExp("\\["+t+"\\]","ig"),e)})}if(typeof e.options==="object"&&typeof e.options.customInterpolateName==="function"){p=e.options.customInterpolateName.call(e,p,t,r)}return p}e.exports=interpolateName},1077:e=>{"use strict";function isUrlRequest(e,t){if(/^data:|^chrome-extension:|^(https?:)?\/\/|^[\{\}\[\]#*;,'§\$%&\(=?`´\^°<>]/.test(e))return false;if((t===undefined||t===false)&&/^\//.test(e))return false;return true}e.exports=isUrlRequest},9170:(e,t,r)=>{"use strict";const n=r(161);const i={null:null,true:true,false:false};function parseQuery(e){if(e.substr(0,1)!=="?"){throw new Error("A valid query string passed to parseQuery should begin with '?'")}e=e.substr(1);if(!e){return{}}if(e.substr(0,1)==="{"&&e.substr(-1)==="}"){return n.parse(e)}const t=e.split(/[,&]/g);const r={};t.forEach(e=>{const t=e.indexOf("=");if(t>=0){let n=e.substr(0,t);let a=decodeURIComponent(e.substr(t+1));if(i.hasOwnProperty(a)){a=i[a]}if(n.substr(-2)==="[]"){n=decodeURIComponent(n.substr(0,n.length-2));if(!Array.isArray(r[n]))r[n]=[];r[n].push(a)}else{n=decodeURIComponent(n);r[n]=a}}else{if(e.substr(0,1)==="-"){r[decodeURIComponent(e.substr(1))]=false}else if(e.substr(0,1)==="+"){r[decodeURIComponent(e.substr(1))]=true}else{r[decodeURIComponent(e)]=true}}});return r}e.exports=parseQuery},5231:e=>{"use strict";function parseString(e){try{if(e[0]==='"')return JSON.parse(e);if(e[0]==="'"&&e.substr(e.length-1)==="'"){return parseString(e.replace(/\\.|"/g,e=>e==='"'?'\\"':e).replace(/^'|'$/g,'"'))}return JSON.parse('"'+e+'"')}catch(t){return e}}e.exports=parseString},1412:(e,t,r)=>{"use strict";const n=r(5622);const i=/^\.\.?[/\\]/;function isAbsolutePath(e){return n.posix.isAbsolute(e)||n.win32.isAbsolute(e)}function isRelativePath(e){return i.test(e)}function stringifyRequest(e,t){const r=t.split("!");const i=e.context||e.options&&e.options.context;return JSON.stringify(r.map(e=>{const t=e.match(/^(.*?)(\?.*)/);let r=t?t[1]:e;const a=t?t[2]:"";if(isAbsolutePath(r)&&i){r=n.relative(i,r);if(isAbsolutePath(r)){return r+a}if(isRelativePath(r)===false){r="./"+r}}return r.replace(/\\/g,"/")+a}).join("!"))}e.exports=stringifyRequest},4608:e=>{"use strict";const t=/^[A-Z]:[/\\]|^\\\\/i;function urlToRequest(e,r){const n=/^[^?]*~/;let i;if(t.test(e)){i=e}else if(r!==undefined&&r!==false&&/^\//.test(e)){switch(typeof r){case"string":if(n.test(r)){i=r.replace(/([^~\/])$/,"$1/")+e.slice(1)}else{i=r+e}break;case"boolean":i=e;break;default:throw new Error("Unexpected parameters to loader-utils 'urlToRequest': url = "+e+", root = "+r+".")}}else if(/^\.\.?\//.test(e)){i=e}else{i="./"+e}if(n.test(i)){i=i.replace(n,"")}return i}e.exports=urlToRequest},2558:function(e){(function(t){"use strict";var r=20,n=1,i=1e6,a=1e6,o=-7,s=21,c={},u=/^-?(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,l;function bigFactory(){function Big(e){var t=this;if(!(t instanceof Big)){return e===void 0?bigFactory():new Big(e)}if(e instanceof Big){t.s=e.s;t.e=e.e;t.c=e.c.slice()}else{parse(t,e)}t.constructor=Big}Big.prototype=c;Big.DP=r;Big.RM=n;Big.E_NEG=o;Big.E_POS=s;return Big}function format(e,t,r){var n=e.constructor,i=t-(e=new n(e)).e,a=e.c;if(a.length>++t){rnd(e,i,n.RM)}if(!a[0]){++i}else if(r){i=t}else{a=e.c;i=e.e+i+1}for(;a.length<i;a.push(0)){}i=e.e;return r===1||r&&(t<=i||i<=n.E_NEG)?(e.s<0&&a[0]?"-":"")+(a.length>1?a[0]+"."+a.join("").slice(1):a[0])+(i<0?"e":"e+")+i:e.toString()}function parse(e,t){var r,n,i;if(t===0&&1/t<0){t="-0"}else if(!u.test(t+="")){throwErr(NaN)}e.s=t.charAt(0)=="-"?(t=t.slice(1),-1):1;if((r=t.indexOf("."))>-1){t=t.replace(".","")}if((n=t.search(/e/i))>0){if(r<0){r=n}r+=+t.slice(n+1);t=t.substring(0,n)}else if(r<0){r=t.length}i=t.length;for(n=0;n<i&&t.charAt(n)=="0";n++){}if(n==i){e.c=[e.e=0]}else{for(;i>0&&t.charAt(--i)=="0";){}e.e=r-n-1;e.c=[];for(;n<=i;e.c.push(+t.charAt(n++))){}}return e}function rnd(e,t,r,n){var i,a=e.c,o=e.e+t+1;if(r===1){n=a[o]>=5}else if(r===2){n=a[o]>5||a[o]==5&&(n||o<0||a[o+1]!==i||a[o-1]&1)}else if(r===3){n=n||a[o]!==i||o<0}else{n=false;if(r!==0){throwErr("!Big.RM!")}}if(o<1||!a[0]){if(n){e.e=-t;e.c=[1]}else{e.c=[e.e=0]}}else{a.length=o--;if(n){for(;++a[o]>9;){a[o]=0;if(!o--){++e.e;a.unshift(1)}}}for(o=a.length;!a[--o];a.pop()){}}return e}function throwErr(e){var t=new Error(e);t.name="BigError";throw t}c.abs=function(){var e=new this.constructor(this);e.s=1;return e};c.cmp=function(e){var t,r=this,n=r.c,i=(e=new r.constructor(e)).c,a=r.s,o=e.s,s=r.e,c=e.e;if(!n[0]||!i[0]){return!n[0]?!i[0]?0:-o:a}if(a!=o){return a}t=a<0;if(s!=c){return s>c^t?1:-1}a=-1;o=(s=n.length)<(c=i.length)?s:c;for(;++a<o;){if(n[a]!=i[a]){return n[a]>i[a]^t?1:-1}}return s==c?0:s>c^t?1:-1};c.div=function(e){var t=this,r=t.constructor,n=t.c,a=(e=new r(e)).c,o=t.s==e.s?1:-1,s=r.DP;if(s!==~~s||s<0||s>i){throwErr("!Big.DP!")}if(!n[0]||!a[0]){if(n[0]==a[0]){throwErr(NaN)}if(!a[0]){throwErr(o/0)}return new r(o*0)}var c,u,l,f,d,p,g=a.slice(),_=c=a.length,m=n.length,y=n.slice(0,c),h=y.length,v=e,T=v.c=[],S=0,b=s+(v.e=t.e-e.e)+1;v.s=o;o=b<0?0:b;g.unshift(0);for(;h++<c;y.push(0)){}do{for(l=0;l<10;l++){if(c!=(h=y.length)){f=c>h?1:-1}else{for(d=-1,f=0;++d<c;){if(a[d]!=y[d]){f=a[d]>y[d]?1:-1;break}}}if(f<0){for(u=h==c?a:g;h;){if(y[--h]<u[h]){d=h;for(;d&&!y[--d];y[d]=9){}--y[d];y[h]+=10}y[h]-=u[h]}for(;!y[0];y.shift()){}}else{break}}T[S++]=f?l:++l;if(y[0]&&f){y[h]=n[_]||0}else{y=[n[_]]}}while((_++<m||y[0]!==p)&&o--);if(!T[0]&&S!=1){T.shift();v.e--}if(S>b){rnd(v,s,r.RM,y[0]!==p)}return v};c.eq=function(e){return!this.cmp(e)};c.gt=function(e){return this.cmp(e)>0};c.gte=function(e){return this.cmp(e)>-1};c.lt=function(e){return this.cmp(e)<0};c.lte=function(e){return this.cmp(e)<1};c.sub=c.minus=function(e){var t,r,n,i,a=this,o=a.constructor,s=a.s,c=(e=new o(e)).s;if(s!=c){e.s=-c;return a.plus(e)}var u=a.c.slice(),l=a.e,f=e.c,d=e.e;if(!u[0]||!f[0]){return f[0]?(e.s=-c,e):new o(u[0]?a:0)}if(s=l-d){if(i=s<0){s=-s;n=u}else{d=l;n=f}n.reverse();for(c=s;c--;n.push(0)){}n.reverse()}else{r=((i=u.length<f.length)?u:f).length;for(s=c=0;c<r;c++){if(u[c]!=f[c]){i=u[c]<f[c];break}}}if(i){n=u;u=f;f=n;e.s=-e.s}if((c=(r=f.length)-(t=u.length))>0){for(;c--;u[t++]=0){}}for(c=t;r>s;){if(u[--r]<f[r]){for(t=r;t&&!u[--t];u[t]=9){}--u[t];u[r]+=10}u[r]-=f[r]}for(;u[--c]===0;u.pop()){}for(;u[0]===0;){u.shift();--d}if(!u[0]){e.s=1;u=[d=0]}e.c=u;e.e=d;return e};c.mod=function(e){var t,r=this,n=r.constructor,i=r.s,a=(e=new n(e)).s;if(!e.c[0]){throwErr(NaN)}r.s=e.s=1;t=e.cmp(r)==1;r.s=i;e.s=a;if(t){return new n(r)}i=n.DP;a=n.RM;n.DP=n.RM=0;r=r.div(e);n.DP=i;n.RM=a;return this.minus(r.times(e))};c.add=c.plus=function(e){var t,r=this,n=r.constructor,i=r.s,a=(e=new n(e)).s;if(i!=a){e.s=-a;return r.minus(e)}var o=r.e,s=r.c,c=e.e,u=e.c;if(!s[0]||!u[0]){return u[0]?e:new n(s[0]?r:i*0)}s=s.slice();if(i=o-c){if(i>0){c=o;t=u}else{i=-i;t=s}t.reverse();for(;i--;t.push(0)){}t.reverse()}if(s.length-u.length<0){t=u;u=s;s=t}i=u.length;for(a=0;i;){a=(s[--i]=s[i]+u[i]+a)/10|0;s[i]%=10}if(a){s.unshift(a);++c}for(i=s.length;s[--i]===0;s.pop()){}e.c=s;e.e=c;return e};c.pow=function(e){var t=this,r=new t.constructor(1),n=r,i=e<0;if(e!==~~e||e<-a||e>a){throwErr("!pow!")}e=i?-e:e;for(;;){if(e&1){n=n.times(t)}e>>=1;if(!e){break}t=t.times(t)}return i?r.div(n):n};c.round=function(e,t){var r=this,n=r.constructor;if(e==null){e=0}else if(e!==~~e||e<0||e>i){throwErr("!round!")}rnd(r=new n(r),e,t==null?n.RM:t);return r};c.sqrt=function(){var e,t,r,n=this,i=n.constructor,a=n.c,o=n.s,s=n.e,c=new i("0.5");if(!a[0]){return new i(n)}if(o<0){throwErr(NaN)}o=Math.sqrt(n.toString());if(o===0||o===1/0){e=a.join("");if(!(e.length+s&1)){e+="0"}t=new i(Math.sqrt(e).toString());t.e=((s+1)/2|0)-(s<0||s&1)}else{t=new i(o.toString())}o=t.e+(i.DP+=4);do{r=t;t=c.times(r.plus(n.div(r)))}while(r.c.slice(0,o).join("")!==t.c.slice(0,o).join(""));rnd(t,i.DP-=4,i.RM);return t};c.mul=c.times=function(e){var t,r=this,n=r.constructor,i=r.c,a=(e=new n(e)).c,o=i.length,s=a.length,c=r.e,u=e.e;e.s=r.s==e.s?1:-1;if(!i[0]||!a[0]){return new n(e.s*0)}e.e=c+u;if(o<s){t=i;i=a;a=t;u=o;o=s;s=u}for(t=new Array(u=o+s);u--;t[u]=0){}for(c=s;c--;){s=0;for(u=o+c;u>c;){s=t[u]+a[c]*i[u-c-1]+s;t[u--]=s%10;s=s/10|0}t[u]=(t[u]+s)%10}if(s){++e.e}if(!t[0]){t.shift()}for(c=t.length;!t[--c];t.pop()){}e.c=t;return e};c.toString=c.valueOf=c.toJSON=function(){var e=this,t=e.constructor,r=e.e,n=e.c.join(""),i=n.length;if(r<=t.E_NEG||r>=t.E_POS){n=n.charAt(0)+(i>1?"."+n.slice(1):"")+(r<0?"e":"e+")+r}else if(r<0){for(;++r;n="0"+n){}n="0."+n}else if(r>0){if(++r>i){for(r-=i;r--;n+="0"){}}else if(r<i){n=n.slice(0,r)+"."+n.slice(r)}}else if(i>1){n=n.charAt(0)+"."+n.slice(1)}return e.s<0&&e.c[0]?"-"+n:n};c.toExponential=function(e){if(e==null){e=this.c.length-1}else if(e!==~~e||e<0||e>i){throwErr("!toExp!")}return format(this,e,1)};c.toFixed=function(e){var t,r=this,n=r.constructor,a=n.E_NEG,o=n.E_POS;n.E_NEG=-(n.E_POS=1/0);if(e==null){t=r.toString()}else if(e===~~e&&e>=0&&e<=i){t=format(r,r.e+e);if(r.s<0&&r.c[0]&&t.indexOf("-")<0){t="-"+t}}n.E_NEG=a;n.E_POS=o;if(!t){throwErr("!toFix!")}return t};c.toPrecision=function(e){if(e==null){return this.toString()}else if(e!==~~e||e<1||e>i){throwErr("!toPre!")}return format(this,e-1,2)};l=bigFactory();if(typeof define==="function"&&define.amd){define(function(){return l})}else if(true&&e.exports){e.exports=l;e.exports.Big=l}else{t.Big=l}})(this)},161:(e,t)=>{var r=true?t:0;r.parse=function(){"use strict";var e,t,r,n,i={"'":"'",'"':'"',"\\":"\\","/":"/","\n":"",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"},a=[" ","\t","\r","\n","\v","\f"," ","\ufeff"],o,s=function(e){return e===""?"EOF":"'"+e+"'"},c=function(n){var i=new SyntaxError;i.message=n+" at line "+t+" column "+r+" of the JSON5 data. Still to read: "+JSON.stringify(o.substring(e-1,e+19));i.at=e;i.lineNumber=t;i.columnNumber=r;throw i},u=function(i){if(i&&i!==n){c("Expected "+s(i)+" instead of "+s(n))}n=o.charAt(e);e++;r++;if(n==="\n"||n==="\r"&&l()!=="\n"){t++;r=0}return n},l=function(){return o.charAt(e)},f=function(){var e=n;if(n!=="_"&&n!=="$"&&(n<"a"||n>"z")&&(n<"A"||n>"Z")){c("Bad identifier as unquoted key")}while(u()&&(n==="_"||n==="$"||n>="a"&&n<="z"||n>="A"&&n<="Z"||n>="0"&&n<="9")){e+=n}return e},d=function(){var e,t="",r="",i=10;if(n==="-"||n==="+"){t=n;u(n)}if(n==="I"){e=h();if(typeof e!=="number"||isNaN(e)){c("Unexpected word for number")}return t==="-"?-e:e}if(n==="N"){e=h();if(!isNaN(e)){c("expected word to be NaN")}return e}if(n==="0"){r+=n;u();if(n==="x"||n==="X"){r+=n;u();i=16}else if(n>="0"&&n<="9"){c("Octal literal")}}switch(i){case 10:while(n>="0"&&n<="9"){r+=n;u()}if(n==="."){r+=".";while(u()&&n>="0"&&n<="9"){r+=n}}if(n==="e"||n==="E"){r+=n;u();if(n==="-"||n==="+"){r+=n;u()}while(n>="0"&&n<="9"){r+=n;u()}}break;case 16:while(n>="0"&&n<="9"||n>="A"&&n<="F"||n>="a"&&n<="f"){r+=n;u()}break}if(t==="-"){e=-r}else{e=+r}if(!isFinite(e)){c("Bad number")}else{return e}},p=function(){var e,t,r="",a,o;if(n==='"'||n==="'"){a=n;while(u()){if(n===a){u();return r}else if(n==="\\"){u();if(n==="u"){o=0;for(t=0;t<4;t+=1){e=parseInt(u(),16);if(!isFinite(e)){break}o=o*16+e}r+=String.fromCharCode(o)}else if(n==="\r"){if(l()==="\n"){u()}}else if(typeof i[n]==="string"){r+=i[n]}else{break}}else if(n==="\n"){break}else{r+=n}}}c("Bad string")},g=function(){if(n!=="/"){c("Not an inline comment")}do{u();if(n==="\n"||n==="\r"){u();return}}while(n)},_=function(){if(n!=="*"){c("Not a block comment")}do{u();while(n==="*"){u("*");if(n==="/"){u("/");return}}}while(n);c("Unterminated block comment")},m=function(){if(n!=="/"){c("Not a comment")}u("/");if(n==="/"){g()}else if(n==="*"){_()}else{c("Unrecognized comment")}},y=function(){while(n){if(n==="/"){m()}else if(a.indexOf(n)>=0){u()}else{return}}},h=function(){switch(n){case"t":u("t");u("r");u("u");u("e");return true;case"f":u("f");u("a");u("l");u("s");u("e");return false;case"n":u("n");u("u");u("l");u("l");return null;case"I":u("I");u("n");u("f");u("i");u("n");u("i");u("t");u("y");return Infinity;case"N":u("N");u("a");u("N");return NaN}c("Unexpected "+s(n))},v,T=function(){var e=[];if(n==="["){u("[");y();while(n){if(n==="]"){u("]");return e}if(n===","){c("Missing array element")}else{e.push(v())}y();if(n!==","){u("]");return e}u(",");y()}}c("Bad array")},S=function(){var e,t={};if(n==="{"){u("{");y();while(n){if(n==="}"){u("}");return t}if(n==='"'||n==="'"){e=p()}else{e=f()}y();u(":");t[e]=v();y();if(n!==","){u("}");return t}u(",");y()}}c("Bad object")};v=function(){y();switch(n){case"{":return S();case"[":return T();case'"':case"'":return p();case"-":case"+":case".":return d();default:return n>="0"&&n<="9"?d():h()}};return function(i,a){var s;o=String(i);e=0;t=1;r=1;n=" ";s=v();y();if(n){c("Syntax error")}return typeof a==="function"?function walk(e,t){var r,n,i=e[t];if(i&&typeof i==="object"){for(r in i){if(Object.prototype.hasOwnProperty.call(i,r)){n=walk(i,r);if(n!==undefined){i[r]=n}else{delete i[r]}}}}return a.call(e,t,i)}({"":s},""):s}}();r.stringify=function(e,t,n){if(t&&(typeof t!=="function"&&!isArray(t))){throw new Error("Replacer must be a function or an array")}var i=function(e,r,n){var i=e[r];if(i&&i.toJSON&&typeof i.toJSON==="function"){i=i.toJSON()}if(typeof t==="function"){return t.call(e,r,i)}else if(t){if(n||isArray(e)||t.indexOf(r)>=0){return i}else{return undefined}}else{return i}};function isWordChar(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e>="0"&&e<="9"||e==="_"||e==="$"}function isWordStart(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"}function isWord(e){if(typeof e!=="string"){return false}if(!isWordStart(e[0])){return false}var t=1,r=e.length;while(t<r){if(!isWordChar(e[t])){return false}t++}return true}r.isWord=isWord;function isArray(e){if(Array.isArray){return Array.isArray(e)}else{return Object.prototype.toString.call(e)==="[object Array]"}}function isDate(e){return Object.prototype.toString.call(e)==="[object Date]"}var a=[];function checkForCircular(e){for(var t=0;t<a.length;t++){if(a[t]===e){throw new TypeError("Converting circular structure to JSON")}}}function makeIndent(e,t,r){if(!e){return""}if(e.length>10){e=e.substring(0,10)}var n=r?"":"\n";for(var i=0;i<t;i++){n+=e}return n}var o;if(n){if(typeof n==="string"){o=n}else if(typeof n==="number"&&n>=0){o=makeIndent(" ",n,true)}else{}}var s=/[\u0000\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,c=/[\\\"\x00-\x1f\x7f-\x9f\u00ad\u0600-\u0604\u070f\u17b4\u17b5\u200c-\u200f\u2028-\u202f\u2060-\u206f\ufeff\ufff0-\uffff]/g,u={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};function escapeString(e){c.lastIndex=0;return c.test(e)?'"'+e.replace(c,function(e){var t=u[e];return typeof t==="string"?t:"\\u"+("0000"+e.charCodeAt(0).toString(16)).slice(-4)})+'"':'"'+e+'"'}function internalStringify(e,t,r){var n,s;var c=i(e,t,r);if(c&&!isDate(c)){c=c.valueOf()}switch(typeof c){case"boolean":return c.toString();case"number":if(isNaN(c)||!isFinite(c)){return"null"}return c.toString();case"string":return escapeString(c.toString());case"object":if(c===null){return"null"}else if(isArray(c)){checkForCircular(c);n="[";a.push(c);for(var u=0;u<c.length;u++){s=internalStringify(c,u,false);n+=makeIndent(o,a.length);if(s===null||typeof s==="undefined"){n+="null"}else{n+=s}if(u<c.length-1){n+=","}else if(o){n+="\n"}}a.pop();if(c.length){n+=makeIndent(o,a.length,true)}n+="]"}else{checkForCircular(c);n="{";var l=false;a.push(c);for(var f in c){if(c.hasOwnProperty(f)){var d=internalStringify(c,f,false);r=false;if(typeof d!=="undefined"&&d!==null){n+=makeIndent(o,a.length);l=true;t=isWord(f)?f:escapeString(f);n+=t+":"+(o?" ":"")+d+","}}}a.pop();if(l){n=n.substring(0,n.length-1)+makeIndent(o,a.length)+"}"}else{n="{}"}}return n;default:return undefined}}var l={"":e};if(e===undefined){return i(l,"",true)}return internalStringify(l,"",true)}},1637:e=>{"use strict";var t=Object.prototype.hasOwnProperty;e.exports=MapCache;function MapCache(e){this.__data__=e||{}}MapCache.prototype.set=function mapSet(e,t){if(e!=="__proto__"){this.__data__[e]=t}return this};MapCache.prototype.get=function mapGet(e){return e==="__proto__"?undefined:this.__data__[e]};MapCache.prototype.has=function mapHas(e){return e!=="__proto__"&&t.call(this.__data__,e)};MapCache.prototype.del=function mapDelete(e){return this.has(e)&&delete this.__data__[e]}},8098:(e,t,r)=>{"use strict";var n=r(1669);var i=r(4274);e.exports=function mapVisit(e,t,r){if(isObject(r)){return i.apply(null,arguments)}if(!Array.isArray(r)){throw new TypeError("expected an array: "+n.inspect(r))}var a=[].slice.call(arguments,3);for(var o=0;o<r.length;o++){var s=r[o];if(isObject(s)){i.apply(null,[e,t,s].concat(a))}else{e[t].apply(e,[s].concat(a))}}};function isObject(e){return e&&(typeof e==="function"||!Array.isArray(e)&&typeof e==="object")}},9987:(e,t,r)=>{var n=r(5369);var i=/^[A-Z]:([\\\/]|$)/i;var a=/^\//i;e.exports=function join(e,t){if(!t)return n(e);if(i.test(t))return n(t.replace(/\//g,"\\"));if(a.test(t))return n(t);if(e=="/")return n(e+t);if(i.test(e))return n(e.replace(/\//g,"\\")+"\\"+t.replace(/\//g,"\\"));if(a.test(e))return n(e+"/"+t);return n(e+"/"+t)}},5369:e=>{e.exports=function normalize(e){var t=e.split(/(\\+|\/+)/);if(t.length===1)return e;var r=[];var n=0;for(var i=0,a=false;i<t.length;i++,a=!a){var o=t[i];if(i===0&&/^([A-Z]:)?$/i.test(o)){r.push(o);n=2}else if(a){r.push(o[0])}else if(o===".."){switch(r.length){case 0:r.push(o);break;case 2:i++;a=!a;r.length=n;break;case 4:if(n===0){r.length-=3}else{i++;a=!a;r.length=2}break;default:r.length-=3;break}}else if(o==="."){switch(r.length){case 0:r.push(o);break;case 2:if(n===0){r.length--}else{i++;a=!a}break;default:r.length--;break}}else if(o){r.push(o)}}if(r.length===1&&/^[A-Za-z]:$/.test(r))return r[0]+"\\";return r.join("")}},9811:(e,t,r)=>{"use strict";var n=r(7459);var i=r(1718);function mixinDeep(e,t){var r=arguments.length,n=0;while(++n<r){var a=arguments[n];if(isObject(a)){i(a,copy,e)}}return e}function copy(e,t){if(!isValidKey(t)){return}var r=this[t];if(isObject(e)&&isObject(r)){mixinDeep(r,e)}else{this[t]=e}}function isObject(e){return n(e)&&!Array.isArray(e)}function isValidKey(e){return e!=="__proto__"&&e!=="constructor"&&e!=="prototype"}e.exports=mixinDeep},7459:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},5434:(e,t,r)=>{"use strict";var n=r(1669);var i=r(9532);var a=r(5577);var o=r(107);var s=r(2513);var c=r(520);var u=r(8063);var l=1024*64;function nanomatch(e,t,r){t=u.arrayify(t);e=u.arrayify(e);var n=t.length;if(e.length===0||n===0){return[]}if(n===1){return nanomatch.match(e,t[0],r)}var i=false;var a=[];var o=[];var s=-1;while(++s<n){var c=t[s];if(typeof c==="string"&&c.charCodeAt(0)===33){a.push.apply(a,nanomatch.match(e,c.slice(1),r));i=true}else{o.push.apply(o,nanomatch.match(e,c,r))}}if(i&&o.length===0){if(r&&r.unixify===false){o=e.slice()}else{var l=u.unixify(r);for(var f=0;f<e.length;f++){o.push(l(e[f]))}}}var d=u.diff(o,a);if(!r||r.nodupes!==false){return u.unique(d)}return d}nanomatch.match=function(e,t,r){if(Array.isArray(t)){throw new TypeError("expected pattern to be a string")}var n=u.unixify(r);var i=memoize("match",t,r,nanomatch.matcher);var a=[];e=u.arrayify(e);var o=e.length;var s=-1;while(++s<o){var c=e[s];if(c===t||i(c)){a.push(u.value(c,n,r))}}if(typeof r==="undefined"){return u.unique(a)}if(a.length===0){if(r.failglob===true){throw new Error('no matches found for "'+t+'"')}if(r.nonull===true||r.nullglob===true){return[r.unescape?u.unescape(t):t]}}if(r.ignore){a=nanomatch.not(a,r.ignore,r)}return r.nodupes!==false?u.unique(a):a};nanomatch.isMatch=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(u.isEmptyString(e)||u.isEmptyString(t)){return false}var i=u.equalsPattern(r);if(i(e)){return true}var a=memoize("isMatch",t,r,nanomatch.matcher);return a(e)};nanomatch.some=function(e,t,r){if(typeof e==="string"){e=[e]}for(var n=0;n<e.length;n++){if(nanomatch(e[n],t,r).length===1){return true}}return false};nanomatch.every=function(e,t,r){if(typeof e==="string"){e=[e]}for(var n=0;n<e.length;n++){if(nanomatch(e[n],t,r).length!==1){return false}}return true};nanomatch.any=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(u.isEmptyString(e)||u.isEmptyString(t)){return false}if(typeof t==="string"){t=[t]}for(var i=0;i<t.length;i++){if(nanomatch.isMatch(e,t[i],r)){return true}}return false};nanomatch.all=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(typeof t==="string"){t=[t]}for(var i=0;i<t.length;i++){if(!nanomatch.isMatch(e,t[i],r)){return false}}return true};nanomatch.not=function(e,t,r){var n=a({},r);var i=n.ignore;delete n.ignore;e=u.arrayify(e);var o=u.diff(e,nanomatch(e,t,n));if(i){o=u.diff(o,nanomatch(e,i))}return n.nodupes!==false?u.unique(o):o};nanomatch.contains=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(typeof t==="string"){if(u.isEmptyString(e)||u.isEmptyString(t)){return false}var i=u.equalsPattern(t,r);if(i(e)){return true}var o=u.containsPattern(t,r);if(o(e)){return true}}var s=a({},r,{contains:true});return nanomatch.any(e,t,s)};nanomatch.matchBase=function(e,t){if(e&&e.indexOf("/")!==-1||!t)return false;return t.basename===true||t.matchBase===true};nanomatch.matchKeys=function(e,t,r){if(!u.isObject(e)){throw new TypeError("expected the first argument to be an object")}var n=nanomatch(Object.keys(e),t,r);return u.pick(e,n)};nanomatch.matcher=function matcher(e,t){if(u.isEmptyString(e)){return function(){return false}}if(Array.isArray(e)){return compose(e,t,matcher)}if(e instanceof RegExp){return test(e)}if(!u.isString(e)){throw new TypeError("expected pattern to be an array, string or regex")}if(!u.hasSpecialChars(e)){if(t&&t.nocase===true){e=e.toLowerCase()}return u.matchPath(e,t)}var r=nanomatch.makeRe(e,t);if(nanomatch.matchBase(e,t)){return u.matchBasename(r,t)}function test(e){var r=u.equalsPattern(t);var n=u.unixify(t);return function(t){if(r(t)){return true}if(e.test(n(t))){return true}return false}}var n=test(r);u.define(n,"result",r.result);return n};nanomatch.capture=function(e,t,r){var n=nanomatch.makeRe(e,a({capture:true},r));var i=u.unixify(r);function match(){return function(e){var t=n.exec(i(e));if(!t){return null}return t.slice(1)}}var o=memoize("capture",e,r,match);return o(t)};nanomatch.makeRe=function(e,t){if(e instanceof RegExp){return e}if(typeof e!=="string"){throw new TypeError("expected pattern to be a string")}if(e.length>l){throw new Error("expected pattern to be less than "+l+" characters")}function makeRe(){var r=u.extend({wrap:false},t);var n=nanomatch.create(e,r);var a=i(n.output,r);u.define(a,"result",n);return a}return memoize("makeRe",e,t,makeRe)};nanomatch.create=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}function create(){return nanomatch.compile(nanomatch.parse(e,t),t)}return memoize("create",e,t,create)};nanomatch.parse=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}function parse(){var r=u.instantiate(null,t);s(r,t);var n=r.parse(e,t);u.define(n,"snapdragon",r);n.input=e;return n}return memoize("parse",e,t,parse)};nanomatch.compile=function(e,t){if(typeof e==="string"){e=nanomatch.parse(e,t)}function compile(){var r=u.instantiate(e,t);o(r,t);return r.compile(e,t)}return memoize("compile",e.input,t,compile)};nanomatch.clearCache=function(){nanomatch.cache.__data__={}};function compose(e,t,r){var n;return memoize("compose",String(e),t,function(){return function(i){if(!n){n=[];for(var a=0;a<e.length;a++){n.push(r(e[a],t))}}var o=n.length;while(o--){if(n[o](i)===true){return true}}return false}})}function memoize(e,t,r,n){var i=u.createKey(e+"="+t,r);if(r&&r.cache===false){return n(t,r)}if(c.has(e,i)){return c.get(e,i)}var a=n(t,r);c.set(e,i,a);return a}nanomatch.compilers=o;nanomatch.parsers=s;nanomatch.cache=c;e.exports=nanomatch},520:(e,t,r)=>{e.exports=new(r(9111))},107:e=>{"use strict";e.exports=function(e,t){function slash(){if(t&&typeof t.slash==="string"){return t.slash}if(t&&typeof t.slash==="function"){return t.slash.call(e)}return"\\\\/"}function star(){if(t&&typeof t.star==="string"){return t.star}if(t&&typeof t.star==="function"){return t.star.call(e)}return"[^"+slash()+"]*?"}var r=e.ast=e.parser.ast;r.state=e.parser.state;e.compiler.state=r.state;e.compiler.set("not",function(e){var t=this.prev();if(this.options.nonegate===true||t.type!=="bos"){return this.emit("\\"+e.val,e)}return this.emit(e.val,e)}).set("escape",function(e){if(this.options.unescape&&/^[-\w_.]/.test(e.val)){return this.emit(e.val,e)}return this.emit("\\"+e.val,e)}).set("quoted",function(e){return this.emit(e.val,e)}).set("dollar",function(e){if(e.parent.type==="bracket"){return this.emit(e.val,e)}return this.emit("\\"+e.val,e)}).set("dot",function(e){if(e.dotfiles===true)this.dotfiles=true;return this.emit("\\"+e.val,e)}).set("backslash",function(e){return this.emit(e.val,e)}).set("slash",function(e,t,r){var n="["+slash()+"]";var i=e.parent;var a=this.prev();while(i.type==="paren"&&!i.hasSlash){i.hasSlash=true;i=i.parent}if(a.addQmark){n+="?"}if(e.rest.slice(0,2)==="\\b"){return this.emit(n,e)}if(e.parsed==="**"||e.parsed==="./**"){this.output="(?:"+this.output;return this.emit(n+")?",e)}if(e.parsed==="!**"&&this.options.nonegate!==true){return this.emit(n+"?\\b",e)}return this.emit(n,e)}).set("bracket",function(e){var t=e.close;var r=!e.escaped?"[":"\\[";var n=e.negated;var i=e.inner;var a=e.val;if(e.escaped===true){i=i.replace(/\\?(\W)/g,"\\$1");n=""}if(i==="]-"){i="\\]\\-"}if(n&&i.indexOf(".")===-1){i+="."}if(n&&i.indexOf("/")===-1){i+="/"}a=r+n+i+t;return this.emit(a,e)}).set("square",function(e){var t=(/^\W/.test(e.val)?"\\":"")+e.val;return this.emit(t,e)}).set("qmark",function(e){var t=this.prev();var r="[^.\\\\/]";if(this.options.dot||t.type!=="bos"&&t.type!=="slash"){r="[^\\\\/]"}if(e.parsed.slice(-1)==="("){var n=e.rest.charAt(0);if(n==="!"||n==="="||n===":"){return this.emit(e.val,e)}}if(e.val.length>1){r+="{"+e.val.length+"}"}return this.emit(r,e)}).set("plus",function(e){var t=e.parsed.slice(-1);if(t==="]"||t===")"){return this.emit(e.val,e)}if(!this.output||/[?*+]/.test(r)&&e.parent.type!=="bracket"){return this.emit("\\+",e)}var r=this.output.slice(-1);if(/\w/.test(r)&&!e.inside){return this.emit("+\\+?",e)}return this.emit("+",e)}).set("globstar",function(e,t,r){if(!this.output){this.state.leadingGlobstar=true}var n=this.prev();var i=this.prev(2);var a=this.next();var o=this.next(2);var s=n.type;var c=e.val;if(n.type==="slash"&&a.type==="slash"){if(i.type==="text"){this.output+="?";if(o.type!=="text"){this.output+="\\b"}}}var u=e.parsed;if(u.charAt(0)==="!"){u=u.slice(1)}var l=e.isInside.paren||e.isInside.brace;if(u&&s!=="slash"&&s!=="bos"&&!l){c=star()}else{c=this.options.dot!==true?"(?:(?!(?:["+slash()+"]|^)\\.).)*?":"(?:(?!(?:["+slash()+"]|^)(?:\\.{1,2})($|["+slash()+"]))(?!\\.{2}).)*?"}if((s==="slash"||s==="bos")&&this.options.dot!==true){c="(?!\\.)"+c}if(n.type==="slash"&&a.type==="slash"&&i.type!=="text"){if(o.type==="text"||o.type==="star"){e.addQmark=true}}if(this.options.capture){c="("+c+")"}return this.emit(c,e)}).set("star",function(e,t,r){var n=t[r-2]||{};var i=this.prev();var a=this.next();var o=i.type;function isStart(e){return e.type==="bos"||e.type==="slash"}if(this.output===""&&this.options.contains!==true){this.output="(?!["+slash()+"])"}if(o==="bracket"&&this.options.bash===false){var s=a&&a.type==="bracket"?star():"*?";if(!i.nodes||i.nodes[1].type!=="posix"){return this.emit(s,e)}}var c=!this.dotfiles&&o!=="text"&&o!=="escape"?this.options.dot?"(?!(?:^|["+slash()+"])\\.{1,2}(?:$|["+slash()+"]))":"(?!\\.)":"";if(isStart(i)||isStart(n)&&o==="not"){if(c!=="(?!\\.)"){c+="(?!(\\.{2}|\\.["+slash()+"]))(?=.)"}else{c+="(?=.)"}}else if(c==="(?!\\.)"){c=""}if(i.type==="not"&&n.type==="bos"&&this.options.dot===true){this.output="(?!\\.)"+this.output}var u=c+star();if(this.options.capture){u="("+u+")"}return this.emit(u,e)}).set("text",function(e){return this.emit(e.val,e)}).set("eos",function(e){var t=this.prev();var r=e.val;this.output="(?:\\.["+slash()+"](?=.))?"+this.output;if(this.state.metachar&&t.type!=="qmark"&&t.type!=="slash"){r+=this.options.contains?"["+slash()+"]?":"(?:["+slash()+"]|$)"}return this.emit(r,e)});if(t&&typeof t.compilers==="function"){t.compilers(e.compiler)}}},2513:(e,t,r)=>{"use strict";var n=r(3089);var i=r(9532);var a;var o="[\\[!*+?$^\"'.\\\\/]+";var s=createTextRegex(o);e.exports=function(e,t){var r=e.parser;var n=r.options;r.state={slashes:0,paths:[]};r.ast.state=r.state;r.capture("prefix",function(){if(this.parsed)return;var e=this.match(/^\.[\\/]/);if(!e)return;this.state.strictOpen=!!this.options.strictOpen;this.state.addPrefix=true}).capture("escape",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(/^(?:\\(.)|([$^]))/);if(!t)return;return e({type:"escape",val:t[2]||t[1]})}).capture("quoted",function(){var e=this.position();var t=this.match(/^["']/);if(!t)return;var r=t[0];if(this.input.indexOf(r)===-1){return e({type:"escape",val:r})}var n=advanceTo(this.input,r);this.consume(n.len);return e({type:"quoted",val:n.esc})}).capture("not",function(){var e=this.parsed;var t=this.position();var r=this.match(this.notRegex||/^!+/);if(!r)return;var n=r[0];var i=n.length%2===1;if(e===""&&!i){n=""}if(e===""&&i&&this.options.nonegate!==true){this.bos.val="(?!^(?:";this.append=")$).*";n=""}return t({type:"not",val:n})}).capture("dot",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\.+/);if(!r)return;var n=r[0];this.state.dot=n==="."&&(e===""||e.slice(-1)==="/");return t({type:"dot",dotfiles:this.state.dot,val:n})}).capture("plus",/^\+(?!\()/).capture("qmark",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\?+(?!\()/);if(!r)return;this.state.metachar=true;this.state.qmark=true;return t({type:"qmark",parsed:e,val:r[0]})}).capture("globstar",function(){var e=this.parsed;var t=this.position();var r=this.match(/^\*{2}(?![*(])(?=[,)/]|$)/);if(!r)return;var i=n.noglobstar!==true?"globstar":"star";var a=t({type:i,parsed:e});this.state.metachar=true;while(this.input.slice(0,4)==="/**/"){this.input=this.input.slice(3)}a.isInside={brace:this.isInside("brace"),paren:this.isInside("paren")};if(i==="globstar"){this.state.globstar=true;a.val="**"}else{this.state.star=true;a.val="*"}return a}).capture("star",function(){var e=this.position();var t=/^(?:\*(?![*(])|[*]{3,}(?!\()|[*]{2}(?![(/]|$)|\*(?=\*\())/;var r=this.match(t);if(!r)return;this.state.metachar=true;this.state.star=true;return e({type:"star",val:r[0]})}).capture("slash",function(){var e=this.position();var t=this.match(/^\//);if(!t)return;this.state.slashes++;return e({type:"slash",val:t[0]})}).capture("backslash",function(){var e=this.position();var t=this.match(/^\\(?![*+?(){}[\]'"])/);if(!t)return;var r=t[0];if(this.isInside("bracket")){r="\\"}else if(r.length>1){r="\\\\"}return e({type:"backslash",val:r})}).capture("square",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(/^\[([^!^\\])\]/);if(!t)return;return e({type:"square",val:t[1]})}).capture("bracket",function(){var e=this.position();var t=this.match(/^(?:\[([!^]?)([^\]]+|\]-)(\]|[^*+?]+)|\[)/);if(!t)return;var r=t[0];var n=t[1]?"^":"";var i=(t[2]||"").replace(/\\\\+/,"\\\\");var a=t[3]||"";if(t[2]&&i.length<t[2].length){r=r.replace(/\\\\+/,"\\\\")}var o=this.input.slice(0,2);if(i===""&&o==="\\]"){i+=o;this.consume(2);var s=this.input;var c=-1;var u;while(u=s[++c]){this.consume(1);if(u==="]"){a=u;break}i+=u}}return e({type:"bracket",val:r,escaped:a!=="]",negated:n,inner:i,close:a})}).capture("text",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(s);if(!t||!t[0])return;return e({type:"text",val:t[0]})});if(t&&typeof t.parsers==="function"){t.parsers(e.parser)}};function advanceTo(e,t){var r=e.charAt(0);var n={len:1,val:"",esc:""};var i=0;function advance(){if(r!=="\\"){n.esc+="\\"+r;n.val+=r}r=e.charAt(++i);n.len++;if(r==="\\"){advance();advance()}}while(r&&r!==t){advance()}return n}function createTextRegex(e){if(a)return a;var t={contains:true,strictClose:false};var r=n.create(e,t);var o=i("^(?:[*]\\((?=.)|"+r+")",t);return a=o}e.exports.not=o},8063:(e,t,r)=>{"use strict";var n=e.exports;var i=r(5622);var a=r(7875)();var o=r(9769);n.define=r(4205);n.diff=r(6253);n.extend=r(5577);n.pick=r(5767);n.typeOf=r(740);n.unique=r(6974);n.isEmptyString=function(e){return String(e)===""||String(e)==="./"};n.isWindows=function(){return i.sep==="\\"||a===true};n.last=function(e,t){return e[e.length-(t||1)]};n.instantiate=function(e,t){var r;if(n.typeOf(e)==="object"&&e.snapdragon){r=e.snapdragon}else if(n.typeOf(t)==="object"&&t.snapdragon){r=t.snapdragon}else{r=new o(t)}n.define(r,"parse",function(e,t){var r=o.prototype.parse.call(this,e,t);r.input=e;var i=this.parser.stack.pop();if(i&&this.options.strictErrors!==true){var a=i.nodes[0];var s=i.nodes[1];if(i.type==="bracket"){if(s.val.charAt(0)==="["){s.val="\\"+s.val}}else{a.val="\\"+a.val;var c=a.parent.nodes[1];if(c.type==="star"){c.loose=true}}}n.define(r,"parser",this.parser);return r});return r};n.createKey=function(e,t){if(typeof t==="undefined"){return e}var r=e;for(var n in t){if(t.hasOwnProperty(n)){r+=";"+n+"="+String(t[n])}}return r};n.arrayify=function(e){if(typeof e==="string")return[e];return e?Array.isArray(e)?e:[e]:[]};n.isString=function(e){return typeof e==="string"};n.isRegex=function(e){return n.typeOf(e)==="regexp"};n.isObject=function(e){return n.typeOf(e)==="object"};n.escapeRegex=function(e){return e.replace(/[-[\]{}()^$|*+?.\\/\s]/g,"\\$&")};n.combineDupes=function(e,t){t=n.arrayify(t).join("|").split("|");t=t.map(function(e){return e.replace(/\\?([+*\\/])/g,"\\$1")});var r=t.join("|");var i=new RegExp("("+r+")(?=\\1)","g");return e.replace(i,"")};n.hasSpecialChars=function(e){return/(?:(?:(^|\/)[!.])|[*?+()|[\]{}]|[+@]\()/.test(e)};n.toPosixPath=function(e){return e.replace(/\\+/g,"/")};n.unescape=function(e){return n.toPosixPath(e.replace(/\\(?=[*+?!.])/g,""))};n.stripDrive=function(e){return n.isWindows()?e.replace(/^[a-z]:[\\/]+?/i,"/"):e};n.stripPrefix=function(e){if(e.charAt(0)==="."&&(e.charAt(1)==="/"||e.charAt(1)==="\\")){return e.slice(2)}return e};n.isSimpleChar=function(e){return e.trim()===""||e==="."};n.isSlash=function(e){return e==="/"||e==="\\/"||e==="\\"||e==="\\\\"};n.matchPath=function(e,t){return t&&t.contains?n.containsPattern(e,t):n.equalsPattern(e,t)};n._equals=function(e,t,r){return r===e||r===t};n._contains=function(e,t,r){return e.indexOf(r)!==-1||t.indexOf(r)!==-1};n.equalsPattern=function(e,t){var r=n.unixify(t);t=t||{};return function fn(i){var a=n._equals(i,r(i),e);if(a===true||t.nocase!==true){return a}var o=i.toLowerCase();return n._equals(o,r(o),e)}};n.containsPattern=function(e,t){var r=n.unixify(t);t=t||{};return function(i){var a=n._contains(i,r(i),e);if(a===true||t.nocase!==true){return a}var o=i.toLowerCase();return n._contains(o,r(o),e)}};n.matchBasename=function(e){return function(t){return e.test(t)||e.test(i.basename(t))}};n.identity=function(e){return e};n.value=function(e,t,r){if(r&&r.unixify===false){return e}if(r&&typeof r.unixify==="function"){return r.unixify(e)}return t(e)};n.unixify=function(e){var t=e||{};return function(e){if(t.stripPrefix!==false){e=n.stripPrefix(e)}if(t.unescape===true){e=n.unescape(e)}if(t.unixify===true||n.isWindows()){e=n.toPosixPath(e)}return e}}},4205:(e,t,r)=>{"use strict";var n=r(977);var i=r(8586);var a=typeof Reflect!=="undefined"&&Reflect.defineProperty?Reflect.defineProperty:Object.defineProperty;e.exports=function defineProperty(e,t,r){if(!n(e)&&typeof e!=="function"&&!Array.isArray(e)){throw new TypeError("expected an object, function, or array")}if(typeof t!=="string"){throw new TypeError('expected "key" to be a string')}if(i(r)){a(e,t,r);return e}a(e,t,{configurable:true,enumerable:false,writable:true,value:r});return e}},5577:(e,t,r)=>{"use strict";var n=r(3603);var i=r(7954);e.exports=Object.assign||function(e){if(e===null||typeof e==="undefined"){throw new TypeError("Cannot convert undefined or null to object")}if(!isObject(e)){e={}}for(var t=1;t<arguments.length;t++){var r=arguments[t];if(isString(r)){r=toObject(r)}if(isObject(r)){assign(e,r);i(e,r)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function isString(e){return e&&typeof e==="string"}function toObject(e){var t={};for(var r in e){t[r]=e[r]}return t}function isObject(e){return e&&typeof e==="object"||n(e)}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function isEnum(e,t){return Object.prototype.propertyIsEnumerable.call(e,t)}},3603:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},7875:(e,t)=>{(function(r){if(t&&typeof t==="object"&&"object"!=="undefined"){e.exports=r()}else if(typeof define==="function"&&define.amd){define([],r)}else if(typeof window!=="undefined"){window.isWindows=r()}else if(typeof global!=="undefined"){global.isWindows=r()}else if(typeof self!=="undefined"){self.isWindows=r()}else{this.isWindows=r()}})(function(){"use strict";return function isWindows(){return process&&(process.platform==="win32"||/^(msys|cygwin)$/.test(process.env.OSTYPE))}})},740:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){if(e===void 0)return"undefined";if(e===null)return"null";var r=typeof e;if(r==="boolean")return"boolean";if(r==="string")return"string";if(r==="number")return"number";if(r==="symbol")return"symbol";if(r==="function"){return isGeneratorFn(e)?"generatorfunction":"function"}if(isArray(e))return"array";if(isBuffer(e))return"buffer";if(isArguments(e))return"arguments";if(isDate(e))return"date";if(isError(e))return"error";if(isRegexp(e))return"regexp";switch(ctorName(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(isGeneratorObj(e)){return"generator"}r=t.call(e);switch(r){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return r.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ctorName(e){return e.constructor?e.constructor.name:null}function isArray(e){if(Array.isArray)return Array.isArray(e);return e instanceof Array}function isError(e){return e instanceof Error||typeof e.message==="string"&&e.constructor&&typeof e.constructor.stackTraceLimit==="number"}function isDate(e){if(e instanceof Date)return true;return typeof e.toDateString==="function"&&typeof e.getDate==="function"&&typeof e.setDate==="function"}function isRegexp(e){if(e instanceof RegExp)return true;return typeof e.flags==="string"&&typeof e.ignoreCase==="boolean"&&typeof e.multiline==="boolean"&&typeof e.global==="boolean"}function isGeneratorFn(e,t){return ctorName(e)==="GeneratorFunction"}function isGeneratorObj(e){return typeof e.throw==="function"&&typeof e.return==="function"&&typeof e.next==="function"}function isArguments(e){try{if(typeof e.length==="number"&&typeof e.callee==="function"){return true}}catch(e){if(e.message.indexOf("callee")!==-1){return true}}return false}function isBuffer(e){if(e.constructor&&typeof e.constructor.isBuffer==="function"){return e.constructor.isBuffer(e)}return false}},3991:(e,t,r)=>{"use strict";var n=r(2046);var i=r(5320);var a=r(4728);function copy(e,t,r){if(!isObject(e)){throw new TypeError("expected receiving object to be an object.")}if(!isObject(t)){throw new TypeError("expected providing object to be an object.")}var n=nativeKeys(t);var o=Object.keys(t);var s=n.length;r=arrayify(r);while(s--){var c=n[s];if(has(o,c)){a(e,c,t[c])}else if(!(c in e)&&!has(r,c)){i(e,t,c)}}}function isObject(e){return n(e)==="object"||typeof e==="function"}function has(e,t){t=arrayify(t);var r=t.length;if(isObject(e)){for(var n in e){if(t.indexOf(n)>-1){return true}}var i=nativeKeys(e);return has(i,t)}if(Array.isArray(e)){var a=e;while(r--){if(a.indexOf(t[r])>-1){return true}}return false}throw new TypeError("expected an array or object.")}function arrayify(e){return e?Array.isArray(e)?e:[e]:[]}function hasConstructor(e){return isObject(e)&&typeof e.constructor!=="undefined"}function nativeKeys(e){if(!hasConstructor(e))return[];return Object.getOwnPropertyNames(e)}e.exports=copy;e.exports.has=has},4274:(e,t,r)=>{"use strict";var n=r(977);e.exports=function visit(e,t,r,i){if(!n(e)&&typeof e!=="function"){throw new Error("object-visit expects `thisArg` to be an object.")}if(typeof t!=="string"){throw new Error("object-visit expects `method` name to be a string")}if(typeof e[t]!=="function"){return e}var a=[].slice.call(arguments,3);r=r||{};for(var o in r){var s=[o,r[o]].concat(a);e[t].apply(e,s)}return e}},5767:(e,t,r)=>{"use strict";var n=r(977);e.exports=function pick(e,t){if(!n(e)&&typeof e!=="function"){return{}}var r={};if(typeof t==="string"){if(t in e){r[t]=e[t]}return r}var i=t.length;var a=-1;while(++a<i){var o=t[a];if(o in e){r[o]=e[o]}}return r}},771:e=>{function pascalcase(e){if(typeof e!=="string"){throw new TypeError("expected a string.")}e=e.replace(/([A-Z])/g," $1");if(e.length===1){return e.toUpperCase()}e=e.replace(/^[\W_]+|[\W_]+$/g,"").toLowerCase();e=e.charAt(0).toUpperCase()+e.slice(1);return e.replace(/[\W_]+(\w|$)/g,function(e,t){return t.toUpperCase()})}e.exports=pascalcase},5419:e=>{"use strict";e.exports={alnum:"a-zA-Z0-9",alpha:"a-zA-Z",ascii:"\\x00-\\x7F",blank:" \\t",cntrl:"\\x00-\\x1F\\x7F",digit:"0-9",graph:"\\x21-\\x7E",lower:"a-z",print:"\\x20-\\x7E ",punct:"\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",space:" \\t\\r\\n\\v\\f",upper:"A-Z",word:"A-Za-z0-9_",xdigit:"A-Fa-f0-9"}},3089:(e,t,r)=>{"use strict";var n=r(9223);var i=r(3867);function toRegex(e,t){return new RegExp(toRegex.create(e,t))}toRegex.create=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}var r=n({},t);if(r.contains===true){r.strictNegate=false}var a=r.strictOpen!==false?"^":"";var o=r.strictClose!==false?"$":"";var s=r.endChar?r.endChar:"+";var c=e;if(r.strictNegate===false){c="(?:(?!(?:"+e+")).)"+s}else{c="(?:(?!^(?:"+e+")$).)"+s}var u=a+c+o;if(r.safe===true&&i(u)===false){throw new Error("potentially unsafe regular expression: "+u)}return u};e.exports=toRegex},9223:(e,t,r)=>{"use strict";var n=r(9150);var i=r(7954);e.exports=Object.assign||function(e){if(e===null||typeof e==="undefined"){throw new TypeError("Cannot convert undefined or null to object")}if(!isObject(e)){e={}}for(var t=1;t<arguments.length;t++){var r=arguments[t];if(isString(r)){r=toObject(r)}if(isObject(r)){assign(e,r);i(e,r)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function isString(e){return e&&typeof e==="string"}function toObject(e){var t={};for(var r in e){t[r]=e[r]}return t}function isObject(e){return e&&typeof e==="object"||n(e)}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function isEnum(e,t){return Object.prototype.propertyIsEnumerable.call(e,t)}},9150:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},193:e=>{"use strict";e.exports=function repeat(e,t){var r=new Array(t);for(var n=0;n<t;n++){r[n]=e}return r}},9437:e=>{"use strict";var t="";var r;e.exports=repeat;function repeat(e,n){if(typeof e!=="string"){throw new TypeError("expected a string")}if(n===1)return e;if(n===2)return e+e;var i=e.length*n;if(r!==e||typeof r==="undefined"){r=e;t=""}else if(t.length>=i){return t.substr(0,i)}while(i>t.length&&n>1){if(n&1){t+=e}n>>=1;e+=e}t+=e;t=t.substr(0,i);return t}},6889:(e,t,r)=>{var n=r(3842);var i=r(5334);var a=r(533);var o=r(3503);e.exports=function(e){var t=0,r,s,c={type:i.ROOT,stack:[]},u=c,l=c.stack,f=[];var d=function(t){n.error(e,"Nothing to repeat at column "+(t-1))};var p=n.strToChars(e);r=p.length;while(t<r){s=p[t++];switch(s){case"\\":s=p[t++];switch(s){case"b":l.push(o.wordBoundary());break;case"B":l.push(o.nonWordBoundary());break;case"w":l.push(a.words());break;case"W":l.push(a.notWords());break;case"d":l.push(a.ints());break;case"D":l.push(a.notInts());break;case"s":l.push(a.whitespace());break;case"S":l.push(a.notWhitespace());break;default:if(/\d/.test(s)){l.push({type:i.REFERENCE,value:parseInt(s,10)})}else{l.push({type:i.CHAR,value:s.charCodeAt(0)})}}break;case"^":l.push(o.begin());break;case"$":l.push(o.end());break;case"[":var g;if(p[t]==="^"){g=true;t++}else{g=false}var _=n.tokenizeClass(p.slice(t),e);t+=_[1];l.push({type:i.SET,set:_[0],not:g});break;case".":l.push(a.anyChar());break;case"(":var m={type:i.GROUP,stack:[],remember:true};s=p[t];if(s==="?"){s=p[t+1];t+=2;if(s==="="){m.followedBy=true}else if(s==="!"){m.notFollowedBy=true}else if(s!==":"){n.error(e,"Invalid group, character '"+s+"' after '?' at column "+(t-1))}m.remember=false}l.push(m);f.push(u);u=m;l=m.stack;break;case")":if(f.length===0){n.error(e,"Unmatched ) at column "+(t-1))}u=f.pop();l=u.options?u.options[u.options.length-1]:u.stack;break;case"|":if(!u.options){u.options=[u.stack];delete u.stack}var y=[];u.options.push(y);l=y;break;case"{":var h=/^(\d+)(,(\d+)?)?\}/.exec(p.slice(t)),v,T;if(h!==null){if(l.length===0){d(t)}v=parseInt(h[1],10);T=h[2]?h[3]?parseInt(h[3],10):Infinity:v;t+=h[0].length;l.push({type:i.REPETITION,min:v,max:T,value:l.pop()})}else{l.push({type:i.CHAR,value:123})}break;case"?":if(l.length===0){d(t)}l.push({type:i.REPETITION,min:0,max:1,value:l.pop()});break;case"+":if(l.length===0){d(t)}l.push({type:i.REPETITION,min:1,max:Infinity,value:l.pop()});break;case"*":if(l.length===0){d(t)}l.push({type:i.REPETITION,min:0,max:Infinity,value:l.pop()});break;default:l.push({type:i.CHAR,value:s.charCodeAt(0)})}}if(f.length!==0){n.error(e,"Unterminated group")}return c};e.exports.types=i},3503:(e,t,r)=>{var n=r(5334);t.wordBoundary=function(){return{type:n.POSITION,value:"b"}};t.nonWordBoundary=function(){return{type:n.POSITION,value:"B"}};t.begin=function(){return{type:n.POSITION,value:"^"}};t.end=function(){return{type:n.POSITION,value:"$"}}},533:(e,t,r)=>{var n=r(5334);var i=function(){return[{type:n.RANGE,from:48,to:57}]};var a=function(){return[{type:n.CHAR,value:95},{type:n.RANGE,from:97,to:122},{type:n.RANGE,from:65,to:90}].concat(i())};var o=function(){return[{type:n.CHAR,value:9},{type:n.CHAR,value:10},{type:n.CHAR,value:11},{type:n.CHAR,value:12},{type:n.CHAR,value:13},{type:n.CHAR,value:32},{type:n.CHAR,value:160},{type:n.CHAR,value:5760},{type:n.CHAR,value:6158},{type:n.CHAR,value:8192},{type:n.CHAR,value:8193},{type:n.CHAR,value:8194},{type:n.CHAR,value:8195},{type:n.CHAR,value:8196},{type:n.CHAR,value:8197},{type:n.CHAR,value:8198},{type:n.CHAR,value:8199},{type:n.CHAR,value:8200},{type:n.CHAR,value:8201},{type:n.CHAR,value:8202},{type:n.CHAR,value:8232},{type:n.CHAR,value:8233},{type:n.CHAR,value:8239},{type:n.CHAR,value:8287},{type:n.CHAR,value:12288},{type:n.CHAR,value:65279}]};var s=function(){return[{type:n.CHAR,value:10},{type:n.CHAR,value:13},{type:n.CHAR,value:8232},{type:n.CHAR,value:8233}]};t.words=function(){return{type:n.SET,set:a(),not:false}};t.notWords=function(){return{type:n.SET,set:a(),not:true}};t.ints=function(){return{type:n.SET,set:i(),not:false}};t.notInts=function(){return{type:n.SET,set:i(),not:true}};t.whitespace=function(){return{type:n.SET,set:o(),not:false}};t.notWhitespace=function(){return{type:n.SET,set:o(),not:true}};t.anyChar=function(){return{type:n.SET,set:s(),not:true}}},5334:e=>{e.exports={ROOT:0,GROUP:1,POSITION:2,SET:3,RANGE:4,REPETITION:5,REFERENCE:6,CHAR:7}},3842:(e,t,r)=>{var n=r(5334);var i=r(533);var a="@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^ ?";var o={0:0,t:9,n:10,v:11,f:12,r:13};t.strToChars=function(e){var t=/(\[\\b\])|(\\)?\\(?:u([A-F0-9]{4})|x([A-F0-9]{2})|(0?[0-7]{2})|c([@A-Z\[\\\]\^?])|([0tnvfr]))/g;e=e.replace(t,function(e,t,r,n,i,s,c,u){if(r){return e}var l=t?8:n?parseInt(n,16):i?parseInt(i,16):s?parseInt(s,8):c?a.indexOf(c):o[u];var f=String.fromCharCode(l);if(/[\[\]{}\^$.|?*+()]/.test(f)){f="\\"+f}return f});return e};t.tokenizeClass=function(e,r){var a=[];var o=/\\(?:(w)|(d)|(s)|(W)|(D)|(S))|((?:(?:\\)(.)|([^\]\\]))-(?:\\)?([^\]]))|(\])|(?:\\)?(.)/g;var s,c;while((s=o.exec(e))!=null){if(s[1]){a.push(i.words())}else if(s[2]){a.push(i.ints())}else if(s[3]){a.push(i.whitespace())}else if(s[4]){a.push(i.notWords())}else if(s[5]){a.push(i.notInts())}else if(s[6]){a.push(i.notWhitespace())}else if(s[7]){a.push({type:n.RANGE,from:(s[8]||s[9]).charCodeAt(0),to:s[10].charCodeAt(0)})}else if(c=s[12]){a.push({type:n.CHAR,value:c.charCodeAt(0)})}else{return[a,o.lastIndex]}}t.error(r,"Unterminated character class")};t.error=function(e,t){throw new SyntaxError("Invalid regular expression: /"+e+"/: "+t)}},3867:(e,t,r)=>{var n=r(6889);var i=n.types;e.exports=function(e,t){if(!t)t={};var r=t.limit===undefined?25:t.limit;if(isRegExp(e))e=e.source;else if(typeof e!=="string")e=String(e);try{e=n(e)}catch(e){return false}var a=0;return function walk(e,t){if(e.type===i.REPETITION){t++;a++;if(t>1)return false;if(a>r)return false}if(e.options){for(var n=0,o=e.options.length;n<o;n++){var s=walk({stack:e.options[n]},t);if(!s)return false}}var c=e.stack||e.value&&e.value.stack;if(!c)return true;for(var n=0;n<c.length;n++){var s=walk(c[n],t);if(!s)return false}return true}(e,0)};function isRegExp(e){return{}.toString.call(e)==="[object RegExp]"}},2729:(e,t)=>{t=e.exports=SemVer;var r;if(typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)){r=function(){var e=Array.prototype.slice.call(arguments,0);e.unshift("SEMVER");console.log.apply(console,e)}}else{r=function(){}}t.SEMVER_SPEC_VERSION="2.0.0";var n=256;var i=Number.MAX_SAFE_INTEGER||9007199254740991;var a=16;var o=t.re=[];var s=t.src=[];var c=0;var u=c++;s[u]="0|[1-9]\\d*";var l=c++;s[l]="[0-9]+";var f=c++;s[f]="\\d*[a-zA-Z-][a-zA-Z0-9-]*";var d=c++;s[d]="("+s[u]+")\\."+"("+s[u]+")\\."+"("+s[u]+")";var p=c++;s[p]="("+s[l]+")\\."+"("+s[l]+")\\."+"("+s[l]+")";var g=c++;s[g]="(?:"+s[u]+"|"+s[f]+")";var _=c++;s[_]="(?:"+s[l]+"|"+s[f]+")";var m=c++;s[m]="(?:-("+s[g]+"(?:\\."+s[g]+")*))";var y=c++;s[y]="(?:-?("+s[_]+"(?:\\."+s[_]+")*))";var h=c++;s[h]="[0-9A-Za-z-]+";var v=c++;s[v]="(?:\\+("+s[h]+"(?:\\."+s[h]+")*))";var T=c++;var S="v?"+s[d]+s[m]+"?"+s[v]+"?";s[T]="^"+S+"$";var b="[v=\\s]*"+s[p]+s[y]+"?"+s[v]+"?";var x=c++;s[x]="^"+b+"$";var C=c++;s[C]="((?:<|>)?=?)";var E=c++;s[E]=s[l]+"|x|X|\\*";var D=c++;s[D]=s[u]+"|x|X|\\*";var k=c++;s[k]="[v=\\s]*("+s[D]+")"+"(?:\\.("+s[D]+")"+"(?:\\.("+s[D]+")"+"(?:"+s[m]+")?"+s[v]+"?"+")?)?";var N=c++;s[N]="[v=\\s]*("+s[E]+")"+"(?:\\.("+s[E]+")"+"(?:\\.("+s[E]+")"+"(?:"+s[y]+")?"+s[v]+"?"+")?)?";var A=c++;s[A]="^"+s[C]+"\\s*"+s[k]+"$";var O=c++;s[O]="^"+s[C]+"\\s*"+s[N]+"$";var F=c++;s[F]="(?:^|[^\\d])"+"(\\d{1,"+a+"})"+"(?:\\.(\\d{1,"+a+"}))?"+"(?:\\.(\\d{1,"+a+"}))?"+"(?:$|[^\\d])";var P=c++;s[P]="(?:~>?)";var I=c++;s[I]="(\\s*)"+s[P]+"\\s+";o[I]=new RegExp(s[I],"g");var w="$1~";var M=c++;s[M]="^"+s[P]+s[k]+"$";var L=c++;s[L]="^"+s[P]+s[N]+"$";var R=c++;s[R]="(?:\\^)";var B=c++;s[B]="(\\s*)"+s[R]+"\\s+";o[B]=new RegExp(s[B],"g");var j="$1^";var J=c++;s[J]="^"+s[R]+s[k]+"$";var W=c++;s[W]="^"+s[R]+s[N]+"$";var U=c++;s[U]="^"+s[C]+"\\s*("+b+")$|^$";var z=c++;s[z]="^"+s[C]+"\\s*("+S+")$|^$";var V=c++;s[V]="(\\s*)"+s[C]+"\\s*("+b+"|"+s[k]+")";o[V]=new RegExp(s[V],"g");var K="$1$2$3";var q=c++;s[q]="^\\s*("+s[k]+")"+"\\s+-\\s+"+"("+s[k]+")"+"\\s*$";var G=c++;s[G]="^\\s*("+s[N]+")"+"\\s+-\\s+"+"("+s[N]+")"+"\\s*$";var H=c++;s[H]="(<|>)?=?\\s*\\*";for(var Q=0;Q<c;Q++){r(Q,s[Q]);if(!o[Q]){o[Q]=new RegExp(s[Q])}}t.parse=parse;function parse(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof SemVer){return e}if(typeof e!=="string"){return null}if(e.length>n){return null}var r=t.loose?o[x]:o[T];if(!r.test(e)){return null}try{return new SemVer(e,t)}catch(e){return null}}t.valid=valid;function valid(e,t){var r=parse(e,t);return r?r.version:null}t.clean=clean;function clean(e,t){var r=parse(e.trim().replace(/^[=v]+/,""),t);return r?r.version:null}t.SemVer=SemVer;function SemVer(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof SemVer){if(e.loose===t.loose){return e}else{e=e.version}}else if(typeof e!=="string"){throw new TypeError("Invalid Version: "+e)}if(e.length>n){throw new TypeError("version is longer than "+n+" characters")}if(!(this instanceof SemVer)){return new SemVer(e,t)}r("SemVer",e,t);this.options=t;this.loose=!!t.loose;var a=e.trim().match(t.loose?o[x]:o[T]);if(!a){throw new TypeError("Invalid Version: "+e)}this.raw=e;this.major=+a[1];this.minor=+a[2];this.patch=+a[3];if(this.major>i||this.major<0){throw new TypeError("Invalid major version")}if(this.minor>i||this.minor<0){throw new TypeError("Invalid minor version")}if(this.patch>i||this.patch<0){throw new TypeError("Invalid patch version")}if(!a[4]){this.prerelease=[]}else{this.prerelease=a[4].split(".").map(function(e){if(/^[0-9]+$/.test(e)){var t=+e;if(t>=0&&t<i){return t}}return e})}this.build=a[5]?a[5].split("."):[];this.format()}SemVer.prototype.format=function(){this.version=this.major+"."+this.minor+"."+this.patch;if(this.prerelease.length){this.version+="-"+this.prerelease.join(".")}return this.version};SemVer.prototype.toString=function(){return this.version};SemVer.prototype.compare=function(e){r("SemVer.compare",this.version,this.options,e);if(!(e instanceof SemVer)){e=new SemVer(e,this.options)}return this.compareMain(e)||this.comparePre(e)};SemVer.prototype.compareMain=function(e){if(!(e instanceof SemVer)){e=new SemVer(e,this.options)}return compareIdentifiers(this.major,e.major)||compareIdentifiers(this.minor,e.minor)||compareIdentifiers(this.patch,e.patch)};SemVer.prototype.comparePre=function(e){if(!(e instanceof SemVer)){e=new SemVer(e,this.options)}if(this.prerelease.length&&!e.prerelease.length){return-1}else if(!this.prerelease.length&&e.prerelease.length){return 1}else if(!this.prerelease.length&&!e.prerelease.length){return 0}var t=0;do{var n=this.prerelease[t];var i=e.prerelease[t];r("prerelease compare",t,n,i);if(n===undefined&&i===undefined){return 0}else if(i===undefined){return 1}else if(n===undefined){return-1}else if(n===i){continue}else{return compareIdentifiers(n,i)}}while(++t)};SemVer.prototype.inc=function(e,t){switch(e){case"premajor":this.prerelease.length=0;this.patch=0;this.minor=0;this.major++;this.inc("pre",t);break;case"preminor":this.prerelease.length=0;this.patch=0;this.minor++;this.inc("pre",t);break;case"prepatch":this.prerelease.length=0;this.inc("patch",t);this.inc("pre",t);break;case"prerelease":if(this.prerelease.length===0){this.inc("patch",t)}this.inc("pre",t);break;case"major":if(this.minor!==0||this.patch!==0||this.prerelease.length===0){this.major++}this.minor=0;this.patch=0;this.prerelease=[];break;case"minor":if(this.patch!==0||this.prerelease.length===0){this.minor++}this.patch=0;this.prerelease=[];break;case"patch":if(this.prerelease.length===0){this.patch++}this.prerelease=[];break;case"pre":if(this.prerelease.length===0){this.prerelease=[0]}else{var r=this.prerelease.length;while(--r>=0){if(typeof this.prerelease[r]==="number"){this.prerelease[r]++;r=-2}}if(r===-1){this.prerelease.push(0)}}if(t){if(this.prerelease[0]===t){if(isNaN(this.prerelease[1])){this.prerelease=[t,0]}}else{this.prerelease=[t,0]}}break;default:throw new Error("invalid increment argument: "+e)}this.format();this.raw=this.version;return this};t.inc=inc;function inc(e,t,r,n){if(typeof r==="string"){n=r;r=undefined}try{return new SemVer(e,r).inc(t,n).version}catch(e){return null}}t.diff=diff;function diff(e,t){if(eq(e,t)){return null}else{var r=parse(e);var n=parse(t);var i="";if(r.prerelease.length||n.prerelease.length){i="pre";var a="prerelease"}for(var o in r){if(o==="major"||o==="minor"||o==="patch"){if(r[o]!==n[o]){return i+o}}}return a}}t.compareIdentifiers=compareIdentifiers;var $=/^[0-9]+$/;function compareIdentifiers(e,t){var r=$.test(e);var n=$.test(t);if(r&&n){e=+e;t=+t}return e===t?0:r&&!n?-1:n&&!r?1:e<t?-1:1}t.rcompareIdentifiers=rcompareIdentifiers;function rcompareIdentifiers(e,t){return compareIdentifiers(t,e)}t.major=major;function major(e,t){return new SemVer(e,t).major}t.minor=minor;function minor(e,t){return new SemVer(e,t).minor}t.patch=patch;function patch(e,t){return new SemVer(e,t).patch}t.compare=compare;function compare(e,t,r){return new SemVer(e,r).compare(new SemVer(t,r))}t.compareLoose=compareLoose;function compareLoose(e,t){return compare(e,t,true)}t.rcompare=rcompare;function rcompare(e,t,r){return compare(t,e,r)}t.sort=sort;function sort(e,r){return e.sort(function(e,n){return t.compare(e,n,r)})}t.rsort=rsort;function rsort(e,r){return e.sort(function(e,n){return t.rcompare(e,n,r)})}t.gt=gt;function gt(e,t,r){return compare(e,t,r)>0}t.lt=lt;function lt(e,t,r){return compare(e,t,r)<0}t.eq=eq;function eq(e,t,r){return compare(e,t,r)===0}t.neq=neq;function neq(e,t,r){return compare(e,t,r)!==0}t.gte=gte;function gte(e,t,r){return compare(e,t,r)>=0}t.lte=lte;function lte(e,t,r){return compare(e,t,r)<=0}t.cmp=cmp;function cmp(e,t,r,n){switch(t){case"===":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e===r;case"!==":if(typeof e==="object")e=e.version;if(typeof r==="object")r=r.version;return e!==r;case"":case"=":case"==":return eq(e,r,n);case"!=":return neq(e,r,n);case">":return gt(e,r,n);case">=":return gte(e,r,n);case"<":return lt(e,r,n);case"<=":return lte(e,r,n);default:throw new TypeError("Invalid operator: "+t)}}t.Comparator=Comparator;function Comparator(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof Comparator){if(e.loose===!!t.loose){return e}else{e=e.value}}if(!(this instanceof Comparator)){return new Comparator(e,t)}r("comparator",e,t);this.options=t;this.loose=!!t.loose;this.parse(e);if(this.semver===X){this.value=""}else{this.value=this.operator+this.semver.version}r("comp",this)}var X={};Comparator.prototype.parse=function(e){var t=this.options.loose?o[U]:o[z];var r=e.match(t);if(!r){throw new TypeError("Invalid comparator: "+e)}this.operator=r[1];if(this.operator==="="){this.operator=""}if(!r[2]){this.semver=X}else{this.semver=new SemVer(r[2],this.options.loose)}};Comparator.prototype.toString=function(){return this.value};Comparator.prototype.test=function(e){r("Comparator.test",e,this.options.loose);if(this.semver===X){return true}if(typeof e==="string"){e=new SemVer(e,this.options)}return cmp(e,this.operator,this.semver,this.options)};Comparator.prototype.intersects=function(e,t){if(!(e instanceof Comparator)){throw new TypeError("a Comparator is required")}if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}var r;if(this.operator===""){r=new Range(e.value,t);return satisfies(this.value,r,t)}else if(e.operator===""){r=new Range(this.value,t);return satisfies(e.semver,r,t)}var n=(this.operator===">="||this.operator===">")&&(e.operator===">="||e.operator===">");var i=(this.operator==="<="||this.operator==="<")&&(e.operator==="<="||e.operator==="<");var a=this.semver.version===e.semver.version;var o=(this.operator===">="||this.operator==="<=")&&(e.operator===">="||e.operator==="<=");var s=cmp(this.semver,"<",e.semver,t)&&((this.operator===">="||this.operator===">")&&(e.operator==="<="||e.operator==="<"));var c=cmp(this.semver,">",e.semver,t)&&((this.operator==="<="||this.operator==="<")&&(e.operator===">="||e.operator===">"));return n||i||a&&o||s||c};t.Range=Range;function Range(e,t){if(!t||typeof t!=="object"){t={loose:!!t,includePrerelease:false}}if(e instanceof Range){if(e.loose===!!t.loose&&e.includePrerelease===!!t.includePrerelease){return e}else{return new Range(e.raw,t)}}if(e instanceof Comparator){return new Range(e.value,t)}if(!(this instanceof Range)){return new Range(e,t)}this.options=t;this.loose=!!t.loose;this.includePrerelease=!!t.includePrerelease;this.raw=e;this.set=e.split(/\s*\|\|\s*/).map(function(e){return this.parseRange(e.trim())},this).filter(function(e){return e.length});if(!this.set.length){throw new TypeError("Invalid SemVer Range: "+e)}this.format()}Range.prototype.format=function(){this.range=this.set.map(function(e){return e.join(" ").trim()}).join("||").trim();return this.range};Range.prototype.toString=function(){return this.range};Range.prototype.parseRange=function(e){var t=this.options.loose;e=e.trim();var n=t?o[G]:o[q];e=e.replace(n,hyphenReplace);r("hyphen replace",e);e=e.replace(o[V],K);r("comparator trim",e,o[V]);e=e.replace(o[I],w);e=e.replace(o[B],j);e=e.split(/\s+/).join(" ");var i=t?o[U]:o[z];var a=e.split(" ").map(function(e){return parseComparator(e,this.options)},this).join(" ").split(/\s+/);if(this.options.loose){a=a.filter(function(e){return!!e.match(i)})}a=a.map(function(e){return new Comparator(e,this.options)},this);return a};Range.prototype.intersects=function(e,t){if(!(e instanceof Range)){throw new TypeError("a Range is required")}return this.set.some(function(r){return r.every(function(r){return e.set.some(function(e){return e.every(function(e){return r.intersects(e,t)})})})})};t.toComparators=toComparators;function toComparators(e,t){return new Range(e,t).set.map(function(e){return e.map(function(e){return e.value}).join(" ").trim().split(" ")})}function parseComparator(e,t){r("comp",e,t);e=replaceCarets(e,t);r("caret",e);e=replaceTildes(e,t);r("tildes",e);e=replaceXRanges(e,t);r("xrange",e);e=replaceStars(e,t);r("stars",e);return e}function isX(e){return!e||e.toLowerCase()==="x"||e==="*"}function replaceTildes(e,t){return e.trim().split(/\s+/).map(function(e){return replaceTilde(e,t)}).join(" ")}function replaceTilde(e,t){var n=t.loose?o[L]:o[M];return e.replace(n,function(t,n,i,a,o){r("tilde",e,t,n,i,a,o);var s;if(isX(n)){s=""}else if(isX(i)){s=">="+n+".0.0 <"+(+n+1)+".0.0"}else if(isX(a)){s=">="+n+"."+i+".0 <"+n+"."+(+i+1)+".0"}else if(o){r("replaceTilde pr",o);s=">="+n+"."+i+"."+a+"-"+o+" <"+n+"."+(+i+1)+".0"}else{s=">="+n+"."+i+"."+a+" <"+n+"."+(+i+1)+".0"}r("tilde return",s);return s})}function replaceCarets(e,t){return e.trim().split(/\s+/).map(function(e){return replaceCaret(e,t)}).join(" ")}function replaceCaret(e,t){r("caret",e,t);var n=t.loose?o[W]:o[J];return e.replace(n,function(t,n,i,a,o){r("caret",e,t,n,i,a,o);var s;if(isX(n)){s=""}else if(isX(i)){s=">="+n+".0.0 <"+(+n+1)+".0.0"}else if(isX(a)){if(n==="0"){s=">="+n+"."+i+".0 <"+n+"."+(+i+1)+".0"}else{s=">="+n+"."+i+".0 <"+(+n+1)+".0.0"}}else if(o){r("replaceCaret pr",o);if(n==="0"){if(i==="0"){s=">="+n+"."+i+"."+a+"-"+o+" <"+n+"."+i+"."+(+a+1)}else{s=">="+n+"."+i+"."+a+"-"+o+" <"+n+"."+(+i+1)+".0"}}else{s=">="+n+"."+i+"."+a+"-"+o+" <"+(+n+1)+".0.0"}}else{r("no pr");if(n==="0"){if(i==="0"){s=">="+n+"."+i+"."+a+" <"+n+"."+i+"."+(+a+1)}else{s=">="+n+"."+i+"."+a+" <"+n+"."+(+i+1)+".0"}}else{s=">="+n+"."+i+"."+a+" <"+(+n+1)+".0.0"}}r("caret return",s);return s})}function replaceXRanges(e,t){r("replaceXRanges",e,t);return e.split(/\s+/).map(function(e){return replaceXRange(e,t)}).join(" ")}function replaceXRange(e,t){e=e.trim();var n=t.loose?o[O]:o[A];return e.replace(n,function(t,n,i,a,o,s){r("xRange",e,t,n,i,a,o,s);var c=isX(i);var u=c||isX(a);var l=u||isX(o);var f=l;if(n==="="&&f){n=""}if(c){if(n===">"||n==="<"){t="<0.0.0"}else{t="*"}}else if(n&&f){if(u){a=0}o=0;if(n===">"){n=">=";if(u){i=+i+1;a=0;o=0}else{a=+a+1;o=0}}else if(n==="<="){n="<";if(u){i=+i+1}else{a=+a+1}}t=n+i+"."+a+"."+o}else if(u){t=">="+i+".0.0 <"+(+i+1)+".0.0"}else if(l){t=">="+i+"."+a+".0 <"+i+"."+(+a+1)+".0"}r("xRange return",t);return t})}function replaceStars(e,t){r("replaceStars",e,t);return e.trim().replace(o[H],"")}function hyphenReplace(e,t,r,n,i,a,o,s,c,u,l,f,d){if(isX(r)){t=""}else if(isX(n)){t=">="+r+".0.0"}else if(isX(i)){t=">="+r+"."+n+".0"}else{t=">="+t}if(isX(c)){s=""}else if(isX(u)){s="<"+(+c+1)+".0.0"}else if(isX(l)){s="<"+c+"."+(+u+1)+".0"}else if(f){s="<="+c+"."+u+"."+l+"-"+f}else{s="<="+s}return(t+" "+s).trim()}Range.prototype.test=function(e){if(!e){return false}if(typeof e==="string"){e=new SemVer(e,this.options)}for(var t=0;t<this.set.length;t++){if(testSet(this.set[t],e,this.options)){return true}}return false};function testSet(e,t,n){for(var i=0;i<e.length;i++){if(!e[i].test(t)){return false}}if(t.prerelease.length&&!n.includePrerelease){for(i=0;i<e.length;i++){r(e[i].semver);if(e[i].semver===X){continue}if(e[i].semver.prerelease.length>0){var a=e[i].semver;if(a.major===t.major&&a.minor===t.minor&&a.patch===t.patch){return true}}}return false}return true}t.satisfies=satisfies;function satisfies(e,t,r){try{t=new Range(t,r)}catch(e){return false}return t.test(e)}t.maxSatisfying=maxSatisfying;function maxSatisfying(e,t,r){var n=null;var i=null;try{var a=new Range(t,r)}catch(e){return null}e.forEach(function(e){if(a.test(e)){if(!n||i.compare(e)===-1){n=e;i=new SemVer(n,r)}}});return n}t.minSatisfying=minSatisfying;function minSatisfying(e,t,r){var n=null;var i=null;try{var a=new Range(t,r)}catch(e){return null}e.forEach(function(e){if(a.test(e)){if(!n||i.compare(e)===1){n=e;i=new SemVer(n,r)}}});return n}t.minVersion=minVersion;function minVersion(e,t){e=new Range(e,t);var r=new SemVer("0.0.0");if(e.test(r)){return r}r=new SemVer("0.0.0-0");if(e.test(r)){return r}r=null;for(var n=0;n<e.set.length;++n){var i=e.set[n];i.forEach(function(e){var t=new SemVer(e.semver.version);switch(e.operator){case">":if(t.prerelease.length===0){t.patch++}else{t.prerelease.push(0)}t.raw=t.format();case"":case">=":if(!r||gt(r,t)){r=t}break;case"<":case"<=":break;default:throw new Error("Unexpected operation: "+e.operator)}})}if(r&&e.test(r)){return r}return null}t.validRange=validRange;function validRange(e,t){try{return new Range(e,t).range||"*"}catch(e){return null}}t.ltr=ltr;function ltr(e,t,r){return outside(e,t,"<",r)}t.gtr=gtr;function gtr(e,t,r){return outside(e,t,">",r)}t.outside=outside;function outside(e,t,r,n){e=new SemVer(e,n);t=new Range(t,n);var i,a,o,s,c;switch(r){case">":i=gt;a=lte;o=lt;s=">";c=">=";break;case"<":i=lt;a=gte;o=gt;s="<";c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(satisfies(e,t,n)){return false}for(var u=0;u<t.set.length;++u){var l=t.set[u];var f=null;var d=null;l.forEach(function(e){if(e.semver===X){e=new Comparator(">=0.0.0")}f=f||e;d=d||e;if(i(e.semver,f.semver,n)){f=e}else if(o(e.semver,d.semver,n)){d=e}});if(f.operator===s||f.operator===c){return false}if((!d.operator||d.operator===s)&&a(e,d.semver)){return false}else if(d.operator===c&&o(e,d.semver)){return false}}return true}t.prerelease=prerelease;function prerelease(e,t){var r=parse(e,t);return r&&r.prerelease.length?r.prerelease:null}t.intersects=intersects;function intersects(e,t,r){e=new Range(e,r);t=new Range(t,r);return e.intersects(t)}t.coerce=coerce;function coerce(e){if(e instanceof SemVer){return e}if(typeof e!=="string"){return null}var t=e.match(o[F]);if(t==null){return null}return parse(t[1]+"."+(t[2]||"0")+"."+(t[3]||"0"))}},6469:(e,t,r)=>{"use strict";var n=r(6439);var i=r(8333);var a=r(1221);var o=r(485);e.exports=function(e,t,r){if(!o(e)){return e}if(Array.isArray(t)){t=[].concat.apply([],t).join(".")}if(typeof t!=="string"){return e}var s=n(t,{sep:".",brackets:true});var c=s.length;var u=-1;var l=e;while(++u<c){var f=s[u];if(u!==c-1){if(!o(l[f])){l[f]={}}l=l[f];continue}if(a(l[f])&&a(r)){l[f]=i({},l[f],r)}else{l[f]=r}}return e}},4240:(e,t,r)=>{"use strict";var n=r(977);var i=r(3651);var a=r(8881);var o;function Node(e,t,r){if(typeof t!=="string"){r=t;t=null}i(this,"parent",r);i(this,"isNode",true);i(this,"expect",null);if(typeof t!=="string"&&n(e)){lazyKeys();var a=Object.keys(e);for(var s=0;s<a.length;s++){var c=a[s];if(o.indexOf(c)===-1){this[c]=e[c]}}}else{this.type=t;this.val=e}}Node.isNode=function(e){return a.isNode(e)};Node.prototype.define=function(e,t){i(this,e,t);return this};Node.prototype.isEmpty=function(e){return a.isEmpty(this,e)};Node.prototype.push=function(e){assert(Node.isNode(e),"expected node to be an instance of Node");i(e,"parent",this);this.nodes=this.nodes||[];return this.nodes.push(e)};Node.prototype.unshift=function(e){assert(Node.isNode(e),"expected node to be an instance of Node");i(e,"parent",this);this.nodes=this.nodes||[];return this.nodes.unshift(e)};Node.prototype.pop=function(){return this.nodes&&this.nodes.pop()};Node.prototype.shift=function(){return this.nodes&&this.nodes.shift()};Node.prototype.remove=function(e){assert(Node.isNode(e),"expected node to be an instance of Node");this.nodes=this.nodes||[];var t=e.index;if(t!==-1){e.index=-1;return this.nodes.splice(t,1)}return null};Node.prototype.find=function(e){return a.findNode(this.nodes,e)};Node.prototype.isType=function(e){return a.isType(this,e)};Node.prototype.hasType=function(e){return a.hasType(this,e)};Object.defineProperty(Node.prototype,"siblings",{set:function(){throw new Error("node.siblings is a getter and cannot be defined")},get:function(){return this.parent?this.parent.nodes:null}});Object.defineProperty(Node.prototype,"index",{set:function(e){i(this,"idx",e)},get:function(){if(!Array.isArray(this.siblings)){return-1}var e=this.idx!==-1?this.siblings[this.idx]:null;if(e!==this){this.idx=this.siblings.indexOf(this)}return this.idx}});Object.defineProperty(Node.prototype,"prev",{set:function(){throw new Error("node.prev is a getter and cannot be defined")},get:function(){if(Array.isArray(this.siblings)){return this.siblings[this.index-1]||this.parent.prev}return null}});Object.defineProperty(Node.prototype,"next",{set:function(){throw new Error("node.next is a getter and cannot be defined")},get:function(){if(Array.isArray(this.siblings)){return this.siblings[this.index+1]||this.parent.next}return null}});Object.defineProperty(Node.prototype,"first",{get:function(){return this.nodes?this.nodes[0]:null}});Object.defineProperty(Node.prototype,"last",{get:function(){return this.nodes?a.last(this.nodes):null}});Object.defineProperty(Node.prototype,"scope",{get:function(){if(this.isScope!==true){return this.parent?this.parent.scope:this}return this}});function lazyKeys(){if(!o){o=Object.getOwnPropertyNames(Node.prototype)}}function assert(e,t){if(!e)throw new Error(t)}t=e.exports=Node},3651:(e,t,r)=>{"use strict";var n=r(8586);e.exports=function defineProperty(e,t,r){if(typeof e!=="object"&&typeof e!=="function"){throw new TypeError("expected an object or function.")}if(typeof t!=="string"){throw new TypeError("expected `prop` to be a string.")}if(n(r)&&("set"in r||"get"in r)){return Object.defineProperty(e,t,r)}return Object.defineProperty(e,t,{configurable:true,enumerable:false,writable:true,value:r})}},8881:(e,t,r)=>{"use strict";var n=r(2046);var i=e.exports;i.isNode=function(e){return n(e)==="object"&&e.isNode===true};i.noop=function(e){append(this,"",e)};i.identity=function(e){append(this,e.val,e)};i.append=function(e){return function(t){append(this,e,t)}};i.toNoop=function(e,t){if(t){e.nodes=t}else{delete e.nodes;e.type="text";e.val=""}};i.visit=function(e,t){assert(i.isNode(e),"expected node to be an instance of Node");assert(isFunction(t),"expected a visitor function");t(e);return e.nodes?i.mapVisit(e,t):e};i.mapVisit=function(e,t){assert(i.isNode(e),"expected node to be an instance of Node");assert(isArray(e.nodes),"expected node.nodes to be an array");assert(isFunction(t),"expected a visitor function");for(var r=0;r<e.nodes.length;r++){i.visit(e.nodes[r],t)}return e};i.addOpen=function(e,t,r,n){assert(i.isNode(e),"expected node to be an instance of Node");assert(isFunction(t),"expected Node to be a constructor function");if(typeof r==="function"){n=r;r=""}if(typeof n==="function"&&!n(e))return;var a=new t({type:e.type+".open",val:r});var o=e.unshift||e.unshiftNode;if(typeof o==="function"){o.call(e,a)}else{i.unshiftNode(e,a)}return a};i.addClose=function(e,t,r,n){assert(i.isNode(e),"expected node to be an instance of Node");assert(isFunction(t),"expected Node to be a constructor function");if(typeof r==="function"){n=r;r=""}if(typeof n==="function"&&!n(e))return;var a=new t({type:e.type+".close",val:r});var o=e.push||e.pushNode;if(typeof o==="function"){o.call(e,a)}else{i.pushNode(e,a)}return a};i.wrapNodes=function(e,t,r){assert(i.isNode(e),"expected node to be an instance of Node");assert(isFunction(t),"expected Node to be a constructor function");i.addOpen(e,t,r);i.addClose(e,t,r);return e};i.pushNode=function(e,t){assert(i.isNode(e),"expected parent node to be an instance of Node");assert(i.isNode(t),"expected node to be an instance of Node");t.define("parent",e);e.nodes=e.nodes||[];e.nodes.push(t);return t};i.unshiftNode=function(e,t){assert(i.isNode(e),"expected parent node to be an instance of Node");assert(i.isNode(t),"expected node to be an instance of Node");t.define("parent",e);e.nodes=e.nodes||[];e.nodes.unshift(t)};i.popNode=function(e){assert(i.isNode(e),"expected node to be an instance of Node");if(typeof e.pop==="function"){return e.pop()}return e.nodes&&e.nodes.pop()};i.shiftNode=function(e){assert(i.isNode(e),"expected node to be an instance of Node");if(typeof e.shift==="function"){return e.shift()}return e.nodes&&e.nodes.shift()};i.removeNode=function(e,t){assert(i.isNode(e),"expected parent.node to be an instance of Node");assert(i.isNode(t),"expected node to be an instance of Node");if(!e.nodes){return null}if(typeof e.remove==="function"){return e.remove(t)}var r=e.nodes.indexOf(t);if(r!==-1){return e.nodes.splice(r,1)}};i.isType=function(e,t){assert(i.isNode(e),"expected node to be an instance of Node");switch(n(t)){case"array":var r=t.slice();for(var a=0;a<r.length;a++){if(i.isType(e,r[a])){return true}}return false;case"string":return e.type===t;case"regexp":return t.test(e.type);default:{throw new TypeError('expected "type" to be an array, string or regexp')}}};i.hasType=function(e,t){assert(i.isNode(e),"expected node to be an instance of Node");if(!Array.isArray(e.nodes))return false;for(var r=0;r<e.nodes.length;r++){if(i.isType(e.nodes[r],t)){return true}}return false};i.firstOfType=function(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(i.isType(n,t)){return n}}};i.findNode=function(e,t){if(!Array.isArray(e)){return null}if(typeof t==="number"){return e[t]}return i.firstOfType(e,t)};i.isOpen=function(e){assert(i.isNode(e),"expected node to be an instance of Node");return e.type.slice(-5)===".open"};i.isClose=function(e){assert(i.isNode(e),"expected node to be an instance of Node");return e.type.slice(-6)===".close"};i.hasOpen=function(e){assert(i.isNode(e),"expected node to be an instance of Node");var t=e.first||e.nodes?e.nodes[0]:null;if(i.isNode(t)){return t.type===e.type+".open"}return false};i.hasClose=function(e){assert(i.isNode(e),"expected node to be an instance of Node");var t=e.last||e.nodes?e.nodes[e.nodes.length-1]:null;if(i.isNode(t)){return t.type===e.type+".close"}return false};i.hasOpenAndClose=function(e){return i.hasOpen(e)&&i.hasClose(e)};i.addType=function(e,t){assert(i.isNode(t),"expected node to be an instance of Node");assert(isObject(e),"expected state to be an object");var r=t.parent?t.parent.type:t.type.replace(/\.open$/,"");if(!e.hasOwnProperty("inside")){e.inside={}}if(!e.inside.hasOwnProperty(r)){e.inside[r]=[]}var n=e.inside[r];n.push(t);return n};i.removeType=function(e,t){assert(i.isNode(t),"expected node to be an instance of Node");assert(isObject(e),"expected state to be an object");var r=t.parent?t.parent.type:t.type.replace(/\.close$/,"");if(e.inside.hasOwnProperty(r)){return e.inside[r].pop()}};i.isEmpty=function(e,t){assert(i.isNode(e),"expected node to be an instance of Node");if(!Array.isArray(e.nodes)){if(e.type!=="text"){return true}if(typeof t==="function"){return t(e,e.parent)}return!i.trim(e.val)}for(var r=0;r<e.nodes.length;r++){var n=e.nodes[r];if(i.isOpen(n)||i.isClose(n)){continue}if(!i.isEmpty(n,t)){return false}}return true};i.isInsideType=function(e,t){assert(isObject(e),"expected state to be an object");assert(isString(t),"expected type to be a string");if(!e.hasOwnProperty("inside")){return false}if(!e.inside.hasOwnProperty(t)){return false}return e.inside[t].length>0};i.isInside=function(e,t,r){assert(i.isNode(t),"expected node to be an instance of Node");assert(isObject(e),"expected state to be an object");if(Array.isArray(r)){for(var a=0;a<r.length;a++){if(i.isInside(e,t,r[a])){return true}}return false}var o=t.parent;if(typeof r==="string"){return o&&o.type===r||i.isInsideType(e,r)}if(n(r)==="regexp"){if(o&&o.type&&r.test(o.type)){return true}var s=Object.keys(e.inside);var c=s.length;var u=-1;while(++u<c){var l=s[u];var f=e.inside[l];if(Array.isArray(f)&&f.length!==0&&r.test(l)){return true}}}return false};i.last=function(e,t){return e[e.length-(t||1)]};i.arrayify=function(e){if(typeof e==="string"&&e!==""){return[e]}if(!Array.isArray(e)){return[]}return e};i.stringify=function(e){return i.arrayify(e).join(",")};i.trim=function(e){return typeof e==="string"?e.trim():""};function isObject(e){return n(e)==="object"}function isString(e){return typeof e==="string"}function isFunction(e){return typeof e==="function"}function isArray(e){return Array.isArray(e)}function append(e,t,r){if(typeof e.append!=="function"){return e.emit(t,r)}return e.append(t,r)}function assert(e,t){if(!e)throw new Error(t)}},9769:(e,t,r)=>{"use strict";var n=r(7322);var i=r(4728);var a=r(2635);var o=r(9142);var s=r(4414);var c={};var u={};function Snapdragon(e){n.call(this,null,e);this.options=s.extend({source:"string"},this.options);this.compiler=new a(this.options);this.parser=new o(this.options);Object.defineProperty(this,"compilers",{get:function(){return this.compiler.compilers}});Object.defineProperty(this,"parsers",{get:function(){return this.parser.parsers}});Object.defineProperty(this,"regex",{get:function(){return this.parser.regex}})}n.extend(Snapdragon);Snapdragon.prototype.capture=function(){return this.parser.capture.apply(this.parser,arguments)};Snapdragon.prototype.use=function(e){e.call(this,this);return this};Snapdragon.prototype.parse=function(e,t){this.options=s.extend({},this.options,t);var r=this.parser.parse(e,this.options);i(r,"parser",this.parser);return r};Snapdragon.prototype.compile=function(e,t){this.options=s.extend({},this.options,t);var r=this.compiler.compile(e,this.options);i(r,"compiler",this.compiler);return r};e.exports=Snapdragon;e.exports.Compiler=a;e.exports.Parser=o},2635:(e,t,r)=>{"use strict";var n=r(1967);var i=r(4728);var a=r(7439)("snapdragon:compiler");var o=r(4414);function Compiler(e,t){a("initializing",__filename);this.options=o.extend({source:"string"},e);this.state=t||{};this.compilers={};this.output="";this.set("eos",function(e){return this.emit(e.val,e)});this.set("noop",function(e){return this.emit(e.val,e)});this.set("bos",function(e){return this.emit(e.val,e)});n(this)}Compiler.prototype={error:function(e,t){var r=t.position||{start:{column:0}};var n=this.options.source+" column:"+r.start.column+": "+e;var i=new Error(n);i.reason=e;i.column=r.start.column;i.source=this.pattern;if(this.options.silent){this.errors.push(i)}else{throw i}},define:function(e,t){i(this,e,t);return this},emit:function(e,t){this.output+=e;return e},set:function(e,t){this.compilers[e]=t;return this},get:function(e){return this.compilers[e]},prev:function(e){return this.ast.nodes[this.idx-(e||1)]||{type:"bos",val:""}},next:function(e){return this.ast.nodes[this.idx+(e||1)]||{type:"eos",val:""}},visit:function(e,t,r){var n=this.compilers[e.type];this.idx=r;if(typeof n!=="function"){throw this.error('compiler "'+e.type+'" is not registered',e)}return n.call(this,e,t,r)},mapVisit:function(e){if(!Array.isArray(e)){throw new TypeError("expected an array")}var t=e.length;var r=-1;while(++r<t){this.visit(e[r],e,r)}return this},compile:function(e,t){var n=o.extend({},this.options,t);this.ast=e;this.parsingErrors=this.ast.errors;this.output="";if(n.sourcemap){var i=r(456);i(this);this.mapVisit(this.ast.nodes);this.applySourceMaps();this.map=n.sourcemap==="generator"?this.map:this.map.toJSON();return this}this.mapVisit(this.ast.nodes);return this}};e.exports=Compiler},9142:(e,t,r)=>{"use strict";var n=r(1967);var i=r(1669);var a=r(1637);var o=r(4728);var s=r(7439)("snapdragon:parser");var c=r(4303);var u=r(4414);function Parser(e){s("initializing",__filename);this.options=u.extend({source:"string"},e);this.init(this.options);n(this)}Parser.prototype={constructor:Parser,init:function(e){this.orig="";this.input="";this.parsed="";this.column=1;this.line=1;this.regex=new a;this.errors=this.errors||[];this.parsers=this.parsers||{};this.types=this.types||[];this.sets=this.sets||{};this.fns=this.fns||[];this.currentType="root";var t=this.position();this.bos=t({type:"bos",val:""});this.ast={type:"root",errors:this.errors,nodes:[this.bos]};o(this.bos,"parent",this.ast);this.nodes=[this.ast];this.count=0;this.setCount=0;this.stack=[]},error:function(e,t){var r=t.position||{start:{column:0,line:0}};var n=r.start.line;var i=r.start.column;var a=this.options.source;var o=a+" <line:"+n+" column:"+i+">: "+e;var s=new Error(o);s.source=a;s.reason=e;s.pos=r;if(this.options.silent){this.errors.push(s)}else{throw s}},define:function(e,t){o(this,e,t);return this},position:function(){var e={line:this.line,column:this.column};var t=this;return function(r){o(r,"position",new c(e,t));return r}},set:function(e,t){if(this.types.indexOf(e)===-1){this.types.push(e)}this.parsers[e]=t.bind(this);return this},get:function(e){return this.parsers[e]},push:function(e,t){this.sets[e]=this.sets[e]||[];this.count++;this.stack.push(t);return this.sets[e].push(t)},pop:function(e){this.sets[e]=this.sets[e]||[];this.count--;this.stack.pop();return this.sets[e].pop()},isInside:function(e){this.sets[e]=this.sets[e]||[];return this.sets[e].length>0},isType:function(e,t){return e&&e.type===t},prev:function(e){return this.stack.length>0?u.last(this.stack,e):u.last(this.nodes,e)},consume:function(e){this.input=this.input.substr(e)},updatePosition:function(e,t){var r=e.match(/\n/g);if(r)this.line+=r.length;var n=e.lastIndexOf("\n");this.column=~n?t-n:this.column+t;this.parsed+=e;this.consume(t)},match:function(e){var t=e.exec(this.input);if(t){this.updatePosition(t[0],t[0].length);return t}},capture:function(e,t){if(typeof t==="function"){return this.set.apply(this,arguments)}this.regex.set(e,t);this.set(e,function(){var r=this.parsed;var n=this.position();var i=this.match(t);if(!i||!i[0])return;var a=this.prev();var s=n({type:e,val:i[0],parsed:r,rest:this.input});if(i[1]){s.inner=i[1]}o(s,"inside",this.stack.length>0);o(s,"parent",a);a.nodes.push(s)}.bind(this));return this},capturePair:function(e,t,r,n){this.sets[e]=this.sets[e]||[];this.set(e+".open",function(){var r=this.parsed;var i=this.position();var a=this.match(t);if(!a||!a[0])return;var s=a[0];this.setCount++;this.specialChars=true;var c=i({type:e+".open",val:s,rest:this.input});if(typeof a[1]!=="undefined"){c.inner=a[1]}var u=this.prev();var l=i({type:e,nodes:[c]});o(l,"rest",this.input);o(l,"parsed",r);o(l,"prefix",a[1]);o(l,"parent",u);o(c,"parent",l);if(typeof n==="function"){n.call(this,c,l)}this.push(e,l);u.nodes.push(l)});this.set(e+".close",function(){var t=this.position();var n=this.match(r);if(!n||!n[0])return;var i=this.pop(e);var a=t({type:e+".close",rest:this.input,suffix:n[1],val:n[0]});if(!this.isType(i,e)){if(this.options.strict){throw new Error('missing opening "'+e+'"')}this.setCount--;a.escaped=true;return a}if(a.suffix==="\\"){i.escaped=true;a.escaped=true}i.nodes.push(a);o(a,"parent",i)});return this},eos:function(){var e=this.position();if(this.input)return;var t=this.prev();while(t.type!=="root"&&!t.visited){if(this.options.strict===true){throw new SyntaxError("invalid syntax:"+i.inspect(t,null,2))}if(!hasDelims(t)){t.parent.escaped=true;t.escaped=true}visit(t,function(e){if(!hasDelims(e.parent)){e.parent.escaped=true;e.escaped=true}});t=t.parent}var r=e({type:"eos",val:this.append||""});o(r,"parent",this.ast);return r},next:function(){var e=this.parsed;var t=this.types.length;var r=-1;var n;while(++r<t){if(n=this.parsers[this.types[r]].call(this)){o(n,"rest",this.input);o(n,"parsed",e);this.last=n;return n}}},parse:function(e){if(typeof e!=="string"){throw new TypeError("expected a string")}this.init(this.options);this.orig=e;this.input=e;var t=this;function parse(){e=t.input;var r=t.next();if(r){var n=t.prev();if(n){o(r,"parent",n);if(n.nodes){n.nodes.push(r)}}if(t.sets.hasOwnProperty(n.type)){t.currentType=n.type}}if(t.input&&e===t.input){throw new Error('no parsers registered for: "'+t.input.slice(0,5)+'"')}}while(this.input)parse();if(this.stack.length&&this.options.strict){var r=this.stack.pop();throw this.error("missing opening "+r.type+': "'+this.orig+'"')}var n=this.eos();var i=this.prev();if(i.type!=="eos"){this.ast.nodes.push(n)}return this.ast}};function visit(e,t){if(!e.visited){o(e,"visited",true);return e.nodes?mapVisit(e.nodes,t):t(e)}return e}function mapVisit(e,t){var r=e.length;var n=-1;while(++n<r){visit(e[n],t)}}function hasOpen(e){return e.nodes&&e.nodes[0].type===e.type+".open"}function hasClose(e){return e.nodes&&u.last(e.nodes).type===e.type+".close"}function hasDelims(e){return hasOpen(e)&&hasClose(e)}e.exports=Parser},4303:(e,t,r)=>{"use strict";var n=r(4728);e.exports=function Position(e,t){this.start=e;this.end={line:t.line,column:t.column};n(this,"content",t.orig);n(this,"source",t.options.source)}},456:(e,t,r)=>{"use strict";var n=r(5747);var i=r(5622);var a=r(4728);var o=r(4414);e.exports=mixin;function mixin(e){a(e,"_comment",e.comment);e.map=new o.SourceMap.SourceMapGenerator;e.position={line:1,column:1};e.content={};e.files={};for(var r in t){a(e,r,t[r])}}t.updatePosition=function(e){var t=e.match(/\n/g);if(t)this.position.line+=t.length;var r=e.lastIndexOf("\n");this.position.column=~r?e.length-r:this.position.column+e.length};t.emit=function(e,t){var r=t.position||{};var n=r.source;if(n){if(r.filepath){n=o.unixify(r.filepath)}this.map.addMapping({source:n,generated:{line:this.position.line,column:Math.max(this.position.column-1,0)},original:{line:r.start.line,column:r.start.column-1}});if(r.content){this.addContent(n,r)}if(r.filepath){this.addFile(n,r)}this.updatePosition(e);this.output+=e}return e};t.addFile=function(e,t){if(typeof t.content!=="string")return;if(Object.prototype.hasOwnProperty.call(this.files,e))return;this.files[e]=t.content};t.addContent=function(e,t){if(typeof t.content!=="string")return;if(Object.prototype.hasOwnProperty.call(this.content,e))return;this.map.setSourceContent(e,t.content)};t.applySourceMaps=function(){Object.keys(this.files).forEach(function(e){var t=this.files[e];this.map.setSourceContent(e,t);if(this.options.inputSourcemaps===true){var r=o.sourceMapResolve.resolveSync(t,e,n.readFileSync);if(r){var a=new o.SourceMap.SourceMapConsumer(r.map);var s=r.sourcesRelativeTo;this.map.applySourceMap(a,e,o.unixify(i.dirname(s)))}}},this)};t.comment=function(e){if(/^# sourceMappingURL=/.test(e.comment)){return this.emit("",e.position)}return this._comment(e)}},4414:(e,t,r)=>{"use strict";t.extend=r(8333);t.SourceMap=r(6160);t.sourceMapResolve=r(6769);t.unixify=function(e){return e.split(/\\+/).join("/")};t.isString=function(e){return e&&typeof e==="string"};t.arrayify=function(e){if(typeof e==="string")return[e];return e?Array.isArray(e)?e:[e]:[]};t.last=function(e,t){return e[e.length-(t||1)]}},1911:(e,t,r)=>{t=e.exports=r(6202);t.log=log;t.formatArgs=formatArgs;t.save=save;t.load=load;t.useColors=useColors;t.storage="undefined"!=typeof chrome&&"undefined"!=typeof chrome.storage?chrome.storage.local:localstorage();t.colors=["lightseagreen","forestgreen","goldenrod","dodgerblue","darkorchid","crimson"];function useColors(){if(typeof window!=="undefined"&&window.process&&window.process.type==="renderer"){return true}return typeof document!=="undefined"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window!=="undefined"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}t.formatters.j=function(e){try{return JSON.stringify(e)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}};function formatArgs(e){var r=this.useColors;e[0]=(r?"%c":"")+this.namespace+(r?" %c":" ")+e[0]+(r?"%c ":" ")+"+"+t.humanize(this.diff);if(!r)return;var n="color: "+this.color;e.splice(1,0,n,"color: inherit");var i=0;var a=0;e[0].replace(/%[a-zA-Z%]/g,function(e){if("%%"===e)return;i++;if("%c"===e){a=i}});e.splice(a,0,n)}function log(){return"object"===typeof console&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function save(e){try{if(null==e){t.storage.removeItem("debug")}else{t.storage.debug=e}}catch(e){}}function load(){var e;try{e=t.storage.debug}catch(e){}if(!e&&typeof process!=="undefined"&&"env"in process){e=process.env.DEBUG}return e}t.enable(load());function localstorage(){try{return window.localStorage}catch(e){}}},6202:(e,t,r)=>{t=e.exports=createDebug.debug=createDebug["default"]=createDebug;t.coerce=coerce;t.disable=disable;t.enable=enable;t.enabled=enabled;t.humanize=r(319);t.names=[];t.skips=[];t.formatters={};var n;function selectColor(e){var r=0,n;for(n in e){r=(r<<5)-r+e.charCodeAt(n);r|=0}return t.colors[Math.abs(r)%t.colors.length]}function createDebug(e){function debug(){if(!debug.enabled)return;var e=debug;var r=+new Date;var i=r-(n||r);e.diff=i;e.prev=n;e.curr=r;n=r;var a=new Array(arguments.length);for(var o=0;o<a.length;o++){a[o]=arguments[o]}a[0]=t.coerce(a[0]);if("string"!==typeof a[0]){a.unshift("%O")}var s=0;a[0]=a[0].replace(/%([a-zA-Z%])/g,function(r,n){if(r==="%%")return r;s++;var i=t.formatters[n];if("function"===typeof i){var o=a[s];r=i.call(e,o);a.splice(s,1);s--}return r});t.formatArgs.call(e,a);var c=debug.log||t.log||console.log.bind(console);c.apply(e,a)}debug.namespace=e;debug.enabled=t.enabled(e);debug.useColors=t.useColors();debug.color=selectColor(e);if("function"===typeof t.init){t.init(debug)}return debug}function enable(e){t.save(e);t.names=[];t.skips=[];var r=(typeof e==="string"?e:"").split(/[\s,]+/);var n=r.length;for(var i=0;i<n;i++){if(!r[i])continue;e=r[i].replace(/\*/g,".*?");if(e[0]==="-"){t.skips.push(new RegExp("^"+e.substr(1)+"$"))}else{t.names.push(new RegExp("^"+e+"$"))}}}function disable(){t.enable("")}function enabled(e){var r,n;for(r=0,n=t.skips.length;r<n;r++){if(t.skips[r].test(e)){return false}}for(r=0,n=t.names.length;r<n;r++){if(t.names[r].test(e)){return true}}return false}function coerce(e){if(e instanceof Error)return e.stack||e.message;return e}},7439:(e,t,r)=>{if(typeof process!=="undefined"&&process.type==="renderer"){e.exports=r(1911)}else{e.exports=r(2238)}},2238:(e,t,r)=>{var n=r(8993);var i=r(1669);t=e.exports=r(6202);t.init=init;t.log=log;t.formatArgs=formatArgs;t.save=save;t.load=load;t.useColors=useColors;t.colors=[6,2,3,4,5,1];t.inspectOpts=Object.keys(process.env).filter(function(e){return/^debug_/i.test(e)}).reduce(function(e,t){var r=t.substring(6).toLowerCase().replace(/_([a-z])/g,function(e,t){return t.toUpperCase()});var n=process.env[t];if(/^(yes|on|true|enabled)$/i.test(n))n=true;else if(/^(no|off|false|disabled)$/i.test(n))n=false;else if(n==="null")n=null;else n=Number(n);e[r]=n;return e},{});var a=parseInt(process.env.DEBUG_FD,10)||2;if(1!==a&&2!==a){i.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")()}var o=1===a?process.stdout:2===a?process.stderr:createWritableStdioStream(a);function useColors(){return"colors"in t.inspectOpts?Boolean(t.inspectOpts.colors):n.isatty(a)}t.formatters.o=function(e){this.inspectOpts.colors=this.useColors;return i.inspect(e,this.inspectOpts).split("\n").map(function(e){return e.trim()}).join(" ")};t.formatters.O=function(e){this.inspectOpts.colors=this.useColors;return i.inspect(e,this.inspectOpts)};function formatArgs(e){var r=this.namespace;var n=this.useColors;if(n){var i=this.color;var a=" [3"+i+";1m"+r+" "+"";e[0]=a+e[0].split("\n").join("\n"+a);e.push("[3"+i+"m+"+t.humanize(this.diff)+"")}else{e[0]=(new Date).toUTCString()+" "+r+" "+e[0]}}function log(){return o.write(i.format.apply(i,arguments)+"\n")}function save(e){if(null==e){delete process.env.DEBUG}else{process.env.DEBUG=e}}function load(){return process.env.DEBUG}function createWritableStdioStream(e){var t;var i=process.binding("tty_wrap");switch(i.guessHandleType(e)){case"TTY":t=new n.WriteStream(e);t._type="tty";if(t._handle&&t._handle.unref){t._handle.unref()}break;case"FILE":var a=r(5747);t=new a.SyncWriteStream(e,{autoClose:false});t._type="fs";break;case"PIPE":case"TCP":var o=r(1631);t=new o.Socket({fd:e,readable:false,writable:true});t.readable=false;t.read=null;t._type="pipe";if(t._handle&&t._handle.unref){t._handle.unref()}break;default:throw new Error("Implement me. Unknown stream file type!")}t.fd=e;t._isStdio=true;return t}function init(e){e.inspectOpts={};var r=Object.keys(t.inspectOpts);for(var n=0;n<r.length;n++){e.inspectOpts[r[n]]=t.inspectOpts[r[n]]}}t.enable(load())},319:e=>{var t=1e3;var r=t*60;var n=r*60;var i=n*24;var a=i*365.25;e.exports=function(e,t){t=t||{};var r=typeof e;if(r==="string"&&e.length>0){return parse(e)}else if(r==="number"&&isNaN(e)===false){return t.long?fmtLong(e):fmtShort(e)}throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(e))};function parse(e){e=String(e);if(e.length>100){return}var o=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(e);if(!o){return}var s=parseFloat(o[1]);var c=(o[2]||"ms").toLowerCase();switch(c){case"years":case"year":case"yrs":case"yr":case"y":return s*a;case"days":case"day":case"d":return s*i;case"hours":case"hour":case"hrs":case"hr":case"h":return s*n;case"minutes":case"minute":case"mins":case"min":case"m":return s*r;case"seconds":case"second":case"secs":case"sec":case"s":return s*t;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return s;default:return undefined}}function fmtShort(e){if(e>=i){return Math.round(e/i)+"d"}if(e>=n){return Math.round(e/n)+"h"}if(e>=r){return Math.round(e/r)+"m"}if(e>=t){return Math.round(e/t)+"s"}return e+"ms"}function fmtLong(e){return plural(e,i,"day")||plural(e,n,"hour")||plural(e,r,"minute")||plural(e,t,"second")||e+" ms"}function plural(e,t,r){if(e<t){return}if(e<t*1.5){return Math.floor(e/t)+" "+r}return Math.ceil(e/t)+" "+r+"s"}},4246:(e,t,r)=>{var n=r(1873);var i=Object.prototype.hasOwnProperty;var a=typeof Map!=="undefined";function ArraySet(){this._array=[];this._set=a?new Map:Object.create(null)}ArraySet.fromArray=function ArraySet_fromArray(e,t){var r=new ArraySet;for(var n=0,i=e.length;n<i;n++){r.add(e[n],t)}return r};ArraySet.prototype.size=function ArraySet_size(){return a?this._set.size:Object.getOwnPropertyNames(this._set).length};ArraySet.prototype.add=function ArraySet_add(e,t){var r=a?e:n.toSetString(e);var o=a?this.has(e):i.call(this._set,r);var s=this._array.length;if(!o||t){this._array.push(e)}if(!o){if(a){this._set.set(e,s)}else{this._set[r]=s}}};ArraySet.prototype.has=function ArraySet_has(e){if(a){return this._set.has(e)}else{var t=n.toSetString(e);return i.call(this._set,t)}};ArraySet.prototype.indexOf=function ArraySet_indexOf(e){if(a){var t=this._set.get(e);if(t>=0){return t}}else{var r=n.toSetString(e);if(i.call(this._set,r)){return this._set[r]}}throw new Error('"'+e+'" is not in the set.')};ArraySet.prototype.at=function ArraySet_at(e){if(e>=0&&e<this._array.length){return this._array[e]}throw new Error("No element indexed by "+e)};ArraySet.prototype.toArray=function ArraySet_toArray(){return this._array.slice()};t.I=ArraySet},4310:(e,t,r)=>{var n=r(8541);var i=5;var a=1<<i;var o=a-1;var s=a;function toVLQSigned(e){return e<0?(-e<<1)+1:(e<<1)+0}function fromVLQSigned(e){var t=(e&1)===1;var r=e>>1;return t?-r:r}t.encode=function base64VLQ_encode(e){var t="";var r;var a=toVLQSigned(e);do{r=a&o;a>>>=i;if(a>0){r|=s}t+=n.encode(r)}while(a>0);return t};t.decode=function base64VLQ_decode(e,t,r){var a=e.length;var c=0;var u=0;var l,f;do{if(t>=a){throw new Error("Expected more digits in base 64 VLQ value.")}f=n.decode(e.charCodeAt(t++));if(f===-1){throw new Error("Invalid base64 digit: "+e.charAt(t-1))}l=!!(f&s);f&=o;c=c+(f<<u);u+=i}while(l);r.value=fromVLQSigned(c);r.rest=t}},8541:(e,t)=>{var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length){return r[e]}throw new TypeError("Must be between 0 and 63: "+e)};t.decode=function(e){var t=65;var r=90;var n=97;var i=122;var a=48;var o=57;var s=43;var c=47;var u=26;var l=52;if(t<=e&&e<=r){return e-t}if(n<=e&&e<=i){return e-n+u}if(a<=e&&e<=o){return e-a+l}if(e==s){return 62}if(e==c){return 63}return-1}},2913:(e,t)=>{t.GREATEST_LOWER_BOUND=1;t.LEAST_UPPER_BOUND=2;function recursiveSearch(e,r,n,i,a,o){var s=Math.floor((r-e)/2)+e;var c=a(n,i[s],true);if(c===0){return s}else if(c>0){if(r-s>1){return recursiveSearch(s,r,n,i,a,o)}if(o==t.LEAST_UPPER_BOUND){return r<i.length?r:-1}else{return s}}else{if(s-e>1){return recursiveSearch(e,s,n,i,a,o)}if(o==t.LEAST_UPPER_BOUND){return s}else{return e<0?-1:e}}}t.search=function search(e,r,n,i){if(r.length===0){return-1}var a=recursiveSearch(-1,r.length,e,r,n,i||t.GREATEST_LOWER_BOUND);if(a<0){return-1}while(a-1>=0){if(n(r[a],r[a-1],true)!==0){break}--a}return a}},3040:(e,t,r)=>{var n=r(1873);function generatedPositionAfter(e,t){var r=e.generatedLine;var i=t.generatedLine;var a=e.generatedColumn;var o=t.generatedColumn;return i>r||i==r&&o>=a||n.compareByGeneratedPositionsInflated(e,t)<=0}function MappingList(){this._array=[];this._sorted=true;this._last={generatedLine:-1,generatedColumn:0}}MappingList.prototype.unsortedForEach=function MappingList_forEach(e,t){this._array.forEach(e,t)};MappingList.prototype.add=function MappingList_add(e){if(generatedPositionAfter(this._last,e)){this._last=e;this._array.push(e)}else{this._sorted=false;this._array.push(e)}};MappingList.prototype.toArray=function MappingList_toArray(){if(!this._sorted){this._array.sort(n.compareByGeneratedPositionsInflated);this._sorted=true}return this._array};t.H=MappingList},3474:(e,t)=>{function swap(e,t,r){var n=e[t];e[t]=e[r];e[r]=n}function randomIntInRange(e,t){return Math.round(e+Math.random()*(t-e))}function doQuickSort(e,t,r,n){if(r<n){var i=randomIntInRange(r,n);var a=r-1;swap(e,i,n);var o=e[n];for(var s=r;s<n;s++){if(t(e[s],o)<=0){a+=1;swap(e,a,s)}}swap(e,a+1,s);var c=a+1;doQuickSort(e,t,r,c-1);doQuickSort(e,t,c+1,n)}}t.U=function(e,t){doQuickSort(e,t,0,e.length-1)}},6898:(e,t,r)=>{var n;var i=r(1873);var a=r(2913);var o=r(4246).I;var s=r(4310);var c=r(3474).U;function SourceMapConsumer(e){var t=e;if(typeof e==="string"){t=JSON.parse(e.replace(/^\)\]\}'/,""))}return t.sections!=null?new IndexedSourceMapConsumer(t):new BasicSourceMapConsumer(t)}SourceMapConsumer.fromSourceMap=function(e){return BasicSourceMapConsumer.fromSourceMap(e)};SourceMapConsumer.prototype._version=3;SourceMapConsumer.prototype.__generatedMappings=null;Object.defineProperty(SourceMapConsumer.prototype,"_generatedMappings",{get:function(){if(!this.__generatedMappings){this._parseMappings(this._mappings,this.sourceRoot)}return this.__generatedMappings}});SourceMapConsumer.prototype.__originalMappings=null;Object.defineProperty(SourceMapConsumer.prototype,"_originalMappings",{get:function(){if(!this.__originalMappings){this._parseMappings(this._mappings,this.sourceRoot)}return this.__originalMappings}});SourceMapConsumer.prototype._charIsMappingSeparator=function SourceMapConsumer_charIsMappingSeparator(e,t){var r=e.charAt(t);return r===";"||r===","};SourceMapConsumer.prototype._parseMappings=function SourceMapConsumer_parseMappings(e,t){throw new Error("Subclasses must implement _parseMappings")};SourceMapConsumer.GENERATED_ORDER=1;SourceMapConsumer.ORIGINAL_ORDER=2;SourceMapConsumer.GREATEST_LOWER_BOUND=1;SourceMapConsumer.LEAST_UPPER_BOUND=2;SourceMapConsumer.prototype.eachMapping=function SourceMapConsumer_eachMapping(e,t,r){var n=t||null;var a=r||SourceMapConsumer.GENERATED_ORDER;var o;switch(a){case SourceMapConsumer.GENERATED_ORDER:o=this._generatedMappings;break;case SourceMapConsumer.ORIGINAL_ORDER:o=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var s=this.sourceRoot;o.map(function(e){var t=e.source===null?null:this._sources.at(e.source);if(t!=null&&s!=null){t=i.join(s,t)}return{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name===null?null:this._names.at(e.name)}},this).forEach(e,n)};SourceMapConsumer.prototype.allGeneratedPositionsFor=function SourceMapConsumer_allGeneratedPositionsFor(e){var t=i.getArg(e,"line");var r={source:i.getArg(e,"source"),originalLine:t,originalColumn:i.getArg(e,"column",0)};if(this.sourceRoot!=null){r.source=i.relative(this.sourceRoot,r.source)}if(!this._sources.has(r.source)){return[]}r.source=this._sources.indexOf(r.source);var n=[];var o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions,a.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(e.column===undefined){var c=s.originalLine;while(s&&s.originalLine===c){n.push({line:i.getArg(s,"generatedLine",null),column:i.getArg(s,"generatedColumn",null),lastColumn:i.getArg(s,"lastGeneratedColumn",null)});s=this._originalMappings[++o]}}else{var u=s.originalColumn;while(s&&s.originalLine===t&&s.originalColumn==u){n.push({line:i.getArg(s,"generatedLine",null),column:i.getArg(s,"generatedColumn",null),lastColumn:i.getArg(s,"lastGeneratedColumn",null)});s=this._originalMappings[++o]}}}return n};t.SourceMapConsumer=SourceMapConsumer;function BasicSourceMapConsumer(e){var t=e;if(typeof e==="string"){t=JSON.parse(e.replace(/^\)\]\}'/,""))}var r=i.getArg(t,"version");var n=i.getArg(t,"sources");var a=i.getArg(t,"names",[]);var s=i.getArg(t,"sourceRoot",null);var c=i.getArg(t,"sourcesContent",null);var u=i.getArg(t,"mappings");var l=i.getArg(t,"file",null);if(r!=this._version){throw new Error("Unsupported version: "+r)}n=n.map(String).map(i.normalize).map(function(e){return s&&i.isAbsolute(s)&&i.isAbsolute(e)?i.relative(s,e):e});this._names=o.fromArray(a.map(String),true);this._sources=o.fromArray(n,true);this.sourceRoot=s;this.sourcesContent=c;this._mappings=u;this.file=l}BasicSourceMapConsumer.prototype=Object.create(SourceMapConsumer.prototype);BasicSourceMapConsumer.prototype.consumer=SourceMapConsumer;BasicSourceMapConsumer.fromSourceMap=function SourceMapConsumer_fromSourceMap(e){var t=Object.create(BasicSourceMapConsumer.prototype);var r=t._names=o.fromArray(e._names.toArray(),true);var n=t._sources=o.fromArray(e._sources.toArray(),true);t.sourceRoot=e._sourceRoot;t.sourcesContent=e._generateSourcesContent(t._sources.toArray(),t.sourceRoot);t.file=e._file;var a=e._mappings.toArray().slice();var s=t.__generatedMappings=[];var u=t.__originalMappings=[];for(var l=0,f=a.length;l<f;l++){var d=a[l];var p=new Mapping;p.generatedLine=d.generatedLine;p.generatedColumn=d.generatedColumn;if(d.source){p.source=n.indexOf(d.source);p.originalLine=d.originalLine;p.originalColumn=d.originalColumn;if(d.name){p.name=r.indexOf(d.name)}u.push(p)}s.push(p)}c(t.__originalMappings,i.compareByOriginalPositions);return t};BasicSourceMapConsumer.prototype._version=3;Object.defineProperty(BasicSourceMapConsumer.prototype,"sources",{get:function(){return this._sources.toArray().map(function(e){return this.sourceRoot!=null?i.join(this.sourceRoot,e):e},this)}});function Mapping(){this.generatedLine=0;this.generatedColumn=0;this.source=null;this.originalLine=null;this.originalColumn=null;this.name=null}BasicSourceMapConsumer.prototype._parseMappings=function SourceMapConsumer_parseMappings(e,t){var r=1;var n=0;var a=0;var o=0;var u=0;var l=0;var f=e.length;var d=0;var p={};var g={};var _=[];var m=[];var y,h,v,T,S;while(d<f){if(e.charAt(d)===";"){r++;d++;n=0}else if(e.charAt(d)===","){d++}else{y=new Mapping;y.generatedLine=r;for(T=d;T<f;T++){if(this._charIsMappingSeparator(e,T)){break}}h=e.slice(d,T);v=p[h];if(v){d+=h.length}else{v=[];while(d<T){s.decode(e,d,g);S=g.value;d=g.rest;v.push(S)}if(v.length===2){throw new Error("Found a source, but no line and column")}if(v.length===3){throw new Error("Found a source and line, but no column")}p[h]=v}y.generatedColumn=n+v[0];n=y.generatedColumn;if(v.length>1){y.source=u+v[1];u+=v[1];y.originalLine=a+v[2];a=y.originalLine;y.originalLine+=1;y.originalColumn=o+v[3];o=y.originalColumn;if(v.length>4){y.name=l+v[4];l+=v[4]}}m.push(y);if(typeof y.originalLine==="number"){_.push(y)}}}c(m,i.compareByGeneratedPositionsDeflated);this.__generatedMappings=m;c(_,i.compareByOriginalPositions);this.__originalMappings=_};BasicSourceMapConsumer.prototype._findMapping=function SourceMapConsumer_findMapping(e,t,r,n,i,o){if(e[r]<=0){throw new TypeError("Line must be greater than or equal to 1, got "+e[r])}if(e[n]<0){throw new TypeError("Column must be greater than or equal to 0, got "+e[n])}return a.search(e,t,i,o)};BasicSourceMapConsumer.prototype.computeColumnSpans=function SourceMapConsumer_computeColumnSpans(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=Infinity}};BasicSourceMapConsumer.prototype.originalPositionFor=function SourceMapConsumer_originalPositionFor(e){var t={generatedLine:i.getArg(e,"line"),generatedColumn:i.getArg(e,"column")};var r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",i.compareByGeneratedPositionsDeflated,i.getArg(e,"bias",SourceMapConsumer.GREATEST_LOWER_BOUND));if(r>=0){var n=this._generatedMappings[r];if(n.generatedLine===t.generatedLine){var a=i.getArg(n,"source",null);if(a!==null){a=this._sources.at(a);if(this.sourceRoot!=null){a=i.join(this.sourceRoot,a)}}var o=i.getArg(n,"name",null);if(o!==null){o=this._names.at(o)}return{source:a,line:i.getArg(n,"originalLine",null),column:i.getArg(n,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}};BasicSourceMapConsumer.prototype.hasContentsOfAllSources=function BasicSourceMapConsumer_hasContentsOfAllSources(){if(!this.sourcesContent){return false}return this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null})};BasicSourceMapConsumer.prototype.sourceContentFor=function SourceMapConsumer_sourceContentFor(e,t){if(!this.sourcesContent){return null}if(this.sourceRoot!=null){e=i.relative(this.sourceRoot,e)}if(this._sources.has(e)){return this.sourcesContent[this._sources.indexOf(e)]}var r;if(this.sourceRoot!=null&&(r=i.urlParse(this.sourceRoot))){var n=e.replace(/^file:\/\//,"");if(r.scheme=="file"&&this._sources.has(n)){return this.sourcesContent[this._sources.indexOf(n)]}if((!r.path||r.path=="/")&&this._sources.has("/"+e)){return this.sourcesContent[this._sources.indexOf("/"+e)]}}if(t){return null}else{throw new Error('"'+e+'" is not in the SourceMap.')}};BasicSourceMapConsumer.prototype.generatedPositionFor=function SourceMapConsumer_generatedPositionFor(e){var t=i.getArg(e,"source");if(this.sourceRoot!=null){t=i.relative(this.sourceRoot,t)}if(!this._sources.has(t)){return{line:null,column:null,lastColumn:null}}t=this._sources.indexOf(t);var r={source:t,originalLine:i.getArg(e,"line"),originalColumn:i.getArg(e,"column")};var n=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions,i.getArg(e,"bias",SourceMapConsumer.GREATEST_LOWER_BOUND));if(n>=0){var a=this._originalMappings[n];if(a.source===r.source){return{line:i.getArg(a,"generatedLine",null),column:i.getArg(a,"generatedColumn",null),lastColumn:i.getArg(a,"lastGeneratedColumn",null)}}}return{line:null,column:null,lastColumn:null}};n=BasicSourceMapConsumer;function IndexedSourceMapConsumer(e){var t=e;if(typeof e==="string"){t=JSON.parse(e.replace(/^\)\]\}'/,""))}var r=i.getArg(t,"version");var n=i.getArg(t,"sections");if(r!=this._version){throw new Error("Unsupported version: "+r)}this._sources=new o;this._names=new o;var a={line:-1,column:0};this._sections=n.map(function(e){if(e.url){throw new Error("Support for url field in sections not implemented.")}var t=i.getArg(e,"offset");var r=i.getArg(t,"line");var n=i.getArg(t,"column");if(r<a.line||r===a.line&&n<a.column){throw new Error("Section offsets must be ordered and non-overlapping.")}a=t;return{generatedOffset:{generatedLine:r+1,generatedColumn:n+1},consumer:new SourceMapConsumer(i.getArg(e,"map"))}})}IndexedSourceMapConsumer.prototype=Object.create(SourceMapConsumer.prototype);IndexedSourceMapConsumer.prototype.constructor=SourceMapConsumer;IndexedSourceMapConsumer.prototype._version=3;Object.defineProperty(IndexedSourceMapConsumer.prototype,"sources",{get:function(){var e=[];for(var t=0;t<this._sections.length;t++){for(var r=0;r<this._sections[t].consumer.sources.length;r++){e.push(this._sections[t].consumer.sources[r])}}return e}});IndexedSourceMapConsumer.prototype.originalPositionFor=function IndexedSourceMapConsumer_originalPositionFor(e){var t={generatedLine:i.getArg(e,"line"),generatedColumn:i.getArg(e,"column")};var r=a.search(t,this._sections,function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;if(r){return r}return e.generatedColumn-t.generatedOffset.generatedColumn});var n=this._sections[r];if(!n){return{source:null,line:null,column:null,name:null}}return n.consumer.originalPositionFor({line:t.generatedLine-(n.generatedOffset.generatedLine-1),column:t.generatedColumn-(n.generatedOffset.generatedLine===t.generatedLine?n.generatedOffset.generatedColumn-1:0),bias:e.bias})};IndexedSourceMapConsumer.prototype.hasContentsOfAllSources=function IndexedSourceMapConsumer_hasContentsOfAllSources(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})};IndexedSourceMapConsumer.prototype.sourceContentFor=function IndexedSourceMapConsumer_sourceContentFor(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];var i=n.consumer.sourceContentFor(e,true);if(i){return i}}if(t){return null}else{throw new Error('"'+e+'" is not in the SourceMap.')}};IndexedSourceMapConsumer.prototype.generatedPositionFor=function IndexedSourceMapConsumer_generatedPositionFor(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(r.consumer.sources.indexOf(i.getArg(e,"source"))===-1){continue}var n=r.consumer.generatedPositionFor(e);if(n){var a={line:n.line+(r.generatedOffset.generatedLine-1),column:n.column+(r.generatedOffset.generatedLine===n.line?r.generatedOffset.generatedColumn-1:0)};return a}}return{line:null,column:null}};IndexedSourceMapConsumer.prototype._parseMappings=function IndexedSourceMapConsumer_parseMappings(e,t){this.__generatedMappings=[];this.__originalMappings=[];for(var r=0;r<this._sections.length;r++){var n=this._sections[r];var a=n.consumer._generatedMappings;for(var o=0;o<a.length;o++){var s=a[o];var u=n.consumer._sources.at(s.source);if(n.consumer.sourceRoot!==null){u=i.join(n.consumer.sourceRoot,u)}this._sources.add(u);u=this._sources.indexOf(u);var l=n.consumer._names.at(s.name);this._names.add(l);l=this._names.indexOf(l);var f={source:u,generatedLine:s.generatedLine+(n.generatedOffset.generatedLine-1),generatedColumn:s.generatedColumn+(n.generatedOffset.generatedLine===s.generatedLine?n.generatedOffset.generatedColumn-1:0),originalLine:s.originalLine,originalColumn:s.originalColumn,name:l};this.__generatedMappings.push(f);if(typeof f.originalLine==="number"){this.__originalMappings.push(f)}}}c(this.__generatedMappings,i.compareByGeneratedPositionsDeflated);c(this.__originalMappings,i.compareByOriginalPositions)};n=IndexedSourceMapConsumer},3165:(e,t,r)=>{var n=r(4310);var i=r(1873);var a=r(4246).I;var o=r(3040).H;function SourceMapGenerator(e){if(!e){e={}}this._file=i.getArg(e,"file",null);this._sourceRoot=i.getArg(e,"sourceRoot",null);this._skipValidation=i.getArg(e,"skipValidation",false);this._sources=new a;this._names=new a;this._mappings=new o;this._sourcesContents=null}SourceMapGenerator.prototype._version=3;SourceMapGenerator.fromSourceMap=function SourceMapGenerator_fromSourceMap(e){var t=e.sourceRoot;var r=new SourceMapGenerator({file:e.file,sourceRoot:t});e.eachMapping(function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};if(e.source!=null){n.source=e.source;if(t!=null){n.source=i.relative(t,n.source)}n.original={line:e.originalLine,column:e.originalColumn};if(e.name!=null){n.name=e.name}}r.addMapping(n)});e.sources.forEach(function(t){var n=e.sourceContentFor(t);if(n!=null){r.setSourceContent(t,n)}});return r};SourceMapGenerator.prototype.addMapping=function SourceMapGenerator_addMapping(e){var t=i.getArg(e,"generated");var r=i.getArg(e,"original",null);var n=i.getArg(e,"source",null);var a=i.getArg(e,"name",null);if(!this._skipValidation){this._validateMapping(t,r,n,a)}if(n!=null){n=String(n);if(!this._sources.has(n)){this._sources.add(n)}}if(a!=null){a=String(a);if(!this._names.has(a)){this._names.add(a)}}this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r!=null&&r.line,originalColumn:r!=null&&r.column,source:n,name:a})};SourceMapGenerator.prototype.setSourceContent=function SourceMapGenerator_setSourceContent(e,t){var r=e;if(this._sourceRoot!=null){r=i.relative(this._sourceRoot,r)}if(t!=null){if(!this._sourcesContents){this._sourcesContents=Object.create(null)}this._sourcesContents[i.toSetString(r)]=t}else if(this._sourcesContents){delete this._sourcesContents[i.toSetString(r)];if(Object.keys(this._sourcesContents).length===0){this._sourcesContents=null}}};SourceMapGenerator.prototype.applySourceMap=function SourceMapGenerator_applySourceMap(e,t,r){var n=t;if(t==null){if(e.file==null){throw new Error("SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, "+'or the source map\'s "file" property. Both were omitted.')}n=e.file}var o=this._sourceRoot;if(o!=null){n=i.relative(o,n)}var s=new a;var c=new a;this._mappings.unsortedForEach(function(t){if(t.source===n&&t.originalLine!=null){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});if(a.source!=null){t.source=a.source;if(r!=null){t.source=i.join(r,t.source)}if(o!=null){t.source=i.relative(o,t.source)}t.originalLine=a.line;t.originalColumn=a.column;if(a.name!=null){t.name=a.name}}}var u=t.source;if(u!=null&&!s.has(u)){s.add(u)}var l=t.name;if(l!=null&&!c.has(l)){c.add(l)}},this);this._sources=s;this._names=c;e.sources.forEach(function(t){var n=e.sourceContentFor(t);if(n!=null){if(r!=null){t=i.join(r,t)}if(o!=null){t=i.relative(o,t)}this.setSourceContent(t,n)}},this)};SourceMapGenerator.prototype._validateMapping=function SourceMapGenerator_validateMapping(e,t,r,n){if(t&&typeof t.line!=="number"&&typeof t.column!=="number"){throw new Error("original.line and original.column are not numbers -- you probably meant to omit "+"the original mapping entirely and only map the generated position. If so, pass "+"null for the original mapping instead of an object with empty or null values.")}if(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!t&&!r&&!n){return}else if(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r){return}else{throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))}};SourceMapGenerator.prototype._serializeMappings=function SourceMapGenerator_serializeMappings(){var e=0;var t=1;var r=0;var a=0;var o=0;var s=0;var c="";var u;var l;var f;var d;var p=this._mappings.toArray();for(var g=0,_=p.length;g<_;g++){l=p[g];u="";if(l.generatedLine!==t){e=0;while(l.generatedLine!==t){u+=";";t++}}else{if(g>0){if(!i.compareByGeneratedPositionsInflated(l,p[g-1])){continue}u+=","}}u+=n.encode(l.generatedColumn-e);e=l.generatedColumn;if(l.source!=null){d=this._sources.indexOf(l.source);u+=n.encode(d-s);s=d;u+=n.encode(l.originalLine-1-a);a=l.originalLine-1;u+=n.encode(l.originalColumn-r);r=l.originalColumn;if(l.name!=null){f=this._names.indexOf(l.name);u+=n.encode(f-o);o=f}}c+=u}return c};SourceMapGenerator.prototype._generateSourcesContent=function SourceMapGenerator_generateSourcesContent(e,t){return e.map(function(e){if(!this._sourcesContents){return null}if(t!=null){e=i.relative(t,e)}var r=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null},this)};SourceMapGenerator.prototype.toJSON=function SourceMapGenerator_toJSON(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};if(this._file!=null){e.file=this._file}if(this._sourceRoot!=null){e.sourceRoot=this._sourceRoot}if(this._sourcesContents){e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)}return e};SourceMapGenerator.prototype.toString=function SourceMapGenerator_toString(){return JSON.stringify(this.toJSON())};t.SourceMapGenerator=SourceMapGenerator},9263:(e,t,r)=>{var n=r(3165).SourceMapGenerator;var i=r(1873);var a=/(\r?\n)/;var o=10;var s="$$$isSourceNode$$$";function SourceNode(e,t,r,n,i){this.children=[];this.sourceContents={};this.line=e==null?null:e;this.column=t==null?null:t;this.source=r==null?null:r;this.name=i==null?null:i;this[s]=true;if(n!=null)this.add(n)}SourceNode.fromStringWithSourceMap=function SourceNode_fromStringWithSourceMap(e,t,r){var n=new SourceNode;var o=e.split(a);var s=0;var c=function(){var e=getNextLine();var t=getNextLine()||"";return e+t;function getNextLine(){return s<o.length?o[s++]:undefined}};var u=1,l=0;var f=null;t.eachMapping(function(e){if(f!==null){if(u<e.generatedLine){addMappingWithCode(f,c());u++;l=0}else{var t=o[s];var r=t.substr(0,e.generatedColumn-l);o[s]=t.substr(e.generatedColumn-l);l=e.generatedColumn;addMappingWithCode(f,r);f=e;return}}while(u<e.generatedLine){n.add(c());u++}if(l<e.generatedColumn){var t=o[s];n.add(t.substr(0,e.generatedColumn));o[s]=t.substr(e.generatedColumn);l=e.generatedColumn}f=e},this);if(s<o.length){if(f){addMappingWithCode(f,c())}n.add(o.splice(s).join(""))}t.sources.forEach(function(e){var a=t.sourceContentFor(e);if(a!=null){if(r!=null){e=i.join(r,e)}n.setSourceContent(e,a)}});return n;function addMappingWithCode(e,t){if(e===null||e.source===undefined){n.add(t)}else{var a=r?i.join(r,e.source):e.source;n.add(new SourceNode(e.originalLine,e.originalColumn,a,t,e.name))}}};SourceNode.prototype.add=function SourceNode_add(e){if(Array.isArray(e)){e.forEach(function(e){this.add(e)},this)}else if(e[s]||typeof e==="string"){if(e){this.children.push(e)}}else{throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e)}return this};SourceNode.prototype.prepend=function SourceNode_prepend(e){if(Array.isArray(e)){for(var t=e.length-1;t>=0;t--){this.prepend(e[t])}}else if(e[s]||typeof e==="string"){this.children.unshift(e)}else{throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e)}return this};SourceNode.prototype.walk=function SourceNode_walk(e){var t;for(var r=0,n=this.children.length;r<n;r++){t=this.children[r];if(t[s]){t.walk(e)}else{if(t!==""){e(t,{source:this.source,line:this.line,column:this.column,name:this.name})}}}};SourceNode.prototype.join=function SourceNode_join(e){var t;var r;var n=this.children.length;if(n>0){t=[];for(r=0;r<n-1;r++){t.push(this.children[r]);t.push(e)}t.push(this.children[r]);this.children=t}return this};SourceNode.prototype.replaceRight=function SourceNode_replaceRight(e,t){var r=this.children[this.children.length-1];if(r[s]){r.replaceRight(e,t)}else if(typeof r==="string"){this.children[this.children.length-1]=r.replace(e,t)}else{this.children.push("".replace(e,t))}return this};SourceNode.prototype.setSourceContent=function SourceNode_setSourceContent(e,t){this.sourceContents[i.toSetString(e)]=t};SourceNode.prototype.walkSourceContents=function SourceNode_walkSourceContents(e){for(var t=0,r=this.children.length;t<r;t++){if(this.children[t][s]){this.children[t].walkSourceContents(e)}}var n=Object.keys(this.sourceContents);for(var t=0,r=n.length;t<r;t++){e(i.fromSetString(n[t]),this.sourceContents[n[t]])}};SourceNode.prototype.toString=function SourceNode_toString(){var e="";this.walk(function(t){e+=t});return e};SourceNode.prototype.toStringWithSourceMap=function SourceNode_toStringWithSourceMap(e){var t={code:"",line:1,column:0};var r=new n(e);var i=false;var a=null;var s=null;var c=null;var u=null;this.walk(function(e,n){t.code+=e;if(n.source!==null&&n.line!==null&&n.column!==null){if(a!==n.source||s!==n.line||c!==n.column||u!==n.name){r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})}a=n.source;s=n.line;c=n.column;u=n.name;i=true}else if(i){r.addMapping({generated:{line:t.line,column:t.column}});a=null;i=false}for(var l=0,f=e.length;l<f;l++){if(e.charCodeAt(l)===o){t.line++;t.column=0;if(l+1===f){a=null;i=false}else if(i){r.addMapping({source:n.source,original:{line:n.line,column:n.column},generated:{line:t.line,column:t.column},name:n.name})}}else{t.column++}}});this.walkSourceContents(function(e,t){r.setSourceContent(e,t)});return{code:t.code,map:r}};t.SourceNode=SourceNode},1873:(e,t)=>{function getArg(e,t,r){if(t in e){return e[t]}else if(arguments.length===3){return r}else{throw new Error('"'+t+'" is a required argument.')}}t.getArg=getArg;var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/;var n=/^data:.+\,.+$/;function urlParse(e){var t=e.match(r);if(!t){return null}return{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}}t.urlParse=urlParse;function urlGenerate(e){var t="";if(e.scheme){t+=e.scheme+":"}t+="//";if(e.auth){t+=e.auth+"@"}if(e.host){t+=e.host}if(e.port){t+=":"+e.port}if(e.path){t+=e.path}return t}t.urlGenerate=urlGenerate;function normalize(e){var r=e;var n=urlParse(e);if(n){if(!n.path){return e}r=n.path}var i=t.isAbsolute(r);var a=r.split(/\/+/);for(var o,s=0,c=a.length-1;c>=0;c--){o=a[c];if(o==="."){a.splice(c,1)}else if(o===".."){s++}else if(s>0){if(o===""){a.splice(c+1,s);s=0}else{a.splice(c,2);s--}}}r=a.join("/");if(r===""){r=i?"/":"."}if(n){n.path=r;return urlGenerate(n)}return r}t.normalize=normalize;function join(e,t){if(e===""){e="."}if(t===""){t="."}var r=urlParse(t);var i=urlParse(e);if(i){e=i.path||"/"}if(r&&!r.scheme){if(i){r.scheme=i.scheme}return urlGenerate(r)}if(r||t.match(n)){return t}if(i&&!i.host&&!i.path){i.host=t;return urlGenerate(i)}var a=t.charAt(0)==="/"?t:normalize(e.replace(/\/+$/,"")+"/"+t);if(i){i.path=a;return urlGenerate(i)}return a}t.join=join;t.isAbsolute=function(e){return e.charAt(0)==="/"||!!e.match(r)};function relative(e,t){if(e===""){e="."}e=e.replace(/\/$/,"");var r=0;while(t.indexOf(e+"/")!==0){var n=e.lastIndexOf("/");if(n<0){return t}e=e.slice(0,n);if(e.match(/^([^\/]+:\/)?\/*$/)){return t}++r}return Array(r+1).join("../")+t.substr(e.length+1)}t.relative=relative;var i=function(){var e=Object.create(null);return!("__proto__"in e)}();function identity(e){return e}function toSetString(e){if(isProtoString(e)){return"$"+e}return e}t.toSetString=i?identity:toSetString;function fromSetString(e){if(isProtoString(e)){return e.slice(1)}return e}t.fromSetString=i?identity:fromSetString;function isProtoString(e){if(!e){return false}var t=e.length;if(t<9){return false}if(e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95){return false}for(var r=t-10;r>=0;r--){if(e.charCodeAt(r)!==36){return false}}return true}function compareByOriginalPositions(e,t,r){var n=e.source-t.source;if(n!==0){return n}n=e.originalLine-t.originalLine;if(n!==0){return n}n=e.originalColumn-t.originalColumn;if(n!==0||r){return n}n=e.generatedColumn-t.generatedColumn;if(n!==0){return n}n=e.generatedLine-t.generatedLine;if(n!==0){return n}return e.name-t.name}t.compareByOriginalPositions=compareByOriginalPositions;function compareByGeneratedPositionsDeflated(e,t,r){var n=e.generatedLine-t.generatedLine;if(n!==0){return n}n=e.generatedColumn-t.generatedColumn;if(n!==0||r){return n}n=e.source-t.source;if(n!==0){return n}n=e.originalLine-t.originalLine;if(n!==0){return n}n=e.originalColumn-t.originalColumn;if(n!==0){return n}return e.name-t.name}t.compareByGeneratedPositionsDeflated=compareByGeneratedPositionsDeflated;function strcmp(e,t){if(e===t){return 0}if(e>t){return 1}return-1}function compareByGeneratedPositionsInflated(e,t){var r=e.generatedLine-t.generatedLine;if(r!==0){return r}r=e.generatedColumn-t.generatedColumn;if(r!==0){return r}r=strcmp(e.source,t.source);if(r!==0){return r}r=e.originalLine-t.originalLine;if(r!==0){return r}r=e.originalColumn-t.originalColumn;if(r!==0){return r}return strcmp(e.name,t.name)}t.compareByGeneratedPositionsInflated=compareByGeneratedPositionsInflated},6160:(e,t,r)=>{t.SourceMapGenerator=r(3165).SourceMapGenerator;t.SourceMapConsumer=r(6898).SourceMapConsumer;t.SourceNode=r(9263).SourceNode},3384:(e,t,r)=>{var n=r(535);function customDecodeUriComponent(e){return n(e.replace(/\+/g,"%2B"))}e.exports=customDecodeUriComponent},6224:(e,t,r)=>{var n=r(8835);function resolveUrl(){return Array.prototype.reduce.call(arguments,function(e,t){return n.resolve(e,t)})}e.exports=resolveUrl},6769:(e,t,r)=>{var n=r(1303);var i=r(6224);var a=r(3384);var o=r(6002);var s=r(731);function callbackAsync(e,t,r){setImmediate(function(){e(t,r)})}function parseMapToJSON(e,t){try{return JSON.parse(e.replace(/^\)\]\}'/,""))}catch(e){e.sourceMapData=t;throw e}}function readSync(e,t,r){var n=a(t);try{return String(e(n))}catch(e){e.sourceMapData=r;throw e}}function resolveSourceMap(e,t,r,n){var i;try{i=resolveSourceMapHelper(e,t)}catch(e){return callbackAsync(n,e)}if(!i||i.map){return callbackAsync(n,null,i)}var o=a(i.url);r(o,function(e,t){if(e){e.sourceMapData=i;return n(e)}i.map=String(t);try{i.map=parseMapToJSON(i.map,i)}catch(e){return n(e)}n(null,i)})}function resolveSourceMapSync(e,t,r){var n=resolveSourceMapHelper(e,t);if(!n||n.map){return n}n.map=readSync(r,n.url,n);n.map=parseMapToJSON(n.map,n);return n}var c=/^data:([^,;]*)(;[^,;]*)*(?:,(.*))?$/;var u=/^(?:application|text)\/json$/;function resolveSourceMapHelper(e,t){t=o(t);var r=n.getFrom(e);if(!r){return null}var a=r.match(c);if(a){var l=a[1];var f=a[2]||"";var d=a[3]||"";var p={sourceMappingURL:r,url:null,sourcesRelativeTo:t,map:d};if(!u.test(l)){var g=new Error("Unuseful data uri mime type: "+(l||"text/plain"));g.sourceMapData=p;throw g}p.map=parseMapToJSON(f===";base64"?s(d):decodeURIComponent(d),p);return p}var _=i(t,r);return{sourceMappingURL:r,url:_,sourcesRelativeTo:_,map:null}}function resolveSources(e,t,r,n,i){if(typeof n==="function"){i=n;n={}}var o=e.sources?e.sources.length:0;var s={sourcesResolved:[],sourcesContent:[]};if(o===0){callbackAsync(i,null,s);return}var c=function(){o--;if(o===0){i(null,s)}};resolveSourcesHelper(e,t,n,function(e,t,n){s.sourcesResolved[n]=e;if(typeof t==="string"){s.sourcesContent[n]=t;callbackAsync(c,null)}else{var i=a(e);r(i,function(e,t){s.sourcesContent[n]=e?e:String(t);c()})}})}function resolveSourcesSync(e,t,r,n){var i={sourcesResolved:[],sourcesContent:[]};if(!e.sources||e.sources.length===0){return i}resolveSourcesHelper(e,t,n,function(e,t,n){i.sourcesResolved[n]=e;if(r!==null){if(typeof t==="string"){i.sourcesContent[n]=t}else{var o=a(e);try{i.sourcesContent[n]=String(r(o))}catch(e){i.sourcesContent[n]=e}}}});return i}var l=/\/?$/;function resolveSourcesHelper(e,t,r,n){r=r||{};t=o(t);var a;var s;var c;for(var u=0,f=e.sources.length;u<f;u++){c=null;if(typeof r.sourceRoot==="string"){c=r.sourceRoot}else if(typeof e.sourceRoot==="string"&&r.sourceRoot!==false){c=e.sourceRoot}if(c===null||c===""){a=i(t,e.sources[u])}else{a=i(t,c.replace(l,"/"),e.sources[u])}s=(e.sourcesContent||[])[u];n(a,s,u)}}function resolve(e,t,r,n,i){if(typeof n==="function"){i=n;n={}}if(e===null){var o=t;var s={sourceMappingURL:null,url:o,sourcesRelativeTo:o,map:null};var c=a(o);r(c,function(e,t){if(e){e.sourceMapData=s;return i(e)}s.map=String(t);try{s.map=parseMapToJSON(s.map,s)}catch(e){return i(e)}_resolveSources(s)})}else{resolveSourceMap(e,t,r,function(e,t){if(e){return i(e)}if(!t){return i(null,null)}_resolveSources(t)})}function _resolveSources(e){resolveSources(e.map,e.sourcesRelativeTo,r,n,function(t,r){if(t){return i(t)}e.sourcesResolved=r.sourcesResolved;e.sourcesContent=r.sourcesContent;i(null,e)})}}function resolveSync(e,t,r,n){var i;if(e===null){var a=t;i={sourceMappingURL:null,url:a,sourcesRelativeTo:a,map:null};i.map=readSync(r,a,i);i.map=parseMapToJSON(i.map,i)}else{i=resolveSourceMapSync(e,t,r);if(!i){return null}}var o=resolveSourcesSync(i.map,i.sourcesRelativeTo,r,n);i.sourcesResolved=o.sourcesResolved;i.sourcesContent=o.sourcesContent;return i}e.exports={resolveSourceMap:resolveSourceMap,resolveSourceMapSync:resolveSourceMapSync,resolveSources:resolveSources,resolveSourcesSync:resolveSourcesSync,resolve:resolve,resolveSync:resolveSync,parseMapToJSON:parseMapToJSON}},2284:(e,t,r)=>{var n=r(9596).SourceMapConsumer;var i=r(5622);var a;try{a=r(5747);if(!a.existsSync||!a.readFileSync){a=null}}catch(e){}var o=r(6650);var s=false;var c=false;var u=false;var l="auto";var f={};var d={};var p=/^data:application\/json[^,]+base64,/;var g=[];var _=[];function isInBrowser(){if(l==="browser")return true;if(l==="node")return false;return typeof window!=="undefined"&&typeof XMLHttpRequest==="function"&&!(window.require&&window.module&&window.process&&window.process.type==="renderer")}function hasGlobalProcessEventEmitter(){return typeof process==="object"&&process!==null&&typeof process.on==="function"}function handlerExec(e){return function(t){for(var r=0;r<e.length;r++){var n=e[r](t);if(n){return n}}return null}}var m=handlerExec(g);g.push(function(e){e=e.trim();if(/^file:/.test(e)){e=e.replace(/file:\/\/\/(\w:)?/,function(e,t){return t?"":"/"})}if(e in f){return f[e]}var t="";try{if(!a){var r=new XMLHttpRequest;r.open("GET",e,false);r.send(null);if(r.readyState===4&&r.status===200){t=r.responseText}}else if(a.existsSync(e)){t=a.readFileSync(e,"utf8")}}catch(e){}return f[e]=t});function supportRelativeURL(e,t){if(!e)return t;var r=i.dirname(e);var n=/^\w+:\/\/[^\/]*/.exec(r);var a=n?n[0]:"";var o=r.slice(a.length);if(a&&/^\/\w\:/.test(o)){a+="/";return a+i.resolve(r.slice(a.length),t).replace(/\\/g,"/")}return a+i.resolve(r.slice(a.length),t)}function retrieveSourceMapURL(e){var t;if(isInBrowser()){try{var r=new XMLHttpRequest;r.open("GET",e,false);r.send(null);t=r.readyState===4?r.responseText:null;var n=r.getResponseHeader("SourceMap")||r.getResponseHeader("X-SourceMap");if(n){return n}}catch(e){}}t=m(e);var i=/(?:\/\/[@#][ \t]+sourceMappingURL=([^\s'"]+?)[ \t]*$)|(?:\/\*[@#][ \t]+sourceMappingURL=([^\*]+?)[ \t]*(?:\*\/)[ \t]*$)/gm;var a,o;while(o=i.exec(t))a=o;if(!a)return null;return a[1]}var y=handlerExec(_);_.push(function(e){var t=retrieveSourceMapURL(e);if(!t)return null;var r;if(p.test(t)){var n=t.slice(t.indexOf(",")+1);r=o(n,"base64").toString();t=e}else{t=supportRelativeURL(e,t);r=m(t)}if(!r){return null}return{url:t,map:r}});function mapSourcePosition(e){var t=d[e.source];if(!t){var r=y(e.source);if(r){t=d[e.source]={url:r.url,map:new n(r.map)};if(t.map.sourcesContent){t.map.sources.forEach(function(e,r){var n=t.map.sourcesContent[r];if(n){var i=supportRelativeURL(t.url,e);f[i]=n}})}}else{t=d[e.source]={url:null,map:null}}}if(t&&t.map){var i=t.map.originalPositionFor(e);if(i.source!==null){i.source=supportRelativeURL(t.url,i.source);return i}}return e}function mapEvalOrigin(e){var t=/^eval at ([^(]+) \((.+):(\d+):(\d+)\)$/.exec(e);if(t){var r=mapSourcePosition({source:t[2],line:+t[3],column:t[4]-1});return"eval at "+t[1]+" ("+r.source+":"+r.line+":"+(r.column+1)+")"}t=/^eval at ([^(]+) \((.+)\)$/.exec(e);if(t){return"eval at "+t[1]+" ("+mapEvalOrigin(t[2])+")"}return e}function CallSiteToString(){var e;var t="";if(this.isNative()){t="native"}else{e=this.getScriptNameOrSourceURL();if(!e&&this.isEval()){t=this.getEvalOrigin();t+=", "}if(e){t+=e}else{t+="<anonymous>"}var r=this.getLineNumber();if(r!=null){t+=":"+r;var n=this.getColumnNumber();if(n){t+=":"+n}}}var i="";var a=this.getFunctionName();var o=true;var s=this.isConstructor();var c=!(this.isToplevel()||s);if(c){var u=this.getTypeName();if(u==="[object Object]"){u="null"}var l=this.getMethodName();if(a){if(u&&a.indexOf(u)!=0){i+=u+"."}i+=a;if(l&&a.indexOf("."+l)!=a.length-l.length-1){i+=" [as "+l+"]"}}else{i+=u+"."+(l||"<anonymous>")}}else if(s){i+="new "+(a||"<anonymous>")}else if(a){i+=a}else{i+=t;o=false}if(o){i+=" ("+t+")"}return i}function cloneCallSite(e){var t={};Object.getOwnPropertyNames(Object.getPrototypeOf(e)).forEach(function(r){t[r]=/^(?:is|get)/.test(r)?function(){return e[r].call(e)}:e[r]});t.toString=CallSiteToString;return t}function wrapCallSite(e){if(e.isNative()){return e}var t=e.getFileName()||e.getScriptNameOrSourceURL();if(t){var r=e.getLineNumber();var n=e.getColumnNumber()-1;var i=62;if(r===1&&n>i&&!isInBrowser()&&!e.isEval()){n-=i}var a=mapSourcePosition({source:t,line:r,column:n});e=cloneCallSite(e);var o=e.getFunctionName;e.getFunctionName=function(){return a.name||o()};e.getFileName=function(){return a.source};e.getLineNumber=function(){return a.line};e.getColumnNumber=function(){return a.column+1};e.getScriptNameOrSourceURL=function(){return a.source};return e}var s=e.isEval()&&e.getEvalOrigin();if(s){s=mapEvalOrigin(s);e=cloneCallSite(e);e.getEvalOrigin=function(){return s};return e}return e}function prepareStackTrace(e,t){if(u){f={};d={}}return e+t.map(function(e){return"\n at "+wrapCallSite(e)}).join("")}function getErrorSource(e){var t=/\n at [^(]+ \((.*):(\d+):(\d+)\)/.exec(e.stack);if(t){var r=t[1];var n=+t[2];var i=+t[3];var o=f[r];if(!o&&a&&a.existsSync(r)){try{o=a.readFileSync(r,"utf8")}catch(e){o=""}}if(o){var s=o.split(/(?:\r\n|\r|\n)/)[n-1];if(s){return r+":"+n+"\n"+s+"\n"+new Array(i).join(" ")+"^"}}}return null}function printErrorAndExit(e){var t=getErrorSource(e);if(process.stderr._handle&&process.stderr._handle.setBlocking){process.stderr._handle.setBlocking(true)}if(t){console.error();console.error(t)}console.error(e.stack);process.exit(1)}function shimEmitUncaughtException(){var e=process.emit;process.emit=function(t){if(t==="uncaughtException"){var r=arguments[1]&&arguments[1].stack;var n=this.listeners(t).length>0;if(r&&!n){return printErrorAndExit(arguments[1])}}return e.apply(this,arguments)}}var h=g.slice(0);var v=_.slice(0);t.wrapCallSite=wrapCallSite;t.getErrorSource=getErrorSource;t.mapSourcePosition=mapSourcePosition;t.retrieveSourceMap=y;t.install=function(e){e=e||{};if(e.environment){l=e.environment;if(["node","browser","auto"].indexOf(l)===-1){throw new Error("environment "+l+" was unknown. Available options are {auto, browser, node}")}}if(e.retrieveFile){if(e.overrideRetrieveFile){g.length=0}g.unshift(e.retrieveFile)}if(e.retrieveSourceMap){if(e.overrideRetrieveSourceMap){_.length=0}_.unshift(e.retrieveSourceMap)}if(e.hookRequire&&!isInBrowser()){var t;try{t=r(2282)}catch(e){}var n=t.prototype._compile;if(!n.__sourceMapSupport){t.prototype._compile=function(e,t){f[t]=e;d[t]=undefined;return n.call(this,e,t)};t.prototype._compile.__sourceMapSupport=true}}if(!u){u="emptyCacheBetweenOperations"in e?e.emptyCacheBetweenOperations:false}if(!s){s=true;Error.prepareStackTrace=prepareStackTrace}if(!c){var i="handleUncaughtExceptions"in e?e.handleUncaughtExceptions:true;if(i&&hasGlobalProcessEventEmitter()){c=true;shimEmitUncaughtException()}}};t.resetRetrieveHandlers=function(){g.length=0;_.length=0;g=h.slice(0);_=v.slice(0)}},1303:function(e){void function(t,r){if(typeof define==="function"&&define.amd){define(r)}else if(true){e.exports=r()}else{}}(this,function(){var e=/[#@] sourceMappingURL=([^\s'"]*)/;var t=RegExp("(?:"+"/\\*"+"(?:\\s*\r?\n(?://)?)?"+"(?:"+e.source+")"+"\\s*"+"\\*/"+"|"+"//(?:"+e.source+")"+")"+"\\s*");return{regex:t,_innerRegex:e,getFrom:function(e){var r=e.match(t);return r?r[1]||r[2]||"":null},existsIn:function(e){return t.test(e)},removeFrom:function(e){return e.replace(t,"")},insertBefore:function(e,r){var n=e.match(t);if(n){return e.slice(0,n.index)+r+e.slice(n.index)}else{return e+r}}}})},6837:(e,t,r)=>{var n=r(1983);var i=Object.prototype.hasOwnProperty;var a=typeof Map!=="undefined";function ArraySet(){this._array=[];this._set=a?new Map:Object.create(null)}ArraySet.fromArray=function ArraySet_fromArray(e,t){var r=new ArraySet;for(var n=0,i=e.length;n<i;n++){r.add(e[n],t)}return r};ArraySet.prototype.size=function ArraySet_size(){return a?this._set.size:Object.getOwnPropertyNames(this._set).length};ArraySet.prototype.add=function ArraySet_add(e,t){var r=a?e:n.toSetString(e);var o=a?this.has(e):i.call(this._set,r);var s=this._array.length;if(!o||t){this._array.push(e)}if(!o){if(a){this._set.set(e,s)}else{this._set[r]=s}}};ArraySet.prototype.has=function ArraySet_has(e){if(a){return this._set.has(e)}else{var t=n.toSetString(e);return i.call(this._set,t)}};ArraySet.prototype.indexOf=function ArraySet_indexOf(e){if(a){var t=this._set.get(e);if(t>=0){return t}}else{var r=n.toSetString(e);if(i.call(this._set,r)){return this._set[r]}}throw new Error('"'+e+'" is not in the set.')};ArraySet.prototype.at=function ArraySet_at(e){if(e>=0&&e<this._array.length){return this._array[e]}throw new Error("No element indexed by "+e)};ArraySet.prototype.toArray=function ArraySet_toArray(){return this._array.slice()};t.I=ArraySet},4215:(e,t,r)=>{var n=r(6537);var i=5;var a=1<<i;var o=a-1;var s=a;function toVLQSigned(e){return e<0?(-e<<1)+1:(e<<1)+0}function fromVLQSigned(e){var t=(e&1)===1;var r=e>>1;return t?-r:r}t.encode=function base64VLQ_encode(e){var t="";var r;var a=toVLQSigned(e);do{r=a&o;a>>>=i;if(a>0){r|=s}t+=n.encode(r)}while(a>0);return t};t.decode=function base64VLQ_decode(e,t,r){var a=e.length;var c=0;var u=0;var l,f;do{if(t>=a){throw new Error("Expected more digits in base 64 VLQ value.")}f=n.decode(e.charCodeAt(t++));if(f===-1){throw new Error("Invalid base64 digit: "+e.charAt(t-1))}l=!!(f&s);f&=o;c=c+(f<<u);u+=i}while(l);r.value=fromVLQSigned(c);r.rest=t}},6537:(e,t)=>{var r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");t.encode=function(e){if(0<=e&&e<r.length){return r[e]}throw new TypeError("Must be between 0 and 63: "+e)};t.decode=function(e){var t=65;var r=90;var n=97;var i=122;var a=48;var o=57;var s=43;var c=47;var u=26;var l=52;if(t<=e&&e<=r){return e-t}if(n<=e&&e<=i){return e-n+u}if(a<=e&&e<=o){return e-a+l}if(e==s){return 62}if(e==c){return 63}return-1}},3164:(e,t)=>{t.GREATEST_LOWER_BOUND=1;t.LEAST_UPPER_BOUND=2;function recursiveSearch(e,r,n,i,a,o){var s=Math.floor((r-e)/2)+e;var c=a(n,i[s],true);if(c===0){return s}else if(c>0){if(r-s>1){return recursiveSearch(s,r,n,i,a,o)}if(o==t.LEAST_UPPER_BOUND){return r<i.length?r:-1}else{return s}}else{if(s-e>1){return recursiveSearch(e,s,n,i,a,o)}if(o==t.LEAST_UPPER_BOUND){return s}else{return e<0?-1:e}}}t.search=function search(e,r,n,i){if(r.length===0){return-1}var a=recursiveSearch(-1,r.length,e,r,n,i||t.GREATEST_LOWER_BOUND);if(a<0){return-1}while(a-1>=0){if(n(r[a],r[a-1],true)!==0){break}--a}return a}},1740:(e,t,r)=>{var n=r(1983);function generatedPositionAfter(e,t){var r=e.generatedLine;var i=t.generatedLine;var a=e.generatedColumn;var o=t.generatedColumn;return i>r||i==r&&o>=a||n.compareByGeneratedPositionsInflated(e,t)<=0}function MappingList(){this._array=[];this._sorted=true;this._last={generatedLine:-1,generatedColumn:0}}MappingList.prototype.unsortedForEach=function MappingList_forEach(e,t){this._array.forEach(e,t)};MappingList.prototype.add=function MappingList_add(e){if(generatedPositionAfter(this._last,e)){this._last=e;this._array.push(e)}else{this._sorted=false;this._array.push(e)}};MappingList.prototype.toArray=function MappingList_toArray(){if(!this._sorted){this._array.sort(n.compareByGeneratedPositionsInflated);this._sorted=true}return this._array};t.H=MappingList},8226:(e,t)=>{function swap(e,t,r){var n=e[t];e[t]=e[r];e[r]=n}function randomIntInRange(e,t){return Math.round(e+Math.random()*(t-e))}function doQuickSort(e,t,r,n){if(r<n){var i=randomIntInRange(r,n);var a=r-1;swap(e,i,n);var o=e[n];for(var s=r;s<n;s++){if(t(e[s],o)<=0){a+=1;swap(e,a,s)}}swap(e,a+1,s);var c=a+1;doQuickSort(e,t,r,c-1);doQuickSort(e,t,c+1,n)}}t.U=function(e,t){doQuickSort(e,t,0,e.length-1)}},6327:(e,t,r)=>{var n;var i=r(1983);var a=r(3164);var o=r(6837).I;var s=r(4215);var c=r(8226).U;function SourceMapConsumer(e,t){var r=e;if(typeof e==="string"){r=i.parseSourceMapInput(e)}return r.sections!=null?new IndexedSourceMapConsumer(r,t):new BasicSourceMapConsumer(r,t)}SourceMapConsumer.fromSourceMap=function(e,t){return BasicSourceMapConsumer.fromSourceMap(e,t)};SourceMapConsumer.prototype._version=3;SourceMapConsumer.prototype.__generatedMappings=null;Object.defineProperty(SourceMapConsumer.prototype,"_generatedMappings",{configurable:true,enumerable:true,get:function(){if(!this.__generatedMappings){this._parseMappings(this._mappings,this.sourceRoot)}return this.__generatedMappings}});SourceMapConsumer.prototype.__originalMappings=null;Object.defineProperty(SourceMapConsumer.prototype,"_originalMappings",{configurable:true,enumerable:true,get:function(){if(!this.__originalMappings){this._parseMappings(this._mappings,this.sourceRoot)}return this.__originalMappings}});SourceMapConsumer.prototype._charIsMappingSeparator=function SourceMapConsumer_charIsMappingSeparator(e,t){var r=e.charAt(t);return r===";"||r===","};SourceMapConsumer.prototype._parseMappings=function SourceMapConsumer_parseMappings(e,t){throw new Error("Subclasses must implement _parseMappings")};SourceMapConsumer.GENERATED_ORDER=1;SourceMapConsumer.ORIGINAL_ORDER=2;SourceMapConsumer.GREATEST_LOWER_BOUND=1;SourceMapConsumer.LEAST_UPPER_BOUND=2;SourceMapConsumer.prototype.eachMapping=function SourceMapConsumer_eachMapping(e,t,r){var n=t||null;var a=r||SourceMapConsumer.GENERATED_ORDER;var o;switch(a){case SourceMapConsumer.GENERATED_ORDER:o=this._generatedMappings;break;case SourceMapConsumer.ORIGINAL_ORDER:o=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var s=this.sourceRoot;o.map(function(e){var t=e.source===null?null:this._sources.at(e.source);t=i.computeSourceURL(s,t,this._sourceMapURL);return{source:t,generatedLine:e.generatedLine,generatedColumn:e.generatedColumn,originalLine:e.originalLine,originalColumn:e.originalColumn,name:e.name===null?null:this._names.at(e.name)}},this).forEach(e,n)};SourceMapConsumer.prototype.allGeneratedPositionsFor=function SourceMapConsumer_allGeneratedPositionsFor(e){var t=i.getArg(e,"line");var r={source:i.getArg(e,"source"),originalLine:t,originalColumn:i.getArg(e,"column",0)};r.source=this._findSourceIndex(r.source);if(r.source<0){return[]}var n=[];var o=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions,a.LEAST_UPPER_BOUND);if(o>=0){var s=this._originalMappings[o];if(e.column===undefined){var c=s.originalLine;while(s&&s.originalLine===c){n.push({line:i.getArg(s,"generatedLine",null),column:i.getArg(s,"generatedColumn",null),lastColumn:i.getArg(s,"lastGeneratedColumn",null)});s=this._originalMappings[++o]}}else{var u=s.originalColumn;while(s&&s.originalLine===t&&s.originalColumn==u){n.push({line:i.getArg(s,"generatedLine",null),column:i.getArg(s,"generatedColumn",null),lastColumn:i.getArg(s,"lastGeneratedColumn",null)});s=this._originalMappings[++o]}}}return n};t.SourceMapConsumer=SourceMapConsumer;function BasicSourceMapConsumer(e,t){var r=e;if(typeof e==="string"){r=i.parseSourceMapInput(e)}var n=i.getArg(r,"version");var a=i.getArg(r,"sources");var s=i.getArg(r,"names",[]);var c=i.getArg(r,"sourceRoot",null);var u=i.getArg(r,"sourcesContent",null);var l=i.getArg(r,"mappings");var f=i.getArg(r,"file",null);if(n!=this._version){throw new Error("Unsupported version: "+n)}if(c){c=i.normalize(c)}a=a.map(String).map(i.normalize).map(function(e){return c&&i.isAbsolute(c)&&i.isAbsolute(e)?i.relative(c,e):e});this._names=o.fromArray(s.map(String),true);this._sources=o.fromArray(a,true);this._absoluteSources=this._sources.toArray().map(function(e){return i.computeSourceURL(c,e,t)});this.sourceRoot=c;this.sourcesContent=u;this._mappings=l;this._sourceMapURL=t;this.file=f}BasicSourceMapConsumer.prototype=Object.create(SourceMapConsumer.prototype);BasicSourceMapConsumer.prototype.consumer=SourceMapConsumer;BasicSourceMapConsumer.prototype._findSourceIndex=function(e){var t=e;if(this.sourceRoot!=null){t=i.relative(this.sourceRoot,t)}if(this._sources.has(t)){return this._sources.indexOf(t)}var r;for(r=0;r<this._absoluteSources.length;++r){if(this._absoluteSources[r]==e){return r}}return-1};BasicSourceMapConsumer.fromSourceMap=function SourceMapConsumer_fromSourceMap(e,t){var r=Object.create(BasicSourceMapConsumer.prototype);var n=r._names=o.fromArray(e._names.toArray(),true);var a=r._sources=o.fromArray(e._sources.toArray(),true);r.sourceRoot=e._sourceRoot;r.sourcesContent=e._generateSourcesContent(r._sources.toArray(),r.sourceRoot);r.file=e._file;r._sourceMapURL=t;r._absoluteSources=r._sources.toArray().map(function(e){return i.computeSourceURL(r.sourceRoot,e,t)});var s=e._mappings.toArray().slice();var u=r.__generatedMappings=[];var l=r.__originalMappings=[];for(var f=0,d=s.length;f<d;f++){var p=s[f];var g=new Mapping;g.generatedLine=p.generatedLine;g.generatedColumn=p.generatedColumn;if(p.source){g.source=a.indexOf(p.source);g.originalLine=p.originalLine;g.originalColumn=p.originalColumn;if(p.name){g.name=n.indexOf(p.name)}l.push(g)}u.push(g)}c(r.__originalMappings,i.compareByOriginalPositions);return r};BasicSourceMapConsumer.prototype._version=3;Object.defineProperty(BasicSourceMapConsumer.prototype,"sources",{get:function(){return this._absoluteSources.slice()}});function Mapping(){this.generatedLine=0;this.generatedColumn=0;this.source=null;this.originalLine=null;this.originalColumn=null;this.name=null}BasicSourceMapConsumer.prototype._parseMappings=function SourceMapConsumer_parseMappings(e,t){var r=1;var n=0;var a=0;var o=0;var u=0;var l=0;var f=e.length;var d=0;var p={};var g={};var _=[];var m=[];var y,h,v,T,S;while(d<f){if(e.charAt(d)===";"){r++;d++;n=0}else if(e.charAt(d)===","){d++}else{y=new Mapping;y.generatedLine=r;for(T=d;T<f;T++){if(this._charIsMappingSeparator(e,T)){break}}h=e.slice(d,T);v=p[h];if(v){d+=h.length}else{v=[];while(d<T){s.decode(e,d,g);S=g.value;d=g.rest;v.push(S)}if(v.length===2){throw new Error("Found a source, but no line and column")}if(v.length===3){throw new Error("Found a source and line, but no column")}p[h]=v}y.generatedColumn=n+v[0];n=y.generatedColumn;if(v.length>1){y.source=u+v[1];u+=v[1];y.originalLine=a+v[2];a=y.originalLine;y.originalLine+=1;y.originalColumn=o+v[3];o=y.originalColumn;if(v.length>4){y.name=l+v[4];l+=v[4]}}m.push(y);if(typeof y.originalLine==="number"){_.push(y)}}}c(m,i.compareByGeneratedPositionsDeflated);this.__generatedMappings=m;c(_,i.compareByOriginalPositions);this.__originalMappings=_};BasicSourceMapConsumer.prototype._findMapping=function SourceMapConsumer_findMapping(e,t,r,n,i,o){if(e[r]<=0){throw new TypeError("Line must be greater than or equal to 1, got "+e[r])}if(e[n]<0){throw new TypeError("Column must be greater than or equal to 0, got "+e[n])}return a.search(e,t,i,o)};BasicSourceMapConsumer.prototype.computeColumnSpans=function SourceMapConsumer_computeColumnSpans(){for(var e=0;e<this._generatedMappings.length;++e){var t=this._generatedMappings[e];if(e+1<this._generatedMappings.length){var r=this._generatedMappings[e+1];if(t.generatedLine===r.generatedLine){t.lastGeneratedColumn=r.generatedColumn-1;continue}}t.lastGeneratedColumn=Infinity}};BasicSourceMapConsumer.prototype.originalPositionFor=function SourceMapConsumer_originalPositionFor(e){var t={generatedLine:i.getArg(e,"line"),generatedColumn:i.getArg(e,"column")};var r=this._findMapping(t,this._generatedMappings,"generatedLine","generatedColumn",i.compareByGeneratedPositionsDeflated,i.getArg(e,"bias",SourceMapConsumer.GREATEST_LOWER_BOUND));if(r>=0){var n=this._generatedMappings[r];if(n.generatedLine===t.generatedLine){var a=i.getArg(n,"source",null);if(a!==null){a=this._sources.at(a);a=i.computeSourceURL(this.sourceRoot,a,this._sourceMapURL)}var o=i.getArg(n,"name",null);if(o!==null){o=this._names.at(o)}return{source:a,line:i.getArg(n,"originalLine",null),column:i.getArg(n,"originalColumn",null),name:o}}}return{source:null,line:null,column:null,name:null}};BasicSourceMapConsumer.prototype.hasContentsOfAllSources=function BasicSourceMapConsumer_hasContentsOfAllSources(){if(!this.sourcesContent){return false}return this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null})};BasicSourceMapConsumer.prototype.sourceContentFor=function SourceMapConsumer_sourceContentFor(e,t){if(!this.sourcesContent){return null}var r=this._findSourceIndex(e);if(r>=0){return this.sourcesContent[r]}var n=e;if(this.sourceRoot!=null){n=i.relative(this.sourceRoot,n)}var a;if(this.sourceRoot!=null&&(a=i.urlParse(this.sourceRoot))){var o=n.replace(/^file:\/\//,"");if(a.scheme=="file"&&this._sources.has(o)){return this.sourcesContent[this._sources.indexOf(o)]}if((!a.path||a.path=="/")&&this._sources.has("/"+n)){return this.sourcesContent[this._sources.indexOf("/"+n)]}}if(t){return null}else{throw new Error('"'+n+'" is not in the SourceMap.')}};BasicSourceMapConsumer.prototype.generatedPositionFor=function SourceMapConsumer_generatedPositionFor(e){var t=i.getArg(e,"source");t=this._findSourceIndex(t);if(t<0){return{line:null,column:null,lastColumn:null}}var r={source:t,originalLine:i.getArg(e,"line"),originalColumn:i.getArg(e,"column")};var n=this._findMapping(r,this._originalMappings,"originalLine","originalColumn",i.compareByOriginalPositions,i.getArg(e,"bias",SourceMapConsumer.GREATEST_LOWER_BOUND));if(n>=0){var a=this._originalMappings[n];if(a.source===r.source){return{line:i.getArg(a,"generatedLine",null),column:i.getArg(a,"generatedColumn",null),lastColumn:i.getArg(a,"lastGeneratedColumn",null)}}}return{line:null,column:null,lastColumn:null}};n=BasicSourceMapConsumer;function IndexedSourceMapConsumer(e,t){var r=e;if(typeof e==="string"){r=i.parseSourceMapInput(e)}var n=i.getArg(r,"version");var a=i.getArg(r,"sections");if(n!=this._version){throw new Error("Unsupported version: "+n)}this._sources=new o;this._names=new o;var s={line:-1,column:0};this._sections=a.map(function(e){if(e.url){throw new Error("Support for url field in sections not implemented.")}var r=i.getArg(e,"offset");var n=i.getArg(r,"line");var a=i.getArg(r,"column");if(n<s.line||n===s.line&&a<s.column){throw new Error("Section offsets must be ordered and non-overlapping.")}s=r;return{generatedOffset:{generatedLine:n+1,generatedColumn:a+1},consumer:new SourceMapConsumer(i.getArg(e,"map"),t)}})}IndexedSourceMapConsumer.prototype=Object.create(SourceMapConsumer.prototype);IndexedSourceMapConsumer.prototype.constructor=SourceMapConsumer;IndexedSourceMapConsumer.prototype._version=3;Object.defineProperty(IndexedSourceMapConsumer.prototype,"sources",{get:function(){var e=[];for(var t=0;t<this._sections.length;t++){for(var r=0;r<this._sections[t].consumer.sources.length;r++){e.push(this._sections[t].consumer.sources[r])}}return e}});IndexedSourceMapConsumer.prototype.originalPositionFor=function IndexedSourceMapConsumer_originalPositionFor(e){var t={generatedLine:i.getArg(e,"line"),generatedColumn:i.getArg(e,"column")};var r=a.search(t,this._sections,function(e,t){var r=e.generatedLine-t.generatedOffset.generatedLine;if(r){return r}return e.generatedColumn-t.generatedOffset.generatedColumn});var n=this._sections[r];if(!n){return{source:null,line:null,column:null,name:null}}return n.consumer.originalPositionFor({line:t.generatedLine-(n.generatedOffset.generatedLine-1),column:t.generatedColumn-(n.generatedOffset.generatedLine===t.generatedLine?n.generatedOffset.generatedColumn-1:0),bias:e.bias})};IndexedSourceMapConsumer.prototype.hasContentsOfAllSources=function IndexedSourceMapConsumer_hasContentsOfAllSources(){return this._sections.every(function(e){return e.consumer.hasContentsOfAllSources()})};IndexedSourceMapConsumer.prototype.sourceContentFor=function IndexedSourceMapConsumer_sourceContentFor(e,t){for(var r=0;r<this._sections.length;r++){var n=this._sections[r];var i=n.consumer.sourceContentFor(e,true);if(i){return i}}if(t){return null}else{throw new Error('"'+e+'" is not in the SourceMap.')}};IndexedSourceMapConsumer.prototype.generatedPositionFor=function IndexedSourceMapConsumer_generatedPositionFor(e){for(var t=0;t<this._sections.length;t++){var r=this._sections[t];if(r.consumer._findSourceIndex(i.getArg(e,"source"))===-1){continue}var n=r.consumer.generatedPositionFor(e);if(n){var a={line:n.line+(r.generatedOffset.generatedLine-1),column:n.column+(r.generatedOffset.generatedLine===n.line?r.generatedOffset.generatedColumn-1:0)};return a}}return{line:null,column:null}};IndexedSourceMapConsumer.prototype._parseMappings=function IndexedSourceMapConsumer_parseMappings(e,t){this.__generatedMappings=[];this.__originalMappings=[];for(var r=0;r<this._sections.length;r++){var n=this._sections[r];var a=n.consumer._generatedMappings;for(var o=0;o<a.length;o++){var s=a[o];var u=n.consumer._sources.at(s.source);u=i.computeSourceURL(n.consumer.sourceRoot,u,this._sourceMapURL);this._sources.add(u);u=this._sources.indexOf(u);var l=null;if(s.name){l=n.consumer._names.at(s.name);this._names.add(l);l=this._names.indexOf(l)}var f={source:u,generatedLine:s.generatedLine+(n.generatedOffset.generatedLine-1),generatedColumn:s.generatedColumn+(n.generatedOffset.generatedLine===s.generatedLine?n.generatedOffset.generatedColumn-1:0),originalLine:s.originalLine,originalColumn:s.originalColumn,name:l};this.__generatedMappings.push(f);if(typeof f.originalLine==="number"){this.__originalMappings.push(f)}}}c(this.__generatedMappings,i.compareByGeneratedPositionsDeflated);c(this.__originalMappings,i.compareByOriginalPositions)};n=IndexedSourceMapConsumer},1341:(e,t,r)=>{var n=r(4215);var i=r(1983);var a=r(6837).I;var o=r(1740).H;function SourceMapGenerator(e){if(!e){e={}}this._file=i.getArg(e,"file",null);this._sourceRoot=i.getArg(e,"sourceRoot",null);this._skipValidation=i.getArg(e,"skipValidation",false);this._sources=new a;this._names=new a;this._mappings=new o;this._sourcesContents=null}SourceMapGenerator.prototype._version=3;SourceMapGenerator.fromSourceMap=function SourceMapGenerator_fromSourceMap(e){var t=e.sourceRoot;var r=new SourceMapGenerator({file:e.file,sourceRoot:t});e.eachMapping(function(e){var n={generated:{line:e.generatedLine,column:e.generatedColumn}};if(e.source!=null){n.source=e.source;if(t!=null){n.source=i.relative(t,n.source)}n.original={line:e.originalLine,column:e.originalColumn};if(e.name!=null){n.name=e.name}}r.addMapping(n)});e.sources.forEach(function(n){var a=n;if(t!==null){a=i.relative(t,n)}if(!r._sources.has(a)){r._sources.add(a)}var o=e.sourceContentFor(n);if(o!=null){r.setSourceContent(n,o)}});return r};SourceMapGenerator.prototype.addMapping=function SourceMapGenerator_addMapping(e){var t=i.getArg(e,"generated");var r=i.getArg(e,"original",null);var n=i.getArg(e,"source",null);var a=i.getArg(e,"name",null);if(!this._skipValidation){this._validateMapping(t,r,n,a)}if(n!=null){n=String(n);if(!this._sources.has(n)){this._sources.add(n)}}if(a!=null){a=String(a);if(!this._names.has(a)){this._names.add(a)}}this._mappings.add({generatedLine:t.line,generatedColumn:t.column,originalLine:r!=null&&r.line,originalColumn:r!=null&&r.column,source:n,name:a})};SourceMapGenerator.prototype.setSourceContent=function SourceMapGenerator_setSourceContent(e,t){var r=e;if(this._sourceRoot!=null){r=i.relative(this._sourceRoot,r)}if(t!=null){if(!this._sourcesContents){this._sourcesContents=Object.create(null)}this._sourcesContents[i.toSetString(r)]=t}else if(this._sourcesContents){delete this._sourcesContents[i.toSetString(r)];if(Object.keys(this._sourcesContents).length===0){this._sourcesContents=null}}};SourceMapGenerator.prototype.applySourceMap=function SourceMapGenerator_applySourceMap(e,t,r){var n=t;if(t==null){if(e.file==null){throw new Error("SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, "+'or the source map\'s "file" property. Both were omitted.')}n=e.file}var o=this._sourceRoot;if(o!=null){n=i.relative(o,n)}var s=new a;var c=new a;this._mappings.unsortedForEach(function(t){if(t.source===n&&t.originalLine!=null){var a=e.originalPositionFor({line:t.originalLine,column:t.originalColumn});if(a.source!=null){t.source=a.source;if(r!=null){t.source=i.join(r,t.source)}if(o!=null){t.source=i.relative(o,t.source)}t.originalLine=a.line;t.originalColumn=a.column;if(a.name!=null){t.name=a.name}}}var u=t.source;if(u!=null&&!s.has(u)){s.add(u)}var l=t.name;if(l!=null&&!c.has(l)){c.add(l)}},this);this._sources=s;this._names=c;e.sources.forEach(function(t){var n=e.sourceContentFor(t);if(n!=null){if(r!=null){t=i.join(r,t)}if(o!=null){t=i.relative(o,t)}this.setSourceContent(t,n)}},this)};SourceMapGenerator.prototype._validateMapping=function SourceMapGenerator_validateMapping(e,t,r,n){if(t&&typeof t.line!=="number"&&typeof t.column!=="number"){throw new Error("original.line and original.column are not numbers -- you probably meant to omit "+"the original mapping entirely and only map the generated position. If so, pass "+"null for the original mapping instead of an object with empty or null values.")}if(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!t&&!r&&!n){return}else if(e&&"line"in e&&"column"in e&&t&&"line"in t&&"column"in t&&e.line>0&&e.column>=0&&t.line>0&&t.column>=0&&r){return}else{throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:r,original:t,name:n}))}};SourceMapGenerator.prototype._serializeMappings=function SourceMapGenerator_serializeMappings(){var e=0;var t=1;var r=0;var a=0;var o=0;var s=0;var c="";var u;var l;var f;var d;var p=this._mappings.toArray();for(var g=0,_=p.length;g<_;g++){l=p[g];u="";if(l.generatedLine!==t){e=0;while(l.generatedLine!==t){u+=";";t++}}else{if(g>0){if(!i.compareByGeneratedPositionsInflated(l,p[g-1])){continue}u+=","}}u+=n.encode(l.generatedColumn-e);e=l.generatedColumn;if(l.source!=null){d=this._sources.indexOf(l.source);u+=n.encode(d-s);s=d;u+=n.encode(l.originalLine-1-a);a=l.originalLine-1;u+=n.encode(l.originalColumn-r);r=l.originalColumn;if(l.name!=null){f=this._names.indexOf(l.name);u+=n.encode(f-o);o=f}}c+=u}return c};SourceMapGenerator.prototype._generateSourcesContent=function SourceMapGenerator_generateSourcesContent(e,t){return e.map(function(e){if(!this._sourcesContents){return null}if(t!=null){e=i.relative(t,e)}var r=i.toSetString(e);return Object.prototype.hasOwnProperty.call(this._sourcesContents,r)?this._sourcesContents[r]:null},this)};SourceMapGenerator.prototype.toJSON=function SourceMapGenerator_toJSON(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};if(this._file!=null){e.file=this._file}if(this._sourceRoot!=null){e.sourceRoot=this._sourceRoot}if(this._sourcesContents){e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)}return e};SourceMapGenerator.prototype.toString=function SourceMapGenerator_toString(){return JSON.stringify(this.toJSON())};t.h=SourceMapGenerator},9990:(e,t,r)=>{var n;var i=r(1341).h;var a=r(1983);var o=/(\r?\n)/;var s=10;var c="$$$isSourceNode$$$";function SourceNode(e,t,r,n,i){this.children=[];this.sourceContents={};this.line=e==null?null:e;this.column=t==null?null:t;this.source=r==null?null:r;this.name=i==null?null:i;this[c]=true;if(n!=null)this.add(n)}SourceNode.fromStringWithSourceMap=function SourceNode_fromStringWithSourceMap(e,t,r){var n=new SourceNode;var i=e.split(o);var s=0;var c=function(){var e=getNextLine();var t=getNextLine()||"";return e+t;function getNextLine(){return s<i.length?i[s++]:undefined}};var u=1,l=0;var f=null;t.eachMapping(function(e){if(f!==null){if(u<e.generatedLine){addMappingWithCode(f,c());u++;l=0}else{var t=i[s]||"";var r=t.substr(0,e.generatedColumn-l);i[s]=t.substr(e.generatedColumn-l);l=e.generatedColumn;addMappingWithCode(f,r);f=e;return}}while(u<e.generatedLine){n.add(c());u++}if(l<e.generatedColumn){var t=i[s]||"";n.add(t.substr(0,e.generatedColumn));i[s]=t.substr(e.generatedColumn);l=e.generatedColumn}f=e},this);if(s<i.length){if(f){addMappingWithCode(f,c())}n.add(i.splice(s).join(""))}t.sources.forEach(function(e){var i=t.sourceContentFor(e);if(i!=null){if(r!=null){e=a.join(r,e)}n.setSourceContent(e,i)}});return n;function addMappingWithCode(e,t){if(e===null||e.source===undefined){n.add(t)}else{var i=r?a.join(r,e.source):e.source;n.add(new SourceNode(e.originalLine,e.originalColumn,i,t,e.name))}}};SourceNode.prototype.add=function SourceNode_add(e){if(Array.isArray(e)){e.forEach(function(e){this.add(e)},this)}else if(e[c]||typeof e==="string"){if(e){this.children.push(e)}}else{throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e)}return this};SourceNode.prototype.prepend=function SourceNode_prepend(e){if(Array.isArray(e)){for(var t=e.length-1;t>=0;t--){this.prepend(e[t])}}else if(e[c]||typeof e==="string"){this.children.unshift(e)}else{throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e)}return this};SourceNode.prototype.walk=function SourceNode_walk(e){var t;for(var r=0,n=this.children.length;r<n;r++){t=this.children[r];if(t[c]){t.walk(e)}else{if(t!==""){e(t,{source:this.source,line:this.line,column:this.column,name:this.name})}}}};SourceNode.prototype.join=function SourceNode_join(e){var t;var r;var n=this.children.length;if(n>0){t=[];for(r=0;r<n-1;r++){t.push(this.children[r]);t.push(e)}t.push(this.children[r]);this.children=t}return this};SourceNode.prototype.replaceRight=function SourceNode_replaceRight(e,t){var r=this.children[this.children.length-1];if(r[c]){r.replaceRight(e,t)}else if(typeof r==="string"){this.children[this.children.length-1]=r.replace(e,t)}else{this.children.push("".replace(e,t))}return this};SourceNode.prototype.setSourceContent=function SourceNode_setSourceContent(e,t){this.sourceContents[a.toSetString(e)]=t};SourceNode.prototype.walkSourceContents=function SourceNode_walkSourceContents(e){for(var t=0,r=this.children.length;t<r;t++){if(this.children[t][c]){this.children[t].walkSourceContents(e)}}var n=Object.keys(this.sourceContents);for(var t=0,r=n.length;t<r;t++){e(a.fromSetString(n[t]),this.sourceContents[n[t]])}};SourceNode.prototype.toString=function SourceNode_toString(){var e="";this.walk(function(t){e+=t});return e};SourceNode.prototype.toStringWithSourceMap=function SourceNode_toStringWithSourceMap(e){var t={code:"",line:1,column:0};var r=new i(e);var n=false;var a=null;var o=null;var c=null;var u=null;this.walk(function(e,i){t.code+=e;if(i.source!==null&&i.line!==null&&i.column!==null){if(a!==i.source||o!==i.line||c!==i.column||u!==i.name){r.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name})}a=i.source;o=i.line;c=i.column;u=i.name;n=true}else if(n){r.addMapping({generated:{line:t.line,column:t.column}});a=null;n=false}for(var l=0,f=e.length;l<f;l++){if(e.charCodeAt(l)===s){t.line++;t.column=0;if(l+1===f){a=null;n=false}else if(n){r.addMapping({source:i.source,original:{line:i.line,column:i.column},generated:{line:t.line,column:t.column},name:i.name})}}else{t.column++}}});this.walkSourceContents(function(e,t){r.setSourceContent(e,t)});return{code:t.code,map:r}};n=SourceNode},1983:(e,t)=>{function getArg(e,t,r){if(t in e){return e[t]}else if(arguments.length===3){return r}else{throw new Error('"'+t+'" is a required argument.')}}t.getArg=getArg;var r=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/;var n=/^data:.+\,.+$/;function urlParse(e){var t=e.match(r);if(!t){return null}return{scheme:t[1],auth:t[2],host:t[3],port:t[4],path:t[5]}}t.urlParse=urlParse;function urlGenerate(e){var t="";if(e.scheme){t+=e.scheme+":"}t+="//";if(e.auth){t+=e.auth+"@"}if(e.host){t+=e.host}if(e.port){t+=":"+e.port}if(e.path){t+=e.path}return t}t.urlGenerate=urlGenerate;function normalize(e){var r=e;var n=urlParse(e);if(n){if(!n.path){return e}r=n.path}var i=t.isAbsolute(r);var a=r.split(/\/+/);for(var o,s=0,c=a.length-1;c>=0;c--){o=a[c];if(o==="."){a.splice(c,1)}else if(o===".."){s++}else if(s>0){if(o===""){a.splice(c+1,s);s=0}else{a.splice(c,2);s--}}}r=a.join("/");if(r===""){r=i?"/":"."}if(n){n.path=r;return urlGenerate(n)}return r}t.normalize=normalize;function join(e,t){if(e===""){e="."}if(t===""){t="."}var r=urlParse(t);var i=urlParse(e);if(i){e=i.path||"/"}if(r&&!r.scheme){if(i){r.scheme=i.scheme}return urlGenerate(r)}if(r||t.match(n)){return t}if(i&&!i.host&&!i.path){i.host=t;return urlGenerate(i)}var a=t.charAt(0)==="/"?t:normalize(e.replace(/\/+$/,"")+"/"+t);if(i){i.path=a;return urlGenerate(i)}return a}t.join=join;t.isAbsolute=function(e){return e.charAt(0)==="/"||r.test(e)};function relative(e,t){if(e===""){e="."}e=e.replace(/\/$/,"");var r=0;while(t.indexOf(e+"/")!==0){var n=e.lastIndexOf("/");if(n<0){return t}e=e.slice(0,n);if(e.match(/^([^\/]+:\/)?\/*$/)){return t}++r}return Array(r+1).join("../")+t.substr(e.length+1)}t.relative=relative;var i=function(){var e=Object.create(null);return!("__proto__"in e)}();function identity(e){return e}function toSetString(e){if(isProtoString(e)){return"$"+e}return e}t.toSetString=i?identity:toSetString;function fromSetString(e){if(isProtoString(e)){return e.slice(1)}return e}t.fromSetString=i?identity:fromSetString;function isProtoString(e){if(!e){return false}var t=e.length;if(t<9){return false}if(e.charCodeAt(t-1)!==95||e.charCodeAt(t-2)!==95||e.charCodeAt(t-3)!==111||e.charCodeAt(t-4)!==116||e.charCodeAt(t-5)!==111||e.charCodeAt(t-6)!==114||e.charCodeAt(t-7)!==112||e.charCodeAt(t-8)!==95||e.charCodeAt(t-9)!==95){return false}for(var r=t-10;r>=0;r--){if(e.charCodeAt(r)!==36){return false}}return true}function compareByOriginalPositions(e,t,r){var n=strcmp(e.source,t.source);if(n!==0){return n}n=e.originalLine-t.originalLine;if(n!==0){return n}n=e.originalColumn-t.originalColumn;if(n!==0||r){return n}n=e.generatedColumn-t.generatedColumn;if(n!==0){return n}n=e.generatedLine-t.generatedLine;if(n!==0){return n}return strcmp(e.name,t.name)}t.compareByOriginalPositions=compareByOriginalPositions;function compareByGeneratedPositionsDeflated(e,t,r){var n=e.generatedLine-t.generatedLine;if(n!==0){return n}n=e.generatedColumn-t.generatedColumn;if(n!==0||r){return n}n=strcmp(e.source,t.source);if(n!==0){return n}n=e.originalLine-t.originalLine;if(n!==0){return n}n=e.originalColumn-t.originalColumn;if(n!==0){return n}return strcmp(e.name,t.name)}t.compareByGeneratedPositionsDeflated=compareByGeneratedPositionsDeflated;function strcmp(e,t){if(e===t){return 0}if(e===null){return 1}if(t===null){return-1}if(e>t){return 1}return-1}function compareByGeneratedPositionsInflated(e,t){var r=e.generatedLine-t.generatedLine;if(r!==0){return r}r=e.generatedColumn-t.generatedColumn;if(r!==0){return r}r=strcmp(e.source,t.source);if(r!==0){return r}r=e.originalLine-t.originalLine;if(r!==0){return r}r=e.originalColumn-t.originalColumn;if(r!==0){return r}return strcmp(e.name,t.name)}t.compareByGeneratedPositionsInflated=compareByGeneratedPositionsInflated;function parseSourceMapInput(e){return JSON.parse(e.replace(/^\)]}'[^\n]*\n/,""))}t.parseSourceMapInput=parseSourceMapInput;function computeSourceURL(e,t,r){t=t||"";if(e){if(e[e.length-1]!=="/"&&t[0]!=="/"){e+="/"}t=e+t}if(r){var n=urlParse(r);if(!n){throw new Error("sourceMapURL could not be parsed")}if(n.path){var i=n.path.lastIndexOf("/");if(i>=0){n.path=n.path.substring(0,i+1)}}t=join(urlGenerate(n),t)}return normalize(t)}t.computeSourceURL=computeSourceURL},9596:(e,t,r)=>{r(1341).h;t.SourceMapConsumer=r(6327).SourceMapConsumer;r(9990)},6439:(e,t,r)=>{"use strict";var n=r(4217);e.exports=function(e,t,r){if(typeof e!=="string"){throw new TypeError("expected a string")}if(typeof t==="function"){r=t;t=null}if(typeof t==="string"){t={sep:t}}var i=n({sep:"."},t);var a=i.quotes||['"',"'","`"];var o;if(i.brackets===true){o={"<":">","(":")","[":"]","{":"}"}}else if(i.brackets){o=i.brackets}var s=[];var c=[];var u=[""];var l=i.sep;var f=e.length;var d=-1;var p;function expected(){if(o&&c.length){return o[c[c.length-1]]}}while(++d<f){var g=e[d];var _=e[d+1];var m={val:g,idx:d,arr:u,str:e};s.push(m);if(g==="\\"){m.val=keepEscaping(i,e,d)===true?g+_:_;m.escaped=true;if(typeof r==="function"){r(m)}u[u.length-1]+=m.val;d++;continue}if(o&&o[g]){c.push(g);var y=expected();var h=d+1;if(e.indexOf(y,h+1)!==-1){while(c.length&&h<f){var v=e[++h];if(v==="\\"){v++;continue}if(a.indexOf(v)!==-1){h=getClosingQuote(e,v,h+1);continue}y=expected();if(c.length&&e.indexOf(y,h+1)===-1){break}if(o[v]){c.push(v);continue}if(y===v){c.pop()}}}p=h;if(p===-1){u[u.length-1]+=g;continue}g=e.slice(d,p+1);m.val=g;m.idx=d=p}if(a.indexOf(g)!==-1){p=getClosingQuote(e,g,d+1);if(p===-1){u[u.length-1]+=g;continue}if(keepQuotes(g,i)===true){g=e.slice(d,p+1)}else{g=e.slice(d+1,p)}m.val=g;m.idx=d=p}if(typeof r==="function"){r(m,s);g=m.val;d=m.idx}if(m.val===l&&m.split!==false){u.push("");continue}u[u.length-1]+=m.val}return u};function getClosingQuote(e,t,r,n){var i=e.indexOf(t,r);if(e.charAt(i-1)==="\\"){return getClosingQuote(e,t,i+1)}return i}function keepQuotes(e,t){if(t.keepDoubleQuotes===true&&e==='"')return true;if(t.keepSingleQuotes===true&&e==="'")return true;return t.keepQuotes}function keepEscaping(e,t,r){if(typeof e.keepEscaping==="function"){return e.keepEscaping(t,r)}return e.keepEscaping===true||t[r+1]==="\\"}},4217:(e,t,r)=>{"use strict";var n=r(2808);var i=r(7954);e.exports=Object.assign||function(e){if(e===null||typeof e==="undefined"){throw new TypeError("Cannot convert undefined or null to object")}if(!isObject(e)){e={}}for(var t=1;t<arguments.length;t++){var r=arguments[t];if(isString(r)){r=toObject(r)}if(isObject(r)){assign(e,r);i(e,r)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function isString(e){return e&&typeof e==="string"}function toObject(e){var t={};for(var r in e){t[r]=e[r]}return t}function isObject(e){return e&&typeof e==="object"||n(e)}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function isEnum(e,t){return Object.prototype.propertyIsEnumerable.call(e,t)}},2808:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},1261:(e,t,r)=>{"use strict";var n=r(3991);var i=r(4728);var a=r(1669);function extend(e,t){if(typeof e!=="function"){throw new TypeError("expected Parent to be a function.")}return function(r,o){if(typeof r!=="function"){throw new TypeError("expected Ctor to be a function.")}a.inherits(r,e);n(r,e);if(typeof o==="object"){var s=Object.create(o);for(var c in s){r.prototype[c]=s[c]}}i(r.prototype,"_parent_",{configurable:true,set:function(){},get:function(){return e.prototype}});if(typeof t==="function"){t(r,e)}r.extend=extend(r,t)}}e.exports=extend},3919:(e,t,r)=>{"use strict";var n=r(2046);e.exports=function toPath(e){if(n(e)!=="arguments"){e=arguments}return filter(e).join(".")};function filter(e){var t=e.length;var r=-1;var i=[];while(++r<t){var a=e[r];if(n(a)==="arguments"||Array.isArray(a)){i.push.apply(i,filter(a))}else if(typeof a==="string"){i.push(a)}}return i}},5837:(e,t,r)=>{"use strict";var n=r(9437);var i=r(5552);var a={};function toRegexRange(e,t,r){if(i(e)===false){throw new RangeError("toRegexRange: first argument is invalid.")}if(typeof t==="undefined"||e===t){return String(e)}if(i(t)===false){throw new RangeError("toRegexRange: second argument is invalid.")}r=r||{};var n=String(r.relaxZeros);var o=String(r.shorthand);var s=String(r.capture);var c=e+":"+t+"="+n+o+s;if(a.hasOwnProperty(c)){return a[c].result}var u=Math.min(e,t);var l=Math.max(e,t);if(Math.abs(u-l)===1){var f=e+"|"+t;if(r.capture){return"("+f+")"}return f}var d=padding(e)||padding(t);var p=[];var g=[];var _={min:e,max:t,a:u,b:l};if(d){_.isPadded=d;_.maxLen=String(_.max).length}if(u<0){var m=l<0?Math.abs(l):1;var y=Math.abs(u);g=splitToPatterns(m,y,_,r);u=_.a=0}if(l>=0){p=splitToPatterns(u,l,_,r)}_.negatives=g;_.positives=p;_.result=siftPatterns(g,p,r);if(r.capture&&p.length+g.length>1){_.result="("+_.result+")"}a[c]=_;return _.result}function siftPatterns(e,t,r){var n=filterPatterns(e,t,"-",false,r)||[];var i=filterPatterns(t,e,"",false,r)||[];var a=filterPatterns(e,t,"-?",true,r)||[];var o=n.concat(a).concat(i);return o.join("|")}function splitToRanges(e,t){e=Number(e);t=Number(t);var r=1;var n=[t];var i=+countNines(e,r);while(e<=i&&i<=t){n=push(n,i);r+=1;i=+countNines(e,r)}var a=1;i=countZeros(t+1,a)-1;while(e<i&&i<=t){n=push(n,i);a+=1;i=countZeros(t+1,a)-1}n.sort(compare);return n}function rangeToPattern(e,t,r){if(e===t){return{pattern:String(e),digits:[]}}var n=zip(String(e),String(t));var i=n.length,a=-1;var o="";var s=0;while(++a<i){var c=n[a];var u=c[0];var l=c[1];if(u===l){o+=u}else if(u!=="0"||l!=="9"){o+=toCharacterClass(u,l)}else{s+=1}}if(s){o+=r.shorthand?"\\d":"[0-9]"}return{pattern:o,digits:[s]}}function splitToPatterns(e,t,r,n){var i=splitToRanges(e,t);var a=i.length;var o=-1;var s=[];var c=e;var u;while(++o<a){var l=i[o];var f=rangeToPattern(c,l,n);var d="";if(!r.isPadded&&u&&u.pattern===f.pattern){if(u.digits.length>1){u.digits.pop()}u.digits.push(f.digits[0]);u.string=u.pattern+toQuantifier(u.digits);c=l+1;continue}if(r.isPadded){d=padZeros(l,r)}f.string=d+f.pattern+toQuantifier(f.digits);s.push(f);c=l+1;u=f}return s}function filterPatterns(e,t,r,n,i){var a=[];for(var o=0;o<e.length;o++){var s=e[o];var c=s.string;if(i.relaxZeros!==false){if(r==="-"&&c.charAt(0)==="0"){if(c.charAt(1)==="{"){c="0*"+c.replace(/^0\{\d+\}/,"")}else{c="0*"+c.slice(1)}}}if(!n&&!contains(t,"string",c)){a.push(r+c)}if(n&&contains(t,"string",c)){a.push(r+c)}}return a}function zip(e,t){var r=[];for(var n in e)r.push([e[n],t[n]]);return r}function compare(e,t){return e>t?1:t>e?-1:0}function push(e,t){if(e.indexOf(t)===-1)e.push(t);return e}function contains(e,t,r){for(var n=0;n<e.length;n++){if(e[n][t]===r){return true}}return false}function countNines(e,t){return String(e).slice(0,-t)+n("9",t)}function countZeros(e,t){return e-e%Math.pow(10,t)}function toQuantifier(e){var t=e[0];var r=e[1]?","+e[1]:"";if(!r&&(!t||t===1)){return""}return"{"+t+r+"}"}function toCharacterClass(e,t){return"["+e+(t-e===1?"":"-")+t+"]"}function padding(e){return/^-?(0+)\d/.exec(e)}function padZeros(e,t){if(t.isPadded){var r=Math.abs(t.maxLen-String(e).length);switch(r){case 0:return"";case 1:return"0";default:{return"0{"+r+"}"}}}return e}e.exports=toRegexRange},9532:(e,t,r)=>{"use strict";var n=r(3867);var i=r(2383);var a=r(1681);var o=r(3089);var s=1024*64;var c={};e.exports=function(e,t){if(!Array.isArray(e)){return makeRe(e,t)}return makeRe(e.join("|"),t)};function makeRe(e,t){if(e instanceof RegExp){return e}if(typeof e!=="string"){throw new TypeError("expected a string")}if(e.length>s){throw new Error("expected pattern to be less than "+s+" characters")}var r=e;if(!t||t&&t.cache!==false){r=createKey(e,t);if(c.hasOwnProperty(r)){return c[r]}}var i=a({},t);if(i.contains===true){if(i.negate===true){i.strictNegate=false}else{i.strict=false}}if(i.strict===false){i.strictOpen=false;i.strictClose=false}var u=i.strictOpen!==false?"^":"";var l=i.strictClose!==false?"$":"";var f=i.flags||"";var d;if(i.nocase===true&&!/i/.test(f)){f+="i"}try{if(i.negate||typeof i.strictNegate==="boolean"){e=o.create(e,i)}var p=u+"(?:"+e+")"+l;d=new RegExp(p,f);if(i.safe===true&&n(d)===false){throw new Error("potentially unsafe regular expression: "+d.source)}}catch(n){if(i.strictErrors===true||i.safe===true){n.key=r;n.pattern=e;n.originalOptions=t;n.createdOptions=i;throw n}try{d=new RegExp("^"+e.replace(/(\W)/g,"\\$1")+"$")}catch(e){d=/.^/}}if(i.cache!==false){memoize(d,r,e,i)}return d}function memoize(e,t,r,n){i(e,"cached",true);i(e,"pattern",r);i(e,"options",n);i(e,"key",t);c[t]=e}function createKey(e,t){if(!t)return e;var r=e;for(var n in t){if(t.hasOwnProperty(n)){r+=";"+n+"="+String(t[n])}}return r}e.exports.makeRe=makeRe},2383:(e,t,r)=>{"use strict";var n=r(977);var i=r(8586);var a=typeof Reflect!=="undefined"&&Reflect.defineProperty?Reflect.defineProperty:Object.defineProperty;e.exports=function defineProperty(e,t,r){if(!n(e)&&typeof e!=="function"&&!Array.isArray(e)){throw new TypeError("expected an object, function, or array")}if(typeof t!=="string"){throw new TypeError('expected "key" to be a string')}if(i(r)){a(e,t,r);return e}a(e,t,{configurable:true,enumerable:false,writable:true,value:r});return e}},1681:(e,t,r)=>{"use strict";var n=r(4466);var i=r(7954);e.exports=Object.assign||function(e){if(e===null||typeof e==="undefined"){throw new TypeError("Cannot convert undefined or null to object")}if(!isObject(e)){e={}}for(var t=1;t<arguments.length;t++){var r=arguments[t];if(isString(r)){r=toObject(r)}if(isObject(r)){assign(e,r);i(e,r)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function isString(e){return e&&typeof e==="string"}function toObject(e){var t={};for(var r in e){t[r]=e[r]}return t}function isObject(e){return e&&typeof e==="object"||n(e)}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function isEnum(e,t){return Object.prototype.propertyIsEnumerable.call(e,t)}},4466:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},6619:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(5622);const i=r(9635);const a=r(557);const o=r(6507);function makeAfterCompile(e,t){let r=true;let n=true;return(i,a)=>{if(i.compiler.isChild()){a();return}removeTSLoaderErrors(i.errors);provideCompilerOptionDiagnosticErrorsToWebpack(r,i,e,t);r=false;const o=determineModules(i);const s=determineFilesToCheckForErrors(n,e);n=false;const c=new Map;provideErrorsToWebpack(s,c,i,o,e);provideDeclarationFilesToWebpack(s,e,i);e.filesWithErrors=c;e.modifiedFiles=null;e.projectsMissingSourceMaps=new Set;a()}}t.makeAfterCompile=makeAfterCompile;function provideCompilerOptionDiagnosticErrorsToWebpack(e,t,r,n){if(e){const{languageService:e,loaderOptions:i,compiler:a,program:s}=r;const c=o.formatErrors(s===undefined?e.getCompilerOptionsDiagnostics():s.getOptionsDiagnostics(),i,r.colors,a,{file:n||"tsconfig.json"},t.compiler.context);t.errors.push(...c)}}function determineModules(e){const t=new Map;e.modules.forEach(e=>{if(e.resource){const r=n.normalize(e.resource);const i=t.get(r);if(i!==undefined){if(i.indexOf(e)===-1){i.push(e)}}else{t.set(r,[e])}}});return t}function determineFilesToCheckForErrors(e,t){const{files:r,modifiedFiles:n,filesWithErrors:i,otherFiles:a}=t;const s=new Map;if(e){for(const[e,t]of r){s.set(e,t)}for(const[e,t]of a){s.set(e,t)}}else if(n!==null&&n!==undefined){for(const e of n.keys()){o.collectAllDependants(t.reverseDependencyGraph,e).forEach(e=>{const t=r.get(e)||a.get(e);s.set(e,t)})}}if(i!==undefined){for(const[e,t]of i){s.set(e,t)}}return s}function provideErrorsToWebpack(e,t,r,n,a){const{compiler:s,program:c,languageService:u,files:l,loaderOptions:f,compilerOptions:d,otherFiles:p}=a;const g=d.checkJs===true?i.dtsTsTsxJsJsxRegex:i.dtsTsTsxRegex;for(const i of e.keys()){if(i.match(g)===null){continue}const e=c===undefined?undefined:c.getSourceFile(i);if(o.isUsingProjectReferences(a)&&e===undefined){continue}const d=c===undefined?[...u.getSyntacticDiagnostics(i),...u.getSemanticDiagnostics(i)]:[...c.getSyntacticDiagnostics(e),...c.getSemanticDiagnostics(e)];if(d.length>0){const e=l.get(i)||p.get(i);t.set(i,e)}const _=n.get(i);if(_!==undefined){_.forEach(e=>{removeTSLoaderErrors(e.errors);const t=o.formatErrors(d,f,a.colors,s,{module:e},r.compiler.context);e.errors.push(...t);r.errors.push(...t)})}else{const e=o.formatErrors(d,f,a.colors,s,{file:i},r.compiler.context);r.errors.push(...e)}}}function provideDeclarationFilesToWebpack(e,t,r){for(const o of e.keys()){if(o.match(i.tsTsxRegex)===null){continue}const e=a.getEmitOutput(t,o);const s=e.filter(e=>e.name.match(i.dtsDtsxOrDtsDtsxMapRegex));s.forEach(e=>{const t=n.relative(r.compiler.outputPath,e.name);r.assets[t]={source:()=>e.text,size:()=>e.text.length}})}}function removeTSLoaderErrors(e){let t=-1;let r=e.length;while(++t<r){if(e[t].loaderSource==="ts-loader"){e.splice(t--,1);r--}}}},7464:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(2729);const i=r(9635);function getCompiler(e,t){let r;let i;let a;let o=false;try{r=require(e.compiler)}catch(t){i=e.compiler==="typescript"?"Could not load TypeScript. Try installing with `yarn add typescript` or `npm install typescript`. If TypeScript is installed globally, try using `yarn link typescript` or `npm link typescript`.":`Could not load TypeScript compiler with NPM package name \`${e.compiler}\`. Are you sure it is correctly installed?`}if(i===undefined){a=`ts-loader: Using ${e.compiler}@${r.version}`;o=false;if(e.compiler==="typescript"){if(r.version!==undefined&&n.gte(r.version,"2.4.1")){o=true}else{t.logError(`${a}. This version is incompatible with ts-loader. Please upgrade to the latest version of TypeScript.`)}}else{t.logWarning(`${a}. This version may or may not be compatible with ts-loader.`)}}return{compiler:r,compilerCompatible:o,compilerDetailsLogMessage:a,errorMessage:i}}t.getCompiler=getCompiler;function getCompilerOptions(e){const t=Object.assign({},e.options,{skipLibCheck:true,suppressOutputPathCheck:true});if(t.module===undefined&&(t.target!==undefined&&t.target<i.ScriptTargetES2015)){t.module=i.ModuleKindCommonJs}return t}t.getCompilerOptions=getCompilerOptions},852:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(5622);const i=r(6507);function getConfigFile(e,t,r,a,o,s,c){const u=findConfigFile(e,n.dirname(r.resourcePath),a.configFile);let l;let f;if(u!==undefined){if(o){s.logInfo(`${c} and ${u}`)}else{s.logInfo(`ts-loader: Using config file at ${u}`)}f=e.readConfigFile(u,e.sys.readFile);if(f.error!==undefined){l=i.formatErrors([f.error],a,t,e,{file:u},r.context)[0]}}else{if(o){s.logInfo(c)}f={config:{compilerOptions:{},files:[]}}}if(l===undefined){f.config.compilerOptions=Object.assign({},f.config.compilerOptions,a.compilerOptions)}return{configFilePath:u,configFile:f,configFileError:l}}t.getConfigFile=getConfigFile;function findConfigFile(e,t,r){if(n.isAbsolute(r)){return e.sys.fileExists(r)?r:undefined}if(r.match(/^\.\.?(\/|\\)/)!==null){const i=n.resolve(t,r);return e.sys.fileExists(i)?i:undefined}else{while(true){const i=n.join(t,r);if(e.sys.fileExists(i)){return i}const a=n.dirname(t);if(a===t){break}t=a}return undefined}}function getConfigParseResult(e,t,r){const n=e.parseJsonConfigFileContent(t.config,e.sys,r);return n}t.getConfigParseResult=getConfigParseResult},9635:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(2087);t.EOL=n.EOL;t.CarriageReturnLineFeed="\r\n";t.LineFeed="\n";t.CarriageReturnLineFeedCode=0;t.LineFeedCode=1;t.ScriptTargetES2015=2;t.ModuleKindCommonJs=1;t.extensionRegex=/\.[^.]+$/;t.tsxRegex=/\.tsx$/i;t.tsTsxRegex=/\.ts(x?)$/i;t.dtsDtsxOrDtsDtsxMapRegex=/\.d\.ts(x?)(\.map)?$/i;t.dtsTsTsxRegex=/(\.d)?\.ts(x?)$/i;t.dtsTsTsxJsJsxRegex=/((\.d)?\.ts(x?)|js(x?))$/i;t.tsTsxJsJsxRegex=/\.tsx?$|\.jsx?$/i;t.jsJsx=/\.js(x?)$/i;t.jsJsxMap=/\.js(x?)\.map$/i;t.jsonRegex=/\.json$/i;t.nodeModules=/node_modules/i},2956:(e,t,r)=>{"use strict";const n=r(8244);const i=r(5622);const a=r(9635);const o=r(557);const s=r(6507);const c=[];const u={};function loader(e){this.cacheable&&this.cacheable();const t=this.async();const r=getLoaderOptions(this);const n=o.getTypeScriptInstance(r,this);if(n.error!==undefined){t(new Error(n.error.message));return}return successLoader(this,e,t,r,n.instance)}function successLoader(e,t,r,n,a){const o=i.normalize(e.resourcePath);const c=n.appendTsSuffixTo.length>0||n.appendTsxSuffixTo.length>0?s.appendSuffixesIfMatch({".ts":n.appendTsSuffixTo,".tsx":n.appendTsxSuffixTo},o):o;const u=updateFileInCache(c,t,a);const l=s.getAndCacheProjectReference(c,a);if(l!==undefined){const[o,f]=[i.relative(e.rootContext,l.sourceFile.fileName),i.relative(e.rootContext,c)];if(l.commandLine.options.outFile!==undefined){throw new Error(`The referenced project at ${o} is using `+`the outFile' option, which is not supported with ts-loader.`)}const d=s.getAndCacheOutputJSFileName(c,l,a);const p=i.relative(e.rootContext,d);if(!a.compiler.sys.fileExists(d)){throw new Error(`Could not find output JavaScript file for input `+`${f} (looked at ${p}).\n`+`The input file is part of a project reference located at `+`${o}, so ts-loader is looking for the `+"projects pre-built output on disk. Try running `tsc --build` "+"to build project references.")}e.clearDependencies();e.addDependency(d);s.validateSourceMapOncePerProject(a,e,d,l);const g=d+".map";const _=a.compiler.sys.readFile(d);const m=a.compiler.sys.readFile(g);makeSourceMapAndFinish(m,_,c,t,e,n,u,r)}else{const{outputText:i,sourceMapText:s}=n.transpileOnly?getTranspilationEmit(c,t,a,e):getEmit(o,c,a,e);makeSourceMapAndFinish(s,i,c,t,e,n,u,r)}}function makeSourceMapAndFinish(e,t,r,n,i,a,o,s){if(t===null||t===undefined){const e=!a.allowTsInNodeModules&&r.indexOf("node_modules")!==-1?" By default, ts-loader will not compile .ts files in node_modules.\n"+"You should not need to recompile .ts files there, but if you really want to, use the allowTsInNodeModules option.\n"+"See: https://github.com/Microsoft/TypeScript/issues/12358":"";throw new Error(`TypeScript emitted no output for ${r}.${e}`)}const{sourceMap:c,output:u}=makeSourceMap(e,t,r,n,i);if(!a.happyPackMode&&i._module.buildMeta!==undefined){i._module.buildMeta.tsLoaderFileVersion=o}s(null,u,c)}function getLoaderOptions(e){let t=c.indexOf(e._compiler);if(t===-1){t=c.push(e._compiler)-1}const r=n.getOptions(e)||{};const i=t+"_"+(r.instance||"default");if(!u.hasOwnProperty(i)){u[i]=new WeakMap}const a=u[i];if(a.has(r)){return a.get(r)}validateLoaderOptions(r);const o=makeLoaderOptions(i,r);a.set(r,o);return o}const l=["silent","logLevel","logInfoToStdOut","instance","compiler","context","configFile","transpileOnly","ignoreDiagnostics","errorFormatter","colors","compilerOptions","appendTsSuffixTo","appendTsxSuffixTo","onlyCompileBundledFiles","happyPackMode","getCustomTransformers","reportFiles","experimentalWatchApi","allowTsInNodeModules","experimentalFileCaching","projectReferences","resolveModuleName"];function validateLoaderOptions(e){const t=Object.keys(e);for(let e=0;e<t.length;e++){const r=t[e];const n=l.indexOf(r)===-1;if(n){throw new Error(`ts-loader was supplied with an unexpected loader option: ${r}\n\nPlease take a look at the options you are supplying; the following are valid options:\n${l.join(" / ")}\n`)}}if(e.context!==undefined&&!i.isAbsolute(e.context)){throw new Error(`Option 'context' has to be an absolute path. Given '${e.context}'.`)}}function makeLoaderOptions(e,t){const r=Object.assign({},{silent:false,logLevel:"WARN",logInfoToStdOut:false,compiler:"typescript",configFile:"tsconfig.json",context:undefined,transpileOnly:false,compilerOptions:{},appendTsSuffixTo:[],appendTsxSuffixTo:[],transformers:{},happyPackMode:false,colors:true,onlyCompileBundledFiles:false,reportFiles:[],experimentalWatchApi:false,allowTsInNodeModules:false,experimentalFileCaching:false},t);r.ignoreDiagnostics=s.arrify(r.ignoreDiagnostics).map(Number);r.logLevel=r.logLevel.toUpperCase();r.instance=e;r.transpileOnly=r.happyPackMode?true:r.transpileOnly;return r}function updateFileInCache(e,t,r){let n;let a=r.files.get(e);if(a===undefined){a=r.otherFiles.get(e);if(a!==undefined){r.otherFiles.delete(e);r.files.set(e,a)}else{if(r.watchHost!==undefined){n=r.compiler.FileWatcherEventKind.Created}a={version:0};r.files.set(e,a)}r.changedFilesList=true}if(r.watchHost!==undefined&&t===undefined){n=r.compiler.FileWatcherEventKind.Deleted}if(a.text!==t){a.version++;a.text=t;r.version++;if(r.watchHost!==undefined&&n===undefined){n=r.compiler.FileWatcherEventKind.Changed}}if(r.watchHost!==undefined&&n!==undefined){r.hasUnaccountedModifiedFiles=true;r.watchHost.invokeFileWatcher(e,n);r.watchHost.invokeDirectoryWatcher(i.dirname(e),e)}if(r.modifiedFiles===null||r.modifiedFiles===undefined){r.modifiedFiles=new Map}r.modifiedFiles.set(e,a);return a.version}function getEmit(e,t,r,n){const i=o.getEmitOutput(r,t);n.clearDependencies();n.addDependency(e);const c=[...r.files.keys()].filter(e=>e.match(a.dtsDtsxOrDtsDtsxMapRegex));const u=n.addDependency.bind(n);c.forEach(u);const l=r.dependencyGraph[t];const f=l===undefined?[]:l.map(({resolvedFileName:e,originalFileName:t})=>{const n=s.getAndCacheProjectReference(e,r);return n!==undefined?s.getAndCacheOutputJSFileName(e,n,r):t});if(f.length>0){f.forEach(u)}n._module.buildMeta.tsLoaderDefinitionFileVersions=c.concat(f).map(e=>e+"@"+(r.files.get(e)||{version:"?"}).version);const d=i.filter(e=>e.name.match(a.jsJsx)).pop();const p=d===undefined?undefined:d.text;const g=i.filter(e=>e.name.match(a.jsJsxMap)).pop();const _=g===undefined?undefined:g.text;return{outputText:p,sourceMapText:_}}function getTranspilationEmit(e,t,r,n){const{outputText:i,sourceMapText:a,diagnostics:o}=r.compiler.transpileModule(t,{compilerOptions:Object.assign({},r.compilerOptions,{rootDir:undefined}),transformers:r.transformers,reportDiagnostics:true,fileName:e});if(!r.loaderOptions.happyPackMode){const e=s.formatErrors(o,r.loaderOptions,r.colors,r.compiler,{module:n._module},n.context);n._module.errors.push(...e)}return{outputText:i,sourceMapText:a}}function makeSourceMap(e,t,r,i,a){if(e===undefined){return{output:t,sourceMap:undefined}}return{output:t.replace(/^\/\/# sourceMappingURL=[^\r\n]*/gm,""),sourceMap:Object.assign(JSON.parse(e),{sources:[n.getRemainingRequest(a)],file:r,sourcesContent:[i]})}}e.exports=loader},557:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(3551);const i=r(5747);const a=r(5622);const o=r(6619);const s=r(7464);const c=r(852);const u=r(9635);const l=r(3686);const f=r(9674);const d=r(6507);const p=r(573);const g={};function getTypeScriptInstance(e,t){if(g.hasOwnProperty(e.instance)){const t=g[e.instance];d.ensureProgram(t);return{instance:g[e.instance]}}const r=new n.default.constructor({enabled:e.colors});const i=l.makeLogger(e,r);const a=s.getCompiler(e,i);if(a.errorMessage!==undefined){return{error:d.makeError(r.red(a.errorMessage),undefined)}}return successfulTypeScriptInstance(e,t,i,r,a.compiler,a.compilerCompatible,a.compilerDetailsLogMessage)}t.getTypeScriptInstance=getTypeScriptInstance;function successfulTypeScriptInstance(e,t,r,n,l,_,m){const y=c.getConfigFile(l,n,t,e,_,r,m);if(y.configFileError!==undefined){const{message:e,file:t}=y.configFileError;return{error:d.makeError(n.red("error while reading tsconfig.json:"+u.EOL+e),t)}}const{configFilePath:h,configFile:v}=y;const T=e.context||a.dirname(h||"");const S=c.getConfigParseResult(l,v,T);if(S.errors.length>0&&!e.happyPackMode){const r=d.formatErrors(S.errors,e,n,l,{file:h},t.context);t._module.errors.push(...r);return{error:d.makeError(n.red("error while parsing tsconfig.json"),h)}}const b=s.getCompilerOptions(S);const x=new Map;const C=new Map;let{getCustomTransformers:E}=e;let D=Function.prototype;if(typeof E==="function"){D=E}else if(typeof E==="string"){try{E=require(E)}catch(t){throw new Error(`Failed to load customTransformers from "${e.getCustomTransformers}": ${t.message}`)}if(typeof E!=="function"){throw new Error(`Custom transformers in "${e.getCustomTransformers}" should export a function, got ${typeof D}`)}D=E}if(e.transpileOnly){const r=S.projectReferences!==undefined?l.createProgram({rootNames:S.fileNames,options:S.options,projectReferences:S.projectReferences}):l.createProgram([],b);if(!e.happyPackMode){const i=r.getOptionsDiagnostics();const a=d.formatErrors(i,e,n,l,{file:h||"tsconfig.json"},t.context);t._module.errors.push(...a)}g[e.instance]={compiler:l,compilerOptions:b,loaderOptions:e,files:x,otherFiles:C,program:r,dependencyGraph:{},reverseDependencyGraph:{},transformers:D(),colors:n};return{instance:g[e.instance]}}let k;try{const t=e.onlyCompileBundledFiles?S.fileNames.filter(e=>u.dtsDtsxOrDtsDtsxMapRegex.test(e)):S.fileNames;t.forEach(e=>{k=a.normalize(e);x.set(k,{text:i.readFileSync(k,"utf-8"),version:0})})}catch(e){return{error:d.makeError(n.red(`A file specified in tsconfig.json could not be found: ${k}`),k)}}const N=S.options.allowJs===true?/\.tsx?$|\.jsx?$/i:/\.tsx?$/i;const A=g[e.instance]={compiler:l,compilerOptions:b,loaderOptions:e,files:x,otherFiles:C,languageService:null,version:0,transformers:D(),dependencyGraph:{},reverseDependencyGraph:{},modifiedFiles:null,colors:n};if(!t._compiler.hooks){throw new Error("You may be using an old version of webpack; please check you're using at least version 4")}if(e.experimentalWatchApi&&l.createWatchProgram){r.logInfo("Using watch api");A.watchHost=f.makeWatchHost(N,r,t,A,e.appendTsSuffixTo,e.appendTsxSuffixTo,S.projectReferences);A.watchOfFilesAndCompilerOptions=l.createWatchProgram(A.watchHost);A.program=A.watchOfFilesAndCompilerOptions.getProgram().getProgram()}else{const n=f.makeServicesHost(N,r,t,A,e.experimentalFileCaching,S.projectReferences);A.languageService=l.createLanguageService(n.servicesHost,l.createDocumentRegistry());if(n.clearCache!==null){t._compiler.hooks.watchRun.tap("ts-loader",n.clearCache)}}t._compiler.hooks.afterCompile.tapAsync("ts-loader",o.makeAfterCompile(A,h));t._compiler.hooks.watchRun.tapAsync("ts-loader",p.makeWatchRun(A));return{instance:A}}function getEmitOutput(e,t){const r=d.ensureProgram(e);if(r!==undefined){const n=[];const i=(e,t,r)=>n.push({name:e,writeByteOrderMark:r,text:t});const a=r.getSourceFile(t);if(a!==undefined||!d.isUsingProjectReferences(e)){r.emit(a,i,undefined,false,e.transformers)}return n}else{return e.languageService.getProgram().getSourceFile(t)===undefined?[]:e.languageService.getEmitOutput(t).outputFiles}}t.getEmitOutput=getEmitOutput},3686:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(7082);var i;(function(e){e[e["INFO"]=1]="INFO";e[e["WARN"]=2]="WARN";e[e["ERROR"]=3]="ERROR"})(i||(i={}));const a=new n.Console(process.stderr);const o=new n.Console(process.stdout);const s=e=>{};const c=e=>e.silent?(e,t)=>{}:(e,t)=>console.log.call(e,t);const u=(e,t)=>r=>t(e.logInfoToStdOut?o:a,r);const l=(e,t,r)=>i[e.logLevel]<=i.INFO?n=>t(e.logInfoToStdOut?o:a,r(n)):s;const f=(e,t,r)=>i[e.logLevel]<=i.ERROR?e=>t(a,r(e)):s;const d=(e,t,r)=>i[e.logLevel]<=i.WARN?e=>t(a,r(e)):s;function makeLogger(e,t){const r=c(e);return{log:u(e,r),logInfo:l(e,r,t.green),logWarning:d(e,r,t.yellow),logError:f(e,r,t.red)}}t.makeLogger=makeLogger},8535:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(1324);function makeResolver(e){return n.create.sync(e.resolve)}t.makeResolver=makeResolver},9674:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(5622);const i=r(9635);const a=r(8535);const o=r(6507);function makeServicesHost(e,t,r,s,c,u){const{compiler:l,compilerOptions:f,files:d,loaderOptions:{appendTsSuffixTo:p,appendTsxSuffixTo:g,resolveModuleName:_}}=s;const m=f.newLine===i.CarriageReturnLineFeedCode?i.CarriageReturnLineFeed:f.newLine===i.LineFeedCode?i.LineFeed:i.EOL;const y=a.makeResolver(r._compiler.options);const h=(e,t)=>l.sys.readFile(e,t)||o.readFile(e,t);const v=e=>l.sys.fileExists(e)||o.readFile(e)!==undefined;const T={fileExists:v,readFile:h,realpath:l.sys.realpath,directoryExists:l.sys.directoryExists};const S=c?addCache(T):null;const b=()=>r.context;const x={getProjectVersion:()=>`${s.version}`,getProjectReferences:()=>u,getScriptFileNames:()=>[...d.keys()].filter(t=>t.match(e)),getScriptVersion:e=>{e=n.normalize(e);const t=d.get(e);return t===undefined?"":t.version.toString()},getScriptSnapshot:e=>{e=n.normalize(e);let t=d.get(e);if(t===undefined){const r=o.readFile(e);if(r===undefined){return undefined}t={version:0,text:r};d.set(e,t)}return l.ScriptSnapshot.fromString(t.text)},getDirectories:l.sys.getDirectories,directoryExists:T.directoryExists,useCaseSensitiveFileNames:()=>l.sys.useCaseSensitiveFileNames,realpath:T.realpath,fileExists:T.fileExists,readFile:T.readFile,readDirectory:l.sys.readDirectory,getCurrentDirectory:b,getCompilationSettings:()=>f,getDefaultLibFileName:e=>l.getDefaultLibFilePath(e),getNewLine:()=>m,trace:t.log,log:t.log,resolveModuleNames:(t,r)=>resolveModuleNames(y,T,p,g,e,s,t,r,getResolutionStrategy,_),getCustomTransformers:()=>s.transformers};return{servicesHost:x,clearCache:S}}t.makeServicesHost=makeServicesHost;function makeWatchHost(e,t,r,s,c,u,l){const{compiler:f,compilerOptions:d,files:p,otherFiles:g}=s;const _=d.newLine===i.CarriageReturnLineFeedCode?i.CarriageReturnLineFeed:d.newLine===i.LineFeedCode?i.LineFeed:i.EOL;const m=a.makeResolver(r._compiler.options);const y=(e,t)=>f.sys.readFile(e,t)||o.readFile(e,t);const h={fileExists:fileExists,readFile:y,realpath:f.sys.realpath};const v=()=>r.context;const T={};const S={};const b={};const x={rootFiles:getRootFileNames(),options:d,useCaseSensitiveFileNames:()=>f.sys.useCaseSensitiveFileNames,getNewLine:()=>_,getCurrentDirectory:v,getDefaultLibFileName:e=>f.getDefaultLibFilePath(e),fileExists:fileExists,readFile:readFileWithCachingText,directoryExists:e=>f.sys.directoryExists(n.normalize(e)),getDirectories:e=>f.sys.getDirectories(n.normalize(e)),readDirectory:(e,t,r,i,a)=>f.sys.readDirectory(n.normalize(e),t,r,i,a),realpath:e=>f.sys.resolvePath(n.normalize(e)),trace:e=>t.log(e),watchFile:watchFile,watchDirectory:watchDirectory,resolveModuleNames:(t,r)=>resolveModuleNames(m,h,c,u,e,s,t,r,getResolutionStrategy),invokeFileWatcher:invokeFileWatcher,invokeDirectoryWatcher:invokeDirectoryWatcher,updateRootFileNames:()=>{s.changedFilesList=false;if(s.watchOfFilesAndCompilerOptions!==undefined){s.watchOfFilesAndCompilerOptions.updateRootFileNames(getRootFileNames())}},createProgram:l===undefined?f.createAbstractBuilder:createBuilderProgramWithReferences};return x;function getRootFileNames(){return[...p.keys()].filter(t=>t.match(e))}function readFileWithCachingText(e,t){e=n.normalize(e);const r=p.get(e)||g.get(e);if(r!==undefined){return r.text}const i=y(e,t);if(i===undefined){return undefined}g.set(e,{version:0,text:i});return i}function fileExists(e){const t=n.normalize(e);return p.has(t)||f.sys.fileExists(t)}function invokeWatcherCallbacks(e,t,r){if(e!==undefined){const n=e.slice();for(const e of n){e(t,r)}}}function invokeFileWatcher(e,t){e=n.normalize(e);invokeWatcherCallbacks(T[e],e,t)}function invokeDirectoryWatcher(e,t){e=n.normalize(e);invokeWatcherCallbacks(S[e],t);invokeRecursiveDirectoryWatcher(e,t)}function invokeRecursiveDirectoryWatcher(e,t){e=n.normalize(e);invokeWatcherCallbacks(b[e],t);const r=n.dirname(e);if(e!==r){invokeRecursiveDirectoryWatcher(r,t)}}function createWatcher(e,t,r){e=n.normalize(e);const i=t[e];if(i===undefined){t[e]=[r]}else{i.push(r)}return{close:()=>{const n=t[e];if(n!==undefined){o.unorderedRemoveItem(n,r)}}}}function watchFile(e,t,r){return createWatcher(e,T,t)}function watchDirectory(e,t,r){return createWatcher(e,r===true?b:S,t)}function createBuilderProgramWithReferences(e,t,r,n,i){const a=f.createProgram({rootNames:e,options:t,host:r,oldProgram:n&&n.getProgram(),configFileParsingDiagnostics:i,projectReferences:l});const o=r;return f.createAbstractBuilder(a,o,n,i)}}t.makeWatchHost=makeWatchHost;function resolveModuleNames(e,t,r,n,i,a,o,s,c,u){const l=o.map(o=>resolveModuleName(e,t,r,n,i,a,o,s,c,u));populateDependencyGraphs(l,a,s);return l}function isJsImplementationOfTypings(e,t){return e.resolvedFileName.endsWith("js")&&/\.d\.ts$/.test(t.resolvedFileName)}function applyTsResolver(e,t,r,n,i){return e.resolveModuleName(t,r,n,i)}function resolveModuleName(e,t,r,i,a,s,c,u,l,f){const{compiler:d,compilerOptions:p}=s;let g;try{const t=e(undefined,n.normalize(n.dirname(u)),c);const s=r.length>0||i.length>0?o.appendSuffixesIfMatch({".ts":r,".tsx":i},t):t;if(s.match(a)!==null){g={resolvedFileName:s,originalFileName:t}}}catch(e){}const _=f!==undefined?f(c,u,p,t,(e,t,r,n)=>applyTsResolver(d,e,t,r,n)):applyTsResolver(d,c,u,p,t);if(_.resolvedModule!==undefined){const e=n.normalize(_.resolvedModule.resolvedFileName);const t={originalFileName:e,resolvedFileName:e,isExternalLibraryImport:_.resolvedModule.isExternalLibraryImport};return l(g,t)}return g}function getResolutionStrategy(e,t){return e===undefined||e.resolvedFileName===t.resolvedFileName||isJsImplementationOfTypings(e,t)?t:e}function populateDependencyGraphs(e,t,r){e=e.filter(e=>e!==null&&e!==undefined);t.dependencyGraph[n.normalize(r)]=e;e.forEach(e=>{if(t.reverseDependencyGraph[e.resolvedFileName]===undefined){t.reverseDependencyGraph[e.resolvedFileName]={}}t.reverseDependencyGraph[e.resolvedFileName][n.normalize(r)]=true})}const s=["fileExists","directoryExists","realpath"];function addCache(e){const t=[];s.forEach(r=>{const n=e[r];if(n!==undefined){const i=createCache(n);e[r]=i.getCached;t.push(i.clear)}});return()=>t.forEach(e=>e())}function createCache(e){const t=new Map;return{clear:()=>{t.clear()},getCached:r=>{let n=t.get(r);if(n!==undefined){return n}n=e(r);t.set(r,n);return n}}}},6507:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(5747);const i=r(4930);const a=r(5622);const o=r(3779);const s=r(9635);function defaultErrorFormatter(e,t){const r=e.severity==="warning"?t.bold.yellow:t.bold.red;return t.grey("[tsl] ")+r(e.severity.toUpperCase())+(e.file===""?"":r(" in ")+t.bold.cyan(`${e.file}(${e.line},${e.character})`))+s.EOL+r(` TS${e.code}: ${e.content}`)}function formatErrors(e,t,r,n,o,c){return e===undefined?[]:e.filter(e=>{if(t.ignoreDiagnostics.indexOf(e.code)!==-1){return false}if(t.reportFiles.length>0&&e.file!==undefined){const r=a.relative(c,e.file.fileName);const n=i([r],t.reportFiles);if(n.length===0){return false}}return true}).map(e=>{const i=e.file;const u=i===undefined?undefined:i.getLineAndCharacterOfPosition(e.start);const l={code:e.code,severity:n.DiagnosticCategory[e.category].toLowerCase(),content:n.flattenDiagnosticMessageText(e.messageText,s.EOL),file:i===undefined?"":a.normalize(i.fileName),line:u===undefined?0:u.line+1,character:u===undefined?0:u.character+1,context:c};const f=t.errorFormatter===undefined?defaultErrorFormatter(l,r):t.errorFormatter(l,r);const d=makeError(f,o.file===undefined?l.file:o.file,u===undefined?undefined:{line:l.line,character:l.character});return Object.assign(d,o)})}t.formatErrors=formatErrors;function readFile(e,t="utf8"){e=a.normalize(e);try{return n.readFileSync(e,t)}catch(e){return undefined}}t.readFile=readFile;function makeError(e,t,r){return{message:e,location:r,file:t,loaderSource:"ts-loader"}}t.makeError=makeError;function appendSuffixIfMatch(e,t,r){if(e.length>0){for(const n of e){if(t.match(n)!==null){return t+r}}}return t}t.appendSuffixIfMatch=appendSuffixIfMatch;function appendSuffixesIfMatch(e,t){let r=t;for(const t in e){r=appendSuffixIfMatch(e[t],r,t)}return r}t.appendSuffixesIfMatch=appendSuffixesIfMatch;function unorderedRemoveItem(e,t){for(let r=0;r<e.length;r++){if(e[r]===t){e[r]=e[e.length-1];e.pop();return true}}return false}t.unorderedRemoveItem=unorderedRemoveItem;function collectAllDependants(e,t,r={}){const n={};n[t]=true;r[t]=true;const i=e[t];if(i!==undefined){Object.keys(i).forEach(t=>{if(!r[t]){collectAllDependants(e,t,r).forEach(e=>n[e]=true)}})}return Object.keys(n)}t.collectAllDependants=collectAllDependants;function collectAllDependencies(e,t,r={}){const n={};n[t]=true;r[t]=true;const i=e[t];if(i!==undefined){i.forEach(t=>{if(!r[t.originalFileName]){collectAllDependencies(e,t.resolvedFileName,r).forEach(e=>n[e]=true)}})}return Object.keys(n)}t.collectAllDependencies=collectAllDependencies;function arrify(e){if(e===null||e===undefined){return[]}return Array.isArray(e)?e:[e]}t.arrify=arrify;function ensureProgram(e){if(e&&e.watchHost){if(e.hasUnaccountedModifiedFiles){if(e.changedFilesList){e.watchHost.updateRootFileNames()}if(e.watchOfFilesAndCompilerOptions){e.program=e.watchOfFilesAndCompilerOptions.getProgram().getProgram()}e.hasUnaccountedModifiedFiles=false}return e.program}if(e.languageService){return e.languageService.getProgram()}return e.program}t.ensureProgram=ensureProgram;function supportsProjectReferences(e){const t=ensureProgram(e);return t&&!!t.getProjectReferences}t.supportsProjectReferences=supportsProjectReferences;function isUsingProjectReferences(e){if(e.loaderOptions.projectReferences&&supportsProjectReferences(e)){const t=ensureProgram(e);return Boolean(t&&t.getProjectReferences())}return false}t.isUsingProjectReferences=isUsingProjectReferences;function getAndCacheProjectReference(e,t){const r=t.files.get(e);if(r!==undefined&&r.projectReference){return r.projectReference.project}const n=getProjectReferenceForFile(e,t);if(r!==undefined){r.projectReference={project:n}}return n}t.getAndCacheProjectReference=getAndCacheProjectReference;function getResolvedProjectReferences(e){const t=e.getResolvedProjectReferences||e.getProjectReferences;if(t){return t()}return}function getProjectReferenceForFile(e,t){if(isUsingProjectReferences(t)){const r=ensureProgram(t);return r&&getResolvedProjectReferences(r).find(t=>t&&t.commandLine.fileNames.some(t=>a.normalize(t)===e)||false)}return}function validateSourceMapOncePerProject(e,t,r,n){const{projectsMissingSourceMaps:i=new Set}=e;if(!i.has(n.sourceFile.fileName)){e.projectsMissingSourceMaps=i;i.add(n.sourceFile.fileName);const o=r+".map";if(!e.compiler.sys.fileExists(o)){const[e,i]=[a.relative(t.rootContext,r),a.relative(t.rootContext,n.sourceFile.fileName)];t.emitWarning(new Error("Could not find source map file for referenced project output "+`${e}. Ensure the 'sourceMap' compiler option `+`is enabled in ${i} to ensure Webpack `+"can map project references to the appropriate source files."))}}}t.validateSourceMapOncePerProject=validateSourceMapOncePerProject;function getAndCacheOutputJSFileName(e,t,r){const n=r.files.get(e);if(n&&n.projectReference&&n.projectReference.outputFileName){return n.projectReference.outputFileName}const i=getOutputJavaScriptFileName(e,t);if(n!==undefined){n.projectReference=n.projectReference||{project:t};n.projectReference.outputFileName=i}return i}t.getAndCacheOutputJSFileName=getAndCacheOutputJSFileName;function getOutputJavaScriptFileName(e,t){const{options:r}=t.commandLine;const n=r.rootDir||a.dirname(t.sourceFile.fileName);const i=a.relative(n,e);const c=a.resolve(r.outDir||n,i);const u=s.jsonRegex.test(e)?".json":s.tsxRegex.test(e)&&r.jsx===o.JsxEmit.Preserve?".jsx":".js";return c.replace(s.extensionRegex,u)}},573:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});const n=r(5622);const i=r(9635);const a=r(6507);function makeWatchRun(e){const t=new Map;const r=0;return(n,a)=>{if(null===e.modifiedFiles){e.modifiedFiles=new Map}const o=n.fileTimestamps;for(const[n,a]of o){if(a>(t.get(n)||r)&&n.match(i.tsTsxJsJsxRegex)!==null){continue}t.set(n,a);updateFile(e,n)}for(const t of e.files.keys()){if(t.match(i.dtsDtsxOrDtsDtsxMapRegex)!==null&&t.match(i.nodeModules)===null){updateFile(e,t)}}a()}}t.makeWatchRun=makeWatchRun;function updateFile(e,t){const r=n.normalize(t);const i=e.files.get(r)||e.otherFiles.get(r);if(i!==undefined){i.text=a.readFile(r)||"";i.version++;e.version++;e.modifiedFiles.set(r,i);if(e.watchHost!==undefined){e.watchHost.invokeFileWatcher(r,e.compiler.FileWatcherEventKind.Changed)}}}},2070:(e,t,r)=>{var n=r(2956);e.exports=n},9577:(e,t,r)=>{"use strict";e=r.nmd(e);const n=r(8215);const i=(e,t)=>(function(){const r=e.apply(n,arguments);return`[${r+t}m`});const a=(e,t)=>(function(){const r=e.apply(n,arguments);return`[${38+t};5;${r}m`});const o=(e,t)=>(function(){const r=e.apply(n,arguments);return`[${38+t};2;${r[0]};${r[1]};${r[2]}m`});function assembleStyles(){const e=new Map;const t={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],gray:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};t.color.grey=t.color.gray;for(const r of Object.keys(t)){const n=t[r];for(const r of Object.keys(n)){const i=n[r];t[r]={open:`[${i[0]}m`,close:`[${i[1]}m`};n[r]=t[r];e.set(i[0],i[1])}Object.defineProperty(t,r,{value:n,enumerable:false});Object.defineProperty(t,"codes",{value:e,enumerable:false})}const r=e=>e;const s=(e,t,r)=>[e,t,r];t.color.close="";t.bgColor.close="";t.color.ansi={ansi:i(r,0)};t.color.ansi256={ansi256:a(r,0)};t.color.ansi16m={rgb:o(s,0)};t.bgColor.ansi={ansi:i(r,10)};t.bgColor.ansi256={ansi256:a(r,10)};t.bgColor.ansi16m={rgb:o(s,10)};for(let e of Object.keys(n)){if(typeof n[e]!=="object"){continue}const r=n[e];if(e==="ansi16"){e="ansi"}if("ansi16"in r){t.color.ansi[e]=i(r.ansi16,0);t.bgColor.ansi[e]=i(r.ansi16,10)}if("ansi256"in r){t.color.ansi256[e]=a(r.ansi256,0);t.bgColor.ansi256[e]=a(r.ansi256,10)}if("rgb"in r){t.color.ansi16m[e]=o(r.rgb,0);t.bgColor.ansi16m[e]=o(r.rgb,10)}}return t}Object.defineProperty(e,"exports",{enumerable:true,get:assembleStyles})},3551:(e,t,r)=>{"use strict";const n=r(8732);const i=r(9577);const a=r(1816).stdout;const o=r(5333);const s=process.platform==="win32"&&!(process.env.TERM||"").toLowerCase().startsWith("xterm");const c=["ansi","ansi","ansi256","ansi16m"];const u=new Set(["gray"]);const l=Object.create(null);function applyOptions(e,t){t=t||{};const r=a?a.level:0;e.level=t.level===undefined?r:t.level;e.enabled="enabled"in t?t.enabled:e.level>0}function Chalk(e){if(!this||!(this instanceof Chalk)||this.template){const t={};applyOptions(t,e);t.template=function(){const e=[].slice.call(arguments);return chalkTag.apply(null,[t.template].concat(e))};Object.setPrototypeOf(t,Chalk.prototype);Object.setPrototypeOf(t.template,t);t.template.constructor=Chalk;return t.template}applyOptions(this,e)}if(s){i.blue.open=""}for(const e of Object.keys(i)){i[e].closeRe=new RegExp(n(i[e].close),"g");l[e]={get(){const t=i[e];return build.call(this,this._styles?this._styles.concat(t):[t],this._empty,e)}}}l.visible={get(){return build.call(this,this._styles||[],true,"visible")}};i.color.closeRe=new RegExp(n(i.color.close),"g");for(const e of Object.keys(i.color.ansi)){if(u.has(e)){continue}l[e]={get(){const t=this.level;return function(){const r=i.color[c[t]][e].apply(null,arguments);const n={open:r,close:i.color.close,closeRe:i.color.closeRe};return build.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}}}i.bgColor.closeRe=new RegExp(n(i.bgColor.close),"g");for(const e of Object.keys(i.bgColor.ansi)){if(u.has(e)){continue}const t="bg"+e[0].toUpperCase()+e.slice(1);l[t]={get(){const t=this.level;return function(){const r=i.bgColor[c[t]][e].apply(null,arguments);const n={open:r,close:i.bgColor.close,closeRe:i.bgColor.closeRe};return build.call(this,this._styles?this._styles.concat(n):[n],this._empty,e)}}}}const f=Object.defineProperties(()=>{},l);function build(e,t,r){const n=function(){return applyStyle.apply(n,arguments)};n._styles=e;n._empty=t;const i=this;Object.defineProperty(n,"level",{enumerable:true,get(){return i.level},set(e){i.level=e}});Object.defineProperty(n,"enabled",{enumerable:true,get(){return i.enabled},set(e){i.enabled=e}});n.hasGrey=this.hasGrey||r==="gray"||r==="grey";n.__proto__=f;return n}function applyStyle(){const e=arguments;const t=e.length;let r=String(arguments[0]);if(t===0){return""}if(t>1){for(let n=1;n<t;n++){r+=" "+e[n]}}if(!this.enabled||this.level<=0||!r){return this._empty?"":r}const n=i.dim.open;if(s&&this.hasGrey){i.dim.open=""}for(const e of this._styles.slice().reverse()){r=e.open+r.replace(e.closeRe,e.open)+e.close;r=r.replace(/\r?\n/g,`${e.close}$&${e.open}`)}i.dim.open=n;return r}function chalkTag(e,t){if(!Array.isArray(t)){return[].slice.call(arguments,1).join(" ")}const r=[].slice.call(arguments,2);const n=[t.raw[0]];for(let e=1;e<t.length;e++){n.push(String(r[e-1]).replace(/[{}\\]/g,"\\$&"));n.push(String(t.raw[e]))}return o(e,n.join(""))}Object.defineProperties(Chalk.prototype,l);e.exports=Chalk();e.exports.supportsColor=a;e.exports.default=e.exports},5333:e=>{"use strict";const t=/(?:\\(u[a-f\d]{4}|x[a-f\d]{2}|.))|(?:\{(~)?(\w+(?:\([^)]*\))?(?:\.\w+(?:\([^)]*\))?)*)(?:[ \t]|(?=\r?\n)))|(\})|((?:.|[\r\n\f])+?)/gi;const r=/(?:^|\.)(\w+)(?:\(([^)]*)\))?/g;const n=/^(['"])((?:\\.|(?!\1)[^\\])*)\1$/;const i=/\\(u[a-f\d]{4}|x[a-f\d]{2}|.)|([^\\])/gi;const a=new Map([["n","\n"],["r","\r"],["t","\t"],["b","\b"],["f","\f"],["v","\v"],["0","\0"],["\\","\\"],["e",""],["a",""]]);function unescape(e){if(e[0]==="u"&&e.length===5||e[0]==="x"&&e.length===3){return String.fromCharCode(parseInt(e.slice(1),16))}return a.get(e)||e}function parseArguments(e,t){const r=[];const a=t.trim().split(/\s*,\s*/g);let o;for(const t of a){if(!isNaN(t)){r.push(Number(t))}else if(o=t.match(n)){r.push(o[2].replace(i,(e,t,r)=>t?unescape(t):r))}else{throw new Error(`Invalid Chalk template style argument: ${t} (in style '${e}')`)}}return r}function parseStyle(e){r.lastIndex=0;const t=[];let n;while((n=r.exec(e))!==null){const e=n[1];if(n[2]){const r=parseArguments(e,n[2]);t.push([e].concat(r))}else{t.push([e])}}return t}function buildStyle(e,t){const r={};for(const e of t){for(const t of e.styles){r[t[0]]=e.inverse?null:t.slice(1)}}let n=e;for(const e of Object.keys(r)){if(Array.isArray(r[e])){if(!(e in n)){throw new Error(`Unknown Chalk style: ${e}`)}if(r[e].length>0){n=n[e].apply(n,r[e])}else{n=n[e]}}}return n}e.exports=((e,r)=>{const n=[];const i=[];let a=[];r.replace(t,(t,r,o,s,c,u)=>{if(r){a.push(unescape(r))}else if(s){const t=a.join("");a=[];i.push(n.length===0?t:buildStyle(e,n)(t));n.push({inverse:o,styles:parseStyle(s)})}else if(c){if(n.length===0){throw new Error("Found extraneous } in Chalk template literal")}i.push(buildStyle(e,n)(a.join("")));a=[];n.pop()}else{a.push(u)}});i.push(a.join(""));if(n.length>0){const e=`Chalk template literal is missing ${n.length} closing bracket${n.length===1?"":"s"} (\`}\`)`;throw new Error(e)}return i.join("")})},8394:(e,t,r)=>{"use strict";var n=r(977);var i=r(8586);var a=typeof Reflect!=="undefined"&&Reflect.defineProperty?Reflect.defineProperty:Object.defineProperty;e.exports=function defineProperty(e,t,r){if(!n(e)&&typeof e!=="function"&&!Array.isArray(e)){throw new TypeError("expected an object, function, or array")}if(typeof t!=="string"){throw new TypeError('expected "key" to be a string')}if(i(r)){a(e,t,r);return e}a(e,t,{configurable:true,enumerable:false,writable:true,value:r});return e}},7418:(e,t,r)=>{"use strict";var n=r(8530);var i=r(7954);e.exports=Object.assign||function(e){if(e===null||typeof e==="undefined"){throw new TypeError("Cannot convert undefined or null to object")}if(!isObject(e)){e={}}for(var t=1;t<arguments.length;t++){var r=arguments[t];if(isString(r)){r=toObject(r)}if(isObject(r)){assign(e,r);i(e,r)}}return e};function assign(e,t){for(var r in t){if(hasOwn(t,r)){e[r]=t[r]}}}function isString(e){return e&&typeof e==="string"}function toObject(e){var t={};for(var r in e){t[r]=e[r]}return t}function isObject(e){return e&&typeof e==="object"||n(e)}function hasOwn(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function isEnum(e,t){return Object.prototype.propertyIsEnumerable.call(e,t)}},7239:e=>{"use strict";e.exports=((e,t)=>{t=t||process.argv;const r=e.startsWith("-")?"":e.length===1?"-":"--";const n=t.indexOf(r+e);const i=t.indexOf("--");return n!==-1&&(i===-1?true:n<i)})},8530:(e,t,r)=>{"use strict";var n=r(1221);e.exports=function isExtendable(e){return n(e)||typeof e==="function"||Array.isArray(e)}},5536:e=>{var t=Object.prototype.toString;e.exports=function kindOf(e){if(e===void 0)return"undefined";if(e===null)return"null";var r=typeof e;if(r==="boolean")return"boolean";if(r==="string")return"string";if(r==="number")return"number";if(r==="symbol")return"symbol";if(r==="function"){return isGeneratorFn(e)?"generatorfunction":"function"}if(isArray(e))return"array";if(isBuffer(e))return"buffer";if(isArguments(e))return"arguments";if(isDate(e))return"date";if(isError(e))return"error";if(isRegexp(e))return"regexp";switch(ctorName(e)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(isGeneratorObj(e)){return"generator"}r=t.call(e);switch(r){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return r.slice(8,-1).toLowerCase().replace(/\s/g,"")};function ctorName(e){return e.constructor?e.constructor.name:null}function isArray(e){if(Array.isArray)return Array.isArray(e);return e instanceof Array}function isError(e){return e instanceof Error||typeof e.message==="string"&&e.constructor&&typeof e.constructor.stackTraceLimit==="number"}function isDate(e){if(e instanceof Date)return true;return typeof e.toDateString==="function"&&typeof e.getDate==="function"&&typeof e.setDate==="function"}function isRegexp(e){if(e instanceof RegExp)return true;return typeof e.flags==="string"&&typeof e.ignoreCase==="boolean"&&typeof e.multiline==="boolean"&&typeof e.global==="boolean"}function isGeneratorFn(e,t){return ctorName(e)==="GeneratorFunction"}function isGeneratorObj(e){return typeof e.throw==="function"&&typeof e.return==="function"&&typeof e.next==="function"}function isArguments(e){try{if(typeof e.length==="number"&&typeof e.callee==="function"){return true}}catch(e){if(e.message.indexOf("callee")!==-1){return true}}return false}function isBuffer(e){if(e.constructor&&typeof e.constructor.isBuffer==="function"){return e.constructor.isBuffer(e)}return false}},4930:(e,t,r)=>{"use strict";var n=r(1669);var i=r(4495);var a=r(9532);var o=r(7418);var s=r(7111);var c=r(9841);var u=r(4832);var l=r(5463);var f=1024*64;function micromatch(e,t,r){t=l.arrayify(t);e=l.arrayify(e);var n=t.length;if(e.length===0||n===0){return[]}if(n===1){return micromatch.match(e,t[0],r)}var i=[];var a=[];var o=-1;while(++o<n){var s=t[o];if(typeof s==="string"&&s.charCodeAt(0)===33){i.push.apply(i,micromatch.match(e,s.slice(1),r))}else{a.push.apply(a,micromatch.match(e,s,r))}}var c=l.diff(a,i);if(!r||r.nodupes!==false){return l.unique(c)}return c}micromatch.match=function(e,t,r){if(Array.isArray(t)){throw new TypeError("expected pattern to be a string")}var n=l.unixify(r);var i=memoize("match",t,r,micromatch.matcher);var a=[];e=l.arrayify(e);var o=e.length;var s=-1;while(++s<o){var c=e[s];if(c===t||i(c)){a.push(l.value(c,n,r))}}if(typeof r==="undefined"){return l.unique(a)}if(a.length===0){if(r.failglob===true){throw new Error('no matches found for "'+t+'"')}if(r.nonull===true||r.nullglob===true){return[r.unescape?l.unescape(t):t]}}if(r.ignore){a=micromatch.not(a,r.ignore,r)}return r.nodupes!==false?l.unique(a):a};micromatch.isMatch=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(isEmptyString(e)||isEmptyString(t)){return false}var i=l.equalsPattern(r);if(i(e)){return true}var a=memoize("isMatch",t,r,micromatch.matcher);return a(e)};micromatch.some=function(e,t,r){if(typeof e==="string"){e=[e]}for(var n=0;n<e.length;n++){if(micromatch(e[n],t,r).length===1){return true}}return false};micromatch.every=function(e,t,r){if(typeof e==="string"){e=[e]}for(var n=0;n<e.length;n++){if(micromatch(e[n],t,r).length!==1){return false}}return true};micromatch.any=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(isEmptyString(e)||isEmptyString(t)){return false}if(typeof t==="string"){t=[t]}for(var i=0;i<t.length;i++){if(micromatch.isMatch(e,t[i],r)){return true}}return false};micromatch.all=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(typeof t==="string"){t=[t]}for(var i=0;i<t.length;i++){if(!micromatch.isMatch(e,t[i],r)){return false}}return true};micromatch.not=function(e,t,r){var n=o({},r);var i=n.ignore;delete n.ignore;var a=l.unixify(n);e=l.arrayify(e).map(a);var s=l.diff(e,micromatch(e,t,n));if(i){s=l.diff(s,micromatch(e,i))}return n.nodupes!==false?l.unique(s):s};micromatch.contains=function(e,t,r){if(typeof e!=="string"){throw new TypeError('expected a string: "'+n.inspect(e)+'"')}if(typeof t==="string"){if(isEmptyString(e)||isEmptyString(t)){return false}var i=l.equalsPattern(t,r);if(i(e)){return true}var a=l.containsPattern(t,r);if(a(e)){return true}}var s=o({},r,{contains:true});return micromatch.any(e,t,s)};micromatch.matchBase=function(e,t){if(e&&e.indexOf("/")!==-1||!t)return false;return t.basename===true||t.matchBase===true};micromatch.matchKeys=function(e,t,r){if(!l.isObject(e)){throw new TypeError("expected the first argument to be an object")}var n=micromatch(Object.keys(e),t,r);return l.pick(e,n)};micromatch.matcher=function matcher(e,t){if(Array.isArray(e)){return compose(e,t,matcher)}if(e instanceof RegExp){return test(e)}if(!l.isString(e)){throw new TypeError("expected pattern to be an array, string or regex")}if(!l.hasSpecialChars(e)){if(t&&t.nocase===true){e=e.toLowerCase()}return l.matchPath(e,t)}var r=micromatch.makeRe(e,t);if(micromatch.matchBase(e,t)){return l.matchBasename(r,t)}function test(e){var r=l.equalsPattern(t);var n=l.unixify(t);return function(t){if(r(t)){return true}if(e.test(n(t))){return true}return false}}var n=test(r);Object.defineProperty(n,"result",{configurable:true,enumerable:false,value:r.result});return n};micromatch.capture=function(e,t,r){var n=micromatch.makeRe(e,o({capture:true},r));var i=l.unixify(r);function match(){return function(e){var t=n.exec(i(e));if(!t){return null}return t.slice(1)}}var a=memoize("capture",e,r,match);return a(t)};micromatch.makeRe=function(e,t){if(typeof e!=="string"){throw new TypeError("expected pattern to be a string")}if(e.length>f){throw new Error("expected pattern to be less than "+f+" characters")}function makeRe(){var r=micromatch.create(e,t);var n=[];var i=r.map(function(e){e.ast.state=e.state;n.push(e.ast);return e.output});var o=a(i.join("|"),t);Object.defineProperty(o,"result",{configurable:true,enumerable:false,value:n});return o}return memoize("makeRe",e,t,makeRe)};micromatch.braces=function(e,t){if(typeof e!=="string"&&!Array.isArray(e)){throw new TypeError("expected pattern to be an array or string")}function expand(){if(t&&t.nobrace===true||!/\{.*\}/.test(e)){return l.arrayify(e)}return i(e,t)}return memoize("braces",e,t,expand)};micromatch.braceExpand=function(e,t){var r=o({},t,{expand:true});return micromatch.braces(e,r)};micromatch.create=function(e,t){return memoize("create",e,t,function(){function create(e,t){return micromatch.compile(micromatch.parse(e,t),t)}e=micromatch.braces(e,t);var r=e.length;var n=-1;var i=[];while(++n<r){i.push(create(e[n],t))}return i})};micromatch.parse=function(e,t){if(typeof e!=="string"){throw new TypeError("expected a string")}function parse(){var r=l.instantiate(null,t);c(r,t);var n=r.parse(e,t);l.define(n,"snapdragon",r);n.input=e;return n}return memoize("parse",e,t,parse)};micromatch.compile=function(e,t){if(typeof e==="string"){e=micromatch.parse(e,t)}return memoize("compile",e.input,t,function(){var r=l.instantiate(e,t);s(r,t);return r.compile(e,t)})};micromatch.clearCache=function(){micromatch.cache.caches={}};function isEmptyString(e){return String(e)===""||String(e)==="./"}function compose(e,t,r){var n;return memoize("compose",String(e),t,function(){return function(i){if(!n){n=[];for(var a=0;a<e.length;a++){n.push(r(e[a],t))}}var o=n.length;while(o--){if(n[o](i)===true){return true}}return false}})}function memoize(e,t,r,n){var i=l.createKey(e+"="+t,r);if(r&&r.cache===false){return n(t,r)}if(u.has(e,i)){return u.get(e,i)}var a=n(t,r);u.set(e,i,a);return a}micromatch.compilers=s;micromatch.parsers=c;micromatch.caches=u.caches;e.exports=micromatch},4832:(e,t,r)=>{e.exports=new(r(9111))},7111:(e,t,r)=>{"use strict";var n=r(5434);var i=r(2655);e.exports=function(e){var t=e.compiler.compilers;var r=e.options;e.use(n.compilers);var a=t.escape;var o=t.qmark;var s=t.slash;var c=t.star;var u=t.text;var l=t.plus;var f=t.dot;if(r.extglob===false||r.noext===true){e.compiler.use(escapeExtglobs)}else{e.use(i.compilers)}e.use(function(){this.options.star=this.options.star||function(){return"[^\\\\/]*?"}});e.compiler.set("dot",f).set("escape",a).set("plus",l).set("slash",s).set("qmark",o).set("star",c).set("text",u)};function escapeExtglobs(e){e.set("paren",function(e){var t="";visit(e,function(e){if(e.val)t+=(/^\W/.test(e.val)?"\\":"")+e.val});return this.emit(t,e)});function visit(e,t){return e.nodes?mapVisit(e.nodes,t):t(e)}function mapVisit(e,t){var r=e.length;var n=-1;while(++n<r){visit(e[n],t)}}}},9841:(e,t,r)=>{"use strict";var n=r(2655);var i=r(5434);var a=r(3089);var o=r(9532);var s;var c="([!@*?+]?\\(|\\)|\\[:?(?=.*?:?\\])|:?\\]|[*+?!^$.\\\\/])+";var u=function(e){return s||(s=textRegex(c))};e.exports=function(e){var t=e.parser.parsers;e.use(i.parsers);var r=t.escape;var a=t.slash;var o=t.qmark;var s=t.plus;var c=t.star;var l=t.dot;e.use(n.parsers);e.parser.use(function(){this.notRegex=/^\!+(?!\()/}).capture("escape",r).capture("slash",a).capture("qmark",o).capture("star",c).capture("plus",s).capture("dot",l).capture("text",function(){if(this.isInside("bracket"))return;var e=this.position();var t=this.match(u(this.options));if(!t||!t[0])return;var r=t[0].replace(/([[\]^$])/g,"\\$1");return e({type:"text",val:r})})};function textRegex(e){var t=a.create(e,{contains:true,strictClose:false});var r="(?:[\\^]|\\\\|";return o(r+t+")",{strictClose:false})}},5463:(e,t,r)=>{"use strict";var n=e.exports;var i=r(5622);var a=r(9769);n.define=r(8394);n.diff=r(6253);n.extend=r(7418);n.pick=r(5767);n.typeOf=r(5536);n.unique=r(6974);n.isWindows=function(){return i.sep==="\\"||process.platform==="win32"};n.instantiate=function(e,t){var r;if(n.typeOf(e)==="object"&&e.snapdragon){r=e.snapdragon}else if(n.typeOf(t)==="object"&&t.snapdragon){r=t.snapdragon}else{r=new a(t)}n.define(r,"parse",function(e,t){var r=a.prototype.parse.apply(this,arguments);r.input=e;var i=this.parser.stack.pop();if(i&&this.options.strictErrors!==true){var o=i.nodes[0];var s=i.nodes[1];if(i.type==="bracket"){if(s.val.charAt(0)==="["){s.val="\\"+s.val}}else{o.val="\\"+o.val;var c=o.parent.nodes[1];if(c.type==="star"){c.loose=true}}}n.define(r,"parser",this.parser);return r});return r};n.createKey=function(e,t){if(n.typeOf(t)!=="object"){return e}var r=e;var i=Object.keys(t);for(var a=0;a<i.length;a++){var o=i[a];r+=";"+o+"="+String(t[o])}return r};n.arrayify=function(e){if(typeof e==="string")return[e];return e?Array.isArray(e)?e:[e]:[]};n.isString=function(e){return typeof e==="string"};n.isObject=function(e){return n.typeOf(e)==="object"};n.hasSpecialChars=function(e){return/(?:(?:(^|\/)[!.])|[*?+()|\[\]{}]|[+@]\()/.test(e)};n.escapeRegex=function(e){return e.replace(/[-[\]{}()^$|*+?.\\\/\s]/g,"\\$&")};n.toPosixPath=function(e){return e.replace(/\\+/g,"/")};n.unescape=function(e){return n.toPosixPath(e.replace(/\\(?=[*+?!.])/g,""))};n.stripPrefix=function(e){if(e.charAt(0)!=="."){return e}var t=e.charAt(1);if(n.isSlash(t)){return e.slice(2)}return e};n.isSlash=function(e){return e==="/"||e==="\\/"||e==="\\"||e==="\\\\"};n.matchPath=function(e,t){return t&&t.contains?n.containsPattern(e,t):n.equalsPattern(e,t)};n._equals=function(e,t,r){return r===e||r===t};n._contains=function(e,t,r){return e.indexOf(r)!==-1||t.indexOf(r)!==-1};n.equalsPattern=function(e,t){var r=n.unixify(t);t=t||{};return function fn(i){var a=n._equals(i,r(i),e);if(a===true||t.nocase!==true){return a}var o=i.toLowerCase();return n._equals(o,r(o),e)}};n.containsPattern=function(e,t){var r=n.unixify(t);t=t||{};return function(i){var a=n._contains(i,r(i),e);if(a===true||t.nocase!==true){return a}var o=i.toLowerCase();return n._contains(o,r(o),e)}};n.matchBasename=function(e){return function(t){return e.test(i.basename(t))}};n.value=function(e,t,r){if(r&&r.unixify===false){return e}return t(e)};n.unixify=function(e){e=e||{};return function(t){if(n.isWindows()||e.unixify===true){t=n.toPosixPath(t)}if(e.stripPrefix!==false){t=n.stripPrefix(t)}if(e.unescape===true){t=n.unescape(t)}return t}}},1816:(e,t,r)=>{"use strict";const n=r(2087);const i=r(7239);const a=process.env;let o;if(i("no-color")||i("no-colors")||i("color=false")){o=false}else if(i("color")||i("colors")||i("color=true")||i("color=always")){o=true}if("FORCE_COLOR"in a){o=a.FORCE_COLOR.length===0||parseInt(a.FORCE_COLOR,10)!==0}function translateLevel(e){if(e===0){return false}return{level:e,hasBasic:true,has256:e>=2,has16m:e>=3}}function supportsColor(e){if(o===false){return 0}if(i("color=16m")||i("color=full")||i("color=truecolor")){return 3}if(i("color=256")){return 2}if(e&&!e.isTTY&&o!==true){return 0}const t=o?1:0;if(process.platform==="win32"){const e=n.release().split(".");if(Number(process.versions.node.split(".")[0])>=8&&Number(e[0])>=10&&Number(e[2])>=10586){return Number(e[2])>=14931?3:2}return 1}if("CI"in a){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI"].some(e=>e in a)||a.CI_NAME==="codeship"){return 1}return t}if("TEAMCITY_VERSION"in a){return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(a.TEAMCITY_VERSION)?1:0}if(a.COLORTERM==="truecolor"){return 3}if("TERM_PROGRAM"in a){const e=parseInt((a.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(a.TERM_PROGRAM){case"iTerm.app":return e>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(a.TERM)){return 2}if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(a.TERM)){return 1}if("COLORTERM"in a){return 1}if(a.TERM==="dumb"){return t}return t}function getSupportLevel(e){const t=supportsColor(e);return translateLevel(t)}e.exports={supportsColor:getSupportLevel,stdout:getSupportLevel(process.stdout),stderr:getSupportLevel(process.stderr)}},3779:function(e,t,r){"use strict";var n=this&&this.__assign||function(){n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++){t=arguments[r];for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i))e[i]=t[i]}return e};return n.apply(this,arguments)};var i=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,o;return o={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(o[Symbol.iterator]=function(){return this}),o;function verb(e){return function(t){return step([e,t])}}function step(o){if(n)throw new TypeError("Generator is already executing.");while(r)try{if(n=1,i&&(a=o[0]&2?i["return"]:o[0]?i["throw"]||((a=i["return"])&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;if(i=0,a)o=[o[0]&2,a.value];switch(o[0]){case 0:case 1:a=o;break;case 4:r.label++;return{value:o[1],done:false};case 5:r.label++;i=o[1];o=[0];continue;case 7:o=r.ops.pop();r.trys.pop();continue;default:if(!(a=r.trys,a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){r=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){r.label=o[1];break}if(o[0]===6&&r.label<a[1]){r.label=a[1];a=o;break}if(a&&r.label<a[2]){r.label=a[2];r.ops.push(o);break}if(a[2])r.ops.pop();r.trys.pop();continue}o=t.call(e,r)}catch(e){o=[6,e];i=0}finally{n=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:true}}};var a=this&&this.__makeTemplateObject||function(e,t){if(Object.defineProperty){Object.defineProperty(e,"raw",{value:t})}else{e.raw=t}return e};var o=this&&this.__extends||function(){var e=function(t,r){e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)if(t.hasOwnProperty(r))e[r]=t[r]};return e(t,r)};return function(t,r){e(t,r);function __(){this.constructor=t}t.prototype=r===null?Object.create(r):(__.prototype=r.prototype,new __)}}();var s;(function(e){e.versionMajorMinor="3.2";e.version=e.versionMajorMinor+".2"})(s||(s={}));(function(e){var t;(function(e){e[e["LessThan"]=-1]="LessThan";e[e["EqualTo"]=0]="EqualTo";e[e["GreaterThan"]=1]="GreaterThan"})(t=e.Comparison||(e.Comparison={}))})(s||(s={}));(function(e){e.emptyArray=[];function createDictionaryObject(){var e=Object.create(null);e.__=undefined;delete e.__;return e}function createMap(){return new e.MapCtr}e.createMap=createMap;function createMapFromEntries(e){var t=createMap();for(var r=0,n=e;r<n.length;r++){var i=n[r],a=i[0],o=i[1];t.set(a,o)}return t}e.createMapFromEntries=createMapFromEntries;function createMapFromTemplate(r){var n=new e.MapCtr;for(var i in r){if(t.call(r,i)){n.set(i,r[i])}}return n}e.createMapFromTemplate=createMapFromTemplate;e.MapCtr=typeof Map!=="undefined"&&"entries"in Map.prototype?Map:shimMap();function shimMap(){var e=function(){function MapIterator(e,t){this.index=0;this.data=e;this.selector=t;this.keys=Object.keys(e)}MapIterator.prototype.next=function(){var e=this.index;if(e<this.keys.length){this.index++;return{value:this.selector(this.data,this.keys[e]),done:false}}return{value:undefined,done:true}};return MapIterator}();return function(){function class_1(){this.data=createDictionaryObject();this.size=0}class_1.prototype.get=function(e){return this.data[e]};class_1.prototype.set=function(e,t){if(!this.has(e)){this.size++}this.data[e]=t;return this};class_1.prototype.has=function(e){return e in this.data};class_1.prototype.delete=function(e){if(this.has(e)){this.size--;delete this.data[e];return true}return false};class_1.prototype.clear=function(){this.data=createDictionaryObject();this.size=0};class_1.prototype.keys=function(){return new e(this.data,function(e,t){return t})};class_1.prototype.values=function(){return new e(this.data,function(e,t){return e[t]})};class_1.prototype.entries=function(){return new e(this.data,function(e,t){return[t,e[t]]})};class_1.prototype.forEach=function(e){for(var t in this.data){e(this.data[t],t)}};return class_1}()}function length(e){return e?e.length:0}e.length=length;function forEach(e,t){if(e){for(var r=0;r<e.length;r++){var n=t(e[r],r);if(n){return n}}}return undefined}e.forEach=forEach;function firstDefined(e,t){if(e===undefined){return undefined}for(var r=0;r<e.length;r++){var n=t(e[r],r);if(n!==undefined){return n}}return undefined}e.firstDefined=firstDefined;function firstDefinedIterator(e,t){while(true){var r=e.next(),n=r.value,i=r.done;if(i){return undefined}var a=t(n);if(a!==undefined){return a}}}e.firstDefinedIterator=firstDefinedIterator;function zipWith(e,t,r){var i=[];n.assertEqual(e.length,t.length);for(var a=0;a<e.length;a++){i.push(r(e[a],t[a],a))}return i}e.zipWith=zipWith;function zipToIterator(e,t){n.assertEqual(e.length,t.length);var r=0;return{next:function(){if(r===e.length){return{value:undefined,done:true}}r++;return{value:[e[r-1],t[r-1]],done:false}}}}e.zipToIterator=zipToIterator;function zipToMap(e,t){n.assert(e.length===t.length);var r=createMap();for(var i=0;i<e.length;++i){r.set(e[i],t[i])}return r}e.zipToMap=zipToMap;function every(e,t){if(e){for(var r=0;r<e.length;r++){if(!t(e[r],r)){return false}}}return true}e.every=every;function find(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(t(n,r)){return n}}return undefined}e.find=find;function findLast(e,t){for(var r=e.length-1;r>=0;r--){var n=e[r];if(t(n,r)){return n}}return undefined}e.findLast=findLast;function findIndex(e,t,r){for(var n=r||0;n<e.length;n++){if(t(e[n],n)){return n}}return-1}e.findIndex=findIndex;function findLastIndex(e,t,r){for(var n=r===undefined?e.length-1:r;n>=0;n--){if(t(e[n],n)){return n}}return-1}e.findLastIndex=findLastIndex;function findMap(e,t){for(var r=0;r<e.length;r++){var i=t(e[r],r);if(i){return i}}return n.fail()}e.findMap=findMap;function contains(e,t,r){if(r===void 0){r=equateValues}if(e){for(var n=0,i=e;n<i.length;n++){var a=i[n];if(r(a,t)){return true}}}return false}e.contains=contains;function arraysEqual(e,t,r){if(r===void 0){r=equateValues}return e.length===t.length&&e.every(function(e,n){return r(e,t[n])})}e.arraysEqual=arraysEqual;function indexOfAnyCharCode(e,t,r){for(var n=r||0;n<e.length;n++){if(contains(t,e.charCodeAt(n))){return n}}return-1}e.indexOfAnyCharCode=indexOfAnyCharCode;function countWhere(e,t){var r=0;if(e){for(var n=0;n<e.length;n++){var i=e[n];if(t(i,n)){r++}}}return r}e.countWhere=countWhere;function filter(e,t){if(e){var r=e.length;var n=0;while(n<r&&t(e[n]))n++;if(n<r){var i=e.slice(0,n);n++;while(n<r){var a=e[n];if(t(a)){i.push(a)}n++}return i}}return e}e.filter=filter;function filterMutate(e,t){var r=0;for(var n=0;n<e.length;n++){if(t(e[n],n,e)){e[r]=e[n];r++}}e.length=r}e.filterMutate=filterMutate;function clear(e){e.length=0}e.clear=clear;function map(e,t){var r;if(e){r=[];for(var n=0;n<e.length;n++){r.push(t(e[n],n))}}return r}e.map=map;function mapIterator(e,t){return{next:function(){var r=e.next();return r.done?r:{value:t(r.value),done:false}}}}e.mapIterator=mapIterator;function sameMap(e,t){if(e){for(var r=0;r<e.length;r++){var n=e[r];var i=t(n,r);if(n!==i){var a=e.slice(0,r);a.push(i);for(r++;r<e.length;r++){a.push(t(e[r],r))}return a}}}return e}e.sameMap=sameMap;function flatten(e){var t;if(e){t=[];for(var r=0,n=e;r<n.length;r++){var i=n[r];if(i){if(isArray(i)){addRange(t,i)}else{t.push(i)}}}}return t}e.flatten=flatten;function flatMap(t,r){var n;if(t){for(var i=0;i<t.length;i++){var a=r(t[i],i);if(a){if(isArray(a)){n=addRange(n,a)}else{n=append(n,a)}}}}return n||e.emptyArray}e.flatMap=flatMap;function flatMapToMutable(e,t){var r=[];if(e){for(var n=0;n<e.length;n++){var i=t(e[n],n);if(i){if(isArray(i)){addRange(r,i)}else{r.push(i)}}}}return r}e.flatMapToMutable=flatMapToMutable;function flatMapIterator(t,r){var n=t.next();if(n.done){return e.emptyIterator}var i=getIterator(n.value);return{next:function(){while(true){var e=i.next();if(!e.done){return e}var r=t.next();if(r.done){return r}i=getIterator(r.value)}}};function getIterator(t){var n=r(t);return n===undefined?e.emptyIterator:isArray(n)?arrayIterator(n):n}}e.flatMapIterator=flatMapIterator;function sameFlatMap(e,t){var r;if(e){for(var n=0;n<e.length;n++){var i=e[n];var a=t(i,n);if(r||i!==a||isArray(a)){if(!r){r=e.slice(0,n)}if(isArray(a)){addRange(r,a)}else{r.push(a)}}}}return r||e}e.sameFlatMap=sameFlatMap;function mapAllOrFail(e,t){var r=[];for(var n=0;n<e.length;n++){var i=t(e[n],n);if(i===undefined){return undefined}r.push(i)}return r}e.mapAllOrFail=mapAllOrFail;function mapDefined(e,t){var r=[];if(e){for(var n=0;n<e.length;n++){var i=t(e[n],n);if(i!==undefined){r.push(i)}}}return r}e.mapDefined=mapDefined;function mapDefinedIterator(e,t){return{next:function(){while(true){var r=e.next();if(r.done){return r}var n=t(r.value);if(n!==undefined){return{value:n,done:false}}}}}}e.mapDefinedIterator=mapDefinedIterator;e.emptyIterator={next:function(){return{value:undefined,done:true}}};function singleIterator(e){var t=false;return{next:function(){var r=t;t=true;return r?{value:undefined,done:true}:{value:e,done:false}}}}e.singleIterator=singleIterator;function spanMap(e,t,r){var n;if(e){n=[];var i=e.length;var a=void 0;var o=void 0;var s=0;var c=0;while(s<i){while(c<i){var u=e[c];o=t(u,c);if(c===0){a=o}else if(o!==a){break}c++}if(s<c){var l=r(e.slice(s,c),a,s,c);if(l){n.push(l)}s=c}a=o;c++}}return n}e.spanMap=spanMap;function mapEntries(e,t){if(!e){return undefined}var r=createMap();e.forEach(function(e,n){var i=t(n,e),a=i[0],o=i[1];r.set(a,o)});return r}e.mapEntries=mapEntries;function some(e,t){if(e){if(t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(t(i)){return true}}}else{return e.length>0}}return false}e.some=some;function getRangesWhere(e,t,r){var n;for(var i=0;i<e.length;i++){if(t(e[i])){n=n===undefined?i:n}else{if(n!==undefined){r(n,i);n=undefined}}}if(n!==undefined)r(n,e.length)}e.getRangesWhere=getRangesWhere;function concatenate(e,t){if(!some(t))return e;if(!some(e))return t;return e.concat(t)}e.concatenate=concatenate;function deduplicateRelational(e,t,r){var n=e.map(function(e,t){return t});stableSortIndices(e,n,r);var i=e[n[0]];var a=[n[0]];for(var o=1;o<n.length;o++){var s=n[o];var c=e[s];if(!t(i,c)){a.push(s);i=c}}a.sort();return a.map(function(t){return e[t]})}function deduplicateEquality(e,t){var r=[];for(var n=0,i=e;n<i.length;n++){var a=i[n];pushIfUnique(r,a,t)}return r}function deduplicate(e,t,r){return e.length===0?[]:e.length===1?e.slice():r?deduplicateRelational(e,t,r):deduplicateEquality(e,t)}e.deduplicate=deduplicate;function deduplicateSorted(t,r){if(t.length===0)return e.emptyArray;var i=t[0];var a=[i];for(var o=1;o<t.length;o++){var s=t[o];switch(r(s,i)){case true:case 0:continue;case-1:return n.fail("Array is unsorted.")}a.push(i=s)}return a}function insertSorted(e,t,r){if(e.length===0){e.push(t);return}var n=binarySearch(e,t,identity,r);if(n<0){e.splice(~n,0,t)}}e.insertSorted=insertSorted;function sortAndDeduplicate(e,t,r){return deduplicateSorted(sort(e,t),r||t||compareStringsCaseSensitive)}e.sortAndDeduplicate=sortAndDeduplicate;function arrayIsEqualTo(e,t,r){if(r===void 0){r=equateValues}if(!e||!t){return e===t}if(e.length!==t.length){return false}for(var n=0;n<e.length;n++){if(!r(e[n],t[n],n)){return false}}return true}e.arrayIsEqualTo=arrayIsEqualTo;function compact(e){var t;if(e){for(var r=0;r<e.length;r++){var n=e[r];if(t||!n){if(!t){t=e.slice(0,r)}if(n){t.push(n)}}}}return t||e}e.compact=compact;function relativeComplement(e,t,r){if(!t||!e||t.length===0||e.length===0)return t;var i=[];e:for(var a=0,o=0;o<t.length;o++){if(o>0){n.assertGreaterThanOrEqual(r(t[o],t[o-1]),0)}t:for(var s=a;a<e.length;a++){if(a>s){n.assertGreaterThanOrEqual(r(e[a],e[a-1]),0)}switch(r(t[o],e[a])){case-1:i.push(t[o]);continue e;case 0:continue e;case 1:continue t}}}return i}e.relativeComplement=relativeComplement;function sum(e,t){var r=0;for(var n=0,i=e;n<i.length;n++){var a=i[n];r+=a[t]}return r}e.sum=sum;function append(e,t){if(t===undefined)return e;if(e===undefined)return[t];e.push(t);return e}e.append=append;function toOffset(e,t){return t<0?e.length+t:t}function addRange(e,t,r,n){if(t===undefined||t.length===0)return e;if(e===undefined)return t.slice(r,n);r=r===undefined?0:toOffset(t,r);n=n===undefined?t.length:toOffset(t,n);for(var i=r;i<n&&i<t.length;i++){if(t[i]!==undefined){e.push(t[i])}}return e}e.addRange=addRange;function pushIfUnique(e,t,r){if(contains(e,t,r)){return false}else{e.push(t);return true}}e.pushIfUnique=pushIfUnique;function appendIfUnique(e,t,r){if(e){pushIfUnique(e,t,r);return e}else{return[t]}}e.appendIfUnique=appendIfUnique;function stableSortIndices(e,t,r){t.sort(function(t,n){return r(e[t],e[n])||compareValues(t,n)})}function sort(e,t){return e.length===0?e:e.slice().sort(t)}e.sort=sort;function arrayIterator(e){var t=0;return{next:function(){if(t===e.length){return{value:undefined,done:true}}else{t++;return{value:e[t-1],done:false}}}}}e.arrayIterator=arrayIterator;function stableSort(e,t){var r=e.map(function(e,t){return t});stableSortIndices(e,r,t);return r.map(function(t){return e[t]})}e.stableSort=stableSort;function rangeEquals(e,t,r,n){while(r<n){if(e[r]!==t[r]){return false}r++}return true}e.rangeEquals=rangeEquals;function elementAt(e,t){if(e){t=toOffset(e,t);if(t<e.length){return e[t]}}return undefined}e.elementAt=elementAt;function firstOrUndefined(e){return e.length===0?undefined:e[0]}e.firstOrUndefined=firstOrUndefined;function first(e){n.assert(e.length!==0);return e[0]}e.first=first;function lastOrUndefined(e){return e.length===0?undefined:e[e.length-1]}e.lastOrUndefined=lastOrUndefined;function last(e){n.assert(e.length!==0);return e[e.length-1]}e.last=last;function singleOrUndefined(e){return e&&e.length===1?e[0]:undefined}e.singleOrUndefined=singleOrUndefined;function singleOrMany(e){return e&&e.length===1?e[0]:e}e.singleOrMany=singleOrMany;function replaceElement(e,t,r){var n=e.slice(0);n[t]=r;return n}e.replaceElement=replaceElement;function binarySearch(e,t,r,n,i){return binarySearchKey(e,r(t),r,n,i)}e.binarySearch=binarySearch;function binarySearchKey(e,t,r,n,i){if(!some(e)){return-1}var a=i||0;var o=e.length-1;while(a<=o){var s=a+(o-a>>1);var c=r(e[s]);switch(n(c,t)){case-1:a=s+1;break;case 0:return s;case 1:o=s-1;break}}return~a}e.binarySearchKey=binarySearchKey;function reduceLeft(e,t,r,n,i){if(e&&e.length>0){var a=e.length;if(a>0){var o=n===undefined||n<0?0:n;var s=i===undefined||o+i>a-1?a-1:o+i;var c=void 0;if(arguments.length<=2){c=e[o];o++}else{c=r}while(o<=s){c=t(c,e[o],o);o++}return c}}return r}e.reduceLeft=reduceLeft;var t=Object.prototype.hasOwnProperty;function hasProperty(e,r){return t.call(e,r)}e.hasProperty=hasProperty;function getProperty(e,r){return t.call(e,r)?e[r]:undefined}e.getProperty=getProperty;function getOwnKeys(e){var r=[];for(var n in e){if(t.call(e,n)){r.push(n)}}return r}e.getOwnKeys=getOwnKeys;function getOwnValues(e){var r=[];for(var n in e){if(t.call(e,n)){r.push(e[n])}}return r}e.getOwnValues=getOwnValues;function arrayFrom(e,t){var r;var n=[];for(var i=e.next(),a=i.value,o=i.done;!o;r=e.next(),a=r.value,o=r.done,r){n.push(t?t(a):a)}return n}e.arrayFrom=arrayFrom;function assign(e){var t=[];for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}for(var n=0,i=t;n<i.length;n++){var a=i[n];for(var o in a){if(hasProperty(a,o)){e[o]=a[o]}}}return e}e.assign=assign;function equalOwnProperties(e,r,n){if(n===void 0){n=equateValues}if(e===r)return true;if(!e||!r)return false;for(var i in e){if(t.call(e,i)){if(!t.call(r,i))return false;if(!n(e[i],r[i]))return false}}for(var i in r){if(t.call(r,i)){if(!t.call(e,i))return false}}return true}e.equalOwnProperties=equalOwnProperties;function arrayToMap(e,t,r){if(r===void 0){r=identity}var n=createMap();for(var i=0,a=e;i<a.length;i++){var o=a[i];var s=t(o);if(s!==undefined)n.set(s,r(o))}return n}e.arrayToMap=arrayToMap;function arrayToNumericMap(e,t,r){if(r===void 0){r=identity}var n=[];for(var i=0,a=e;i<a.length;i++){var o=a[i];n[t(o)]=r(o)}return n}e.arrayToNumericMap=arrayToNumericMap;function arrayToMultiMap(e,t,r){if(r===void 0){r=identity}var n=createMultiMap();for(var i=0,a=e;i<a.length;i++){var o=a[i];n.add(t(o),r(o))}return n}e.arrayToMultiMap=arrayToMultiMap;function group(e,t){return arrayFrom(arrayToMultiMap(e,t).values())}e.group=group;function clone(e){var r={};for(var n in e){if(t.call(e,n)){r[n]=e[n]}}return r}e.clone=clone;function extend(e,r){var n={};for(var i in r){if(t.call(r,i)){n[i]=r[i]}}for(var i in e){if(t.call(e,i)){n[i]=e[i]}}return n}e.extend=extend;function createMultiMap(){var e=createMap();e.add=multiMapAdd;e.remove=multiMapRemove;return e}e.createMultiMap=createMultiMap;function multiMapAdd(e,t){var r=this.get(e);if(r){r.push(t)}else{this.set(e,r=[t])}return r}function multiMapRemove(e,t){var r=this.get(e);if(r){unorderedRemoveItem(r,t);if(!r.length){this.delete(e)}}}function isArray(e){return Array.isArray?Array.isArray(e):e instanceof Array}e.isArray=isArray;function toArray(e){return isArray(e)?e:[e]}e.toArray=toArray;function isString(e){return typeof e==="string"}e.isString=isString;function isNumber(e){return typeof e==="number"}e.isNumber=isNumber;function tryCast(e,t){return e!==undefined&&t(e)?e:undefined}e.tryCast=tryCast;function cast(e,t){if(e!==undefined&&t(e))return e;return n.fail("Invalid cast. The supplied value "+e+" did not pass the test '"+n.getFunctionName(t)+"'.")}e.cast=cast;function noop(e){}e.noop=noop;function returnFalse(){return false}e.returnFalse=returnFalse;function returnTrue(){return true}e.returnTrue=returnTrue;function identity(e){return e}e.identity=identity;function toLowerCase(e){return e.toLowerCase()}e.toLowerCase=toLowerCase;function notImplemented(){throw new Error("Not implemented")}e.notImplemented=notImplemented;function memoize(e){var t;return function(){if(e){t=e();e=undefined}return t}}e.memoize=memoize;function chain(e,t,r,n,i){if(i){var a=[];for(var o=0;o<arguments.length;o++){a[o]=arguments[o]}return function(e){return compose.apply(void 0,map(a,function(t){return t(e)}))}}else if(n){return function(i){return compose(e(i),t(i),r(i),n(i))}}else if(r){return function(n){return compose(e(n),t(n),r(n))}}else if(t){return function(r){return compose(e(r),t(r))}}else if(e){return function(t){return compose(e(t))}}else{return function(e){return function(e){return e}}}}e.chain=chain;function compose(e,t,r,n,i){if(i){var a=[];for(var o=0;o<arguments.length;o++){a[o]=arguments[o]}return function(e){return reduceLeft(a,function(e,t){return t(e)},e)}}else if(n){return function(i){return n(r(t(e(i))))}}else if(r){return function(n){return r(t(e(n)))}}else if(t){return function(r){return t(e(r))}}else if(e){return function(t){return e(t)}}else{return function(e){return e}}}e.compose=compose;var r;(function(e){e[e["None"]=0]="None";e[e["Normal"]=1]="Normal";e[e["Aggressive"]=2]="Aggressive";e[e["VeryAggressive"]=3]="VeryAggressive"})(r=e.AssertionLevel||(e.AssertionLevel={}));var n;(function(e){e.currentAssertionLevel=0;e.isDebugging=false;function shouldAssert(t){return e.currentAssertionLevel>=t}e.shouldAssert=shouldAssert;function assert(e,t,r,n){if(!e){if(r){t+="\r\nVerbose Debug Information: "+(typeof r==="string"?r:r())}fail(t?"False expression: "+t:"False expression.",n||assert)}}e.assert=assert;function assertEqual(e,t,r,n){if(e!==t){var i=r?n?r+" "+n:r:"";fail("Expected "+e+" === "+t+". "+i)}}e.assertEqual=assertEqual;function assertLessThan(e,t,r){if(e>=t){fail("Expected "+e+" < "+t+". "+(r||""))}}e.assertLessThan=assertLessThan;function assertLessThanOrEqual(e,t){if(e>t){fail("Expected "+e+" <= "+t)}}e.assertLessThanOrEqual=assertLessThanOrEqual;function assertGreaterThanOrEqual(e,t){if(e<t){fail("Expected "+e+" >= "+t)}}e.assertGreaterThanOrEqual=assertGreaterThanOrEqual;function fail(e,t){debugger;var r=new Error(e?"Debug Failure. "+e:"Debug Failure.");if(Error.captureStackTrace){Error.captureStackTrace(r,t||fail)}throw r}e.fail=fail;function assertDefined(e,t){if(e===undefined||e===null)return fail(t);return e}e.assertDefined=assertDefined;function assertEachDefined(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];assertDefined(i,t)}return e}e.assertEachDefined=assertEachDefined;function assertNever(t,r,n){if(r===void 0){r="Illegal value:"}var i="kind"in t&&"pos"in t?"SyntaxKind: "+e.showSyntaxKind(t):JSON.stringify(t);return fail(r+" "+i,n||assertNever)}e.assertNever=assertNever;function getFunctionName(e){if(typeof e!=="function"){return""}else if(e.hasOwnProperty("name")){return e.name}else{var t=Function.prototype.toString.call(e);var r=/^function\s+([\w\$]+)\s*\(/.exec(t);return r?r[1]:""}}e.getFunctionName=getFunctionName})(n=e.Debug||(e.Debug={}));function equateValues(e,t){return e===t}e.equateValues=equateValues;function equateStringsCaseInsensitive(e,t){return e===t||e!==undefined&&t!==undefined&&e.toUpperCase()===t.toUpperCase()}e.equateStringsCaseInsensitive=equateStringsCaseInsensitive;function equateStringsCaseSensitive(e,t){return equateValues(e,t)}e.equateStringsCaseSensitive=equateStringsCaseSensitive;function compareComparableValues(e,t){return e===t?0:e===undefined?-1:t===undefined?1:e<t?-1:1}function compareValues(e,t){return compareComparableValues(e,t)}e.compareValues=compareValues;function min(e,t,r){return r(e,t)===-1?e:t}e.min=min;function compareStringsCaseInsensitive(e,t){if(e===t)return 0;if(e===undefined)return-1;if(t===undefined)return 1;e=e.toUpperCase();t=t.toUpperCase();return e<t?-1:e>t?1:0}e.compareStringsCaseInsensitive=compareStringsCaseInsensitive;function compareStringsCaseSensitive(e,t){return compareComparableValues(e,t)}e.compareStringsCaseSensitive=compareStringsCaseSensitive;function getStringComparer(e){return e?compareStringsCaseInsensitive:compareStringsCaseSensitive}e.getStringComparer=getStringComparer;var i=function(){var e;var t;var r=getStringComparerFactory();return createStringComparer;function compareWithCallback(e,t,r){if(e===t)return 0;if(e===undefined)return-1;if(t===undefined)return 1;var n=r(e,t);return n<0?-1:n>0?1:0}function createIntlCollatorStringComparer(e){var t=new Intl.Collator(e,{usage:"sort",sensitivity:"variant"}).compare;return function(e,r){return compareWithCallback(e,r,t)}}function createLocaleCompareStringComparer(e){if(e!==undefined)return createFallbackStringComparer();return function(e,t){return compareWithCallback(e,t,compareStrings)};function compareStrings(e,t){return e.localeCompare(t)}}function createFallbackStringComparer(){return function(e,t){return compareWithCallback(e,t,compareDictionaryOrder)};function compareDictionaryOrder(e,t){return compareStrings(e.toUpperCase(),t.toUpperCase())||compareStrings(e,t)}function compareStrings(e,t){return e<t?-1:e>t?1:0}}function getStringComparerFactory(){if(typeof Intl==="object"&&typeof Intl.Collator==="function"){return createIntlCollatorStringComparer}if(typeof String.prototype.localeCompare==="function"&&typeof String.prototype.toLocaleUpperCase==="function"&&"a".localeCompare("B")<0){return createLocaleCompareStringComparer}return createFallbackStringComparer}function createStringComparer(n){if(n===undefined){return e||(e=r(n))}else if(n==="en-US"){return t||(t=r(n))}else{return r(n)}}}();var a;var o;function getUILocale(){return o}e.getUILocale=getUILocale;function setUILocale(e){if(o!==e){o=e;a=undefined}}e.setUILocale=setUILocale;function compareStringsCaseSensitiveUI(e,t){var r=a||(a=i(o));return r(e,t)}e.compareStringsCaseSensitiveUI=compareStringsCaseSensitiveUI;function compareProperties(e,t,r,n){return e===t?0:e===undefined?-1:t===undefined?1:n(e[r],t[r])}e.compareProperties=compareProperties;function compareBooleans(e,t){return compareValues(e?1:0,t?1:0)}e.compareBooleans=compareBooleans;function getSpellingSuggestion(e,t,r){var i=Math.min(2,Math.floor(e.length*.34));var a=Math.floor(e.length*.4)+1;var o;var s=false;var c=e.toLowerCase();for(var u=0,l=t;u<l.length;u++){var f=l[u];var d=r(f);if(d!==undefined&&Math.abs(d.length-c.length)<=i){var p=d.toLowerCase();if(p===c){if(d===e){continue}return f}if(s){continue}if(d.length<3){continue}var g=levenshteinWithMax(c,p,a-1);if(g===undefined){continue}if(g<3){s=true;o=f}else{n.assert(g<a);a=g;o=f}}}return o}e.getSpellingSuggestion=getSpellingSuggestion;function levenshteinWithMax(e,t,r){var n=new Array(t.length+1);var i=new Array(t.length+1);var a=r+1;for(var o=0;o<=t.length;o++){n[o]=o}for(var o=1;o<=e.length;o++){var s=e.charCodeAt(o-1);var c=o>r?o-r:1;var u=t.length>r+o?r+o:t.length;i[0]=o;var l=o;for(var f=1;f<c;f++){i[f]=a}for(var f=c;f<=u;f++){var d=s===t.charCodeAt(f-1)?n[f-1]:Math.min(n[f]+1,i[f-1]+1,n[f-1]+2);i[f]=d;l=Math.min(l,d)}for(var f=u+1;f<=t.length;f++){i[f]=a}if(l>r){return undefined}var p=n;n=i;i=p}var g=n[t.length];return g>r?undefined:g}function endsWith(e,t){var r=e.length-t.length;return r>=0&&e.indexOf(t,r)===r}e.endsWith=endsWith;function removeSuffix(e,t){return endsWith(e,t)?e.slice(0,e.length-t.length):e}e.removeSuffix=removeSuffix;function tryRemoveSuffix(e,t){return endsWith(e,t)?e.slice(0,e.length-t.length):undefined}e.tryRemoveSuffix=tryRemoveSuffix;function stringContains(e,t){return e.indexOf(t)!==-1}e.stringContains=stringContains;function fileExtensionIs(e,t){return e.length>t.length&&endsWith(e,t)}e.fileExtensionIs=fileExtensionIs;function fileExtensionIsOneOf(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(fileExtensionIs(e,i)){return true}}return false}e.fileExtensionIsOneOf=fileExtensionIsOneOf;function removeMinAndVersionNumbers(e){var t=/[.-]((min)|(\d+(\.\d+)*))$/;return e.replace(t,"").replace(t,"")}e.removeMinAndVersionNumbers=removeMinAndVersionNumbers;function orderedRemoveItem(e,t){for(var r=0;r<e.length;r++){if(e[r]===t){orderedRemoveItemAt(e,r);return true}}return false}e.orderedRemoveItem=orderedRemoveItem;function orderedRemoveItemAt(e,t){for(var r=t;r<e.length-1;r++){e[r]=e[r+1]}e.pop()}e.orderedRemoveItemAt=orderedRemoveItemAt;function unorderedRemoveItemAt(e,t){e[t]=e[e.length-1];e.pop()}e.unorderedRemoveItemAt=unorderedRemoveItemAt;function unorderedRemoveItem(e,t){return unorderedRemoveFirstItemWhere(e,function(e){return e===t})}e.unorderedRemoveItem=unorderedRemoveItem;function unorderedRemoveFirstItemWhere(e,t){for(var r=0;r<e.length;r++){if(t(e[r])){unorderedRemoveItemAt(e,r);return true}}return false}function createGetCanonicalFileName(e){return e?identity:toLowerCase}e.createGetCanonicalFileName=createGetCanonicalFileName;function patternText(e){var t=e.prefix,r=e.suffix;return t+"*"+r}e.patternText=patternText;function matchedText(e,t){n.assert(isPatternMatch(e,t));return t.substring(e.prefix.length,t.length-e.suffix.length)}e.matchedText=matchedText;function findBestPatternMatch(e,t,r){var n;var i=-1;for(var a=0,o=e;a<o.length;a++){var s=o[a];var c=t(s);if(isPatternMatch(c,r)&&c.prefix.length>i){i=c.prefix.length;n=s}}return n}e.findBestPatternMatch=findBestPatternMatch;function startsWith(e,t){return e.lastIndexOf(t,0)===0}e.startsWith=startsWith;function removePrefix(e,t){return startsWith(e,t)?e.substr(t.length):e}e.removePrefix=removePrefix;function tryRemovePrefix(e,t,r){if(r===void 0){r=identity}return startsWith(r(e),r(t))?e.substring(t.length):undefined}e.tryRemovePrefix=tryRemovePrefix;function isPatternMatch(e,t){var r=e.prefix,n=e.suffix;return t.length>=r.length+n.length&&startsWith(t,r)&&endsWith(t,n)}function and(e,t){return function(r){return e(r)&&t(r)}}e.and=and;function or(e,t){return function(r){return e(r)||t(r)}}e.or=or;function assertType(e){}e.assertType=assertType;function singleElementArray(e){return e===undefined?undefined:[e]}e.singleElementArray=singleElementArray;function enumerateInsertsAndDeletes(e,t,r,n,i,a){a=a||noop;var o=0;var s=0;var c=e.length;var u=t.length;while(o<c&&s<u){var l=e[o];var f=t[s];var d=r(l,f);if(d===-1){n(l);o++}else if(d===1){i(f);s++}else{a(f,l);o++;s++}}while(o<c){n(e[o++])}while(s<u){i(t[s++])}}e.enumerateInsertsAndDeletes=enumerateInsertsAndDeletes;function fill(e,t){return new Array(e).fill(0).map(function(e,r){return t(r)})}e.fill=fill})(s||(s={}));var s;(function(e){e.timestamp=typeof performance!=="undefined"&&performance.now?function(){return performance.now()}:Date.now?Date.now:function(){return+new Date}})(s||(s={}));(function(e){var t;(function(t){var r=typeof onProfilerEvent==="function"&&onProfilerEvent.profiler===true?onProfilerEvent:function(){};var n=false;var i=0;var a;var o;var s;function createTimerIf(e,r,n,i){return e?createTimer(r,n,i):t.nullTimer}t.createTimerIf=createTimerIf;function createTimer(t,r,n){var i=0;return{enter:enter,exit:exit};function enter(){if(++i===1){mark(r)}}function exit(){if(--i===0){mark(n);measure(t,r,n)}else if(i<0){e.Debug.fail("enter/exit count does not match.")}}}t.createTimer=createTimer;t.nullTimer={enter:e.noop,exit:e.noop};function mark(t){if(n){o.set(t,e.timestamp());a.set(t,(a.get(t)||0)+1);r(t)}}t.mark=mark;function measure(t,r,a){if(n){var c=a&&o.get(a)||e.timestamp();var u=r&&o.get(r)||i;s.set(t,(s.get(t)||0)+(c-u))}}t.measure=measure;function getCount(e){return a&&a.get(e)||0}t.getCount=getCount;function getDuration(e){return s&&s.get(e)||0}t.getDuration=getDuration;function forEachMeasure(e){s.forEach(function(t,r){e(r,t)})}t.forEachMeasure=forEachMeasure;function enable(){a=e.createMap();o=e.createMap();s=e.createMap();n=true;i=e.timestamp()}t.enable=enable;function disable(){n=false}t.disable=disable})(t=e.performance||(e.performance={}))})(s||(s={}));var s;(function(e){var t=/^(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\.(0|[1-9]\d*)(?:\-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i;var r=/^(?:0|[1-9]\d*|[a-z-][a-z0-9-]*)(?:\.(?:0|[1-9]\d*|[a-z-][a-z0-9-]*))*$/i;var n=/^[a-z0-9-]+(?:\.[a-z0-9-]+)*$/i;var i=/^(0|[1-9]\d*)$/;var a=function(){function Version(t,i,a,o,s){if(i===void 0){i=0}if(a===void 0){a=0}if(o===void 0){o=""}if(s===void 0){s=""}if(typeof t==="string"){var c=e.Debug.assertDefined(tryParseComponents(t),"Invalid version");t=c.major,i=c.minor,a=c.patch,o=c.prerelease,s=c.build}e.Debug.assert(t>=0,"Invalid argument: major");e.Debug.assert(i>=0,"Invalid argument: minor");e.Debug.assert(a>=0,"Invalid argument: patch");e.Debug.assert(!o||r.test(o),"Invalid argument: prerelease");e.Debug.assert(!s||n.test(s),"Invalid argument: build");this.major=t;this.minor=i;this.patch=a;this.prerelease=o?o.split("."):e.emptyArray;this.build=s?s.split("."):e.emptyArray}Version.tryParse=function(e){var t=tryParseComponents(e);if(!t)return undefined;var r=t.major,n=t.minor,i=t.patch,a=t.prerelease,o=t.build;return new Version(r,n,i,a,o)};Version.prototype.compareTo=function(t){if(this===t)return 0;if(t===undefined)return 1;return e.compareValues(this.major,t.major)||e.compareValues(this.minor,t.minor)||e.compareValues(this.patch,t.patch)||comparePrerelaseIdentifiers(this.prerelease,t.prerelease)};Version.prototype.increment=function(t){switch(t){case"major":return new Version(this.major+1,0,0);case"minor":return new Version(this.major,this.minor+1,0);case"patch":return new Version(this.major,this.minor,this.patch+1);default:return e.Debug.assertNever(t)}};Version.prototype.toString=function(){var t=this.major+"."+this.minor+"."+this.patch;if(e.some(this.prerelease))t+="-"+this.prerelease.join(".");if(e.some(this.build))t+="+"+this.build.join(".");return t};Version.zero=new Version(0,0,0);return Version}();e.Version=a;function tryParseComponents(e){var i=t.exec(e);if(!i)return undefined;var a=i[1],o=i[2],s=o===void 0?"0":o,c=i[3],u=c===void 0?"0":c,l=i[4],f=l===void 0?"":l,d=i[5],p=d===void 0?"":d;if(f&&!r.test(f))return undefined;if(p&&!n.test(p))return undefined;return{major:parseInt(a,10),minor:parseInt(s,10),patch:parseInt(u,10),prerelease:f,build:p}}function comparePrerelaseIdentifiers(t,r){if(t===r)return 0;if(t.length===0)return r.length===0?0:1;if(r.length===0)return-1;var n=Math.min(t.length,r.length);for(var a=0;a<n;a++){var o=t[a];var s=r[a];if(o===s)continue;var c=i.test(o);var u=i.test(s);if(c||u){if(c!==u)return c?-1:1;var l=e.compareValues(+o,+s);if(l)return l}else{var l=e.compareStringsCaseSensitive(o,s);if(l)return l}}return e.compareValues(t.length,r.length)}var o=function(){function VersionRange(t){this._alternatives=t?e.Debug.assertDefined(parseRange(t),"Invalid range spec."):e.emptyArray}VersionRange.tryParse=function(e){var t=parseRange(e);if(t){var r=new VersionRange("");r._alternatives=t;return r}return undefined};VersionRange.prototype.test=function(e){if(typeof e==="string")e=new a(e);return testDisjunction(e,this._alternatives)};VersionRange.prototype.toString=function(){return formatDisjunction(this._alternatives)};return VersionRange}();e.VersionRange=o;var s=/\s*\|\|\s*/g;var c=/\s+/g;var u=/^([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:\.([xX*0]|[1-9]\d*)(?:-([a-z0-9-.]+))?(?:\+([a-z0-9-.]+))?)?)?$/i;var l=/^\s*([a-z0-9-+.*]+)\s+-\s+([a-z0-9-+.*]+)\s*$/i;var f=/^\s*(~|\^|<|<=|>|>=|=)?\s*([a-z0-9-+.*]+)$/i;function parseRange(e){var t=[];for(var r=0,n=e.trim().split(s);r<n.length;r++){var i=n[r];if(!i)continue;var a=[];var o=l.exec(i);if(o){if(!parseHyphen(o[1],o[2],a))return undefined}else{for(var u=0,d=i.split(c);u<d.length;u++){var p=d[u];var g=f.exec(p);if(!g||!parseComparator(g[1],g[2],a))return undefined}}t.push(a)}return t}function parsePartial(e){var t=u.exec(e);if(!t)return undefined;var r=t[1],n=t[2],i=n===void 0?"*":n,o=t[3],s=o===void 0?"*":o,c=t[4],l=t[5];var f=new a(isWildcard(r)?0:parseInt(r,10),isWildcard(r)||isWildcard(i)?0:parseInt(i,10),isWildcard(r)||isWildcard(i)||isWildcard(s)?0:parseInt(s,10),c,l);return{version:f,major:r,minor:i,patch:s}}function parseHyphen(e,t,r){var n=parsePartial(e);if(!n)return false;var i=parsePartial(t);if(!i)return false;if(!isWildcard(n.major)){r.push(createComparator(">=",n.version))}if(!isWildcard(i.major)){r.push(isWildcard(i.minor)?createComparator("<",i.version.increment("major")):isWildcard(i.patch)?createComparator("<",i.version.increment("minor")):createComparator("<=",i.version))}return true}function parseComparator(e,t,r){var n=parsePartial(t);if(!n)return false;var i=n.version,o=n.major,s=n.minor,c=n.patch;if(!isWildcard(o)){switch(e){case"~":r.push(createComparator(">=",i));r.push(createComparator("<",i.increment(isWildcard(s)?"major":"minor")));break;case"^":r.push(createComparator(">=",i));r.push(createComparator("<",i.increment(i.major>0||isWildcard(s)?"major":i.minor>0||isWildcard(c)?"minor":"patch")));break;case"<":case">=":r.push(createComparator(e,i));break;case"<=":case">":r.push(isWildcard(s)?createComparator(e==="<="?"<":">=",i.increment("major")):isWildcard(c)?createComparator(e==="<="?"<":">=",i.increment("minor")):createComparator(e,i));break;case"=":case undefined:if(isWildcard(s)||isWildcard(c)){r.push(createComparator(">=",i));r.push(createComparator("<",i.increment(isWildcard(s)?"major":"minor")))}else{r.push(createComparator("=",i))}break;default:return false}}else if(e==="<"||e===">"){r.push(createComparator("<",a.zero))}return true}function isWildcard(e){return e==="*"||e==="x"||e==="X"}function createComparator(e,t){return{operator:e,operand:t}}function testDisjunction(e,t){if(t.length===0)return true;for(var r=0,n=t;r<n.length;r++){var i=n[r];if(testAlternative(e,i))return true}return false}function testAlternative(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!testComparator(e,i.operator,i.operand))return false}return true}function testComparator(t,r,n){var i=t.compareTo(n);switch(r){case"<":return i<0;case"<=":return i<=0;case">":return i>0;case">=":return i>=0;case"=":return i===0;default:return e.Debug.assertNever(r)}}function formatDisjunction(t){return e.map(t,formatAlternative).join(" || ")||"*"}function formatAlternative(t){return e.map(t,formatComparator).join(" ")}function formatComparator(e){return""+e.operator+e.operand}})(s||(s={}));var s;(function(e){var t;(function(e){e[e["Unknown"]=0]="Unknown";e[e["EndOfFileToken"]=1]="EndOfFileToken";e[e["SingleLineCommentTrivia"]=2]="SingleLineCommentTrivia";e[e["MultiLineCommentTrivia"]=3]="MultiLineCommentTrivia";e[e["NewLineTrivia"]=4]="NewLineTrivia";e[e["WhitespaceTrivia"]=5]="WhitespaceTrivia";e[e["ShebangTrivia"]=6]="ShebangTrivia";e[e["ConflictMarkerTrivia"]=7]="ConflictMarkerTrivia";e[e["NumericLiteral"]=8]="NumericLiteral";e[e["BigIntLiteral"]=9]="BigIntLiteral";e[e["StringLiteral"]=10]="StringLiteral";e[e["JsxText"]=11]="JsxText";e[e["JsxTextAllWhiteSpaces"]=12]="JsxTextAllWhiteSpaces";e[e["RegularExpressionLiteral"]=13]="RegularExpressionLiteral";e[e["NoSubstitutionTemplateLiteral"]=14]="NoSubstitutionTemplateLiteral";e[e["TemplateHead"]=15]="TemplateHead";e[e["TemplateMiddle"]=16]="TemplateMiddle";e[e["TemplateTail"]=17]="TemplateTail";e[e["OpenBraceToken"]=18]="OpenBraceToken";e[e["CloseBraceToken"]=19]="CloseBraceToken";e[e["OpenParenToken"]=20]="OpenParenToken";e[e["CloseParenToken"]=21]="CloseParenToken";e[e["OpenBracketToken"]=22]="OpenBracketToken";e[e["CloseBracketToken"]=23]="CloseBracketToken";e[e["DotToken"]=24]="DotToken";e[e["DotDotDotToken"]=25]="DotDotDotToken";e[e["SemicolonToken"]=26]="SemicolonToken";e[e["CommaToken"]=27]="CommaToken";e[e["LessThanToken"]=28]="LessThanToken";e[e["LessThanSlashToken"]=29]="LessThanSlashToken";e[e["GreaterThanToken"]=30]="GreaterThanToken";e[e["LessThanEqualsToken"]=31]="LessThanEqualsToken";e[e["GreaterThanEqualsToken"]=32]="GreaterThanEqualsToken";e[e["EqualsEqualsToken"]=33]="EqualsEqualsToken";e[e["ExclamationEqualsToken"]=34]="ExclamationEqualsToken";e[e["EqualsEqualsEqualsToken"]=35]="EqualsEqualsEqualsToken";e[e["ExclamationEqualsEqualsToken"]=36]="ExclamationEqualsEqualsToken";e[e["EqualsGreaterThanToken"]=37]="EqualsGreaterThanToken";e[e["PlusToken"]=38]="PlusToken";e[e["MinusToken"]=39]="MinusToken";e[e["AsteriskToken"]=40]="AsteriskToken";e[e["AsteriskAsteriskToken"]=41]="AsteriskAsteriskToken";e[e["SlashToken"]=42]="SlashToken";e[e["PercentToken"]=43]="PercentToken";e[e["PlusPlusToken"]=44]="PlusPlusToken";e[e["MinusMinusToken"]=45]="MinusMinusToken";e[e["LessThanLessThanToken"]=46]="LessThanLessThanToken";e[e["GreaterThanGreaterThanToken"]=47]="GreaterThanGreaterThanToken";e[e["GreaterThanGreaterThanGreaterThanToken"]=48]="GreaterThanGreaterThanGreaterThanToken";e[e["AmpersandToken"]=49]="AmpersandToken";e[e["BarToken"]=50]="BarToken";e[e["CaretToken"]=51]="CaretToken";e[e["ExclamationToken"]=52]="ExclamationToken";e[e["TildeToken"]=53]="TildeToken";e[e["AmpersandAmpersandToken"]=54]="AmpersandAmpersandToken";e[e["BarBarToken"]=55]="BarBarToken";e[e["QuestionToken"]=56]="QuestionToken";e[e["ColonToken"]=57]="ColonToken";e[e["AtToken"]=58]="AtToken";e[e["EqualsToken"]=59]="EqualsToken";e[e["PlusEqualsToken"]=60]="PlusEqualsToken";e[e["MinusEqualsToken"]=61]="MinusEqualsToken";e[e["AsteriskEqualsToken"]=62]="AsteriskEqualsToken";e[e["AsteriskAsteriskEqualsToken"]=63]="AsteriskAsteriskEqualsToken";e[e["SlashEqualsToken"]=64]="SlashEqualsToken";e[e["PercentEqualsToken"]=65]="PercentEqualsToken";e[e["LessThanLessThanEqualsToken"]=66]="LessThanLessThanEqualsToken";e[e["GreaterThanGreaterThanEqualsToken"]=67]="GreaterThanGreaterThanEqualsToken";e[e["GreaterThanGreaterThanGreaterThanEqualsToken"]=68]="GreaterThanGreaterThanGreaterThanEqualsToken";e[e["AmpersandEqualsToken"]=69]="AmpersandEqualsToken";e[e["BarEqualsToken"]=70]="BarEqualsToken";e[e["CaretEqualsToken"]=71]="CaretEqualsToken";e[e["Identifier"]=72]="Identifier";e[e["BreakKeyword"]=73]="BreakKeyword";e[e["CaseKeyword"]=74]="CaseKeyword";e[e["CatchKeyword"]=75]="CatchKeyword";e[e["ClassKeyword"]=76]="ClassKeyword";e[e["ConstKeyword"]=77]="ConstKeyword";e[e["ContinueKeyword"]=78]="ContinueKeyword";e[e["DebuggerKeyword"]=79]="DebuggerKeyword";e[e["DefaultKeyword"]=80]="DefaultKeyword";e[e["DeleteKeyword"]=81]="DeleteKeyword";e[e["DoKeyword"]=82]="DoKeyword";e[e["ElseKeyword"]=83]="ElseKeyword";e[e["EnumKeyword"]=84]="EnumKeyword";e[e["ExportKeyword"]=85]="ExportKeyword";e[e["ExtendsKeyword"]=86]="ExtendsKeyword";e[e["FalseKeyword"]=87]="FalseKeyword";e[e["FinallyKeyword"]=88]="FinallyKeyword";e[e["ForKeyword"]=89]="ForKeyword";e[e["FunctionKeyword"]=90]="FunctionKeyword";e[e["IfKeyword"]=91]="IfKeyword";e[e["ImportKeyword"]=92]="ImportKeyword";e[e["InKeyword"]=93]="InKeyword";e[e["InstanceOfKeyword"]=94]="InstanceOfKeyword";e[e["NewKeyword"]=95]="NewKeyword";e[e["NullKeyword"]=96]="NullKeyword";e[e["ReturnKeyword"]=97]="ReturnKeyword";e[e["SuperKeyword"]=98]="SuperKeyword";e[e["SwitchKeyword"]=99]="SwitchKeyword";e[e["ThisKeyword"]=100]="ThisKeyword";e[e["ThrowKeyword"]=101]="ThrowKeyword";e[e["TrueKeyword"]=102]="TrueKeyword";e[e["TryKeyword"]=103]="TryKeyword";e[e["TypeOfKeyword"]=104]="TypeOfKeyword";e[e["VarKeyword"]=105]="VarKeyword";e[e["VoidKeyword"]=106]="VoidKeyword";e[e["WhileKeyword"]=107]="WhileKeyword";e[e["WithKeyword"]=108]="WithKeyword";e[e["ImplementsKeyword"]=109]="ImplementsKeyword";e[e["InterfaceKeyword"]=110]="InterfaceKeyword";e[e["LetKeyword"]=111]="LetKeyword";e[e["PackageKeyword"]=112]="PackageKeyword";e[e["PrivateKeyword"]=113]="PrivateKeyword";e[e["ProtectedKeyword"]=114]="ProtectedKeyword";e[e["PublicKeyword"]=115]="PublicKeyword";e[e["StaticKeyword"]=116]="StaticKeyword";e[e["YieldKeyword"]=117]="YieldKeyword";e[e["AbstractKeyword"]=118]="AbstractKeyword";e[e["AsKeyword"]=119]="AsKeyword";e[e["AnyKeyword"]=120]="AnyKeyword";e[e["AsyncKeyword"]=121]="AsyncKeyword";e[e["AwaitKeyword"]=122]="AwaitKeyword";e[e["BooleanKeyword"]=123]="BooleanKeyword";e[e["ConstructorKeyword"]=124]="ConstructorKeyword";e[e["DeclareKeyword"]=125]="DeclareKeyword";e[e["GetKeyword"]=126]="GetKeyword";e[e["InferKeyword"]=127]="InferKeyword";e[e["IsKeyword"]=128]="IsKeyword";e[e["KeyOfKeyword"]=129]="KeyOfKeyword";e[e["ModuleKeyword"]=130]="ModuleKeyword";e[e["NamespaceKeyword"]=131]="NamespaceKeyword";e[e["NeverKeyword"]=132]="NeverKeyword";e[e["ReadonlyKeyword"]=133]="ReadonlyKeyword";e[e["RequireKeyword"]=134]="RequireKeyword";e[e["NumberKeyword"]=135]="NumberKeyword";e[e["ObjectKeyword"]=136]="ObjectKeyword";e[e["SetKeyword"]=137]="SetKeyword";e[e["StringKeyword"]=138]="StringKeyword";e[e["SymbolKeyword"]=139]="SymbolKeyword";e[e["TypeKeyword"]=140]="TypeKeyword";e[e["UndefinedKeyword"]=141]="UndefinedKeyword";e[e["UniqueKeyword"]=142]="UniqueKeyword";e[e["UnknownKeyword"]=143]="UnknownKeyword";e[e["FromKeyword"]=144]="FromKeyword";e[e["GlobalKeyword"]=145]="GlobalKeyword";e[e["BigIntKeyword"]=146]="BigIntKeyword";e[e["OfKeyword"]=147]="OfKeyword";e[e["QualifiedName"]=148]="QualifiedName";e[e["ComputedPropertyName"]=149]="ComputedPropertyName";e[e["TypeParameter"]=150]="TypeParameter";e[e["Parameter"]=151]="Parameter";e[e["Decorator"]=152]="Decorator";e[e["PropertySignature"]=153]="PropertySignature";e[e["PropertyDeclaration"]=154]="PropertyDeclaration";e[e["MethodSignature"]=155]="MethodSignature";e[e["MethodDeclaration"]=156]="MethodDeclaration";e[e["Constructor"]=157]="Constructor";e[e["GetAccessor"]=158]="GetAccessor";e[e["SetAccessor"]=159]="SetAccessor";e[e["CallSignature"]=160]="CallSignature";e[e["ConstructSignature"]=161]="ConstructSignature";e[e["IndexSignature"]=162]="IndexSignature";e[e["TypePredicate"]=163]="TypePredicate";e[e["TypeReference"]=164]="TypeReference";e[e["FunctionType"]=165]="FunctionType";e[e["ConstructorType"]=166]="ConstructorType";e[e["TypeQuery"]=167]="TypeQuery";e[e["TypeLiteral"]=168]="TypeLiteral";e[e["ArrayType"]=169]="ArrayType";e[e["TupleType"]=170]="TupleType";e[e["OptionalType"]=171]="OptionalType";e[e["RestType"]=172]="RestType";e[e["UnionType"]=173]="UnionType";e[e["IntersectionType"]=174]="IntersectionType";e[e["ConditionalType"]=175]="ConditionalType";e[e["InferType"]=176]="InferType";e[e["ParenthesizedType"]=177]="ParenthesizedType";e[e["ThisType"]=178]="ThisType";e[e["TypeOperator"]=179]="TypeOperator";e[e["IndexedAccessType"]=180]="IndexedAccessType";e[e["MappedType"]=181]="MappedType";e[e["LiteralType"]=182]="LiteralType";e[e["ImportType"]=183]="ImportType";e[e["ObjectBindingPattern"]=184]="ObjectBindingPattern";e[e["ArrayBindingPattern"]=185]="ArrayBindingPattern";e[e["BindingElement"]=186]="BindingElement";e[e["ArrayLiteralExpression"]=187]="ArrayLiteralExpression";e[e["ObjectLiteralExpression"]=188]="ObjectLiteralExpression";e[e["PropertyAccessExpression"]=189]="PropertyAccessExpression";e[e["ElementAccessExpression"]=190]="ElementAccessExpression";e[e["CallExpression"]=191]="CallExpression";e[e["NewExpression"]=192]="NewExpression";e[e["TaggedTemplateExpression"]=193]="TaggedTemplateExpression";e[e["TypeAssertionExpression"]=194]="TypeAssertionExpression";e[e["ParenthesizedExpression"]=195]="ParenthesizedExpression";e[e["FunctionExpression"]=196]="FunctionExpression";e[e["ArrowFunction"]=197]="ArrowFunction";e[e["DeleteExpression"]=198]="DeleteExpression";e[e["TypeOfExpression"]=199]="TypeOfExpression";e[e["VoidExpression"]=200]="VoidExpression";e[e["AwaitExpression"]=201]="AwaitExpression";e[e["PrefixUnaryExpression"]=202]="PrefixUnaryExpression";e[e["PostfixUnaryExpression"]=203]="PostfixUnaryExpression";e[e["BinaryExpression"]=204]="BinaryExpression";e[e["ConditionalExpression"]=205]="ConditionalExpression";e[e["TemplateExpression"]=206]="TemplateExpression";e[e["YieldExpression"]=207]="YieldExpression";e[e["SpreadElement"]=208]="SpreadElement";e[e["ClassExpression"]=209]="ClassExpression";e[e["OmittedExpression"]=210]="OmittedExpression";e[e["ExpressionWithTypeArguments"]=211]="ExpressionWithTypeArguments";e[e["AsExpression"]=212]="AsExpression";e[e["NonNullExpression"]=213]="NonNullExpression";e[e["MetaProperty"]=214]="MetaProperty";e[e["SyntheticExpression"]=215]="SyntheticExpression";e[e["TemplateSpan"]=216]="TemplateSpan";e[e["SemicolonClassElement"]=217]="SemicolonClassElement";e[e["Block"]=218]="Block";e[e["VariableStatement"]=219]="VariableStatement";e[e["EmptyStatement"]=220]="EmptyStatement";e[e["ExpressionStatement"]=221]="ExpressionStatement";e[e["IfStatement"]=222]="IfStatement";e[e["DoStatement"]=223]="DoStatement";e[e["WhileStatement"]=224]="WhileStatement";e[e["ForStatement"]=225]="ForStatement";e[e["ForInStatement"]=226]="ForInStatement";e[e["ForOfStatement"]=227]="ForOfStatement";e[e["ContinueStatement"]=228]="ContinueStatement";e[e["BreakStatement"]=229]="BreakStatement";e[e["ReturnStatement"]=230]="ReturnStatement";e[e["WithStatement"]=231]="WithStatement";e[e["SwitchStatement"]=232]="SwitchStatement";e[e["LabeledStatement"]=233]="LabeledStatement";e[e["ThrowStatement"]=234]="ThrowStatement";e[e["TryStatement"]=235]="TryStatement";e[e["DebuggerStatement"]=236]="DebuggerStatement";e[e["VariableDeclaration"]=237]="VariableDeclaration";e[e["VariableDeclarationList"]=238]="VariableDeclarationList";e[e["FunctionDeclaration"]=239]="FunctionDeclaration";e[e["ClassDeclaration"]=240]="ClassDeclaration";e[e["InterfaceDeclaration"]=241]="InterfaceDeclaration";e[e["TypeAliasDeclaration"]=242]="TypeAliasDeclaration";e[e["EnumDeclaration"]=243]="EnumDeclaration";e[e["ModuleDeclaration"]=244]="ModuleDeclaration";e[e["ModuleBlock"]=245]="ModuleBlock";e[e["CaseBlock"]=246]="CaseBlock";e[e["NamespaceExportDeclaration"]=247]="NamespaceExportDeclaration";e[e["ImportEqualsDeclaration"]=248]="ImportEqualsDeclaration";e[e["ImportDeclaration"]=249]="ImportDeclaration";e[e["ImportClause"]=250]="ImportClause";e[e["NamespaceImport"]=251]="NamespaceImport";e[e["NamedImports"]=252]="NamedImports";e[e["ImportSpecifier"]=253]="ImportSpecifier";e[e["ExportAssignment"]=254]="ExportAssignment";e[e["ExportDeclaration"]=255]="ExportDeclaration";e[e["NamedExports"]=256]="NamedExports";e[e["ExportSpecifier"]=257]="ExportSpecifier";e[e["MissingDeclaration"]=258]="MissingDeclaration";e[e["ExternalModuleReference"]=259]="ExternalModuleReference";e[e["JsxElement"]=260]="JsxElement";e[e["JsxSelfClosingElement"]=261]="JsxSelfClosingElement";e[e["JsxOpeningElement"]=262]="JsxOpeningElement";e[e["JsxClosingElement"]=263]="JsxClosingElement";e[e["JsxFragment"]=264]="JsxFragment";e[e["JsxOpeningFragment"]=265]="JsxOpeningFragment";e[e["JsxClosingFragment"]=266]="JsxClosingFragment";e[e["JsxAttribute"]=267]="JsxAttribute";e[e["JsxAttributes"]=268]="JsxAttributes";e[e["JsxSpreadAttribute"]=269]="JsxSpreadAttribute";e[e["JsxExpression"]=270]="JsxExpression";e[e["CaseClause"]=271]="CaseClause";e[e["DefaultClause"]=272]="DefaultClause";e[e["HeritageClause"]=273]="HeritageClause";e[e["CatchClause"]=274]="CatchClause";e[e["PropertyAssignment"]=275]="PropertyAssignment";e[e["ShorthandPropertyAssignment"]=276]="ShorthandPropertyAssignment";e[e["SpreadAssignment"]=277]="SpreadAssignment";e[e["EnumMember"]=278]="EnumMember";e[e["SourceFile"]=279]="SourceFile";e[e["Bundle"]=280]="Bundle";e[e["UnparsedSource"]=281]="UnparsedSource";e[e["InputFiles"]=282]="InputFiles";e[e["JSDocTypeExpression"]=283]="JSDocTypeExpression";e[e["JSDocAllType"]=284]="JSDocAllType";e[e["JSDocUnknownType"]=285]="JSDocUnknownType";e[e["JSDocNullableType"]=286]="JSDocNullableType";e[e["JSDocNonNullableType"]=287]="JSDocNonNullableType";e[e["JSDocOptionalType"]=288]="JSDocOptionalType";e[e["JSDocFunctionType"]=289]="JSDocFunctionType";e[e["JSDocVariadicType"]=290]="JSDocVariadicType";e[e["JSDocComment"]=291]="JSDocComment";e[e["JSDocTypeLiteral"]=292]="JSDocTypeLiteral";e[e["JSDocSignature"]=293]="JSDocSignature";e[e["JSDocTag"]=294]="JSDocTag";e[e["JSDocAugmentsTag"]=295]="JSDocAugmentsTag";e[e["JSDocClassTag"]=296]="JSDocClassTag";e[e["JSDocCallbackTag"]=297]="JSDocCallbackTag";e[e["JSDocEnumTag"]=298]="JSDocEnumTag";e[e["JSDocParameterTag"]=299]="JSDocParameterTag";e[e["JSDocReturnTag"]=300]="JSDocReturnTag";e[e["JSDocThisTag"]=301]="JSDocThisTag";e[e["JSDocTypeTag"]=302]="JSDocTypeTag";e[e["JSDocTemplateTag"]=303]="JSDocTemplateTag";e[e["JSDocTypedefTag"]=304]="JSDocTypedefTag";e[e["JSDocPropertyTag"]=305]="JSDocPropertyTag";e[e["SyntaxList"]=306]="SyntaxList";e[e["NotEmittedStatement"]=307]="NotEmittedStatement";e[e["PartiallyEmittedExpression"]=308]="PartiallyEmittedExpression";e[e["CommaListExpression"]=309]="CommaListExpression";e[e["MergeDeclarationMarker"]=310]="MergeDeclarationMarker";e[e["EndOfDeclarationMarker"]=311]="EndOfDeclarationMarker";e[e["Count"]=312]="Count";e[e["FirstAssignment"]=59]="FirstAssignment";e[e["LastAssignment"]=71]="LastAssignment";e[e["FirstCompoundAssignment"]=60]="FirstCompoundAssignment";e[e["LastCompoundAssignment"]=71]="LastCompoundAssignment";e[e["FirstReservedWord"]=73]="FirstReservedWord";e[e["LastReservedWord"]=108]="LastReservedWord";e[e["FirstKeyword"]=73]="FirstKeyword";e[e["LastKeyword"]=147]="LastKeyword";e[e["FirstFutureReservedWord"]=109]="FirstFutureReservedWord";e[e["LastFutureReservedWord"]=117]="LastFutureReservedWord";e[e["FirstTypeNode"]=163]="FirstTypeNode";e[e["LastTypeNode"]=183]="LastTypeNode";e[e["FirstPunctuation"]=18]="FirstPunctuation";e[e["LastPunctuation"]=71]="LastPunctuation";e[e["FirstToken"]=0]="FirstToken";e[e["LastToken"]=147]="LastToken";e[e["FirstTriviaToken"]=2]="FirstTriviaToken";e[e["LastTriviaToken"]=7]="LastTriviaToken";e[e["FirstLiteralToken"]=8]="FirstLiteralToken";e[e["LastLiteralToken"]=14]="LastLiteralToken";e[e["FirstTemplateToken"]=14]="FirstTemplateToken";e[e["LastTemplateToken"]=17]="LastTemplateToken";e[e["FirstBinaryOperator"]=28]="FirstBinaryOperator";e[e["LastBinaryOperator"]=71]="LastBinaryOperator";e[e["FirstNode"]=148]="FirstNode";e[e["FirstJSDocNode"]=283]="FirstJSDocNode";e[e["LastJSDocNode"]=305]="LastJSDocNode";e[e["FirstJSDocTagNode"]=294]="FirstJSDocTagNode";e[e["LastJSDocTagNode"]=305]="LastJSDocTagNode";e[e["FirstContextualKeyword"]=118]="FirstContextualKeyword";e[e["LastContextualKeyword"]=147]="LastContextualKeyword"})(t=e.SyntaxKind||(e.SyntaxKind={}));var r;(function(e){e[e["None"]=0]="None";e[e["Let"]=1]="Let";e[e["Const"]=2]="Const";e[e["NestedNamespace"]=4]="NestedNamespace";e[e["Synthesized"]=8]="Synthesized";e[e["Namespace"]=16]="Namespace";e[e["ExportContext"]=32]="ExportContext";e[e["ContainsThis"]=64]="ContainsThis";e[e["HasImplicitReturn"]=128]="HasImplicitReturn";e[e["HasExplicitReturn"]=256]="HasExplicitReturn";e[e["GlobalAugmentation"]=512]="GlobalAugmentation";e[e["HasAsyncFunctions"]=1024]="HasAsyncFunctions";e[e["DisallowInContext"]=2048]="DisallowInContext";e[e["YieldContext"]=4096]="YieldContext";e[e["DecoratorContext"]=8192]="DecoratorContext";e[e["AwaitContext"]=16384]="AwaitContext";e[e["ThisNodeHasError"]=32768]="ThisNodeHasError";e[e["JavaScriptFile"]=65536]="JavaScriptFile";e[e["ThisNodeOrAnySubNodesHasError"]=131072]="ThisNodeOrAnySubNodesHasError";e[e["HasAggregatedChildData"]=262144]="HasAggregatedChildData";e[e["PossiblyContainsDynamicImport"]=524288]="PossiblyContainsDynamicImport";e[e["PossiblyContainsImportMeta"]=1048576]="PossiblyContainsImportMeta";e[e["JSDoc"]=2097152]="JSDoc";e[e["Ambient"]=4194304]="Ambient";e[e["InWithStatement"]=8388608]="InWithStatement";e[e["JsonFile"]=16777216]="JsonFile";e[e["BlockScoped"]=3]="BlockScoped";e[e["ReachabilityCheckFlags"]=384]="ReachabilityCheckFlags";e[e["ReachabilityAndEmitFlags"]=1408]="ReachabilityAndEmitFlags";e[e["ContextFlags"]=12679168]="ContextFlags";e[e["TypeExcludesFlags"]=20480]="TypeExcludesFlags";e[e["PermanentlySetIncrementalFlags"]=1572864]="PermanentlySetIncrementalFlags"})(r=e.NodeFlags||(e.NodeFlags={}));var n;(function(e){e[e["None"]=0]="None";e[e["Export"]=1]="Export";e[e["Ambient"]=2]="Ambient";e[e["Public"]=4]="Public";e[e["Private"]=8]="Private";e[e["Protected"]=16]="Protected";e[e["Static"]=32]="Static";e[e["Readonly"]=64]="Readonly";e[e["Abstract"]=128]="Abstract";e[e["Async"]=256]="Async";e[e["Default"]=512]="Default";e[e["Const"]=2048]="Const";e[e["HasComputedFlags"]=536870912]="HasComputedFlags";e[e["AccessibilityModifier"]=28]="AccessibilityModifier";e[e["ParameterPropertyModifier"]=92]="ParameterPropertyModifier";e[e["NonPublicAccessibilityModifier"]=24]="NonPublicAccessibilityModifier";e[e["TypeScriptModifier"]=2270]="TypeScriptModifier";e[e["ExportDefault"]=513]="ExportDefault";e[e["All"]=3071]="All"})(n=e.ModifierFlags||(e.ModifierFlags={}));var i;(function(e){e[e["None"]=0]="None";e[e["IntrinsicNamedElement"]=1]="IntrinsicNamedElement";e[e["IntrinsicIndexedElement"]=2]="IntrinsicIndexedElement";e[e["IntrinsicElement"]=3]="IntrinsicElement"})(i=e.JsxFlags||(e.JsxFlags={}));var a;(function(e){e[e["Succeeded"]=1]="Succeeded";e[e["Failed"]=2]="Failed";e[e["FailedAndReported"]=3]="FailedAndReported"})(a=e.RelationComparisonResult||(e.RelationComparisonResult={}));var o;(function(e){e[e["None"]=0]="None";e[e["Auto"]=1]="Auto";e[e["Loop"]=2]="Loop";e[e["Unique"]=3]="Unique";e[e["Node"]=4]="Node";e[e["KindMask"]=7]="KindMask";e[e["ReservedInNestedScopes"]=8]="ReservedInNestedScopes";e[e["Optimistic"]=16]="Optimistic";e[e["FileLevel"]=32]="FileLevel"})(o=e.GeneratedIdentifierFlags||(e.GeneratedIdentifierFlags={}));var s;(function(e){e[e["None"]=0]="None";e[e["PrecedingLineBreak"]=1]="PrecedingLineBreak";e[e["PrecedingJSDocComment"]=2]="PrecedingJSDocComment";e[e["Unterminated"]=4]="Unterminated";e[e["ExtendedUnicodeEscape"]=8]="ExtendedUnicodeEscape";e[e["Scientific"]=16]="Scientific";e[e["Octal"]=32]="Octal";e[e["HexSpecifier"]=64]="HexSpecifier";e[e["BinarySpecifier"]=128]="BinarySpecifier";e[e["OctalSpecifier"]=256]="OctalSpecifier";e[e["ContainsSeparator"]=512]="ContainsSeparator";e[e["BinaryOrOctalSpecifier"]=384]="BinaryOrOctalSpecifier";e[e["NumericLiteralFlags"]=1008]="NumericLiteralFlags"})(s=e.TokenFlags||(e.TokenFlags={}));var c;(function(e){e[e["Unreachable"]=1]="Unreachable";e[e["Start"]=2]="Start";e[e["BranchLabel"]=4]="BranchLabel";e[e["LoopLabel"]=8]="LoopLabel";e[e["Assignment"]=16]="Assignment";e[e["TrueCondition"]=32]="TrueCondition";e[e["FalseCondition"]=64]="FalseCondition";e[e["SwitchClause"]=128]="SwitchClause";e[e["ArrayMutation"]=256]="ArrayMutation";e[e["Referenced"]=512]="Referenced";e[e["Shared"]=1024]="Shared";e[e["PreFinally"]=2048]="PreFinally";e[e["AfterFinally"]=4096]="AfterFinally";e[e["Label"]=12]="Label";e[e["Condition"]=96]="Condition"})(c=e.FlowFlags||(e.FlowFlags={}));var u=function(){function OperationCanceledException(){}return OperationCanceledException}();e.OperationCanceledException=u;var l;(function(e){e[e["Not"]=0]="Not";e[e["SafeModules"]=1]="SafeModules";e[e["Completely"]=2]="Completely"})(l=e.StructureIsReused||(e.StructureIsReused={}));var f;(function(e){e[e["Success"]=0]="Success";e[e["DiagnosticsPresent_OutputsSkipped"]=1]="DiagnosticsPresent_OutputsSkipped";e[e["DiagnosticsPresent_OutputsGenerated"]=2]="DiagnosticsPresent_OutputsGenerated"})(f=e.ExitStatus||(e.ExitStatus={}));var d;(function(e){e[e["None"]=0]="None";e[e["Literal"]=1]="Literal";e[e["Subtype"]=2]="Subtype"})(d=e.UnionReduction||(e.UnionReduction={}));var p;(function(e){e[e["None"]=0]="None";e[e["NoTruncation"]=1]="NoTruncation";e[e["WriteArrayAsGenericType"]=2]="WriteArrayAsGenericType";e[e["GenerateNamesForShadowedTypeParams"]=4]="GenerateNamesForShadowedTypeParams";e[e["UseStructuralFallback"]=8]="UseStructuralFallback";e[e["ForbidIndexedAccessSymbolReferences"]=16]="ForbidIndexedAccessSymbolReferences";e[e["WriteTypeArgumentsOfSignature"]=32]="WriteTypeArgumentsOfSignature";e[e["UseFullyQualifiedType"]=64]="UseFullyQualifiedType";e[e["UseOnlyExternalAliasing"]=128]="UseOnlyExternalAliasing";e[e["SuppressAnyReturnType"]=256]="SuppressAnyReturnType";e[e["WriteTypeParametersInQualifiedName"]=512]="WriteTypeParametersInQualifiedName";e[e["MultilineObjectLiterals"]=1024]="MultilineObjectLiterals";e[e["WriteClassExpressionAsTypeLiteral"]=2048]="WriteClassExpressionAsTypeLiteral";e[e["UseTypeOfFunction"]=4096]="UseTypeOfFunction";e[e["OmitParameterModifiers"]=8192]="OmitParameterModifiers";e[e["UseAliasDefinedOutsideCurrentScope"]=16384]="UseAliasDefinedOutsideCurrentScope";e[e["AllowThisInObjectLiteral"]=32768]="AllowThisInObjectLiteral";e[e["AllowQualifedNameInPlaceOfIdentifier"]=65536]="AllowQualifedNameInPlaceOfIdentifier";e[e["AllowAnonymousIdentifier"]=131072]="AllowAnonymousIdentifier";e[e["AllowEmptyUnionOrIntersection"]=262144]="AllowEmptyUnionOrIntersection";e[e["AllowEmptyTuple"]=524288]="AllowEmptyTuple";e[e["AllowUniqueESSymbolType"]=1048576]="AllowUniqueESSymbolType";e[e["AllowEmptyIndexInfoType"]=2097152]="AllowEmptyIndexInfoType";e[e["AllowNodeModulesRelativePaths"]=67108864]="AllowNodeModulesRelativePaths";e[e["DoNotIncludeSymbolChain"]=134217728]="DoNotIncludeSymbolChain";e[e["IgnoreErrors"]=70221824]="IgnoreErrors";e[e["InObjectTypeLiteral"]=4194304]="InObjectTypeLiteral";e[e["InTypeAlias"]=8388608]="InTypeAlias";e[e["InInitialEntityName"]=16777216]="InInitialEntityName";e[e["InReverseMappedType"]=33554432]="InReverseMappedType"})(p=e.NodeBuilderFlags||(e.NodeBuilderFlags={}));var g;(function(e){e[e["None"]=0]="None";e[e["NoTruncation"]=1]="NoTruncation";e[e["WriteArrayAsGenericType"]=2]="WriteArrayAsGenericType";e[e["UseStructuralFallback"]=8]="UseStructuralFallback";e[e["WriteTypeArgumentsOfSignature"]=32]="WriteTypeArgumentsOfSignature";e[e["UseFullyQualifiedType"]=64]="UseFullyQualifiedType";e[e["SuppressAnyReturnType"]=256]="SuppressAnyReturnType";e[e["MultilineObjectLiterals"]=1024]="MultilineObjectLiterals";e[e["WriteClassExpressionAsTypeLiteral"]=2048]="WriteClassExpressionAsTypeLiteral";e[e["UseTypeOfFunction"]=4096]="UseTypeOfFunction";e[e["OmitParameterModifiers"]=8192]="OmitParameterModifiers";e[e["UseAliasDefinedOutsideCurrentScope"]=16384]="UseAliasDefinedOutsideCurrentScope";e[e["AllowUniqueESSymbolType"]=1048576]="AllowUniqueESSymbolType";e[e["AddUndefined"]=131072]="AddUndefined";e[e["WriteArrowStyleSignature"]=262144]="WriteArrowStyleSignature";e[e["InArrayType"]=524288]="InArrayType";e[e["InElementType"]=2097152]="InElementType";e[e["InFirstTypeArgument"]=4194304]="InFirstTypeArgument";e[e["InTypeAlias"]=8388608]="InTypeAlias";e[e["WriteOwnNameForAnyLike"]=0]="WriteOwnNameForAnyLike";e[e["NodeBuilderFlagsMask"]=9469291]="NodeBuilderFlagsMask"})(g=e.TypeFormatFlags||(e.TypeFormatFlags={}));var _;(function(e){e[e["None"]=0]="None";e[e["WriteTypeParametersOrArguments"]=1]="WriteTypeParametersOrArguments";e[e["UseOnlyExternalAliasing"]=2]="UseOnlyExternalAliasing";e[e["AllowAnyNodeKind"]=4]="AllowAnyNodeKind";e[e["UseAliasDefinedOutsideCurrentScope"]=8]="UseAliasDefinedOutsideCurrentScope";e[e["DoNotIncludeSymbolChain"]=16]="DoNotIncludeSymbolChain"})(_=e.SymbolFormatFlags||(e.SymbolFormatFlags={}));var m;(function(e){e[e["Accessible"]=0]="Accessible";e[e["NotAccessible"]=1]="NotAccessible";e[e["CannotBeNamed"]=2]="CannotBeNamed"})(m=e.SymbolAccessibility||(e.SymbolAccessibility={}));var y;(function(e){e[e["UnionOrIntersection"]=0]="UnionOrIntersection";e[e["Spread"]=1]="Spread"})(y=e.SyntheticSymbolKind||(e.SyntheticSymbolKind={}));var h;(function(e){e[e["This"]=0]="This";e[e["Identifier"]=1]="Identifier"})(h=e.TypePredicateKind||(e.TypePredicateKind={}));var v;(function(e){e[e["Unknown"]=0]="Unknown";e[e["TypeWithConstructSignatureAndValue"]=1]="TypeWithConstructSignatureAndValue";e[e["VoidNullableOrNeverType"]=2]="VoidNullableOrNeverType";e[e["NumberLikeType"]=3]="NumberLikeType";e[e["BigIntLikeType"]=4]="BigIntLikeType";e[e["StringLikeType"]=5]="StringLikeType";e[e["BooleanType"]=6]="BooleanType";e[e["ArrayLikeType"]=7]="ArrayLikeType";e[e["ESSymbolType"]=8]="ESSymbolType";e[e["Promise"]=9]="Promise";e[e["TypeWithCallSignature"]=10]="TypeWithCallSignature";e[e["ObjectType"]=11]="ObjectType"})(v=e.TypeReferenceSerializationKind||(e.TypeReferenceSerializationKind={}));var T;(function(e){e[e["None"]=0]="None";e[e["FunctionScopedVariable"]=1]="FunctionScopedVariable";e[e["BlockScopedVariable"]=2]="BlockScopedVariable";e[e["Property"]=4]="Property";e[e["EnumMember"]=8]="EnumMember";e[e["Function"]=16]="Function";e[e["Class"]=32]="Class";e[e["Interface"]=64]="Interface";e[e["ConstEnum"]=128]="ConstEnum";e[e["RegularEnum"]=256]="RegularEnum";e[e["ValueModule"]=512]="ValueModule";e[e["NamespaceModule"]=1024]="NamespaceModule";e[e["TypeLiteral"]=2048]="TypeLiteral";e[e["ObjectLiteral"]=4096]="ObjectLiteral";e[e["Method"]=8192]="Method";e[e["Constructor"]=16384]="Constructor";e[e["GetAccessor"]=32768]="GetAccessor";e[e["SetAccessor"]=65536]="SetAccessor";e[e["Signature"]=131072]="Signature";e[e["TypeParameter"]=262144]="TypeParameter";e[e["TypeAlias"]=524288]="TypeAlias";e[e["ExportValue"]=1048576]="ExportValue";e[e["Alias"]=2097152]="Alias";e[e["Prototype"]=4194304]="Prototype";e[e["ExportStar"]=8388608]="ExportStar";e[e["Optional"]=16777216]="Optional";e[e["Transient"]=33554432]="Transient";e[e["Assignment"]=67108864]="Assignment";e[e["ModuleExports"]=134217728]="ModuleExports";e[e["All"]=67108863]="All";e[e["Enum"]=384]="Enum";e[e["Variable"]=3]="Variable";e[e["Value"]=67220415]="Value";e[e["Type"]=67897832]="Type";e[e["Namespace"]=1920]="Namespace";e[e["Module"]=1536]="Module";e[e["Accessor"]=98304]="Accessor";e[e["FunctionScopedVariableExcludes"]=67220414]="FunctionScopedVariableExcludes";e[e["BlockScopedVariableExcludes"]=67220415]="BlockScopedVariableExcludes";e[e["ParameterExcludes"]=67220415]="ParameterExcludes";e[e["PropertyExcludes"]=0]="PropertyExcludes";e[e["EnumMemberExcludes"]=68008959]="EnumMemberExcludes";e[e["FunctionExcludes"]=67219887]="FunctionExcludes";e[e["ClassExcludes"]=68008383]="ClassExcludes";e[e["InterfaceExcludes"]=67897736]="InterfaceExcludes";e[e["RegularEnumExcludes"]=68008191]="RegularEnumExcludes";e[e["ConstEnumExcludes"]=68008831]="ConstEnumExcludes";e[e["ValueModuleExcludes"]=110735]="ValueModuleExcludes";e[e["NamespaceModuleExcludes"]=0]="NamespaceModuleExcludes";e[e["MethodExcludes"]=67212223]="MethodExcludes";e[e["GetAccessorExcludes"]=67154879]="GetAccessorExcludes";e[e["SetAccessorExcludes"]=67187647]="SetAccessorExcludes";e[e["TypeParameterExcludes"]=67635688]="TypeParameterExcludes";e[e["TypeAliasExcludes"]=67897832]="TypeAliasExcludes";e[e["AliasExcludes"]=2097152]="AliasExcludes";e[e["ModuleMember"]=2623475]="ModuleMember";e[e["ExportHasLocal"]=944]="ExportHasLocal";e[e["BlockScoped"]=418]="BlockScoped";e[e["PropertyOrAccessor"]=98308]="PropertyOrAccessor";e[e["ClassMember"]=106500]="ClassMember";e[e["Classifiable"]=2885600]="Classifiable";e[e["LateBindingContainer"]=6240]="LateBindingContainer"})(T=e.SymbolFlags||(e.SymbolFlags={}));var S;(function(e){e[e["Numeric"]=0]="Numeric";e[e["Literal"]=1]="Literal"})(S=e.EnumKind||(e.EnumKind={}));var b;(function(e){e[e["Instantiated"]=1]="Instantiated";e[e["SyntheticProperty"]=2]="SyntheticProperty";e[e["SyntheticMethod"]=4]="SyntheticMethod";e[e["Readonly"]=8]="Readonly";e[e["Partial"]=16]="Partial";e[e["HasNonUniformType"]=32]="HasNonUniformType";e[e["ContainsPublic"]=64]="ContainsPublic";e[e["ContainsProtected"]=128]="ContainsProtected";e[e["ContainsPrivate"]=256]="ContainsPrivate";e[e["ContainsStatic"]=512]="ContainsStatic";e[e["Late"]=1024]="Late";e[e["ReverseMapped"]=2048]="ReverseMapped";e[e["OptionalParameter"]=4096]="OptionalParameter";e[e["RestParameter"]=8192]="RestParameter";e[e["Synthetic"]=6]="Synthetic"})(b=e.CheckFlags||(e.CheckFlags={}));var x;(function(e){e["Call"]="__call";e["Constructor"]="__constructor";e["New"]="__new";e["Index"]="__index";e["ExportStar"]="__export";e["Global"]="__global";e["Missing"]="__missing";e["Type"]="__type";e["Object"]="__object";e["JSXAttributes"]="__jsxAttributes";e["Class"]="__class";e["Function"]="__function";e["Computed"]="__computed";e["Resolving"]="__resolving__";e["ExportEquals"]="export=";e["Default"]="default";e["This"]="this"})(x=e.InternalSymbolName||(e.InternalSymbolName={}));var C;(function(e){e[e["TypeChecked"]=1]="TypeChecked";e[e["LexicalThis"]=2]="LexicalThis";e[e["CaptureThis"]=4]="CaptureThis";e[e["CaptureNewTarget"]=8]="CaptureNewTarget";e[e["SuperInstance"]=256]="SuperInstance";e[e["SuperStatic"]=512]="SuperStatic";e[e["ContextChecked"]=1024]="ContextChecked";e[e["AsyncMethodWithSuper"]=2048]="AsyncMethodWithSuper";e[e["AsyncMethodWithSuperBinding"]=4096]="AsyncMethodWithSuperBinding";e[e["CaptureArguments"]=8192]="CaptureArguments";e[e["EnumValuesComputed"]=16384]="EnumValuesComputed";e[e["LexicalModuleMergesWithClass"]=32768]="LexicalModuleMergesWithClass";e[e["LoopWithCapturedBlockScopedBinding"]=65536]="LoopWithCapturedBlockScopedBinding";e[e["ContainsCapturedBlockScopeBinding"]=131072]="ContainsCapturedBlockScopeBinding";e[e["CapturedBlockScopedBinding"]=262144]="CapturedBlockScopedBinding";e[e["BlockScopedBindingInLoop"]=524288]="BlockScopedBindingInLoop";e[e["ClassWithBodyScopedClassBinding"]=1048576]="ClassWithBodyScopedClassBinding";e[e["BodyScopedClassBinding"]=2097152]="BodyScopedClassBinding";e[e["NeedsLoopOutParameter"]=4194304]="NeedsLoopOutParameter";e[e["AssignmentsMarked"]=8388608]="AssignmentsMarked";e[e["ClassWithConstructorReference"]=16777216]="ClassWithConstructorReference";e[e["ConstructorReferenceInClass"]=33554432]="ConstructorReferenceInClass"})(C=e.NodeCheckFlags||(e.NodeCheckFlags={}));var E;(function(e){e[e["Any"]=1]="Any";e[e["Unknown"]=2]="Unknown";e[e["String"]=4]="String";e[e["Number"]=8]="Number";e[e["Boolean"]=16]="Boolean";e[e["Enum"]=32]="Enum";e[e["BigInt"]=64]="BigInt";e[e["StringLiteral"]=128]="StringLiteral";e[e["NumberLiteral"]=256]="NumberLiteral";e[e["BooleanLiteral"]=512]="BooleanLiteral";e[e["EnumLiteral"]=1024]="EnumLiteral";e[e["BigIntLiteral"]=2048]="BigIntLiteral";e[e["ESSymbol"]=4096]="ESSymbol";e[e["UniqueESSymbol"]=8192]="UniqueESSymbol";e[e["Void"]=16384]="Void";e[e["Undefined"]=32768]="Undefined";e[e["Null"]=65536]="Null";e[e["Never"]=131072]="Never";e[e["TypeParameter"]=262144]="TypeParameter";e[e["Object"]=524288]="Object";e[e["Union"]=1048576]="Union";e[e["Intersection"]=2097152]="Intersection";e[e["Index"]=4194304]="Index";e[e["IndexedAccess"]=8388608]="IndexedAccess";e[e["Conditional"]=16777216]="Conditional";e[e["Substitution"]=33554432]="Substitution";e[e["NonPrimitive"]=67108864]="NonPrimitive";e[e["ContainsWideningType"]=134217728]="ContainsWideningType";e[e["ContainsObjectLiteral"]=268435456]="ContainsObjectLiteral";e[e["ContainsAnyFunctionType"]=536870912]="ContainsAnyFunctionType";e[e["AnyOrUnknown"]=3]="AnyOrUnknown";e[e["Nullable"]=98304]="Nullable";e[e["Literal"]=2944]="Literal";e[e["Unit"]=109440]="Unit";e[e["StringOrNumberLiteral"]=384]="StringOrNumberLiteral";e[e["StringOrNumberLiteralOrUnique"]=8576]="StringOrNumberLiteralOrUnique";e[e["DefinitelyFalsy"]=117632]="DefinitelyFalsy";e[e["PossiblyFalsy"]=117724]="PossiblyFalsy";e[e["Intrinsic"]=67359327]="Intrinsic";e[e["Primitive"]=131068]="Primitive";e[e["StringLike"]=132]="StringLike";e[e["NumberLike"]=296]="NumberLike";e[e["BigIntLike"]=2112]="BigIntLike";e[e["BooleanLike"]=528]="BooleanLike";e[e["EnumLike"]=1056]="EnumLike";e[e["ESSymbolLike"]=12288]="ESSymbolLike";e[e["VoidLike"]=49152]="VoidLike";e[e["DisjointDomains"]=67238908]="DisjointDomains";e[e["UnionOrIntersection"]=3145728]="UnionOrIntersection";e[e["StructuredType"]=3670016]="StructuredType";e[e["TypeVariable"]=8650752]="TypeVariable";e[e["InstantiableNonPrimitive"]=58982400]="InstantiableNonPrimitive";e[e["InstantiablePrimitive"]=4194304]="InstantiablePrimitive";e[e["Instantiable"]=63176704]="Instantiable";e[e["StructuredOrInstantiable"]=66846720]="StructuredOrInstantiable";e[e["Narrowable"]=133970943]="Narrowable";e[e["NotUnionOrUnit"]=67637251]="NotUnionOrUnit";e[e["NotPrimitiveUnion"]=66994211]="NotPrimitiveUnion";e[e["RequiresWidening"]=402653184]="RequiresWidening";e[e["PropagatingFlags"]=939524096]="PropagatingFlags";e[e["NonWideningType"]=134217728]="NonWideningType";e[e["Wildcard"]=268435456]="Wildcard";e[e["EmptyObject"]=536870912]="EmptyObject";e[e["ConstructionFlags"]=939524096]="ConstructionFlags";e[e["GenericMappedType"]=134217728]="GenericMappedType"})(E=e.TypeFlags||(e.TypeFlags={}));var D;(function(e){e[e["Class"]=1]="Class";e[e["Interface"]=2]="Interface";e[e["Reference"]=4]="Reference";e[e["Tuple"]=8]="Tuple";e[e["Anonymous"]=16]="Anonymous";e[e["Mapped"]=32]="Mapped";e[e["Instantiated"]=64]="Instantiated";e[e["ObjectLiteral"]=128]="ObjectLiteral";e[e["EvolvingArray"]=256]="EvolvingArray";e[e["ObjectLiteralPatternWithComputedProperties"]=512]="ObjectLiteralPatternWithComputedProperties";e[e["ContainsSpread"]=1024]="ContainsSpread";e[e["ReverseMapped"]=2048]="ReverseMapped";e[e["JsxAttributes"]=4096]="JsxAttributes";e[e["MarkerType"]=8192]="MarkerType";e[e["JSLiteral"]=16384]="JSLiteral";e[e["FreshLiteral"]=32768]="FreshLiteral";e[e["ClassOrInterface"]=3]="ClassOrInterface"})(D=e.ObjectFlags||(e.ObjectFlags={}));var k;(function(e){e[e["Invariant"]=0]="Invariant";e[e["Covariant"]=1]="Covariant";e[e["Contravariant"]=2]="Contravariant";e[e["Bivariant"]=3]="Bivariant";e[e["Independent"]=4]="Independent"})(k=e.Variance||(e.Variance={}));var N;(function(e){e[e["Component"]=0]="Component";e[e["Function"]=1]="Function";e[e["Mixed"]=2]="Mixed"})(N=e.JsxReferenceKind||(e.JsxReferenceKind={}));var A;(function(e){e[e["Call"]=0]="Call";e[e["Construct"]=1]="Construct"})(A=e.SignatureKind||(e.SignatureKind={}));var O;(function(e){e[e["String"]=0]="String";e[e["Number"]=1]="Number"})(O=e.IndexKind||(e.IndexKind={}));var F;(function(e){e[e["NakedTypeVariable"]=1]="NakedTypeVariable";e[e["HomomorphicMappedType"]=2]="HomomorphicMappedType";e[e["MappedTypeConstraint"]=4]="MappedTypeConstraint";e[e["ReturnType"]=8]="ReturnType";e[e["LiteralKeyof"]=16]="LiteralKeyof";e[e["NoConstraints"]=32]="NoConstraints";e[e["AlwaysStrict"]=64]="AlwaysStrict";e[e["PriorityImpliesCombination"]=28]="PriorityImpliesCombination"})(F=e.InferencePriority||(e.InferencePriority={}));var P;(function(e){e[e["None"]=0]="None";e[e["NoDefault"]=1]="NoDefault";e[e["AnyDefault"]=2]="AnyDefault"})(P=e.InferenceFlags||(e.InferenceFlags={}));var I;(function(e){e[e["False"]=0]="False";e[e["Maybe"]=1]="Maybe";e[e["True"]=-1]="True"})(I=e.Ternary||(e.Ternary={}));var w;(function(e){e[e["None"]=0]="None";e[e["ExportsProperty"]=1]="ExportsProperty";e[e["ModuleExports"]=2]="ModuleExports";e[e["PrototypeProperty"]=3]="PrototypeProperty";e[e["ThisProperty"]=4]="ThisProperty";e[e["Property"]=5]="Property";e[e["Prototype"]=6]="Prototype";e[e["ObjectDefinePropertyValue"]=7]="ObjectDefinePropertyValue";e[e["ObjectDefinePropertyExports"]=8]="ObjectDefinePropertyExports";e[e["ObjectDefinePrototypeProperty"]=9]="ObjectDefinePrototypeProperty"})(w=e.AssignmentDeclarationKind||(e.AssignmentDeclarationKind={}));var M;(function(e){e[e["Warning"]=0]="Warning";e[e["Error"]=1]="Error";e[e["Suggestion"]=2]="Suggestion";e[e["Message"]=3]="Message"})(M=e.DiagnosticCategory||(e.DiagnosticCategory={}));function diagnosticCategoryName(e,t){if(t===void 0){t=true}var r=M[e.category];return t?r.toLowerCase():r}e.diagnosticCategoryName=diagnosticCategoryName;var L;(function(e){e[e["Classic"]=1]="Classic";e[e["NodeJs"]=2]="NodeJs"})(L=e.ModuleResolutionKind||(e.ModuleResolutionKind={}));var R;(function(e){e[e["None"]=0]="None";e[e["CommonJS"]=1]="CommonJS";e[e["AMD"]=2]="AMD";e[e["UMD"]=3]="UMD";e[e["System"]=4]="System";e[e["ES2015"]=5]="ES2015";e[e["ESNext"]=6]="ESNext"})(R=e.ModuleKind||(e.ModuleKind={}));var B;(function(e){e[e["None"]=0]="None";e[e["Preserve"]=1]="Preserve";e[e["React"]=2]="React";e[e["ReactNative"]=3]="ReactNative"})(B=e.JsxEmit||(e.JsxEmit={}));var j;(function(e){e[e["CarriageReturnLineFeed"]=0]="CarriageReturnLineFeed";e[e["LineFeed"]=1]="LineFeed"})(j=e.NewLineKind||(e.NewLineKind={}));var J;(function(e){e[e["Unknown"]=0]="Unknown";e[e["JS"]=1]="JS";e[e["JSX"]=2]="JSX";e[e["TS"]=3]="TS";e[e["TSX"]=4]="TSX";e[e["External"]=5]="External";e[e["JSON"]=6]="JSON";e[e["Deferred"]=7]="Deferred"})(J=e.ScriptKind||(e.ScriptKind={}));var W;(function(e){e[e["ES3"]=0]="ES3";e[e["ES5"]=1]="ES5";e[e["ES2015"]=2]="ES2015";e[e["ES2016"]=3]="ES2016";e[e["ES2017"]=4]="ES2017";e[e["ES2018"]=5]="ES2018";e[e["ESNext"]=6]="ESNext";e[e["JSON"]=100]="JSON";e[e["Latest"]=6]="Latest"})(W=e.ScriptTarget||(e.ScriptTarget={}));var U;(function(e){e[e["Standard"]=0]="Standard";e[e["JSX"]=1]="JSX"})(U=e.LanguageVariant||(e.LanguageVariant={}));var z;(function(e){e[e["None"]=0]="None";e[e["Recursive"]=1]="Recursive"})(z=e.WatchDirectoryFlags||(e.WatchDirectoryFlags={}));var V;(function(e){e[e["nullCharacter"]=0]="nullCharacter";e[e["maxAsciiCharacter"]=127]="maxAsciiCharacter";e[e["lineFeed"]=10]="lineFeed";e[e["carriageReturn"]=13]="carriageReturn";e[e["lineSeparator"]=8232]="lineSeparator";e[e["paragraphSeparator"]=8233]="paragraphSeparator";e[e["nextLine"]=133]="nextLine";e[e["space"]=32]="space";e[e["nonBreakingSpace"]=160]="nonBreakingSpace";e[e["enQuad"]=8192]="enQuad";e[e["emQuad"]=8193]="emQuad";e[e["enSpace"]=8194]="enSpace";e[e["emSpace"]=8195]="emSpace";e[e["threePerEmSpace"]=8196]="threePerEmSpace";e[e["fourPerEmSpace"]=8197]="fourPerEmSpace";e[e["sixPerEmSpace"]=8198]="sixPerEmSpace";e[e["figureSpace"]=8199]="figureSpace";e[e["punctuationSpace"]=8200]="punctuationSpace";e[e["thinSpace"]=8201]="thinSpace";e[e["hairSpace"]=8202]="hairSpace";e[e["zeroWidthSpace"]=8203]="zeroWidthSpace";e[e["narrowNoBreakSpace"]=8239]="narrowNoBreakSpace";e[e["ideographicSpace"]=12288]="ideographicSpace";e[e["mathematicalSpace"]=8287]="mathematicalSpace";e[e["ogham"]=5760]="ogham";e[e["_"]=95]="_";e[e["$"]=36]="$";e[e["_0"]=48]="_0";e[e["_1"]=49]="_1";e[e["_2"]=50]="_2";e[e["_3"]=51]="_3";e[e["_4"]=52]="_4";e[e["_5"]=53]="_5";e[e["_6"]=54]="_6";e[e["_7"]=55]="_7";e[e["_8"]=56]="_8";e[e["_9"]=57]="_9";e[e["a"]=97]="a";e[e["b"]=98]="b";e[e["c"]=99]="c";e[e["d"]=100]="d";e[e["e"]=101]="e";e[e["f"]=102]="f";e[e["g"]=103]="g";e[e["h"]=104]="h";e[e["i"]=105]="i";e[e["j"]=106]="j";e[e["k"]=107]="k";e[e["l"]=108]="l";e[e["m"]=109]="m";e[e["n"]=110]="n";e[e["o"]=111]="o";e[e["p"]=112]="p";e[e["q"]=113]="q";e[e["r"]=114]="r";e[e["s"]=115]="s";e[e["t"]=116]="t";e[e["u"]=117]="u";e[e["v"]=118]="v";e[e["w"]=119]="w";e[e["x"]=120]="x";e[e["y"]=121]="y";e[e["z"]=122]="z";e[e["A"]=65]="A";e[e["B"]=66]="B";e[e["C"]=67]="C";e[e["D"]=68]="D";e[e["E"]=69]="E";e[e["F"]=70]="F";e[e["G"]=71]="G";e[e["H"]=72]="H";e[e["I"]=73]="I";e[e["J"]=74]="J";e[e["K"]=75]="K";e[e["L"]=76]="L";e[e["M"]=77]="M";e[e["N"]=78]="N";e[e["O"]=79]="O";e[e["P"]=80]="P";e[e["Q"]=81]="Q";e[e["R"]=82]="R";e[e["S"]=83]="S";e[e["T"]=84]="T";e[e["U"]=85]="U";e[e["V"]=86]="V";e[e["W"]=87]="W";e[e["X"]=88]="X";e[e["Y"]=89]="Y";e[e["Z"]=90]="Z";e[e["ampersand"]=38]="ampersand";e[e["asterisk"]=42]="asterisk";e[e["at"]=64]="at";e[e["backslash"]=92]="backslash";e[e["backtick"]=96]="backtick";e[e["bar"]=124]="bar";e[e["caret"]=94]="caret";e[e["closeBrace"]=125]="closeBrace";e[e["closeBracket"]=93]="closeBracket";e[e["closeParen"]=41]="closeParen";e[e["colon"]=58]="colon";e[e["comma"]=44]="comma";e[e["dot"]=46]="dot";e[e["doubleQuote"]=34]="doubleQuote";e[e["equals"]=61]="equals";e[e["exclamation"]=33]="exclamation";e[e["greaterThan"]=62]="greaterThan";e[e["hash"]=35]="hash";e[e["lessThan"]=60]="lessThan";e[e["minus"]=45]="minus";e[e["openBrace"]=123]="openBrace";e[e["openBracket"]=91]="openBracket";e[e["openParen"]=40]="openParen";e[e["percent"]=37]="percent";e[e["plus"]=43]="plus";e[e["question"]=63]="question";e[e["semicolon"]=59]="semicolon";e[e["singleQuote"]=39]="singleQuote";e[e["slash"]=47]="slash";e[e["tilde"]=126]="tilde";e[e["backspace"]=8]="backspace";e[e["formFeed"]=12]="formFeed";e[e["byteOrderMark"]=65279]="byteOrderMark";e[e["tab"]=9]="tab";e[e["verticalTab"]=11]="verticalTab"})(V=e.CharacterCodes||(e.CharacterCodes={}));var K;(function(e){e["Ts"]=".ts";e["Tsx"]=".tsx";e["Dts"]=".d.ts";e["Js"]=".js";e["Jsx"]=".jsx";e["Json"]=".json"})(K=e.Extension||(e.Extension={}));var q;(function(e){e[e["None"]=0]="None";e[e["TypeScript"]=1]="TypeScript";e[e["ContainsTypeScript"]=2]="ContainsTypeScript";e[e["ContainsJsx"]=4]="ContainsJsx";e[e["ContainsESNext"]=8]="ContainsESNext";e[e["ContainsES2017"]=16]="ContainsES2017";e[e["ContainsES2016"]=32]="ContainsES2016";e[e["ES2015"]=64]="ES2015";e[e["ContainsES2015"]=128]="ContainsES2015";e[e["Generator"]=256]="Generator";e[e["ContainsGenerator"]=512]="ContainsGenerator";e[e["DestructuringAssignment"]=1024]="DestructuringAssignment";e[e["ContainsDestructuringAssignment"]=2048]="ContainsDestructuringAssignment";e[e["ContainsTypeScriptClassSyntax"]=4096]="ContainsTypeScriptClassSyntax";e[e["ContainsLexicalThis"]=8192]="ContainsLexicalThis";e[e["ContainsCapturedLexicalThis"]=16384]="ContainsCapturedLexicalThis";e[e["ContainsLexicalThisInComputedPropertyName"]=32768]="ContainsLexicalThisInComputedPropertyName";e[e["ContainsDefaultValueAssignments"]=65536]="ContainsDefaultValueAssignments";e[e["ContainsRestOrSpread"]=131072]="ContainsRestOrSpread";e[e["ContainsObjectRestOrSpread"]=262144]="ContainsObjectRestOrSpread";e[e["ContainsComputedPropertyName"]=524288]="ContainsComputedPropertyName";e[e["ContainsBlockScopedBinding"]=1048576]="ContainsBlockScopedBinding";e[e["ContainsBindingPattern"]=2097152]="ContainsBindingPattern";e[e["ContainsYield"]=4194304]="ContainsYield";e[e["ContainsHoistedDeclarationOrCompletion"]=8388608]="ContainsHoistedDeclarationOrCompletion";e[e["ContainsDynamicImport"]=16777216]="ContainsDynamicImport";e[e["Super"]=33554432]="Super";e[e["ContainsSuper"]=67108864]="ContainsSuper";e[e["HasComputedFlags"]=536870912]="HasComputedFlags";e[e["AssertTypeScript"]=3]="AssertTypeScript";e[e["AssertJsx"]=4]="AssertJsx";e[e["AssertESNext"]=8]="AssertESNext";e[e["AssertES2017"]=16]="AssertES2017";e[e["AssertES2016"]=32]="AssertES2016";e[e["AssertES2015"]=192]="AssertES2015";e[e["AssertGenerator"]=768]="AssertGenerator";e[e["AssertDestructuringAssignment"]=3072]="AssertDestructuringAssignment";e[e["OuterExpressionExcludes"]=536872257]="OuterExpressionExcludes";e[e["PropertyAccessExcludes"]=570426689]="PropertyAccessExcludes";e[e["NodeExcludes"]=637535553]="NodeExcludes";e[e["ArrowFunctionExcludes"]=653604161]="ArrowFunctionExcludes";e[e["FunctionExcludes"]=653620545]="FunctionExcludes";e[e["ConstructorExcludes"]=653616449]="ConstructorExcludes";e[e["MethodOrAccessorExcludes"]=653616449]="MethodOrAccessorExcludes";e[e["ClassExcludes"]=638121281]="ClassExcludes";e[e["ModuleExcludes"]=647001409]="ModuleExcludes";e[e["TypeExcludes"]=-3]="TypeExcludes";e[e["ObjectLiteralExcludes"]=638358849]="ObjectLiteralExcludes";e[e["ArrayLiteralOrCallOrNewExcludes"]=637666625]="ArrayLiteralOrCallOrNewExcludes";e[e["VariableDeclarationListExcludes"]=639894849]="VariableDeclarationListExcludes";e[e["ParameterExcludes"]=637535553]="ParameterExcludes";e[e["CatchClauseExcludes"]=637797697]="CatchClauseExcludes";e[e["BindingPatternExcludes"]=637666625]="BindingPatternExcludes";e[e["ES2015FunctionSyntaxMask"]=81920]="ES2015FunctionSyntaxMask"})(q=e.TransformFlags||(e.TransformFlags={}));var G;(function(e){e[e["None"]=0]="None";e[e["SingleLine"]=1]="SingleLine";e[e["AdviseOnEmitNode"]=2]="AdviseOnEmitNode";e[e["NoSubstitution"]=4]="NoSubstitution";e[e["CapturesThis"]=8]="CapturesThis";e[e["NoLeadingSourceMap"]=16]="NoLeadingSourceMap";e[e["NoTrailingSourceMap"]=32]="NoTrailingSourceMap";e[e["NoSourceMap"]=48]="NoSourceMap";e[e["NoNestedSourceMaps"]=64]="NoNestedSourceMaps";e[e["NoTokenLeadingSourceMaps"]=128]="NoTokenLeadingSourceMaps";e[e["NoTokenTrailingSourceMaps"]=256]="NoTokenTrailingSourceMaps";e[e["NoTokenSourceMaps"]=384]="NoTokenSourceMaps";e[e["NoLeadingComments"]=512]="NoLeadingComments";e[e["NoTrailingComments"]=1024]="NoTrailingComments";e[e["NoComments"]=1536]="NoComments";e[e["NoNestedComments"]=2048]="NoNestedComments";e[e["HelperName"]=4096]="HelperName";e[e["ExportName"]=8192]="ExportName";e[e["LocalName"]=16384]="LocalName";e[e["InternalName"]=32768]="InternalName";e[e["Indented"]=65536]="Indented";e[e["NoIndentation"]=131072]="NoIndentation";e[e["AsyncFunctionBody"]=262144]="AsyncFunctionBody";e[e["ReuseTempVariableScope"]=524288]="ReuseTempVariableScope";e[e["CustomPrologue"]=1048576]="CustomPrologue";e[e["NoHoisting"]=2097152]="NoHoisting";e[e["HasEndOfDeclarationMarker"]=4194304]="HasEndOfDeclarationMarker";e[e["Iterator"]=8388608]="Iterator";e[e["NoAsciiEscaping"]=16777216]="NoAsciiEscaping";e[e["TypeScriptClassWrapper"]=33554432]="TypeScriptClassWrapper";e[e["NeverApplyImportHelper"]=67108864]="NeverApplyImportHelper"})(G=e.EmitFlags||(e.EmitFlags={}));var H;(function(e){e[e["Extends"]=1]="Extends";e[e["Assign"]=2]="Assign";e[e["Rest"]=4]="Rest";e[e["Decorate"]=8]="Decorate";e[e["Metadata"]=16]="Metadata";e[e["Param"]=32]="Param";e[e["Awaiter"]=64]="Awaiter";e[e["Generator"]=128]="Generator";e[e["Values"]=256]="Values";e[e["Read"]=512]="Read";e[e["Spread"]=1024]="Spread";e[e["Await"]=2048]="Await";e[e["AsyncGenerator"]=4096]="AsyncGenerator";e[e["AsyncDelegator"]=8192]="AsyncDelegator";e[e["AsyncValues"]=16384]="AsyncValues";e[e["ExportStar"]=32768]="ExportStar";e[e["MakeTemplateObject"]=65536]="MakeTemplateObject";e[e["FirstEmitHelper"]=1]="FirstEmitHelper";e[e["LastEmitHelper"]=65536]="LastEmitHelper";e[e["ForOfIncludes"]=256]="ForOfIncludes";e[e["ForAwaitOfIncludes"]=16384]="ForAwaitOfIncludes";e[e["AsyncGeneratorIncludes"]=6144]="AsyncGeneratorIncludes";e[e["AsyncDelegatorIncludes"]=26624]="AsyncDelegatorIncludes";e[e["SpreadIncludes"]=1536]="SpreadIncludes"})(H=e.ExternalEmitHelpers||(e.ExternalEmitHelpers={}));var Q;(function(e){e[e["SourceFile"]=0]="SourceFile";e[e["Expression"]=1]="Expression";e[e["IdentifierName"]=2]="IdentifierName";e[e["MappedTypeParameter"]=3]="MappedTypeParameter";e[e["Unspecified"]=4]="Unspecified";e[e["EmbeddedStatement"]=5]="EmbeddedStatement"})(Q=e.EmitHint||(e.EmitHint={}));var $;(function(e){e[e["None"]=0]="None";e[e["SingleLine"]=0]="SingleLine";e[e["MultiLine"]=1]="MultiLine";e[e["PreserveLines"]=2]="PreserveLines";e[e["LinesMask"]=3]="LinesMask";e[e["NotDelimited"]=0]="NotDelimited";e[e["BarDelimited"]=4]="BarDelimited";e[e["AmpersandDelimited"]=8]="AmpersandDelimited";e[e["CommaDelimited"]=16]="CommaDelimited";e[e["AsteriskDelimited"]=32]="AsteriskDelimited";e[e["DelimitersMask"]=60]="DelimitersMask";e[e["AllowTrailingComma"]=64]="AllowTrailingComma";e[e["Indented"]=128]="Indented";e[e["SpaceBetweenBraces"]=256]="SpaceBetweenBraces";e[e["SpaceBetweenSiblings"]=512]="SpaceBetweenSiblings";e[e["Braces"]=1024]="Braces";e[e["Parenthesis"]=2048]="Parenthesis";e[e["AngleBrackets"]=4096]="AngleBrackets";e[e["SquareBrackets"]=8192]="SquareBrackets";e[e["BracketsMask"]=15360]="BracketsMask";e[e["OptionalIfUndefined"]=16384]="OptionalIfUndefined";e[e["OptionalIfEmpty"]=32768]="OptionalIfEmpty";e[e["Optional"]=49152]="Optional";e[e["PreferNewLine"]=65536]="PreferNewLine";e[e["NoTrailingNewLine"]=131072]="NoTrailingNewLine";e[e["NoInterveningComments"]=262144]="NoInterveningComments";e[e["NoSpaceIfEmpty"]=524288]="NoSpaceIfEmpty";e[e["SingleElement"]=1048576]="SingleElement";e[e["Modifiers"]=262656]="Modifiers";e[e["HeritageClauses"]=512]="HeritageClauses";e[e["SingleLineTypeLiteralMembers"]=768]="SingleLineTypeLiteralMembers";e[e["MultiLineTypeLiteralMembers"]=32897]="MultiLineTypeLiteralMembers";e[e["TupleTypeElements"]=528]="TupleTypeElements";e[e["UnionTypeConstituents"]=516]="UnionTypeConstituents";e[e["IntersectionTypeConstituents"]=520]="IntersectionTypeConstituents";e[e["ObjectBindingPatternElements"]=525136]="ObjectBindingPatternElements";e[e["ArrayBindingPatternElements"]=524880]="ArrayBindingPatternElements";e[e["ObjectLiteralExpressionProperties"]=526226]="ObjectLiteralExpressionProperties";e[e["ArrayLiteralExpressionElements"]=8914]="ArrayLiteralExpressionElements";e[e["CommaListElements"]=528]="CommaListElements";e[e["CallExpressionArguments"]=2576]="CallExpressionArguments";e[e["NewExpressionArguments"]=18960]="NewExpressionArguments";e[e["TemplateExpressionSpans"]=262144]="TemplateExpressionSpans";e[e["SingleLineBlockStatements"]=768]="SingleLineBlockStatements";e[e["MultiLineBlockStatements"]=129]="MultiLineBlockStatements";e[e["VariableDeclarationList"]=528]="VariableDeclarationList";e[e["SingleLineFunctionBodyStatements"]=768]="SingleLineFunctionBodyStatements";e[e["MultiLineFunctionBodyStatements"]=1]="MultiLineFunctionBodyStatements";e[e["ClassHeritageClauses"]=0]="ClassHeritageClauses";e[e["ClassMembers"]=129]="ClassMembers";e[e["InterfaceMembers"]=129]="InterfaceMembers";e[e["EnumMembers"]=145]="EnumMembers";e[e["CaseBlockClauses"]=129]="CaseBlockClauses";e[e["NamedImportsOrExportsElements"]=525136]="NamedImportsOrExportsElements";e[e["JsxElementOrFragmentChildren"]=262144]="JsxElementOrFragmentChildren";e[e["JsxElementAttributes"]=262656]="JsxElementAttributes";e[e["CaseOrDefaultClauseStatements"]=163969]="CaseOrDefaultClauseStatements";e[e["HeritageClauseTypes"]=528]="HeritageClauseTypes";e[e["SourceFileStatements"]=131073]="SourceFileStatements";e[e["Decorators"]=49153]="Decorators";e[e["TypeArguments"]=53776]="TypeArguments";e[e["TypeParameters"]=53776]="TypeParameters";e[e["Parameters"]=2576]="Parameters";e[e["IndexSignatureParameters"]=8848]="IndexSignatureParameters";e[e["JSDocComment"]=33]="JSDocComment"})($=e.ListFormat||(e.ListFormat={}));var X;(function(e){e[e["None"]=0]="None";e[e["TripleSlashXML"]=1]="TripleSlashXML";e[e["SingleLine"]=2]="SingleLine";e[e["MultiLine"]=4]="MultiLine";e[e["All"]=7]="All";e[e["Default"]=7]="Default"})(X=e.PragmaKindFlags||(e.PragmaKindFlags={}));function _contextuallyTypePragmas(e){return e}e.commentPragmas=_contextuallyTypePragmas({reference:{args:[{name:"types",optional:true,captureSpan:true},{name:"lib",optional:true,captureSpan:true},{name:"path",optional:true,captureSpan:true},{name:"no-default-lib",optional:true}],kind:1},"amd-dependency":{args:[{name:"path"},{name:"name",optional:true}],kind:1},"amd-module":{args:[{name:"name"}],kind:1},"ts-check":{kind:2},"ts-nocheck":{kind:2},jsx:{args:[{name:"factory"}],kind:4}})})(s||(s={}));var s;(function(e){function setStackTraceLimit(){if(Error.stackTraceLimit<100){Error.stackTraceLimit=100}}e.setStackTraceLimit=setStackTraceLimit;var t;(function(e){e[e["Created"]=0]="Created";e[e["Changed"]=1]="Changed";e[e["Deleted"]=2]="Deleted"})(t=e.FileWatcherEventKind||(e.FileWatcherEventKind={}));var i;(function(e){e[e["High"]=2e3]="High";e[e["Medium"]=500]="Medium";e[e["Low"]=250]="Low"})(i=e.PollingInterval||(e.PollingInterval={}));e.missingFileModifiedTime=new Date(0);function createPollingIntervalBasedLevels(e){var t;return t={},t[i.Low]=e.Low,t[i.Medium]=e.Medium,t[i.High]=e.High,t}var a={Low:32,Medium:64,High:256};var o=createPollingIntervalBasedLevels(a);e.unchangedPollThresholds=createPollingIntervalBasedLevels(a);function setCustomPollingValues(t){if(!t.getEnvironmentVariable){return}var r=setCustomLevels("TSC_WATCH_POLLINGINTERVAL",i);o=getCustomPollingBasedLevels("TSC_WATCH_POLLINGCHUNKSIZE",a)||o;e.unchangedPollThresholds=getCustomPollingBasedLevels("TSC_WATCH_UNCHANGEDPOLLTHRESHOLDS",a)||e.unchangedPollThresholds;function getLevel(e,r){return t.getEnvironmentVariable(e+"_"+r.toUpperCase())}function getCustomLevels(e){var t;setCustomLevel("Low");setCustomLevel("Medium");setCustomLevel("High");return t;function setCustomLevel(r){var n=getLevel(e,r);if(n){(t||(t={}))[r]=Number(n)}}}function setCustomLevels(e,t){var r=getCustomLevels(e);if(r){setLevel("Low");setLevel("Medium");setLevel("High");return true}return false;function setLevel(e){t[e]=r[e]||t[e]}}function getCustomPollingBasedLevels(e,t){var i=getCustomLevels(e);return(r||i)&&createPollingIntervalBasedLevels(i?n({},t,i):t)}}e.setCustomPollingValues=setCustomPollingValues;function createDynamicPriorityPollingWatchFile(t){var r=[];var n=[];var a=createPollingIntervalQueue(i.Low);var s=createPollingIntervalQueue(i.Medium);var c=createPollingIntervalQueue(i.High);return watchFile;function watchFile(t,n,i){var a={fileName:t,callback:n,unchangedPolls:0,mtime:getModifiedTime(t)};r.push(a);addToPollingIntervalQueue(a,i);return{close:function(){a.isClosed=true;e.unorderedRemoveItem(r,a)}}}function createPollingIntervalQueue(e){var t=[];t.pollingInterval=e;t.pollIndex=0;t.pollScheduled=false;return t}function pollPollingIntervalQueue(t){t.pollIndex=pollQueue(t,t.pollingInterval,t.pollIndex,o[t.pollingInterval]);if(t.length){scheduleNextPoll(t.pollingInterval)}else{e.Debug.assert(t.pollIndex===0);t.pollScheduled=false}}function pollLowPollingIntervalQueue(e){pollQueue(n,i.Low,0,n.length);pollPollingIntervalQueue(e);if(!e.pollScheduled&&n.length){scheduleNextPoll(i.Low)}}function pollQueue(t,r,a,o){var s=t.length;var c=a;for(var u=0;u<o&&s>0;nextPollIndex(),s--){var l=t[a];if(!l){continue}else if(l.isClosed){t[a]=undefined;continue}u++;var f=onWatchedFileStat(l,getModifiedTime(l.fileName));if(l.isClosed){t[a]=undefined}else if(f){l.unchangedPolls=0;if(t!==n){t[a]=undefined;addChangedFileToLowPollingIntervalQueue(l)}}else if(l.unchangedPolls!==e.unchangedPollThresholds[r]){l.unchangedPolls++}else if(t===n){l.unchangedPolls=1;t[a]=undefined;addToPollingIntervalQueue(l,i.Low)}else if(r!==i.High){l.unchangedPolls++;t[a]=undefined;addToPollingIntervalQueue(l,r===i.Low?i.Medium:i.High)}if(t[a]){if(c<a){t[c]=l;t[a]=undefined}c++}}return a;function nextPollIndex(){a++;if(a===t.length){if(c<a){t.length=c}a=0;c=0}}}function pollingIntervalQueue(e){switch(e){case i.Low:return a;case i.Medium:return s;case i.High:return c}}function addToPollingIntervalQueue(e,t){pollingIntervalQueue(t).push(e);scheduleNextPollIfNotAlreadyScheduled(t)}function addChangedFileToLowPollingIntervalQueue(e){n.push(e);scheduleNextPollIfNotAlreadyScheduled(i.Low)}function scheduleNextPollIfNotAlreadyScheduled(e){if(!pollingIntervalQueue(e).pollScheduled){scheduleNextPoll(e)}}function scheduleNextPoll(e){pollingIntervalQueue(e).pollScheduled=t.setTimeout(e===i.Low?pollLowPollingIntervalQueue:pollPollingIntervalQueue,e,pollingIntervalQueue(e))}function getModifiedTime(r){return t.getModifiedTime(r)||e.missingFileModifiedTime}}e.createDynamicPriorityPollingWatchFile=createDynamicPriorityPollingWatchFile;function onWatchedFileStat(e,t){var r=e.mtime.getTime();var n=t.getTime();if(r!==n){e.mtime=t;e.callback(e.fileName,getFileWatcherEventKind(r,n));return true}return false}e.onWatchedFileStat=onWatchedFileStat;function getFileWatcherEventKind(e,r){return e===0?t.Created:r===0?t.Deleted:t.Changed}e.getFileWatcherEventKind=getFileWatcherEventKind;function createRecursiveDirectoryWatcher(t){var r=e.createMap();var n=e.createMultiMap();var i=e.getStringComparer(!t.useCaseSensitiveFileNames);var a=e.createGetCanonicalFileName(t.useCaseSensitiveFileNames);return createDirectoryWatcher;function createDirectoryWatcher(i,o){var s=a(i);var c=r.get(s);if(c){c.refCount++}else{c={watcher:t.watchDirectory(i,function(t){n.forEach(function(r,n){if(n===s||e.startsWith(s,n)&&s[n.length]===e.directorySeparator){r.forEach(function(e){return e(t)})}});updateChildWatches(i,s)}),refCount:1,childWatches:e.emptyArray};r.set(s,c);updateChildWatches(i,s)}if(o){n.add(s,o)}return{dirName:i,close:function(){var t=e.Debug.assertDefined(r.get(s));if(o)n.remove(s,o);t.refCount--;if(t.refCount)return;r.delete(s);e.closeFileWatcherOf(t);t.childWatches.forEach(e.closeFileWatcher)}}}function updateChildWatches(e,t){var n=r.get(t);if(n){n.childWatches=watchChildDirectories(e,n.childWatches)}}function watchChildDirectories(r,n){var a;e.enumerateInsertsAndDeletes(t.directoryExists(r)?e.mapDefined(t.getAccessibleSortedChildDirectories(r),function(n){var a=e.getNormalizedAbsolutePath(n,r);return i(a,e.normalizePath(t.realpath(a)))===0?a:undefined}):e.emptyArray,n,function(e,t){return i(e,t.dirName)},createAndAddChildDirectoryWatcher,e.closeFileWatcher,addChildDirectoryWatcher);return a||e.emptyArray;function createAndAddChildDirectoryWatcher(e){var t=createDirectoryWatcher(e);addChildDirectoryWatcher(t)}function addChildDirectoryWatcher(e){(a||(a=[])).push(e)}}}e.createRecursiveDirectoryWatcher=createRecursiveDirectoryWatcher;function getNodeMajorVersion(){if(typeof process==="undefined"){return undefined}var e=process.version;if(!e){return undefined}var t=e.indexOf(".");if(t===-1){return undefined}return parseInt(e.substring(1,t))}e.getNodeMajorVersion=getNodeMajorVersion;e.sys=function(){var n="\ufeff";function getNodeSystem(){var a=r(5747);var o=r(5622);var s=r(2087);var c;try{c=r(6417)}catch(e){c=undefined}var u=r(4293).Buffer;var l=getNodeMajorVersion();var f=l>=4;var d=s.platform();var p=isFileSystemCaseSensitive();var g;(function(e){e[e["File"]=0]="File";e[e["Directory"]=1]="Directory"})(g||(g={}));var _=process.env.TSC_NONPOLLING_WATCHER;var m=process.env.TSC_WATCHFILE;var y=process.env.TSC_WATCHDIRECTORY;var h;var v={args:process.argv.slice(2),newLine:s.EOL,useCaseSensitiveFileNames:p,write:function(e){process.stdout.write(e)},writeOutputIsTTY:function(){return process.stdout.isTTY},readFile:readFile,writeFile:writeFile,watchFile:getWatchFile(),watchDirectory:getWatchDirectory(),resolvePath:function(e){return o.resolve(e)},fileExists:fileExists,directoryExists:directoryExists,createDirectory:function(e){if(!v.directoryExists(e)){a.mkdirSync(e)}},getExecutingFilePath:function(){return __filename},getCurrentDirectory:function(){return process.cwd()},getDirectories:getDirectories,getEnvironmentVariable:function(e){return process.env[e]||""},readDirectory:readDirectory,getModifiedTime:getModifiedTime,setModifiedTime:setModifiedTime,deleteFile:deleteFile,createHash:c?createMD5HashUsingNativeCrypto:generateDjb2Hash,createSHA256Hash:c?createSHA256Hash:undefined,getMemoryUsage:function(){if(global.gc){global.gc()}return process.memoryUsage().heapUsed},getFileSize:function(e){try{var t=a.statSync(e);if(t.isFile()){return t.size}}catch(e){}return 0},exit:function(e){process.exit(e)},realpath:realpath,debugMode:e.some(process.execArgv,function(e){return/^--(inspect|debug)(-brk)?(=\d+)?$/i.test(e)}),tryEnableSourceMapsForHost:function(){try{r(2284).install()}catch(e){}},setTimeout:setTimeout,clearTimeout:clearTimeout,clearScreen:function(){process.stdout.write("c")},setBlocking:function(){if(process.stdout&&process.stdout._handle&&process.stdout._handle.setBlocking){process.stdout._handle.setBlocking(true)}},bufferFrom:bufferFrom,base64decode:function(e){return bufferFrom(e,"base64").toString("utf8")},base64encode:function(e){return bufferFrom(e).toString("base64")}};return v;function bufferFrom(e,t){return u.from&&u.from!==Int8Array.from?u.from(e,t):new u(e,t)}function isFileSystemCaseSensitive(){if(d==="win32"||d==="win64"){return false}return!fileExists(swapCase(__filename))}function swapCase(e){return e.replace(/\w/g,function(e){var t=e.toUpperCase();return e===t?e.toLowerCase():t})}function getWatchFile(){switch(m){case"PriorityPollingInterval":return fsWatchFile;case"DynamicPriorityPolling":return createDynamicPriorityPollingWatchFile({getModifiedTime:getModifiedTime,setTimeout:setTimeout});case"UseFsEvents":return watchFileUsingFsWatch;case"UseFsEventsWithFallbackDynamicPolling":h=createDynamicPriorityPollingWatchFile({getModifiedTime:getModifiedTime,setTimeout:setTimeout});return createWatchFileUsingDynamicWatchFile(h);case"UseFsEventsOnParentDirectory":return createNonPollingWatchFile()}return _?createNonPollingWatchFile():function(e,t){return fsWatchFile(e,t)}}function getWatchDirectory(){var e=f&&(process.platform==="win32"||process.platform==="darwin");if(e){return watchDirectoryUsingFsWatch}var t=y==="RecursiveDirectoryUsingFsWatchFile"?createWatchDirectoryUsing(fsWatchFile):y==="RecursiveDirectoryUsingDynamicPriorityPolling"?createWatchDirectoryUsing(h||createDynamicPriorityPollingWatchFile({getModifiedTime:getModifiedTime,setTimeout:setTimeout})):watchDirectoryUsingFsWatch;var r=createRecursiveDirectoryWatcher({useCaseSensitiveFileNames:p,directoryExists:directoryExists,getAccessibleSortedChildDirectories:function(e){return getAccessibleFileSystemEntries(e).directories},watchDirectory:t,realpath:realpath});return function(e,n,i){if(i){return r(e,n)}return t(e,n)}}function createNonPollingWatchFile(){var r=e.createMultiMap();var n=e.createMap();var i=e.createGetCanonicalFileName(p);return nonPollingWatchFile;function nonPollingWatchFile(t,a){var o=i(t);r.add(o,a);var s=e.getDirectoryPath(o)||".";var c=n.get(s)||createDirectoryWatcher(e.getDirectoryPath(t)||".",s);c.referenceCount++;return{close:function(){if(c.referenceCount===1){c.close();n.delete(s)}else{c.referenceCount--}r.remove(o,a)}}}function createDirectoryWatcher(a,o){var s=fsWatchDirectory(a,function(n,o){if(!e.isString(o)){return}var s=e.getNormalizedAbsolutePath(o,a);var c=s&&r.get(i(s));if(c){for(var u=0,l=c;u<l.length;u++){var f=l[u];f(s,t.Changed)}}});s.referenceCount=0;n.set(o,s);return s}}function fsWatchFile(e,r,n){a.watchFile(e,{persistent:true,interval:n||250},fileChanged);var i;return{close:function(){return a.unwatchFile(e,fileChanged)}};function fileChanged(n,a){var o=+a.mtime===0||i===t.Deleted;if(+n.mtime===0){if(o){return}i=t.Deleted}else if(o){i=t.Created}else if(+n.mtime===+a.mtime){return}else{i=t.Changed}r(e,i)}}function createFileWatcherCallback(e){return function(r,n){return e(n===t.Changed?"change":"rename","")}}function createFsWatchCallbackForFileWatcherCallback(e,r){return function(n){if(n==="rename"){r(e,fileExists(e)?t.Created:t.Deleted)}else{r(e,t.Changed)}}}function createFsWatchCallbackForDirectoryWatcherCallback(t,r){return function(n,i){if(n==="rename"){r(!i?t:e.normalizePath(e.combinePaths(t,i)))}}}function fsWatch(e,r,n,i,o,s){var c;var u=!fileSystemEntryExists(e,r)?watchMissingFileSystemEntry():watchPresentFileSystemEntry();return{close:function(){u.close();u=undefined}};function invokeCallbackAndUpdateWatcher(e){n("rename","");if(u){u.close();u=e()}}function watchPresentFileSystemEntry(){if(c===undefined){if(f&&(process.platform==="win32"||process.platform==="darwin")){c={persistent:true,recursive:!!i}}else{c={persistent:true}}}try{var t=a.watch(e,c,n);t.on("error",function(){return invokeCallbackAndUpdateWatcher(watchMissingFileSystemEntry)});return t}catch(e){return watchPresentFileSystemEntryWithFsWatchFile()}}function watchPresentFileSystemEntryWithFsWatchFile(){return o(e,createFileWatcherCallback(n),s)}function watchMissingFileSystemEntry(){return o(e,function(n,i){if(i===t.Created&&fileSystemEntryExists(e,r)){invokeCallbackAndUpdateWatcher(watchPresentFileSystemEntry)}},s)}}function watchFileUsingFsWatch(e,t,r){return fsWatch(e,0,createFsWatchCallbackForFileWatcherCallback(e,t),false,fsWatchFile,r)}function createWatchFileUsingDynamicWatchFile(e){return function(t,r,n){return fsWatch(t,0,createFsWatchCallbackForFileWatcherCallback(t,r),false,e,n)}}function fsWatchDirectory(e,t,r){return fsWatch(e,1,t,!!r,fsWatchFile)}function watchDirectoryUsingFsWatch(e,t,r){return fsWatchDirectory(e,createFsWatchCallbackForDirectoryWatcherCallback(e,t),r)}function createWatchDirectoryUsing(e){return function(t,r){return e(t,function(){return r(t)},i.Medium)}}function readFile(e,t){if(!fileExists(e)){return undefined}var r=a.readFileSync(e);var n=r.length;if(n>=2&&r[0]===254&&r[1]===255){n&=~1;for(var i=0;i<n;i+=2){var o=r[i];r[i]=r[i+1];r[i+1]=o}return r.toString("utf16le",2)}if(n>=2&&r[0]===255&&r[1]===254){return r.toString("utf16le",2)}if(n>=3&&r[0]===239&&r[1]===187&&r[2]===191){return r.toString("utf8",3)}return r.toString("utf8")}function writeFile(e,t,r){if(r){t=n+t}var i;try{i=a.openSync(e,"w");a.writeSync(i,t,undefined,"utf8")}finally{if(i!==undefined){a.closeSync(i)}}}function getAccessibleFileSystemEntries(t){try{var r=a.readdirSync(t||".").sort();var n=[];var i=[];for(var o=0,s=r;o<s.length;o++){var c=s[o];if(c==="."||c===".."){continue}var u=e.combinePaths(t,c);var l=void 0;try{l=a.statSync(u)}catch(e){continue}if(l.isFile()){n.push(c)}else if(l.isDirectory()){i.push(c)}}return{files:n,directories:i}}catch(t){return e.emptyFileSystemEntries}}function readDirectory(t,r,n,i,a){return e.matchFiles(t,r,n,i,p,process.cwd(),a,getAccessibleFileSystemEntries)}function fileSystemEntryExists(e,t){try{var r=a.statSync(e);switch(t){case 0:return r.isFile();case 1:return r.isDirectory();default:return false}}catch(e){return false}}function fileExists(e){return fileSystemEntryExists(e,0)}function directoryExists(e){return fileSystemEntryExists(e,1)}function getDirectories(t){return e.filter(a.readdirSync(t),function(r){return fileSystemEntryExists(e.combinePaths(t,r),1)})}function realpath(e){try{return a.realpathSync(e)}catch(t){return e}}function getModifiedTime(e){try{return a.statSync(e).mtime}catch(e){return undefined}}function setModifiedTime(e,t){try{a.utimesSync(e,t,t)}catch(e){return}}function deleteFile(e){try{return a.unlinkSync(e)}catch(e){return}}function generateDjb2Hash(e){var t=e.split("").map(function(e){return e.charCodeAt(0)});return""+t.reduce(function(e,t){return(e<<5)+e+t},5381)}function createMD5HashUsingNativeCrypto(e){var t=c.createHash("md5");t.update(e);return t.digest("hex")}function createSHA256Hash(e){var t=c.createHash("sha256");t.update(e);return t.digest("hex")}}function getChakraSystem(){var t=ChakraHost.realpath&&function(e){return ChakraHost.realpath(e)};return{newLine:ChakraHost.newLine||"\r\n",args:ChakraHost.args,useCaseSensitiveFileNames:!!ChakraHost.useCaseSensitiveFileNames,write:ChakraHost.echo,readFile:function(e,t){return ChakraHost.readFile(e)},writeFile:function(e,t,r){if(r){t=n+t}ChakraHost.writeFile(e,t)},resolvePath:ChakraHost.resolvePath,fileExists:ChakraHost.fileExists,deleteFile:ChakraHost.deleteFile,getModifiedTime:ChakraHost.getModifiedTime,setModifiedTime:ChakraHost.setModifiedTime,directoryExists:ChakraHost.directoryExists,createDirectory:ChakraHost.createDirectory,getExecutingFilePath:function(){return ChakraHost.executingFile},getCurrentDirectory:function(){return ChakraHost.currentDirectory},getDirectories:ChakraHost.getDirectories,getEnvironmentVariable:ChakraHost.getEnvironmentVariable||function(){return""},readDirectory:function(t,r,n,i,a){var o=e.getFileMatcherPatterns(t,n,i,!!ChakraHost.useCaseSensitiveFileNames,ChakraHost.currentDirectory);return ChakraHost.readDirectory(t,r,o.basePaths,o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern)},exit:ChakraHost.quit,realpath:t}}function recursiveCreateDirectory(t,r){var n=e.getDirectoryPath(t);var i=n!==""&&t!==n&&!r.directoryExists(n);if(i){recursiveCreateDirectory(n,r)}if(i||!r.directoryExists(t)){r.createDirectory(t)}}var a;if(typeof ChakraHost!=="undefined"){a=getChakraSystem()}else if(typeof process!=="undefined"&&process.nextTick&&!process.browser&&"function"!=="undefined"){a=getNodeSystem()}if(a){var o=a.writeFile;a.writeFile=function(t,r,n){var i=e.getDirectoryPath(e.normalizeSlashes(t));if(i&&!a.directoryExists(i)){recursiveCreateDirectory(i,a)}o.call(a,t,r,n)}}return a}();if(e.sys&&e.sys.getEnvironmentVariable){setCustomPollingValues(e.sys);e.Debug.currentAssertionLevel=/^development$/i.test(e.sys.getEnvironmentVariable("NODE_ENV"))?1:0}if(e.sys&&e.sys.debugMode){e.Debug.isDebugging=true}})(s||(s={}));var s;(function(e){function diag(e,t,r,n,i){return{code:e,category:t,key:r,message:n,reportsUnnecessary:i}}e.Diagnostics={Unterminated_string_literal:diag(1002,e.DiagnosticCategory.Error,"Unterminated_string_literal_1002","Unterminated string literal."),Identifier_expected:diag(1003,e.DiagnosticCategory.Error,"Identifier_expected_1003","Identifier expected."),_0_expected:diag(1005,e.DiagnosticCategory.Error,"_0_expected_1005","'{0}' expected."),A_file_cannot_have_a_reference_to_itself:diag(1006,e.DiagnosticCategory.Error,"A_file_cannot_have_a_reference_to_itself_1006","A file cannot have a reference to itself."),Trailing_comma_not_allowed:diag(1009,e.DiagnosticCategory.Error,"Trailing_comma_not_allowed_1009","Trailing comma not allowed."),Asterisk_Slash_expected:diag(1010,e.DiagnosticCategory.Error,"Asterisk_Slash_expected_1010","'*/' expected."),An_element_access_expression_should_take_an_argument:diag(1011,e.DiagnosticCategory.Error,"An_element_access_expression_should_take_an_argument_1011","An element access expression should take an argument."),Unexpected_token:diag(1012,e.DiagnosticCategory.Error,"Unexpected_token_1012","Unexpected token."),A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma:diag(1013,e.DiagnosticCategory.Error,"A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma_1013","A rest parameter or binding pattern may not have a trailing comma."),A_rest_parameter_must_be_last_in_a_parameter_list:diag(1014,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_last_in_a_parameter_list_1014","A rest parameter must be last in a parameter list."),Parameter_cannot_have_question_mark_and_initializer:diag(1015,e.DiagnosticCategory.Error,"Parameter_cannot_have_question_mark_and_initializer_1015","Parameter cannot have question mark and initializer."),A_required_parameter_cannot_follow_an_optional_parameter:diag(1016,e.DiagnosticCategory.Error,"A_required_parameter_cannot_follow_an_optional_parameter_1016","A required parameter cannot follow an optional parameter."),An_index_signature_cannot_have_a_rest_parameter:diag(1017,e.DiagnosticCategory.Error,"An_index_signature_cannot_have_a_rest_parameter_1017","An index signature cannot have a rest parameter."),An_index_signature_parameter_cannot_have_an_accessibility_modifier:diag(1018,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_accessibility_modifier_1018","An index signature parameter cannot have an accessibility modifier."),An_index_signature_parameter_cannot_have_a_question_mark:diag(1019,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_a_question_mark_1019","An index signature parameter cannot have a question mark."),An_index_signature_parameter_cannot_have_an_initializer:diag(1020,e.DiagnosticCategory.Error,"An_index_signature_parameter_cannot_have_an_initializer_1020","An index signature parameter cannot have an initializer."),An_index_signature_must_have_a_type_annotation:diag(1021,e.DiagnosticCategory.Error,"An_index_signature_must_have_a_type_annotation_1021","An index signature must have a type annotation."),An_index_signature_parameter_must_have_a_type_annotation:diag(1022,e.DiagnosticCategory.Error,"An_index_signature_parameter_must_have_a_type_annotation_1022","An index signature parameter must have a type annotation."),An_index_signature_parameter_type_must_be_string_or_number:diag(1023,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_must_be_string_or_number_1023","An index signature parameter type must be 'string' or 'number'."),readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature:diag(1024,e.DiagnosticCategory.Error,"readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature_1024","'readonly' modifier can only appear on a property declaration or index signature."),Accessibility_modifier_already_seen:diag(1028,e.DiagnosticCategory.Error,"Accessibility_modifier_already_seen_1028","Accessibility modifier already seen."),_0_modifier_must_precede_1_modifier:diag(1029,e.DiagnosticCategory.Error,"_0_modifier_must_precede_1_modifier_1029","'{0}' modifier must precede '{1}' modifier."),_0_modifier_already_seen:diag(1030,e.DiagnosticCategory.Error,"_0_modifier_already_seen_1030","'{0}' modifier already seen."),_0_modifier_cannot_appear_on_a_class_element:diag(1031,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_class_element_1031","'{0}' modifier cannot appear on a class element."),super_must_be_followed_by_an_argument_list_or_member_access:diag(1034,e.DiagnosticCategory.Error,"super_must_be_followed_by_an_argument_list_or_member_access_1034","'super' must be followed by an argument list or member access."),Only_ambient_modules_can_use_quoted_names:diag(1035,e.DiagnosticCategory.Error,"Only_ambient_modules_can_use_quoted_names_1035","Only ambient modules can use quoted names."),Statements_are_not_allowed_in_ambient_contexts:diag(1036,e.DiagnosticCategory.Error,"Statements_are_not_allowed_in_ambient_contexts_1036","Statements are not allowed in ambient contexts."),A_declare_modifier_cannot_be_used_in_an_already_ambient_context:diag(1038,e.DiagnosticCategory.Error,"A_declare_modifier_cannot_be_used_in_an_already_ambient_context_1038","A 'declare' modifier cannot be used in an already ambient context."),Initializers_are_not_allowed_in_ambient_contexts:diag(1039,e.DiagnosticCategory.Error,"Initializers_are_not_allowed_in_ambient_contexts_1039","Initializers are not allowed in ambient contexts."),_0_modifier_cannot_be_used_in_an_ambient_context:diag(1040,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_in_an_ambient_context_1040","'{0}' modifier cannot be used in an ambient context."),_0_modifier_cannot_be_used_with_a_class_declaration:diag(1041,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_a_class_declaration_1041","'{0}' modifier cannot be used with a class declaration."),_0_modifier_cannot_be_used_here:diag(1042,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_here_1042","'{0}' modifier cannot be used here."),_0_modifier_cannot_appear_on_a_data_property:diag(1043,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_data_property_1043","'{0}' modifier cannot appear on a data property."),_0_modifier_cannot_appear_on_a_module_or_namespace_element:diag(1044,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_module_or_namespace_element_1044","'{0}' modifier cannot appear on a module or namespace element."),A_0_modifier_cannot_be_used_with_an_interface_declaration:diag(1045,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_interface_declaration_1045","A '{0}' modifier cannot be used with an interface declaration."),A_declare_modifier_is_required_for_a_top_level_declaration_in_a_d_ts_file:diag(1046,e.DiagnosticCategory.Error,"A_declare_modifier_is_required_for_a_top_level_declaration_in_a_d_ts_file_1046","A 'declare' modifier is required for a top level declaration in a .d.ts file."),A_rest_parameter_cannot_be_optional:diag(1047,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_be_optional_1047","A rest parameter cannot be optional."),A_rest_parameter_cannot_have_an_initializer:diag(1048,e.DiagnosticCategory.Error,"A_rest_parameter_cannot_have_an_initializer_1048","A rest parameter cannot have an initializer."),A_set_accessor_must_have_exactly_one_parameter:diag(1049,e.DiagnosticCategory.Error,"A_set_accessor_must_have_exactly_one_parameter_1049","A 'set' accessor must have exactly one parameter."),A_set_accessor_cannot_have_an_optional_parameter:diag(1051,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_an_optional_parameter_1051","A 'set' accessor cannot have an optional parameter."),A_set_accessor_parameter_cannot_have_an_initializer:diag(1052,e.DiagnosticCategory.Error,"A_set_accessor_parameter_cannot_have_an_initializer_1052","A 'set' accessor parameter cannot have an initializer."),A_set_accessor_cannot_have_rest_parameter:diag(1053,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_rest_parameter_1053","A 'set' accessor cannot have rest parameter."),A_get_accessor_cannot_have_parameters:diag(1054,e.DiagnosticCategory.Error,"A_get_accessor_cannot_have_parameters_1054","A 'get' accessor cannot have parameters."),Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value:diag(1055,e.DiagnosticCategory.Error,"Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Prom_1055","Type '{0}' is not a valid async function return type in ES5/ES3 because it does not refer to a Promise-compatible constructor value."),Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher:diag(1056,e.DiagnosticCategory.Error,"Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher_1056","Accessors are only available when targeting ECMAScript 5 and higher."),An_async_function_or_method_must_have_a_valid_awaitable_return_type:diag(1057,e.DiagnosticCategory.Error,"An_async_function_or_method_must_have_a_valid_awaitable_return_type_1057","An async function or method must have a valid awaitable return type."),The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:diag(1058,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_t_1058","The return type of an async function must either be a valid promise or must not contain a callable 'then' member."),A_promise_must_have_a_then_method:diag(1059,e.DiagnosticCategory.Error,"A_promise_must_have_a_then_method_1059","A promise must have a 'then' method."),The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback:diag(1060,e.DiagnosticCategory.Error,"The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback_1060","The first parameter of the 'then' method of a promise must be a callback."),Enum_member_must_have_initializer:diag(1061,e.DiagnosticCategory.Error,"Enum_member_must_have_initializer_1061","Enum member must have initializer."),Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method:diag(1062,e.DiagnosticCategory.Error,"Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method_1062","Type is referenced directly or indirectly in the fulfillment callback of its own 'then' method."),An_export_assignment_cannot_be_used_in_a_namespace:diag(1063,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_namespace_1063","An export assignment cannot be used in a namespace."),The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type:diag(1064,e.DiagnosticCategory.Error,"The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type_1064","The return type of an async function or method must be the global Promise<T> type."),In_ambient_enum_declarations_member_initializer_must_be_constant_expression:diag(1066,e.DiagnosticCategory.Error,"In_ambient_enum_declarations_member_initializer_must_be_constant_expression_1066","In ambient enum declarations member initializer must be constant expression."),Unexpected_token_A_constructor_method_accessor_or_property_was_expected:diag(1068,e.DiagnosticCategory.Error,"Unexpected_token_A_constructor_method_accessor_or_property_was_expected_1068","Unexpected token. A constructor, method, accessor, or property was expected."),Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces:diag(1069,e.DiagnosticCategory.Error,"Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces_1069","Unexpected token. A type parameter name was expected without curly braces."),_0_modifier_cannot_appear_on_a_type_member:diag(1070,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_type_member_1070","'{0}' modifier cannot appear on a type member."),_0_modifier_cannot_appear_on_an_index_signature:diag(1071,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_an_index_signature_1071","'{0}' modifier cannot appear on an index signature."),A_0_modifier_cannot_be_used_with_an_import_declaration:diag(1079,e.DiagnosticCategory.Error,"A_0_modifier_cannot_be_used_with_an_import_declaration_1079","A '{0}' modifier cannot be used with an import declaration."),Invalid_reference_directive_syntax:diag(1084,e.DiagnosticCategory.Error,"Invalid_reference_directive_syntax_1084","Invalid 'reference' directive syntax."),Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0:diag(1085,e.DiagnosticCategory.Error,"Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0_1085","Octal literals are not available when targeting ECMAScript 5 and higher. Use the syntax '{0}'."),An_accessor_cannot_be_declared_in_an_ambient_context:diag(1086,e.DiagnosticCategory.Error,"An_accessor_cannot_be_declared_in_an_ambient_context_1086","An accessor cannot be declared in an ambient context."),_0_modifier_cannot_appear_on_a_constructor_declaration:diag(1089,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_constructor_declaration_1089","'{0}' modifier cannot appear on a constructor declaration."),_0_modifier_cannot_appear_on_a_parameter:diag(1090,e.DiagnosticCategory.Error,"_0_modifier_cannot_appear_on_a_parameter_1090","'{0}' modifier cannot appear on a parameter."),Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:diag(1091,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement_1091","Only a single variable declaration is allowed in a 'for...in' statement."),Type_parameters_cannot_appear_on_a_constructor_declaration:diag(1092,e.DiagnosticCategory.Error,"Type_parameters_cannot_appear_on_a_constructor_declaration_1092","Type parameters cannot appear on a constructor declaration."),Type_annotation_cannot_appear_on_a_constructor_declaration:diag(1093,e.DiagnosticCategory.Error,"Type_annotation_cannot_appear_on_a_constructor_declaration_1093","Type annotation cannot appear on a constructor declaration."),An_accessor_cannot_have_type_parameters:diag(1094,e.DiagnosticCategory.Error,"An_accessor_cannot_have_type_parameters_1094","An accessor cannot have type parameters."),A_set_accessor_cannot_have_a_return_type_annotation:diag(1095,e.DiagnosticCategory.Error,"A_set_accessor_cannot_have_a_return_type_annotation_1095","A 'set' accessor cannot have a return type annotation."),An_index_signature_must_have_exactly_one_parameter:diag(1096,e.DiagnosticCategory.Error,"An_index_signature_must_have_exactly_one_parameter_1096","An index signature must have exactly one parameter."),_0_list_cannot_be_empty:diag(1097,e.DiagnosticCategory.Error,"_0_list_cannot_be_empty_1097","'{0}' list cannot be empty."),Type_parameter_list_cannot_be_empty:diag(1098,e.DiagnosticCategory.Error,"Type_parameter_list_cannot_be_empty_1098","Type parameter list cannot be empty."),Type_argument_list_cannot_be_empty:diag(1099,e.DiagnosticCategory.Error,"Type_argument_list_cannot_be_empty_1099","Type argument list cannot be empty."),Invalid_use_of_0_in_strict_mode:diag(1100,e.DiagnosticCategory.Error,"Invalid_use_of_0_in_strict_mode_1100","Invalid use of '{0}' in strict mode."),with_statements_are_not_allowed_in_strict_mode:diag(1101,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_strict_mode_1101","'with' statements are not allowed in strict mode."),delete_cannot_be_called_on_an_identifier_in_strict_mode:diag(1102,e.DiagnosticCategory.Error,"delete_cannot_be_called_on_an_identifier_in_strict_mode_1102","'delete' cannot be called on an identifier in strict mode."),A_for_await_of_statement_is_only_allowed_within_an_async_function_or_async_generator:diag(1103,e.DiagnosticCategory.Error,"A_for_await_of_statement_is_only_allowed_within_an_async_function_or_async_generator_1103","A 'for-await-of' statement is only allowed within an async function or async generator."),A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement:diag(1104,e.DiagnosticCategory.Error,"A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement_1104","A 'continue' statement can only be used within an enclosing iteration statement."),A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:diag(1105,e.DiagnosticCategory.Error,"A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement_1105","A 'break' statement can only be used within an enclosing iteration or switch statement."),Jump_target_cannot_cross_function_boundary:diag(1107,e.DiagnosticCategory.Error,"Jump_target_cannot_cross_function_boundary_1107","Jump target cannot cross function boundary."),A_return_statement_can_only_be_used_within_a_function_body:diag(1108,e.DiagnosticCategory.Error,"A_return_statement_can_only_be_used_within_a_function_body_1108","A 'return' statement can only be used within a function body."),Expression_expected:diag(1109,e.DiagnosticCategory.Error,"Expression_expected_1109","Expression expected."),Type_expected:diag(1110,e.DiagnosticCategory.Error,"Type_expected_1110","Type expected."),A_default_clause_cannot_appear_more_than_once_in_a_switch_statement:diag(1113,e.DiagnosticCategory.Error,"A_default_clause_cannot_appear_more_than_once_in_a_switch_statement_1113","A 'default' clause cannot appear more than once in a 'switch' statement."),Duplicate_label_0:diag(1114,e.DiagnosticCategory.Error,"Duplicate_label_0_1114","Duplicate label '{0}'."),A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement:diag(1115,e.DiagnosticCategory.Error,"A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement_1115","A 'continue' statement can only jump to a label of an enclosing iteration statement."),A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:diag(1116,e.DiagnosticCategory.Error,"A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement_1116","A 'break' statement can only jump to a label of an enclosing statement."),An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode:diag(1117,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode_1117","An object literal cannot have multiple properties with the same name in strict mode."),An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name:diag(1118,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name_1118","An object literal cannot have multiple get/set accessors with the same name."),An_object_literal_cannot_have_property_and_accessor_with_the_same_name:diag(1119,e.DiagnosticCategory.Error,"An_object_literal_cannot_have_property_and_accessor_with_the_same_name_1119","An object literal cannot have property and accessor with the same name."),An_export_assignment_cannot_have_modifiers:diag(1120,e.DiagnosticCategory.Error,"An_export_assignment_cannot_have_modifiers_1120","An export assignment cannot have modifiers."),Octal_literals_are_not_allowed_in_strict_mode:diag(1121,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_strict_mode_1121","Octal literals are not allowed in strict mode."),Variable_declaration_list_cannot_be_empty:diag(1123,e.DiagnosticCategory.Error,"Variable_declaration_list_cannot_be_empty_1123","Variable declaration list cannot be empty."),Digit_expected:diag(1124,e.DiagnosticCategory.Error,"Digit_expected_1124","Digit expected."),Hexadecimal_digit_expected:diag(1125,e.DiagnosticCategory.Error,"Hexadecimal_digit_expected_1125","Hexadecimal digit expected."),Unexpected_end_of_text:diag(1126,e.DiagnosticCategory.Error,"Unexpected_end_of_text_1126","Unexpected end of text."),Invalid_character:diag(1127,e.DiagnosticCategory.Error,"Invalid_character_1127","Invalid character."),Declaration_or_statement_expected:diag(1128,e.DiagnosticCategory.Error,"Declaration_or_statement_expected_1128","Declaration or statement expected."),Statement_expected:diag(1129,e.DiagnosticCategory.Error,"Statement_expected_1129","Statement expected."),case_or_default_expected:diag(1130,e.DiagnosticCategory.Error,"case_or_default_expected_1130","'case' or 'default' expected."),Property_or_signature_expected:diag(1131,e.DiagnosticCategory.Error,"Property_or_signature_expected_1131","Property or signature expected."),Enum_member_expected:diag(1132,e.DiagnosticCategory.Error,"Enum_member_expected_1132","Enum member expected."),Variable_declaration_expected:diag(1134,e.DiagnosticCategory.Error,"Variable_declaration_expected_1134","Variable declaration expected."),Argument_expression_expected:diag(1135,e.DiagnosticCategory.Error,"Argument_expression_expected_1135","Argument expression expected."),Property_assignment_expected:diag(1136,e.DiagnosticCategory.Error,"Property_assignment_expected_1136","Property assignment expected."),Expression_or_comma_expected:diag(1137,e.DiagnosticCategory.Error,"Expression_or_comma_expected_1137","Expression or comma expected."),Parameter_declaration_expected:diag(1138,e.DiagnosticCategory.Error,"Parameter_declaration_expected_1138","Parameter declaration expected."),Type_parameter_declaration_expected:diag(1139,e.DiagnosticCategory.Error,"Type_parameter_declaration_expected_1139","Type parameter declaration expected."),Type_argument_expected:diag(1140,e.DiagnosticCategory.Error,"Type_argument_expected_1140","Type argument expected."),String_literal_expected:diag(1141,e.DiagnosticCategory.Error,"String_literal_expected_1141","String literal expected."),Line_break_not_permitted_here:diag(1142,e.DiagnosticCategory.Error,"Line_break_not_permitted_here_1142","Line break not permitted here."),or_expected:diag(1144,e.DiagnosticCategory.Error,"or_expected_1144","'{' or ';' expected."),Declaration_expected:diag(1146,e.DiagnosticCategory.Error,"Declaration_expected_1146","Declaration expected."),Import_declarations_in_a_namespace_cannot_reference_a_module:diag(1147,e.DiagnosticCategory.Error,"Import_declarations_in_a_namespace_cannot_reference_a_module_1147","Import declarations in a namespace cannot reference a module."),Cannot_use_imports_exports_or_module_augmentations_when_module_is_none:diag(1148,e.DiagnosticCategory.Error,"Cannot_use_imports_exports_or_module_augmentations_when_module_is_none_1148","Cannot use imports, exports, or module augmentations when '--module' is 'none'."),File_name_0_differs_from_already_included_file_name_1_only_in_casing:diag(1149,e.DiagnosticCategory.Error,"File_name_0_differs_from_already_included_file_name_1_only_in_casing_1149","File name '{0}' differs from already included file name '{1}' only in casing."),new_T_cannot_be_used_to_create_an_array_Use_new_Array_T_instead:diag(1150,e.DiagnosticCategory.Error,"new_T_cannot_be_used_to_create_an_array_Use_new_Array_T_instead_1150","'new T[]' cannot be used to create an array. Use 'new Array<T>()' instead."),const_declarations_must_be_initialized:diag(1155,e.DiagnosticCategory.Error,"const_declarations_must_be_initialized_1155","'const' declarations must be initialized."),const_declarations_can_only_be_declared_inside_a_block:diag(1156,e.DiagnosticCategory.Error,"const_declarations_can_only_be_declared_inside_a_block_1156","'const' declarations can only be declared inside a block."),let_declarations_can_only_be_declared_inside_a_block:diag(1157,e.DiagnosticCategory.Error,"let_declarations_can_only_be_declared_inside_a_block_1157","'let' declarations can only be declared inside a block."),Unterminated_template_literal:diag(1160,e.DiagnosticCategory.Error,"Unterminated_template_literal_1160","Unterminated template literal."),Unterminated_regular_expression_literal:diag(1161,e.DiagnosticCategory.Error,"Unterminated_regular_expression_literal_1161","Unterminated regular expression literal."),An_object_member_cannot_be_declared_optional:diag(1162,e.DiagnosticCategory.Error,"An_object_member_cannot_be_declared_optional_1162","An object member cannot be declared optional."),A_yield_expression_is_only_allowed_in_a_generator_body:diag(1163,e.DiagnosticCategory.Error,"A_yield_expression_is_only_allowed_in_a_generator_body_1163","A 'yield' expression is only allowed in a generator body."),Computed_property_names_are_not_allowed_in_enums:diag(1164,e.DiagnosticCategory.Error,"Computed_property_names_are_not_allowed_in_enums_1164","Computed property names are not allowed in enums."),A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:diag(1165,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_t_1165","A computed property name in an ambient context must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:diag(1166,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_1166","A computed property name in a class property declaration must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:diag(1168,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_ty_1168","A computed property name in a method overload must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:diag(1169,e.DiagnosticCategory.Error,"A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_1169","A computed property name in an interface must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type:diag(1170,e.DiagnosticCategory.Error,"A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type__1170","A computed property name in a type literal must refer to an expression whose type is a literal type or a 'unique symbol' type."),A_comma_expression_is_not_allowed_in_a_computed_property_name:diag(1171,e.DiagnosticCategory.Error,"A_comma_expression_is_not_allowed_in_a_computed_property_name_1171","A comma expression is not allowed in a computed property name."),extends_clause_already_seen:diag(1172,e.DiagnosticCategory.Error,"extends_clause_already_seen_1172","'extends' clause already seen."),extends_clause_must_precede_implements_clause:diag(1173,e.DiagnosticCategory.Error,"extends_clause_must_precede_implements_clause_1173","'extends' clause must precede 'implements' clause."),Classes_can_only_extend_a_single_class:diag(1174,e.DiagnosticCategory.Error,"Classes_can_only_extend_a_single_class_1174","Classes can only extend a single class."),implements_clause_already_seen:diag(1175,e.DiagnosticCategory.Error,"implements_clause_already_seen_1175","'implements' clause already seen."),Interface_declaration_cannot_have_implements_clause:diag(1176,e.DiagnosticCategory.Error,"Interface_declaration_cannot_have_implements_clause_1176","Interface declaration cannot have 'implements' clause."),Binary_digit_expected:diag(1177,e.DiagnosticCategory.Error,"Binary_digit_expected_1177","Binary digit expected."),Octal_digit_expected:diag(1178,e.DiagnosticCategory.Error,"Octal_digit_expected_1178","Octal digit expected."),Unexpected_token_expected:diag(1179,e.DiagnosticCategory.Error,"Unexpected_token_expected_1179","Unexpected token. '{' expected."),Property_destructuring_pattern_expected:diag(1180,e.DiagnosticCategory.Error,"Property_destructuring_pattern_expected_1180","Property destructuring pattern expected."),Array_element_destructuring_pattern_expected:diag(1181,e.DiagnosticCategory.Error,"Array_element_destructuring_pattern_expected_1181","Array element destructuring pattern expected."),A_destructuring_declaration_must_have_an_initializer:diag(1182,e.DiagnosticCategory.Error,"A_destructuring_declaration_must_have_an_initializer_1182","A destructuring declaration must have an initializer."),An_implementation_cannot_be_declared_in_ambient_contexts:diag(1183,e.DiagnosticCategory.Error,"An_implementation_cannot_be_declared_in_ambient_contexts_1183","An implementation cannot be declared in ambient contexts."),Modifiers_cannot_appear_here:diag(1184,e.DiagnosticCategory.Error,"Modifiers_cannot_appear_here_1184","Modifiers cannot appear here."),Merge_conflict_marker_encountered:diag(1185,e.DiagnosticCategory.Error,"Merge_conflict_marker_encountered_1185","Merge conflict marker encountered."),A_rest_element_cannot_have_an_initializer:diag(1186,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_an_initializer_1186","A rest element cannot have an initializer."),A_parameter_property_may_not_be_declared_using_a_binding_pattern:diag(1187,e.DiagnosticCategory.Error,"A_parameter_property_may_not_be_declared_using_a_binding_pattern_1187","A parameter property may not be declared using a binding pattern."),Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement:diag(1188,e.DiagnosticCategory.Error,"Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement_1188","Only a single variable declaration is allowed in a 'for...of' statement."),The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:diag(1189,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer_1189","The variable declaration of a 'for...in' statement cannot have an initializer."),The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer:diag(1190,e.DiagnosticCategory.Error,"The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer_1190","The variable declaration of a 'for...of' statement cannot have an initializer."),An_import_declaration_cannot_have_modifiers:diag(1191,e.DiagnosticCategory.Error,"An_import_declaration_cannot_have_modifiers_1191","An import declaration cannot have modifiers."),Module_0_has_no_default_export:diag(1192,e.DiagnosticCategory.Error,"Module_0_has_no_default_export_1192","Module '{0}' has no default export."),An_export_declaration_cannot_have_modifiers:diag(1193,e.DiagnosticCategory.Error,"An_export_declaration_cannot_have_modifiers_1193","An export declaration cannot have modifiers."),Export_declarations_are_not_permitted_in_a_namespace:diag(1194,e.DiagnosticCategory.Error,"Export_declarations_are_not_permitted_in_a_namespace_1194","Export declarations are not permitted in a namespace."),Catch_clause_variable_cannot_have_a_type_annotation:diag(1196,e.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_a_type_annotation_1196","Catch clause variable cannot have a type annotation."),Catch_clause_variable_cannot_have_an_initializer:diag(1197,e.DiagnosticCategory.Error,"Catch_clause_variable_cannot_have_an_initializer_1197","Catch clause variable cannot have an initializer."),An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive:diag(1198,e.DiagnosticCategory.Error,"An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive_1198","An extended Unicode escape value must be between 0x0 and 0x10FFFF inclusive."),Unterminated_Unicode_escape_sequence:diag(1199,e.DiagnosticCategory.Error,"Unterminated_Unicode_escape_sequence_1199","Unterminated Unicode escape sequence."),Line_terminator_not_permitted_before_arrow:diag(1200,e.DiagnosticCategory.Error,"Line_terminator_not_permitted_before_arrow_1200","Line terminator not permitted before arrow."),Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead:diag(1202,e.DiagnosticCategory.Error,"Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_1202","Import assignment cannot be used when targeting ECMAScript modules. Consider using 'import * as ns from \"mod\"', 'import {a} from \"mod\"', 'import d from \"mod\"', or another module format instead."),Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead:diag(1203,e.DiagnosticCategory.Error,"Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or__1203","Export assignment cannot be used when targeting ECMAScript modules. Consider using 'export default' or another module format instead."),Cannot_re_export_a_type_when_the_isolatedModules_flag_is_provided:diag(1205,e.DiagnosticCategory.Error,"Cannot_re_export_a_type_when_the_isolatedModules_flag_is_provided_1205","Cannot re-export a type when the '--isolatedModules' flag is provided."),Decorators_are_not_valid_here:diag(1206,e.DiagnosticCategory.Error,"Decorators_are_not_valid_here_1206","Decorators are not valid here."),Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name:diag(1207,e.DiagnosticCategory.Error,"Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name_1207","Decorators cannot be applied to multiple get/set accessors of the same name."),Cannot_compile_namespaces_when_the_isolatedModules_flag_is_provided:diag(1208,e.DiagnosticCategory.Error,"Cannot_compile_namespaces_when_the_isolatedModules_flag_is_provided_1208","Cannot compile namespaces when the '--isolatedModules' flag is provided."),Ambient_const_enums_are_not_allowed_when_the_isolatedModules_flag_is_provided:diag(1209,e.DiagnosticCategory.Error,"Ambient_const_enums_are_not_allowed_when_the_isolatedModules_flag_is_provided_1209","Ambient const enums are not allowed when the '--isolatedModules' flag is provided."),Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode:diag(1210,e.DiagnosticCategory.Error,"Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode_1210","Invalid use of '{0}'. Class definitions are automatically in strict mode."),A_class_declaration_without_the_default_modifier_must_have_a_name:diag(1211,e.DiagnosticCategory.Error,"A_class_declaration_without_the_default_modifier_must_have_a_name_1211","A class declaration without the 'default' modifier must have a name."),Identifier_expected_0_is_a_reserved_word_in_strict_mode:diag(1212,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_1212","Identifier expected. '{0}' is a reserved word in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode:diag(1213,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_stric_1213","Identifier expected. '{0}' is a reserved word in strict mode. Class definitions are automatically in strict mode."),Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode:diag(1214,e.DiagnosticCategory.Error,"Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode_1214","Identifier expected. '{0}' is a reserved word in strict mode. Modules are automatically in strict mode."),Invalid_use_of_0_Modules_are_automatically_in_strict_mode:diag(1215,e.DiagnosticCategory.Error,"Invalid_use_of_0_Modules_are_automatically_in_strict_mode_1215","Invalid use of '{0}'. Modules are automatically in strict mode."),Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules:diag(1216,e.DiagnosticCategory.Error,"Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules_1216","Identifier expected. '__esModule' is reserved as an exported marker when transforming ECMAScript modules."),Export_assignment_is_not_supported_when_module_flag_is_system:diag(1218,e.DiagnosticCategory.Error,"Export_assignment_is_not_supported_when_module_flag_is_system_1218","Export assignment is not supported when '--module' flag is 'system'."),Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_to_remove_this_warning:diag(1219,e.DiagnosticCategory.Error,"Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_t_1219","Experimental support for decorators is a feature that is subject to change in a future release. Set the 'experimentalDecorators' option to remove this warning."),Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher:diag(1220,e.DiagnosticCategory.Error,"Generators_are_only_available_when_targeting_ECMAScript_2015_or_higher_1220","Generators are only available when targeting ECMAScript 2015 or higher."),Generators_are_not_allowed_in_an_ambient_context:diag(1221,e.DiagnosticCategory.Error,"Generators_are_not_allowed_in_an_ambient_context_1221","Generators are not allowed in an ambient context."),An_overload_signature_cannot_be_declared_as_a_generator:diag(1222,e.DiagnosticCategory.Error,"An_overload_signature_cannot_be_declared_as_a_generator_1222","An overload signature cannot be declared as a generator."),_0_tag_already_specified:diag(1223,e.DiagnosticCategory.Error,"_0_tag_already_specified_1223","'{0}' tag already specified."),Signature_0_must_be_a_type_predicate:diag(1224,e.DiagnosticCategory.Error,"Signature_0_must_be_a_type_predicate_1224","Signature '{0}' must be a type predicate."),Cannot_find_parameter_0:diag(1225,e.DiagnosticCategory.Error,"Cannot_find_parameter_0_1225","Cannot find parameter '{0}'."),Type_predicate_0_is_not_assignable_to_1:diag(1226,e.DiagnosticCategory.Error,"Type_predicate_0_is_not_assignable_to_1_1226","Type predicate '{0}' is not assignable to '{1}'."),Parameter_0_is_not_in_the_same_position_as_parameter_1:diag(1227,e.DiagnosticCategory.Error,"Parameter_0_is_not_in_the_same_position_as_parameter_1_1227","Parameter '{0}' is not in the same position as parameter '{1}'."),A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods:diag(1228,e.DiagnosticCategory.Error,"A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods_1228","A type predicate is only allowed in return type position for functions and methods."),A_type_predicate_cannot_reference_a_rest_parameter:diag(1229,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_a_rest_parameter_1229","A type predicate cannot reference a rest parameter."),A_type_predicate_cannot_reference_element_0_in_a_binding_pattern:diag(1230,e.DiagnosticCategory.Error,"A_type_predicate_cannot_reference_element_0_in_a_binding_pattern_1230","A type predicate cannot reference element '{0}' in a binding pattern."),An_export_assignment_can_only_be_used_in_a_module:diag(1231,e.DiagnosticCategory.Error,"An_export_assignment_can_only_be_used_in_a_module_1231","An export assignment can only be used in a module."),An_import_declaration_can_only_be_used_in_a_namespace_or_module:diag(1232,e.DiagnosticCategory.Error,"An_import_declaration_can_only_be_used_in_a_namespace_or_module_1232","An import declaration can only be used in a namespace or module."),An_export_declaration_can_only_be_used_in_a_module:diag(1233,e.DiagnosticCategory.Error,"An_export_declaration_can_only_be_used_in_a_module_1233","An export declaration can only be used in a module."),An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:diag(1234,e.DiagnosticCategory.Error,"An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file_1234","An ambient module declaration is only allowed at the top level in a file."),A_namespace_declaration_is_only_allowed_in_a_namespace_or_module:diag(1235,e.DiagnosticCategory.Error,"A_namespace_declaration_is_only_allowed_in_a_namespace_or_module_1235","A namespace declaration is only allowed in a namespace or module."),The_return_type_of_a_property_decorator_function_must_be_either_void_or_any:diag(1236,e.DiagnosticCategory.Error,"The_return_type_of_a_property_decorator_function_must_be_either_void_or_any_1236","The return type of a property decorator function must be either 'void' or 'any'."),The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any:diag(1237,e.DiagnosticCategory.Error,"The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any_1237","The return type of a parameter decorator function must be either 'void' or 'any'."),Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression:diag(1238,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression_1238","Unable to resolve signature of class decorator when called as an expression."),Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression:diag(1239,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression_1239","Unable to resolve signature of parameter decorator when called as an expression."),Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression:diag(1240,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression_1240","Unable to resolve signature of property decorator when called as an expression."),Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression:diag(1241,e.DiagnosticCategory.Error,"Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression_1241","Unable to resolve signature of method decorator when called as an expression."),abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration:diag(1242,e.DiagnosticCategory.Error,"abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration_1242","'abstract' modifier can only appear on a class, method, or property declaration."),_0_modifier_cannot_be_used_with_1_modifier:diag(1243,e.DiagnosticCategory.Error,"_0_modifier_cannot_be_used_with_1_modifier_1243","'{0}' modifier cannot be used with '{1}' modifier."),Abstract_methods_can_only_appear_within_an_abstract_class:diag(1244,e.DiagnosticCategory.Error,"Abstract_methods_can_only_appear_within_an_abstract_class_1244","Abstract methods can only appear within an abstract class."),Method_0_cannot_have_an_implementation_because_it_is_marked_abstract:diag(1245,e.DiagnosticCategory.Error,"Method_0_cannot_have_an_implementation_because_it_is_marked_abstract_1245","Method '{0}' cannot have an implementation because it is marked abstract."),An_interface_property_cannot_have_an_initializer:diag(1246,e.DiagnosticCategory.Error,"An_interface_property_cannot_have_an_initializer_1246","An interface property cannot have an initializer."),A_type_literal_property_cannot_have_an_initializer:diag(1247,e.DiagnosticCategory.Error,"A_type_literal_property_cannot_have_an_initializer_1247","A type literal property cannot have an initializer."),A_class_member_cannot_have_the_0_keyword:diag(1248,e.DiagnosticCategory.Error,"A_class_member_cannot_have_the_0_keyword_1248","A class member cannot have the '{0}' keyword."),A_decorator_can_only_decorate_a_method_implementation_not_an_overload:diag(1249,e.DiagnosticCategory.Error,"A_decorator_can_only_decorate_a_method_implementation_not_an_overload_1249","A decorator can only decorate a method implementation, not an overload."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5:diag(1250,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_1250","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode:diag(1251,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_d_1251","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Class definitions are automatically in strict mode."),Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode:diag(1252,e.DiagnosticCategory.Error,"Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_1252","Function declarations are not allowed inside blocks in strict mode when targeting 'ES3' or 'ES5'. Modules are automatically in strict mode."),_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag:diag(1253,e.DiagnosticCategory.Error,"_0_tag_cannot_be_used_independently_as_a_top_level_JSDoc_tag_1253","'{0}' tag cannot be used independently as a top level JSDoc tag."),A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference:diag(1254,e.DiagnosticCategory.Error,"A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_refere_1254","A 'const' initializer in an ambient context must be a string or numeric literal or literal enum reference."),A_definite_assignment_assertion_is_not_permitted_in_this_context:diag(1255,e.DiagnosticCategory.Error,"A_definite_assignment_assertion_is_not_permitted_in_this_context_1255","A definite assignment assertion '!' is not permitted in this context."),A_rest_element_must_be_last_in_a_tuple_type:diag(1256,e.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_tuple_type_1256","A rest element must be last in a tuple type."),A_required_element_cannot_follow_an_optional_element:diag(1257,e.DiagnosticCategory.Error,"A_required_element_cannot_follow_an_optional_element_1257","A required element cannot follow an optional element."),with_statements_are_not_allowed_in_an_async_function_block:diag(1300,e.DiagnosticCategory.Error,"with_statements_are_not_allowed_in_an_async_function_block_1300","'with' statements are not allowed in an async function block."),await_expression_is_only_allowed_within_an_async_function:diag(1308,e.DiagnosticCategory.Error,"await_expression_is_only_allowed_within_an_async_function_1308","'await' expression is only allowed within an async function."),can_only_be_used_in_an_object_literal_property_inside_a_destructuring_assignment:diag(1312,e.DiagnosticCategory.Error,"can_only_be_used_in_an_object_literal_property_inside_a_destructuring_assignment_1312","'=' can only be used in an object literal property inside a destructuring assignment."),The_body_of_an_if_statement_cannot_be_the_empty_statement:diag(1313,e.DiagnosticCategory.Error,"The_body_of_an_if_statement_cannot_be_the_empty_statement_1313","The body of an 'if' statement cannot be the empty statement."),Global_module_exports_may_only_appear_in_module_files:diag(1314,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_module_files_1314","Global module exports may only appear in module files."),Global_module_exports_may_only_appear_in_declaration_files:diag(1315,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_in_declaration_files_1315","Global module exports may only appear in declaration files."),Global_module_exports_may_only_appear_at_top_level:diag(1316,e.DiagnosticCategory.Error,"Global_module_exports_may_only_appear_at_top_level_1316","Global module exports may only appear at top level."),A_parameter_property_cannot_be_declared_using_a_rest_parameter:diag(1317,e.DiagnosticCategory.Error,"A_parameter_property_cannot_be_declared_using_a_rest_parameter_1317","A parameter property cannot be declared using a rest parameter."),An_abstract_accessor_cannot_have_an_implementation:diag(1318,e.DiagnosticCategory.Error,"An_abstract_accessor_cannot_have_an_implementation_1318","An abstract accessor cannot have an implementation."),A_default_export_can_only_be_used_in_an_ECMAScript_style_module:diag(1319,e.DiagnosticCategory.Error,"A_default_export_can_only_be_used_in_an_ECMAScript_style_module_1319","A default export can only be used in an ECMAScript-style module."),Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:diag(1320,e.DiagnosticCategory.Error,"Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member_1320","Type of 'await' operand must either be a valid promise or must not contain a callable 'then' member."),Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:diag(1321,e.DiagnosticCategory.Error,"Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_cal_1321","Type of 'yield' operand in an async generator must either be a valid promise or must not contain a callable 'then' member."),Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:diag(1322,e.DiagnosticCategory.Error,"Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_con_1322","Type of iterated elements of a 'yield*' operand must either be a valid promise or must not contain a callable 'then' member."),Dynamic_import_is_only_supported_when_module_flag_is_commonjs_or_esNext:diag(1323,e.DiagnosticCategory.Error,"Dynamic_import_is_only_supported_when_module_flag_is_commonjs_or_esNext_1323","Dynamic import is only supported when '--module' flag is 'commonjs' or 'esNext'."),Dynamic_import_must_have_one_specifier_as_an_argument:diag(1324,e.DiagnosticCategory.Error,"Dynamic_import_must_have_one_specifier_as_an_argument_1324","Dynamic import must have one specifier as an argument."),Specifier_of_dynamic_import_cannot_be_spread_element:diag(1325,e.DiagnosticCategory.Error,"Specifier_of_dynamic_import_cannot_be_spread_element_1325","Specifier of dynamic import cannot be spread element."),Dynamic_import_cannot_have_type_arguments:diag(1326,e.DiagnosticCategory.Error,"Dynamic_import_cannot_have_type_arguments_1326","Dynamic import cannot have type arguments"),String_literal_with_double_quotes_expected:diag(1327,e.DiagnosticCategory.Error,"String_literal_with_double_quotes_expected_1327","String literal with double quotes expected."),Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal:diag(1328,e.DiagnosticCategory.Error,"Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_li_1328","Property value can only be string literal, numeric literal, 'true', 'false', 'null', object literal or array literal."),_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0:diag(1329,e.DiagnosticCategory.Error,"_0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write__1329","'{0}' accepts too few arguments to be used as a decorator here. Did you mean to call it first and write '@{0}()'?"),A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly:diag(1330,e.DiagnosticCategory.Error,"A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly_1330","A property of an interface or type literal whose type is a 'unique symbol' type must be 'readonly'."),A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly:diag(1331,e.DiagnosticCategory.Error,"A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly_1331","A property of a class whose type is a 'unique symbol' type must be both 'static' and 'readonly'."),A_variable_whose_type_is_a_unique_symbol_type_must_be_const:diag(1332,e.DiagnosticCategory.Error,"A_variable_whose_type_is_a_unique_symbol_type_must_be_const_1332","A variable whose type is a 'unique symbol' type must be 'const'."),unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name:diag(1333,e.DiagnosticCategory.Error,"unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name_1333","'unique symbol' types may not be used on a variable declaration with a binding name."),unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement:diag(1334,e.DiagnosticCategory.Error,"unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement_1334","'unique symbol' types are only allowed on variables in a variable statement."),unique_symbol_types_are_not_allowed_here:diag(1335,e.DiagnosticCategory.Error,"unique_symbol_types_are_not_allowed_here_1335","'unique symbol' types are not allowed here."),An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead:diag(1336,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead_1336","An index signature parameter type cannot be a type alias. Consider writing '[{0}: {1}]: {2}' instead."),An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead:diag(1337,e.DiagnosticCategory.Error,"An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead_1337","An index signature parameter type cannot be a union type. Consider using a mapped object type instead."),infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type:diag(1338,e.DiagnosticCategory.Error,"infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type_1338","'infer' declarations are only permitted in the 'extends' clause of a conditional type."),Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:diag(1339,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here_1339","Module '{0}' does not refer to a value, but is used as a value here."),Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0:diag(1340,e.DiagnosticCategory.Error,"Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0_1340","Module '{0}' does not refer to a type, but is used as a type here. Did you mean 'typeof import('{0}')'?"),Type_arguments_cannot_be_used_here:diag(1342,e.DiagnosticCategory.Error,"Type_arguments_cannot_be_used_here_1342","Type arguments cannot be used here."),The_import_meta_meta_property_is_only_allowed_using_ESNext_for_the_target_and_module_compiler_options:diag(1343,e.DiagnosticCategory.Error,"The_import_meta_meta_property_is_only_allowed_using_ESNext_for_the_target_and_module_compiler_option_1343","The 'import.meta' meta-property is only allowed using 'ESNext' for the 'target' and 'module' compiler options."),A_label_is_not_allowed_here:diag(1344,e.DiagnosticCategory.Error,"A_label_is_not_allowed_here_1344","'A label is not allowed here."),An_expression_of_type_void_cannot_be_tested_for_truthiness:diag(1345,e.DiagnosticCategory.Error,"An_expression_of_type_void_cannot_be_tested_for_truthiness_1345","An expression of type 'void' cannot be tested for truthiness"),This_parameter_is_not_allowed_with_use_strict_directive:diag(1346,e.DiagnosticCategory.Error,"This_parameter_is_not_allowed_with_use_strict_directive_1346","This parameter is not allowed with 'use strict' directive."),use_strict_directive_cannot_be_used_with_non_simple_parameter_list:diag(1347,e.DiagnosticCategory.Error,"use_strict_directive_cannot_be_used_with_non_simple_parameter_list_1347","'use strict' directive cannot be used with non-simple parameter list."),Non_simple_parameter_declared_here:diag(1348,e.DiagnosticCategory.Error,"Non_simple_parameter_declared_here_1348","Non-simple parameter declared here."),use_strict_directive_used_here:diag(1349,e.DiagnosticCategory.Error,"use_strict_directive_used_here_1349","'use strict' directive used here."),Print_the_final_configuration_instead_of_building:diag(1350,e.DiagnosticCategory.Message,"Print_the_final_configuration_instead_of_building_1350","Print the final configuration instead of building."),Duplicate_identifier_0:diag(2300,e.DiagnosticCategory.Error,"Duplicate_identifier_0_2300","Duplicate identifier '{0}'."),Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor:diag(2301,e.DiagnosticCategory.Error,"Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor_2301","Initializer of instance member variable '{0}' cannot reference identifier '{1}' declared in the constructor."),Static_members_cannot_reference_class_type_parameters:diag(2302,e.DiagnosticCategory.Error,"Static_members_cannot_reference_class_type_parameters_2302","Static members cannot reference class type parameters."),Circular_definition_of_import_alias_0:diag(2303,e.DiagnosticCategory.Error,"Circular_definition_of_import_alias_0_2303","Circular definition of import alias '{0}'."),Cannot_find_name_0:diag(2304,e.DiagnosticCategory.Error,"Cannot_find_name_0_2304","Cannot find name '{0}'."),Module_0_has_no_exported_member_1:diag(2305,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_2305","Module '{0}' has no exported member '{1}'."),File_0_is_not_a_module:diag(2306,e.DiagnosticCategory.Error,"File_0_is_not_a_module_2306","File '{0}' is not a module."),Cannot_find_module_0:diag(2307,e.DiagnosticCategory.Error,"Cannot_find_module_0_2307","Cannot find module '{0}'."),Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity:diag(2308,e.DiagnosticCategory.Error,"Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambig_2308","Module {0} has already exported a member named '{1}'. Consider explicitly re-exporting to resolve the ambiguity."),An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements:diag(2309,e.DiagnosticCategory.Error,"An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements_2309","An export assignment cannot be used in a module with other exported elements."),Type_0_recursively_references_itself_as_a_base_type:diag(2310,e.DiagnosticCategory.Error,"Type_0_recursively_references_itself_as_a_base_type_2310","Type '{0}' recursively references itself as a base type."),A_class_may_only_extend_another_class:diag(2311,e.DiagnosticCategory.Error,"A_class_may_only_extend_another_class_2311","A class may only extend another class."),An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members:diag(2312,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_me_2312","An interface can only extend an object type or intersection of object types with statically known members."),Type_parameter_0_has_a_circular_constraint:diag(2313,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_constraint_2313","Type parameter '{0}' has a circular constraint."),Generic_type_0_requires_1_type_argument_s:diag(2314,e.DiagnosticCategory.Error,"Generic_type_0_requires_1_type_argument_s_2314","Generic type '{0}' requires {1} type argument(s)."),Type_0_is_not_generic:diag(2315,e.DiagnosticCategory.Error,"Type_0_is_not_generic_2315","Type '{0}' is not generic."),Global_type_0_must_be_a_class_or_interface_type:diag(2316,e.DiagnosticCategory.Error,"Global_type_0_must_be_a_class_or_interface_type_2316","Global type '{0}' must be a class or interface type."),Global_type_0_must_have_1_type_parameter_s:diag(2317,e.DiagnosticCategory.Error,"Global_type_0_must_have_1_type_parameter_s_2317","Global type '{0}' must have {1} type parameter(s)."),Cannot_find_global_type_0:diag(2318,e.DiagnosticCategory.Error,"Cannot_find_global_type_0_2318","Cannot find global type '{0}'."),Named_property_0_of_types_1_and_2_are_not_identical:diag(2319,e.DiagnosticCategory.Error,"Named_property_0_of_types_1_and_2_are_not_identical_2319","Named property '{0}' of types '{1}' and '{2}' are not identical."),Interface_0_cannot_simultaneously_extend_types_1_and_2:diag(2320,e.DiagnosticCategory.Error,"Interface_0_cannot_simultaneously_extend_types_1_and_2_2320","Interface '{0}' cannot simultaneously extend types '{1}' and '{2}'."),Excessive_stack_depth_comparing_types_0_and_1:diag(2321,e.DiagnosticCategory.Error,"Excessive_stack_depth_comparing_types_0_and_1_2321","Excessive stack depth comparing types '{0}' and '{1}'."),Type_0_is_not_assignable_to_type_1:diag(2322,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_2322","Type '{0}' is not assignable to type '{1}'."),Cannot_redeclare_exported_variable_0:diag(2323,e.DiagnosticCategory.Error,"Cannot_redeclare_exported_variable_0_2323","Cannot redeclare exported variable '{0}'."),Property_0_is_missing_in_type_1:diag(2324,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_2324","Property '{0}' is missing in type '{1}'."),Property_0_is_private_in_type_1_but_not_in_type_2:diag(2325,e.DiagnosticCategory.Error,"Property_0_is_private_in_type_1_but_not_in_type_2_2325","Property '{0}' is private in type '{1}' but not in type '{2}'."),Types_of_property_0_are_incompatible:diag(2326,e.DiagnosticCategory.Error,"Types_of_property_0_are_incompatible_2326","Types of property '{0}' are incompatible."),Property_0_is_optional_in_type_1_but_required_in_type_2:diag(2327,e.DiagnosticCategory.Error,"Property_0_is_optional_in_type_1_but_required_in_type_2_2327","Property '{0}' is optional in type '{1}' but required in type '{2}'."),Types_of_parameters_0_and_1_are_incompatible:diag(2328,e.DiagnosticCategory.Error,"Types_of_parameters_0_and_1_are_incompatible_2328","Types of parameters '{0}' and '{1}' are incompatible."),Index_signature_is_missing_in_type_0:diag(2329,e.DiagnosticCategory.Error,"Index_signature_is_missing_in_type_0_2329","Index signature is missing in type '{0}'."),Index_signatures_are_incompatible:diag(2330,e.DiagnosticCategory.Error,"Index_signatures_are_incompatible_2330","Index signatures are incompatible."),this_cannot_be_referenced_in_a_module_or_namespace_body:diag(2331,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_module_or_namespace_body_2331","'this' cannot be referenced in a module or namespace body."),this_cannot_be_referenced_in_current_location:diag(2332,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_current_location_2332","'this' cannot be referenced in current location."),this_cannot_be_referenced_in_constructor_arguments:diag(2333,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_constructor_arguments_2333","'this' cannot be referenced in constructor arguments."),this_cannot_be_referenced_in_a_static_property_initializer:diag(2334,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_static_property_initializer_2334","'this' cannot be referenced in a static property initializer."),super_can_only_be_referenced_in_a_derived_class:diag(2335,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_a_derived_class_2335","'super' can only be referenced in a derived class."),super_cannot_be_referenced_in_constructor_arguments:diag(2336,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_constructor_arguments_2336","'super' cannot be referenced in constructor arguments."),Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors:diag(2337,e.DiagnosticCategory.Error,"Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors_2337","Super calls are not permitted outside constructors or in nested functions inside constructors."),super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class:diag(2338,e.DiagnosticCategory.Error,"super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_der_2338","'super' property access is permitted only in a constructor, member function, or member accessor of a derived class."),Property_0_does_not_exist_on_type_1:diag(2339,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_2339","Property '{0}' does not exist on type '{1}'."),Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword:diag(2340,e.DiagnosticCategory.Error,"Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword_2340","Only public and protected methods of the base class are accessible via the 'super' keyword."),Property_0_is_private_and_only_accessible_within_class_1:diag(2341,e.DiagnosticCategory.Error,"Property_0_is_private_and_only_accessible_within_class_1_2341","Property '{0}' is private and only accessible within class '{1}'."),An_index_expression_argument_must_be_of_type_string_number_symbol_or_any:diag(2342,e.DiagnosticCategory.Error,"An_index_expression_argument_must_be_of_type_string_number_symbol_or_any_2342","An index expression argument must be of type 'string', 'number', 'symbol', or 'any'."),This_syntax_requires_an_imported_helper_named_1_but_module_0_has_no_exported_member_1:diag(2343,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_named_1_but_module_0_has_no_exported_member_1_2343","This syntax requires an imported helper named '{1}', but module '{0}' has no exported member '{1}'."),Type_0_does_not_satisfy_the_constraint_1:diag(2344,e.DiagnosticCategory.Error,"Type_0_does_not_satisfy_the_constraint_1_2344","Type '{0}' does not satisfy the constraint '{1}'."),Argument_of_type_0_is_not_assignable_to_parameter_of_type_1:diag(2345,e.DiagnosticCategory.Error,"Argument_of_type_0_is_not_assignable_to_parameter_of_type_1_2345","Argument of type '{0}' is not assignable to parameter of type '{1}'."),Call_target_does_not_contain_any_signatures:diag(2346,e.DiagnosticCategory.Error,"Call_target_does_not_contain_any_signatures_2346","Call target does not contain any signatures."),Untyped_function_calls_may_not_accept_type_arguments:diag(2347,e.DiagnosticCategory.Error,"Untyped_function_calls_may_not_accept_type_arguments_2347","Untyped function calls may not accept type arguments."),Value_of_type_0_is_not_callable_Did_you_mean_to_include_new:diag(2348,e.DiagnosticCategory.Error,"Value_of_type_0_is_not_callable_Did_you_mean_to_include_new_2348","Value of type '{0}' is not callable. Did you mean to include 'new'?"),Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatures:diag(2349,e.DiagnosticCategory.Error,"Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatur_2349","Cannot invoke an expression whose type lacks a call signature. Type '{0}' has no compatible call signatures."),Only_a_void_function_can_be_called_with_the_new_keyword:diag(2350,e.DiagnosticCategory.Error,"Only_a_void_function_can_be_called_with_the_new_keyword_2350","Only a void function can be called with the 'new' keyword."),Cannot_use_new_with_an_expression_whose_type_lacks_a_call_or_construct_signature:diag(2351,e.DiagnosticCategory.Error,"Cannot_use_new_with_an_expression_whose_type_lacks_a_call_or_construct_signature_2351","Cannot use 'new' with an expression whose type lacks a call or construct signature."),Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first:diag(2352,e.DiagnosticCategory.Error,"Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the__2352","Conversion of type '{0}' to type '{1}' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first."),Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1:diag(2353,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1_2353","Object literal may only specify known properties, and '{0}' does not exist in type '{1}'."),This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found:diag(2354,e.DiagnosticCategory.Error,"This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found_2354","This syntax requires an imported helper but module '{0}' cannot be found."),A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value:diag(2355,e.DiagnosticCategory.Error,"A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value_2355","A function whose declared type is neither 'void' nor 'any' must return a value."),An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type:diag(2356,e.DiagnosticCategory.Error,"An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type_2356","An arithmetic operand must be of type 'any', 'number', 'bigint' or an enum type."),The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access:diag(2357,e.DiagnosticCategory.Error,"The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access_2357","The operand of an increment or decrement operator must be a variable or a property access."),The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:diag(2358,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_paramete_2358","The left-hand side of an 'instanceof' expression must be of type 'any', an object type or a type parameter."),The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type:diag(2359,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_F_2359","The right-hand side of an 'instanceof' expression must be of type 'any' or of a type assignable to the 'Function' interface type."),The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol:diag(2360,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol_2360","The left-hand side of an 'in' expression must be of type 'any', 'string', 'number', or 'symbol'."),The_right_hand_side_of_an_in_expression_must_be_of_type_any_an_object_type_or_a_type_parameter:diag(2361,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_in_expression_must_be_of_type_any_an_object_type_or_a_type_parameter_2361","The right-hand side of an 'in' expression must be of type 'any', an object type or a type parameter."),The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:diag(2362,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2362","The left-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type:diag(2363,e.DiagnosticCategory.Error,"The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type_2363","The right-hand side of an arithmetic operation must be of type 'any', 'number', 'bigint' or an enum type."),The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access:diag(2364,e.DiagnosticCategory.Error,"The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access_2364","The left-hand side of an assignment expression must be a variable or a property access."),Operator_0_cannot_be_applied_to_types_1_and_2:diag(2365,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_types_1_and_2_2365","Operator '{0}' cannot be applied to types '{1}' and '{2}'."),Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined:diag(2366,e.DiagnosticCategory.Error,"Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined_2366","Function lacks ending return statement and return type does not include 'undefined'."),This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap:diag(2367,e.DiagnosticCategory.Error,"This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap_2367","This condition will always return '{0}' since the types '{1}' and '{2}' have no overlap."),Type_parameter_name_cannot_be_0:diag(2368,e.DiagnosticCategory.Error,"Type_parameter_name_cannot_be_0_2368","Type parameter name cannot be '{0}'."),A_parameter_property_is_only_allowed_in_a_constructor_implementation:diag(2369,e.DiagnosticCategory.Error,"A_parameter_property_is_only_allowed_in_a_constructor_implementation_2369","A parameter property is only allowed in a constructor implementation."),A_rest_parameter_must_be_of_an_array_type:diag(2370,e.DiagnosticCategory.Error,"A_rest_parameter_must_be_of_an_array_type_2370","A rest parameter must be of an array type."),A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation:diag(2371,e.DiagnosticCategory.Error,"A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation_2371","A parameter initializer is only allowed in a function or constructor implementation."),Parameter_0_cannot_be_referenced_in_its_initializer:diag(2372,e.DiagnosticCategory.Error,"Parameter_0_cannot_be_referenced_in_its_initializer_2372","Parameter '{0}' cannot be referenced in its initializer."),Initializer_of_parameter_0_cannot_reference_identifier_1_declared_after_it:diag(2373,e.DiagnosticCategory.Error,"Initializer_of_parameter_0_cannot_reference_identifier_1_declared_after_it_2373","Initializer of parameter '{0}' cannot reference identifier '{1}' declared after it."),Duplicate_string_index_signature:diag(2374,e.DiagnosticCategory.Error,"Duplicate_string_index_signature_2374","Duplicate string index signature."),Duplicate_number_index_signature:diag(2375,e.DiagnosticCategory.Error,"Duplicate_number_index_signature_2375","Duplicate number index signature."),A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_or_has_parameter_properties:diag(2376,e.DiagnosticCategory.Error,"A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_proper_2376","A 'super' call must be the first statement in the constructor when a class contains initialized properties or has parameter properties."),Constructors_for_derived_classes_must_contain_a_super_call:diag(2377,e.DiagnosticCategory.Error,"Constructors_for_derived_classes_must_contain_a_super_call_2377","Constructors for derived classes must contain a 'super' call."),A_get_accessor_must_return_a_value:diag(2378,e.DiagnosticCategory.Error,"A_get_accessor_must_return_a_value_2378","A 'get' accessor must return a value."),Getter_and_setter_accessors_do_not_agree_in_visibility:diag(2379,e.DiagnosticCategory.Error,"Getter_and_setter_accessors_do_not_agree_in_visibility_2379","Getter and setter accessors do not agree in visibility."),get_and_set_accessor_must_have_the_same_type:diag(2380,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_type_2380","'get' and 'set' accessor must have the same type."),A_signature_with_an_implementation_cannot_use_a_string_literal_type:diag(2381,e.DiagnosticCategory.Error,"A_signature_with_an_implementation_cannot_use_a_string_literal_type_2381","A signature with an implementation cannot use a string literal type."),Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature:diag(2382,e.DiagnosticCategory.Error,"Specialized_overload_signature_is_not_assignable_to_any_non_specialized_signature_2382","Specialized overload signature is not assignable to any non-specialized signature."),Overload_signatures_must_all_be_exported_or_non_exported:diag(2383,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_exported_or_non_exported_2383","Overload signatures must all be exported or non-exported."),Overload_signatures_must_all_be_ambient_or_non_ambient:diag(2384,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_ambient_or_non_ambient_2384","Overload signatures must all be ambient or non-ambient."),Overload_signatures_must_all_be_public_private_or_protected:diag(2385,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_public_private_or_protected_2385","Overload signatures must all be public, private or protected."),Overload_signatures_must_all_be_optional_or_required:diag(2386,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_optional_or_required_2386","Overload signatures must all be optional or required."),Function_overload_must_be_static:diag(2387,e.DiagnosticCategory.Error,"Function_overload_must_be_static_2387","Function overload must be static."),Function_overload_must_not_be_static:diag(2388,e.DiagnosticCategory.Error,"Function_overload_must_not_be_static_2388","Function overload must not be static."),Function_implementation_name_must_be_0:diag(2389,e.DiagnosticCategory.Error,"Function_implementation_name_must_be_0_2389","Function implementation name must be '{0}'."),Constructor_implementation_is_missing:diag(2390,e.DiagnosticCategory.Error,"Constructor_implementation_is_missing_2390","Constructor implementation is missing."),Function_implementation_is_missing_or_not_immediately_following_the_declaration:diag(2391,e.DiagnosticCategory.Error,"Function_implementation_is_missing_or_not_immediately_following_the_declaration_2391","Function implementation is missing or not immediately following the declaration."),Multiple_constructor_implementations_are_not_allowed:diag(2392,e.DiagnosticCategory.Error,"Multiple_constructor_implementations_are_not_allowed_2392","Multiple constructor implementations are not allowed."),Duplicate_function_implementation:diag(2393,e.DiagnosticCategory.Error,"Duplicate_function_implementation_2393","Duplicate function implementation."),Overload_signature_is_not_compatible_with_function_implementation:diag(2394,e.DiagnosticCategory.Error,"Overload_signature_is_not_compatible_with_function_implementation_2394","Overload signature is not compatible with function implementation."),Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local:diag(2395,e.DiagnosticCategory.Error,"Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local_2395","Individual declarations in merged declaration '{0}' must be all exported or all local."),Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters:diag(2396,e.DiagnosticCategory.Error,"Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters_2396","Duplicate identifier 'arguments'. Compiler uses 'arguments' to initialize rest parameters."),Declaration_name_conflicts_with_built_in_global_identifier_0:diag(2397,e.DiagnosticCategory.Error,"Declaration_name_conflicts_with_built_in_global_identifier_0_2397","Declaration name conflicts with built-in global identifier '{0}'."),Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference:diag(2399,e.DiagnosticCategory.Error,"Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference_2399","Duplicate identifier '_this'. Compiler uses variable declaration '_this' to capture 'this' reference."),Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference:diag(2400,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference_2400","Expression resolves to variable declaration '_this' that compiler uses to capture 'this' reference."),Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference:diag(2401,e.DiagnosticCategory.Error,"Duplicate_identifier_super_Compiler_uses_super_to_capture_base_class_reference_2401","Duplicate identifier '_super'. Compiler uses '_super' to capture base class reference."),Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference:diag(2402,e.DiagnosticCategory.Error,"Expression_resolves_to_super_that_compiler_uses_to_capture_base_class_reference_2402","Expression resolves to '_super' that compiler uses to capture base class reference."),Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2:diag(2403,e.DiagnosticCategory.Error,"Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_t_2403","Subsequent variable declarations must have the same type. Variable '{0}' must be of type '{1}', but here has type '{2}'."),The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:diag(2404,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation_2404","The left-hand side of a 'for...in' statement cannot use a type annotation."),The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any:diag(2405,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any_2405","The left-hand side of a 'for...in' statement must be of type 'string' or 'any'."),The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access:diag(2406,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access_2406","The left-hand side of a 'for...in' statement must be a variable or a property access."),The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0:diag(2407,e.DiagnosticCategory.Error,"The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_2407","The right-hand side of a 'for...in' statement must be of type 'any', an object type or a type parameter, but here has type '{0}'."),Setters_cannot_return_a_value:diag(2408,e.DiagnosticCategory.Error,"Setters_cannot_return_a_value_2408","Setters cannot return a value."),Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class:diag(2409,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class_2409","Return type of constructor signature must be assignable to the instance type of the class."),The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any:diag(2410,e.DiagnosticCategory.Error,"The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any_2410","The 'with' statement is not supported. All symbols in a 'with' block will have type 'any'."),Property_0_of_type_1_is_not_assignable_to_string_index_type_2:diag(2411,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_string_index_type_2_2411","Property '{0}' of type '{1}' is not assignable to string index type '{2}'."),Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2:diag(2412,e.DiagnosticCategory.Error,"Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2_2412","Property '{0}' of type '{1}' is not assignable to numeric index type '{2}'."),Numeric_index_type_0_is_not_assignable_to_string_index_type_1:diag(2413,e.DiagnosticCategory.Error,"Numeric_index_type_0_is_not_assignable_to_string_index_type_1_2413","Numeric index type '{0}' is not assignable to string index type '{1}'."),Class_name_cannot_be_0:diag(2414,e.DiagnosticCategory.Error,"Class_name_cannot_be_0_2414","Class name cannot be '{0}'."),Class_0_incorrectly_extends_base_class_1:diag(2415,e.DiagnosticCategory.Error,"Class_0_incorrectly_extends_base_class_1_2415","Class '{0}' incorrectly extends base class '{1}'."),Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2:diag(2416,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2_2416","Property '{0}' in type '{1}' is not assignable to the same property in base type '{2}'."),Class_static_side_0_incorrectly_extends_base_class_static_side_1:diag(2417,e.DiagnosticCategory.Error,"Class_static_side_0_incorrectly_extends_base_class_static_side_1_2417","Class static side '{0}' incorrectly extends base class static side '{1}'."),Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:diag(2418,e.DiagnosticCategory.Error,"Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1_2418","Type of computed property's value is '{0}', which is not assignable to type '{1}'."),Class_0_incorrectly_implements_interface_1:diag(2420,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_interface_1_2420","Class '{0}' incorrectly implements interface '{1}'."),A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members:diag(2422,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_memb_2422","A class can only implement an object type or intersection of object types with statically known members."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor:diag(2423,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_access_2423","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member accessor."),Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_property:diag(2424,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_proper_2424","Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member property."),Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function:diag(2425,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_functi_2425","Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function."),Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function:diag(2426,e.DiagnosticCategory.Error,"Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_functi_2426","Class '{0}' defines instance member accessor '{1}', but extended class '{2}' defines it as instance member function."),Interface_name_cannot_be_0:diag(2427,e.DiagnosticCategory.Error,"Interface_name_cannot_be_0_2427","Interface name cannot be '{0}'."),All_declarations_of_0_must_have_identical_type_parameters:diag(2428,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_type_parameters_2428","All declarations of '{0}' must have identical type parameters."),Interface_0_incorrectly_extends_interface_1:diag(2430,e.DiagnosticCategory.Error,"Interface_0_incorrectly_extends_interface_1_2430","Interface '{0}' incorrectly extends interface '{1}'."),Enum_name_cannot_be_0:diag(2431,e.DiagnosticCategory.Error,"Enum_name_cannot_be_0_2431","Enum name cannot be '{0}'."),In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element:diag(2432,e.DiagnosticCategory.Error,"In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enu_2432","In an enum with multiple declarations, only one declaration can omit an initializer for its first enum element."),A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged:diag(2433,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merg_2433","A namespace declaration cannot be in a different file from a class or function with which it is merged."),A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged:diag(2434,e.DiagnosticCategory.Error,"A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged_2434","A namespace declaration cannot be located prior to a class or function with which it is merged."),Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces:diag(2435,e.DiagnosticCategory.Error,"Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces_2435","Ambient modules cannot be nested in other modules or namespaces."),Ambient_module_declaration_cannot_specify_relative_module_name:diag(2436,e.DiagnosticCategory.Error,"Ambient_module_declaration_cannot_specify_relative_module_name_2436","Ambient module declaration cannot specify relative module name."),Module_0_is_hidden_by_a_local_declaration_with_the_same_name:diag(2437,e.DiagnosticCategory.Error,"Module_0_is_hidden_by_a_local_declaration_with_the_same_name_2437","Module '{0}' is hidden by a local declaration with the same name."),Import_name_cannot_be_0:diag(2438,e.DiagnosticCategory.Error,"Import_name_cannot_be_0_2438","Import name cannot be '{0}'."),Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name:diag(2439,e.DiagnosticCategory.Error,"Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relati_2439","Import or export declaration in an ambient module declaration cannot reference module through relative module name."),Import_declaration_conflicts_with_local_declaration_of_0:diag(2440,e.DiagnosticCategory.Error,"Import_declaration_conflicts_with_local_declaration_of_0_2440","Import declaration conflicts with local declaration of '{0}'."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module:diag(2441,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_2441","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module."),Types_have_separate_declarations_of_a_private_property_0:diag(2442,e.DiagnosticCategory.Error,"Types_have_separate_declarations_of_a_private_property_0_2442","Types have separate declarations of a private property '{0}'."),Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2:diag(2443,e.DiagnosticCategory.Error,"Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2_2443","Property '{0}' is protected but type '{1}' is not a class derived from '{2}'."),Property_0_is_protected_in_type_1_but_public_in_type_2:diag(2444,e.DiagnosticCategory.Error,"Property_0_is_protected_in_type_1_but_public_in_type_2_2444","Property '{0}' is protected in type '{1}' but public in type '{2}'."),Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses:diag(2445,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses_2445","Property '{0}' is protected and only accessible within class '{1}' and its subclasses."),Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1:diag(2446,e.DiagnosticCategory.Error,"Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1_2446","Property '{0}' is protected and only accessible through an instance of class '{1}'."),The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead:diag(2447,e.DiagnosticCategory.Error,"The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead_2447","The '{0}' operator is not allowed for boolean types. Consider using '{1}' instead."),Block_scoped_variable_0_used_before_its_declaration:diag(2448,e.DiagnosticCategory.Error,"Block_scoped_variable_0_used_before_its_declaration_2448","Block-scoped variable '{0}' used before its declaration."),Class_0_used_before_its_declaration:diag(2449,e.DiagnosticCategory.Error,"Class_0_used_before_its_declaration_2449","Class '{0}' used before its declaration."),Enum_0_used_before_its_declaration:diag(2450,e.DiagnosticCategory.Error,"Enum_0_used_before_its_declaration_2450","Enum '{0}' used before its declaration."),Cannot_redeclare_block_scoped_variable_0:diag(2451,e.DiagnosticCategory.Error,"Cannot_redeclare_block_scoped_variable_0_2451","Cannot redeclare block-scoped variable '{0}'."),An_enum_member_cannot_have_a_numeric_name:diag(2452,e.DiagnosticCategory.Error,"An_enum_member_cannot_have_a_numeric_name_2452","An enum member cannot have a numeric name."),The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_type_arguments_explicitly:diag(2453,e.DiagnosticCategory.Error,"The_type_argument_for_type_parameter_0_cannot_be_inferred_from_the_usage_Consider_specifying_the_typ_2453","The type argument for type parameter '{0}' cannot be inferred from the usage. Consider specifying the type arguments explicitly."),Variable_0_is_used_before_being_assigned:diag(2454,e.DiagnosticCategory.Error,"Variable_0_is_used_before_being_assigned_2454","Variable '{0}' is used before being assigned."),Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0:diag(2455,e.DiagnosticCategory.Error,"Type_argument_candidate_1_is_not_a_valid_type_argument_because_it_is_not_a_supertype_of_candidate_0_2455","Type argument candidate '{1}' is not a valid type argument because it is not a supertype of candidate '{0}'."),Type_alias_0_circularly_references_itself:diag(2456,e.DiagnosticCategory.Error,"Type_alias_0_circularly_references_itself_2456","Type alias '{0}' circularly references itself."),Type_alias_name_cannot_be_0:diag(2457,e.DiagnosticCategory.Error,"Type_alias_name_cannot_be_0_2457","Type alias name cannot be '{0}'."),An_AMD_module_cannot_have_multiple_name_assignments:diag(2458,e.DiagnosticCategory.Error,"An_AMD_module_cannot_have_multiple_name_assignments_2458","An AMD module cannot have multiple name assignments."),Type_0_has_no_property_1_and_no_string_index_signature:diag(2459,e.DiagnosticCategory.Error,"Type_0_has_no_property_1_and_no_string_index_signature_2459","Type '{0}' has no property '{1}' and no string index signature."),Type_0_has_no_property_1:diag(2460,e.DiagnosticCategory.Error,"Type_0_has_no_property_1_2460","Type '{0}' has no property '{1}'."),Type_0_is_not_an_array_type:diag(2461,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_2461","Type '{0}' is not an array type."),A_rest_element_must_be_last_in_a_destructuring_pattern:diag(2462,e.DiagnosticCategory.Error,"A_rest_element_must_be_last_in_a_destructuring_pattern_2462","A rest element must be last in a destructuring pattern."),A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature:diag(2463,e.DiagnosticCategory.Error,"A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature_2463","A binding pattern parameter cannot be optional in an implementation signature."),A_computed_property_name_must_be_of_type_string_number_symbol_or_any:diag(2464,e.DiagnosticCategory.Error,"A_computed_property_name_must_be_of_type_string_number_symbol_or_any_2464","A computed property name must be of type 'string', 'number', 'symbol', or 'any'."),this_cannot_be_referenced_in_a_computed_property_name:diag(2465,e.DiagnosticCategory.Error,"this_cannot_be_referenced_in_a_computed_property_name_2465","'this' cannot be referenced in a computed property name."),super_cannot_be_referenced_in_a_computed_property_name:diag(2466,e.DiagnosticCategory.Error,"super_cannot_be_referenced_in_a_computed_property_name_2466","'super' cannot be referenced in a computed property name."),A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type:diag(2467,e.DiagnosticCategory.Error,"A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type_2467","A computed property name cannot reference a type parameter from its containing type."),Cannot_find_global_value_0:diag(2468,e.DiagnosticCategory.Error,"Cannot_find_global_value_0_2468","Cannot find global value '{0}'."),The_0_operator_cannot_be_applied_to_type_symbol:diag(2469,e.DiagnosticCategory.Error,"The_0_operator_cannot_be_applied_to_type_symbol_2469","The '{0}' operator cannot be applied to type 'symbol'."),Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object:diag(2470,e.DiagnosticCategory.Error,"Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object_2470","'Symbol' reference does not refer to the global Symbol constructor object."),A_computed_property_name_of_the_form_0_must_be_of_type_symbol:diag(2471,e.DiagnosticCategory.Error,"A_computed_property_name_of_the_form_0_must_be_of_type_symbol_2471","A computed property name of the form '{0}' must be of type 'symbol'."),Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher:diag(2472,e.DiagnosticCategory.Error,"Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher_2472","Spread operator in 'new' expressions is only available when targeting ECMAScript 5 and higher."),Enum_declarations_must_all_be_const_or_non_const:diag(2473,e.DiagnosticCategory.Error,"Enum_declarations_must_all_be_const_or_non_const_2473","Enum declarations must all be const or non-const."),In_const_enum_declarations_member_initializer_must_be_constant_expression:diag(2474,e.DiagnosticCategory.Error,"In_const_enum_declarations_member_initializer_must_be_constant_expression_2474","In 'const' enum declarations member initializer must be constant expression."),const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query:diag(2475,e.DiagnosticCategory.Error,"const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_im_2475","'const' enums can only be used in property or index access expressions or the right hand side of an import declaration or export assignment or type query."),A_const_enum_member_can_only_be_accessed_using_a_string_literal:diag(2476,e.DiagnosticCategory.Error,"A_const_enum_member_can_only_be_accessed_using_a_string_literal_2476","A const enum member can only be accessed using a string literal."),const_enum_member_initializer_was_evaluated_to_a_non_finite_value:diag(2477,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_a_non_finite_value_2477","'const' enum member initializer was evaluated to a non-finite value."),const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:diag(2478,e.DiagnosticCategory.Error,"const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN_2478","'const' enum member initializer was evaluated to disallowed value 'NaN'."),Property_0_does_not_exist_on_const_enum_1:diag(2479,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_const_enum_1_2479","Property '{0}' does not exist on 'const' enum '{1}'."),let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations:diag(2480,e.DiagnosticCategory.Error,"let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations_2480","'let' is not allowed to be used as a name in 'let' or 'const' declarations."),Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1:diag(2481,e.DiagnosticCategory.Error,"Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1_2481","Cannot initialize outer scoped variable '{0}' in the same scope as block scoped declaration '{1}'."),The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation:diag(2483,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation_2483","The left-hand side of a 'for...of' statement cannot use a type annotation."),Export_declaration_conflicts_with_exported_declaration_of_0:diag(2484,e.DiagnosticCategory.Error,"Export_declaration_conflicts_with_exported_declaration_of_0_2484","Export declaration conflicts with exported declaration of '{0}'."),The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access:diag(2487,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access_2487","The left-hand side of a 'for...of' statement must be a variable or a property access."),Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator:diag(2488,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator_2488","Type '{0}' must have a '[Symbol.iterator]()' method that returns an iterator."),An_iterator_must_have_a_next_method:diag(2489,e.DiagnosticCategory.Error,"An_iterator_must_have_a_next_method_2489","An iterator must have a 'next()' method."),The_type_returned_by_the_next_method_of_an_iterator_must_have_a_value_property:diag(2490,e.DiagnosticCategory.Error,"The_type_returned_by_the_next_method_of_an_iterator_must_have_a_value_property_2490","The type returned by the 'next()' method of an iterator must have a 'value' property."),The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern:diag(2491,e.DiagnosticCategory.Error,"The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern_2491","The left-hand side of a 'for...in' statement cannot be a destructuring pattern."),Cannot_redeclare_identifier_0_in_catch_clause:diag(2492,e.DiagnosticCategory.Error,"Cannot_redeclare_identifier_0_in_catch_clause_2492","Cannot redeclare identifier '{0}' in catch clause."),Tuple_type_0_with_length_1_cannot_be_assigned_to_tuple_with_length_2:diag(2493,e.DiagnosticCategory.Error,"Tuple_type_0_with_length_1_cannot_be_assigned_to_tuple_with_length_2_2493","Tuple type '{0}' with length '{1}' cannot be assigned to tuple with length '{2}'."),Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher:diag(2494,e.DiagnosticCategory.Error,"Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher_2494","Using a string in a 'for...of' statement is only supported in ECMAScript 5 and higher."),Type_0_is_not_an_array_type_or_a_string_type:diag(2495,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_2495","Type '{0}' is not an array type or a string type."),The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression:diag(2496,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_stand_2496","The 'arguments' object cannot be referenced in an arrow function in ES3 and ES5. Consider using a standard function expression."),Module_0_resolves_to_a_non_module_entity_and_cannot_be_imported_using_this_construct:diag(2497,e.DiagnosticCategory.Error,"Module_0_resolves_to_a_non_module_entity_and_cannot_be_imported_using_this_construct_2497","Module '{0}' resolves to a non-module entity and cannot be imported using this construct."),Module_0_uses_export_and_cannot_be_used_with_export_Asterisk:diag(2498,e.DiagnosticCategory.Error,"Module_0_uses_export_and_cannot_be_used_with_export_Asterisk_2498","Module '{0}' uses 'export =' and cannot be used with 'export *'."),An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments:diag(2499,e.DiagnosticCategory.Error,"An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments_2499","An interface can only extend an identifier/qualified-name with optional type arguments."),A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments:diag(2500,e.DiagnosticCategory.Error,"A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments_2500","A class can only implement an identifier/qualified-name with optional type arguments."),A_rest_element_cannot_contain_a_binding_pattern:diag(2501,e.DiagnosticCategory.Error,"A_rest_element_cannot_contain_a_binding_pattern_2501","A rest element cannot contain a binding pattern."),_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation:diag(2502,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_type_annotation_2502","'{0}' is referenced directly or indirectly in its own type annotation."),Cannot_find_namespace_0:diag(2503,e.DiagnosticCategory.Error,"Cannot_find_namespace_0_2503","Cannot find namespace '{0}'."),Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:diag(2504,e.DiagnosticCategory.Error,"Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator_2504","Type '{0}' must have a '[Symbol.asyncIterator]()' method that returns an async iterator."),A_generator_cannot_have_a_void_type_annotation:diag(2505,e.DiagnosticCategory.Error,"A_generator_cannot_have_a_void_type_annotation_2505","A generator cannot have a 'void' type annotation."),_0_is_referenced_directly_or_indirectly_in_its_own_base_expression:diag(2506,e.DiagnosticCategory.Error,"_0_is_referenced_directly_or_indirectly_in_its_own_base_expression_2506","'{0}' is referenced directly or indirectly in its own base expression."),Type_0_is_not_a_constructor_function_type:diag(2507,e.DiagnosticCategory.Error,"Type_0_is_not_a_constructor_function_type_2507","Type '{0}' is not a constructor function type."),No_base_constructor_has_the_specified_number_of_type_arguments:diag(2508,e.DiagnosticCategory.Error,"No_base_constructor_has_the_specified_number_of_type_arguments_2508","No base constructor has the specified number of type arguments."),Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members:diag(2509,e.DiagnosticCategory.Error,"Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_2509","Base constructor return type '{0}' is not an object type or intersection of object types with statically known members."),Base_constructors_must_all_have_the_same_return_type:diag(2510,e.DiagnosticCategory.Error,"Base_constructors_must_all_have_the_same_return_type_2510","Base constructors must all have the same return type."),Cannot_create_an_instance_of_an_abstract_class:diag(2511,e.DiagnosticCategory.Error,"Cannot_create_an_instance_of_an_abstract_class_2511","Cannot create an instance of an abstract class."),Overload_signatures_must_all_be_abstract_or_non_abstract:diag(2512,e.DiagnosticCategory.Error,"Overload_signatures_must_all_be_abstract_or_non_abstract_2512","Overload signatures must all be abstract or non-abstract."),Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression:diag(2513,e.DiagnosticCategory.Error,"Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression_2513","Abstract method '{0}' in class '{1}' cannot be accessed via super expression."),Classes_containing_abstract_methods_must_be_marked_abstract:diag(2514,e.DiagnosticCategory.Error,"Classes_containing_abstract_methods_must_be_marked_abstract_2514","Classes containing abstract methods must be marked abstract."),Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2:diag(2515,e.DiagnosticCategory.Error,"Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2_2515","Non-abstract class '{0}' does not implement inherited abstract member '{1}' from class '{2}'."),All_declarations_of_an_abstract_method_must_be_consecutive:diag(2516,e.DiagnosticCategory.Error,"All_declarations_of_an_abstract_method_must_be_consecutive_2516","All declarations of an abstract method must be consecutive."),Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type:diag(2517,e.DiagnosticCategory.Error,"Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type_2517","Cannot assign an abstract constructor type to a non-abstract constructor type."),A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard:diag(2518,e.DiagnosticCategory.Error,"A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard_2518","A 'this'-based type guard is not compatible with a parameter-based type guard."),An_async_iterator_must_have_a_next_method:diag(2519,e.DiagnosticCategory.Error,"An_async_iterator_must_have_a_next_method_2519","An async iterator must have a 'next()' method."),Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions:diag(2520,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions_2520","Duplicate identifier '{0}'. Compiler uses declaration '{1}' to support async functions."),Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions:diag(2521,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_0_that_compiler_uses_to_support_async_functions_2521","Expression resolves to variable declaration '{0}' that compiler uses to support async functions."),The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method:diag(2522,e.DiagnosticCategory.Error,"The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_usi_2522","The 'arguments' object cannot be referenced in an async function or method in ES3 and ES5. Consider using a standard function or method."),yield_expressions_cannot_be_used_in_a_parameter_initializer:diag(2523,e.DiagnosticCategory.Error,"yield_expressions_cannot_be_used_in_a_parameter_initializer_2523","'yield' expressions cannot be used in a parameter initializer."),await_expressions_cannot_be_used_in_a_parameter_initializer:diag(2524,e.DiagnosticCategory.Error,"await_expressions_cannot_be_used_in_a_parameter_initializer_2524","'await' expressions cannot be used in a parameter initializer."),Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value:diag(2525,e.DiagnosticCategory.Error,"Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value_2525","Initializer provides no value for this binding element and the binding element has no default value."),A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface:diag(2526,e.DiagnosticCategory.Error,"A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface_2526","A 'this' type is available only in a non-static member of a class or interface."),The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary:diag(2527,e.DiagnosticCategory.Error,"The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary_2527","The inferred type of '{0}' references an inaccessible '{1}' type. A type annotation is necessary."),A_module_cannot_have_multiple_default_exports:diag(2528,e.DiagnosticCategory.Error,"A_module_cannot_have_multiple_default_exports_2528","A module cannot have multiple default exports."),Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions:diag(2529,e.DiagnosticCategory.Error,"Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_func_2529","Duplicate identifier '{0}'. Compiler reserves name '{1}' in top level scope of a module containing async functions."),Property_0_is_incompatible_with_index_signature:diag(2530,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_index_signature_2530","Property '{0}' is incompatible with index signature."),Object_is_possibly_null:diag(2531,e.DiagnosticCategory.Error,"Object_is_possibly_null_2531","Object is possibly 'null'."),Object_is_possibly_undefined:diag(2532,e.DiagnosticCategory.Error,"Object_is_possibly_undefined_2532","Object is possibly 'undefined'."),Object_is_possibly_null_or_undefined:diag(2533,e.DiagnosticCategory.Error,"Object_is_possibly_null_or_undefined_2533","Object is possibly 'null' or 'undefined'."),A_function_returning_never_cannot_have_a_reachable_end_point:diag(2534,e.DiagnosticCategory.Error,"A_function_returning_never_cannot_have_a_reachable_end_point_2534","A function returning 'never' cannot have a reachable end point."),Enum_type_0_has_members_with_initializers_that_are_not_literals:diag(2535,e.DiagnosticCategory.Error,"Enum_type_0_has_members_with_initializers_that_are_not_literals_2535","Enum type '{0}' has members with initializers that are not literals."),Type_0_cannot_be_used_to_index_type_1:diag(2536,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_to_index_type_1_2536","Type '{0}' cannot be used to index type '{1}'."),Type_0_has_no_matching_index_signature_for_type_1:diag(2537,e.DiagnosticCategory.Error,"Type_0_has_no_matching_index_signature_for_type_1_2537","Type '{0}' has no matching index signature for type '{1}'."),Type_0_cannot_be_used_as_an_index_type:diag(2538,e.DiagnosticCategory.Error,"Type_0_cannot_be_used_as_an_index_type_2538","Type '{0}' cannot be used as an index type."),Cannot_assign_to_0_because_it_is_not_a_variable:diag(2539,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_not_a_variable_2539","Cannot assign to '{0}' because it is not a variable."),Cannot_assign_to_0_because_it_is_a_read_only_property:diag(2540,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_read_only_property_2540","Cannot assign to '{0}' because it is a read-only property."),The_target_of_an_assignment_must_be_a_variable_or_a_property_access:diag(2541,e.DiagnosticCategory.Error,"The_target_of_an_assignment_must_be_a_variable_or_a_property_access_2541","The target of an assignment must be a variable or a property access."),Index_signature_in_type_0_only_permits_reading:diag(2542,e.DiagnosticCategory.Error,"Index_signature_in_type_0_only_permits_reading_2542","Index signature in type '{0}' only permits reading."),Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference:diag(2543,e.DiagnosticCategory.Error,"Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_me_2543","Duplicate identifier '_newTarget'. Compiler uses variable declaration '_newTarget' to capture 'new.target' meta-property reference."),Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference:diag(2544,e.DiagnosticCategory.Error,"Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta__2544","Expression resolves to variable declaration '_newTarget' that compiler uses to capture 'new.target' meta-property reference."),A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any:diag(2545,e.DiagnosticCategory.Error,"A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any_2545","A mixin class must have a constructor with a single rest parameter of type 'any[]'."),Property_0_has_conflicting_declarations_and_is_inaccessible_in_type_1:diag(2546,e.DiagnosticCategory.Error,"Property_0_has_conflicting_declarations_and_is_inaccessible_in_type_1_2546","Property '{0}' has conflicting declarations and is inaccessible in type '{1}'."),The_type_returned_by_the_next_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:diag(2547,e.DiagnosticCategory.Error,"The_type_returned_by_the_next_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value__2547","The type returned by the 'next()' method of an async iterator must be a promise for a type with a 'value' property."),Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:diag(2548,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator_2548","Type '{0}' is not an array type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:diag(2549,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns__2549","Type '{0}' is not an array type or a string type or does not have a '[Symbol.iterator]()' method that returns an iterator."),Property_0_does_not_exist_on_type_1_Did_you_mean_2:diag(2551,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_mean_2_2551","Property '{0}' does not exist on type '{1}'. Did you mean '{2}'?"),Cannot_find_name_0_Did_you_mean_1:diag(2552,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_1_2552","Cannot find name '{0}'. Did you mean '{1}'?"),Computed_values_are_not_permitted_in_an_enum_with_string_valued_members:diag(2553,e.DiagnosticCategory.Error,"Computed_values_are_not_permitted_in_an_enum_with_string_valued_members_2553","Computed values are not permitted in an enum with string valued members."),Expected_0_arguments_but_got_1:diag(2554,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_2554","Expected {0} arguments, but got {1}."),Expected_at_least_0_arguments_but_got_1:diag(2555,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_2555","Expected at least {0} arguments, but got {1}."),Expected_0_arguments_but_got_1_or_more:diag(2556,e.DiagnosticCategory.Error,"Expected_0_arguments_but_got_1_or_more_2556","Expected {0} arguments, but got {1} or more."),Expected_at_least_0_arguments_but_got_1_or_more:diag(2557,e.DiagnosticCategory.Error,"Expected_at_least_0_arguments_but_got_1_or_more_2557","Expected at least {0} arguments, but got {1} or more."),Expected_0_type_arguments_but_got_1:diag(2558,e.DiagnosticCategory.Error,"Expected_0_type_arguments_but_got_1_2558","Expected {0} type arguments, but got {1}."),Type_0_has_no_properties_in_common_with_type_1:diag(2559,e.DiagnosticCategory.Error,"Type_0_has_no_properties_in_common_with_type_1_2559","Type '{0}' has no properties in common with type '{1}'."),Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it:diag(2560,e.DiagnosticCategory.Error,"Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it_2560","Value of type '{0}' has no properties in common with type '{1}'. Did you mean to call it?"),Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2:diag(2561,e.DiagnosticCategory.Error,"Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_writ_2561","Object literal may only specify known properties, but '{0}' does not exist in type '{1}'. Did you mean to write '{2}'?"),Base_class_expressions_cannot_reference_class_type_parameters:diag(2562,e.DiagnosticCategory.Error,"Base_class_expressions_cannot_reference_class_type_parameters_2562","Base class expressions cannot reference class type parameters."),The_containing_function_or_module_body_is_too_large_for_control_flow_analysis:diag(2563,e.DiagnosticCategory.Error,"The_containing_function_or_module_body_is_too_large_for_control_flow_analysis_2563","The containing function or module body is too large for control flow analysis."),Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor:diag(2564,e.DiagnosticCategory.Error,"Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor_2564","Property '{0}' has no initializer and is not definitely assigned in the constructor."),Property_0_is_used_before_being_assigned:diag(2565,e.DiagnosticCategory.Error,"Property_0_is_used_before_being_assigned_2565","Property '{0}' is used before being assigned."),A_rest_element_cannot_have_a_property_name:diag(2566,e.DiagnosticCategory.Error,"A_rest_element_cannot_have_a_property_name_2566","A rest element cannot have a property name."),Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:diag(2567,e.DiagnosticCategory.Error,"Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations_2567","Enum declarations can only merge with namespace or other enum declarations."),Type_0_is_not_an_array_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:diag(2568,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators_2568","Type '{0}' is not an array type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:diag(2569,e.DiagnosticCategory.Error,"Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterati_2569","Type '{0}' is not an array type or a string type. Use compiler option '--downlevelIteration' to allow iterating of iterators."),Property_0_does_not_exist_on_type_1_Did_you_forget_to_use_await:diag(2570,e.DiagnosticCategory.Error,"Property_0_does_not_exist_on_type_1_Did_you_forget_to_use_await_2570","Property '{0}' does not exist on type '{1}'. Did you forget to use 'await'?"),Object_is_of_type_unknown:diag(2571,e.DiagnosticCategory.Error,"Object_is_of_type_unknown_2571","Object is of type 'unknown'."),Rest_signatures_are_incompatible:diag(2572,e.DiagnosticCategory.Error,"Rest_signatures_are_incompatible_2572","Rest signatures are incompatible."),Property_0_is_incompatible_with_rest_element_type:diag(2573,e.DiagnosticCategory.Error,"Property_0_is_incompatible_with_rest_element_type_2573","Property '{0}' is incompatible with rest element type."),A_rest_element_type_must_be_an_array_type:diag(2574,e.DiagnosticCategory.Error,"A_rest_element_type_must_be_an_array_type_2574","A rest element type must be an array type."),No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments:diag(2575,e.DiagnosticCategory.Error,"No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments_2575","No overload expects {0} arguments, but overloads do exist that expect either {1} or {2} arguments."),Property_0_is_a_static_member_of_type_1:diag(2576,e.DiagnosticCategory.Error,"Property_0_is_a_static_member_of_type_1_2576","Property '{0}' is a static member of type '{1}'"),Return_type_annotation_circularly_references_itself:diag(2577,e.DiagnosticCategory.Error,"Return_type_annotation_circularly_references_itself_2577","Return type annotation circularly references itself."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig:diag(2580,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_types_Slashnode_and_th_2580","Cannot find name '{0}'. Do you need to install type definitions for node? Try `npm i @types/node` and then add `node` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig:diag(2581,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_types_Slashjquery_an_2581","Cannot find name '{0}'. Do you need to install type definitions for jQuery? Try `npm i @types/jquery` and then add `jquery` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_types_Slashjest_or_npm_i_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig:diag(2582,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_types_Slashje_2582","Cannot find name '{0}'. Do you need to install type definitions for a test runner? Try `npm i @types/jest` or `npm i @types/mocha` and then add `jest` or `mocha` to the types field in your tsconfig."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:diag(2583,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2583","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to es2015 or later."),Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom:diag(2584,e.DiagnosticCategory.Error,"Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_2584","Cannot find name '{0}'. Do you need to change your target library? Try changing the `lib` compiler option to include 'dom'."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:diag(2585,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_2585","'{0}' only refers to a type, but is being used as a value here. Do you need to change your target library? Try changing the `lib` compiler option to es2015 or later."),Enum_type_0_circularly_references_itself:diag(2586,e.DiagnosticCategory.Error,"Enum_type_0_circularly_references_itself_2586","Enum type '{0}' circularly references itself."),JSDoc_type_0_circularly_references_itself:diag(2587,e.DiagnosticCategory.Error,"JSDoc_type_0_circularly_references_itself_2587","JSDoc type '{0}' circularly references itself."),Cannot_assign_to_0_because_it_is_a_constant:diag(2588,e.DiagnosticCategory.Error,"Cannot_assign_to_0_because_it_is_a_constant_2588","Cannot assign to '{0}' because it is a constant."),JSX_element_attributes_type_0_may_not_be_a_union_type:diag(2600,e.DiagnosticCategory.Error,"JSX_element_attributes_type_0_may_not_be_a_union_type_2600","JSX element attributes type '{0}' may not be a union type."),The_return_type_of_a_JSX_element_constructor_must_return_an_object_type:diag(2601,e.DiagnosticCategory.Error,"The_return_type_of_a_JSX_element_constructor_must_return_an_object_type_2601","The return type of a JSX element constructor must return an object type."),JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist:diag(2602,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist_2602","JSX element implicitly has type 'any' because the global type 'JSX.Element' does not exist."),Property_0_in_type_1_is_not_assignable_to_type_2:diag(2603,e.DiagnosticCategory.Error,"Property_0_in_type_1_is_not_assignable_to_type_2_2603","Property '{0}' in type '{1}' is not assignable to type '{2}'."),JSX_element_type_0_does_not_have_any_construct_or_call_signatures:diag(2604,e.DiagnosticCategory.Error,"JSX_element_type_0_does_not_have_any_construct_or_call_signatures_2604","JSX element type '{0}' does not have any construct or call signatures."),JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements:diag(2605,e.DiagnosticCategory.Error,"JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements_2605","JSX element type '{0}' is not a constructor function for JSX elements."),Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property:diag(2606,e.DiagnosticCategory.Error,"Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property_2606","Property '{0}' of JSX spread attribute is not assignable to target property."),JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property:diag(2607,e.DiagnosticCategory.Error,"JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property_2607","JSX element class does not support attributes because it does not have a '{0}' property."),The_global_type_JSX_0_may_not_have_more_than_one_property:diag(2608,e.DiagnosticCategory.Error,"The_global_type_JSX_0_may_not_have_more_than_one_property_2608","The global type 'JSX.{0}' may not have more than one property."),JSX_spread_child_must_be_an_array_type:diag(2609,e.DiagnosticCategory.Error,"JSX_spread_child_must_be_an_array_type_2609","JSX spread child must be an array type."),Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity:diag(2649,e.DiagnosticCategory.Error,"Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity_2649","Cannot augment module '{0}' with value exports because it resolves to a non-module entity."),A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums:diag(2651,e.DiagnosticCategory.Error,"A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_memb_2651","A member initializer in a enum declaration cannot reference members declared after it, including members defined in other enums."),Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead:diag(2652,e.DiagnosticCategory.Error,"Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_d_2652","Merged declaration '{0}' cannot include a default export declaration. Consider adding a separate 'export default {0}' declaration instead."),Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1:diag(2653,e.DiagnosticCategory.Error,"Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1_2653","Non-abstract class expression does not implement inherited abstract member '{0}' from class '{1}'."),Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_package_author_to_update_the_package_definition:diag(2654,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_cannot_contain_tripleslash_references_Please_contact_the_pack_2654","Exported external package typings file cannot contain tripleslash references. Please contact the package author to update the package definition."),Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_the_package_definition:diag(2656,e.DiagnosticCategory.Error,"Exported_external_package_typings_file_0_is_not_a_module_Please_contact_the_package_author_to_update_2656","Exported external package typings file '{0}' is not a module. Please contact the package author to update the package definition."),JSX_expressions_must_have_one_parent_element:diag(2657,e.DiagnosticCategory.Error,"JSX_expressions_must_have_one_parent_element_2657","JSX expressions must have one parent element."),Type_0_provides_no_match_for_the_signature_1:diag(2658,e.DiagnosticCategory.Error,"Type_0_provides_no_match_for_the_signature_1_2658","Type '{0}' provides no match for the signature '{1}'."),super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher:diag(2659,e.DiagnosticCategory.Error,"super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_highe_2659","'super' is only allowed in members of object literal expressions when option 'target' is 'ES2015' or higher."),super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions:diag(2660,e.DiagnosticCategory.Error,"super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions_2660","'super' can only be referenced in members of derived classes or object literal expressions."),Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module:diag(2661,e.DiagnosticCategory.Error,"Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module_2661","Cannot export '{0}'. Only local declarations can be exported from a module."),Cannot_find_name_0_Did_you_mean_the_static_member_1_0:diag(2662,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_static_member_1_0_2662","Cannot find name '{0}'. Did you mean the static member '{1}.{0}'?"),Cannot_find_name_0_Did_you_mean_the_instance_member_this_0:diag(2663,e.DiagnosticCategory.Error,"Cannot_find_name_0_Did_you_mean_the_instance_member_this_0_2663","Cannot find name '{0}'. Did you mean the instance member 'this.{0}'?"),Invalid_module_name_in_augmentation_module_0_cannot_be_found:diag(2664,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_module_0_cannot_be_found_2664","Invalid module name in augmentation, module '{0}' cannot be found."),Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented:diag(2665,e.DiagnosticCategory.Error,"Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augm_2665","Invalid module name in augmentation. Module '{0}' resolves to an untyped module at '{1}', which cannot be augmented."),Exports_and_export_assignments_are_not_permitted_in_module_augmentations:diag(2666,e.DiagnosticCategory.Error,"Exports_and_export_assignments_are_not_permitted_in_module_augmentations_2666","Exports and export assignments are not permitted in module augmentations."),Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module:diag(2667,e.DiagnosticCategory.Error,"Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_mod_2667","Imports are not permitted in module augmentations. Consider moving them to the enclosing external module."),export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible:diag(2668,e.DiagnosticCategory.Error,"export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always__2668","'export' modifier cannot be applied to ambient modules and module augmentations since they are always visible."),Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations:diag(2669,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_2669","Augmentations for the global scope can only be directly nested in external modules or ambient module declarations."),Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context:diag(2670,e.DiagnosticCategory.Error,"Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambien_2670","Augmentations for the global scope should have 'declare' modifier unless they appear in already ambient context."),Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity:diag(2671,e.DiagnosticCategory.Error,"Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity_2671","Cannot augment module '{0}' because it resolves to a non-module entity."),Cannot_assign_a_0_constructor_type_to_a_1_constructor_type:diag(2672,e.DiagnosticCategory.Error,"Cannot_assign_a_0_constructor_type_to_a_1_constructor_type_2672","Cannot assign a '{0}' constructor type to a '{1}' constructor type."),Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration:diag(2673,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration_2673","Constructor of class '{0}' is private and only accessible within the class declaration."),Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration:diag(2674,e.DiagnosticCategory.Error,"Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration_2674","Constructor of class '{0}' is protected and only accessible within the class declaration."),Cannot_extend_a_class_0_Class_constructor_is_marked_as_private:diag(2675,e.DiagnosticCategory.Error,"Cannot_extend_a_class_0_Class_constructor_is_marked_as_private_2675","Cannot extend a class '{0}'. Class constructor is marked as private."),Accessors_must_both_be_abstract_or_non_abstract:diag(2676,e.DiagnosticCategory.Error,"Accessors_must_both_be_abstract_or_non_abstract_2676","Accessors must both be abstract or non-abstract."),A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type:diag(2677,e.DiagnosticCategory.Error,"A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type_2677","A type predicate's type must be assignable to its parameter's type."),Type_0_is_not_comparable_to_type_1:diag(2678,e.DiagnosticCategory.Error,"Type_0_is_not_comparable_to_type_1_2678","Type '{0}' is not comparable to type '{1}'."),A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void:diag(2679,e.DiagnosticCategory.Error,"A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void_2679","A function that is called with the 'new' keyword cannot have a 'this' type that is 'void'."),A_0_parameter_must_be_the_first_parameter:diag(2680,e.DiagnosticCategory.Error,"A_0_parameter_must_be_the_first_parameter_2680","A '{0}' parameter must be the first parameter."),A_constructor_cannot_have_a_this_parameter:diag(2681,e.DiagnosticCategory.Error,"A_constructor_cannot_have_a_this_parameter_2681","A constructor cannot have a 'this' parameter."),get_and_set_accessor_must_have_the_same_this_type:diag(2682,e.DiagnosticCategory.Error,"get_and_set_accessor_must_have_the_same_this_type_2682","'get' and 'set' accessor must have the same 'this' type."),this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation:diag(2683,e.DiagnosticCategory.Error,"this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_2683","'this' implicitly has type 'any' because it does not have a type annotation."),The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1:diag(2684,e.DiagnosticCategory.Error,"The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1_2684","The 'this' context of type '{0}' is not assignable to method's 'this' of type '{1}'."),The_this_types_of_each_signature_are_incompatible:diag(2685,e.DiagnosticCategory.Error,"The_this_types_of_each_signature_are_incompatible_2685","The 'this' types of each signature are incompatible."),_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead:diag(2686,e.DiagnosticCategory.Error,"_0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead_2686","'{0}' refers to a UMD global, but the current file is a module. Consider adding an import instead."),All_declarations_of_0_must_have_identical_modifiers:diag(2687,e.DiagnosticCategory.Error,"All_declarations_of_0_must_have_identical_modifiers_2687","All declarations of '{0}' must have identical modifiers."),Cannot_find_type_definition_file_for_0:diag(2688,e.DiagnosticCategory.Error,"Cannot_find_type_definition_file_for_0_2688","Cannot find type definition file for '{0}'."),Cannot_extend_an_interface_0_Did_you_mean_implements:diag(2689,e.DiagnosticCategory.Error,"Cannot_extend_an_interface_0_Did_you_mean_implements_2689","Cannot extend an interface '{0}'. Did you mean 'implements'?"),An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead:diag(2691,e.DiagnosticCategory.Error,"An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead_2691","An import path cannot end with a '{0}' extension. Consider importing '{1}' instead."),_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible:diag(2692,e.DiagnosticCategory.Error,"_0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible_2692","'{0}' is a primitive, but '{1}' is a wrapper object. Prefer using '{0}' when possible."),_0_only_refers_to_a_type_but_is_being_used_as_a_value_here:diag(2693,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_value_here_2693","'{0}' only refers to a type, but is being used as a value here."),Namespace_0_has_no_exported_member_1:diag(2694,e.DiagnosticCategory.Error,"Namespace_0_has_no_exported_member_1_2694","Namespace '{0}' has no exported member '{1}'."),Left_side_of_comma_operator_is_unused_and_has_no_side_effects:diag(2695,e.DiagnosticCategory.Error,"Left_side_of_comma_operator_is_unused_and_has_no_side_effects_2695","Left side of comma operator is unused and has no side effects.",true),The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead:diag(2696,e.DiagnosticCategory.Error,"The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead_2696","The 'Object' type is assignable to very few other types. Did you mean to use the 'any' type instead?"),An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:diag(2697,e.DiagnosticCategory.Error,"An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_in_2697","An async function or method must return a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),Spread_types_may_only_be_created_from_object_types:diag(2698,e.DiagnosticCategory.Error,"Spread_types_may_only_be_created_from_object_types_2698","Spread types may only be created from object types."),Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1:diag(2699,e.DiagnosticCategory.Error,"Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1_2699","Static property '{0}' conflicts with built-in property 'Function.{0}' of constructor function '{1}'."),Rest_types_may_only_be_created_from_object_types:diag(2700,e.DiagnosticCategory.Error,"Rest_types_may_only_be_created_from_object_types_2700","Rest types may only be created from object types."),The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:diag(2701,e.DiagnosticCategory.Error,"The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access_2701","The target of an object rest assignment must be a variable or a property access."),_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here:diag(2702,e.DiagnosticCategory.Error,"_0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here_2702","'{0}' only refers to a type, but is being used as a namespace here."),The_operand_of_a_delete_operator_must_be_a_property_reference:diag(2703,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_must_be_a_property_reference_2703","The operand of a delete operator must be a property reference."),The_operand_of_a_delete_operator_cannot_be_a_read_only_property:diag(2704,e.DiagnosticCategory.Error,"The_operand_of_a_delete_operator_cannot_be_a_read_only_property_2704","The operand of a delete operator cannot be a read-only property."),An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:diag(2705,e.DiagnosticCategory.Error,"An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_de_2705","An async function or method in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Required_type_parameters_may_not_follow_optional_type_parameters:diag(2706,e.DiagnosticCategory.Error,"Required_type_parameters_may_not_follow_optional_type_parameters_2706","Required type parameters may not follow optional type parameters."),Generic_type_0_requires_between_1_and_2_type_arguments:diag(2707,e.DiagnosticCategory.Error,"Generic_type_0_requires_between_1_and_2_type_arguments_2707","Generic type '{0}' requires between {1} and {2} type arguments."),Cannot_use_namespace_0_as_a_value:diag(2708,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_value_2708","Cannot use namespace '{0}' as a value."),Cannot_use_namespace_0_as_a_type:diag(2709,e.DiagnosticCategory.Error,"Cannot_use_namespace_0_as_a_type_2709","Cannot use namespace '{0}' as a type."),_0_are_specified_twice_The_attribute_named_0_will_be_overwritten:diag(2710,e.DiagnosticCategory.Error,"_0_are_specified_twice_The_attribute_named_0_will_be_overwritten_2710","'{0}' are specified twice. The attribute named '{0}' will be overwritten."),A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:diag(2711,e.DiagnosticCategory.Error,"A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES20_2711","A dynamic import call returns a 'Promise'. Make sure you have a declaration for 'Promise' or include 'ES2015' in your `--lib` option."),A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:diag(2712,e.DiagnosticCategory.Error,"A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declarat_2712","A dynamic import call in ES5/ES3 requires the 'Promise' constructor. Make sure you have a declaration for the 'Promise' constructor or include 'ES2015' in your `--lib` option."),Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1:diag(2713,e.DiagnosticCategory.Error,"Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_p_2713","Cannot access '{0}.{1}' because '{0}' is a type, but not a namespace. Did you mean to retrieve the type of the property '{1}' in '{0}' with '{0}[\"{1}\"]'?"),The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context:diag(2714,e.DiagnosticCategory.Error,"The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context_2714","The expression of an export assignment must be an identifier or qualified name in an ambient context."),Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor:diag(2715,e.DiagnosticCategory.Error,"Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor_2715","Abstract property '{0}' in class '{1}' cannot be accessed in the constructor."),Type_parameter_0_has_a_circular_default:diag(2716,e.DiagnosticCategory.Error,"Type_parameter_0_has_a_circular_default_2716","Type parameter '{0}' has a circular default."),Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:diag(2717,e.DiagnosticCategory.Error,"Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_t_2717","Subsequent property declarations must have the same type. Property '{0}' must be of type '{1}', but here has type '{2}'."),Duplicate_declaration_0:diag(2718,e.DiagnosticCategory.Error,"Duplicate_declaration_0_2718","Duplicate declaration '{0}'."),Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated:diag(2719,e.DiagnosticCategory.Error,"Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated_2719","Type '{0}' is not assignable to type '{1}'. Two different types with this name exist, but they are unrelated."),Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:diag(2720,e.DiagnosticCategory.Error,"Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclas_2720","Class '{0}' incorrectly implements class '{1}'. Did you mean to extend '{1}' and inherit its members as a subclass?"),Cannot_invoke_an_object_which_is_possibly_null:diag(2721,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_2721","Cannot invoke an object which is possibly 'null'."),Cannot_invoke_an_object_which_is_possibly_undefined:diag(2722,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_undefined_2722","Cannot invoke an object which is possibly 'undefined'."),Cannot_invoke_an_object_which_is_possibly_null_or_undefined:diag(2723,e.DiagnosticCategory.Error,"Cannot_invoke_an_object_which_is_possibly_null_or_undefined_2723","Cannot invoke an object which is possibly 'null' or 'undefined'."),Module_0_has_no_exported_member_1_Did_you_mean_2:diag(2724,e.DiagnosticCategory.Error,"Module_0_has_no_exported_member_1_Did_you_mean_2_2724","Module '{0}' has no exported member '{1}'. Did you mean '{2}'?"),Class_name_cannot_be_Object_when_targeting_ES5_with_module_0:diag(2725,e.DiagnosticCategory.Error,"Class_name_cannot_be_Object_when_targeting_ES5_with_module_0_2725","Class name cannot be 'Object' when targeting ES5 with module {0}."),Cannot_find_lib_definition_for_0:diag(2726,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_2726","Cannot find lib definition for '{0}'."),Cannot_find_lib_definition_for_0_Did_you_mean_1:diag(2727,e.DiagnosticCategory.Error,"Cannot_find_lib_definition_for_0_Did_you_mean_1_2727","Cannot find lib definition for '{0}'. Did you mean '{1}'?"),_0_is_declared_here:diag(2728,e.DiagnosticCategory.Message,"_0_is_declared_here_2728","'{0}' is declared here."),Property_0_is_used_before_its_initialization:diag(2729,e.DiagnosticCategory.Error,"Property_0_is_used_before_its_initialization_2729","Property '{0}' is used before its initialization."),An_arrow_function_cannot_have_a_this_parameter:diag(2730,e.DiagnosticCategory.Error,"An_arrow_function_cannot_have_a_this_parameter_2730","An arrow function cannot have a 'this' parameter."),Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String:diag(2731,e.DiagnosticCategory.Error,"Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_i_2731","Implicit conversion of a 'symbol' to a 'string' will fail at runtime. Consider wrapping this expression in 'String(...)'."),Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension:diag(2732,e.DiagnosticCategory.Error,"Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension_2732","Cannot find module '{0}'. Consider using '--resolveJsonModule' to import module with '.json' extension"),It_is_highly_likely_that_you_are_missing_a_semicolon:diag(2734,e.DiagnosticCategory.Error,"It_is_highly_likely_that_you_are_missing_a_semicolon_2734","It is highly likely that you are missing a semicolon."),Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1:diag(2735,e.DiagnosticCategory.Error,"Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1_2735","Did you mean for '{0}' to be constrained to type 'new (...args: any[]) => {1}'?"),Operator_0_cannot_be_applied_to_type_1:diag(2736,e.DiagnosticCategory.Error,"Operator_0_cannot_be_applied_to_type_1_2736","Operator '{0}' cannot be applied to type '{1}'."),BigInt_literals_are_not_available_when_targeting_lower_than_ESNext:diag(2737,e.DiagnosticCategory.Error,"BigInt_literals_are_not_available_when_targeting_lower_than_ESNext_2737","BigInt literals are not available when targeting lower than ESNext."),An_outer_value_of_this_is_shadowed_by_this_container:diag(2738,e.DiagnosticCategory.Message,"An_outer_value_of_this_is_shadowed_by_this_container_2738","An outer value of 'this' is shadowed by this container."),Type_0_is_missing_the_following_properties_from_type_1_Colon_2:diag(2739,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_2739","Type '{0}' is missing the following properties from type '{1}': {2}"),Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more:diag(2740,e.DiagnosticCategory.Error,"Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more_2740","Type '{0}' is missing the following properties from type '{1}': {2}, and {3} more."),Property_0_is_missing_in_type_1_but_required_in_type_2:diag(2741,e.DiagnosticCategory.Error,"Property_0_is_missing_in_type_1_but_required_in_type_2_2741","Property '{0}' is missing in type '{1}' but required in type '{2}'."),The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary:diag(2742,e.DiagnosticCategory.Error,"The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_a_2742","The inferred type of '{0}' cannot be named without a reference to '{1}'. This is likely not portable. A type annotation is necessary."),Import_declaration_0_is_using_private_name_1:diag(4e3,e.DiagnosticCategory.Error,"Import_declaration_0_is_using_private_name_1_4000","Import declaration '{0}' is using private name '{1}'."),Type_parameter_0_of_exported_class_has_or_is_using_private_name_1:diag(4002,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_class_has_or_is_using_private_name_1_4002","Type parameter '{0}' of exported class has or is using private name '{1}'."),Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1:diag(4004,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1_4004","Type parameter '{0}' of exported interface has or is using private name '{1}'."),Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:diag(4006,e.DiagnosticCategory.Error,"Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4006","Type parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:diag(4008,e.DiagnosticCategory.Error,"Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4008","Type parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:diag(4010,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4010","Type parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:diag(4012,e.DiagnosticCategory.Error,"Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4012","Type parameter '{0}' of public method from exported class has or is using private name '{1}'."),Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:diag(4014,e.DiagnosticCategory.Error,"Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4014","Type parameter '{0}' of method from exported interface has or is using private name '{1}'."),Type_parameter_0_of_exported_function_has_or_is_using_private_name_1:diag(4016,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_function_has_or_is_using_private_name_1_4016","Type parameter '{0}' of exported function has or is using private name '{1}'."),Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:diag(4019,e.DiagnosticCategory.Error,"Implements_clause_of_exported_class_0_has_or_is_using_private_name_1_4019","Implements clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_class_0_has_or_is_using_private_name_1:diag(4020,e.DiagnosticCategory.Error,"extends_clause_of_exported_class_0_has_or_is_using_private_name_1_4020","'extends' clause of exported class '{0}' has or is using private name '{1}'."),extends_clause_of_exported_interface_0_has_or_is_using_private_name_1:diag(4022,e.DiagnosticCategory.Error,"extends_clause_of_exported_interface_0_has_or_is_using_private_name_1_4022","'extends' clause of exported interface '{0}' has or is using private name '{1}'."),Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4023,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4023","Exported variable '{0}' has or is using name '{1}' from external module {2} but cannot be named."),Exported_variable_0_has_or_is_using_name_1_from_private_module_2:diag(4024,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_name_1_from_private_module_2_4024","Exported variable '{0}' has or is using name '{1}' from private module '{2}'."),Exported_variable_0_has_or_is_using_private_name_1:diag(4025,e.DiagnosticCategory.Error,"Exported_variable_0_has_or_is_using_private_name_1_4025","Exported variable '{0}' has or is using private name '{1}'."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4026,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot__4026","Public static property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4027,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4027","Public static property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_property_0_of_exported_class_has_or_is_using_private_name_1:diag(4028,e.DiagnosticCategory.Error,"Public_static_property_0_of_exported_class_has_or_is_using_private_name_1_4028","Public static property '{0}' of exported class has or is using private name '{1}'."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4029,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_name_4029","Public property '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4030,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4030","Public property '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_property_0_of_exported_class_has_or_is_using_private_name_1:diag(4031,e.DiagnosticCategory.Error,"Public_property_0_of_exported_class_has_or_is_using_private_name_1_4031","Public property '{0}' of exported class has or is using private name '{1}'."),Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4032,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4032","Property '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Property_0_of_exported_interface_has_or_is_using_private_name_1:diag(4033,e.DiagnosticCategory.Error,"Property_0_of_exported_interface_has_or_is_using_private_name_1_4033","Property '{0}' of exported interface has or is using private name '{1}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4034,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_mod_4034","Parameter type of public static setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1:diag(4035,e.DiagnosticCategory.Error,"Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1_4035","Parameter type of public static setter '{0}' from exported class has or is using private name '{1}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4036,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4036","Parameter type of public setter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1:diag(4037,e.DiagnosticCategory.Error,"Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1_4037","Parameter type of public setter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4038,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_modul_4038","Return type of public static getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4039,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_4039","Return type of public static getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1:diag(4040,e.DiagnosticCategory.Error,"Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1_4040","Return type of public static getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4041,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_4041","Return type of public getter '{0}' from exported class has or is using name '{1}' from external module {2} but cannot be named."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4042,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2_4042","Return type of public getter '{0}' from exported class has or is using name '{1}' from private module '{2}'."),Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1:diag(4043,e.DiagnosticCategory.Error,"Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1_4043","Return type of public getter '{0}' from exported class has or is using private name '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:diag(4044,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_mod_4044","Return type of constructor signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0:diag(4045,e.DiagnosticCategory.Error,"Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0_4045","Return type of constructor signature from exported interface has or is using private name '{0}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:diag(4046,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4046","Return type of call signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0:diag(4047,e.DiagnosticCategory.Error,"Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0_4047","Return type of call signature from exported interface has or is using private name '{0}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:diag(4048,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4048","Return type of index signature from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0:diag(4049,e.DiagnosticCategory.Error,"Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0_4049","Return type of index signature from exported interface has or is using private name '{0}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:diag(4050,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module__4050","Return type of public static method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:diag(4051,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4051","Return type of public static method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0:diag(4052,e.DiagnosticCategory.Error,"Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0_4052","Return type of public static method from exported class has or is using private name '{0}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:diag(4053,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_c_4053","Return type of public method from exported class has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:diag(4054,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1_4054","Return type of public method from exported class has or is using name '{0}' from private module '{1}'."),Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0:diag(4055,e.DiagnosticCategory.Error,"Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0_4055","Return type of public method from exported class has or is using private name '{0}'."),Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:diag(4056,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1_4056","Return type of method from exported interface has or is using name '{0}' from private module '{1}'."),Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0:diag(4057,e.DiagnosticCategory.Error,"Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0_4057","Return type of method from exported interface has or is using private name '{0}'."),Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:diag(4058,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named_4058","Return type of exported function has or is using name '{0}' from external module {1} but cannot be named."),Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:diag(4059,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1_4059","Return type of exported function has or is using name '{0}' from private module '{1}'."),Return_type_of_exported_function_has_or_is_using_private_name_0:diag(4060,e.DiagnosticCategory.Error,"Return_type_of_exported_function_has_or_is_using_private_name_0_4060","Return type of exported function has or is using private name '{0}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4061,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_can_4061","Parameter '{0}' of constructor from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4062,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2_4062","Parameter '{0}' of constructor from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1:diag(4063,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1_4063","Parameter '{0}' of constructor from exported class has or is using private name '{1}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4064,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_mod_4064","Parameter '{0}' of constructor signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1:diag(4065,e.DiagnosticCategory.Error,"Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1_4065","Parameter '{0}' of constructor signature from exported interface has or is using private name '{1}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4066,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4066","Parameter '{0}' of call signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1:diag(4067,e.DiagnosticCategory.Error,"Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1_4067","Parameter '{0}' of call signature from exported interface has or is using private name '{1}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4068,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module__4068","Parameter '{0}' of public static method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4069,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4069","Parameter '{0}' of public static method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1:diag(4070,e.DiagnosticCategory.Error,"Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1_4070","Parameter '{0}' of public static method from exported class has or is using private name '{1}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4071,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_c_4071","Parameter '{0}' of public method from exported class has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4072,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2_4072","Parameter '{0}' of public method from exported class has or is using name '{1}' from private module '{2}'."),Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1:diag(4073,e.DiagnosticCategory.Error,"Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1_4073","Parameter '{0}' of public method from exported class has or is using private name '{1}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4074,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4074","Parameter '{0}' of method from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1:diag(4075,e.DiagnosticCategory.Error,"Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1_4075","Parameter '{0}' of method from exported interface has or is using private name '{1}'."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4076,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4076","Parameter '{0}' of exported function has or is using name '{1}' from external module {2} but cannot be named."),Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:diag(4077,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2_4077","Parameter '{0}' of exported function has or is using name '{1}' from private module '{2}'."),Parameter_0_of_exported_function_has_or_is_using_private_name_1:diag(4078,e.DiagnosticCategory.Error,"Parameter_0_of_exported_function_has_or_is_using_private_name_1_4078","Parameter '{0}' of exported function has or is using private name '{1}'."),Exported_type_alias_0_has_or_is_using_private_name_1:diag(4081,e.DiagnosticCategory.Error,"Exported_type_alias_0_has_or_is_using_private_name_1_4081","Exported type alias '{0}' has or is using private name '{1}'."),Default_export_of_the_module_has_or_is_using_private_name_0:diag(4082,e.DiagnosticCategory.Error,"Default_export_of_the_module_has_or_is_using_private_name_0_4082","Default export of the module has or is using private name '{0}'."),Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1:diag(4083,e.DiagnosticCategory.Error,"Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1_4083","Type parameter '{0}' of exported type alias has or is using private name '{1}'."),Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict:diag(4090,e.DiagnosticCategory.Error,"Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_librar_4090","Conflicting definitions for '{0}' found at '{1}' and '{2}'. Consider installing a specific version of this library to resolve the conflict."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4091,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2_4091","Parameter '{0}' of index signature from exported interface has or is using name '{1}' from private module '{2}'."),Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1:diag(4092,e.DiagnosticCategory.Error,"Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1_4092","Parameter '{0}' of index signature from exported interface has or is using private name '{1}'."),Property_0_of_exported_class_expression_may_not_be_private_or_protected:diag(4094,e.DiagnosticCategory.Error,"Property_0_of_exported_class_expression_may_not_be_private_or_protected_4094","Property '{0}' of exported class expression may not be private or protected."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4095,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_4095","Public static method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4096,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4096","Public static method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_static_method_0_of_exported_class_has_or_is_using_private_name_1:diag(4097,e.DiagnosticCategory.Error,"Public_static_method_0_of_exported_class_has_or_is_using_private_name_1_4097","Public static method '{0}' of exported class has or is using private name '{1}'."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:diag(4098,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named_4098","Public method '{0}' of exported class has or is using name '{1}' from external module {2} but cannot be named."),Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:diag(4099,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2_4099","Public method '{0}' of exported class has or is using name '{1}' from private module '{2}'."),Public_method_0_of_exported_class_has_or_is_using_private_name_1:diag(4100,e.DiagnosticCategory.Error,"Public_method_0_of_exported_class_has_or_is_using_private_name_1_4100","Public method '{0}' of exported class has or is using private name '{1}'."),Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:diag(4101,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2_4101","Method '{0}' of exported interface has or is using name '{1}' from private module '{2}'."),Method_0_of_exported_interface_has_or_is_using_private_name_1:diag(4102,e.DiagnosticCategory.Error,"Method_0_of_exported_interface_has_or_is_using_private_name_1_4102","Method '{0}' of exported interface has or is using private name '{1}'."),The_current_host_does_not_support_the_0_option:diag(5001,e.DiagnosticCategory.Error,"The_current_host_does_not_support_the_0_option_5001","The current host does not support the '{0}' option."),Cannot_find_the_common_subdirectory_path_for_the_input_files:diag(5009,e.DiagnosticCategory.Error,"Cannot_find_the_common_subdirectory_path_for_the_input_files_5009","Cannot find the common subdirectory path for the input files."),File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:diag(5010,e.DiagnosticCategory.Error,"File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0_5010","File specification cannot end in a recursive directory wildcard ('**'): '{0}'."),Cannot_read_file_0_Colon_1:diag(5012,e.DiagnosticCategory.Error,"Cannot_read_file_0_Colon_1_5012","Cannot read file '{0}': {1}."),Failed_to_parse_file_0_Colon_1:diag(5014,e.DiagnosticCategory.Error,"Failed_to_parse_file_0_Colon_1_5014","Failed to parse file '{0}': {1}."),Unknown_compiler_option_0:diag(5023,e.DiagnosticCategory.Error,"Unknown_compiler_option_0_5023","Unknown compiler option '{0}'."),Compiler_option_0_requires_a_value_of_type_1:diag(5024,e.DiagnosticCategory.Error,"Compiler_option_0_requires_a_value_of_type_1_5024","Compiler option '{0}' requires a value of type {1}."),Could_not_write_file_0_Colon_1:diag(5033,e.DiagnosticCategory.Error,"Could_not_write_file_0_Colon_1_5033","Could not write file '{0}': {1}."),Option_project_cannot_be_mixed_with_source_files_on_a_command_line:diag(5042,e.DiagnosticCategory.Error,"Option_project_cannot_be_mixed_with_source_files_on_a_command_line_5042","Option 'project' cannot be mixed with source files on a command line."),Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher:diag(5047,e.DiagnosticCategory.Error,"Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES_5047","Option 'isolatedModules' can only be used when either option '--module' is provided or option 'target' is 'ES2015' or higher."),Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided:diag(5051,e.DiagnosticCategory.Error,"Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided_5051","Option '{0} can only be used when either option '--inlineSourceMap' or option '--sourceMap' is provided."),Option_0_cannot_be_specified_without_specifying_option_1:diag(5052,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_5052","Option '{0}' cannot be specified without specifying option '{1}'."),Option_0_cannot_be_specified_with_option_1:diag(5053,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_with_option_1_5053","Option '{0}' cannot be specified with option '{1}'."),A_tsconfig_json_file_is_already_defined_at_Colon_0:diag(5054,e.DiagnosticCategory.Error,"A_tsconfig_json_file_is_already_defined_at_Colon_0_5054","A 'tsconfig.json' file is already defined at: '{0}'."),Cannot_write_file_0_because_it_would_overwrite_input_file:diag(5055,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_overwrite_input_file_5055","Cannot write file '{0}' because it would overwrite input file."),Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files:diag(5056,e.DiagnosticCategory.Error,"Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files_5056","Cannot write file '{0}' because it would be overwritten by multiple input files."),Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0:diag(5057,e.DiagnosticCategory.Error,"Cannot_find_a_tsconfig_json_file_at_the_specified_directory_Colon_0_5057","Cannot find a tsconfig.json file at the specified directory: '{0}'."),The_specified_path_does_not_exist_Colon_0:diag(5058,e.DiagnosticCategory.Error,"The_specified_path_does_not_exist_Colon_0_5058","The specified path does not exist: '{0}'."),Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier:diag(5059,e.DiagnosticCategory.Error,"Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier_5059","Invalid value for '--reactNamespace'. '{0}' is not a valid identifier."),Option_paths_cannot_be_used_without_specifying_baseUrl_option:diag(5060,e.DiagnosticCategory.Error,"Option_paths_cannot_be_used_without_specifying_baseUrl_option_5060","Option 'paths' cannot be used without specifying '--baseUrl' option."),Pattern_0_can_have_at_most_one_Asterisk_character:diag(5061,e.DiagnosticCategory.Error,"Pattern_0_can_have_at_most_one_Asterisk_character_5061","Pattern '{0}' can have at most one '*' character."),Substitution_0_in_pattern_1_in_can_have_at_most_one_Asterisk_character:diag(5062,e.DiagnosticCategory.Error,"Substitution_0_in_pattern_1_in_can_have_at_most_one_Asterisk_character_5062","Substitution '{0}' in pattern '{1}' in can have at most one '*' character."),Substitutions_for_pattern_0_should_be_an_array:diag(5063,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_should_be_an_array_5063","Substitutions for pattern '{0}' should be an array."),Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2:diag(5064,e.DiagnosticCategory.Error,"Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2_5064","Substitution '{0}' for pattern '{1}' has incorrect type, expected 'string', got '{2}'."),File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0:diag(5065,e.DiagnosticCategory.Error,"File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildca_5065","File specification cannot contain a parent directory ('..') that appears after a recursive directory wildcard ('**'): '{0}'."),Substitutions_for_pattern_0_shouldn_t_be_an_empty_array:diag(5066,e.DiagnosticCategory.Error,"Substitutions_for_pattern_0_shouldn_t_be_an_empty_array_5066","Substitutions for pattern '{0}' shouldn't be an empty array."),Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name:diag(5067,e.DiagnosticCategory.Error,"Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name_5067","Invalid value for 'jsxFactory'. '{0}' is not a valid identifier or qualified-name."),Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig:diag(5068,e.DiagnosticCategory.Error,"Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript__5068","Adding a tsconfig.json file will help organize projects that contain both TypeScript and JavaScript files. Learn more at https://aka.ms/tsconfig."),Option_0_cannot_be_specified_without_specifying_option_1_or_option_2:diag(5069,e.DiagnosticCategory.Error,"Option_0_cannot_be_specified_without_specifying_option_1_or_option_2_5069","Option '{0}' cannot be specified without specifying option '{1}' or option '{2}'."),Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy:diag(5070,e.DiagnosticCategory.Error,"Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy_5070","Option '--resolveJsonModule' cannot be specified without 'node' module resolution strategy."),Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext:diag(5071,e.DiagnosticCategory.Error,"Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_5071","Option '--resolveJsonModule' can only be specified when module code generation is 'commonjs', 'amd', 'es2015' or 'esNext'."),Unknown_build_option_0:diag(5072,e.DiagnosticCategory.Error,"Unknown_build_option_0_5072","Unknown build option '{0}'."),Build_option_0_requires_a_value_of_type_1:diag(5073,e.DiagnosticCategory.Error,"Build_option_0_requires_a_value_of_type_1_5073","Build option '{0}' requires a value of type {1}."),Generates_a_sourcemap_for_each_corresponding_d_ts_file:diag(6e3,e.DiagnosticCategory.Message,"Generates_a_sourcemap_for_each_corresponding_d_ts_file_6000","Generates a sourcemap for each corresponding '.d.ts' file."),Concatenate_and_emit_output_to_single_file:diag(6001,e.DiagnosticCategory.Message,"Concatenate_and_emit_output_to_single_file_6001","Concatenate and emit output to single file."),Generates_corresponding_d_ts_file:diag(6002,e.DiagnosticCategory.Message,"Generates_corresponding_d_ts_file_6002","Generates corresponding '.d.ts' file."),Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations:diag(6003,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations_6003","Specify the location where debugger should locate map files instead of generated locations."),Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations:diag(6004,e.DiagnosticCategory.Message,"Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations_6004","Specify the location where debugger should locate TypeScript files instead of source locations."),Watch_input_files:diag(6005,e.DiagnosticCategory.Message,"Watch_input_files_6005","Watch input files."),Redirect_output_structure_to_the_directory:diag(6006,e.DiagnosticCategory.Message,"Redirect_output_structure_to_the_directory_6006","Redirect output structure to the directory."),Do_not_erase_const_enum_declarations_in_generated_code:diag(6007,e.DiagnosticCategory.Message,"Do_not_erase_const_enum_declarations_in_generated_code_6007","Do not erase const enum declarations in generated code."),Do_not_emit_outputs_if_any_errors_were_reported:diag(6008,e.DiagnosticCategory.Message,"Do_not_emit_outputs_if_any_errors_were_reported_6008","Do not emit outputs if any errors were reported."),Do_not_emit_comments_to_output:diag(6009,e.DiagnosticCategory.Message,"Do_not_emit_comments_to_output_6009","Do not emit comments to output."),Do_not_emit_outputs:diag(6010,e.DiagnosticCategory.Message,"Do_not_emit_outputs_6010","Do not emit outputs."),Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking:diag(6011,e.DiagnosticCategory.Message,"Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typech_6011","Allow default imports from modules with no default export. This does not affect code emit, just typechecking."),Skip_type_checking_of_declaration_files:diag(6012,e.DiagnosticCategory.Message,"Skip_type_checking_of_declaration_files_6012","Skip type checking of declaration files."),Do_not_resolve_the_real_path_of_symlinks:diag(6013,e.DiagnosticCategory.Message,"Do_not_resolve_the_real_path_of_symlinks_6013","Do not resolve the real path of symlinks."),Only_emit_d_ts_declaration_files:diag(6014,e.DiagnosticCategory.Message,"Only_emit_d_ts_declaration_files_6014","Only emit '.d.ts' declaration files."),Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_or_ESNEXT:diag(6015,e.DiagnosticCategory.Message,"Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_or_ESNEXT_6015","Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'."),Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_or_ESNext:diag(6016,e.DiagnosticCategory.Message,"Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_or_ESNext_6016","Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'."),Print_this_message:diag(6017,e.DiagnosticCategory.Message,"Print_this_message_6017","Print this message."),Print_the_compiler_s_version:diag(6019,e.DiagnosticCategory.Message,"Print_the_compiler_s_version_6019","Print the compiler's version."),Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json:diag(6020,e.DiagnosticCategory.Message,"Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json_6020","Compile the project given the path to its configuration file, or to a folder with a 'tsconfig.json'."),Syntax_Colon_0:diag(6023,e.DiagnosticCategory.Message,"Syntax_Colon_0_6023","Syntax: {0}"),options:diag(6024,e.DiagnosticCategory.Message,"options_6024","options"),file:diag(6025,e.DiagnosticCategory.Message,"file_6025","file"),Examples_Colon_0:diag(6026,e.DiagnosticCategory.Message,"Examples_Colon_0_6026","Examples: {0}"),Options_Colon:diag(6027,e.DiagnosticCategory.Message,"Options_Colon_6027","Options:"),Version_0:diag(6029,e.DiagnosticCategory.Message,"Version_0_6029","Version {0}"),Insert_command_line_options_and_files_from_a_file:diag(6030,e.DiagnosticCategory.Message,"Insert_command_line_options_and_files_from_a_file_6030","Insert command line options and files from a file."),Starting_compilation_in_watch_mode:diag(6031,e.DiagnosticCategory.Message,"Starting_compilation_in_watch_mode_6031","Starting compilation in watch mode..."),File_change_detected_Starting_incremental_compilation:diag(6032,e.DiagnosticCategory.Message,"File_change_detected_Starting_incremental_compilation_6032","File change detected. Starting incremental compilation..."),KIND:diag(6034,e.DiagnosticCategory.Message,"KIND_6034","KIND"),FILE:diag(6035,e.DiagnosticCategory.Message,"FILE_6035","FILE"),VERSION:diag(6036,e.DiagnosticCategory.Message,"VERSION_6036","VERSION"),LOCATION:diag(6037,e.DiagnosticCategory.Message,"LOCATION_6037","LOCATION"),DIRECTORY:diag(6038,e.DiagnosticCategory.Message,"DIRECTORY_6038","DIRECTORY"),STRATEGY:diag(6039,e.DiagnosticCategory.Message,"STRATEGY_6039","STRATEGY"),FILE_OR_DIRECTORY:diag(6040,e.DiagnosticCategory.Message,"FILE_OR_DIRECTORY_6040","FILE OR DIRECTORY"),Generates_corresponding_map_file:diag(6043,e.DiagnosticCategory.Message,"Generates_corresponding_map_file_6043","Generates corresponding '.map' file."),Compiler_option_0_expects_an_argument:diag(6044,e.DiagnosticCategory.Error,"Compiler_option_0_expects_an_argument_6044","Compiler option '{0}' expects an argument."),Unterminated_quoted_string_in_response_file_0:diag(6045,e.DiagnosticCategory.Error,"Unterminated_quoted_string_in_response_file_0_6045","Unterminated quoted string in response file '{0}'."),Argument_for_0_option_must_be_Colon_1:diag(6046,e.DiagnosticCategory.Error,"Argument_for_0_option_must_be_Colon_1_6046","Argument for '{0}' option must be: {1}."),Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1:diag(6048,e.DiagnosticCategory.Error,"Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1_6048","Locale must be of the form <language> or <language>-<territory>. For example '{0}' or '{1}'."),Unsupported_locale_0:diag(6049,e.DiagnosticCategory.Error,"Unsupported_locale_0_6049","Unsupported locale '{0}'."),Unable_to_open_file_0:diag(6050,e.DiagnosticCategory.Error,"Unable_to_open_file_0_6050","Unable to open file '{0}'."),Corrupted_locale_file_0:diag(6051,e.DiagnosticCategory.Error,"Corrupted_locale_file_0_6051","Corrupted locale file {0}."),Raise_error_on_expressions_and_declarations_with_an_implied_any_type:diag(6052,e.DiagnosticCategory.Message,"Raise_error_on_expressions_and_declarations_with_an_implied_any_type_6052","Raise error on expressions and declarations with an implied 'any' type."),File_0_not_found:diag(6053,e.DiagnosticCategory.Error,"File_0_not_found_6053","File '{0}' not found."),File_0_has_unsupported_extension_The_only_supported_extensions_are_1:diag(6054,e.DiagnosticCategory.Error,"File_0_has_unsupported_extension_The_only_supported_extensions_are_1_6054","File '{0}' has unsupported extension. The only supported extensions are {1}."),Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures:diag(6055,e.DiagnosticCategory.Message,"Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures_6055","Suppress noImplicitAny errors for indexing objects lacking index signatures."),Do_not_emit_declarations_for_code_that_has_an_internal_annotation:diag(6056,e.DiagnosticCategory.Message,"Do_not_emit_declarations_for_code_that_has_an_internal_annotation_6056","Do not emit declarations for code that has an '@internal' annotation."),Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir:diag(6058,e.DiagnosticCategory.Message,"Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir_6058","Specify the root directory of input files. Use to control the output directory structure with --outDir."),File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files:diag(6059,e.DiagnosticCategory.Error,"File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files_6059","File '{0}' is not under 'rootDir' '{1}'. 'rootDir' is expected to contain all source files."),Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix:diag(6060,e.DiagnosticCategory.Message,"Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix_6060","Specify the end of line sequence to be used when emitting files: 'CRLF' (dos) or 'LF' (unix)."),NEWLINE:diag(6061,e.DiagnosticCategory.Message,"NEWLINE_6061","NEWLINE"),Option_0_can_only_be_specified_in_tsconfig_json_file:diag(6064,e.DiagnosticCategory.Error,"Option_0_can_only_be_specified_in_tsconfig_json_file_6064","Option '{0}' can only be specified in 'tsconfig.json' file."),Enables_experimental_support_for_ES7_decorators:diag(6065,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_decorators_6065","Enables experimental support for ES7 decorators."),Enables_experimental_support_for_emitting_type_metadata_for_decorators:diag(6066,e.DiagnosticCategory.Message,"Enables_experimental_support_for_emitting_type_metadata_for_decorators_6066","Enables experimental support for emitting type metadata for decorators."),Enables_experimental_support_for_ES7_async_functions:diag(6068,e.DiagnosticCategory.Message,"Enables_experimental_support_for_ES7_async_functions_6068","Enables experimental support for ES7 async functions."),Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6:diag(6069,e.DiagnosticCategory.Message,"Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6_6069","Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6)."),Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file:diag(6070,e.DiagnosticCategory.Message,"Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file_6070","Initializes a TypeScript project and creates a tsconfig.json file."),Successfully_created_a_tsconfig_json_file:diag(6071,e.DiagnosticCategory.Message,"Successfully_created_a_tsconfig_json_file_6071","Successfully created a tsconfig.json file."),Suppress_excess_property_checks_for_object_literals:diag(6072,e.DiagnosticCategory.Message,"Suppress_excess_property_checks_for_object_literals_6072","Suppress excess property checks for object literals."),Stylize_errors_and_messages_using_color_and_context_experimental:diag(6073,e.DiagnosticCategory.Message,"Stylize_errors_and_messages_using_color_and_context_experimental_6073","Stylize errors and messages using color and context (experimental)."),Do_not_report_errors_on_unused_labels:diag(6074,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unused_labels_6074","Do not report errors on unused labels."),Report_error_when_not_all_code_paths_in_function_return_a_value:diag(6075,e.DiagnosticCategory.Message,"Report_error_when_not_all_code_paths_in_function_return_a_value_6075","Report error when not all code paths in function return a value."),Report_errors_for_fallthrough_cases_in_switch_statement:diag(6076,e.DiagnosticCategory.Message,"Report_errors_for_fallthrough_cases_in_switch_statement_6076","Report errors for fallthrough cases in switch statement."),Do_not_report_errors_on_unreachable_code:diag(6077,e.DiagnosticCategory.Message,"Do_not_report_errors_on_unreachable_code_6077","Do not report errors on unreachable code."),Disallow_inconsistently_cased_references_to_the_same_file:diag(6078,e.DiagnosticCategory.Message,"Disallow_inconsistently_cased_references_to_the_same_file_6078","Disallow inconsistently-cased references to the same file."),Specify_library_files_to_be_included_in_the_compilation:diag(6079,e.DiagnosticCategory.Message,"Specify_library_files_to_be_included_in_the_compilation_6079","Specify library files to be included in the compilation."),Specify_JSX_code_generation_Colon_preserve_react_native_or_react:diag(6080,e.DiagnosticCategory.Message,"Specify_JSX_code_generation_Colon_preserve_react_native_or_react_6080","Specify JSX code generation: 'preserve', 'react-native', or 'react'."),File_0_has_an_unsupported_extension_so_skipping_it:diag(6081,e.DiagnosticCategory.Message,"File_0_has_an_unsupported_extension_so_skipping_it_6081","File '{0}' has an unsupported extension, so skipping it."),Only_amd_and_system_modules_are_supported_alongside_0:diag(6082,e.DiagnosticCategory.Error,"Only_amd_and_system_modules_are_supported_alongside_0_6082","Only 'amd' and 'system' modules are supported alongside --{0}."),Base_directory_to_resolve_non_absolute_module_names:diag(6083,e.DiagnosticCategory.Message,"Base_directory_to_resolve_non_absolute_module_names_6083","Base directory to resolve non-absolute module names."),Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit:diag(6084,e.DiagnosticCategory.Message,"Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react__6084","[Deprecated] Use '--jsxFactory' instead. Specify the object invoked for createElement when targeting 'react' JSX emit"),Enable_tracing_of_the_name_resolution_process:diag(6085,e.DiagnosticCategory.Message,"Enable_tracing_of_the_name_resolution_process_6085","Enable tracing of the name resolution process."),Resolving_module_0_from_1:diag(6086,e.DiagnosticCategory.Message,"Resolving_module_0_from_1_6086","======== Resolving module '{0}' from '{1}'. ========"),Explicitly_specified_module_resolution_kind_Colon_0:diag(6087,e.DiagnosticCategory.Message,"Explicitly_specified_module_resolution_kind_Colon_0_6087","Explicitly specified module resolution kind: '{0}'."),Module_resolution_kind_is_not_specified_using_0:diag(6088,e.DiagnosticCategory.Message,"Module_resolution_kind_is_not_specified_using_0_6088","Module resolution kind is not specified, using '{0}'."),Module_name_0_was_successfully_resolved_to_1:diag(6089,e.DiagnosticCategory.Message,"Module_name_0_was_successfully_resolved_to_1_6089","======== Module name '{0}' was successfully resolved to '{1}'. ========"),Module_name_0_was_not_resolved:diag(6090,e.DiagnosticCategory.Message,"Module_name_0_was_not_resolved_6090","======== Module name '{0}' was not resolved. ========"),paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0:diag(6091,e.DiagnosticCategory.Message,"paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0_6091","'paths' option is specified, looking for a pattern to match module name '{0}'."),Module_name_0_matched_pattern_1:diag(6092,e.DiagnosticCategory.Message,"Module_name_0_matched_pattern_1_6092","Module name '{0}', matched pattern '{1}'."),Trying_substitution_0_candidate_module_location_Colon_1:diag(6093,e.DiagnosticCategory.Message,"Trying_substitution_0_candidate_module_location_Colon_1_6093","Trying substitution '{0}', candidate module location: '{1}'."),Resolving_module_name_0_relative_to_base_url_1_2:diag(6094,e.DiagnosticCategory.Message,"Resolving_module_name_0_relative_to_base_url_1_2_6094","Resolving module name '{0}' relative to base url '{1}' - '{2}'."),Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1:diag(6095,e.DiagnosticCategory.Message,"Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1_6095","Loading module as file / folder, candidate module location '{0}', target file type '{1}'."),File_0_does_not_exist:diag(6096,e.DiagnosticCategory.Message,"File_0_does_not_exist_6096","File '{0}' does not exist."),File_0_exist_use_it_as_a_name_resolution_result:diag(6097,e.DiagnosticCategory.Message,"File_0_exist_use_it_as_a_name_resolution_result_6097","File '{0}' exist - use it as a name resolution result."),Loading_module_0_from_node_modules_folder_target_file_type_1:diag(6098,e.DiagnosticCategory.Message,"Loading_module_0_from_node_modules_folder_target_file_type_1_6098","Loading module '{0}' from 'node_modules' folder, target file type '{1}'."),Found_package_json_at_0:diag(6099,e.DiagnosticCategory.Message,"Found_package_json_at_0_6099","Found 'package.json' at '{0}'."),package_json_does_not_have_a_0_field:diag(6100,e.DiagnosticCategory.Message,"package_json_does_not_have_a_0_field_6100","'package.json' does not have a '{0}' field."),package_json_has_0_field_1_that_references_2:diag(6101,e.DiagnosticCategory.Message,"package_json_has_0_field_1_that_references_2_6101","'package.json' has '{0}' field '{1}' that references '{2}'."),Allow_javascript_files_to_be_compiled:diag(6102,e.DiagnosticCategory.Message,"Allow_javascript_files_to_be_compiled_6102","Allow javascript files to be compiled."),Option_0_should_have_array_of_strings_as_a_value:diag(6103,e.DiagnosticCategory.Error,"Option_0_should_have_array_of_strings_as_a_value_6103","Option '{0}' should have array of strings as a value."),Checking_if_0_is_the_longest_matching_prefix_for_1_2:diag(6104,e.DiagnosticCategory.Message,"Checking_if_0_is_the_longest_matching_prefix_for_1_2_6104","Checking if '{0}' is the longest matching prefix for '{1}' - '{2}'."),Expected_type_of_0_field_in_package_json_to_be_1_got_2:diag(6105,e.DiagnosticCategory.Message,"Expected_type_of_0_field_in_package_json_to_be_1_got_2_6105","Expected type of '{0}' field in 'package.json' to be '{1}', got '{2}'."),baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1:diag(6106,e.DiagnosticCategory.Message,"baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1_6106","'baseUrl' option is set to '{0}', using this value to resolve non-relative module name '{1}'."),rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0:diag(6107,e.DiagnosticCategory.Message,"rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0_6107","'rootDirs' option is set, using it to resolve relative module name '{0}'."),Longest_matching_prefix_for_0_is_1:diag(6108,e.DiagnosticCategory.Message,"Longest_matching_prefix_for_0_is_1_6108","Longest matching prefix for '{0}' is '{1}'."),Loading_0_from_the_root_dir_1_candidate_location_2:diag(6109,e.DiagnosticCategory.Message,"Loading_0_from_the_root_dir_1_candidate_location_2_6109","Loading '{0}' from the root dir '{1}', candidate location '{2}'."),Trying_other_entries_in_rootDirs:diag(6110,e.DiagnosticCategory.Message,"Trying_other_entries_in_rootDirs_6110","Trying other entries in 'rootDirs'."),Module_resolution_using_rootDirs_has_failed:diag(6111,e.DiagnosticCategory.Message,"Module_resolution_using_rootDirs_has_failed_6111","Module resolution using 'rootDirs' has failed."),Do_not_emit_use_strict_directives_in_module_output:diag(6112,e.DiagnosticCategory.Message,"Do_not_emit_use_strict_directives_in_module_output_6112","Do not emit 'use strict' directives in module output."),Enable_strict_null_checks:diag(6113,e.DiagnosticCategory.Message,"Enable_strict_null_checks_6113","Enable strict null checks."),Unknown_option_excludes_Did_you_mean_exclude:diag(6114,e.DiagnosticCategory.Error,"Unknown_option_excludes_Did_you_mean_exclude_6114","Unknown option 'excludes'. Did you mean 'exclude'?"),Raise_error_on_this_expressions_with_an_implied_any_type:diag(6115,e.DiagnosticCategory.Message,"Raise_error_on_this_expressions_with_an_implied_any_type_6115","Raise error on 'this' expressions with an implied 'any' type."),Resolving_type_reference_directive_0_containing_file_1_root_directory_2:diag(6116,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_2_6116","======== Resolving type reference directive '{0}', containing file '{1}', root directory '{2}'. ========"),Resolving_using_primary_search_paths:diag(6117,e.DiagnosticCategory.Message,"Resolving_using_primary_search_paths_6117","Resolving using primary search paths..."),Resolving_from_node_modules_folder:diag(6118,e.DiagnosticCategory.Message,"Resolving_from_node_modules_folder_6118","Resolving from node_modules folder..."),Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2:diag(6119,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2_6119","======== Type reference directive '{0}' was successfully resolved to '{1}', primary: {2}. ========"),Type_reference_directive_0_was_not_resolved:diag(6120,e.DiagnosticCategory.Message,"Type_reference_directive_0_was_not_resolved_6120","======== Type reference directive '{0}' was not resolved. ========"),Resolving_with_primary_search_path_0:diag(6121,e.DiagnosticCategory.Message,"Resolving_with_primary_search_path_0_6121","Resolving with primary search path '{0}'."),Root_directory_cannot_be_determined_skipping_primary_search_paths:diag(6122,e.DiagnosticCategory.Message,"Root_directory_cannot_be_determined_skipping_primary_search_paths_6122","Root directory cannot be determined, skipping primary search paths."),Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set:diag(6123,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set_6123","======== Resolving type reference directive '{0}', containing file '{1}', root directory not set. ========"),Type_declaration_files_to_be_included_in_compilation:diag(6124,e.DiagnosticCategory.Message,"Type_declaration_files_to_be_included_in_compilation_6124","Type declaration files to be included in compilation."),Looking_up_in_node_modules_folder_initial_location_0:diag(6125,e.DiagnosticCategory.Message,"Looking_up_in_node_modules_folder_initial_location_0_6125","Looking up in 'node_modules' folder, initial location '{0}'."),Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder:diag(6126,e.DiagnosticCategory.Message,"Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_mod_6126","Containing file is not specified and root directory cannot be determined, skipping lookup in 'node_modules' folder."),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1:diag(6127,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1_6127","======== Resolving type reference directive '{0}', containing file not set, root directory '{1}'. ========"),Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set:diag(6128,e.DiagnosticCategory.Message,"Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set_6128","======== Resolving type reference directive '{0}', containing file not set, root directory not set. ========"),Resolving_real_path_for_0_result_1:diag(6130,e.DiagnosticCategory.Message,"Resolving_real_path_for_0_result_1_6130","Resolving real path for '{0}', result '{1}'."),Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system:diag(6131,e.DiagnosticCategory.Error,"Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system_6131","Cannot compile modules using option '{0}' unless the '--module' flag is 'amd' or 'system'."),File_name_0_has_a_1_extension_stripping_it:diag(6132,e.DiagnosticCategory.Message,"File_name_0_has_a_1_extension_stripping_it_6132","File name '{0}' has a '{1}' extension - stripping it."),_0_is_declared_but_its_value_is_never_read:diag(6133,e.DiagnosticCategory.Error,"_0_is_declared_but_its_value_is_never_read_6133","'{0}' is declared but its value is never read.",true),Report_errors_on_unused_locals:diag(6134,e.DiagnosticCategory.Message,"Report_errors_on_unused_locals_6134","Report errors on unused locals."),Report_errors_on_unused_parameters:diag(6135,e.DiagnosticCategory.Message,"Report_errors_on_unused_parameters_6135","Report errors on unused parameters."),The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files:diag(6136,e.DiagnosticCategory.Message,"The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files_6136","The maximum dependency depth to search under node_modules and load JavaScript files."),Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1:diag(6137,e.DiagnosticCategory.Error,"Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1_6137","Cannot import type declaration files. Consider importing '{0}' instead of '{1}'."),Property_0_is_declared_but_its_value_is_never_read:diag(6138,e.DiagnosticCategory.Error,"Property_0_is_declared_but_its_value_is_never_read_6138","Property '{0}' is declared but its value is never read.",true),Import_emit_helpers_from_tslib:diag(6139,e.DiagnosticCategory.Message,"Import_emit_helpers_from_tslib_6139","Import emit helpers from 'tslib'."),Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2:diag(6140,e.DiagnosticCategory.Error,"Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using__6140","Auto discovery for typings is enabled in project '{0}'. Running extra resolution pass for module '{1}' using cache location '{2}'."),Parse_in_strict_mode_and_emit_use_strict_for_each_source_file:diag(6141,e.DiagnosticCategory.Message,"Parse_in_strict_mode_and_emit_use_strict_for_each_source_file_6141",'Parse in strict mode and emit "use strict" for each source file.'),Module_0_was_resolved_to_1_but_jsx_is_not_set:diag(6142,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_jsx_is_not_set_6142","Module '{0}' was resolved to '{1}', but '--jsx' is not set."),Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1:diag(6144,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1_6144","Module '{0}' was resolved as locally declared ambient module in file '{1}'."),Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified:diag(6145,e.DiagnosticCategory.Message,"Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified_6145","Module '{0}' was resolved as ambient module declared in '{1}' since this file was not modified."),Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h:diag(6146,e.DiagnosticCategory.Message,"Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h_6146","Specify the JSX factory function to use when targeting 'react' JSX emit, e.g. 'React.createElement' or 'h'."),Resolution_for_module_0_was_found_in_cache_from_location_1:diag(6147,e.DiagnosticCategory.Message,"Resolution_for_module_0_was_found_in_cache_from_location_1_6147","Resolution for module '{0}' was found in cache from location '{1}'."),Directory_0_does_not_exist_skipping_all_lookups_in_it:diag(6148,e.DiagnosticCategory.Message,"Directory_0_does_not_exist_skipping_all_lookups_in_it_6148","Directory '{0}' does not exist, skipping all lookups in it."),Show_diagnostic_information:diag(6149,e.DiagnosticCategory.Message,"Show_diagnostic_information_6149","Show diagnostic information."),Show_verbose_diagnostic_information:diag(6150,e.DiagnosticCategory.Message,"Show_verbose_diagnostic_information_6150","Show verbose diagnostic information."),Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file:diag(6151,e.DiagnosticCategory.Message,"Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file_6151","Emit a single file with source maps instead of having a separate file."),Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set:diag(6152,e.DiagnosticCategory.Message,"Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap__6152","Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set."),Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule:diag(6153,e.DiagnosticCategory.Message,"Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule_6153","Transpile each file as a separate module (similar to 'ts.transpileModule')."),Print_names_of_generated_files_part_of_the_compilation:diag(6154,e.DiagnosticCategory.Message,"Print_names_of_generated_files_part_of_the_compilation_6154","Print names of generated files part of the compilation."),Print_names_of_files_part_of_the_compilation:diag(6155,e.DiagnosticCategory.Message,"Print_names_of_files_part_of_the_compilation_6155","Print names of files part of the compilation."),The_locale_used_when_displaying_messages_to_the_user_e_g_en_us:diag(6156,e.DiagnosticCategory.Message,"The_locale_used_when_displaying_messages_to_the_user_e_g_en_us_6156","The locale used when displaying messages to the user (e.g. 'en-us')"),Do_not_generate_custom_helper_functions_like_extends_in_compiled_output:diag(6157,e.DiagnosticCategory.Message,"Do_not_generate_custom_helper_functions_like_extends_in_compiled_output_6157","Do not generate custom helper functions like '__extends' in compiled output."),Do_not_include_the_default_library_file_lib_d_ts:diag(6158,e.DiagnosticCategory.Message,"Do_not_include_the_default_library_file_lib_d_ts_6158","Do not include the default library file (lib.d.ts)."),Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files:diag(6159,e.DiagnosticCategory.Message,"Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files_6159","Do not add triple-slash references or imported modules to the list of compiled files."),Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files:diag(6160,e.DiagnosticCategory.Message,"Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files_6160","[Deprecated] Use '--skipLibCheck' instead. Skip type checking of default library declaration files."),List_of_folders_to_include_type_definitions_from:diag(6161,e.DiagnosticCategory.Message,"List_of_folders_to_include_type_definitions_from_6161","List of folders to include type definitions from."),Disable_size_limitations_on_JavaScript_projects:diag(6162,e.DiagnosticCategory.Message,"Disable_size_limitations_on_JavaScript_projects_6162","Disable size limitations on JavaScript projects."),The_character_set_of_the_input_files:diag(6163,e.DiagnosticCategory.Message,"The_character_set_of_the_input_files_6163","The character set of the input files."),Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files:diag(6164,e.DiagnosticCategory.Message,"Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files_6164","Emit a UTF-8 Byte Order Mark (BOM) in the beginning of output files."),Do_not_truncate_error_messages:diag(6165,e.DiagnosticCategory.Message,"Do_not_truncate_error_messages_6165","Do not truncate error messages."),Output_directory_for_generated_declaration_files:diag(6166,e.DiagnosticCategory.Message,"Output_directory_for_generated_declaration_files_6166","Output directory for generated declaration files."),A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl:diag(6167,e.DiagnosticCategory.Message,"A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl_6167","A series of entries which re-map imports to lookup locations relative to the 'baseUrl'."),List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime:diag(6168,e.DiagnosticCategory.Message,"List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime_6168","List of root folders whose combined content represents the structure of the project at runtime."),Show_all_compiler_options:diag(6169,e.DiagnosticCategory.Message,"Show_all_compiler_options_6169","Show all compiler options."),Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file:diag(6170,e.DiagnosticCategory.Message,"Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file_6170","[Deprecated] Use '--outFile' instead. Concatenate and emit output to single file"),Command_line_Options:diag(6171,e.DiagnosticCategory.Message,"Command_line_Options_6171","Command-line Options"),Basic_Options:diag(6172,e.DiagnosticCategory.Message,"Basic_Options_6172","Basic Options"),Strict_Type_Checking_Options:diag(6173,e.DiagnosticCategory.Message,"Strict_Type_Checking_Options_6173","Strict Type-Checking Options"),Module_Resolution_Options:diag(6174,e.DiagnosticCategory.Message,"Module_Resolution_Options_6174","Module Resolution Options"),Source_Map_Options:diag(6175,e.DiagnosticCategory.Message,"Source_Map_Options_6175","Source Map Options"),Additional_Checks:diag(6176,e.DiagnosticCategory.Message,"Additional_Checks_6176","Additional Checks"),Experimental_Options:diag(6177,e.DiagnosticCategory.Message,"Experimental_Options_6177","Experimental Options"),Advanced_Options:diag(6178,e.DiagnosticCategory.Message,"Advanced_Options_6178","Advanced Options"),Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3:diag(6179,e.DiagnosticCategory.Message,"Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3_6179","Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'."),Enable_all_strict_type_checking_options:diag(6180,e.DiagnosticCategory.Message,"Enable_all_strict_type_checking_options_6180","Enable all strict type-checking options."),List_of_language_service_plugins:diag(6181,e.DiagnosticCategory.Message,"List_of_language_service_plugins_6181","List of language service plugins."),Scoped_package_detected_looking_in_0:diag(6182,e.DiagnosticCategory.Message,"Scoped_package_detected_looking_in_0_6182","Scoped package detected, looking in '{0}'"),Reusing_resolution_of_module_0_to_file_1_from_old_program:diag(6183,e.DiagnosticCategory.Message,"Reusing_resolution_of_module_0_to_file_1_from_old_program_6183","Reusing resolution of module '{0}' to file '{1}' from old program."),Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program:diag(6184,e.DiagnosticCategory.Message,"Reusing_module_resolutions_originating_in_0_since_resolutions_are_unchanged_from_old_program_6184","Reusing module resolutions originating in '{0}' since resolutions are unchanged from old program."),Disable_strict_checking_of_generic_signatures_in_function_types:diag(6185,e.DiagnosticCategory.Message,"Disable_strict_checking_of_generic_signatures_in_function_types_6185","Disable strict checking of generic signatures in function types."),Enable_strict_checking_of_function_types:diag(6186,e.DiagnosticCategory.Message,"Enable_strict_checking_of_function_types_6186","Enable strict checking of function types."),Enable_strict_checking_of_property_initialization_in_classes:diag(6187,e.DiagnosticCategory.Message,"Enable_strict_checking_of_property_initialization_in_classes_6187","Enable strict checking of property initialization in classes."),Numeric_separators_are_not_allowed_here:diag(6188,e.DiagnosticCategory.Error,"Numeric_separators_are_not_allowed_here_6188","Numeric separators are not allowed here."),Multiple_consecutive_numeric_separators_are_not_permitted:diag(6189,e.DiagnosticCategory.Error,"Multiple_consecutive_numeric_separators_are_not_permitted_6189","Multiple consecutive numeric separators are not permitted."),Found_package_json_at_0_Package_ID_is_1:diag(6190,e.DiagnosticCategory.Message,"Found_package_json_at_0_Package_ID_is_1_6190","Found 'package.json' at '{0}'. Package ID is '{1}'."),Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen:diag(6191,e.DiagnosticCategory.Message,"Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen_6191","Whether to keep outdated console output in watch mode instead of clearing the screen."),All_imports_in_import_declaration_are_unused:diag(6192,e.DiagnosticCategory.Error,"All_imports_in_import_declaration_are_unused_6192","All imports in import declaration are unused.",true),Found_1_error_Watching_for_file_changes:diag(6193,e.DiagnosticCategory.Message,"Found_1_error_Watching_for_file_changes_6193","Found 1 error. Watching for file changes."),Found_0_errors_Watching_for_file_changes:diag(6194,e.DiagnosticCategory.Message,"Found_0_errors_Watching_for_file_changes_6194","Found {0} errors. Watching for file changes."),Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols:diag(6195,e.DiagnosticCategory.Message,"Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols_6195","Resolve 'keyof' to string valued property names only (no numbers or symbols)."),_0_is_declared_but_never_used:diag(6196,e.DiagnosticCategory.Error,"_0_is_declared_but_never_used_6196","'{0}' is declared but never used.",true),Include_modules_imported_with_json_extension:diag(6197,e.DiagnosticCategory.Message,"Include_modules_imported_with_json_extension_6197","Include modules imported with '.json' extension"),All_destructured_elements_are_unused:diag(6198,e.DiagnosticCategory.Error,"All_destructured_elements_are_unused_6198","All destructured elements are unused.",true),All_variables_are_unused:diag(6199,e.DiagnosticCategory.Error,"All_variables_are_unused_6199","All variables are unused.",true),Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0:diag(6200,e.DiagnosticCategory.Error,"Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0_6200","Definitions of the following identifiers conflict with those in another file: {0}"),Conflicts_are_in_this_file:diag(6201,e.DiagnosticCategory.Message,"Conflicts_are_in_this_file_6201","Conflicts are in this file."),_0_was_also_declared_here:diag(6203,e.DiagnosticCategory.Message,"_0_was_also_declared_here_6203","'{0}' was also declared here."),and_here:diag(6204,e.DiagnosticCategory.Message,"and_here_6204","and here."),All_type_parameters_are_unused:diag(6205,e.DiagnosticCategory.Error,"All_type_parameters_are_unused_6205","All type parameters are unused"),package_json_has_a_typesVersions_field_with_version_specific_path_mappings:diag(6206,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_field_with_version_specific_path_mappings_6206","'package.json' has a 'typesVersions' field with version-specific path mappings."),package_json_does_not_have_a_typesVersions_entry_that_matches_version_0:diag(6207,e.DiagnosticCategory.Message,"package_json_does_not_have_a_typesVersions_entry_that_matches_version_0_6207","'package.json' does not have a 'typesVersions' entry that matches version '{0}'."),package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2:diag(6208,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_ma_6208","'package.json' has a 'typesVersions' entry '{0}' that matches compiler version '{1}', looking for a pattern to match module name '{2}'."),package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range:diag(6209,e.DiagnosticCategory.Message,"package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range_6209","'package.json' has a 'typesVersions' entry '{0}' that is not a valid semver range."),An_argument_for_0_was_not_provided:diag(6210,e.DiagnosticCategory.Message,"An_argument_for_0_was_not_provided_6210","An argument for '{0}' was not provided."),An_argument_matching_this_binding_pattern_was_not_provided:diag(6211,e.DiagnosticCategory.Message,"An_argument_matching_this_binding_pattern_was_not_provided_6211","An argument matching this binding pattern was not provided."),Did_you_mean_to_call_this_expression:diag(6212,e.DiagnosticCategory.Message,"Did_you_mean_to_call_this_expression_6212","Did you mean to call this expression?"),Did_you_mean_to_use_new_with_this_expression:diag(6213,e.DiagnosticCategory.Message,"Did_you_mean_to_use_new_with_this_expression_6213","Did you mean to use 'new' with this expression?"),Enable_strict_bind_call_and_apply_methods_on_functions:diag(6214,e.DiagnosticCategory.Message,"Enable_strict_bind_call_and_apply_methods_on_functions_6214","Enable strict 'bind', 'call', and 'apply' methods on functions."),Using_compiler_options_of_project_reference_redirect_0:diag(6215,e.DiagnosticCategory.Message,"Using_compiler_options_of_project_reference_redirect_0_6215","Using compiler options of project reference redirect '{0}'."),Found_1_error:diag(6216,e.DiagnosticCategory.Message,"Found_1_error_6216","Found 1 error."),Found_0_errors:diag(6217,e.DiagnosticCategory.Message,"Found_0_errors_6217","Found {0} errors."),Projects_to_reference:diag(6300,e.DiagnosticCategory.Message,"Projects_to_reference_6300","Projects to reference"),Enable_project_compilation:diag(6302,e.DiagnosticCategory.Message,"Enable_project_compilation_6302","Enable project compilation"),Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0:diag(6202,e.DiagnosticCategory.Error,"Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0_6202","Project references may not form a circular graph. Cycle detected: {0}"),Composite_projects_may_not_disable_declaration_emit:diag(6304,e.DiagnosticCategory.Error,"Composite_projects_may_not_disable_declaration_emit_6304","Composite projects may not disable declaration emit."),Output_file_0_has_not_been_built_from_source_file_1:diag(6305,e.DiagnosticCategory.Error,"Output_file_0_has_not_been_built_from_source_file_1_6305","Output file '{0}' has not been built from source file '{1}'."),Referenced_project_0_must_have_setting_composite_Colon_true:diag(6306,e.DiagnosticCategory.Error,"Referenced_project_0_must_have_setting_composite_Colon_true_6306","Referenced project '{0}' must have setting \"composite\": true."),File_0_is_not_in_project_file_list_Projects_must_list_all_files_or_use_an_include_pattern:diag(6307,e.DiagnosticCategory.Error,"File_0_is_not_in_project_file_list_Projects_must_list_all_files_or_use_an_include_pattern_6307","File '{0}' is not in project file list. Projects must list all files or use an 'include' pattern."),Cannot_prepend_project_0_because_it_does_not_have_outFile_set:diag(6308,e.DiagnosticCategory.Error,"Cannot_prepend_project_0_because_it_does_not_have_outFile_set_6308","Cannot prepend project '{0}' because it does not have 'outFile' set"),Output_file_0_from_project_1_does_not_exist:diag(6309,e.DiagnosticCategory.Error,"Output_file_0_from_project_1_does_not_exist_6309","Output file '{0}' from project '{1}' does not exist"),Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2:diag(6350,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2_6350","Project '{0}' is out of date because oldest output '{1}' is older than newest input '{2}'"),Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2:diag(6351,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2_6351","Project '{0}' is up to date because newest input '{1}' is older than oldest output '{2}'"),Project_0_is_out_of_date_because_output_file_1_does_not_exist:diag(6352,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_output_file_1_does_not_exist_6352","Project '{0}' is out of date because output file '{1}' does not exist"),Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date:diag(6353,e.DiagnosticCategory.Message,"Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date_6353","Project '{0}' is out of date because its dependency '{1}' is out of date"),Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies:diag(6354,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies_6354","Project '{0}' is up to date with .d.ts files from its dependencies"),Projects_in_this_build_Colon_0:diag(6355,e.DiagnosticCategory.Message,"Projects_in_this_build_Colon_0_6355","Projects in this build: {0}"),A_non_dry_build_would_delete_the_following_files_Colon_0:diag(6356,e.DiagnosticCategory.Message,"A_non_dry_build_would_delete_the_following_files_Colon_0_6356","A non-dry build would delete the following files: {0}"),A_non_dry_build_would_build_project_0:diag(6357,e.DiagnosticCategory.Message,"A_non_dry_build_would_build_project_0_6357","A non-dry build would build project '{0}'"),Building_project_0:diag(6358,e.DiagnosticCategory.Message,"Building_project_0_6358","Building project '{0}'..."),Updating_output_timestamps_of_project_0:diag(6359,e.DiagnosticCategory.Message,"Updating_output_timestamps_of_project_0_6359","Updating output timestamps of project '{0}'..."),delete_this_Project_0_is_up_to_date_because_it_was_previously_built:diag(6360,e.DiagnosticCategory.Message,"delete_this_Project_0_is_up_to_date_because_it_was_previously_built_6360","delete this - Project '{0}' is up to date because it was previously built"),Project_0_is_up_to_date:diag(6361,e.DiagnosticCategory.Message,"Project_0_is_up_to_date_6361","Project '{0}' is up to date"),Skipping_build_of_project_0_because_its_dependency_1_has_errors:diag(6362,e.DiagnosticCategory.Message,"Skipping_build_of_project_0_because_its_dependency_1_has_errors_6362","Skipping build of project '{0}' because its dependency '{1}' has errors"),Project_0_can_t_be_built_because_its_dependency_1_has_errors:diag(6363,e.DiagnosticCategory.Message,"Project_0_can_t_be_built_because_its_dependency_1_has_errors_6363","Project '{0}' can't be built because its dependency '{1}' has errors"),Build_one_or_more_projects_and_their_dependencies_if_out_of_date:diag(6364,e.DiagnosticCategory.Message,"Build_one_or_more_projects_and_their_dependencies_if_out_of_date_6364","Build one or more projects and their dependencies, if out of date"),Delete_the_outputs_of_all_projects:diag(6365,e.DiagnosticCategory.Message,"Delete_the_outputs_of_all_projects_6365","Delete the outputs of all projects"),Enable_verbose_logging:diag(6366,e.DiagnosticCategory.Message,"Enable_verbose_logging_6366","Enable verbose logging"),Show_what_would_be_built_or_deleted_if_specified_with_clean:diag(6367,e.DiagnosticCategory.Message,"Show_what_would_be_built_or_deleted_if_specified_with_clean_6367","Show what would be built (or deleted, if specified with '--clean')"),Build_all_projects_including_those_that_appear_to_be_up_to_date:diag(6368,e.DiagnosticCategory.Message,"Build_all_projects_including_those_that_appear_to_be_up_to_date_6368","Build all projects, including those that appear to be up to date"),Option_build_must_be_the_first_command_line_argument:diag(6369,e.DiagnosticCategory.Error,"Option_build_must_be_the_first_command_line_argument_6369","Option '--build' must be the first command line argument."),Options_0_and_1_cannot_be_combined:diag(6370,e.DiagnosticCategory.Error,"Options_0_and_1_cannot_be_combined_6370","Options '{0}' and '{1}' cannot be combined."),The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1:diag(6500,e.DiagnosticCategory.Message,"The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1_6500","The expected type comes from property '{0}' which is declared here on type '{1}'"),The_expected_type_comes_from_this_index_signature:diag(6501,e.DiagnosticCategory.Message,"The_expected_type_comes_from_this_index_signature_6501","The expected type comes from this index signature."),The_expected_type_comes_from_the_return_type_of_this_signature:diag(6502,e.DiagnosticCategory.Message,"The_expected_type_comes_from_the_return_type_of_this_signature_6502","The expected type comes from the return type of this signature."),Variable_0_implicitly_has_an_1_type:diag(7005,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_an_1_type_7005","Variable '{0}' implicitly has an '{1}' type."),Parameter_0_implicitly_has_an_1_type:diag(7006,e.DiagnosticCategory.Error,"Parameter_0_implicitly_has_an_1_type_7006","Parameter '{0}' implicitly has an '{1}' type."),Member_0_implicitly_has_an_1_type:diag(7008,e.DiagnosticCategory.Error,"Member_0_implicitly_has_an_1_type_7008","Member '{0}' implicitly has an '{1}' type."),new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type:diag(7009,e.DiagnosticCategory.Error,"new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type_7009","'new' expression, whose target lacks a construct signature, implicitly has an 'any' type."),_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:diag(7010,e.DiagnosticCategory.Error,"_0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type_7010","'{0}', which lacks return-type annotation, implicitly has an '{1}' return type."),Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:diag(7011,e.DiagnosticCategory.Error,"Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7011","Function expression, which lacks return-type annotation, implicitly has an '{0}' return type."),Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:diag(7013,e.DiagnosticCategory.Error,"Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7013","Construct signature, which lacks return-type annotation, implicitly has an 'any' return type."),Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type:diag(7014,e.DiagnosticCategory.Error,"Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type_7014","Function type, which lacks return-type annotation, implicitly has an '{0}' return type."),Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number:diag(7015,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number_7015","Element implicitly has an 'any' type because index expression is not of type 'number'."),Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type:diag(7016,e.DiagnosticCategory.Error,"Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type_7016","Could not find a declaration file for module '{0}'. '{1}' implicitly has an 'any' type."),Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature:diag(7017,e.DiagnosticCategory.Error,"Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature_7017","Element implicitly has an 'any' type because type '{0}' has no index signature."),Object_literal_s_property_0_implicitly_has_an_1_type:diag(7018,e.DiagnosticCategory.Error,"Object_literal_s_property_0_implicitly_has_an_1_type_7018","Object literal's property '{0}' implicitly has an '{1}' type."),Rest_parameter_0_implicitly_has_an_any_type:diag(7019,e.DiagnosticCategory.Error,"Rest_parameter_0_implicitly_has_an_any_type_7019","Rest parameter '{0}' implicitly has an 'any[]' type."),Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type:diag(7020,e.DiagnosticCategory.Error,"Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type_7020","Call signature, which lacks return-type annotation, implicitly has an 'any' return type."),_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer:diag(7022,e.DiagnosticCategory.Error,"_0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or__7022","'{0}' implicitly has type 'any' because it does not have a type annotation and is referenced directly or indirectly in its own initializer."),_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:diag(7023,e.DiagnosticCategory.Error,"_0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_reference_7023","'{0}' implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions:diag(7024,e.DiagnosticCategory.Error,"Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_ref_7024","Function implicitly has return type 'any' because it does not have a return type annotation and is referenced directly or indirectly in one of its return expressions."),Generator_implicitly_has_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type:diag(7025,e.DiagnosticCategory.Error,"Generator_implicitly_has_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_typ_7025","Generator implicitly has type '{0}' because it does not yield any values. Consider supplying a return type."),JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists:diag(7026,e.DiagnosticCategory.Error,"JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists_7026","JSX element implicitly has type 'any' because no interface 'JSX.{0}' exists."),Unreachable_code_detected:diag(7027,e.DiagnosticCategory.Error,"Unreachable_code_detected_7027","Unreachable code detected.",true),Unused_label:diag(7028,e.DiagnosticCategory.Error,"Unused_label_7028","Unused label.",true),Fallthrough_case_in_switch:diag(7029,e.DiagnosticCategory.Error,"Fallthrough_case_in_switch_7029","Fallthrough case in switch."),Not_all_code_paths_return_a_value:diag(7030,e.DiagnosticCategory.Error,"Not_all_code_paths_return_a_value_7030","Not all code paths return a value."),Binding_element_0_implicitly_has_an_1_type:diag(7031,e.DiagnosticCategory.Error,"Binding_element_0_implicitly_has_an_1_type_7031","Binding element '{0}' implicitly has an '{1}' type."),Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation:diag(7032,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation_7032","Property '{0}' implicitly has type 'any', because its set accessor lacks a parameter type annotation."),Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation:diag(7033,e.DiagnosticCategory.Error,"Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation_7033","Property '{0}' implicitly has type 'any', because its get accessor lacks a return type annotation."),Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined:diag(7034,e.DiagnosticCategory.Error,"Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined_7034","Variable '{0}' implicitly has type '{1}' in some locations where its type cannot be determined."),Try_npm_install_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0:diag(7035,e.DiagnosticCategory.Error,"Try_npm_install_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_mod_7035","Try `npm install @types/{1}` if it exists or add a new declaration (.d.ts) file containing `declare module '{0}';`"),Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0:diag(7036,e.DiagnosticCategory.Error,"Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0_7036","Dynamic import's specifier must be of type 'string', but here has type '{0}'."),Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports:diag(7037,e.DiagnosticCategory.Message,"Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for__7037","Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'."),Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead:diag(7038,e.DiagnosticCategory.Message,"Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cau_7038","Type originates at this import. A namespace-style import cannot be called or constructed, and will cause a failure at runtime. Consider using a default import or import require here instead."),Mapped_object_type_implicitly_has_an_any_template_type:diag(7039,e.DiagnosticCategory.Error,"Mapped_object_type_implicitly_has_an_any_template_type_7039","Mapped object type implicitly has an 'any' template type."),If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1:diag(7040,e.DiagnosticCategory.Error,"If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_S_7040","If the '{0}' package actually exposes this module, consider sending a pull request to amend 'https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/{1}`"),The_containing_arrow_function_captures_the_global_value_of_this_which_implicitly_has_type_any:diag(7041,e.DiagnosticCategory.Error,"The_containing_arrow_function_captures_the_global_value_of_this_which_implicitly_has_type_any_7041","The containing arrow function captures the global value of 'this' which implicitly has type 'any'."),Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used:diag(7042,e.DiagnosticCategory.Error,"Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used_7042","Module '{0}' was resolved to '{1}', but '--resolveJsonModule' is not used."),Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:diag(7043,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7043","Variable '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:diag(7044,e.DiagnosticCategory.Suggestion,"Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7044","Parameter '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage:diag(7045,e.DiagnosticCategory.Suggestion,"Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage_7045","Member '{0}' implicitly has an '{1}' type, but a better type may be inferred from usage."),Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage:diag(7046,e.DiagnosticCategory.Suggestion,"Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage_7046","Variable '{0}' implicitly has type '{1}' in some locations, but a better type may be inferred from usage."),Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:diag(7047,e.DiagnosticCategory.Suggestion,"Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage_7047","Rest parameter '{0}' implicitly has an 'any[]' type, but a better type may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage:diag(7048,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage_7048","Property '{0}' implicitly has type 'any', but a better type for its get accessor may be inferred from usage."),Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage:diag(7049,e.DiagnosticCategory.Suggestion,"Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage_7049","Property '{0}' implicitly has type 'any', but a better type for its set accessor may be inferred from usage."),_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage:diag(7050,e.DiagnosticCategory.Suggestion,"_0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage_7050","'{0}' implicitly has an '{1}' return type, but a better type may be inferred from usage."),Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1:diag(7051,e.DiagnosticCategory.Error,"Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1_7051","Parameter has a name but no type. Did you mean '{0}: {1}'?"),You_cannot_rename_this_element:diag(8e3,e.DiagnosticCategory.Error,"You_cannot_rename_this_element_8000","You cannot rename this element."),You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library:diag(8001,e.DiagnosticCategory.Error,"You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library_8001","You cannot rename elements that are defined in the standard TypeScript library."),import_can_only_be_used_in_a_ts_file:diag(8002,e.DiagnosticCategory.Error,"import_can_only_be_used_in_a_ts_file_8002","'import ... =' can only be used in a .ts file."),export_can_only_be_used_in_a_ts_file:diag(8003,e.DiagnosticCategory.Error,"export_can_only_be_used_in_a_ts_file_8003","'export=' can only be used in a .ts file."),type_parameter_declarations_can_only_be_used_in_a_ts_file:diag(8004,e.DiagnosticCategory.Error,"type_parameter_declarations_can_only_be_used_in_a_ts_file_8004","'type parameter declarations' can only be used in a .ts file."),implements_clauses_can_only_be_used_in_a_ts_file:diag(8005,e.DiagnosticCategory.Error,"implements_clauses_can_only_be_used_in_a_ts_file_8005","'implements clauses' can only be used in a .ts file."),interface_declarations_can_only_be_used_in_a_ts_file:diag(8006,e.DiagnosticCategory.Error,"interface_declarations_can_only_be_used_in_a_ts_file_8006","'interface declarations' can only be used in a .ts file."),module_declarations_can_only_be_used_in_a_ts_file:diag(8007,e.DiagnosticCategory.Error,"module_declarations_can_only_be_used_in_a_ts_file_8007","'module declarations' can only be used in a .ts file."),type_aliases_can_only_be_used_in_a_ts_file:diag(8008,e.DiagnosticCategory.Error,"type_aliases_can_only_be_used_in_a_ts_file_8008","'type aliases' can only be used in a .ts file."),_0_can_only_be_used_in_a_ts_file:diag(8009,e.DiagnosticCategory.Error,"_0_can_only_be_used_in_a_ts_file_8009","'{0}' can only be used in a .ts file."),types_can_only_be_used_in_a_ts_file:diag(8010,e.DiagnosticCategory.Error,"types_can_only_be_used_in_a_ts_file_8010","'types' can only be used in a .ts file."),type_arguments_can_only_be_used_in_a_ts_file:diag(8011,e.DiagnosticCategory.Error,"type_arguments_can_only_be_used_in_a_ts_file_8011","'type arguments' can only be used in a .ts file."),parameter_modifiers_can_only_be_used_in_a_ts_file:diag(8012,e.DiagnosticCategory.Error,"parameter_modifiers_can_only_be_used_in_a_ts_file_8012","'parameter modifiers' can only be used in a .ts file."),non_null_assertions_can_only_be_used_in_a_ts_file:diag(8013,e.DiagnosticCategory.Error,"non_null_assertions_can_only_be_used_in_a_ts_file_8013","'non-null assertions' can only be used in a .ts file."),enum_declarations_can_only_be_used_in_a_ts_file:diag(8015,e.DiagnosticCategory.Error,"enum_declarations_can_only_be_used_in_a_ts_file_8015","'enum declarations' can only be used in a .ts file."),type_assertion_expressions_can_only_be_used_in_a_ts_file:diag(8016,e.DiagnosticCategory.Error,"type_assertion_expressions_can_only_be_used_in_a_ts_file_8016","'type assertion expressions' can only be used in a .ts file."),Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0:diag(8017,e.DiagnosticCategory.Error,"Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0_8017","Octal literal types must use ES2015 syntax. Use the syntax '{0}'."),Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0:diag(8018,e.DiagnosticCategory.Error,"Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0_8018","Octal literals are not allowed in enums members initializer. Use the syntax '{0}'."),Report_errors_in_js_files:diag(8019,e.DiagnosticCategory.Message,"Report_errors_in_js_files_8019","Report errors in .js files."),JSDoc_types_can_only_be_used_inside_documentation_comments:diag(8020,e.DiagnosticCategory.Error,"JSDoc_types_can_only_be_used_inside_documentation_comments_8020","JSDoc types can only be used inside documentation comments."),JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags:diag(8021,e.DiagnosticCategory.Error,"JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags_8021","JSDoc '@typedef' tag should either have a type annotation or be followed by '@property' or '@member' tags."),JSDoc_0_is_not_attached_to_a_class:diag(8022,e.DiagnosticCategory.Error,"JSDoc_0_is_not_attached_to_a_class_8022","JSDoc '@{0}' is not attached to a class."),JSDoc_0_1_does_not_match_the_extends_2_clause:diag(8023,e.DiagnosticCategory.Error,"JSDoc_0_1_does_not_match_the_extends_2_clause_8023","JSDoc '@{0} {1}' does not match the 'extends {2}' clause."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name:diag(8024,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_8024","JSDoc '@param' tag has name '{0}', but there is no parameter with that name."),Class_declarations_cannot_have_more_than_one_augments_or_extends_tag:diag(8025,e.DiagnosticCategory.Error,"Class_declarations_cannot_have_more_than_one_augments_or_extends_tag_8025","Class declarations cannot have more than one `@augments` or `@extends` tag."),Expected_0_type_arguments_provide_these_with_an_extends_tag:diag(8026,e.DiagnosticCategory.Error,"Expected_0_type_arguments_provide_these_with_an_extends_tag_8026","Expected {0} type arguments; provide these with an '@extends' tag."),Expected_0_1_type_arguments_provide_these_with_an_extends_tag:diag(8027,e.DiagnosticCategory.Error,"Expected_0_1_type_arguments_provide_these_with_an_extends_tag_8027","Expected {0}-{1} type arguments; provide these with an '@extends' tag."),JSDoc_may_only_appear_in_the_last_parameter_of_a_signature:diag(8028,e.DiagnosticCategory.Error,"JSDoc_may_only_appear_in_the_last_parameter_of_a_signature_8028","JSDoc '...' may only appear in the last parameter of a signature."),JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type:diag(8029,e.DiagnosticCategory.Error,"JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_h_8029","JSDoc '@param' tag has name '{0}', but there is no parameter with that name. It would match 'arguments' if it had an array type."),The_type_of_a_function_declaration_must_match_the_function_s_signature:diag(8030,e.DiagnosticCategory.Error,"The_type_of_a_function_declaration_must_match_the_function_s_signature_8030","The type of a function declaration must match the function's signature."),You_cannot_rename_a_module_via_a_global_import:diag(8031,e.DiagnosticCategory.Error,"You_cannot_rename_a_module_via_a_global_import_8031","You cannot rename a module via a global import."),Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_class_extends_clause:diag(9002,e.DiagnosticCategory.Error,"Only_identifiers_Slashqualified_names_with_optional_type_arguments_are_currently_supported_in_a_clas_9002","Only identifiers/qualified-names with optional type arguments are currently supported in a class 'extends' clause."),class_expressions_are_not_currently_supported:diag(9003,e.DiagnosticCategory.Error,"class_expressions_are_not_currently_supported_9003","'class' expressions are not currently supported."),Language_service_is_disabled:diag(9004,e.DiagnosticCategory.Error,"Language_service_is_disabled_9004","Language service is disabled."),JSX_attributes_must_only_be_assigned_a_non_empty_expression:diag(17e3,e.DiagnosticCategory.Error,"JSX_attributes_must_only_be_assigned_a_non_empty_expression_17000","JSX attributes must only be assigned a non-empty 'expression'."),JSX_elements_cannot_have_multiple_attributes_with_the_same_name:diag(17001,e.DiagnosticCategory.Error,"JSX_elements_cannot_have_multiple_attributes_with_the_same_name_17001","JSX elements cannot have multiple attributes with the same name."),Expected_corresponding_JSX_closing_tag_for_0:diag(17002,e.DiagnosticCategory.Error,"Expected_corresponding_JSX_closing_tag_for_0_17002","Expected corresponding JSX closing tag for '{0}'."),JSX_attribute_expected:diag(17003,e.DiagnosticCategory.Error,"JSX_attribute_expected_17003","JSX attribute expected."),Cannot_use_JSX_unless_the_jsx_flag_is_provided:diag(17004,e.DiagnosticCategory.Error,"Cannot_use_JSX_unless_the_jsx_flag_is_provided_17004","Cannot use JSX unless the '--jsx' flag is provided."),A_constructor_cannot_contain_a_super_call_when_its_class_extends_null:diag(17005,e.DiagnosticCategory.Error,"A_constructor_cannot_contain_a_super_call_when_its_class_extends_null_17005","A constructor cannot contain a 'super' call when its class extends 'null'."),An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:diag(17006,e.DiagnosticCategory.Error,"An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_ex_17006","An unary expression with the '{0}' operator is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses:diag(17007,e.DiagnosticCategory.Error,"A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Con_17007","A type assertion expression is not allowed in the left-hand side of an exponentiation expression. Consider enclosing the expression in parentheses."),JSX_element_0_has_no_corresponding_closing_tag:diag(17008,e.DiagnosticCategory.Error,"JSX_element_0_has_no_corresponding_closing_tag_17008","JSX element '{0}' has no corresponding closing tag."),super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class:diag(17009,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class_17009","'super' must be called before accessing 'this' in the constructor of a derived class."),Unknown_type_acquisition_option_0:diag(17010,e.DiagnosticCategory.Error,"Unknown_type_acquisition_option_0_17010","Unknown type acquisition option '{0}'."),super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class:diag(17011,e.DiagnosticCategory.Error,"super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class_17011","'super' must be called before accessing a property of 'super' in the constructor of a derived class."),_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2:diag(17012,e.DiagnosticCategory.Error,"_0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2_17012","'{0}' is not a valid meta-property for keyword '{1}'. Did you mean '{2}'?"),Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor:diag(17013,e.DiagnosticCategory.Error,"Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constru_17013","Meta-property '{0}' is only allowed in the body of a function declaration, function expression, or constructor."),JSX_fragment_has_no_corresponding_closing_tag:diag(17014,e.DiagnosticCategory.Error,"JSX_fragment_has_no_corresponding_closing_tag_17014","JSX fragment has no corresponding closing tag."),Expected_corresponding_closing_tag_for_JSX_fragment:diag(17015,e.DiagnosticCategory.Error,"Expected_corresponding_closing_tag_for_JSX_fragment_17015","Expected corresponding closing tag for JSX fragment."),JSX_fragment_is_not_supported_when_using_jsxFactory:diag(17016,e.DiagnosticCategory.Error,"JSX_fragment_is_not_supported_when_using_jsxFactory_17016","JSX fragment is not supported when using --jsxFactory"),JSX_fragment_is_not_supported_when_using_an_inline_JSX_factory_pragma:diag(17017,e.DiagnosticCategory.Error,"JSX_fragment_is_not_supported_when_using_an_inline_JSX_factory_pragma_17017","JSX fragment is not supported when using an inline JSX factory pragma"),Circularity_detected_while_resolving_configuration_Colon_0:diag(18e3,e.DiagnosticCategory.Error,"Circularity_detected_while_resolving_configuration_Colon_0_18000","Circularity detected while resolving configuration: {0}"),A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not:diag(18001,e.DiagnosticCategory.Error,"A_path_in_an_extends_option_must_be_relative_or_rooted_but_0_is_not_18001","A path in an 'extends' option must be relative or rooted, but '{0}' is not."),The_files_list_in_config_file_0_is_empty:diag(18002,e.DiagnosticCategory.Error,"The_files_list_in_config_file_0_is_empty_18002","The 'files' list in config file '{0}' is empty."),No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2:diag(18003,e.DiagnosticCategory.Error,"No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2_18003","No inputs were found in config file '{0}'. Specified 'include' paths were '{1}' and 'exclude' paths were '{2}'."),File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module:diag(80001,e.DiagnosticCategory.Suggestion,"File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module_80001","File is a CommonJS module; it may be converted to an ES6 module."),This_constructor_function_may_be_converted_to_a_class_declaration:diag(80002,e.DiagnosticCategory.Suggestion,"This_constructor_function_may_be_converted_to_a_class_declaration_80002","This constructor function may be converted to a class declaration."),Import_may_be_converted_to_a_default_import:diag(80003,e.DiagnosticCategory.Suggestion,"Import_may_be_converted_to_a_default_import_80003","Import may be converted to a default import."),JSDoc_types_may_be_moved_to_TypeScript_types:diag(80004,e.DiagnosticCategory.Suggestion,"JSDoc_types_may_be_moved_to_TypeScript_types_80004","JSDoc types may be moved to TypeScript types."),require_call_may_be_converted_to_an_import:diag(80005,e.DiagnosticCategory.Suggestion,"require_call_may_be_converted_to_an_import_80005","'require' call may be converted to an import."),This_may_be_converted_to_an_async_function:diag(80006,e.DiagnosticCategory.Suggestion,"This_may_be_converted_to_an_async_function_80006","This may be converted to an async function."),Add_missing_super_call:diag(90001,e.DiagnosticCategory.Message,"Add_missing_super_call_90001","Add missing 'super()' call"),Make_super_call_the_first_statement_in_the_constructor:diag(90002,e.DiagnosticCategory.Message,"Make_super_call_the_first_statement_in_the_constructor_90002","Make 'super()' call the first statement in the constructor"),Change_extends_to_implements:diag(90003,e.DiagnosticCategory.Message,"Change_extends_to_implements_90003","Change 'extends' to 'implements'"),Remove_declaration_for_Colon_0:diag(90004,e.DiagnosticCategory.Message,"Remove_declaration_for_Colon_0_90004","Remove declaration for: '{0}'"),Remove_import_from_0:diag(90005,e.DiagnosticCategory.Message,"Remove_import_from_0_90005","Remove import from '{0}'"),Implement_interface_0:diag(90006,e.DiagnosticCategory.Message,"Implement_interface_0_90006","Implement interface '{0}'"),Implement_inherited_abstract_class:diag(90007,e.DiagnosticCategory.Message,"Implement_inherited_abstract_class_90007","Implement inherited abstract class"),Add_0_to_unresolved_variable:diag(90008,e.DiagnosticCategory.Message,"Add_0_to_unresolved_variable_90008","Add '{0}.' to unresolved variable"),Remove_destructuring:diag(90009,e.DiagnosticCategory.Message,"Remove_destructuring_90009","Remove destructuring"),Remove_variable_statement:diag(90010,e.DiagnosticCategory.Message,"Remove_variable_statement_90010","Remove variable statement"),Remove_template_tag:diag(90011,e.DiagnosticCategory.Message,"Remove_template_tag_90011","Remove template tag"),Remove_type_parameters:diag(90012,e.DiagnosticCategory.Message,"Remove_type_parameters_90012","Remove type parameters"),Import_0_from_module_1:diag(90013,e.DiagnosticCategory.Message,"Import_0_from_module_1_90013","Import '{0}' from module \"{1}\""),Change_0_to_1:diag(90014,e.DiagnosticCategory.Message,"Change_0_to_1_90014","Change '{0}' to '{1}'"),Add_0_to_existing_import_declaration_from_1:diag(90015,e.DiagnosticCategory.Message,"Add_0_to_existing_import_declaration_from_1_90015","Add '{0}' to existing import declaration from \"{1}\""),Declare_property_0:diag(90016,e.DiagnosticCategory.Message,"Declare_property_0_90016","Declare property '{0}'"),Add_index_signature_for_property_0:diag(90017,e.DiagnosticCategory.Message,"Add_index_signature_for_property_0_90017","Add index signature for property '{0}'"),Disable_checking_for_this_file:diag(90018,e.DiagnosticCategory.Message,"Disable_checking_for_this_file_90018","Disable checking for this file"),Ignore_this_error_message:diag(90019,e.DiagnosticCategory.Message,"Ignore_this_error_message_90019","Ignore this error message"),Initialize_property_0_in_the_constructor:diag(90020,e.DiagnosticCategory.Message,"Initialize_property_0_in_the_constructor_90020","Initialize property '{0}' in the constructor"),Initialize_static_property_0:diag(90021,e.DiagnosticCategory.Message,"Initialize_static_property_0_90021","Initialize static property '{0}'"),Change_spelling_to_0:diag(90022,e.DiagnosticCategory.Message,"Change_spelling_to_0_90022","Change spelling to '{0}'"),Declare_method_0:diag(90023,e.DiagnosticCategory.Message,"Declare_method_0_90023","Declare method '{0}'"),Declare_static_method_0:diag(90024,e.DiagnosticCategory.Message,"Declare_static_method_0_90024","Declare static method '{0}'"),Prefix_0_with_an_underscore:diag(90025,e.DiagnosticCategory.Message,"Prefix_0_with_an_underscore_90025","Prefix '{0}' with an underscore"),Rewrite_as_the_indexed_access_type_0:diag(90026,e.DiagnosticCategory.Message,"Rewrite_as_the_indexed_access_type_0_90026","Rewrite as the indexed access type '{0}'"),Declare_static_property_0:diag(90027,e.DiagnosticCategory.Message,"Declare_static_property_0_90027","Declare static property '{0}'"),Call_decorator_expression:diag(90028,e.DiagnosticCategory.Message,"Call_decorator_expression_90028","Call decorator expression"),Add_async_modifier_to_containing_function:diag(90029,e.DiagnosticCategory.Message,"Add_async_modifier_to_containing_function_90029","Add async modifier to containing function"),Replace_infer_0_with_unknown:diag(90030,e.DiagnosticCategory.Message,"Replace_infer_0_with_unknown_90030","Replace 'infer {0}' with 'unknown'"),Replace_all_unused_infer_with_unknown:diag(90031,e.DiagnosticCategory.Message,"Replace_all_unused_infer_with_unknown_90031","Replace all unused 'infer' with 'unknown'"),Import_default_0_from_module_1:diag(90032,e.DiagnosticCategory.Message,"Import_default_0_from_module_1_90032","Import default '{0}' from module \"{1}\""),Add_default_import_0_to_existing_import_declaration_from_1:diag(90033,e.DiagnosticCategory.Message,"Add_default_import_0_to_existing_import_declaration_from_1_90033","Add default import '{0}' to existing import declaration from \"{1}\""),Add_parameter_name:diag(90034,e.DiagnosticCategory.Message,"Add_parameter_name_90034","Add parameter name"),Convert_function_to_an_ES2015_class:diag(95001,e.DiagnosticCategory.Message,"Convert_function_to_an_ES2015_class_95001","Convert function to an ES2015 class"),Convert_function_0_to_class:diag(95002,e.DiagnosticCategory.Message,"Convert_function_0_to_class_95002","Convert function '{0}' to class"),Extract_to_0_in_1:diag(95004,e.DiagnosticCategory.Message,"Extract_to_0_in_1_95004","Extract to {0} in {1}"),Extract_function:diag(95005,e.DiagnosticCategory.Message,"Extract_function_95005","Extract function"),Extract_constant:diag(95006,e.DiagnosticCategory.Message,"Extract_constant_95006","Extract constant"),Extract_to_0_in_enclosing_scope:diag(95007,e.DiagnosticCategory.Message,"Extract_to_0_in_enclosing_scope_95007","Extract to {0} in enclosing scope"),Extract_to_0_in_1_scope:diag(95008,e.DiagnosticCategory.Message,"Extract_to_0_in_1_scope_95008","Extract to {0} in {1} scope"),Annotate_with_type_from_JSDoc:diag(95009,e.DiagnosticCategory.Message,"Annotate_with_type_from_JSDoc_95009","Annotate with type from JSDoc"),Annotate_with_types_from_JSDoc:diag(95010,e.DiagnosticCategory.Message,"Annotate_with_types_from_JSDoc_95010","Annotate with types from JSDoc"),Infer_type_of_0_from_usage:diag(95011,e.DiagnosticCategory.Message,"Infer_type_of_0_from_usage_95011","Infer type of '{0}' from usage"),Infer_parameter_types_from_usage:diag(95012,e.DiagnosticCategory.Message,"Infer_parameter_types_from_usage_95012","Infer parameter types from usage"),Convert_to_default_import:diag(95013,e.DiagnosticCategory.Message,"Convert_to_default_import_95013","Convert to default import"),Install_0:diag(95014,e.DiagnosticCategory.Message,"Install_0_95014","Install '{0}'"),Replace_import_with_0:diag(95015,e.DiagnosticCategory.Message,"Replace_import_with_0_95015","Replace import with '{0}'."),Use_synthetic_default_member:diag(95016,e.DiagnosticCategory.Message,"Use_synthetic_default_member_95016","Use synthetic 'default' member."),Convert_to_ES6_module:diag(95017,e.DiagnosticCategory.Message,"Convert_to_ES6_module_95017","Convert to ES6 module"),Add_undefined_type_to_property_0:diag(95018,e.DiagnosticCategory.Message,"Add_undefined_type_to_property_0_95018","Add 'undefined' type to property '{0}'"),Add_initializer_to_property_0:diag(95019,e.DiagnosticCategory.Message,"Add_initializer_to_property_0_95019","Add initializer to property '{0}'"),Add_definite_assignment_assertion_to_property_0:diag(95020,e.DiagnosticCategory.Message,"Add_definite_assignment_assertion_to_property_0_95020","Add definite assignment assertion to property '{0}'"),Add_all_missing_members:diag(95022,e.DiagnosticCategory.Message,"Add_all_missing_members_95022","Add all missing members"),Infer_all_types_from_usage:diag(95023,e.DiagnosticCategory.Message,"Infer_all_types_from_usage_95023","Infer all types from usage"),Delete_all_unused_declarations:diag(95024,e.DiagnosticCategory.Message,"Delete_all_unused_declarations_95024","Delete all unused declarations"),Prefix_all_unused_declarations_with_where_possible:diag(95025,e.DiagnosticCategory.Message,"Prefix_all_unused_declarations_with_where_possible_95025","Prefix all unused declarations with '_' where possible"),Fix_all_detected_spelling_errors:diag(95026,e.DiagnosticCategory.Message,"Fix_all_detected_spelling_errors_95026","Fix all detected spelling errors"),Add_initializers_to_all_uninitialized_properties:diag(95027,e.DiagnosticCategory.Message,"Add_initializers_to_all_uninitialized_properties_95027","Add initializers to all uninitialized properties"),Add_definite_assignment_assertions_to_all_uninitialized_properties:diag(95028,e.DiagnosticCategory.Message,"Add_definite_assignment_assertions_to_all_uninitialized_properties_95028","Add definite assignment assertions to all uninitialized properties"),Add_undefined_type_to_all_uninitialized_properties:diag(95029,e.DiagnosticCategory.Message,"Add_undefined_type_to_all_uninitialized_properties_95029","Add undefined type to all uninitialized properties"),Change_all_jsdoc_style_types_to_TypeScript:diag(95030,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_95030","Change all jsdoc-style types to TypeScript"),Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types:diag(95031,e.DiagnosticCategory.Message,"Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types_95031","Change all jsdoc-style types to TypeScript (and add '| undefined' to nullable types)"),Implement_all_unimplemented_interfaces:diag(95032,e.DiagnosticCategory.Message,"Implement_all_unimplemented_interfaces_95032","Implement all unimplemented interfaces"),Install_all_missing_types_packages:diag(95033,e.DiagnosticCategory.Message,"Install_all_missing_types_packages_95033","Install all missing types packages"),Rewrite_all_as_indexed_access_types:diag(95034,e.DiagnosticCategory.Message,"Rewrite_all_as_indexed_access_types_95034","Rewrite all as indexed access types"),Convert_all_to_default_imports:diag(95035,e.DiagnosticCategory.Message,"Convert_all_to_default_imports_95035","Convert all to default imports"),Make_all_super_calls_the_first_statement_in_their_constructor:diag(95036,e.DiagnosticCategory.Message,"Make_all_super_calls_the_first_statement_in_their_constructor_95036","Make all 'super()' calls the first statement in their constructor"),Add_qualifier_to_all_unresolved_variables_matching_a_member_name:diag(95037,e.DiagnosticCategory.Message,"Add_qualifier_to_all_unresolved_variables_matching_a_member_name_95037","Add qualifier to all unresolved variables matching a member name"),Change_all_extended_interfaces_to_implements:diag(95038,e.DiagnosticCategory.Message,"Change_all_extended_interfaces_to_implements_95038","Change all extended interfaces to 'implements'"),Add_all_missing_super_calls:diag(95039,e.DiagnosticCategory.Message,"Add_all_missing_super_calls_95039","Add all missing super calls"),Implement_all_inherited_abstract_classes:diag(95040,e.DiagnosticCategory.Message,"Implement_all_inherited_abstract_classes_95040","Implement all inherited abstract classes"),Add_all_missing_async_modifiers:diag(95041,e.DiagnosticCategory.Message,"Add_all_missing_async_modifiers_95041","Add all missing 'async' modifiers"),Add_ts_ignore_to_all_error_messages:diag(95042,e.DiagnosticCategory.Message,"Add_ts_ignore_to_all_error_messages_95042","Add '@ts-ignore' to all error messages"),Annotate_everything_with_types_from_JSDoc:diag(95043,e.DiagnosticCategory.Message,"Annotate_everything_with_types_from_JSDoc_95043","Annotate everything with types from JSDoc"),Add_to_all_uncalled_decorators:diag(95044,e.DiagnosticCategory.Message,"Add_to_all_uncalled_decorators_95044","Add '()' to all uncalled decorators"),Convert_all_constructor_functions_to_classes:diag(95045,e.DiagnosticCategory.Message,"Convert_all_constructor_functions_to_classes_95045","Convert all constructor functions to classes"),Generate_get_and_set_accessors:diag(95046,e.DiagnosticCategory.Message,"Generate_get_and_set_accessors_95046","Generate 'get' and 'set' accessors"),Convert_require_to_import:diag(95047,e.DiagnosticCategory.Message,"Convert_require_to_import_95047","Convert 'require' to 'import'"),Convert_all_require_to_import:diag(95048,e.DiagnosticCategory.Message,"Convert_all_require_to_import_95048","Convert all 'require' to 'import'"),Move_to_a_new_file:diag(95049,e.DiagnosticCategory.Message,"Move_to_a_new_file_95049","Move to a new file"),Remove_unreachable_code:diag(95050,e.DiagnosticCategory.Message,"Remove_unreachable_code_95050","Remove unreachable code"),Remove_all_unreachable_code:diag(95051,e.DiagnosticCategory.Message,"Remove_all_unreachable_code_95051","Remove all unreachable code"),Add_missing_typeof:diag(95052,e.DiagnosticCategory.Message,"Add_missing_typeof_95052","Add missing 'typeof'"),Remove_unused_label:diag(95053,e.DiagnosticCategory.Message,"Remove_unused_label_95053","Remove unused label"),Remove_all_unused_labels:diag(95054,e.DiagnosticCategory.Message,"Remove_all_unused_labels_95054","Remove all unused labels"),Convert_0_to_mapped_object_type:diag(95055,e.DiagnosticCategory.Message,"Convert_0_to_mapped_object_type_95055","Convert '{0}' to mapped object type"),Convert_namespace_import_to_named_imports:diag(95056,e.DiagnosticCategory.Message,"Convert_namespace_import_to_named_imports_95056","Convert namespace import to named imports"),Convert_named_imports_to_namespace_import:diag(95057,e.DiagnosticCategory.Message,"Convert_named_imports_to_namespace_import_95057","Convert named imports to namespace import"),Add_or_remove_braces_in_an_arrow_function:diag(95058,e.DiagnosticCategory.Message,"Add_or_remove_braces_in_an_arrow_function_95058","Add or remove braces in an arrow function"),Add_braces_to_arrow_function:diag(95059,e.DiagnosticCategory.Message,"Add_braces_to_arrow_function_95059","Add braces to arrow function"),Remove_braces_from_arrow_function:diag(95060,e.DiagnosticCategory.Message,"Remove_braces_from_arrow_function_95060","Remove braces from arrow function"),Convert_default_export_to_named_export:diag(95061,e.DiagnosticCategory.Message,"Convert_default_export_to_named_export_95061","Convert default export to named export"),Convert_named_export_to_default_export:diag(95062,e.DiagnosticCategory.Message,"Convert_named_export_to_default_export_95062","Convert named export to default export"),Add_missing_enum_member_0:diag(95063,e.DiagnosticCategory.Message,"Add_missing_enum_member_0_95063","Add missing enum member '{0}'"),Add_all_missing_imports:diag(95064,e.DiagnosticCategory.Message,"Add_all_missing_imports_95064","Add all missing imports"),Convert_to_async_function:diag(95065,e.DiagnosticCategory.Message,"Convert_to_async_function_95065","Convert to async function"),Convert_all_to_async_functions:diag(95066,e.DiagnosticCategory.Message,"Convert_all_to_async_functions_95066","Convert all to async functions"),Generate_types_for_0:diag(95067,e.DiagnosticCategory.Message,"Generate_types_for_0_95067","Generate types for '{0}'"),Generate_types_for_all_packages_without_types:diag(95068,e.DiagnosticCategory.Message,"Generate_types_for_all_packages_without_types_95068","Generate types for all packages without types"),Add_unknown_conversion_for_non_overlapping_types:diag(95069,e.DiagnosticCategory.Message,"Add_unknown_conversion_for_non_overlapping_types_95069","Add 'unknown' conversion for non-overlapping types"),Add_unknown_to_all_conversions_of_non_overlapping_types:diag(95070,e.DiagnosticCategory.Message,"Add_unknown_to_all_conversions_of_non_overlapping_types_95070","Add 'unknown' to all conversions of non-overlapping types"),Add_missing_new_operator_to_call:diag(95071,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_call_95071","Add missing 'new' operator to call"),Add_missing_new_operator_to_all_calls:diag(95072,e.DiagnosticCategory.Message,"Add_missing_new_operator_to_all_calls_95072","Add missing 'new' operator to all calls"),Add_names_to_all_parameters_without_names:diag(95073,e.DiagnosticCategory.Message,"Add_names_to_all_parameters_without_names_95073","Add names to all parameters without names")}})(s||(s={}));var s;(function(e){var t;function tokenIsIdentifierOrKeyword(e){return e>=72}e.tokenIsIdentifierOrKeyword=tokenIsIdentifierOrKeyword;function tokenIsIdentifierOrKeywordOrGreaterThan(e){return e===30||tokenIsIdentifierOrKeyword(e)}e.tokenIsIdentifierOrKeywordOrGreaterThan=tokenIsIdentifierOrKeywordOrGreaterThan;var r=(t={abstract:118,any:120,as:119,bigint:146,boolean:123,break:73,case:74,catch:75,class:76,continue:78,const:77},t[""+"constructor"]=124,t.debugger=79,t.declare=125,t.default=80,t.delete=81,t.do=82,t.else=83,t.enum=84,t.export=85,t.extends=86,t.false=87,t.finally=88,t.for=89,t.from=144,t.function=90,t.get=126,t.if=91,t.implements=109,t.import=92,t.in=93,t.infer=127,t.instanceof=94,t.interface=110,t.is=128,t.keyof=129,t.let=111,t.module=130,t.namespace=131,t.never=132,t.new=95,t.null=96,t.number=135,t.object=136,t.package=112,t.private=113,t.protected=114,t.public=115,t.readonly=133,t.require=134,t.global=145,t.return=97,t.set=137,t.static=116,t.string=138,t.super=98,t.switch=99,t.symbol=139,t.this=100,t.throw=101,t.true=102,t.try=103,t.type=140,t.typeof=104,t.undefined=141,t.unique=142,t.unknown=143,t.var=105,t.void=106,t.while=107,t.with=108,t.yield=117,t.async=121,t.await=122,t.of=147,t);var i=e.createMapFromTemplate(r);var a=e.createMapFromTemplate(n({},r,{"{":18,"}":19,"(":20,")":21,"[":22,"]":23,".":24,"...":25,";":26,",":27,"<":28,">":30,"<=":31,">=":32,"==":33,"!=":34,"===":35,"!==":36,"=>":37,"+":38,"-":39,"**":41,"*":40,"/":42,"%":43,"++":44,"--":45,"<<":46,"</":29,">>":47,">>>":48,"&":49,"|":50,"^":51,"!":52,"~":53,"&&":54,"||":55,"?":56,":":57,"=":59,"+=":60,"-=":61,"*=":62,"**=":63,"/=":64,"%=":65,"<<=":66,">>=":67,">>>=":68,"&=":69,"|=":70,"^=":71,"@":58}));var o=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1569,1594,1600,1610,1649,1747,1749,1749,1765,1766,1786,1788,1808,1808,1810,1836,1920,1957,2309,2361,2365,2365,2384,2384,2392,2401,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2784,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2877,2877,2908,2909,2911,2913,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3294,3294,3296,3297,3333,3340,3342,3344,3346,3368,3370,3385,3424,3425,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3805,3840,3840,3904,3911,3913,3946,3976,3979,4096,4129,4131,4135,4137,4138,4176,4181,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6067,6176,6263,6272,6312,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8319,8319,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12329,12337,12341,12344,12346,12353,12436,12445,12446,12449,12538,12540,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65138,65140,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500];var s=[170,170,181,181,186,186,192,214,216,246,248,543,546,563,592,685,688,696,699,705,720,721,736,740,750,750,768,846,864,866,890,890,902,902,904,906,908,908,910,929,931,974,976,983,986,1011,1024,1153,1155,1158,1164,1220,1223,1224,1227,1228,1232,1269,1272,1273,1329,1366,1369,1369,1377,1415,1425,1441,1443,1465,1467,1469,1471,1471,1473,1474,1476,1476,1488,1514,1520,1522,1569,1594,1600,1621,1632,1641,1648,1747,1749,1756,1759,1768,1770,1773,1776,1788,1808,1836,1840,1866,1920,1968,2305,2307,2309,2361,2364,2381,2384,2388,2392,2403,2406,2415,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2492,2494,2500,2503,2504,2507,2509,2519,2519,2524,2525,2527,2531,2534,2545,2562,2562,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2649,2652,2654,2654,2662,2676,2689,2691,2693,2699,2701,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2784,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2870,2873,2876,2883,2887,2888,2891,2893,2902,2903,2908,2909,2911,2913,2918,2927,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,2997,2999,3001,3006,3010,3014,3016,3018,3021,3031,3031,3047,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3134,3140,3142,3144,3146,3149,3157,3158,3168,3169,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3262,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3297,3302,3311,3330,3331,3333,3340,3342,3344,3346,3368,3370,3385,3390,3395,3398,3400,3402,3405,3415,3415,3424,3425,3430,3439,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3805,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3946,3953,3972,3974,3979,3984,3991,3993,4028,4038,4038,4096,4129,4131,4135,4137,4138,4140,4146,4150,4153,4160,4169,4176,4185,4256,4293,4304,4342,4352,4441,4447,4514,4520,4601,4608,4614,4616,4678,4680,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4742,4744,4744,4746,4749,4752,4782,4784,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4814,4816,4822,4824,4846,4848,4878,4880,4880,4882,4885,4888,4894,4896,4934,4936,4954,4969,4977,5024,5108,5121,5740,5743,5750,5761,5786,5792,5866,6016,6099,6112,6121,6160,6169,6176,6263,6272,6313,7680,7835,7840,7929,7936,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8255,8256,8319,8319,8400,8412,8417,8417,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8497,8499,8505,8544,8579,12293,12295,12321,12335,12337,12341,12344,12346,12353,12436,12441,12442,12445,12446,12449,12542,12549,12588,12593,12686,12704,12727,13312,19893,19968,40869,40960,42124,44032,55203,63744,64045,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65056,65059,65075,65076,65101,65103,65136,65138,65140,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65381,65470,65474,65479,65482,65487,65490,65495,65498,65500];var c=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,880,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1162,1319,1329,1366,1369,1369,1377,1415,1488,1514,1520,1522,1568,1610,1646,1647,1649,1747,1749,1749,1765,1766,1774,1775,1786,1788,1791,1791,1808,1808,1810,1839,1869,1957,1969,1969,1994,2026,2036,2037,2042,2042,2048,2069,2074,2074,2084,2084,2088,2088,2112,2136,2208,2208,2210,2220,2308,2361,2365,2365,2384,2384,2392,2401,2417,2423,2425,2431,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2493,2493,2510,2510,2524,2525,2527,2529,2544,2545,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2649,2652,2654,2654,2674,2676,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2749,2749,2768,2768,2784,2785,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2877,2877,2908,2909,2911,2913,2929,2929,2947,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3024,3024,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3133,3160,3161,3168,3169,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3261,3261,3294,3294,3296,3297,3313,3314,3333,3340,3342,3344,3346,3386,3389,3389,3406,3406,3424,3425,3450,3455,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3585,3632,3634,3635,3648,3654,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3760,3762,3763,3773,3773,3776,3780,3782,3782,3804,3807,3840,3840,3904,3911,3913,3948,3976,3980,4096,4138,4159,4159,4176,4181,4186,4189,4193,4193,4197,4198,4206,4208,4213,4225,4238,4238,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5905,5920,5937,5952,5969,5984,5996,5998,6e3,6016,6067,6103,6103,6108,6108,6176,6263,6272,6312,6314,6314,6320,6389,6400,6428,6480,6509,6512,6516,6528,6571,6593,6599,6656,6678,6688,6740,6823,6823,6917,6963,6981,6987,7043,7072,7086,7087,7098,7141,7168,7203,7245,7247,7258,7293,7401,7404,7406,7409,7413,7414,7424,7615,7680,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8305,8305,8319,8319,8336,8348,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11502,11506,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11648,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11823,11823,12293,12295,12321,12329,12337,12341,12344,12348,12353,12438,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42527,42538,42539,42560,42606,42623,42647,42656,42735,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43009,43011,43013,43015,43018,43020,43042,43072,43123,43138,43187,43250,43255,43259,43259,43274,43301,43312,43334,43360,43388,43396,43442,43471,43471,43520,43560,43584,43586,43588,43595,43616,43638,43642,43642,43648,43695,43697,43697,43701,43702,43705,43709,43712,43712,43714,43714,43739,43741,43744,43754,43762,43764,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44002,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64285,64287,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65136,65140,65142,65276,65313,65338,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500];var u=[170,170,181,181,186,186,192,214,216,246,248,705,710,721,736,740,748,748,750,750,768,884,886,887,890,893,902,902,904,906,908,908,910,929,931,1013,1015,1153,1155,1159,1162,1319,1329,1366,1369,1369,1377,1415,1425,1469,1471,1471,1473,1474,1476,1477,1479,1479,1488,1514,1520,1522,1552,1562,1568,1641,1646,1747,1749,1756,1759,1768,1770,1788,1791,1791,1808,1866,1869,1969,1984,2037,2042,2042,2048,2093,2112,2139,2208,2208,2210,2220,2276,2302,2304,2403,2406,2415,2417,2423,2425,2431,2433,2435,2437,2444,2447,2448,2451,2472,2474,2480,2482,2482,2486,2489,2492,2500,2503,2504,2507,2510,2519,2519,2524,2525,2527,2531,2534,2545,2561,2563,2565,2570,2575,2576,2579,2600,2602,2608,2610,2611,2613,2614,2616,2617,2620,2620,2622,2626,2631,2632,2635,2637,2641,2641,2649,2652,2654,2654,2662,2677,2689,2691,2693,2701,2703,2705,2707,2728,2730,2736,2738,2739,2741,2745,2748,2757,2759,2761,2763,2765,2768,2768,2784,2787,2790,2799,2817,2819,2821,2828,2831,2832,2835,2856,2858,2864,2866,2867,2869,2873,2876,2884,2887,2888,2891,2893,2902,2903,2908,2909,2911,2915,2918,2927,2929,2929,2946,2947,2949,2954,2958,2960,2962,2965,2969,2970,2972,2972,2974,2975,2979,2980,2984,2986,2990,3001,3006,3010,3014,3016,3018,3021,3024,3024,3031,3031,3046,3055,3073,3075,3077,3084,3086,3088,3090,3112,3114,3123,3125,3129,3133,3140,3142,3144,3146,3149,3157,3158,3160,3161,3168,3171,3174,3183,3202,3203,3205,3212,3214,3216,3218,3240,3242,3251,3253,3257,3260,3268,3270,3272,3274,3277,3285,3286,3294,3294,3296,3299,3302,3311,3313,3314,3330,3331,3333,3340,3342,3344,3346,3386,3389,3396,3398,3400,3402,3406,3415,3415,3424,3427,3430,3439,3450,3455,3458,3459,3461,3478,3482,3505,3507,3515,3517,3517,3520,3526,3530,3530,3535,3540,3542,3542,3544,3551,3570,3571,3585,3642,3648,3662,3664,3673,3713,3714,3716,3716,3719,3720,3722,3722,3725,3725,3732,3735,3737,3743,3745,3747,3749,3749,3751,3751,3754,3755,3757,3769,3771,3773,3776,3780,3782,3782,3784,3789,3792,3801,3804,3807,3840,3840,3864,3865,3872,3881,3893,3893,3895,3895,3897,3897,3902,3911,3913,3948,3953,3972,3974,3991,3993,4028,4038,4038,4096,4169,4176,4253,4256,4293,4295,4295,4301,4301,4304,4346,4348,4680,4682,4685,4688,4694,4696,4696,4698,4701,4704,4744,4746,4749,4752,4784,4786,4789,4792,4798,4800,4800,4802,4805,4808,4822,4824,4880,4882,4885,4888,4954,4957,4959,4992,5007,5024,5108,5121,5740,5743,5759,5761,5786,5792,5866,5870,5872,5888,5900,5902,5908,5920,5940,5952,5971,5984,5996,5998,6e3,6002,6003,6016,6099,6103,6103,6108,6109,6112,6121,6155,6157,6160,6169,6176,6263,6272,6314,6320,6389,6400,6428,6432,6443,6448,6459,6470,6509,6512,6516,6528,6571,6576,6601,6608,6617,6656,6683,6688,6750,6752,6780,6783,6793,6800,6809,6823,6823,6912,6987,6992,7001,7019,7027,7040,7155,7168,7223,7232,7241,7245,7293,7376,7378,7380,7414,7424,7654,7676,7957,7960,7965,7968,8005,8008,8013,8016,8023,8025,8025,8027,8027,8029,8029,8031,8061,8064,8116,8118,8124,8126,8126,8130,8132,8134,8140,8144,8147,8150,8155,8160,8172,8178,8180,8182,8188,8204,8205,8255,8256,8276,8276,8305,8305,8319,8319,8336,8348,8400,8412,8417,8417,8421,8432,8450,8450,8455,8455,8458,8467,8469,8469,8473,8477,8484,8484,8486,8486,8488,8488,8490,8493,8495,8505,8508,8511,8517,8521,8526,8526,8544,8584,11264,11310,11312,11358,11360,11492,11499,11507,11520,11557,11559,11559,11565,11565,11568,11623,11631,11631,11647,11670,11680,11686,11688,11694,11696,11702,11704,11710,11712,11718,11720,11726,11728,11734,11736,11742,11744,11775,11823,11823,12293,12295,12321,12335,12337,12341,12344,12348,12353,12438,12441,12442,12445,12447,12449,12538,12540,12543,12549,12589,12593,12686,12704,12730,12784,12799,13312,19893,19968,40908,40960,42124,42192,42237,42240,42508,42512,42539,42560,42607,42612,42621,42623,42647,42655,42737,42775,42783,42786,42888,42891,42894,42896,42899,42912,42922,43e3,43047,43072,43123,43136,43204,43216,43225,43232,43255,43259,43259,43264,43309,43312,43347,43360,43388,43392,43456,43471,43481,43520,43574,43584,43597,43600,43609,43616,43638,43642,43643,43648,43714,43739,43741,43744,43759,43762,43766,43777,43782,43785,43790,43793,43798,43808,43814,43816,43822,43968,44010,44012,44013,44016,44025,44032,55203,55216,55238,55243,55291,63744,64109,64112,64217,64256,64262,64275,64279,64285,64296,64298,64310,64312,64316,64318,64318,64320,64321,64323,64324,64326,64433,64467,64829,64848,64911,64914,64967,65008,65019,65024,65039,65056,65062,65075,65076,65101,65103,65136,65140,65142,65276,65296,65305,65313,65338,65343,65343,65345,65370,65382,65470,65474,65479,65482,65487,65490,65495,65498,65500];function lookupInUnicodeMap(e,t){if(e<t[0]){return false}var r=0;var n=t.length;var i;while(r+1<n){i=r+(n-r)/2;i-=i%2;if(t[i]<=e&&e<=t[i+1]){return true}if(e<t[i]){n=i}else{r=i+2}}return false}function isUnicodeIdentifierStart(e,t){return t>=1?lookupInUnicodeMap(e,c):lookupInUnicodeMap(e,o)}e.isUnicodeIdentifierStart=isUnicodeIdentifierStart;function isUnicodeIdentifierPart(e,t){return t>=1?lookupInUnicodeMap(e,u):lookupInUnicodeMap(e,s)}function makeReverseMap(e){var t=[];e.forEach(function(e,r){t[e]=r});return t}var l=makeReverseMap(a);function tokenToString(e){return l[e]}e.tokenToString=tokenToString;function stringToToken(e){return a.get(e)}e.stringToToken=stringToToken;function computeLineStarts(e){var t=new Array;var r=0;var n=0;while(r<e.length){var i=e.charCodeAt(r);r++;switch(i){case 13:if(e.charCodeAt(r)===10){r++}case 10:t.push(n);n=r;break;default:if(i>127&&isLineBreak(i)){t.push(n);n=r}break}}t.push(n);return t}e.computeLineStarts=computeLineStarts;function getPositionOfLineAndCharacter(e,t,r){return computePositionOfLineAndCharacter(getLineStarts(e),t,r,e.text)}e.getPositionOfLineAndCharacter=getPositionOfLineAndCharacter;function getPositionOfLineAndCharacterWithEdits(e,t,r){return computePositionOfLineAndCharacter(getLineStarts(e),t,r,e.text,true)}e.getPositionOfLineAndCharacterWithEdits=getPositionOfLineAndCharacterWithEdits;function computePositionOfLineAndCharacter(t,r,n,i,a){if(r<0||r>=t.length){if(a){r=r<0?0:r>=t.length?t.length-1:r}else{e.Debug.fail("Bad line number. Line: "+r+", lineStarts.length: "+t.length+" , line map is correct? "+(i!==undefined?e.arraysEqual(t,computeLineStarts(i)):"unknown"))}}var o=t[r]+n;if(a){return o>t[r+1]?t[r+1]:typeof i==="string"&&o>i.length?i.length:o}if(r<t.length-1){e.Debug.assert(o<t[r+1])}else if(i!==undefined){e.Debug.assert(o<=i.length)}return o}e.computePositionOfLineAndCharacter=computePositionOfLineAndCharacter;function getLineStarts(e){return e.lineMap||(e.lineMap=computeLineStarts(e.text))}e.getLineStarts=getLineStarts;function computeLineAndCharacterOfPosition(t,r){var n=e.binarySearch(t,r,e.identity,e.compareValues);if(n<0){n=~n-1;e.Debug.assert(n!==-1,"position cannot precede the beginning of the file")}return{line:n,character:r-t[n]}}e.computeLineAndCharacterOfPosition=computeLineAndCharacterOfPosition;function getLineAndCharacterOfPosition(e,t){return computeLineAndCharacterOfPosition(getLineStarts(e),t)}e.getLineAndCharacterOfPosition=getLineAndCharacterOfPosition;function isWhiteSpaceLike(e){return isWhiteSpaceSingleLine(e)||isLineBreak(e)}e.isWhiteSpaceLike=isWhiteSpaceLike;function isWhiteSpaceSingleLine(e){return e===32||e===9||e===11||e===12||e===160||e===133||e===5760||e>=8192&&e<=8203||e===8239||e===8287||e===12288||e===65279}e.isWhiteSpaceSingleLine=isWhiteSpaceSingleLine;function isLineBreak(e){return e===10||e===13||e===8232||e===8233}e.isLineBreak=isLineBreak;function isDigit(e){return e>=48&&e<=57}function isOctalDigit(e){return e>=48&&e<=55}e.isOctalDigit=isOctalDigit;function couldStartTrivia(e,t){var r=e.charCodeAt(t);switch(r){case 13:case 10:case 9:case 11:case 12:case 32:case 47:case 60:case 124:case 61:case 62:return true;case 35:return t===0;default:return r>127}}e.couldStartTrivia=couldStartTrivia;function skipTrivia(t,r,n,i){if(i===void 0){i=false}if(e.positionIsSynthesized(r)){return r}while(true){var a=t.charCodeAt(r);switch(a){case 13:if(t.charCodeAt(r+1)===10){r++}case 10:r++;if(n){return r}continue;case 9:case 11:case 12:case 32:r++;continue;case 47:if(i){break}if(t.charCodeAt(r+1)===47){r+=2;while(r<t.length){if(isLineBreak(t.charCodeAt(r))){break}r++}continue}if(t.charCodeAt(r+1)===42){r+=2;while(r<t.length){if(t.charCodeAt(r)===42&&t.charCodeAt(r+1)===47){r+=2;break}r++}continue}break;case 60:case 124:case 61:case 62:if(isConflictMarkerTrivia(t,r)){r=scanConflictMarkerTrivia(t,r);continue}break;case 35:if(r===0&&isShebangTrivia(t,r)){r=scanShebangTrivia(t,r);continue}break;default:if(a>127&&isWhiteSpaceLike(a)){r++;continue}break}return r}}e.skipTrivia=skipTrivia;var f="<<<<<<<".length;function isConflictMarkerTrivia(t,r){e.Debug.assert(r>=0);if(r===0||isLineBreak(t.charCodeAt(r-1))){var n=t.charCodeAt(r);if(r+f<t.length){for(var i=0;i<f;i++){if(t.charCodeAt(r+i)!==n){return false}}return n===61||t.charCodeAt(r+f)===32}}return false}function scanConflictMarkerTrivia(t,r,n){if(n){n(e.Diagnostics.Merge_conflict_marker_encountered,r,f)}var i=t.charCodeAt(r);var a=t.length;if(i===60||i===62){while(r<a&&!isLineBreak(t.charCodeAt(r))){r++}}else{e.Debug.assert(i===124||i===61);while(r<a){var o=t.charCodeAt(r);if((o===61||o===62)&&o!==i&&isConflictMarkerTrivia(t,r)){break}r++}}return r}var d=/^#!.*/;function isShebangTrivia(t,r){e.Debug.assert(r===0);return d.test(t)}function scanShebangTrivia(e,t){var r=d.exec(e)[0];t=t+r.length;return t}function iterateCommentRanges(e,t,r,n,i,a,o){var s;var c;var u;var l;var f=false;var d=n||r===0;var p=o;e:while(r>=0&&r<t.length){var g=t.charCodeAt(r);switch(g){case 13:if(t.charCodeAt(r+1)===10){r++}case 10:r++;if(n){break e}d=true;if(f){l=true}continue;case 9:case 11:case 12:case 32:r++;continue;case 47:var _=t.charCodeAt(r+1);var m=false;if(_===47||_===42){var y=_===47?2:3;var h=r;r+=2;if(_===47){while(r<t.length){if(isLineBreak(t.charCodeAt(r))){m=true;break}r++}}else{while(r<t.length){if(t.charCodeAt(r)===42&&t.charCodeAt(r+1)===47){r+=2;break}r++}}if(d){if(f){p=i(s,c,u,l,a,p);if(!e&&p){return p}}s=h;c=r;u=y;l=m;f=true}continue}break e;default:if(g>127&&isWhiteSpaceLike(g)){if(f&&isLineBreak(g)){l=true}r++;continue}break e}}if(f){p=i(s,c,u,l,a,p)}return p}function forEachLeadingCommentRange(e,t,r,n){return iterateCommentRanges(false,e,t,false,r,n)}e.forEachLeadingCommentRange=forEachLeadingCommentRange;function forEachTrailingCommentRange(e,t,r,n){return iterateCommentRanges(false,e,t,true,r,n)}e.forEachTrailingCommentRange=forEachTrailingCommentRange;function reduceEachLeadingCommentRange(e,t,r,n,i){return iterateCommentRanges(true,e,t,false,r,n,i)}e.reduceEachLeadingCommentRange=reduceEachLeadingCommentRange;function reduceEachTrailingCommentRange(e,t,r,n,i){return iterateCommentRanges(true,e,t,true,r,n,i)}e.reduceEachTrailingCommentRange=reduceEachTrailingCommentRange;function appendCommentRange(e,t,r,n,i,a){if(!a){a=[]}a.push({kind:r,pos:e,end:t,hasTrailingNewLine:n});return a}function getLeadingCommentRanges(e,t){return reduceEachLeadingCommentRange(e,t,appendCommentRange,undefined,undefined)}e.getLeadingCommentRanges=getLeadingCommentRanges;function getTrailingCommentRanges(e,t){return reduceEachTrailingCommentRange(e,t,appendCommentRange,undefined,undefined)}e.getTrailingCommentRanges=getTrailingCommentRanges;function getShebang(e){var t=d.exec(e);if(t){return t[0]}}e.getShebang=getShebang;function isIdentifierStart(e,t){return e>=65&&e<=90||e>=97&&e<=122||e===36||e===95||e>127&&isUnicodeIdentifierStart(e,t)}e.isIdentifierStart=isIdentifierStart;function isIdentifierPart(e,t){return e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===36||e===95||e>127&&isUnicodeIdentifierPart(e,t)}e.isIdentifierPart=isIdentifierPart;function isIdentifierText(e,t){if(!isIdentifierStart(e.charCodeAt(0),t)){return false}for(var r=1;r<e.length;r++){if(!isIdentifierPart(e.charCodeAt(r),t)){return false}}return true}e.isIdentifierText=isIdentifierText;function createScanner(t,r,n,a,o,s,c){if(n===void 0){n=0}var u=a;var l;var f;var d;var p;var g;var _;var m;var y=0;setText(u,s,c);return{getStartPos:function(){return d},getTextPos:function(){return l},getToken:function(){return g},getTokenPos:function(){return p},getTokenText:function(){return u.substring(p,l)},getTokenValue:function(){return _},hasExtendedUnicodeEscape:function(){return(m&8)!==0},hasPrecedingLineBreak:function(){return(m&1)!==0},isIdentifier:function(){return g===72||g>108},isReservedWord:function(){return g>=73&&g<=108},isUnterminated:function(){return(m&4)!==0},getTokenFlags:function(){return m},reScanGreaterToken:reScanGreaterToken,reScanSlashToken:reScanSlashToken,reScanTemplateToken:reScanTemplateToken,scanJsxIdentifier:scanJsxIdentifier,scanJsxAttributeValue:scanJsxAttributeValue,reScanJsxToken:reScanJsxToken,scanJsxToken:scanJsxToken,scanJSDocToken:scanJSDocToken,scan:scan,getText:getText,setText:setText,setScriptTarget:setScriptTarget,setLanguageVariant:setLanguageVariant,setOnError:setOnError,setTextPos:setTextPos,setInJSDocType:setInJSDocType,tryScan:tryScan,lookAhead:lookAhead,scanRange:scanRange};function error(e,t,r){if(t===void 0){t=l}if(o){var n=l;l=t;o(e,r||0);l=n}}function scanNumberFragment(){var t=l;var r=false;var n=false;var i="";while(true){var a=u.charCodeAt(l);if(a===95){m|=512;if(r){r=false;n=true;i+=u.substring(t,l)}else if(n){error(e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted,l,1)}else{error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l,1)}l++;t=l;continue}if(isDigit(a)){r=true;n=false;l++;continue}break}if(u.charCodeAt(l-1)===95){error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l-1,1)}return i+u.substring(t,l)}function scanNumber(){var t=l;var r=scanNumberFragment();var n;var i;if(u.charCodeAt(l)===46){l++;n=scanNumberFragment()}var a=l;if(u.charCodeAt(l)===69||u.charCodeAt(l)===101){l++;m|=16;if(u.charCodeAt(l)===43||u.charCodeAt(l)===45)l++;var o=l;var s=scanNumberFragment();if(!s){error(e.Diagnostics.Digit_expected)}else{i=u.substring(a,o)+s;a=l}}var c;if(m&512){c=r;if(n){c+="."+n}if(i){c+=i}}else{c=u.substring(t,a)}if(n!==undefined||m&16){return{type:8,value:""+ +c}}else{_=c;var f=checkBigIntSuffix();return{type:f,value:_}}}function scanOctalDigits(){var e=l;while(isOctalDigit(u.charCodeAt(l))){l++}return+u.substring(e,l)}function scanExactNumberOfHexDigits(e,t){var r=scanHexDigits(e,false,t);return r?parseInt(r,16):-1}function scanMinimumNumberOfHexDigits(e,t){return scanHexDigits(e,true,t)}function scanHexDigits(t,r,n){var i=[];var a=false;var o=false;while(i.length<t||r){var s=u.charCodeAt(l);if(n&&s===95){m|=512;if(a){a=false;o=true}else if(o){error(e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted,l,1)}else{error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l,1)}l++;continue}a=n;if(s>=65&&s<=70){s+=97-65}else if(!(s>=48&&s<=57||s>=97&&s<=102)){break}i.push(s);l++;o=false}if(i.length<t){i=[]}if(u.charCodeAt(l-1)===95){error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l-1,1)}return String.fromCharCode.apply(String,i)}function scanString(t){if(t===void 0){t=false}var r=u.charCodeAt(l);l++;var n="";var i=l;while(true){if(l>=f){n+=u.substring(i,l);m|=4;error(e.Diagnostics.Unterminated_string_literal);break}var a=u.charCodeAt(l);if(a===r){n+=u.substring(i,l);l++;break}if(a===92&&!t){n+=u.substring(i,l);n+=scanEscapeSequence();i=l;continue}if(isLineBreak(a)&&!t){n+=u.substring(i,l);m|=4;error(e.Diagnostics.Unterminated_string_literal);break}l++}return n}function scanTemplateAndSetTokenValue(){var t=u.charCodeAt(l)===96;l++;var r=l;var n="";var i;while(true){if(l>=f){n+=u.substring(r,l);m|=4;error(e.Diagnostics.Unterminated_template_literal);i=t?14:17;break}var a=u.charCodeAt(l);if(a===96){n+=u.substring(r,l);l++;i=t?14:17;break}if(a===36&&l+1<f&&u.charCodeAt(l+1)===123){n+=u.substring(r,l);l+=2;i=t?15:16;break}if(a===92){n+=u.substring(r,l);n+=scanEscapeSequence();r=l;continue}if(a===13){n+=u.substring(r,l);l++;if(l<f&&u.charCodeAt(l)===10){l++}n+="\n";r=l;continue}l++}e.Debug.assert(i!==undefined);_=n;return i}function scanEscapeSequence(){l++;if(l>=f){error(e.Diagnostics.Unexpected_end_of_text);return""}var t=u.charCodeAt(l);l++;switch(t){case 48:return"\0";case 98:return"\b";case 116:return"\t";case 110:return"\n";case 118:return"\v";case 102:return"\f";case 114:return"\r";case 39:return"'";case 34:return'"';case 117:if(l<f&&u.charCodeAt(l)===123){m|=8;l++;return scanExtendedUnicodeEscape()}return scanHexadecimalEscape(4);case 120:return scanHexadecimalEscape(2);case 13:if(l<f&&u.charCodeAt(l)===10){l++}case 10:case 8232:case 8233:return"";default:return String.fromCharCode(t)}}function scanHexadecimalEscape(t){var r=scanExactNumberOfHexDigits(t,false);if(r>=0){return String.fromCharCode(r)}else{error(e.Diagnostics.Hexadecimal_digit_expected);return""}}function scanExtendedUnicodeEscape(){var t=scanMinimumNumberOfHexDigits(1,false);var r=t?parseInt(t,16):-1;var n=false;if(r<0){error(e.Diagnostics.Hexadecimal_digit_expected);n=true}else if(r>1114111){error(e.Diagnostics.An_extended_Unicode_escape_value_must_be_between_0x0_and_0x10FFFF_inclusive);n=true}if(l>=f){error(e.Diagnostics.Unexpected_end_of_text);n=true}else if(u.charCodeAt(l)===125){l++}else{error(e.Diagnostics.Unterminated_Unicode_escape_sequence);n=true}if(n){return""}return utf16EncodeAsString(r)}function utf16EncodeAsString(t){e.Debug.assert(0<=t&&t<=1114111);if(t<=65535){return String.fromCharCode(t)}var r=Math.floor((t-65536)/1024)+55296;var n=(t-65536)%1024+56320;return String.fromCharCode(r,n)}function peekUnicodeEscape(){if(l+5<f&&u.charCodeAt(l+1)===117){var e=l;l+=2;var t=scanExactNumberOfHexDigits(4,false);l=e;return t}return-1}function scanIdentifierParts(){var e="";var r=l;while(l<f){var n=u.charCodeAt(l);if(isIdentifierPart(n,t)){l++}else if(n===92){n=peekUnicodeEscape();if(!(n>=0&&isIdentifierPart(n,t))){break}e+=u.substring(r,l);e+=String.fromCharCode(n);l+=6;r=l}else{break}}e+=u.substring(r,l);return e}function getIdentifierToken(){var e=_.length;if(e>=2&&e<=11){var t=_.charCodeAt(0);if(t>=97&&t<=122){var r=i.get(_);if(r!==undefined){return g=r}}}return g=72}function scanBinaryOrOctalDigits(t){var r="";var n=false;var i=false;while(true){var a=u.charCodeAt(l);if(a===95){m|=512;if(n){n=false;i=true}else if(i){error(e.Diagnostics.Multiple_consecutive_numeric_separators_are_not_permitted,l,1)}else{error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l,1)}l++;continue}n=true;if(!isDigit(a)||a-48>=t){break}r+=u[l];l++;i=false}if(u.charCodeAt(l-1)===95){error(e.Diagnostics.Numeric_separators_are_not_allowed_here,l-1,1)}return r}function checkBigIntSuffix(){if(u.charCodeAt(l)===110){_+="n";if(m&384){_=e.parsePseudoBigInt(_)+"n"}l++;return 9}else{var t=m&128?parseInt(_.slice(2),2):m&256?parseInt(_.slice(2),8):+_;_=""+t;return 8}}function scan(){var i;d=l;m=0;var a=false;while(true){p=l;if(l>=f){return g=1}var o=u.charCodeAt(l);if(o===35&&l===0&&isShebangTrivia(u,l)){l=scanShebangTrivia(u,l);if(r){continue}else{return g=6}}switch(o){case 10:case 13:m|=1;if(r){l++;continue}else{if(o===13&&l+1<f&&u.charCodeAt(l+1)===10){l+=2}else{l++}return g=4}case 9:case 11:case 12:case 32:case 160:case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8203:case 8239:case 8287:case 12288:case 65279:if(r){l++;continue}else{while(l<f&&isWhiteSpaceSingleLine(u.charCodeAt(l))){l++}return g=5}case 33:if(u.charCodeAt(l+1)===61){if(u.charCodeAt(l+2)===61){return l+=3,g=36}return l+=2,g=34}l++;return g=52;case 34:case 39:_=scanString();return g=10;case 96:return g=scanTemplateAndSetTokenValue();case 37:if(u.charCodeAt(l+1)===61){return l+=2,g=65}l++;return g=43;case 38:if(u.charCodeAt(l+1)===38){return l+=2,g=54}if(u.charCodeAt(l+1)===61){return l+=2,g=69}l++;return g=49;case 40:l++;return g=20;case 41:l++;return g=21;case 42:if(u.charCodeAt(l+1)===61){return l+=2,g=62}if(u.charCodeAt(l+1)===42){if(u.charCodeAt(l+2)===61){return l+=3,g=63}return l+=2,g=41}l++;if(y&&!a&&m&1){a=true;continue}return g=40;case 43:if(u.charCodeAt(l+1)===43){return l+=2,g=44}if(u.charCodeAt(l+1)===61){return l+=2,g=60}l++;return g=38;case 44:l++;return g=27;case 45:if(u.charCodeAt(l+1)===45){return l+=2,g=45}if(u.charCodeAt(l+1)===61){return l+=2,g=61}l++;return g=39;case 46:if(isDigit(u.charCodeAt(l+1))){_=scanNumber().value;return g=8}if(u.charCodeAt(l+1)===46&&u.charCodeAt(l+2)===46){return l+=3,g=25}l++;return g=24;case 47:if(u.charCodeAt(l+1)===47){l+=2;while(l<f){if(isLineBreak(u.charCodeAt(l))){break}l++}if(r){continue}else{return g=2}}if(u.charCodeAt(l+1)===42){l+=2;if(u.charCodeAt(l)===42&&u.charCodeAt(l+1)!==47){m|=2}var s=false;while(l<f){var c=u.charCodeAt(l);if(c===42&&u.charCodeAt(l+1)===47){l+=2;s=true;break}if(isLineBreak(c)){m|=1}l++}if(!s){error(e.Diagnostics.Asterisk_Slash_expected)}if(r){continue}else{if(!s){m|=4}return g=3}}if(u.charCodeAt(l+1)===61){return l+=2,g=64}l++;return g=42;case 48:if(l+2<f&&(u.charCodeAt(l+1)===88||u.charCodeAt(l+1)===120)){l+=2;_=scanMinimumNumberOfHexDigits(1,true);if(!_){error(e.Diagnostics.Hexadecimal_digit_expected);_="0"}_="0x"+_;m|=64;return g=checkBigIntSuffix()}else if(l+2<f&&(u.charCodeAt(l+1)===66||u.charCodeAt(l+1)===98)){l+=2;_=scanBinaryOrOctalDigits(2);if(!_){error(e.Diagnostics.Binary_digit_expected);_="0"}_="0b"+_;m|=128;return g=checkBigIntSuffix()}else if(l+2<f&&(u.charCodeAt(l+1)===79||u.charCodeAt(l+1)===111)){l+=2;_=scanBinaryOrOctalDigits(8);if(!_){error(e.Diagnostics.Octal_digit_expected);_="0"}_="0o"+_;m|=256;return g=checkBigIntSuffix()}if(l+1<f&&isOctalDigit(u.charCodeAt(l+1))){_=""+scanOctalDigits();m|=32;return g=8}case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:i=scanNumber(),g=i.type,_=i.value;return g;case 58:l++;return g=57;case 59:l++;return g=26;case 60:if(isConflictMarkerTrivia(u,l)){l=scanConflictMarkerTrivia(u,l,error);if(r){continue}else{return g=7}}if(u.charCodeAt(l+1)===60){if(u.charCodeAt(l+2)===61){return l+=3,g=66}return l+=2,g=46}if(u.charCodeAt(l+1)===61){return l+=2,g=31}if(n===1&&u.charCodeAt(l+1)===47&&u.charCodeAt(l+2)!==42){return l+=2,g=29}l++;return g=28;case 61:if(isConflictMarkerTrivia(u,l)){l=scanConflictMarkerTrivia(u,l,error);if(r){continue}else{return g=7}}if(u.charCodeAt(l+1)===61){if(u.charCodeAt(l+2)===61){return l+=3,g=35}return l+=2,g=33}if(u.charCodeAt(l+1)===62){return l+=2,g=37}l++;return g=59;case 62:if(isConflictMarkerTrivia(u,l)){l=scanConflictMarkerTrivia(u,l,error);if(r){continue}else{return g=7}}l++;return g=30;case 63:l++;return g=56;case 91:l++;return g=22;case 93:l++;return g=23;case 94:if(u.charCodeAt(l+1)===61){return l+=2,g=71}l++;return g=51;case 123:l++;return g=18;case 124:if(isConflictMarkerTrivia(u,l)){l=scanConflictMarkerTrivia(u,l,error);if(r){continue}else{return g=7}}if(u.charCodeAt(l+1)===124){return l+=2,g=55}if(u.charCodeAt(l+1)===61){return l+=2,g=70}l++;return g=50;case 125:l++;return g=19;case 126:l++;return g=53;case 64:l++;return g=58;case 92:var h=peekUnicodeEscape();if(h>=0&&isIdentifierStart(h,t)){l+=6;_=String.fromCharCode(h)+scanIdentifierParts();return g=getIdentifierToken()}error(e.Diagnostics.Invalid_character);l++;return g=0;default:if(isIdentifierStart(o,t)){l++;while(l<f&&isIdentifierPart(o=u.charCodeAt(l),t))l++;_=u.substring(p,l);if(o===92){_+=scanIdentifierParts()}return g=getIdentifierToken()}else if(isWhiteSpaceSingleLine(o)){l++;continue}else if(isLineBreak(o)){m|=1;l++;continue}error(e.Diagnostics.Invalid_character);l++;return g=0}}}function reScanGreaterToken(){if(g===30){if(u.charCodeAt(l)===62){if(u.charCodeAt(l+1)===62){if(u.charCodeAt(l+2)===61){return l+=3,g=68}return l+=2,g=48}if(u.charCodeAt(l+1)===61){return l+=2,g=67}l++;return g=47}if(u.charCodeAt(l)===61){l++;return g=32}}return g}function reScanSlashToken(){if(g===42||g===64){var r=p+1;var n=false;var i=false;while(true){if(r>=f){m|=4;error(e.Diagnostics.Unterminated_regular_expression_literal);break}var a=u.charCodeAt(r);if(isLineBreak(a)){m|=4;error(e.Diagnostics.Unterminated_regular_expression_literal);break}if(n){n=false}else if(a===47&&!i){r++;break}else if(a===91){i=true}else if(a===92){n=true}else if(a===93){i=false}r++}while(r<f&&isIdentifierPart(u.charCodeAt(r),t)){r++}l=r;_=u.substring(p,l);g=13}return g}function reScanTemplateToken(){e.Debug.assert(g===19,"'reScanTemplateToken' should only be called on a '}'");l=p;return g=scanTemplateAndSetTokenValue()}function reScanJsxToken(){l=p=d;return g=scanJsxToken()}function scanJsxToken(){d=p=l;if(l>=f){return g=1}var e=u.charCodeAt(l);if(e===60){if(u.charCodeAt(l+1)===47){l+=2;return g=29}l++;return g=28}if(e===123){l++;return g=18}var t=0;while(l<f){e=u.charCodeAt(l);if(e===123){break}if(e===60){if(isConflictMarkerTrivia(u,l)){l=scanConflictMarkerTrivia(u,l,error);return g=7}break}if(isLineBreak(e)&&t===0){t=-1}else if(!isWhiteSpaceLike(e)){t=l}l++}return t===-1?12:11}function scanJsxIdentifier(){if(tokenIsIdentifierOrKeyword(g)){var e=l;while(l<f){var r=u.charCodeAt(l);if(r===45||(e===l?isIdentifierStart(r,t):isIdentifierPart(r,t))){l++}else{break}}_+=u.substring(e,l)}return g}function scanJsxAttributeValue(){d=l;switch(u.charCodeAt(l)){case 34:case 39:_=scanString(true);return g=10;default:return scan()}}function scanJSDocToken(){d=p=l;m=0;if(l>=f){return g=1}var e=u.charCodeAt(l);l++;switch(e){case 9:case 11:case 12:case 32:while(l<f&&isWhiteSpaceSingleLine(u.charCodeAt(l))){l++}return g=5;case 64:return g=58;case 10:case 13:m|=1;return g=4;case 42:return g=40;case 123:return g=18;case 125:return g=19;case 91:return g=22;case 93:return g=23;case 60:return g=28;case 61:return g=59;case 44:return g=27;case 46:return g=24;case 96:while(l<f&&u.charCodeAt(l)!==96){l++}_=u.substring(p+1,l);l++;return g=14}if(isIdentifierStart(e,6)){while(isIdentifierPart(u.charCodeAt(l),6)&&l<f){l++}_=u.substring(p,l);return g=getIdentifierToken()}else{return g=0}}function speculationHelper(e,t){var r=l;var n=d;var i=p;var a=g;var o=_;var s=m;var c=e();if(!c||t){l=r;d=n;p=i;g=a;_=o;m=s}return c}function scanRange(e,t,r){var n=f;var i=l;var a=d;var o=p;var s=g;var c=_;var y=m;setText(u,e,t);var h=r();f=n;l=i;d=a;p=o;g=s;_=c;m=y;return h}function lookAhead(e){return speculationHelper(e,true)}function tryScan(e){return speculationHelper(e,false)}function getText(){return u}function setText(e,t,r){u=e||"";f=r===undefined?u.length:t+r;setTextPos(t||0)}function setOnError(e){o=e}function setScriptTarget(e){t=e}function setLanguageVariant(e){n=e}function setTextPos(t){e.Debug.assert(t>=0);l=t;d=t;p=t;g=0;_=undefined;m=0}function setInJSDocType(e){y+=e?1:-1}}e.createScanner=createScanner})(s||(s={}));var s;(function(e){function isExternalModuleNameRelative(t){return e.pathIsRelative(t)||e.isRootedDiskPath(t)}e.isExternalModuleNameRelative=isExternalModuleNameRelative;function sortAndDeduplicateDiagnostics(t){return e.sortAndDeduplicate(t,e.compareDiagnostics)}e.sortAndDeduplicateDiagnostics=sortAndDeduplicateDiagnostics})(s||(s={}));(function(e){e.resolvingEmptyArray=[];e.emptyMap=e.createMap();e.emptyUnderscoreEscapedMap=e.emptyMap;e.externalHelpersModuleNameText="tslib";e.defaultMaximumTruncationLength=160;function getDeclarationOfKind(e,t){var r=e.declarations;if(r){for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.kind===t){return a}}}return undefined}e.getDeclarationOfKind=getDeclarationOfKind;function createUnderscoreEscapedMap(){return new e.MapCtr}e.createUnderscoreEscapedMap=createUnderscoreEscapedMap;function hasEntries(e){return!!e&&!!e.size}e.hasEntries=hasEntries;function createSymbolTable(t){var r=e.createMap();if(t){for(var n=0,i=t;n<i.length;n++){var a=i[n];r.set(a.escapedName,a)}}return r}e.createSymbolTable=createSymbolTable;var t=createSingleLineStringWriter();function createSingleLineStringWriter(){var t="";var r=function(e){return t+=e};return{getText:function(){return t},write:r,rawWrite:r,writeKeyword:r,writeOperator:r,writePunctuation:r,writeSpace:r,writeStringLiteral:r,writeLiteral:r,writeParameter:r,writeProperty:r,writeSymbol:function(e,t){return r(e)},writeTrailingSemicolon:r,writeComment:r,getTextPos:function(){return t.length},getLine:function(){return 0},getColumn:function(){return 0},getIndent:function(){return 0},isAtStartOfLine:function(){return false},writeLine:function(){return t+=" "},increaseIndent:e.noop,decreaseIndent:e.noop,clear:function(){return t=""},trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop}}function toPath(t,r,n){var i=e.isRootedDiskPath(t)?e.normalizePath(t):e.getNormalizedAbsolutePath(t,r);return n(i)}e.toPath=toPath;function changesAffectModuleResolution(t,r){return t.configFilePath!==r.configFilePath||e.moduleResolutionOptionDeclarations.some(function(n){return!e.isJsonEqual(e.getCompilerOptionValue(t,n),e.getCompilerOptionValue(r,n))})}e.changesAffectModuleResolution=changesAffectModuleResolution;function findAncestor(e,t){while(e){var r=t(e);if(r==="quit"){return undefined}else if(r){return e}e=e.parent}return undefined}e.findAncestor=findAncestor;function forEachAncestor(t,r){while(true){var n=r(t);if(n==="quit")return undefined;if(n!==undefined)return n;if(e.isSourceFile(t))return undefined;t=t.parent}}e.forEachAncestor=forEachAncestor;function forEachEntry(e,t){var r;var n=e.entries();for(var i=n.next(),a=i.value,o=i.done;!o;r=n.next(),a=r.value,o=r.done,r){var s=a[0],c=a[1];var u=t(c,s);if(u){return u}}return undefined}e.forEachEntry=forEachEntry;function forEachKey(e,t){var r;var n=e.keys();for(var i=n.next(),a=i.value,o=i.done;!o;r=n.next(),a=r.value,o=r.done,r){var s=t(a);if(s){return s}}return undefined}e.forEachKey=forEachKey;function copyEntries(e,t){e.forEach(function(e,r){t.set(r,e)})}e.copyEntries=copyEntries;function arrayToSet(t,r){return e.arrayToMap(t,r||function(e){return e},function(){return true})}e.arrayToSet=arrayToSet;function cloneMap(t){var r=e.createMap();copyEntries(t,r);return r}e.cloneMap=cloneMap;function usingSingleLineStringWriter(e){var r=t.getText();try{e(t);return t.getText()}finally{t.clear();t.writeKeyword(r)}}e.usingSingleLineStringWriter=usingSingleLineStringWriter;function getFullWidth(e){return e.end-e.pos}e.getFullWidth=getFullWidth;function getResolvedModule(e,t){return e&&e.resolvedModules&&e.resolvedModules.get(t)}e.getResolvedModule=getResolvedModule;function setResolvedModule(t,r,n){if(!t.resolvedModules){t.resolvedModules=e.createMap()}t.resolvedModules.set(r,n)}e.setResolvedModule=setResolvedModule;function setResolvedTypeReferenceDirective(t,r,n){if(!t.resolvedTypeReferenceDirectiveNames){t.resolvedTypeReferenceDirectiveNames=e.createMap()}t.resolvedTypeReferenceDirectiveNames.set(r,n)}e.setResolvedTypeReferenceDirective=setResolvedTypeReferenceDirective;function projectReferenceIsEqualTo(e,t){return e.path===t.path&&!e.prepend===!t.prepend&&!e.circular===!t.circular}e.projectReferenceIsEqualTo=projectReferenceIsEqualTo;function moduleResolutionIsEqualTo(e,t){return e.isExternalLibraryImport===t.isExternalLibraryImport&&e.extension===t.extension&&e.resolvedFileName===t.resolvedFileName&&e.originalPath===t.originalPath&&packageIdIsEqual(e.packageId,t.packageId)}e.moduleResolutionIsEqualTo=moduleResolutionIsEqualTo;function packageIdIsEqual(e,t){return e===t||!!e&&!!t&&e.name===t.name&&e.subModuleName===t.subModuleName&&e.version===t.version}function packageIdToString(e){var t=e.name,r=e.subModuleName,n=e.version;var i=r?t+"/"+r:t;return i+"@"+n}e.packageIdToString=packageIdToString;function typeDirectiveIsEqualTo(e,t){return e.resolvedFileName===t.resolvedFileName&&e.primary===t.primary}e.typeDirectiveIsEqualTo=typeDirectiveIsEqualTo;function hasChangesInResolutions(t,r,n,i){e.Debug.assert(t.length===r.length);for(var a=0;a<t.length;a++){var o=r[a];var s=n&&n.get(t[a]);var c=s?!o||!i(s,o):o;if(c){return true}}return false}e.hasChangesInResolutions=hasChangesInResolutions;function containsParseError(e){aggregateChildData(e);return(e.flags&131072)!==0}e.containsParseError=containsParseError;function aggregateChildData(t){if(!(t.flags&262144)){var r=(t.flags&32768)!==0||e.forEachChild(t,containsParseError);if(r){t.flags|=131072}t.flags|=262144}}function getSourceFileOfNode(e){while(e&&e.kind!==279){e=e.parent}return e}e.getSourceFileOfNode=getSourceFileOfNode;function isStatementWithLocals(e){switch(e.kind){case 218:case 246:case 225:case 226:case 227:return true}return false}e.isStatementWithLocals=isStatementWithLocals;function getStartPositionOfLine(t,r){e.Debug.assert(t>=0);return e.getLineStarts(r)[t]}e.getStartPositionOfLine=getStartPositionOfLine;function nodePosToString(t){var r=getSourceFileOfNode(t);var n=e.getLineAndCharacterOfPosition(r,t.pos);return r.fileName+"("+(n.line+1)+","+(n.character+1)+")"}e.nodePosToString=nodePosToString;function getEndLinePosition(t,r){e.Debug.assert(t>=0);var n=e.getLineStarts(r);var i=t;var a=r.text;if(i+1===n.length){return a.length-1}else{var o=n[i];var s=n[i+1]-1;e.Debug.assert(e.isLineBreak(a.charCodeAt(s)));while(o<=s&&e.isLineBreak(a.charCodeAt(s))){s--}return s}}e.getEndLinePosition=getEndLinePosition;function isFileLevelUniqueName(e,t,r){return!(r&&r(t))&&!e.identifiers.has(t)}e.isFileLevelUniqueName=isFileLevelUniqueName;function nodeIsMissing(e){if(e===undefined){return true}return e.pos===e.end&&e.pos>=0&&e.kind!==1}e.nodeIsMissing=nodeIsMissing;function nodeIsPresent(e){return!nodeIsMissing(e)}e.nodeIsPresent=nodeIsPresent;function addStatementsAfterPrologue(e,t){if(t===undefined||t.length===0)return e;var r=0;for(;r<e.length;++r){if(!isPrologueDirective(e[r])){break}}e.splice.apply(e,[r,0].concat(t));return e}e.addStatementsAfterPrologue=addStatementsAfterPrologue;function isRecognizedTripleSlashComment(t,n,a){if(t.charCodeAt(n+1)===47&&n+2<a&&t.charCodeAt(n+2)===47){var o=t.substring(n,a);return o.match(e.fullTripleSlashReferencePathRegEx)||o.match(e.fullTripleSlashAMDReferencePathRegEx)||o.match(r)||o.match(i)?true:false}return false}e.isRecognizedTripleSlashComment=isRecognizedTripleSlashComment;function isPinnedComment(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===33}e.isPinnedComment=isPinnedComment;function getTokenPosOfNode(t,r,n){if(nodeIsMissing(t)){return t.pos}if(e.isJSDocNode(t)){return e.skipTrivia((r||getSourceFileOfNode(t)).text,t.pos,false,true)}if(n&&e.hasJSDocNodes(t)){return getTokenPosOfNode(t.jsDoc[0])}if(t.kind===306&&t._children.length>0){return getTokenPosOfNode(t._children[0],r,n)}return e.skipTrivia((r||getSourceFileOfNode(t)).text,t.pos)}e.getTokenPosOfNode=getTokenPosOfNode;function getNonDecoratorTokenPosOfNode(t,r){if(nodeIsMissing(t)||!t.decorators){return getTokenPosOfNode(t,r)}return e.skipTrivia((r||getSourceFileOfNode(t)).text,t.decorators.end)}e.getNonDecoratorTokenPosOfNode=getNonDecoratorTokenPosOfNode;function getSourceTextOfNodeFromSourceFile(e,t,r){if(r===void 0){r=false}return getTextOfNodeFromSourceText(e.text,t,r)}e.getSourceTextOfNodeFromSourceFile=getSourceTextOfNodeFromSourceFile;function isJSDocTypeExpressionOrChild(e){return e.kind===283||e.parent&&isJSDocTypeExpressionOrChild(e.parent)}function getTextOfNodeFromSourceText(t,r,n){if(n===void 0){n=false}if(nodeIsMissing(r)){return""}var i=t.substring(n?r.pos:e.skipTrivia(t,r.pos),r.end);if(isJSDocTypeExpressionOrChild(r)){i=i.replace(/(^|\r?\n|\r)\s*\*\s*/g,"$1")}return i}e.getTextOfNodeFromSourceText=getTextOfNodeFromSourceText;function getTextOfNode(e,t){if(t===void 0){t=false}return getSourceTextOfNodeFromSourceFile(getSourceFileOfNode(e),e,t)}e.getTextOfNode=getTextOfNode;function getPos(e){return e.pos}function indexOfNode(t,r){return e.binarySearch(t,r,getPos,e.compareValues)}e.indexOfNode=indexOfNode;function getEmitFlags(e){var t=e.emitNode;return t&&t.flags||0}e.getEmitFlags=getEmitFlags;function getLiteralText(t,r,n){if(!nodeIsSynthesized(t)&&t.parent&&!(e.isNumericLiteral(t)&&t.numericLiteralFlags&512||e.isBigIntLiteral(t))){return getSourceTextOfNodeFromSourceFile(r,t)}var i=n||getEmitFlags(t)&16777216?escapeString:escapeNonAsciiString;switch(t.kind){case 10:if(t.singleQuote){return"'"+i(t.text,39)+"'"}else{return'"'+i(t.text,34)+'"'}case 14:return"`"+i(t.text,96)+"`";case 15:return"`"+i(t.text,96)+"${";case 16:return"}"+i(t.text,96)+"${";case 17:return"}"+i(t.text,96)+"`";case 8:case 9:case 13:return t.text}return e.Debug.fail("Literal kind '"+t.kind+"' not accounted for.")}e.getLiteralText=getLiteralText;function getTextOfConstantValue(t){return e.isString(t)?'"'+escapeNonAsciiString(t)+'"':""+t}e.getTextOfConstantValue=getTextOfConstantValue;function makeIdentifierFromModuleName(t){return e.getBaseFileName(t).replace(/^(\d)/,"_$1").replace(/\W/g,"_")}e.makeIdentifierFromModuleName=makeIdentifierFromModuleName;function isBlockOrCatchScoped(t){return(e.getCombinedNodeFlags(t)&3)!==0||isCatchClauseVariableDeclarationOrBindingElement(t)}e.isBlockOrCatchScoped=isBlockOrCatchScoped;function isCatchClauseVariableDeclarationOrBindingElement(e){var t=getRootDeclaration(e);return t.kind===237&&t.parent.kind===274}e.isCatchClauseVariableDeclarationOrBindingElement=isCatchClauseVariableDeclarationOrBindingElement;function isAmbientModule(t){return e.isModuleDeclaration(t)&&(t.name.kind===10||isGlobalScopeAugmentation(t))}e.isAmbientModule=isAmbientModule;function isModuleWithStringLiteralName(t){return e.isModuleDeclaration(t)&&t.name.kind===10}e.isModuleWithStringLiteralName=isModuleWithStringLiteralName;function isNonGlobalAmbientModule(t){return e.isModuleDeclaration(t)&&e.isStringLiteral(t.name)}e.isNonGlobalAmbientModule=isNonGlobalAmbientModule;function isEffectiveModuleDeclaration(t){return e.isModuleDeclaration(t)||e.isIdentifier(t)}e.isEffectiveModuleDeclaration=isEffectiveModuleDeclaration;function isShorthandAmbientModuleSymbol(e){return isShorthandAmbientModule(e.valueDeclaration)}e.isShorthandAmbientModuleSymbol=isShorthandAmbientModuleSymbol;function isShorthandAmbientModule(e){return e&&e.kind===244&&!e.body}function isBlockScopedContainerTopLevel(t){return t.kind===279||t.kind===244||e.isFunctionLike(t)}e.isBlockScopedContainerTopLevel=isBlockScopedContainerTopLevel;function isGlobalScopeAugmentation(e){return!!(e.flags&512)}e.isGlobalScopeAugmentation=isGlobalScopeAugmentation;function isExternalModuleAugmentation(e){return isAmbientModule(e)&&isModuleAugmentationExternal(e)}e.isExternalModuleAugmentation=isExternalModuleAugmentation;function isModuleAugmentationExternal(t){switch(t.parent.kind){case 279:return e.isExternalModule(t.parent);case 245:return isAmbientModule(t.parent.parent)&&e.isSourceFile(t.parent.parent.parent)&&!e.isExternalModule(t.parent.parent.parent)}return false}e.isModuleAugmentationExternal=isModuleAugmentationExternal;function getNonAugmentationDeclaration(t){return e.find(t.declarations,function(t){return!isExternalModuleAugmentation(t)&&!(e.isModuleDeclaration(t)&&isGlobalScopeAugmentation(t))})}e.getNonAugmentationDeclaration=getNonAugmentationDeclaration;function isEffectiveExternalModule(t,r){return e.isExternalModule(t)||r.isolatedModules||e.getEmitModuleKind(r)===e.ModuleKind.CommonJS&&!!t.commonJsModuleIndicator}e.isEffectiveExternalModule=isEffectiveExternalModule;function isBlockScope(t,r){switch(t.kind){case 279:case 246:case 274:case 244:case 225:case 226:case 227:case 157:case 156:case 158:case 159:case 239:case 196:case 197:return true;case 218:return!e.isFunctionLike(r)}return false}e.isBlockScope=isBlockScope;function isDeclarationWithTypeParameters(t){switch(t.kind){case 297:case 304:case 293:return true;default:e.assertType(t);return isDeclarationWithTypeParameterChildren(t)}}e.isDeclarationWithTypeParameters=isDeclarationWithTypeParameters;function isDeclarationWithTypeParameterChildren(t){switch(t.kind){case 160:case 161:case 155:case 162:case 165:case 166:case 289:case 240:case 209:case 241:case 242:case 303:case 239:case 156:case 157:case 158:case 159:case 196:case 197:return true;default:e.assertType(t);return false}}e.isDeclarationWithTypeParameterChildren=isDeclarationWithTypeParameterChildren;function isAnyImportSyntax(e){switch(e.kind){case 249:case 248:return true;default:return false}}e.isAnyImportSyntax=isAnyImportSyntax;function isLateVisibilityPaintedStatement(e){switch(e.kind){case 249:case 248:case 219:case 240:case 239:case 244:case 242:case 241:case 243:return true;default:return false}}e.isLateVisibilityPaintedStatement=isLateVisibilityPaintedStatement;function isAnyImportOrReExport(t){return isAnyImportSyntax(t)||e.isExportDeclaration(t)}e.isAnyImportOrReExport=isAnyImportOrReExport;function getEnclosingBlockScopeContainer(e){return findAncestor(e.parent,function(e){return isBlockScope(e,e.parent)})}e.getEnclosingBlockScopeContainer=getEnclosingBlockScopeContainer;function declarationNameToString(e){return!e||getFullWidth(e)===0?"(Missing)":getTextOfNode(e)}e.declarationNameToString=declarationNameToString;function getNameFromIndexInfo(e){return e.declaration?declarationNameToString(e.declaration.parameters[0].name):undefined}e.getNameFromIndexInfo=getNameFromIndexInfo;function getTextOfPropertyName(t){switch(t.kind){case 72:return t.escapedText;case 10:case 8:case 14:return e.escapeLeadingUnderscores(t.text);case 149:return isStringOrNumericLiteralLike(t.expression)?e.escapeLeadingUnderscores(t.expression.text):undefined;default:return e.Debug.assertNever(t)}}e.getTextOfPropertyName=getTextOfPropertyName;function entityNameToString(t){switch(t.kind){case 72:return getFullWidth(t)===0?e.idText(t):getTextOfNode(t);case 148:return entityNameToString(t.left)+"."+entityNameToString(t.right);case 189:return entityNameToString(t.expression)+"."+entityNameToString(t.name);default:throw e.Debug.assertNever(t)}}e.entityNameToString=entityNameToString;function createDiagnosticForNode(e,t,r,n,i,a){var o=getSourceFileOfNode(e);return createDiagnosticForNodeInSourceFile(o,e,t,r,n,i,a)}e.createDiagnosticForNode=createDiagnosticForNode;function createDiagnosticForNodeArray(t,r,n,i,a,o,s){var c=e.skipTrivia(t.text,r.pos);return e.createFileDiagnostic(t,c,r.end-c,n,i,a,o,s)}e.createDiagnosticForNodeArray=createDiagnosticForNodeArray;function createDiagnosticForNodeInSourceFile(t,r,n,i,a,o,s){var c=getErrorSpanForNode(t,r);return e.createFileDiagnostic(t,c.start,c.length,n,i,a,o,s)}e.createDiagnosticForNodeInSourceFile=createDiagnosticForNodeInSourceFile;function createDiagnosticForNodeFromMessageChain(e,t,r){var n=getSourceFileOfNode(e);var i=getErrorSpanForNode(n,e);return{file:n,start:i.start,length:i.length,code:t.code,category:t.category,messageText:t.next?t:t.messageText,relatedInformation:r}}e.createDiagnosticForNodeFromMessageChain=createDiagnosticForNodeFromMessageChain;function getSpanOfTokenAtPosition(t,r){var n=e.createScanner(t.languageVersion,true,t.languageVariant,t.text,undefined,r);n.scan();var i=n.getTokenPos();return e.createTextSpanFromBounds(i,n.getTextPos())}e.getSpanOfTokenAtPosition=getSpanOfTokenAtPosition;function getErrorSpanForArrowFunction(t,r){var n=e.skipTrivia(t.text,r.pos);if(r.body&&r.body.kind===218){var i=e.getLineAndCharacterOfPosition(t,r.body.pos).line;var a=e.getLineAndCharacterOfPosition(t,r.body.end).line;if(i<a){return e.createTextSpan(n,getEndLinePosition(i,t)-n+1)}}return e.createTextSpanFromBounds(n,r.end)}function getErrorSpanForNode(t,r){var n=r;switch(r.kind){case 279:var i=e.skipTrivia(t.text,0,false);if(i===t.text.length){return e.createTextSpan(0,0)}return getSpanOfTokenAtPosition(t,i);case 237:case 186:case 240:case 209:case 241:case 244:case 243:case 278:case 239:case 196:case 156:case 158:case 159:case 242:case 154:case 153:n=r.name;break;case 197:return getErrorSpanForArrowFunction(t,r)}if(n===undefined){return getSpanOfTokenAtPosition(t,r.pos)}var a=nodeIsMissing(n);var o=a?n.pos:e.skipTrivia(t.text,n.pos);if(a){e.Debug.assert(o===n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809");e.Debug.assert(o===n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")}else{e.Debug.assert(o>=n.pos,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809");e.Debug.assert(o<=n.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809")}return e.createTextSpanFromBounds(o,n.end)}e.getErrorSpanForNode=getErrorSpanForNode;function isExternalOrCommonJsModule(e){return(e.externalModuleIndicator||e.commonJsModuleIndicator)!==undefined}e.isExternalOrCommonJsModule=isExternalOrCommonJsModule;function isJsonSourceFile(e){return e.scriptKind===6}e.isJsonSourceFile=isJsonSourceFile;function isEnumConst(t){return!!(e.getCombinedModifierFlags(t)&2048)}e.isEnumConst=isEnumConst;function isDeclarationReadonly(t){return!!(e.getCombinedModifierFlags(t)&64&&!e.isParameterPropertyDeclaration(t))}e.isDeclarationReadonly=isDeclarationReadonly;function isVarConst(t){return!!(e.getCombinedNodeFlags(t)&2)}e.isVarConst=isVarConst;function isLet(t){return!!(e.getCombinedNodeFlags(t)&1)}e.isLet=isLet;function isSuperCall(e){return e.kind===191&&e.expression.kind===98}e.isSuperCall=isSuperCall;function isImportCall(e){return e.kind===191&&e.expression.kind===92}e.isImportCall=isImportCall;function isLiteralImportTypeNode(t){return e.isImportTypeNode(t)&&e.isLiteralTypeNode(t.argument)&&e.isStringLiteral(t.argument.literal)}e.isLiteralImportTypeNode=isLiteralImportTypeNode;function isPrologueDirective(e){return e.kind===221&&e.expression.kind===10}e.isPrologueDirective=isPrologueDirective;function getLeadingCommentRangesOfNode(t,r){return t.kind!==11?e.getLeadingCommentRanges(r.text,t.pos):undefined}e.getLeadingCommentRangesOfNode=getLeadingCommentRangesOfNode;function getJSDocCommentRanges(t,r){var n=t.kind===151||t.kind===150||t.kind===196||t.kind===197||t.kind===195?e.concatenate(e.getTrailingCommentRanges(r,t.pos),e.getLeadingCommentRanges(r,t.pos)):e.getLeadingCommentRanges(r,t.pos);return e.filter(n,function(e){return r.charCodeAt(e.pos+1)===42&&r.charCodeAt(e.pos+2)===42&&r.charCodeAt(e.pos+3)!==47})}e.getJSDocCommentRanges=getJSDocCommentRanges;e.fullTripleSlashReferencePathRegEx=/^(\/\/\/\s*<reference\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var r=/^(\/\/\/\s*<reference\s+types\s*=\s*)('|")(.+?)\2.*?\/>/;e.fullTripleSlashAMDReferencePathRegEx=/^(\/\/\/\s*<amd-dependency\s+path\s*=\s*)('|")(.+?)\2.*?\/>/;var i=/^(\/\/\/\s*<reference\s+no-default-lib\s*=\s*)('|")(.+?)\2\s*\/>/;function isPartOfTypeNode(t){if(163<=t.kind&&t.kind<=183){return true}switch(t.kind){case 120:case 143:case 135:case 146:case 138:case 123:case 139:case 136:case 141:case 132:return true;case 106:return t.parent.kind!==200;case 211:return!isExpressionWithTypeArgumentsInClassExtendsClause(t);case 150:return t.parent.kind===181||t.parent.kind===176;case 72:if(t.parent.kind===148&&t.parent.right===t){t=t.parent}else if(t.parent.kind===189&&t.parent.name===t){t=t.parent}e.Debug.assert(t.kind===72||t.kind===148||t.kind===189,"'node' was expected to be a qualified name, identifier or property access in 'isPartOfTypeNode'.");case 148:case 189:case 100:{var r=t.parent;if(r.kind===167){return false}if(r.kind===183){return!r.isTypeOf}if(163<=r.kind&&r.kind<=183){return true}switch(r.kind){case 211:return!isExpressionWithTypeArgumentsInClassExtendsClause(r);case 150:return t===r.constraint;case 303:return t===r.constraint;case 154:case 153:case 151:case 237:return t===r.type;case 239:case 196:case 197:case 157:case 156:case 155:case 158:case 159:return t===r.type;case 160:case 161:case 162:return t===r.type;case 194:return t===r.type;case 191:case 192:return e.contains(r.typeArguments,t);case 193:return false}}}return false}e.isPartOfTypeNode=isPartOfTypeNode;function isChildOfNodeWithKind(e,t){while(e){if(e.kind===t){return true}e=e.parent}return false}e.isChildOfNodeWithKind=isChildOfNodeWithKind;function forEachReturnStatement(t,r){return traverse(t);function traverse(t){switch(t.kind){case 230:return r(t);case 246:case 218:case 222:case 223:case 224:case 225:case 226:case 227:case 231:case 232:case 271:case 272:case 233:case 235:case 274:return e.forEachChild(t,traverse)}}}e.forEachReturnStatement=forEachReturnStatement;function forEachYieldExpression(t,r){return traverse(t);function traverse(t){switch(t.kind){case 207:r(t);var n=t.expression;if(n){traverse(n)}return;case 243:case 241:case 244:case 242:case 240:case 209:return;default:if(e.isFunctionLike(t)){if(t.name&&t.name.kind===149){traverse(t.name.expression);return}}else if(!isPartOfTypeNode(t)){e.forEachChild(t,traverse)}}}}e.forEachYieldExpression=forEachYieldExpression;function getRestParameterElementType(t){if(t&&t.kind===169){return t.elementType}else if(t&&t.kind===164){return e.singleOrUndefined(t.typeArguments)}else{return undefined}}e.getRestParameterElementType=getRestParameterElementType;function getMembersOfDeclaration(e){switch(e.kind){case 241:case 240:case 209:case 168:return e.members;case 188:return e.properties}}e.getMembersOfDeclaration=getMembersOfDeclaration;function isVariableLike(e){if(e){switch(e.kind){case 186:case 278:case 151:case 275:case 154:case 153:case 276:case 237:return true}}return false}e.isVariableLike=isVariableLike;function isVariableLikeOrAccessor(t){return isVariableLike(t)||e.isAccessor(t)}e.isVariableLikeOrAccessor=isVariableLikeOrAccessor;function isVariableDeclarationInVariableStatement(e){return e.parent.kind===238&&e.parent.parent.kind===219}e.isVariableDeclarationInVariableStatement=isVariableDeclarationInVariableStatement;function isValidESSymbolDeclaration(t){return e.isVariableDeclaration(t)?isVarConst(t)&&e.isIdentifier(t.name)&&isVariableDeclarationInVariableStatement(t):e.isPropertyDeclaration(t)?hasReadonlyModifier(t)&&hasStaticModifier(t):e.isPropertySignature(t)&&hasReadonlyModifier(t)}e.isValidESSymbolDeclaration=isValidESSymbolDeclaration;function introducesArgumentsExoticObject(e){switch(e.kind){case 156:case 155:case 157:case 158:case 159:case 239:case 196:return true}return false}e.introducesArgumentsExoticObject=introducesArgumentsExoticObject;function unwrapInnermostStatementOfLabel(e,t){while(true){if(t){t(e)}if(e.statement.kind!==233){return e.statement}e=e.statement}}e.unwrapInnermostStatementOfLabel=unwrapInnermostStatementOfLabel;function isFunctionBlock(t){return t&&t.kind===218&&e.isFunctionLike(t.parent)}e.isFunctionBlock=isFunctionBlock;function isObjectLiteralMethod(e){return e&&e.kind===156&&e.parent.kind===188}e.isObjectLiteralMethod=isObjectLiteralMethod;function isObjectLiteralOrClassExpressionMethod(e){return e.kind===156&&(e.parent.kind===188||e.parent.kind===209)}e.isObjectLiteralOrClassExpressionMethod=isObjectLiteralOrClassExpressionMethod;function isIdentifierTypePredicate(e){return e&&e.kind===1}e.isIdentifierTypePredicate=isIdentifierTypePredicate;function isThisTypePredicate(e){return e&&e.kind===0}e.isThisTypePredicate=isThisTypePredicate;function getPropertyAssignment(e,t,r){return e.properties.filter(function(e){if(e.kind===275){var n=getTextOfPropertyName(e.name);return t===n||!!r&&r===n}return false})}e.getPropertyAssignment=getPropertyAssignment;function getTsConfigObjectLiteralExpression(t){if(t&&t.statements.length){var r=t.statements[0].expression;return e.tryCast(r,e.isObjectLiteralExpression)}}e.getTsConfigObjectLiteralExpression=getTsConfigObjectLiteralExpression;function getTsConfigPropArrayElementValue(t,r,n){return e.firstDefined(getTsConfigPropArray(t,r),function(t){return e.isArrayLiteralExpression(t.initializer)?e.find(t.initializer.elements,function(t){return e.isStringLiteral(t)&&t.text===n}):undefined})}e.getTsConfigPropArrayElementValue=getTsConfigPropArrayElementValue;function getTsConfigPropArray(t,r){var n=getTsConfigObjectLiteralExpression(t);return n?getPropertyAssignment(n,r):e.emptyArray}e.getTsConfigPropArray=getTsConfigPropArray;function getContainingFunction(t){return findAncestor(t.parent,e.isFunctionLike)}e.getContainingFunction=getContainingFunction;function getContainingClass(t){return findAncestor(t.parent,e.isClassLike)}e.getContainingClass=getContainingClass;function getThisContainer(t,r){e.Debug.assert(t.kind!==279);while(true){t=t.parent;if(!t){return e.Debug.fail()}switch(t.kind){case 149:if(e.isClassLike(t.parent.parent)){return t}t=t.parent;break;case 152:if(t.parent.kind===151&&e.isClassElement(t.parent.parent)){t=t.parent.parent}else if(e.isClassElement(t.parent)){t=t.parent}break;case 197:if(!r){continue}case 239:case 196:case 244:case 154:case 153:case 156:case 155:case 157:case 158:case 159:case 160:case 161:case 162:case 243:case 279:return t}}}e.getThisContainer=getThisContainer;function getNewTargetContainer(e){var t=getThisContainer(e,false);if(t){switch(t.kind){case 157:case 239:case 196:return t}}return undefined}e.getNewTargetContainer=getNewTargetContainer;function getSuperContainer(t,r){while(true){t=t.parent;if(!t){return t}switch(t.kind){case 149:t=t.parent;break;case 239:case 196:case 197:if(!r){continue}case 154:case 153:case 156:case 155:case 157:case 158:case 159:return t;case 152:if(t.parent.kind===151&&e.isClassElement(t.parent.parent)){t=t.parent.parent}else if(e.isClassElement(t.parent)){t=t.parent}break}}}e.getSuperContainer=getSuperContainer;function getImmediatelyInvokedFunctionExpression(e){if(e.kind===196||e.kind===197){var t=e;var r=e.parent;while(r.kind===195){t=r;r=r.parent}if(r.kind===191&&r.expression===t){return r}}}e.getImmediatelyInvokedFunctionExpression=getImmediatelyInvokedFunctionExpression;function isSuperProperty(e){var t=e.kind;return(t===189||t===190)&&e.expression.kind===98}e.isSuperProperty=isSuperProperty;function isThisProperty(e){var t=e.kind;return(t===189||t===190)&&e.expression.kind===100}e.isThisProperty=isThisProperty;function getEntityNameFromTypeNode(e){switch(e.kind){case 164:return e.typeName;case 211:return isEntityNameExpression(e.expression)?e.expression:undefined;case 72:case 148:return e}return undefined}e.getEntityNameFromTypeNode=getEntityNameFromTypeNode;function getInvokedExpression(e){switch(e.kind){case 193:return e.tag;case 262:case 261:return e.tagName;default:return e.expression}}e.getInvokedExpression=getInvokedExpression;function nodeCanBeDecorated(e,t,r){switch(e.kind){case 240:return true;case 154:return t.kind===240;case 158:case 159:case 156:return e.body!==undefined&&t.kind===240;case 151:return t.body!==undefined&&(t.kind===157||t.kind===156||t.kind===159)&&r.kind===240}return false}e.nodeCanBeDecorated=nodeCanBeDecorated;function nodeIsDecorated(e,t,r){return e.decorators!==undefined&&nodeCanBeDecorated(e,t,r)}e.nodeIsDecorated=nodeIsDecorated;function nodeOrChildIsDecorated(e,t,r){return nodeIsDecorated(e,t,r)||childIsDecorated(e,t)}e.nodeOrChildIsDecorated=nodeOrChildIsDecorated;function childIsDecorated(t,r){switch(t.kind){case 240:return e.some(t.members,function(e){return nodeOrChildIsDecorated(e,t,r)});case 156:case 159:return e.some(t.parameters,function(e){return nodeIsDecorated(e,t,r)});default:return false}}e.childIsDecorated=childIsDecorated;function isJSXTagName(e){var t=e.parent;if(t.kind===262||t.kind===261||t.kind===263){return t.tagName===e}return false}e.isJSXTagName=isJSXTagName;function isExpressionNode(e){switch(e.kind){case 98:case 96:case 102:case 87:case 13:case 187:case 188:case 189:case 190:case 191:case 192:case 193:case 212:case 194:case 213:case 195:case 196:case 209:case 197:case 200:case 198:case 199:case 202:case 203:case 204:case 205:case 208:case 206:case 14:case 210:case 260:case 261:case 264:case 207:case 201:case 214:return true;case 148:while(e.parent.kind===148){e=e.parent}return e.parent.kind===167||isJSXTagName(e);case 72:if(e.parent.kind===167||isJSXTagName(e)){return true}case 8:case 9:case 10:case 100:return isInExpressionContext(e);default:return false}}e.isExpressionNode=isExpressionNode;function isInExpressionContext(e){var t=e.parent;switch(t.kind){case 237:case 151:case 154:case 153:case 278:case 275:case 186:return t.initializer===e;case 221:case 222:case 223:case 224:case 230:case 231:case 232:case 271:case 234:return t.expression===e;case 225:var r=t;return r.initializer===e&&r.initializer.kind!==238||r.condition===e||r.incrementor===e;case 226:case 227:var n=t;return n.initializer===e&&n.initializer.kind!==238||n.expression===e;case 194:case 212:return e===t.expression;case 216:return e===t.expression;case 149:return e===t.expression;case 152:case 270:case 269:case 277:return true;case 211:return t.expression===e&&isExpressionWithTypeArgumentsInClassExtendsClause(t);case 276:return t.objectAssignmentInitializer===e;default:return isExpressionNode(t)}}e.isInExpressionContext=isInExpressionContext;function isExternalModuleImportEqualsDeclaration(e){return e.kind===248&&e.moduleReference.kind===259}e.isExternalModuleImportEqualsDeclaration=isExternalModuleImportEqualsDeclaration;function getExternalModuleImportEqualsDeclarationExpression(t){e.Debug.assert(isExternalModuleImportEqualsDeclaration(t));return t.moduleReference.expression}e.getExternalModuleImportEqualsDeclarationExpression=getExternalModuleImportEqualsDeclarationExpression;function isInternalModuleImportEqualsDeclaration(e){return e.kind===248&&e.moduleReference.kind!==259}e.isInternalModuleImportEqualsDeclaration=isInternalModuleImportEqualsDeclaration;function isSourceFileJS(e){return isInJSFile(e)}e.isSourceFileJS=isSourceFileJS;function isSourceFileNotJS(e){return!isInJSFile(e)}e.isSourceFileNotJS=isSourceFileNotJS;function isInJSFile(e){return!!e&&!!(e.flags&65536)}e.isInJSFile=isInJSFile;function isInJsonFile(e){return!!e&&!!(e.flags&16777216)}e.isInJsonFile=isInJsonFile;function isInJSDoc(e){return!!e&&!!(e.flags&2097152)}e.isInJSDoc=isInJSDoc;function isJSDocIndexSignature(t){return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&t.typeName.escapedText==="Object"&&t.typeArguments&&t.typeArguments.length===2&&(t.typeArguments[0].kind===138||t.typeArguments[0].kind===135)}e.isJSDocIndexSignature=isJSDocIndexSignature;function isRequireCall(t,r){if(t.kind!==191){return false}var n=t,i=n.expression,a=n.arguments;if(i.kind!==72||i.escapedText!=="require"){return false}if(a.length!==1){return false}var o=a[0];return!r||e.isStringLiteralLike(o)}e.isRequireCall=isRequireCall;function isSingleOrDoubleQuote(e){return e===39||e===34}e.isSingleOrDoubleQuote=isSingleOrDoubleQuote;function isStringDoubleQuoted(e,t){return getSourceTextOfNodeFromSourceFile(t,e).charCodeAt(0)===34}e.isStringDoubleQuoted=isStringDoubleQuoted;function getDeclarationOfExpando(t){if(!t.parent){return undefined}var r;var n;if(e.isVariableDeclaration(t.parent)&&t.parent.initializer===t){if(!isInJSFile(t)&&!isVarConst(t.parent)){return undefined}r=t.parent.name;n=t.parent}else if(e.isBinaryExpression(t.parent)&&t.parent.operatorToken.kind===59&&t.parent.right===t){r=t.parent.left;n=r}else if(e.isBinaryExpression(t.parent)&&t.parent.operatorToken.kind===55){if(e.isVariableDeclaration(t.parent.parent)&&t.parent.parent.initializer===t.parent){r=t.parent.parent.name;n=t.parent.parent}else if(e.isBinaryExpression(t.parent.parent)&&t.parent.parent.operatorToken.kind===59&&t.parent.parent.right===t.parent){r=t.parent.parent.left;n=r}if(!r||!isEntityNameExpression(r)||!isSameEntityName(r,t.parent.left)){return undefined}}if(!r||!getExpandoInitializer(t,isPrototypeAccess(r))){return undefined}return n}e.getDeclarationOfExpando=getDeclarationOfExpando;function isAssignmentDeclaration(t){return e.isBinaryExpression(t)||e.isPropertyAccessExpression(t)||e.isIdentifier(t)||e.isCallExpression(t)}e.isAssignmentDeclaration=isAssignmentDeclaration;function getEffectiveInitializer(t){if(isInJSFile(t)&&t.initializer&&e.isBinaryExpression(t.initializer)&&t.initializer.operatorToken.kind===55&&t.name&&isEntityNameExpression(t.name)&&isSameEntityName(t.name,t.initializer.left)){return t.initializer.right}return t.initializer}e.getEffectiveInitializer=getEffectiveInitializer;function getDeclaredExpandoInitializer(e){var t=getEffectiveInitializer(e);return t&&getExpandoInitializer(t,isPrototypeAccess(e.name))}e.getDeclaredExpandoInitializer=getDeclaredExpandoInitializer;function hasExpandoValueProperty(t,r){return e.forEach(t.properties,function(t){return e.isPropertyAssignment(t)&&e.isIdentifier(t.name)&&t.name.escapedText==="value"&&t.initializer&&getExpandoInitializer(t.initializer,r)})}function getAssignedExpandoInitializer(t){if(t&&t.parent&&e.isBinaryExpression(t.parent)&&t.parent.operatorToken.kind===59){var r=isPrototypeAccess(t.parent.left);return getExpandoInitializer(t.parent.right,r)||getDefaultedExpandoInitializer(t.parent.left,t.parent.right,r)}if(t&&e.isCallExpression(t)&&isBindableObjectDefinePropertyCall(t)){var n=hasExpandoValueProperty(t.arguments[2],t.arguments[1].text==="prototype");if(n){return n}}}e.getAssignedExpandoInitializer=getAssignedExpandoInitializer;function getExpandoInitializer(t,r){if(e.isCallExpression(t)){var n=skipParentheses(t.expression);return n.kind===196||n.kind===197?t:undefined}if(t.kind===196||t.kind===209||t.kind===197){return t}if(e.isObjectLiteralExpression(t)&&(t.properties.length===0||r)){return t}}e.getExpandoInitializer=getExpandoInitializer;function getDefaultedExpandoInitializer(t,r,n){var i=e.isBinaryExpression(r)&&r.operatorToken.kind===55&&getExpandoInitializer(r.right,n);if(i&&isSameEntityName(t,r.left)){return i}}function isDefaultedExpandoInitializer(t){var r=e.isVariableDeclaration(t.parent)?t.parent.name:e.isBinaryExpression(t.parent)&&t.parent.operatorToken.kind===59?t.parent.left:undefined;return r&&getExpandoInitializer(t.right,isPrototypeAccess(r))&&isEntityNameExpression(r)&&isSameEntityName(r,t.left)}e.isDefaultedExpandoInitializer=isDefaultedExpandoInitializer;function getNameOfExpando(t){if(e.isBinaryExpression(t.parent)){var r=t.parent.operatorToken.kind===55&&e.isBinaryExpression(t.parent.parent)?t.parent.parent:t.parent;if(r.operatorToken.kind===59&&e.isIdentifier(r.left)){return r.left}}else if(e.isVariableDeclaration(t.parent)){return t.parent.name}}e.getNameOfExpando=getNameOfExpando;function isSameEntityName(t,r){if(e.isIdentifier(t)&&e.isIdentifier(r)){return t.escapedText===r.escapedText}if(e.isIdentifier(t)&&e.isPropertyAccessExpression(r)){return(r.expression.kind===100||e.isIdentifier(r.expression)&&(r.expression.escapedText==="window"||r.expression.escapedText==="self"||r.expression.escapedText==="global"))&&isSameEntityName(t,r.name)}if(e.isPropertyAccessExpression(t)&&e.isPropertyAccessExpression(r)){return t.name.escapedText===r.name.escapedText&&isSameEntityName(t.expression,r.expression)}return false}function getRightMostAssignedExpression(e){while(isAssignmentExpression(e,true)){e=e.right}return e}e.getRightMostAssignedExpression=getRightMostAssignedExpression;function isExportsIdentifier(t){return e.isIdentifier(t)&&t.escapedText==="exports"}e.isExportsIdentifier=isExportsIdentifier;function isModuleExportsPropertyAccessExpression(t){return e.isPropertyAccessExpression(t)&&e.isIdentifier(t.expression)&&t.expression.escapedText==="module"&&t.name.escapedText==="exports"}e.isModuleExportsPropertyAccessExpression=isModuleExportsPropertyAccessExpression;function getAssignmentDeclarationKind(e){var t=getAssignmentDeclarationKindWorker(e);return t===5||isInJSFile(e)?t:0}e.getAssignmentDeclarationKind=getAssignmentDeclarationKind;function isBindableObjectDefinePropertyCall(t){return e.length(t.arguments)===3&&e.isPropertyAccessExpression(t.expression)&&e.isIdentifier(t.expression.expression)&&e.idText(t.expression.expression)==="Object"&&e.idText(t.expression.name)==="defineProperty"&&isStringOrNumericLiteralLike(t.arguments[1])&&isEntityNameExpression(t.arguments[0])}e.isBindableObjectDefinePropertyCall=isBindableObjectDefinePropertyCall;function getAssignmentDeclarationKindWorker(t){if(e.isCallExpression(t)){if(!isBindableObjectDefinePropertyCall(t)){return 0}var r=t.arguments[0];if(isExportsIdentifier(r)||isModuleExportsPropertyAccessExpression(r)){return 8}if(e.isPropertyAccessExpression(r)&&r.name.escapedText==="prototype"&&isEntityNameExpression(r.expression)){return 9}return 7}if(t.operatorToken.kind!==59||!e.isPropertyAccessExpression(t.left)){return 0}var n=t.left;if(isEntityNameExpression(n.expression)&&n.name.escapedText==="prototype"&&e.isObjectLiteralExpression(getInitializerOfBinaryExpression(t))){return 6}return getAssignmentDeclarationPropertyAccessKind(n)}function getAssignmentDeclarationPropertyAccessKind(t){if(t.expression.kind===100){return 4}else if(isModuleExportsPropertyAccessExpression(t)){return 2}else if(isEntityNameExpression(t.expression)){if(isPrototypeAccess(t.expression)){return 3}var r=t;while(e.isPropertyAccessExpression(r.expression)){r=r.expression}e.Debug.assert(e.isIdentifier(r.expression));var n=r.expression;if(n.escapedText==="exports"||n.escapedText==="module"&&r.name.escapedText==="exports"){return 1}return 5}return 0}e.getAssignmentDeclarationPropertyAccessKind=getAssignmentDeclarationPropertyAccessKind;function getInitializerOfBinaryExpression(t){while(e.isBinaryExpression(t.right)){t=t.right}return t.right}e.getInitializerOfBinaryExpression=getInitializerOfBinaryExpression;function isPrototypePropertyAssignment(t){return e.isBinaryExpression(t)&&getAssignmentDeclarationKind(t)===3}e.isPrototypePropertyAssignment=isPrototypePropertyAssignment;function isSpecialPropertyDeclaration(t){return isInJSFile(t)&&t.parent&&t.parent.kind===221&&!!e.getJSDocTypeTag(t.parent)}e.isSpecialPropertyDeclaration=isSpecialPropertyDeclaration;function isFunctionSymbol(t){if(!t||!t.valueDeclaration){return false}var r=t.valueDeclaration;return r.kind===239||e.isVariableDeclaration(r)&&r.initializer&&e.isFunctionLike(r.initializer)}e.isFunctionSymbol=isFunctionSymbol;function importFromModuleSpecifier(t){return tryGetImportFromModuleSpecifier(t)||e.Debug.fail(e.Debug.showSyntaxKind(t.parent))}e.importFromModuleSpecifier=importFromModuleSpecifier;function tryGetImportFromModuleSpecifier(t){switch(t.parent.kind){case 249:case 255:return t.parent;case 259:return t.parent.parent;case 191:return isImportCall(t.parent)||isRequireCall(t.parent,false)?t.parent:undefined;case 182:e.Debug.assert(e.isStringLiteral(t));return e.tryCast(t.parent.parent,e.isImportTypeNode);default:return undefined}}e.tryGetImportFromModuleSpecifier=tryGetImportFromModuleSpecifier;function getExternalModuleName(t){switch(t.kind){case 249:case 255:return t.moduleSpecifier;case 248:return t.moduleReference.kind===259?t.moduleReference.expression:undefined;case 183:return isLiteralImportTypeNode(t)?t.argument.literal:undefined;default:return e.Debug.assertNever(t)}}e.getExternalModuleName=getExternalModuleName;function getNamespaceDeclarationNode(t){switch(t.kind){case 249:return t.importClause&&e.tryCast(t.importClause.namedBindings,e.isNamespaceImport);case 248:return t;case 255:return undefined;default:return e.Debug.assertNever(t)}}e.getNamespaceDeclarationNode=getNamespaceDeclarationNode;function isDefaultImport(e){return e.kind===249&&!!e.importClause&&!!e.importClause.name}e.isDefaultImport=isDefaultImport;function hasQuestionToken(e){if(e){switch(e.kind){case 151:case 156:case 155:case 276:case 275:case 154:case 153:return e.questionToken!==undefined}}return false}e.hasQuestionToken=hasQuestionToken;function isJSDocConstructSignature(t){var r=e.isJSDocFunctionType(t)?e.firstOrUndefined(t.parameters):undefined;var n=e.tryCast(r&&r.name,e.isIdentifier);return!!n&&n.escapedText==="new"}e.isJSDocConstructSignature=isJSDocConstructSignature;function isJSDocTypeAlias(e){return e.kind===304||e.kind===297}e.isJSDocTypeAlias=isJSDocTypeAlias;function isTypeAlias(t){return isJSDocTypeAlias(t)||e.isTypeAliasDeclaration(t)}e.isTypeAlias=isTypeAlias;function getSourceOfAssignment(t){return e.isExpressionStatement(t)&&t.expression&&e.isBinaryExpression(t.expression)&&t.expression.operatorToken.kind===59?t.expression.right:undefined}function getSourceOfDefaultedAssignment(t){return e.isExpressionStatement(t)&&e.isBinaryExpression(t.expression)&&getAssignmentDeclarationKind(t.expression)!==0&&e.isBinaryExpression(t.expression.right)&&t.expression.right.operatorToken.kind===55?t.expression.right.right:undefined}function getSingleInitializerOfVariableStatementOrPropertyDeclaration(e){switch(e.kind){case 219:var t=getSingleVariableOfVariableStatement(e);return t&&t.initializer;case 154:return e.initializer;case 275:return e.initializer}}function getSingleVariableOfVariableStatement(t){return e.isVariableStatement(t)?e.firstOrUndefined(t.declarationList.declarations):undefined}function getNestedModuleDeclaration(t){return e.isModuleDeclaration(t)&&t.body&&t.body.kind===244?t.body:undefined}function getJSDocCommentsAndTags(t){var r;if(isVariableLike(t)&&e.hasInitializer(t)&&e.hasJSDocNodes(t.initializer)){r=e.addRange(r,t.initializer.jsDoc)}var n=t;while(n&&n.parent){if(e.hasJSDocNodes(n)){r=e.addRange(r,n.jsDoc)}if(n.kind===151){r=e.addRange(r,e.getJSDocParameterTags(n));break}if(n.kind===150){r=e.addRange(r,e.getJSDocTypeParameterTags(n));break}n=getNextJSDocCommentLocation(n)}return r||e.emptyArray}e.getJSDocCommentsAndTags=getJSDocCommentsAndTags;function getNextJSDocCommentLocation(t){var r=t.parent;if(r.kind===275||r.kind===154||r.kind===221&&t.kind===189||getNestedModuleDeclaration(r)||e.isBinaryExpression(t)&&t.operatorToken.kind===59){return r}else if(r.parent&&(getSingleVariableOfVariableStatement(r.parent)===t||e.isBinaryExpression(r)&&r.operatorToken.kind===59)){return r.parent}else if(r.parent&&r.parent.parent&&(getSingleVariableOfVariableStatement(r.parent.parent)||getSingleInitializerOfVariableStatementOrPropertyDeclaration(r.parent.parent)===t||getSourceOfDefaultedAssignment(r.parent.parent))){return r.parent.parent}}function getParameterSymbolFromJSDoc(t){if(t.symbol){return t.symbol}if(!e.isIdentifier(t.name)){return undefined}var r=t.name.escapedText;var n=getHostSignatureFromJSDoc(t);if(!n){return undefined}var i=e.find(n.parameters,function(e){return e.name.kind===72&&e.name.escapedText===r});return i&&i.symbol}e.getParameterSymbolFromJSDoc=getParameterSymbolFromJSDoc;function getHostSignatureFromJSDoc(e){return getHostSignatureFromJSDocHost(getJSDocHost(e))}e.getHostSignatureFromJSDoc=getHostSignatureFromJSDoc;function getHostSignatureFromJSDocHost(t){var r=getSourceOfDefaultedAssignment(t)||getSourceOfAssignment(t)||getSingleInitializerOfVariableStatementOrPropertyDeclaration(t)||getSingleVariableOfVariableStatement(t)||getNestedModuleDeclaration(t)||t;return r&&e.isFunctionLike(r)?r:undefined}e.getHostSignatureFromJSDocHost=getHostSignatureFromJSDocHost;function getJSDocHost(t){return e.Debug.assertDefined(findAncestor(t.parent,e.isJSDoc)).parent}e.getJSDocHost=getJSDocHost;function getTypeParameterFromJsDoc(t){var r=t.name.escapedText;var n=t.parent.parent.parent.typeParameters;return e.find(n,function(e){return e.name.escapedText===r})}e.getTypeParameterFromJsDoc=getTypeParameterFromJsDoc;function hasRestParameter(t){var r=e.lastOrUndefined(t.parameters);return!!r&&isRestParameter(r)}e.hasRestParameter=hasRestParameter;function isRestParameter(t){var r=e.isJSDocParameterTag(t)?t.typeExpression&&t.typeExpression.type:t.type;return t.dotDotDotToken!==undefined||!!r&&r.kind===290}e.isRestParameter=isRestParameter;var a;(function(e){e[e["None"]=0]="None";e[e["Definite"]=1]="Definite";e[e["Compound"]=2]="Compound"})(a=e.AssignmentKind||(e.AssignmentKind={}));function getAssignmentTargetKind(e){var t=e.parent;while(true){switch(t.kind){case 204:var r=t.operatorToken.kind;return isAssignmentOperator(r)&&t.left===e?r===59?1:2:0;case 202:case 203:var n=t.operator;return n===44||n===45?2:0;case 226:case 227:return t.initializer===e?1:0;case 195:case 187:case 208:case 213:e=t;break;case 276:if(t.name!==e){return 0}e=t.parent;break;case 275:if(t.name===e){return 0}e=t.parent;break;default:return 0}t=e.parent}}e.getAssignmentTargetKind=getAssignmentTargetKind;function isAssignmentTarget(e){return getAssignmentTargetKind(e)!==0}e.isAssignmentTarget=isAssignmentTarget;function isNodeWithPossibleHoistedDeclaration(e){switch(e.kind){case 218:case 219:case 231:case 222:case 232:case 246:case 271:case 272:case 233:case 225:case 226:case 227:case 223:case 224:case 235:case 274:return true}return false}e.isNodeWithPossibleHoistedDeclaration=isNodeWithPossibleHoistedDeclaration;function isValueSignatureDeclaration(t){return e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isMethodOrAccessor(t)||e.isFunctionDeclaration(t)||e.isConstructorDeclaration(t)}e.isValueSignatureDeclaration=isValueSignatureDeclaration;function walkUp(e,t){while(e&&e.kind===t){e=e.parent}return e}function walkUpParenthesizedTypes(e){return walkUp(e,177)}e.walkUpParenthesizedTypes=walkUpParenthesizedTypes;function walkUpParenthesizedExpressions(e){return walkUp(e,195)}e.walkUpParenthesizedExpressions=walkUpParenthesizedExpressions;function skipParentheses(e){while(e.kind===195){e=e.expression}return e}e.skipParentheses=skipParentheses;function skipParenthesesUp(e){while(e.kind===195){e=e.parent}return e}function isDeleteTarget(e){if(e.kind!==189&&e.kind!==190){return false}e=walkUpParenthesizedExpressions(e.parent);return e&&e.kind===198}e.isDeleteTarget=isDeleteTarget;function isNodeDescendantOf(e,t){while(e){if(e===t)return true;e=e.parent}return false}e.isNodeDescendantOf=isNodeDescendantOf;function isDeclarationName(t){return!e.isSourceFile(t)&&!e.isBindingPattern(t)&&e.isDeclaration(t.parent)&&t.parent.name===t}e.isDeclarationName=isDeclarationName;function getDeclarationFromName(t){var r=t.parent;switch(t.kind){case 10:case 8:if(e.isComputedPropertyName(r))return r.parent;case 72:if(e.isDeclaration(r)){return r.name===t?r:undefined}else if(e.isQualifiedName(r)){var n=r.parent;return e.isJSDocParameterTag(n)&&n.name===r?n:undefined}else{var i=r.parent;return e.isBinaryExpression(i)&&getAssignmentDeclarationKind(i)!==0&&(i.left.symbol||i.symbol)&&e.getNameOfDeclaration(i)===t?i:undefined}default:return undefined}}e.getDeclarationFromName=getDeclarationFromName;function isLiteralComputedPropertyDeclarationName(t){return(t.kind===10||t.kind===8)&&t.parent.kind===149&&e.isDeclaration(t.parent.parent)}e.isLiteralComputedPropertyDeclarationName=isLiteralComputedPropertyDeclarationName;function isIdentifierName(e){var t=e.parent;switch(t.kind){case 154:case 153:case 156:case 155:case 158:case 159:case 278:case 275:case 189:return t.name===e;case 148:if(t.right===e){while(t.kind===148){t=t.parent}return t.kind===167||t.kind===164}return false;case 186:case 253:return t.propertyName===e;case 257:case 267:return true}return false}e.isIdentifierName=isIdentifierName;function isAliasSymbolDeclaration(t){return t.kind===248||t.kind===247||t.kind===250&&!!t.name||t.kind===251||t.kind===253||t.kind===257||t.kind===254&&exportAssignmentIsAlias(t)||e.isBinaryExpression(t)&&getAssignmentDeclarationKind(t)===2&&exportAssignmentIsAlias(t)}e.isAliasSymbolDeclaration=isAliasSymbolDeclaration;function exportAssignmentIsAlias(t){var r=e.isExportAssignment(t)?t.expression:t.right;return isEntityNameExpression(r)||e.isClassExpression(r)}e.exportAssignmentIsAlias=exportAssignmentIsAlias;function getEffectiveBaseTypeNode(t){if(isInJSFile(t)){var r=e.getJSDocAugmentsTag(t);if(r){return r.class}}return getClassExtendsHeritageElement(t)}e.getEffectiveBaseTypeNode=getEffectiveBaseTypeNode;function getClassExtendsHeritageElement(e){var t=getHeritageClause(e.heritageClauses,86);return t&&t.types.length>0?t.types[0]:undefined}e.getClassExtendsHeritageElement=getClassExtendsHeritageElement;function getClassImplementsHeritageClauseElements(e){var t=getHeritageClause(e.heritageClauses,109);return t?t.types:undefined}e.getClassImplementsHeritageClauseElements=getClassImplementsHeritageClauseElements;function getAllSuperTypeNodes(t){return e.isInterfaceDeclaration(t)?getInterfaceBaseTypeNodes(t)||e.emptyArray:e.isClassLike(t)?e.concatenate(e.singleElementArray(getEffectiveBaseTypeNode(t)),getClassImplementsHeritageClauseElements(t))||e.emptyArray:e.emptyArray}e.getAllSuperTypeNodes=getAllSuperTypeNodes;function getInterfaceBaseTypeNodes(e){var t=getHeritageClause(e.heritageClauses,86);return t?t.types:undefined}e.getInterfaceBaseTypeNodes=getInterfaceBaseTypeNodes;function getHeritageClause(e,t){if(e){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(i.token===t){return i}}}return undefined}e.getHeritageClause=getHeritageClause;function tryResolveScriptReference(t,r,n){if(!t.getCompilerOptions().noResolve){var i=e.isRootedDiskPath(n.fileName)?n.fileName:e.combinePaths(e.getDirectoryPath(r.fileName),n.fileName);return t.getSourceFile(i)}}e.tryResolveScriptReference=tryResolveScriptReference;function getAncestor(e,t){while(e){if(e.kind===t){return e}e=e.parent}return undefined}e.getAncestor=getAncestor;function isKeyword(e){return 73<=e&&e<=147}e.isKeyword=isKeyword;function isContextualKeyword(e){return 118<=e&&e<=147}e.isContextualKeyword=isContextualKeyword;function isNonContextualKeyword(e){return isKeyword(e)&&!isContextualKeyword(e)}e.isNonContextualKeyword=isNonContextualKeyword;function isStringANonContextualKeyword(t){var r=e.stringToToken(t);return r!==undefined&&isNonContextualKeyword(r)}e.isStringANonContextualKeyword=isStringANonContextualKeyword;function isIdentifierANonContextualKeyword(e){var t=e.originalKeywordKind;return!!t&&!isContextualKeyword(t)}e.isIdentifierANonContextualKeyword=isIdentifierANonContextualKeyword;function isTrivia(e){return 2<=e&&e<=7}e.isTrivia=isTrivia;var o;(function(e){e[e["Normal"]=0]="Normal";e[e["Generator"]=1]="Generator";e[e["Async"]=2]="Async";e[e["Invalid"]=4]="Invalid";e[e["AsyncGenerator"]=3]="AsyncGenerator"})(o=e.FunctionFlags||(e.FunctionFlags={}));function getFunctionFlags(e){if(!e){return 4}var t=0;switch(e.kind){case 239:case 196:case 156:if(e.asteriskToken){t|=1}case 197:if(hasModifier(e,256)){t|=2}break}if(!e.body){t|=4}return t}e.getFunctionFlags=getFunctionFlags;function isAsyncFunction(e){switch(e.kind){case 239:case 196:case 197:case 156:return e.body!==undefined&&e.asteriskToken===undefined&&hasModifier(e,256)}return false}e.isAsyncFunction=isAsyncFunction;function isStringOrNumericLiteralLike(t){return e.isStringLiteralLike(t)||e.isNumericLiteral(t)}e.isStringOrNumericLiteralLike=isStringOrNumericLiteralLike;function hasDynamicName(t){var r=e.getNameOfDeclaration(t);return!!r&&isDynamicName(r)}e.hasDynamicName=hasDynamicName;function isDynamicName(e){return e.kind===149&&!isStringOrNumericLiteralLike(e.expression)&&!isWellKnownSymbolSyntactically(e.expression)}e.isDynamicName=isDynamicName;function isWellKnownSymbolSyntactically(t){return e.isPropertyAccessExpression(t)&&isESSymbolIdentifier(t.expression)}e.isWellKnownSymbolSyntactically=isWellKnownSymbolSyntactically;function getPropertyNameForPropertyNameNode(t){switch(t.kind){case 72:return t.escapedText;case 10:case 8:return e.escapeLeadingUnderscores(t.text);case 149:var r=t.expression;if(isWellKnownSymbolSyntactically(r)){return getPropertyNameForKnownSymbolName(e.idText(r.name))}else if(isStringOrNumericLiteralLike(r)){return e.escapeLeadingUnderscores(r.text)}return undefined;default:return e.Debug.assertNever(t)}}e.getPropertyNameForPropertyNameNode=getPropertyNameForPropertyNameNode;function isPropertyNameLiteral(e){switch(e.kind){case 72:case 10:case 14:case 8:return true;default:return false}}e.isPropertyNameLiteral=isPropertyNameLiteral;function getTextOfIdentifierOrLiteral(t){return t.kind===72?e.idText(t):t.text}e.getTextOfIdentifierOrLiteral=getTextOfIdentifierOrLiteral;function getEscapedTextOfIdentifierOrLiteral(t){return t.kind===72?t.escapedText:e.escapeLeadingUnderscores(t.text)}e.getEscapedTextOfIdentifierOrLiteral=getEscapedTextOfIdentifierOrLiteral;function getPropertyNameForKnownSymbolName(e){return"__@"+e}e.getPropertyNameForKnownSymbolName=getPropertyNameForKnownSymbolName;function isKnownSymbol(t){return e.startsWith(t.escapedName,"__@")}e.isKnownSymbol=isKnownSymbol;function isESSymbolIdentifier(e){return e.kind===72&&e.escapedText==="Symbol"}e.isESSymbolIdentifier=isESSymbolIdentifier;function isPushOrUnshiftIdentifier(e){return e.escapedText==="push"||e.escapedText==="unshift"}e.isPushOrUnshiftIdentifier=isPushOrUnshiftIdentifier;function isParameterDeclaration(e){var t=getRootDeclaration(e);return t.kind===151}e.isParameterDeclaration=isParameterDeclaration;function getRootDeclaration(e){while(e.kind===186){e=e.parent.parent}return e}e.getRootDeclaration=getRootDeclaration;function nodeStartsNewLexicalEnvironment(e){var t=e.kind;return t===157||t===196||t===239||t===197||t===156||t===158||t===159||t===244||t===279}e.nodeStartsNewLexicalEnvironment=nodeStartsNewLexicalEnvironment;function nodeIsSynthesized(t){return e.positionIsSynthesized(t.pos)||e.positionIsSynthesized(t.end)}e.nodeIsSynthesized=nodeIsSynthesized;function getOriginalSourceFile(t){return e.getParseTreeNode(t,e.isSourceFile)||t}e.getOriginalSourceFile=getOriginalSourceFile;var s;(function(e){e[e["Left"]=0]="Left";e[e["Right"]=1]="Right"})(s=e.Associativity||(e.Associativity={}));function getExpressionAssociativity(e){var t=getOperator(e);var r=e.kind===192&&e.arguments!==undefined;return getOperatorAssociativity(e.kind,t,r)}e.getExpressionAssociativity=getExpressionAssociativity;function getOperatorAssociativity(e,t,r){switch(e){case 192:return r?0:1;case 202:case 199:case 200:case 198:case 201:case 205:case 207:return 1;case 204:switch(t){case 41:case 59:case 60:case 61:case 63:case 62:case 64:case 65:case 66:case 67:case 68:case 69:case 71:case 70:return 1}}return 0}e.getOperatorAssociativity=getOperatorAssociativity;function getExpressionPrecedence(e){var t=getOperator(e);var r=e.kind===192&&e.arguments!==undefined;return getOperatorPrecedence(e.kind,t,r)}e.getExpressionPrecedence=getExpressionPrecedence;function getOperator(e){if(e.kind===204){return e.operatorToken.kind}else if(e.kind===202||e.kind===203){return e.operator}else{return e.kind}}e.getOperator=getOperator;function getOperatorPrecedence(e,t,r){switch(e){case 309:return 0;case 208:return 1;case 207:return 2;case 205:return 4;case 204:switch(t){case 27:return 0;case 59:case 60:case 61:case 63:case 62:case 64:case 65:case 66:case 67:case 68:case 69:case 71:case 70:return 3;default:return getBinaryOperatorPrecedence(t)}case 202:case 199:case 200:case 198:case 201:return 16;case 203:return 17;case 191:return 18;case 192:return r?19:18;case 193:case 189:case 190:return 19;case 100:case 98:case 72:case 96:case 102:case 87:case 8:case 9:case 10:case 187:case 188:case 196:case 197:case 209:case 260:case 261:case 264:case 13:case 14:case 206:case 195:case 210:return 20;default:return-1}}e.getOperatorPrecedence=getOperatorPrecedence;function getBinaryOperatorPrecedence(e){switch(e){case 55:return 5;case 54:return 6;case 50:return 7;case 51:return 8;case 49:return 9;case 33:case 34:case 35:case 36:return 10;case 28:case 30:case 31:case 32:case 94:case 93:case 119:return 11;case 46:case 47:case 48:return 12;case 38:case 39:return 13;case 40:case 42:case 43:return 14;case 41:return 15}return-1}e.getBinaryOperatorPrecedence=getBinaryOperatorPrecedence;function createDiagnosticCollection(){var t=[];var r=[];var n=e.createMap();var i=false;return{add:add,lookup:lookup,getGlobalDiagnostics:getGlobalDiagnostics,getDiagnostics:getDiagnostics,reattachFileDiagnostics:reattachFileDiagnostics};function reattachFileDiagnostics(t){e.forEach(n.get(t.fileName),function(e){return e.file=t})}function lookup(r){var i;if(r.file){i=n.get(r.file.fileName)}else{i=t}if(!i){return undefined}var a=e.binarySearch(i,r,e.identity,e.compareDiagnosticsSkipRelatedInformation);if(a>=0){return i[a]}return undefined}function add(a){var o;if(a.file){o=n.get(a.file.fileName);if(!o){o=[];n.set(a.file.fileName,o);e.insertSorted(r,a.file.fileName,e.compareStringsCaseSensitive)}}else{if(i){i=false;t=t.slice()}o=t}e.insertSorted(o,a,e.compareDiagnostics)}function getGlobalDiagnostics(){i=true;return t}function getDiagnostics(i){if(i){return n.get(i)||[]}var a=e.flatMapToMutable(r,function(e){return n.get(e)});if(!t.length){return a}a.unshift.apply(a,t);return a}}e.createDiagnosticCollection=createDiagnosticCollection;var c=/[\\\"\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g;var u=/[\\\'\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g;var l=/[\\\`\u0000-\u001f\t\v\f\b\r\n\u2028\u2029\u0085]/g;var f=e.createMapFromTemplate({"\t":"\\t","\v":"\\v","\f":"\\f","\b":"\\b","\r":"\\r","\n":"\\n","\\":"\\\\",'"':'\\"',"'":"\\'","`":"\\`","\u2028":"\\u2028","\u2029":"\\u2029","…":"\\u0085"});function escapeString(e,t){var r=t===96?l:t===39?u:c;return e.replace(r,getReplacement)}e.escapeString=escapeString;function getReplacement(e,t,r){if(e.charCodeAt(0)===0){var n=r.charCodeAt(t+e.length);if(n>=48&&n<=57){return"\\x00"}return"\\0"}return f.get(e)||get16BitUnicodeEscapeSequence(e.charCodeAt(0))}function isIntrinsicJsxName(t){var r=t.charCodeAt(0);return r>=97&&r<=122||e.stringContains(t,"-")}e.isIntrinsicJsxName=isIntrinsicJsxName;function get16BitUnicodeEscapeSequence(e){var t=e.toString(16).toUpperCase();var r=("0000"+t).slice(-4);return"\\u"+r}var d=/[^\u0000-\u007F]/g;function escapeNonAsciiString(e,t){e=escapeString(e,t);return d.test(e)?e.replace(d,function(e){return get16BitUnicodeEscapeSequence(e.charCodeAt(0))}):e}e.escapeNonAsciiString=escapeNonAsciiString;var p=[""," "];function getIndentString(e){if(p[e]===undefined){p[e]=getIndentString(e-1)+p[1]}return p[e]}e.getIndentString=getIndentString;function getIndentSize(){return p[1].length}e.getIndentSize=getIndentSize;function createTextWriter(t){var r;var n;var i;var a;var o;function updateLineCountAndPosFor(t){var n=e.computeLineStarts(t);if(n.length>1){a=a+n.length-1;o=r.length-t.length+e.last(n);i=o-r.length===0}else{i=false}}function write(e){if(e&&e.length){if(i){e=getIndentString(n)+e;i=false}r+=e;updateLineCountAndPosFor(e)}}function reset(){r="";n=0;i=true;a=0;o=0}function rawWrite(e){if(e!==undefined){r+=e;updateLineCountAndPosFor(e)}}function writeLiteral(e){if(e&&e.length){write(e)}}function writeLine(){if(!i){r+=t;a++;o=r.length;i=true}}reset();return{write:write,rawWrite:rawWrite,writeLiteral:writeLiteral,writeLine:writeLine,increaseIndent:function(){n++},decreaseIndent:function(){n--},getIndent:function(){return n},getTextPos:function(){return r.length},getLine:function(){return a},getColumn:function(){return i?n*getIndentSize():r.length-o},getText:function(){return r},isAtStartOfLine:function(){return i},clear:reset,reportInaccessibleThisError:e.noop,reportPrivateInBaseOfClassExpression:e.noop,reportInaccessibleUniqueSymbolError:e.noop,trackSymbol:e.noop,writeKeyword:write,writeOperator:write,writeParameter:write,writeProperty:write,writePunctuation:write,writeSpace:write,writeStringLiteral:write,writeSymbol:function(e,t){return write(e)},writeTrailingSemicolon:write,writeComment:write}}e.createTextWriter=createTextWriter;function getTrailingSemicolonOmittingWriter(e){var t=false;function commitPendingTrailingSemicolon(){if(t){e.writeTrailingSemicolon(";");t=false}}return n({},e,{writeTrailingSemicolon:function(){t=true},writeLiteral:function(t){commitPendingTrailingSemicolon();e.writeLiteral(t)},writeStringLiteral:function(t){commitPendingTrailingSemicolon();e.writeStringLiteral(t)},writeSymbol:function(t,r){commitPendingTrailingSemicolon();e.writeSymbol(t,r)},writePunctuation:function(t){commitPendingTrailingSemicolon();e.writePunctuation(t)},writeKeyword:function(t){commitPendingTrailingSemicolon();e.writeKeyword(t)},writeOperator:function(t){commitPendingTrailingSemicolon();e.writeOperator(t)},writeParameter:function(t){commitPendingTrailingSemicolon();e.writeParameter(t)},writeSpace:function(t){commitPendingTrailingSemicolon();e.writeSpace(t)},writeProperty:function(t){commitPendingTrailingSemicolon();e.writeProperty(t)},writeComment:function(t){commitPendingTrailingSemicolon();e.writeComment(t)},writeLine:function(){commitPendingTrailingSemicolon();e.writeLine()},increaseIndent:function(){commitPendingTrailingSemicolon();e.increaseIndent()},decreaseIndent:function(){commitPendingTrailingSemicolon();e.decreaseIndent()}})}e.getTrailingSemicolonOmittingWriter=getTrailingSemicolonOmittingWriter;function getResolvedExternalModuleName(e,t,r){return t.moduleName||getExternalModuleNameFromPath(e,t.fileName,r&&r.fileName)}e.getResolvedExternalModuleName=getResolvedExternalModuleName;function getExternalModuleNameFromDeclaration(e,t,r){var n=t.getExternalModuleFileFromDeclaration(r);if(!n||n.isDeclarationFile){return undefined}return getResolvedExternalModuleName(e,n)}e.getExternalModuleNameFromDeclaration=getExternalModuleNameFromDeclaration;function getExternalModuleNameFromPath(t,r,n){var i=function(e){return t.getCanonicalFileName(e)};var a=toPath(n?e.getDirectoryPath(n):t.getCommonSourceDirectory(),t.getCurrentDirectory(),i);var o=e.getNormalizedAbsolutePath(r,t.getCurrentDirectory());var s=e.getRelativePathToDirectoryOrUrl(a,o,a,i,false);var c=e.removeFileExtension(s);return n?e.ensurePathIsNonModuleName(c):c}e.getExternalModuleNameFromPath=getExternalModuleNameFromPath;function getOwnEmitOutputFilePath(t,r,n){var i=r.getCompilerOptions();var a;if(i.outDir){a=e.removeFileExtension(getSourceFilePathInNewDir(t,r,i.outDir))}else{a=e.removeFileExtension(t)}return a+n}e.getOwnEmitOutputFilePath=getOwnEmitOutputFilePath;function getDeclarationEmitOutputFilePath(e,t){return getDeclarationEmitOutputFilePathWorker(e,t.getCompilerOptions(),t.getCurrentDirectory(),t.getCommonSourceDirectory(),function(e){return t.getCanonicalFileName(e)})}e.getDeclarationEmitOutputFilePath=getDeclarationEmitOutputFilePath;function getDeclarationEmitOutputFilePathWorker(t,r,n,i,a){var o=r.declarationDir||r.outDir;var s=o?getSourceFilePathInNewDirWorker(t,o,n,i,a):t;return e.removeFileExtension(s)+".d.ts"}e.getDeclarationEmitOutputFilePathWorker=getDeclarationEmitOutputFilePathWorker;function getSourceFilesToEmit(t,r){var n=t.getCompilerOptions();var i=function(e){return t.isSourceFileFromExternalLibrary(e)};if(n.outFile||n.out){var a=e.getEmitModuleKind(n);var o=n.emitDeclarationOnly||a===e.ModuleKind.AMD||a===e.ModuleKind.System;return e.filter(t.getSourceFiles(),function(t){return(o||!e.isExternalModule(t))&&sourceFileMayBeEmitted(t,n,i)})}else{var s=r===undefined?t.getSourceFiles():[r];return e.filter(s,function(e){return sourceFileMayBeEmitted(e,n,i)})}}e.getSourceFilesToEmit=getSourceFilesToEmit;function sourceFileMayBeEmitted(e,t,r){return!(t.noEmitForJsFiles&&isSourceFileJS(e))&&!e.isDeclarationFile&&!r(e)}e.sourceFileMayBeEmitted=sourceFileMayBeEmitted;function getSourceFilePathInNewDir(e,t,r){return getSourceFilePathInNewDirWorker(e,r,t.getCurrentDirectory(),t.getCommonSourceDirectory(),function(e){return t.getCanonicalFileName(e)})}e.getSourceFilePathInNewDir=getSourceFilePathInNewDir;function getSourceFilePathInNewDirWorker(t,r,n,i,a){var o=e.getNormalizedAbsolutePath(t,n);var s=a(o).indexOf(a(i))===0;o=s?o.substring(i.length):o;return e.combinePaths(r,o)}e.getSourceFilePathInNewDirWorker=getSourceFilePathInNewDirWorker;function writeFile(t,r,n,i,a,o){t.writeFile(n,i,a,function(t){r.add(e.createCompilerDiagnostic(e.Diagnostics.Could_not_write_file_0_Colon_1,n,t))},o)}e.writeFile=writeFile;function getLineOfLocalPosition(t,r){return e.getLineAndCharacterOfPosition(t,r).line}e.getLineOfLocalPosition=getLineOfLocalPosition;function getLineOfLocalPositionFromLineMap(t,r){return e.computeLineAndCharacterOfPosition(t,r).line}e.getLineOfLocalPositionFromLineMap=getLineOfLocalPositionFromLineMap;function getFirstConstructorWithBody(t){return e.find(t.members,function(t){return e.isConstructorDeclaration(t)&&nodeIsPresent(t.body)})}e.getFirstConstructorWithBody=getFirstConstructorWithBody;function getSetAccessorValueParameter(e){if(e&&e.parameters.length>0){var t=e.parameters.length===2&&parameterIsThisKeyword(e.parameters[0]);return e.parameters[t?1:0]}}function getSetAccessorTypeAnnotationNode(e){var t=getSetAccessorValueParameter(e);return t&&t.type}e.getSetAccessorTypeAnnotationNode=getSetAccessorTypeAnnotationNode;function getThisParameter(t){if(t.parameters.length&&!e.isJSDocSignature(t)){var r=t.parameters[0];if(parameterIsThisKeyword(r)){return r}}}e.getThisParameter=getThisParameter;function parameterIsThisKeyword(e){return isThisIdentifier(e.name)}e.parameterIsThisKeyword=parameterIsThisKeyword;function isThisIdentifier(e){return!!e&&e.kind===72&&identifierIsThisKeyword(e)}e.isThisIdentifier=isThisIdentifier;function identifierIsThisKeyword(e){return e.originalKeywordKind===100}e.identifierIsThisKeyword=identifierIsThisKeyword;function getAllAccessorDeclarations(t,r){var n;var i;var a;var o;if(hasDynamicName(r)){n=r;if(r.kind===158){a=r}else if(r.kind===159){o=r}else{e.Debug.fail("Accessor has wrong kind")}}else{e.forEach(t,function(t){if(e.isAccessor(t)&&hasModifier(t,32)===hasModifier(r,32)){var s=getPropertyNameForPropertyNameNode(t.name);var c=getPropertyNameForPropertyNameNode(r.name);if(s===c){if(!n){n=t}else if(!i){i=t}if(t.kind===158&&!a){a=t}if(t.kind===159&&!o){o=t}}}})}return{firstAccessor:n,secondAccessor:i,getAccessor:a,setAccessor:o}}e.getAllAccessorDeclarations=getAllAccessorDeclarations;function getEffectiveTypeAnnotationNode(t){var r=t.type;if(r||!isInJSFile(t))return r;return e.isJSDocPropertyLikeTag(t)?t.typeExpression&&t.typeExpression.type:e.getJSDocType(t)}e.getEffectiveTypeAnnotationNode=getEffectiveTypeAnnotationNode;function getTypeAnnotationNode(e){return e.type}e.getTypeAnnotationNode=getTypeAnnotationNode;function getEffectiveReturnTypeNode(t){return e.isJSDocSignature(t)?t.type&&t.type.typeExpression&&t.type.typeExpression.type:t.type||(isInJSFile(t)?e.getJSDocReturnType(t):undefined)}e.getEffectiveReturnTypeNode=getEffectiveReturnTypeNode;function getJSDocTypeParameterDeclarations(t){return e.flatMap(e.getJSDocTags(t),function(e){return isNonTypeAliasTemplate(e)?e.typeParameters:undefined})}e.getJSDocTypeParameterDeclarations=getJSDocTypeParameterDeclarations;function isNonTypeAliasTemplate(t){return e.isJSDocTemplateTag(t)&&!(t.parent.kind===291&&t.parent.tags.some(isJSDocTypeAlias))}function getEffectiveSetAccessorTypeAnnotationNode(e){var t=getSetAccessorValueParameter(e);return t&&getEffectiveTypeAnnotationNode(t)}e.getEffectiveSetAccessorTypeAnnotationNode=getEffectiveSetAccessorTypeAnnotationNode;function emitNewLineBeforeLeadingComments(e,t,r,n){emitNewLineBeforeLeadingCommentsOfPosition(e,t,r.pos,n)}e.emitNewLineBeforeLeadingComments=emitNewLineBeforeLeadingComments;function emitNewLineBeforeLeadingCommentsOfPosition(e,t,r,n){if(n&&n.length&&r!==n[0].pos&&getLineOfLocalPositionFromLineMap(e,r)!==getLineOfLocalPositionFromLineMap(e,n[0].pos)){t.writeLine()}}e.emitNewLineBeforeLeadingCommentsOfPosition=emitNewLineBeforeLeadingCommentsOfPosition;function emitNewLineBeforeLeadingCommentOfPosition(e,t,r,n){if(r!==n&&getLineOfLocalPositionFromLineMap(e,r)!==getLineOfLocalPositionFromLineMap(e,n)){t.writeLine()}}e.emitNewLineBeforeLeadingCommentOfPosition=emitNewLineBeforeLeadingCommentOfPosition;function emitComments(e,t,r,n,i,a,o,s){if(n&&n.length>0){if(i){r.writeSpace(" ")}var c=false;for(var u=0,l=n;u<l.length;u++){var f=l[u];if(c){r.writeSpace(" ");c=false}s(e,t,r,f.pos,f.end,o);if(f.hasTrailingNewLine){r.writeLine()}else{c=true}}if(c&&a){r.writeSpace(" ")}}}e.emitComments=emitComments;function emitDetachedComments(t,r,n,i,a,o,s){var c;var u;if(s){if(a.pos===0){c=e.filter(e.getLeadingCommentRanges(t,a.pos),isPinnedCommentLocal)}}else{c=e.getLeadingCommentRanges(t,a.pos)}if(c){var l=[];var f=void 0;for(var d=0,p=c;d<p.length;d++){var g=p[d];if(f){var _=getLineOfLocalPositionFromLineMap(r,f.end);var m=getLineOfLocalPositionFromLineMap(r,g.pos);if(m>=_+2){break}}l.push(g);f=g}if(l.length){var _=getLineOfLocalPositionFromLineMap(r,e.last(l).end);var y=getLineOfLocalPositionFromLineMap(r,e.skipTrivia(t,a.pos));if(y>=_+2){emitNewLineBeforeLeadingComments(r,n,a,c);emitComments(t,r,n,l,false,true,o,i);u={nodePos:a.pos,detachedCommentEndPos:e.last(l).end}}}}return u;function isPinnedCommentLocal(e){return isPinnedComment(t,e.pos)}}e.emitDetachedComments=emitDetachedComments;function writeCommentRange(t,r,n,i,a,o){if(t.charCodeAt(i+1)===42){var s=e.computeLineAndCharacterOfPosition(r,i);var c=r.length;var u=void 0;for(var l=i,f=s.line;l<a;f++){var d=f+1===c?t.length+1:r[f+1];if(l!==i){if(u===undefined){u=calculateIndent(t,r[s.line],i)}var p=n.getIndent()*getIndentSize();var g=p-u+calculateIndent(t,l,d);if(g>0){var _=g%getIndentSize();var m=getIndentString((g-_)/getIndentSize());n.rawWrite(m);while(_){n.rawWrite(" ");_--}}else{n.rawWrite("")}}writeTrimmedCurrentLine(t,a,n,o,l,d);l=d}}else{n.writeComment(t.substring(i,a))}}e.writeCommentRange=writeCommentRange;function writeTrimmedCurrentLine(e,t,r,n,i,a){var o=Math.min(t,a-1);var s=e.substring(i,o).replace(/^\s+|\s+$/g,"");if(s){r.writeComment(s);if(o!==t){r.writeLine()}}else{r.rawWrite(n)}}function calculateIndent(t,r,n){var i=0;for(;r<n&&e.isWhiteSpaceSingleLine(t.charCodeAt(r));r++){if(t.charCodeAt(r)===9){i+=getIndentSize()-i%getIndentSize()}else{i++}}return i}function hasModifiers(e){return getModifierFlags(e)!==0}e.hasModifiers=hasModifiers;function hasModifier(e,t){return!!getSelectedModifierFlags(e,t)}e.hasModifier=hasModifier;function hasStaticModifier(e){return hasModifier(e,32)}e.hasStaticModifier=hasStaticModifier;function hasReadonlyModifier(e){return hasModifier(e,64)}e.hasReadonlyModifier=hasReadonlyModifier;function getSelectedModifierFlags(e,t){return getModifierFlags(e)&t}e.getSelectedModifierFlags=getSelectedModifierFlags;function getModifierFlags(e){if(e.modifierFlagsCache&536870912){return e.modifierFlagsCache&~536870912}var t=getModifierFlagsNoCache(e);e.modifierFlagsCache=t|536870912;return t}e.getModifierFlags=getModifierFlags;function getModifierFlagsNoCache(e){var t=0;if(e.modifiers){for(var r=0,n=e.modifiers;r<n.length;r++){var i=n[r];t|=modifierToFlag(i.kind)}}if(e.flags&4||e.kind===72&&e.isInJSDocNamespace){t|=1}return t}e.getModifierFlagsNoCache=getModifierFlagsNoCache;function modifierToFlag(e){switch(e){case 116:return 32;case 115:return 4;case 114:return 16;case 113:return 8;case 118:return 128;case 85:return 1;case 125:return 2;case 77:return 2048;case 80:return 512;case 121:return 256;case 133:return 64}return 0}e.modifierToFlag=modifierToFlag;function isLogicalOperator(e){return e===55||e===54||e===52}e.isLogicalOperator=isLogicalOperator;function isAssignmentOperator(e){return e>=59&&e<=71}e.isAssignmentOperator=isAssignmentOperator;function tryGetClassExtendingExpressionWithTypeArguments(e){var t=tryGetClassImplementingOrExtendingExpressionWithTypeArguments(e);return t&&!t.isImplements?t.class:undefined}e.tryGetClassExtendingExpressionWithTypeArguments=tryGetClassExtendingExpressionWithTypeArguments;function tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t){return e.isExpressionWithTypeArguments(t)&&e.isHeritageClause(t.parent)&&e.isClassLike(t.parent.parent)?{class:t.parent.parent,isImplements:t.parent.token===109}:undefined}e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments=tryGetClassImplementingOrExtendingExpressionWithTypeArguments;function isAssignmentExpression(t,r){return e.isBinaryExpression(t)&&(r?t.operatorToken.kind===59:isAssignmentOperator(t.operatorToken.kind))&&e.isLeftHandSideExpression(t.left)}e.isAssignmentExpression=isAssignmentExpression;function isDestructuringAssignment(e){if(isAssignmentExpression(e,true)){var t=e.left.kind;return t===188||t===187}return false}e.isDestructuringAssignment=isDestructuringAssignment;function isExpressionWithTypeArgumentsInClassExtendsClause(e){return tryGetClassExtendingExpressionWithTypeArguments(e)!==undefined}e.isExpressionWithTypeArgumentsInClassExtendsClause=isExpressionWithTypeArgumentsInClassExtendsClause;function isEntityNameExpression(e){return e.kind===72||isPropertyAccessEntityNameExpression(e)}e.isEntityNameExpression=isEntityNameExpression;function isPropertyAccessEntityNameExpression(t){return e.isPropertyAccessExpression(t)&&isEntityNameExpression(t.expression)}e.isPropertyAccessEntityNameExpression=isPropertyAccessEntityNameExpression;function isPrototypeAccess(t){return e.isPropertyAccessExpression(t)&&t.name.escapedText==="prototype"}e.isPrototypeAccess=isPrototypeAccess;function isRightSideOfQualifiedNameOrPropertyAccess(e){return e.parent.kind===148&&e.parent.right===e||e.parent.kind===189&&e.parent.name===e}e.isRightSideOfQualifiedNameOrPropertyAccess=isRightSideOfQualifiedNameOrPropertyAccess;function isEmptyObjectLiteral(e){return e.kind===188&&e.properties.length===0}e.isEmptyObjectLiteral=isEmptyObjectLiteral;function isEmptyArrayLiteral(e){return e.kind===187&&e.elements.length===0}e.isEmptyArrayLiteral=isEmptyArrayLiteral;function getLocalSymbolForExportDefault(e){return isExportDefaultSymbol(e)?e.declarations[0].localSymbol:undefined}e.getLocalSymbolForExportDefault=getLocalSymbolForExportDefault;function isExportDefaultSymbol(t){return t&&e.length(t.declarations)>0&&hasModifier(t.declarations[0],512)}function tryExtractTSExtension(t){return e.find(e.supportedTSExtensionsForExtractExtension,function(r){return e.fileExtensionIs(t,r)})}e.tryExtractTSExtension=tryExtractTSExtension;function getExpandedCharCodes(t){var r=[];var n=t.length;for(var i=0;i<n;i++){var a=t.charCodeAt(i);if(a<128){r.push(a)}else if(a<2048){r.push(a>>6|192);r.push(a&63|128)}else if(a<65536){r.push(a>>12|224);r.push(a>>6&63|128);r.push(a&63|128)}else if(a<131072){r.push(a>>18|240);r.push(a>>12&63|128);r.push(a>>6&63|128);r.push(a&63|128)}else{e.Debug.assert(false,"Unexpected code point")}}return r}var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function convertToBase64(e){var t="";var r=getExpandedCharCodes(e);var n=0;var i=r.length;var a,o,s,c;while(n<i){a=r[n]>>2;o=(r[n]&3)<<4|r[n+1]>>4;s=(r[n+1]&15)<<2|r[n+2]>>6;c=r[n+2]&63;if(n+1>=i){s=c=64}else if(n+2>=i){c=64}t+=g.charAt(a)+g.charAt(o)+g.charAt(s)+g.charAt(c);n+=3}return t}e.convertToBase64=convertToBase64;function getStringFromExpandedCharCodes(e){var t="";var r=0;var n=e.length;while(r<n){var i=e[r];if(i<128){t+=String.fromCharCode(i);r++}else if((i&192)===192){var a=i&63;r++;var o=e[r];while((o&192)===128){a=a<<6|o&63;r++;o=e[r]}t+=String.fromCharCode(a)}else{t+=String.fromCharCode(i);r++}}return t}function base64encode(e,t){if(e&&e.base64encode){return e.base64encode(t)}return convertToBase64(t)}e.base64encode=base64encode;function base64decode(e,t){if(e&&e.base64decode){return e.base64decode(t)}var r=t.length;var n=[];var i=0;while(i<r){if(t.charCodeAt(i)===g.charCodeAt(64)){break}var a=g.indexOf(t[i]);var o=g.indexOf(t[i+1]);var s=g.indexOf(t[i+2]);var c=g.indexOf(t[i+3]);var u=(a&63)<<2|o>>4&3;var l=(o&15)<<4|s>>2&15;var f=(s&3)<<6|c&63;if(l===0&&s!==0){n.push(u)}else if(f===0&&c!==0){n.push(u,l)}else{n.push(u,l,f)}i+=4}return getStringFromExpandedCharCodes(n)}e.base64decode=base64decode;function readJson(t,r){try{var n=r.readFile(t);if(!n)return{};var i=e.parseConfigFileTextToJson(t,n);if(i.error){return{}}return i.config}catch(e){return{}}}e.readJson=readJson;function directoryProbablyExists(e,t){return!t.directoryExists||t.directoryExists(e)}e.directoryProbablyExists=directoryProbablyExists;var _="\r\n";var m="\n";function getNewLineCharacter(t,r){switch(t.newLine){case 0:return _;case 1:return m}return r?r():e.sys?e.sys.newLine:_}e.getNewLineCharacter=getNewLineCharacter;function formatEnum(e,t,r){if(e===void 0){e=0}var n=getEnumMembers(t);if(e===0){return n.length>0&&n[0][0]===0?n[0][1]:"0"}if(r){var i="";var a=e;for(var o=n.length-1;o>=0&&a!==0;o--){var s=n[o],c=s[0],u=s[1];if(c!==0&&(a&c)===c){a&=~c;i=""+u+(i?", ":"")+i}}if(a===0){return i}}else{for(var l=0,f=n;l<f.length;l++){var d=f[l],c=d[0],u=d[1];if(c===e){return u}}}return e.toString()}function getEnumMembers(t){var r=[];for(var n in t){var i=t[n];if(typeof i==="number"){r.push([i,n])}}return e.stableSort(r,function(t,r){return e.compareValues(t[0],r[0])})}function formatSyntaxKind(t){return formatEnum(t,e.SyntaxKind,false)}e.formatSyntaxKind=formatSyntaxKind;function formatModifierFlags(t){return formatEnum(t,e.ModifierFlags,true)}e.formatModifierFlags=formatModifierFlags;function formatTransformFlags(t){return formatEnum(t,e.TransformFlags,true)}e.formatTransformFlags=formatTransformFlags;function formatEmitFlags(t){return formatEnum(t,e.EmitFlags,true)}e.formatEmitFlags=formatEmitFlags;function formatSymbolFlags(t){return formatEnum(t,e.SymbolFlags,true)}e.formatSymbolFlags=formatSymbolFlags;function formatTypeFlags(t){return formatEnum(t,e.TypeFlags,true)}e.formatTypeFlags=formatTypeFlags;function formatObjectFlags(t){return formatEnum(t,e.ObjectFlags,true)}e.formatObjectFlags=formatObjectFlags;function createRange(t,r){if(r===void 0){r=t}e.Debug.assert(r>=t||r===-1);return{pos:t,end:r}}e.createRange=createRange;function moveRangeEnd(e,t){return createRange(e.pos,t)}e.moveRangeEnd=moveRangeEnd;function moveRangePos(e,t){return createRange(t,e.end)}e.moveRangePos=moveRangePos;function moveRangePastDecorators(e){return e.decorators&&e.decorators.length>0?moveRangePos(e,e.decorators.end):e}e.moveRangePastDecorators=moveRangePastDecorators;function moveRangePastModifiers(e){return e.modifiers&&e.modifiers.length>0?moveRangePos(e,e.modifiers.end):moveRangePastDecorators(e)}e.moveRangePastModifiers=moveRangePastModifiers;function isCollapsedRange(e){return e.pos===e.end}e.isCollapsedRange=isCollapsedRange;function createTokenRange(t,r){return createRange(t,t+e.tokenToString(r).length)}e.createTokenRange=createTokenRange;function rangeIsOnSingleLine(e,t){return rangeStartIsOnSameLineAsRangeEnd(e,e,t)}e.rangeIsOnSingleLine=rangeIsOnSingleLine;function rangeStartPositionsAreOnSameLine(e,t,r){return positionsAreOnSameLine(getStartPositionOfRange(e,r),getStartPositionOfRange(t,r),r)}e.rangeStartPositionsAreOnSameLine=rangeStartPositionsAreOnSameLine;function rangeEndPositionsAreOnSameLine(e,t,r){return positionsAreOnSameLine(e.end,t.end,r)}e.rangeEndPositionsAreOnSameLine=rangeEndPositionsAreOnSameLine;function rangeStartIsOnSameLineAsRangeEnd(e,t,r){return positionsAreOnSameLine(getStartPositionOfRange(e,r),t.end,r)}e.rangeStartIsOnSameLineAsRangeEnd=rangeStartIsOnSameLineAsRangeEnd;function rangeEndIsOnSameLineAsRangeStart(e,t,r){return positionsAreOnSameLine(e.end,getStartPositionOfRange(t,r),r)}e.rangeEndIsOnSameLineAsRangeStart=rangeEndIsOnSameLineAsRangeStart;function positionsAreOnSameLine(e,t,r){return e===t||getLineOfLocalPosition(r,e)===getLineOfLocalPosition(r,t)}e.positionsAreOnSameLine=positionsAreOnSameLine;function getStartPositionOfRange(t,r){return e.positionIsSynthesized(t.pos)?-1:e.skipTrivia(r.text,t.pos)}e.getStartPositionOfRange=getStartPositionOfRange;function isDeclarationNameOfEnumOrNamespace(t){var r=e.getParseTreeNode(t);if(r){switch(r.parent.kind){case 243:case 244:return r===r.parent.name}}return false}e.isDeclarationNameOfEnumOrNamespace=isDeclarationNameOfEnumOrNamespace;function getInitializedVariables(t){return e.filter(t.declarations,isInitializedVariable)}e.getInitializedVariables=getInitializedVariables;function isInitializedVariable(e){return e.initializer!==undefined}function isWatchSet(e){return e.watch&&e.hasOwnProperty("watch")}e.isWatchSet=isWatchSet;function closeFileWatcher(e){e.close()}e.closeFileWatcher=closeFileWatcher;function getCheckFlags(e){return e.flags&33554432?e.checkFlags:0}e.getCheckFlags=getCheckFlags;function getDeclarationModifierFlagsFromSymbol(t){if(t.valueDeclaration){var r=e.getCombinedModifierFlags(t.valueDeclaration);return t.parent&&t.parent.flags&32?r:r&~28}if(getCheckFlags(t)&6){var n=t.checkFlags;var i=n&256?8:n&64?4:16;var a=n&512?32:0;return i|a}if(t.flags&4194304){return 4|32}return 0}e.getDeclarationModifierFlagsFromSymbol=getDeclarationModifierFlagsFromSymbol;function skipAlias(e,t){return e.flags&2097152?t.getAliasedSymbol(e):e}e.skipAlias=skipAlias;function getCombinedLocalAndExportSymbolFlags(e){return e.exportSymbol?e.exportSymbol.flags|e.flags:e.flags}e.getCombinedLocalAndExportSymbolFlags=getCombinedLocalAndExportSymbolFlags;function isWriteOnlyAccess(e){return accessKind(e)===1}e.isWriteOnlyAccess=isWriteOnlyAccess;function isWriteAccess(e){return accessKind(e)!==0}e.isWriteAccess=isWriteAccess;var y;(function(e){e[e["Read"]=0]="Read";e[e["Write"]=1]="Write";e[e["ReadWrite"]=2]="ReadWrite"})(y||(y={}));function accessKind(e){var t=e.parent;if(!t)return 0;switch(t.kind){case 195:return accessKind(t);case 203:case 202:var r=t.operator;return r===44||r===45?writeOrReadWrite():0;case 204:var n=t,i=n.left,a=n.operatorToken;return i===e&&isAssignmentOperator(a.kind)?a.kind===59?1:writeOrReadWrite():0;case 189:return t.name!==e?0:accessKind(t);case 275:{var o=accessKind(t.parent);return e===t.name?reverseAccessKind(o):o}case 276:return e===t.objectAssignmentInitializer?0:accessKind(t.parent);case 187:return accessKind(t);default:return 0}function writeOrReadWrite(){return t.parent&&skipParenthesesUp(t.parent).kind===221?1:2}}function reverseAccessKind(t){switch(t){case 0:return 1;case 1:return 0;case 2:return 2;default:return e.Debug.assertNever(t)}}function compareDataObjects(e,t){if(!e||!t||Object.keys(e).length!==Object.keys(t).length){return false}for(var r in e){if(typeof e[r]==="object"){if(!compareDataObjects(e[r],t[r])){return false}}else if(typeof e[r]!=="function"){if(e[r]!==t[r]){return false}}}return true}e.compareDataObjects=compareDataObjects;function clearMap(e,t){e.forEach(t);e.clear()}e.clearMap=clearMap;function mutateMap(e,t,r){var n=r.createNewValue,i=r.onDeleteValue,a=r.onExistingValue;e.forEach(function(r,n){var o=t.get(n);if(o===undefined){e.delete(n);i(r,n)}else if(a){a(r,o,n)}});t.forEach(function(t,r){if(!e.has(r)){e.set(r,n(r,t))}})}e.mutateMap=mutateMap;function forEachAncestorDirectory(t,r){while(true){var n=r(t);if(n!==undefined){return n}var i=e.getDirectoryPath(t);if(i===t){return undefined}t=i}}e.forEachAncestorDirectory=forEachAncestorDirectory;function isAbstractConstructorType(e){return!!(getObjectFlags(e)&16)&&!!e.symbol&&isAbstractConstructorSymbol(e.symbol)}e.isAbstractConstructorType=isAbstractConstructorType;function isAbstractConstructorSymbol(e){if(e.flags&32){var t=getClassLikeDeclarationOfSymbol(e);return!!t&&hasModifier(t,128)}return false}e.isAbstractConstructorSymbol=isAbstractConstructorSymbol;function getClassLikeDeclarationOfSymbol(t){return e.find(t.declarations,e.isClassLike)}e.getClassLikeDeclarationOfSymbol=getClassLikeDeclarationOfSymbol;function getObjectFlags(e){return e.flags&524288?e.objectFlags:0}e.getObjectFlags=getObjectFlags;function typeHasCallOrConstructSignatures(e,t){return t.getSignaturesOfType(e,0).length!==0||t.getSignaturesOfType(e,1).length!==0}e.typeHasCallOrConstructSignatures=typeHasCallOrConstructSignatures;function forSomeAncestorDirectory(e,t){return!!forEachAncestorDirectory(e,function(e){return t(e)?true:undefined})}e.forSomeAncestorDirectory=forSomeAncestorDirectory;function isUMDExportSymbol(t){return!!t&&!!t.declarations&&!!t.declarations[0]&&e.isNamespaceExportDeclaration(t.declarations[0])}e.isUMDExportSymbol=isUMDExportSymbol;function showModuleSpecifier(t){var r=t.moduleSpecifier;return e.isStringLiteral(r)?r.text:getTextOfNode(r)}e.showModuleSpecifier=showModuleSpecifier;function getLastChild(t){var r;e.forEachChild(t,function(e){if(nodeIsPresent(e))r=e},function(e){for(var t=e.length-1;t>=0;t--){if(nodeIsPresent(e[t])){r=e[t];break}}});return r}e.getLastChild=getLastChild;function addToSeen(e,t,r){if(r===void 0){r=true}t=String(t);if(e.has(t)){return false}e.set(t,r);return true}e.addToSeen=addToSeen;function isObjectTypeDeclaration(t){return e.isClassLike(t)||e.isInterfaceDeclaration(t)||e.isTypeLiteralNode(t)}e.isObjectTypeDeclaration=isObjectTypeDeclaration;function isTypeNodeKind(e){return e>=163&&e<=183||e===120||e===143||e===135||e===146||e===136||e===123||e===138||e===139||e===100||e===106||e===141||e===96||e===132||e===211||e===284||e===285||e===286||e===287||e===288||e===289||e===290}e.isTypeNodeKind=isTypeNodeKind})(s||(s={}));(function(e){function getDefaultLibFileName(e){switch(e.target){case 6:return"lib.esnext.full.d.ts";case 5:return"lib.es2018.full.d.ts";case 4:return"lib.es2017.full.d.ts";case 3:return"lib.es2016.full.d.ts";case 2:return"lib.es6.d.ts";default:return"lib.d.ts"}}e.getDefaultLibFileName=getDefaultLibFileName;function textSpanEnd(e){return e.start+e.length}e.textSpanEnd=textSpanEnd;function textSpanIsEmpty(e){return e.length===0}e.textSpanIsEmpty=textSpanIsEmpty;function textSpanContainsPosition(e,t){return t>=e.start&&t<textSpanEnd(e)}e.textSpanContainsPosition=textSpanContainsPosition;function textRangeContainsPositionInclusive(e,t){return t>=e.pos&&t<=e.end}e.textRangeContainsPositionInclusive=textRangeContainsPositionInclusive;function textSpanContainsTextSpan(e,t){return t.start>=e.start&&textSpanEnd(t)<=textSpanEnd(e)}e.textSpanContainsTextSpan=textSpanContainsTextSpan;function textSpanOverlapsWith(e,t){return textSpanOverlap(e,t)!==undefined}e.textSpanOverlapsWith=textSpanOverlapsWith;function textSpanOverlap(e,t){var r=textSpanIntersection(e,t);return r&&r.length===0?undefined:r}e.textSpanOverlap=textSpanOverlap;function textSpanIntersectsWithTextSpan(e,t){return decodedTextSpanIntersectsWith(e.start,e.length,t.start,t.length)}e.textSpanIntersectsWithTextSpan=textSpanIntersectsWithTextSpan;function textSpanIntersectsWith(e,t,r){return decodedTextSpanIntersectsWith(e.start,e.length,t,r)}e.textSpanIntersectsWith=textSpanIntersectsWith;function decodedTextSpanIntersectsWith(e,t,r,n){var i=e+t;var a=r+n;return r<=i&&a>=e}e.decodedTextSpanIntersectsWith=decodedTextSpanIntersectsWith;function textSpanIntersectsWithPosition(e,t){return t<=textSpanEnd(e)&&t>=e.start}e.textSpanIntersectsWithPosition=textSpanIntersectsWithPosition;function textSpanIntersection(e,t){var r=Math.max(e.start,t.start);var n=Math.min(textSpanEnd(e),textSpanEnd(t));return r<=n?createTextSpanFromBounds(r,n):undefined}e.textSpanIntersection=textSpanIntersection;function createTextSpan(e,t){if(e<0){throw new Error("start < 0")}if(t<0){throw new Error("length < 0")}return{start:e,length:t}}e.createTextSpan=createTextSpan;function createTextSpanFromBounds(e,t){return createTextSpan(e,t-e)}e.createTextSpanFromBounds=createTextSpanFromBounds;function textChangeRangeNewSpan(e){return createTextSpan(e.span.start,e.newLength)}e.textChangeRangeNewSpan=textChangeRangeNewSpan;function textChangeRangeIsUnchanged(e){return textSpanIsEmpty(e.span)&&e.newLength===0}e.textChangeRangeIsUnchanged=textChangeRangeIsUnchanged;function createTextChangeRange(e,t){if(t<0){throw new Error("newLength < 0")}return{span:e,newLength:t}}e.createTextChangeRange=createTextChangeRange;e.unchangedTextChangeRange=createTextChangeRange(createTextSpan(0,0),0);function collapseTextChangeRangesAcrossMultipleVersions(t){if(t.length===0){return e.unchangedTextChangeRange}if(t.length===1){return t[0]}var r=t[0];var n=r.span.start;var i=textSpanEnd(r.span);var a=n+r.newLength;for(var o=1;o<t.length;o++){var s=t[o];var c=n;var u=i;var l=a;var f=s.span.start;var d=textSpanEnd(s.span);var p=f+s.newLength;n=Math.min(c,f);i=Math.max(u,u+(d-l));a=Math.max(p,p+(l-d))}return createTextChangeRange(createTextSpanFromBounds(n,i),a-n)}e.collapseTextChangeRangesAcrossMultipleVersions=collapseTextChangeRangesAcrossMultipleVersions;function getTypeParameterOwner(t){if(t&&t.kind===150){for(var r=t;r;r=r.parent){if(e.isFunctionLike(r)||e.isClassLike(r)||r.kind===241){return r}}}}e.getTypeParameterOwner=getTypeParameterOwner;function isParameterPropertyDeclaration(t){return e.hasModifier(t,92)&&t.parent.kind===157}e.isParameterPropertyDeclaration=isParameterPropertyDeclaration;function isEmptyBindingPattern(t){if(e.isBindingPattern(t)){return e.every(t.elements,isEmptyBindingElement)}return false}e.isEmptyBindingPattern=isEmptyBindingPattern;function isEmptyBindingElement(t){if(e.isOmittedExpression(t)){return true}return isEmptyBindingPattern(t.name)}e.isEmptyBindingElement=isEmptyBindingElement;function walkUpBindingElementsAndPatterns(t){var r=t.parent;while(e.isBindingElement(r.parent)){r=r.parent.parent}return r.parent}e.walkUpBindingElementsAndPatterns=walkUpBindingElementsAndPatterns;function getCombinedFlags(t,r){if(e.isBindingElement(t)){t=walkUpBindingElementsAndPatterns(t)}var n=r(t);if(t.kind===237){t=t.parent}if(t&&t.kind===238){n|=r(t);t=t.parent}if(t&&t.kind===219){n|=r(t)}return n}function getCombinedModifierFlags(t){return getCombinedFlags(t,e.getModifierFlags)}e.getCombinedModifierFlags=getCombinedModifierFlags;function getCombinedNodeFlags(e){return getCombinedFlags(e,function(e){return e.flags})}e.getCombinedNodeFlags=getCombinedNodeFlags;function validateLocaleAndSetLanguage(t,r,n){var i=/^([a-z]+)([_\-]([a-z]+))?$/.exec(t.toLowerCase());if(!i){if(n){n.push(e.createCompilerDiagnostic(e.Diagnostics.Locale_must_be_of_the_form_language_or_language_territory_For_example_0_or_1,"en","ja-jp"))}return}var a=i[1];var o=i[3];if(!trySetLanguageAndTerritory(a,o,n)){trySetLanguageAndTerritory(a,undefined,n)}e.setUILocale(t);function trySetLanguageAndTerritory(t,n,i){var a=e.normalizePath(r.getExecutingFilePath());var o=e.getDirectoryPath(a);var s=e.combinePaths(o,t);if(n){s=s+"-"+n}s=r.resolvePath(e.combinePaths(s,"diagnosticMessages.generated.json"));if(!r.fileExists(s)){return false}var c="";try{c=r.readFile(s)}catch(t){if(i){i.push(e.createCompilerDiagnostic(e.Diagnostics.Unable_to_open_file_0,s))}return false}try{e.localizedDiagnosticMessages=JSON.parse(c)}catch(t){if(i){i.push(e.createCompilerDiagnostic(e.Diagnostics.Corrupted_locale_file_0,s))}return false}return true}}e.validateLocaleAndSetLanguage=validateLocaleAndSetLanguage;function getOriginalNode(e,t){if(e){while(e.original!==undefined){e=e.original}}return!t||t(e)?e:undefined}e.getOriginalNode=getOriginalNode;function isParseTreeNode(e){return(e.flags&8)===0}e.isParseTreeNode=isParseTreeNode;function getParseTreeNode(e,t){if(e===undefined||isParseTreeNode(e)){return e}e=getOriginalNode(e);if(isParseTreeNode(e)&&(!t||t(e))){return e}return undefined}e.getParseTreeNode=getParseTreeNode;function escapeLeadingUnderscores(e){return e.length>=2&&e.charCodeAt(0)===95&&e.charCodeAt(1)===95?"_"+e:e}e.escapeLeadingUnderscores=escapeLeadingUnderscores;function unescapeLeadingUnderscores(e){var t=e;return t.length>=3&&t.charCodeAt(0)===95&&t.charCodeAt(1)===95&&t.charCodeAt(2)===95?t.substr(1):t}e.unescapeLeadingUnderscores=unescapeLeadingUnderscores;function idText(e){return unescapeLeadingUnderscores(e.escapedText)}e.idText=idText;function symbolName(e){return unescapeLeadingUnderscores(e.escapedName)}e.symbolName=symbolName;function nameForNamelessJSDocTypedef(t){var r=t.parent.parent;if(!r){return undefined}if(e.isDeclaration(r)){return getDeclarationIdentifier(r)}switch(r.kind){case 219:if(r.declarationList&&r.declarationList.declarations[0]){return getDeclarationIdentifier(r.declarationList.declarations[0])}break;case 221:var n=r.expression;switch(n.kind){case 189:return n.name;case 190:var i=n.argumentExpression;if(e.isIdentifier(i)){return i}}break;case 195:{return getDeclarationIdentifier(r.expression)}case 233:{if(e.isDeclaration(r.statement)||e.isExpression(r.statement)){return getDeclarationIdentifier(r.statement)}break}}}function getDeclarationIdentifier(t){var r=getNameOfDeclaration(t);return r&&e.isIdentifier(r)?r:undefined}function getNameOfJSDocTypedef(e){return e.name||nameForNamelessJSDocTypedef(e)}e.getNameOfJSDocTypedef=getNameOfJSDocTypedef;function isNamedDeclaration(e){return!!e.name}e.isNamedDeclaration=isNamedDeclaration;function getNonAssignedNameOfDeclaration(t){switch(t.kind){case 72:return t;case 305:case 299:{var r=t.name;if(r.kind===148){return r.right}break}case 191:case 204:{var n=t;switch(e.getAssignmentDeclarationKind(n)){case 1:case 4:case 5:case 3:return n.left.name;case 7:case 8:case 9:return n.arguments[1];default:return undefined}}case 304:return getNameOfJSDocTypedef(t);case 254:{var i=t.expression;return e.isIdentifier(i)?i:undefined}}return t.name}e.getNonAssignedNameOfDeclaration=getNonAssignedNameOfDeclaration;function getNameOfDeclaration(t){if(t===undefined)return undefined;return getNonAssignedNameOfDeclaration(t)||(e.isFunctionExpression(t)||e.isClassExpression(t)?getAssignedName(t):undefined)}e.getNameOfDeclaration=getNameOfDeclaration;function getAssignedName(t){if(!t.parent){return undefined}else if(e.isPropertyAssignment(t.parent)||e.isBindingElement(t.parent)){return t.parent.name}else if(e.isBinaryExpression(t.parent)&&t===t.parent.right){if(e.isIdentifier(t.parent.left)){return t.parent.left}else if(e.isPropertyAccessExpression(t.parent.left)){return t.parent.left.name}}}function getJSDocParameterTags(t){if(t.name){if(e.isIdentifier(t.name)){var r=t.name.escapedText;return getJSDocTags(t.parent).filter(function(t){return e.isJSDocParameterTag(t)&&e.isIdentifier(t.name)&&t.name.escapedText===r})}else{var n=t.parent.parameters.indexOf(t);e.Debug.assert(n>-1,"Parameters should always be in their parents' parameter list");var i=getJSDocTags(t.parent).filter(e.isJSDocParameterTag);if(n<i.length){return[i[n]]}}}return e.emptyArray}e.getJSDocParameterTags=getJSDocParameterTags;function getJSDocTypeParameterTags(t){var r=t.name.escapedText;return getJSDocTags(t.parent).filter(function(t){return e.isJSDocTemplateTag(t)&&t.typeParameters.some(function(e){return e.name.escapedText===r})})}e.getJSDocTypeParameterTags=getJSDocTypeParameterTags;function hasJSDocParameterTags(t){return!!getFirstJSDocTag(t,e.isJSDocParameterTag)}e.hasJSDocParameterTags=hasJSDocParameterTags;function getJSDocAugmentsTag(t){return getFirstJSDocTag(t,e.isJSDocAugmentsTag)}e.getJSDocAugmentsTag=getJSDocAugmentsTag;function getJSDocClassTag(t){return getFirstJSDocTag(t,e.isJSDocClassTag)}e.getJSDocClassTag=getJSDocClassTag;function getJSDocEnumTag(t){return getFirstJSDocTag(t,e.isJSDocEnumTag)}e.getJSDocEnumTag=getJSDocEnumTag;function getJSDocThisTag(t){return getFirstJSDocTag(t,e.isJSDocThisTag)}e.getJSDocThisTag=getJSDocThisTag;function getJSDocReturnTag(t){return getFirstJSDocTag(t,e.isJSDocReturnTag)}e.getJSDocReturnTag=getJSDocReturnTag;function getJSDocTemplateTag(t){return getFirstJSDocTag(t,e.isJSDocTemplateTag)}e.getJSDocTemplateTag=getJSDocTemplateTag;function getJSDocTypeTag(t){var r=getFirstJSDocTag(t,e.isJSDocTypeTag);if(r&&r.typeExpression&&r.typeExpression.type){return r}return undefined}e.getJSDocTypeTag=getJSDocTypeTag;function getJSDocType(t){var r=getFirstJSDocTag(t,e.isJSDocTypeTag);if(!r&&e.isParameter(t)){r=e.find(getJSDocParameterTags(t),function(e){return!!e.typeExpression})}return r&&r.typeExpression&&r.typeExpression.type}e.getJSDocType=getJSDocType;function getJSDocReturnType(t){var r=getJSDocReturnTag(t);if(r&&r.typeExpression){return r.typeExpression.type}var n=getJSDocTypeTag(t);if(n&&n.typeExpression){var i=n.typeExpression.type;if(e.isTypeLiteralNode(i)){var a=e.find(i.members,e.isCallSignatureDeclaration);return a&&a.type}if(e.isFunctionTypeNode(i)){return i.type}}}e.getJSDocReturnType=getJSDocReturnType;function getJSDocTags(t){var r=t.jsDocCache;if(r===undefined){var n=e.getJSDocCommentsAndTags(t);e.Debug.assert(n.length<2||n[0]!==n[1]);t.jsDocCache=r=e.flatMap(n,function(t){return e.isJSDoc(t)?t.tags:t})}return r}e.getJSDocTags=getJSDocTags;function getFirstJSDocTag(t,r){return e.find(getJSDocTags(t),r)}function getAllJSDocTagsOfKind(e,t){return getJSDocTags(e).filter(function(e){return e.kind===t})}e.getAllJSDocTagsOfKind=getAllJSDocTagsOfKind;function getEffectiveTypeParameterDeclarations(t){if(e.isJSDocSignature(t)){return e.emptyArray}if(e.isJSDocTypeAlias(t)){e.Debug.assert(t.parent.kind===291);return e.flatMap(t.parent.tags,function(t){return e.isJSDocTemplateTag(t)?t.typeParameters:undefined})}if(t.typeParameters){return t.typeParameters}if(e.isInJSFile(t)){var r=e.getJSDocTypeParameterDeclarations(t);if(r.length){return r}var n=getJSDocType(t);if(n&&e.isFunctionTypeNode(n)&&n.typeParameters){return n.typeParameters}}return e.emptyArray}e.getEffectiveTypeParameterDeclarations=getEffectiveTypeParameterDeclarations;function getEffectiveConstraintOfTypeParameter(t){return t.constraint?t.constraint:e.isJSDocTemplateTag(t.parent)&&t===t.parent.typeParameters[0]?t.parent.constraint:undefined}e.getEffectiveConstraintOfTypeParameter=getEffectiveConstraintOfTypeParameter})(s||(s={}));(function(e){function isNumericLiteral(e){return e.kind===8}e.isNumericLiteral=isNumericLiteral;function isBigIntLiteral(e){return e.kind===9}e.isBigIntLiteral=isBigIntLiteral;function isStringLiteral(e){return e.kind===10}e.isStringLiteral=isStringLiteral;function isJsxText(e){return e.kind===11}e.isJsxText=isJsxText;function isRegularExpressionLiteral(e){return e.kind===13}e.isRegularExpressionLiteral=isRegularExpressionLiteral;function isNoSubstitutionTemplateLiteral(e){return e.kind===14}e.isNoSubstitutionTemplateLiteral=isNoSubstitutionTemplateLiteral;function isTemplateHead(e){return e.kind===15}e.isTemplateHead=isTemplateHead;function isTemplateMiddle(e){return e.kind===16}e.isTemplateMiddle=isTemplateMiddle;function isTemplateTail(e){return e.kind===17}e.isTemplateTail=isTemplateTail;function isIdentifier(e){return e.kind===72}e.isIdentifier=isIdentifier;function isQualifiedName(e){return e.kind===148}e.isQualifiedName=isQualifiedName;function isComputedPropertyName(e){return e.kind===149}e.isComputedPropertyName=isComputedPropertyName;function isTypeParameterDeclaration(e){return e.kind===150}e.isTypeParameterDeclaration=isTypeParameterDeclaration;function isParameter(e){return e.kind===151}e.isParameter=isParameter;function isDecorator(e){return e.kind===152}e.isDecorator=isDecorator;function isPropertySignature(e){return e.kind===153}e.isPropertySignature=isPropertySignature;function isPropertyDeclaration(e){return e.kind===154}e.isPropertyDeclaration=isPropertyDeclaration;function isMethodSignature(e){return e.kind===155}e.isMethodSignature=isMethodSignature;function isMethodDeclaration(e){return e.kind===156}e.isMethodDeclaration=isMethodDeclaration;function isConstructorDeclaration(e){return e.kind===157}e.isConstructorDeclaration=isConstructorDeclaration;function isGetAccessorDeclaration(e){return e.kind===158}e.isGetAccessorDeclaration=isGetAccessorDeclaration;function isSetAccessorDeclaration(e){return e.kind===159}e.isSetAccessorDeclaration=isSetAccessorDeclaration;function isCallSignatureDeclaration(e){return e.kind===160}e.isCallSignatureDeclaration=isCallSignatureDeclaration;function isConstructSignatureDeclaration(e){return e.kind===161}e.isConstructSignatureDeclaration=isConstructSignatureDeclaration;function isIndexSignatureDeclaration(e){return e.kind===162}e.isIndexSignatureDeclaration=isIndexSignatureDeclaration;function isGetOrSetAccessorDeclaration(e){return e.kind===159||e.kind===158}e.isGetOrSetAccessorDeclaration=isGetOrSetAccessorDeclaration;function isTypePredicateNode(e){return e.kind===163}e.isTypePredicateNode=isTypePredicateNode;function isTypeReferenceNode(e){return e.kind===164}e.isTypeReferenceNode=isTypeReferenceNode;function isFunctionTypeNode(e){return e.kind===165}e.isFunctionTypeNode=isFunctionTypeNode;function isConstructorTypeNode(e){return e.kind===166}e.isConstructorTypeNode=isConstructorTypeNode;function isTypeQueryNode(e){return e.kind===167}e.isTypeQueryNode=isTypeQueryNode;function isTypeLiteralNode(e){return e.kind===168}e.isTypeLiteralNode=isTypeLiteralNode;function isArrayTypeNode(e){return e.kind===169}e.isArrayTypeNode=isArrayTypeNode;function isTupleTypeNode(e){return e.kind===170}e.isTupleTypeNode=isTupleTypeNode;function isUnionTypeNode(e){return e.kind===173}e.isUnionTypeNode=isUnionTypeNode;function isIntersectionTypeNode(e){return e.kind===174}e.isIntersectionTypeNode=isIntersectionTypeNode;function isConditionalTypeNode(e){return e.kind===175}e.isConditionalTypeNode=isConditionalTypeNode;function isInferTypeNode(e){return e.kind===176}e.isInferTypeNode=isInferTypeNode;function isParenthesizedTypeNode(e){return e.kind===177}e.isParenthesizedTypeNode=isParenthesizedTypeNode;function isThisTypeNode(e){return e.kind===178}e.isThisTypeNode=isThisTypeNode;function isTypeOperatorNode(e){return e.kind===179}e.isTypeOperatorNode=isTypeOperatorNode;function isIndexedAccessTypeNode(e){return e.kind===180}e.isIndexedAccessTypeNode=isIndexedAccessTypeNode;function isMappedTypeNode(e){return e.kind===181}e.isMappedTypeNode=isMappedTypeNode;function isLiteralTypeNode(e){return e.kind===182}e.isLiteralTypeNode=isLiteralTypeNode;function isImportTypeNode(e){return e.kind===183}e.isImportTypeNode=isImportTypeNode;function isObjectBindingPattern(e){return e.kind===184}e.isObjectBindingPattern=isObjectBindingPattern;function isArrayBindingPattern(e){return e.kind===185}e.isArrayBindingPattern=isArrayBindingPattern;function isBindingElement(e){return e.kind===186}e.isBindingElement=isBindingElement;function isArrayLiteralExpression(e){return e.kind===187}e.isArrayLiteralExpression=isArrayLiteralExpression;function isObjectLiteralExpression(e){return e.kind===188}e.isObjectLiteralExpression=isObjectLiteralExpression;function isPropertyAccessExpression(e){return e.kind===189}e.isPropertyAccessExpression=isPropertyAccessExpression;function isElementAccessExpression(e){return e.kind===190}e.isElementAccessExpression=isElementAccessExpression;function isCallExpression(e){return e.kind===191}e.isCallExpression=isCallExpression;function isNewExpression(e){return e.kind===192}e.isNewExpression=isNewExpression;function isTaggedTemplateExpression(e){return e.kind===193}e.isTaggedTemplateExpression=isTaggedTemplateExpression;function isTypeAssertion(e){return e.kind===194}e.isTypeAssertion=isTypeAssertion;function isParenthesizedExpression(e){return e.kind===195}e.isParenthesizedExpression=isParenthesizedExpression;function skipPartiallyEmittedExpressions(e){while(e.kind===308){e=e.expression}return e}e.skipPartiallyEmittedExpressions=skipPartiallyEmittedExpressions;function isFunctionExpression(e){return e.kind===196}e.isFunctionExpression=isFunctionExpression;function isArrowFunction(e){return e.kind===197}e.isArrowFunction=isArrowFunction;function isDeleteExpression(e){return e.kind===198}e.isDeleteExpression=isDeleteExpression;function isTypeOfExpression(e){return e.kind===199}e.isTypeOfExpression=isTypeOfExpression;function isVoidExpression(e){return e.kind===200}e.isVoidExpression=isVoidExpression;function isAwaitExpression(e){return e.kind===201}e.isAwaitExpression=isAwaitExpression;function isPrefixUnaryExpression(e){return e.kind===202}e.isPrefixUnaryExpression=isPrefixUnaryExpression;function isPostfixUnaryExpression(e){return e.kind===203}e.isPostfixUnaryExpression=isPostfixUnaryExpression;function isBinaryExpression(e){return e.kind===204}e.isBinaryExpression=isBinaryExpression;function isConditionalExpression(e){return e.kind===205}e.isConditionalExpression=isConditionalExpression;function isTemplateExpression(e){return e.kind===206}e.isTemplateExpression=isTemplateExpression;function isYieldExpression(e){return e.kind===207}e.isYieldExpression=isYieldExpression;function isSpreadElement(e){return e.kind===208}e.isSpreadElement=isSpreadElement;function isClassExpression(e){return e.kind===209}e.isClassExpression=isClassExpression;function isOmittedExpression(e){return e.kind===210}e.isOmittedExpression=isOmittedExpression;function isExpressionWithTypeArguments(e){return e.kind===211}e.isExpressionWithTypeArguments=isExpressionWithTypeArguments;function isAsExpression(e){return e.kind===212}e.isAsExpression=isAsExpression;function isNonNullExpression(e){return e.kind===213}e.isNonNullExpression=isNonNullExpression;function isMetaProperty(e){return e.kind===214}e.isMetaProperty=isMetaProperty;function isTemplateSpan(e){return e.kind===216}e.isTemplateSpan=isTemplateSpan;function isSemicolonClassElement(e){return e.kind===217}e.isSemicolonClassElement=isSemicolonClassElement;function isBlock(e){return e.kind===218}e.isBlock=isBlock;function isVariableStatement(e){return e.kind===219}e.isVariableStatement=isVariableStatement;function isEmptyStatement(e){return e.kind===220}e.isEmptyStatement=isEmptyStatement;function isExpressionStatement(e){return e.kind===221}e.isExpressionStatement=isExpressionStatement;function isIfStatement(e){return e.kind===222}e.isIfStatement=isIfStatement;function isDoStatement(e){return e.kind===223}e.isDoStatement=isDoStatement;function isWhileStatement(e){return e.kind===224}e.isWhileStatement=isWhileStatement;function isForStatement(e){return e.kind===225}e.isForStatement=isForStatement;function isForInStatement(e){return e.kind===226}e.isForInStatement=isForInStatement;function isForOfStatement(e){return e.kind===227}e.isForOfStatement=isForOfStatement;function isContinueStatement(e){return e.kind===228}e.isContinueStatement=isContinueStatement;function isBreakStatement(e){return e.kind===229}e.isBreakStatement=isBreakStatement;function isBreakOrContinueStatement(e){return e.kind===229||e.kind===228}e.isBreakOrContinueStatement=isBreakOrContinueStatement;function isReturnStatement(e){return e.kind===230}e.isReturnStatement=isReturnStatement;function isWithStatement(e){return e.kind===231}e.isWithStatement=isWithStatement;function isSwitchStatement(e){return e.kind===232}e.isSwitchStatement=isSwitchStatement;function isLabeledStatement(e){return e.kind===233}e.isLabeledStatement=isLabeledStatement;function isThrowStatement(e){return e.kind===234}e.isThrowStatement=isThrowStatement;function isTryStatement(e){return e.kind===235}e.isTryStatement=isTryStatement;function isDebuggerStatement(e){return e.kind===236}e.isDebuggerStatement=isDebuggerStatement;function isVariableDeclaration(e){return e.kind===237}e.isVariableDeclaration=isVariableDeclaration;function isVariableDeclarationList(e){return e.kind===238}e.isVariableDeclarationList=isVariableDeclarationList;function isFunctionDeclaration(e){return e.kind===239}e.isFunctionDeclaration=isFunctionDeclaration;function isClassDeclaration(e){return e.kind===240}e.isClassDeclaration=isClassDeclaration;function isInterfaceDeclaration(e){return e.kind===241}e.isInterfaceDeclaration=isInterfaceDeclaration;function isTypeAliasDeclaration(e){return e.kind===242}e.isTypeAliasDeclaration=isTypeAliasDeclaration;function isEnumDeclaration(e){return e.kind===243}e.isEnumDeclaration=isEnumDeclaration;function isModuleDeclaration(e){return e.kind===244}e.isModuleDeclaration=isModuleDeclaration;function isModuleBlock(e){return e.kind===245}e.isModuleBlock=isModuleBlock;function isCaseBlock(e){return e.kind===246}e.isCaseBlock=isCaseBlock;function isNamespaceExportDeclaration(e){return e.kind===247}e.isNamespaceExportDeclaration=isNamespaceExportDeclaration;function isImportEqualsDeclaration(e){return e.kind===248}e.isImportEqualsDeclaration=isImportEqualsDeclaration;function isImportDeclaration(e){return e.kind===249}e.isImportDeclaration=isImportDeclaration;function isImportClause(e){return e.kind===250}e.isImportClause=isImportClause;function isNamespaceImport(e){return e.kind===251}e.isNamespaceImport=isNamespaceImport;function isNamedImports(e){return e.kind===252}e.isNamedImports=isNamedImports;function isImportSpecifier(e){return e.kind===253}e.isImportSpecifier=isImportSpecifier;function isExportAssignment(e){return e.kind===254}e.isExportAssignment=isExportAssignment;function isExportDeclaration(e){return e.kind===255}e.isExportDeclaration=isExportDeclaration;function isNamedExports(e){return e.kind===256}e.isNamedExports=isNamedExports;function isExportSpecifier(e){return e.kind===257}e.isExportSpecifier=isExportSpecifier;function isMissingDeclaration(e){return e.kind===258}e.isMissingDeclaration=isMissingDeclaration;function isExternalModuleReference(e){return e.kind===259}e.isExternalModuleReference=isExternalModuleReference;function isJsxElement(e){return e.kind===260}e.isJsxElement=isJsxElement;function isJsxSelfClosingElement(e){return e.kind===261}e.isJsxSelfClosingElement=isJsxSelfClosingElement;function isJsxOpeningElement(e){return e.kind===262}e.isJsxOpeningElement=isJsxOpeningElement;function isJsxClosingElement(e){return e.kind===263}e.isJsxClosingElement=isJsxClosingElement;function isJsxFragment(e){return e.kind===264}e.isJsxFragment=isJsxFragment;function isJsxOpeningFragment(e){return e.kind===265}e.isJsxOpeningFragment=isJsxOpeningFragment;function isJsxClosingFragment(e){return e.kind===266}e.isJsxClosingFragment=isJsxClosingFragment;function isJsxAttribute(e){return e.kind===267}e.isJsxAttribute=isJsxAttribute;function isJsxAttributes(e){return e.kind===268}e.isJsxAttributes=isJsxAttributes;function isJsxSpreadAttribute(e){return e.kind===269}e.isJsxSpreadAttribute=isJsxSpreadAttribute;function isJsxExpression(e){return e.kind===270}e.isJsxExpression=isJsxExpression;function isCaseClause(e){return e.kind===271}e.isCaseClause=isCaseClause;function isDefaultClause(e){return e.kind===272}e.isDefaultClause=isDefaultClause;function isHeritageClause(e){return e.kind===273}e.isHeritageClause=isHeritageClause;function isCatchClause(e){return e.kind===274}e.isCatchClause=isCatchClause;function isPropertyAssignment(e){return e.kind===275}e.isPropertyAssignment=isPropertyAssignment;function isShorthandPropertyAssignment(e){return e.kind===276}e.isShorthandPropertyAssignment=isShorthandPropertyAssignment;function isSpreadAssignment(e){return e.kind===277}e.isSpreadAssignment=isSpreadAssignment;function isEnumMember(e){return e.kind===278}e.isEnumMember=isEnumMember;function isSourceFile(e){return e.kind===279}e.isSourceFile=isSourceFile;function isBundle(e){return e.kind===280}e.isBundle=isBundle;function isUnparsedSource(e){return e.kind===281}e.isUnparsedSource=isUnparsedSource;function isJSDocTypeExpression(e){return e.kind===283}e.isJSDocTypeExpression=isJSDocTypeExpression;function isJSDocAllType(e){return e.kind===284}e.isJSDocAllType=isJSDocAllType;function isJSDocUnknownType(e){return e.kind===285}e.isJSDocUnknownType=isJSDocUnknownType;function isJSDocNullableType(e){return e.kind===286}e.isJSDocNullableType=isJSDocNullableType;function isJSDocNonNullableType(e){return e.kind===287}e.isJSDocNonNullableType=isJSDocNonNullableType;function isJSDocOptionalType(e){return e.kind===288}e.isJSDocOptionalType=isJSDocOptionalType;function isJSDocFunctionType(e){return e.kind===289}e.isJSDocFunctionType=isJSDocFunctionType;function isJSDocVariadicType(e){return e.kind===290}e.isJSDocVariadicType=isJSDocVariadicType;function isJSDoc(e){return e.kind===291}e.isJSDoc=isJSDoc;function isJSDocAugmentsTag(e){return e.kind===295}e.isJSDocAugmentsTag=isJSDocAugmentsTag;function isJSDocClassTag(e){return e.kind===296}e.isJSDocClassTag=isJSDocClassTag;function isJSDocEnumTag(e){return e.kind===298}e.isJSDocEnumTag=isJSDocEnumTag;function isJSDocThisTag(e){return e.kind===301}e.isJSDocThisTag=isJSDocThisTag;function isJSDocParameterTag(e){return e.kind===299}e.isJSDocParameterTag=isJSDocParameterTag;function isJSDocReturnTag(e){return e.kind===300}e.isJSDocReturnTag=isJSDocReturnTag;function isJSDocTypeTag(e){return e.kind===302}e.isJSDocTypeTag=isJSDocTypeTag;function isJSDocTemplateTag(e){return e.kind===303}e.isJSDocTemplateTag=isJSDocTemplateTag;function isJSDocTypedefTag(e){return e.kind===304}e.isJSDocTypedefTag=isJSDocTypedefTag;function isJSDocPropertyTag(e){return e.kind===305}e.isJSDocPropertyTag=isJSDocPropertyTag;function isJSDocPropertyLikeTag(e){return e.kind===305||e.kind===299}e.isJSDocPropertyLikeTag=isJSDocPropertyLikeTag;function isJSDocTypeLiteral(e){return e.kind===292}e.isJSDocTypeLiteral=isJSDocTypeLiteral;function isJSDocCallbackTag(e){return e.kind===297}e.isJSDocCallbackTag=isJSDocCallbackTag;function isJSDocSignature(e){return e.kind===293}e.isJSDocSignature=isJSDocSignature})(s||(s={}));(function(e){function isSyntaxList(e){return e.kind===306}e.isSyntaxList=isSyntaxList;function isNode(e){return isNodeKind(e.kind)}e.isNode=isNode;function isNodeKind(e){return e>=148}e.isNodeKind=isNodeKind;function isToken(e){return e.kind>=0&&e.kind<=147}e.isToken=isToken;function isNodeArray(e){return e.hasOwnProperty("pos")&&e.hasOwnProperty("end")}e.isNodeArray=isNodeArray;function isLiteralKind(e){return 8<=e&&e<=14}e.isLiteralKind=isLiteralKind;function isLiteralExpression(e){return isLiteralKind(e.kind)}e.isLiteralExpression=isLiteralExpression;function isTemplateLiteralKind(e){return 14<=e&&e<=17}e.isTemplateLiteralKind=isTemplateLiteralKind;function isTemplateLiteralToken(e){return isTemplateLiteralKind(e.kind)}e.isTemplateLiteralToken=isTemplateLiteralToken;function isTemplateMiddleOrTemplateTail(e){var t=e.kind;return t===16||t===17}e.isTemplateMiddleOrTemplateTail=isTemplateMiddleOrTemplateTail;function isImportOrExportSpecifier(t){return e.isImportSpecifier(t)||e.isExportSpecifier(t)}e.isImportOrExportSpecifier=isImportOrExportSpecifier;function isStringTextContainingNode(e){return e.kind===10||isTemplateLiteralKind(e.kind)}e.isStringTextContainingNode=isStringTextContainingNode;function isGeneratedIdentifier(t){return e.isIdentifier(t)&&(t.autoGenerateFlags&7)>0}e.isGeneratedIdentifier=isGeneratedIdentifier;function isModifierKind(e){switch(e){case 118:case 121:case 77:case 125:case 80:case 85:case 115:case 113:case 114:case 133:case 116:return true}return false}e.isModifierKind=isModifierKind;function isParameterPropertyModifier(t){return!!(e.modifierToFlag(t)&92)}e.isParameterPropertyModifier=isParameterPropertyModifier;function isClassMemberModifier(e){return isParameterPropertyModifier(e)||e===116}e.isClassMemberModifier=isClassMemberModifier;function isModifier(e){return isModifierKind(e.kind)}e.isModifier=isModifier;function isEntityName(e){var t=e.kind;return t===148||t===72}e.isEntityName=isEntityName;function isPropertyName(e){var t=e.kind;return t===72||t===10||t===8||t===149}e.isPropertyName=isPropertyName;function isBindingName(e){var t=e.kind;return t===72||t===184||t===185}e.isBindingName=isBindingName;function isFunctionLike(e){return e&&isFunctionLikeKind(e.kind)}e.isFunctionLike=isFunctionLike;function isFunctionLikeDeclaration(e){return e&&isFunctionLikeDeclarationKind(e.kind)}e.isFunctionLikeDeclaration=isFunctionLikeDeclaration;function isFunctionLikeDeclarationKind(e){switch(e){case 239:case 156:case 157:case 158:case 159:case 196:case 197:return true;default:return false}}function isFunctionLikeKind(e){switch(e){case 155:case 160:case 293:case 161:case 162:case 165:case 289:case 166:return true;default:return isFunctionLikeDeclarationKind(e)}}e.isFunctionLikeKind=isFunctionLikeKind;function isFunctionOrModuleBlock(t){return e.isSourceFile(t)||e.isModuleBlock(t)||e.isBlock(t)&&isFunctionLike(t.parent)}e.isFunctionOrModuleBlock=isFunctionOrModuleBlock;function isClassElement(e){var t=e.kind;return t===157||t===154||t===156||t===158||t===159||t===162||t===217}e.isClassElement=isClassElement;function isClassLike(e){return e&&(e.kind===240||e.kind===209)}e.isClassLike=isClassLike;function isAccessor(e){return e&&(e.kind===158||e.kind===159)}e.isAccessor=isAccessor;function isMethodOrAccessor(e){switch(e.kind){case 156:case 158:case 159:return true;default:return false}}e.isMethodOrAccessor=isMethodOrAccessor;function isTypeElement(e){var t=e.kind;return t===161||t===160||t===153||t===155||t===162}e.isTypeElement=isTypeElement;function isClassOrTypeElement(e){return isTypeElement(e)||isClassElement(e)}e.isClassOrTypeElement=isClassOrTypeElement;function isObjectLiteralElementLike(e){var t=e.kind;return t===275||t===276||t===277||t===156||t===158||t===159}e.isObjectLiteralElementLike=isObjectLiteralElementLike;function isTypeNode(t){return e.isTypeNodeKind(t.kind)}e.isTypeNode=isTypeNode;function isFunctionOrConstructorTypeNode(e){switch(e.kind){case 165:case 166:return true}return false}e.isFunctionOrConstructorTypeNode=isFunctionOrConstructorTypeNode;function isBindingPattern(e){if(e){var t=e.kind;return t===185||t===184}return false}e.isBindingPattern=isBindingPattern;function isAssignmentPattern(e){var t=e.kind;return t===187||t===188}e.isAssignmentPattern=isAssignmentPattern;function isArrayBindingElement(e){var t=e.kind;return t===186||t===210}e.isArrayBindingElement=isArrayBindingElement;function isDeclarationBindingElement(e){switch(e.kind){case 237:case 151:case 186:return true}return false}e.isDeclarationBindingElement=isDeclarationBindingElement;function isBindingOrAssignmentPattern(e){return isObjectBindingOrAssignmentPattern(e)||isArrayBindingOrAssignmentPattern(e)}e.isBindingOrAssignmentPattern=isBindingOrAssignmentPattern;function isObjectBindingOrAssignmentPattern(e){switch(e.kind){case 184:case 188:return true}return false}e.isObjectBindingOrAssignmentPattern=isObjectBindingOrAssignmentPattern;function isArrayBindingOrAssignmentPattern(e){switch(e.kind){case 185:case 187:return true}return false}e.isArrayBindingOrAssignmentPattern=isArrayBindingOrAssignmentPattern;function isPropertyAccessOrQualifiedNameOrImportTypeNode(e){var t=e.kind;return t===189||t===148||t===183}e.isPropertyAccessOrQualifiedNameOrImportTypeNode=isPropertyAccessOrQualifiedNameOrImportTypeNode;function isPropertyAccessOrQualifiedName(e){var t=e.kind;return t===189||t===148}e.isPropertyAccessOrQualifiedName=isPropertyAccessOrQualifiedName;function isCallLikeExpression(e){switch(e.kind){case 262:case 261:case 191:case 192:case 193:case 152:return true;default:return false}}e.isCallLikeExpression=isCallLikeExpression;function isCallOrNewExpression(e){return e.kind===191||e.kind===192}e.isCallOrNewExpression=isCallOrNewExpression;function isTemplateLiteral(e){var t=e.kind;return t===206||t===14}e.isTemplateLiteral=isTemplateLiteral;function isLeftHandSideExpression(t){return isLeftHandSideExpressionKind(e.skipPartiallyEmittedExpressions(t).kind)}e.isLeftHandSideExpression=isLeftHandSideExpression;function isLeftHandSideExpressionKind(e){switch(e){case 189:case 190:case 192:case 191:case 260:case 261:case 264:case 193:case 187:case 195:case 188:case 209:case 196:case 72:case 13:case 8:case 9:case 10:case 14:case 206:case 87:case 96:case 100:case 102:case 98:case 213:case 214:case 92:return true;default:return false}}function isUnaryExpression(t){return isUnaryExpressionKind(e.skipPartiallyEmittedExpressions(t).kind)}e.isUnaryExpression=isUnaryExpression;function isUnaryExpressionKind(e){switch(e){case 202:case 203:case 198:case 199:case 200:case 201:case 194:return true;default:return isLeftHandSideExpressionKind(e)}}function isUnaryExpressionWithWrite(e){switch(e.kind){case 203:return true;case 202:return e.operator===44||e.operator===45;default:return false}}e.isUnaryExpressionWithWrite=isUnaryExpressionWithWrite;function isExpression(t){return isExpressionKind(e.skipPartiallyEmittedExpressions(t).kind)}e.isExpression=isExpression;function isExpressionKind(e){switch(e){case 205:case 207:case 197:case 204:case 208:case 212:case 210:case 309:case 308:return true;default:return isUnaryExpressionKind(e)}}function isAssertionExpression(e){var t=e.kind;return t===194||t===212}e.isAssertionExpression=isAssertionExpression;function isPartiallyEmittedExpression(e){return e.kind===308}e.isPartiallyEmittedExpression=isPartiallyEmittedExpression;function isNotEmittedStatement(e){return e.kind===307}e.isNotEmittedStatement=isNotEmittedStatement;function isNotEmittedOrPartiallyEmittedNode(e){return isNotEmittedStatement(e)||isPartiallyEmittedExpression(e)}e.isNotEmittedOrPartiallyEmittedNode=isNotEmittedOrPartiallyEmittedNode;function isIterationStatement(e,t){switch(e.kind){case 225:case 226:case 227:case 223:case 224:return true;case 233:return t&&isIterationStatement(e.statement,t)}return false}e.isIterationStatement=isIterationStatement;function isForInOrOfStatement(e){return e.kind===226||e.kind===227}e.isForInOrOfStatement=isForInOrOfStatement;function isConciseBody(t){return e.isBlock(t)||isExpression(t)}e.isConciseBody=isConciseBody;function isFunctionBody(t){return e.isBlock(t)}e.isFunctionBody=isFunctionBody;function isForInitializer(t){return e.isVariableDeclarationList(t)||isExpression(t)}e.isForInitializer=isForInitializer;function isModuleBody(e){var t=e.kind;return t===245||t===244||t===72}e.isModuleBody=isModuleBody;function isNamespaceBody(e){var t=e.kind;return t===245||t===244}e.isNamespaceBody=isNamespaceBody;function isJSDocNamespaceBody(e){var t=e.kind;return t===72||t===244}e.isJSDocNamespaceBody=isJSDocNamespaceBody;function isNamedImportBindings(e){var t=e.kind;return t===252||t===251}e.isNamedImportBindings=isNamedImportBindings;function isModuleOrEnumDeclaration(e){return e.kind===244||e.kind===243}e.isModuleOrEnumDeclaration=isModuleOrEnumDeclaration;function isDeclarationKind(e){return e===197||e===186||e===240||e===209||e===157||e===243||e===278||e===257||e===239||e===196||e===158||e===250||e===248||e===253||e===241||e===267||e===156||e===155||e===244||e===247||e===251||e===151||e===275||e===154||e===153||e===159||e===276||e===242||e===150||e===237||e===304||e===297||e===305}function isDeclarationStatementKind(e){return e===239||e===258||e===240||e===241||e===242||e===243||e===244||e===249||e===248||e===255||e===254||e===247}function isStatementKindButNotDeclarationKind(e){return e===229||e===228||e===236||e===223||e===221||e===220||e===226||e===227||e===225||e===222||e===233||e===230||e===232||e===234||e===235||e===219||e===224||e===231||e===307||e===311||e===310}function isDeclaration(t){if(t.kind===150){return t.parent.kind!==303||e.isInJSFile(t)}return isDeclarationKind(t.kind)}e.isDeclaration=isDeclaration;function isDeclarationStatement(e){return isDeclarationStatementKind(e.kind)}e.isDeclarationStatement=isDeclarationStatement;function isStatementButNotDeclaration(e){return isStatementKindButNotDeclarationKind(e.kind)}e.isStatementButNotDeclaration=isStatementButNotDeclaration;function isStatement(e){var t=e.kind;return isStatementKindButNotDeclarationKind(t)||isDeclarationStatementKind(t)||isBlockStatement(e)}e.isStatement=isStatement;function isBlockStatement(t){if(t.kind!==218)return false;if(t.parent!==undefined){if(t.parent.kind===235||t.parent.kind===274){return false}}return!e.isFunctionBlock(t)}function isModuleReference(e){var t=e.kind;return t===259||t===148||t===72}e.isModuleReference=isModuleReference;function isJsxTagNameExpression(e){var t=e.kind;return t===100||t===72||t===189}e.isJsxTagNameExpression=isJsxTagNameExpression;function isJsxChild(e){var t=e.kind;return t===260||t===270||t===261||t===11||t===264}e.isJsxChild=isJsxChild;function isJsxAttributeLike(e){var t=e.kind;return t===267||t===269}e.isJsxAttributeLike=isJsxAttributeLike;function isStringLiteralOrJsxExpression(e){var t=e.kind;return t===10||t===270}e.isStringLiteralOrJsxExpression=isStringLiteralOrJsxExpression;function isJsxOpeningLikeElement(e){var t=e.kind;return t===262||t===261}e.isJsxOpeningLikeElement=isJsxOpeningLikeElement;function isCaseOrDefaultClause(e){var t=e.kind;return t===271||t===272}e.isCaseOrDefaultClause=isCaseOrDefaultClause;function isJSDocNode(e){return e.kind>=283&&e.kind<=305}e.isJSDocNode=isJSDocNode;function isJSDocCommentContainingNode(t){return t.kind===291||isJSDocTag(t)||e.isJSDocTypeLiteral(t)||e.isJSDocSignature(t)}e.isJSDocCommentContainingNode=isJSDocCommentContainingNode;function isJSDocTag(e){return e.kind>=294&&e.kind<=305}e.isJSDocTag=isJSDocTag;function isSetAccessor(e){return e.kind===159}e.isSetAccessor=isSetAccessor;function isGetAccessor(e){return e.kind===158}e.isGetAccessor=isGetAccessor;function hasJSDocNodes(e){var t=e.jsDoc;return!!t&&t.length>0}e.hasJSDocNodes=hasJSDocNodes;function hasType(e){return!!e.type}e.hasType=hasType;function hasInitializer(e){return!!e.initializer}e.hasInitializer=hasInitializer;function hasOnlyExpressionInitializer(t){return hasInitializer(t)&&!e.isForStatement(t)&&!e.isForInStatement(t)&&!e.isForOfStatement(t)&&!e.isJsxAttribute(t)}e.hasOnlyExpressionInitializer=hasOnlyExpressionInitializer;function isObjectLiteralElement(e){return e.kind===267||e.kind===269||isObjectLiteralElementLike(e)}e.isObjectLiteralElement=isObjectLiteralElement;function isTypeReferenceType(e){return e.kind===164||e.kind===211}e.isTypeReferenceType=isTypeReferenceType;var t=1073741823;function guessIndentation(r){var n=t;for(var i=0,a=r;i<a.length;i++){var o=a[i];if(!o.length){continue}var s=0;for(;s<o.length&&s<n;s++){if(!e.isWhiteSpaceLike(o.charCodeAt(s))){break}}if(s<n){n=s}if(n===0){return 0}}return n===t?undefined:n}e.guessIndentation=guessIndentation;function isStringLiteralLike(e){return e.kind===10||e.kind===14}e.isStringLiteralLike=isStringLiteralLike})(s||(s={}));(function(e){function isNamedImportsOrExports(e){return e.kind===252||e.kind===256}e.isNamedImportsOrExports=isNamedImportsOrExports;function Symbol(e,t){this.flags=e;this.escapedName=t;this.declarations=undefined;this.valueDeclaration=undefined;this.id=undefined;this.mergeId=undefined;this.parent=undefined}function Type(t,r){this.flags=r;if(e.Debug.isDebugging){this.checker=t}}function Signature(){}function Node(e,t,r){this.pos=t;this.end=r;this.kind=e;this.id=0;this.flags=0;this.modifierFlagsCache=0;this.transformFlags=0;this.parent=undefined;this.original=undefined}function SourceMapSource(e,t,r){this.fileName=e;this.text=t;this.skipTrivia=r||function(e){return e}}e.objectAllocator={getNodeConstructor:function(){return Node},getTokenConstructor:function(){return Node},getIdentifierConstructor:function(){return Node},getSourceFileConstructor:function(){return Node},getSymbolConstructor:function(){return Symbol},getTypeConstructor:function(){return Type},getSignatureConstructor:function(){return Signature},getSourceMapSourceConstructor:function(){return SourceMapSource}};function formatStringFromArgs(t,r,n){if(n===void 0){n=0}return t.replace(/{(\d+)}/g,function(t,i){return""+e.Debug.assertDefined(r[+i+n])})}e.formatStringFromArgs=formatStringFromArgs;function getLocaleSpecificMessage(t){return e.localizedDiagnosticMessages&&e.localizedDiagnosticMessages[t.key]||t.message}e.getLocaleSpecificMessage=getLocaleSpecificMessage;function createFileDiagnostic(t,r,n,i){e.Debug.assertGreaterThanOrEqual(r,0);e.Debug.assertGreaterThanOrEqual(n,0);if(t){e.Debug.assertLessThanOrEqual(r,t.text.length);e.Debug.assertLessThanOrEqual(r+n,t.text.length)}var a=getLocaleSpecificMessage(i);if(arguments.length>4){a=formatStringFromArgs(a,arguments,4)}return{file:t,start:r,length:n,messageText:a,category:i.category,code:i.code,reportsUnnecessary:i.reportsUnnecessary}}e.createFileDiagnostic=createFileDiagnostic;function formatMessage(e,t){var r=getLocaleSpecificMessage(t);if(arguments.length>2){r=formatStringFromArgs(r,arguments,2)}return r}e.formatMessage=formatMessage;function createCompilerDiagnostic(e){var t=getLocaleSpecificMessage(e);if(arguments.length>1){t=formatStringFromArgs(t,arguments,1)}return{file:undefined,start:undefined,length:undefined,messageText:t,category:e.category,code:e.code,reportsUnnecessary:e.reportsUnnecessary}}e.createCompilerDiagnostic=createCompilerDiagnostic;function createCompilerDiagnosticFromMessageChain(e){return{file:undefined,start:undefined,length:undefined,code:e.code,category:e.category,messageText:e.next?e:e.messageText}}e.createCompilerDiagnosticFromMessageChain=createCompilerDiagnosticFromMessageChain;function chainDiagnosticMessages(e,t){var r=getLocaleSpecificMessage(t);if(arguments.length>2){r=formatStringFromArgs(r,arguments,2)}return{messageText:r,category:t.category,code:t.code,next:e}}e.chainDiagnosticMessages=chainDiagnosticMessages;function concatenateDiagnosticMessageChains(e,t){var r=e;while(r.next){r=r.next}r.next=t;return e}e.concatenateDiagnosticMessageChains=concatenateDiagnosticMessageChains;function getDiagnosticFilePath(e){return e.file?e.file.path:undefined}function compareDiagnostics(e,t){return compareDiagnosticsSkipRelatedInformation(e,t)||compareRelatedInformation(e,t)||0}e.compareDiagnostics=compareDiagnostics;function compareDiagnosticsSkipRelatedInformation(t,r){return e.compareStringsCaseSensitive(getDiagnosticFilePath(t),getDiagnosticFilePath(r))||e.compareValues(t.start,r.start)||e.compareValues(t.length,r.length)||e.compareValues(t.code,r.code)||compareMessageText(t.messageText,r.messageText)||0}e.compareDiagnosticsSkipRelatedInformation=compareDiagnosticsSkipRelatedInformation;function compareRelatedInformation(t,r){if(!t.relatedInformation&&!r.relatedInformation){return 0}if(t.relatedInformation&&r.relatedInformation){return e.compareValues(t.relatedInformation.length,r.relatedInformation.length)||e.forEach(t.relatedInformation,function(e,t){var n=r.relatedInformation[t];return compareDiagnostics(e,n)})||0}return t.relatedInformation?-1:1}function compareMessageText(t,r){var n=t;var i=r;while(n&&i){var a=e.isString(n)?n:n.messageText;var o=e.isString(i)?i:i.messageText;var s=e.compareStringsCaseSensitive(a,o);if(s){return s}n=e.isString(n)?undefined:n.next;i=e.isString(i)?undefined:i.next}if(!n&&!i){return 0}return n?1:-1}function getEmitScriptTarget(e){return e.target||0}e.getEmitScriptTarget=getEmitScriptTarget;function getEmitModuleKind(t){return typeof t.module==="number"?t.module:getEmitScriptTarget(t)>=2?e.ModuleKind.ES2015:e.ModuleKind.CommonJS}e.getEmitModuleKind=getEmitModuleKind;function getEmitModuleResolutionKind(t){var r=t.moduleResolution;if(r===undefined){r=getEmitModuleKind(t)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic}return r}e.getEmitModuleResolutionKind=getEmitModuleResolutionKind;function hasJsonModuleEmitEnabled(t){switch(getEmitModuleKind(t)){case e.ModuleKind.CommonJS:case e.ModuleKind.AMD:case e.ModuleKind.ES2015:case e.ModuleKind.ESNext:return true;default:return false}}e.hasJsonModuleEmitEnabled=hasJsonModuleEmitEnabled;function unreachableCodeIsError(e){return e.allowUnreachableCode===false}e.unreachableCodeIsError=unreachableCodeIsError;function unusedLabelIsError(e){return e.allowUnusedLabels===false}e.unusedLabelIsError=unusedLabelIsError;function getAreDeclarationMapsEnabled(e){return!!(getEmitDeclarations(e)&&e.declarationMap)}e.getAreDeclarationMapsEnabled=getAreDeclarationMapsEnabled;function getAllowSyntheticDefaultImports(t){var r=getEmitModuleKind(t);return t.allowSyntheticDefaultImports!==undefined?t.allowSyntheticDefaultImports:t.esModuleInterop||r===e.ModuleKind.System}e.getAllowSyntheticDefaultImports=getAllowSyntheticDefaultImports;function getEmitDeclarations(e){return!!(e.declaration||e.composite)}e.getEmitDeclarations=getEmitDeclarations;function getStrictOptionValue(e,t){return e[t]===undefined?!!e.strict:!!e[t]}e.getStrictOptionValue=getStrictOptionValue;function compilerOptionsAffectSemanticDiagnostics(t,r){return r!==t&&e.semanticDiagnosticsOptionDeclarations.some(function(n){return!e.isJsonEqual(getCompilerOptionValue(r,n),getCompilerOptionValue(t,n))})}e.compilerOptionsAffectSemanticDiagnostics=compilerOptionsAffectSemanticDiagnostics;function getCompilerOptionValue(e,t){return t.strictFlag?getStrictOptionValue(e,t.name):e[t.name]}e.getCompilerOptionValue=getCompilerOptionValue;function hasZeroOrOneAsteriskCharacter(e){var t=false;for(var r=0;r<e.length;r++){if(e.charCodeAt(r)===42){if(!t){t=true}else{return false}}}return true}e.hasZeroOrOneAsteriskCharacter=hasZeroOrOneAsteriskCharacter;e.directorySeparator="/";var t="\\";var r="://";var n=/\\/g;function normalizeSlashes(t){return t.replace(n,e.directorySeparator)}e.normalizeSlashes=normalizeSlashes;function isVolumeCharacter(e){return e>=97&&e<=122||e>=65&&e<=90}function getFileUrlVolumeSeparatorEnd(e,t){var r=e.charCodeAt(t);if(r===58)return t+1;if(r===37&&e.charCodeAt(t+1)===51){var n=e.charCodeAt(t+2);if(n===97||n===65)return t+3}return-1}function getEncodedRootLength(n){if(!n)return 0;var i=n.charCodeAt(0);if(i===47||i===92){if(n.charCodeAt(1)!==i)return 1;var a=n.indexOf(i===47?e.directorySeparator:t,2);if(a<0)return n.length;return a+1}if(isVolumeCharacter(i)&&n.charCodeAt(1)===58){var o=n.charCodeAt(2);if(o===47||o===92)return 3;if(n.length===2)return 2}var s=n.indexOf(r);if(s!==-1){var c=s+r.length;var u=n.indexOf(e.directorySeparator,c);if(u!==-1){var l=n.slice(0,s);var f=n.slice(c,u);if(l==="file"&&(f===""||f==="localhost")&&isVolumeCharacter(n.charCodeAt(u+1))){var d=getFileUrlVolumeSeparatorEnd(n,u+2);if(d!==-1){if(n.charCodeAt(d)===47){return~(d+1)}if(d===n.length){return~d}}}return~(u+1)}return~n.length}return 0}function getRootLength(e){var t=getEncodedRootLength(e);return t<0?~t:t}e.getRootLength=getRootLength;function normalizePath(t){return e.resolvePath(t)}e.normalizePath=normalizePath;function normalizePathAndParts(t){t=normalizeSlashes(t);var r=reducePathComponents(getPathComponents(t)),n=r[0],i=r.slice(1);if(i.length){var a=n+i.join(e.directorySeparator);return{path:e.hasTrailingDirectorySeparator(t)?e.ensureTrailingDirectorySeparator(a):a,parts:i}}else{return{path:n,parts:i}}}e.normalizePathAndParts=normalizePathAndParts;function getDirectoryPath(t){t=normalizeSlashes(t);var r=getRootLength(t);if(r===t.length)return t;t=e.removeTrailingDirectorySeparator(t);return t.slice(0,Math.max(r,t.lastIndexOf(e.directorySeparator)))}e.getDirectoryPath=getDirectoryPath;function startsWithDirectory(t,r,n){var i=n(t);var a=n(r);return e.startsWith(i,a+"/")||e.startsWith(i,a+"\\")}e.startsWithDirectory=startsWithDirectory;function isUrl(e){return getEncodedRootLength(e)<0}e.isUrl=isUrl;function pathIsRelative(e){return/^\.\.?($|[\\/])/.test(e)}e.pathIsRelative=pathIsRelative;function isRootedDiskPath(e){return getEncodedRootLength(e)>0}e.isRootedDiskPath=isRootedDiskPath;function isDiskPathRoot(e){var t=getEncodedRootLength(e);return t>0&&t===e.length}e.isDiskPathRoot=isDiskPathRoot;function convertToRelativePath(t,r,n){return!isRootedDiskPath(t)?t:e.getRelativePathToDirectoryOrUrl(r,t,r,n,false)}e.convertToRelativePath=convertToRelativePath;function pathComponents(t,r){var n=t.substring(0,r);var i=t.substring(r).split(e.directorySeparator);if(i.length&&!e.lastOrUndefined(i))i.pop();return[n].concat(i)}function getPathComponents(t,r){if(r===void 0){r=""}t=e.combinePaths(r,t);var n=getRootLength(t);return pathComponents(t,n)}e.getPathComponents=getPathComponents;function reducePathComponents(t){if(!e.some(t))return[];var r=[t[0]];for(var n=1;n<t.length;n++){var i=t[n];if(!i)continue;if(i===".")continue;if(i===".."){if(r.length>1){if(r[r.length-1]!==".."){r.pop();continue}}else if(r[0])continue}r.push(i)}return r}e.reducePathComponents=reducePathComponents;function getNormalizedPathComponents(e,t){return reducePathComponents(getPathComponents(e,t))}e.getNormalizedPathComponents=getNormalizedPathComponents;function getNormalizedAbsolutePath(e,t){return getPathFromPathComponents(getNormalizedPathComponents(e,t))}e.getNormalizedAbsolutePath=getNormalizedAbsolutePath;function getPathFromPathComponents(t){if(t.length===0)return"";var r=t[0]&&e.ensureTrailingDirectorySeparator(t[0]);return r+t.slice(1).join(e.directorySeparator)}e.getPathFromPathComponents=getPathFromPathComponents})(s||(s={}));(function(e){function getPathComponentsRelativeTo(t,r,n,i){var a=e.reducePathComponents(e.getPathComponents(t));var o=e.reducePathComponents(e.getPathComponents(r));var s;for(s=0;s<a.length&&s<o.length;s++){var c=i(a[s]);var u=i(o[s]);var l=s===0?e.equateStringsCaseInsensitive:n;if(!l(c,u))break}if(s===0){return o}var f=o.slice(s);var d=[];for(;s<a.length;s++){d.push("..")}return[""].concat(d,f)}e.getPathComponentsRelativeTo=getPathComponentsRelativeTo;function getRelativePathFromFile(t,r,n){return ensurePathIsNonModuleName(getRelativePathFromDirectory(e.getDirectoryPath(t),r,n))}e.getRelativePathFromFile=getRelativePathFromFile;function getRelativePathFromDirectory(t,r,n){d.assert(e.getRootLength(t)>0===e.getRootLength(r)>0,"Paths must either both be absolute or both be relative");var i=typeof n==="function"?n:e.identity;var a=typeof n==="boolean"?n:false;var o=getPathComponentsRelativeTo(t,r,a?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive,i);return e.getPathFromPathComponents(o)}e.getRelativePathFromDirectory=getRelativePathFromDirectory;function getRelativePathToDirectoryOrUrl(t,r,n,i,a){var o=getPathComponentsRelativeTo(resolvePath(n,t),resolvePath(n,r),e.equateStringsCaseSensitive,i);var s=o[0];if(a&&e.isRootedDiskPath(s)){var c=s.charAt(0)===e.directorySeparator?"file://":"file:///";o[0]=c+s}return e.getPathFromPathComponents(o)}e.getRelativePathToDirectoryOrUrl=getRelativePathToDirectoryOrUrl;function ensurePathIsNonModuleName(t){return e.getRootLength(t)===0&&!e.pathIsRelative(t)?"./"+t:t}e.ensurePathIsNonModuleName=ensurePathIsNonModuleName;function getBaseFileName(t,r,n){t=e.normalizeSlashes(t);var i=e.getRootLength(t);if(i===t.length)return"";t=removeTrailingDirectorySeparator(t);var a=t.slice(Math.max(e.getRootLength(t),t.lastIndexOf(e.directorySeparator)+1));var o=r!==undefined&&n!==undefined?getAnyExtensionFromPath(a,r,n):undefined;return o?a.slice(0,a.length-o.length):a}e.getBaseFileName=getBaseFileName;function combinePaths(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}if(t)t=e.normalizeSlashes(t);for(var i=0,a=r;i<a.length;i++){var o=a[i];if(!o)continue;o=e.normalizeSlashes(o);if(!t||e.getRootLength(o)!==0){t=o}else{t=ensureTrailingDirectorySeparator(t)+o}}return t}e.combinePaths=combinePaths;function resolvePath(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}var i=e.some(r)?combinePaths.apply(void 0,[t].concat(r)):e.normalizeSlashes(t);var a=e.getPathFromPathComponents(e.reducePathComponents(e.getPathComponents(i)));return a&&hasTrailingDirectorySeparator(i)?ensureTrailingDirectorySeparator(a):a}e.resolvePath=resolvePath;function hasTrailingDirectorySeparator(e){if(e.length===0)return false;var t=e.charCodeAt(e.length-1);return t===47||t===92}e.hasTrailingDirectorySeparator=hasTrailingDirectorySeparator;function removeTrailingDirectorySeparator(e){if(hasTrailingDirectorySeparator(e)){return e.substr(0,e.length-1)}return e}e.removeTrailingDirectorySeparator=removeTrailingDirectorySeparator;function ensureTrailingDirectorySeparator(t){if(!hasTrailingDirectorySeparator(t)){return t+e.directorySeparator}return t}e.ensureTrailingDirectorySeparator=ensureTrailingDirectorySeparator;function comparePathsWorker(t,r,n){if(t===r)return 0;if(t===undefined)return-1;if(r===undefined)return 1;var i=e.reducePathComponents(e.getPathComponents(t));var a=e.reducePathComponents(e.getPathComponents(r));var o=Math.min(i.length,a.length);for(var s=0;s<o;s++){var c=s===0?e.compareStringsCaseInsensitive:n;var u=c(i[s],a[s]);if(u!==0){return u}}return e.compareValues(i.length,a.length)}function comparePathsCaseSensitive(t,r){return comparePathsWorker(t,r,e.compareStringsCaseSensitive)}e.comparePathsCaseSensitive=comparePathsCaseSensitive;function comparePathsCaseInsensitive(t,r){return comparePathsWorker(t,r,e.compareStringsCaseInsensitive)}e.comparePathsCaseInsensitive=comparePathsCaseInsensitive;function comparePaths(t,r,n,i){if(typeof n==="string"){t=combinePaths(n,t);r=combinePaths(n,r)}else if(typeof n==="boolean"){i=n}return comparePathsWorker(t,r,e.getStringComparer(i))}e.comparePaths=comparePaths;function containsPath(t,r,n,i){if(typeof n==="string"){t=combinePaths(n,t);r=combinePaths(n,r)}else if(typeof n==="boolean"){i=n}if(t===undefined||r===undefined)return false;if(t===r)return true;var a=e.reducePathComponents(e.getPathComponents(t));var o=e.reducePathComponents(e.getPathComponents(r));if(o.length<a.length){return false}var s=i?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive;for(var c=0;c<a.length;c++){var u=c===0?e.equateStringsCaseInsensitive:s;if(!u(a[c],o[c])){return false}}return true}e.containsPath=containsPath;function isDirectorySeparator(e){return e===47||e===92}function stripLeadingDirectorySeparator(e){return isDirectorySeparator(e.charCodeAt(0))?e.slice(1):undefined}function tryRemoveDirectoryPrefix(t,r,n){var i=e.tryRemovePrefix(t,r,n);return i===undefined?undefined:stripLeadingDirectorySeparator(i)}e.tryRemoveDirectoryPrefix=tryRemoveDirectoryPrefix;var t=/[^\w\s\/]/g;function regExpEscape(e){return e.replace(t,escapeRegExpCharacter)}e.regExpEscape=regExpEscape;function escapeRegExpCharacter(e){return"\\"+e}var r=[42,63];function hasExtension(t){return e.stringContains(getBaseFileName(t),".")}e.hasExtension=hasExtension;e.commonPackageFolders=["node_modules","bower_components","jspm_packages"];var n="(?!("+e.commonPackageFolders.join("|")+")(/|$))";var i={singleAsteriskRegexFragment:"([^./]|(\\.(?!min\\.js$))?)*",doubleAsteriskRegexFragment:"(/"+n+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return replaceWildcardCharacter(e,i.singleAsteriskRegexFragment)}};var a={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/"+n+"[^/.][^/]*)*?",replaceWildcardCharacter:function(e){return replaceWildcardCharacter(e,a.singleAsteriskRegexFragment)}};var o={singleAsteriskRegexFragment:"[^/]*",doubleAsteriskRegexFragment:"(/.+?)?",replaceWildcardCharacter:function(e){return replaceWildcardCharacter(e,o.singleAsteriskRegexFragment)}};var s={files:i,directories:a,exclude:o};function getRegularExpressionForWildcard(e,t,r){var n=getRegularExpressionsForWildcards(e,t,r);if(!n||!n.length){return undefined}var i=n.map(function(e){return"("+e+")"}).join("|");var a=r==="exclude"?"($|/)":"$";return"^("+i+")"+a}e.getRegularExpressionForWildcard=getRegularExpressionForWildcard;function getRegularExpressionsForWildcards(t,r,n){if(t===undefined||t.length===0){return undefined}return e.flatMap(t,function(e){return e&&getSubPatternFromSpec(e,r,n,s[n])})}e.getRegularExpressionsForWildcards=getRegularExpressionsForWildcards;function isImplicitGlob(e){return!/[.*?]/.test(e)}e.isImplicitGlob=isImplicitGlob;function getSubPatternFromSpec(r,i,a,o){var s=o.singleAsteriskRegexFragment,c=o.doubleAsteriskRegexFragment,u=o.replaceWildcardCharacter;var l="";var f=false;var d=e.getNormalizedPathComponents(r,i);var p=e.last(d);if(a!=="exclude"&&p==="**"){return undefined}d[0]=removeTrailingDirectorySeparator(d[0]);if(isImplicitGlob(p)){d.push("**","*")}var g=0;for(var _=0,m=d;_<m.length;_++){var y=m[_];if(y==="**"){l+=c}else{if(a==="directories"){l+="(";g++}if(f){l+=e.directorySeparator}if(a!=="exclude"){var h="";if(y.charCodeAt(0)===42){h+="([^./]"+s+")?";y=y.substr(1)}else if(y.charCodeAt(0)===63){h+="[^./]";y=y.substr(1)}h+=y.replace(t,u);if(h!==y){l+=n}l+=h}else{l+=y.replace(t,u)}}f=true}while(g>0){l+=")?";g--}return l}function replaceWildcardCharacter(e,t){return e==="*"?t:e==="?"?"[^/]":"\\"+e}function getFileMatcherPatterns(t,r,n,i,a){t=e.normalizePath(t);a=e.normalizePath(a);var o=combinePaths(a,t);return{includeFilePatterns:e.map(getRegularExpressionsForWildcards(n,o,"files"),function(e){return"^"+e+"$"}),includeFilePattern:getRegularExpressionForWildcard(n,o,"files"),includeDirectoryPattern:getRegularExpressionForWildcard(n,o,"directories"),excludePattern:getRegularExpressionForWildcard(r,o,"exclude"),basePaths:getBasePaths(t,n,i)}}e.getFileMatcherPatterns=getFileMatcherPatterns;function getRegexFromPattern(e,t){return new RegExp(e,t?"":"i")}e.getRegexFromPattern=getRegexFromPattern;function matchFiles(t,r,n,i,a,o,s,c){t=e.normalizePath(t);o=e.normalizePath(o);var u=getFileMatcherPatterns(t,n,i,a,o);var l=u.includeFilePatterns&&u.includeFilePatterns.map(function(e){return getRegexFromPattern(e,a)});var f=u.includeDirectoryPattern&&getRegexFromPattern(u.includeDirectoryPattern,a);var d=u.excludePattern&&getRegexFromPattern(u.excludePattern,a);var p=l?l.map(function(){return[]}):[[]];for(var g=0,_=u.basePaths;g<_.length;g++){var m=_[g];visitDirectory(m,combinePaths(o,m),s)}return e.flatten(p);function visitDirectory(t,n,i){var a=c(t),o=a.files,s=a.directories;var u=function(i){var a=combinePaths(t,i);var o=combinePaths(n,i);if(r&&!e.fileExtensionIsOneOf(a,r))return"continue";if(d&&d.test(o))return"continue";if(!l){p[0].push(a)}else{var s=e.findIndex(l,function(e){return e.test(o)});if(s!==-1){p[s].push(a)}}};for(var g=0,_=e.sort(o,e.compareStringsCaseSensitive);g<_.length;g++){var m=_[g];u(m)}if(i!==undefined){i--;if(i===0){return}}for(var y=0,h=e.sort(s,e.compareStringsCaseSensitive);y<h.length;y++){var m=h[y];var v=combinePaths(t,m);var T=combinePaths(n,m);if((!f||f.test(T))&&(!d||!d.test(T))){visitDirectory(v,T,i)}}}}e.matchFiles=matchFiles;function getBasePaths(t,r,n){var i=[t];if(r){var a=[];for(var o=0,s=r;o<s.length;o++){var c=s[o];var u=e.isRootedDiskPath(c)?c:e.normalizePath(combinePaths(t,c));a.push(getIncludeBasePath(u))}a.sort(e.getStringComparer(!n));var l=function(r){if(e.every(i,function(e){return!containsPath(e,r,t,!n)})){i.push(r)}};for(var f=0,d=a;f<d.length;f++){var p=d[f];l(p)}}return i}function getIncludeBasePath(t){var n=e.indexOfAnyCharCode(t,r);if(n<0){return!hasExtension(t)?t:removeTrailingDirectorySeparator(e.getDirectoryPath(t))}return t.substring(0,t.lastIndexOf(e.directorySeparator,n))}function ensureScriptKind(e,t){return t||getScriptKindFromFileName(e)||3}e.ensureScriptKind=ensureScriptKind;function getScriptKindFromFileName(e){var t=e.substr(e.lastIndexOf("."));switch(t.toLowerCase()){case".js":return 1;case".jsx":return 2;case".ts":return 3;case".tsx":return 4;case".json":return 6;default:return 0}}e.getScriptKindFromFileName=getScriptKindFromFileName;e.supportedTSExtensions=[".ts",".tsx",".d.ts"];e.supportedTSExtensionsWithJson=[".ts",".tsx",".d.ts",".json"];e.supportedTSExtensionsForExtractExtension=[".d.ts",".ts",".tsx"];e.supportedJSExtensions=[".js",".jsx"];e.supportedJSAndJsonExtensions=[".js",".jsx",".json"];var c=e.supportedTSExtensions.concat(e.supportedJSExtensions);var u=e.supportedTSExtensions.concat(e.supportedJSExtensions,[".json"]);function getSupportedExtensions(t,r){var n=t&&t.allowJs;if(!r||r.length===0){return n?c:e.supportedTSExtensions}var i=(n?c:e.supportedTSExtensions).concat(e.mapDefined(r,function(e){return e.scriptKind===7||n&&isJSLike(e.scriptKind)?e.extension:undefined}));return e.deduplicate(i,e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}e.getSupportedExtensions=getSupportedExtensions;function getSuppoertedExtensionsWithJsonIfResolveJsonModule(t,r){if(!t||!t.resolveJsonModule){return r}if(r===c){return u}if(r===e.supportedTSExtensions){return e.supportedTSExtensionsWithJson}return r.concat([".json"])}e.getSuppoertedExtensionsWithJsonIfResolveJsonModule=getSuppoertedExtensionsWithJsonIfResolveJsonModule;function isJSLike(e){return e===1||e===2}function hasJSFileExtension(t){return e.some(e.supportedJSExtensions,function(r){return e.fileExtensionIs(t,r)})}e.hasJSFileExtension=hasJSFileExtension;function hasJSOrJsonFileExtension(t){return e.supportedJSAndJsonExtensions.some(function(r){return e.fileExtensionIs(t,r)})}e.hasJSOrJsonFileExtension=hasJSOrJsonFileExtension;function hasTSFileExtension(t){return e.some(e.supportedTSExtensions,function(r){return e.fileExtensionIs(t,r)})}e.hasTSFileExtension=hasTSFileExtension;function isSupportedSourceFileName(t,r,n){if(!t){return false}var i=getSupportedExtensions(r,n);for(var a=0,o=getSuppoertedExtensionsWithJsonIfResolveJsonModule(r,i);a<o.length;a++){var s=o[a];if(e.fileExtensionIs(t,s)){return true}}return false}e.isSupportedSourceFileName=isSupportedSourceFileName;var l;(function(e){e[e["TypeScriptFiles"]=0]="TypeScriptFiles";e[e["DeclarationAndJavaScriptFiles"]=2]="DeclarationAndJavaScriptFiles";e[e["Highest"]=0]="Highest";e[e["Lowest"]=2]="Lowest"})(l=e.ExtensionPriority||(e.ExtensionPriority={}));function getExtensionPriority(t,r){for(var n=r.length-1;n>=0;n--){if(e.fileExtensionIs(t,r[n])){return adjustExtensionPriority(n,r)}}return 0}e.getExtensionPriority=getExtensionPriority;function adjustExtensionPriority(e,t){if(e<2){return 0}else if(e<t.length){return 2}else{return t.length}}e.adjustExtensionPriority=adjustExtensionPriority;function getNextLowestExtensionPriority(e,t){if(e<2){return 2}else{return t.length}}e.getNextLowestExtensionPriority=getNextLowestExtensionPriority;var f=[".d.ts",".ts",".js",".tsx",".jsx",".json"];function removeFileExtension(e){for(var t=0,r=f;t<r.length;t++){var n=r[t];var i=tryRemoveExtension(e,n);if(i!==undefined){return i}}return e}e.removeFileExtension=removeFileExtension;function tryRemoveExtension(t,r){return e.fileExtensionIs(t,r)?removeExtension(t,r):undefined}e.tryRemoveExtension=tryRemoveExtension;function removeExtension(e,t){return e.substring(0,e.length-t.length)}e.removeExtension=removeExtension;function changeExtension(e,t){return changeAnyExtension(e,t,f,false)}e.changeExtension=changeExtension;function changeAnyExtension(t,r,n,i){var a=n!==undefined&&i!==undefined?getAnyExtensionFromPath(t,n,i):getAnyExtensionFromPath(t);return a?t.slice(0,t.length-a.length)+(e.startsWith(r,".")?r:"."+r):t}e.changeAnyExtension=changeAnyExtension;var d;(function(t){function showSymbol(t){var r=e.SymbolFlags;return"{ flags: "+(r?showFlags(t.flags,r):t.flags)+"; declarations: "+e.map(t.declarations,showSyntaxKind)+" }"}t.showSymbol=showSymbol;function showFlags(e,t){var r=[];for(var n=0;n<=30;n++){var i=1<<n;if(e&i){r.push(t[i])}}return r.join("|")}function showSyntaxKind(t){var r=e.SyntaxKind;return r?r[t.kind]:t.kind.toString()}t.showSyntaxKind=showSyntaxKind})(d=e.Debug||(e.Debug={}));function tryParsePattern(t){d.assert(e.hasZeroOrOneAsteriskCharacter(t));var r=t.indexOf("*");return r===-1?undefined:{prefix:t.substr(0,r),suffix:t.substr(r+1)}}e.tryParsePattern=tryParsePattern;function positionIsSynthesized(e){return!(e>=0)}e.positionIsSynthesized=positionIsSynthesized;function extensionIsTS(e){return e===".ts"||e===".tsx"||e===".d.ts"}e.extensionIsTS=extensionIsTS;function resolutionExtensionIsTSOrJson(e){return extensionIsTS(e)||e===".json"}e.resolutionExtensionIsTSOrJson=resolutionExtensionIsTSOrJson;function extensionFromPath(e){var t=tryGetExtensionFromPath(e);return t!==undefined?t:d.fail("File "+e+" has unknown extension.")}e.extensionFromPath=extensionFromPath;function isAnySupportedFileExtension(e){return tryGetExtensionFromPath(e)!==undefined}e.isAnySupportedFileExtension=isAnySupportedFileExtension;function tryGetExtensionFromPath(t){return e.find(f,function(r){return e.fileExtensionIs(t,r)})}e.tryGetExtensionFromPath=tryGetExtensionFromPath;function getAnyExtensionFromPathWorker(t,r,n){if(typeof r==="string")r=[r];for(var i=0,a=r;i<a.length;i++){var o=a[i];if(!e.startsWith(o,"."))o="."+o;if(t.length>=o.length&&t.charAt(t.length-o.length)==="."){var s=t.slice(t.length-o.length);if(n(s,o)){return s}}}return""}function getAnyExtensionFromPath(t,r,n){if(r){return getAnyExtensionFromPathWorker(t,r,n?e.equateStringsCaseInsensitive:e.equateStringsCaseSensitive)}var i=getBaseFileName(t);var a=i.lastIndexOf(".");if(a>=0){return i.substring(a)}return""}e.getAnyExtensionFromPath=getAnyExtensionFromPath;function isCheckJsEnabledForFile(e,t){return e.checkJsDirective?e.checkJsDirective.enabled:t.checkJs}e.isCheckJsEnabledForFile=isCheckJsEnabledForFile;e.emptyFileSystemEntries={files:e.emptyArray,directories:e.emptyArray};function matchPatternOrExact(t,r){var n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i];var s=tryParsePattern(o);if(s){n.push(s)}else if(o===r){return o}}return e.findBestPatternMatch(n,function(e){return e},r)}e.matchPatternOrExact=matchPatternOrExact;function sliceAfter(e,t){var r=e.indexOf(t);d.assert(r!==-1);return e.slice(r)}e.sliceAfter=sliceAfter;function minAndMax(e,t){d.assert(e.length!==0);var r=t(e[0]);var n=r;for(var i=1;i<e.length;i++){var a=t(e[i]);if(a<r){r=a}else if(a>n){n=a}}return{min:r,max:n}}e.minAndMax=minAndMax;var p=function(){function NodeSet(){this.map=e.createMap()}NodeSet.prototype.add=function(t){this.map.set(String(e.getNodeId(t)),t)};NodeSet.prototype.tryAdd=function(e){if(this.has(e))return false;this.add(e);return true};NodeSet.prototype.has=function(t){return this.map.has(String(e.getNodeId(t)))};NodeSet.prototype.forEach=function(e){this.map.forEach(e)};NodeSet.prototype.some=function(t){return e.forEachEntry(this.map,t)||false};return NodeSet}();e.NodeSet=p;var g=function(){function NodeMap(){this.map=e.createMap()}NodeMap.prototype.get=function(t){var r=this.map.get(String(e.getNodeId(t)));return r&&r.value};NodeMap.prototype.getOrUpdate=function(e,t){var r=this.get(e);if(r)return r;var n=t();this.set(e,n);return n};NodeMap.prototype.set=function(t,r){this.map.set(String(e.getNodeId(t)),{node:t,value:r})};NodeMap.prototype.has=function(t){return this.map.has(String(e.getNodeId(t)))};NodeMap.prototype.forEach=function(e){this.map.forEach(function(t){var r=t.node,n=t.value;return e(n,r)})};return NodeMap}();e.NodeMap=g;function rangeOfNode(t){return{pos:e.getTokenPosOfNode(t),end:t.end}}e.rangeOfNode=rangeOfNode;function rangeOfTypeParameters(e){return{pos:e.pos-1,end:e.end+1}}e.rangeOfTypeParameters=rangeOfTypeParameters;function skipTypeChecking(e,t){return t.skipLibCheck&&e.isDeclarationFile||t.skipDefaultLibCheck&&e.hasNoDefaultLib}e.skipTypeChecking=skipTypeChecking;function isJsonEqual(t,r){return t===r||typeof t==="object"&&t!==null&&typeof r==="object"&&r!==null&&e.equalOwnProperties(t,r,isJsonEqual)}e.isJsonEqual=isJsonEqual;function getOrUpdate(e,t,r){var n=e.get(t);if(n===undefined){var i=r();e.set(t,i);return i}else{return n}}e.getOrUpdate=getOrUpdate;function parsePseudoBigInt(e){var t;switch(e.charCodeAt(1)){case 98:case 66:t=1;break;case 111:case 79:t=3;break;case 120:case 88:t=4;break;default:var r=e.length-1;var n=0;while(e.charCodeAt(n)===48){n++}return e.slice(n,r)||"0"}var i=2,a=e.length-1;var o=(a-i)*t;var s=new Uint16Array((o>>>4)+(o&15?1:0));for(var c=a-1,u=0;c>=i;c--,u+=t){var l=u>>>4;var f=e.charCodeAt(c);var d=f<=57?f-48:10+f-(f<=70?65:97);var p=d<<(u&15);s[l]|=p;var g=p>>>16;if(g)s[l+1]|=g}var _="";var m=s.length-1;var y=true;while(y){var h=0;y=false;for(var l=m;l>=0;l--){var v=h<<16|s[l];var T=v/10|0;s[l]=T;h=v-T*10;if(T&&!y){m=l;y=true}}_=h+_}return _}e.parsePseudoBigInt=parsePseudoBigInt;function pseudoBigIntToString(e){var t=e.negative,r=e.base10Value;return(t&&r!=="0"?"-":"")+r}e.pseudoBigIntToString=pseudoBigIntToString})(s||(s={}));var s;(function(e){var t;(function(e){e[e["None"]=0]="None";e[e["Yield"]=1]="Yield";e[e["Await"]=2]="Await";e[e["Type"]=4]="Type";e[e["IgnoreMissingOpenBrace"]=16]="IgnoreMissingOpenBrace";e[e["JSDoc"]=32]="JSDoc"})(t||(t={}));var r;var n;var i;var a;function createNode(t,o,s){if(t===279){return new(a||(a=e.objectAllocator.getSourceFileConstructor()))(t,o,s)}else if(t===72){return new(i||(i=e.objectAllocator.getIdentifierConstructor()))(t,o,s)}else if(!e.isNodeKind(t)){return new(n||(n=e.objectAllocator.getTokenConstructor()))(t,o,s)}else{return new(r||(r=e.objectAllocator.getNodeConstructor()))(t,o,s)}}e.createNode=createNode;function visitNode(e,t){return t&&e(t)}function visitNodes(e,t,r){if(r){if(t){return t(r)}for(var n=0,i=r;n<i.length;n++){var a=i[n];var o=e(a);if(o){return o}}}}function isJSDocLikeText(e,t){return e.charCodeAt(t+1)===42&&e.charCodeAt(t+2)===42&&e.charCodeAt(t+3)!==47}e.isJSDocLikeText=isJSDocLikeText;function forEachChild(t,r,n){if(!t||t.kind<=147){return}switch(t.kind){case 148:return visitNode(r,t.left)||visitNode(r,t.right);case 150:return visitNode(r,t.name)||visitNode(r,t.constraint)||visitNode(r,t.default)||visitNode(r,t.expression);case 276:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.exclamationToken)||visitNode(r,t.equalsToken)||visitNode(r,t.objectAssignmentInitializer);case 277:return visitNode(r,t.expression);case 151:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.dotDotDotToken)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.type)||visitNode(r,t.initializer);case 154:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.exclamationToken)||visitNode(r,t.type)||visitNode(r,t.initializer);case 153:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.type)||visitNode(r,t.initializer);case 275:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.initializer);case 237:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.exclamationToken)||visitNode(r,t.type)||visitNode(r,t.initializer);case 186:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.dotDotDotToken)||visitNode(r,t.propertyName)||visitNode(r,t.name)||visitNode(r,t.initializer);case 165:case 166:case 160:case 161:case 162:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNodes(r,n,t.typeParameters)||visitNodes(r,n,t.parameters)||visitNode(r,t.type);case 156:case 155:case 157:case 158:case 159:case 196:case 239:case 197:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.asteriskToken)||visitNode(r,t.name)||visitNode(r,t.questionToken)||visitNode(r,t.exclamationToken)||visitNodes(r,n,t.typeParameters)||visitNodes(r,n,t.parameters)||visitNode(r,t.type)||visitNode(r,t.equalsGreaterThanToken)||visitNode(r,t.body);case 164:return visitNode(r,t.typeName)||visitNodes(r,n,t.typeArguments);case 163:return visitNode(r,t.parameterName)||visitNode(r,t.type);case 167:return visitNode(r,t.exprName);case 168:return visitNodes(r,n,t.members);case 169:return visitNode(r,t.elementType);case 170:return visitNodes(r,n,t.elementTypes);case 173:case 174:return visitNodes(r,n,t.types);case 175:return visitNode(r,t.checkType)||visitNode(r,t.extendsType)||visitNode(r,t.trueType)||visitNode(r,t.falseType);case 176:return visitNode(r,t.typeParameter);case 183:return visitNode(r,t.argument)||visitNode(r,t.qualifier)||visitNodes(r,n,t.typeArguments);case 177:case 179:return visitNode(r,t.type);case 180:return visitNode(r,t.objectType)||visitNode(r,t.indexType);case 181:return visitNode(r,t.readonlyToken)||visitNode(r,t.typeParameter)||visitNode(r,t.questionToken)||visitNode(r,t.type);case 182:return visitNode(r,t.literal);case 184:case 185:return visitNodes(r,n,t.elements);case 187:return visitNodes(r,n,t.elements);case 188:return visitNodes(r,n,t.properties);case 189:return visitNode(r,t.expression)||visitNode(r,t.name);case 190:return visitNode(r,t.expression)||visitNode(r,t.argumentExpression);case 191:case 192:return visitNode(r,t.expression)||visitNodes(r,n,t.typeArguments)||visitNodes(r,n,t.arguments);case 193:return visitNode(r,t.tag)||visitNodes(r,n,t.typeArguments)||visitNode(r,t.template);case 194:return visitNode(r,t.type)||visitNode(r,t.expression);case 195:return visitNode(r,t.expression);case 198:return visitNode(r,t.expression);case 199:return visitNode(r,t.expression);case 200:return visitNode(r,t.expression);case 202:return visitNode(r,t.operand);case 207:return visitNode(r,t.asteriskToken)||visitNode(r,t.expression);case 201:return visitNode(r,t.expression);case 203:return visitNode(r,t.operand);case 204:return visitNode(r,t.left)||visitNode(r,t.operatorToken)||visitNode(r,t.right);case 212:return visitNode(r,t.expression)||visitNode(r,t.type);case 213:return visitNode(r,t.expression);case 214:return visitNode(r,t.name);case 205:return visitNode(r,t.condition)||visitNode(r,t.questionToken)||visitNode(r,t.whenTrue)||visitNode(r,t.colonToken)||visitNode(r,t.whenFalse);case 208:return visitNode(r,t.expression);case 218:case 245:return visitNodes(r,n,t.statements);case 279:return visitNodes(r,n,t.statements)||visitNode(r,t.endOfFileToken);case 219:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.declarationList);case 238:return visitNodes(r,n,t.declarations);case 221:return visitNode(r,t.expression);case 222:return visitNode(r,t.expression)||visitNode(r,t.thenStatement)||visitNode(r,t.elseStatement);case 223:return visitNode(r,t.statement)||visitNode(r,t.expression);case 224:return visitNode(r,t.expression)||visitNode(r,t.statement);case 225:return visitNode(r,t.initializer)||visitNode(r,t.condition)||visitNode(r,t.incrementor)||visitNode(r,t.statement);case 226:return visitNode(r,t.initializer)||visitNode(r,t.expression)||visitNode(r,t.statement);case 227:return visitNode(r,t.awaitModifier)||visitNode(r,t.initializer)||visitNode(r,t.expression)||visitNode(r,t.statement);case 228:case 229:return visitNode(r,t.label);case 230:return visitNode(r,t.expression);case 231:return visitNode(r,t.expression)||visitNode(r,t.statement);case 232:return visitNode(r,t.expression)||visitNode(r,t.caseBlock);case 246:return visitNodes(r,n,t.clauses);case 271:return visitNode(r,t.expression)||visitNodes(r,n,t.statements);case 272:return visitNodes(r,n,t.statements);case 233:return visitNode(r,t.label)||visitNode(r,t.statement);case 234:return visitNode(r,t.expression);case 235:return visitNode(r,t.tryBlock)||visitNode(r,t.catchClause)||visitNode(r,t.finallyBlock);case 274:return visitNode(r,t.variableDeclaration)||visitNode(r,t.block);case 152:return visitNode(r,t.expression);case 240:case 209:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNodes(r,n,t.typeParameters)||visitNodes(r,n,t.heritageClauses)||visitNodes(r,n,t.members);case 241:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNodes(r,n,t.typeParameters)||visitNodes(r,n,t.heritageClauses)||visitNodes(r,n,t.members);case 242:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNodes(r,n,t.typeParameters)||visitNode(r,t.type);case 243:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNodes(r,n,t.members);case 278:return visitNode(r,t.name)||visitNode(r,t.initializer);case 244:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.body);case 248:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.name)||visitNode(r,t.moduleReference);case 249:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.importClause)||visitNode(r,t.moduleSpecifier);case 250:return visitNode(r,t.name)||visitNode(r,t.namedBindings);case 247:return visitNode(r,t.name);case 251:return visitNode(r,t.name);case 252:case 256:return visitNodes(r,n,t.elements);case 255:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.exportClause)||visitNode(r,t.moduleSpecifier);case 253:case 257:return visitNode(r,t.propertyName)||visitNode(r,t.name);case 254:return visitNodes(r,n,t.decorators)||visitNodes(r,n,t.modifiers)||visitNode(r,t.expression);case 206:return visitNode(r,t.head)||visitNodes(r,n,t.templateSpans);case 216:return visitNode(r,t.expression)||visitNode(r,t.literal);case 149:return visitNode(r,t.expression);case 273:return visitNodes(r,n,t.types);case 211:return visitNode(r,t.expression)||visitNodes(r,n,t.typeArguments);case 259:return visitNode(r,t.expression);case 258:return visitNodes(r,n,t.decorators);case 309:return visitNodes(r,n,t.elements);case 260:return visitNode(r,t.openingElement)||visitNodes(r,n,t.children)||visitNode(r,t.closingElement);case 264:return visitNode(r,t.openingFragment)||visitNodes(r,n,t.children)||visitNode(r,t.closingFragment);case 261:case 262:return visitNode(r,t.tagName)||visitNodes(r,n,t.typeArguments)||visitNode(r,t.attributes);case 268:return visitNodes(r,n,t.properties);case 267:return visitNode(r,t.name)||visitNode(r,t.initializer);case 269:return visitNode(r,t.expression);case 270:return visitNode(r,t.dotDotDotToken)||visitNode(r,t.expression);case 263:return visitNode(r,t.tagName);case 171:case 172:case 283:case 287:case 286:case 288:case 290:return visitNode(r,t.type);case 289:return visitNodes(r,n,t.parameters)||visitNode(r,t.type);case 291:return visitNodes(r,n,t.tags);case 299:case 305:return visitNode(r,t.tagName)||(t.isNameFirst?visitNode(r,t.name)||visitNode(r,t.typeExpression):visitNode(r,t.typeExpression)||visitNode(r,t.name));case 295:return visitNode(r,t.tagName)||visitNode(r,t.class);case 303:return visitNode(r,t.tagName)||visitNode(r,t.constraint)||visitNodes(r,n,t.typeParameters);case 304:return visitNode(r,t.tagName)||(t.typeExpression&&t.typeExpression.kind===283?visitNode(r,t.typeExpression)||visitNode(r,t.fullName):visitNode(r,t.fullName)||visitNode(r,t.typeExpression));case 297:return visitNode(r,t.tagName)||visitNode(r,t.fullName)||visitNode(r,t.typeExpression);case 300:case 302:case 301:case 298:return visitNode(r,t.tagName)||visitNode(r,t.typeExpression);case 293:return e.forEach(t.typeParameters,r)||e.forEach(t.parameters,r)||visitNode(r,t.type);case 292:return e.forEach(t.jsDocPropertyTags,r);case 294:case 296:return visitNode(r,t.tagName);case 308:return visitNode(r,t.expression)}}e.forEachChild=forEachChild;function createSourceFile(t,r,n,i,a){if(i===void 0){i=false}e.performance.mark("beforeParse");var s;if(n===100){s=o.parseSourceFile(t,r,n,undefined,i,6)}else{s=o.parseSourceFile(t,r,n,undefined,i,a)}e.performance.mark("afterParse");e.performance.measure("Parse","beforeParse","afterParse");return s}e.createSourceFile=createSourceFile;function parseIsolatedEntityName(e,t){return o.parseIsolatedEntityName(e,t)}e.parseIsolatedEntityName=parseIsolatedEntityName;function parseJsonText(e,t){return o.parseJsonText(e,t)}e.parseJsonText=parseJsonText;function isExternalModule(e){return e.externalModuleIndicator!==undefined}e.isExternalModule=isExternalModule;function updateSourceFile(e,t,r,n){if(n===void 0){n=false}var i=s.updateSourceFile(e,t,r,n);i.flags|=e.flags&1572864;return i}e.updateSourceFile=updateSourceFile;function parseIsolatedJSDocComment(e,t,r){var n=o.JSDocParser.parseIsolatedJSDocComment(e,t,r);if(n&&n.jsDoc){o.fixupParentReferences(n.jsDoc)}return n}e.parseIsolatedJSDocComment=parseIsolatedJSDocComment;function parseJSDocTypeExpressionForTests(e,t,r){return o.JSDocParser.parseJSDocTypeExpressionForTests(e,t,r)}e.parseJSDocTypeExpressionForTests=parseJSDocTypeExpressionForTests;var o;(function(t){var r=e.createScanner(6,true);var n=2048|8192;var i;var a;var o;var s;var c;var u;var l;var f;var d;var p;var g;var _;var m;var y;var h=false;function parseSourceFile(t,r,n,i,a,o){if(a===void 0){a=false}o=e.ensureScriptKind(t,o);if(o===6){var s=parseJsonText(t,r,n,i,a);e.convertToObjectWorker(s,s.parseDiagnostics,false,undefined,undefined);s.referencedFiles=e.emptyArray;s.typeReferenceDirectives=e.emptyArray;s.libReferenceDirectives=e.emptyArray;s.amdDependencies=e.emptyArray;s.hasNoDefaultLib=false;s.pragmas=e.emptyMap;return s}initializeState(r,n,i,o);var c=parseSourceFileWorker(t,n,a,o);clearState();return c}t.parseSourceFile=parseSourceFile;function parseIsolatedEntityName(e,t){initializeState(e,t,undefined,1);nextToken();var r=parseEntityName(true);var n=token()===1&&!u.length;clearState();return n?r:undefined}t.parseIsolatedEntityName=parseIsolatedEntityName;function parseJsonText(t,r,n,i,a){if(n===void 0){n=2}initializeState(r,n,i,6);c=createSourceFile(t,2,6,false);c.flags=y;nextToken();var o=getNodePos();if(token()===1){c.statements=createNodeArray([],o,o);c.endOfFileToken=parseTokenNode()}else{var s=createNode(221);switch(token()){case 22:s.expression=parseArrayLiteralExpression();break;case 102:case 87:case 96:s.expression=parseTokenNode();break;case 39:if(lookAhead(function(){return nextToken()===8&&nextToken()!==57})){s.expression=parsePrefixUnaryExpression()}else{s.expression=parseObjectLiteralExpression()}break;case 8:case 10:if(lookAhead(function(){return nextToken()!==57})){s.expression=parseLiteralNode();break}default:s.expression=parseObjectLiteralExpression();break}finishNode(s);c.statements=createNodeArray([s],o);c.endOfFileToken=parseExpectedToken(1,e.Diagnostics.Unexpected_token)}if(a){fixupParentReferences(c)}c.parseDiagnostics=u;var l=c;clearState();return l}t.parseJsonText=parseJsonText;function getLanguageVariant(e){return e===4||e===2||e===1||e===6?1:0}function initializeState(t,n,c,f){i=e.objectAllocator.getNodeConstructor();a=e.objectAllocator.getTokenConstructor();o=e.objectAllocator.getIdentifierConstructor();s=e.objectAllocator.getSourceFileConstructor();d=t;l=c;u=[];m=0;g=e.createMap();_=0;p=0;switch(f){case 1:case 2:y=65536;break;case 6:y=65536|16777216;break;default:y=0;break}h=false;r.setText(d);r.setOnError(scanError);r.setScriptTarget(n);r.setLanguageVariant(getLanguageVariant(f))}function clearState(){r.setText("");r.setOnError(undefined);u=undefined;c=undefined;g=undefined;l=undefined;d=undefined}function parseSourceFileWorker(t,r,n,i){var a=isDeclarationFileName(t);if(a){y|=4194304}c=createSourceFile(t,r,i,a);c.flags=y;nextToken();processCommentPragmas(c,d);processPragmasIntoFields(c,reportPragmaDiagnostic);c.statements=parseList(0,parseStatement);e.Debug.assert(token()===1);c.endOfFileToken=addJSDocComment(parseTokenNode());setExternalModuleIndicator(c);c.nodeCount=p;c.identifierCount=_;c.identifiers=g;c.parseDiagnostics=u;if(n){fixupParentReferences(c)}return c;function reportPragmaDiagnostic(t,r,n){u.push(e.createFileDiagnostic(c,t,r,n))}}function addJSDocComment(t){e.Debug.assert(!t.jsDoc);var r=e.mapDefined(e.getJSDocCommentRanges(t,c.text),function(e){return S.parseJSDocComment(t,e.pos,e.end-e.pos)});if(r.length)t.jsDoc=r;return t}function fixupParentReferences(t){var r=t;forEachChild(t,visitNode);return;function visitNode(t){if(t.parent!==r){t.parent=r;var n=r;r=t;forEachChild(t,visitNode);if(e.hasJSDocNodes(t)){for(var i=0,a=t.jsDoc;i<a.length;i++){var o=a[i];o.parent=t;r=o;forEachChild(o,visitNode)}}r=n}}}t.fixupParentReferences=fixupParentReferences;function createSourceFile(t,r,n,i){var a=new s(279,0,d.length);p++;a.text=d;a.bindDiagnostics=[];a.bindSuggestionDiagnostics=undefined;a.languageVersion=r;a.fileName=e.normalizePath(t);a.languageVariant=getLanguageVariant(n);a.isDeclarationFile=i;a.scriptKind=n;return a}function setContextFlag(e,t){if(e){y|=t}else{y&=~t}}function setDisallowInContext(e){setContextFlag(e,2048)}function setYieldContext(e){setContextFlag(e,4096)}function setDecoratorContext(e){setContextFlag(e,8192)}function setAwaitContext(e){setContextFlag(e,16384)}function doOutsideOfContext(e,t){var r=e&y;if(r){setContextFlag(false,r);var n=t();setContextFlag(true,r);return n}return t()}function doInsideOfContext(e,t){var r=e&~y;if(r){setContextFlag(true,r);var n=t();setContextFlag(false,r);return n}return t()}function allowInAnd(e){return doOutsideOfContext(2048,e)}function disallowInAnd(e){return doInsideOfContext(2048,e)}function doInYieldContext(e){return doInsideOfContext(4096,e)}function doInDecoratorContext(e){return doInsideOfContext(8192,e)}function doInAwaitContext(e){return doInsideOfContext(16384,e)}function doOutsideOfAwaitContext(e){return doOutsideOfContext(16384,e)}function doInYieldAndAwaitContext(e){return doInsideOfContext(4096|16384,e)}function inContext(e){return(y&e)!==0}function inYieldContext(){return inContext(4096)}function inDisallowInContext(){return inContext(2048)}function inDecoratorContext(){return inContext(8192)}function inAwaitContext(){return inContext(16384)}function parseErrorAtCurrentToken(e,t){parseErrorAt(r.getTokenPos(),r.getTextPos(),e,t)}function parseErrorAtPosition(t,r,n,i){var a=e.lastOrUndefined(u);if(!a||t!==a.start){u.push(e.createFileDiagnostic(c,t,r,n,i))}h=true}function parseErrorAt(e,t,r,n){parseErrorAtPosition(e,t-e,r,n)}function parseErrorAtRange(e,t,r){parseErrorAt(e.pos,e.end,t,r)}function scanError(e,t){parseErrorAtPosition(r.getTextPos(),t,e)}function getNodePos(){return r.getStartPos()}function token(){return f}function nextToken(){return f=r.scan()}function reScanGreaterToken(){return f=r.reScanGreaterToken()}function reScanSlashToken(){return f=r.reScanSlashToken()}function reScanTemplateToken(){return f=r.reScanTemplateToken()}function scanJsxIdentifier(){return f=r.scanJsxIdentifier()}function scanJsxText(){return f=r.scanJsxToken()}function scanJsxAttributeValue(){return f=r.scanJsxAttributeValue()}function speculationHelper(t,n){var i=f;var a=u.length;var o=h;var s=y;var c=n?r.lookAhead(t):r.tryScan(t);e.Debug.assert(s===y);if(!c||n){f=i;u.length=a;h=o}return c}function lookAhead(e){return speculationHelper(e,true)}function tryParse(e){return speculationHelper(e,false)}function isIdentifier(){if(token()===72){return true}if(token()===117&&inYieldContext()){return false}if(token()===122&&inAwaitContext()){return false}return token()>108}function parseExpected(t,r,n){if(n===void 0){n=true}if(token()===t){if(n){nextToken()}return true}if(r){parseErrorAtCurrentToken(r)}else{parseErrorAtCurrentToken(e.Diagnostics._0_expected,e.tokenToString(t))}return false}function parseOptional(e){if(token()===e){nextToken();return true}return false}function parseOptionalToken(e){if(token()===e){return parseTokenNode()}return undefined}function parseExpectedToken(t,r,n){return parseOptionalToken(t)||createMissingNode(t,false,r||e.Diagnostics._0_expected,n||e.tokenToString(t))}function parseTokenNode(){var e=createNode(token());nextToken();return finishNode(e)}function canParseSemicolon(){if(token()===26){return true}return token()===19||token()===1||r.hasPrecedingLineBreak()}function parseSemicolon(){if(canParseSemicolon()){if(token()===26){nextToken()}return true}else{return parseExpected(26)}}function createNode(t,n){p++;var s=n>=0?n:r.getStartPos();return e.isNodeKind(t)||t===0?new i(t,s,s):t===72?new o(t,s,s):new a(t,s,s)}function createNodeWithJSDoc(e,t){var n=createNode(e,t);if(r.getTokenFlags()&2){addJSDocComment(n)}return n}function createNodeArray(e,t,n){var i=e.length;var a=i>=1&&i<=4?e.slice():e;a.pos=t;a.end=n===undefined?r.getStartPos():n;return a}function finishNode(e,t){e.end=t===undefined?r.getStartPos():t;if(y){e.flags|=y}if(h){h=false;e.flags|=32768}return e}function createMissingNode(t,n,i,a){if(n){parseErrorAtPosition(r.getStartPos(),0,i,a)}else if(i){parseErrorAtCurrentToken(i,a)}var o=createNode(t);if(t===72){o.escapedText=""}else if(e.isLiteralKind(t)||e.isTemplateLiteralKind(t)){o.text=""}return finishNode(o)}function internIdentifier(e){var t=g.get(e);if(t===undefined){g.set(e,t=e)}return t}function createIdentifier(t,n){_++;if(t){var i=createNode(72);if(token()!==72){i.originalKeywordKind=token()}i.escapedText=e.escapeLeadingUnderscores(internIdentifier(r.getTokenValue()));nextToken();return finishNode(i)}var a=token()===1;return createMissingNode(72,a,n||e.Diagnostics.Identifier_expected)}function parseIdentifier(e){return createIdentifier(isIdentifier(),e)}function parseIdentifierName(t){return createIdentifier(e.tokenIsIdentifierOrKeyword(token()),t)}function isLiteralPropertyName(){return e.tokenIsIdentifierOrKeyword(token())||token()===10||token()===8}function parsePropertyNameWorker(e){if(token()===10||token()===8){var t=parseLiteralNode();t.text=internIdentifier(t.text);return t}if(e&&token()===22){return parseComputedPropertyName()}return parseIdentifierName()}function parsePropertyName(){return parsePropertyNameWorker(true)}function parseComputedPropertyName(){var e=createNode(149);parseExpected(22);e.expression=allowInAnd(parseExpression);parseExpected(23);return finishNode(e)}function parseContextualModifier(e){return token()===e&&tryParse(nextTokenCanFollowModifier)}function nextTokenIsOnSameLineAndCanFollowModifier(){nextToken();if(r.hasPrecedingLineBreak()){return false}return canFollowModifier()}function nextTokenCanFollowModifier(){switch(token()){case 77:return nextToken()===84;case 85:nextToken();if(token()===80){return lookAhead(nextTokenCanFollowDefaultKeyword)}return token()!==40&&token()!==119&&token()!==18&&canFollowModifier();case 80:return nextTokenCanFollowDefaultKeyword();case 116:case 126:case 137:nextToken();return canFollowModifier();default:return nextTokenIsOnSameLineAndCanFollowModifier()}}function parseAnyContextualModifier(){return e.isModifierKind(token())&&tryParse(nextTokenCanFollowModifier)}function canFollowModifier(){return token()===22||token()===18||token()===40||token()===25||isLiteralPropertyName()}function nextTokenCanFollowDefaultKeyword(){nextToken();return token()===76||token()===90||token()===110||token()===118&&lookAhead(nextTokenIsClassKeywordOnSameLine)||token()===121&&lookAhead(nextTokenIsFunctionKeywordOnSameLine)}function isListElement(t,r){var n=currentNode(t);if(n){return true}switch(t){case 0:case 1:case 3:return!(token()===26&&r)&&isStartOfStatement();case 2:return token()===74||token()===80;case 4:return lookAhead(isTypeMemberStart);case 5:return lookAhead(isClassMemberStart)||token()===26&&!r;case 6:return token()===22||isLiteralPropertyName();case 12:switch(token()){case 22:case 40:case 25:case 24:return true;default:return isLiteralPropertyName()}case 18:return isLiteralPropertyName();case 9:return token()===22||token()===25||isLiteralPropertyName();case 7:if(token()===18){return lookAhead(isValidHeritageClauseObjectLiteral)}if(!r){return isStartOfLeftHandSideExpression()&&!isHeritageClauseExtendsOrImplementsKeyword()}else{return isIdentifier()&&!isHeritageClauseExtendsOrImplementsKeyword()}case 8:return isIdentifierOrPattern();case 10:return token()===27||token()===25||isIdentifierOrPattern();case 19:return isIdentifier();case 15:switch(token()){case 27:case 24:return true}case 11:return token()===25||isStartOfExpression();case 16:return isStartOfParameter(false);case 17:return isStartOfParameter(true);case 20:case 21:return token()===27||isStartOfType();case 22:return isHeritageClause();case 23:return e.tokenIsIdentifierOrKeyword(token());case 13:return e.tokenIsIdentifierOrKeyword(token())||token()===18;case 14:return true}return e.Debug.fail("Non-exhaustive case in 'isListElement'.")}function isValidHeritageClauseObjectLiteral(){e.Debug.assert(token()===18);if(nextToken()===19){var t=nextToken();return t===27||t===18||t===86||t===109}return true}function nextTokenIsIdentifier(){nextToken();return isIdentifier()}function nextTokenIsIdentifierOrKeyword(){nextToken();return e.tokenIsIdentifierOrKeyword(token())}function nextTokenIsIdentifierOrKeywordOrGreaterThan(){nextToken();return e.tokenIsIdentifierOrKeywordOrGreaterThan(token())}function isHeritageClauseExtendsOrImplementsKeyword(){if(token()===109||token()===86){return lookAhead(nextTokenIsStartOfExpression)}return false}function nextTokenIsStartOfExpression(){nextToken();return isStartOfExpression()}function nextTokenIsStartOfType(){nextToken();return isStartOfType()}function isListTerminator(e){if(token()===1){return true}switch(e){case 1:case 2:case 4:case 5:case 6:case 12:case 9:case 23:return token()===19;case 3:return token()===19||token()===74||token()===80;case 7:return token()===18||token()===86||token()===109;case 8:return isVariableDeclaratorListTerminator();case 19:return token()===30||token()===20||token()===18||token()===86||token()===109;case 11:return token()===21||token()===26;case 15:case 21:case 10:return token()===23;case 17:case 16:case 18:return token()===21||token()===23;case 20:return token()!==27;case 22:return token()===18||token()===19;case 13:return token()===30||token()===42;case 14:return token()===28&&lookAhead(nextTokenIsSlash);default:return false}}function isVariableDeclaratorListTerminator(){if(canParseSemicolon()){return true}if(isInOrOfKeyword(token())){return true}if(token()===37){return true}return false}function isInSomeParsingContext(){for(var e=0;e<24;e++){if(m&1<<e){if(isListElement(e,true)||isListTerminator(e)){return true}}}return false}function parseList(e,t){var r=m;m|=1<<e;var n=[];var i=getNodePos();while(!isListTerminator(e)){if(isListElement(e,false)){var a=parseListElement(e,t);n.push(a);continue}if(abortParsingListOrMoveToNextToken(e)){break}}m=r;return createNodeArray(n,i)}function parseListElement(e,t){var r=currentNode(e);if(r){return consumeNode(r)}return t()}function currentNode(t){if(h){return undefined}if(!l){return undefined}var n=l.currentNode(r.getStartPos());if(e.nodeIsMissing(n)){return undefined}if(n.intersectsChange){return undefined}if(e.containsParseError(n)){return undefined}var i=n.flags&12679168;if(i!==y){return undefined}if(!canReuseNode(n,t)){return undefined}if(n.jsDocCache){n.jsDocCache=undefined}return n}function consumeNode(e){r.setTextPos(e.end);nextToken();return e}function canReuseNode(e,t){switch(t){case 5:return isReusableClassMember(e);case 2:return isReusableSwitchClause(e);case 0:case 1:case 3:return isReusableStatement(e);case 6:return isReusableEnumMember(e);case 4:return isReusableTypeMember(e);case 8:return isReusableVariableDeclaration(e);case 17:case 16:return isReusableParameter(e);case 18:return false;case 22:case 19:case 21:case 20:case 11:case 12:case 7:case 13:case 14:}return false}function isReusableClassMember(e){if(e){switch(e.kind){case 157:case 162:case 158:case 159:case 154:case 217:return true;case 156:var t=e;var r=t.name.kind===72&&t.name.originalKeywordKind===124;return!r}}return false}function isReusableSwitchClause(e){if(e){switch(e.kind){case 271:case 272:return true}}return false}function isReusableStatement(e){if(e){switch(e.kind){case 239:case 219:case 218:case 222:case 221:case 234:case 230:case 232:case 229:case 228:case 226:case 227:case 225:case 224:case 231:case 220:case 235:case 233:case 223:case 236:case 249:case 248:case 255:case 254:case 244:case 240:case 241:case 243:case 242:return true}}return false}function isReusableEnumMember(e){return e.kind===278}function isReusableTypeMember(e){if(e){switch(e.kind){case 161:case 155:case 162:case 153:case 160:return true}}return false}function isReusableVariableDeclaration(e){if(e.kind!==237){return false}var t=e;return t.initializer===undefined}function isReusableParameter(e){if(e.kind!==151){return false}var t=e;return t.initializer===undefined}function abortParsingListOrMoveToNextToken(e){parseErrorAtCurrentToken(parsingContextErrors(e));if(isInSomeParsingContext()){return true}nextToken();return false}function parsingContextErrors(t){switch(t){case 0:return e.Diagnostics.Declaration_or_statement_expected;case 1:return e.Diagnostics.Declaration_or_statement_expected;case 2:return e.Diagnostics.case_or_default_expected;case 3:return e.Diagnostics.Statement_expected;case 18:case 4:return e.Diagnostics.Property_or_signature_expected;case 5:return e.Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected;case 6:return e.Diagnostics.Enum_member_expected;case 7:return e.Diagnostics.Expression_expected;case 8:return e.Diagnostics.Variable_declaration_expected;case 9:return e.Diagnostics.Property_destructuring_pattern_expected;case 10:return e.Diagnostics.Array_element_destructuring_pattern_expected;case 11:return e.Diagnostics.Argument_expression_expected;case 12:return e.Diagnostics.Property_assignment_expected;case 15:return e.Diagnostics.Expression_or_comma_expected;case 17:return e.Diagnostics.Parameter_declaration_expected;case 16:return e.Diagnostics.Parameter_declaration_expected;case 19:return e.Diagnostics.Type_parameter_declaration_expected;case 20:return e.Diagnostics.Type_argument_expected;case 21:return e.Diagnostics.Type_expected;case 22:return e.Diagnostics.Unexpected_token_expected;case 23:return e.Diagnostics.Identifier_expected;case 13:return e.Diagnostics.Identifier_expected;case 14:return e.Diagnostics.Identifier_expected;default:return undefined}}function parseDelimitedList(e,t,n){var i=m;m|=1<<e;var a=[];var o=getNodePos();var s=-1;while(true){if(isListElement(e,false)){var c=r.getStartPos();a.push(parseListElement(e,t));s=r.getTokenPos();if(parseOptional(27)){continue}s=-1;if(isListTerminator(e)){break}parseExpected(27);if(n&&token()===26&&!r.hasPrecedingLineBreak()){nextToken()}if(c===r.getStartPos()){nextToken()}continue}if(isListTerminator(e)){break}if(abortParsingListOrMoveToNextToken(e)){break}}m=i;var u=createNodeArray(a,o);if(s>=0){u.hasTrailingComma=true}return u}function createMissingList(){var e=createNodeArray([],getNodePos());e.isMissingList=true;return e}function isMissingList(e){return!!e.isMissingList}function parseBracketedList(e,t,r,n){if(parseExpected(r)){var i=parseDelimitedList(e,t);parseExpected(n);return i}return createMissingList()}function parseEntityName(e,t){var n=e?parseIdentifierName(t):parseIdentifier(t);var i=r.getStartPos();while(parseOptional(24)){if(token()===28){n.jsdocDotPos=i;break}i=r.getStartPos();n=createQualifiedName(n,parseRightSideOfDot(e))}return n}function createQualifiedName(e,t){var r=createNode(148,e.pos);r.left=e;r.right=t;return finishNode(r)}function parseRightSideOfDot(t){if(r.hasPrecedingLineBreak()&&e.tokenIsIdentifierOrKeyword(token())){var n=lookAhead(nextTokenIsIdentifierOrKeywordOnSameLine);if(n){return createMissingNode(72,true,e.Diagnostics.Identifier_expected)}}return t?parseIdentifierName():parseIdentifier()}function parseTemplateExpression(){var t=createNode(206);t.head=parseTemplateHead();e.Debug.assert(t.head.kind===15,"Template head has wrong token kind");var r=[];var n=getNodePos();do{r.push(parseTemplateSpan())}while(e.last(r).literal.kind===16);t.templateSpans=createNodeArray(r,n);return finishNode(t)}function parseTemplateSpan(){var t=createNode(216);t.expression=allowInAnd(parseExpression);var r;if(token()===19){reScanTemplateToken();r=parseTemplateMiddleOrTemplateTail()}else{r=parseExpectedToken(17,e.Diagnostics._0_expected,e.tokenToString(19))}t.literal=r;return finishNode(t)}function parseLiteralNode(){return parseLiteralLikeNode(token())}function parseTemplateHead(){var t=parseLiteralLikeNode(token());e.Debug.assert(t.kind===15,"Template head has wrong token kind");return t}function parseTemplateMiddleOrTemplateTail(){var t=parseLiteralLikeNode(token());e.Debug.assert(t.kind===16||t.kind===17,"Template fragment has wrong token kind");return t}function parseLiteralLikeNode(e){var t=createNode(e);t.text=r.getTokenValue();if(r.hasExtendedUnicodeEscape()){t.hasExtendedUnicodeEscape=true}if(r.isUnterminated()){t.isUnterminated=true}if(t.kind===8){t.numericLiteralFlags=r.getTokenFlags()&1008}nextToken();finishNode(t);return t}function parseTypeReference(){var t=createNode(164);t.typeName=parseEntityName(true,e.Diagnostics.Type_expected);if(!r.hasPrecedingLineBreak()&&token()===28){t.typeArguments=parseBracketedList(20,parseType,28,30)}return finishNode(t)}function typeHasArrowFunctionBlockingParseError(t){switch(t.kind){case 164:return e.nodeIsMissing(t.typeName);case 165:case 166:{var r=t,n=r.parameters,i=r.type;return isMissingList(n)||typeHasArrowFunctionBlockingParseError(i)}case 177:return typeHasArrowFunctionBlockingParseError(t.type);default:return false}}function parseThisTypePredicate(e){nextToken();var t=createNode(163,e.pos);t.parameterName=e;t.type=parseType();return finishNode(t)}function parseThisTypeNode(){var e=createNode(178);nextToken();return finishNode(e)}function parseJSDocAllType(e){var t=createNode(284);if(e){return createPostfixType(288,t)}else{nextToken()}return finishNode(t)}function parseJSDocNonNullableType(){var e=createNode(287);nextToken();e.type=parseNonArrayType();return finishNode(e)}function parseJSDocUnknownOrNullableType(){var e=r.getStartPos();nextToken();if(token()===27||token()===19||token()===21||token()===30||token()===59||token()===50){var t=createNode(285,e);return finishNode(t)}else{var t=createNode(286,e);t.type=parseType();return finishNode(t)}}function parseJSDocFunctionType(){if(lookAhead(nextTokenIsOpenParen)){var e=createNodeWithJSDoc(289);nextToken();fillSignature(57,4|32,e);return finishNode(e)}var t=createNode(164);t.typeName=parseIdentifierName();return finishNode(t)}function parseJSDocParameter(){var e=createNode(151);if(token()===100||token()===95){e.name=parseIdentifierName();parseExpected(57)}e.type=parseJSDocType();return finishNode(e)}function parseJSDocType(){r.setInJSDocType(true);var e=parseOptionalToken(25);var t=parseTypeOrTypePredicate();r.setInJSDocType(false);if(e){var n=createNode(290,e.pos);n.type=t;t=finishNode(n)}if(token()===59){return createPostfixType(288,t)}return t}function parseTypeQuery(){var e=createNode(167);parseExpected(104);e.exprName=parseEntityName(true);return finishNode(e)}function parseTypeParameter(){var e=createNode(150);e.name=parseIdentifier();if(parseOptional(86)){if(isStartOfType()||!isStartOfExpression()){e.constraint=parseType()}else{e.expression=parseUnaryExpressionOrHigher()}}if(parseOptional(59)){e.default=parseType()}return finishNode(e)}function parseTypeParameters(){if(token()===28){return parseBracketedList(19,parseTypeParameter,28,30)}}function parseParameterType(){if(parseOptional(57)){return parseType()}return undefined}function isStartOfParameter(t){return token()===25||isIdentifierOrPattern()||e.isModifierKind(token())||token()===58||isStartOfType(!t)}function parseParameter(){var t=createNodeWithJSDoc(151);if(token()===100){t.name=createIdentifier(true);t.type=parseParameterType();return finishNode(t)}t.decorators=parseDecorators();t.modifiers=parseModifiers();t.dotDotDotToken=parseOptionalToken(25);t.name=parseIdentifierOrPattern();if(e.getFullWidth(t.name)===0&&!e.hasModifiers(t)&&e.isModifierKind(token())){nextToken()}t.questionToken=parseOptionalToken(56);t.type=parseParameterType();t.initializer=parseInitializer();return finishNode(t)}function fillSignature(e,t,r){if(!(t&32)){r.typeParameters=parseTypeParameters()}var n=parseParameterList(r,t);if(shouldParseReturnType(e,!!(t&4))){r.type=parseTypeOrTypePredicate();if(typeHasArrowFunctionBlockingParseError(r.type))return false}return n}function shouldParseReturnType(t,r){if(t===37){parseExpected(t);return true}else if(parseOptional(57)){return true}else if(r&&token()===37){parseErrorAtCurrentToken(e.Diagnostics._0_expected,e.tokenToString(57));nextToken();return true}return false}function parseParameterList(e,t){if(!parseExpected(20)){e.parameters=createMissingList();return false}var r=inYieldContext();var n=inAwaitContext();setYieldContext(!!(t&1));setAwaitContext(!!(t&2));e.parameters=t&32?parseDelimitedList(17,parseJSDocParameter):parseDelimitedList(16,parseParameter);setYieldContext(r);setAwaitContext(n);return parseExpected(21)}function parseTypeMemberSemicolon(){if(parseOptional(27)){return}parseSemicolon()}function parseSignatureMember(e){var t=createNodeWithJSDoc(e);if(e===161){parseExpected(95)}fillSignature(57,4,t);parseTypeMemberSemicolon();return finishNode(t)}function isIndexSignature(){return token()===22&&lookAhead(isUnambiguouslyIndexSignature)}function isUnambiguouslyIndexSignature(){nextToken();if(token()===25||token()===23){return true}if(e.isModifierKind(token())){nextToken();if(isIdentifier()){return true}}else if(!isIdentifier()){return false}else{nextToken()}if(token()===57||token()===27){return true}if(token()!==56){return false}nextToken();return token()===57||token()===27||token()===23}function parseIndexSignatureDeclaration(e){e.kind=162;e.parameters=parseBracketedList(16,parseParameter,22,23);e.type=parseTypeAnnotation();parseTypeMemberSemicolon();return finishNode(e)}function parsePropertyOrMethodSignature(e){e.name=parsePropertyName();e.questionToken=parseOptionalToken(56);if(token()===20||token()===28){e.kind=155;fillSignature(57,4,e)}else{e.kind=153;e.type=parseTypeAnnotation();if(token()===59){e.initializer=parseInitializer()}}parseTypeMemberSemicolon();return finishNode(e)}function isTypeMemberStart(){if(token()===20||token()===28){return true}var t=false;while(e.isModifierKind(token())){t=true;nextToken()}if(token()===22){return true}if(isLiteralPropertyName()){t=true;nextToken()}if(t){return token()===20||token()===28||token()===56||token()===57||token()===27||canParseSemicolon()}return false}function parseTypeMember(){if(token()===20||token()===28){return parseSignatureMember(160)}if(token()===95&&lookAhead(nextTokenIsOpenParenOrLessThan)){return parseSignatureMember(161)}var e=createNodeWithJSDoc(0);e.modifiers=parseModifiers();if(isIndexSignature()){return parseIndexSignatureDeclaration(e)}return parsePropertyOrMethodSignature(e)}function nextTokenIsOpenParenOrLessThan(){nextToken();return token()===20||token()===28}function nextTokenIsDot(){return nextToken()===24}function nextTokenIsOpenParenOrLessThanOrDot(){switch(nextToken()){case 20:case 28:case 24:return true}return false}function parseTypeLiteral(){var e=createNode(168);e.members=parseObjectTypeMembers();return finishNode(e)}function parseObjectTypeMembers(){var e;if(parseExpected(18)){e=parseList(4,parseTypeMember);parseExpected(19)}else{e=createMissingList()}return e}function isStartOfMappedType(){nextToken();if(token()===38||token()===39){return nextToken()===133}if(token()===133){nextToken()}return token()===22&&nextTokenIsIdentifier()&&nextToken()===93}function parseMappedTypeParameter(){var e=createNode(150);e.name=parseIdentifier();parseExpected(93);e.constraint=parseType();return finishNode(e)}function parseMappedType(){var e=createNode(181);parseExpected(18);if(token()===133||token()===38||token()===39){e.readonlyToken=parseTokenNode();if(e.readonlyToken.kind!==133){parseExpectedToken(133)}}parseExpected(22);e.typeParameter=parseMappedTypeParameter();parseExpected(23);if(token()===56||token()===38||token()===39){e.questionToken=parseTokenNode();if(e.questionToken.kind!==56){parseExpectedToken(56)}}e.type=parseTypeAnnotation();parseSemicolon();parseExpected(19);return finishNode(e)}function parseTupleElementType(){var e=getNodePos();if(parseOptional(25)){var t=createNode(172,e);t.type=parseType();return finishNode(t)}var r=parseType();if(!(y&2097152)&&r.kind===286&&r.pos===r.type.pos){r.kind=171}return r}function parseTupleType(){var e=createNode(170);e.elementTypes=parseBracketedList(21,parseTupleElementType,22,23);return finishNode(e)}function parseParenthesizedType(){var e=createNode(177);parseExpected(20);e.type=parseType();parseExpected(21);return finishNode(e)}function parseFunctionOrConstructorType(){var e=getNodePos();var t=parseOptional(95)?166:165;var r=createNodeWithJSDoc(t,e);fillSignature(37,4,r);return finishNode(r)}function parseKeywordAndNoDot(){var e=parseTokenNode();return token()===24?undefined:e}function parseLiteralTypeNode(e){var t=createNode(182);var r;if(e){r=createNode(202);r.operator=39;nextToken()}var n=token()===102||token()===87?parseTokenNode():parseLiteralLikeNode(token());if(e){r.operand=n;finishNode(r);n=r}t.literal=n;return finishNode(t)}function isStartOfTypeOfImportType(){nextToken();return token()===92}function parseImportType(){c.flags|=524288;var t=createNode(183);if(parseOptional(104)){t.isTypeOf=true}parseExpected(92);parseExpected(20);t.argument=parseType();parseExpected(21);if(parseOptional(24)){t.qualifier=parseEntityName(true,e.Diagnostics.Type_expected)}t.typeArguments=tryParseTypeArguments();return finishNode(t)}function nextTokenIsNumericOrBigIntLiteral(){nextToken();return token()===8||token()===9}function parseNonArrayType(){switch(token()){case 120:case 143:case 138:case 135:case 146:case 139:case 123:case 141:case 132:case 136:return tryParse(parseKeywordAndNoDot)||parseTypeReference();case 40:return parseJSDocAllType(false);case 62:return parseJSDocAllType(true);case 56:return parseJSDocUnknownOrNullableType();case 90:return parseJSDocFunctionType();case 52:return parseJSDocNonNullableType();case 14:case 10:case 8:case 9:case 102:case 87:return parseLiteralTypeNode();case 39:return lookAhead(nextTokenIsNumericOrBigIntLiteral)?parseLiteralTypeNode(true):parseTypeReference();case 106:case 96:return parseTokenNode();case 100:{var e=parseThisTypeNode();if(token()===128&&!r.hasPrecedingLineBreak()){return parseThisTypePredicate(e)}else{return e}}case 104:return lookAhead(isStartOfTypeOfImportType)?parseImportType():parseTypeQuery();case 18:return lookAhead(isStartOfMappedType)?parseMappedType():parseTypeLiteral();case 22:return parseTupleType();case 20:return parseParenthesizedType();case 92:return parseImportType();default:return parseTypeReference()}}function isStartOfType(e){switch(token()){case 120:case 143:case 138:case 135:case 146:case 123:case 139:case 142:case 106:case 141:case 96:case 100:case 104:case 132:case 18:case 22:case 28:case 50:case 49:case 95:case 10:case 8:case 9:case 102:case 87:case 136:case 40:case 56:case 52:case 25:case 127:case 92:return true;case 90:return!e;case 39:return!e&&lookAhead(nextTokenIsNumericOrBigIntLiteral);case 20:return!e&&lookAhead(isStartOfParenthesizedOrFunctionType);default:return isIdentifier()}}function isStartOfParenthesizedOrFunctionType(){nextToken();return token()===21||isStartOfParameter(false)||isStartOfType()}function parsePostfixTypeOrHigher(){var e=parseNonArrayType();while(!r.hasPrecedingLineBreak()){switch(token()){case 52:e=createPostfixType(287,e);break;case 56:if(!(y&2097152)&&lookAhead(nextTokenIsStartOfType)){return e}e=createPostfixType(286,e);break;case 22:parseExpected(22);if(isStartOfType()){var t=createNode(180,e.pos);t.objectType=e;t.indexType=parseType();parseExpected(23);e=finishNode(t)}else{var t=createNode(169,e.pos);t.elementType=e;parseExpected(23);e=finishNode(t)}break;default:return e}}return e}function createPostfixType(e,t){nextToken();var r=createNode(e,t.pos);r.type=t;return finishNode(r)}function parseTypeOperator(e){var t=createNode(179);parseExpected(e);t.operator=e;t.type=parseTypeOperatorOrHigher();return finishNode(t)}function parseInferType(){var e=createNode(176);parseExpected(127);var t=createNode(150);t.name=parseIdentifier();e.typeParameter=finishNode(t);return finishNode(e)}function parseTypeOperatorOrHigher(){var e=token();switch(e){case 129:case 142:return parseTypeOperator(e);case 127:return parseInferType()}return parsePostfixTypeOrHigher()}function parseUnionOrIntersectionType(e,t,r){parseOptional(r);var n=t();if(token()===r){var i=[n];while(parseOptional(r)){i.push(t())}var a=createNode(e,n.pos);a.types=createNodeArray(i,n.pos);n=finishNode(a)}return n}function parseIntersectionTypeOrHigher(){return parseUnionOrIntersectionType(174,parseTypeOperatorOrHigher,49)}function parseUnionTypeOrHigher(){return parseUnionOrIntersectionType(173,parseIntersectionTypeOrHigher,50)}function isStartOfFunctionType(){if(token()===28){return true}return token()===20&&lookAhead(isUnambiguouslyStartOfFunctionType)}function skipParameterStart(){if(e.isModifierKind(token())){parseModifiers()}if(isIdentifier()||token()===100){nextToken();return true}if(token()===22||token()===18){var t=u.length;parseIdentifierOrPattern();return t===u.length}return false}function isUnambiguouslyStartOfFunctionType(){nextToken();if(token()===21||token()===25){return true}if(skipParameterStart()){if(token()===57||token()===27||token()===56||token()===59){return true}if(token()===21){nextToken();if(token()===37){return true}}}return false}function parseTypeOrTypePredicate(){var e=isIdentifier()&&tryParse(parseTypePredicatePrefix);var t=parseType();if(e){var r=createNode(163,e.pos);r.parameterName=e;r.type=t;return finishNode(r)}else{return t}}function parseTypePredicatePrefix(){var e=parseIdentifier();if(token()===128&&!r.hasPrecedingLineBreak()){nextToken();return e}}function parseType(){return doOutsideOfContext(20480,parseTypeWorker)}function parseTypeWorker(e){if(isStartOfFunctionType()||token()===95){return parseFunctionOrConstructorType()}var t=parseUnionTypeOrHigher();if(!e&&!r.hasPrecedingLineBreak()&&parseOptional(86)){var n=createNode(175,t.pos);n.checkType=t;n.extendsType=parseTypeWorker(true);parseExpected(56);n.trueType=parseTypeWorker();parseExpected(57);n.falseType=parseTypeWorker();return finishNode(n)}return t}function parseTypeAnnotation(){return parseOptional(57)?parseType():undefined}function isStartOfLeftHandSideExpression(){switch(token()){case 100:case 98:case 96:case 102:case 87:case 8:case 9:case 10:case 14:case 15:case 20:case 22:case 18:case 90:case 76:case 95:case 42:case 64:case 72:return true;case 92:return lookAhead(nextTokenIsOpenParenOrLessThanOrDot);default:return isIdentifier()}}function isStartOfExpression(){if(isStartOfLeftHandSideExpression()){return true}switch(token()){case 38:case 39:case 53:case 52:case 81:case 104:case 106:case 44:case 45:case 28:case 122:case 117:return true;default:if(isBinaryOperator()){return true}return isIdentifier()}}function isStartOfExpressionStatement(){return token()!==18&&token()!==90&&token()!==76&&token()!==58&&isStartOfExpression()}function parseExpression(){var e=inDecoratorContext();if(e){setDecoratorContext(false)}var t=parseAssignmentExpressionOrHigher();var r;while(r=parseOptionalToken(27)){t=makeBinaryExpression(t,r,parseAssignmentExpressionOrHigher())}if(e){setDecoratorContext(true)}return t}function parseInitializer(){return parseOptional(59)?parseAssignmentExpressionOrHigher():undefined}function parseAssignmentExpressionOrHigher(){if(isYieldExpression()){return parseYieldExpression()}var t=tryParseParenthesizedArrowFunctionExpression()||tryParseAsyncSimpleArrowFunctionExpression();if(t){return t}var r=parseBinaryExpressionOrHigher(0);if(r.kind===72&&token()===37){return parseSimpleArrowFunctionExpression(r)}if(e.isLeftHandSideExpression(r)&&e.isAssignmentOperator(reScanGreaterToken())){return makeBinaryExpression(r,parseTokenNode(),parseAssignmentExpressionOrHigher())}return parseConditionalExpressionRest(r)}function isYieldExpression(){if(token()===117){if(inYieldContext()){return true}return lookAhead(nextTokenIsIdentifierOrKeywordOrLiteralOnSameLine)}return false}function nextTokenIsIdentifierOnSameLine(){nextToken();return!r.hasPrecedingLineBreak()&&isIdentifier()}function parseYieldExpression(){var e=createNode(207);nextToken();if(!r.hasPrecedingLineBreak()&&(token()===40||isStartOfExpression())){e.asteriskToken=parseOptionalToken(40);e.expression=parseAssignmentExpressionOrHigher();return finishNode(e)}else{return finishNode(e)}}function parseSimpleArrowFunctionExpression(t,r){e.Debug.assert(token()===37,"parseSimpleArrowFunctionExpression should only have been called if we had a =>");var n;if(r){n=createNode(197,r.pos);n.modifiers=r}else{n=createNode(197,t.pos)}var i=createNode(151,t.pos);i.name=t;finishNode(i);n.parameters=createNodeArray([i],i.pos,i.end);n.equalsGreaterThanToken=parseExpectedToken(37);n.body=parseArrowFunctionExpressionBody(!!r);return addJSDocComment(finishNode(n))}function tryParseParenthesizedArrowFunctionExpression(){var t=isParenthesizedArrowFunctionExpression();if(t===0){return undefined}var r=t===1?parseParenthesizedArrowFunctionExpressionHead(true):tryParse(parsePossibleParenthesizedArrowFunctionExpressionHead);if(!r){return undefined}var n=e.hasModifier(r,256);var i=token();r.equalsGreaterThanToken=parseExpectedToken(37);r.body=i===37||i===18?parseArrowFunctionExpressionBody(n):parseIdentifier();return finishNode(r)}function isParenthesizedArrowFunctionExpression(){if(token()===20||token()===28||token()===121){return lookAhead(isParenthesizedArrowFunctionExpressionWorker)}if(token()===37){return 1}return 0}function isParenthesizedArrowFunctionExpressionWorker(){if(token()===121){nextToken();if(r.hasPrecedingLineBreak()){return 0}if(token()!==20&&token()!==28){return 0}}var t=token();var n=nextToken();if(t===20){if(n===21){var i=nextToken();switch(i){case 37:case 57:case 18:return 1;default:return 0}}if(n===22||n===18){return 2}if(n===25){return 1}if(e.isModifierKind(n)&&n!==121&&lookAhead(nextTokenIsIdentifier)){return 1}if(!isIdentifier()&&n!==100){return 0}switch(nextToken()){case 57:return 1;case 56:nextToken();if(token()===57||token()===27||token()===59||token()===21){return 1}return 0;case 27:case 59:case 21:return 2}return 0}else{e.Debug.assert(t===28);if(!isIdentifier()){return 0}if(c.languageVariant===1){var a=lookAhead(function(){var e=nextToken();if(e===86){var t=nextToken();switch(t){case 59:case 30:return false;default:return true}}else if(e===27){return true}return false});if(a){return 1}return 0}return 2}}function parsePossibleParenthesizedArrowFunctionExpressionHead(){return parseParenthesizedArrowFunctionExpressionHead(false)}function tryParseAsyncSimpleArrowFunctionExpression(){if(token()===121){if(lookAhead(isUnParenthesizedAsyncArrowFunctionWorker)===1){var e=parseModifiersForArrowFunction();var t=parseBinaryExpressionOrHigher(0);return parseSimpleArrowFunctionExpression(t,e)}}return undefined}function isUnParenthesizedAsyncArrowFunctionWorker(){if(token()===121){nextToken();if(r.hasPrecedingLineBreak()||token()===37){return 0}var e=parseBinaryExpressionOrHigher(0);if(!r.hasPrecedingLineBreak()&&e.kind===72&&token()===37){return 1}}return 0}function parseParenthesizedArrowFunctionExpressionHead(t){var r=createNodeWithJSDoc(197);r.modifiers=parseModifiersForArrowFunction();var n=e.hasModifier(r,256)?2:0;if(!fillSignature(57,n,r)&&!t){return undefined}if(!t&&token()!==37&&token()!==18){return undefined}return r}function parseArrowFunctionExpressionBody(e){if(token()===18){return parseFunctionBlock(e?2:0)}if(token()!==26&&token()!==90&&token()!==76&&isStartOfStatement()&&!isStartOfExpressionStatement()){return parseFunctionBlock(16|(e?2:0))}return e?doInAwaitContext(parseAssignmentExpressionOrHigher):doOutsideOfAwaitContext(parseAssignmentExpressionOrHigher)}function parseConditionalExpressionRest(t){var r=parseOptionalToken(56);if(!r){return t}var i=createNode(205,t.pos);i.condition=t;i.questionToken=r;i.whenTrue=doOutsideOfContext(n,parseAssignmentExpressionOrHigher);i.colonToken=parseExpectedToken(57);i.whenFalse=e.nodeIsPresent(i.colonToken)?parseAssignmentExpressionOrHigher():createMissingNode(72,false,e.Diagnostics._0_expected,e.tokenToString(57));return finishNode(i)}function parseBinaryExpressionOrHigher(e){var t=parseUnaryExpressionOrHigher();return parseBinaryExpressionRest(e,t)}function isInOrOfKeyword(e){return e===93||e===147}function parseBinaryExpressionRest(t,n){while(true){reScanGreaterToken();var i=e.getBinaryOperatorPrecedence(token());var a=token()===41?i>=t:i>t;if(!a){break}if(token()===93&&inDisallowInContext()){break}if(token()===119){if(r.hasPrecedingLineBreak()){break}else{nextToken();n=makeAsExpression(n,parseType())}}else{n=makeBinaryExpression(n,parseTokenNode(),parseBinaryExpressionOrHigher(i))}}return n}function isBinaryOperator(){if(inDisallowInContext()&&token()===93){return false}return e.getBinaryOperatorPrecedence(token())>0}function makeBinaryExpression(e,t,r){var n=createNode(204,e.pos);n.left=e;n.operatorToken=t;n.right=r;return finishNode(n)}function makeAsExpression(e,t){var r=createNode(212,e.pos);r.expression=e;r.type=t;return finishNode(r)}function parsePrefixUnaryExpression(){var e=createNode(202);e.operator=token();nextToken();e.operand=parseSimpleUnaryExpression();return finishNode(e)}function parseDeleteExpression(){var e=createNode(198);nextToken();e.expression=parseSimpleUnaryExpression();return finishNode(e)}function parseTypeOfExpression(){var e=createNode(199);nextToken();e.expression=parseSimpleUnaryExpression();return finishNode(e)}function parseVoidExpression(){var e=createNode(200);nextToken();e.expression=parseSimpleUnaryExpression();return finishNode(e)}function isAwaitExpression(){if(token()===122){if(inAwaitContext()){return true}return lookAhead(nextTokenIsIdentifierOrKeywordOrLiteralOnSameLine)}return false}function parseAwaitExpression(){var e=createNode(201);nextToken();e.expression=parseSimpleUnaryExpression();return finishNode(e)}function parseUnaryExpressionOrHigher(){if(isUpdateExpression()){var t=parseUpdateExpression();return token()===41?parseBinaryExpressionRest(e.getBinaryOperatorPrecedence(token()),t):t}var r=token();var n=parseSimpleUnaryExpression();if(token()===41){var i=e.skipTrivia(d,n.pos);var a=n.end;if(n.kind===194){parseErrorAt(i,a,e.Diagnostics.A_type_assertion_expression_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses)}else{parseErrorAt(i,a,e.Diagnostics.An_unary_expression_with_the_0_operator_is_not_allowed_in_the_left_hand_side_of_an_exponentiation_expression_Consider_enclosing_the_expression_in_parentheses,e.tokenToString(r))}}return n}function parseSimpleUnaryExpression(){switch(token()){case 38:case 39:case 53:case 52:return parsePrefixUnaryExpression();case 81:return parseDeleteExpression();case 104:return parseTypeOfExpression();case 106:return parseVoidExpression();case 28:return parseTypeAssertion();case 122:if(isAwaitExpression()){return parseAwaitExpression()}default:return parseUpdateExpression()}}function isUpdateExpression(){switch(token()){case 38:case 39:case 53:case 52:case 81:case 104:case 106:case 122:return false;case 28:if(c.languageVariant!==1){return false}default:return true}}function parseUpdateExpression(){if(token()===44||token()===45){var t=createNode(202);t.operator=token();nextToken();t.operand=parseLeftHandSideExpressionOrHigher();return finishNode(t)}else if(c.languageVariant===1&&token()===28&&lookAhead(nextTokenIsIdentifierOrKeywordOrGreaterThan)){return parseJsxElementOrSelfClosingElementOrFragment(true)}var n=parseLeftHandSideExpressionOrHigher();e.Debug.assert(e.isLeftHandSideExpression(n));if((token()===44||token()===45)&&!r.hasPrecedingLineBreak()){var t=createNode(203,n.pos);t.operand=n;t.operator=token();nextToken();return finishNode(t)}return n}function parseLeftHandSideExpressionOrHigher(){var e;if(token()===92){if(lookAhead(nextTokenIsOpenParenOrLessThan)){c.flags|=524288;e=parseTokenNode()}else if(lookAhead(nextTokenIsDot)){var t=r.getStartPos();nextToken();nextToken();var n=createNode(214,t);n.keywordToken=92;n.name=parseIdentifierName();e=finishNode(n);c.flags|=1048576}else{e=parseMemberExpressionOrHigher()}}else{e=token()===98?parseSuperExpression():parseMemberExpressionOrHigher()}return parseCallExpressionRest(e)}function parseMemberExpressionOrHigher(){var e=parsePrimaryExpression();return parseMemberExpressionRest(e)}function parseSuperExpression(){var t=parseTokenNode();if(token()===20||token()===24||token()===22){return t}var r=createNode(189,t.pos);r.expression=t;parseExpectedToken(24,e.Diagnostics.super_must_be_followed_by_an_argument_list_or_member_access);r.name=parseRightSideOfDot(true);return finishNode(r)}function parseJsxElementOrSelfClosingElementOrFragment(t){var r=parseJsxOpeningOrSelfClosingElementOrOpeningFragment(t);var n;if(r.kind===262){var i=createNode(260,r.pos);i.openingElement=r;i.children=parseJsxChildren(i.openingElement);i.closingElement=parseJsxClosingElement(t);if(!tagNamesAreEquivalent(i.openingElement.tagName,i.closingElement.tagName)){parseErrorAtRange(i.closingElement,e.Diagnostics.Expected_corresponding_JSX_closing_tag_for_0,e.getTextOfNodeFromSourceText(d,i.openingElement.tagName))}n=finishNode(i)}else if(r.kind===265){var i=createNode(264,r.pos);i.openingFragment=r;i.children=parseJsxChildren(i.openingFragment);i.closingFragment=parseJsxClosingFragment(t);n=finishNode(i)}else{e.Debug.assert(r.kind===261);n=r}if(t&&token()===28){var a=tryParse(function(){return parseJsxElementOrSelfClosingElementOrFragment(true)});if(a){parseErrorAtCurrentToken(e.Diagnostics.JSX_expressions_must_have_one_parent_element);var o=createNode(204,n.pos);o.end=a.end;o.left=n;o.right=a;o.operatorToken=createMissingNode(27,false,undefined);o.operatorToken.pos=o.operatorToken.end=o.right.pos;return o}}return n}function parseJsxText(){var e=createNode(11);e.containsOnlyWhiteSpaces=f===12;f=r.scanJsxToken();return finishNode(e)}function parseJsxChild(t,r){switch(r){case 1:if(e.isJsxOpeningFragment(t)){parseErrorAtRange(t,e.Diagnostics.JSX_fragment_has_no_corresponding_closing_tag)}else{parseErrorAtRange(t.tagName,e.Diagnostics.JSX_element_0_has_no_corresponding_closing_tag,e.getTextOfNodeFromSourceText(d,t.tagName))}return undefined;case 29:case 7:return undefined;case 11:case 12:return parseJsxText();case 18:return parseJsxExpression(false);case 28:return parseJsxElementOrSelfClosingElementOrFragment(false);default:return e.Debug.assertNever(r)}}function parseJsxChildren(e){var t=[];var n=getNodePos();var i=m;m|=1<<14;while(true){var a=parseJsxChild(e,f=r.reScanJsxToken());if(!a)break;t.push(a)}m=i;return createNodeArray(t,n)}function parseJsxAttributes(){var e=createNode(268);e.properties=parseList(13,parseJsxAttribute);return finishNode(e)}function parseJsxOpeningOrSelfClosingElementOrOpeningFragment(e){var t=r.getStartPos();parseExpected(28);if(token()===30){var n=createNode(265,t);scanJsxText();return finishNode(n)}var i=parseJsxElementName();var a=tryParseTypeArguments();var o=parseJsxAttributes();var s;if(token()===30){s=createNode(262,t);scanJsxText()}else{parseExpected(42);if(e){parseExpected(30)}else{parseExpected(30,undefined,false);scanJsxText()}s=createNode(261,t)}s.tagName=i;s.typeArguments=a;s.attributes=o;return finishNode(s)}function parseJsxElementName(){scanJsxIdentifier();var e=token()===100?parseTokenNode():parseIdentifierName();while(parseOptional(24)){var t=createNode(189,e.pos);t.expression=e;t.name=parseRightSideOfDot(true);e=finishNode(t)}return e}function parseJsxExpression(e){var t=createNode(270);if(!parseExpected(18)){return undefined}if(token()!==19){t.dotDotDotToken=parseOptionalToken(25);t.expression=parseAssignmentExpressionOrHigher()}if(e){parseExpected(19)}else{parseExpected(19,undefined,false);scanJsxText()}return finishNode(t)}function parseJsxAttribute(){if(token()===18){return parseJsxSpreadAttribute()}scanJsxIdentifier();var e=createNode(267);e.name=parseIdentifierName();if(token()===59){switch(scanJsxAttributeValue()){case 10:e.initializer=parseLiteralNode();break;default:e.initializer=parseJsxExpression(true);break}}return finishNode(e)}function parseJsxSpreadAttribute(){var e=createNode(269);parseExpected(18);parseExpected(25);e.expression=parseExpression();parseExpected(19);return finishNode(e)}function parseJsxClosingElement(e){var t=createNode(263);parseExpected(29);t.tagName=parseJsxElementName();if(e){parseExpected(30)}else{parseExpected(30,undefined,false);scanJsxText()}return finishNode(t)}function parseJsxClosingFragment(t){var r=createNode(266);parseExpected(29);if(e.tokenIsIdentifierOrKeyword(token())){parseErrorAtRange(parseJsxElementName(),e.Diagnostics.Expected_corresponding_closing_tag_for_JSX_fragment)}if(t){parseExpected(30)}else{parseExpected(30,undefined,false);scanJsxText()}return finishNode(r)}function parseTypeAssertion(){var e=createNode(194);parseExpected(28);e.type=parseType();parseExpected(30);e.expression=parseSimpleUnaryExpression();return finishNode(e)}function parseMemberExpressionRest(t){while(true){var n=parseOptionalToken(24);if(n){var i=createNode(189,t.pos);i.expression=t;i.name=parseRightSideOfDot(true);t=finishNode(i);continue}if(token()===52&&!r.hasPrecedingLineBreak()){nextToken();var a=createNode(213,t.pos);a.expression=t;t=finishNode(a);continue}if(!inDecoratorContext()&&parseOptional(22)){var o=createNode(190,t.pos);o.expression=t;if(token()===23){o.argumentExpression=createMissingNode(72,true,e.Diagnostics.An_element_access_expression_should_take_an_argument)}else{var s=allowInAnd(parseExpression);if(e.isStringOrNumericLiteralLike(s)){s.text=internIdentifier(s.text)}o.argumentExpression=s}parseExpected(23);t=finishNode(o);continue}if(isTemplateStartOfTaggedTemplate()){t=parseTaggedTemplateRest(t,undefined);continue}return t}}function isTemplateStartOfTaggedTemplate(){return token()===14||token()===15}function parseTaggedTemplateRest(e,t){var r=createNode(193,e.pos);r.tag=e;r.typeArguments=t;r.template=token()===14?parseLiteralNode():parseTemplateExpression();return finishNode(r)}function parseCallExpressionRest(e){while(true){e=parseMemberExpressionRest(e);if(token()===28){var t=tryParse(parseTypeArgumentsInExpression);if(!t){return e}if(isTemplateStartOfTaggedTemplate()){e=parseTaggedTemplateRest(e,t);continue}var r=createNode(191,e.pos);r.expression=e;r.typeArguments=t;r.arguments=parseArgumentList();e=finishNode(r);continue}else if(token()===20){var r=createNode(191,e.pos);r.expression=e;r.arguments=parseArgumentList();e=finishNode(r);continue}return e}}function parseArgumentList(){parseExpected(20);var e=parseDelimitedList(11,parseArgumentExpression);parseExpected(21);return e}function parseTypeArgumentsInExpression(){if(!parseOptional(28)){return undefined}var e=parseDelimitedList(20,parseType);if(!parseExpected(30)){return undefined}return e&&canFollowTypeArgumentsInExpression()?e:undefined}function canFollowTypeArgumentsInExpression(){switch(token()){case 20:case 14:case 15:case 24:case 21:case 23:case 57:case 26:case 56:case 33:case 35:case 34:case 36:case 54:case 55:case 51:case 49:case 50:case 19:case 1:return true;case 27:case 18:default:return false}}function parsePrimaryExpression(){switch(token()){case 8:case 9:case 10:case 14:return parseLiteralNode();case 100:case 98:case 96:case 102:case 87:return parseTokenNode();case 20:return parseParenthesizedExpression();case 22:return parseArrayLiteralExpression();case 18:return parseObjectLiteralExpression();case 121:if(!lookAhead(nextTokenIsFunctionKeywordOnSameLine)){break}return parseFunctionExpression();case 76:return parseClassExpression();case 90:return parseFunctionExpression();case 95:return parseNewExpressionOrNewDotTarget();case 42:case 64:if(reScanSlashToken()===13){return parseLiteralNode()}break;case 15:return parseTemplateExpression()}return parseIdentifier(e.Diagnostics.Expression_expected)}function parseParenthesizedExpression(){var e=createNodeWithJSDoc(195);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);return finishNode(e)}function parseSpreadElement(){var e=createNode(208);parseExpected(25);e.expression=parseAssignmentExpressionOrHigher();return finishNode(e)}function parseArgumentOrArrayLiteralElement(){return token()===25?parseSpreadElement():token()===27?createNode(210):parseAssignmentExpressionOrHigher()}function parseArgumentExpression(){return doOutsideOfContext(n,parseArgumentOrArrayLiteralElement)}function parseArrayLiteralExpression(){var e=createNode(187);parseExpected(22);if(r.hasPrecedingLineBreak()){e.multiLine=true}e.elements=parseDelimitedList(15,parseArgumentOrArrayLiteralElement);parseExpected(23);return finishNode(e)}function parseObjectLiteralElement(){var e=createNodeWithJSDoc(0);if(parseOptionalToken(25)){e.kind=277;e.expression=parseAssignmentExpressionOrHigher();return finishNode(e)}e.decorators=parseDecorators();e.modifiers=parseModifiers();if(parseContextualModifier(126)){return parseAccessorDeclaration(e,158)}if(parseContextualModifier(137)){return parseAccessorDeclaration(e,159)}var t=parseOptionalToken(40);var r=isIdentifier();e.name=parsePropertyName();e.questionToken=parseOptionalToken(56);e.exclamationToken=parseOptionalToken(52);if(t||token()===20||token()===28){return parseMethodDeclaration(e,t)}var n=r&&token()!==57;if(n){e.kind=276;var i=parseOptionalToken(59);if(i){e.equalsToken=i;e.objectAssignmentInitializer=allowInAnd(parseAssignmentExpressionOrHigher)}}else{e.kind=275;parseExpected(57);e.initializer=allowInAnd(parseAssignmentExpressionOrHigher)}return finishNode(e)}function parseObjectLiteralExpression(){var e=createNode(188);parseExpected(18);if(r.hasPrecedingLineBreak()){e.multiLine=true}e.properties=parseDelimitedList(12,parseObjectLiteralElement,true);parseExpected(19);return finishNode(e)}function parseFunctionExpression(){var t=inDecoratorContext();if(t){setDecoratorContext(false)}var r=createNodeWithJSDoc(196);r.modifiers=parseModifiers();parseExpected(90);r.asteriskToken=parseOptionalToken(40);var n=r.asteriskToken?1:0;var i=e.hasModifier(r,256)?2:0;r.name=n&&i?doInYieldAndAwaitContext(parseOptionalIdentifier):n?doInYieldContext(parseOptionalIdentifier):i?doInAwaitContext(parseOptionalIdentifier):parseOptionalIdentifier();fillSignature(57,n|i,r);r.body=parseFunctionBlock(n|i);if(t){setDecoratorContext(true)}return finishNode(r)}function parseOptionalIdentifier(){return isIdentifier()?parseIdentifier():undefined}function parseNewExpressionOrNewDotTarget(){var t=r.getStartPos();parseExpected(95);if(parseOptional(24)){var n=createNode(214,t);n.keywordToken=95;n.name=parseIdentifierName();return finishNode(n)}var i=parsePrimaryExpression();var a;while(true){i=parseMemberExpressionRest(i);a=tryParse(parseTypeArgumentsInExpression);if(isTemplateStartOfTaggedTemplate()){e.Debug.assert(!!a,"Expected a type argument list; all plain tagged template starts should be consumed in 'parseMemberExpressionRest'");i=parseTaggedTemplateRest(i,a);a=undefined}break}var o=createNode(192,t);o.expression=i;o.typeArguments=a;if(o.typeArguments||token()===20){o.arguments=parseArgumentList()}return finishNode(o)}function parseBlock(e,t){var n=createNode(218);if(parseExpected(18,t)||e){if(r.hasPrecedingLineBreak()){n.multiLine=true}n.statements=parseList(1,parseStatement);parseExpected(19)}else{n.statements=createMissingList()}return finishNode(n)}function parseFunctionBlock(e,t){var r=inYieldContext();setYieldContext(!!(e&1));var n=inAwaitContext();setAwaitContext(!!(e&2));var i=inDecoratorContext();if(i){setDecoratorContext(false)}var a=parseBlock(!!(e&16),t);if(i){setDecoratorContext(true)}setYieldContext(r);setAwaitContext(n);return a}function parseEmptyStatement(){var e=createNode(220);parseExpected(26);return finishNode(e)}function parseIfStatement(){var e=createNode(222);parseExpected(91);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);e.thenStatement=parseStatement();e.elseStatement=parseOptional(83)?parseStatement():undefined;return finishNode(e)}function parseDoStatement(){var e=createNode(223);parseExpected(82);e.statement=parseStatement();parseExpected(107);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);parseOptional(26);return finishNode(e)}function parseWhileStatement(){var e=createNode(224);parseExpected(107);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);e.statement=parseStatement();return finishNode(e)}function parseForOrForInOrForOfStatement(){var e=getNodePos();parseExpected(89);var t=parseOptionalToken(122);parseExpected(20);var r;if(token()!==26){if(token()===105||token()===111||token()===77){r=parseVariableDeclarationList(true)}else{r=disallowInAnd(parseExpression)}}var n;if(t?parseExpected(147):parseOptional(147)){var i=createNode(227,e);i.awaitModifier=t;i.initializer=r;i.expression=allowInAnd(parseAssignmentExpressionOrHigher);parseExpected(21);n=i}else if(parseOptional(93)){var a=createNode(226,e);a.initializer=r;a.expression=allowInAnd(parseExpression);parseExpected(21);n=a}else{var o=createNode(225,e);o.initializer=r;parseExpected(26);if(token()!==26&&token()!==21){o.condition=allowInAnd(parseExpression)}parseExpected(26);if(token()!==21){o.incrementor=allowInAnd(parseExpression)}parseExpected(21);n=o}n.statement=parseStatement();return finishNode(n)}function parseBreakOrContinueStatement(e){var t=createNode(e);parseExpected(e===229?73:78);if(!canParseSemicolon()){t.label=parseIdentifier()}parseSemicolon();return finishNode(t)}function parseReturnStatement(){var e=createNode(230);parseExpected(97);if(!canParseSemicolon()){e.expression=allowInAnd(parseExpression)}parseSemicolon();return finishNode(e)}function parseWithStatement(){var e=createNode(231);parseExpected(108);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);e.statement=doInsideOfContext(8388608,parseStatement);return finishNode(e)}function parseCaseClause(){var e=createNode(271);parseExpected(74);e.expression=allowInAnd(parseExpression);parseExpected(57);e.statements=parseList(3,parseStatement);return finishNode(e)}function parseDefaultClause(){var e=createNode(272);parseExpected(80);parseExpected(57);e.statements=parseList(3,parseStatement);return finishNode(e)}function parseCaseOrDefaultClause(){return token()===74?parseCaseClause():parseDefaultClause()}function parseSwitchStatement(){var e=createNode(232);parseExpected(99);parseExpected(20);e.expression=allowInAnd(parseExpression);parseExpected(21);var t=createNode(246);parseExpected(18);t.clauses=parseList(2,parseCaseOrDefaultClause);parseExpected(19);e.caseBlock=finishNode(t);return finishNode(e)}function parseThrowStatement(){var e=createNode(234);parseExpected(101);e.expression=r.hasPrecedingLineBreak()?undefined:allowInAnd(parseExpression);parseSemicolon();return finishNode(e)}function parseTryStatement(){var e=createNode(235);parseExpected(103);e.tryBlock=parseBlock(false);e.catchClause=token()===75?parseCatchClause():undefined;if(!e.catchClause||token()===88){parseExpected(88);e.finallyBlock=parseBlock(false)}return finishNode(e)}function parseCatchClause(){var e=createNode(274);parseExpected(75);if(parseOptional(20)){e.variableDeclaration=parseVariableDeclaration();parseExpected(21)}else{e.variableDeclaration=undefined}e.block=parseBlock(false);return finishNode(e)}function parseDebuggerStatement(){var e=createNode(236);parseExpected(79);parseSemicolon();return finishNode(e)}function parseExpressionOrLabeledStatement(){var e=createNodeWithJSDoc(0);var t=allowInAnd(parseExpression);if(t.kind===72&&parseOptional(57)){e.kind=233;e.label=t;e.statement=parseStatement()}else{e.kind=221;e.expression=t;parseSemicolon()}return finishNode(e)}function nextTokenIsIdentifierOrKeywordOnSameLine(){nextToken();return e.tokenIsIdentifierOrKeyword(token())&&!r.hasPrecedingLineBreak()}function nextTokenIsClassKeywordOnSameLine(){nextToken();return token()===76&&!r.hasPrecedingLineBreak()}function nextTokenIsFunctionKeywordOnSameLine(){nextToken();return token()===90&&!r.hasPrecedingLineBreak()}function nextTokenIsIdentifierOrKeywordOrLiteralOnSameLine(){nextToken();return(e.tokenIsIdentifierOrKeyword(token())||token()===8||token()===9||token()===10)&&!r.hasPrecedingLineBreak()}function isDeclaration(){while(true){switch(token()){case 105:case 111:case 77:case 90:case 76:case 84:return true;case 110:case 140:return nextTokenIsIdentifierOnSameLine();case 130:case 131:return nextTokenIsIdentifierOrStringLiteralOnSameLine();case 118:case 121:case 125:case 113:case 114:case 115:case 133:nextToken();if(r.hasPrecedingLineBreak()){return false}continue;case 145:nextToken();return token()===18||token()===72||token()===85;case 92:nextToken();return token()===10||token()===40||token()===18||e.tokenIsIdentifierOrKeyword(token());case 85:nextToken();if(token()===59||token()===40||token()===18||token()===80||token()===119){return true}continue;case 116:nextToken();continue;default:return false}}}function isStartOfDeclaration(){return lookAhead(isDeclaration)}function isStartOfStatement(){switch(token()){case 58:case 26:case 18:case 105:case 111:case 90:case 76:case 84:case 91:case 82:case 107:case 89:case 78:case 73:case 97:case 108:case 99:case 101:case 103:case 79:case 75:case 88:return true;case 92:return isStartOfDeclaration()||lookAhead(nextTokenIsOpenParenOrLessThanOrDot);case 77:case 85:return isStartOfDeclaration();case 121:case 125:case 110:case 130:case 131:case 140:case 145:return true;case 115:case 113:case 114:case 116:case 133:return isStartOfDeclaration()||!lookAhead(nextTokenIsIdentifierOrKeywordOnSameLine);default:return isStartOfExpression()}}function nextTokenIsIdentifierOrStartOfDestructuring(){nextToken();return isIdentifier()||token()===18||token()===22}function isLetDeclaration(){return lookAhead(nextTokenIsIdentifierOrStartOfDestructuring)}function parseStatement(){switch(token()){case 26:return parseEmptyStatement();case 18:return parseBlock(false);case 105:return parseVariableStatement(createNodeWithJSDoc(237));case 111:if(isLetDeclaration()){return parseVariableStatement(createNodeWithJSDoc(237))}break;case 90:return parseFunctionDeclaration(createNodeWithJSDoc(239));case 76:return parseClassDeclaration(createNodeWithJSDoc(240));case 91:return parseIfStatement();case 82:return parseDoStatement();case 107:return parseWhileStatement();case 89:return parseForOrForInOrForOfStatement();case 78:return parseBreakOrContinueStatement(228);case 73:return parseBreakOrContinueStatement(229);case 97:return parseReturnStatement();case 108:return parseWithStatement();case 99:return parseSwitchStatement();case 101:return parseThrowStatement();case 103:case 75:case 88:return parseTryStatement();case 79:return parseDebuggerStatement();case 58:return parseDeclaration();case 121:case 110:case 140:case 130:case 131:case 125:case 77:case 84:case 85:case 92:case 113:case 114:case 115:case 118:case 116:case 133:case 145:if(isStartOfDeclaration()){return parseDeclaration()}break}return parseExpressionOrLabeledStatement()}function isDeclareModifier(e){return e.kind===125}function parseDeclaration(){var t=createNodeWithJSDoc(0);t.decorators=parseDecorators();t.modifiers=parseModifiers();if(e.some(t.modifiers,isDeclareModifier)){for(var r=0,n=t.modifiers;r<n.length;r++){var i=n[r];i.flags|=4194304}return doInsideOfContext(4194304,function(){return parseDeclarationWorker(t)})}else{return parseDeclarationWorker(t)}}function parseDeclarationWorker(t){switch(token()){case 105:case 111:case 77:return parseVariableStatement(t);case 90:return parseFunctionDeclaration(t);case 76:return parseClassDeclaration(t);case 110:return parseInterfaceDeclaration(t);case 140:return parseTypeAliasDeclaration(t);case 84:return parseEnumDeclaration(t);case 145:case 130:case 131:return parseModuleDeclaration(t);case 92:return parseImportDeclarationOrImportEqualsDeclaration(t);case 85:nextToken();switch(token()){case 80:case 59:return parseExportAssignment(t);case 119:return parseNamespaceExportDeclaration(t);default:return parseExportDeclaration(t)}default:if(t.decorators||t.modifiers){var r=createMissingNode(258,true,e.Diagnostics.Declaration_expected);r.pos=t.pos;r.decorators=t.decorators;r.modifiers=t.modifiers;return finishNode(r)}return undefined}}function nextTokenIsIdentifierOrStringLiteralOnSameLine(){nextToken();return!r.hasPrecedingLineBreak()&&(isIdentifier()||token()===10)}function parseFunctionBlockOrSemicolon(e,t){if(token()!==18&&canParseSemicolon()){parseSemicolon();return}return parseFunctionBlock(e,t)}function parseArrayBindingElement(){if(token()===27){return createNode(210)}var e=createNode(186);e.dotDotDotToken=parseOptionalToken(25);e.name=parseIdentifierOrPattern();e.initializer=parseInitializer();return finishNode(e)}function parseObjectBindingElement(){var e=createNode(186);e.dotDotDotToken=parseOptionalToken(25);var t=isIdentifier();var r=parsePropertyName();if(t&&token()!==57){e.name=r}else{parseExpected(57);e.propertyName=r;e.name=parseIdentifierOrPattern()}e.initializer=parseInitializer();return finishNode(e)}function parseObjectBindingPattern(){var e=createNode(184);parseExpected(18);e.elements=parseDelimitedList(9,parseObjectBindingElement);parseExpected(19);return finishNode(e)}function parseArrayBindingPattern(){var e=createNode(185);parseExpected(22);e.elements=parseDelimitedList(10,parseArrayBindingElement);parseExpected(23);return finishNode(e)}function isIdentifierOrPattern(){return token()===18||token()===22||isIdentifier()}function parseIdentifierOrPattern(){if(token()===22){return parseArrayBindingPattern()}if(token()===18){return parseObjectBindingPattern()}return parseIdentifier()}function parseVariableDeclarationAllowExclamation(){return parseVariableDeclaration(true)}function parseVariableDeclaration(e){var t=createNode(237);t.name=parseIdentifierOrPattern();if(e&&t.name.kind===72&&token()===52&&!r.hasPrecedingLineBreak()){t.exclamationToken=parseTokenNode()}t.type=parseTypeAnnotation();if(!isInOrOfKeyword(token())){t.initializer=parseInitializer()}return finishNode(t)}function parseVariableDeclarationList(t){var r=createNode(238);switch(token()){case 105:break;case 111:r.flags|=1;break;case 77:r.flags|=2;break;default:e.Debug.fail()}nextToken();if(token()===147&&lookAhead(canFollowContextualOfKeyword)){r.declarations=createMissingList()}else{var n=inDisallowInContext();setDisallowInContext(t);r.declarations=parseDelimitedList(8,t?parseVariableDeclaration:parseVariableDeclarationAllowExclamation);setDisallowInContext(n)}return finishNode(r)}function canFollowContextualOfKeyword(){return nextTokenIsIdentifier()&&nextToken()===21}function parseVariableStatement(e){e.kind=219;e.declarationList=parseVariableDeclarationList(false);parseSemicolon();return finishNode(e)}function parseFunctionDeclaration(t){t.kind=239;parseExpected(90);t.asteriskToken=parseOptionalToken(40);t.name=e.hasModifier(t,512)?parseOptionalIdentifier():parseIdentifier();var r=t.asteriskToken?1:0;var n=e.hasModifier(t,256)?2:0;fillSignature(57,r|n,t);t.body=parseFunctionBlockOrSemicolon(r|n,e.Diagnostics.or_expected);return finishNode(t)}function parseConstructorDeclaration(t){t.kind=157;parseExpected(124);fillSignature(57,0,t);t.body=parseFunctionBlockOrSemicolon(0,e.Diagnostics.or_expected);return finishNode(t)}function parseMethodDeclaration(t,r,n){t.kind=156;t.asteriskToken=r;var i=r?1:0;var a=e.hasModifier(t,256)?2:0;fillSignature(57,i|a,t);t.body=parseFunctionBlockOrSemicolon(i|a,n);return finishNode(t)}function parsePropertyDeclaration(t){t.kind=154;if(!t.questionToken&&token()===52&&!r.hasPrecedingLineBreak()){t.exclamationToken=parseTokenNode()}t.type=parseTypeAnnotation();t.initializer=e.hasModifier(t,32)?allowInAnd(parseInitializer):doOutsideOfContext(4096|2048,parseInitializer);parseSemicolon();return finishNode(t)}function parsePropertyOrMethodDeclaration(t){var r=parseOptionalToken(40);t.name=parsePropertyName();t.questionToken=parseOptionalToken(56);if(r||token()===20||token()===28){return parseMethodDeclaration(t,r,e.Diagnostics.or_expected)}return parsePropertyDeclaration(t)}function parseAccessorDeclaration(e,t){e.kind=t;e.name=parsePropertyName();fillSignature(57,0,e);e.body=parseFunctionBlockOrSemicolon(0);return finishNode(e)}function isClassMemberStart(){var t;if(token()===58){return true}while(e.isModifierKind(token())){t=token();if(e.isClassMemberModifier(t)){return true}nextToken()}if(token()===40){return true}if(isLiteralPropertyName()){t=token();nextToken()}if(token()===22){return true}if(t!==undefined){if(!e.isKeyword(t)||t===137||t===126){return true}switch(token()){case 20:case 28:case 52:case 57:case 59:case 56:return true;default:return canParseSemicolon()}}return false}function parseDecorators(){var e;var t=getNodePos();while(true){var r=getNodePos();if(!parseOptional(58)){break}var n=createNode(152,r);n.expression=doInDecoratorContext(parseLeftHandSideExpressionOrHigher);finishNode(n);(e||(e=[])).push(n)}return e&&createNodeArray(e,t)}function parseModifiers(e){var t;var n=getNodePos();while(true){var i=r.getStartPos();var a=token();if(token()===77&&e){if(!tryParse(nextTokenIsOnSameLineAndCanFollowModifier)){break}}else{if(!parseAnyContextualModifier()){break}}var o=finishNode(createNode(a,i));(t||(t=[])).push(o)}return t&&createNodeArray(t,n)}function parseModifiersForArrowFunction(){var e;if(token()===121){var t=r.getStartPos();var n=token();nextToken();var i=finishNode(createNode(n,t));e=createNodeArray([i],t)}return e}function parseClassElement(){if(token()===26){var t=createNode(217);nextToken();return finishNode(t)}var r=createNodeWithJSDoc(0);r.decorators=parseDecorators();r.modifiers=parseModifiers(true);if(parseContextualModifier(126)){return parseAccessorDeclaration(r,158)}if(parseContextualModifier(137)){return parseAccessorDeclaration(r,159)}if(token()===124){return parseConstructorDeclaration(r)}if(isIndexSignature()){return parseIndexSignatureDeclaration(r)}if(e.tokenIsIdentifierOrKeyword(token())||token()===10||token()===8||token()===40||token()===22){return parsePropertyOrMethodDeclaration(r)}if(r.decorators||r.modifiers){r.name=createMissingNode(72,true,e.Diagnostics.Declaration_expected);return parsePropertyDeclaration(r)}return e.Debug.fail("Should not have attempted to parse class member declaration.")}function parseClassExpression(){return parseClassDeclarationOrExpression(createNodeWithJSDoc(0),209)}function parseClassDeclaration(e){return parseClassDeclarationOrExpression(e,240)}function parseClassDeclarationOrExpression(e,t){e.kind=t;parseExpected(76);e.name=parseNameOfClassDeclarationOrExpression();e.typeParameters=parseTypeParameters();e.heritageClauses=parseHeritageClauses();if(parseExpected(18)){e.members=parseClassMembers();parseExpected(19)}else{e.members=createMissingList()}return finishNode(e)}function parseNameOfClassDeclarationOrExpression(){return isIdentifier()&&!isImplementsClause()?parseIdentifier():undefined}function isImplementsClause(){return token()===109&&lookAhead(nextTokenIsIdentifierOrKeyword)}function parseHeritageClauses(){if(isHeritageClause()){return parseList(22,parseHeritageClause)}return undefined}function parseHeritageClause(){var t=token();e.Debug.assert(t===86||t===109);var r=createNode(273);r.token=t;nextToken();r.types=parseDelimitedList(7,parseExpressionWithTypeArguments);return finishNode(r)}function parseExpressionWithTypeArguments(){var e=createNode(211);e.expression=parseLeftHandSideExpressionOrHigher();e.typeArguments=tryParseTypeArguments();return finishNode(e)}function tryParseTypeArguments(){return token()===28?parseBracketedList(20,parseType,28,30):undefined}function isHeritageClause(){return token()===86||token()===109}function parseClassMembers(){return parseList(5,parseClassElement)}function parseInterfaceDeclaration(e){e.kind=241;parseExpected(110);e.name=parseIdentifier();e.typeParameters=parseTypeParameters();e.heritageClauses=parseHeritageClauses();e.members=parseObjectTypeMembers();return finishNode(e)}function parseTypeAliasDeclaration(e){e.kind=242;parseExpected(140);e.name=parseIdentifier();e.typeParameters=parseTypeParameters();parseExpected(59);e.type=parseType();parseSemicolon();return finishNode(e)}function parseEnumMember(){var e=createNodeWithJSDoc(278);e.name=parsePropertyName();e.initializer=allowInAnd(parseInitializer);return finishNode(e)}function parseEnumDeclaration(e){e.kind=243;parseExpected(84);e.name=parseIdentifier();if(parseExpected(18)){e.members=parseDelimitedList(6,parseEnumMember);parseExpected(19)}else{e.members=createMissingList()}return finishNode(e)}function parseModuleBlock(){var e=createNode(245);if(parseExpected(18)){e.statements=parseList(1,parseStatement);parseExpected(19)}else{e.statements=createMissingList()}return finishNode(e)}function parseModuleOrNamespaceDeclaration(e,t){e.kind=244;var r=t&16;e.flags|=t;e.name=parseIdentifier();e.body=parseOptional(24)?parseModuleOrNamespaceDeclaration(createNode(0),4|r):parseModuleBlock();return finishNode(e)}function parseAmbientExternalModuleDeclaration(e){e.kind=244;if(token()===145){e.name=parseIdentifier();e.flags|=512}else{e.name=parseLiteralNode();e.name.text=internIdentifier(e.name.text)}if(token()===18){e.body=parseModuleBlock()}else{parseSemicolon()}return finishNode(e)}function parseModuleDeclaration(e){var t=0;if(token()===145){return parseAmbientExternalModuleDeclaration(e)}else if(parseOptional(131)){t|=16}else{parseExpected(130);if(token()===10){return parseAmbientExternalModuleDeclaration(e)}}return parseModuleOrNamespaceDeclaration(e,t)}function isExternalModuleReference(){return token()===134&&lookAhead(nextTokenIsOpenParen)}function nextTokenIsOpenParen(){return nextToken()===20}function nextTokenIsSlash(){return nextToken()===42}function parseNamespaceExportDeclaration(e){e.kind=247;parseExpected(119);parseExpected(131);e.name=parseIdentifier();parseSemicolon();return finishNode(e)}function parseImportDeclarationOrImportEqualsDeclaration(e){parseExpected(92);var t=r.getStartPos();var n;if(isIdentifier()){n=parseIdentifier();if(token()!==27&&token()!==144){return parseImportEqualsDeclaration(e,n)}}e.kind=249;if(n||token()===40||token()===18){e.importClause=parseImportClause(n,t);parseExpected(144)}e.moduleSpecifier=parseModuleSpecifier();parseSemicolon();return finishNode(e)}function parseImportEqualsDeclaration(e,t){e.kind=248;e.name=t;parseExpected(59);e.moduleReference=parseModuleReference();parseSemicolon();return finishNode(e)}function parseImportClause(e,t){var r=createNode(250,t);if(e){r.name=e}if(!r.name||parseOptional(27)){r.namedBindings=token()===40?parseNamespaceImport():parseNamedImportsOrExports(252)}return finishNode(r)}function parseModuleReference(){return isExternalModuleReference()?parseExternalModuleReference():parseEntityName(false)}function parseExternalModuleReference(){var e=createNode(259);parseExpected(134);parseExpected(20);e.expression=parseModuleSpecifier();parseExpected(21);return finishNode(e)}function parseModuleSpecifier(){if(token()===10){var e=parseLiteralNode();e.text=internIdentifier(e.text);return e}else{return parseExpression()}}function parseNamespaceImport(){var e=createNode(251);parseExpected(40);parseExpected(119);e.name=parseIdentifier();return finishNode(e)}function parseNamedImportsOrExports(e){var t=createNode(e);t.elements=parseBracketedList(23,e===252?parseImportSpecifier:parseExportSpecifier,18,19);return finishNode(t)}function parseExportSpecifier(){return parseImportOrExportSpecifier(257)}function parseImportSpecifier(){return parseImportOrExportSpecifier(253)}function parseImportOrExportSpecifier(t){var n=createNode(t);var i=e.isKeyword(token())&&!isIdentifier();var a=r.getTokenPos();var o=r.getTextPos();var s=parseIdentifierName();if(token()===119){n.propertyName=s;parseExpected(119);i=e.isKeyword(token())&&!isIdentifier();a=r.getTokenPos();o=r.getTextPos();n.name=parseIdentifierName()}else{n.name=s}if(t===253&&i){parseErrorAt(a,o,e.Diagnostics.Identifier_expected)}return finishNode(n)}function parseExportDeclaration(e){e.kind=255;if(parseOptional(40)){parseExpected(144);e.moduleSpecifier=parseModuleSpecifier()}else{e.exportClause=parseNamedImportsOrExports(256);if(token()===144||token()===10&&!r.hasPrecedingLineBreak()){parseExpected(144);e.moduleSpecifier=parseModuleSpecifier()}}parseSemicolon();return finishNode(e)}function parseExportAssignment(e){e.kind=254;if(parseOptional(59)){e.isExportEquals=true}else{parseExpected(80)}e.expression=parseAssignmentExpressionOrHigher();parseSemicolon();return finishNode(e)}function setExternalModuleIndicator(t){t.externalModuleIndicator=e.forEach(t.statements,isAnExternalModuleIndicatorNode)||getImportMetaIfNecessary(t)}function isAnExternalModuleIndicatorNode(t){return e.hasModifier(t,1)||t.kind===248&&t.moduleReference.kind===259||t.kind===249||t.kind===254||t.kind===255?t:undefined}function getImportMetaIfNecessary(e){return e.flags&1048576?walkTreeForExternalModuleIndicators(e):undefined}function walkTreeForExternalModuleIndicators(e){return isImportMeta(e)?e:forEachChild(e,walkTreeForExternalModuleIndicators)}function isImportMeta(t){return e.isMetaProperty(t)&&t.keywordToken===92&&t.name.escapedText==="meta"}var v;(function(e){e[e["SourceElements"]=0]="SourceElements";e[e["BlockStatements"]=1]="BlockStatements";e[e["SwitchClauses"]=2]="SwitchClauses";e[e["SwitchClauseStatements"]=3]="SwitchClauseStatements";e[e["TypeMembers"]=4]="TypeMembers";e[e["ClassMembers"]=5]="ClassMembers";e[e["EnumMembers"]=6]="EnumMembers";e[e["HeritageClauseElement"]=7]="HeritageClauseElement";e[e["VariableDeclarations"]=8]="VariableDeclarations";e[e["ObjectBindingElements"]=9]="ObjectBindingElements";e[e["ArrayBindingElements"]=10]="ArrayBindingElements";e[e["ArgumentExpressions"]=11]="ArgumentExpressions";e[e["ObjectLiteralMembers"]=12]="ObjectLiteralMembers";e[e["JsxAttributes"]=13]="JsxAttributes";e[e["JsxChildren"]=14]="JsxChildren";e[e["ArrayLiteralMembers"]=15]="ArrayLiteralMembers";e[e["Parameters"]=16]="Parameters";e[e["JSDocParameters"]=17]="JSDocParameters";e[e["RestProperties"]=18]="RestProperties";e[e["TypeParameters"]=19]="TypeParameters";e[e["TypeArguments"]=20]="TypeArguments";e[e["TupleElementTypes"]=21]="TupleElementTypes";e[e["HeritageClauses"]=22]="HeritageClauses";e[e["ImportOrExportSpecifiers"]=23]="ImportOrExportSpecifiers";e[e["Count"]=24]="Count"})(v||(v={}));var T;(function(e){e[e["False"]=0]="False";e[e["True"]=1]="True";e[e["Unknown"]=2]="Unknown"})(T||(T={}));var S;(function(t){function parseJSDocTypeExpressionForTests(e,t,n){initializeState(e,6,undefined,1);c=createSourceFile("file.js",6,1,false);r.setText(e,t,n);f=r.scan();var i=parseJSDocTypeExpression();var a=u;clearState();return i?{jsDocTypeExpression:i,diagnostics:a}:undefined}t.parseJSDocTypeExpressionForTests=parseJSDocTypeExpressionForTests;function parseJSDocTypeExpression(e){var t=createNode(283);var r=(e?parseOptional:parseExpected)(18);t.type=doInsideOfContext(2097152,parseJSDocType);if(!e||r){parseExpected(19)}fixupParentReferences(t);return finishNode(t)}t.parseJSDocTypeExpression=parseJSDocTypeExpression;function parseIsolatedJSDocComment(e,t,r){initializeState(e,6,undefined,1);c={languageVariant:0,text:e};var n=parseJSDocCommentWorker(t,r);var i=u;clearState();return n?{jsDoc:n,diagnostics:i}:undefined}t.parseIsolatedJSDocComment=parseIsolatedJSDocComment;function parseJSDocComment(e,t,r){var n;var i=f;var a=u.length;var o=h;var s=parseJSDocCommentWorker(t,r);if(s){s.parent=e}if(y&65536){if(!c.jsDocDiagnostics){c.jsDocDiagnostics=[]}(n=c.jsDocDiagnostics).push.apply(n,u)}f=i;u.length=a;h=o;return s}t.parseJSDocComment=parseJSDocComment;var n;(function(e){e[e["BeginningOfLine"]=0]="BeginningOfLine";e[e["SawAsterisk"]=1]="SawAsterisk";e[e["SavingComments"]=2]="SavingComments"})(n||(n={}));var i;(function(e){e[e["Property"]=1]="Property";e[e["Parameter"]=2]="Parameter";e[e["CallbackParameter"]=4]="CallbackParameter"})(i||(i={}));function parseJSDocCommentWorker(t,n){if(t===void 0){t=0}var i=d;var a=n===undefined?i.length:t+n;n=a-t;e.Debug.assert(t>=0);e.Debug.assert(t<=a);e.Debug.assert(a<=i.length);if(!isJSDocLikeText(i,t)){return undefined}var o;var s;var c;var u=[];return r.scanRange(t+3,n-5,function(){var e=1;var n;var a=t-Math.max(i.lastIndexOf("\n",t),0)+4;function pushComment(e){if(!n){n=a}u.push(e);a+=e.length}nextJSDocToken();while(parseOptionalJsdoc(5));if(parseOptionalJsdoc(4)){e=0;a=0}e:while(true){switch(token()){case 58:if(e===0||e===1){removeTrailingWhitespace(u);addTag(parseTag(a));e=0;n=undefined;a++}else{pushComment(r.getTokenText())}break;case 4:u.push(r.getTokenText());e=0;a=0;break;case 40:var o=r.getTokenText();if(e===1||e===2){e=2;pushComment(o)}else{e=1;a+=o.length}break;case 5:var s=r.getTokenText();if(e===2){u.push(s)}else if(n!==undefined&&a+s.length>n){u.push(s.slice(n-a-1))}a+=s.length;break;case 1:break e;default:e=2;pushComment(r.getTokenText());break}nextJSDocToken()}removeLeadingNewlines(u);removeTrailingWhitespace(u);return createJSDocComment()});function removeLeadingNewlines(e){while(e.length&&(e[0]==="\n"||e[0]==="\r")){e.shift()}}function removeTrailingWhitespace(e){while(e.length&&e[e.length-1].trim()===""){e.pop()}}function createJSDocComment(){var e=createNode(291,t);e.tags=o&&createNodeArray(o,s,c);e.comment=u.length?u.join(""):undefined;return finishNode(e,a)}function isNextNonwhitespaceTokenEndOfFile(){while(true){nextJSDocToken();if(token()===1){return true}if(!(token()===5||token()===4)){return false}}}function skipWhitespace(){if(token()===5||token()===4){if(lookAhead(isNextNonwhitespaceTokenEndOfFile)){return}}while(token()===5||token()===4){nextJSDocToken()}}function skipWhitespaceOrAsterisk(){if(token()===5||token()===4){if(lookAhead(isNextNonwhitespaceTokenEndOfFile)){return}}var e=r.hasPrecedingLineBreak();while(e&&token()===40||token()===5||token()===4){if(token()===4){e=true}else if(token()===40){e=false}nextJSDocToken()}}function parseTag(t){e.Debug.assert(token()===58);var n=r.getTokenPos();nextJSDocToken();var i=parseJSDocIdentifierName(undefined);skipWhitespaceOrAsterisk();var a;switch(i.escapedText){case"augments":case"extends":a=parseAugmentsTag(n,i);break;case"class":case"constructor":a=parseClassTag(n,i);break;case"this":a=parseThisTag(n,i);break;case"enum":a=parseEnumTag(n,i);break;case"arg":case"argument":case"param":return parseParameterOrPropertyTag(n,i,2,t);case"return":case"returns":a=parseReturnTag(n,i);break;case"template":a=parseTemplateTag(n,i);break;case"type":a=parseTypeTag(n,i);break;case"typedef":a=parseTypedefTag(n,i,t);break;case"callback":a=parseCallbackTag(n,i,t);break;default:a=parseUnknownTag(n,i);break}if(!a.comment){a.comment=parseTagComments(t+a.end-a.pos)}return a}function parseTagComments(t){var n=[];var i=0;var a;function pushComment(e){if(!a){a=t}n.push(e);t+=e.length}var o=token();e:while(true){switch(o){case 4:if(i>=1){i=0;n.push(r.getTokenText())}t=0;break;case 58:r.setTextPos(r.getTextPos()-1);case 1:break e;case 5:if(i===2){pushComment(r.getTokenText())}else{var s=r.getTokenText();if(a!==undefined&&t+s.length>a){n.push(s.slice(a-t-1))}t+=s.length}break;case 18:i=2;if(lookAhead(function(){return nextJSDocToken()===58&&e.tokenIsIdentifierOrKeyword(nextJSDocToken())&&r.getTokenText()==="link"})){pushComment(r.getTokenText());nextJSDocToken();pushComment(r.getTokenText());nextJSDocToken()}pushComment(r.getTokenText());break;case 40:if(i===0){i=1;t+=1;break}default:i=2;pushComment(r.getTokenText());break}o=nextJSDocToken()}removeLeadingNewlines(n);removeTrailingWhitespace(n);return n.length===0?undefined:n.join("")}function parseUnknownTag(e,t){var r=createNode(294,e);r.tagName=t;return finishNode(r)}function addTag(e){if(!e){return}if(!o){o=[e];s=e.pos}else{o.push(e)}c=e.end}function tryParseTypeExpression(){skipWhitespaceOrAsterisk();return token()===18?parseJSDocTypeExpression():undefined}function parseBracketNameInPropertyAndParamTag(){if(token()===14){return{name:createIdentifier(true),isBracketed:false}}var e=parseOptional(22);var t=parseJSDocEntityName();if(e){skipWhitespace();if(parseOptionalToken(59)){parseExpression()}parseExpected(23)}return{name:t,isBracketed:e}}function isObjectOrObjectArrayTypeReference(t){switch(t.kind){case 136:return true;case 169:return isObjectOrObjectArrayTypeReference(t.elementType);default:return e.isTypeReferenceNode(t)&&e.isIdentifier(t.typeName)&&t.typeName.escapedText==="Object"}}function parseParameterOrPropertyTag(e,t,n,i){var a=tryParseTypeExpression();var o=!a;skipWhitespaceOrAsterisk();var s=parseBracketNameInPropertyAndParamTag(),c=s.name,u=s.isBracketed;skipWhitespace();if(o){a=tryParseTypeExpression()}var l=n===1?createNode(305,e):createNode(299,e);var f=parseTagComments(i+r.getStartPos()-e);var d=n!==4&&parseNestedTypeLiteral(a,c,n,i);if(d){a=d;o=true}l.tagName=t;l.typeExpression=a;l.name=c;l.isNameFirst=o;l.isBracketed=u;l.comment=f;return finishNode(l)}function parseNestedTypeLiteral(t,n,i,a){if(t&&isObjectOrObjectArrayTypeReference(t.type)){var o=createNode(283,r.getTokenPos());var s=void 0;var c=void 0;var u=r.getStartPos();var l=void 0;while(s=tryParse(function(){return parseChildParameterOrPropertyTag(i,a,n)})){if(s.kind===299||s.kind===305){l=e.append(l,s)}}if(l){c=createNode(292,u);c.jsDocPropertyTags=l;if(t.type.kind===169){c.isArrayType=true}o.type=finishNode(c);return finishNode(o)}}}function parseReturnTag(t,n){if(e.forEach(o,function(e){return e.kind===300})){parseErrorAt(n.pos,r.getTokenPos(),e.Diagnostics._0_tag_already_specified,n.escapedText)}var i=createNode(300,t);i.tagName=n;i.typeExpression=tryParseTypeExpression();return finishNode(i)}function parseTypeTag(t,n){if(e.forEach(o,function(e){return e.kind===302})){parseErrorAt(n.pos,r.getTokenPos(),e.Diagnostics._0_tag_already_specified,n.escapedText)}var i=createNode(302,t);i.tagName=n;i.typeExpression=parseJSDocTypeExpression(true);return finishNode(i)}function parseAugmentsTag(e,t){var r=createNode(295,e);r.tagName=t;r.class=parseExpressionWithTypeArgumentsForAugments();return finishNode(r)}function parseExpressionWithTypeArgumentsForAugments(){var e=parseOptional(18);var t=createNode(211);t.expression=parsePropertyAccessEntityNameExpression();t.typeArguments=tryParseTypeArguments();var r=finishNode(t);if(e){parseExpected(19)}return r}function parsePropertyAccessEntityNameExpression(){var e=parseJSDocIdentifierName();while(parseOptional(24)){var t=createNode(189,e.pos);t.expression=e;t.name=parseJSDocIdentifierName();e=finishNode(t)}return e}function parseClassTag(e,t){var r=createNode(296,e);r.tagName=t;return finishNode(r)}function parseThisTag(e,t){var r=createNode(301,e);r.tagName=t;r.typeExpression=parseJSDocTypeExpression(true);skipWhitespace();return finishNode(r)}function parseEnumTag(e,t){var r=createNode(298,e);r.tagName=t;r.typeExpression=parseJSDocTypeExpression(true);skipWhitespace();return finishNode(r)}function parseTypedefTag(t,n,i){var a=tryParseTypeExpression();skipWhitespaceOrAsterisk();var o=createNode(304,t);o.tagName=n;o.fullName=parseJSDocTypeNameWithNamespace();o.name=getJSDocTypeAliasName(o.fullName);skipWhitespace();o.comment=parseTagComments(i);o.typeExpression=a;var s;if(!a||isObjectOrObjectArrayTypeReference(a.type)){var c=void 0;var u=void 0;var l=void 0;while(c=tryParse(function(){return parseChildPropertyTag(i)})){if(!u){u=createNode(292,t)}if(c.kind===302){if(l){break}else{l=c}}else{u.jsDocPropertyTags=e.append(u.jsDocPropertyTags,c)}}if(u){if(a&&a.type.kind===169){u.isArrayType=true}o.typeExpression=l&&l.typeExpression&&!isObjectOrObjectArrayTypeReference(l.typeExpression.type)?l.typeExpression:finishNode(u);s=o.typeExpression.end}}return finishNode(o,s||o.comment!==undefined?r.getStartPos():(o.fullName||o.typeExpression||o.tagName).end)}function parseJSDocTypeNameWithNamespace(t){var n=r.getTokenPos();if(!e.tokenIsIdentifierOrKeyword(token())){return undefined}var i=parseJSDocIdentifierName();if(parseOptional(24)){var a=createNode(244,n);if(t){a.flags|=4}a.name=i;a.body=parseJSDocTypeNameWithNamespace(true);return finishNode(a)}if(t){i.isInJSDocNamespace=true}return i}function parseCallbackTag(t,r,n){var i=createNode(297,t);i.tagName=r;i.fullName=parseJSDocTypeNameWithNamespace();i.name=getJSDocTypeAliasName(i.fullName);skipWhitespace();i.comment=parseTagComments(n);var a;var o=createNode(293,t);o.parameters=[];while(a=tryParse(function(){return parseChildParameterOrPropertyTag(4,n)})){o.parameters=e.append(o.parameters,a)}var s=tryParse(function(){if(parseOptionalJsdoc(58)){var e=parseTag(n);if(e&&e.kind===300){return e}}});if(s){o.type=s}i.typeExpression=finishNode(o);return finishNode(i)}function getJSDocTypeAliasName(t){if(t){var r=t;while(true){if(e.isIdentifier(r)||!r.body){return e.isIdentifier(r)?r:r.name}r=r.body}}}function escapedTextsEqual(t,r){while(!e.isIdentifier(t)||!e.isIdentifier(r)){if(!e.isIdentifier(t)&&!e.isIdentifier(r)&&t.right.escapedText===r.right.escapedText){t=t.left;r=r.left}else{return false}}return t.escapedText===r.escapedText}function parseChildPropertyTag(e){return parseChildParameterOrPropertyTag(1,e)}function parseChildParameterOrPropertyTag(t,r,n){var i=true;var a=false;while(true){switch(nextJSDocToken()){case 58:if(i){var o=tryParseChildTag(t,r);if(o&&(o.kind===299||o.kind===305)&&t!==4&&n&&(e.isIdentifier(o.name)||!escapedTextsEqual(n,o.name.left))){return false}return o}a=false;break;case 4:i=true;a=false;break;case 40:if(a){i=false}a=true;break;case 72:i=false;break;case 1:return false}}}function tryParseChildTag(t,n){e.Debug.assert(token()===58);var i=r.getStartPos();nextJSDocToken();var a=parseJSDocIdentifierName();skipWhitespace();var o;switch(a.escapedText){case"type":return t===1&&parseTypeTag(i,a);case"prop":case"property":o=1;break;case"arg":case"argument":case"param":o=2|4;break;default:return false}if(!(t&o)){return false}return parseParameterOrPropertyTag(i,a,t,n)}function parseTemplateTag(t,r){var n;if(token()===18){n=parseJSDocTypeExpression()}var i=[];var a=getNodePos();do{skipWhitespace();var o=createNode(150);o.name=parseJSDocIdentifierName(e.Diagnostics.Unexpected_token_A_type_parameter_name_was_expected_without_curly_braces);finishNode(o);skipWhitespace();i.push(o)}while(parseOptionalJsdoc(27));var s=createNode(303,t);s.tagName=r;s.constraint=n;s.typeParameters=createNodeArray(i,a);finishNode(s);return s}function nextJSDocToken(){return f=r.scanJSDocToken()}function parseOptionalJsdoc(e){if(token()===e){nextJSDocToken();return true}return false}function parseJSDocEntityName(){var e=parseJSDocIdentifierName();if(parseOptional(22)){parseExpected(23)}while(parseOptional(24)){var t=parseJSDocIdentifierName();if(parseOptional(22)){parseExpected(23)}e=createQualifiedName(e,t)}return e}function parseJSDocIdentifierName(t){if(!e.tokenIsIdentifierOrKeyword(token())){return createMissingNode(72,!t,t||e.Diagnostics.Identifier_expected)}var n=r.getTokenPos();var i=r.getTextPos();var a=createNode(72,n);a.escapedText=e.escapeLeadingUnderscores(r.getTokenText());finishNode(a,i);nextJSDocToken();return a}}t.parseJSDocCommentWorker=parseJSDocCommentWorker})(S=t.JSDocParser||(t.JSDocParser={}))})(o||(o={}));var s;(function(t){function updateSourceFile(t,r,n,i){i=i||e.Debug.shouldAssert(2);checkChangeRange(t,r,n,i);if(e.textChangeRangeIsUnchanged(n)){return t}if(t.statements.length===0){return o.parseSourceFile(t.fileName,r,t.languageVersion,undefined,true,t.scriptKind)}var a=t;e.Debug.assert(!a.hasBeenIncrementallyParsed);a.hasBeenIncrementallyParsed=true;var s=t.text;var c=createSyntaxCursor(t);var u=extendToAffectedRange(t,n);checkChangeRange(t,r,u,i);e.Debug.assert(u.span.start<=n.span.start);e.Debug.assert(e.textSpanEnd(u.span)===e.textSpanEnd(n.span));e.Debug.assert(e.textSpanEnd(e.textChangeRangeNewSpan(u))===e.textSpanEnd(e.textChangeRangeNewSpan(n)));var l=e.textChangeRangeNewSpan(u).length-u.span.length;updateTokenPositionsAndMarkElements(a,u.span.start,e.textSpanEnd(u.span),e.textSpanEnd(e.textChangeRangeNewSpan(u)),l,s,r,i);var f=o.parseSourceFile(t.fileName,r,t.languageVersion,c,true,t.scriptKind);return f}t.updateSourceFile=updateSourceFile;function moveElementEntirelyPastChangeRange(t,r,n,i,a,o){if(r){visitArray(t)}else{visitNode(t)}return;function visitNode(t){var r="";if(o&&shouldCheckNode(t)){r=i.substring(t.pos,t.end)}if(t._children){t._children=undefined}t.pos+=n;t.end+=n;if(o&&shouldCheckNode(t)){e.Debug.assert(r===a.substring(t.pos,t.end))}forEachChild(t,visitNode,visitArray);if(e.hasJSDocNodes(t)){for(var s=0,c=t.jsDoc;s<c.length;s++){var u=c[s];visitNode(u)}}checkNodePositions(t,o)}function visitArray(e){e._children=undefined;e.pos+=n;e.end+=n;for(var t=0,r=e;t<r.length;t++){var i=r[t];visitNode(i)}}}function shouldCheckNode(e){switch(e.kind){case 10:case 8:case 72:return true}return false}function adjustIntersectingElement(t,r,n,i,a){e.Debug.assert(t.end>=r,"Adjusting an element that was entirely before the change range");e.Debug.assert(t.pos<=n,"Adjusting an element that was entirely after the change range");e.Debug.assert(t.pos<=t.end);t.pos=Math.min(t.pos,i);if(t.end>=n){t.end+=a}else{t.end=Math.min(t.end,i)}e.Debug.assert(t.pos<=t.end);if(t.parent){e.Debug.assert(t.pos>=t.parent.pos);e.Debug.assert(t.end<=t.parent.end)}}function checkNodePositions(t,r){if(r){var n=t.pos;var i=function(t){e.Debug.assert(t.pos>=n);n=t.end};if(e.hasJSDocNodes(t)){for(var a=0,o=t.jsDoc;a<o.length;a++){var s=o[a];i(s)}}forEachChild(t,i);e.Debug.assert(n<=t.end)}}function updateTokenPositionsAndMarkElements(t,r,n,i,a,o,s,c){visitNode(t);return;function visitNode(t){e.Debug.assert(t.pos<=t.end);if(t.pos>n){moveElementEntirelyPastChangeRange(t,false,a,o,s,c);return}var u=t.end;if(u>=r){t.intersectsChange=true;t._children=undefined;adjustIntersectingElement(t,r,n,i,a);forEachChild(t,visitNode,visitArray);if(e.hasJSDocNodes(t)){for(var l=0,f=t.jsDoc;l<f.length;l++){var d=f[l];visitNode(d)}}checkNodePositions(t,c);return}e.Debug.assert(u<r)}function visitArray(t){e.Debug.assert(t.pos<=t.end);if(t.pos>n){moveElementEntirelyPastChangeRange(t,true,a,o,s,c);return}var u=t.end;if(u>=r){t.intersectsChange=true;t._children=undefined;adjustIntersectingElement(t,r,n,i,a);for(var l=0,f=t;l<f.length;l++){var d=f[l];visitNode(d)}return}e.Debug.assert(u<r)}}function extendToAffectedRange(t,r){var n=1;var i=r.span.start;for(var a=0;i>0&&a<=n;a++){var o=findNearestNodeStartingBeforeOrAtPosition(t,i);e.Debug.assert(o.pos<=i);var s=o.pos;i=Math.max(0,s-1)}var c=e.createTextSpanFromBounds(i,e.textSpanEnd(r.span));var u=r.newLength+(r.span.start-i);return e.createTextChangeRange(c,u)}function findNearestNodeStartingBeforeOrAtPosition(t,r){var n=t;var i;forEachChild(t,visit);if(i){var a=getLastDescendant(i);if(a.pos>n.pos){n=a}}return n;function getLastDescendant(t){while(true){var r=e.getLastChild(t);if(r){t=r}else{return t}}}function visit(t){if(e.nodeIsMissing(t)){return}if(t.pos<=r){if(t.pos>=n.pos){n=t}if(r<t.end){forEachChild(t,visit);return true}else{e.Debug.assert(t.end<=r);i=t}}else{e.Debug.assert(t.pos>r);return true}}}function checkChangeRange(t,r,n,i){var a=t.text;if(n){e.Debug.assert(a.length-n.span.length+n.newLength===r.length);if(i||e.Debug.shouldAssert(3)){var o=a.substr(0,n.span.start);var s=r.substr(0,n.span.start);e.Debug.assert(o===s);var c=a.substring(e.textSpanEnd(n.span),a.length);var u=r.substring(e.textSpanEnd(e.textChangeRangeNewSpan(n)),r.length);e.Debug.assert(c===u)}}}function createSyntaxCursor(t){var r=t.statements;var n=0;e.Debug.assert(n<r.length);var i=r[n];var a=-1;return{currentNode:function(t){if(t!==a){if(i&&i.end===t&&n<r.length-1){n++;i=r[n]}if(!i||i.pos!==t){findHighestListElementThatStartsAtPosition(t)}}a=t;e.Debug.assert(!i||i.pos===t);return i}};function findHighestListElementThatStartsAtPosition(e){r=undefined;n=-1;i=undefined;forEachChild(t,visitNode,visitArray);return;function visitNode(t){if(e>=t.pos&&e<t.end){forEachChild(t,visitNode,visitArray);return true}return false}function visitArray(t){if(e>=t.pos&&e<t.end){for(var a=0;a<t.length;a++){var o=t[a];if(o){if(o.pos===e){r=t;n=a;i=o;return true}else{if(o.pos<e&&e<o.end){forEachChild(o,visitNode,visitArray);return true}}}}}return false}}}var r;(function(e){e[e["Value"]=-1]="Value"})(r||(r={}))})(s||(s={}));function isDeclarationFileName(t){return e.fileExtensionIs(t,".d.ts")}e.isDeclarationFileName=isDeclarationFileName;function processCommentPragmas(t,r){var n=e.createScanner(t.languageVersion,false,0,r);var i=[];while(true){var a=n.scan();if(!e.isTrivia(a)){break}var o={kind:n.getToken(),pos:n.getTokenPos(),end:n.getTextPos()};var s=r.substring(o.pos,o.end);extractPragmas(i,o,s)}t.pragmas=e.createMap();for(var c=0,u=i;c<u.length;c++){var l=u[c];if(t.pragmas.has(l.name)){var f=t.pragmas.get(l.name);if(f instanceof Array){f.push(l.args)}else{t.pragmas.set(l.name,[f,l.args])}continue}t.pragmas.set(l.name,l.args)}}e.processCommentPragmas=processCommentPragmas;function processPragmasIntoFields(t,r){t.checkJsDirective=undefined;t.referencedFiles=[];t.typeReferenceDirectives=[];t.libReferenceDirectives=[];t.amdDependencies=[];t.hasNoDefaultLib=false;t.pragmas.forEach(function(n,i){switch(i){case"reference":{var a=t.referencedFiles;var o=t.typeReferenceDirectives;var s=t.libReferenceDirectives;e.forEach(e.toArray(n),function(n){if(n.arguments["no-default-lib"]){t.hasNoDefaultLib=true}else if(n.arguments.types){o.push({pos:n.arguments.types.pos,end:n.arguments.types.end,fileName:n.arguments.types.value})}else if(n.arguments.lib){s.push({pos:n.arguments.lib.pos,end:n.arguments.lib.end,fileName:n.arguments.lib.value})}else if(n.arguments.path){a.push({pos:n.arguments.path.pos,end:n.arguments.path.end,fileName:n.arguments.path.value})}else{r(n.range.pos,n.range.end-n.range.pos,e.Diagnostics.Invalid_reference_directive_syntax)}});break}case"amd-dependency":{t.amdDependencies=e.map(e.toArray(n),function(e){return{name:e.arguments.name,path:e.arguments.path}});break}case"amd-module":{if(n instanceof Array){for(var c=0,u=n;c<u.length;c++){var l=u[c];if(t.moduleName){r(l.range.pos,l.range.end-l.range.pos,e.Diagnostics.An_AMD_module_cannot_have_multiple_name_assignments)}t.moduleName=l.arguments.name}}else{t.moduleName=n.arguments.name}break}case"ts-nocheck":case"ts-check":{e.forEach(e.toArray(n),function(e){if(!t.checkJsDirective||e.range.pos>t.checkJsDirective.pos){t.checkJsDirective={enabled:i==="ts-check",end:e.range.end,pos:e.range.pos}}});break}case"jsx":return;default:e.Debug.fail("Unhandled pragma kind")}})}e.processPragmasIntoFields=processPragmasIntoFields;var c=e.createMap();function getNamedArgRegEx(e){if(c.has(e)){return c.get(e)}var t=new RegExp("(\\s"+e+"\\s*=\\s*)('|\")(.+?)\\2","im");c.set(e,t);return t}var u=/^\/\/\/\s*<(\S+)\s.*?\/>/im;var l=/^\/\/\/?\s*@(\S+)\s*(.*)\s*$/im;function extractPragmas(t,r,n){var i=r.kind===2&&u.exec(n);if(i){var a=i[1].toLowerCase();var o=e.commentPragmas[a];if(!o||!(o.kind&1)){return}if(o.args){var s={};for(var c=0,f=o.args;c<f.length;c++){var d=f[c];var p=getNamedArgRegEx(d.name);var g=p.exec(n);if(!g&&!d.optional){return}else if(g){if(d.captureSpan){var _=r.pos+g.index+g[1].length+g[2].length;s[d.name]={value:g[3],pos:_,end:_+g[3].length}}else{s[d.name]=g[3]}}}t.push({name:a,args:{arguments:s,range:r}})}else{t.push({name:a,args:{arguments:{},range:r}})}return}var m=r.kind===2&&l.exec(n);if(m){return addPragmaForMatch(t,r,2,m)}if(r.kind===3){var y=/\s*@(\S+)\s*(.*)\s*$/gim;var h=void 0;while(h=y.exec(n)){addPragmaForMatch(t,r,4,h)}}}function addPragmaForMatch(t,r,n,i){if(!i)return;var a=i[1].toLowerCase();var o=e.commentPragmas[a];if(!o||!(o.kind&n)){return}var s=i[2];var c=getNamedPragmaArguments(o,s);if(c==="fail")return;t.push({name:a,args:{arguments:c,range:r}});return}function getNamedPragmaArguments(t,r){if(!r)return{};if(!t.args)return{};var n=r.split(/\s+/);var i={};for(var a=0;a<t.args.length;a++){var o=t.args[a];if(!n[a]&&!o.optional){return"fail"}if(o.captureSpan){return e.Debug.fail("Capture spans not yet implemented for non-xml pragmas")}i[o.name]=n[a]}return i}function tagNamesAreEquivalent(e,t){if(e.kind!==t.kind){return false}if(e.kind===72){return e.escapedText===t.escapedText}if(e.kind===100){return true}return e.name.escapedText===t.name.escapedText&&tagNamesAreEquivalent(e.expression,t.expression)}e.tagNamesAreEquivalent=tagNamesAreEquivalent})(s||(s={}));var s;(function(e){e.compileOnSaveCommandLineOption={name:"compileOnSave",type:"boolean"};var t=[["es5","lib.es5.d.ts"],["es6","lib.es2015.d.ts"],["es2015","lib.es2015.d.ts"],["es7","lib.es2016.d.ts"],["es2016","lib.es2016.d.ts"],["es2017","lib.es2017.d.ts"],["es2018","lib.es2018.d.ts"],["esnext","lib.esnext.d.ts"],["dom","lib.dom.d.ts"],["dom.iterable","lib.dom.iterable.d.ts"],["webworker","lib.webworker.d.ts"],["webworker.importscripts","lib.webworker.importscripts.d.ts"],["scripthost","lib.scripthost.d.ts"],["es2015.core","lib.es2015.core.d.ts"],["es2015.collection","lib.es2015.collection.d.ts"],["es2015.generator","lib.es2015.generator.d.ts"],["es2015.iterable","lib.es2015.iterable.d.ts"],["es2015.promise","lib.es2015.promise.d.ts"],["es2015.proxy","lib.es2015.proxy.d.ts"],["es2015.reflect","lib.es2015.reflect.d.ts"],["es2015.symbol","lib.es2015.symbol.d.ts"],["es2015.symbol.wellknown","lib.es2015.symbol.wellknown.d.ts"],["es2016.array.include","lib.es2016.array.include.d.ts"],["es2017.object","lib.es2017.object.d.ts"],["es2017.sharedmemory","lib.es2017.sharedmemory.d.ts"],["es2017.string","lib.es2017.string.d.ts"],["es2017.intl","lib.es2017.intl.d.ts"],["es2017.typedarrays","lib.es2017.typedarrays.d.ts"],["es2018.intl","lib.es2018.intl.d.ts"],["es2018.promise","lib.es2018.promise.d.ts"],["es2018.regexp","lib.es2018.regexp.d.ts"],["esnext.array","lib.esnext.array.d.ts"],["esnext.symbol","lib.esnext.symbol.d.ts"],["esnext.asynciterable","lib.esnext.asynciterable.d.ts"],["esnext.intl","lib.esnext.intl.d.ts"],["esnext.bigint","lib.esnext.bigint.d.ts"]];e.libs=t.map(function(e){return e[0]});e.libMap=e.createMapFromEntries(t);e.commonOptionsWithBuild=[{name:"help",shortName:"h",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_this_message},{name:"help",shortName:"?",type:"boolean"},{name:"watch",shortName:"w",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Watch_input_files},{name:"preserveWatchOutput",type:"boolean",showInSimplifiedHelpView:false,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Whether_to_keep_outdated_console_output_in_watch_mode_instead_of_clearing_the_screen},{name:"listFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_files_part_of_the_compilation},{name:"listEmittedFiles",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Print_names_of_generated_files_part_of_the_compilation},{name:"pretty",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Stylize_errors_and_messages_using_color_and_context_experimental},{name:"traceResolution",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Enable_tracing_of_the_name_resolution_process},{name:"diagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_diagnostic_information},{name:"extendedDiagnostics",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Show_verbose_diagnostic_information}];e.optionDeclarations=e.commonOptionsWithBuild.concat([{name:"all",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_all_compiler_options},{name:"version",shortName:"v",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Print_the_compiler_s_version},{name:"init",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Initializes_a_TypeScript_project_and_creates_a_tsconfig_json_file},{name:"project",shortName:"p",type:"string",isFilePath:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,paramType:e.Diagnostics.FILE_OR_DIRECTORY,description:e.Diagnostics.Compile_the_project_given_the_path_to_its_configuration_file_or_to_a_folder_with_a_tsconfig_json},{name:"build",type:"boolean",shortName:"b",showInSimplifiedHelpView:true,category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_one_or_more_projects_and_their_dependencies_if_out_of_date},{name:"showConfig",type:"boolean",category:e.Diagnostics.Command_line_Options,isCommandLineOnly:true,description:e.Diagnostics.Print_the_final_configuration_instead_of_building},{name:"target",shortName:"t",type:e.createMapFromTemplate({es3:0,es5:1,es6:2,es2015:2,es2016:3,es2017:4,es2018:5,esnext:6}),affectsSourceFile:true,affectsModuleResolution:true,paramType:e.Diagnostics.VERSION,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_ECMAScript_target_version_Colon_ES3_default_ES5_ES2015_ES2016_ES2017_ES2018_or_ESNEXT},{name:"module",shortName:"m",type:e.createMapFromTemplate({none:e.ModuleKind.None,commonjs:e.ModuleKind.CommonJS,amd:e.ModuleKind.AMD,system:e.ModuleKind.System,umd:e.ModuleKind.UMD,es6:e.ModuleKind.ES2015,es2015:e.ModuleKind.ES2015,esnext:e.ModuleKind.ESNext}),affectsModuleResolution:true,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_module_code_generation_Colon_none_commonjs_amd_system_umd_es2015_or_ESNext},{name:"lib",type:"list",element:{name:"lib",type:e.libMap},affectsModuleResolution:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_library_files_to_be_included_in_the_compilation},{name:"allowJs",type:"boolean",affectsModuleResolution:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Allow_javascript_files_to_be_compiled},{name:"checkJs",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Report_errors_in_js_files},{name:"jsx",type:e.createMapFromTemplate({preserve:1,"react-native":3,react:2}),affectsSourceFile:true,paramType:e.Diagnostics.KIND,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_JSX_code_generation_Colon_preserve_react_native_or_react},{name:"declaration",shortName:"d",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_d_ts_file},{name:"declarationMap",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_a_sourcemap_for_each_corresponding_d_ts_file},{name:"emitDeclarationOnly",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Only_emit_d_ts_declaration_files},{name:"sourceMap",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Generates_corresponding_map_file},{name:"outFile",type:"string",isFilePath:true,paramType:e.Diagnostics.FILE,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Concatenate_and_emit_output_to_single_file},{name:"outDir",type:"string",isFilePath:true,paramType:e.Diagnostics.DIRECTORY,showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Redirect_output_structure_to_the_directory},{name:"rootDir",type:"string",isFilePath:true,paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Specify_the_root_directory_of_input_files_Use_to_control_the_output_directory_structure_with_outDir},{name:"composite",type:"boolean",isTSConfigOnly:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Enable_project_compilation},{name:"removeComments",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_comments_to_output},{name:"noEmit",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Do_not_emit_outputs},{name:"importHelpers",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Import_emit_helpers_from_tslib},{name:"downlevelIteration",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Provide_full_support_for_iterables_in_for_of_spread_and_destructuring_when_targeting_ES5_or_ES3},{name:"isolatedModules",type:"boolean",category:e.Diagnostics.Basic_Options,description:e.Diagnostics.Transpile_each_file_as_a_separate_module_similar_to_ts_transpileModule},{name:"strict",type:"boolean",showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_all_strict_type_checking_options},{name:"noImplicitAny",type:"boolean",affectsSemanticDiagnostics:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_expressions_and_declarations_with_an_implied_any_type},{name:"strictNullChecks",type:"boolean",affectsSemanticDiagnostics:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_null_checks},{name:"strictFunctionTypes",type:"boolean",affectsSemanticDiagnostics:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_function_types},{name:"strictBindCallApply",type:"boolean",strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_bind_call_and_apply_methods_on_functions},{name:"strictPropertyInitialization",type:"boolean",affectsSemanticDiagnostics:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Enable_strict_checking_of_property_initialization_in_classes},{name:"noImplicitThis",type:"boolean",affectsSemanticDiagnostics:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Raise_error_on_this_expressions_with_an_implied_any_type},{name:"alwaysStrict",type:"boolean",affectsSourceFile:true,strictFlag:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Strict_Type_Checking_Options,description:e.Diagnostics.Parse_in_strict_mode_and_emit_use_strict_for_each_source_file},{name:"noUnusedLocals",type:"boolean",affectsSemanticDiagnostics:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_locals},{name:"noUnusedParameters",type:"boolean",affectsSemanticDiagnostics:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_on_unused_parameters},{name:"noImplicitReturns",type:"boolean",affectsSemanticDiagnostics:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_error_when_not_all_code_paths_in_function_return_a_value},{name:"noFallthroughCasesInSwitch",type:"boolean",affectsBindDiagnostics:true,affectsSemanticDiagnostics:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Additional_Checks,description:e.Diagnostics.Report_errors_for_fallthrough_cases_in_switch_statement},{name:"moduleResolution",type:e.createMapFromTemplate({node:e.ModuleResolutionKind.NodeJs,classic:e.ModuleResolutionKind.Classic}),affectsModuleResolution:true,paramType:e.Diagnostics.STRATEGY,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Specify_module_resolution_strategy_Colon_node_Node_js_or_classic_TypeScript_pre_1_6},{name:"baseUrl",type:"string",affectsModuleResolution:true,isFilePath:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Base_directory_to_resolve_non_absolute_module_names},{name:"paths",type:"object",affectsModuleResolution:true,isTSConfigOnly:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.A_series_of_entries_which_re_map_imports_to_lookup_locations_relative_to_the_baseUrl},{name:"rootDirs",type:"list",isTSConfigOnly:true,element:{name:"rootDirs",type:"string",isFilePath:true},affectsModuleResolution:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_root_folders_whose_combined_content_represents_the_structure_of_the_project_at_runtime},{name:"typeRoots",type:"list",element:{name:"typeRoots",type:"string",isFilePath:true},affectsModuleResolution:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.List_of_folders_to_include_type_definitions_from},{name:"types",type:"list",element:{name:"types",type:"string"},affectsModuleResolution:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Type_declaration_files_to_be_included_in_compilation},{name:"allowSyntheticDefaultImports",type:"boolean",affectsSemanticDiagnostics:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Allow_default_imports_from_modules_with_no_default_export_This_does_not_affect_code_emit_just_typechecking},{name:"esModuleInterop",type:"boolean",affectsSemanticDiagnostics:true,showInSimplifiedHelpView:true,category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Enables_emit_interoperability_between_CommonJS_and_ES_Modules_via_creation_of_namespace_objects_for_all_imports_Implies_allowSyntheticDefaultImports},{name:"preserveSymlinks",type:"boolean",category:e.Diagnostics.Module_Resolution_Options,description:e.Diagnostics.Do_not_resolve_the_real_path_of_symlinks},{name:"sourceRoot",type:"string",paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_TypeScript_files_instead_of_source_locations},{name:"mapRoot",type:"string",paramType:e.Diagnostics.LOCATION,category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Specify_the_location_where_debugger_should_locate_map_files_instead_of_generated_locations},{name:"inlineSourceMap",type:"boolean",category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_a_single_file_with_source_maps_instead_of_having_a_separate_file},{name:"inlineSources",type:"boolean",category:e.Diagnostics.Source_Map_Options,description:e.Diagnostics.Emit_the_source_alongside_the_sourcemaps_within_a_single_file_requires_inlineSourceMap_or_sourceMap_to_be_set},{name:"experimentalDecorators",type:"boolean",category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_ES7_decorators},{name:"emitDecoratorMetadata",type:"boolean",category:e.Diagnostics.Experimental_Options,description:e.Diagnostics.Enables_experimental_support_for_emitting_type_metadata_for_decorators},{name:"jsxFactory",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_JSX_factory_function_to_use_when_targeting_react_JSX_emit_e_g_React_createElement_or_h},{name:"resolveJsonModule",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Include_modules_imported_with_json_extension},{name:"out",type:"string",isFilePath:false,category:e.Diagnostics.Advanced_Options,paramType:e.Diagnostics.FILE,description:e.Diagnostics.Deprecated_Use_outFile_instead_Concatenate_and_emit_output_to_single_file},{name:"reactNamespace",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_jsxFactory_instead_Specify_the_object_invoked_for_createElement_when_targeting_react_JSX_emit},{name:"skipDefaultLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Deprecated_Use_skipLibCheck_instead_Skip_type_checking_of_default_library_declaration_files},{name:"charset",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_character_set_of_the_input_files},{name:"emitBOM",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Emit_a_UTF_8_Byte_Order_Mark_BOM_in_the_beginning_of_output_files},{name:"locale",type:"string",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_locale_used_when_displaying_messages_to_the_user_e_g_en_us},{name:"newLine",type:e.createMapFromTemplate({crlf:0,lf:1}),paramType:e.Diagnostics.NEWLINE,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Specify_the_end_of_line_sequence_to_be_used_when_emitting_files_Colon_CRLF_dos_or_LF_unix},{name:"noErrorTruncation",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_truncate_error_messages},{name:"noLib",type:"boolean",affectsModuleResolution:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_include_the_default_library_file_lib_d_ts},{name:"noResolve",type:"boolean",affectsModuleResolution:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_add_triple_slash_references_or_imported_modules_to_the_list_of_compiled_files},{name:"stripInternal",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_declarations_for_code_that_has_an_internal_annotation},{name:"disableSizeLimit",type:"boolean",affectsSourceFile:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_size_limitations_on_JavaScript_projects},{name:"noImplicitUseStrict",type:"boolean",affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_use_strict_directives_in_module_output},{name:"noEmitHelpers",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_generate_custom_helper_functions_like_extends_in_compiled_output},{name:"noEmitOnError",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_emit_outputs_if_any_errors_were_reported},{name:"preserveConstEnums",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_erase_const_enum_declarations_in_generated_code},{name:"declarationDir",type:"string",isFilePath:true,paramType:e.Diagnostics.DIRECTORY,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Output_directory_for_generated_declaration_files},{name:"skipLibCheck",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Skip_type_checking_of_declaration_files},{name:"allowUnusedLabels",type:"boolean",affectsBindDiagnostics:true,affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unused_labels},{name:"allowUnreachableCode",type:"boolean",affectsBindDiagnostics:true,affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Do_not_report_errors_on_unreachable_code},{name:"suppressExcessPropertyErrors",type:"boolean",affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_excess_property_checks_for_object_literals},{name:"suppressImplicitAnyIndexErrors",type:"boolean",affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Suppress_noImplicitAny_errors_for_indexing_objects_lacking_index_signatures},{name:"forceConsistentCasingInFileNames",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disallow_inconsistently_cased_references_to_the_same_file},{name:"maxNodeModuleJsDepth",type:"number",affectsModuleResolution:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.The_maximum_dependency_depth_to_search_under_node_modules_and_load_JavaScript_files},{name:"noStrictGenericChecks",type:"boolean",affectsSemanticDiagnostics:true,category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Disable_strict_checking_of_generic_signatures_in_function_types},{name:"keyofStringsOnly",type:"boolean",category:e.Diagnostics.Advanced_Options,description:e.Diagnostics.Resolve_keyof_to_string_valued_property_names_only_no_numbers_or_symbols},{name:"plugins",type:"list",isTSConfigOnly:true,element:{name:"plugin",type:"object"},description:e.Diagnostics.List_of_language_service_plugins}]);e.semanticDiagnosticsOptionDeclarations=e.optionDeclarations.filter(function(e){return!!e.affectsSemanticDiagnostics});e.moduleResolutionOptionDeclarations=e.optionDeclarations.filter(function(e){return!!e.affectsModuleResolution});e.sourceFileAffectingCompilerOptions=e.optionDeclarations.filter(function(e){return!!e.affectsSourceFile||!!e.affectsModuleResolution||!!e.affectsBindDiagnostics});e.buildOpts=e.commonOptionsWithBuild.concat([{name:"verbose",shortName:"v",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Enable_verbose_logging,type:"boolean"},{name:"dry",shortName:"d",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Show_what_would_be_built_or_deleted_if_specified_with_clean,type:"boolean"},{name:"force",shortName:"f",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Build_all_projects_including_those_that_appear_to_be_up_to_date,type:"boolean"},{name:"clean",category:e.Diagnostics.Command_line_Options,description:e.Diagnostics.Delete_the_outputs_of_all_projects,type:"boolean"}]);e.typeAcquisitionDeclarations=[{name:"enableAutoDiscovery",type:"boolean"},{name:"enable",type:"boolean"},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}}];e.defaultInitCompilerOptions={module:e.ModuleKind.CommonJS,target:1,strict:true,esModuleInterop:true};var r;function convertEnableAutoDiscoveryToEnable(e){if(e&&e.enableAutoDiscovery!==undefined&&e.enable===undefined){return{enable:e.enableAutoDiscovery,include:e.include||[],exclude:e.exclude||[]}}return e}e.convertEnableAutoDiscoveryToEnable=convertEnableAutoDiscoveryToEnable;function getOptionNameMap(){return r||(r=createOptionNameMap(e.optionDeclarations))}function createOptionNameMap(t){var r=e.createMap();var n=e.createMap();e.forEach(t,function(e){r.set(e.name.toLowerCase(),e);if(e.shortName){n.set(e.shortName,e.name)}});return{optionNameMap:r,shortOptionNames:n}}e.createOptionNameMap=createOptionNameMap;function createCompilerDiagnosticForInvalidCustomType(t){return createDiagnosticForInvalidCustomType(t,e.createCompilerDiagnostic)}e.createCompilerDiagnosticForInvalidCustomType=createCompilerDiagnosticForInvalidCustomType;function createDiagnosticForInvalidCustomType(t,r){var n=e.arrayFrom(t.type.keys()).map(function(e){return"'"+e+"'"}).join(", ");return r(e.Diagnostics.Argument_for_0_option_must_be_Colon_1,"--"+t.name,n)}function parseCustomTypeOption(e,t,r){return convertJsonOptionOfCustomType(e,trimString(t||""),r)}e.parseCustomTypeOption=parseCustomTypeOption;function parseListTypeOption(t,r,n){if(r===void 0){r=""}r=trimString(r);if(e.startsWith(r,"-")){return undefined}if(r===""){return[]}var i=r.split(",");switch(t.element.type){case"number":return e.map(i,parseInt);case"string":return e.map(i,function(e){return e||""});default:return e.mapDefined(i,function(e){return parseCustomTypeOption(t.element,e,n)})}}e.parseListTypeOption=parseListTypeOption;function parseCommandLineWorker(t,r,n,i){var a=r[0],o=r[1];var s={};var c=[];var u=[];parseStrings(n);return{options:s,fileNames:c,errors:u};function parseStrings(r){var n=0;while(n<r.length){var i=r[n];n++;if(i.charCodeAt(0)===64){parseResponseFile(i.slice(1))}else if(i.charCodeAt(0)===45){var l=getOptionDeclarationFromName(t,i.slice(i.charCodeAt(1)===45?2:1),true);if(l){if(l.isTSConfigOnly){u.push(e.createCompilerDiagnostic(e.Diagnostics.Option_0_can_only_be_specified_in_tsconfig_json_file,l.name))}else{if(!r[n]&&l.type!=="boolean"){u.push(e.createCompilerDiagnostic(o,l.name))}switch(l.type){case"number":s[l.name]=parseInt(r[n]);n++;break;case"boolean":var f=r[n];s[l.name]=f!=="false";if(f==="false"||f==="true"){n++}break;case"string":s[l.name]=r[n]||"";n++;break;case"list":var d=parseListTypeOption(l,r[n],u);s[l.name]=d||[];if(d){n++}break;default:s[l.name]=parseCustomTypeOption(l,r[n],u);n++;break}}}else{u.push(e.createCompilerDiagnostic(a,i))}}else{c.push(i)}}}function parseResponseFile(t){var r=i?i(t):e.sys.readFile(t);if(!r){u.push(e.createCompilerDiagnostic(e.Diagnostics.File_0_not_found,t));return}var n=[];var a=0;while(true){while(a<r.length&&r.charCodeAt(a)<=32)a++;if(a>=r.length)break;var o=a;if(r.charCodeAt(o)===34){a++;while(a<r.length&&r.charCodeAt(a)!==34)a++;if(a<r.length){n.push(r.substring(o+1,a));a++}else{u.push(e.createCompilerDiagnostic(e.Diagnostics.Unterminated_quoted_string_in_response_file_0,t))}}else{while(r.charCodeAt(a)>32)a++;n.push(r.substring(o,a))}}parseStrings(n)}}function parseCommandLine(t,r){return parseCommandLineWorker(getOptionNameMap,[e.Diagnostics.Unknown_compiler_option_0,e.Diagnostics.Compiler_option_0_expects_an_argument],t,r)}e.parseCommandLine=parseCommandLine;function getOptionFromName(e,t){return getOptionDeclarationFromName(getOptionNameMap,e,t)}e.getOptionFromName=getOptionFromName;function getOptionDeclarationFromName(e,t,r){if(r===void 0){r=false}t=t.toLowerCase();var n=e(),i=n.optionNameMap,a=n.shortOptionNames;if(r){var o=a.get(t);if(o!==undefined){t=o}}return i.get(t)}function parseBuildCommand(t){var r;var n=function(){return r||(r=createOptionNameMap(e.buildOpts))};var i=parseCommandLineWorker(n,[e.Diagnostics.Unknown_build_option_0,e.Diagnostics.Build_option_0_requires_a_value_of_type_1],t),a=i.options,o=i.fileNames,s=i.errors;var c=a;if(o.length===0){o.push(".")}if(c.clean&&c.force){s.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","force"))}if(c.clean&&c.verbose){s.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","verbose"))}if(c.clean&&c.watch){s.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"clean","watch"))}if(c.watch&&c.dry){s.push(e.createCompilerDiagnostic(e.Diagnostics.Options_0_and_1_cannot_be_combined,"watch","dry"))}return{buildOptions:c,projects:o,errors:s}}e.parseBuildCommand=parseBuildCommand;function getDiagnosticText(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}var i=e.createCompilerDiagnostic.apply(undefined,arguments);return i.messageText}function printVersion(){e.sys.write(getDiagnosticText(e.Diagnostics.Version_0,e.version)+e.sys.newLine)}e.printVersion=printVersion;function printHelp(t,r){if(r===void 0){r=""}var n=[];var i=getDiagnosticText(e.Diagnostics.Syntax_Colon_0,"").length;var a=getDiagnosticText(e.Diagnostics.Examples_Colon_0,"").length;var o=Math.max(i,a);var s=makePadding(o-i);s+="tsc "+r+"["+getDiagnosticText(e.Diagnostics.options)+"] ["+getDiagnosticText(e.Diagnostics.file)+"...]";n.push(getDiagnosticText(e.Diagnostics.Syntax_Colon_0,s));n.push(e.sys.newLine+e.sys.newLine);var c=makePadding(o);n.push(getDiagnosticText(e.Diagnostics.Examples_Colon_0,makePadding(o-a)+"tsc hello.ts")+e.sys.newLine);n.push(c+"tsc --outFile file.js file.ts"+e.sys.newLine);n.push(c+"tsc @args.txt"+e.sys.newLine);n.push(c+"tsc --build tsconfig.json"+e.sys.newLine);n.push(e.sys.newLine);n.push(getDiagnosticText(e.Diagnostics.Options_Colon)+e.sys.newLine);o=0;var u=[];var l=[];var f=e.createMap();for(var d=0,p=t;d<p.length;d++){var g=p[d];if(!g.description){continue}var _=" ";if(g.shortName){_+="-"+g.shortName;_+=getParamType(g);_+=", "}_+="--"+g.name;_+=getParamType(g);u.push(_);var m=void 0;if(g.name==="lib"){m=getDiagnosticText(g.description);var y=g.element;var h=y.type;f.set(m,e.arrayFrom(h.keys()).map(function(e){return"'"+e+"'"}))}else{m=getDiagnosticText(g.description)}l.push(m);o=Math.max(_.length,o)}var v=" @<"+getDiagnosticText(e.Diagnostics.file)+">";u.push(v);l.push(getDiagnosticText(e.Diagnostics.Insert_command_line_options_and_files_from_a_file));o=Math.max(v.length,o);for(var T=0;T<u.length;T++){var S=u[T];var m=l[T];var b=f.get(m);n.push(S+makePadding(o-S.length+2)+m+e.sys.newLine);if(b){n.push(makePadding(o+4));for(var x=0,C=b;x<C.length;x++){var E=C[x];n.push(E+" ")}n.push(e.sys.newLine)}}for(var D=0,k=n;D<k.length;D++){var N=k[D];e.sys.write(N)}return;function getParamType(e){if(e.paramType!==undefined){return" "+getDiagnosticText(e.paramType)}return""}function makePadding(e){return Array(e+1).join(" ")}}e.printHelp=printHelp;function getParsedCommandLineOfConfigFile(t,r,n){var i;try{i=n.readFile(t)}catch(r){var a=e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r.message);n.onUnRecoverableConfigFileDiagnostic(a);return undefined}if(!i){var a=e.createCompilerDiagnostic(e.Diagnostics.File_0_not_found,t);n.onUnRecoverableConfigFileDiagnostic(a);return undefined}var o=e.parseJsonText(t,i);var s=n.getCurrentDirectory();o.path=e.toPath(t,s,e.createGetCanonicalFileName(n.useCaseSensitiveFileNames));o.resolvedPath=o.path;o.originalFileName=o.fileName;return parseJsonSourceFileConfigFileContent(o,n,e.getNormalizedAbsolutePath(e.getDirectoryPath(t),s),r,e.getNormalizedAbsolutePath(t,s))}e.getParsedCommandLineOfConfigFile=getParsedCommandLineOfConfigFile;function readConfigFile(t,r){var n=tryReadFile(t,r);return e.isString(n)?parseConfigFileTextToJson(t,n):{config:{},error:n}}e.readConfigFile=readConfigFile;function parseConfigFileTextToJson(t,r){var n=e.parseJsonText(t,r);return{config:convertToObject(n,n.parseDiagnostics),error:n.parseDiagnostics.length?n.parseDiagnostics[0]:undefined}}e.parseConfigFileTextToJson=parseConfigFileTextToJson;function readJsonConfigFile(t,r){var n=tryReadFile(t,r);return e.isString(n)?e.parseJsonText(t,n):{parseDiagnostics:[n]}}e.readJsonConfigFile=readJsonConfigFile;function tryReadFile(t,r){var n;try{n=r(t)}catch(r){return e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r.message)}return n===undefined?e.createCompilerDiagnostic(e.Diagnostics.The_specified_path_does_not_exist_Colon_0,t):n}function commandLineOptionsToMap(t){return e.arrayToMap(t,function(e){return e.name})}var i;function getTsconfigRootOptionsMap(){if(i===undefined){i={name:undefined,type:"object",elementOptions:commandLineOptionsToMap([{name:"compilerOptions",type:"object",elementOptions:commandLineOptionsToMap(e.optionDeclarations),extraKeyDiagnosticMessage:e.Diagnostics.Unknown_compiler_option_0},{name:"typingOptions",type:"object",elementOptions:commandLineOptionsToMap(e.typeAcquisitionDeclarations),extraKeyDiagnosticMessage:e.Diagnostics.Unknown_type_acquisition_option_0},{name:"typeAcquisition",type:"object",elementOptions:commandLineOptionsToMap(e.typeAcquisitionDeclarations),extraKeyDiagnosticMessage:e.Diagnostics.Unknown_type_acquisition_option_0},{name:"extends",type:"string"},{name:"references",type:"list",element:{name:"references",type:"object"}},{name:"files",type:"list",element:{name:"files",type:"string"}},{name:"include",type:"list",element:{name:"include",type:"string"}},{name:"exclude",type:"list",element:{name:"exclude",type:"string"}},e.compileOnSaveCommandLineOption])}}return i}function convertToObject(e,t){return convertToObjectWorker(e,t,true,undefined,undefined)}e.convertToObject=convertToObject;function convertToObjectWorker(t,r,n,i,a){if(!t.statements.length){return n?{}:undefined}return convertPropertyValueToJson(t.statements[0].expression,i);function isRootOptionMap(e){return i&&i.elementOptions===e}function convertObjectLiteralExpressionToJson(i,o,s,c){var u=n?{}:undefined;for(var l=0,f=i.properties;l<f.length;l++){var d=f[l];if(d.kind!==275){r.push(e.createDiagnosticForNodeInSourceFile(t,d,e.Diagnostics.Property_assignment_expected));continue}if(d.questionToken){r.push(e.createDiagnosticForNodeInSourceFile(t,d.questionToken,e.Diagnostics._0_can_only_be_used_in_a_ts_file,"?"))}if(!isDoubleQuotedString(d.name)){r.push(e.createDiagnosticForNodeInSourceFile(t,d.name,e.Diagnostics.String_literal_with_double_quotes_expected))}var p=e.getTextOfPropertyName(d.name);var g=p&&e.unescapeLeadingUnderscores(p);var _=g&&o?o.get(g):undefined;if(g&&s&&!_){r.push(e.createDiagnosticForNodeInSourceFile(t,d.name,s,g))}var m=convertPropertyValueToJson(d.initializer,_);if(typeof g!=="undefined"){if(n){u[g]=m}if(a&&(c||isRootOptionMap(o))){var y=isCompilerOptionsValue(_,m);if(c){if(y){a.onSetValidOptionKeyValueInParent(c,_,m)}}else if(isRootOptionMap(o)){if(y){a.onSetValidOptionKeyValueInRoot(g,d.name,m,d.initializer)}else if(!_){a.onSetUnknownOptionKeyValueInRoot(g,d.name,m,d.initializer)}}}}}return u}function convertArrayLiteralExpressionToJson(t,r){if(!n){return t.forEach(function(e){return convertPropertyValueToJson(e,r)})}return e.filter(t.map(function(e){return convertPropertyValueToJson(e,r)}),function(e){return e!==undefined})}function convertPropertyValueToJson(n,i){switch(n.kind){case 102:reportInvalidOptionValue(i&&i.type!=="boolean");return true;case 87:reportInvalidOptionValue(i&&i.type!=="boolean");return false;case 96:reportInvalidOptionValue(i&&i.name==="extends");return null;case 10:if(!isDoubleQuotedString(n)){r.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.String_literal_with_double_quotes_expected))}reportInvalidOptionValue(i&&(e.isString(i.type)&&i.type!=="string"));var a=n.text;if(i&&!e.isString(i.type)){var o=i;if(!o.type.has(a.toLowerCase())){r.push(createDiagnosticForInvalidCustomType(o,function(r,i,a){return e.createDiagnosticForNodeInSourceFile(t,n,r,i,a)}))}}return a;case 8:reportInvalidOptionValue(i&&i.type!=="number");return Number(n.text);case 202:if(n.operator!==39||n.operand.kind!==8){break}reportInvalidOptionValue(i&&i.type!=="number");return-Number(n.operand.text);case 188:reportInvalidOptionValue(i&&i.type!=="object");var s=n;if(i){var c=i,u=c.elementOptions,l=c.extraKeyDiagnosticMessage,f=c.name;return convertObjectLiteralExpressionToJson(s,u,l,f)}else{return convertObjectLiteralExpressionToJson(s,undefined,undefined,undefined)}case 187:reportInvalidOptionValue(i&&i.type!=="list");return convertArrayLiteralExpressionToJson(n.elements,i&&i.element)}if(i){reportInvalidOptionValue(true)}else{r.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Property_value_can_only_be_string_literal_numeric_literal_true_false_null_object_literal_or_array_literal))}return undefined;function reportInvalidOptionValue(a){if(a){r.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,i.name,getCompilerOptionValueTypeString(i)))}}}function isDoubleQuotedString(r){return e.isStringLiteral(r)&&e.isStringDoubleQuoted(r,t)}}e.convertToObjectWorker=convertToObjectWorker;function getCompilerOptionValueTypeString(t){return t.type==="list"?"Array":e.isString(t.type)?t.type:"string"}function isCompilerOptionsValue(t,r){if(t){if(isNullOrUndefined(r))return true;if(t.type==="list"){return e.isArray(r)}var n=e.isString(t.type)?t.type:"string";return typeof r===n}return false}function convertToTSConfig(t,r,i){var a=e.createGetCanonicalFileName(i.useCaseSensitiveFileNames);var o=e.map(e.filter(t.fileNames,!t.configFileSpecs||!t.configFileSpecs.validatedIncludeSpecs?function(e){return true}:matchesSpecs(r,t.configFileSpecs.validatedIncludeSpecs,t.configFileSpecs.validatedExcludeSpecs)),function(t){return e.getRelativePathFromFile(e.getNormalizedAbsolutePath(r,i.getCurrentDirectory()),e.getNormalizedAbsolutePath(t,i.getCurrentDirectory()),a)});var s=serializeCompilerOptions(t.options,{configFilePath:e.getNormalizedAbsolutePath(r,i.getCurrentDirectory()),useCaseSensitiveFileNames:i.useCaseSensitiveFileNames});var c=n({compilerOptions:n({},e.arrayFrom(s.entries()).reduce(function(e,t){var r;return n({},e,(r={},r[t[0]]=t[1],r))},{}),{showConfig:undefined,configFile:undefined,configFilePath:undefined,help:undefined,init:undefined,listFiles:undefined,listEmittedFiles:undefined,project:undefined}),references:e.map(t.projectReferences,function(e){return n({},e,{path:e.originalPath,originalPath:undefined})}),files:e.length(o)?o:undefined},t.configFileSpecs?{include:filterSameAsDefaultInclude(t.configFileSpecs.validatedIncludeSpecs),exclude:t.configFileSpecs.validatedExcludeSpecs}:{},{compilerOnSave:!!t.compileOnSave?true:undefined});return c}e.convertToTSConfig=convertToTSConfig;function filterSameAsDefaultInclude(t){if(!e.length(t))return undefined;if(e.length(t)!==1)return t;if(t[0]==="**/*")return undefined;return t}function matchesSpecs(t,r,n){if(!r)return function(e){return true};var i=e.getFileMatcherPatterns(t,n,r,e.sys.useCaseSensitiveFileNames,e.sys.getCurrentDirectory());var a=i.excludePattern&&e.getRegexFromPattern(i.excludePattern,e.sys.useCaseSensitiveFileNames);var o=i.includeFilePattern&&e.getRegexFromPattern(i.includeFilePattern,e.sys.useCaseSensitiveFileNames);if(o){if(a){return function(e){return!(o.test(e)&&!a.test(e))}}return function(e){return!o.test(e)}}if(a){return function(e){return a.test(e)}}return function(e){return true}}function getCustomTypeMapOfCommandLineOption(e){if(e.type==="string"||e.type==="number"||e.type==="boolean"){return undefined}else if(e.type==="list"){return getCustomTypeMapOfCommandLineOption(e.element)}else{return e.type}}function getNameOfCompilerOptionValue(t,r){return e.forEachEntry(r,function(e,r){if(e===t){return r}})}function serializeCompilerOptions(t,r){var n=e.createMap();var i=getOptionNameMap().optionNameMap;var a=r&&e.createGetCanonicalFileName(r.useCaseSensitiveFileNames);var o=function(o){if(e.hasProperty(t,o)){if(i.has(o)&&i.get(o).category===e.Diagnostics.Command_line_Options){return"continue"}var s=t[o];var c=i.get(o.toLowerCase());if(c){var u=getCustomTypeMapOfCommandLineOption(c);if(!u){if(r&&c.isFilePath){n.set(o,e.getRelativePathFromFile(r.configFilePath,e.getNormalizedAbsolutePath(s,e.getDirectoryPath(r.configFilePath)),a))}else{n.set(o,s)}}else{if(c.type==="list"){n.set(o,s.map(function(e){return getNameOfCompilerOptionValue(e,u)}))}else{n.set(o,getNameOfCompilerOptionValue(s,u))}}}}};for(var s in t){o(s)}return n}function generateTSConfig(t,r,n){var i=e.extend(t,e.defaultInitCompilerOptions);var a=serializeCompilerOptions(i);return writeConfigurations();function getDefaultValueForOption(e){switch(e.type){case"number":return 1;case"boolean":return true;case"string":return e.isFilePath?"./":"";case"list":return[];case"object":return{};default:return e.type.keys().next().value}}function makePadding(e){return Array(e+1).join(" ")}function isAllowedOption(t){var r=t.category,n=t.name;return r!==undefined&&r!==e.Diagnostics.Command_line_Options&&(r!==e.Diagnostics.Advanced_Options||a.has(n))}function writeConfigurations(){var t=e.createMultiMap();for(var i=0,o=e.optionDeclarations;i<o.length;i++){var s=o[i];var c=s.category;if(isAllowedOption(s)){t.add(e.getLocaleSpecificMessage(c),s)}}var u=0;var l=0;var f=[];var d=[];t.forEach(function(t,r){if(f.length!==0){f.push("");d.push("")}f.push("/* "+r+" */");d.push("");for(var n=0,i=t;n<i.length;n++){var o=i[n];var s=void 0;if(a.has(o.name)){s='"'+o.name+'": '+JSON.stringify(a.get(o.name))+((l+=1)===a.size?"":",")}else{s='// "'+o.name+'": '+JSON.stringify(getDefaultValueForOption(o))+","}f.push(s);d.push("/* "+(o.description&&e.getLocaleSpecificMessage(o.description)||o.name)+" */");u=Math.max(s.length,u)}});var p=makePadding(2);var g=[];g.push("{");g.push(p+'"compilerOptions": {');for(var _=0;_<f.length;_++){var m=f[_];var y=d[_];g.push(m&&""+p+p+m+(y&&makePadding(u-m.length+2)+y))}if(r.length){g.push(p+"},");g.push(p+'"files": [');for(var _=0;_<r.length;_++){g.push(""+p+p+JSON.stringify(r[_])+(_===r.length-1?"":","))}g.push(p+"]")}else{g.push(p+"}")}g.push("}");return g.join(n)}}e.generateTSConfig=generateTSConfig;function parseJsonConfigFileContent(e,t,r,n,i,a,o){return parseJsonConfigFileContentWorker(e,undefined,t,r,n,i,a,o)}e.parseJsonConfigFileContent=parseJsonConfigFileContent;function parseJsonSourceFileConfigFileContent(e,t,r,n,i,a,o){return parseJsonConfigFileContentWorker(undefined,e,t,r,n,i,a,o)}e.parseJsonSourceFileConfigFileContent=parseJsonSourceFileConfigFileContent;function setConfigFileInOptions(e,t){if(t){Object.defineProperty(e,"configFile",{enumerable:false,writable:false,value:t})}}e.setConfigFileInOptions=setConfigFileInOptions;function isNullOrUndefined(e){return e===undefined||e===null}function directoryOfCombinedPath(t,r){return e.getDirectoryPath(e.getNormalizedAbsolutePath(t,r))}function parseJsonConfigFileContentWorker(t,r,n,i,a,o,s,c){if(a===void 0){a={}}if(s===void 0){s=[]}if(c===void 0){c=[]}e.Debug.assert(t===undefined&&r!==undefined||t!==undefined&&r===undefined);var u=[];var l=parseConfig(t,r,n,i,o,s,u);var f=l.raw;var d=e.extend(a,l.options||{});d.configFilePath=o&&e.normalizeSlashes(o);setConfigFileInOptions(d,r);var p;var g=getFileNames(),_=g.fileNames,m=g.wildcardDirectories,y=g.spec;return{options:d,fileNames:_,projectReferences:p,typeAcquisition:l.typeAcquisition||getDefaultTypeAcquisition(),raw:f,errors:u,wildcardDirectories:m,compileOnSave:!!f.compileOnSave,configFileSpecs:y};function getFileNames(){var t;if(e.hasProperty(f,"files")&&!isNullOrUndefined(f.files)){if(e.isArray(f.files)){t=f.files;var a=e.hasProperty(f,"references")&&!isNullOrUndefined(f.references);var l=!a||f.references.length===0;var g=e.hasProperty(f,"extends");if(t.length===0&&l&&!g){if(r){var _=o||"tsconfig.json";var m=e.Diagnostics.The_files_list_in_config_file_0_is_empty;var y=e.firstDefined(e.getTsConfigPropArray(r,"files"),function(e){return e.initializer});var h=y?e.createDiagnosticForNodeInSourceFile(r,y,m,_):e.createCompilerDiagnostic(m,_);u.push(h)}else{createCompilerDiagnosticOnlyIfJson(e.Diagnostics.The_files_list_in_config_file_0_is_empty,o||"tsconfig.json")}}}else{createCompilerDiagnosticOnlyIfJson(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"files","Array")}}var v;if(e.hasProperty(f,"include")&&!isNullOrUndefined(f.include)){if(e.isArray(f.include)){v=f.include}else{createCompilerDiagnosticOnlyIfJson(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"include","Array")}}var T;if(e.hasProperty(f,"exclude")&&!isNullOrUndefined(f.exclude)){if(e.isArray(f.exclude)){T=f.exclude}else{createCompilerDiagnosticOnlyIfJson(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"exclude","Array")}}else if(f.compilerOptions){var S=f.compilerOptions.outDir;var b=f.compilerOptions.declarationDir;if(S||b){T=[S,b].filter(function(e){return!!e})}}if(t===undefined&&v===undefined){v=["**/*"]}var x=matchFileNames(t,v,T,o?directoryOfCombinedPath(o,i):i,d,n,u,c,r);if(shouldReportNoInputFiles(x,canJsonReportNoInutFiles(f),s)){u.push(getErrorForNoInputFiles(x.spec,o))}if(e.hasProperty(f,"references")&&!isNullOrUndefined(f.references)){if(e.isArray(f.references)){for(var C=0,E=f.references;C<E.length;C++){var D=E[C];if(typeof D.path!=="string"){createCompilerDiagnosticOnlyIfJson(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"reference.path","string")}else{(p||(p=[])).push({path:e.getNormalizedAbsolutePath(D.path,i),originalPath:D.path,prepend:D.prepend,circular:D.circular})}}}else{createCompilerDiagnosticOnlyIfJson(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"references","Array")}}return x}function createCompilerDiagnosticOnlyIfJson(t,n,i){if(!r){u.push(e.createCompilerDiagnostic(t,n,i))}}}function isErrorNoInputFiles(t){return t.code===e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2.code}function getErrorForNoInputFiles(t,r){var n=t.includeSpecs,i=t.excludeSpecs;return e.createCompilerDiagnostic(e.Diagnostics.No_inputs_were_found_in_config_file_0_Specified_include_paths_were_1_and_exclude_paths_were_2,r||"tsconfig.json",JSON.stringify(n||[]),JSON.stringify(i||[]))}function shouldReportNoInputFiles(e,t,r){return e.fileNames.length===0&&t&&(!r||r.length===0)}function canJsonReportNoInutFiles(t){return!e.hasProperty(t,"files")&&!e.hasProperty(t,"references")}e.canJsonReportNoInutFiles=canJsonReportNoInutFiles;function updateErrorForNoInputFiles(t,r,n,i,a){var o=i.length;if(shouldReportNoInputFiles(t,a)){i.push(getErrorForNoInputFiles(n,r))}else{e.filterMutate(i,function(e){return!isErrorNoInputFiles(e)})}return o!==i.length}e.updateErrorForNoInputFiles=updateErrorForNoInputFiles;function isSuccessfulParsedTsconfig(e){return!!e.options}function parseConfig(t,r,n,i,a,o,s){i=e.normalizeSlashes(i);var c=e.getNormalizedAbsolutePath(a||"",i);if(o.indexOf(c)>=0){s.push(e.createCompilerDiagnostic(e.Diagnostics.Circularity_detected_while_resolving_configuration_Colon_0,o.concat([c]).join(" -> ")));return{raw:t||convertToObject(r,s)}}var u=t?parseOwnConfigOfJson(t,n,i,a,s):parseOwnConfigOfJsonSourceFile(r,n,i,a,s);if(u.extendedConfigPath){o=o.concat([c]);var l=getExtendedConfig(r,u.extendedConfigPath,n,i,o,s);if(l&&isSuccessfulParsedTsconfig(l)){var f=l.raw;var d=u.raw;var p=function(e){var t=d[e]||f[e];if(t){d[e]=t}};p("include");p("exclude");p("files");if(d.compileOnSave===undefined){d.compileOnSave=f.compileOnSave}u.options=e.assign({},l.options,u.options)}}return u}function parseOwnConfigOfJson(t,r,n,i,a){if(e.hasProperty(t,"excludes")){a.push(e.createCompilerDiagnostic(e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude))}var o=convertCompilerOptionsFromJsonWorker(t.compilerOptions,n,a,i);var s=convertTypeAcquisitionFromJsonWorker(t.typeAcquisition||t.typingOptions,n,a,i);t.compileOnSave=convertCompileOnSaveOptionFromJson(t,n,a);var c;if(t.extends){if(!e.isString(t.extends)){a.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,"extends","string"))}else{var u=i?directoryOfCombinedPath(i,n):n;c=getExtendsConfigPath(t.extends,r,u,a,e.createCompilerDiagnostic)}}return{raw:t,options:o,typeAcquisition:s,extendedConfigPath:c}}function parseOwnConfigOfJsonSourceFile(t,r,n,i,a){var o=getDefaultCompilerOptions(i);var s,c;var u;var l={onSetValidOptionKeyValueInParent:function(t,r,a){e.Debug.assert(t==="compilerOptions"||t==="typeAcquisition"||t==="typingOptions");var u=t==="compilerOptions"?o:t==="typeAcquisition"?s||(s=getDefaultTypeAcquisition(i)):c||(c=getDefaultTypeAcquisition(i));u[r.name]=normalizeOptionValue(r,n,a)},onSetValidOptionKeyValueInRoot:function(o,s,c,l){switch(o){case"extends":var f=i?directoryOfCombinedPath(i,n):n;u=getExtendsConfigPath(c,r,f,a,function(r,n){return e.createDiagnosticForNodeInSourceFile(t,l,r,n)});return}},onSetUnknownOptionKeyValueInRoot:function(r,n,i,o){if(r==="excludes"){a.push(e.createDiagnosticForNodeInSourceFile(t,n,e.Diagnostics.Unknown_option_excludes_Did_you_mean_exclude))}}};var f=convertToObjectWorker(t,a,true,getTsconfigRootOptionsMap(),l);if(!s){if(c){s=c.enableAutoDiscovery!==undefined?{enable:c.enableAutoDiscovery,include:c.include,exclude:c.exclude}:c}else{s=getDefaultTypeAcquisition(i)}}return{raw:f,options:o,typeAcquisition:s,extendedConfigPath:u}}function getExtendsConfigPath(t,r,n,i,a){t=e.normalizeSlashes(t);if(e.isRootedDiskPath(t)||e.startsWith(t,"./")||e.startsWith(t,"../")){var o=e.getNormalizedAbsolutePath(t,n);if(!r.fileExists(o)&&!e.endsWith(o,".json")){o=o+".json";if(!r.fileExists(o)){i.push(a(e.Diagnostics.File_0_does_not_exist,t));return undefined}}return o}var s=e.nodeModuleNameResolver(t,e.combinePaths(n,"tsconfig.json"),{moduleResolution:e.ModuleResolutionKind.NodeJs},r,undefined,undefined,true);if(s.resolvedModule){return s.resolvedModule.resolvedFileName}i.push(a(e.Diagnostics.File_0_does_not_exist,t));return undefined}function getExtendedConfig(t,r,n,i,a,o){var s;var c=readJsonConfigFile(r,function(e){return n.readFile(e)});if(t){t.extendedSourceFiles=[c.fileName]}if(c.parseDiagnostics.length){o.push.apply(o,c.parseDiagnostics);return undefined}var u=e.getDirectoryPath(r);var l=parseConfig(undefined,c,n,u,e.getBaseFileName(r),a,o);if(t&&c.extendedSourceFiles){(s=t.extendedSourceFiles).push.apply(s,c.extendedSourceFiles)}if(isSuccessfulParsedTsconfig(l)){var f=e.convertToRelativePath(u,i,e.identity);var d=function(t){return e.isRootedDiskPath(t)?t:e.combinePaths(f,t)};var p=function(t){if(g[t]){g[t]=e.map(g[t],d)}};var g=l.raw;p("include");p("exclude");p("files")}return l}function convertCompileOnSaveOptionFromJson(t,r,n){if(!e.hasProperty(t,e.compileOnSaveCommandLineOption.name)){return false}var i=convertJsonOption(e.compileOnSaveCommandLineOption,t.compileOnSave,r,n);return typeof i==="boolean"&&i}function convertCompilerOptionsFromJson(e,t,r){var n=[];var i=convertCompilerOptionsFromJsonWorker(e,t,n,r);return{options:i,errors:n}}e.convertCompilerOptionsFromJson=convertCompilerOptionsFromJson;function convertTypeAcquisitionFromJson(e,t,r){var n=[];var i=convertTypeAcquisitionFromJsonWorker(e,t,n,r);return{options:i,errors:n}}e.convertTypeAcquisitionFromJson=convertTypeAcquisitionFromJson;function getDefaultCompilerOptions(t){var r=t&&e.getBaseFileName(t)==="jsconfig.json"?{allowJs:true,maxNodeModuleJsDepth:2,allowSyntheticDefaultImports:true,skipLibCheck:true,noEmit:true}:{};return r}function convertCompilerOptionsFromJsonWorker(t,r,n,i){var a=getDefaultCompilerOptions(i);convertOptionsFromJson(e.optionDeclarations,t,r,a,e.Diagnostics.Unknown_compiler_option_0,n);if(i){a.configFilePath=e.normalizeSlashes(i)}return a}function getDefaultTypeAcquisition(t){return{enable:!!t&&e.getBaseFileName(t)==="jsconfig.json",include:[],exclude:[]}}function convertTypeAcquisitionFromJsonWorker(t,r,n,i){var a=getDefaultTypeAcquisition(i);var o=convertEnableAutoDiscoveryToEnable(t);convertOptionsFromJson(e.typeAcquisitionDeclarations,o,r,a,e.Diagnostics.Unknown_type_acquisition_option_0,n);return a}function convertOptionsFromJson(t,r,n,i,a,o){if(!r){return}var s=commandLineOptionsToMap(t);for(var c in r){var u=s.get(c);if(u){i[u.name]=convertJsonOption(u,r[c],n,o)}else{o.push(e.createCompilerDiagnostic(a,c))}}}function convertJsonOption(t,r,n,i){if(isCompilerOptionsValue(t,r)){var a=t.type;if(a==="list"&&e.isArray(r)){return convertJsonOptionOfListType(t,r,n,i)}else if(!e.isString(a)){return convertJsonOptionOfCustomType(t,r,i)}return normalizeNonListOptionValue(t,n,r)}else{i.push(e.createCompilerDiagnostic(e.Diagnostics.Compiler_option_0_requires_a_value_of_type_1,t.name,getCompilerOptionValueTypeString(t)))}}function normalizeOptionValue(t,r,n){if(isNullOrUndefined(n))return undefined;if(t.type==="list"){var i=t;if(i.element.isFilePath||!e.isString(i.element.type)){return e.filter(e.map(n,function(e){return normalizeOptionValue(i.element,r,e)}),function(e){return!!e})}return n}else if(!e.isString(t.type)){return t.type.get(e.isString(n)?n.toLowerCase():n)}return normalizeNonListOptionValue(t,r,n)}function normalizeNonListOptionValue(t,r,n){if(t.isFilePath){n=e.normalizePath(e.combinePaths(r,n));if(n===""){n="."}}return n}function convertJsonOptionOfCustomType(e,t,r){if(isNullOrUndefined(t))return undefined;var n=t.toLowerCase();var i=e.type.get(n);if(i!==undefined){return i}else{r.push(createCompilerDiagnosticForInvalidCustomType(e))}}function convertJsonOptionOfListType(t,r,n,i){return e.filter(e.map(r,function(e){return convertJsonOption(t.element,e,n,i)}),function(e){return!!e})}function trimString(e){return typeof e.trim==="function"?e.trim():e.replace(/^[\s]+|[\s]+$/g,"")}var a=/(^|\/)\*\*\/?$/;var o=/(^|\/)\*\*\/(.*\/)?\.\.($|\/)/;var s=/\/[^/]*?[*?][^/]*\//;var c=/^[^*?]*(?=\/[^/]*[*?])/;function matchFileNames(t,r,n,i,a,o,s,c,u){i=e.normalizePath(i);var l,f;if(r){l=validateSpecs(r,s,false,u,"include")}if(n){f=validateSpecs(n,s,true,u,"exclude")}var d=getWildcardDirectories(l,f,i,o.useCaseSensitiveFileNames);var p={filesSpecs:t,includeSpecs:r,excludeSpecs:n,validatedIncludeSpecs:l,validatedExcludeSpecs:f,wildcardDirectories:d};return getFileNamesFromConfigSpecs(p,i,a,o,c)}function getFileNamesFromConfigSpecs(t,r,n,i,a){if(a===void 0){a=[]}r=e.normalizePath(r);var o=i.useCaseSensitiveFileNames?e.identity:e.toLowerCase;var s=e.createMap();var c=e.createMap();var u=e.createMap();var l=t.filesSpecs,f=t.validatedIncludeSpecs,d=t.validatedExcludeSpecs,p=t.wildcardDirectories;var g=e.getSupportedExtensions(n,a);var _=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(n,g);if(l){for(var m=0,y=l;m<y.length;m++){var h=y[m];var v=e.getNormalizedAbsolutePath(h,r);s.set(o(v),v)}}var T;if(f&&f.length>0){var S=function(t){if(e.fileExtensionIs(t,".json")){if(!T){var n=f.filter(function(t){return e.endsWith(t,".json")});var a=e.map(e.getRegularExpressionsForWildcards(n,r,"files"),function(e){return"^"+e+"$"});T=a?a.map(function(t){return e.getRegexFromPattern(t,i.useCaseSensitiveFileNames)}):e.emptyArray}var l=e.findIndex(T,function(e){return e.test(t)});if(l!==-1){var d=o(t);if(!s.has(d)&&!u.has(d)){u.set(d,t)}}return"continue"}if(hasFileWithHigherPriorityExtension(t,s,c,g,o)){return"continue"}removeWildcardFilesWithLowerPriorityExtension(t,c,g,o);var p=o(t);if(!s.has(p)&&!c.has(p)){c.set(p,t)}};for(var b=0,x=i.readDirectory(r,_,d,f,undefined);b<x.length;b++){var v=x[b];S(v)}}var C=e.arrayFrom(s.values());var E=e.arrayFrom(c.values());return{fileNames:C.concat(E,e.arrayFrom(u.values())),wildcardDirectories:p,spec:t}}e.getFileNamesFromConfigSpecs=getFileNamesFromConfigSpecs;function validateSpecs(t,r,n,i,a){return t.filter(function(e){var t=specToDiagnostic(e,n);if(t!==undefined){r.push(createDiagnostic(t,e))}return t===undefined});function createDiagnostic(t,r){var n=e.getTsConfigPropArrayElementValue(i,a,r);return n?e.createDiagnosticForNodeInSourceFile(i,n,t,r):e.createCompilerDiagnostic(t,r)}}function specToDiagnostic(t,r){if(!r&&a.test(t)){return e.Diagnostics.File_specification_cannot_end_in_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0}else if(o.test(t)){return e.Diagnostics.File_specification_cannot_contain_a_parent_directory_that_appears_after_a_recursive_directory_wildcard_Asterisk_Asterisk_Colon_0}}function getWildcardDirectories(t,r,n,i){var a=e.getRegularExpressionForWildcard(r,n,"exclude");var o=a&&new RegExp(a,i?"":"i");var s={};if(t!==undefined){var c=[];for(var u=0,l=t;u<l.length;u++){var f=l[u];var d=e.normalizePath(e.combinePaths(n,f));if(o&&o.test(d)){continue}var p=getWildcardDirectoryFromSpec(d,i);if(p){var g=p.key,_=p.flags;var m=s[g];if(m===undefined||m<_){s[g]=_;if(_===1){c.push(g)}}}}for(var g in s){if(e.hasProperty(s,g)){for(var y=0,h=c;y<h.length;y++){var v=h[y];if(g!==v&&e.containsPath(v,g,n,!i)){delete s[g]}}}}}return s}function getWildcardDirectoryFromSpec(t,r){var n=c.exec(t);if(n){return{key:r?n[0]:n[0].toLowerCase(),flags:s.test(t)?1:0}}if(e.isImplicitGlob(t)){return{key:t,flags:1}}return undefined}function hasFileWithHigherPriorityExtension(t,r,n,i,a){var o=e.getExtensionPriority(t,i);var s=e.adjustExtensionPriority(o,i);for(var c=0;c<s;c++){var u=i[c];var l=a(e.changeExtension(t,u));if(r.has(l)||n.has(l)){return true}}return false}function removeWildcardFilesWithLowerPriorityExtension(t,r,n,i){var a=e.getExtensionPriority(t,n);var o=e.getNextLowestExtensionPriority(a,n);for(var s=o;s<n.length;s++){var c=n[s];var u=i(e.changeExtension(t,c));r.delete(u)}}function convertCompilerOptionsForTelemetry(e){var t={};for(var r in e){if(e.hasOwnProperty(r)){var n=getOptionFromName(r);if(n!==undefined){t[r]=getOptionValueWithEmptyStrings(e[r],n)}}}return t}e.convertCompilerOptionsForTelemetry=convertCompilerOptionsForTelemetry;function getOptionValueWithEmptyStrings(t,r){switch(r.type){case"object":return"";case"string":return"";case"number":return typeof t==="number"?t:"";case"boolean":return typeof t==="boolean"?t:"";case"list":var n=r.element;return e.isArray(t)?t.map(function(e){return getOptionValueWithEmptyStrings(e,n)}):"";default:return e.forEachEntry(r.type,function(e,r){if(e===t){return r}})}}})(s||(s={}));var s;(function(e){function trace(t){t.trace(e.formatMessage.apply(undefined,arguments))}e.trace=trace;function isTraceEnabled(e,t){return!!e.traceResolution&&t.trace!==undefined}e.isTraceEnabled=isTraceEnabled;function withPackageId(e,t){return t&&{path:t.path,extension:t.ext,packageId:e}}function noPackageId(e){return withPackageId(undefined,e)}function removeIgnoredPackageId(t){if(t){e.Debug.assert(t.packageId===undefined);return{path:t.path,ext:t.extension}}}var t;(function(e){e[e["TypeScript"]=0]="TypeScript";e[e["JavaScript"]=1]="JavaScript";e[e["Json"]=2]="Json";e[e["TSConfig"]=3]="TSConfig";e[e["DtsOnly"]=4]="DtsOnly"})(t||(t={}));function resolvedTypeScriptOnly(t){if(!t){return undefined}e.Debug.assert(e.extensionIsTS(t.extension));return{fileName:t.path,packageId:t.packageId}}function createResolvedModuleWithFailedLookupLocations(e,t,r){return{resolvedModule:e&&{resolvedFileName:e.path,originalPath:e.originalPath===true?undefined:e.originalPath,extension:e.extension,isExternalLibraryImport:t,packageId:e.packageId},failedLookupLocations:r}}function readPackageJsonField(t,r,n,i){if(!e.hasProperty(t,r)){if(i.traceEnabled){trace(i.host,e.Diagnostics.package_json_does_not_have_a_0_field,r)}return}var a=t[r];if(typeof a!==n||a===null){if(i.traceEnabled){trace(i.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,r,n,a===null?"null":typeof a)}return}return a}function readPackageJsonPathField(t,r,n,i){var a=readPackageJsonField(t,r,"string",i);if(a===undefined)return;var o=e.normalizePath(e.combinePaths(n,a));if(i.traceEnabled){trace(i.host,e.Diagnostics.package_json_has_0_field_1_that_references_2,r,a,o)}return o}function readPackageJsonTypesFields(e,t,r){return readPackageJsonPathField(e,"typings",t,r)||readPackageJsonPathField(e,"types",t,r)}function readPackageJsonTSConfigField(e,t,r){return readPackageJsonPathField(e,"tsconfig",t,r)}function readPackageJsonMainField(e,t,r){return readPackageJsonPathField(e,"main",t,r)}function readPackageJsonTypesVersionsField(t,r){var n=readPackageJsonField(t,"typesVersions","object",r);if(n===undefined)return;if(r.traceEnabled){trace(r.host,e.Diagnostics.package_json_has_a_typesVersions_field_with_version_specific_path_mappings)}return n}function readPackageJsonTypesVersionPaths(t,r){var n=readPackageJsonTypesVersionsField(t,r);if(n===undefined)return;if(r.traceEnabled){for(var i in n){if(e.hasProperty(n,i)&&!e.VersionRange.tryParse(i)){trace(r.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_is_not_a_valid_semver_range,i)}}}var a=getPackageJsonTypesVersionsPaths(n);if(!a){if(r.traceEnabled){trace(r.host,e.Diagnostics.package_json_does_not_have_a_typesVersions_entry_that_matches_version_0,e.versionMajorMinor)}return}var o=a.version,s=a.paths;if(typeof s!=="object"){if(r.traceEnabled){trace(r.host,e.Diagnostics.Expected_type_of_0_field_in_package_json_to_be_1_got_2,"typesVersions['"+o+"']","object",typeof s)}return}return a}var r;function getPackageJsonTypesVersionsPaths(t){if(!r)r=new e.Version(e.version);for(var n in t){if(!e.hasProperty(t,n))continue;var i=e.VersionRange.tryParse(n);if(i===undefined){continue}if(i.test(r)){return{version:n,paths:t[n]}}}}e.getPackageJsonTypesVersionsPaths=getPackageJsonTypesVersionsPaths;function getEffectiveTypeRoots(t,r){if(t.typeRoots){return t.typeRoots}var n;if(t.configFilePath){n=e.getDirectoryPath(t.configFilePath)}else if(r.getCurrentDirectory){n=r.getCurrentDirectory()}if(n!==undefined){return getDefaultTypeRoots(n,r)}}e.getEffectiveTypeRoots=getEffectiveTypeRoots;function getDefaultTypeRoots(t,r){if(!r.directoryExists){return[e.combinePaths(t,i)]}var n;e.forEachAncestorDirectory(e.normalizePath(t),function(t){var a=e.combinePaths(t,i);if(r.directoryExists(a)){(n||(n=[])).push(a)}return undefined});return n}var i=e.combinePaths("node_modules","@types");function resolveTypeReferenceDirective(r,n,i,a,o){var s=isTraceEnabled(i,a);if(o){i=o.commandLine.options}var c=[];var u={compilerOptions:i,host:a,traceEnabled:s,failedLookupLocations:c};var l=getEffectiveTypeRoots(i,a);if(s){if(n===undefined){if(l===undefined){trace(a,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_not_set,r)}else{trace(a,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_not_set_root_directory_1,r,l)}}else{if(l===undefined){trace(a,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_not_set,r,n)}else{trace(a,e.Diagnostics.Resolving_type_reference_directive_0_containing_file_1_root_directory_2,r,n,l)}}if(o){trace(a,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,o.sourceFile.fileName)}}var f=primaryLookup();var d=true;if(!f){f=secondaryLookup();d=false}var p;if(f){var g=f.fileName,_=f.packageId;var m=i.preserveSymlinks?g:realPath(g,a,s);if(s){trace(a,e.Diagnostics.Type_reference_directive_0_was_successfully_resolved_to_1_primary_Colon_2,r,m,d)}p={primary:d,resolvedFileName:m,packageId:_,isExternalLibraryImport:pathContainsNodeModules(g)}}return{resolvedTypeReferenceDirective:p,failedLookupLocations:c};function primaryLookup(){if(l&&l.length){if(s){trace(a,e.Diagnostics.Resolving_with_primary_search_path_0,l.join(", "))}return e.firstDefined(l,function(n){var i=e.combinePaths(n,r);var o=e.getDirectoryPath(i);var c=e.directoryProbablyExists(o,a);if(!c&&s){trace(a,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,o)}return resolvedTypeScriptOnly(loadNodeModuleFromDirectory(t.DtsOnly,i,!c,u))})}else{if(s){trace(a,e.Diagnostics.Root_directory_cannot_be_determined_skipping_primary_search_paths)}}}function secondaryLookup(){var i=n&&e.getDirectoryPath(n);if(i!==undefined){if(s){trace(a,e.Diagnostics.Looking_up_in_node_modules_folder_initial_location_0,i)}var o=void 0;if(!e.isExternalModuleNameRelative(r)){var c=loadModuleFromNearestNodeModulesDirectory(t.DtsOnly,r,i,u,undefined,undefined);o=c&&c.value}else{var l=e.normalizePathAndParts(e.combinePaths(i,r)).path;o=nodeLoadModuleByRelativeName(t.DtsOnly,l,false,u,true)}var f=resolvedTypeScriptOnly(o);if(!f&&s){trace(a,e.Diagnostics.Type_reference_directive_0_was_not_resolved,r)}return f}else{if(s){trace(a,e.Diagnostics.Containing_file_is_not_specified_and_root_directory_cannot_be_determined_skipping_lookup_in_node_modules_folder)}}}}e.resolveTypeReferenceDirective=resolveTypeReferenceDirective;function getAutomaticTypeDirectiveNames(t,r){if(t.types){return t.types}var n=[];if(r.directoryExists&&r.getDirectories){var i=getEffectiveTypeRoots(t,r);if(i){for(var a=0,o=i;a<o.length;a++){var s=o[a];if(r.directoryExists(s)){for(var c=0,u=r.getDirectories(s);c<u.length;c++){var l=u[c];var f=e.normalizePath(l);var d=e.combinePaths(s,f,"package.json");var p=r.fileExists(d)&&e.readJson(d,r).typings===null;if(!p){var g=e.getBaseFileName(f);if(g.charCodeAt(0)!==46){n.push(g)}}}}}}}return n}e.getAutomaticTypeDirectiveNames=getAutomaticTypeDirectiveNames;function createModuleResolutionCache(e,t){return createModuleResolutionCacheWithMaps(createCacheWithRedirects(),createCacheWithRedirects(),e,t)}e.createModuleResolutionCache=createModuleResolutionCache;function createCacheWithRedirects(){var t=e.createMap();var r=e.createMap();return{ownMap:t,redirectsMap:r,getOrCreateMapOfCacheRedirects:getOrCreateMapOfCacheRedirects,clear:clear};function getOrCreateMapOfCacheRedirects(n){if(!n){return t}var i=n.sourceFile.path;var a=r.get(i);if(!a){a=e.createMap();r.set(i,a)}return a}function clear(){t.clear();r.clear()}}e.createCacheWithRedirects=createCacheWithRedirects;function createModuleResolutionCacheWithMaps(t,r,n,i){return{getOrCreateCacheForDirectory:getOrCreateCacheForDirectory,getOrCreateCacheForModuleName:getOrCreateCacheForModuleName};function getOrCreateCacheForDirectory(r,a){var o=e.toPath(r,n,i);return getOrCreateCache(t,a,o,e.createMap)}function getOrCreateCacheForModuleName(t,n){e.Debug.assert(!e.isExternalModuleNameRelative(t));return getOrCreateCache(r,n,t,createPerModuleNameCache)}function getOrCreateCache(e,t,r,n){var i=e.getOrCreateMapOfCacheRedirects(t);var a=i.get(r);if(!a){a=n();i.set(r,a)}return a}function createPerModuleNameCache(){var t=e.createMap();return{get:get,set:set};function get(r){return t.get(e.toPath(r,n,i))}function set(r,a){var o=e.toPath(r,n,i);if(t.has(o)){return}t.set(o,a);var s=a.resolvedModule&&(a.resolvedModule.originalPath||a.resolvedModule.resolvedFileName);var c=s&&getCommonPrefix(o,s);var u=o;while(u!==c){var l=e.getDirectoryPath(u);if(l===u||t.has(l)){break}t.set(l,a);u=l}}function getCommonPrefix(t,r){var a=e.toPath(e.getDirectoryPath(r),n,i);var o=0;var s=Math.min(t.length,a.length);while(o<s&&t.charCodeAt(o)===a.charCodeAt(o)){o++}if(o===t.length&&(a.length===o||a[o]===e.directorySeparator)){return t}var c=e.getRootLength(t);if(o<c){return undefined}var u=t.lastIndexOf(e.directorySeparator,o-1);if(u===-1){return undefined}return t.substr(0,Math.max(u,c))}}}e.createModuleResolutionCacheWithMaps=createModuleResolutionCacheWithMaps;function resolveModuleNameFromCache(t,r,n){var i=e.getDirectoryPath(r);var a=n&&n.getOrCreateCacheForDirectory(i);return a&&a.get(t)}e.resolveModuleNameFromCache=resolveModuleNameFromCache;function resolveModuleName(t,r,n,i,a,o){var s=isTraceEnabled(n,i);if(o){n=o.commandLine.options}if(s){trace(i,e.Diagnostics.Resolving_module_0_from_1,t,r);if(o){trace(i,e.Diagnostics.Using_compiler_options_of_project_reference_redirect_0,o.sourceFile.fileName)}}var c=e.getDirectoryPath(r);var u=a&&a.getOrCreateCacheForDirectory(c,o);var l=u&&u.get(t);if(l){if(s){trace(i,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,t,c)}}else{var f=n.moduleResolution;if(f===undefined){f=e.getEmitModuleKind(n)===e.ModuleKind.CommonJS?e.ModuleResolutionKind.NodeJs:e.ModuleResolutionKind.Classic;if(s){trace(i,e.Diagnostics.Module_resolution_kind_is_not_specified_using_0,e.ModuleResolutionKind[f])}}else{if(s){trace(i,e.Diagnostics.Explicitly_specified_module_resolution_kind_Colon_0,e.ModuleResolutionKind[f])}}switch(f){case e.ModuleResolutionKind.NodeJs:l=nodeModuleNameResolver(t,r,n,i,a,o);break;case e.ModuleResolutionKind.Classic:l=classicNameResolver(t,r,n,i,a,o);break;default:return e.Debug.fail("Unexpected moduleResolution: "+f)}if(u){u.set(t,l);if(!e.isExternalModuleNameRelative(t)){a.getOrCreateCacheForModuleName(t,o).set(c,l)}}}if(s){if(l.resolvedModule){trace(i,e.Diagnostics.Module_name_0_was_successfully_resolved_to_1,t,l.resolvedModule.resolvedFileName)}else{trace(i,e.Diagnostics.Module_name_0_was_not_resolved,t)}}return l}e.resolveModuleName=resolveModuleName;function tryLoadModuleUsingOptionalResolutionSettings(t,r,n,i,a){var o=tryLoadModuleUsingPathsIfEligible(t,r,i,a);if(o)return o.value;if(!e.isExternalModuleNameRelative(r)){return tryLoadModuleUsingBaseUrl(t,r,i,a)}else{return tryLoadModuleUsingRootDirs(t,r,n,i,a)}}function tryLoadModuleUsingPathsIfEligible(t,r,n,i){var a=i.compilerOptions,o=a.baseUrl,s=a.paths;if(o&&s&&!e.pathIsRelative(r)){if(i.traceEnabled){trace(i.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,o,r);trace(i.host,e.Diagnostics.paths_option_is_specified_looking_for_a_pattern_to_match_module_name_0,r)}return tryLoadModuleUsingPaths(t,r,o,s,n,false,i)}}function tryLoadModuleUsingRootDirs(t,r,n,i,a){if(!a.compilerOptions.rootDirs){return undefined}if(a.traceEnabled){trace(a.host,e.Diagnostics.rootDirs_option_is_set_using_it_to_resolve_relative_module_name_0,r)}var o=e.normalizePath(e.combinePaths(n,r));var s;var c;for(var u=0,l=a.compilerOptions.rootDirs;u<l.length;u++){var f=l[u];var d=e.normalizePath(f);if(!e.endsWith(d,e.directorySeparator)){d+=e.directorySeparator}var p=e.startsWith(o,d)&&(c===undefined||c.length<d.length);if(a.traceEnabled){trace(a.host,e.Diagnostics.Checking_if_0_is_the_longest_matching_prefix_for_1_2,d,o,p)}if(p){c=d;s=f}}if(c){if(a.traceEnabled){trace(a.host,e.Diagnostics.Longest_matching_prefix_for_0_is_1,o,c)}var g=o.substr(c.length);if(a.traceEnabled){trace(a.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,c,o)}var _=i(t,o,!e.directoryProbablyExists(n,a.host),a);if(_){return _}if(a.traceEnabled){trace(a.host,e.Diagnostics.Trying_other_entries_in_rootDirs)}for(var m=0,y=a.compilerOptions.rootDirs;m<y.length;m++){var f=y[m];if(f===s){continue}var h=e.combinePaths(e.normalizePath(f),g);if(a.traceEnabled){trace(a.host,e.Diagnostics.Loading_0_from_the_root_dir_1_candidate_location_2,g,f,h)}var v=e.getDirectoryPath(h);var T=i(t,h,!e.directoryProbablyExists(v,a.host),a);if(T){return T}}if(a.traceEnabled){trace(a.host,e.Diagnostics.Module_resolution_using_rootDirs_has_failed)}}return undefined}function tryLoadModuleUsingBaseUrl(t,r,n,i){var a=i.compilerOptions.baseUrl;if(!a){return undefined}if(i.traceEnabled){trace(i.host,e.Diagnostics.baseUrl_option_is_set_to_0_using_this_value_to_resolve_non_relative_module_name_1,a,r)}var o=e.normalizePath(e.combinePaths(a,r));if(i.traceEnabled){trace(i.host,e.Diagnostics.Resolving_module_name_0_relative_to_base_url_1_2,r,a,o)}return n(t,o,!e.directoryProbablyExists(e.getDirectoryPath(o),i.host),i)}function resolveJSModule(e,t,r){var n=tryResolveJSModuleWorker(e,t,r),i=n.resolvedModule,a=n.failedLookupLocations;if(!i){throw new Error("Could not resolve JS module '"+e+"' starting at '"+t+"'. Looked in: "+a.join(", "))}return i.resolvedFileName}e.resolveJSModule=resolveJSModule;function tryResolveJSModule(e,t,r){var n=tryResolveJSModuleWorker(e,t,r).resolvedModule;return n&&n.resolvedFileName}e.tryResolveJSModule=tryResolveJSModule;var a=[t.JavaScript];var o=[t.TypeScript,t.JavaScript];var s=o.concat([t.Json]);var c=[t.TSConfig];function tryResolveJSModuleWorker(t,r,n){return nodeModuleNameResolverWorker(t,r,{moduleResolution:e.ModuleResolutionKind.NodeJs,allowJs:true},n,undefined,a,undefined)}function nodeModuleNameResolver(t,r,n,i,a,u,l){return nodeModuleNameResolverWorker(t,e.getDirectoryPath(r),n,i,a,l?c:n.resolveJsonModule?s:o,u)}e.nodeModuleNameResolver=nodeModuleNameResolver;function nodeModuleNameResolverWorker(r,i,a,o,s,c,u){var l=isTraceEnabled(a,o);var f=[];var d={compilerOptions:a,host:o,traceEnabled:l,failedLookupLocations:f};var p=e.forEach(c,function(e){return tryResolve(e)});if(p&&p.value){var g=p.value,_=g.resolved,m=g.isExternalLibraryImport;return createResolvedModuleWithFailedLookupLocations(_,m,f)}return{resolvedModule:undefined,failedLookupLocations:f};function tryResolve(c){var f=function(e,t,r,n){return nodeLoadModuleByRelativeName(e,t,r,n,true)};var p=tryLoadModuleUsingOptionalResolutionSettings(c,r,i,f,d);if(p){return toSearchResult({resolved:p,isExternalLibraryImport:pathContainsNodeModules(p.path)})}if(!e.isExternalModuleNameRelative(r)){if(l){trace(o,e.Diagnostics.Loading_module_0_from_node_modules_folder_target_file_type_1,r,t[c])}var g=loadModuleFromNearestNodeModulesDirectory(c,r,i,d,s,u);if(!g)return undefined;var _=g.value;if(!a.preserveSymlinks&&_&&!_.originalPath){var m=realPath(_.path,o,l);var y=m===_.path?undefined:_.path;_=n({},_,{path:m,originalPath:y})}return{value:_&&{resolved:_,isExternalLibraryImport:true}}}else{var h=e.normalizePathAndParts(e.combinePaths(i,r)),v=h.path,T=h.parts;var S=nodeLoadModuleByRelativeName(c,v,false,d,true);return S&&toSearchResult({resolved:S,isExternalLibraryImport:e.contains(T,"node_modules")})}}}function realPath(t,r,n){if(!r.realpath){return t}var i=e.normalizePath(r.realpath(t));if(n){trace(r,e.Diagnostics.Resolving_real_path_for_0_result_1,t,i)}e.Debug.assert(r.fileExists(i),t+" linked to nonexistent file "+i);return i}function nodeLoadModuleByRelativeName(r,n,i,a,o){if(a.traceEnabled){trace(a.host,e.Diagnostics.Loading_module_as_file_Slash_folder_candidate_module_location_0_target_file_type_1,n,t[r])}if(!e.hasTrailingDirectorySeparator(n)){if(!i){var s=e.getDirectoryPath(n);if(!e.directoryProbablyExists(s,a.host)){if(a.traceEnabled){trace(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,s)}i=true}}var c=loadModuleFromFile(r,n,i,a);if(c){var u=o?parseNodeModuleFromPath(c):undefined;var l=u&&getPackageJsonInfo(u.packageDirectory,u.subModuleName,false,a);var f=l&&l.packageId;return withPackageId(f,c)}}if(!i){var d=e.directoryProbablyExists(n,a.host);if(!d){if(a.traceEnabled){trace(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,n)}i=true}}return loadNodeModuleFromDirectory(r,n,i,a,o)}e.nodeModulesPathPart="/node_modules/";function pathContainsNodeModules(t){return e.stringContains(t,e.nodeModulesPathPart)}e.pathContainsNodeModules=pathContainsNodeModules;function parseNodeModuleFromPath(t){var r=e.normalizePath(t.path);var n=r.lastIndexOf(e.nodeModulesPathPart);if(n===-1){return undefined}var i=n+e.nodeModulesPathPart.length;var a=moveToNextDirectorySeparatorIfAvailable(r,i);if(r.charCodeAt(i)===64){a=moveToNextDirectorySeparatorIfAvailable(r,a)}var o=r.slice(0,a);var s=e.removeExtension(r.slice(a+1),t.ext)+".d.ts";return{packageDirectory:o,subModuleName:s}}function moveToNextDirectorySeparatorIfAvailable(t,r){var n=t.indexOf(e.directorySeparator,r+1);return n===-1?r:n}function addExtensionAndIndex(t){if(t===""){return"index.d.ts"}if(e.endsWith(t,".d.ts")){return t}if(t==="index"||e.endsWith(t,"/index")){return t+".d.ts"}return t+"/index.d.ts"}function loadModuleFromFileNoPackageId(e,t,r,n){return noPackageId(loadModuleFromFile(e,t,r,n))}function loadModuleFromFile(r,n,i,a){if(r===t.Json||r===t.TSConfig){var o=e.tryRemoveExtension(n,".json");return o===undefined&&r===t.Json?undefined:tryAddingExtensions(o||n,r,i,a)}var s=tryAddingExtensions(n,r,i,a);if(s){return s}if(e.hasJSFileExtension(n)){var c=e.removeFileExtension(n);if(a.traceEnabled){var u=n.substring(c.length);trace(a.host,e.Diagnostics.File_name_0_has_a_1_extension_stripping_it,n,u)}return tryAddingExtensions(c,r,i,a)}}function tryAddingExtensions(r,n,i,a){if(!i){var o=e.getDirectoryPath(r);if(o){i=!e.directoryProbablyExists(o,a.host)}}switch(n){case t.DtsOnly:return tryExtension(".d.ts");case t.TypeScript:return tryExtension(".ts")||tryExtension(".tsx")||tryExtension(".d.ts");case t.JavaScript:return tryExtension(".js")||tryExtension(".jsx");case t.TSConfig:case t.Json:return tryExtension(".json")}function tryExtension(e){var t=tryFile(r+e,i,a);return t===undefined?undefined:{path:t,ext:e}}}function tryFile(t,r,n){if(!r){if(n.host.fileExists(t)){if(n.traceEnabled){trace(n.host,e.Diagnostics.File_0_exist_use_it_as_a_name_resolution_result,t)}return t}else{if(n.traceEnabled){trace(n.host,e.Diagnostics.File_0_does_not_exist,t)}}}n.failedLookupLocations.push(t);return undefined}function loadNodeModuleFromDirectory(e,t,r,n,i){if(i===void 0){i=true}var a=i?getPackageJsonInfo(t,"",r,n):undefined;var o=a&&a.packageId;var s=a&&a.packageJsonContent;var c=s&&readPackageJsonTypesVersionPaths(s,n);return withPackageId(o,loadNodeModuleFromDirectoryWorker(e,t,r,n,s,c))}function getPackageJsonInfo(t,r,n,i){var a=i.host,o=i.traceEnabled;var s=!n&&e.directoryProbablyExists(t,a);var c=e.combinePaths(t,"package.json");if(s&&a.fileExists(c)){var u=e.readJson(c,a);if(r===""){var l=readPackageJsonTypesFields(u,t,i);if(typeof l==="string"){r=addExtensionAndIndex(l.substring(t.length+1))}else{var f=readPackageJsonMainField(u,t,i);if(typeof f==="string"&&f.length>t.length){var d=f.substring(t.length+1);r=(e.forEach(e.supportedJSExtensions,function(t){return e.tryRemoveExtension(d,t)})||d)+".d.ts"}else{r="index.d.ts"}}}if(!e.endsWith(r,".d.ts")){r=addExtensionAndIndex(r)}var p=readPackageJsonTypesVersionPaths(u,i);var g=typeof u.name==="string"&&typeof u.version==="string"?{name:u.name,subModuleName:r,version:u.version}:undefined;if(o){if(g){trace(a,e.Diagnostics.Found_package_json_at_0_Package_ID_is_1,c,e.packageIdToString(g))}else{trace(a,e.Diagnostics.Found_package_json_at_0,c)}}return{packageJsonContent:u,packageId:g,versionPaths:p}}else{if(s&&o){trace(a,e.Diagnostics.File_0_does_not_exist,c)}i.failedLookupLocations.push(c)}}function loadNodeModuleFromDirectoryWorker(r,n,i,a,o,s){var c;if(o){switch(r){case t.JavaScript:case t.Json:c=readPackageJsonMainField(o,n,a);break;case t.TypeScript:c=readPackageJsonTypesFields(o,n,a)||readPackageJsonMainField(o,n,a);break;case t.DtsOnly:c=readPackageJsonTypesFields(o,n,a);break;case t.TSConfig:c=readPackageJsonTSConfigField(o,n,a);break;default:return e.Debug.assertNever(r)}}var u=function(r,n,i,a){var o=tryFile(n,i,a);if(o){var s=resolvedIfExtensionMatches(r,o);if(s){return noPackageId(s)}if(a.traceEnabled){trace(a.host,e.Diagnostics.File_0_has_an_unsupported_extension_so_skipping_it,o)}}var c=r===t.DtsOnly?t.TypeScript:r;return nodeLoadModuleByRelativeName(c,n,i,a,false)};var l=c?!e.directoryProbablyExists(e.getDirectoryPath(c),a.host):undefined;var f=i||!e.directoryProbablyExists(n,a.host);var d=e.combinePaths(n,r===t.TSConfig?"tsconfig":"index");if(s&&(!c||e.containsPath(n,c))){var p=e.getRelativePathFromDirectory(n,c||d,false);if(a.traceEnabled){trace(a.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,s.version,e.version,p)}var g=tryLoadModuleUsingPaths(r,p,n,s.paths,u,l||f,a);if(g){return removeIgnoredPackageId(g.value)}}var _=c&&removeIgnoredPackageId(u(r,c,l,a));if(_)return _;return loadModuleFromFile(r,d,f,a)}function resolvedIfExtensionMatches(t,r){var n=e.tryGetExtensionFromPath(r);return n!==undefined&&extensionIsOk(t,n)?{path:r,ext:n}:undefined}function extensionIsOk(e,r){switch(e){case t.JavaScript:return r===".js"||r===".jsx";case t.TSConfig:case t.Json:return r===".json";case t.TypeScript:return r===".ts"||r===".tsx"||r===".d.ts";case t.DtsOnly:return r===".d.ts"}}function parsePackageName(t){var r=t.indexOf(e.directorySeparator);if(t[0]==="@"){r=t.indexOf(e.directorySeparator,r+1)}return r===-1?{packageName:t,rest:""}:{packageName:t.slice(0,r),rest:t.slice(r+1)}}e.parsePackageName=parsePackageName;function loadModuleFromNearestNodeModulesDirectory(e,t,r,n,i,a){return loadModuleFromNearestNodeModulesDirectoryWorker(e,t,r,n,false,i,a)}function loadModuleFromNearestNodeModulesDirectoryTypesScope(e,r,n){return loadModuleFromNearestNodeModulesDirectoryWorker(t.DtsOnly,e,r,n,true,undefined,undefined)}function loadModuleFromNearestNodeModulesDirectoryWorker(t,r,n,i,a,o,s){var c=o&&o.getOrCreateCacheForModuleName(r,s);return e.forEachAncestorDirectory(e.normalizeSlashes(n),function(n){if(e.getBaseFileName(n)!=="node_modules"){var o=tryFindNonRelativeModuleNameInCache(c,r,n,i);if(o){return o}return toSearchResult(loadModuleFromImmediateNodeModulesDirectory(t,r,n,i,a))}})}function loadModuleFromImmediateNodeModulesDirectory(r,n,i,a,o){var s=e.combinePaths(i,"node_modules");var c=e.directoryProbablyExists(s,a.host);if(!c&&a.traceEnabled){trace(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,s)}var u=o?undefined:loadModuleFromSpecificNodeModulesDirectory(r,n,s,c,a);if(u){return u}if(r===t.TypeScript||r===t.DtsOnly){var l=e.combinePaths(s,"@types");var f=c;if(c&&!e.directoryProbablyExists(l,a.host)){if(a.traceEnabled){trace(a.host,e.Diagnostics.Directory_0_does_not_exist_skipping_all_lookups_in_it,l)}f=false}return loadModuleFromSpecificNodeModulesDirectory(t.DtsOnly,mangleScopedPackageNameWithTrace(n,a),l,f,a)}}function loadModuleFromSpecificNodeModulesDirectory(t,r,n,i,a){var o=e.normalizePath(e.combinePaths(n,r));var s;var c;var u;var l=getPackageJsonInfo(o,"",!i,a);if(l){s=l.packageJsonContent,c=l.packageId,u=l.versionPaths;var f=loadModuleFromFile(t,o,!i,a);if(f){return noPackageId(f)}var d=loadNodeModuleFromDirectoryWorker(t,o,!i,a,s,u);return withPackageId(c,d)}var p=function(e,t,r,n){var i=loadModuleFromFile(e,t,r,n)||loadNodeModuleFromDirectoryWorker(e,t,r,n,s,u);return withPackageId(c,i)};var g=parsePackageName(r),_=g.packageName,m=g.rest;if(m!==""){var y=e.combinePaths(n,_);var h=getPackageJsonInfo(y,m,!i,a);if(h)c=h.packageId,u=h.versionPaths;if(u){if(a.traceEnabled){trace(a.host,e.Diagnostics.package_json_has_a_typesVersions_entry_0_that_matches_compiler_version_1_looking_for_a_pattern_to_match_module_name_2,u.version,e.version,m)}var v=i&&e.directoryProbablyExists(y,a.host);var T=tryLoadModuleUsingPaths(t,m,y,u.paths,p,!v,a);if(T){return T.value}}}return p(t,o,!i,a)}function tryLoadModuleUsingPaths(t,r,n,i,a,o,s){var c=e.matchPatternOrExact(e.getOwnKeys(i),r);if(c){var u=e.isString(c)?undefined:e.matchedText(c,r);var l=e.isString(c)?c:e.patternText(c);if(s.traceEnabled){trace(s.host,e.Diagnostics.Module_name_0_matched_pattern_1,r,l)}var f=e.forEach(i[l],function(r){var i=u?r.replace("*",u):r;var c=e.normalizePath(e.combinePaths(n,i));if(s.traceEnabled){trace(s.host,e.Diagnostics.Trying_substitution_0_candidate_module_location_Colon_1,r,i)}var l=e.tryGetExtensionFromPath(c);if(l!==undefined){var f=tryFile(c,o,s);if(f!==undefined){return noPackageId({path:f,ext:l})}}return a(t,c,o||!e.directoryProbablyExists(e.getDirectoryPath(c),s.host),s)});return{value:f}}}var u="__";function mangleScopedPackageNameWithTrace(t,r){var n=mangleScopedPackageName(t);if(r.traceEnabled&&n!==t){trace(r.host,e.Diagnostics.Scoped_package_detected_looking_in_0,n)}return n}function getTypesPackageName(e){return"@types/"+mangleScopedPackageName(e)}e.getTypesPackageName=getTypesPackageName;function mangleScopedPackageName(t){if(e.startsWith(t,"@")){var r=t.replace(e.directorySeparator,u);if(r!==t){return r.slice(1)}}return t}e.mangleScopedPackageName=mangleScopedPackageName;function getPackageNameFromTypesPackageName(t){var r=e.removePrefix(t,"@types/");if(r!==t){return unmangleScopedPackageName(r)}return t}e.getPackageNameFromTypesPackageName=getPackageNameFromTypesPackageName;function unmangleScopedPackageName(t){return e.stringContains(t,u)?"@"+t.replace(u,e.directorySeparator):t}e.unmangleScopedPackageName=unmangleScopedPackageName;function tryFindNonRelativeModuleNameInCache(t,r,n,i){var a;var o=t&&t.get(n);if(o){if(i.traceEnabled){trace(i.host,e.Diagnostics.Resolution_for_module_0_was_found_in_cache_from_location_1,r,n)}(a=i.failedLookupLocations).push.apply(a,o.failedLookupLocations);return{value:o.resolvedModule&&{path:o.resolvedModule.resolvedFileName,originalPath:o.resolvedModule.originalPath||true,extension:o.resolvedModule.extension,packageId:o.resolvedModule.packageId}}}}function classicNameResolver(r,n,i,a,o,s){var c=isTraceEnabled(i,a);var u=[];var l={compilerOptions:i,host:a,traceEnabled:c,failedLookupLocations:u};var f=e.getDirectoryPath(n);var d=tryResolve(t.TypeScript)||tryResolve(t.JavaScript);return createResolvedModuleWithFailedLookupLocations(d&&d.value,false,u);function tryResolve(n){var i=tryLoadModuleUsingOptionalResolutionSettings(n,r,f,loadModuleFromFileNoPackageId,l);if(i){return{value:i}}if(!e.isExternalModuleNameRelative(r)){var a=o&&o.getOrCreateCacheForModuleName(r,s);var c=e.forEachAncestorDirectory(f,function(t){var i=tryFindNonRelativeModuleNameInCache(a,r,t,l);if(i){return i}var o=e.normalizePath(e.combinePaths(t,r));return toSearchResult(loadModuleFromFileNoPackageId(n,o,false,l))});if(c){return c}if(n===t.TypeScript){return loadModuleFromNearestNodeModulesDirectoryTypesScope(r,f,l)}}else{var u=e.normalizePath(e.combinePaths(f,r));return toSearchResult(loadModuleFromFileNoPackageId(n,u,false,l))}}}e.classicNameResolver=classicNameResolver;function loadModuleFromGlobalCache(r,n,i,a,o){var s=isTraceEnabled(i,a);if(s){trace(a,e.Diagnostics.Auto_discovery_for_typings_is_enabled_in_project_0_Running_extra_resolution_pass_for_module_1_using_cache_location_2,n,r,o)}var c=[];var u={compilerOptions:i,host:a,traceEnabled:s,failedLookupLocations:c};var l=loadModuleFromImmediateNodeModulesDirectory(t.DtsOnly,r,o,u,false);return createResolvedModuleWithFailedLookupLocations(l,true,c)}e.loadModuleFromGlobalCache=loadModuleFromGlobalCache;function toSearchResult(e){return e!==undefined?{value:e}:undefined}})(s||(s={}));var s;(function(e){var t;(function(e){e[e["NonInstantiated"]=0]="NonInstantiated";e[e["Instantiated"]=1]="Instantiated";e[e["ConstEnumOnly"]=2]="ConstEnumOnly"})(t=e.ModuleInstanceState||(e.ModuleInstanceState={}));function getModuleInstanceState(e){return e.body?getModuleInstanceStateWorker(e.body):1}e.getModuleInstanceState=getModuleInstanceState;function getModuleInstanceStateWorker(t){switch(t.kind){case 241:case 242:return 0;case 243:if(e.isEnumConst(t)){return 2}break;case 249:case 248:if(!e.hasModifier(t,1)){return 0}break;case 245:{var r=0;e.forEachChild(t,function(t){var n=getModuleInstanceStateWorker(t);switch(n){case 0:return;case 2:r=2;return;case 1:r=1;return true;default:e.Debug.assertNever(n)}});return r}case 244:return getModuleInstanceState(t);case 72:if(t.isInJSDocNamespace){return 0}}return 1}var r;(function(e){e[e["None"]=0]="None";e[e["IsContainer"]=1]="IsContainer";e[e["IsBlockScopedContainer"]=2]="IsBlockScopedContainer";e[e["IsControlFlowContainer"]=4]="IsControlFlowContainer";e[e["IsFunctionLike"]=8]="IsFunctionLike";e[e["IsFunctionExpression"]=16]="IsFunctionExpression";e[e["HasLocals"]=32]="HasLocals";e[e["IsInterface"]=64]="IsInterface";e[e["IsObjectLiteralOrClassExpressionMethod"]=128]="IsObjectLiteralOrClassExpressionMethod"})(r||(r={}));var i=createBinder();function bindSourceFile(t,r){e.performance.mark("beforeBind");i(t,r);e.performance.mark("afterBind");e.performance.measure("Bind","beforeBind","afterBind")}e.bindSourceFile=bindSourceFile;function createBinder(){var t;var r;var i;var a;var o;var s;var c;var u;var l;var f;var d;var p;var g;var _;var m;var y;var h;var v;var T;var S;var b;var x=0;var C;var E;var D={flags:1};var k={flags:1};var N=0;var A;function createDiagnosticForNode(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(e.getSourceFileOfNode(r)||t,r,n,i,a,o)}function bindSourceFile(n,h){t=n;r=h;i=e.getEmitScriptTarget(r);b=bindInStrictMode(t,h);E=e.createUnderscoreEscapedMap();x=0;A=t.isDeclarationFile;C=e.objectAllocator.getSymbolConstructor();if(!t.locals){bind(t);t.symbolCount=x;t.classifiableNames=E;delayedBindJSDocTypedefTag()}t=undefined;r=undefined;i=undefined;a=undefined;o=undefined;s=undefined;c=undefined;u=undefined;l=undefined;f=false;d=undefined;p=undefined;g=undefined;_=undefined;m=undefined;y=undefined;v=undefined;T=false;S=0;N=0}return bindSourceFile;function bindInStrictMode(t,r){if(e.getStrictOptionValue(r,"alwaysStrict")&&!t.isDeclarationFile){return true}else{return!!t.externalModuleIndicator}}function createSymbol(e,t){x++;return new C(e,t)}function addDeclarationToSymbol(t,r,n){t.flags|=n;r.symbol=t;t.declarations=e.append(t.declarations,r);if(n&(32|384|1536|3)&&!t.exports){t.exports=e.createSymbolTable()}if(n&(32|64|2048|4096)&&!t.members){t.members=e.createSymbolTable()}if(n&67220415){setValueDeclaration(t,r)}}function setValueDeclaration(t,r){var n=t.valueDeclaration;if(!n||e.isAssignmentDeclaration(n)&&!e.isAssignmentDeclaration(r)||n.kind!==r.kind&&e.isEffectiveModuleDeclaration(n)){t.valueDeclaration=r}}function getDeclarationName(t){if(t.kind===254){return t.isExportEquals?"export=":"default"}var r=e.getNameOfDeclaration(t);if(r){if(e.isAmbientModule(t)){var n=e.getTextOfIdentifierOrLiteral(r);return e.isGlobalScopeAugmentation(t)?"__global":'"'+n+'"'}if(r.kind===149){var i=r.expression;if(e.isStringOrNumericLiteralLike(i)){return e.escapeLeadingUnderscores(i.text)}e.Debug.assert(e.isWellKnownSymbolSyntactically(i));return e.getPropertyNameForKnownSymbolName(e.idText(i.name))}return e.isPropertyNameLiteral(r)?e.getEscapedTextOfIdentifierOrLiteral(r):undefined}switch(t.kind){case 157:return"__constructor";case 165:case 160:case 293:return"__call";case 166:case 161:return"__new";case 162:return"__index";case 255:return"__export";case 279:return"export=";case 204:if(e.getAssignmentDeclarationKind(t)===2){return"export="}e.Debug.fail("Unknown binary declaration kind");break;case 289:return e.isJSDocConstructSignature(t)?"__new":"__call";case 151:e.Debug.assert(t.parent.kind===289,"Impossible parameter parent kind",function(){return"parent is: "+(e.SyntaxKind?e.SyntaxKind[t.parent.kind]:t.parent.kind)+", expected JSDocFunctionType"});var a=t.parent;var o=a.parameters.indexOf(t);return"arg"+o}}function getDisplayName(t){return e.isNamedDeclaration(t)?e.declarationNameToString(t.name):e.unescapeLeadingUnderscores(e.Debug.assertDefined(getDeclarationName(t)))}function declareSymbol(r,n,i,a,o,s){e.Debug.assert(!e.hasDynamicName(i));var c=e.hasModifier(i,512);var u=c&&n?"default":getDeclarationName(i);var l;if(u===undefined){l=createSymbol(0,"__missing")}else{l=r.get(u);if(a&2885600){E.set(u,true)}if(!l){r.set(u,l=createSymbol(0,u));if(s)l.isReplaceableByMethod=true}else if(s&&!l.isReplaceableByMethod){return l}else if(l.flags&o){if(l.isReplaceableByMethod){r.set(u,l=createSymbol(0,u))}else if(!(a&3&&l.flags&67108864)){if(e.isNamedDeclaration(i)){i.name.parent=i}var f=l.flags&2?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0;var d=true;if(l.flags&384||a&384){f=e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations;d=false}if(l.declarations&&l.declarations.length){if(c){f=e.Diagnostics.A_module_cannot_have_multiple_default_exports;d=false}else{if(l.declarations&&l.declarations.length&&(i.kind===254&&!i.isExportEquals)){f=e.Diagnostics.A_module_cannot_have_multiple_default_exports;d=false}}}var p=function(r){t.bindDiagnostics.push(createDiagnosticForNode(e.getNameOfDeclaration(r)||r,f,d?getDisplayName(r):undefined))};e.forEach(l.declarations,p);p(i);l=createSymbol(0,u)}}}addDeclarationToSymbol(l,i,a);if(l.parent){e.Debug.assert(l.parent===n,"Existing symbol parent should match new one")}else{l.parent=n}return l}function declareModuleMember(t,r,n){var i=e.getCombinedModifierFlags(t)&1;if(r&2097152){if(t.kind===257||t.kind===248&&i){return declareSymbol(o.symbol.exports,o.symbol,t,r,n)}else{return declareSymbol(o.locals,undefined,t,r,n)}}else{if(e.isJSDocTypeAlias(t))e.Debug.assert(e.isInJSFile(t));if(!e.isAmbientModule(t)&&(i||o.flags&32)||e.isJSDocTypeAlias(t)){if(e.hasModifier(t,512)&&!getDeclarationName(t)){return declareSymbol(o.symbol.exports,o.symbol,t,r,n)}var a=r&67220415?1048576:0;var s=declareSymbol(o.locals,undefined,t,a,n);s.exportSymbol=declareSymbol(o.symbol.exports,o.symbol,t,r,n);t.localSymbol=s;return s}else{return declareSymbol(o.locals,undefined,t,r,n)}}}function bindContainer(t,r){var n=o;var i=s;var a=c;if(r&1){if(t.kind!==197){s=o}o=c=t;if(r&32){o.locals=e.createSymbolTable()}addToContainerChain(o)}else if(r&2){c=t;c.locals=undefined}if(r&4){var u=d;var l=p;var m=g;var y=_;var h=v;var b=T;var x=r&16&&!e.hasModifier(t,256)&&!t.asteriskToken&&!!e.getImmediatelyInvokedFunctionExpression(t);if(!x){d={flags:2};if(r&(16|128)){d.container=t}}_=x||t.kind===157?createBranchLabel():undefined;p=undefined;g=undefined;v=undefined;T=false;bindChildren(t);t.flags&=~1408;if(!(d.flags&1)&&r&8&&e.nodeIsPresent(t.body)){t.flags|=128;if(T)t.flags|=256}if(t.kind===279){t.flags|=S}if(_){addAntecedent(_,d);d=finishFlowLabel(_);if(t.kind===157){t.returnFlowNode=d}}if(!x){d=u}p=l;g=m;_=y;v=h;T=b}else if(r&64){f=false;bindChildren(t);t.flags=f?t.flags|64:t.flags&~64}else{bindChildren(t)}o=n;s=i;c=a}function bindChildren(e){if(A){bindChildrenWorker(e)}else if(e.transformFlags&536870912){A=true;bindChildrenWorker(e);A=false;N|=e.transformFlags&~getTransformFlagsSubtreeExclusions(e.kind)}else{var t=N;N=0;bindChildrenWorker(e);N=t|computeTransformFlagsForNode(e,N)}}function bindEachFunctionsFirst(e){bindEach(e,function(e){return e.kind===239?bind(e):undefined});bindEach(e,function(e){return e.kind!==239?bind(e):undefined})}function bindEach(t,r){if(r===void 0){r=bind}if(t===undefined){return}if(A){e.forEach(t,r)}else{var n=N;N=0;var i=0;for(var a=0,o=t;a<o.length;a++){var s=o[a];r(s);i|=s.transformFlags&~536870912}t.transformFlags=i|536870912;N|=n}}function bindEachChild(t){e.forEachChild(t,bind,bindEach)}function bindChildrenWorker(e){if(checkUnreachable(e)){bindEachChild(e);bindJSDoc(e);return}switch(e.kind){case 224:bindWhileStatement(e);break;case 223:bindDoStatement(e);break;case 225:bindForStatement(e);break;case 226:case 227:bindForInOrForOfStatement(e);break;case 222:bindIfStatement(e);break;case 230:case 234:bindReturnOrThrow(e);break;case 229:case 228:bindBreakOrContinueStatement(e);break;case 235:bindTryStatement(e);break;case 232:bindSwitchStatement(e);break;case 246:bindCaseBlock(e);break;case 271:bindCaseClause(e);break;case 233:bindLabeledStatement(e);break;case 202:bindPrefixUnaryExpressionFlow(e);break;case 203:bindPostfixUnaryExpressionFlow(e);break;case 204:bindBinaryExpressionFlow(e);break;case 198:bindDeleteExpressionFlow(e);break;case 205:bindConditionalExpressionFlow(e);break;case 237:bindVariableDeclarationFlow(e);break;case 191:bindCallExpressionFlow(e);break;case 304:case 297:bindJSDocTypeAlias(e);break;case 279:{bindEachFunctionsFirst(e.statements);bind(e.endOfFileToken);break}case 218:case 245:bindEachFunctionsFirst(e.statements);break;default:bindEachChild(e);break}bindJSDoc(e)}function isNarrowingExpression(e){switch(e.kind){case 72:case 100:case 189:case 190:return isNarrowableReference(e);case 191:return hasNarrowableArgument(e);case 195:return isNarrowingExpression(e.expression);case 204:return isNarrowingBinaryExpression(e);case 202:return e.operator===52&&isNarrowingExpression(e.operand);case 199:return isNarrowingExpression(e.expression)}return false}function isNarrowableReference(t){return t.kind===72||t.kind===100||t.kind===98||e.isPropertyAccessExpression(t)&&isNarrowableReference(t.expression)||e.isElementAccessExpression(t)&&t.argumentExpression&&(e.isStringLiteral(t.argumentExpression)||e.isNumericLiteral(t.argumentExpression))&&isNarrowableReference(t.expression)}function hasNarrowableArgument(e){if(e.arguments){for(var t=0,r=e.arguments;t<r.length;t++){var n=r[t];if(isNarrowableReference(n)){return true}}}if(e.expression.kind===189&&isNarrowableReference(e.expression.expression)){return true}return false}function isNarrowingTypeofOperands(t,r){return e.isTypeOfExpression(t)&&isNarrowableOperand(t.expression)&&e.isStringLiteralLike(r)}function isNarrowableInOperands(t,r){return e.isStringLiteralLike(t)&&isNarrowingExpression(r)}function isNarrowingBinaryExpression(e){switch(e.operatorToken.kind){case 59:return isNarrowableReference(e.left);case 33:case 34:case 35:case 36:return isNarrowableOperand(e.left)||isNarrowableOperand(e.right)||isNarrowingTypeofOperands(e.right,e.left)||isNarrowingTypeofOperands(e.left,e.right);case 94:return isNarrowableOperand(e.left);case 93:return isNarrowableInOperands(e.left,e.right);case 27:return isNarrowingExpression(e.right)}return false}function isNarrowableOperand(e){switch(e.kind){case 195:return isNarrowableOperand(e.expression);case 204:switch(e.operatorToken.kind){case 59:return isNarrowableOperand(e.left);case 27:return isNarrowableOperand(e.right)}}return isNarrowableReference(e)}function createBranchLabel(){return{flags:4,antecedents:undefined}}function createLoopLabel(){return{flags:8,antecedents:undefined}}function setFlowNodeReferenced(e){e.flags|=e.flags&512?1024:512}function addAntecedent(t,r){if(!(r.flags&1)&&!e.contains(t.antecedents,r)){(t.antecedents||(t.antecedents=[])).push(r);setFlowNodeReferenced(r)}}function createFlowCondition(e,t,r){if(t.flags&1){return t}if(!r){return e&32?t:D}if(r.kind===102&&e&64||r.kind===87&&e&32){return D}if(!isNarrowingExpression(r)){return t}setFlowNodeReferenced(t);return{flags:e,expression:r,antecedent:t}}function createFlowSwitchClause(e,t,r,n){if(!isNarrowingExpression(t.expression)){return e}setFlowNodeReferenced(e);return{flags:128,switchStatement:t,clauseStart:r,clauseEnd:n,antecedent:e}}function createFlowAssignment(e,t){setFlowNodeReferenced(e);return{flags:16,antecedent:e,node:t}}function createFlowArrayMutation(e,t){setFlowNodeReferenced(e);var r={flags:256,antecedent:e,node:t};return r}function finishFlowLabel(e){var t=e.antecedents;if(!t){return D}if(t.length===1){return t[0]}return e}function isStatementCondition(e){var t=e.parent;switch(t.kind){case 222:case 224:case 223:return t.expression===e;case 225:case 205:return t.condition===e}return false}function isLogicalExpression(e){while(true){if(e.kind===195){e=e.expression}else if(e.kind===202&&e.operator===52){e=e.operand}else{return e.kind===204&&(e.operatorToken.kind===54||e.operatorToken.kind===55)}}}function isTopLevelLogicalExpression(e){while(e.parent.kind===195||e.parent.kind===202&&e.parent.operator===52){e=e.parent}return!isStatementCondition(e)&&!isLogicalExpression(e.parent)}function bindCondition(e,t,r){var n=m;var i=y;m=t;y=r;bind(e);m=n;y=i;if(!e||!isLogicalExpression(e)){addAntecedent(t,createFlowCondition(32,d,e));addAntecedent(r,createFlowCondition(64,d,e))}}function bindIterativeStatement(e,t,r){var n=p;var i=g;p=t;g=r;bind(e);p=n;g=i}function bindWhileStatement(e){var t=createLoopLabel();var r=createBranchLabel();var n=createBranchLabel();addAntecedent(t,d);d=t;bindCondition(e.expression,r,n);d=finishFlowLabel(r);bindIterativeStatement(e.statement,n,t);addAntecedent(t,d);d=finishFlowLabel(n)}function bindDoStatement(t){var r=createLoopLabel();var n=t.parent.kind===233?e.lastOrUndefined(v):undefined;var i=n?n.continueTarget:createBranchLabel();var a=n?n.breakTarget:createBranchLabel();addAntecedent(r,d);d=r;bindIterativeStatement(t.statement,a,i);addAntecedent(i,d);d=finishFlowLabel(i);bindCondition(t.expression,r,a);d=finishFlowLabel(a)}function bindForStatement(e){var t=createLoopLabel();var r=createBranchLabel();var n=createBranchLabel();bind(e.initializer);addAntecedent(t,d);d=t;bindCondition(e.condition,r,n);d=finishFlowLabel(r);bindIterativeStatement(e.statement,n,t);bind(e.incrementor);addAntecedent(t,d);d=finishFlowLabel(n)}function bindForInOrForOfStatement(e){var t=createLoopLabel();var r=createBranchLabel();addAntecedent(t,d);d=t;if(e.kind===227){bind(e.awaitModifier)}bind(e.expression);addAntecedent(r,d);bind(e.initializer);if(e.initializer.kind!==238){bindAssignmentTargetFlow(e.initializer)}bindIterativeStatement(e.statement,r,t);addAntecedent(t,d);d=finishFlowLabel(r)}function bindIfStatement(e){var t=createBranchLabel();var r=createBranchLabel();var n=createBranchLabel();bindCondition(e.expression,t,r);d=finishFlowLabel(t);bind(e.thenStatement);addAntecedent(n,d);d=finishFlowLabel(r);bind(e.elseStatement);addAntecedent(n,d);d=finishFlowLabel(n)}function bindReturnOrThrow(e){bind(e.expression);if(e.kind===230){T=true;if(_){addAntecedent(_,d)}}d=D}function findActiveLabel(e){if(v){for(var t=0,r=v;t<r.length;t++){var n=r[t];if(n.name===e){return n}}}return undefined}function bindBreakOrContinueFlow(e,t,r){var n=e.kind===229?t:r;if(n){addAntecedent(n,d);d=D}}function bindBreakOrContinueStatement(e){bind(e.label);if(e.label){var t=findActiveLabel(e.label.escapedText);if(t){t.referenced=true;bindBreakOrContinueFlow(e,t.breakTarget,t.continueTarget)}}else{bindBreakOrContinueFlow(e,p,g)}}function bindTryStatement(e){var t=createBranchLabel();var r=d;bind(e.tryBlock);addAntecedent(t,d);var n=d;var i=D;if(e.catchClause){d=r;bind(e.catchClause);addAntecedent(t,d);i=d}if(e.finallyBlock){var a={flags:2048,antecedent:r,lock:{}};addAntecedent(t,a);d=finishFlowLabel(t);bind(e.finallyBlock);if(!(d.flags&1)){if(n.flags&1&&i.flags&1){d=n===k||i===k?k:D}}if(!(d.flags&1)){var o={flags:4096,antecedent:d};a.lock=o;d=o}}else{d=finishFlowLabel(t)}}function bindSwitchStatement(t){var r=createBranchLabel();bind(t.expression);var n=p;var i=h;p=r;h=d;bind(t.caseBlock);addAntecedent(r,d);var a=e.forEach(t.caseBlock.clauses,function(e){return e.kind===272});t.possiblyExhaustive=!a&&!r.antecedents;if(!a){addAntecedent(r,createFlowSwitchClause(h,t,0,0))}p=n;h=i;d=finishFlowLabel(r)}function bindCaseBlock(t){var n=N;N=0;var i=t.clauses;var a=D;for(var o=0;o<i.length;o++){var s=o;while(!i[o].statements.length&&o+1<i.length){bind(i[o]);o++}var c=createBranchLabel();addAntecedent(c,createFlowSwitchClause(h,t.parent,s,o+1));addAntecedent(c,a);d=finishFlowLabel(c);var u=i[o];bind(u);a=d;if(!(d.flags&1)&&o!==i.length-1&&r.noFallthroughCasesInSwitch){errorOnFirstToken(u,e.Diagnostics.Fallthrough_case_in_switch)}}i.transformFlags=N|536870912;N|=n}function bindCaseClause(e){var t=d;d=h;bind(e.expression);d=t;bindEach(e.statements)}function pushActiveLabel(e,t,r){var n={name:e,breakTarget:t,continueTarget:r,referenced:false};(v||(v=[])).push(n);return n}function popActiveLabel(){v.pop()}function bindLabeledStatement(t){var n=createLoopLabel();var i=createBranchLabel();bind(t.label);addAntecedent(n,d);var a=pushActiveLabel(t.label.escapedText,i,n);bind(t.statement);popActiveLabel();if(!a.referenced&&!r.allowUnusedLabels){errorOrSuggestionOnNode(e.unusedLabelIsError(r),t.label,e.Diagnostics.Unused_label)}if(!t.statement||t.statement.kind!==223){addAntecedent(i,d);d=finishFlowLabel(i)}}function bindDestructuringTargetFlow(e){if(e.kind===204&&e.operatorToken.kind===59){bindAssignmentTargetFlow(e.left)}else{bindAssignmentTargetFlow(e)}}function bindAssignmentTargetFlow(e){if(isNarrowableReference(e)){d=createFlowAssignment(d,e)}else if(e.kind===187){for(var t=0,r=e.elements;t<r.length;t++){var n=r[t];if(n.kind===208){bindAssignmentTargetFlow(n.expression)}else{bindDestructuringTargetFlow(n)}}}else if(e.kind===188){for(var i=0,a=e.properties;i<a.length;i++){var o=a[i];if(o.kind===275){bindDestructuringTargetFlow(o.initializer)}else if(o.kind===276){bindAssignmentTargetFlow(o.name)}else if(o.kind===277){bindAssignmentTargetFlow(o.expression)}}}}function bindLogicalExpression(e,t,r){var n=createBranchLabel();if(e.operatorToken.kind===54){bindCondition(e.left,n,r)}else{bindCondition(e.left,t,n)}d=finishFlowLabel(n);bind(e.operatorToken);bindCondition(e.right,t,r)}function bindPrefixUnaryExpressionFlow(e){if(e.operator===52){var t=m;m=y;y=t;bindEachChild(e);y=m;m=t}else{bindEachChild(e);if(e.operator===44||e.operator===45){bindAssignmentTargetFlow(e.operand)}}}function bindPostfixUnaryExpressionFlow(e){bindEachChild(e);if(e.operator===44||e.operator===45){bindAssignmentTargetFlow(e.operand)}}function bindBinaryExpressionFlow(t){var r=t.operatorToken.kind;if(r===54||r===55){if(isTopLevelLogicalExpression(t)){var n=createBranchLabel();bindLogicalExpression(t,n,n);d=finishFlowLabel(n)}else{bindLogicalExpression(t,m,y)}}else{bindEachChild(t);if(e.isAssignmentOperator(r)&&!e.isAssignmentTarget(t)){bindAssignmentTargetFlow(t.left);if(r===59&&t.left.kind===190){var i=t.left;if(isNarrowableOperand(i.expression)){d=createFlowArrayMutation(d,t)}}}}}function bindDeleteExpressionFlow(e){bindEachChild(e);if(e.expression.kind===189){bindAssignmentTargetFlow(e.expression)}}function bindConditionalExpressionFlow(e){var t=createBranchLabel();var r=createBranchLabel();var n=createBranchLabel();bindCondition(e.condition,t,r);d=finishFlowLabel(t);bind(e.questionToken);bind(e.whenTrue);addAntecedent(n,d);d=finishFlowLabel(r);bind(e.colonToken);bind(e.whenFalse);addAntecedent(n,d);d=finishFlowLabel(n)}function bindInitializedVariableFlow(t){var r=!e.isOmittedExpression(t)?t.name:undefined;if(e.isBindingPattern(r)){for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];bindInitializedVariableFlow(a)}}else{d=createFlowAssignment(d,t)}}function bindVariableDeclarationFlow(t){bindEachChild(t);if(t.initializer||e.isForInOrOfStatement(t.parent.parent)){bindInitializedVariableFlow(t)}}function bindJSDocTypeAlias(e){e.tagName.parent=e;if(e.fullName){setParentPointers(e,e.fullName)}}function bindCallExpressionFlow(t){var r=t.expression;while(r.kind===195){r=r.expression}if(r.kind===196||r.kind===197){bindEach(t.typeArguments);bindEach(t.arguments);bind(t.expression)}else{bindEachChild(t)}if(t.expression.kind===189){var n=t.expression;if(isNarrowableOperand(n.expression)&&e.isPushOrUnshiftIdentifier(n.name)){d=createFlowArrayMutation(d,t)}}}function getContainerFlags(t){switch(t.kind){case 209:case 240:case 243:case 188:case 168:case 292:case 268:return 1;case 241:return 1|64;case 244:case 242:case 181:return 1|32;case 279:return 1|4|32;case 156:if(e.isObjectLiteralOrClassExpressionMethod(t)){return 1|4|32|8|128}case 157:case 239:case 155:case 158:case 159:case 160:case 293:case 289:case 165:case 161:case 162:case 166:return 1|4|32|8;case 196:case 197:return 1|4|32|8|16;case 245:return 4;case 154:return t.initializer?4:0;case 274:case 225:case 226:case 227:case 246:return 2;case 218:return e.isFunctionLike(t.parent)?0:2}return 0}function addToContainerChain(e){if(u){u.nextContainer=e}u=e}function declareSymbolAndAddToSymbolTable(e,t,r){switch(o.kind){case 244:return declareModuleMember(e,t,r);case 279:return declareSourceFileMember(e,t,r);case 209:case 240:return declareClassMember(e,t,r);case 243:return declareSymbol(o.symbol.exports,o.symbol,e,t,r);case 168:case 292:case 188:case 241:case 268:return declareSymbol(o.symbol.members,o.symbol,e,t,r);case 165:case 166:case 160:case 161:case 293:case 162:case 156:case 155:case 157:case 158:case 159:case 239:case 196:case 197:case 289:case 304:case 297:case 242:case 181:return declareSymbol(o.locals,undefined,e,t,r)}}function declareClassMember(t,r,n){return e.hasModifier(t,32)?declareSymbol(o.symbol.exports,o.symbol,t,r,n):declareSymbol(o.symbol.members,o.symbol,t,r,n)}function declareSourceFileMember(r,n,i){return e.isExternalModule(t)?declareModuleMember(r,n,i):declareSymbol(t.locals,undefined,r,n,i)}function hasExportDeclarations(e){var t=e.kind===279?e:e.body;if(t&&(t.kind===279||t.kind===245)){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(i.kind===255||i.kind===254){return true}}}return false}function setExportContextFlag(e){if(e.flags&4194304&&!hasExportDeclarations(e)){e.flags|=32}else{e.flags&=~32}}function bindModuleDeclaration(r){setExportContextFlag(r);if(e.isAmbientModule(r)){if(e.hasModifier(r,1)){errorOnFirstToken(r,e.Diagnostics.export_modifier_cannot_be_applied_to_ambient_modules_and_module_augmentations_since_they_are_always_visible)}if(e.isModuleAugmentationExternal(r)){declareModuleSymbol(r)}else{var n=void 0;if(r.name.kind===10){var i=r.name.text;if(e.hasZeroOrOneAsteriskCharacter(i)){n=e.tryParsePattern(i)}else{errorOnFirstToken(r.name,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,i)}}var a=declareSymbolAndAddToSymbolTable(r,512,110735);t.patternAmbientModules=e.append(t.patternAmbientModules,n&&{pattern:n,symbol:a})}}else{var o=declareModuleSymbol(r);if(o!==0){var a=r.symbol;a.constEnumOnlyModule=!(a.flags&(16|32|256))&&o===2&&a.constEnumOnlyModule!==false}}}function declareModuleSymbol(e){var t=getModuleInstanceState(e);var r=t!==0;declareSymbolAndAddToSymbolTable(e,r?512:1024,r?110735:0);return t}function bindFunctionOrConstructorType(t){var r=createSymbol(131072,getDeclarationName(t));addDeclarationToSymbol(r,t,131072);var n=createSymbol(2048,"__type");addDeclarationToSymbol(n,t,2048);n.members=e.createSymbolTable();n.members.set(r.escapedName,r)}function bindObjectLiteralExpression(r){var n;(function(e){e[e["Property"]=1]="Property";e[e["Accessor"]=2]="Accessor"})(n||(n={}));if(b){var i=e.createUnderscoreEscapedMap();for(var a=0,o=r.properties;a<o.length;a++){var s=o[a];if(s.kind===277||s.name.kind!==72){continue}var c=s.name;var u=s.kind===275||s.kind===276||s.kind===156?1:2;var l=i.get(c.escapedText);if(!l){i.set(c.escapedText,u);continue}if(u===1&&l===1){var f=e.getErrorSpanForNode(t,c);t.bindDiagnostics.push(e.createFileDiagnostic(t,f.start,f.length,e.Diagnostics.An_object_literal_cannot_have_multiple_properties_with_the_same_name_in_strict_mode))}}}return bindAnonymousDeclaration(r,4096,"__object")}function bindJsxAttributes(e){return bindAnonymousDeclaration(e,4096,"__jsxAttributes")}function bindJsxAttribute(e,t,r){return declareSymbolAndAddToSymbolTable(e,t,r)}function bindAnonymousDeclaration(e,t,r){var n=createSymbol(t,r);if(t&(8|106500)){n.parent=o.symbol}addDeclarationToSymbol(n,e,t);return n}function bindBlockScopedDeclaration(t,r,n){switch(c.kind){case 244:declareModuleMember(t,r,n);break;case 279:if(e.isExternalOrCommonJsModule(o)){declareModuleMember(t,r,n);break}default:if(!c.locals){c.locals=e.createSymbolTable();addToContainerChain(c)}declareSymbol(c.locals,undefined,t,r,n)}}function delayedBindJSDocTypedefTag(){if(!l){return}var r=o;var n=u;var i=c;var s=a;var f=d;for(var p=0,g=l;p<g.length;p++){var _=g[p];var m=e.getJSDocHost(_);o=e.findAncestor(m.parent,function(e){return!!(getContainerFlags(e)&1)})||t;c=e.getEnclosingBlockScopeContainer(m)||t;d={flags:2};a=_;bind(_.typeExpression);if(!_.fullName||_.fullName.kind===72){a=_.parent;bindBlockScopedDeclaration(_,524288,67897832)}else{bind(_.fullName)}}o=r;u=n;c=i;a=s;d=f}function checkStrictModeIdentifier(r){if(b&&r.originalKeywordKind>=109&&r.originalKeywordKind<=117&&!e.isIdentifierName(r)&&!(r.flags&4194304)){if(!t.parseDiagnostics.length){t.bindDiagnostics.push(createDiagnosticForNode(r,getStrictModeIdentifierMessage(r),e.declarationNameToString(r)))}}}function getStrictModeIdentifierMessage(r){if(e.getContainingClass(r)){return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Class_definitions_are_automatically_in_strict_mode}if(t.externalModuleIndicator){return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode_Modules_are_automatically_in_strict_mode}return e.Diagnostics.Identifier_expected_0_is_a_reserved_word_in_strict_mode}function checkStrictModeBinaryExpression(t){if(b&&e.isLeftHandSideExpression(t.left)&&e.isAssignmentOperator(t.operatorToken.kind)){checkStrictModeEvalOrArguments(t,t.left)}}function checkStrictModeCatchClause(e){if(b&&e.variableDeclaration){checkStrictModeEvalOrArguments(e,e.variableDeclaration.name)}}function checkStrictModeDeleteExpression(r){if(b&&r.expression.kind===72){var n=e.getErrorSpanForNode(t,r.expression);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,e.Diagnostics.delete_cannot_be_called_on_an_identifier_in_strict_mode))}}function isEvalOrArgumentsIdentifier(t){return e.isIdentifier(t)&&(t.escapedText==="eval"||t.escapedText==="arguments")}function checkStrictModeEvalOrArguments(r,n){if(n&&n.kind===72){var i=n;if(isEvalOrArgumentsIdentifier(i)){var a=e.getErrorSpanForNode(t,n);t.bindDiagnostics.push(e.createFileDiagnostic(t,a.start,a.length,getStrictModeEvalOrArgumentsMessage(r),e.idText(i)))}}}function getStrictModeEvalOrArgumentsMessage(r){if(e.getContainingClass(r)){return e.Diagnostics.Invalid_use_of_0_Class_definitions_are_automatically_in_strict_mode}if(t.externalModuleIndicator){return e.Diagnostics.Invalid_use_of_0_Modules_are_automatically_in_strict_mode}return e.Diagnostics.Invalid_use_of_0_in_strict_mode}function checkStrictModeFunctionName(e){if(b){checkStrictModeEvalOrArguments(e,e.name)}}function getStrictModeBlockScopeFunctionDeclarationMessage(r){if(e.getContainingClass(r)){return e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Class_definitions_are_automatically_in_strict_mode}if(t.externalModuleIndicator){return e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5_Modules_are_automatically_in_strict_mode}return e.Diagnostics.Function_declarations_are_not_allowed_inside_blocks_in_strict_mode_when_targeting_ES3_or_ES5}function checkStrictModeFunctionDeclaration(r){if(i<2){if(c.kind!==279&&c.kind!==244&&!e.isFunctionLike(c)){var n=e.getErrorSpanForNode(t,r);t.bindDiagnostics.push(e.createFileDiagnostic(t,n.start,n.length,getStrictModeBlockScopeFunctionDeclarationMessage(r)))}}}function checkStrictModeNumericLiteral(r){if(b&&r.numericLiteralFlags&32){t.bindDiagnostics.push(createDiagnosticForNode(r,e.Diagnostics.Octal_literals_are_not_allowed_in_strict_mode))}}function checkStrictModePostfixUnaryExpression(e){if(b){checkStrictModeEvalOrArguments(e,e.operand)}}function checkStrictModePrefixUnaryExpression(e){if(b){if(e.operator===44||e.operator===45){checkStrictModeEvalOrArguments(e,e.operand)}}}function checkStrictModeWithStatement(t){if(b){errorOnFirstToken(t,e.Diagnostics.with_statements_are_not_allowed_in_strict_mode)}}function checkStrictModeLabeledStatement(t){if(b&&r.target>=2){if(e.isDeclarationStatement(t.statement)||e.isVariableStatement(t.statement)){errorOnFirstToken(t.label,e.Diagnostics.A_label_is_not_allowed_here)}}}function errorOnFirstToken(r,n,i,a,o){var s=e.getSpanOfTokenAtPosition(t,r.pos);t.bindDiagnostics.push(e.createFileDiagnostic(t,s.start,s.length,n,i,a,o))}function errorOrSuggestionOnNode(e,t,r){errorOrSuggestionOnRange(e,t,t,r)}function errorOrSuggestionOnRange(r,n,i,a){addErrorOrSuggestionDiagnostic(r,{pos:e.getTokenPosOfNode(n,t),end:i.end},a)}function addErrorOrSuggestionDiagnostic(r,i,a){var o=e.createFileDiagnostic(t,i.pos,i.end-i.pos,a);if(r){t.bindDiagnostics.push(o)}else{t.bindSuggestionDiagnostics=e.append(t.bindSuggestionDiagnostics,n({},o,{category:e.DiagnosticCategory.Suggestion}))}}function bind(e){if(!e){return}e.parent=a;var t=b;bindWorker(e);if(e.kind>147){var r=a;a=e;var n=getContainerFlags(e);if(n===0){bindChildren(e)}else{bindContainer(e,n)}a=r}else if(!A&&(e.transformFlags&536870912)===0){N|=computeTransformFlagsForNode(e,0);var r=a;if(e.kind===1)a=e;bindJSDoc(e);a=r}b=t}function bindJSDoc(t){if(e.hasJSDocNodes(t)){if(e.isInJSFile(t)){for(var r=0,n=t.jsDoc;r<n.length;r++){var i=n[r];bind(i)}}else{for(var a=0,o=t.jsDoc;a<o.length;a++){var i=o[a];setParentPointers(t,i)}}}}function updateStrictModeStatementList(t){if(!b){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!e.isPrologueDirective(i)){return}if(isUseStrictPrologueDirective(i)){b=true;return}}}}function isUseStrictPrologueDirective(r){var n=e.getSourceTextOfNodeFromSourceFile(t,r.expression);return n==='"use strict"'||n==="'use strict'"}function bindWorker(r){switch(r.kind){case 72:if(r.isInJSDocNamespace){var n=r.parent;while(n&&!e.isJSDocTypeAlias(n)){n=n.parent}bindBlockScopedDeclaration(n,524288,67897832);break}case 100:if(d&&(e.isExpression(r)||a.kind===276)){r.flowNode=d}return checkStrictModeIdentifier(r);case 189:case 190:if(d&&isNarrowableReference(r)){r.flowNode=d}if(e.isSpecialPropertyDeclaration(r)){bindSpecialPropertyDeclaration(r)}if(e.isInJSFile(r)&&t.commonJsModuleIndicator&&e.isModuleExportsPropertyAccessExpression(r)&&!lookupSymbolForNameWorker(c,"module")){declareSymbol(t.locals,undefined,r.expression,1|134217728,67220414)}break;case 204:var i=e.getAssignmentDeclarationKind(r);switch(i){case 1:bindExportsPropertyAssignment(r);break;case 2:bindModuleExportsAssignment(r);break;case 3:bindPrototypePropertyAssignment(r.left,r);break;case 6:bindPrototypeAssignment(r);break;case 4:bindThisPropertyAssignment(r);break;case 5:bindSpecialPropertyAssignment(r);break;case 0:break;default:e.Debug.fail("Unknown binary expression special property assignment kind")}return checkStrictModeBinaryExpression(r);case 274:return checkStrictModeCatchClause(r);case 198:return checkStrictModeDeleteExpression(r);case 8:return checkStrictModeNumericLiteral(r);case 203:return checkStrictModePostfixUnaryExpression(r);case 202:return checkStrictModePrefixUnaryExpression(r);case 231:return checkStrictModeWithStatement(r);case 233:return checkStrictModeLabeledStatement(r);case 178:f=true;return;case 163:break;case 150:return bindTypeParameter(r);case 151:return bindParameter(r);case 237:return bindVariableDeclarationOrBindingElement(r);case 186:r.flowNode=d;return bindVariableDeclarationOrBindingElement(r);case 154:case 153:return bindPropertyWorker(r);case 275:case 276:return bindPropertyOrMethodOrAccessor(r,4,0);case 278:return bindPropertyOrMethodOrAccessor(r,8,68008959);case 160:case 161:case 162:return declareSymbolAndAddToSymbolTable(r,131072,0);case 156:case 155:return bindPropertyOrMethodOrAccessor(r,8192|(r.questionToken?16777216:0),e.isObjectLiteralMethod(r)?0:67212223);case 239:return bindFunctionDeclaration(r);case 157:return declareSymbolAndAddToSymbolTable(r,16384,0);case 158:return bindPropertyOrMethodOrAccessor(r,32768,67154879);case 159:return bindPropertyOrMethodOrAccessor(r,65536,67187647);case 165:case 289:case 293:case 166:return bindFunctionOrConstructorType(r);case 168:case 292:case 181:return bindAnonymousTypeWorker(r);case 188:return bindObjectLiteralExpression(r);case 196:case 197:return bindFunctionExpression(r);case 191:var o=e.getAssignmentDeclarationKind(r);switch(o){case 7:return bindObjectDefinePropertyAssignment(r);case 8:return bindObjectDefinePropertyExport(r);case 9:return bindObjectDefinePrototypeProperty(r);case 0:break;default:return e.Debug.fail("Unknown call expression assignment declaration kind")}if(e.isInJSFile(r)){bindCallExpression(r)}break;case 209:case 240:b=true;return bindClassLikeDeclaration(r);case 241:return bindBlockScopedDeclaration(r,64,67897736);case 242:return bindBlockScopedDeclaration(r,524288,67897832);case 243:return bindEnumDeclaration(r);case 244:return bindModuleDeclaration(r);case 268:return bindJsxAttributes(r);case 267:return bindJsxAttribute(r,4,0);case 248:case 251:case 253:case 257:return declareSymbolAndAddToSymbolTable(r,2097152,2097152);case 247:return bindNamespaceExportDeclaration(r);case 250:return bindImportClause(r);case 255:return bindExportDeclaration(r);case 254:return bindExportAssignment(r);case 279:updateStrictModeStatementList(r.statements);return bindSourceFileIfExternalModule();case 218:if(!e.isFunctionLike(r.parent)){return}case 245:return updateStrictModeStatementList(r.statements);case 299:if(r.parent.kind===293){return bindParameter(r)}if(r.parent.kind!==292){break}case 305:var s=r;var u=s.isBracketed||s.typeExpression&&s.typeExpression.type.kind===288?4|16777216:4;return declareSymbolAndAddToSymbolTable(s,u,0);case 304:case 297:return(l||(l=[])).push(r)}}function bindPropertyWorker(e){return bindPropertyOrMethodOrAccessor(e,4|(e.questionToken?16777216:0),0)}function bindAnonymousTypeWorker(e){return bindAnonymousDeclaration(e,2048,"__type")}function bindSourceFileIfExternalModule(){setExportContextFlag(t);if(e.isExternalModule(t)){bindSourceFileAsExternalModule()}else if(e.isJsonSourceFile(t)){bindSourceFileAsExternalModule();var r=t.symbol;declareSymbol(t.symbol.exports,t.symbol,t,4,67108863);t.symbol=r}}function bindSourceFileAsExternalModule(){bindAnonymousDeclaration(t,512,'"'+e.removeFileExtension(t.fileName)+'"')}function bindExportAssignment(t){if(!o.symbol||!o.symbol.exports){bindAnonymousDeclaration(t,2097152,getDeclarationName(t))}else{var r=e.exportAssignmentIsAlias(t)?2097152:4;var n=declareSymbol(o.symbol.exports,o.symbol,t,r,67108863);if(t.isExportEquals){setValueDeclaration(n,t)}}}function bindNamespaceExportDeclaration(r){if(r.modifiers&&r.modifiers.length){t.bindDiagnostics.push(createDiagnosticForNode(r,e.Diagnostics.Modifiers_cannot_appear_here))}var n=!e.isSourceFile(r.parent)?e.Diagnostics.Global_module_exports_may_only_appear_at_top_level:!e.isExternalModule(r.parent)?e.Diagnostics.Global_module_exports_may_only_appear_in_module_files:!r.parent.isDeclarationFile?e.Diagnostics.Global_module_exports_may_only_appear_in_declaration_files:undefined;if(n){t.bindDiagnostics.push(createDiagnosticForNode(r,n))}else{t.symbol.globalExports=t.symbol.globalExports||e.createSymbolTable();declareSymbol(t.symbol.globalExports,t.symbol,r,2097152,2097152)}}function bindExportDeclaration(e){if(!o.symbol||!o.symbol.exports){bindAnonymousDeclaration(e,8388608,getDeclarationName(e))}else if(!e.exportClause){declareSymbol(o.symbol.exports,o.symbol,e,8388608,0)}}function bindImportClause(e){if(e.name){declareSymbolAndAddToSymbolTable(e,2097152,2097152)}}function setCommonJsModuleIndicator(e){if(t.externalModuleIndicator){return false}if(!t.commonJsModuleIndicator){t.commonJsModuleIndicator=e;bindSourceFileAsExternalModule()}return true}function bindObjectDefinePropertyExport(e){if(!setCommonJsModuleIndicator(e)){return}var t=forEachIdentifierInEntityName(e.arguments[0],undefined,function(e,t){if(t){addDeclarationToSymbol(t,e,1536|67108864)}return t});if(t){var r=4|1048576;declareSymbol(t.exports,t,e,r,0)}}function bindExportsPropertyAssignment(t){if(!setCommonJsModuleIndicator(t)){return}var r=t.left;var n=forEachIdentifierInEntityName(r.expression,undefined,function(e,t){if(t){addDeclarationToSymbol(t,e,1536|67108864)}return t});if(n){var i=e.isClassExpression(t.right)?4|1048576|32:4|1048576;declareSymbol(n.exports,n,r,i,0)}}function bindModuleExportsAssignment(r){if(!setCommonJsModuleIndicator(r)){return}var n=e.getRightMostAssignedExpression(r.right);if(e.isEmptyObjectLiteral(n)||o===t&&isExportsOrModuleExportsOrAlias(t,n)){return}var i=e.exportAssignmentIsAlias(r)?2097152:4|1048576|512;declareSymbol(t.symbol.exports,t.symbol,r,i|67108864,0)}function bindThisPropertyAssignment(t){e.Debug.assert(e.isInJSFile(t));var r=e.getThisContainer(t,false);switch(r.kind){case 239:case 196:var n=r.symbol;if(e.isBinaryExpression(r.parent)&&r.parent.operatorToken.kind===59){var i=r.parent.left;if(e.isPropertyAccessEntityNameExpression(i)&&e.isPrototypeAccess(i.expression)){n=lookupSymbolForPropertyAccess(i.expression.expression,s)}}if(n){n.members=n.members||e.createSymbolTable();declareSymbol(n.members,n,t,4,0&~4)}break;case 157:case 154:case 156:case 158:case 159:var a=r.parent;var o=e.hasModifier(r,32)?a.symbol.exports:a.symbol.members;declareSymbol(o,a.symbol,t,4,0,true);break;case 279:break;default:e.Debug.fail(e.Debug.showSyntaxKind(r))}}function bindSpecialPropertyDeclaration(t){if(t.expression.kind===100){bindThisPropertyAssignment(t)}else if(e.isPropertyAccessEntityNameExpression(t)&&t.parent.parent.kind===279){if(e.isPrototypeAccess(t.expression)){bindPrototypePropertyAssignment(t,t.parent)}else{bindStaticPropertyAssignment(t)}}}function bindPrototypeAssignment(e){e.left.parent=e;e.right.parent=e;var t=e.left;bindPropertyAssignment(t.expression,t,false)}function bindObjectDefinePrototypeProperty(e){var t=lookupSymbolForPropertyAccess(e.arguments[0].expression);bindPotentiallyNewExpandoMemberToNamespace(e,t,true)}function bindPrototypePropertyAssignment(e,t){var r=e.expression;var n=r.expression;e.parent=t;n.parent=r;r.parent=e;bindPropertyAssignment(n,e,true)}function bindObjectDefinePropertyAssignment(e){var t=lookupSymbolForPropertyAccess(e.arguments[0]);var r=e.parent.parent.kind===279;t=bindPotentiallyMissingNamespaces(t,e.arguments[0],r,false);bindPotentiallyNewExpandoMemberToNamespace(e,t,false)}function bindSpecialPropertyAssignment(r){var n=r.left;var i=lookupSymbolForPropertyAccess(n.expression);if(!e.isInJSFile(r)&&!e.isFunctionSymbol(i)){return}r.left.parent=r;r.right.parent=r;if(e.isIdentifier(n.expression)&&o===t&&isNameOfExportsOrModuleExportsAliasDeclaration(t,n.expression)){bindExportsPropertyAssignment(r)}else{bindStaticPropertyAssignment(n)}}function bindStaticPropertyAssignment(e){e.expression.parent=e;bindPropertyAssignment(e.expression,e,false)}function bindPotentiallyMissingNamespaces(r,n,i,a){if(i&&!a&&(!r||!(r.flags&1920))){var o=1536|67108864;var s=110735&~67108864;r=forEachIdentifierInEntityName(n,r,function(r,n,i){if(n){addDeclarationToSymbol(n,r,o);return n}else{var a=i?i.exports:t.jsGlobalAugmentations||(t.jsGlobalAugmentations=e.createSymbolTable());return declareSymbol(a,i,r,o,s)}})}return r}function bindPotentiallyNewExpandoMemberToNamespace(t,r,n){if(!r||!isExpandoSymbol(r)){return}var i=n?r.members||(r.members=e.createSymbolTable()):r.exports||(r.exports=e.createSymbolTable());var a=e.isFunctionLikeDeclaration(e.getAssignedExpandoInitializer(t));var o=a?8192:4;var s=a?67212223:0;declareSymbol(i,r,t,o|67108864,s&~67108864)}function bindPropertyAssignment(t,r,n){var i=lookupSymbolForPropertyAccess(t);var a=e.isBinaryExpression(r.parent)?getParentOfBinaryExpression(r.parent).parent.kind===279:r.parent.parent.kind===279;i=bindPotentiallyMissingNamespaces(i,r.expression,a,n);bindPotentiallyNewExpandoMemberToNamespace(r,i,n)}function isExpandoSymbol(t){if(t.flags&(16|32|1024)){return true}var r=t.valueDeclaration;if(r&&e.isCallExpression(r)){return!!e.getAssignedExpandoInitializer(r)}var n=!r?undefined:e.isVariableDeclaration(r)?r.initializer:e.isBinaryExpression(r)?r.right:e.isPropertyAccessExpression(r)&&e.isBinaryExpression(r.parent)?r.parent.right:undefined;n=n&&e.getRightMostAssignedExpression(n);if(n){var i=e.isPrototypeAccess(e.isVariableDeclaration(r)?r.name:e.isBinaryExpression(r)?r.left:r);return!!e.getExpandoInitializer(e.isBinaryExpression(n)&&n.operatorToken.kind===55?n.right:n,i)}return false}function getParentOfBinaryExpression(t){while(e.isBinaryExpression(t.parent)){t=t.parent}return t.parent}function lookupSymbolForPropertyAccess(t,r){if(r===void 0){r=o}if(e.isIdentifier(t)){return lookupSymbolForNameWorker(r,t.escapedText)}else{var n=lookupSymbolForPropertyAccess(t.expression);return n&&n.exports&&n.exports.get(t.name.escapedText)}}function forEachIdentifierInEntityName(r,n,i){if(isExportsOrModuleExportsOrAlias(t,r)){return t.symbol}else if(e.isIdentifier(r)){return i(r,lookupSymbolForPropertyAccess(r),n)}else{var a=forEachIdentifierInEntityName(r.expression,n,i);if(!a||!a.exports)return e.Debug.fail();return i(r.name,a.exports.get(r.name.escapedText),a)}}function bindCallExpression(r){if(!t.commonJsModuleIndicator&&e.isRequireCall(r,false)){setCommonJsModuleIndicator(r)}}function bindClassLikeDeclaration(r){if(r.kind===240){bindBlockScopedDeclaration(r,32,68008383)}else{var n=r.name?r.name.escapedText:"__class";bindAnonymousDeclaration(r,32,n);if(r.name){E.set(r.name.escapedText,true)}}var i=r.symbol;var a=createSymbol(4|4194304,"prototype");var o=i.exports.get(a.escapedName);if(o){if(r.name){r.name.parent=r}t.bindDiagnostics.push(createDiagnosticForNode(o.declarations[0],e.Diagnostics.Duplicate_identifier_0,e.symbolName(a)))}i.exports.set(a.escapedName,a);a.parent=i}function bindEnumDeclaration(t){return e.isEnumConst(t)?bindBlockScopedDeclaration(t,128,68008831):bindBlockScopedDeclaration(t,256,68008191)}function bindVariableDeclarationOrBindingElement(t){if(b){checkStrictModeEvalOrArguments(t,t.name)}if(!e.isBindingPattern(t.name)){var r=e.isInJSFile(t)&&!!e.getJSDocEnumTag(t);var n=r?256:0;var i=r?68008191:0;if(e.isBlockOrCatchScoped(t)){bindBlockScopedDeclaration(t,2|n,67220415|i)}else if(e.isParameterDeclaration(t)){declareSymbolAndAddToSymbolTable(t,1,67220415)}else{declareSymbolAndAddToSymbolTable(t,1|n,67220414|i)}}}function bindParameter(t){if(t.kind===299&&o.kind!==293){return}if(b&&!(t.flags&4194304)){checkStrictModeEvalOrArguments(t,t.name)}if(e.isBindingPattern(t.name)){bindAnonymousDeclaration(t,1,"__"+t.parent.parameters.indexOf(t))}else{declareSymbolAndAddToSymbolTable(t,1,67220415)}if(e.isParameterPropertyDeclaration(t)){var r=t.parent.parent;declareSymbol(r.symbol.members,r.symbol,t,4|(t.questionToken?16777216:0),0)}}function bindFunctionDeclaration(r){if(!t.isDeclarationFile&&!(r.flags&4194304)){if(e.isAsyncFunction(r)){S|=1024}}checkStrictModeFunctionName(r);if(b){checkStrictModeFunctionDeclaration(r);bindBlockScopedDeclaration(r,16,67219887)}else{declareSymbolAndAddToSymbolTable(r,16,67219887)}}function bindFunctionExpression(r){if(!t.isDeclarationFile&&!(r.flags&4194304)){if(e.isAsyncFunction(r)){S|=1024}}if(d){r.flowNode=d}checkStrictModeFunctionName(r);var n=r.name?r.name.escapedText:"__function";return bindAnonymousDeclaration(r,16,n)}function bindPropertyOrMethodOrAccessor(r,n,i){if(!t.isDeclarationFile&&!(r.flags&4194304)&&e.isAsyncFunction(r)){S|=1024}if(d&&e.isObjectLiteralOrClassExpressionMethod(r)){r.flowNode=d}return e.hasDynamicName(r)?bindAnonymousDeclaration(r,n,"__computed"):declareSymbolAndAddToSymbolTable(r,n,i)}function getInferTypeContainer(t){var r=e.findAncestor(t,function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&t.parent.extendsType===t});return r&&r.parent}function bindTypeParameter(t){if(e.isJSDocTemplateTag(t.parent)){var r=e.find(t.parent.parent.tags,e.isJSDocTypeAlias)||e.getHostSignatureFromJSDoc(t.parent);if(r){if(!r.locals){r.locals=e.createSymbolTable()}declareSymbol(r.locals,undefined,t,262144,67635688)}else{declareSymbolAndAddToSymbolTable(t,262144,67635688)}}else if(t.parent.kind===176){var n=getInferTypeContainer(t.parent);if(n){if(!n.locals){n.locals=e.createSymbolTable()}declareSymbol(n.locals,undefined,t,262144,67635688)}else{bindAnonymousDeclaration(t,262144,getDeclarationName(t))}}else{declareSymbolAndAddToSymbolTable(t,262144,67635688)}}function shouldReportErrorOnModuleDeclaration(e){var t=getModuleInstanceState(e);return t===1||t===2&&!!r.preserveConstEnums}function checkUnreachable(t){if(!(d.flags&1)){return false}if(d===D){var n=e.isStatementButNotDeclaration(t)&&t.kind!==220||t.kind===240||t.kind===244&&shouldReportErrorOnModuleDeclaration(t);if(n){d=k;if(!r.allowUnreachableCode){var i=e.unreachableCodeIsError(r)&&!(t.flags&4194304)&&(!e.isVariableStatement(t)||!!(e.getCombinedNodeFlags(t.declarationList)&3)||t.declarationList.declarations.some(function(e){return!!e.initializer}));eachUnreachableRange(t,function(t,r){return errorOrSuggestionOnRange(i,t,r,e.Diagnostics.Unreachable_code_detected)})}}}return true}}function eachUnreachableRange(t,r){if(e.isStatement(t)&&isExecutableStatement(t)&&e.isBlock(t.parent)){var n=t.parent.statements;var i=e.sliceAfter(n,t);e.getRangesWhere(i,isExecutableStatement,function(e,t){return r(i[e],i[t-1])})}else{r(t,t)}}function isExecutableStatement(t){return!e.isFunctionDeclaration(t)&&!isPurelyTypeDeclaration(t)&&!e.isEnumDeclaration(t)&&!(e.isVariableStatement(t)&&!(e.getCombinedNodeFlags(t)&(1|2))&&t.declarationList.declarations.some(function(e){return!e.initializer}))}function isPurelyTypeDeclaration(t){switch(t.kind){case 241:case 242:return true;case 244:return getModuleInstanceState(t)!==1;case 243:return e.hasModifier(t,2048);default:return false}}function isExportsOrModuleExportsOrAlias(t,r){return e.isExportsIdentifier(r)||e.isModuleExportsPropertyAccessExpression(r)||e.isIdentifier(r)&&isNameOfExportsOrModuleExportsAliasDeclaration(t,r)}e.isExportsOrModuleExportsOrAlias=isExportsOrModuleExportsOrAlias;function isNameOfExportsOrModuleExportsAliasDeclaration(t,r){var n=lookupSymbolForNameWorker(t,r.escapedText);return!!n&&!!n.valueDeclaration&&e.isVariableDeclaration(n.valueDeclaration)&&!!n.valueDeclaration.initializer&&isExportsOrModuleExportsOrAliasOrAssignment(t,n.valueDeclaration.initializer)}function isExportsOrModuleExportsOrAliasOrAssignment(t,r){return isExportsOrModuleExportsOrAlias(t,r)||e.isAssignmentExpression(r,true)&&(isExportsOrModuleExportsOrAliasOrAssignment(t,r.left)||isExportsOrModuleExportsOrAliasOrAssignment(t,r.right))}function lookupSymbolForNameWorker(t,r){var n=t.locals&&t.locals.get(r);if(n){return n.exportSymbol||n}if(e.isSourceFile(t)&&t.jsGlobalAugmentations&&t.jsGlobalAugmentations.has(r)){return t.jsGlobalAugmentations.get(r)}return t.symbol&&t.symbol.exports&&t.symbol.exports.get(r)}function computeTransformFlagsForNode(e,t){var r=e.kind;switch(r){case 191:return computeCallExpression(e,t);case 192:return computeNewExpression(e,t);case 244:return computeModuleDeclaration(e,t);case 195:return computeParenthesizedExpression(e,t);case 204:return computeBinaryExpression(e,t);case 221:return computeExpressionStatement(e,t);case 151:return computeParameter(e,t);case 197:return computeArrowFunction(e,t);case 196:return computeFunctionExpression(e,t);case 239:return computeFunctionDeclaration(e,t);case 237:return computeVariableDeclaration(e,t);case 238:return computeVariableDeclarationList(e,t);case 219:return computeVariableStatement(e,t);case 233:return computeLabeledStatement(e,t);case 240:return computeClassDeclaration(e,t);case 209:return computeClassExpression(e,t);case 273:return computeHeritageClause(e,t);case 274:return computeCatchClause(e,t);case 211:return computeExpressionWithTypeArguments(e,t);case 157:return computeConstructor(e,t);case 154:return computePropertyDeclaration(e,t);case 156:return computeMethod(e,t);case 158:case 159:return computeAccessor(e,t);case 248:return computeImportEquals(e,t);case 189:return computePropertyAccess(e,t);case 190:return computeElementAccess(e,t);default:return computeOther(e,r,t)}}e.computeTransformFlagsForNode=computeTransformFlagsForNode;function computeCallExpression(e,t){var r=t;var n=e.expression;if(e.typeArguments){r|=3}if(t&131072||n.transformFlags&(33554432|67108864)){r|=192;if(n.transformFlags&67108864){r|=8192}}if(n.kind===92){r|=16777216;if(t&8192){r|=16384}}e.transformFlags=r|536870912;return r&~637666625}function computeNewExpression(e,t){var r=t;if(e.typeArguments){r|=3}if(t&131072){r|=192}e.transformFlags=r|536870912;return r&~637666625}function computeBinaryExpression(e,t){var r=t;var n=e.operatorToken.kind;var i=e.left.kind;if(n===59&&i===188){r|=8|192|3072}else if(n===59&&i===187){r|=192|3072}else if(n===41||n===63){r|=32}e.transformFlags=r|536870912;return r&~637535553}function computeParameter(t,r){var n=r;var i=t.name;var a=t.initializer;var o=t.dotDotDotToken;if(t.questionToken||t.type||r&4096&&e.some(t.decorators)||e.isThisIdentifier(i)){n|=3}if(e.hasModifier(t,92)){n|=3|4096}if(r&262144){n|=8}if(r&2097152||a||o){n|=192|65536}t.transformFlags=n|536870912;return n&~637535553}function computeParenthesizedExpression(e,t){var r=t;var n=e.expression;var i=n.kind;var a=n.transformFlags;if(i===212||i===194){r|=3}if(a&1024){r|=1024}e.transformFlags=r|536870912;return r&~536872257}function computeClassDeclaration(t,r){var n;if(e.hasModifier(t,2)){n=3}else{n=r|192;if(r&4096||t.typeParameters){n|=3}if(r&32768){n|=8192}}t.transformFlags=n|536870912;return n&~638121281}function computeClassExpression(e,t){var r=t|192;if(t&4096||e.typeParameters){r|=3}if(t&32768){r|=8192}e.transformFlags=r|536870912;return r&~638121281}function computeHeritageClause(t,r){var n=r;switch(t.token){case 86:n|=192;break;case 109:n|=3;break;default:e.Debug.fail("Unexpected token for heritage clause");break}t.transformFlags=n|536870912;return n&~637535553}function computeCatchClause(t,r){var n=r;if(!t.variableDeclaration){n|=8}else if(e.isBindingPattern(t.variableDeclaration.name)){n|=192}t.transformFlags=n|536870912;return n&~637797697}function computeExpressionWithTypeArguments(e,t){var r=t|192;if(e.typeArguments){r|=3}e.transformFlags=r|536870912;return r&~637535553}function computeConstructor(t,r){var n=r;if(e.hasModifier(t,2270)||!t.body){n|=3}if(r&262144){n|=8}t.transformFlags=n|536870912;return n&~653616449}function computeMethod(t,r){var n=r|192;if(t.decorators||e.hasModifier(t,2270)||t.typeParameters||t.type||t.name&&e.isComputedPropertyName(t.name)||!t.body){n|=3}if(r&262144){n|=8}if(e.hasModifier(t,256)){n|=t.asteriskToken?8:16}if(t.asteriskToken){n|=768}t.transformFlags=n|536870912;return n&~653616449}function computeAccessor(t,r){var n=r;if(t.decorators||e.hasModifier(t,2270)||t.type||t.name&&e.isComputedPropertyName(t.name)||!t.body){n|=3}if(r&262144){n|=8}t.transformFlags=n|536870912;return n&~653616449}function computePropertyDeclaration(t,r){var n=r|3;if(t.initializer||e.isComputedPropertyName(t.name)){n|=4096}t.transformFlags=n|536870912;return n&~637535553}function computeFunctionDeclaration(t,r){var n;var i=e.getModifierFlags(t);var a=t.body;if(!a||i&2){n=3}else{n=r|8388608;if(i&2270||t.typeParameters||t.type){n|=3}if(i&256){n|=t.asteriskToken?8:16}if(r&262144){n|=8}if(r&81920){n|=192}if(t.asteriskToken){n|=768}}t.transformFlags=n|536870912;return n&~653620545}function computeFunctionExpression(t,r){var n=r;if(e.hasModifier(t,2270)||t.typeParameters||t.type){n|=3}if(e.hasModifier(t,256)){n|=t.asteriskToken?8:16}if(r&262144){n|=8}if(r&81920){n|=192}if(t.asteriskToken){n|=768}t.transformFlags=n|536870912;return n&~653620545}function computeArrowFunction(t,r){var n=r|192;if(e.hasModifier(t,2270)||t.typeParameters||t.type){n|=3}if(e.hasModifier(t,256)){n|=16}if(r&262144){n|=8}if(r&8192){n|=16384}t.transformFlags=n|536870912;return n&~653604161}function computePropertyAccess(e,t){var r=t;if(r&33554432){r^=33554432;r|=67108864|16|8}e.transformFlags=r|536870912;return r&~570426689}function computeElementAccess(e,t){var r=t;var n=e.expression;var i=n.transformFlags;if(i&33554432){r&=~33554432;r|=67108864|16|8}e.transformFlags=r|536870912;return r&~570426689}function computeVariableDeclaration(e,t){var r=t;r|=192|2097152;if(t&262144){r|=8}if(e.type){r|=3}e.transformFlags=r|536870912;return r&~637535553}function computeVariableStatement(t,r){var n;var i=t.declarationList.transformFlags;if(e.hasModifier(t,2)){n=3}else{n=r;if(i&2097152){n|=192}}t.transformFlags=n|536870912;return n&~637535553}function computeLabeledStatement(t,r){var n=r;if(r&1048576&&e.isIterationStatement(t,true)){n|=192}t.transformFlags=n|536870912;return n&~637535553}function computeImportEquals(t,r){var n=r;if(!e.isExternalModuleImportEqualsDeclaration(t)){n|=3}t.transformFlags=n|536870912;return n&~637535553}function computeExpressionStatement(e,t){var r=t;if(e.expression.transformFlags&1024){r|=192}e.transformFlags=r|536870912;return r&~637535553}function computeModuleDeclaration(t,r){var n=3;var i=e.getModifierFlags(t);if((i&2)===0){n|=r}t.transformFlags=n|536870912;return n&~647001409}function computeVariableDeclarationList(e,t){var r=t|8388608;if(t&2097152){r|=192}if(e.flags&3){r|=192|1048576}e.transformFlags=r|536870912;return r&~639894849}function computeOther(e,t,r){var n=r;var i=637535553;switch(t){case 121:case 201:n|=8|16;break;case 194:case 212:case 308:n|=3;i=536872257;break;case 115:case 113:case 114:case 118:case 125:case 77:case 243:case 278:case 213:case 133:n|=3;break;case 260:case 261:case 262:case 11:case 263:case 264:case 265:case 266:case 267:case 268:case 269:case 270:n|=4;break;case 14:case 15:case 16:case 17:case 206:case 193:case 276:case 116:case 214:n|=192;break;case 10:if(e.hasExtendedUnicodeEscape){n|=192}break;case 8:if(e.numericLiteralFlags&384){n|=192}break;case 9:n|=8;break;case 227:if(e.awaitModifier){n|=8}n|=192;break;case 207:n|=8|192|4194304;break;case 120:case 135:case 146:case 132:case 136:case 138:case 123:case 139:case 106:case 150:case 153:case 155:case 160:case 161:case 162:case 163:case 164:case 165:case 166:case 167:case 168:case 169:case 170:case 171:case 172:case 173:case 174:case 175:case 176:case 177:case 241:case 242:case 178:case 179:case 180:case 181:case 182:case 247:n=3;i=-3;break;case 149:n|=524288;if(r&8192){n|=32768}break;case 208:n|=192|131072;break;case 277:n|=8|262144;break;case 98:n|=192|33554432;i=536872257;break;case 100:n|=8192;break;case 184:n|=192|2097152;if(r&131072){n|=8|262144}i=637666625;break;case 185:n|=192|2097152;i=637666625;break;case 186:n|=192;if(e.dotDotDotToken){n|=131072}break;case 152:n|=3|4096;break;case 188:i=638358849;if(r&524288){n|=192}if(r&32768){n|=8192}if(r&262144){n|=8}break;case 187:case 192:i=637666625;if(r&131072){n|=192}break;case 223:case 224:case 225:case 226:if(r&1048576){n|=192}break;case 279:if(r&16384){n|=192}break;case 230:n|=8388608|8;break;case 228:case 229:n|=8388608;break}e.transformFlags=n|536870912;return n&~i}function getTransformFlagsSubtreeExclusions(e){if(e>=163&&e<=183){return-3}switch(e){case 191:case 192:case 187:return 637666625;case 244:return 647001409;case 151:return 637535553;case 197:return 653604161;case 196:case 239:return 653620545;case 238:return 639894849;case 240:case 209:return 638121281;case 157:return 653616449;case 156:case 158:case 159:return 653616449;case 120:case 135:case 146:case 132:case 138:case 136:case 123:case 139:case 106:case 150:case 153:case 155:case 160:case 161:case 162:case 241:case 242:return-3;case 188:return 638358849;case 274:return 637797697;case 184:case 185:return 637666625;case 194:case 212:case 308:case 195:case 98:return 536872257;case 189:case 190:return 570426689;default:return 637535553}}e.getTransformFlagsSubtreeExclusions=getTransformFlagsSubtreeExclusions;function setParentPointers(t,r){r.parent=t;e.forEachChild(r,function(e){return setParentPointers(r,e)})}})(s||(s={}));var s;(function(e){function createGetSymbolWalker(t,r,n,i,a,o,s,c,u,l){return getSymbolWalker;function getSymbolWalker(f){if(f===void 0){f=function(){return true}}var d=[];var p=[];return{walkType:function(t){try{visitType(t);return{visitedTypes:e.getOwnValues(d),visitedSymbols:e.getOwnValues(p)}}finally{e.clear(d);e.clear(p)}},walkSymbol:function(t){try{visitSymbol(t);return{visitedTypes:e.getOwnValues(d),visitedSymbols:e.getOwnValues(p)}}finally{e.clear(d);e.clear(p)}}};function visitType(e){if(!e){return}if(d[e.id]){return}d[e.id]=e;var t=visitSymbol(e.symbol);if(t)return;if(e.flags&524288){var r=e;var n=r.objectFlags;if(n&4){visitTypeReference(e)}if(n&32){visitMappedType(e)}if(n&(1|2)){visitInterfaceType(e)}if(n&(8|16)){visitObjectType(r)}}if(e.flags&262144){visitTypeParameter(e)}if(e.flags&3145728){visitUnionOrIntersectionType(e)}if(e.flags&4194304){visitIndexType(e)}if(e.flags&8388608){visitIndexedAccessType(e)}}function visitTypeReference(t){visitType(t.target);e.forEach(t.typeArguments,visitType)}function visitTypeParameter(e){visitType(u(e))}function visitUnionOrIntersectionType(t){e.forEach(t.types,visitType)}function visitIndexType(e){visitType(e.type)}function visitIndexedAccessType(e){visitType(e.objectType);visitType(e.indexType);visitType(e.constraint)}function visitMappedType(e){visitType(e.typeParameter);visitType(e.constraintType);visitType(e.templateType);visitType(e.modifiersType)}function visitSignature(i){var a=r(i);if(a){visitType(a.type)}e.forEach(i.typeParameters,visitType);for(var o=0,s=i.parameters;o<s.length;o++){var c=s[o];visitSymbol(c)}visitType(t(i));visitType(n(i))}function visitInterfaceType(t){visitObjectType(t);e.forEach(t.typeParameters,visitType);e.forEach(i(t),visitType);visitType(t.thisType)}function visitObjectType(e){var t=c(e,0);visitType(t);var r=c(e,1);visitType(r);var n=a(e);for(var i=0,o=n.callSignatures;i<o.length;i++){var s=o[i];visitSignature(s)}for(var u=0,l=n.constructSignatures;u<l.length;u++){var s=l[u];visitSignature(s)}for(var f=0,d=n.properties;f<d.length;f++){var p=d[f];visitSymbol(p)}}function visitSymbol(t){if(!t){return false}var r=e.getSymbolId(t);if(p[r]){return false}p[r]=t;if(!f(t)){return true}var n=o(t);visitType(n);if(t.exports){t.exports.forEach(visitSymbol)}e.forEach(t.declarations,function(e){if(e.type&&e.type.kind===167){var t=e.type;var r=s(l(t.exprName));visitSymbol(r)}});return false}}}e.createGetSymbolWalker=createGetSymbolWalker})(s||(s={}));var s;(function(e){var t=/^".+"$/;var r=1;var a=1;var o=1;var s=1;function getNodeId(e){if(!e.id){e.id=a;a++}return e.id}e.getNodeId=getNodeId;function getSymbolId(e){if(!e.id){e.id=r;r++}return e.id}e.getSymbolId=getSymbolId;function isInstantiatedModule(t,r){var n=e.getModuleInstanceState(t);return n===1||r&&n===2}e.isInstantiatedModule=isInstantiatedModule;function createTypeChecker(r,a){var u=e.memoize(function(){var t=e.createMap();r.getSourceFiles().forEach(function(r){if(!r.resolvedModules)return;e.forEachEntry(r.resolvedModules,function(e){if(e&&e.packageId)t.set(e.packageId.name,true)})});return t});var l;var f;var d;var p=e.objectAllocator.getSymbolConstructor();var g=e.objectAllocator.getTypeConstructor();var _=e.objectAllocator.getSignatureConstructor();var m=0;var y=0;var h=0;var v=0;var T=0;var S=e.createSymbolTable();var b=e.identity;var x=r.getCompilerOptions();var C=e.getEmitScriptTarget(x);var E=e.getEmitModuleKind(x);var D=e.getAllowSyntheticDefaultImports(x);var k=e.getStrictOptionValue(x,"strictNullChecks");var N=e.getStrictOptionValue(x,"strictFunctionTypes");var A=e.getStrictOptionValue(x,"strictBindCallApply");var O=e.getStrictOptionValue(x,"strictPropertyInitialization");var F=e.getStrictOptionValue(x,"noImplicitAny");var P=e.getStrictOptionValue(x,"noImplicitThis");var I=!!x.keyofStringsOnly;var w=x.suppressExcessPropertyErrors?0:32768;var M=createResolver();var L=createNodeBuilder();var R=createSymbol(4,"undefined");R.declarations=[];var B=createSymbol(4,"arguments");var j=createSymbol(4,"require");var J;var W={getNodeCount:function(){return e.sum(r.getSourceFiles(),"nodeCount")},getIdentifierCount:function(){return e.sum(r.getSourceFiles(),"identifierCount")},getSymbolCount:function(){return e.sum(r.getSourceFiles(),"symbolCount")+y},getTypeCount:function(){return m},isUndefinedSymbol:function(e){return e===R},isArgumentsSymbol:function(e){return e===B},isUnknownSymbol:function(e){return e===Q},getMergedSymbol:getMergedSymbol,getDiagnostics:getDiagnostics,getGlobalDiagnostics:getGlobalDiagnostics,getTypeOfSymbolAtLocation:function(t,r){r=e.getParseTreeNode(r);return r?getTypeOfSymbolAtLocation(t,r):ee},getSymbolsOfParameterPropertyDeclaration:function(t,r){var n=e.getParseTreeNode(t,e.isParameter);if(n===undefined)return e.Debug.fail("Cannot get symbols of a synthetic parameter that cannot be resolved to a parse-tree node.");return getSymbolsOfParameterPropertyDeclaration(n,e.escapeLeadingUnderscores(r))},getDeclaredTypeOfSymbol:getDeclaredTypeOfSymbol,getPropertiesOfType:getPropertiesOfType,getPropertyOfType:function(t,r){return getPropertyOfType(t,e.escapeLeadingUnderscores(r))},getTypeOfPropertyOfType:function(t,r){return getTypeOfPropertyOfType(t,e.escapeLeadingUnderscores(r))},getIndexInfoOfType:getIndexInfoOfType,getSignaturesOfType:getSignaturesOfType,getIndexTypeOfType:getIndexTypeOfType,getBaseTypes:getBaseTypes,getBaseTypeOfLiteralType:getBaseTypeOfLiteralType,getWidenedType:getWidenedType,getTypeFromTypeNode:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r?getTypeFromTypeNode(r):ee},getParameterType:getTypeAtPosition,getPromisedTypeOfPromise:getPromisedTypeOfPromise,getReturnTypeOfSignature:getReturnTypeOfSignature,getNullableType:getNullableType,getNonNullableType:getNonNullableType,typeToTypeNode:L.typeToTypeNode,indexInfoToIndexSignatureDeclaration:L.indexInfoToIndexSignatureDeclaration,signatureToSignatureDeclaration:L.signatureToSignatureDeclaration,symbolToEntityName:L.symbolToEntityName,symbolToExpression:L.symbolToExpression,symbolToTypeParameterDeclarations:L.symbolToTypeParameterDeclarations,symbolToParameterDeclaration:L.symbolToParameterDeclaration,typeParameterToDeclaration:L.typeParameterToDeclaration,getSymbolsInScope:function(t,r){t=e.getParseTreeNode(t);return t?getSymbolsInScope(t,r):[]},getSymbolAtLocation:function(t){t=e.getParseTreeNode(t);return t?getSymbolAtLocation(t):undefined},getShorthandAssignmentValueSymbol:function(t){t=e.getParseTreeNode(t);return t?getShorthandAssignmentValueSymbol(t):undefined},getExportSpecifierLocalTargetSymbol:function(t){var r=e.getParseTreeNode(t,e.isExportSpecifier);return r?getExportSpecifierLocalTargetSymbol(r):undefined},getExportSymbolOfSymbol:function(e){return getMergedSymbol(e.exportSymbol||e)},getTypeAtLocation:function(t){t=e.getParseTreeNode(t);return t?getTypeOfNode(t):ee},getPropertySymbolOfDestructuringAssignment:function(t){var r=e.getParseTreeNode(t,e.isIdentifier);return r?getPropertySymbolOfDestructuringAssignment(r):undefined},signatureToString:function(t,r,n,i){return signatureToString(t,e.getParseTreeNode(r),n,i)},typeToString:function(t,r,n){return typeToString(t,e.getParseTreeNode(r),n)},symbolToString:function(t,r,n,i){return symbolToString(t,e.getParseTreeNode(r),n,i)},typePredicateToString:function(t,r,n){return typePredicateToString(t,e.getParseTreeNode(r),n)},writeSignature:function(t,r,n,i,a){return signatureToString(t,e.getParseTreeNode(r),n,i,a)},writeType:function(t,r,n,i){return typeToString(t,e.getParseTreeNode(r),n,i)},writeSymbol:function(t,r,n,i,a){return symbolToString(t,e.getParseTreeNode(r),n,i,a)},writeTypePredicate:function(t,r,n,i){return typePredicateToString(t,e.getParseTreeNode(r),n,i)},getAugmentedPropertiesOfType:getAugmentedPropertiesOfType,getRootSymbols:getRootSymbols,getContextualType:function(t){var r=e.getParseTreeNode(t,e.isExpression);return r?getContextualType(r):undefined},getContextualTypeForObjectLiteralElement:function(t){var r=e.getParseTreeNode(t,e.isObjectLiteralElementLike);return r?getContextualTypeForObjectLiteralElement(r):undefined},getContextualTypeForArgumentAtIndex:function(t,r){var n=e.getParseTreeNode(t,e.isCallLikeExpression);return n&&getContextualTypeForArgumentAtIndex(n,r)},getContextualTypeForJsxAttribute:function(t){var r=e.getParseTreeNode(t,e.isJsxAttributeLike);return r&&getContextualTypeForJsxAttribute(r)},isContextSensitive:isContextSensitive,getFullyQualifiedName:getFullyQualifiedName,getResolvedSignature:function(e,t,r){return getResolvedSignatureWorker(e,t,r,false)},getResolvedSignatureForSignatureHelp:function(e,t,r){return getResolvedSignatureWorker(e,t,r,true)},getConstantValue:function(t){var r=e.getParseTreeNode(t,canHaveConstantValue);return r?getConstantValue(r):undefined},isValidPropertyAccess:function(t,r){var n=e.getParseTreeNode(t,e.isPropertyAccessOrQualifiedNameOrImportTypeNode);return!!n&&isValidPropertyAccess(n,e.escapeLeadingUnderscores(r))},isValidPropertyAccessForCompletions:function(t,r,n){var i=e.getParseTreeNode(t,e.isPropertyAccessExpression);return!!i&&isValidPropertyAccessForCompletions(i,r,n)},getSignatureFromDeclaration:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?getSignatureFromDeclaration(r):undefined},isImplementationOfOverload:function(t){var r=e.getParseTreeNode(t,e.isFunctionLike);return r?isImplementationOfOverload(r):undefined},getImmediateAliasedSymbol:getImmediateAliasedSymbol,getAliasedSymbol:resolveAlias,getEmitResolver:getEmitResolver,getExportsOfModule:getExportsOfModuleAsArray,getExportsAndPropertiesOfModule:getExportsAndPropertiesOfModule,getSymbolWalker:e.createGetSymbolWalker(getRestTypeOfSignature,getTypePredicateOfSignature,getReturnTypeOfSignature,getBaseTypes,resolveStructuredTypeMembers,getTypeOfSymbol,getResolvedSymbol,getIndexTypeOfStructuredType,getConstraintOfTypeParameter,getFirstIdentifier),getAmbientModules:getAmbientModules,getJsxIntrinsicTagNamesAt:getJsxIntrinsicTagNamesAt,isOptionalParameter:function(t){var r=e.getParseTreeNode(t,e.isParameter);return r?isOptionalParameter(r):false},tryGetMemberInModuleExports:function(t,r){return tryGetMemberInModuleExports(e.escapeLeadingUnderscores(t),r)},tryGetMemberInModuleExportsAndProperties:function(t,r){return tryGetMemberInModuleExportsAndProperties(e.escapeLeadingUnderscores(t),r)},tryFindAmbientModuleWithoutAugmentations:function(e){return tryFindAmbientModule(e,false)},getApparentType:getApparentType,getUnionType:getUnionType,createAnonymousType:createAnonymousType,createSignature:createSignature,createSymbol:createSymbol,createIndexInfo:createIndexInfo,getAnyType:function(){return X},getStringType:function(){return oe},getNumberType:function(){return se},createPromiseType:createPromiseType,createArrayType:createArrayType,getElementTypeOfArrayType:getElementTypeOfArrayType,getBooleanType:function(){return pe},getFalseType:function(e){return e?ue:le},getTrueType:function(e){return e?fe:de},getVoidType:function(){return _e},getUndefinedType:function(){return re},getNullType:function(){return ie},getESSymbolType:function(){return ge},getNeverType:function(){return me},isSymbolAccessible:isSymbolAccessible,getObjectFlags:e.getObjectFlags,isArrayLikeType:isArrayLikeType,isTypeInvalidDueToUnionDiscriminant:isTypeInvalidDueToUnionDiscriminant,getAllPossiblePropertiesOfTypes:getAllPossiblePropertiesOfTypes,getSuggestionForNonexistentProperty:function(e,t){return getSuggestionForNonexistentProperty(e,t)},getSuggestionForNonexistentSymbol:function(t,r,n){return getSuggestionForNonexistentSymbol(t,e.escapeLeadingUnderscores(r),n)},getSuggestionForNonexistentExport:function(e,t){return getSuggestionForNonexistentExport(e,t)},getBaseConstraintOfType:getBaseConstraintOfType,getDefaultFromTypeParameter:function(e){return e&&e.flags&262144?getDefaultFromTypeParameter(e):undefined},resolveName:function(t,r,n,i){return resolveName(r,e.escapeLeadingUnderscores(t),n,undefined,undefined,false,i)},getJsxNamespace:function(t){return e.unescapeLeadingUnderscores(getJsxNamespace(t))},getAccessibleSymbolChain:getAccessibleSymbolChain,getTypePredicateOfSignature:getTypePredicateOfSignature,resolveExternalModuleSymbol:resolveExternalModuleSymbol,tryGetThisTypeAt:function(t){t=e.getParseTreeNode(t);return t&&tryGetThisTypeAt(t)},getTypeArgumentConstraint:function(t){var r=e.getParseTreeNode(t,e.isTypeNode);return r&&getTypeArgumentConstraint(r)},getSuggestionDiagnostics:function(t,r){if(e.skipTypeChecking(t,x)){return e.emptyArray}var i;try{l=r;checkSourceFile(t);e.Debug.assert(!!(getNodeLinks(t).flags&1));i=e.addRange(i,Yt.get(t.fileName));if(!t.isDeclarationFile&&(!unusedIsError(0)||!unusedIsError(1))){addUnusedDiagnostics()}return i||e.emptyArray}finally{l=undefined}function addUnusedDiagnostics(){checkUnusedIdentifiers(getPotentiallyUnusedIdentifiers(t),function(t,r,a){if(!e.containsParseError(t)&&!unusedIsError(r)){(i||(i=[])).push(n({},a,{category:e.DiagnosticCategory.Suggestion}))}})}},runWithCancellationToken:function(e,t){try{l=e;return t(W)}finally{l=undefined}},getLocalTypeParametersOfClassOrInterfaceOrTypeAlias:getLocalTypeParametersOfClassOrInterfaceOrTypeAlias};function getResolvedSignatureWorker(t,r,n,i){var a=e.getParseTreeNode(t,e.isCallLikeExpression);J=n;var o=a?getResolvedSignature(a,r,i):undefined;J=undefined;return o}var U=e.createMap();var z=e.createMap();var V=e.createMap();var K=e.createMap();var q=e.createMap();var G=[];var H=e.createMap();var Q=createSymbol(4,"unknown");var $=createSymbol(0,"__resolving__");var X=createIntrinsicType(1,"any");var Y=createIntrinsicType(1,"any");var Z=createIntrinsicType(1,"any");var ee=createIntrinsicType(1,"error");var te=createIntrinsicType(2,"unknown");var re=createIntrinsicType(32768,"undefined");var ne=k?re:createIntrinsicType(32768|134217728,"undefined");var ie=createIntrinsicType(65536,"null");var ae=k?ie:createIntrinsicType(65536|134217728,"null");var oe=createIntrinsicType(4,"string");var se=createIntrinsicType(8,"number");var ce=createIntrinsicType(64,"bigint");var ue=createIntrinsicType(512,"false");var le=createIntrinsicType(512,"false");var fe=createIntrinsicType(512,"true");var de=createIntrinsicType(512,"true");fe.regularType=de;fe.freshType=fe;de.regularType=de;de.freshType=fe;ue.regularType=le;ue.freshType=ue;le.regularType=le;le.freshType=ue;var pe=createBooleanType([le,de]);createBooleanType([le,fe]);createBooleanType([ue,de]);createBooleanType([ue,fe]);var ge=createIntrinsicType(4096,"symbol");var _e=createIntrinsicType(16384,"void");var me=createIntrinsicType(131072,"never");var ye=createIntrinsicType(131072,"never");var he=createIntrinsicType(131072,"never");var ve=createIntrinsicType(67108864,"object");var Te=getUnionType([oe,se,ge]);var Se=I?oe:Te;var be=getUnionType([se,ce]);var xe=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);var Ce=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);Ce.objectFlags|=4096;var Ee=createSymbol(2048,"__type");Ee.members=e.createSymbolTable();var De=createAnonymousType(Ee,S,e.emptyArray,e.emptyArray,undefined,undefined);var ke=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);ke.instantiations=e.createMap();var Ne=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);Ne.flags|=536870912;var Ae=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);var Oe=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);var Fe=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined);var Pe=createType(262144);var Ie=createType(262144);Ie.constraint=Pe;var we=createType(262144);var Me=createIdentifierTypePredicate("<<unresolved>>",0,X);var Le=createSignature(undefined,undefined,undefined,e.emptyArray,X,undefined,0,false,false);var Re=createSignature(undefined,undefined,undefined,e.emptyArray,ee,undefined,0,false,false);var Be=createSignature(undefined,undefined,undefined,e.emptyArray,X,undefined,0,false,false);var je=createSignature(undefined,undefined,undefined,e.emptyArray,ye,undefined,0,false,false);var Je=createIndexInfo(oe,true);var We=e.createSymbolTable();var Ue;var ze=e.createMap();var Ve;var Ke;var qe;var Ge;var He;var Qe;var $e;var Xe;var Ye;var Ze;var et;var tt;var rt;var nt;var it;var at;var ot;var st;var ct;var ut;var lt;var ft;var dt;var pt;var gt;var _t;var mt;var yt;var ht;var vt;var Tt;var St;var bt;var xt;var Ct;var Et;var Dt=e.createMap();var kt=0;var Nt=0;var At=0;var Ot=false;var Ft=getLiteralType("");var Pt=getLiteralType(0);var It=getLiteralType({negative:false,base10Value:"0"});var wt=[];var Mt=[];var Lt=[];var Rt=0;var Bt=10;var jt=[];var Jt=[];var Wt=[];var Ut=[];var zt=[];var Vt=[];var Kt=[];var qt=[];var Gt=[];var Ht=[];var Qt=[];var $t=[];var Xt=e.createDiagnosticCollection();var Yt=e.createMultiMap();var Zt;(function(e){e[e["None"]=0]="None";e[e["TypeofEQString"]=1]="TypeofEQString";e[e["TypeofEQNumber"]=2]="TypeofEQNumber";e[e["TypeofEQBigInt"]=4]="TypeofEQBigInt";e[e["TypeofEQBoolean"]=8]="TypeofEQBoolean";e[e["TypeofEQSymbol"]=16]="TypeofEQSymbol";e[e["TypeofEQObject"]=32]="TypeofEQObject";e[e["TypeofEQFunction"]=64]="TypeofEQFunction";e[e["TypeofEQHostObject"]=128]="TypeofEQHostObject";e[e["TypeofNEString"]=256]="TypeofNEString";e[e["TypeofNENumber"]=512]="TypeofNENumber";e[e["TypeofNEBigInt"]=1024]="TypeofNEBigInt";e[e["TypeofNEBoolean"]=2048]="TypeofNEBoolean";e[e["TypeofNESymbol"]=4096]="TypeofNESymbol";e[e["TypeofNEObject"]=8192]="TypeofNEObject";e[e["TypeofNEFunction"]=16384]="TypeofNEFunction";e[e["TypeofNEHostObject"]=32768]="TypeofNEHostObject";e[e["EQUndefined"]=65536]="EQUndefined";e[e["EQNull"]=131072]="EQNull";e[e["EQUndefinedOrNull"]=262144]="EQUndefinedOrNull";e[e["NEUndefined"]=524288]="NEUndefined";e[e["NENull"]=1048576]="NENull";e[e["NEUndefinedOrNull"]=2097152]="NEUndefinedOrNull";e[e["Truthy"]=4194304]="Truthy";e[e["Falsy"]=8388608]="Falsy";e[e["All"]=16777215]="All";e[e["BaseStringStrictFacts"]=3735041]="BaseStringStrictFacts";e[e["BaseStringFacts"]=12582401]="BaseStringFacts";e[e["StringStrictFacts"]=16317953]="StringStrictFacts";e[e["StringFacts"]=16776705]="StringFacts";e[e["EmptyStringStrictFacts"]=12123649]="EmptyStringStrictFacts";e[e["EmptyStringFacts"]=12582401]="EmptyStringFacts";e[e["NonEmptyStringStrictFacts"]=7929345]="NonEmptyStringStrictFacts";e[e["NonEmptyStringFacts"]=16776705]="NonEmptyStringFacts";e[e["BaseNumberStrictFacts"]=3734786]="BaseNumberStrictFacts";e[e["BaseNumberFacts"]=12582146]="BaseNumberFacts";e[e["NumberStrictFacts"]=16317698]="NumberStrictFacts";e[e["NumberFacts"]=16776450]="NumberFacts";e[e["ZeroNumberStrictFacts"]=12123394]="ZeroNumberStrictFacts";e[e["ZeroNumberFacts"]=12582146]="ZeroNumberFacts";e[e["NonZeroNumberStrictFacts"]=7929090]="NonZeroNumberStrictFacts";e[e["NonZeroNumberFacts"]=16776450]="NonZeroNumberFacts";e[e["BaseBigIntStrictFacts"]=3734276]="BaseBigIntStrictFacts";e[e["BaseBigIntFacts"]=12581636]="BaseBigIntFacts";e[e["BigIntStrictFacts"]=16317188]="BigIntStrictFacts";e[e["BigIntFacts"]=16775940]="BigIntFacts";e[e["ZeroBigIntStrictFacts"]=12122884]="ZeroBigIntStrictFacts";e[e["ZeroBigIntFacts"]=12581636]="ZeroBigIntFacts";e[e["NonZeroBigIntStrictFacts"]=7928580]="NonZeroBigIntStrictFacts";e[e["NonZeroBigIntFacts"]=16775940]="NonZeroBigIntFacts";e[e["BaseBooleanStrictFacts"]=3733256]="BaseBooleanStrictFacts";e[e["BaseBooleanFacts"]=12580616]="BaseBooleanFacts";e[e["BooleanStrictFacts"]=16316168]="BooleanStrictFacts";e[e["BooleanFacts"]=16774920]="BooleanFacts";e[e["FalseStrictFacts"]=12121864]="FalseStrictFacts";e[e["FalseFacts"]=12580616]="FalseFacts";e[e["TrueStrictFacts"]=7927560]="TrueStrictFacts";e[e["TrueFacts"]=16774920]="TrueFacts";e[e["SymbolStrictFacts"]=7925520]="SymbolStrictFacts";e[e["SymbolFacts"]=16772880]="SymbolFacts";e[e["ObjectStrictFacts"]=7888800]="ObjectStrictFacts";e[e["ObjectFacts"]=16736160]="ObjectFacts";e[e["FunctionStrictFacts"]=7880640]="FunctionStrictFacts";e[e["FunctionFacts"]=16728e3]="FunctionFacts";e[e["UndefinedFacts"]=9830144]="UndefinedFacts";e[e["NullFacts"]=9363232]="NullFacts";e[e["EmptyObjectStrictFacts"]=16318463]="EmptyObjectStrictFacts";e[e["EmptyObjectFacts"]=16777215]="EmptyObjectFacts"})(Zt||(Zt={}));var er=e.createMapFromTemplate({string:1,number:2,bigint:4,boolean:8,symbol:16,undefined:65536,object:32,function:64});var tr=e.createMapFromTemplate({string:256,number:512,bigint:1024,boolean:2048,symbol:4096,undefined:524288,object:8192,function:16384});var rr=e.createMapFromTemplate({string:oe,number:se,bigint:ce,boolean:pe,symbol:ge,undefined:re});var nr=createTypeofType();var ir;var ar;var or=e.createMap();var sr=e.createMap();var cr=e.createMap();var ur=e.createMap();var lr=e.createMap();var fr=e.createMap();var dr;(function(e){e[e["Type"]=0]="Type";e[e["ResolvedBaseConstructorType"]=1]="ResolvedBaseConstructorType";e[e["DeclaredType"]=2]="DeclaredType";e[e["ResolvedReturnType"]=3]="ResolvedReturnType";e[e["ImmediateBaseConstraint"]=4]="ImmediateBaseConstraint";e[e["EnumTagType"]=5]="EnumTagType";e[e["JSDocTypeReference"]=6]="JSDocTypeReference"})(dr||(dr={}));var pr;(function(e){e[e["Normal"]=0]="Normal";e[e["SkipContextSensitive"]=1]="SkipContextSensitive";e[e["Inferential"]=2]="Inferential";e[e["Contextual"]=3]="Contextual"})(pr||(pr={}));var gr;(function(e){e[e["None"]=0]="None";e[e["Bivariant"]=1]="Bivariant";e[e["Strict"]=2]="Strict"})(gr||(gr={}));var _r;(function(e){e[e["IncludeReadonly"]=1]="IncludeReadonly";e[e["ExcludeReadonly"]=2]="ExcludeReadonly";e[e["IncludeOptional"]=4]="IncludeOptional";e[e["ExcludeOptional"]=8]="ExcludeOptional"})(_r||(_r={}));var mr;(function(e){e[e["None"]=0]="None";e[e["Source"]=1]="Source";e[e["Target"]=2]="Target";e[e["Both"]=3]="Both"})(mr||(mr={}));var yr;(function(e){e["resolvedExports"]="resolvedExports";e["resolvedMembers"]="resolvedMembers"})(yr||(yr={}));var hr;(function(e){e[e["Local"]=0]="Local";e[e["Parameter"]=1]="Parameter"})(hr||(hr={}));var vr=e.createSymbolTable();vr.set(R.escapedName,R);var Tr=e.and(isNotOverload,isNotAccessor);initializeTypeChecker();return W;function getJsxNamespace(t){if(t){var r=e.getSourceFileOfNode(t);if(r){if(r.localJsxNamespace){return r.localJsxNamespace}var n=r.pragmas.get("jsx");if(n){var i=e.isArray(n)?n[0]:n;r.localJsxFactory=e.parseIsolatedEntityName(i.arguments.factory,C);if(r.localJsxFactory){return r.localJsxNamespace=getFirstIdentifier(r.localJsxFactory).escapedText}}}}if(!ir){ir="React";if(x.jsxFactory){ar=e.parseIsolatedEntityName(x.jsxFactory,C);if(ar){ir=getFirstIdentifier(ar).escapedText}}else if(x.reactNamespace){ir=e.escapeLeadingUnderscores(x.reactNamespace)}}return ir}function getEmitResolver(e,t){getDiagnostics(e,t);return M}function lookupOrIssueError(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);var c=Xt.lookup(s);if(c){return c}else{Xt.add(s);return s}}function addRelatedInfo(e){var t=[];for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}var n;if(!e.relatedInformation){e.relatedInformation=[]}(n=e.relatedInformation).push.apply(n,t);return e}function error(t,r,n,i,a,o){var s=t?e.createDiagnosticForNode(t,r,n,i,a,o):e.createCompilerDiagnostic(r,n,i,a,o);Xt.add(s);return s}function addErrorOrSuggestion(t,r){if(t){Xt.add(r)}else{Yt.add(r.file.fileName,n({},r,{category:e.DiagnosticCategory.Suggestion}))}}function errorOrSuggestion(t,r,n,i,a,o,s){addErrorOrSuggestion(t,"message"in n?e.createDiagnosticForNode(r,n,i,a,o,s):e.createDiagnosticForNodeFromMessageChain(r,n))}function createSymbol(e,t,r){y++;var n=new p(e|33554432,t);n.checkFlags=r||0;return n}function isTransientSymbol(e){return(e.flags&33554432)!==0}function getExcludedSymbolFlags(e){var t=0;if(e&2)t|=67220415;if(e&1)t|=67220414;if(e&4)t|=0;if(e&8)t|=68008959;if(e&16)t|=67219887;if(e&32)t|=68008383;if(e&64)t|=67897736;if(e&256)t|=68008191;if(e&128)t|=68008831;if(e&512)t|=110735;if(e&8192)t|=67212223;if(e&32768)t|=67154879;if(e&65536)t|=67187647;if(e&262144)t|=67635688;if(e&524288)t|=67897832;if(e&2097152)t|=2097152;return t}function recordMergedSymbol(e,t){if(!t.mergeId){t.mergeId=o;o++}jt[t.mergeId]=e}function cloneSymbol(t){var r=createSymbol(t.flags,t.escapedName);r.declarations=t.declarations?t.declarations.slice():[];r.parent=t.parent;if(t.valueDeclaration)r.valueDeclaration=t.valueDeclaration;if(t.constEnumOnlyModule)r.constEnumOnlyModule=true;if(t.members)r.members=e.cloneMap(t.members);if(t.exports)r.exports=e.cloneMap(t.exports);recordMergedSymbol(r,t);return r}function mergeSymbol(t,r){if(!(t.flags&getExcludedSymbolFlags(r.flags))||(r.flags|t.flags)&67108864){e.Debug.assert(r!==t);if(!(t.flags&33554432)){var n=resolveSymbol(t);if(n===Q){return r}t=cloneSymbol(n)}if(r.flags&512&&t.flags&512&&t.constEnumOnlyModule&&!r.constEnumOnlyModule){t.constEnumOnlyModule=false}t.flags|=r.flags;if(r.valueDeclaration&&(!t.valueDeclaration||e.isAssignmentDeclaration(t.valueDeclaration)&&!e.isAssignmentDeclaration(r.valueDeclaration)||e.isEffectiveModuleDeclaration(t.valueDeclaration)&&!e.isEffectiveModuleDeclaration(r.valueDeclaration))){t.valueDeclaration=r.valueDeclaration}e.addRange(t.declarations,r.declarations);if(r.members){if(!t.members)t.members=e.createSymbolTable();mergeSymbolTable(t.members,r.members)}if(r.exports){if(!t.exports)t.exports=e.createSymbolTable();mergeSymbolTable(t.exports,r.exports)}recordMergedSymbol(t,r)}else if(t.flags&1024){error(e.getNameOfDeclaration(r.declarations[0]),e.Diagnostics.Cannot_augment_module_0_with_value_exports_because_it_resolves_to_a_non_module_entity,symbolToString(t))}else{var i=!!(t.flags&384||r.flags&384);var a=!!(t.flags&2||r.flags&2);var o=i?e.Diagnostics.Enum_declarations_can_only_merge_with_namespace_or_other_enum_declarations:a?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0;var s=r.declarations&&e.getSourceFileOfNode(r.declarations[0]);var c=t.declarations&&e.getSourceFileOfNode(t.declarations[0]);var u=symbolToString(r);if(s&&c&&Ue&&!i&&s!==c){var l=e.comparePaths(s.path,c.path)===-1?s:c;var f=l===s?c:s;var d=e.getOrUpdate(Ue,l.path+"|"+f.path,function(){return{firstFile:l,secondFile:f,conflictingSymbols:e.createMap()}});var p=e.getOrUpdate(d.conflictingSymbols,u,function(){return{isBlockScoped:a,firstFileLocations:[],secondFileLocations:[]}});addDuplicateLocations(p.firstFileLocations,r);addDuplicateLocations(p.secondFileLocations,t)}else{addDuplicateDeclarationErrorsForSymbols(r,o,u,t);addDuplicateDeclarationErrorsForSymbols(t,o,u,r)}}return t;function addDuplicateLocations(t,r){for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];e.pushIfUnique(t,(e.getExpandoInitializer(a,false)?e.getNameOfExpando(a):e.getNameOfDeclaration(a))||a)}}}function addDuplicateDeclarationErrorsForSymbols(t,r,n,i){e.forEach(t.declarations,function(t){var a=(e.getExpandoInitializer(t,false)?e.getNameOfExpando(t):e.getNameOfDeclaration(t))||t;addDuplicateDeclarationError(a,r,n,i.declarations)})}function addDuplicateDeclarationError(t,r,n,i){var a=lookupOrIssueError(t,r,n);for(var o=0,s=i||e.emptyArray;o<s.length;o++){var c=s[o];a.relatedInformation=a.relatedInformation||[];if(e.length(a.relatedInformation)>=5)continue;addRelatedInfo(a,!e.length(a.relatedInformation)?e.createDiagnosticForNode(c,e.Diagnostics._0_was_also_declared_here,n):e.createDiagnosticForNode(c,e.Diagnostics.and_here))}}function combineSymbolTables(t,r){if(!e.hasEntries(t))return r;if(!e.hasEntries(r))return t;var n=e.createSymbolTable();mergeSymbolTable(n,t);mergeSymbolTable(n,r);return n}function mergeSymbolTable(e,t){t.forEach(function(t,r){var n=e.get(r);e.set(r,n?mergeSymbol(n,t):t)})}function mergeModuleAugmentation(t){var r=t.parent;if(r.symbol.declarations[0]!==r){e.Debug.assert(r.symbol.declarations.length>1);return}if(e.isGlobalScopeAugmentation(r)){mergeSymbolTable(We,r.symbol.exports)}else{var n=!(t.parent.parent.flags&4194304)?e.Diagnostics.Invalid_module_name_in_augmentation_module_0_cannot_be_found:undefined;var i=resolveExternalModuleNameWorker(t,t,n,true);if(!i){return}i=resolveExternalModuleSymbol(i);if(i.flags&1920){i=mergeSymbol(i,r.symbol)}else{error(t,e.Diagnostics.Cannot_augment_module_0_because_it_resolves_to_a_non_module_entity,t.text)}}}function addToSymbolTable(t,r,n){r.forEach(function(r,i){var a=t.get(i);if(a){e.forEach(a.declarations,addDeclarationDiagnostic(e.unescapeLeadingUnderscores(i),n))}else{t.set(i,r)}});function addDeclarationDiagnostic(t,r){return function(n){return Xt.add(e.createDiagnosticForNode(n,r,t))}}}function getSymbolLinks(e){if(e.flags&33554432)return e;var t=getSymbolId(e);return Jt[t]||(Jt[t]={})}function getNodeLinks(e){var t=getNodeId(e);return Wt[t]||(Wt[t]={flags:0})}function isGlobalSourceFile(t){return t.kind===279&&!e.isExternalOrCommonJsModule(t)}function getSymbol(t,r,n){if(n){var i=t.get(r);if(i){e.Debug.assert((e.getCheckFlags(i)&1)===0,"Should never get an instantiated symbol here.");if(i.flags&n){return i}if(i.flags&2097152){var a=resolveAlias(i);if(a===Q||a.flags&n){return i}}}}}function getSymbolsOfParameterPropertyDeclaration(t,r){var n=t.parent;var i=t.parent.parent;var a=getSymbol(n.locals,r,67220415);var o=getSymbol(getMembersOfSymbol(i.symbol),r,67220415);if(a&&o){return[a,o]}return e.Debug.fail("There should exist two symbols, one as property declaration and one as parameter declaration")}function isBlockScopedNameDeclaredBeforeUse(t,n){var i=e.getSourceFileOfNode(t);var a=e.getSourceFileOfNode(n);if(i!==a){if(E&&(i.externalModuleIndicator||a.externalModuleIndicator)||!x.outFile&&!x.out||isInTypeQuery(n)||t.flags&4194304){return true}if(isUsedInFunctionOrInstanceProperty(n,t)){return true}var o=r.getSourceFiles();return o.indexOf(i)<=o.indexOf(a)}if(t.pos<=n.pos){if(t.kind===186){var s=e.getAncestor(n,186);if(s){return e.findAncestor(s,e.isBindingElement)!==e.findAncestor(t,e.isBindingElement)||t.pos<s.pos}return isBlockScopedNameDeclaredBeforeUse(e.getAncestor(t,237),n)}else if(t.kind===237){return!isImmediatelyUsedInInitializerOfBlockScopedVariable(t,n)}else if(e.isClassDeclaration(t)){return!e.findAncestor(n,function(r){return e.isComputedPropertyName(r)&&r.parent.parent===t})}return true}if(n.parent.kind===257||n.parent.kind===254&&n.parent.isExportEquals){return true}if(n.kind===254&&n.isExportEquals){return true}var c=e.getEnclosingBlockScopeContainer(t);return!!(n.flags&2097152)||isInTypeQuery(n)||isUsedInFunctionOrInstanceProperty(n,t,c);function isImmediatelyUsedInInitializerOfBlockScopedVariable(t,r){var n=e.getEnclosingBlockScopeContainer(t);switch(t.parent.parent.kind){case 219:case 225:case 227:if(isSameScopeDescendentOf(r,t,n)){return true}break}var i=t.parent.parent;return e.isForInOrOfStatement(i)&&isSameScopeDescendentOf(r,i.expression,n)}function isUsedInFunctionOrInstanceProperty(t,r,n){return!!e.findAncestor(t,function(i){if(i===n){return"quit"}if(e.isFunctionLike(i)){return true}var a=i.parent&&i.parent.kind===154&&i.parent.initializer===i;if(a){if(e.hasModifier(i.parent,32)){if(r.kind===156){return true}}else{var o=r.kind===154&&!e.hasModifier(r,32);if(!o||e.getContainingClass(t)!==e.getContainingClass(r)){return true}}}return false})}}function resolveName(e,t,r,n,i,a,o,s){if(o===void 0){o=false}return resolveNameHelper(e,t,r,n,i,a,o,getSymbol,s)}function resolveNameHelper(t,r,n,i,a,o,s,c,u){var l=t;var f;var d;var p;var g;var _=t;var m;var y=false;e:while(t){if(t.locals&&!isGlobalSourceFile(t)){if(f=c(t.locals,r,n)){var h=true;if(e.isFunctionLike(t)&&d&&d!==t.body){if(n&f.flags&67897832&&d.kind!==291){h=f.flags&262144?d===t.type||d.kind===151||d.kind===150:false}if(n&f.flags&3){var v=t;if(x.target&&x.target>=2&&e.isParameter(d)&&v.body&&f.valueDeclaration.pos>=v.body.pos&&f.valueDeclaration.end<=v.body.end){h=false}else if(f.flags&1){h=d.kind===151||d===t.type&&!!e.findAncestor(f.valueDeclaration,e.isParameter)}}}else if(t.kind===175){h=d===t.trueType}if(h){break e}else{f=undefined}}}switch(t.kind){case 279:if(!e.isExternalOrCommonJsModule(t))break;y=true;case 244:var T=getSymbolOfNode(t).exports;if(t.kind===279||e.isAmbientModule(t)){if(f=T.get("default")){var b=e.getLocalSymbolForExportDefault(f);if(b&&f.flags&n&&b.escapedName===r){break e}f=undefined}var C=T.get(r);if(C&&C.flags===2097152&&e.getDeclarationOfKind(C,257)){break}}if(r!=="default"&&(f=c(T,r,n&2623475))){if(e.isSourceFile(t)&&t.commonJsModuleIndicator&&!f.declarations.some(e.isJSDocTypeAlias)){f=undefined}else{break e}}break;case 243:if(f=c(getSymbolOfNode(t).exports,r,n&8)){break e}break;case 154:case 153:if(e.isClassLike(t.parent)&&!e.hasModifier(t,32)){var E=findConstructorDeclaration(t.parent);if(E&&E.locals){if(c(E.locals,r,n&67220415)){g=t}}}break;case 240:case 209:case 241:if(f=c(getSymbolOfNode(t).members||S,r,n&67897832)){if(!isTypeParameterSymbolDeclaredInContainer(f,t)){f=undefined;break}if(d&&e.hasModifier(d,32)){error(_,e.Diagnostics.Static_members_cannot_reference_class_type_parameters);return undefined}break e}if(t.kind===209&&n&32){var D=t.name;if(D&&r===D.escapedText){f=t.symbol;break e}}break;case 211:if(d===t.expression&&t.parent.token===86){var k=t.parent.parent;if(e.isClassLike(k)&&(f=c(getSymbolOfNode(k).members,r,n&67897832))){if(i){error(_,e.Diagnostics.Base_class_expressions_cannot_reference_class_type_parameters)}return undefined}}break;case 149:m=t.parent.parent;if(e.isClassLike(m)||m.kind===241){if(f=c(getSymbolOfNode(m).members,r,n&67897832)){error(_,e.Diagnostics.A_computed_property_name_cannot_reference_a_type_parameter_from_its_containing_type);return undefined}}break;case 156:case 155:case 157:case 158:case 159:case 239:case 197:if(n&3&&r==="arguments"){f=B;break e}break;case 196:if(n&3&&r==="arguments"){f=B;break e}if(n&16){var N=t.name;if(N&&r===N.escapedText){f=t.symbol;break e}}break;case 152:if(t.parent&&t.parent.kind===151){t=t.parent}if(t.parent&&e.isClassElement(t.parent)){t=t.parent}break;case 304:case 297:t=e.getJSDocHost(t);break}if(isSelfReferenceLocation(t)){p=t}d=t;t=t.parent}if(o&&f&&(!p||f!==p.symbol)){f.isReferenced|=n}if(!f){if(d){e.Debug.assert(d.kind===279);if(d.commonJsModuleIndicator&&r==="exports"&&n&d.symbol.flags){return d.symbol}}if(!s){f=c(We,r,n)}}if(!f){if(l&&e.isInJSFile(l)&&l.parent){if(e.isRequireCall(l.parent,false)){return j}}}if(!f){if(i){if(!_||!checkAndReportErrorForMissingPrefix(_,r,a)&&!checkAndReportErrorForExtendingInterface(_)&&!checkAndReportErrorForUsingTypeAsNamespace(_,r,n)&&!checkAndReportErrorForUsingTypeAsValue(_,r,n)&&!checkAndReportErrorForUsingNamespaceModuleAsValue(_,r,n)){var A=void 0;if(u&&Rt<Bt){A=getSuggestedSymbolForNonexistentSymbol(l,r,n);if(A){var O=symbolToString(A);var F=error(_,u,diagnosticName(a),O);if(A.valueDeclaration){addRelatedInfo(F,e.createDiagnosticForNode(A.valueDeclaration,e.Diagnostics._0_is_declared_here,O))}}}if(!A){error(_,i,diagnosticName(a))}Rt++}}return undefined}if(i){if(g){var P=g.name;error(_,e.Diagnostics.Initializer_of_instance_member_variable_0_cannot_reference_identifier_1_declared_in_the_constructor,e.declarationNameToString(P),diagnosticName(a));return undefined}if(_&&(n&2||(n&32||n&384)&&(n&67220415)===67220415)){var I=getExportSymbolOfValueSymbolIfExported(f);if(I.flags&2||I.flags&32||I.flags&384){checkResolvedBlockScopedVariable(I,_)}}if(f&&y&&(n&67220415)===67220415&&!(l.flags&2097152)){if(e.some(f.declarations,function(t){return e.isNamespaceExportDeclaration(t)||e.isSourceFile(t)&&!!t.symbol.globalExports})){error(_,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead,e.unescapeLeadingUnderscores(r))}}}return f}function isSelfReferenceLocation(e){switch(e.kind){case 239:case 240:case 241:case 243:case 242:case 244:return true;default:return false}}function diagnosticName(t){return e.isString(t)?e.unescapeLeadingUnderscores(t):e.declarationNameToString(t)}function isTypeParameterSymbolDeclaredInContainer(t,r){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(a.kind===150){var o=e.isJSDocTemplateTag(a.parent)?e.getJSDocHost(a.parent):a.parent;if(o===r){return!(e.isJSDocTemplateTag(a.parent)&&e.find(a.parent.parent.tags,e.isJSDocTypeAlias))}}}return false}function checkAndReportErrorForMissingPrefix(t,r,n){if(!e.isIdentifier(t)||t.escapedText!==r||isTypeReferenceIdentifier(t)||isInTypeQuery(t)){return false}var i=e.getThisContainer(t,false);var a=i;while(a){if(e.isClassLike(a.parent)){var o=getSymbolOfNode(a.parent);if(!o){break}var s=getTypeOfSymbol(o);if(getPropertyOfType(s,r)){error(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0,diagnosticName(n),symbolToString(o));return true}if(a===i&&!e.hasModifier(a,32)){var c=getDeclaredTypeOfSymbol(o).thisType;if(getPropertyOfType(c,r)){error(t,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0,diagnosticName(n));return true}}}a=a.parent}return false}function checkAndReportErrorForExtendingInterface(t){var r=getEntityNameForExtendingInterface(t);if(r&&resolveEntityName(r,64,true)){error(t,e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements,e.getTextOfNode(r));return true}return false}function getEntityNameForExtendingInterface(t){switch(t.kind){case 72:case 189:return t.parent?getEntityNameForExtendingInterface(t.parent):undefined;case 211:if(e.isEntityNameExpression(t.expression)){return t.expression}default:return undefined}}function checkAndReportErrorForUsingTypeAsNamespace(t,r,n){var i=1920|(e.isInJSFile(t)?67220415:0);if(n===i){var a=resolveSymbol(resolveName(t,r,67897832&~i,undefined,undefined,false));var o=t.parent;if(a){if(e.isQualifiedName(o)){e.Debug.assert(o.left===t,"Should only be resolving left side of qualified name as a namespace");var s=o.right.escapedText;var c=getPropertyOfType(getDeclaredTypeOfSymbol(a),s);if(c){error(o,e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1,e.unescapeLeadingUnderscores(r),e.unescapeLeadingUnderscores(s));return true}}error(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_namespace_here,e.unescapeLeadingUnderscores(r));return true}}return false}function checkAndReportErrorForUsingTypeAsValue(t,r,n){if(n&(67220415&~1024)){if(r==="any"||r==="string"||r==="number"||r==="boolean"||r==="never"){error(t,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here,e.unescapeLeadingUnderscores(r));return true}var i=resolveSymbol(resolveName(t,r,67897832&~67220415,undefined,undefined,false));if(i&&!(i.flags&1024)){var a=r==="Promise"||r==="Symbol"?e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later:e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here;error(t,a,e.unescapeLeadingUnderscores(r));return true}}return false}function checkAndReportErrorForUsingNamespaceModuleAsValue(t,r,n){if(n&(67220415&~1024&~67897832)){var i=resolveSymbol(resolveName(t,r,1024&~67220415,undefined,undefined,false));if(i){error(t,e.Diagnostics.Cannot_use_namespace_0_as_a_value,e.unescapeLeadingUnderscores(r));return true}}else if(n&(67897832&~1024&~67220415)){var i=resolveSymbol(resolveName(t,r,(512|1024)&~67897832,undefined,undefined,false));if(i){error(t,e.Diagnostics.Cannot_use_namespace_0_as_a_type,e.unescapeLeadingUnderscores(r));return true}}return false}function checkResolvedBlockScopedVariable(t,r){e.Debug.assert(!!(t.flags&2||t.flags&32||t.flags&384));var n=e.find(t.declarations,function(t){return e.isBlockOrCatchScoped(t)||e.isClassLike(t)||t.kind===243||e.isInJSFile(t)&&!!e.getJSDocEnumTag(t)});if(n===undefined)return e.Debug.fail("Declaration to checkResolvedBlockScopedVariable is undefined");if(!(n.flags&4194304)&&!isBlockScopedNameDeclaredBeforeUse(n,r)){var i=void 0;var a=e.declarationNameToString(e.getNameOfDeclaration(n));if(t.flags&2){i=error(r,e.Diagnostics.Block_scoped_variable_0_used_before_its_declaration,a)}else if(t.flags&32){i=error(r,e.Diagnostics.Class_0_used_before_its_declaration,a)}else if(t.flags&256){i=error(r,e.Diagnostics.Enum_0_used_before_its_declaration,a)}else{e.Debug.assert(!!(t.flags&128));if(x.preserveConstEnums){i=error(r,e.Diagnostics.Class_0_used_before_its_declaration,a)}}if(i){addRelatedInfo(i,e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_here,a))}}}function isSameScopeDescendentOf(t,r,n){return!!r&&!!e.findAncestor(t,function(t){return t===n||e.isFunctionLike(t)?"quit":t===r})}function getAnyImportSyntax(e){switch(e.kind){case 248:return e;case 250:return e.parent;case 251:return e.parent.parent;case 253:return e.parent.parent.parent;default:return undefined}}function getDeclarationOfAliasSymbol(t){return e.find(t.declarations,e.isAliasSymbolDeclaration)}function getTargetOfImportEqualsDeclaration(t,r){if(t.moduleReference.kind===259){return resolveExternalModuleSymbol(resolveExternalModuleName(t,e.getExternalModuleImportEqualsDeclarationExpression(t)))}return getSymbolOfPartOfRightHandSideOfImportEquals(t.moduleReference,r)}function resolveExportByName(e,t,r){var n=e.exports.get("export=");return n?getPropertyOfType(getTypeOfSymbol(n),t):resolveSymbol(e.exports.get(t),r)}function isSyntacticDefault(t){return e.isExportAssignment(t)&&!t.isExportEquals||e.hasModifier(t,512)||e.isExportSpecifier(t)}function canHaveSyntheticDefault(t,r,n){if(!D){return false}if(!t||t.isDeclarationFile){var i=resolveExportByName(r,"default",true);if(i&&e.some(i.declarations,isSyntacticDefault)){return false}if(resolveExportByName(r,e.escapeLeadingUnderscores("__esModule"),n)){return false}return true}if(!e.isSourceFileJS(t)){return hasExportAssignmentSymbol(r)}return!t.externalModuleIndicator&&!resolveExportByName(r,e.escapeLeadingUnderscores("__esModule"),n)}function getTargetOfImportClause(t,r){var n=resolveExternalModuleName(t,t.parent.moduleSpecifier);if(n){var i=void 0;if(e.isShorthandAmbientModuleSymbol(n)){i=n}else{i=resolveExportByName(n,"default",r)}var a=e.find(n.declarations,e.isSourceFile);var o=canHaveSyntheticDefault(a,n,r);if(!i&&!o){error(t.name,e.Diagnostics.Module_0_has_no_default_export,symbolToString(n))}else if(o){return resolveExternalModuleSymbol(n,r)||resolveSymbol(n,r)}return i}}function getTargetOfNamespaceImport(e,t){var r=e.parent.parent.moduleSpecifier;return resolveESModuleSymbol(resolveExternalModuleName(e,r),r,t)}function combineValueAndTypeSymbols(t,r){if(t===Q&&r===Q){return Q}if(t.flags&(67897832|1920)){return t}var n=createSymbol(t.flags|r.flags,t.escapedName);n.declarations=e.deduplicate(e.concatenate(t.declarations,r.declarations),e.equateValues);n.parent=t.parent||r.parent;if(t.valueDeclaration)n.valueDeclaration=t.valueDeclaration;if(r.members)n.members=r.members;if(t.exports)n.exports=t.exports;return n}function getExportOfModule(e,t,r){if(e.flags&1536){return resolveSymbol(getExportsOfSymbol(e).get(t),r)}}function getPropertyOfVariable(e,t){if(e.flags&3){var r=e.valueDeclaration.type;if(r){return resolveSymbol(getPropertyOfType(getTypeFromTypeNode(r),t))}}}function getExternalModuleMember(t,r,n){if(n===void 0){n=false}var i=resolveExternalModuleName(t,t.moduleSpecifier);var a=resolveESModuleSymbol(i,t.moduleSpecifier,n);if(a){var o=r.propertyName||r.name;if(o.escapedText){if(e.isShorthandAmbientModuleSymbol(i)){return i}var s=void 0;if(i&&i.exports&&i.exports.get("export=")){s=getPropertyOfType(getTypeOfSymbol(a),o.escapedText)}else{s=getPropertyOfVariable(a,o.escapedText)}s=resolveSymbol(s,n);var c=getExportOfModule(a,o.escapedText,n);if(!c&&D&&o.escapedText==="default"){c=resolveExternalModuleSymbol(i,n)||resolveSymbol(i,n)}var u=c&&s&&c!==s?combineValueAndTypeSymbols(s,c):c||s;if(!u){var l=getFullyQualifiedName(i,t);var f=e.declarationNameToString(o);var d=getSuggestedSymbolForNonexistentModule(o,a);if(d!==undefined){var p=symbolToString(d);var g=error(o,e.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_2,l,f,p);if(d.valueDeclaration){addRelatedInfo(g,e.createDiagnosticForNode(d.valueDeclaration,e.Diagnostics._0_is_declared_here,p))}}else{error(o,e.Diagnostics.Module_0_has_no_exported_member_1,l,f)}}return u}}}function getTargetOfImportSpecifier(e,t){return getExternalModuleMember(e.parent.parent.parent,e,t)}function getTargetOfNamespaceExportDeclaration(e,t){return resolveExternalModuleSymbol(e.parent.symbol,t)}function getTargetOfExportSpecifier(e,t,r){return e.parent.parent.moduleSpecifier?getExternalModuleMember(e.parent.parent,e,r):resolveEntityName(e.propertyName||e.name,t,false,r)}function getTargetOfExportAssignment(t,r){var n=e.isExportAssignment(t)?t.expression:t.right;if(e.isClassExpression(n)){return checkExpression(n).symbol}var i=resolveEntityName(n,67220415|67897832|1920,true,r);if(i){return i}checkExpression(n);return getNodeLinks(n).resolvedSymbol}function getTargetOfAliasDeclaration(t,r){if(r===void 0){r=false}switch(t.kind){case 248:return getTargetOfImportEqualsDeclaration(t,r);case 250:return getTargetOfImportClause(t,r);case 251:return getTargetOfNamespaceImport(t,r);case 253:return getTargetOfImportSpecifier(t,r);case 257:return getTargetOfExportSpecifier(t,67220415|67897832|1920,r);case 254:case 204:return getTargetOfExportAssignment(t,r);case 247:return getTargetOfNamespaceExportDeclaration(t,r);default:return e.Debug.fail()}}function isNonLocalAlias(e,t){if(t===void 0){t=67220415|67897832|1920}if(!e)return false;return(e.flags&(2097152|t))===2097152||!!(e.flags&2097152&&e.flags&67108864)}function resolveSymbol(e,t){return!t&&isNonLocalAlias(e)?resolveAlias(e):e}function resolveAlias(t){e.Debug.assert((t.flags&2097152)!==0,"Should only get Alias here.");var r=getSymbolLinks(t);if(!r.target){r.target=$;var n=getDeclarationOfAliasSymbol(t);if(!n)return e.Debug.fail();var i=getTargetOfAliasDeclaration(n);if(r.target===$){r.target=i||Q}else{error(n,e.Diagnostics.Circular_definition_of_import_alias_0,symbolToString(t))}}else if(r.target===$){r.target=Q}return r.target}function markExportAsReferenced(e){var t=getSymbolOfNode(e);var r=resolveAlias(t);if(r){var n=r===Q||r.flags&67220415&&!isConstEnumOrConstEnumOnlyModule(r);if(n){markAliasSymbolAsReferenced(t)}}}function markAliasSymbolAsReferenced(t){var r=getSymbolLinks(t);if(!r.referenced){r.referenced=true;var n=getDeclarationOfAliasSymbol(t);if(!n)return e.Debug.fail();if(n.kind===254){checkExpressionCached(n.expression)}else if(n.kind===257){checkExpressionCached(n.propertyName||n.name)}else if(e.isInternalModuleImportEqualsDeclaration(n)){checkExpressionCached(n.moduleReference)}}}function getSymbolOfPartOfRightHandSideOfImportEquals(t,r){if(t.kind===72&&e.isRightSideOfQualifiedNameOrPropertyAccess(t)){t=t.parent}if(t.kind===72||t.parent.kind===148){return resolveEntityName(t,1920,false,r)}else{e.Debug.assert(t.parent.kind===248);return resolveEntityName(t,67220415|67897832|1920,false,r)}}function getFullyQualifiedName(e,t){return e.parent?getFullyQualifiedName(e.parent,t)+"."+symbolToString(e):symbolToString(e,t,undefined,16|4)}function resolveEntityName(t,r,n,i,a){if(e.nodeIsMissing(t)){return undefined}var o=1920|(e.isInJSFile(t)?r&67220415:0);var s;if(t.kind===72){var c=r===o?e.Diagnostics.Cannot_find_namespace_0:getCannotFindNameDiagnosticForName(getFirstIdentifier(t).escapedText);var u=e.isInJSFile(t)?resolveEntityNameFromAssignmentDeclaration(t,r):undefined;s=resolveName(a||t,t.escapedText,r,n||u?undefined:c,t,true);if(!s){return u}}else if(t.kind===148||t.kind===189){var l=t.kind===148?t.left:t.expression;var f=t.kind===148?t.right:t.name;var d=resolveEntityName(l,o,n,false,a);if(!d||e.nodeIsMissing(f)){return undefined}else if(d===Q){return d}if(e.isInJSFile(t)){if(d.valueDeclaration&&e.isVariableDeclaration(d.valueDeclaration)&&d.valueDeclaration.initializer&&isCommonJsRequire(d.valueDeclaration.initializer)){var p=d.valueDeclaration.initializer.arguments[0];var g=resolveExternalModuleName(p,p);if(g){var _=resolveExternalModuleSymbol(g);if(_){d=_}}}}s=getSymbol(getExportsOfSymbol(d),f.escapedText,r);if(!s){if(!n){error(f,e.Diagnostics.Namespace_0_has_no_exported_member_1,getFullyQualifiedName(d),e.declarationNameToString(f))}return undefined}}else{throw e.Debug.assertNever(t,"Unknown entity name kind.")}e.Debug.assert((e.getCheckFlags(s)&1)===0,"Should never get an instantiated symbol here.");return s.flags&r||i?s:resolveAlias(s)}function resolveEntityNameFromAssignmentDeclaration(e,t){if(isJSDocTypeReference(e.parent)){var r=getAssignmentDeclarationLocation(e.parent);if(r){return resolveName(r,e.escapedText,t,undefined,e,true)}}}function getAssignmentDeclarationLocation(t){var r=e.findAncestor(t,function(t){return!(e.isJSDocNode(t)||t.flags&2097152)?"quit":e.isJSDocTypeAlias(t)});if(r){return}var n=e.getJSDocHost(t);if(e.isExpressionStatement(n)&&e.isBinaryExpression(n.expression)&&e.getAssignmentDeclarationKind(n.expression)===3){var i=getSymbolOfNode(n.expression.left);if(i){return getDeclarationOfJSPrototypeContainer(i)}}if((e.isObjectLiteralMethod(n)||e.isPropertyAssignment(n))&&e.isBinaryExpression(n.parent.parent)&&e.getAssignmentDeclarationKind(n.parent.parent)===6){var i=getSymbolOfNode(n.parent.parent.left);if(i){return getDeclarationOfJSPrototypeContainer(i)}}var a=e.getHostSignatureFromJSDocHost(n);if(a){var i=getSymbolOfNode(a);return i&&i.valueDeclaration}}function getDeclarationOfJSPrototypeContainer(t){var r=t.parent.valueDeclaration;if(!r){return undefined}var n=e.isAssignmentDeclaration(r)?e.getAssignedExpandoInitializer(r):e.hasOnlyExpressionInitializer(r)?e.getDeclaredExpandoInitializer(r):undefined;return n||r}function resolveExternalModuleName(t,r,n){return resolveExternalModuleNameWorker(t,r,n?undefined:e.Diagnostics.Cannot_find_module_0)}function resolveExternalModuleNameWorker(t,r,n,i){if(i===void 0){i=false}return e.isStringLiteralLike(r)?resolveExternalModule(t,r.text,n,r,i):undefined}function resolveExternalModule(t,n,i,a,o){if(o===void 0){o=false}if(n===undefined){return}if(e.startsWith(n,"@types/")){var s=e.Diagnostics.Cannot_import_type_declaration_files_Consider_importing_0_instead_of_1;var c=e.removePrefix(n,"@types/");error(a,s,c,n)}var u=tryFindAmbientModule(n,true);if(u){return u}var l=e.getSourceFileOfNode(t);var f=e.getResolvedModule(l,n);var d=f&&e.getResolutionDiagnostic(x,f);var p=f&&!d&&r.getSourceFile(f.resolvedFileName);if(p){if(p.symbol){if(f.isExternalLibraryImport&&!e.resolutionExtensionIsTSOrJson(f.extension)){errorOnImplicitAnyModule(false,a,f,n)}return getMergedSymbol(p.symbol)}if(i){error(a,e.Diagnostics.File_0_is_not_a_module,p.fileName)}return undefined}if(Ke){var g=e.findBestPatternMatch(Ke,function(e){return e.pattern},n);if(g){return getMergedSymbol(g.symbol)}}if(f&&!e.resolutionExtensionIsTSOrJson(f.extension)&&d===undefined||d===e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type){if(o){var s=e.Diagnostics.Invalid_module_name_in_augmentation_Module_0_resolves_to_an_untyped_module_at_1_which_cannot_be_augmented;error(a,s,n,f.resolvedFileName)}else{errorOnImplicitAnyModule(F&&!!i,a,f,n)}return undefined}if(i){if(e.pathIsRelative(n)){var _=e.getSourceFileOfNode(t);var m=_.redirectedReferences;if(m){var y=e.getNormalizedAbsolutePath(n,e.getDirectoryPath(_.fileName));for(var h=0,v=[".ts",".tsx"];h<v.length;h++){var T=v[h];var S=y+T;if(m.indexOf(S)>=0){error(a,e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,n,S);return undefined}}}}if(d){error(a,d,n,f.resolvedFileName)}else{var b=e.tryExtractTSExtension(n);if(b){var s=e.Diagnostics.An_import_path_cannot_end_with_a_0_extension_Consider_importing_1_instead;error(a,s,b,e.removeExtension(n,b))}else if(!x.resolveJsonModule&&e.fileExtensionIs(n,".json")&&e.getEmitModuleResolutionKind(x)===e.ModuleResolutionKind.NodeJs&&e.hasJsonModuleEmitEnabled(x)){error(a,e.Diagnostics.Cannot_find_module_0_Consider_using_resolveJsonModule_to_import_module_with_json_extension,n)}else{error(a,i,n)}}}return undefined}function errorOnImplicitAnyModule(t,r,n,i){var a=n.packageId,o=n.resolvedFileName;var s=!e.isExternalModuleNameRelative(i)&&a?typesPackageExists(a.name)?e.chainDiagnosticMessages(undefined,e.Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,a.name,e.mangleScopedPackageName(a.name)):e.chainDiagnosticMessages(undefined,e.Diagnostics.Try_npm_install_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,i,e.mangleScopedPackageName(a.name)):undefined;errorOrSuggestion(t,r,e.chainDiagnosticMessages(s,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,i,o))}function typesPackageExists(t){return u().has(e.getTypesPackageName(t))}function resolveExternalModuleSymbol(e,t){if(e){var r=resolveSymbol(e.exports.get("export="),t);var n=getCommonJsExportEquals(r,e);return getMergedSymbol(n)||e}return undefined}function getCommonJsExportEquals(t,r){if(!t||t===Q||t===r||r.exports.size===1||t.flags&2097152){return t}var n=cloneSymbol(t);if(n.exports===undefined){n.flags=n.flags|512;n.exports=e.createSymbolTable()}r.exports.forEach(function(e,t){if(t==="export=")return;n.exports.set(t,n.exports.has(t)?mergeSymbol(n.exports.get(t),e):e)});return n}function resolveESModuleSymbol(t,r,n){var i=resolveExternalModuleSymbol(t,n);if(!n&&i){if(!(i.flags&(1536|3))&&!e.getDeclarationOfKind(i,279)){error(r,e.Diagnostics.Module_0_resolves_to_a_non_module_entity_and_cannot_be_imported_using_this_construct,symbolToString(t));return i}if(x.esModuleInterop){var a=r.parent;if(e.isImportDeclaration(a)&&e.getNamespaceDeclarationNode(a)||e.isImportCall(a)){var o=getTypeOfSymbol(i);var s=getSignaturesOfStructuredType(o,0);if(!s||!s.length){s=getSignaturesOfStructuredType(o,1)}if(s&&s.length){var c=getTypeWithSyntheticDefaultImportType(o,i,t);var u=createSymbol(i.flags,i.escapedName);u.declarations=i.declarations?i.declarations.slice():[];u.parent=i.parent;u.target=i;u.originatingImport=a;if(i.valueDeclaration)u.valueDeclaration=i.valueDeclaration;if(i.constEnumOnlyModule)u.constEnumOnlyModule=true;if(i.members)u.members=e.cloneMap(i.members);if(i.exports)u.exports=e.cloneMap(i.exports);var l=resolveStructuredTypeMembers(c);u.type=createAnonymousType(u,l.members,e.emptyArray,e.emptyArray,l.stringIndexInfo,l.numberIndexInfo);return u}}}}return i}function hasExportAssignmentSymbol(e){return e.exports.get("export=")!==undefined}function getExportsOfModuleAsArray(e){return symbolsToArray(getExportsOfModule(e))}function getExportsAndPropertiesOfModule(t){var r=getExportsOfModuleAsArray(t);var n=resolveExternalModuleSymbol(t);if(n!==t){e.addRange(r,getPropertiesOfType(getTypeOfSymbol(n)))}return r}function tryGetMemberInModuleExports(e,t){var r=getExportsOfModule(t);if(r){return r.get(e)}}function tryGetMemberInModuleExportsAndProperties(e,t){var r=tryGetMemberInModuleExports(e,t);if(r){return r}var n=resolveExternalModuleSymbol(t);if(n===t){return undefined}var i=getTypeOfSymbol(n);return i.flags&131068?undefined:getPropertyOfType(i,e)}function getExportsOfSymbol(e){return e.flags&32?getResolvedMembersOrExportsOfSymbol(e,"resolvedExports"):e.flags&1536?getExportsOfModule(e):e.exports||S}function getExportsOfModule(e){var t=getSymbolLinks(e);return t.resolvedExports||(t.resolvedExports=getExportsOfModuleWorker(e))}function extendExportSymbols(t,r,n,i){if(!r)return;r.forEach(function(r,a){if(a==="default")return;var o=t.get(a);if(!o){t.set(a,r);if(n&&i){n.set(a,{specifierText:e.getTextOfNode(i.moduleSpecifier)})}}else if(n&&i&&o&&resolveSymbol(o)!==resolveSymbol(r)){var s=n.get(a);if(!s.exportsWithDuplicate){s.exportsWithDuplicate=[i]}else{s.exportsWithDuplicate.push(i)}}})}function getExportsOfModuleWorker(t){var r=[];t=resolveExternalModuleSymbol(t);return visit(t)||S;function visit(t){if(!(t&&t.exports&&e.pushIfUnique(r,t))){return}var n=e.cloneMap(t.exports);var i=t.exports.get("__export");if(i){var a=e.createSymbolTable();var o=e.createMap();for(var s=0,c=i.declarations;s<c.length;s++){var u=c[s];var l=resolveExternalModuleName(u,u.moduleSpecifier);var f=visit(l);extendExportSymbols(a,f,o,u)}o.forEach(function(t,r){var i=t.exportsWithDuplicate;if(r==="export="||!(i&&i.length)||n.has(r)){return}for(var a=0,s=i;a<s.length;a++){var c=s[a];Xt.add(e.createDiagnosticForNode(c,e.Diagnostics.Module_0_has_already_exported_a_member_named_1_Consider_explicitly_re_exporting_to_resolve_the_ambiguity,o.get(r).specifierText,e.unescapeLeadingUnderscores(r)))}});extendExportSymbols(n,a)}return n}}function getMergedSymbol(e){var t;return e&&e.mergeId&&(t=jt[e.mergeId])?t:e}function getSymbolOfNode(e){return getMergedSymbol(e.symbol&&getLateBoundSymbol(e.symbol))}function getParentOfSymbol(e){return getMergedSymbol(e.parent&&getLateBoundSymbol(e.parent))}function getAlternativeContainingModules(t,n){var i=e.getSourceFileOfNode(n);var a=""+getNodeId(i);var o=getSymbolLinks(t);var s;if(o.extendedContainersByFile&&(s=o.extendedContainersByFile.get(a))){return s}if(i&&i.imports){for(var c=0,u=i.imports;c<u.length;c++){var l=u[c];if(e.nodeIsSynthesized(l))continue;var f=resolveExternalModuleName(n,l,true);if(!f)continue;var d=getAliasForSymbolInContainer(f,t);if(!d)continue;s=e.append(s,f)}if(e.length(s)){(o.extendedContainersByFile||(o.extendedContainersByFile=e.createMap())).set(a,s);return s}}if(o.extendedContainers){return o.extendedContainers}var p=r.getSourceFiles();for(var g=0,_=p;g<_.length;g++){var m=_[g];if(!e.isExternalModule(m))continue;var y=getSymbolOfNode(m);var d=getAliasForSymbolInContainer(y,t);if(!d)continue;s=e.append(s,y)}return o.extendedContainers=s||e.emptyArray}function getContainersOfSymbol(t,r){var n=getParentOfSymbol(t);if(n){var i=e.mapDefined(n.declarations,fileSymbolIfFileSymbolExportEqualsContainer);var a=r&&getAlternativeContainingModules(t,r);if(r&&getAccessibleSymbolChain(n,r,1920,false)){return e.concatenate(e.concatenate([n],i),a)}var o=e.append(i,n);return e.concatenate(o,a)}var s=e.mapDefined(t.declarations,function(t){return!e.isAmbientModule(t)&&t.parent&&hasNonGlobalAugmentationExternalModuleSymbol(t.parent)?getSymbolOfNode(t.parent):undefined});if(!e.length(s)){return undefined}return e.mapDefined(s,function(e){return getAliasForSymbolInContainer(e,t)?e:undefined});function fileSymbolIfFileSymbolExportEqualsContainer(e){var t=getExternalModuleContainer(e);var r=t&&t.exports&&t.exports.get("export=");return resolveSymbol(r)===resolveSymbol(n)?t:undefined}}function getAliasForSymbolInContainer(t,r){if(t===getParentOfSymbol(r)){return r}var n=getExportsOfSymbol(t);var i=n.get(r.escapedName);if(i&&symbolRefersToTarget(i)){return i}return e.forEachEntry(n,function(e){if(symbolRefersToTarget(e)){return e}});function symbolRefersToTarget(e){if(e===r||resolveSymbol(e)===r||resolveSymbol(e)===resolveSymbol(r)){return e}}}function getExportSymbolOfValueSymbolIfExported(e){return getMergedSymbol(e&&(e.flags&1048576)!==0?e.exportSymbol:e)}function symbolIsValue(e){return!!(e.flags&67220415||e.flags&2097152&&resolveAlias(e).flags&67220415)}function findConstructorDeclaration(t){var r=t.members;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.kind===157&&e.nodeIsPresent(a.body)){return a}}}function createType(e){var t=new g(W,e);m++;t.id=m;return t}function createIntrinsicType(e,t){var r=createType(e);r.intrinsicName=t;return r}function createBooleanType(e){var t=getUnionType(e);t.flags|=16;t.intrinsicName="boolean";return t}function createObjectType(e,t){var r=createType(524288);r.objectFlags=e;r.symbol=t;r.members=undefined;r.properties=undefined;r.callSignatures=undefined;r.constructSignatures=undefined;r.stringIndexInfo=undefined;r.numberIndexInfo=undefined;return r}function createTypeofType(){return getUnionType(e.arrayFrom(er.keys(),getLiteralType))}function isReservedMemberName(e){return e.charCodeAt(0)===95&&e.charCodeAt(1)===95&&e.charCodeAt(2)!==95&&e.charCodeAt(2)!==64}function getNamedMembers(t){var r;t.forEach(function(e,t){if(!isReservedMemberName(t)&&symbolIsValue(e)){(r||(r=[])).push(e)}});return r||e.emptyArray}function setStructuredTypeMembers(t,r,n,i,a,o){t.members=r;t.properties=r===S?e.emptyArray:getNamedMembers(r);t.callSignatures=n;t.constructSignatures=i;t.stringIndexInfo=a;t.numberIndexInfo=o;return t}function createAnonymousType(e,t,r,n,i,a){return setStructuredTypeMembers(createObjectType(16,e),t,r,n,i,a)}function forEachSymbolTableInScope(t,r){var n;for(var i=t;i;i=i.parent){if(i.locals&&!isGlobalSourceFile(i)){if(n=r(i.locals)){return n}}switch(i.kind){case 279:if(!e.isExternalOrCommonJsModule(i)){break}case 244:if(n=r(getSymbolOfNode(i).exports)){return n}break}}return r(We)}function getQualifiedLeftMeaning(e){return e===67220415?67220415:1920}function getAccessibleSymbolChain(t,r,n,i,a){if(a===void 0){a=e.createMap()}if(!(t&&!isPropertyOrMethodDeclarationSymbol(t))){return undefined}var o=""+getSymbolId(t);var s=a.get(o);if(!s){a.set(o,s=[])}return forEachSymbolTableInScope(r,getAccessibleSymbolChainFromSymbolTable);function getAccessibleSymbolChainFromSymbolTable(t,r){if(!e.pushIfUnique(s,t)){return undefined}var n=trySymbolTable(t,r);s.pop();return n}function canQualifySymbol(e,t){return!needsQualification(e,r,t)||!!getAccessibleSymbolChain(e.parent,r,getQualifiedLeftMeaning(t),i,a)}function isAccessible(r,i,a){return t===(i||r)&&!e.some(r.declarations,hasNonGlobalAugmentationExternalModuleSymbol)&&(a||canQualifySymbol(r,n))}function trySymbolTable(a,o){if(isAccessible(a.get(t.escapedName),undefined,o)){return[t]}return e.forEachEntry(a,function(a){if(a.flags&2097152&&a.escapedName!=="export="&&a.escapedName!=="default"&&!(e.isUMDExportSymbol(a)&&r&&e.isExternalModule(e.getSourceFileOfNode(r)))&&(!i||e.some(a.declarations,e.isExternalModuleImportEqualsDeclaration))&&(o||!e.getDeclarationOfKind(a,257))){var s=resolveAlias(a);if(isAccessible(a,s,o)){return[a]}var c=getExportsOfSymbol(s);var u=c&&getAccessibleSymbolChainFromSymbolTable(c,true);if(u&&canQualifySymbol(a,getQualifiedLeftMeaning(n))){return[a].concat(u)}}if(a.escapedName===t.escapedName&&a.exportSymbol){if(isAccessible(getMergedSymbol(a.exportSymbol),undefined,o)){return[t]}}})}}function needsQualification(t,r,n){var i=false;forEachSymbolTableInScope(r,function(r){var a=getMergedSymbol(r.get(t.escapedName));if(!a){return false}if(a===t){return true}a=a.flags&2097152&&!e.getDeclarationOfKind(a,257)?resolveAlias(a):a;if(a.flags&n){i=true;return true}return false});return i}function isPropertyOrMethodDeclarationSymbol(e){if(e.declarations&&e.declarations.length){for(var t=0,r=e.declarations;t<r.length;t++){var n=r[t];switch(n.kind){case 154:case 156:case 158:case 159:continue;default:return false}}return true}return false}function isTypeSymbolAccessible(e,t){var r=isSymbolAccessible(e,t,67897832,false);return r.accessibility===0}function isValueSymbolAccessible(e,t){var r=isSymbolAccessible(e,t,67220415,false);return r.accessibility===0}function isAnySymbolAccessible(t,r,n,i,a){if(!e.length(t))return;var o;for(var s=0,c=t;s<c.length;s++){var u=c[s];var l=getAccessibleSymbolChain(u,r,i,false);if(l){o=u;var f=hasVisibleDeclarations(l[0],a);if(f){return f}}else{if(e.some(u.declarations,hasNonGlobalAugmentationExternalModuleSymbol)){return{accessibility:0}}}var d=getContainersOfSymbol(u,r);var p=e.first(u.declarations);if(!e.length(d)&&i&67220415&&p&&e.isObjectLiteralExpression(p)){if(p.parent&&e.isVariableDeclaration(p.parent)&&p===p.parent.initializer){d=[getSymbolOfNode(p.parent)]}}var g=isAnySymbolAccessible(d,r,n,n===u?getQualifiedLeftMeaning(i):i,a);if(g){return g}}if(o){return{accessibility:1,errorSymbolName:symbolToString(n,r,i),errorModuleName:o!==n?symbolToString(o,r,1920):undefined}}}function isSymbolAccessible(t,r,n,i){if(t&&r){var a=isAnySymbolAccessible([t],r,t,n,i);if(a){return a}var o=e.forEach(t.declarations,getExternalModuleContainer);if(o){var s=getExternalModuleContainer(r);if(o!==s){return{accessibility:2,errorSymbolName:symbolToString(t,r,n),errorModuleName:symbolToString(o)}}}return{accessibility:1,errorSymbolName:symbolToString(t,r,n)}}return{accessibility:0}}function getExternalModuleContainer(t){var r=e.findAncestor(t,hasExternalModuleSymbol);return r&&getSymbolOfNode(r)}function hasExternalModuleSymbol(t){return e.isAmbientModule(t)||t.kind===279&&e.isExternalOrCommonJsModule(t)}function hasNonGlobalAugmentationExternalModuleSymbol(t){return e.isModuleWithStringLiteralName(t)||t.kind===279&&e.isExternalOrCommonJsModule(t)}function hasVisibleDeclarations(t,r){var n;if(!e.every(t.declarations,getIsDeclarationVisible)){return undefined}return{accessibility:0,aliasesToMakeVisible:n};function getIsDeclarationVisible(t){if(!isDeclarationVisible(t)){var r=getAnyImportSyntax(t);if(r&&!e.hasModifier(r,1)&&isDeclarationVisible(r.parent)){return addVisibleAlias(t,r)}else if(e.isVariableDeclaration(t)&&e.isVariableStatement(t.parent.parent)&&!e.hasModifier(t.parent.parent,1)&&isDeclarationVisible(t.parent.parent.parent)){return addVisibleAlias(t,t.parent.parent)}else if(e.isLateVisibilityPaintedStatement(t)&&!e.hasModifier(t,1)&&isDeclarationVisible(t.parent)){return addVisibleAlias(t,t)}return false}return true}function addVisibleAlias(t,i){if(r){getNodeLinks(t).isVisible=true;n=e.appendIfUnique(n,i)}return true}}function isEntityNameVisible(t,r){var n;if(t.parent.kind===167||e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)||t.parent.kind===149){n=67220415|1048576}else if(t.kind===148||t.kind===189||t.parent.kind===248){n=1920}else{n=67897832}var i=getFirstIdentifier(t);var a=resolveName(r,i.escapedText,n,undefined,undefined,false);return a&&hasVisibleDeclarations(a,true)||{accessibility:1,errorSymbolName:e.getTextOfNode(i),errorNode:i}}function symbolToString(t,r,n,i,a){if(i===void 0){i=4}var o=70221824;if(i&2){o|=128}if(i&1){o|=512}if(i&8){o|=16384}if(i&16){o|=134217728}var s=i&4?L.symbolToExpression:L.symbolToEntityName;return a?symbolToStringWorker(a).getText():e.usingSingleLineStringWriter(symbolToStringWorker);function symbolToStringWorker(i){var a=s(t,n,r,o);var c=e.createPrinter({removeComments:true});var u=r&&e.getSourceFileOfNode(r);c.writeNode(4,a,u,i);return i}}function signatureToString(t,r,n,i,a){if(n===void 0){n=0}return a?signatureToStringWorker(a).getText():e.usingSingleLineStringWriter(signatureToStringWorker);function signatureToStringWorker(a){var o;if(n&262144){o=i===1?166:165}else{o=i===1?161:160}var s=L.signatureToSignatureDeclaration(t,o,r,toNodeBuilderFlags(n)|70221824|512);var c=e.createPrinter({removeComments:true,omitTrailingSemicolon:true});var u=r&&e.getSourceFileOfNode(r);c.writeNode(4,s,u,e.getTrailingSemicolonOmittingWriter(a));return a}}function typeToString(t,r,n,i){if(n===void 0){n=1048576|16384}if(i===void 0){i=e.createTextWriter("")}var a=x.noErrorTruncation||n&1;var o=L.typeToTypeNode(t,r,toNodeBuilderFlags(n)|70221824|(a?1:0),i);if(o===undefined)return e.Debug.fail("should always get typenode");var s={removeComments:true};var c=e.createPrinter(s);var u=r&&e.getSourceFileOfNode(r);c.writeNode(4,o,u,i);var l=i.getText();var f=a?undefined:e.defaultMaximumTruncationLength*2;if(f&&l&&l.length>=f){return l.substr(0,f-"...".length)+"..."}return l}function toNodeBuilderFlags(e){if(e===void 0){e=0}return e&9469291}function createNodeBuilder(){return{typeToTypeNode:function(e,t,r,n){return withContext(t,r,n,function(t){return typeToTypeNodeHelper(e,t)})},indexInfoToIndexSignatureDeclaration:function(e,t,r,n,i){return withContext(r,n,i,function(r){return indexInfoToIndexSignatureDeclarationHelper(e,t,r)})},signatureToSignatureDeclaration:function(e,t,r,n,i){return withContext(r,n,i,function(r){return signatureToSignatureDeclarationHelper(e,t,r)})},symbolToEntityName:function(e,t,r,n,i){return withContext(r,n,i,function(r){return symbolToName(e,r,t,false)})},symbolToExpression:function(e,t,r,n,i){return withContext(r,n,i,function(r){return symbolToExpression(e,r,t)})},symbolToTypeParameterDeclarations:function(e,t,r,n){return withContext(t,r,n,function(t){return typeParametersToTypeParameterDeclarations(e,t)})},symbolToParameterDeclaration:function(e,t,r,n){return withContext(t,r,n,function(t){return symbolToParameterDeclaration(e,t)})},typeParameterToDeclaration:function(e,t,r,n){return withContext(t,r,n,function(t){return typeParameterToDeclaration(e,t)})}};function withContext(t,n,i,a){e.Debug.assert(t===undefined||(t.flags&8)===0);var o={enclosingDeclaration:t,flags:n||0,tracker:i&&i.trackSymbol?i:{trackSymbol:e.noop,moduleResolverHost:n&134217728?{getCommonSourceDirectory:r.getCommonSourceDirectory?function(){return r.getCommonSourceDirectory()}:function(){return""},getSourceFiles:function(){return r.getSourceFiles()},getCurrentDirectory:r.getCurrentDirectory&&function(){return r.getCurrentDirectory()}}:undefined},encounteredError:false,visitedTypes:undefined,symbolDepth:undefined,inferTypeParameters:undefined,approximateLength:0};var s=a(o);return o.encounteredError?undefined:s}function checkTruncationLength(t){if(t.truncating)return t.truncating;return t.truncating=!(t.flags&1)&&t.approximateLength>e.defaultMaximumTruncationLength}function typeToTypeNodeHelper(t,r){if(l&&l.throwIfCancellationRequested){l.throwIfCancellationRequested()}var n=r.flags&8388608;r.flags&=~8388608;if(!t){r.encounteredError=true;return undefined}if(t.flags&1){r.approximateLength+=3;return e.createKeywordTypeNode(120)}if(t.flags&2){return e.createKeywordTypeNode(143)}if(t.flags&4){r.approximateLength+=6;return e.createKeywordTypeNode(138)}if(t.flags&8){r.approximateLength+=6;return e.createKeywordTypeNode(135)}if(t.flags&64){r.approximateLength+=6;return e.createKeywordTypeNode(146)}if(t.flags&16){r.approximateLength+=7;return e.createKeywordTypeNode(123)}if(t.flags&1024&&!(t.flags&1048576)){var i=getParentOfSymbol(t.symbol);var a=symbolToTypeNode(i,r,67897832);var o=getDeclaredTypeOfSymbol(i)===t?a:appendReferenceToType(a,e.createTypeReferenceNode(e.symbolName(t.symbol),undefined));return o}if(t.flags&1056){return symbolToTypeNode(t.symbol,r,67897832)}if(t.flags&128){r.approximateLength+=t.value.length+2;return e.createLiteralTypeNode(e.setEmitFlags(e.createLiteral(t.value),16777216))}if(t.flags&256){r.approximateLength+=(""+t.value).length;return e.createLiteralTypeNode(e.createLiteral(t.value))}if(t.flags&2048){r.approximateLength+=e.pseudoBigIntToString(t.value).length+1;return e.createLiteralTypeNode(e.createLiteral(t.value))}if(t.flags&512){r.approximateLength+=t.intrinsicName.length;return t.intrinsicName==="true"?e.createTrue():e.createFalse()}if(t.flags&8192){if(!(r.flags&1048576)){if(isValueSymbolAccessible(t.symbol,r.enclosingDeclaration)){r.approximateLength+=6;return symbolToTypeNode(t.symbol,r,67220415)}if(r.tracker.reportInaccessibleUniqueSymbolError){r.tracker.reportInaccessibleUniqueSymbolError()}}r.approximateLength+=13;return e.createTypeOperatorNode(142,e.createKeywordTypeNode(139))}if(t.flags&16384){r.approximateLength+=4;return e.createKeywordTypeNode(106)}if(t.flags&32768){r.approximateLength+=9;return e.createKeywordTypeNode(141)}if(t.flags&65536){r.approximateLength+=4;return e.createKeywordTypeNode(96)}if(t.flags&131072){r.approximateLength+=5;return e.createKeywordTypeNode(132)}if(t.flags&4096){r.approximateLength+=6;return e.createKeywordTypeNode(139)}if(t.flags&67108864){r.approximateLength+=6;return e.createKeywordTypeNode(136)}if(t.flags&262144&&t.isThisType){if(r.flags&4194304){if(!r.encounteredError&&!(r.flags&32768)){r.encounteredError=true}if(r.tracker.reportInaccessibleThisError){r.tracker.reportInaccessibleThisError()}}r.approximateLength+=4;return e.createThis()}var s=e.getObjectFlags(t);if(s&4){e.Debug.assert(!!(t.flags&524288));return typeReferenceToTypeNode(t)}if(t.flags&262144||s&3){if(t.flags&262144&&e.contains(r.inferTypeParameters,t)){r.approximateLength+=e.symbolName(t.symbol).length+6;return e.createInferTypeNode(typeParameterToDeclarationWithConstraint(t,r,undefined))}if(r.flags&4&&t.flags&262144&&e.length(t.symbol.declarations)&&e.isTypeParameterDeclaration(t.symbol.declarations[0])&&typeParameterShadowsNameInScope(t,r)&&!isTypeSymbolAccessible(t.symbol,r.enclosingDeclaration)){var c=t.symbol.declarations[0].name;r.approximateLength+=e.idText(c).length;return e.createTypeReferenceNode(e.getGeneratedNameForNode(c,16|8),undefined)}return t.symbol?symbolToTypeNode(t.symbol,r,67897832):e.createTypeReferenceNode(e.createIdentifier("?"),undefined)}if(!n&&t.aliasSymbol&&(r.flags&16384||isTypeSymbolAccessible(t.aliasSymbol,r.enclosingDeclaration))){var u=mapToTypeNodes(t.aliasTypeArguments,r);if(isReservedMemberName(t.aliasSymbol.escapedName)&&!(t.aliasSymbol.flags&32))return e.createTypeReferenceNode(e.createIdentifier(""),u);return symbolToTypeNode(t.aliasSymbol,r,67897832,u)}if(t.flags&(1048576|2097152)){var f=t.flags&1048576?formatUnionTypes(t.types):t.types;if(e.length(f)===1){return typeToTypeNodeHelper(f[0],r)}var d=mapToTypeNodes(f,r,true);if(d&&d.length>0){var p=e.createUnionOrIntersectionTypeNode(t.flags&1048576?173:174,d);return p}else{if(!r.encounteredError&&!(r.flags&262144)){r.encounteredError=true}return undefined}}if(s&(16|32)){e.Debug.assert(!!(t.flags&524288));return createAnonymousTypeNode(t)}if(t.flags&4194304){var g=t.type;r.approximateLength+=6;var _=typeToTypeNodeHelper(g,r);return e.createTypeOperatorNode(_)}if(t.flags&8388608){var m=typeToTypeNodeHelper(t.objectType,r);var _=typeToTypeNodeHelper(t.indexType,r);r.approximateLength+=2;return e.createIndexedAccessTypeNode(m,_)}if(t.flags&16777216){var y=typeToTypeNodeHelper(t.checkType,r);var h=r.inferTypeParameters;r.inferTypeParameters=t.root.inferTypeParameters;var v=typeToTypeNodeHelper(t.extendsType,r);r.inferTypeParameters=h;var T=typeToTypeNodeHelper(getTrueTypeFromConditionalType(t),r);var S=typeToTypeNodeHelper(getFalseTypeFromConditionalType(t),r);r.approximateLength+=15;return e.createConditionalTypeNode(y,v,T,S)}if(t.flags&33554432){return typeToTypeNodeHelper(t.typeVariable,r)}return e.Debug.fail("Should be unreachable.");function createMappedTypeNodeFromType(t){e.Debug.assert(!!(t.flags&524288));var n=t.declaration.readonlyToken?e.createToken(t.declaration.readonlyToken.kind):undefined;var i=t.declaration.questionToken?e.createToken(t.declaration.questionToken.kind):undefined;var a;if(isMappedTypeWithKeyofConstraintDeclaration(t)){a=e.createTypeOperatorNode(typeToTypeNodeHelper(getModifiersTypeFromMappedType(t),r))}else{a=typeToTypeNodeHelper(getConstraintTypeFromMappedType(t),r)}var o=typeParameterToDeclarationWithConstraint(getTypeParameterFromMappedType(t),r,a);var s=typeToTypeNodeHelper(getTemplateTypeFromMappedType(t),r);var c=e.createMappedTypeNode(n,o,i,s);r.approximateLength+=10;return e.setEmitFlags(c,1)}function createAnonymousTypeNode(t){var n=""+t.id;var i=t.symbol;var a;if(i){var o=e.getObjectFlags(t)&16&&t.symbol&&t.symbol.flags&32;a=(o?"+":"")+getSymbolId(i);if(isJSConstructor(i.valueDeclaration)){var s=t===getInferredClassType(i)?67897832:67220415;return symbolToTypeNode(i,r,s)}else if(i.flags&32&&!getBaseTypeVariableOfClass(i)&&!(i.valueDeclaration.kind===209&&r.flags&2048)||i.flags&(384|512)||shouldWriteTypeOfFunctionSymbol()){return symbolToTypeNode(i,r,67220415)}else if(r.visitedTypes&&r.visitedTypes.has(n)){var c=getTypeAliasForTypeLiteral(t);if(c){return symbolToTypeNode(c,r,67897832)}else{return createElidedInformationPlaceholder(r)}}else{if(!r.visitedTypes){r.visitedTypes=e.createMap()}if(!r.symbolDepth){r.symbolDepth=e.createMap()}var u=r.symbolDepth.get(a)||0;if(u>10){return createElidedInformationPlaceholder(r)}r.symbolDepth.set(a,u+1);r.visitedTypes.set(n,true);var l=createTypeNodeFromObjectType(t);r.visitedTypes.delete(n);r.symbolDepth.set(a,u);return l}}else{return createTypeNodeFromObjectType(t)}function shouldWriteTypeOfFunctionSymbol(){var t=!!(i.flags&8192)&&e.some(i.declarations,function(t){return e.hasModifier(t,32)});var a=!!(i.flags&16)&&(i.parent||e.forEach(i.declarations,function(e){return e.parent.kind===279||e.parent.kind===245}));if(t||a){return(!!(r.flags&4096)||r.visitedTypes&&r.visitedTypes.has(n))&&(!(r.flags&8)||isValueSymbolAccessible(i,r.enclosingDeclaration))}}}function createTypeNodeFromObjectType(t){if(isGenericMappedType(t)){return createMappedTypeNodeFromType(t)}var n=resolveStructuredTypeMembers(t);if(!n.properties.length&&!n.stringIndexInfo&&!n.numberIndexInfo){if(!n.callSignatures.length&&!n.constructSignatures.length){r.approximateLength+=2;return e.setEmitFlags(e.createTypeLiteralNode(undefined),1)}if(n.callSignatures.length===1&&!n.constructSignatures.length){var i=n.callSignatures[0];var a=signatureToSignatureDeclarationHelper(i,165,r);return a}if(n.constructSignatures.length===1&&!n.callSignatures.length){var i=n.constructSignatures[0];var a=signatureToSignatureDeclarationHelper(i,166,r);return a}}var o=r.flags;r.flags|=4194304;var s=createTypeNodesFromResolvedType(n);r.flags=o;var c=e.createTypeLiteralNode(s);r.approximateLength+=2;return e.setEmitFlags(c,r.flags&1024?0:1)}function typeReferenceToTypeNode(t){var n=t.typeArguments||e.emptyArray;if(t.target===$e){if(r.flags&2){var i=typeToTypeNodeHelper(n[0],r);return e.createTypeReferenceNode("Array",[i])}var a=typeToTypeNodeHelper(n[0],r);return e.createArrayTypeNode(a)}else if(t.target.objectFlags&8){if(n.length>0){var o=getTypeReferenceArity(t);var s=mapToTypeNodes(n.slice(0,o),r);var c=t.target.hasRestElement;if(s){for(var u=t.target.minLength;u<Math.min(o,s.length);u++){s[u]=c&&u===o-1?e.createRestTypeNode(e.createArrayTypeNode(s[u])):e.createOptionalTypeNode(s[u])}return e.createTupleTypeNode(s)}}if(r.encounteredError||r.flags&524288){return e.createTupleTypeNode([])}r.encounteredError=true;return undefined}else if(r.flags&2048&&t.symbol.valueDeclaration&&e.isClassLike(t.symbol.valueDeclaration)&&!isValueSymbolAccessible(t.symbol,r.enclosingDeclaration)){return createAnonymousTypeNode(t)}else{var l=t.target.outerTypeParameters;var u=0;var f=void 0;if(l){var d=l.length;while(u<d){var p=u;var g=getParentSymbolOfTypeParameter(l[u]);do{u++}while(u<d&&getParentSymbolOfTypeParameter(l[u])===g);if(!e.rangeEquals(l,n,p,u)){var _=mapToTypeNodes(n.slice(p,u),r);var m=r.flags;r.flags|=16;var y=symbolToTypeNode(g,r,67897832,_);r.flags=m;f=!f?y:appendReferenceToType(f,y)}}}var h=void 0;if(n.length>0){var v=(t.target.typeParameters||e.emptyArray).length;h=mapToTypeNodes(n.slice(u,v),r)}var T=r.flags;r.flags|=16;var S=symbolToTypeNode(t.symbol,r,67897832,h);r.flags=T;return!f?S:appendReferenceToType(f,S)}}function appendReferenceToType(t,r){if(e.isImportTypeNode(t)){var n=t.typeArguments;if(t.qualifier){(e.isIdentifier(t.qualifier)?t.qualifier:t.qualifier.right).typeArguments=n}t.typeArguments=r.typeArguments;var i=getAccessStack(r);for(var a=0,o=i;a<o.length;a++){var s=o[a];t.qualifier=t.qualifier?e.createQualifiedName(t.qualifier,s):s}return t}else{var n=t.typeArguments;(e.isIdentifier(t.typeName)?t.typeName:t.typeName.right).typeArguments=n;t.typeArguments=r.typeArguments;var i=getAccessStack(r);for(var c=0,u=i;c<u.length;c++){var s=u[c];t.typeName=e.createQualifiedName(t.typeName,s)}return t}}function getAccessStack(t){var r=t.typeName;var n=[];while(!e.isIdentifier(r)){n.unshift(r.right);r=r.left}n.unshift(r);return n}function createTypeNodesFromResolvedType(t){if(checkTruncationLength(r)){return[e.createPropertySignature(undefined,"...",undefined,undefined,undefined)]}var n=[];for(var i=0,a=t.callSignatures;i<a.length;i++){var o=a[i];n.push(signatureToSignatureDeclarationHelper(o,160,r))}for(var s=0,c=t.constructSignatures;s<c.length;s++){var o=c[s];n.push(signatureToSignatureDeclarationHelper(o,161,r))}if(t.stringIndexInfo){var u=void 0;if(t.objectFlags&2048){u=indexInfoToIndexSignatureDeclarationHelper(createIndexInfo(X,t.stringIndexInfo.isReadonly,t.stringIndexInfo.declaration),0,r);u.type=createElidedInformationPlaceholder(r)}else{u=indexInfoToIndexSignatureDeclarationHelper(t.stringIndexInfo,0,r)}n.push(u)}if(t.numberIndexInfo){n.push(indexInfoToIndexSignatureDeclarationHelper(t.numberIndexInfo,1,r))}var l=t.properties;if(!l){return n}var f=0;for(var d=0,p=l;d<p.length;d++){var g=p[d];f++;if(r.flags&2048){if(g.flags&4194304){continue}if(e.getDeclarationModifierFlagsFromSymbol(g)&(8|16)&&r.tracker.reportPrivateInBaseOfClassExpression){r.tracker.reportPrivateInBaseOfClassExpression(e.unescapeLeadingUnderscores(g.escapedName))}}if(checkTruncationLength(r)&&f+2<l.length-1){n.push(e.createPropertySignature(undefined,"... "+(l.length-f)+" more ...",undefined,undefined,undefined));addPropertyToElementList(l[l.length-1],r,n);break}addPropertyToElementList(g,r,n)}return n.length?n:undefined}}function createElidedInformationPlaceholder(t){t.approximateLength+=3;if(!(t.flags&1)){return e.createTypeReferenceNode(e.createIdentifier("..."),undefined)}return e.createKeywordTypeNode(120)}function addPropertyToElementList(t,r,n){var i=!!(e.getCheckFlags(t)&2048);var a=i&&r.flags&33554432?X:getTypeOfSymbol(t);var o=r.enclosingDeclaration;r.enclosingDeclaration=undefined;if(r.tracker.trackSymbol&&e.getCheckFlags(t)&1024){var s=e.first(t.declarations);if(hasLateBindableName(s)){trackComputedName(s.name,o,r)}}var c=symbolToName(t,r,67220415,true);r.approximateLength+=e.symbolName(t).length+1;r.enclosingDeclaration=o;var u=t.flags&16777216?e.createToken(56):undefined;if(t.flags&(16|8192)&&!getPropertiesOfObjectType(a).length){var l=getSignaturesOfType(a,0);for(var f=0,d=l;f<d.length;f++){var p=d[f];var g=signatureToSignatureDeclarationHelper(p,155,r);g.name=c;g.questionToken=u;if(t.valueDeclaration){e.setCommentRange(g,t.valueDeclaration)}n.push(g)}}else{var _=r.flags;r.flags|=i?33554432:0;var m=void 0;if(i&&!!(_&33554432)){m=createElidedInformationPlaceholder(r)}else{m=a?typeToTypeNodeHelper(a,r):e.createKeywordTypeNode(120)}r.flags=_;var y=isReadonlySymbol(t)?[e.createToken(133)]:undefined;if(y){r.approximateLength+=9}var h=e.createPropertySignature(y,c,u,m,undefined);if(t.valueDeclaration){e.setCommentRange(h,t.valueDeclaration)}n.push(h)}}function mapToTypeNodes(t,r,n){if(e.some(t)){if(checkTruncationLength(r)){if(!n){return[e.createTypeReferenceNode("...",undefined)]}else if(t.length>2){return[typeToTypeNodeHelper(t[0],r),e.createTypeReferenceNode("... "+(t.length-2)+" more ...",undefined),typeToTypeNodeHelper(t[t.length-1],r)]}}var i=[];var a=0;for(var o=0,s=t;o<s.length;o++){var c=s[o];a++;if(checkTruncationLength(r)&&a+2<t.length-1){i.push(e.createTypeReferenceNode("... "+(t.length-a)+" more ...",undefined));var u=typeToTypeNodeHelper(t[t.length-1],r);if(u){i.push(u)}break}r.approximateLength+=2;var l=typeToTypeNodeHelper(c,r);if(l){i.push(l)}}return i}}function indexInfoToIndexSignatureDeclarationHelper(t,r,n){var i=e.getNameFromIndexInfo(t)||"x";var a=e.createKeywordTypeNode(r===0?138:135);var o=e.createParameter(undefined,undefined,undefined,i,undefined,a,undefined);var s=typeToTypeNodeHelper(t.type||X,n);if(!t.type&&!(n.flags&2097152)){n.encounteredError=true}n.approximateLength+=i.length+4;return e.createIndexSignature(undefined,t.isReadonly?[e.createToken(133)]:undefined,[o],s)}function signatureToSignatureDeclarationHelper(t,r,n){var i;var a;if(n.flags&32&&t.target&&t.mapper&&t.target.typeParameters){a=t.target.typeParameters.map(function(e){return typeToTypeNodeHelper(instantiateType(e,t.mapper),n)})}else{i=t.typeParameters&&t.typeParameters.map(function(e){return typeParameterToDeclaration(e,n)})}var o=getExpandedParameters(t).map(function(e){return symbolToParameterDeclaration(e,n,r===157)});if(t.thisParameter){var s=symbolToParameterDeclaration(t.thisParameter,n);o.unshift(s)}var c;var u=getTypePredicateOfSignature(t);if(u){var l=u.kind===1?e.setEmitFlags(e.createIdentifier(u.parameterName),16777216):e.createThisTypeNode();var f=typeToTypeNodeHelper(u.type,n);c=e.createTypePredicateNode(l,f)}else{var d=getReturnTypeOfSignature(t);c=d&&typeToTypeNodeHelper(d,n)}if(n.flags&256){if(c&&c.kind===120){c=undefined}}else if(!c){c=e.createKeywordTypeNode(120)}n.approximateLength+=3;return e.createSignatureDeclaration(r,i,o,c,a)}function typeParameterShadowsNameInScope(e,t){return!!resolveName(t.enclosingDeclaration,e.symbol.escapedName,67897832,undefined,e.symbol.escapedName,false)}function typeParameterToDeclarationWithConstraint(t,r,n){var i=r.flags;r.flags&=~512;var a=r.flags&4&&t.symbol.declarations[0]&&e.isTypeParameterDeclaration(t.symbol.declarations[0])&&typeParameterShadowsNameInScope(t,r);var o=a?e.getGeneratedNameForNode(t.symbol.declarations[0].name,16|8):symbolToName(t.symbol,r,67897832,true);var s=getDefaultFromTypeParameter(t);var c=s&&typeToTypeNodeHelper(s,r);r.flags=i;return e.createTypeParameterDeclaration(o,n,c)}function typeParameterToDeclaration(e,t,r){if(r===void 0){r=getConstraintOfTypeParameter(e)}var n=r&&typeToTypeNodeHelper(r,t);return typeParameterToDeclarationWithConstraint(e,t,n)}function symbolToParameterDeclaration(t,r,n){var i=e.getDeclarationOfKind(t,151);if(!i&&!isTransientSymbol(t)){i=e.getDeclarationOfKind(t,299)}var a=getTypeOfSymbol(t);if(i&&isRequiredInitializedParameter(i)){a=getOptionalType(a)}var o=typeToTypeNodeHelper(a,r);var s=!(r.flags&8192)&&n&&i&&i.modifiers?i.modifiers.map(e.getSynthesizedClone):undefined;var c=i&&e.isRestParameter(i)||e.getCheckFlags(t)&8192;var u=c?e.createToken(25):undefined;var l=i?i.name?i.name.kind===72?e.setEmitFlags(e.getSynthesizedClone(i.name),16777216):i.name.kind===148?e.setEmitFlags(e.getSynthesizedClone(i.name.right),16777216):cloneBindingName(i.name):e.symbolName(t):e.symbolName(t);var f=i&&isOptionalParameter(i)||e.getCheckFlags(t)&4096;var d=f?e.createToken(56):undefined;var p=e.createParameter(undefined,s,u,l,d,o,undefined);r.approximateLength+=e.symbolName(t).length+3;return p;function cloneBindingName(t){return elideInitializerAndSetEmitFlags(t);function elideInitializerAndSetEmitFlags(t){if(r.tracker.trackSymbol&&e.isComputedPropertyName(t)&&isLateBindableName(t)){trackComputedName(t,r.enclosingDeclaration,r)}var n=e.visitEachChild(t,elideInitializerAndSetEmitFlags,e.nullTransformationContext,undefined,elideInitializerAndSetEmitFlags);var i=e.nodeIsSynthesized(n)?n:e.getSynthesizedClone(n);if(i.kind===186){i.initializer=undefined}return e.setEmitFlags(i,1|16777216)}}}function trackComputedName(e,t,r){if(!r.tracker.trackSymbol)return;var n=getFirstIdentifier(e.expression);var i=resolveName(n,n.escapedText,67220415|1048576,undefined,undefined,true);if(i){r.tracker.trackSymbol(i,t,67220415)}}function lookupSymbolChain(t,r,n,i){r.tracker.trackSymbol(t,r.enclosingDeclaration,n);var a;var o=t.flags&262144;if(!o&&(r.enclosingDeclaration||r.flags&64)&&!(r.flags&134217728)){a=e.Debug.assertDefined(getSymbolChain(t,n,true));e.Debug.assert(a&&a.length>0)}else{a=[t]}return a;function getSymbolChain(t,n,a){var o=getAccessibleSymbolChain(t,r.enclosingDeclaration,n,!!(r.flags&128));var s;if(!o||needsQualification(o[0],r.enclosingDeclaration,o.length===1?n:getQualifiedLeftMeaning(n))){var c=getContainersOfSymbol(o?o[0]:t,r.enclosingDeclaration);if(e.length(c)){s=c.map(function(t){return e.some(t.declarations,hasNonGlobalAugmentationExternalModuleSymbol)?getSpecifierForModuleSymbol(t,r):undefined});var u=c.map(function(e,t){return t});u.sort(sortByBestName);var l=u.map(function(e){return c[e]});for(var f=0,d=l;f<d.length;f++){var p=d[f];var g=getSymbolChain(p,getQualifiedLeftMeaning(n),false);if(g){o=g.concat(o||[getAliasForSymbolInContainer(p,t)||t]);break}}}}if(o){return o}if(a||!(t.flags&(2048|4096))){if(!a&&!i&&!!e.forEach(t.declarations,hasNonGlobalAugmentationExternalModuleSymbol)){return}return[t]}function sortByBestName(t,r){var n=s[t];var i=s[r];if(n&&i){var a=e.pathIsRelative(i);if(e.pathIsRelative(n)===a){return e.moduleSpecifiers.countPathComponents(n)-e.moduleSpecifiers.countPathComponents(i)}if(a){return-1}return 1}return 0}}}function typeParametersToTypeParameterDeclarations(t,r){var n;var i=getTargetSymbol(t);if(i.flags&(32|64|524288)){n=e.createNodeArray(e.map(getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(t),function(e){return typeParameterToDeclaration(e,r)}))}return n}function lookupTypeParameterNodes(t,r,n){e.Debug.assert(t&&0<=r&&r<t.length);var i=t[r];var a;if(n.flags&512&&r<t.length-1){var o=i;var s=t[r+1];if(e.getCheckFlags(s)&1){var c=getTypeParametersOfClassOrInterface(o.flags&2097152?resolveAlias(o):o);a=mapToTypeNodes(e.map(c,s.mapper),n)}else{a=typeParametersToTypeParameterDeclarations(i,n)}}return a}function getTopmostIndexedAccessType(t){if(e.isIndexedAccessTypeNode(t.objectType)){return getTopmostIndexedAccessType(t.objectType)}return t}function getSpecifierForModuleSymbol(i,a){var o=e.getDeclarationOfKind(i,279);if(o&&o.moduleName!==undefined){return o.moduleName}if(!o){if(a.tracker.trackReferencedAmbientModule){var s=e.filter(i.declarations,e.isAmbientModule);if(e.length(s)){for(var c=0,u=s;c<u.length;c++){var l=u[c];a.tracker.trackReferencedAmbientModule(l,i)}}}if(t.test(i.escapedName)){return i.escapedName.substring(1,i.escapedName.length-1)}}if(!a.enclosingDeclaration||!a.tracker.moduleResolverHost){if(t.test(i.escapedName)){return i.escapedName.substring(1,i.escapedName.length-1)}return e.getSourceFileOfNode(e.getNonAugmentationDeclaration(i)).fileName}var f=e.getSourceFileOfNode(e.getOriginalNode(a.enclosingDeclaration));var d=getSymbolLinks(i);var p=d.specifierCache&&d.specifierCache.get(f.path);if(!p){var g=x.out||x.outFile;var _=a.tracker.moduleResolverHost;var m=g?n({},x,{baseUrl:_.getCommonSourceDirectory()}):x;p=e.first(e.moduleSpecifiers.getModuleSpecifiers(i,m,f,_,r.getSourceFiles(),{importModuleSpecifierPreference:g?"non-relative":"relative"},r.redirectTargetsMap));d.specifierCache=d.specifierCache||e.createMap();d.specifierCache.set(f.path,p)}return p}function symbolToTypeNode(t,r,n,i){var a=lookupSymbolChain(t,r,n,!(r.flags&16384));var o=n===67220415;if(e.some(a[0].declarations,hasNonGlobalAugmentationExternalModuleSymbol)){var s=a.length>1?createAccessFromSymbolChain(a,a.length-1,1):undefined;var c=i||lookupTypeParameterNodes(a,0,r);var u=getSpecifierForModuleSymbol(a[0],r);if(!(r.flags&67108864)&&e.getEmitModuleResolutionKind(x)===e.ModuleResolutionKind.NodeJs&&u.indexOf("/node_modules/")>=0){r.encounteredError=true;if(r.tracker.reportLikelyUnsafeImportRequiredError){r.tracker.reportLikelyUnsafeImportRequiredError(u)}}var l=e.createLiteralTypeNode(e.createLiteral(u));if(r.tracker.trackExternalModuleSymbolOfImportTypeNode)r.tracker.trackExternalModuleSymbolOfImportTypeNode(a[0]);r.approximateLength+=u.length+10;if(!s||e.isEntityName(s)){if(s){var f=e.isIdentifier(s)?s:s.right;f.typeArguments=undefined}return e.createImportTypeNode(l,s,c,o)}else{var d=getTopmostIndexedAccessType(s);var p=d.objectType.typeName;return e.createIndexedAccessTypeNode(e.createImportTypeNode(l,p,c,o),d.indexType)}}var g=createAccessFromSymbolChain(a,a.length-1,0);if(e.isIndexedAccessTypeNode(g)){return g}if(o){return e.createTypeQueryNode(g)}else{var f=e.isIdentifier(g)?g:g.right;var _=f.typeArguments;f.typeArguments=undefined;return e.createTypeReferenceNode(g,_)}function createAccessFromSymbolChain(t,n,a){var o=n===t.length-1?i:lookupTypeParameterNodes(t,n,r);var s=t[n];if(n===0){r.flags|=16777216}var c=getNameOfSymbolAsWritten(s,r);r.approximateLength+=c.length+1;if(n===0){r.flags^=16777216}var u=t[n-1];if(!(r.flags&16)&&u&&getMembersOfSymbol(u)&&getMembersOfSymbol(u).get(s.escapedName)===s){var l=createAccessFromSymbolChain(t,n-1,a);if(e.isIndexedAccessTypeNode(l)){return e.createIndexedAccessTypeNode(l,e.createLiteralTypeNode(e.createLiteral(c)))}else{return e.createIndexedAccessTypeNode(e.createTypeReferenceNode(l,o),e.createLiteralTypeNode(e.createLiteral(c)))}}var f=e.setEmitFlags(e.createIdentifier(c,o),16777216);f.symbol=s;if(n>a){var l=createAccessFromSymbolChain(t,n-1,a);if(!e.isEntityName(l)){return e.Debug.fail("Impossible construct - an export of an indexed access cannot be reachable")}return e.createQualifiedName(l,f)}return f}}function symbolToName(t,r,n,i){var a=lookupSymbolChain(t,r,n);if(i&&a.length!==1&&!r.encounteredError&&!(r.flags&65536)){r.encounteredError=true}return createEntityNameFromSymbolChain(a,a.length-1);function createEntityNameFromSymbolChain(t,n){var i=lookupTypeParameterNodes(t,n,r);var a=t[n];if(n===0){r.flags|=16777216}var o=getNameOfSymbolAsWritten(a,r);if(n===0){r.flags^=16777216}var s=e.setEmitFlags(e.createIdentifier(o,i),16777216);s.symbol=a;return n>0?e.createQualifiedName(createEntityNameFromSymbolChain(t,n-1),s):s}}function symbolToExpression(t,r,n){var i=lookupSymbolChain(t,r,n);return createExpressionFromSymbolChain(i,i.length-1);function createExpressionFromSymbolChain(t,n){var i=lookupTypeParameterNodes(t,n,r);var a=t[n];if(e.some(a.declarations,hasNonGlobalAugmentationExternalModuleSymbol)){return e.createLiteral(getSpecifierForModuleSymbol(a,r))}if(n===0){r.flags|=16777216}var o=getNameOfSymbolAsWritten(a,r);if(n===0){r.flags^=16777216}var s=o.charCodeAt(0);var c=e.isIdentifierStart(s,C);if(n===0||c){var u=e.setEmitFlags(e.createIdentifier(o,i),16777216);u.symbol=a;return n>0?e.createPropertyAccess(createExpressionFromSymbolChain(t,n-1),u):u}else{if(s===91){o=o.substring(1,o.length-1);s=o.charCodeAt(0)}var l=void 0;if(e.isSingleOrDoubleQuote(s)){l=e.createLiteral(o.substring(1,o.length-1).replace(/\\./g,function(e){return e.substring(1)}));l.singleQuote=s===39}else if(""+ +o===o){l=e.createLiteral(+o)}if(!l){l=e.setEmitFlags(e.createIdentifier(o,i),16777216);l.symbol=a}return e.createElementAccess(createExpressionFromSymbolChain(t,n-1),l)}}}}function typePredicateToString(t,r,n,i){if(n===void 0){n=16384}return i?typePredicateToStringWorker(i).getText():e.usingSingleLineStringWriter(typePredicateToStringWorker);function typePredicateToStringWorker(i){var a=e.createTypePredicateNode(t.kind===1?e.createIdentifier(t.parameterName):e.createThisTypeNode(),L.typeToTypeNode(t.type,r,toNodeBuilderFlags(n)|70221824|512));var o=e.createPrinter({removeComments:true});var s=r&&e.getSourceFileOfNode(r);o.writeNode(4,a,s,i);return i}}function formatUnionTypes(e){var t=[];var r=0;for(var n=0;n<e.length;n++){var i=e[n];r|=i.flags;if(!(i.flags&98304)){if(i.flags&(512|1024)){var a=i.flags&512?pe:getBaseTypeOfEnumLiteralType(i);if(a.flags&1048576){var o=a.types.length;if(n+o<=e.length&&getRegularTypeOfLiteralType(e[n+o-1])===getRegularTypeOfLiteralType(a.types[o-1])){t.push(a);n+=o-1;continue}}}t.push(i)}}if(r&65536)t.push(ie);if(r&32768)t.push(re);return t||e}function visibilityToString(e){if(e===8){return"private"}if(e===16){return"protected"}return"public"}function getTypeAliasForTypeLiteral(t){if(t.symbol&&t.symbol.flags&2048){var r=e.findAncestor(t.symbol.declarations[0].parent,function(e){return e.kind!==177});if(r.kind===242){return getSymbolOfNode(r)}}return undefined}function isTopLevelInExternalModuleAugmentation(t){return t&&t.parent&&t.parent.kind===245&&e.isExternalModuleAugmentation(t.parent.parent)}function isDefaultBindingContext(t){return t.kind===279||e.isAmbientModule(t)}function getNameOfSymbolAsWritten(t,r){if(r&&t.escapedName==="default"&&!(r.flags&16384)&&(!(r.flags&16777216)||!t.declarations||r.enclosingDeclaration&&e.findAncestor(t.declarations[0],isDefaultBindingContext)!==e.findAncestor(r.enclosingDeclaration,isDefaultBindingContext))){return"default"}if(t.declarations&&t.declarations.length){var n=t.declarations[0];var i=e.getNameOfDeclaration(n);if(i){if(e.isCallExpression(n)&&e.isBindableObjectDefinePropertyCall(n)){return e.symbolName(t)}return e.declarationNameToString(i)}if(n.parent&&n.parent.kind===237){return e.declarationNameToString(n.parent.name)}switch(n.kind){case 209:case 196:case 197:if(r&&!r.encounteredError&&!(r.flags&131072)){r.encounteredError=true}return n.kind===209?"(Anonymous class)":"(Anonymous function)"}}var a=t.nameType;if(a){if(a.flags&128&&!e.isIdentifierText(a.value,x.target)){return'"'+e.escapeString(a.value,34)+'"'}if(a&&a.flags&8192){return"["+getNameOfSymbolAsWritten(a.symbol,r)+"]"}}return e.symbolName(t)}function isDeclarationVisible(t){if(t){var r=getNodeLinks(t);if(r.isVisible===undefined){r.isVisible=!!determineIfDeclarationIsVisible()}return r.isVisible}return false;function determineIfDeclarationIsVisible(){switch(t.kind){case 297:case 304:return!!(t.parent&&t.parent.parent&&t.parent.parent.parent&&e.isSourceFile(t.parent.parent.parent));case 186:return isDeclarationVisible(t.parent.parent);case 237:if(e.isBindingPattern(t.name)&&!t.name.elements.length){return false}case 244:case 240:case 241:case 242:case 239:case 243:case 248:if(e.isExternalModuleAugmentation(t)){return true}var r=getDeclarationContainer(t);if(!(e.getCombinedModifierFlags(t)&1)&&!(t.kind!==248&&r.kind!==279&&r.flags&4194304)){return isGlobalSourceFile(r)}return isDeclarationVisible(r);case 154:case 153:case 158:case 159:case 156:case 155:if(e.hasModifier(t,8|16)){return false}case 157:case 161:case 160:case 162:case 151:case 245:case 165:case 166:case 168:case 164:case 169:case 170:case 173:case 174:case 177:return isDeclarationVisible(t.parent);case 250:case 251:case 253:return false;case 150:case 279:case 247:return true;case 254:return false;default:return false}}}function collectLinkedAliases(t,r){var n;if(t.parent&&t.parent.kind===254){n=resolveName(t,t.escapedText,67220415|67897832|1920|2097152,undefined,t,false)}else if(t.parent.kind===257){n=getTargetOfExportSpecifier(t.parent,67220415|67897832|1920|2097152)}var i;if(n){buildVisibleNodeList(n.declarations)}return i;function buildVisibleNodeList(t){e.forEach(t,function(t){var n=getAnyImportSyntax(t)||t;if(r){getNodeLinks(t).isVisible=true}else{i=i||[];e.pushIfUnique(i,n)}if(e.isInternalModuleImportEqualsDeclaration(t)){var a=t.moduleReference;var o=getFirstIdentifier(a);var s=resolveName(t,o.escapedText,67220415|67897832|1920,undefined,undefined,false);if(s){buildVisibleNodeList(s.declarations)}}})}}function pushTypeResolution(e,t){var r=findResolutionCycleStartIndex(e,t);if(r>=0){var n=wt.length;for(var i=r;i<n;i++){Mt[i]=false}return false}wt.push(e);Mt.push(true);Lt.push(t);return true}function findResolutionCycleStartIndex(e,t){for(var r=wt.length-1;r>=0;r--){if(hasType(wt[r],Lt[r])){return-1}if(wt[r]===e&&Lt[r]===t){return r}}return-1}function hasType(t,r){switch(r){case 0:return!!getSymbolLinks(t).type;case 5:return!!getNodeLinks(t).resolvedEnumType;case 2:return!!getSymbolLinks(t).declaredType;case 1:return!!t.resolvedBaseConstructorType;case 3:return!!t.resolvedReturnType;case 4:return!!t.immediateBaseConstraint;case 6:return!!getSymbolLinks(t).resolvedJSDocType}return e.Debug.assertNever(r)}function popTypeResolution(){wt.pop();Lt.pop();return Mt.pop()}function getDeclarationContainer(t){return e.findAncestor(e.getRootDeclaration(t),function(e){switch(e.kind){case 237:case 238:case 253:case 252:case 251:case 250:return false;default:return true}}).parent}function getTypeOfPrototypeProperty(t){var r=getDeclaredTypeOfSymbol(getParentOfSymbol(t));return r.typeParameters?createTypeReference(r,e.map(r.typeParameters,function(e){return X})):r}function getTypeOfPropertyOfType(e,t){var r=getPropertyOfType(e,t);return r?getTypeOfSymbol(r):undefined}function isTypeAny(e){return e&&(e.flags&1)!==0}function getTypeForBindingElementParent(e){var t=getSymbolOfNode(e);return t&&getSymbolLinks(t).type||getTypeForVariableLikeDeclaration(e,false)}function isComputedNonLiteralName(t){return t.kind===149&&!e.isStringOrNumericLiteralLike(t.expression)}function getRestType(t,r,n){t=filterType(t,function(e){return!(e.flags&98304)});if(t.flags&131072){return xe}if(t.flags&1048576){return mapType(t,function(e){return getRestType(e,r,n)})}var i=getUnionType(e.map(r,getLiteralTypeFromPropertyName));if(isGenericObjectType(t)||isGenericIndexType(i)){if(i.flags&131072){return t}var a=getGlobalPickSymbol();var o=getGlobalExcludeSymbol();if(!a||!o){return ee}var s=getTypeAliasInstantiation(o,[getIndexType(t),i]);return getTypeAliasInstantiation(a,[t,s])}var c=e.createSymbolTable();for(var u=0,l=getPropertiesOfType(t);u<l.length;u++){var f=l[u];if(!isTypeAssignableTo(getLiteralTypeFromProperty(f,8576),i)&&!(e.getDeclarationModifierFlagsFromSymbol(f)&(8|16))&&isSpreadableProperty(f)){c.set(f.escapedName,getSpreadSymbol(f))}}var d=getIndexInfoOfType(t,0);var p=getIndexInfoOfType(t,1);return createAnonymousType(n,c,e.emptyArray,e.emptyArray,d,p)}function getTypeForBindingElement(t){var r=t.parent;var n=getTypeForBindingElementParent(r.parent);if(n===ee){return ee}if(!n){return t.initializer?checkDeclarationInitializer(t):n}if(isTypeAny(n)){return n}if(k&&t.flags&4194304&&e.isParameterDeclaration(t)){n=getNonNullableType(n)}var i;if(r.kind===184){if(t.dotDotDotToken){if(n.flags&2||!isValidSpreadType(n)){error(t,e.Diagnostics.Rest_types_may_only_be_created_from_object_types);return ee}var a=[];for(var o=0,s=r.elements;o<s.length;o++){var c=s[o];if(!c.dotDotDotToken){a.push(c.propertyName||c.name)}}i=getRestType(n,a,t.symbol)}else{var u=t.propertyName||t.name;var l=getLiteralTypeFromPropertyName(u);var f=checkIndexedAccessIndexType(getIndexedAccessType(n,l,u),u);i=getFlowTypeOfReference(t,getConstraintForLocation(f,t.name))}}else{var d=checkIteratedTypeOrElementType(n,r,false,false);var p=r.elements.indexOf(t);if(t.dotDotDotToken){i=everyType(n,isTupleType)?mapType(n,function(e){return sliceTupleType(e,p)}):createArrayType(d)}else{var g=r.elements.indexOf(t);i=everyType(n,isTupleLikeType)?getTupleElementType(n,g)||t.initializer&&checkDeclarationInitializer(t):d;if(!i){if(isTupleType(n)){error(t,e.Diagnostics.Tuple_type_0_with_length_1_cannot_be_assigned_to_tuple_with_length_2,typeToString(n),getTypeReferenceArity(n),r.elements.length)}else{error(t,e.Diagnostics.Type_0_has_no_property_1,typeToString(n),""+g)}return ee}}}if(k&&t.initializer&&!(getFalsyFlags(checkDeclarationInitializer(t))&32768)){i=getTypeWithFacts(i,524288)}return t.initializer&&!e.getEffectiveTypeAnnotationNode(e.walkUpBindingElementsAndPatterns(t))?getUnionType([i,checkDeclarationInitializer(t)],2):i}function getTypeForDeclarationFromJSDocComment(t){var r=e.getJSDocType(t);if(r){return getTypeFromTypeNode(r)}return undefined}function isNullOrUndefined(t){var r=e.skipParentheses(t);return r.kind===96||r.kind===72&&getResolvedSymbol(r)===R}function isEmptyArrayLiteral(t){var r=e.skipParentheses(t);return r.kind===187&&r.elements.length===0}function addOptionality(e,t){if(t===void 0){t=true}return k&&t?getOptionalType(e):e}function getTypeForVariableLikeDeclaration(t,r){if(e.isVariableDeclaration(t)&&t.parent.parent.kind===226){var n=getIndexType(getNonNullableTypeIfNeeded(checkExpression(t.parent.parent.expression)));return n.flags&(262144|4194304)?getExtractStringType(n):oe}if(e.isVariableDeclaration(t)&&t.parent.parent.kind===227){var i=t.parent.parent;return checkRightHandSideOfForOf(i.expression,i.awaitModifier)||X}if(e.isBindingPattern(t.parent)){return getTypeForBindingElement(t)}var a=r&&(e.isParameter(t)&&isJSDocOptionalParameter(t)||!e.isBindingElement(t)&&!e.isVariableDeclaration(t)&&!!t.questionToken);var o=tryGetTypeFromEffectiveTypeNode(t);if(o){return addOptionality(o,a)}if((F||e.isInJSFile(t))&&t.kind===237&&!e.isBindingPattern(t.name)&&!(e.getCombinedModifierFlags(t)&1)&&!(t.flags&4194304)){if(!(e.getCombinedNodeFlags(t)&2)&&(!t.initializer||isNullOrUndefined(t.initializer))){return Y}if(t.initializer&&isEmptyArrayLiteral(t.initializer)){return it}}if(t.kind===151){var s=t.parent;if(s.kind===159&&!hasNonBindableDynamicName(s)){var c=e.getDeclarationOfKind(getSymbolOfNode(t.parent),158);if(c){var u=getSignatureFromDeclaration(c);var l=getAccessorThisParameter(s);if(l&&t===l){e.Debug.assert(!l.type);return getTypeOfSymbol(u.thisParameter)}return getReturnTypeOfSignature(u)}}if(e.isInJSFile(t)){var f=e.getJSDocType(s);if(f&&e.isFunctionTypeNode(f)){return getTypeAtPosition(getSignatureFromDeclaration(f),s.parameters.indexOf(t))}}var d=t.symbol.escapedName==="this"?getContextualThisParameterType(s):getContextuallyTypedParameterType(t);if(d){return addOptionality(d,a)}}else if(e.isInJSFile(t)){var p=getJSContainerObjectType(t,getSymbolOfNode(t),e.getDeclaredExpandoInitializer(t));if(p){return p}}if(t.initializer){var d=checkDeclarationInitializer(t);return addOptionality(d,a)}if(e.isJsxAttribute(t)){return fe}if(e.isBindingPattern(t.name)){return getTypeFromBindingPattern(t.name,false,true)}return undefined}function getWidenedTypeFromAssignmentDeclaration(t,r){var n=e.getAssignedExpandoInitializer(t.valueDeclaration);if(n){var i=e.getJSDocTypeTag(n);if(i&&i.typeExpression){return getTypeFromTypeNode(i.typeExpression)}var a=getJSContainerObjectType(t.valueDeclaration,t,n);return a||getWidenedLiteralType(checkExpressionCached(n))}var o=false;var s=false;var c;var u;for(var l=0,f=t.declarations;l<f.length;l++){var d=f[l];var p=e.isBinaryExpression(d)||e.isCallExpression(d)?d:e.isPropertyAccessExpression(d)?e.isBinaryExpression(d.parent)?d.parent:d:undefined;if(!p){return ee}var g=e.isPropertyAccessExpression(p)?e.getAssignmentDeclarationPropertyAccessKind(p):e.getAssignmentDeclarationKind(p);if(g===4){if(isDeclarationInConstructor(p)){o=true}else{s=true}}if(!e.isCallExpression(p)){c=getJSDocTypeFromAssignmentDeclaration(c,p,t,d)}if(!c){(u||(u=[])).push(e.isBinaryExpression(p)||e.isCallExpression(p)?getInitializerTypeFromAssignmentDeclaration(t,r,p,g):me)}}var _=c;if(!_){var m=o?getConstructorDefinedThisAssignmentTypes(u,t.declarations):undefined;if(s){var y=getTypeOfAssignmentDeclarationPropertyOfBaseType(t);if(y){(m||(m=[])).push(y);o=true}}var h=e.some(m,function(e){return!!(e.flags&~(98304|134217728))})?m:u;_=getUnionType(h,2)}var v=getWidenedType(addOptionality(_,s&&!o));if(filterType(v,function(e){return!!(e.flags&~98304)})===me){reportImplicitAny(t.valueDeclaration,X);return X}return v}function getJSContainerObjectType(t,r,n){if(!e.isInJSFile(t)||!n||!e.isObjectLiteralExpression(n)||n.properties.length){return undefined}var i=e.createSymbolTable();while(e.isBinaryExpression(t)||e.isPropertyAccessExpression(t)){var a=getSymbolOfNode(t);if(a&&e.hasEntries(a.exports)){mergeSymbolTable(i,a.exports)}t=e.isBinaryExpression(t)?t.parent:t.parent.parent}var o=getSymbolOfNode(t);if(o&&e.hasEntries(o.exports)){mergeSymbolTable(i,o.exports)}var s=createAnonymousType(r,i,e.emptyArray,e.emptyArray,undefined,undefined);s.objectFlags|=16384;return s}function getJSDocTypeFromAssignmentDeclaration(t,r,n,i){var a=e.getJSDocType(r.parent);if(a){var o=getWidenedType(getTypeFromTypeNode(a));if(!t){return o}else if(t!==ee&&o!==ee&&!isTypeIdenticalTo(t,o)){errorNextVariableOrPropertyDeclarationMustHaveSameType(t,i,o)}}return t}function getInitializerTypeFromAssignmentDeclaration(t,r,n,i){if(e.isCallExpression(n)){if(r){return getTypeOfSymbol(r)}var a=checkExpressionCached(n.arguments[2]);var o=getTypeOfPropertyOfType(a,"value");if(o){return o}var s=getTypeOfPropertyOfType(a,"get");if(s){var c=getSingleCallSignature(s);if(c){return getReturnTypeOfSignature(c)}}var u=getTypeOfPropertyOfType(a,"set");if(u){var l=getSingleCallSignature(u);if(l){return getTypeOfFirstParameterOfSignature(l)}}return X}var f=r?getTypeOfSymbol(r):getWidenedLiteralType(checkExpressionCached(n.right));if(f.flags&524288&&i===2&&t.escapedName==="export="){var d=resolveStructuredTypeMembers(f);var p=e.createSymbolTable();e.copyEntries(d.members,p);if(r&&!r.exports){r.exports=e.createSymbolTable()}(r||t).exports.forEach(function(e,t){if(p.has(t)){var r=d.members.get(t);var n=createSymbol(e.flags|r.flags,t);n.type=getUnionType([getTypeOfSymbol(e),getTypeOfSymbol(r)]);p.set(t,n)}else{p.set(t,e)}});var g=createAnonymousType(d.symbol,p,d.callSignatures,d.constructSignatures,d.stringIndexInfo,d.numberIndexInfo);g.objectFlags|=e.getObjectFlags(f)&16384;return g}if(isEmptyArrayLiteralType(f)){reportImplicitAny(n,nt);return nt}return f}function isDeclarationInConstructor(t){var r=e.getThisContainer(t,false);return r.kind===157||r.kind===239||r.kind===196&&!e.isPrototypePropertyAssignment(r.parent)}function getConstructorDefinedThisAssignmentTypes(t,r){e.Debug.assert(t.length===r.length);return t.filter(function(t,n){var i=r[n];var a=e.isBinaryExpression(i)?i:e.isBinaryExpression(i.parent)?i.parent:undefined;return a&&isDeclarationInConstructor(a)})}function getTypeOfAssignmentDeclarationPropertyOfBaseType(t){var r=e.forEach(t.declarations,function(t){var r=e.getThisContainer(t,false).parent;return e.isClassLike(r)&&r});if(r){var n=getDeclaredTypeOfSymbol(getSymbolOfNode(r));var i=n&&getBaseTypes(n)[0];if(i){return getTypeOfPropertyOfType(i,t.escapedName)}}}function getTypeFromBindingElement(t,r,n){if(t.initializer){return addOptionality(checkDeclarationInitializer(t))}if(e.isBindingPattern(t.name)){return getTypeFromBindingPattern(t.name,r,n)}if(n&&!declarationBelongsToPrivateAmbientMember(t)){reportImplicitAny(t,X)}return X}function getTypeFromObjectBindingPattern(t,r,n){var i=e.createSymbolTable();var a;var o=128;e.forEach(t.elements,function(t){var s=t.propertyName||t.name;if(isComputedNonLiteralName(s)){o|=512;return}if(t.dotDotDotToken){a=createIndexInfo(X,false);return}var c=e.getTextOfPropertyName(s);var u=4|(t.initializer?16777216:0);var l=createSymbol(u,c);l.type=getTypeFromBindingElement(t,r,n);l.bindingElement=t;i.set(l.escapedName,l)});var s=createAnonymousType(undefined,i,e.emptyArray,e.emptyArray,a,undefined);s.flags|=268435456;s.objectFlags|=o;if(r){s.pattern=t}return s}function getTypeFromArrayBindingPattern(t,r,n){var i=t.elements;var a=e.lastOrUndefined(i);var o=!!(a&&a.kind===186&&a.dotDotDotToken);if(i.length===0||i.length===1&&o){return C>=2?createIterableType(X):nt}var s=e.map(i,function(t){return e.isOmittedExpression(t)?X:getTypeFromBindingElement(t,r,n)});var c=e.findLastIndex(i,function(t){return!e.isOmittedExpression(t)&&!hasDefaultValue(t)},i.length-(o?2:1))+1;var u=createTupleType(s,c,o);if(r){u=cloneTypeReference(u);u.pattern=t}return u}function getTypeFromBindingPattern(e,t,r){if(t===void 0){t=false}if(r===void 0){r=false}return e.kind===184?getTypeFromObjectBindingPattern(e,t,r):getTypeFromArrayBindingPattern(e,t,r)}function getWidenedTypeForVariableLikeDeclaration(e,t){return widenTypeForVariableLikeDeclaration(getTypeForVariableLikeDeclaration(e,true),e,t)}function widenTypeForVariableLikeDeclaration(t,r,n){if(t){if(n){reportErrorsFromWidening(r,t)}if(t.flags&8192&&(e.isBindingElement(r)||!r.type)&&t.symbol!==getSymbolOfNode(r)){t=ge}return getWidenedType(t)}t=e.isParameter(r)&&r.dotDotDotToken?nt:X;if(n){if(!declarationBelongsToPrivateAmbientMember(r)){reportImplicitAny(r,t)}}return t}function declarationBelongsToPrivateAmbientMember(t){var r=e.getRootDeclaration(t);var n=r.kind===151?r.parent:r;return isPrivateWithinAmbient(n)}function tryGetTypeFromEffectiveTypeNode(t){var r=e.getEffectiveTypeAnnotationNode(t);if(r){return getTypeFromTypeNode(r)}}function getTypeOfVariableOrParameterOrProperty(e){var t=getSymbolLinks(e);return t.type||(t.type=getTypeOfVariableOrParameterOrPropertyWorker(e))}function getTypeOfVariableOrParameterOrPropertyWorker(t){if(t.flags&4194304){return getTypeOfPrototypeProperty(t)}if(t===j){return X}if(t.flags&134217728){var r=getSymbolOfNode(e.getSourceFileOfNode(t.valueDeclaration));var n=e.createSymbolTable();n.set("exports",r);return createAnonymousType(t,n,e.emptyArray,e.emptyArray,undefined,undefined)}var i=t.valueDeclaration;if(e.isCatchClauseVariableDeclarationOrBindingElement(i)){return X}if(e.isSourceFile(i)){var a=e.cast(i,e.isJsonSourceFile);if(!a.statements.length){return xe}var o=getWidenedLiteralType(checkExpression(a.statements[0].expression));if(o.flags&524288){return getRegularTypeOfObjectLiteral(o)}return o}if(i.kind===254){return widenTypeForVariableLikeDeclaration(checkExpressionCached(i.expression),i)}if(!pushTypeResolution(t,0)){return ee}var s;if(e.isInJSFile(i)&&(e.isCallExpression(i)||e.isBinaryExpression(i)||e.isPropertyAccessExpression(i)&&e.isBinaryExpression(i.parent))){s=getWidenedTypeFromAssignmentDeclaration(t)}else if(e.isJSDocPropertyLikeTag(i)||e.isPropertyAccessExpression(i)||e.isIdentifier(i)||e.isClassDeclaration(i)||e.isFunctionDeclaration(i)||e.isMethodDeclaration(i)&&!e.isObjectLiteralMethod(i)||e.isMethodSignature(i)){if(t.flags&(16|8192|32|384|512)){return getTypeOfFuncClassEnumModule(t)}s=e.isBinaryExpression(i.parent)?getWidenedTypeFromAssignmentDeclaration(t):tryGetTypeFromEffectiveTypeNode(i)||X}else if(e.isPropertyAssignment(i)){s=tryGetTypeFromEffectiveTypeNode(i)||checkPropertyAssignment(i)}else if(e.isJsxAttribute(i)){s=tryGetTypeFromEffectiveTypeNode(i)||checkJsxAttribute(i)}else if(e.isShorthandPropertyAssignment(i)){s=tryGetTypeFromEffectiveTypeNode(i)||checkExpressionForMutableLocation(i.name,0)}else if(e.isObjectLiteralMethod(i)){s=tryGetTypeFromEffectiveTypeNode(i)||checkObjectLiteralMethod(i,0)}else if(e.isParameter(i)||e.isPropertyDeclaration(i)||e.isPropertySignature(i)||e.isVariableDeclaration(i)||e.isBindingElement(i)){s=getWidenedTypeForVariableLikeDeclaration(i,true)}else if(e.isEnumDeclaration(i)){s=getTypeOfFuncClassEnumModule(t)}else if(e.isEnumMember(i)){s=getTypeOfEnumMember(t)}else{return e.Debug.fail("Unhandled declaration kind! "+e.Debug.showSyntaxKind(i)+" for "+e.Debug.showSymbol(t))}if(!popTypeResolution()){s=reportCircularityError(t)}return s}function getAnnotatedAccessorTypeNode(t){if(t){if(t.kind===158){var r=e.getEffectiveReturnTypeNode(t);return r}else{var n=e.getEffectiveSetAccessorTypeAnnotationNode(t);return n}}return undefined}function getAnnotatedAccessorType(e){var t=getAnnotatedAccessorTypeNode(e);return t&&getTypeFromTypeNode(t)}function getAnnotatedAccessorThisParameter(e){var t=getAccessorThisParameter(e);return t&&t.symbol}function getThisTypeOfDeclaration(e){return getThisTypeOfSignature(getSignatureFromDeclaration(e))}function getTypeOfAccessors(e){var t=getSymbolLinks(e);return t.type||(t.type=getTypeOfAccessorsWorker(e))}function getTypeOfAccessorsWorker(t){var r=e.getDeclarationOfKind(t,158);var n=e.getDeclarationOfKind(t,159);if(r&&e.isInJSFile(r)){var i=getTypeForDeclarationFromJSDocComment(r);if(i){return i}}if(!pushTypeResolution(t,0)){return ee}var a;var o=getAnnotatedAccessorType(r);if(o){a=o}else{var s=getAnnotatedAccessorType(n);if(s){a=s}else{if(r&&r.body){a=getReturnTypeFromBody(r)}else{if(n){errorOrSuggestion(F,n,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation,symbolToString(t))}else{e.Debug.assert(!!r,"there must existed getter as we are current checking either setter or getter in this function");errorOrSuggestion(F,r,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation,symbolToString(t))}a=X}}}if(!popTypeResolution()){a=X;if(F){var c=e.getDeclarationOfKind(t,158);error(c,e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,symbolToString(t))}}return a}function getBaseTypeVariableOfClass(e){var t=getBaseConstructorTypeOfClass(getDeclaredTypeOfClassOrInterface(e));return t.flags&8650752?t:undefined}function getTypeOfFuncClassEnumModule(t){var r=getSymbolLinks(t);var n=r;if(!r.type){var i=e.getDeclarationOfExpando(t.valueDeclaration);if(i){var a=getSymbolOfNode(i);if(a&&(e.hasEntries(a.exports)||e.hasEntries(a.members))){t=cloneSymbol(t);r=t;if(e.hasEntries(a.exports)){t.exports=t.exports||e.createSymbolTable();mergeSymbolTable(t.exports,a.exports)}if(e.hasEntries(a.members)){t.members=t.members||e.createSymbolTable();mergeSymbolTable(t.members,a.members)}}}n.type=r.type=getTypeOfFuncClassEnumModuleWorker(t)}return r.type}function getTypeOfFuncClassEnumModuleWorker(t){var r=t.valueDeclaration;if(t.flags&1536&&e.isShorthandAmbientModuleSymbol(t)){return X}else if(r.kind===204||r.kind===189&&r.parent.kind===204){return getWidenedTypeFromAssignmentDeclaration(t)}else if(t.flags&512&&r&&e.isSourceFile(r)&&r.commonJsModuleIndicator){var n=resolveExternalModuleSymbol(t);if(n!==t){if(!pushTypeResolution(t,0)){return ee}var i=getMergedSymbol(t.exports.get("export="));var a=getWidenedTypeFromAssignmentDeclaration(i,i===n?undefined:n);if(!popTypeResolution()){return reportCircularityError(t)}return a}}var o=createObjectType(16,t);if(t.flags&32){var s=getBaseTypeVariableOfClass(t);return s?getIntersectionType([o,s]):o}else{return k&&t.flags&16777216?getOptionalType(o):o}}function getTypeOfEnumMember(e){var t=getSymbolLinks(e);return t.type||(t.type=getDeclaredTypeOfEnumMember(e))}function getTypeOfAlias(e){var t=getSymbolLinks(e);if(!t.type){var r=resolveAlias(e);t.type=r.flags&67220415?getTypeOfSymbol(r):ee}return t.type}function getTypeOfInstantiatedSymbol(e){var t=getSymbolLinks(e);if(!t.type){if(!pushTypeResolution(e,0)){return t.type=ee}var r=instantiateType(getTypeOfSymbol(t.target),t.mapper);if(!popTypeResolution()){r=reportCircularityError(e)}t.type=r}return t.type}function reportCircularityError(t){if(e.getEffectiveTypeAnnotationNode(t.valueDeclaration)){error(t.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_type_annotation,symbolToString(t));return ee}if(F){error(t.valueDeclaration,e.Diagnostics._0_implicitly_has_type_any_because_it_does_not_have_a_type_annotation_and_is_referenced_directly_or_indirectly_in_its_own_initializer,symbolToString(t))}return X}function getTypeOfSymbol(t){if(e.getCheckFlags(t)&1){return getTypeOfInstantiatedSymbol(t)}if(e.getCheckFlags(t)&2048){return getTypeOfReverseMappedSymbol(t)}if(t.flags&(3|4)){return getTypeOfVariableOrParameterOrProperty(t)}if(t.flags&(16|8192|32|384|512)){return getTypeOfFuncClassEnumModule(t)}if(t.flags&8){return getTypeOfEnumMember(t)}if(t.flags&98304){return getTypeOfAccessors(t)}if(t.flags&2097152){return getTypeOfAlias(t)}return ee}function isReferenceToType(t,r){return t!==undefined&&r!==undefined&&(e.getObjectFlags(t)&4)!==0&&t.target===r}function getTargetType(t){return e.getObjectFlags(t)&4?t.target:t}function hasBaseType(t,r){return check(t);function check(t){if(e.getObjectFlags(t)&(3|4)){var n=getTargetType(t);return n===r||e.some(getBaseTypes(n),check)}else if(t.flags&2097152){return e.some(t.types,check)}return false}}function appendTypeParameters(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=e.appendIfUnique(t,getDeclaredTypeOfTypeParameter(getSymbolOfNode(a)))}return t}function getOuterTypeParameters(t,r){while(true){t=t.parent;if(!t){return undefined}switch(t.kind){case 240:case 209:case 241:case 160:case 161:case 155:case 165:case 166:case 289:case 239:case 156:case 196:case 197:case 242:case 303:case 304:case 297:case 181:case 175:var n=getOuterTypeParameters(t,r);if(t.kind===181){return e.append(n,getDeclaredTypeOfTypeParameter(getSymbolOfNode(t.typeParameter)))}else if(t.kind===175){return e.concatenate(n,getInferTypeParameters(t))}var i=appendTypeParameters(n,e.getEffectiveTypeParameterDeclarations(t));var a=r&&(t.kind===240||t.kind===209||t.kind===241)&&getDeclaredTypeOfClassOrInterface(getSymbolOfNode(t)).thisType;return a?e.append(i,a):i}}}function getOuterTypeParametersOfClassOrInterface(t){var r=t.flags&32?t.valueDeclaration:e.getDeclarationOfKind(t,241);return getOuterTypeParameters(r)}function getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(t){var r;for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(a.kind===241||a.kind===240||a.kind===209||e.isTypeAlias(a)){var o=a;r=appendTypeParameters(r,e.getEffectiveTypeParameterDeclarations(o))}}return r}function getTypeParametersOfClassOrInterface(t){return e.concatenate(getOuterTypeParametersOfClassOrInterface(t),getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(t))}function isMixinConstructorType(e){var t=getSignaturesOfType(e,1);if(t.length===1){var r=t[0];return!r.typeParameters&&r.parameters.length===1&&r.hasRestParameter&&getTypeOfParameter(r.parameters[0])===nt}return false}function isConstructorType(e){if(isValidBaseType(e)&&getSignaturesOfType(e,1).length>0){return true}if(e.flags&8650752){var t=getBaseConstraintOfType(e);return!!t&&isValidBaseType(t)&&isMixinConstructorType(t)}return isJSConstructorType(e)}function getBaseTypeNodeOfClass(t){return e.getEffectiveBaseTypeNode(t.symbol.valueDeclaration)}function getConstructorsForTypeArguments(t,r,n){var i=e.length(r);var a=e.isInJSFile(n);return e.filter(getSignaturesOfType(t,1),function(t){return(a||i>=getMinTypeArgumentCount(t.typeParameters))&&i<=e.length(t.typeParameters)})}function getInstantiatedConstructorsForTypeArguments(t,r,n){var i=getConstructorsForTypeArguments(t,r,n);var a=e.map(r,getTypeFromTypeNode);return e.sameMap(i,function(t){return e.some(t.typeParameters)?getSignatureInstantiation(t,a,e.isInJSFile(n)):t})}function getBaseConstructorTypeOfClass(t){if(!t.resolvedBaseConstructorType){var r=t.symbol.valueDeclaration;var n=e.getEffectiveBaseTypeNode(r);var i=getBaseTypeNodeOfClass(t);if(!i){return t.resolvedBaseConstructorType=re}if(!pushTypeResolution(t,1)){return ee}var a=checkExpression(i.expression);if(n&&i!==n){e.Debug.assert(!n.typeArguments);checkExpression(n.expression)}if(a.flags&(524288|2097152)){resolveStructuredTypeMembers(a)}if(!popTypeResolution()){error(t.symbol.valueDeclaration,e.Diagnostics._0_is_referenced_directly_or_indirectly_in_its_own_base_expression,symbolToString(t.symbol));return t.resolvedBaseConstructorType=ee}if(!(a.flags&1)&&a!==ae&&!isConstructorType(a)){var o=error(i.expression,e.Diagnostics.Type_0_is_not_a_constructor_function_type,typeToString(a));if(a.flags&262144){var s=getConstraintFromTypeParameter(a);var c=te;if(s){var u=getSignaturesOfType(s,1);if(u[0]){c=getReturnTypeOfSignature(u[0])}}addRelatedInfo(o,e.createDiagnosticForNode(a.symbol.declarations[0],e.Diagnostics.Did_you_mean_for_0_to_be_constrained_to_type_new_args_Colon_any_1,symbolToString(a.symbol),typeToString(c)))}return t.resolvedBaseConstructorType=ee}t.resolvedBaseConstructorType=a}return t.resolvedBaseConstructorType}function getBaseTypes(t){if(!t.resolvedBaseTypes){if(t.objectFlags&8){t.resolvedBaseTypes=[createArrayType(getUnionType(t.typeParameters||e.emptyArray))]}else if(t.symbol.flags&(32|64)){if(t.symbol.flags&32){resolveBaseTypesOfClass(t)}if(t.symbol.flags&64){resolveBaseTypesOfInterface(t)}}else{e.Debug.fail("type must be class or interface")}}return t.resolvedBaseTypes}function resolveBaseTypesOfClass(t){t.resolvedBaseTypes=e.resolvingEmptyArray;var r=getApparentType(getBaseConstructorTypeOfClass(t));if(!(r.flags&(524288|2097152|1))){return t.resolvedBaseTypes=e.emptyArray}var n=getBaseTypeNodeOfClass(t);var i=typeArgumentsFromTypeReferenceNode(n);var a;var o=isJSConstructorType(r)?r:r.symbol?getDeclaredTypeOfSymbol(r.symbol):undefined;if(r.symbol&&r.symbol.flags&32&&areAllOuterTypeParametersApplied(o)){a=getTypeFromClassOrInterfaceReference(n,r.symbol,i)}else if(r.flags&1){a=r}else if(isJSConstructorType(r)){a=!n.typeArguments&&getJSClassType(r.symbol)||X}else{var s=getInstantiatedConstructorsForTypeArguments(r,n.typeArguments,n);if(!s.length){error(n.expression,e.Diagnostics.No_base_constructor_has_the_specified_number_of_type_arguments);return t.resolvedBaseTypes=e.emptyArray}a=getReturnTypeOfSignature(s[0])}if(a===ee){return t.resolvedBaseTypes=e.emptyArray}if(!isValidBaseType(a)){error(n.expression,e.Diagnostics.Base_constructor_return_type_0_is_not_an_object_type_or_intersection_of_object_types_with_statically_known_members,typeToString(a));return t.resolvedBaseTypes=e.emptyArray}if(t===a||hasBaseType(a,t)){error(t.symbol.valueDeclaration,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,typeToString(t,undefined,2));return t.resolvedBaseTypes=e.emptyArray}if(t.resolvedBaseTypes===e.resolvingEmptyArray){t.members=undefined}return t.resolvedBaseTypes=[a]}function areAllOuterTypeParametersApplied(e){var t=e.outerTypeParameters;if(t){var r=t.length-1;var n=e.typeArguments;return t[r].symbol!==n[r].symbol}return true}function isValidBaseType(t){return!!(t.flags&(524288|67108864|1))&&!isGenericMappedType(t)||!!(t.flags&2097152)&&e.every(t.types,isValidBaseType)}function resolveBaseTypesOfInterface(t){t.resolvedBaseTypes=t.resolvedBaseTypes||e.emptyArray;for(var r=0,n=t.symbol.declarations;r<n.length;r++){var i=n[r];if(i.kind===241&&e.getInterfaceBaseTypeNodes(i)){for(var a=0,o=e.getInterfaceBaseTypeNodes(i);a<o.length;a++){var s=o[a];var c=getTypeFromTypeNode(s);if(c!==ee){if(isValidBaseType(c)){if(t!==c&&!hasBaseType(c,t)){if(t.resolvedBaseTypes===e.emptyArray){t.resolvedBaseTypes=[c]}else{t.resolvedBaseTypes.push(c)}}else{error(i,e.Diagnostics.Type_0_recursively_references_itself_as_a_base_type,typeToString(t,undefined,2))}}else{error(s,e.Diagnostics.An_interface_can_only_extend_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}}}}function isThislessInterface(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];if(i.kind===241){if(i.flags&64){return false}var a=e.getInterfaceBaseTypeNodes(i);if(a){for(var o=0,s=a;o<s.length;o++){var c=s[o];if(e.isEntityNameExpression(c.expression)){var u=resolveEntityName(c.expression,67897832,true);if(!u||!(u.flags&64)||getDeclaredTypeOfClassOrInterface(u).thisType){return false}}}}}}return true}function getDeclaredTypeOfClassOrInterface(t){var r=getSymbolLinks(t);if(!r.declaredType){var n=t.flags&32?1:2;var i=r.declaredType=createObjectType(n,t);var a=getOuterTypeParametersOfClassOrInterface(t);var o=getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(t);if(a||o||n===1||!isThislessInterface(t)){i.objectFlags|=4;i.typeParameters=e.concatenate(a,o);i.outerTypeParameters=a;i.localTypeParameters=o;i.instantiations=e.createMap();i.instantiations.set(getTypeListId(i.typeParameters),i);i.target=i;i.typeArguments=i.typeParameters;i.thisType=createType(262144);i.thisType.isThisType=true;i.thisType.symbol=t;i.thisType.constraint=i}}return r.declaredType}function getDeclaredTypeOfTypeAlias(t){var r=getSymbolLinks(t);if(!r.declaredType){if(!pushTypeResolution(t,2)){return ee}var n=e.find(t.declarations,function(t){return e.isJSDocTypeAlias(t)||t.kind===242});var i=e.isJSDocTypeAlias(n)?n.typeExpression:n.type;var a=i?getTypeFromTypeNode(i):ee;if(popTypeResolution()){var o=getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(t);if(o){r.typeParameters=o;r.instantiations=e.createMap();r.instantiations.set(getTypeListId(o),a)}}else{a=ee;error(n.name,e.Diagnostics.Type_alias_0_circularly_references_itself,symbolToString(t))}r.declaredType=a}return r.declaredType}function isStringConcatExpression(e){if(e.kind===10){return true}else if(e.kind===204){return isStringConcatExpression(e.left)&&isStringConcatExpression(e.right)}return false}function isLiteralEnumMember(t){var r=t.initializer;if(!r){return!(t.flags&4194304)}switch(r.kind){case 10:case 8:return true;case 202:return r.operator===39&&r.operand.kind===8;case 72:return e.nodeIsMissing(r)||!!getSymbolOfNode(t.parent).exports.get(r.escapedText);case 204:return isStringConcatExpression(r);default:return false}}function getEnumKind(e){var t=getSymbolLinks(e);if(t.enumKind!==undefined){return t.enumKind}var r=false;for(var n=0,i=e.declarations;n<i.length;n++){var a=i[n];if(a.kind===243){for(var o=0,s=a.members;o<s.length;o++){var c=s[o];if(c.initializer&&c.initializer.kind===10){return t.enumKind=1}if(!isLiteralEnumMember(c)){r=true}}}}return t.enumKind=r?0:1}function getBaseTypeOfEnumLiteralType(e){return e.flags&1024&&!(e.flags&1048576)?getDeclaredTypeOfSymbol(getParentOfSymbol(e.symbol)):e}function getDeclaredTypeOfEnum(e){var t=getSymbolLinks(e);if(t.declaredType){return t.declaredType}if(getEnumKind(e)===1){h++;var r=[];for(var n=0,i=e.declarations;n<i.length;n++){var a=i[n];if(a.kind===243){for(var o=0,s=a.members;o<s.length;o++){var c=s[o];var u=getFreshTypeOfLiteralType(getLiteralType(getEnumMemberValue(c),h,getSymbolOfNode(c)));getSymbolLinks(getSymbolOfNode(c)).declaredType=u;r.push(getRegularTypeOfLiteralType(u))}}}if(r.length){var l=getUnionType(r,1,e,undefined);if(l.flags&1048576){l.flags|=1024;l.symbol=e}return t.declaredType=l}}var f=createType(32);f.symbol=e;return t.declaredType=f}function getDeclaredTypeOfEnumMember(e){var t=getSymbolLinks(e);if(!t.declaredType){var r=getDeclaredTypeOfEnum(getParentOfSymbol(e));if(!t.declaredType){t.declaredType=r}}return t.declaredType}function getDeclaredTypeOfTypeParameter(e){var t=getSymbolLinks(e);if(!t.declaredType){var r=createType(262144);r.symbol=e;t.declaredType=r}return t.declaredType}function getDeclaredTypeOfAlias(e){var t=getSymbolLinks(e);if(!t.declaredType){t.declaredType=getDeclaredTypeOfSymbol(resolveAlias(e))}return t.declaredType}function getDeclaredTypeOfSymbol(e){return tryGetDeclaredTypeOfSymbol(e)||ee}function tryGetDeclaredTypeOfSymbol(e){if(e.flags&(32|64)){return getDeclaredTypeOfClassOrInterface(e)}if(e.flags&524288){return getDeclaredTypeOfTypeAlias(e)}if(e.flags&262144){return getDeclaredTypeOfTypeParameter(e)}if(e.flags&384){return getDeclaredTypeOfEnum(e)}if(e.flags&8){return getDeclaredTypeOfEnumMember(e)}if(e.flags&2097152){return getDeclaredTypeOfAlias(e)}return undefined}function isThislessType(e){switch(e.kind){case 120:case 143:case 138:case 135:case 146:case 123:case 139:case 136:case 106:case 141:case 96:case 132:case 182:return true;case 169:return isThislessType(e.elementType);case 164:return!e.typeArguments||e.typeArguments.every(isThislessType)}return false}function isThislessTypeParameter(t){var r=e.getEffectiveConstraintOfTypeParameter(t);return!r||isThislessType(r)}function isThislessVariableLikeDeclaration(t){var r=e.getEffectiveTypeAnnotationNode(t);return r?isThislessType(r):!e.hasInitializer(t)}function isThislessFunctionLikeDeclaration(t){var r=e.getEffectiveReturnTypeNode(t);var n=e.getEffectiveTypeParameterDeclarations(t);return(t.kind===157||!!r&&isThislessType(r))&&t.parameters.every(isThislessVariableLikeDeclaration)&&n.every(isThislessTypeParameter)}function isThisless(e){if(e.declarations&&e.declarations.length===1){var t=e.declarations[0];if(t){switch(t.kind){case 154:case 153:return isThislessVariableLikeDeclaration(t);case 156:case 155:case 157:return isThislessFunctionLikeDeclaration(t)}}}return false}function createInstantiatedSymbolTable(t,r,n){var i=e.createSymbolTable();for(var a=0,o=t;a<o.length;a++){var s=o[a];i.set(s.escapedName,n&&isThisless(s)?s:instantiateSymbol(s,r))}return i}function addInheritedMembers(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(!e.has(i.escapedName)){e.set(i.escapedName,i)}}}function resolveDeclaredMembers(t){if(!t.declaredProperties){var r=t.symbol;var n=getMembersOfSymbol(r);t.declaredProperties=getNamedMembers(n);t.declaredCallSignatures=e.emptyArray;t.declaredConstructSignatures=e.emptyArray;t.declaredCallSignatures=getSignaturesOfSymbol(n.get("__call"));t.declaredConstructSignatures=getSignaturesOfSymbol(n.get("__new"));t.declaredStringIndexInfo=getIndexInfoOfSymbol(r,0);t.declaredNumberIndexInfo=getIndexInfoOfSymbol(r,1)}return t}function isTypeUsableAsLateBoundName(e){return!!(e.flags&8576)}function isLateBindableName(t){return e.isComputedPropertyName(t)&&e.isEntityNameExpression(t.expression)&&isTypeUsableAsLateBoundName(checkComputedPropertyName(t))}function isLateBoundName(e){return e.charCodeAt(0)===95&&e.charCodeAt(1)===95&&e.charCodeAt(2)===64}function hasLateBindableName(t){var r=e.getNameOfDeclaration(t);return!!r&&isLateBindableName(r)}function hasNonBindableDynamicName(t){return e.hasDynamicName(t)&&!hasLateBindableName(t)}function isNonBindableDynamicName(t){return e.isDynamicName(t)&&!isLateBindableName(t)}function getLateBoundNameFromType(t){if(t.flags&8192){return"__@"+t.symbol.escapedName+"@"+getSymbolId(t.symbol)}if(t.flags&(128|256)){return e.escapeLeadingUnderscores(""+t.value)}return e.Debug.fail()}function addDeclarationToLateBoundSymbol(t,r,n){e.Debug.assert(!!(e.getCheckFlags(t)&1024),"Expected a late-bound symbol.");t.flags|=n;getSymbolLinks(r.symbol).lateSymbol=t;if(!t.declarations){t.declarations=[r]}else{t.declarations.push(r)}if(n&67220415){if(!t.valueDeclaration||t.valueDeclaration.kind!==r.kind){t.valueDeclaration=r}}}function lateBindMember(t,r,n,i){e.Debug.assert(!!i.symbol,"The member is expected to have a symbol.");var a=getNodeLinks(i);if(!a.resolvedSymbol){a.resolvedSymbol=i.symbol;var o=checkComputedPropertyName(i.name);if(isTypeUsableAsLateBoundName(o)){var s=getLateBoundNameFromType(o);var c=i.symbol.flags;var u=n.get(s);if(!u)n.set(s,u=createSymbol(0,s,1024));var l=r&&r.get(s);if(u.flags&getExcludedSymbolFlags(c)||l){var f=l?e.concatenate(l.declarations,u.declarations):u.declarations;var d=e.declarationNameToString(i.name);e.forEach(f,function(t){return error(e.getNameOfDeclaration(t)||t,e.Diagnostics.Duplicate_declaration_0,d)});error(i.name||i,e.Diagnostics.Duplicate_declaration_0,d);u=createSymbol(0,s,1024)}u.nameType=o;addDeclarationToLateBoundSymbol(u,i,c);if(u.parent){e.Debug.assert(u.parent===t,"Existing symbol parent should match new one")}else{u.parent=t}return a.resolvedSymbol=u}}return a.resolvedSymbol}function getResolvedMembersOrExportsOfSymbol(t,r){var n=getSymbolLinks(t);if(!n[r]){var i=r==="resolvedExports";var a=!i?t.members:t.flags&1536?getExportsOfModuleWorker(t):t.exports;n[r]=a||S;var o=e.createSymbolTable();for(var s=0,c=t.declarations;s<c.length;s++){var u=c[s];var l=e.getMembersOfDeclaration(u);if(l){for(var f=0,d=l;f<d.length;f++){var p=d[f];if(i===e.hasStaticModifier(p)&&hasLateBindableName(p)){lateBindMember(t,a,o,p)}}}}n[r]=combineSymbolTables(a,o)||S}return n[r]}function getMembersOfSymbol(e){return e.flags&6240?getResolvedMembersOrExportsOfSymbol(e,"resolvedMembers"):e.members||S}function getLateBoundSymbol(t){if(t.flags&106500&&t.escapedName==="__computed"){var r=getSymbolLinks(t);if(!r.lateSymbol&&e.some(t.declarations,hasLateBindableName)){if(e.some(t.declarations,e.hasStaticModifier)){getExportsOfSymbol(t.parent)}else{getMembersOfSymbol(t.parent)}}return r.lateSymbol||(r.lateSymbol=t)}return t}function getTypeWithThisArgument(t,r,n){if(e.getObjectFlags(t)&4){var i=t.target;var a=t.typeArguments;if(e.length(i.typeParameters)===e.length(a)){var o=createTypeReference(i,e.concatenate(a,[r||i.thisType]));return n?getApparentType(o):o}}else if(t.flags&2097152){return getIntersectionType(e.map(t.types,function(e){return getTypeWithThisArgument(e,r,n)}))}return n?getApparentType(t):t}function resolveObjectTypeMembers(t,r,n,i){var a;var o;var s;var c;var u;var l;if(e.rangeEquals(n,i,0,n.length)){a=b;o=r.symbol?getMembersOfSymbol(r.symbol):e.createSymbolTable(r.declaredProperties);s=r.declaredCallSignatures;c=r.declaredConstructSignatures;u=r.declaredStringIndexInfo;l=r.declaredNumberIndexInfo}else{a=createTypeMapper(n,i);o=createInstantiatedSymbolTable(r.declaredProperties,a,n.length===1);s=instantiateSignatures(r.declaredCallSignatures,a);c=instantiateSignatures(r.declaredConstructSignatures,a);u=instantiateIndexInfo(r.declaredStringIndexInfo,a);l=instantiateIndexInfo(r.declaredNumberIndexInfo,a)}var f=getBaseTypes(r);if(f.length){if(r.symbol&&o===getMembersOfSymbol(r.symbol)){o=e.createSymbolTable(r.declaredProperties)}setStructuredTypeMembers(t,o,s,c,u,l);var d=e.lastOrUndefined(i);for(var p=0,g=f;p<g.length;p++){var _=g[p];var m=d?getTypeWithThisArgument(instantiateType(_,a),d):_;addInheritedMembers(o,getPropertiesOfType(m));s=e.concatenate(s,getSignaturesOfType(m,0));c=e.concatenate(c,getSignaturesOfType(m,1));if(!u){u=m===X?createIndexInfo(X,false):getIndexInfoOfType(m,0)}l=l||getIndexInfoOfType(m,1)}}setStructuredTypeMembers(t,o,s,c,u,l)}function resolveClassOrInterfaceMembers(t){resolveObjectTypeMembers(t,resolveDeclaredMembers(t),e.emptyArray,e.emptyArray)}function resolveTypeReferenceMembers(t){var r=resolveDeclaredMembers(t.target);var n=e.concatenate(r.typeParameters,[r.thisType]);var i=t.typeArguments&&t.typeArguments.length===n.length?t.typeArguments:e.concatenate(t.typeArguments,[t]);resolveObjectTypeMembers(t,r,n,i)}function createSignature(e,t,r,n,i,a,o,s,c){var u=new _(W);u.declaration=e;u.typeParameters=t;u.parameters=n;u.thisParameter=r;u.resolvedReturnType=i;u.resolvedTypePredicate=a;u.minArgumentCount=o;u.hasRestParameter=s;u.hasLiteralTypes=c;u.target=undefined;u.mapper=undefined;return u}function cloneSignature(e){return createSignature(e.declaration,e.typeParameters,e.thisParameter,e.parameters,undefined,undefined,e.minArgumentCount,e.hasRestParameter,e.hasLiteralTypes)}function getExpandedParameters(t){if(t.hasRestParameter){var r=t.parameters.length-1;var n=t.parameters[r];var i=getTypeOfSymbol(n);if(isTupleType(i)){var a=i.typeArguments||e.emptyArray;var o=i.target.minLength;var s=i.target.hasRestElement?a.length-1:-1;var c=e.map(a,function(e,n){var i=getParameterNameAtPosition(t,r+n);var a=n===s?8192:n>=o?4096:0;var c=createSymbol(1,i,a);c.type=n===s?createArrayType(e):e;return c});return e.concatenate(t.parameters.slice(0,r),c)}}return t.parameters}function getDefaultConstructSignatures(t){var r=getBaseConstructorTypeOfClass(t);var n=getSignaturesOfType(r,1);if(n.length===0){return[createSignature(undefined,t.localTypeParameters,undefined,e.emptyArray,t,undefined,0,false,false)]}var i=getBaseTypeNodeOfClass(t);var a=e.isInJSFile(i);var o=typeArgumentsFromTypeReferenceNode(i);var s=e.length(o);var c=[];for(var u=0,l=n;u<l.length;u++){var f=l[u];var d=getMinTypeArgumentCount(f.typeParameters);var p=e.length(f.typeParameters);if(a||s>=d&&s<=p){var g=p?createSignatureInstantiation(f,fillMissingTypeArguments(o,f.typeParameters,d,a)):cloneSignature(f);g.typeParameters=t.localTypeParameters;g.resolvedReturnType=t;c.push(g)}}return c}function findMatchingSignature(e,t,r,n,i){for(var a=0,o=e;a<o.length;a++){var s=o[a];if(compareSignaturesIdentical(s,t,r,n,i,r?compareTypesSubtypeOf:compareTypesIdentical)){return s}}}function findMatchingSignatures(t,r,n){if(r.typeParameters){if(n>0){return undefined}for(var i=1;i<t.length;i++){if(!findMatchingSignature(t[i],r,false,false,false)){return undefined}}return[r]}var a;for(var i=0;i<t.length;i++){var o=i===n?r:findMatchingSignature(t[i],r,true,true,true);if(!o){return undefined}a=e.appendIfUnique(a,o)}return a}function getUnionSignatures(t){var r;for(var n=0;n<t.length;n++){for(var i=0,a=t[n];i<a.length;i++){var o=a[i];if(!r||!findMatchingSignature(r,o,false,true,true)){var s=findMatchingSignatures(t,o,n);if(s){var c=o;if(s.length>1){var u=o.thisParameter;if(e.forEach(s,function(e){return e.thisParameter})){var l=getUnionType(e.map(s,function(e){return e.thisParameter?getTypeOfSymbol(e.thisParameter):X}),2);u=createSymbolWithType(o.thisParameter,l)}c=cloneSignature(o);c.thisParameter=u;c.unionSignatures=s}(r||(r=[])).push(c)}}}}return r||e.emptyArray}function getUnionIndexInfo(e,t){var r=[];var n=false;for(var i=0,a=e;i<a.length;i++){var o=a[i];var s=getIndexInfoOfType(o,t);if(!s){return undefined}r.push(s.type);n=n||s.isReadonly}return createIndexInfo(getUnionType(r,2),n)}function resolveUnionTypeMembers(t){var r=getUnionSignatures(e.map(t.types,function(e){return getSignaturesOfType(e,0)}));var n=getUnionSignatures(e.map(t.types,function(e){return getSignaturesOfType(e,1)}));var i=getUnionIndexInfo(t.types,0);var a=getUnionIndexInfo(t.types,1);setStructuredTypeMembers(t,S,r,n,i,a)}function intersectTypes(e,t){return!e?t:!t?e:getIntersectionType([e,t])}function intersectIndexInfos(e,t){return!e?t:!t?e:createIndexInfo(getIntersectionType([e.type,t.type]),e.isReadonly&&t.isReadonly)}function unionSpreadIndexInfos(e,t){return e&&t&&createIndexInfo(getUnionType([e.type,t.type]),e.isReadonly||t.isReadonly)}function includeMixinType(e,t,r){var n=[];for(var i=0;i<t.length;i++){if(i===r){n.push(e)}else if(isMixinConstructorType(t[i])){n.push(getReturnTypeOfSignature(getSignaturesOfType(t[i],1)[0]))}}return getIntersectionType(n)}function resolveIntersectionTypeMembers(t){var r=e.emptyArray;var n=e.emptyArray;var i;var a;var o=t.types;var s=e.countWhere(o,isMixinConstructorType);var c=function(c){var u=t.types[c];if(s===0||s===o.length&&c===0||!isMixinConstructorType(u)){var l=getSignaturesOfType(u,1);if(l.length&&s>0){l=e.map(l,function(e){var t=cloneSignature(e);t.resolvedReturnType=includeMixinType(getReturnTypeOfSignature(e),o,c);return t})}n=e.concatenate(n,l)}r=e.concatenate(r,getSignaturesOfType(u,0));i=intersectIndexInfos(i,getIndexInfoOfType(u,0));a=intersectIndexInfos(a,getIndexInfoOfType(u,1))};for(var u=0;u<o.length;u++){c(u)}setStructuredTypeMembers(t,S,r,n,i,a)}function resolveAnonymousTypeMembers(t){var r=t.symbol;if(t.target){setStructuredTypeMembers(t,S,e.emptyArray,e.emptyArray,undefined,undefined);var n=createInstantiatedSymbolTable(getPropertiesOfObjectType(t.target),t.mapper,false);var i=instantiateSignatures(getSignaturesOfType(t.target,0),t.mapper);var a=instantiateSignatures(getSignaturesOfType(t.target,1),t.mapper);var o=instantiateIndexInfo(getIndexInfoOfType(t.target,0),t.mapper);var s=instantiateIndexInfo(getIndexInfoOfType(t.target,1),t.mapper);setStructuredTypeMembers(t,n,i,a,o,s)}else if(r.flags&2048){setStructuredTypeMembers(t,S,e.emptyArray,e.emptyArray,undefined,undefined);var n=getMembersOfSymbol(r);var i=getSignaturesOfSymbol(n.get("__call"));var a=getSignaturesOfSymbol(n.get("__new"));var o=getIndexInfoOfSymbol(r,0);var s=getIndexInfoOfSymbol(r,1);setStructuredTypeMembers(t,n,i,a,o,s)}else{var n=S;var o=void 0;if(r.exports){n=getExportsOfSymbol(r)}setStructuredTypeMembers(t,n,e.emptyArray,e.emptyArray,undefined,undefined);if(r.flags&32){var c=getDeclaredTypeOfClassOrInterface(r);var u=getBaseConstructorTypeOfClass(c);if(u.flags&(524288|2097152|8650752)){n=e.createSymbolTable(getNamedMembers(n));addInheritedMembers(n,getPropertiesOfType(u))}else if(u===X){o=createIndexInfo(X,false)}}var s=r.flags&384?Je:undefined;setStructuredTypeMembers(t,n,e.emptyArray,e.emptyArray,o,s);if(r.flags&(16|8192)){t.callSignatures=getSignaturesOfSymbol(r);t.constructSignatures=e.filter(t.callSignatures,function(e){return isJSConstructor(e.declaration)})}if(r.flags&32){var c=getDeclaredTypeOfClassOrInterface(r);var a=getSignaturesOfSymbol(r.members.get("__constructor"));if(!a.length){a=getDefaultConstructSignatures(c)}t.constructSignatures=a}}}function resolveReverseMappedTypeMembers(t){var r=getIndexInfoOfType(t.source,0);var n=getMappedTypeModifiers(t.mappedType);var i=n&1?false:true;var a=n&4?0:16777216;var o=r&&createIndexInfo(inferReverseMappedType(r.type,t.mappedType,t.constraintType),i&&r.isReadonly);var s=e.createSymbolTable();for(var c=0,u=getPropertiesOfType(t.source);c<u.length;c++){var l=u[c];var f=2048|(i&&isReadonlySymbol(l)?8:0);var d=createSymbol(4|l.flags&a,l.escapedName,f);d.declarations=l.declarations;d.nameType=l.nameType;d.propertyType=getTypeOfSymbol(l);d.mappedType=t.mappedType;d.constraintType=t.constraintType;s.set(l.escapedName,d)}setStructuredTypeMembers(t,s,e.emptyArray,e.emptyArray,o,undefined)}function resolveMappedTypeMembers(t){var r=e.createSymbolTable();var n;var i;setStructuredTypeMembers(t,S,e.emptyArray,e.emptyArray,undefined,undefined);var a=getTypeParameterFromMappedType(t);var o=getConstraintTypeFromMappedType(t);var s=getTemplateTypeFromMappedType(t.target||t);var c=getApparentType(getModifiersTypeFromMappedType(t));var u=getMappedTypeModifiers(t);var l=I?128:8576;if(isMappedTypeWithKeyofConstraintDeclaration(t)){for(var f=0,d=getPropertiesOfType(c);f<d.length;f++){var p=d[f];addMemberForKeyType(getLiteralTypeFromProperty(p,l))}if(c.flags&1||getIndexInfoOfType(c,0)){addMemberForKeyType(oe)}if(!I&&getIndexInfoOfType(c,1)){addMemberForKeyType(se)}}else{var g=o.flags&4194304?getIndexType(getApparentType(o.type)):o;forEachType(g,addMemberForKeyType)}setStructuredTypeMembers(t,r,e.emptyArray,e.emptyArray,n,i);function addMemberForKeyType(e){var o=combineTypeMappers(t.mapper,createTypeMapper([a],[e]));var l=instantiateType(s,o);if(e.flags&8576){var f=getLateBoundNameFromType(e);var d=getPropertyOfType(c,f);var p=!!(u&4||!(u&8)&&d&&d.flags&16777216);var g=!!(u&1||!(u&2)&&d&&isReadonlySymbol(d));var _=createSymbol(4|(p?16777216:0),f,g?8:0);_.type=k&&p&&!isTypeAssignableTo(re,l)?getOptionalType(l):k&&!p&&d&&d.flags&16777216?getTypeWithFacts(l,524288):l;if(d){_.syntheticOrigin=d;_.declarations=d.declarations}_.nameType=e;r.set(f,_)}else if(e.flags&(1|4)){n=createIndexInfo(l,!!(u&1))}else if(e.flags&8){i=createIndexInfo(l,!!(u&1))}}}function getTypeParameterFromMappedType(e){return e.typeParameter||(e.typeParameter=getDeclaredTypeOfTypeParameter(getSymbolOfNode(e.declaration.typeParameter)))}function getConstraintTypeFromMappedType(e){return e.constraintType||(e.constraintType=getConstraintOfTypeParameter(getTypeParameterFromMappedType(e))||ee)}function getTemplateTypeFromMappedType(e){return e.templateType||(e.templateType=e.declaration.type?instantiateType(addOptionality(getTypeFromTypeNode(e.declaration.type),!!(getMappedTypeModifiers(e)&4)),e.mapper||b):ee)}function getConstraintDeclarationForMappedType(t){return e.getEffectiveConstraintOfTypeParameter(t.declaration.typeParameter)}function isMappedTypeWithKeyofConstraintDeclaration(e){var t=getConstraintDeclarationForMappedType(e);return t.kind===179&&t.operator===129}function getModifiersTypeFromMappedType(e){if(!e.modifiersType){if(isMappedTypeWithKeyofConstraintDeclaration(e)){e.modifiersType=instantiateType(getTypeFromTypeNode(getConstraintDeclarationForMappedType(e).type),e.mapper||b)}else{var t=getTypeFromMappedTypeNode(e.declaration);var r=getConstraintTypeFromMappedType(t);var n=r&&r.flags&262144?getConstraintOfTypeParameter(r):r;e.modifiersType=n&&n.flags&4194304?instantiateType(n.type,e.mapper||b):xe}}return e.modifiersType}function getMappedTypeModifiers(e){var t=e.declaration;return(t.readonlyToken?t.readonlyToken.kind===39?2:1:0)|(t.questionToken?t.questionToken.kind===39?8:4:0)}function getMappedTypeOptionality(e){var t=getMappedTypeModifiers(e);return t&8?-1:t&4?1:0}function getCombinedMappedTypeOptionality(e){var t=getMappedTypeOptionality(e);var r=getModifiersTypeFromMappedType(e);return t||(isGenericMappedType(r)?getMappedTypeOptionality(r):0)}function isPartialMappedType(t){return!!(e.getObjectFlags(t)&32&&getMappedTypeModifiers(t)&4)}function isGenericMappedType(t){return!!(e.getObjectFlags(t)&32)&&isGenericIndexType(getConstraintTypeFromMappedType(t))}function resolveStructuredTypeMembers(e){if(!e.members){if(e.flags&524288){if(e.objectFlags&4){resolveTypeReferenceMembers(e)}else if(e.objectFlags&3){resolveClassOrInterfaceMembers(e)}else if(e.objectFlags&2048){resolveReverseMappedTypeMembers(e)}else if(e.objectFlags&16){resolveAnonymousTypeMembers(e)}else if(e.objectFlags&32){resolveMappedTypeMembers(e)}}else if(e.flags&1048576){resolveUnionTypeMembers(e)}else if(e.flags&2097152){resolveIntersectionTypeMembers(e)}}return e}function getPropertiesOfObjectType(t){if(t.flags&524288){return resolveStructuredTypeMembers(t).properties}return e.emptyArray}function getPropertyOfObjectType(e,t){if(e.flags&524288){var r=resolveStructuredTypeMembers(e);var n=r.members.get(t);if(n&&symbolIsValue(n)){return n}}}function getPropertiesOfUnionOrIntersectionType(t){if(!t.resolvedProperties){var r=e.createSymbolTable();for(var n=0,i=t.types;n<i.length;n++){var a=i[n];for(var o=0,s=getPropertiesOfType(a);o<s.length;o++){var c=s[o];if(!r.has(c.escapedName)){var u=getPropertyOfUnionOrIntersectionType(t,c.escapedName);if(u){r.set(c.escapedName,u)}}}if(t.flags&1048576){break}}t.resolvedProperties=getNamedMembers(r)}return t.resolvedProperties}function getPropertiesOfType(e){e=getApparentType(e);return e.flags&3145728?getPropertiesOfUnionOrIntersectionType(e):getPropertiesOfObjectType(e)}function isTypeInvalidDueToUnionDiscriminant(t,r){var n=r.properties;return n.some(function(r){var n=r.name&&e.getTextOfPropertyName(r.name);var i=n===undefined?undefined:getTypeOfPropertyOfType(t,n);return!!i&&typeIsLiteralType(i)&&!isTypeIdenticalTo(getTypeOfNode(r),i)})}function getAllPossiblePropertiesOfTypes(t){var r=getUnionType(t);if(!(r.flags&1048576)){return getAugmentedPropertiesOfType(r)}var n=e.createSymbolTable();for(var i=0,a=t;i<a.length;i++){var o=a[i];for(var s=0,c=getAugmentedPropertiesOfType(o);s<c.length;s++){var u=c[s].escapedName;if(!n.has(u)){var l=createUnionOrIntersectionProperty(r,u);if(l)n.set(u,l)}}}return e.arrayFrom(n.values())}function getConstraintOfType(e){return e.flags&262144?getConstraintOfTypeParameter(e):e.flags&8388608?getConstraintOfIndexedAccess(e):e.flags&16777216?getConstraintOfConditionalType(e):getBaseConstraintOfType(e)}function getConstraintOfTypeParameter(e){return hasNonCircularBaseConstraint(e)?getConstraintFromTypeParameter(e):undefined}function getConstraintOfIndexedAccess(e){var t=getConstraintOfType(e.objectType)||e.objectType;if(t!==e.objectType){var r=getIndexedAccessType(t,e.indexType,undefined,ee);if(r&&r!==ee){return r}}var n=getBaseConstraintOfType(e);return n&&n!==e?n:undefined}function getDefaultConstraintOfConditionalType(e){if(!e.resolvedDefaultConstraint){var t=e.root.trueType;var r=!(t.flags&33554432)?t:t.substitute.flags&3?t.typeVariable:getIntersectionType([t.substitute,t.typeVariable]);e.resolvedDefaultConstraint=getUnionType([instantiateType(r,e.combinedMapper||e.mapper),getFalseTypeFromConditionalType(e)])}return e.resolvedDefaultConstraint}function getConstraintOfDistributiveConditionalType(e){if(e.root.isDistributive){var t=getSimplifiedType(e.checkType);var r=t===e.checkType?getConstraintOfType(t):t;if(r){var n=makeUnaryTypeMapper(e.root.checkType,r);var i=getConditionalTypeInstantiation(e,combineTypeMappers(n,e.mapper));if(!(i.flags&131072)){return i}}}return undefined}function getConstraintOfConditionalType(e){return getConstraintOfDistributiveConditionalType(e)||getDefaultConstraintOfConditionalType(e)}function getUnionConstraintOfIntersection(t,r){var n;var i=false;for(var a=0,o=t.types;a<o.length;a++){var s=o[a];if(s.flags&63176704){var c=getConstraintOfType(s);while(c&&c.flags&(262144|4194304|16777216)){c=getConstraintOfType(c)}if(c){if(!(c.flags&1048576)){return undefined}n=e.append(n,c)}}else if(s.flags&67238908){i=true}}if(n&&(r||i)){if(i){for(var u=0,l=t.types;u<l.length;u++){var s=l[u];if(s.flags&67238908){n=e.append(n,s)}}}return getIntersectionType(n)}return undefined}function getBaseConstraintOfType(e){if(e.flags&(58982400|3145728)){var t=getResolvedBaseConstraint(e);return t!==Ae&&t!==Oe?t:undefined}return e.flags&4194304?Se:undefined}function getBaseConstraintOrType(e){return getBaseConstraintOfType(e)||e}function hasNonCircularBaseConstraint(e){return getResolvedBaseConstraint(e)!==Oe}function getResolvedBaseConstraint(e){var t=false;return e.resolvedBaseConstraint||(e.resolvedBaseConstraint=getTypeWithThisArgument(getImmediateBaseConstraint(e),e));function getImmediateBaseConstraint(e){if(!e.immediateBaseConstraint){if(!pushTypeResolution(e,4)){return Oe}if(T===50){t=true;return e.immediateBaseConstraint=Ae}T++;var r=computeBaseConstraint(getSimplifiedType(e));T--;if(!popTypeResolution()||t){r=Oe}e.immediateBaseConstraint=r||Ae}return e.immediateBaseConstraint}function getBaseConstraint(e){var t=getImmediateBaseConstraint(e);return t!==Ae&&t!==Oe?t:undefined}function computeBaseConstraint(e){if(e.flags&262144){var t=getConstraintFromTypeParameter(e);return e.isThisType||!t?t:getBaseConstraint(t)}if(e.flags&3145728){var r=e.types;var n=[];for(var i=0,a=r;i<a.length;i++){var o=a[i];var s=getBaseConstraint(o);if(s){n.push(s)}}return e.flags&1048576&&n.length===r.length?getUnionType(n):e.flags&2097152&&n.length?getIntersectionType(n):undefined}if(e.flags&4194304){return Se}if(e.flags&8388608){var c=getBaseConstraint(e.objectType);var u=getBaseConstraint(e.indexType);var l=c&&u?getIndexedAccessType(c,u,undefined,ee):undefined;return l&&l!==ee?getBaseConstraint(l):undefined}if(e.flags&16777216){var t=getConstraintOfConditionalType(e);return t&&getBaseConstraint(t)}if(e.flags&33554432){return getBaseConstraint(e.substitute)}return e}}function getApparentTypeOfIntersectionType(e){return e.resolvedApparentType||(e.resolvedApparentType=getTypeWithThisArgument(e,e,true))}function getResolvedTypeParameterDefault(t){if(!t.default){if(t.target){var r=getResolvedTypeParameterDefault(t.target);t.default=r?instantiateType(r,t.mapper):Ae}else{t.default=Fe;var n=t.symbol&&e.forEach(t.symbol.declarations,function(t){return e.isTypeParameterDeclaration(t)&&t.default});var i=n?getTypeFromTypeNode(n):Ae;if(t.default===Fe){t.default=i}}}else if(t.default===Fe){t.default=Oe}return t.default}function getDefaultFromTypeParameter(e){var t=getResolvedTypeParameterDefault(e);return t!==Ae&&t!==Oe?t:undefined}function hasNonCircularTypeParameterDefault(e){return getResolvedTypeParameterDefault(e)!==Oe}function hasTypeParameterDefault(t){return!!(t.symbol&&e.forEach(t.symbol.declarations,function(t){return e.isTypeParameterDeclaration(t)&&t.default}))}function getApparentTypeOfMappedType(e){return e.resolvedApparentType||(e.resolvedApparentType=getResolvedApparentTypeOfMappedType(e))}function getResolvedApparentTypeOfMappedType(e){var t=getHomomorphicTypeVariable(e);if(t){var r=getConstraintOfTypeParameter(t);if(r&&(isArrayType(r)||isReadonlyArrayType(r)||isTupleType(r))){var n=makeUnaryTypeMapper(t,r);return instantiateType(e,combineTypeMappers(n,e.mapper))}}return e}function getApparentType(t){var r=t.flags&63176704?getBaseConstraintOfType(t)||xe:t;return e.getObjectFlags(r)&32?getApparentTypeOfMappedType(r):r.flags&2097152?getApparentTypeOfIntersectionType(r):r.flags&132?Ye:r.flags&296?Ze:r.flags&2112?getGlobalBigIntType(C>=6):r.flags&528?et:r.flags&12288?getGlobalESSymbolType(C>=2):r.flags&67108864?xe:r.flags&4194304?Se:r}function createUnionOrIntersectionProperty(t,r){var n;var i;var a=t.flags&1048576;var o=a?24:0;var s=a?0:16777216;var c=4;var u=0;for(var l=0,f=t.types;l<f.length;l++){var d=f[l];var p=getApparentType(d);if(p!==ee){var g=getPropertyOfType(p,r);var _=g?e.getDeclarationModifierFlagsFromSymbol(g):0;if(g&&!(_&o)){s&=g.flags;n=e.appendIfUnique(n,g);u|=(isReadonlySymbol(g)?8:0)|(!(_&24)?64:0)|(_&16?128:0)|(_&8?256:0)|(_&32?512:0);if(!isPrototypeProperty(g)){c=2}}else if(a){var m=!isLateBoundName(r)&&(isNumericLiteralName(r)&&getIndexInfoOfType(p,1)||getIndexInfoOfType(p,0));if(m){u|=m.isReadonly?8:0;i=e.append(i,isTupleType(p)?getRestTypeOfTupleType(p)||re:m.type)}else{u|=16}}}}if(!n){return undefined}if(n.length===1&&!(u&16)&&!i){return n[0]}var y;var h;var v;var T=[];var S=true;var b;var x=false;for(var C=0,E=n;C<E.length;C++){var g=E[C];if(!b){b=g.valueDeclaration}else if(g.valueDeclaration!==b){x=true}y=e.addRange(y,g.declarations);var p=getTypeOfSymbol(g);if(S){h=p;v=g.nameType;S=false}else{if(p!==h){u|=32}}T.push(p)}e.addRange(T,i);var D=createSymbol(4|s,r,c|u);D.containingType=t;if(!x&&b){D.valueDeclaration=b}D.declarations=y;D.nameType=v;D.type=a?getUnionType(T):getIntersectionType(T);return D}function getUnionOrIntersectionProperty(t,r){var n=t.propertyCache||(t.propertyCache=e.createSymbolTable());var i=n.get(r);if(!i){i=createUnionOrIntersectionProperty(t,r);if(i){n.set(r,i)}}return i}function getPropertyOfUnionOrIntersectionType(t,r){var n=getUnionOrIntersectionProperty(t,r);return n&&!(e.getCheckFlags(n)&16)?n:undefined}function getPropertyOfType(e,t){e=getApparentType(e);if(e.flags&524288){var r=resolveStructuredTypeMembers(e);var n=r.members.get(t);if(n&&symbolIsValue(n)){return n}var i=r===Ne?Ge:r.callSignatures.length?He:r.constructSignatures.length?Qe:undefined;if(i){var a=getPropertyOfObjectType(i,t);if(a){return a}}return getPropertyOfObjectType(qe,t)}if(e.flags&3145728){return getPropertyOfUnionOrIntersectionType(e,t)}return undefined}function getSignaturesOfStructuredType(t,r){if(t.flags&3670016){var n=resolveStructuredTypeMembers(t);return r===0?n.callSignatures:n.constructSignatures}return e.emptyArray}function getSignaturesOfType(e,t){return getSignaturesOfStructuredType(getApparentType(e),t)}function getIndexInfoOfStructuredType(e,t){if(e.flags&3670016){var r=resolveStructuredTypeMembers(e);return t===0?r.stringIndexInfo:r.numberIndexInfo}}function getIndexTypeOfStructuredType(e,t){var r=getIndexInfoOfStructuredType(e,t);return r&&r.type}function getIndexInfoOfType(e,t){return getIndexInfoOfStructuredType(getApparentType(e),t)}function getIndexTypeOfType(e,t){return getIndexTypeOfStructuredType(getApparentType(e),t)}function getImplicitIndexTypeOfType(e,t){if(isObjectTypeWithInferableIndex(e)){var r=[];for(var n=0,i=getPropertiesOfType(e);n<i.length;n++){var a=i[n];if(t===0||isNumericLiteralName(a.escapedName)){r.push(getTypeOfSymbol(a))}}if(r.length){return getUnionType(r,2)}}return undefined}function getTypeParametersFromDeclaration(t){var r;for(var n=0,i=e.getEffectiveTypeParameterDeclarations(t);n<i.length;n++){var a=i[n];r=e.appendIfUnique(r,getDeclaredTypeOfTypeParameter(a.symbol))}return r}function symbolsToArray(e){var t=[];e.forEach(function(e,r){if(!isReservedMemberName(r)){t.push(e)}});return t}function isJSDocOptionalParameter(t){return e.isInJSFile(t)&&(t.type&&t.type.kind===288||e.getJSDocParameterTags(t).some(function(e){var t=e.isBracketed,r=e.typeExpression;return t||!!r&&r.type.kind===288}))}function tryFindAmbientModule(t,r){if(e.isExternalModuleNameRelative(t)){return undefined}var n=getSymbol(We,'"'+t+'"',512);return n&&r?getMergedSymbol(n):n}function isOptionalParameter(t){if(e.hasQuestionToken(t)||isOptionalJSDocParameterTag(t)||isJSDocOptionalParameter(t)){return true}if(t.initializer){var r=getSignatureFromDeclaration(t.parent);var n=t.parent.parameters.indexOf(t);e.Debug.assert(n>=0);return n>=getMinArgumentCount(r)}var i=e.getImmediatelyInvokedFunctionExpression(t.parent);if(i){return!t.type&&!t.dotDotDotToken&&t.parent.parameters.indexOf(t)>=i.arguments.length}return false}function isOptionalJSDocParameterTag(t){if(!e.isJSDocParameterTag(t)){return false}var r=t.isBracketed,n=t.typeExpression;return r||!!n&&n.type.kind===288}function createIdentifierTypePredicate(e,t,r){return{kind:1,parameterName:e,parameterIndex:t,type:r}}function createThisTypePredicate(e){return{kind:0,type:e}}function getMinTypeArgumentCount(e){var t=0;if(e){for(var r=0;r<e.length;r++){if(!hasTypeParameterDefault(e[r])){t=r+1}}}return t}function fillMissingTypeArguments(t,r,n,i){var a=e.length(r);if(!a){return[]}var o=e.length(t);if(i||o>=n&&o<=a){var s=t?t.slice():[];var c=getDefaultTypeArgumentType(i);var u=createTypeMapper(r,e.map(r,function(){return c}));for(var l=o;l<a;l++){s[l]=instantiateType(getConstraintFromTypeParameter(r[l])||c,u)}for(var l=o;l<a;l++){var f=createTypeMapper(r,s);var d=getDefaultFromTypeParameter(r[l]);if(i&&d&&isTypeIdenticalTo(d,xe)){d=X}s[l]=d?instantiateType(d,f):c}s.length=r.length;return s}return t&&t.slice()}function getSignatureFromDeclaration(t){var r=getNodeLinks(t);if(!r.resolvedSignature){var n=[];var i=false;var a=0;var o=void 0;var s=false;var c=e.getImmediatelyInvokedFunctionExpression(t);var u=e.isJSDocConstructSignature(t);var l=!c&&e.isInJSFile(t)&&e.isValueSignatureDeclaration(t)&&!e.hasJSDocParameterTags(t)&&!e.getJSDocType(t);for(var f=u?1:0;f<t.parameters.length;f++){var d=t.parameters[f];var p=d.symbol;var g=e.isJSDocParameterTag(d)?d.typeExpression&&d.typeExpression.type:d.type;if(p&&!!(p.flags&4)&&!e.isBindingPattern(d.name)){var _=resolveName(d,p.escapedName,67220415,undefined,undefined,false);p=_}if(f===0&&p.escapedName==="this"){s=true;o=d.symbol}else{n.push(p)}if(g&&g.kind===182){i=true}var m=isOptionalJSDocParameterTag(d)||d.initializer||d.questionToken||d.dotDotDotToken||c&&n.length>c.arguments.length&&!g||l||isJSDocOptionalParameter(d);if(!m){a=n.length}}if((t.kind===158||t.kind===159)&&!hasNonBindableDynamicName(t)&&(!s||!o)){var y=t.kind===158?159:158;var h=e.getDeclarationOfKind(getSymbolOfNode(t),y);if(h){o=getAnnotatedAccessorThisParameter(h)}}var v=t.kind===157?getDeclaredTypeOfClassOrInterface(getMergedSymbol(t.parent.symbol)):undefined;var T=v?v.localTypeParameters:getTypeParametersFromDeclaration(t);var S=e.hasRestParameter(t)||e.isInJSFile(t)&&maybeAddJsSyntheticRestParameter(t,n);r.resolvedSignature=createSignature(t,T,o,n,undefined,undefined,a,S,i)}return r.resolvedSignature}function maybeAddJsSyntheticRestParameter(t,r){if(e.isJSDocSignature(t)||!containsArgumentsReference(t)){return false}var n=e.lastOrUndefined(t.parameters);var i=n?e.getJSDocParameterTags(n):e.getJSDocTags(t).filter(e.isJSDocParameterTag);var a=e.firstDefined(i,function(t){return t.typeExpression&&e.isJSDocVariadicType(t.typeExpression.type)?t.typeExpression.type:undefined});var o=createSymbol(3,"args",8192);o.type=a?createArrayType(getTypeFromTypeNode(a.type)):nt;if(a){r.pop()}r.push(o);return true}function getSignatureOfTypeTag(t){var r=e.isInJSFile(t)?e.getJSDocTypeTag(t):undefined;var n=r&&r.typeExpression&&getSingleCallSignature(getTypeFromTypeNode(r.typeExpression));return n&&getErasedSignature(n)}function getReturnTypeOfTypeTag(e){var t=getSignatureOfTypeTag(e);return t&&getReturnTypeOfSignature(t)}function containsArgumentsReference(t){var r=getNodeLinks(t);if(r.containsArgumentsReference===undefined){if(r.flags&8192){r.containsArgumentsReference=true}else{r.containsArgumentsReference=traverse(t.body)}}return r.containsArgumentsReference;function traverse(t){if(!t)return false;switch(t.kind){case 72:return t.escapedText==="arguments"&&e.isExpressionNode(t);case 154:case 156:case 158:case 159:return t.name.kind===149&&traverse(t.name);default:return!e.nodeStartsNewLexicalEnvironment(t)&&!e.isPartOfTypeNode(t)&&!!e.forEachChild(t,traverse)}}}function getSignaturesOfSymbol(t){if(!t)return e.emptyArray;var r=[];for(var n=0;n<t.declarations.length;n++){var i=t.declarations[n];if(!e.isFunctionLike(i))continue;if(n>0&&i.body){var a=t.declarations[n-1];if(i.parent===a.parent&&i.kind===a.kind&&i.pos===a.end){continue}}r.push(getSignatureFromDeclaration(i))}return r}function resolveExternalModuleTypeByLiteral(e){var t=resolveExternalModuleName(e,e);if(t){var r=resolveExternalModuleSymbol(t);if(r){return getTypeOfSymbol(r)}}return X}function getThisTypeOfSignature(e){if(e.thisParameter){return getTypeOfSymbol(e.thisParameter)}}function signatureHasTypePredicate(e){return getTypePredicateOfSignature(e)!==undefined}function getTypePredicateOfSignature(t){if(!t.resolvedTypePredicate){if(t.target){var r=getTypePredicateOfSignature(t.target);t.resolvedTypePredicate=r?instantiateTypePredicate(r,t.mapper):Me}else if(t.unionSignatures){t.resolvedTypePredicate=getUnionTypePredicate(t.unionSignatures)||Me}else{var n=t.declaration&&e.getEffectiveReturnTypeNode(t.declaration);var i=void 0;if(!n&&e.isInJSFile(t.declaration)){var a=getSignatureOfTypeTag(t.declaration);if(a&&t!==a){i=getTypePredicateOfSignature(a)}}t.resolvedTypePredicate=n&&e.isTypePredicateNode(n)?createTypePredicateFromTypePredicateNode(n,t.declaration):i||Me}e.Debug.assert(!!t.resolvedTypePredicate)}return t.resolvedTypePredicate===Me?undefined:t.resolvedTypePredicate}function createTypePredicateFromTypePredicateNode(e,t){var r=e.parameterName;var n=getTypeFromTypeNode(e.type);if(r.kind===72){return createIdentifierTypePredicate(r.escapedText,getTypePredicateParameterIndex(t.parameters,r),n)}else{return createThisTypePredicate(n)}}function getTypePredicateParameterIndex(e,t){for(var r=0;r<e.length;r++){var n=e[r];if(n.name.kind===72&&n.name.escapedText===t.escapedText){return r}}return-1}function getReturnTypeOfSignature(t){if(!t.resolvedReturnType){if(!pushTypeResolution(t,3)){return ee}var r=t.target?instantiateType(getReturnTypeOfSignature(t.target),t.mapper):t.unionSignatures?getUnionType(e.map(t.unionSignatures,getReturnTypeOfSignature),2):getReturnTypeFromAnnotation(t.declaration)||isJSConstructor(t.declaration)&&getJSClassType(getSymbolOfNode(t.declaration))||(e.nodeIsMissing(t.declaration.body)?X:getReturnTypeFromBody(t.declaration));if(!popTypeResolution()){if(t.declaration){var n=e.getEffectiveReturnTypeNode(t.declaration);if(n){error(n,e.Diagnostics.Return_type_annotation_circularly_references_itself)}else if(F){var i=t.declaration;var a=e.getNameOfDeclaration(i);if(a){error(a,e.Diagnostics._0_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions,e.declarationNameToString(a))}else{error(i,e.Diagnostics.Function_implicitly_has_return_type_any_because_it_does_not_have_a_return_type_annotation_and_is_referenced_directly_or_indirectly_in_one_of_its_return_expressions)}}}r=X}t.resolvedReturnType=r}return t.resolvedReturnType}function getReturnTypeFromAnnotation(t){if(t.kind===157){return getDeclaredTypeOfClassOrInterface(getMergedSymbol(t.parent.symbol))}if(e.isJSDocConstructSignature(t)){return getTypeFromTypeNode(t.parameters[0].type)}var r=e.getEffectiveReturnTypeNode(t);if(r){return getTypeFromTypeNode(r)}if(t.kind===158&&!hasNonBindableDynamicName(t)){var n=e.isInJSFile(t)&&getTypeForDeclarationFromJSDocComment(t);if(n){return n}var i=e.getDeclarationOfKind(getSymbolOfNode(t),159);var a=getAnnotatedAccessorType(i);if(a){return a}}return getReturnTypeOfTypeTag(t)}function isResolvingReturnTypeOfSignature(e){return!e.resolvedReturnType&&findResolutionCycleStartIndex(e,3)>=0}function getRestTypeOfSignature(e){return tryGetRestTypeOfSignature(e)||X}function tryGetRestTypeOfSignature(e){if(e.hasRestParameter){var t=getTypeOfSymbol(e.parameters[e.parameters.length-1]);var r=isTupleType(t)?getRestTypeOfTupleType(t):t;return r&&getIndexTypeOfType(r,1)}return undefined}function getSignatureInstantiation(e,t,r){return getSignatureInstantiationWithoutFillingInTypeArguments(e,fillMissingTypeArguments(t,e.typeParameters,getMinTypeArgumentCount(e.typeParameters),r))}function getSignatureInstantiationWithoutFillingInTypeArguments(t,r){var n=t.instantiations||(t.instantiations=e.createMap());var i=getTypeListId(r);var a=n.get(i);if(!a){n.set(i,a=createSignatureInstantiation(t,r))}return a}function createSignatureInstantiation(e,t){return instantiateSignature(e,createSignatureTypeMapper(e,t),true)}function createSignatureTypeMapper(e,t){return createTypeMapper(e.typeParameters,t)}function getErasedSignature(e){return e.typeParameters?e.erasedSignatureCache||(e.erasedSignatureCache=createErasedSignature(e)):e}function createErasedSignature(e){return instantiateSignature(e,createTypeEraser(e.typeParameters),true)}function getCanonicalSignature(e){return e.typeParameters?e.canonicalSignatureCache||(e.canonicalSignatureCache=createCanonicalSignature(e)):e}function createCanonicalSignature(t){return getSignatureInstantiation(t,e.map(t.typeParameters,function(e){return e.target&&!getConstraintOfTypeParameter(e.target)?e.target:e}),e.isInJSFile(t.declaration))}function getBaseSignature(t){var r=t.typeParameters;if(r){var n=createTypeEraser(r);var i=e.map(r,function(e){return instantiateType(getBaseConstraintOfType(e),n)||xe});return instantiateSignature(t,createTypeMapper(r,i),true)}return t}function getOrCreateTypeFromSignature(t){if(!t.isolatedSignatureType){var r=t.declaration.kind===157||t.declaration.kind===161;var n=createObjectType(16);n.members=S;n.properties=e.emptyArray;n.callSignatures=!r?[t]:e.emptyArray;n.constructSignatures=r?[t]:e.emptyArray;t.isolatedSignatureType=n}return t.isolatedSignatureType}function getIndexSymbol(e){return e.members.get("__index")}function getIndexDeclarationOfSymbol(t,r){var n=r===1?135:138;var i=getIndexSymbol(t);if(i){for(var a=0,o=i.declarations;a<o.length;a++){var s=o[a];var c=e.cast(s,e.isIndexSignatureDeclaration);if(c.parameters.length===1){var u=c.parameters[0];if(u.type&&u.type.kind===n){return c}}}}return undefined}function createIndexInfo(e,t,r){return{type:e,isReadonly:t,declaration:r}}function getIndexInfoOfSymbol(t,r){var n=getIndexDeclarationOfSymbol(t,r);if(n){return createIndexInfo(n.type?getTypeFromTypeNode(n.type):X,e.hasModifier(n,64),n)}return undefined}function getConstraintDeclaration(t){var r=t.symbol&&e.getDeclarationOfKind(t.symbol,150);return r&&e.getEffectiveConstraintOfTypeParameter(r)}function getInferredTypeParameterConstraint(t){var r;if(t.symbol){for(var n=0,i=t.symbol.declarations;n<i.length;n++){var a=i[n];if(a.parent.kind===176){var o=a.parent.parent;if(o.kind===164){var s=o;var c=getTypeParametersForTypeReference(s);if(c){var u=s.typeArguments.indexOf(a.parent);if(u<c.length){var l=getConstraintOfTypeParameter(c[u]);if(l){var f=createTypeMapper(c,getEffectiveTypeArguments(s,c));var d=instantiateType(l,f);if(d!==t){r=e.append(r,d)}}}}}else if(o.kind===151&&o.dotDotDotToken){r=e.append(r,createArrayType(te))}}}}return r&&getIntersectionType(r)}function getConstraintFromTypeParameter(e){if(!e.constraint){if(e.target){var t=getConstraintOfTypeParameter(e.target);e.constraint=t?instantiateType(t,e.mapper):Ae}else{var r=getConstraintDeclaration(e);e.constraint=r?getTypeFromTypeNode(r):getInferredTypeParameterConstraint(e)||Ae}}return e.constraint===Ae?undefined:e.constraint}function getParentSymbolOfTypeParameter(t){var r=e.getDeclarationOfKind(t.symbol,150);var n=e.isJSDocTemplateTag(r.parent)?e.getHostSignatureFromJSDoc(r.parent):r.parent;return n&&getSymbolOfNode(n)}function getTypeListId(e){var t="";if(e){var r=e.length;var n=0;while(n<r){var i=e[n].id;var a=1;while(n+a<r&&e[n+a].id===i+a){a++}if(t.length){t+=","}t+=i;if(a>1){t+=":"+a}n+=a}}return t}function getPropagatingFlagsOfTypes(e,t){var r=0;for(var n=0,i=e;n<i.length;n++){var a=i[n];if(!(a.flags&t)){r|=a.flags}}return r&939524096}function createTypeReference(e,t){var r=getTypeListId(t);var n=e.instantiations.get(r);if(!n){n=createObjectType(4,e.symbol);e.instantiations.set(r,n);n.flags|=t?getPropagatingFlagsOfTypes(t,0):0;n.target=e;n.typeArguments=t}return n}function cloneTypeReference(e){var t=createType(e.flags);t.symbol=e.symbol;t.objectFlags=e.objectFlags;t.target=e.target;t.typeArguments=e.typeArguments;return t}function getTypeReferenceArity(t){return e.length(t.target.typeParameters)}function getTypeFromClassOrInterfaceReference(t,r,n){var i=getDeclaredTypeOfSymbol(getMergedSymbol(r));var a=i.localTypeParameters;if(a){var o=e.length(t.typeArguments);var s=getMinTypeArgumentCount(a);var c=e.isInJSFile(t);var u=!F&&c;if(!u&&(o<s||o>a.length)){var l=c&&e.isExpressionWithTypeArguments(t)&&!e.isJSDocAugmentsTag(t.parent);var f=s===a.length?l?e.Diagnostics.Expected_0_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_1_type_argument_s:l?e.Diagnostics.Expected_0_1_type_arguments_provide_these_with_an_extends_tag:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments;var d=typeToString(i,undefined,2);error(t,f,d,s,a.length);if(!c){return ee}}var p=e.concatenate(i.outerTypeParameters,fillMissingTypeArguments(n,a,s,c));return createTypeReference(i,p)}return checkNoTypeArguments(t,r)?i:ee}function getTypeAliasInstantiation(t,r){var n=getDeclaredTypeOfSymbol(t);var i=getSymbolLinks(t);var a=i.typeParameters;var o=getTypeListId(r);var s=i.instantiations.get(o);if(!s){i.instantiations.set(o,s=instantiateType(n,createTypeMapper(a,fillMissingTypeArguments(r,a,getMinTypeArgumentCount(a),e.isInJSFile(t.valueDeclaration)))))}return s}function getTypeFromTypeAliasReference(t,r,n){var i=getDeclaredTypeOfSymbol(r);var a=getSymbolLinks(r).typeParameters;if(a){var o=e.length(t.typeArguments);var s=getMinTypeArgumentCount(a);if(o<s||o>a.length){error(t,s===a.length?e.Diagnostics.Generic_type_0_requires_1_type_argument_s:e.Diagnostics.Generic_type_0_requires_between_1_and_2_type_arguments,symbolToString(r),s,a.length);return ee}return getTypeAliasInstantiation(r,n)}return checkNoTypeArguments(t,r)?i:ee}function getTypeReferenceName(t){switch(t.kind){case 164:return t.typeName;case 211:var r=t.expression;if(e.isEntityNameExpression(r)){return r}}return undefined}function resolveTypeReferenceName(e,t){if(!e){return Q}return resolveEntityName(e,t)||Q}function getTypeReferenceType(t,r){var n=typeArgumentsFromTypeReferenceNode(t);if(r===Q){return ee}var i=getTypeReferenceTypeWorker(t,r,n);if(i){return i}var a=e.isInJSFile(t)&&r.valueDeclaration&&e.getJSDocEnumTag(r.valueDeclaration);if(a){var o=getNodeLinks(a);if(!pushTypeResolution(a,5)){return ee}var s=a.typeExpression?getTypeFromTypeNode(a.typeExpression):ee;if(!popTypeResolution()){s=ee;error(t,e.Diagnostics.Enum_type_0_circularly_references_itself,symbolToString(r))}return o.resolvedEnumType=s}var c=tryGetDeclaredTypeOfSymbol(r);if(c){return checkNoTypeArguments(t,r)?c.flags&262144?getConstrainedTypeVariable(c,t):getRegularTypeOfLiteralType(c):ee}if(!(r.flags&67220415&&isJSDocTypeReference(t))){return ee}var u=getJSDocTypeReference(t,r,n);if(u){return u}resolveTypeReferenceName(getTypeReferenceName(t),67897832);return getTypeOfSymbol(r)}function getJSDocTypeReference(t,r,n){if(!pushTypeResolution(r,6)){return ee}var i=getAssignedClassType(r);var a=getTypeOfSymbol(r);var o=a.symbol&&a.symbol!==r&&!isInferredClassType(a)&&getTypeReferenceTypeWorker(t,a.symbol,n);if(!popTypeResolution()){getSymbolLinks(r).resolvedJSDocType=ee;error(t,e.Diagnostics.JSDoc_type_0_circularly_references_itself,symbolToString(r));return ee}if(o||i){var s=o&&i?getIntersectionType([i,o]):o||i;return getSymbolLinks(r).resolvedJSDocType=s}}function getTypeReferenceTypeWorker(t,r,n){if(r.flags&(32|64)){if(r.valueDeclaration&&e.isBinaryExpression(r.valueDeclaration.parent)){var i=getJSDocTypeReference(t,r,n);if(i){return i}}return getTypeFromClassOrInterfaceReference(t,r,n)}if(r.flags&524288){return getTypeFromTypeAliasReference(t,r,n)}if(r.flags&16&&isJSDocTypeReference(t)&&(r.members||e.getJSDocClassTag(r.valueDeclaration))){return getInferredClassType(r)}}function getSubstitutionType(e,t){var r=createType(33554432);r.typeVariable=e;r.substitute=t;return r}function isUnaryTupleTypeNode(e){return e.kind===170&&e.elementTypes.length===1}function getImpliedConstraint(e,t,r){return isUnaryTupleTypeNode(t)&&isUnaryTupleTypeNode(r)?getImpliedConstraint(e,t.elementTypes[0],r.elementTypes[0]):getActualTypeVariable(getTypeFromTypeNode(t))===e?getTypeFromTypeNode(r):undefined}function getConstrainedTypeVariable(t,r){var n;while(r&&!e.isStatement(r)&&r.kind!==291){var i=r.parent;if(i.kind===175&&r===i.trueType){var a=getImpliedConstraint(t,i.checkType,i.extendsType);if(a){n=e.append(n,a)}}r=i}return n?getSubstitutionType(t,getIntersectionType(e.append(n,t))):t}function isJSDocTypeReference(e){return!!(e.flags&2097152)&&(e.kind===164||e.kind===183)}function checkNoTypeArguments(t,r){if(t.typeArguments){error(t,e.Diagnostics.Type_0_is_not_generic,r?symbolToString(r):t.typeName?e.declarationNameToString(t.typeName):"(anonymous)");return false}return true}function getIntendedTypeFromJSDocTypeReference(t){if(e.isIdentifier(t.typeName)){var r=t.typeArguments;switch(t.typeName.escapedText){case"String":checkNoTypeArguments(t);return oe;case"Number":checkNoTypeArguments(t);return se;case"Boolean":checkNoTypeArguments(t);return pe;case"Void":checkNoTypeArguments(t);return _e;case"Undefined":checkNoTypeArguments(t);return re;case"Null":checkNoTypeArguments(t);return ie;case"Function":case"function":checkNoTypeArguments(t);return Ge;case"Array":case"array":return!r||!r.length?nt:undefined;case"Promise":case"promise":return!r||!r.length?createPromiseType(X):undefined;case"Object":if(r&&r.length===2){if(e.isJSDocIndexSignature(t)){var n=getTypeFromTypeNode(r[0]);var i=getTypeFromTypeNode(r[1]);var a=createIndexInfo(i,false);return createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,n===oe?a:undefined,n===se?a:undefined)}return X}checkNoTypeArguments(t);return X}}}function getTypeFromJSDocNullableTypeNode(e){var t=getTypeFromTypeNode(e.type);return k?getNullableType(t,65536):t}function getTypeFromTypeReference(e){var t=getNodeLinks(e);if(!t.resolvedType){var r=void 0;var n=void 0;var i=67897832;if(isJSDocTypeReference(e)){n=getIntendedTypeFromJSDocTypeReference(e);i|=67220415}if(!n){r=resolveTypeReferenceName(getTypeReferenceName(e),i);n=getTypeReferenceType(e,r)}t.resolvedSymbol=r;t.resolvedType=n}return t.resolvedType}function typeArgumentsFromTypeReferenceNode(t){return e.map(t.typeArguments,getTypeFromTypeNode)}function getTypeFromTypeQueryNode(e){var t=getNodeLinks(e);if(!t.resolvedType){t.resolvedType=getRegularTypeOfLiteralType(getWidenedType(checkExpression(e.exprName)))}return t.resolvedType}function getTypeOfGlobalSymbol(t,r){function getTypeDeclaration(e){var t=e.declarations;for(var r=0,n=t;r<n.length;r++){var i=n[r];switch(i.kind){case 240:case 241:case 243:return i}}}if(!t){return r?ke:xe}var n=getDeclaredTypeOfSymbol(t);if(!(n.flags&524288)){error(getTypeDeclaration(t),e.Diagnostics.Global_type_0_must_be_a_class_or_interface_type,e.symbolName(t));return r?ke:xe}if(e.length(n.typeParameters)!==r){error(getTypeDeclaration(t),e.Diagnostics.Global_type_0_must_have_1_type_parameter_s,e.symbolName(t),r);return r?ke:xe}return n}function getGlobalValueSymbol(t,r){return getGlobalSymbol(t,67220415,r?e.Diagnostics.Cannot_find_global_value_0:undefined)}function getGlobalTypeSymbol(t,r){return getGlobalSymbol(t,67897832,r?e.Diagnostics.Cannot_find_global_type_0:undefined)}function getGlobalSymbol(e,t,r){return resolveName(undefined,e,t,r,e,false)}function getGlobalType(e,t,r){var n=getGlobalTypeSymbol(e,r);return n||r?getTypeOfGlobalSymbol(n,t):undefined}function getGlobalTypedPropertyDescriptorType(){return ut||(ut=getGlobalType("TypedPropertyDescriptor",1,true))||ke}function getGlobalTemplateStringsArrayType(){return Tt||(Tt=getGlobalType("TemplateStringsArray",0,true))||xe}function getGlobalImportMetaType(){return St||(St=getGlobalType("ImportMeta",0,true))||xe}function getGlobalESSymbolConstructorSymbol(e){return st||(st=getGlobalValueSymbol("Symbol",e))}function getGlobalESSymbolType(e){return ct||(ct=getGlobalType("Symbol",0,e))||xe}function getGlobalPromiseType(e){return lt||(lt=getGlobalType("Promise",1,e))||ke}function getGlobalPromiseLikeType(e){return ft||(ft=getGlobalType("PromiseLike",1,e))||ke}function getGlobalPromiseConstructorSymbol(e){return dt||(dt=getGlobalValueSymbol("Promise",e))}function getGlobalPromiseConstructorLikeType(e){return pt||(pt=getGlobalType("PromiseConstructorLike",0,e))||xe}function getGlobalAsyncIterableType(e){return yt||(yt=getGlobalType("AsyncIterable",1,e))||ke}function getGlobalAsyncIteratorType(e){return ht||(ht=getGlobalType("AsyncIterator",1,e))||ke}function getGlobalAsyncIterableIteratorType(e){return vt||(vt=getGlobalType("AsyncIterableIterator",1,e))||ke}function getGlobalIterableType(e){return gt||(gt=getGlobalType("Iterable",1,e))||ke}function getGlobalIteratorType(e){return _t||(_t=getGlobalType("Iterator",1,e))||ke}function getGlobalIterableIteratorType(e){return mt||(mt=getGlobalType("IterableIterator",1,e))||ke}function getGlobalTypeOrUndefined(e,t){if(t===void 0){t=0}var r=getGlobalSymbol(e,67897832,undefined);return r&&getTypeOfGlobalSymbol(r,t)}function getGlobalExtractSymbol(){return bt||(bt=getGlobalSymbol("Extract",524288,e.Diagnostics.Cannot_find_global_type_0))}function getGlobalExcludeSymbol(){return xt||(xt=getGlobalSymbol("Exclude",524288,e.Diagnostics.Cannot_find_global_type_0))}function getGlobalPickSymbol(){return Ct||(Ct=getGlobalSymbol("Pick",524288,e.Diagnostics.Cannot_find_global_type_0))}function getGlobalBigIntType(e){return Et||(Et=getGlobalType("BigInt",0,e))||xe}function createTypeFromGenericGlobalType(e,t){return e!==ke?createTypeReference(e,t):xe}function createTypedPropertyDescriptorType(e){return createTypeFromGenericGlobalType(getGlobalTypedPropertyDescriptorType(),[e])}function createAsyncIterableType(e){return createTypeFromGenericGlobalType(getGlobalAsyncIterableType(true),[e])}function createAsyncIterableIteratorType(e){return createTypeFromGenericGlobalType(getGlobalAsyncIterableIteratorType(true),[e])}function createIterableType(e){return createTypeFromGenericGlobalType(getGlobalIterableType(true),[e])}function createIterableIteratorType(e){return createTypeFromGenericGlobalType(getGlobalIterableIteratorType(true),[e])}function createArrayType(e){return createTypeFromGenericGlobalType($e,[e])}function createReadonlyArrayType(e){return createTypeFromGenericGlobalType(Xe,[e])}function getTypeFromArrayTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){t.resolvedType=createArrayType(getTypeFromTypeNode(e.elementType))}return t.resolvedType}function createTupleTypeOfArity(t,r,n,i){var a;var o=[];var s=n?t-1:t;if(t){a=new Array(t);for(var c=0;c<t;c++){var u=a[c]=createType(262144);if(c<s){var l=createSymbol(4|(c>=r?16777216:0),""+c);l.type=u;o.push(l)}}}var f=[];for(var c=r;c<=s;c++)f.push(getLiteralType(c));var d=createSymbol(4,"length");d.type=n?se:getUnionType(f);o.push(d);var p=createObjectType(8|4);p.typeParameters=a;p.outerTypeParameters=undefined;p.localTypeParameters=a;p.instantiations=e.createMap();p.instantiations.set(getTypeListId(p.typeParameters),p);p.target=p;p.typeArguments=p.typeParameters;p.thisType=createType(262144);p.thisType.isThisType=true;p.thisType.constraint=p;p.declaredProperties=o;p.declaredCallSignatures=e.emptyArray;p.declaredConstructSignatures=e.emptyArray;p.declaredStringIndexInfo=undefined;p.declaredNumberIndexInfo=undefined;p.minLength=r;p.hasRestElement=n;p.associatedNames=i;return p}function getTupleTypeOfArity(e,t,r,n){var i=e+(r?"+":",")+t+(n&&n.length?","+n.join(","):"");var a=U.get(i);if(!a){U.set(i,a=createTupleTypeOfArity(e,t,r,n))}return a}function createTupleType(e,t,r,n){if(t===void 0){t=e.length}if(r===void 0){r=false}var i=e.length;if(i===1&&r){return createArrayType(e[0])}var a=getTupleTypeOfArity(i,t,i>0&&r,n);return e.length?createTypeReference(a,e):a}function getTypeFromTupleTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){var n=e.lastOrUndefined(t.elementTypes);var i=n&&n.kind===172?n:undefined;var a=e.findLastIndex(t.elementTypes,function(e){return e.kind!==171&&e!==i})+1;var o=e.map(t.elementTypes,function(e){var t=getTypeFromTypeNode(e);return e===i&&getIndexTypeOfType(t,1)||t});r.resolvedType=createTupleType(o,a,!!i)}return r.resolvedType}function sliceTupleType(t,r){var n=t.target;if(n.hasRestElement){r=Math.min(r,getTypeReferenceArity(t)-1)}return createTupleType((t.typeArguments||e.emptyArray).slice(r),Math.max(0,n.minLength-r),n.hasRestElement,n.associatedNames&&n.associatedNames.slice(r))}function getTypeFromOptionalTypeNode(e){var t=getTypeFromTypeNode(e.type);return k?getOptionalType(t):t}function getTypeId(e){return e.id}function containsType(t,r){return e.binarySearch(t,r,getTypeId,e.compareValues)>=0}function insertType(t,r){var n=e.binarySearch(t,r,getTypeId,e.compareValues);if(n<0){t.splice(~n,0,r);return true}return false}function isEmptyIntersectionType(e){var t=0;for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(i.flags&109440&&t&109440){return true}t|=i.flags;if(t&98304&&t&(524288|67108864)||t&67108864&&t&(67238908&~67108864)||t&132&&t&(67238908&~132)||t&296&&t&(67238908&~296)||t&2112&&t&(67238908&~2112)||t&12288&&t&(67238908&~12288)||t&49152&&t&(67238908&~49152)){return true}}return false}function addTypeToUnion(t,r,n){var i=n.flags;if(i&1048576){return addTypesToUnion(t,r,n.types)}if(!(i&131072||i&2097152&&isEmptyIntersectionType(n))){r|=i&~939524096;if(n===Z)r|=268435456;if(!k&&i&98304){if(!(i&134217728))r|=134217728}else{var a=t.length;var o=a&&n.id>t[a-1].id?~a:e.binarySearch(t,n,getTypeId,e.compareValues);if(o<0){t.splice(~o,0,n)}}}return r}function addTypesToUnion(e,t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=addTypeToUnion(e,t,a)}return t}function isSubtypeOfAny(t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];if(t!==a&&isTypeSubtypeOf(t,a)&&(!(e.getObjectFlags(getTargetType(t))&1)||!(e.getObjectFlags(getTargetType(a))&1)||isTypeDerivedFrom(t,a))){return true}}return false}function isSetOfLiteralsFromSameEnum(e){var t=e[0];if(t.flags&1024){var r=getParentOfSymbol(t.symbol);for(var n=1;n<e.length;n++){var i=e[n];if(!(i.flags&1024)||r!==getParentOfSymbol(i.symbol)){return false}}return true}return false}function removeSubtypes(t){if(t.length===0||isSetOfLiteralsFromSameEnum(t)){return}var r=t.length;while(r>0){r--;if(isSubtypeOfAny(t[r],t)){e.orderedRemoveItemAt(t,r)}}}function removeRedundantLiteralTypes(t,r){var n=t.length;while(n>0){n--;var i=t[n];var a=i.flags&128&&r&4||i.flags&256&&r&8||i.flags&2048&&r&64||i.flags&8192&&r&4096||isFreshLiteralType(i)&&containsType(t,i.regularType);if(a){e.orderedRemoveItemAt(t,n)}}}function getUnionType(e,t,r,n){if(t===void 0){t=1}if(e.length===0){return me}if(e.length===1){return e[0]}var i=[];var a=addTypesToUnion(i,0,e);if(t!==0){if(a&3){return a&1?a&268435456?Z:X:te}switch(t){case 1:if(a&8576|512){removeRedundantLiteralTypes(i,a)}break;case 2:removeSubtypes(i);break}if(i.length===0){return a&65536?a&134217728?ie:ae:a&32768?a&134217728?re:ne:me}}return getUnionTypeFromSortedList(i,!(a&66994211),r,n)}function getUnionTypePredicate(t){var r;var n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i];var s=getTypePredicateOfSignature(o);if(!s){continue}if(r){if(!typePredicateKindsMatch(r,s)){return undefined}}else{r=s}n.push(s.type)}if(!r){return undefined}var c=getUnionType(n);return e.isIdentifierTypePredicate(r)?createIdentifierTypePredicate(r.parameterName,r.parameterIndex,c):createThisTypePredicate(c)}function typePredicateKindsMatch(t,r){return e.isIdentifierTypePredicate(t)?e.isIdentifierTypePredicate(r)&&t.parameterIndex===r.parameterIndex:!e.isIdentifierTypePredicate(r)}function getUnionTypeFromSortedList(e,t,r,n){if(e.length===0){return me}if(e.length===1){return e[0]}var i=getTypeListId(e);var a=z.get(i);if(!a){var o=getPropagatingFlagsOfTypes(e,98304);a=createType(1048576|o);z.set(i,a);a.types=e;a.primitiveTypesOnly=t;a.aliasSymbol=r;a.aliasTypeArguments=n}return a}function getTypeFromUnionTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){var n=getAliasSymbolForTypeNode(t);r.resolvedType=getUnionType(e.map(t.types,getTypeFromTypeNode),1,n,getTypeArgumentsForAliasSymbol(n))}return r.resolvedType}function addTypeToIntersection(t,r,n){var i=n.flags;if(i&2097152){return addTypesToIntersection(t,r,n.types)}if(isEmptyAnonymousObjectType(n)){if(!(r&536870912)){r|=536870912;t.push(n)}}else{r|=i&~939524096;if(i&3){if(n===Z)r|=268435456}else if((k||!(i&98304))&&!e.contains(t,n)){t.push(n)}}return r}function addTypesToIntersection(e,t,r){for(var n=0,i=r;n<i.length;n++){var a=i[n];t=addTypeToIntersection(e,t,getRegularTypeOfLiteralType(a))}return t}function removeRedundantPrimitiveTypes(t,r){var n=t.length;while(n>0){n--;var i=t[n];var a=i.flags&4&&r&128||i.flags&8&&r&256||i.flags&64&&r&2048||i.flags&4096&&r&8192;if(a){e.orderedRemoveItemAt(t,n)}}}function eachUnionContains(e,t){for(var r=0,n=e;r<n.length;r++){var i=n[r];if(!containsType(i.types,t)){var a=t.flags&128?oe:t.flags&256?se:t.flags&2048?ce:t.flags&8192?ge:undefined;if(!a||!containsType(i.types,a)){return false}}}return true}function intersectUnionsOfPrimitiveTypes(t){var r;var n=e.findIndex(t,function(e){return!!(e.flags&1048576)&&e.primitiveTypesOnly});if(n<0){return false}var i=n+1;while(i<t.length){var a=t[i];if(a.flags&1048576&&a.primitiveTypesOnly){(r||(r=[t[n]])).push(a);e.orderedRemoveItemAt(t,i)}else{i++}}if(!r){return false}var o=[];var s=[];for(var c=0,u=r;c<u.length;c++){var l=u[c];for(var f=0,d=l.types;f<d.length;f++){var a=d[f];if(insertType(o,a)){if(eachUnionContains(r,a)){insertType(s,a)}}}}t[n]=getUnionTypeFromSortedList(s,true);return true}function getIntersectionType(t,r,n){var i=[];var a=addTypesToIntersection(i,0,t);if(a&131072){return me}if(a&1){return a&268435456?Z:X}if(!k&&a&98304){return a&32768?re:ie}if(a&4&&a&128||a&8&&a&256||a&64&&a&2048||a&4096&&a&8192){removeRedundantPrimitiveTypes(i,a)}if(a&536870912&&a&524288){e.orderedRemoveItemAt(i,e.findIndex(i,isEmptyAnonymousObjectType))}if(i.length===0){return te}if(i.length===1){return i[0]}if(a&1048576){if(intersectUnionsOfPrimitiveTypes(i)){return getIntersectionType(i,r,n)}var o=e.findIndex(i,function(e){return(e.flags&1048576)!==0});var s=i[o];return getUnionType(e.map(s.types,function(t){return getIntersectionType(e.replaceElement(i,o,t))}),1,r,n)}var c=getTypeListId(i);var u=V.get(c);if(!u){var l=getPropagatingFlagsOfTypes(i,98304);u=createType(2097152|l);V.set(c,u);u.types=i;u.aliasSymbol=r;u.aliasTypeArguments=n}return u}function getTypeFromIntersectionTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){var n=getAliasSymbolForTypeNode(t);r.resolvedType=getIntersectionType(e.map(t.types,getTypeFromTypeNode),n,getTypeArgumentsForAliasSymbol(n))}return r.resolvedType}function createIndexType(e,t){var r=createType(4194304);r.type=e;r.stringsOnly=t;return r}function getIndexTypeForGenericType(e,t){return t?e.resolvedStringIndexType||(e.resolvedStringIndexType=createIndexType(e,true)):e.resolvedIndexType||(e.resolvedIndexType=createIndexType(e,false))}function getLiteralTypeFromPropertyName(t){return e.isIdentifier(t)?getLiteralType(e.unescapeLeadingUnderscores(t.escapedText)):getRegularTypeOfLiteralType(e.isComputedPropertyName(t)?checkComputedPropertyName(t):checkExpression(t))}function getBigIntLiteralType(t){return getLiteralType({negative:false,base10Value:e.parsePseudoBigInt(t.text)})}function getLiteralTypeFromProperty(t,r){if(!(e.getDeclarationModifierFlagsFromSymbol(t)&24)){var n=getLateBoundSymbol(t).nameType;if(!n&&!e.isKnownSymbol(t)){if(t.escapedName==="default"){n=getLiteralType("default")}else{var i=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);n=i&&getLiteralTypeFromPropertyName(i)||getLiteralType(e.symbolName(t))}}if(n&&n.flags&r){return n}}return me}function getLiteralTypeFromProperties(t,r){return getUnionType(e.map(getPropertiesOfType(t),function(e){return getLiteralTypeFromProperty(e,r)}))}function getNonEnumNumberIndexInfo(e){var t=getIndexInfoOfType(e,1);return t!==Je?t:undefined}function getIndexType(t,r){if(r===void 0){r=I}return t.flags&1048576?getIntersectionType(e.map(t.types,function(e){return getIndexType(e,r)})):t.flags&2097152?getUnionType(e.map(t.types,function(e){return getIndexType(e,r)})):maybeTypeOfKind(t,58982400)?getIndexTypeForGenericType(t,r):e.getObjectFlags(t)&32?getConstraintTypeFromMappedType(t):t===Z?Z:t.flags&1?Se:r?getIndexInfoOfType(t,0)?oe:getLiteralTypeFromProperties(t,128):getIndexInfoOfType(t,0)?getUnionType([oe,se,getLiteralTypeFromProperties(t,8192)]):getNonEnumNumberIndexInfo(t)?getUnionType([se,getLiteralTypeFromProperties(t,128|8192)]):getLiteralTypeFromProperties(t,8576)}function getExtractStringType(e){if(I){return e}var t=getGlobalExtractSymbol();return t?getTypeAliasInstantiation(t,[e,oe]):oe}function getIndexTypeOrString(e){var t=getExtractStringType(getIndexType(e));return t.flags&131072?oe:t}function getTypeFromTypeOperatorNode(t){var r=getNodeLinks(t);if(!r.resolvedType){switch(t.operator){case 129:r.resolvedType=getIndexType(getTypeFromTypeNode(t.type));break;case 142:r.resolvedType=t.type.kind===139?getESSymbolLikeTypeForNode(e.walkUpParenthesizedTypes(t.parent)):ee;break}}return r.resolvedType}function createIndexedAccessType(e,t){var r=createType(8388608);r.objectType=e;r.indexType=t;return r}function isJSLiteralType(t){if(F){return false}if(e.getObjectFlags(t)&16384){return true}if(t.flags&1048576){return e.every(t.types,isJSLiteralType)}if(t.flags&2097152){return e.some(t.types,isJSLiteralType)}if(t.flags&63176704){return isJSLiteralType(getResolvedBaseConstraint(t))}return false}function getPropertyTypeForIndexType(t,r,n,i,a){var o=n&&n.kind===190?n:undefined;var s=isTypeUsableAsLateBoundName(r)?getLateBoundNameFromType(r):o&&checkThatExpressionIsProperSymbolReference(o.argumentExpression,r,false)?e.getPropertyNameForKnownSymbolName(e.idText(o.argumentExpression.name)):n&&e.isPropertyName(n)?e.getPropertyNameForPropertyNameNode(n):undefined;if(s!==undefined){var c=getPropertyOfType(t,s);if(c){if(o){markPropertyAsReferenced(c,o,o.expression.kind===100);if(e.isAssignmentTarget(o)&&(isReferenceToReadonlyEntity(o,c)||isReferenceThroughNamespaceImport(o))){error(o.argumentExpression,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,symbolToString(c));return a}if(i){getNodeLinks(n).resolvedSymbol=c}}var u=getTypeOfSymbol(c);return o&&e.getAssignmentTargetKind(o)!==1?getFlowTypeOfReference(o,u):u}if(everyType(t,isTupleType)&&isNumericLiteralName(s)&&+s>=0){if(n&&everyType(t,function(e){return!e.target.hasRestElement})){var l=getIndexNodeForAccessExpression(n);error(l,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.unescapeLeadingUnderscores(s),typeToString(t))}return mapType(t,function(e){return getRestTypeOfTupleType(e)||re})}}if(!(r.flags&98304)&&isTypeAssignableToKind(r,132|296|12288)){if(t.flags&(1|131072)){return t}var f=isTypeAssignableToKind(r,296)&&getIndexInfoOfType(t,1)||getIndexInfoOfType(t,0)||undefined;if(f){if(n&&!isTypeAssignableToKind(r,4|8)){var l=getIndexNodeForAccessExpression(n);error(l,e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,typeToString(r))}else if(o&&f.isReadonly&&(e.isAssignmentTarget(o)||e.isDeleteTarget(o))){error(o,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,typeToString(t))}return f.type}if(r.flags&131072){return me}if(isJSLiteralType(t)){return X}if(o&&!isConstEnumObjectType(t)){if(F&&!x.suppressImplicitAnyIndexErrors){if(s!==undefined&&typeHasStaticProperty(s,t)){error(o,e.Diagnostics.Property_0_is_a_static_member_of_type_1,s,typeToString(t))}else if(getIndexTypeOfType(t,1)){error(o.argumentExpression,e.Diagnostics.Element_implicitly_has_an_any_type_because_index_expression_is_not_of_type_number)}else{var d=void 0;if(s!==undefined&&(d=getSuggestionForNonexistentProperty(s,t))){if(d!==undefined){error(o.argumentExpression,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,s,typeToString(t),d)}}else{error(o,e.Diagnostics.Element_implicitly_has_an_any_type_because_type_0_has_no_index_signature,typeToString(t))}}}return a}}if(isJSLiteralType(t)){return X}if(n){var l=getIndexNodeForAccessExpression(n);if(r.flags&(128|256)){error(l,e.Diagnostics.Property_0_does_not_exist_on_type_1,""+r.value,typeToString(t))}else if(r.flags&(4|8)){error(l,e.Diagnostics.Type_0_has_no_matching_index_signature_for_type_1,typeToString(t),typeToString(r))}else{error(l,e.Diagnostics.Type_0_cannot_be_used_as_an_index_type,typeToString(r))}}if(isTypeAny(r)){return r}return a}function getIndexNodeForAccessExpression(e){return e.kind===190?e.argumentExpression:e.kind===180?e.indexType:e.kind===149?e.expression:e}function isGenericObjectType(e){return maybeTypeOfKind(e,58982400|134217728)}function isGenericIndexType(e){return maybeTypeOfKind(e,58982400|4194304)}function getSimplifiedType(e){return e.flags&8388608?getSimplifiedIndexedAccessType(e):e}function distributeIndexOverObjectType(t,r){if(t.flags&1048576){return mapType(t,function(e){return getSimplifiedType(getIndexedAccessType(e,r))})}if(t.flags&2097152){return getIntersectionType(e.map(t.types,function(e){return getSimplifiedType(getIndexedAccessType(e,r))}))}}function getSimplifiedIndexedAccessType(e){if(e.simplified){return e.simplified===Oe?e:e.simplified}e.simplified=Oe;var t=getSimplifiedType(e.objectType);var r=getSimplifiedType(e.indexType);if(r.flags&1048576){return e.simplified=mapType(r,function(e){return getSimplifiedType(getIndexedAccessType(t,e))})}if(!(r.flags&63176704)){var n=distributeIndexOverObjectType(t,r);if(n){return e.simplified=n}}if(isGenericMappedType(t)){return e.simplified=substituteIndexedMappedType(t,e)}if(t.flags&262144){var i=getConstraintOfTypeParameter(t);if(i&&isGenericMappedType(i)){return e.simplified=substituteIndexedMappedType(i,e)}}return e.simplified=e}function substituteIndexedMappedType(e,t){var r=createTypeMapper([getTypeParameterFromMappedType(e)],[t.indexType]);var n=combineTypeMappers(e.mapper,r);return instantiateType(getTemplateTypeFromMappedType(e),n)}function getIndexedAccessType(e,t,r,n){if(n===void 0){n=r?ee:te}if(e===Z||t===Z){return Z}if(isGenericIndexType(t)||!(r&&r.kind!==180)&&isGenericObjectType(e)){if(e.flags&3){return e}var i=e.id+","+t.id;var a=q.get(i);if(!a){q.set(i,a=createIndexedAccessType(e,t))}return a}var o=getApparentType(e);if(t.flags&1048576&&!(t.flags&16)){var s=[];var c=false;for(var u=0,l=t.types;u<l.length;u++){var f=l[u];var d=getPropertyTypeForIndexType(o,f,r,false,n);if(d===n){if(!r){return n}else{c=true}}s.push(d)}if(c){return n}return getUnionType(s)}return getPropertyTypeForIndexType(o,t,r,true,n)}function getTypeFromIndexedAccessTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){var r=getTypeFromTypeNode(e.objectType);var n=getTypeFromTypeNode(e.indexType);var i=getIndexedAccessType(r,n,e);t.resolvedType=i.flags&8388608&&i.objectType===r&&i.indexType===n?getConstrainedTypeVariable(i,e):i}return t.resolvedType}function getTypeFromMappedTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){var r=createObjectType(32,e.symbol);r.declaration=e;r.aliasSymbol=getAliasSymbolForTypeNode(e);r.aliasTypeArguments=getTypeArgumentsForAliasSymbol(r.aliasSymbol);t.resolvedType=r;getConstraintTypeFromMappedType(r)}return t.resolvedType}function getActualTypeVariable(e){return e.flags&33554432?e.typeVariable:e}function getConditionalType(e,t){var r=instantiateType(e.checkType,t);var n=instantiateType(e.extendsType,t);if(r===Z||n===Z){return Z}var i=e.isDistributive&&maybeTypeOfKind(r,63176704);var a;if(e.inferTypeParameters){var o=createInferenceContext(e.inferTypeParameters,undefined,0);if(!i){inferTypes(o.inferences,r,n,32|64)}a=combineTypeMappers(t,o)}if(!i){if(n.flags&3){return instantiateType(e.trueType,t)}if(r.flags&1){return getUnionType([instantiateType(e.trueType,a||t),instantiateType(e.falseType,t)])}var s=a?instantiateType(e.extendsType,a):n;if(!isTypeAssignableTo(getWildcardInstantiation(r),getWildcardInstantiation(s))){return instantiateType(e.falseType,t)}if(checkTypeRelatedTo(r,s,cr,undefined)){return instantiateType(e.trueType,a||t)}}var c=getActualTypeVariable(r);var u=createType(16777216);u.root=e;u.checkType=c;u.extendsType=n;u.mapper=t;u.combinedMapper=a;u.aliasSymbol=e.aliasSymbol;u.aliasTypeArguments=instantiateTypes(e.aliasTypeArguments,t);return u}function getTrueTypeFromConditionalType(e){return e.resolvedTrueType||(e.resolvedTrueType=instantiateType(e.root.trueType,e.mapper))}function getFalseTypeFromConditionalType(e){return e.resolvedFalseType||(e.resolvedFalseType=instantiateType(e.root.falseType,e.mapper))}function getInferTypeParameters(t){var r;if(t.locals){t.locals.forEach(function(t){if(t.flags&262144){r=e.append(r,getDeclaredTypeOfSymbol(t))}})}return r}function isPossiblyReferencedInConditionalType(e,t){if(isTypeParameterPossiblyReferenced(e,t)){return true}while(t){if(t.kind===175){if(isTypeParameterPossiblyReferenced(e,t.extendsType)){return true}}t=t.parent}return false}function getTypeFromConditionalTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){var n=getTypeFromTypeNode(t.checkType);var i=getAliasSymbolForTypeNode(t);var a=getTypeArgumentsForAliasSymbol(i);var o=getOuterTypeParameters(t,true);var s=a?o:e.filter(o,function(e){return isPossiblyReferencedInConditionalType(e,t)});var c={node:t,checkType:n,extendsType:getTypeFromTypeNode(t.extendsType),trueType:getTypeFromTypeNode(t.trueType),falseType:getTypeFromTypeNode(t.falseType),isDistributive:!!(n.flags&262144),inferTypeParameters:getInferTypeParameters(t),outerTypeParameters:s,instantiations:undefined,aliasSymbol:i,aliasTypeArguments:a};r.resolvedType=getConditionalType(c,undefined);if(s){c.instantiations=e.createMap();c.instantiations.set(getTypeListId(s),r.resolvedType)}}return r.resolvedType}function getTypeFromInferTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){t.resolvedType=getDeclaredTypeOfTypeParameter(getSymbolOfNode(e.typeParameter))}return t.resolvedType}function getIdentifierChain(t){if(e.isIdentifier(t)){return[t]}else{return e.append(getIdentifierChain(t.left),t.right)}}function getTypeFromImportTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){if(t.isTypeOf&&t.typeArguments){error(t,e.Diagnostics.Type_arguments_cannot_be_used_here);r.resolvedSymbol=Q;return r.resolvedType=ee}if(!e.isLiteralImportTypeNode(t)){error(t.argument,e.Diagnostics.String_literal_expected);r.resolvedSymbol=Q;return r.resolvedType=ee}var n=t.isTypeOf?67220415:t.flags&2097152?67220415|67897832:67897832;var i=resolveExternalModuleName(t,t.argument.literal);if(!i){r.resolvedSymbol=Q;return r.resolvedType=ee}var a=resolveExternalModuleSymbol(i,false);if(!e.nodeIsMissing(t.qualifier)){var o=getIdentifierChain(t.qualifier);var s=a;var c=void 0;while(c=o.shift()){var u=o.length?1920:n;var l=getSymbol(getExportsOfSymbol(getMergedSymbol(resolveSymbol(s))),c.escapedText,u);if(!l){error(c,e.Diagnostics.Namespace_0_has_no_exported_member_1,getFullyQualifiedName(s),e.declarationNameToString(c));return r.resolvedType=ee}getNodeLinks(c).resolvedSymbol=l;getNodeLinks(c.parent).resolvedSymbol=l;s=l}resolveImportSymbolType(t,r,s,n)}else{if(a.flags&n){resolveImportSymbolType(t,r,a,n)}else{var f=n===67220415?e.Diagnostics.Module_0_does_not_refer_to_a_value_but_is_used_as_a_value_here:e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0;error(t,f,t.argument.literal.text);r.resolvedSymbol=Q;r.resolvedType=ee}}}return r.resolvedType}function resolveImportSymbolType(e,t,r,n){var i=resolveSymbol(r);t.resolvedSymbol=i;if(n===67220415){return t.resolvedType=getTypeOfSymbol(r)}else{return t.resolvedType=getTypeReferenceType(e,i)}}function getTypeFromTypeLiteralOrFunctionOrConstructorTypeNode(t){var r=getNodeLinks(t);if(!r.resolvedType){var n=getAliasSymbolForTypeNode(t);if(getMembersOfSymbol(t.symbol).size===0&&!n){r.resolvedType=De}else{var i=createObjectType(16,t.symbol);i.aliasSymbol=n;i.aliasTypeArguments=getTypeArgumentsForAliasSymbol(n);if(e.isJSDocTypeLiteral(t)&&t.isArrayType){i=createArrayType(i)}r.resolvedType=i}}return r.resolvedType}function getAliasSymbolForTypeNode(t){return e.isTypeAlias(t.parent)?getSymbolOfNode(t.parent):undefined}function getTypeArgumentsForAliasSymbol(e){return e?getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e):undefined}function isNonGenericObjectType(e){return!!(e.flags&524288)&&!isGenericMappedType(e)}function getSpreadType(t,r,n,i,a){if(t.flags&1||r.flags&1){return X}if(t.flags&2||r.flags&2){return te}if(t.flags&131072){return r}if(r.flags&131072){return t}if(t.flags&1048576){return mapType(t,function(e){return getSpreadType(e,r,n,i,a)})}if(r.flags&1048576){return mapType(r,function(e){return getSpreadType(t,e,n,i,a)})}if(r.flags&(528|296|2112|132|1056|67108864|4194304)){return t}if(isGenericObjectType(t)||isGenericObjectType(r)){if(isEmptyObjectType(t)){return r}if(t.flags&2097152){var o=t.types;var s=o[o.length-1];if(isNonGenericObjectType(s)&&isNonGenericObjectType(r)){return getIntersectionType(e.concatenate(o.slice(0,o.length-1),[getSpreadType(s,r,n,i,a)]))}}return getIntersectionType([t,r])}var c=e.createSymbolTable();var u=e.createUnderscoreEscapedMap();var l;var f;if(t===xe){l=getIndexInfoOfType(r,0);f=getIndexInfoOfType(r,1)}else{l=unionSpreadIndexInfos(getIndexInfoOfType(t,0),getIndexInfoOfType(r,0));f=unionSpreadIndexInfos(getIndexInfoOfType(t,1),getIndexInfoOfType(r,1))}for(var d=0,p=getPropertiesOfType(r);d<p.length;d++){var g=p[d];if(e.getDeclarationModifierFlagsFromSymbol(g)&(8|16)){u.set(g.escapedName,true)}else if(isSpreadableProperty(g)){c.set(g.escapedName,getSpreadSymbol(g))}}for(var _=0,m=getPropertiesOfType(t);_<m.length;_++){var y=m[_];if(u.has(y.escapedName)||!isSpreadableProperty(y)){continue}if(c.has(y.escapedName)){var g=c.get(y.escapedName);var h=getTypeOfSymbol(g);if(g.flags&16777216){var v=e.concatenate(y.declarations,g.declarations);var T=4|y.flags&16777216;var S=createSymbol(T,y.escapedName);S.type=getUnionType([getTypeOfSymbol(y),getTypeWithFacts(h,524288)]);S.leftSpread=y;S.rightSpread=g;S.declarations=v;S.nameType=y.nameType;c.set(y.escapedName,S)}}else{c.set(y.escapedName,getSpreadSymbol(y))}}var b=createAnonymousType(n,c,e.emptyArray,e.emptyArray,getNonReadonlyIndexSignature(l),getNonReadonlyIndexSignature(f));b.flags|=268435456|i;b.objectFlags|=128|1024|a;return b}function isSpreadableProperty(t){return!(t.flags&(8192|32768|65536))||!t.declarations.some(function(t){return e.isClassLike(t.parent)})}function getSpreadSymbol(e){var t=isReadonlySymbol(e);var r=e.flags&65536&&!(e.flags&32768);if(!t&&!r){return e}var n=4|e.flags&16777216;var i=createSymbol(n,e.escapedName);i.type=r?re:getTypeOfSymbol(e);i.declarations=e.declarations;i.nameType=e.nameType;i.syntheticOrigin=e;return i}function getNonReadonlyIndexSignature(e){if(e&&e.isReadonly){return createIndexInfo(e.type,false,e.declaration)}return e}function createLiteralType(e,t,r){var n=createType(e);n.symbol=r;n.value=t;return n}function getFreshTypeOfLiteralType(e){if(e.flags&2944){if(!e.freshType){var t=createLiteralType(e.flags,e.value,e.symbol);t.regularType=e;t.freshType=t;e.freshType=t}return e.freshType}return e}function getRegularTypeOfLiteralType(t){return t.flags&2944?t.regularType:t.flags&1048576?getUnionType(e.sameMap(t.types,getRegularTypeOfLiteralType)):t}function isFreshLiteralType(e){return!!(e.flags&2944)&&e.freshType===e}function getLiteralType(t,r,n){var i=typeof t==="number"?"#":typeof t==="string"?"@":"n";var a=(r?r:"")+i+(typeof t==="object"?e.pseudoBigIntToString(t):t);var o=K.get(a);if(!o){var s=(typeof t==="number"?256:typeof t==="string"?128:2048)|(r?1024:0);K.set(a,o=createLiteralType(s,t,n));o.regularType=o}return o}function getTypeFromLiteralTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){t.resolvedType=getRegularTypeOfLiteralType(checkExpression(e.literal))}return t.resolvedType}function createUniqueESSymbolType(e){var t=createType(8192);t.symbol=e;return t}function getESSymbolLikeTypeForNode(t){if(e.isValidESSymbolDeclaration(t)){var r=getSymbolOfNode(t);var n=getSymbolLinks(r);return n.uniqueESSymbolType||(n.uniqueESSymbolType=createUniqueESSymbolType(r))}return ge}function getThisType(t){var r=e.getThisContainer(t,false);var n=r&&r.parent;if(n&&(e.isClassLike(n)||n.kind===241)){if(!e.hasModifier(r,32)&&(r.kind!==157||e.isNodeDescendantOf(t,r.body))){return getDeclaredTypeOfClassOrInterface(getSymbolOfNode(n)).thisType}}error(t,e.Diagnostics.A_this_type_is_available_only_in_a_non_static_member_of_a_class_or_interface);return ee}function getTypeFromThisTypeNode(e){var t=getNodeLinks(e);if(!t.resolvedType){t.resolvedType=getThisType(e)}return t.resolvedType}function getTypeFromTypeNode(e){switch(e.kind){case 120:case 284:case 285:return X;case 143:return te;case 138:return oe;case 135:return se;case 146:return ce;case 123:return pe;case 139:return ge;case 106:return _e;case 141:return re;case 96:return ie;case 132:return me;case 136:return e.flags&65536?X:ve;case 178:case 100:return getTypeFromThisTypeNode(e);case 182:return getTypeFromLiteralTypeNode(e);case 164:return getTypeFromTypeReference(e);case 163:return pe;case 211:return getTypeFromTypeReference(e);case 167:return getTypeFromTypeQueryNode(e);case 169:return getTypeFromArrayTypeNode(e);case 170:return getTypeFromTupleTypeNode(e);case 171:return getTypeFromOptionalTypeNode(e);case 173:return getTypeFromUnionTypeNode(e);case 174:return getTypeFromIntersectionTypeNode(e);case 286:return getTypeFromJSDocNullableTypeNode(e);case 288:return addOptionality(getTypeFromTypeNode(e.type));case 177:case 172:case 287:case 283:return getTypeFromTypeNode(e.type);case 290:return getTypeFromJSDocVariadicType(e);case 165:case 166:case 168:case 292:case 289:case 293:return getTypeFromTypeLiteralOrFunctionOrConstructorTypeNode(e);case 179:return getTypeFromTypeOperatorNode(e);case 180:return getTypeFromIndexedAccessTypeNode(e);case 181:return getTypeFromMappedTypeNode(e);case 175:return getTypeFromConditionalTypeNode(e);case 176:return getTypeFromInferTypeNode(e);case 183:return getTypeFromImportTypeNode(e);case 72:case 148:var t=getSymbolAtLocation(e);return t?getDeclaredTypeOfSymbol(t):ee;default:return ee}}function instantiateList(e,t,r){if(e&&e.length){for(var n=0;n<e.length;n++){var i=e[n];var a=r(i,t);if(i!==a){var o=n===0?[]:e.slice(0,n);o.push(a);for(n++;n<e.length;n++){o.push(r(e[n],t))}return o}}}return e}function instantiateTypes(e,t){return instantiateList(e,t,instantiateType)}function instantiateSignatures(e,t){return instantiateList(e,t,instantiateSignature)}function makeUnaryTypeMapper(e,t){return function(r){return r===e?t:r}}function makeBinaryTypeMapper(e,t,r,n){return function(i){return i===e?t:i===r?n:i}}function makeArrayTypeMapper(e,t){return function(r){for(var n=0;n<e.length;n++){if(r===e[n]){return t?t[n]:X}}return r}}function createTypeMapper(t,r){e.Debug.assert(r===undefined||t.length===r.length);return t.length===1?makeUnaryTypeMapper(t[0],r?r[0]:X):t.length===2?makeBinaryTypeMapper(t[0],r?r[0]:X,t[1],r?r[1]:X):makeArrayTypeMapper(t,r)}function createTypeEraser(e){return createTypeMapper(e,undefined)}function createBackreferenceMapper(e,t){return function(r){return e.indexOf(r)>=t?xe:r}}function isInferenceContext(e){return!!e.typeParameters}function cloneTypeMapper(e){return e&&isInferenceContext(e)?createInferenceContext(e.typeParameters,e.signature,e.flags|1,e.compareTypes,e.inferences):e}function combineTypeMappers(e,t){if(!e)return t;if(!t)return e;return function(r){return instantiateType(e(r),t)}}function createReplacementMapper(e,t,r){return function(n){return n===e?t:r(n)}}function wildcardMapper(e){return e.flags&262144?Z:e}function cloneTypeParameter(e){var t=createType(262144);t.symbol=e.symbol;t.target=e;return t}function instantiateTypePredicate(t,r){if(e.isIdentifierTypePredicate(t)){return{kind:1,parameterName:t.parameterName,parameterIndex:t.parameterIndex,type:instantiateType(t.type,r)}}else{return{kind:0,type:instantiateType(t.type,r)}}}function instantiateSignature(t,r,n){var i;if(t.typeParameters&&!n){i=e.map(t.typeParameters,cloneTypeParameter);r=combineTypeMappers(createTypeMapper(t.typeParameters,i),r);for(var a=0,o=i;a<o.length;a++){var s=o[a];s.mapper=r}}var c=createSignature(t.declaration,i,t.thisParameter&&instantiateSymbol(t.thisParameter,r),instantiateList(t.parameters,r,instantiateSymbol),undefined,undefined,t.minArgumentCount,t.hasRestParameter,t.hasLiteralTypes);c.target=t;c.mapper=r;return c}function instantiateSymbol(t,r){var n=getSymbolLinks(t);if(n.type&&!maybeTypeOfKind(n.type,524288|63176704)){return t}if(e.getCheckFlags(t)&1){t=n.target;r=combineTypeMappers(n.mapper,r)}var i=createSymbol(t.flags,t.escapedName,1|e.getCheckFlags(t)&(1024|4096|8192));i.declarations=t.declarations;i.parent=t.parent;i.target=t;i.mapper=r;if(t.valueDeclaration){i.valueDeclaration=t.valueDeclaration}if(t.nameType){i.nameType=t.nameType}return i}function getAnonymousTypeInstantiation(t,r){var n=t.objectFlags&64?t.target:t;var i=n.symbol;var a=getSymbolLinks(i);var o=a.outerTypeParameters;if(!o){var s=i.declarations[0];if(e.isInJSFile(s)){var c=e.findAncestor(s,e.isJSDocParameterTag);if(c){var u=e.getParameterSymbolFromJSDoc(c);if(u){s=u.valueDeclaration}}}var l=getOuterTypeParameters(s,true);if(isJSConstructor(s)){var f=getTypeParametersFromDeclaration(s);l=e.addRange(l,f)}o=l||e.emptyArray;o=i.flags&2048&&!n.aliasTypeArguments?e.filter(o,function(e){return isTypeParameterPossiblyReferenced(e,s)}):o;a.outerTypeParameters=o;if(o.length){a.instantiations=e.createMap();a.instantiations.set(getTypeListId(o),n)}}if(o.length){var d=t.objectFlags&64?combineTypeMappers(t.mapper,r):r;var p=e.map(o,d);var g=getTypeListId(p);var _=a.instantiations.get(g);if(!_){var m=createTypeMapper(o,p);_=n.objectFlags&32?instantiateMappedType(n,m):instantiateAnonymousType(n,m);a.instantiations.set(g,_)}return _}return t}function maybeTypeParameterReference(e){return!(e.kind===148||e.parent.kind===164&&e.parent.typeArguments&&e===e.parent.typeName)}function isTypeParameterPossiblyReferenced(t,r){if(t.symbol&&t.symbol.declarations&&t.symbol.declarations.length===1){var n=t.symbol.declarations[0].parent;if(e.findAncestor(r,function(e){return e.kind===218?"quit":e===n})){return!!e.forEachChild(r,containsReference)}}return true;function containsReference(r){switch(r.kind){case 178:return!!t.isThisType;case 72:return!t.isThisType&&e.isPartOfTypeNode(r)&&maybeTypeParameterReference(r)&&getTypeFromTypeNode(r)===t;case 167:return true}return!!e.forEachChild(r,containsReference)}}function getHomomorphicTypeVariable(e){var t=getConstraintTypeFromMappedType(e);if(t.flags&4194304){var r=t.type;if(r.flags&262144){return r}}return undefined}function instantiateMappedType(e,t){var r=getHomomorphicTypeVariable(e);if(r){var n=instantiateType(r,t);if(r!==n){if(e.instantiating){return ee}e.instantiating=true;var i=mapType(n,function(n){if(n.flags&(3|58982400|524288|2097152)&&n!==Z){var i=createReplacementMapper(r,n,t);return isArrayType(n)?createArrayType(instantiateMappedTypeTemplate(e,se,true,i)):isReadonlyArrayType(n)?createReadonlyArrayType(instantiateMappedTypeTemplate(e,se,true,i)):isTupleType(n)?instantiateMappedTupleType(n,e,i):instantiateAnonymousType(e,i)}return n});e.instantiating=false;return i}}return instantiateAnonymousType(e,t)}function instantiateMappedTupleType(t,r,n){var i=t.target.minLength;var a=e.map(t.typeArguments||e.emptyArray,function(e,t){return instantiateMappedTypeTemplate(r,getLiteralType(""+t),t>=i,n)});var o=getMappedTypeModifiers(r);var s=o&4?0:o&8?getTypeReferenceArity(t)-(t.target.hasRestElement?1:0):i;return createTupleType(a,s,t.target.hasRestElement,t.target.associatedNames)}function instantiateMappedTypeTemplate(e,t,r,n){var i=combineTypeMappers(n,createTypeMapper([getTypeParameterFromMappedType(e)],[t]));var a=instantiateType(getTemplateTypeFromMappedType(e.target||e),i);var o=getMappedTypeModifiers(e);return k&&o&4&&!isTypeAssignableTo(re,a)?getOptionalType(a):k&&o&8&&r?getTypeWithFacts(a,524288):a}function instantiateAnonymousType(e,t){var r=createObjectType(e.objectFlags|64,e.symbol);if(e.objectFlags&32){r.declaration=e.declaration;var n=getTypeParameterFromMappedType(e);var i=cloneTypeParameter(n);r.typeParameter=i;t=combineTypeMappers(makeUnaryTypeMapper(n,i),t);i.mapper=t}r.target=e;r.mapper=t;r.aliasSymbol=e.aliasSymbol;r.aliasTypeArguments=instantiateTypes(e.aliasTypeArguments,t);return r}function getConditionalTypeInstantiation(t,r){var n=t.root;if(n.outerTypeParameters){var i=e.map(n.outerTypeParameters,r);var a=getTypeListId(i);var o=n.instantiations.get(a);if(!o){var s=createTypeMapper(n.outerTypeParameters,i);o=instantiateConditionalType(n,s);n.instantiations.set(a,o)}return o}return t}function instantiateConditionalType(e,t){if(e.isDistributive){var r=e.checkType;var n=t(r);if(r!==n&&n.flags&(1048576|131072)){return mapType(n,function(n){return getConditionalType(e,createReplacementMapper(r,n,t))})}}return getConditionalType(e,t)}function instantiateType(e,t){if(!e||!t||t===b){return e}if(v===50){return ee}v++;var r=instantiateTypeWorker(e,t);v--;return r}function instantiateTypeWorker(e,t){var r=e.flags;if(r&262144){return t(e)}if(r&524288){var n=e.objectFlags;if(n&16){return e.symbol&&e.symbol.flags&(16|8192|32|2048|4096)&&e.symbol.declarations?getAnonymousTypeInstantiation(e,t):e}if(n&32){return getAnonymousTypeInstantiation(e,t)}if(n&4){var i=e.typeArguments;var a=instantiateTypes(i,t);return a!==i?createTypeReference(e.target,a):e}return e}if(r&1048576&&!(r&131068)){var o=e.types;var s=instantiateTypes(o,t);return s!==o?getUnionType(s,1,e.aliasSymbol,instantiateTypes(e.aliasTypeArguments,t)):e}if(r&2097152){var o=e.types;var s=instantiateTypes(o,t);return s!==o?getIntersectionType(s,e.aliasSymbol,instantiateTypes(e.aliasTypeArguments,t)):e}if(r&4194304){return getIndexType(instantiateType(e.type,t))}if(r&8388608){return getIndexedAccessType(instantiateType(e.objectType,t),instantiateType(e.indexType,t))}if(r&16777216){return getConditionalTypeInstantiation(e,combineTypeMappers(e.mapper,t))}if(r&33554432){return instantiateType(e.typeVariable,t)}return e}function getWildcardInstantiation(e){return e.flags&(131068|3|131072)?e:e.wildcardInstantiation||(e.wildcardInstantiation=instantiateType(e,wildcardMapper))}function instantiateIndexInfo(e,t){return e&&createIndexInfo(instantiateType(e.type,t),e.isReadonly,e.declaration)}function isContextSensitive(t){e.Debug.assert(t.kind!==156||e.isObjectLiteralMethod(t));switch(t.kind){case 196:case 197:case 156:return isContextSensitiveFunctionLikeDeclaration(t);case 188:return e.some(t.properties,isContextSensitive);case 187:return e.some(t.elements,isContextSensitive);case 205:return isContextSensitive(t.whenTrue)||isContextSensitive(t.whenFalse);case 204:return t.operatorToken.kind===55&&(isContextSensitive(t.left)||isContextSensitive(t.right));case 275:return isContextSensitive(t.initializer);case 195:return isContextSensitive(t.expression);case 268:return e.some(t.properties,isContextSensitive)||e.isJsxOpeningElement(t.parent)&&e.some(t.parent.parent.children,isContextSensitive);case 267:{var r=t.initializer;return!!r&&isContextSensitive(r)}case 270:{var n=t.expression;return!!n&&isContextSensitive(n)}}return false}function isContextSensitiveFunctionLikeDeclaration(t){if(t.typeParameters){return false}if(e.some(t.parameters,function(t){return!e.getEffectiveTypeAnnotationNode(t)})){return true}if(t.kind!==197){var r=e.firstOrUndefined(t.parameters);if(!(r&&e.parameterIsThisKeyword(r))){return true}}return hasContextSensitiveReturnExpression(t)}function hasContextSensitiveReturnExpression(e){var t=e.body;return t.kind===218?false:isContextSensitive(t)}function isContextSensitiveFunctionOrObjectLiteralMethod(t){return(e.isInJSFile(t)&&e.isFunctionDeclaration(t)||isFunctionExpressionOrArrowFunction(t)||e.isObjectLiteralMethod(t))&&isContextSensitiveFunctionLikeDeclaration(t)}function getTypeWithoutSignatures(t){if(t.flags&524288){var r=resolveStructuredTypeMembers(t);if(r.constructSignatures.length||r.callSignatures.length){var n=createObjectType(16,t.symbol);n.members=r.members;n.properties=r.properties;n.callSignatures=e.emptyArray;n.constructSignatures=e.emptyArray;return n}}else if(t.flags&2097152){return getIntersectionType(e.map(t.types,getTypeWithoutSignatures))}return t}function isTypeIdenticalTo(e,t){return isTypeRelatedTo(e,t,lr)}function compareTypesIdentical(e,t){return isTypeRelatedTo(e,t,lr)?-1:0}function compareTypesAssignable(e,t){return isTypeRelatedTo(e,t,sr)?-1:0}function compareTypesSubtypeOf(e,t){return isTypeRelatedTo(e,t,or)?-1:0}function isTypeSubtypeOf(e,t){return isTypeRelatedTo(e,t,or)}function isTypeAssignableTo(e,t){return isTypeRelatedTo(e,t,sr)}function isTypeDerivedFrom(t,r){return t.flags&1048576?e.every(t.types,function(e){return isTypeDerivedFrom(e,r)}):r.flags&1048576?e.some(r.types,function(e){return isTypeDerivedFrom(t,e)}):t.flags&58982400?isTypeDerivedFrom(getBaseConstraintOfType(t)||xe,r):r===qe?!!(t.flags&(524288|67108864)):r===Ge?!!(t.flags&524288)&&isFunctionObjectType(t):hasBaseType(t,getTargetType(r))}function isTypeComparableTo(e,t){return isTypeRelatedTo(e,t,ur)}function areTypesComparable(e,t){return isTypeComparableTo(e,t)||isTypeComparableTo(t,e)}function checkTypeAssignableTo(e,t,r,n,i,a){return checkTypeRelatedTo(e,t,sr,r,n,i,a)}function checkTypeAssignableToAndOptionallyElaborate(e,t,r,n,i,a){return checkTypeRelatedToAndOptionallyElaborate(e,t,sr,r,n,i,a)}function checkTypeRelatedToAndOptionallyElaborate(e,t,r,n,i,a,o){if(isTypeRelatedTo(e,t,r))return true;if(!n||!elaborateError(i,e,t,r,a)){return checkTypeRelatedTo(e,t,r,n,a,o)}return false}function isOrHasGenericConditional(t){return!!(t.flags&16777216||t.flags&2097152&&e.some(t.types,isOrHasGenericConditional))}function elaborateError(e,t,r,n,i){if(!e||isOrHasGenericConditional(r))return false;if(!checkTypeRelatedTo(t,r,n,undefined)&&elaborateDidYouMeanToCallOrConstruct(e,t,r,n,i)){return true}switch(e.kind){case 270:case 195:return elaborateError(e.expression,t,r,n,i);case 204:switch(e.operatorToken.kind){case 59:case 27:return elaborateError(e.right,t,r,n,i)}break;case 188:return elaborateObjectLiteral(e,t,r,n);case 187:return elaborateArrayLiteral(e,t,r,n);case 268:return elaborateJsxAttributes(e,t,r,n);case 197:return elaborateArrowFunction(e,t,r,n)}return false}function elaborateDidYouMeanToCallOrConstruct(t,r,n,i,a){var o=getSignaturesOfType(r,0);var s=getSignaturesOfType(r,1);for(var c=0,u=[s,o];c<u.length;c++){var l=u[c];if(e.some(l,function(e){var t=getReturnTypeOfSignature(e);return!(t.flags&(1|131072))&&checkTypeRelatedTo(t,n,i,undefined)})){var f={};checkTypeAssignableTo(r,n,t,a,undefined,f);var d=f.error;addRelatedInfo(d,e.createDiagnosticForNode(t,l===s?e.Diagnostics.Did_you_mean_to_use_new_with_this_expression:e.Diagnostics.Did_you_mean_to_call_this_expression));return true}}return false}function elaborateArrowFunction(t,r,n,i){if(e.isBlock(t.body)){return false}if(e.some(t.parameters,e.hasType)){return false}var a=getSingleCallSignature(r);if(!a){return false}var o=getSignaturesOfType(n,0);if(!e.length(o)){return false}var s=t.body;var c=getReturnTypeOfSignature(a);var u=getUnionType(e.map(o,getReturnTypeOfSignature));if(!checkTypeRelatedTo(c,u,i,undefined)){var l=s&&elaborateError(s,c,u,i,undefined);if(l){return l}var f={};checkTypeRelatedTo(c,u,i,s,undefined,undefined,f);if(f.error){if(n.symbol&&e.length(n.symbol.declarations)){addRelatedInfo(f.error,e.createDiagnosticForNode(n.symbol.declarations[0],e.Diagnostics.The_expected_type_comes_from_the_return_type_of_this_signature))}return true}}return false}function elaborateElementwise(t,r,n,i){var a=false;for(var o=t.next();!o.done;o=t.next()){var s=o.value,c=s.errorNode,u=s.innerExpression,l=s.nameType,f=s.errorMessage;var d=getIndexedAccessType(n,l,undefined,ee);if(d===ee||d.flags&8388608)continue;var p=getIndexedAccessType(r,l,undefined,ee);if(p!==ee&&d!==ee&&!checkTypeRelatedTo(p,d,i,undefined)){var g=u&&elaborateError(u,p,d,i,undefined);if(g){a=true}else{var _={};var m=u?checkExpressionForMutableLocation(u,0,p):p;var y=checkTypeRelatedTo(m,d,i,c,f,undefined,_);if(y&&m!==p){checkTypeRelatedTo(p,d,i,c,f,undefined,_)}if(_.error){var h=_.error;var v=isTypeUsableAsLateBoundName(l)?getLateBoundNameFromType(l):undefined;var T=v!==undefined?getPropertyOfType(n,v):undefined;var S=false;if(!T){var b=isTypeAssignableToKind(l,296)&&getIndexInfoOfType(n,1)||getIndexInfoOfType(n,0)||undefined;if(b&&b.declaration&&!e.getSourceFileOfNode(b.declaration).hasNoDefaultLib){S=true;addRelatedInfo(h,e.createDiagnosticForNode(b.declaration,e.Diagnostics.The_expected_type_comes_from_this_index_signature))}}if(!S&&(T&&e.length(T.declarations)||n.symbol&&e.length(n.symbol.declarations))){var x=T&&e.length(T.declarations)?T.declarations[0]:n.symbol.declarations[0];if(!e.getSourceFileOfNode(x).hasNoDefaultLib){addRelatedInfo(h,e.createDiagnosticForNode(x,e.Diagnostics.The_expected_type_comes_from_property_0_which_is_declared_here_on_type_1,v&&!(l.flags&8192)?e.unescapeLeadingUnderscores(v):typeToString(l),typeToString(n)))}}}a=true}}}return a}function generateJsxAttributes(t){var r,n,a;return i(this,function(i){switch(i.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties;i.label=1;case 1:if(!(r<n.length))return[3,4];a=n[r];if(e.isJsxSpreadAttribute(a))return[3,3];return[4,{errorNode:a.name,innerExpression:a.initializer,nameType:getLiteralType(e.idText(a.name))}];case 2:i.sent();i.label=3;case 3:r++;return[3,1];case 4:return[2]}})}function elaborateJsxAttributes(e,t,r,n){return elaborateElementwise(generateJsxAttributes(e),t,r,n)}function generateLimitedTupleElements(t,r){var n,a,o,s;return i(this,function(i){switch(i.label){case 0:n=e.length(t.elements);if(!n)return[2];a=0;i.label=1;case 1:if(!(a<n))return[3,4];if(isTupleLikeType(r)&&!getPropertyOfType(r,""+a))return[3,3];o=t.elements[a];if(e.isOmittedExpression(o))return[3,3];s=getLiteralType(a);return[4,{errorNode:o,innerExpression:o,nameType:s}];case 2:i.sent();i.label=3;case 3:a++;return[3,1];case 4:return[2]}})}function elaborateArrayLiteral(e,t,r,n){if(isTupleLikeType(t)){return elaborateElementwise(generateLimitedTupleElements(e,r),t,r,n)}var i=checkArrayLiteral(e,3,true);if(isTupleLikeType(i)){return elaborateElementwise(generateLimitedTupleElements(e,r),i,r,n)}return false}function generateObjectLiteralElements(t){var r,n,a,o,s;return i(this,function(i){switch(i.label){case 0:if(!e.length(t.properties))return[2];r=0,n=t.properties;i.label=1;case 1:if(!(r<n.length))return[3,8];a=n[r];if(e.isSpreadAssignment(a))return[3,7];o=getLiteralTypeFromProperty(getSymbolOfNode(a),8576);if(!o||o.flags&131072){return[3,7]}s=a.kind;switch(s){case 159:return[3,2];case 158:return[3,2];case 156:return[3,2];case 276:return[3,2];case 275:return[3,4]}return[3,6];case 2:return[4,{errorNode:a.name,innerExpression:undefined,nameType:o}];case 3:i.sent();return[3,7];case 4:return[4,{errorNode:a.name,innerExpression:a.initializer,nameType:o,errorMessage:isComputedNonLiteralName(a.name)?e.Diagnostics.Type_of_computed_property_s_value_is_0_which_is_not_assignable_to_type_1:undefined}];case 5:i.sent();return[3,7];case 6:e.Debug.assertNever(a);i.label=7;case 7:r++;return[3,1];case 8:return[2]}})}function elaborateObjectLiteral(e,t,r,n){return elaborateElementwise(generateObjectLiteralElements(e),t,r,n)}function checkTypeComparableTo(e,t,r,n,i){return checkTypeRelatedTo(e,t,ur,r,n,i)}function isSignatureAssignableTo(e,t,r){return compareSignaturesRelated(e,t,0,r,false,undefined,compareTypesAssignable)!==0}function compareSignaturesRelated(t,r,n,i,a,o,s){if(t===r){return-1}var c=getParameterCount(r);if(!hasEffectiveRestParameter(r)&&getMinArgumentCount(t)>c){return 0}if(t.typeParameters&&t.typeParameters!==r.typeParameters){r=getCanonicalSignature(r);t=instantiateSignatureInContextOf(t,r,undefined,s)}var u=getParameterCount(t);var l=getNonArrayRestType(t);var f=getNonArrayRestType(r);if(l&&f&&u!==c){return 0}var d=r.declaration?r.declaration.kind:0;var p=!n&&N&&d!==156&&d!==155&&d!==157;var g=-1;var _=getThisTypeOfSignature(t);if(_&&_!==_e){var m=getThisTypeOfSignature(r);if(m){var y=!p&&s(_,m,false)||s(m,_,a);if(!y){if(a){o(e.Diagnostics.The_this_types_of_each_signature_are_incompatible)}return 0}g&=y}}var h=l||f?Math.min(u,c):Math.max(u,c);var v=l||f?h-1:-1;for(var T=0;T<h;T++){var S=T===v?getRestTypeAtPosition(t,T):getTypeAtPosition(t,T);var b=T===v?getRestTypeAtPosition(r,T):getTypeAtPosition(r,T);var x=n?undefined:getSingleCallSignature(getNonNullableType(S));var C=n?undefined:getSingleCallSignature(getNonNullableType(b));var E=x&&C&&!signatureHasTypePredicate(x)&&!signatureHasTypePredicate(C)&&(getFalsyFlags(S)&98304)===(getFalsyFlags(b)&98304);var y=E?compareSignaturesRelated(C,x,p?2:1,false,a,o,s):!n&&!p&&s(S,b,false)||s(b,S,a);if(!y){if(a){o(e.Diagnostics.Types_of_parameters_0_and_1_are_incompatible,e.unescapeLeadingUnderscores(getParameterNameAtPosition(t,T)),e.unescapeLeadingUnderscores(getParameterNameAtPosition(r,T)))}return 0}g&=y}if(!i){var D=r.declaration&&isJSConstructor(r.declaration)?getJSClassType(r.declaration.symbol):getReturnTypeOfSignature(r);if(D===_e){return g}var k=t.declaration&&isJSConstructor(t.declaration)?getJSClassType(t.declaration.symbol):getReturnTypeOfSignature(t);var A=getTypePredicateOfSignature(r);if(A){var O=getTypePredicateOfSignature(t);if(O){g&=compareTypePredicateRelatedTo(O,A,t.declaration,r.declaration,a,o,s)}else if(e.isIdentifierTypePredicate(A)){if(a){o(e.Diagnostics.Signature_0_must_be_a_type_predicate,signatureToString(t))}return 0}}else{g&=n===1&&s(D,k,false)||s(k,D,a)}}return g}function compareTypePredicateRelatedTo(t,r,n,i,a,o,s){if(t.kind!==r.kind){if(a){o(e.Diagnostics.A_this_based_type_guard_is_not_compatible_with_a_parameter_based_type_guard);o(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,typePredicateToString(t),typePredicateToString(r))}return 0}if(t.kind===1){var c=r;var u=t.parameterIndex-(e.getThisParameter(n)?1:0);var l=c.parameterIndex-(e.getThisParameter(i)?1:0);if(u!==l){if(a){o(e.Diagnostics.Parameter_0_is_not_in_the_same_position_as_parameter_1,t.parameterName,c.parameterName);o(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,typePredicateToString(t),typePredicateToString(r))}return 0}}var f=s(t.type,r.type,a);if(f===0&&a){o(e.Diagnostics.Type_predicate_0_is_not_assignable_to_1,typePredicateToString(t),typePredicateToString(r))}return f}function isImplementationCompatibleWithOverload(e,t){var r=getErasedSignature(e);var n=getErasedSignature(t);var i=getReturnTypeOfSignature(r);var a=getReturnTypeOfSignature(n);if(a===_e||isTypeRelatedTo(a,i,sr)||isTypeRelatedTo(i,a,sr)){return isSignatureAssignableTo(r,n,true)}return false}function isEmptyResolvedType(e){return e.properties.length===0&&e.callSignatures.length===0&&e.constructSignatures.length===0&&!e.stringIndexInfo&&!e.numberIndexInfo}function isEmptyObjectType(t){return t.flags&524288?isEmptyResolvedType(resolveStructuredTypeMembers(t)):t.flags&67108864?true:t.flags&1048576?e.some(t.types,isEmptyObjectType):t.flags&2097152?e.every(t.types,isEmptyObjectType):false}function isEmptyAnonymousObjectType(t){return!!(e.getObjectFlags(t)&16)&&isEmptyObjectType(t)}function isEnumTypeRelatedTo(t,r,n){if(t===r){return true}var i=getSymbolId(t)+","+getSymbolId(r);var a=fr.get(i);if(a!==undefined&&!(a===2&&n)){return a===1}if(t.escapedName!==r.escapedName||!(t.flags&256)||!(r.flags&256)){fr.set(i,3);return false}var o=getTypeOfSymbol(r);for(var s=0,c=getPropertiesOfType(getTypeOfSymbol(t));s<c.length;s++){var u=c[s];if(u.flags&8){var l=getPropertyOfType(o,u.escapedName);if(!l||!(l.flags&8)){if(n){n(e.Diagnostics.Property_0_is_missing_in_type_1,e.symbolName(u),typeToString(getDeclaredTypeOfSymbol(r),undefined,64));fr.set(i,3)}else{fr.set(i,2)}return false}}}fr.set(i,1);return true}function isSimpleTypeRelatedTo(e,t,r,n){var i=e.flags;var a=t.flags;if(a&3||i&131072||e===Z)return true;if(a&131072)return false;if(i&132&&a&4)return true;if(i&128&&i&1024&&a&128&&!(a&1024)&&e.value===t.value)return true;if(i&296&&a&8)return true;if(i&256&&i&1024&&a&256&&!(a&1024)&&e.value===t.value)return true;if(i&2112&&a&64)return true;if(i&528&&a&16)return true;if(i&12288&&a&4096)return true;if(i&32&&a&32&&isEnumTypeRelatedTo(e.symbol,t.symbol,n))return true;if(i&1024&&a&1024){if(i&1048576&&a&1048576&&isEnumTypeRelatedTo(e.symbol,t.symbol,n))return true;if(i&2944&&a&2944&&e.value===t.value&&isEnumTypeRelatedTo(getParentOfSymbol(e.symbol),getParentOfSymbol(t.symbol),n))return true}if(i&32768&&(!k||a&(32768|16384)))return true;if(i&65536&&(!k||a&65536))return true;if(i&524288&&a&67108864)return true;if(i&8192||a&8192)return false;if(r===sr||r===cr||r===ur){if(i&1)return true;if(i&(8|256)&&!(i&1024)&&(a&32||a&256&&a&1024))return true}return false}function isTypeRelatedTo(e,t,r){if(isFreshLiteralType(e)){e=e.regularType}if(isFreshLiteralType(t)){t=t.regularType}if(e===t||r===ur&&!(t.flags&131072)&&isSimpleTypeRelatedTo(t,e,r)||r!==lr&&isSimpleTypeRelatedTo(e,t,r)){return true}if(e.flags&524288&&t.flags&524288){var n=r.get(getRelationKey(e,t,r));if(n!==undefined){return n===1}}if(e.flags&66846720||t.flags&66846720){return checkTypeRelatedTo(e,t,r,undefined)}return false}function isIgnoredJsxProperty(t,r,n){return e.getObjectFlags(t)&4096&&!(isUnhyphenatedJsxName(r.escapedName)||n)}function checkTypeRelatedTo(t,r,n,i,a,o,s){var u;var l;var f;var d;var p;var g=0;var _=0;var m=0;var y=false;var h=false;e.Debug.assert(n!==lr||!i,"no error reporting in identity checking");var v=isRelatedTo(t,r,!!i,a);if(y){error(i,e.Diagnostics.Excessive_stack_depth_comparing_types_0_and_1,typeToString(t),typeToString(r))}else if(u){if(o){var T=o();if(T){u=e.concatenateDiagnosticMessageChains(T,u)}}var S=void 0;if(a&&i&&!v&&t.symbol){var b=getSymbolLinks(t.symbol);if(b.originatingImport&&!e.isImportCall(b.originatingImport)){var C=checkTypeRelatedTo(getTypeOfSymbol(b.target),r,n,undefined);if(C){var E=e.createDiagnosticForNode(b.originatingImport,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead);S=e.append(S,E)}}}var D=e.createDiagnosticForNodeFromMessageChain(i,u,S);if(l){addRelatedInfo.apply(void 0,[D].concat(l))}if(s){s.error=D}Xt.add(D)}return v!==0;function reportError(t,r,n,a,o){e.Debug.assert(!!i);u=e.chainDiagnosticMessages(u,t,r,n,a,o)}function associateRelatedInfo(t){e.Debug.assert(!!u);if(!l){l=[t]}else{l.push(t)}}function reportRelationError(t,r,i){var a=typeToString(r);var o=typeToString(i);if(a===o){a=typeToString(r,undefined,64);o=typeToString(i,undefined,64)}if(!t){if(n===ur){t=e.Diagnostics.Type_0_is_not_comparable_to_type_1}else if(a===o){t=e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated}else{t=e.Diagnostics.Type_0_is_not_assignable_to_type_1}}reportError(t,a,o)}function tryElaborateErrorsForPrimitivesAndObjects(t,r){var n=typeToString(t);var i=typeToString(r);if(Ye===t&&oe===r||Ze===t&&se===r||et===t&&pe===r||getGlobalESSymbolType(false)===t&&ge===r){reportError(e.Diagnostics._0_is_a_primitive_but_1_is_a_wrapper_object_Prefer_using_0_when_possible,i,n)}}function isUnionOrIntersectionTypeWithoutNullableConstituents(e){if(!(e.flags&3145728)){return false}var t=false;for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(i.flags&98304){continue}if(t){return true}t=true}return false}function isRelatedTo(t,r,a,o,s){if(a===void 0){a=false}if(isFreshLiteralType(t)){t=t.regularType}if(isFreshLiteralType(r)){r=r.regularType}if(t.flags&33554432){t=n===cr?t.typeVariable:t.substitute}if(r.flags&33554432){r=r.typeVariable}if(t.flags&8388608){t=getSimplifiedType(t)}if(r.flags&8388608){r=getSimplifiedType(r)}if(r.flags&1048576&&t.flags&524288&&r.types.length<=3&&maybeTypeOfKind(r,98304)){var l=extractTypesOfKind(r,~98304);if(!(l.flags&(1048576|131072))){r=l}}if(t===r)return-1;if(n===lr){return isIdenticalTo(t,r)}if(n===ur&&!(r.flags&131072)&&isSimpleTypeRelatedTo(r,t,n)||isSimpleTypeRelatedTo(t,r,n,a?reportError:undefined))return-1;var f=!!(e.getObjectFlags(t)&4096);if(isObjectLiteralType(t)&&e.getObjectFlags(t)&32768){var d=r.flags&1048576?findMatchingDiscriminantType(t,r):undefined;if(hasExcessProperties(t,r,d,a)){if(a){reportRelationError(o,t,r)}return 0}if(isUnionOrIntersectionTypeWithoutNullableConstituents(r)&&!d){t=getRegularTypeOfObjectLiteral(t)}}if(n!==ur&&!s&&t.flags&(131068|524288|2097152)&&t!==qe&&r.flags&(524288|2097152)&&isWeakType(r)&&(getPropertiesOfType(t).length>0||typeHasCallOrConstructSignatures(t))&&!hasCommonProperties(t,r,f)){if(a){var p=getSignaturesOfType(t,0);var g=getSignaturesOfType(t,1);if(p.length>0&&isRelatedTo(getReturnTypeOfSignature(p[0]),r,false)||g.length>0&&isRelatedTo(getReturnTypeOfSignature(g[0]),r,false)){reportError(e.Diagnostics.Value_of_type_0_has_no_properties_in_common_with_type_1_Did_you_mean_to_call_it,typeToString(t),typeToString(r))}else{reportError(e.Diagnostics.Type_0_has_no_properties_in_common_with_type_1,typeToString(t),typeToString(r))}}return 0}var _=0;var m=u;var y=!!s;if(t.flags&1048576){_=n===ur?someTypeRelatedToType(t,r,a&&!(t.flags&131068)):eachTypeRelatedToType(t,r,a&&!(t.flags&131068))}else{if(r.flags&1048576){_=typeRelatedToSomeType(t,r,a&&!(t.flags&131068)&&!(r.flags&131068))}else if(r.flags&2097152){y=true;_=typeRelatedToEachType(t,r,a)}else if(t.flags&2097152){_=someTypeRelatedToType(t,r,false)}if(!_&&(t.flags&66846720||r.flags&66846720)){if(_=recursiveTypeRelatedTo(t,r,a,y)){u=m}}}if(!_&&t.flags&2097152){var v=getUnionConstraintOfIntersection(t,!!(r.flags&1048576));if(v){if(_=isRelatedTo(v,r,a,undefined,y)){u=m}}}if(!_&&a){var T=h;h=false;if(t.flags&524288&&r.flags&131068){tryElaborateErrorsForPrimitivesAndObjects(t,r)}else if(t.symbol&&t.flags&524288&&qe===t){reportError(e.Diagnostics.The_Object_type_is_assignable_to_very_few_other_types_Did_you_mean_to_use_the_any_type_instead)}else if(f&&r.flags&2097152){var S=r.types;var b=getJsxType(c.IntrinsicAttributes,i);var x=getJsxType(c.IntrinsicClassAttributes,i);if(b!==ee&&x!==ee&&(e.contains(S,b)||e.contains(S,x))){return _}}if(!o&&T){return _}reportRelationError(o,t,r)}return _}function isIdenticalTo(e,t){var r;var n=e.flags&t.flags;if(n&524288||n&8388608||n&16777216||n&4194304||n&33554432){return recursiveTypeRelatedTo(e,t,false,false)}if(n&(1048576|2097152)){if(r=eachTypeRelatedToSomeType(e,t)){if(r&=eachTypeRelatedToSomeType(t,e)){return r}}}return 0}function hasExcessProperties(t,r,a,o){if(!F&&e.getObjectFlags(r)&16384){return false}if(maybeTypeOfKind(r,524288)&&!(e.getObjectFlags(r)&512)){var s=!!(e.getObjectFlags(t)&4096);if((n===sr||n===cr||n===ur)&&(isTypeSubsetOf(qe,r)||!s&&isEmptyObjectType(r))){return false}if(a){return hasExcessProperties(t,a,undefined,o)}var c=function(n){if(shouldCheckAsExcessProperty(n,t.symbol)&&!isKnownProperty(r,n.escapedName,s)){if(o){if(!i)return{value:e.Debug.fail()};if(e.isJsxAttributes(i)||e.isJsxOpeningLikeElement(i)||e.isJsxOpeningLikeElement(i.parent)){reportError(e.Diagnostics.Property_0_does_not_exist_on_type_1,symbolToString(n),typeToString(r))}else{var a=t.symbol&&e.firstOrUndefined(t.symbol.declarations);var c=void 0;if(n.valueDeclaration&&e.findAncestor(n.valueDeclaration,function(e){return e===a})){var u=n.valueDeclaration;e.Debug.assertNode(u,e.isObjectLiteralElementLike);i=u;var l=u.name;if(e.isIdentifier(l)){c=getSuggestionForNonexistentProperty(l,r)}}if(c!==undefined){reportError(e.Diagnostics.Object_literal_may_only_specify_known_properties_but_0_does_not_exist_in_type_1_Did_you_mean_to_write_2,symbolToString(n),typeToString(r),c)}else{reportError(e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,symbolToString(n),typeToString(r))}}}return{value:true}}};for(var u=0,l=getPropertiesOfObjectType(t);u<l.length;u++){var f=l[u];var d=c(f);if(typeof d==="object")return d.value}}return false}function shouldCheckAsExcessProperty(e,t){return e.valueDeclaration&&t.valueDeclaration&&e.valueDeclaration.parent===t.valueDeclaration}function eachTypeRelatedToSomeType(e,t){var r=-1;var n=e.types;for(var i=0,a=n;i<a.length;i++){var o=a[i];var s=typeRelatedToSomeType(o,t,false);if(!s){return 0}r&=s}return r}function typeRelatedToSomeType(e,t,r){var n=t.types;if(t.flags&1048576&&containsType(n,e)){return-1}for(var i=0,a=n;i<a.length;i++){var o=a[i];var s=isRelatedTo(e,o,false);if(s){return s}}if(r){var c=findMatchingDiscriminantType(e,t)||findMatchingTypeReferenceOrTypeAliasReference(e,t)||findBestTypeForObjectLiteral(e,t)||findBestTypeForInvokable(e,t)||findMostOverlappyType(e,t);isRelatedTo(e,c||n[n.length-1],true)}return 0}function findMatchingTypeReferenceOrTypeAliasReference(t,r){var n=e.getObjectFlags(t);if(n&(4|16)&&r.flags&1048576){return e.find(r.types,function(r){if(r.flags&524288){var i=n&e.getObjectFlags(r);if(i&4){return t.target===r.target}if(i&16){return!!t.aliasSymbol&&t.aliasSymbol===r.aliasSymbol}}return false})}}function findBestTypeForObjectLiteral(t,r){if(e.getObjectFlags(t)&128&&forEachType(r,isArrayLikeType)){return e.find(r.types,function(e){return!isArrayLikeType(e)})}}function findBestTypeForInvokable(t,r){var n=0;var i=getSignaturesOfType(t,n).length>0||(n=1,getSignaturesOfType(t,n).length>0);if(i){return e.find(r.types,function(e){return getSignaturesOfType(e,n).length>0})}}function findMostOverlappyType(t,r){var n;var i=0;for(var a=0,o=r.types;a<o.length;a++){var s=o[a];var c=getIntersectionType([getIndexType(t),getIndexType(s)]);if(c.flags&4194304){n=s;i=Infinity}else if(c.flags&1048576){var u=e.length(c.types);if(u>=i){n=s;i=u}}else if(!(c.flags&131072)&&1>=i){n=s;i=1}}return n}function findMatchingDiscriminantType(t,r){if(r.flags&1048576){var n=getPropertiesOfObjectType(t);if(n){var i=findDiscriminantProperties(n,r);if(i){return discriminateTypeByDiscriminableItems(r,e.map(i,function(e){return[function(){return getTypeOfSymbol(e)},e.escapedName]}),isRelatedTo)}}}return undefined}function typeRelatedToEachType(e,t,r){var n=-1;var i=t.types;for(var a=0,o=i;a<o.length;a++){var s=o[a];var c=isRelatedTo(e,s,r,undefined,true);if(!c){return 0}n&=c}return n}function someTypeRelatedToType(e,t,r){var n=e.types;if(e.flags&1048576&&containsType(n,t)){return-1}var i=n.length;for(var a=0;a<i;a++){var o=isRelatedTo(n[a],t,r&&a===i-1);if(o){return o}}return 0}function eachTypeRelatedToType(e,t,r){var n=-1;var i=e.types;for(var a=0,o=i;a<o.length;a++){var s=o[a];var c=isRelatedTo(s,t,r);if(!c){return 0}n&=c}return n}function typeArgumentsRelatedTo(t,r,i,a){if(t===void 0){t=e.emptyArray}if(r===void 0){r=e.emptyArray}if(i===void 0){i=e.emptyArray}if(t.length!==r.length&&n===lr){return 0}var o=t.length<=r.length?t.length:r.length;var s=-1;for(var c=0;c<o;c++){var u=c<i.length?i[c]:1;if(u!==4){var l=t[c];var f=r[c];var d=-1;if(u===1){d=isRelatedTo(l,f,a)}else if(u===2){d=isRelatedTo(f,l,a)}else if(u===3){d=isRelatedTo(f,l,false);if(!d){d=isRelatedTo(l,f,a)}}else{d=isRelatedTo(l,f,a);if(d){d&=isRelatedTo(f,l,a)}}if(!d){return 0}s&=d}}return s}function recursiveTypeRelatedTo(e,t,r,i){if(y){return 0}var a=getRelationKey(e,t,n);var o=n.get(a);if(o!==undefined){if(r&&o===2){}else{return o===1?-1:0}}if(!f){f=[];d=[];p=[]}else{for(var s=0;s<g;s++){if(a===f[s]){return 1}}if(_===100){y=true;return 0}}var c=g;f[g]=a;g++;d[_]=e;p[_]=t;_++;var u=m;if(!(m&1)&&isDeeplyNestedType(e,d,_))m|=1;if(!(m&2)&&isDeeplyNestedType(t,p,_))m|=2;var l=m!==3?structuredTypeRelatedTo(e,t,r,i):1;m=u;_--;if(l){if(l===-1||_===0){for(var s=c;s<g;s++){n.set(f[s],1)}g=c}}else{n.set(a,r?3:2);g=c}return l}function getConstraintForRelation(e){return n===cr?undefined:getConstraintOfType(e)}function structuredTypeRelatedTo(t,r,i,a){var o=t.flags&r.flags;if(n===lr&&!(o&524288)){if(o&4194304){return isRelatedTo(t.type,r.type,false)}var s=0;if(o&8388608){if(s=isRelatedTo(t.objectType,r.objectType,false)){if(s&=isRelatedTo(t.indexType,r.indexType,false)){return s}}}if(o&16777216){if(t.root.isDistributive===r.root.isDistributive){if(s=isRelatedTo(t.checkType,r.checkType,false)){if(s&=isRelatedTo(t.extendsType,r.extendsType,false)){if(s&=isRelatedTo(getTrueTypeFromConditionalType(t),getTrueTypeFromConditionalType(r),false)){if(s&=isRelatedTo(getFalseTypeFromConditionalType(t),getFalseTypeFromConditionalType(r),false)){return s}}}}}}if(o&33554432){return isRelatedTo(t.substitute,r.substitute,false)}return 0}var c;var l;var f=u;if(t.flags&(524288|16777216)&&t.aliasSymbol&&t.aliasTypeArguments&&t.aliasSymbol===r.aliasSymbol&&!(t.aliasTypeArgumentsContainsMarker||r.aliasTypeArgumentsContainsMarker)){var d=getAliasVariances(t.aliasSymbol);if(c=typeArgumentsRelatedTo(t.aliasTypeArguments,r.aliasTypeArguments,d,i)){return c}l=u;u=f}if(r.flags&262144){if(e.getObjectFlags(t)&32&&isRelatedTo(getIndexType(r),getConstraintTypeFromMappedType(t))){if(!(getMappedTypeModifiers(t)&4)){var p=getTemplateTypeFromMappedType(t);var g=getIndexedAccessType(r,getTypeParameterFromMappedType(t));if(c=isRelatedTo(p,g,i)){return c}}}}else if(r.flags&4194304){if(t.flags&4194304){if(c=isRelatedTo(r.type,t.type,false)){return c}}if(n!==cr){var _=getSimplifiedType(r.type);var m=_!==r.type?_:getConstraintOfType(r.type);if(m){if(isRelatedTo(t,getIndexType(m,r.stringsOnly),i)===-1){return-1}}}}else if(r.flags&8388608){if(n!==lr&&!(isGenericObjectType(r.objectType)&&isGenericIndexType(r.indexType))){var m=getBaseConstraintOfType(r);if(m&&m!==r){if(c=isRelatedTo(t,m,i)){return c}}}}else if(isGenericMappedType(r)){var y=getTemplateTypeFromMappedType(r);var h=getMappedTypeModifiers(r);if(!(h&8)){if(y.flags&8388608&&y.objectType===t&&y.indexType===getTypeParameterFromMappedType(r)){return-1}if(!isGenericMappedType(t)&&isRelatedTo(getConstraintTypeFromMappedType(r),getIndexType(t))){var g=getIndexedAccessType(t,getTypeParameterFromMappedType(r));var p=getTemplateTypeFromMappedType(r);if(c=isRelatedTo(g,p,i)){return c}}l=u;u=f}}if(t.flags&8650752){if(t.flags&8388608&&r.flags&8388608){if(c=isRelatedTo(t.objectType,r.objectType,i)){c&=isRelatedTo(t.indexType,r.indexType,i)}if(c){u=f;return c}}var m=getConstraintForRelation(t);if(!m||t.flags&262144&&m.flags&3){if(c=isRelatedTo(xe,extractTypesOfKind(r,~67108864))){u=f;return c}}else if(c=isRelatedTo(m,r,false,undefined,a)){u=f;return c}else if(c=isRelatedTo(getTypeWithThisArgument(m,t),r,i,undefined,a)){u=f;return c}}else if(t.flags&4194304){if(c=isRelatedTo(Se,r,i)){u=f;return c}}else if(t.flags&16777216){if(r.flags&16777216){if(isTypeIdenticalTo(t.extendsType,r.extendsType)&&(isRelatedTo(t.checkType,r.checkType)||isRelatedTo(r.checkType,t.checkType))){if(c=isRelatedTo(getTrueTypeFromConditionalType(t),getTrueTypeFromConditionalType(r),i)){c&=isRelatedTo(getFalseTypeFromConditionalType(t),getFalseTypeFromConditionalType(r),i)}if(c){u=f;return c}}}else if(n!==cr){var v=getConstraintOfDistributiveConditionalType(t);if(v){if(c=isRelatedTo(v,r,i)){u=f;return c}}var T=getDefaultConstraintOfConditionalType(t);if(T){if(c=isRelatedTo(T,r,i)){u=f;return c}}}}else{if(isPartialMappedType(r)&&!isGenericMappedType(t)&&isEmptyObjectType(t)){return-1}if(isGenericMappedType(r)){if(isGenericMappedType(t)){if(c=mappedTypeRelatedTo(t,r,i)){u=f;return c}}return 0}if(n===cr&&isGenericMappedType(t)){return 0}var S=!!(t.flags&131068);if(n!==lr){t=getApparentType(t)}if(e.getObjectFlags(t)&4&&e.getObjectFlags(r)&4&&t.target===r.target&&!(e.getObjectFlags(t)&8192||e.getObjectFlags(r)&8192)){var d=getVariances(t.target);if(c=typeArgumentsRelatedTo(t.typeArguments,r.typeArguments,d,i)){return c}if(d!==e.emptyArray&&!hasCovariantVoidArgument(r,d)){if(!(i&&e.some(d,function(e){return e===0}))){return 0}l=u;u=f}}else if(isTupleType(t)&&(isArrayType(r)||isReadonlyArrayType(r))||isArrayType(t)&&isReadonlyArrayType(r)){return isRelatedTo(getIndexTypeOfType(t,1)||X,getIndexTypeOfType(r,1)||X,i)}if(t.flags&(524288|2097152)&&r.flags&524288){var b=i&&u===f&&!S;c=propertiesRelatedTo(t,r,b);if(c){c&=signaturesRelatedTo(t,r,0,b);if(c){c&=signaturesRelatedTo(t,r,1,b);if(c){c&=indexTypesRelatedTo(t,r,0,S,b);if(c){c&=indexTypesRelatedTo(t,r,1,S,b)}}}}if(c){if(!l){u=f;return c}u=l}}}return 0}function mappedTypeRelatedTo(e,t,r){var i=n===ur||(n===lr?getMappedTypeModifiers(e)===getMappedTypeModifiers(t):getCombinedMappedTypeOptionality(e)<=getCombinedMappedTypeOptionality(t));if(i){var a;if(a=isRelatedTo(getConstraintTypeFromMappedType(t),getConstraintTypeFromMappedType(e),r)){var o=createTypeMapper([getTypeParameterFromMappedType(e)],[getTypeParameterFromMappedType(t)]);return a&isRelatedTo(instantiateType(getTemplateTypeFromMappedType(e),o),getTemplateTypeFromMappedType(t),r)}}return 0}function propertiesRelatedTo(t,r,i){if(n===lr){return propertiesIdenticalTo(t,r)}var o=n===or&&!isObjectLiteralType(t)&&!isEmptyArrayLiteralType(t)&&!isTupleType(t);var s=getUnmatchedProperty(t,r,o);if(s){if(i){var c=e.arrayFrom(getUnmatchedProperties(t,r,o));if(!a||a.code!==e.Diagnostics.Class_0_incorrectly_implements_interface_1.code&&a.code!==e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code){h=true}if(c.length===1){var u=symbolToString(s);reportError(e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2,u,typeToString(t),typeToString(r));if(e.length(s.declarations)){associateRelatedInfo(e.createDiagnosticForNode(s.declarations[0],e.Diagnostics._0_is_declared_here,u))}}else if(c.length>5){reportError(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more,typeToString(t),typeToString(r),e.map(c.slice(0,4),function(e){return symbolToString(e)}).join(", "),c.length-4)}else{reportError(e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2,typeToString(t),typeToString(r),e.map(c,function(e){return symbolToString(e)}).join(", "))}}return 0}if(isObjectLiteralType(r)){for(var l=0,f=getPropertiesOfType(t);l<f.length;l++){var d=f[l];if(!getPropertyOfObjectType(r,d.escapedName)){var p=getTypeOfSymbol(d);if(!(p===re||p===ne)){if(i){reportError(e.Diagnostics.Property_0_does_not_exist_on_type_1,symbolToString(d),typeToString(r))}return 0}}}}var g=-1;if(isTupleType(r)){var _=getRestTypeOfTupleType(r);if(_){if(!isTupleType(t)){return 0}var m=getRestTypeOfTupleType(t);if(m&&!isRelatedTo(m,_,i)){if(i){reportError(e.Diagnostics.Rest_signatures_are_incompatible)}return 0}var y=getTypeReferenceArity(r)-1;var v=getTypeReferenceArity(t)-(m?1:0);for(var T=y;T<v;T++){var S=isRelatedTo(t.typeArguments[T],_,i);if(!S){if(i){reportError(e.Diagnostics.Property_0_is_incompatible_with_rest_element_type,""+T)}return 0}g&=S}}}var b=getPropertiesOfObjectType(r);for(var x=0,C=b;x<C.length;x++){var E=C[x];if(!(E.flags&4194304)){var d=getPropertyOfType(t,E.escapedName);if(d&&d!==E){if(isIgnoredJsxProperty(t,d,getTypeOfSymbol(E))){continue}var D=e.getDeclarationModifierFlagsFromSymbol(d);var k=e.getDeclarationModifierFlagsFromSymbol(E);if(D&8||k&8){var N=d.valueDeclaration!==E.valueDeclaration;if(e.getCheckFlags(d)&256&&N){if(i){reportError(e.Diagnostics.Property_0_has_conflicting_declarations_and_is_inaccessible_in_type_1,symbolToString(d),typeToString(t))}return 0}if(N){if(i){if(D&8&&k&8){reportError(e.Diagnostics.Types_have_separate_declarations_of_a_private_property_0,symbolToString(E))}else{reportError(e.Diagnostics.Property_0_is_private_in_type_1_but_not_in_type_2,symbolToString(E),typeToString(D&8?t:r),typeToString(D&8?r:t))}}return 0}}else if(k&16){if(!isValidOverrideOf(d,E)){if(i){reportError(e.Diagnostics.Property_0_is_protected_but_type_1_is_not_a_class_derived_from_2,symbolToString(E),typeToString(getDeclaringClass(d)||t),typeToString(getDeclaringClass(E)||r))}return 0}}else if(D&16){if(i){reportError(e.Diagnostics.Property_0_is_protected_in_type_1_but_public_in_type_2,symbolToString(E),typeToString(t),typeToString(r))}return 0}var S=isRelatedTo(getTypeOfSymbol(d),getTypeOfSymbol(E),i);if(!S){if(i){reportError(e.Diagnostics.Types_of_property_0_are_incompatible,symbolToString(E))}return 0}g&=S;if(n!==ur&&d.flags&16777216&&!(E.flags&16777216)){if(i){reportError(e.Diagnostics.Property_0_is_optional_in_type_1_but_required_in_type_2,symbolToString(E),typeToString(t),typeToString(r))}return 0}}}}return g}function propertiesIdenticalTo(e,t){if(!(e.flags&524288&&t.flags&524288)){return 0}var r=getPropertiesOfObjectType(e);var n=getPropertiesOfObjectType(t);if(r.length!==n.length){return 0}var i=-1;for(var a=0,o=r;a<o.length;a++){var s=o[a];var c=getPropertyOfObjectType(t,s.escapedName);if(!c){return 0}var u=compareProperties(s,c,isRelatedTo);if(!u){return 0}i&=u}return i}function signaturesRelatedTo(t,r,i,a){if(n===lr){return signaturesIdenticalTo(t,r,i)}if(r===Ne||t===Ne){return-1}var o=t.symbol&&isJSConstructor(t.symbol.valueDeclaration);var s=r.symbol&&isJSConstructor(r.symbol.valueDeclaration);var c=getSignaturesOfType(t,o&&i===1?0:i);var l=getSignaturesOfType(r,s&&i===1?0:i);if(i===1&&c.length&&l.length){if(e.isAbstractConstructorType(t)&&!e.isAbstractConstructorType(r)){if(a){reportError(e.Diagnostics.Cannot_assign_an_abstract_constructor_type_to_a_non_abstract_constructor_type)}return 0}if(!constructorVisibilitiesAreCompatible(c[0],l[0],a)){return 0}}var f=-1;var d=u;if(e.getObjectFlags(t)&64&&e.getObjectFlags(r)&64&&t.symbol===r.symbol){for(var p=0;p<l.length;p++){var g=signatureRelatedTo(c[p],l[p],true,a);if(!g){return 0}f&=g}}else if(c.length===1&&l.length===1){var _=n===ur||!!x.noStrictGenericChecks;f=signatureRelatedTo(c[0],l[0],_,a)}else{e:for(var m=0,y=l;m<y.length;m++){var h=y[m];var v=a;for(var T=0,S=c;T<S.length;T++){var b=S[T];var g=signatureRelatedTo(b,h,true,v);if(g){f&=g;u=d;continue e}v=false}if(v){reportError(e.Diagnostics.Type_0_provides_no_match_for_the_signature_1,typeToString(t),signatureToString(h,undefined,undefined,i))}return 0}}return f}function signatureRelatedTo(e,t,r,n){return compareSignaturesRelated(r?getErasedSignature(e):e,r?getErasedSignature(t):t,0,false,n,reportError,isRelatedTo)}function signaturesIdenticalTo(e,t,r){var n=getSignaturesOfType(e,r);var i=getSignaturesOfType(t,r);if(n.length!==i.length){return 0}var a=-1;for(var o=0;o<n.length;o++){var s=compareSignaturesIdentical(n[o],i[o],false,false,false,isRelatedTo);if(!s){return 0}a&=s}return a}function eachPropertyRelatedTo(t,r,n,i){var a=-1;for(var o=0,s=getPropertiesOfObjectType(t);o<s.length;o++){var c=s[o];if(isIgnoredJsxProperty(t,c,undefined)){continue}if(c.nameType&&c.nameType.flags&8192){continue}if(n===0||isNumericLiteralName(c.escapedName)){var u=isRelatedTo(getTypeOfSymbol(c),r,i);if(!u){if(i){reportError(e.Diagnostics.Property_0_is_incompatible_with_index_signature,symbolToString(c))}return 0}a&=u}}return a}function indexInfoRelatedTo(t,r,n){var i=isRelatedTo(t.type,r.type,n);if(!i&&n){reportError(e.Diagnostics.Index_signatures_are_incompatible)}return i}function indexTypesRelatedTo(t,r,i,a,o){if(n===lr){return indexTypesIdenticalTo(t,r,i)}var s=getIndexInfoOfType(r,i);if(!s||s.type.flags&3&&!a){return-1}var c=getIndexInfoOfType(t,i)||i===1&&getIndexInfoOfType(t,0);if(c){return indexInfoRelatedTo(c,s,o)}if(isGenericMappedType(t)){return i===0&&isRelatedTo(getTemplateTypeFromMappedType(t),s.type,o)}if(isObjectTypeWithInferableIndex(t)){var u=-1;if(i===0){var l=getIndexInfoOfType(t,1);if(l){u=indexInfoRelatedTo(l,s,o)}}if(u){u&=eachPropertyRelatedTo(t,s.type,i,o)}return u}if(o){reportError(e.Diagnostics.Index_signature_is_missing_in_type_0,typeToString(t))}return 0}function indexTypesIdenticalTo(e,t,r){var n=getIndexInfoOfType(t,r);var i=getIndexInfoOfType(e,r);if(!i&&!n){return-1}if(i&&n&&i.isReadonly===n.isReadonly){return isRelatedTo(i.type,n.type)}return 0}function constructorVisibilitiesAreCompatible(t,r,n){if(!t.declaration||!r.declaration){return true}var i=e.getSelectedModifierFlags(t.declaration,24);var a=e.getSelectedModifierFlags(r.declaration,24);if(a===8){return true}if(a===16&&i!==8){return true}if(a!==16&&!i){return true}if(n){reportError(e.Diagnostics.Cannot_assign_a_0_constructor_type_to_a_1_constructor_type,visibilityToString(i),visibilityToString(a))}return false}}function discriminateTypeByDiscriminableItems(e,t,r,n){var i;for(var a=0,o=t;a<o.length;a++){var s=o[a],c=s[0],u=s[1];for(var l=0,f=e.types;l<f.length;l++){var d=f[l];var p=getTypeOfPropertyOfType(d,u);if(p&&r(c(),p)){if(i){if(d===i)continue;return n}i=d}}}return i||n}function isWeakType(t){if(t.flags&524288){var r=resolveStructuredTypeMembers(t);return r.callSignatures.length===0&&r.constructSignatures.length===0&&!r.stringIndexInfo&&!r.numberIndexInfo&&r.properties.length>0&&e.every(r.properties,function(e){return!!(e.flags&16777216)})}if(t.flags&2097152){return e.every(t.types,isWeakType)}return false}function hasCommonProperties(e,t,r){for(var n=0,i=getPropertiesOfType(e);n<i.length;n++){var a=i[n];if(isKnownProperty(t,a.escapedName,r)){return true}}return false}function getMarkerTypeReference(t,r,n){var i=createTypeReference(t,e.map(t.typeParameters,function(e){return e===r?n:e}));i.objectFlags|=8192;return i}function getAliasVariances(e){var t=getSymbolLinks(e);return getVariancesWorker(t.typeParameters,t,function(r,n,i){var a=getTypeAliasInstantiation(e,instantiateTypes(t.typeParameters,makeUnaryTypeMapper(n,i)));a.aliasTypeArgumentsContainsMarker=true;return a})}function getVariancesWorker(t,r,n){if(t===void 0){t=e.emptyArray}var i=r.variances;if(!i){r.variances=e.emptyArray;i=[];for(var a=0,o=t;a<o.length;a++){var s=o[a];var c=n(r,s,Pe);var u=n(r,s,Ie);var l=(isTypeAssignableTo(u,c)?1:0)|(isTypeAssignableTo(c,u)?2:0);if(l===3&&isTypeAssignableTo(n(r,s,we),c)){l=4}i.push(l)}r.variances=i}return i}function getVariances(t){if(!N){return e.emptyArray}if(t===$e||t===Xe){return e.emptyArray}return getVariancesWorker(t.typeParameters,t,getMarkerTypeReference)}function hasCovariantVoidArgument(e,t){for(var r=0;r<t.length;r++){if(t[r]===1&&e.typeArguments[r].flags&16384){return true}}return false}function isUnconstrainedTypeParameter(e){return e.flags&262144&&!getConstraintOfTypeParameter(e)}function isTypeReferenceWithGenericArguments(t){return!!(e.getObjectFlags(t)&4)&&e.some(t.typeArguments,function(e){return isUnconstrainedTypeParameter(e)||isTypeReferenceWithGenericArguments(e)})}function getTypeReferenceId(e,t,r){if(r===void 0){r=0}var n=""+e.target.id;for(var i=0,a=e.typeArguments;i<a.length;i++){var o=a[i];if(isUnconstrainedTypeParameter(o)){var s=t.indexOf(o);if(s<0){s=t.length;t.push(o)}n+="="+s}else if(r<4&&isTypeReferenceWithGenericArguments(o)){n+="<"+getTypeReferenceId(o,t,r+1)+">"}else{n+="-"+o.id}}return n}function getRelationKey(e,t,r){if(r===lr&&e.id>t.id){var n=e;e=t;t=n}if(isTypeReferenceWithGenericArguments(e)&&isTypeReferenceWithGenericArguments(t)){var i=[];return getTypeReferenceId(e,i)+","+getTypeReferenceId(t,i)}return e.id+","+t.id}function forEachProperty(t,r){if(e.getCheckFlags(t)&6){for(var n=0,i=t.containingType.types;n<i.length;n++){var a=i[n];var o=getPropertyOfType(a,t.escapedName);var s=o&&forEachProperty(o,r);if(s){return s}}return undefined}return r(t)}function getDeclaringClass(e){return e.parent&&e.parent.flags&32?getDeclaredTypeOfSymbol(getParentOfSymbol(e)):undefined}function isPropertyInClassDerivedFrom(e,t){return forEachProperty(e,function(e){var r=getDeclaringClass(e);return r?hasBaseType(r,t):false})}function isValidOverrideOf(t,r){return!forEachProperty(r,function(r){return e.getDeclarationModifierFlagsFromSymbol(r)&16?!isPropertyInClassDerivedFrom(t,getDeclaringClass(r)):false})}function isClassDerivedFromDeclaringClasses(t,r){return forEachProperty(r,function(r){return e.getDeclarationModifierFlagsFromSymbol(r)&16?!hasBaseType(t,getDeclaringClass(r)):false})?undefined:t}function isDeeplyNestedType(e,t,r){if(r>=5&&e.flags&524288){var n=e.symbol;if(n){var i=0;for(var a=0;a<r;a++){var o=t[a];if(o.flags&524288&&o.symbol===n){i++;if(i>=5)return true}}}}return false}function isPropertyIdenticalTo(e,t){return compareProperties(e,t,compareTypesIdentical)!==0}function compareProperties(t,r,n){if(t===r){return-1}var i=e.getDeclarationModifierFlagsFromSymbol(t)&24;var a=e.getDeclarationModifierFlagsFromSymbol(r)&24;if(i!==a){return 0}if(i){if(getTargetSymbol(t)!==getTargetSymbol(r)){return 0}}else{if((t.flags&16777216)!==(r.flags&16777216)){return 0}}if(isReadonlySymbol(t)!==isReadonlySymbol(r)){return 0}return n(getTypeOfSymbol(t),getTypeOfSymbol(r))}function isMatchingSignature(e,t,r){var n=getParameterCount(e);var i=getParameterCount(t);var a=getMinArgumentCount(e);var o=getMinArgumentCount(t);var s=hasEffectiveRestParameter(e);var c=hasEffectiveRestParameter(t);if(n===i&&a===o&&s===c){return true}if(r&&a<=o){return true}return false}function compareSignaturesIdentical(t,r,n,i,a,o){if(t===r){return-1}if(!isMatchingSignature(t,r,n)){return 0}if(e.length(t.typeParameters)!==e.length(r.typeParameters)){return 0}t=getErasedSignature(t);r=getErasedSignature(r);var s=-1;if(!i){var c=getThisTypeOfSignature(t);if(c){var u=getThisTypeOfSignature(r);if(u){var l=o(c,u);if(!l){return 0}s&=l}}}var f=getParameterCount(r);for(var d=0;d<f;d++){var p=getTypeAtPosition(t,d);var g=getTypeAtPosition(r,d);var l=o(g,p);if(!l){return 0}s&=l}if(!a){var _=getTypePredicateOfSignature(t);var m=getTypePredicateOfSignature(r);s&=_!==undefined||m!==undefined?compareTypePredicatesIdentical(_,m,o):o(getReturnTypeOfSignature(t),getReturnTypeOfSignature(r))}return s}function compareTypePredicatesIdentical(e,t,r){return e===undefined||t===undefined||!typePredicateKindsMatch(e,t)?0:r(e.type,t.type)}function literalTypesWithSameBaseType(e){var t;for(var r=0,n=e;r<n.length;r++){var i=n[r];var a=getBaseTypeOfLiteralType(i);if(!t){t=a}if(a===i||a!==t){return false}}return true}function getSupertypeOrUnion(t){return literalTypesWithSameBaseType(t)?getUnionType(t):e.reduceLeft(t,function(e,t){return isTypeSubtypeOf(e,t)?t:e})}function getCommonSupertype(t){if(!k){return getSupertypeOrUnion(t)}var r=e.filter(t,function(e){return!(e.flags&98304)});return r.length?getNullableType(getSupertypeOrUnion(r),getFalsyFlagsOfTypes(t)&98304):getUnionType(t,2)}function getCommonSubtype(t){return e.reduceLeft(t,function(e,t){return isTypeSubtypeOf(t,e)?t:e})}function isArrayType(t){return!!(e.getObjectFlags(t)&4)&&t.target===$e}function isReadonlyArrayType(t){return!!(e.getObjectFlags(t)&4)&&t.target===Xe}function getElementTypeOfArrayType(e){return isArrayType(e)&&e.typeArguments?e.typeArguments[0]:undefined}function isArrayLikeType(t){return e.getObjectFlags(t)&4&&(t.target===$e||t.target===Xe)||!(t.flags&98304)&&isTypeAssignableTo(t,at)}function isEmptyArrayLiteralType(e){var t=isArrayType(e)?e.typeArguments[0]:undefined;return t===ne||t===he}function isTupleLikeType(e){return isTupleType(e)||!!getPropertyOfType(e,"0")}function getTupleElementType(e,t){var r=getTypeOfPropertyOfType(e,""+t);if(r){return r}if(everyType(e,isTupleType)&&!everyType(e,function(e){return!e.target.hasRestElement})){return mapType(e,function(e){return getRestTypeOfTupleType(e)||re})}return undefined}function isNeitherUnitTypeNorNever(e){return!(e.flags&(109440|131072))}function isUnitType(e){return!!(e.flags&109440)}function isLiteralType(t){return t.flags&16?true:t.flags&1048576?t.flags&1024?true:e.every(t.types,isUnitType):isUnitType(t)}function getBaseTypeOfLiteralType(t){return t.flags&1024?getBaseTypeOfEnumLiteralType(t):t.flags&128?oe:t.flags&256?se:t.flags&2048?ce:t.flags&512?pe:t.flags&1048576?getUnionType(e.sameMap(t.types,getBaseTypeOfLiteralType)):t}function getWidenedLiteralType(t){return t.flags&1024&&isFreshLiteralType(t)?getBaseTypeOfEnumLiteralType(t):t.flags&128&&isFreshLiteralType(t)?oe:t.flags&256&&isFreshLiteralType(t)?se:t.flags&2048&&isFreshLiteralType(t)?ce:t.flags&512&&isFreshLiteralType(t)?pe:t.flags&1048576?getUnionType(e.sameMap(t.types,getWidenedLiteralType)):t}function getWidenedUniqueESSymbolType(t){return t.flags&8192?ge:t.flags&1048576?getUnionType(e.sameMap(t.types,getWidenedUniqueESSymbolType)):t}function getWidenedLiteralLikeTypeForContextualType(e,t){if(!isLiteralOfContextualType(e,t)){e=getWidenedUniqueESSymbolType(getWidenedLiteralType(e))}return e}function isTupleType(t){return!!(e.getObjectFlags(t)&4&&t.target.objectFlags&8)}function getRestTypeOfTupleType(e){return e.target.hasRestElement?e.typeArguments[e.target.typeParameters.length-1]:undefined}function getRestArrayTypeOfTupleType(e){var t=getRestTypeOfTupleType(e);return t&&createArrayType(t)}function getLengthOfTupleType(e){return getTypeReferenceArity(e)-(e.target.hasRestElement?1:0)}function isZeroBigInt(e){var t=e.value;return t.base10Value==="0"}function getFalsyFlagsOfTypes(e){var t=0;for(var r=0,n=e;r<n.length;r++){var i=n[r];t|=getFalsyFlags(i)}return t}function getFalsyFlags(e){return e.flags&1048576?getFalsyFlagsOfTypes(e.types):e.flags&128?e.value===""?128:0:e.flags&256?e.value===0?256:0:e.flags&2048?isZeroBigInt(e)?2048:0:e.flags&512?e===ue||e===le?512:0:e.flags&117724}function removeDefinitelyFalsyTypes(e){return getFalsyFlags(e)&117632?filterType(e,function(e){return!(getFalsyFlags(e)&117632)}):e}function extractDefinitelyFalsyTypes(e){return mapType(e,getDefinitelyFalsyPartOfType)}function getDefinitelyFalsyPartOfType(e){return e.flags&4?Ft:e.flags&8?Pt:e.flags&64?It:e===le||e===ue||e.flags&(16384|32768|65536)||e.flags&128&&e.value===""||e.flags&256&&e.value===0||e.flags&2048&&isZeroBigInt(e)?e:me}function getNullableType(e,t){var r=t&~e.flags&(32768|65536);return r===0?e:r===32768?getUnionType([e,re]):r===65536?getUnionType([e,ie]):getUnionType([e,re,ie])}function getOptionalType(t){e.Debug.assert(k);return t.flags&32768?t:getUnionType([t,re])}function getGlobalNonNullableTypeInstantiation(e){if(!ot){ot=getGlobalSymbol("NonNullable",524288,undefined)||Q}if(ot!==Q){return getTypeAliasInstantiation(ot,[e])}return getTypeWithFacts(e,2097152)}function getNonNullableType(e){return k?getGlobalNonNullableTypeInstantiation(e):e}function isObjectTypeWithInferableIndex(e){return e.symbol&&(e.symbol.flags&(4096|2048|512))!==0&&!typeHasCallOrConstructSignatures(e)}function createSymbolWithType(e,t){var r=createSymbol(e.flags,e.escapedName);r.declarations=e.declarations;r.parent=e.parent;r.type=t;r.target=e;if(e.valueDeclaration){r.valueDeclaration=e.valueDeclaration}if(e.nameType){r.nameType=e.nameType}return r}function transformTypeOfMembers(t,r){var n=e.createSymbolTable();for(var i=0,a=getPropertiesOfObjectType(t);i<a.length;i++){var o=a[i];var s=getTypeOfSymbol(o);var c=r(s);n.set(o.escapedName,c===s?o:createSymbolWithType(o,c))}return n}function getRegularTypeOfObjectLiteral(t){if(!(isObjectLiteralType(t)&&e.getObjectFlags(t)&32768)){return t}var r=t.regularType;if(r){return r}var n=t;var i=transformTypeOfMembers(t,getRegularTypeOfObjectLiteral);var a=createAnonymousType(n.symbol,i,n.callSignatures,n.constructSignatures,n.stringIndexInfo,n.numberIndexInfo);a.flags=n.flags;a.objectFlags|=128|e.getObjectFlags(n)&16384;t.regularType=a;return a}function createWideningContext(e,t,r){return{parent:e,propertyName:t,siblings:r,resolvedProperties:undefined}}function getSiblingsOfContext(e){if(!e.siblings){var t=[];for(var r=0,n=getSiblingsOfContext(e.parent);r<n.length;r++){var i=n[r];if(isObjectLiteralType(i)){var a=getPropertyOfObjectType(i,e.propertyName);if(a){forEachType(getTypeOfSymbol(a),function(e){t.push(e)})}}}e.siblings=t}return e.siblings}function getPropertiesOfContext(t){if(!t.resolvedProperties){var r=e.createMap();for(var n=0,i=getSiblingsOfContext(t);n<i.length;n++){var a=i[n];if(isObjectLiteralType(a)&&!(e.getObjectFlags(a)&1024)){for(var o=0,s=getPropertiesOfType(a);o<s.length;o++){var c=s[o];r.set(c.escapedName,c)}}}t.resolvedProperties=e.arrayFrom(r.values())}return t.resolvedProperties}function getWidenedProperty(e,t){if(!(e.flags&4)){return e}var r=getTypeOfSymbol(e);var n=t&&createWideningContext(t,e.escapedName,undefined);var i=getWidenedTypeWithContext(r,n);return i===r?e:createSymbolWithType(e,i)}function getUndefinedProperty(e){var t=H.get(e.escapedName);if(t){return t}var r=createSymbolWithType(e,re);r.flags|=16777216;H.set(e.escapedName,r);return r}function getWidenedTypeOfObjectLiteral(t,r){var n=e.createSymbolTable();for(var i=0,a=getPropertiesOfObjectType(t);i<a.length;i++){var o=a[i];n.set(o.escapedName,getWidenedProperty(o,r))}if(r){for(var s=0,c=getPropertiesOfContext(r);s<c.length;s++){var o=c[s];if(!n.has(o.escapedName)){n.set(o.escapedName,getUndefinedProperty(o))}}}var u=getIndexInfoOfType(t,0);var l=getIndexInfoOfType(t,1);var f=createAnonymousType(t.symbol,n,e.emptyArray,e.emptyArray,u&&createIndexInfo(getWidenedType(u.type),u.isReadonly),l&&createIndexInfo(getWidenedType(l.type),l.isReadonly));f.objectFlags|=e.getObjectFlags(t)&16384;return f}function getWidenedType(e){return getWidenedTypeWithContext(e,undefined)}function getWidenedTypeWithContext(t,r){if(t.flags&402653184){if(t.flags&98304){return X}if(isObjectLiteralType(t)){return getWidenedTypeOfObjectLiteral(t,r)}if(t.flags&1048576){var n=r||createWideningContext(undefined,undefined,t.types);var i=e.sameMap(t.types,function(e){return e.flags&98304?e:getWidenedTypeWithContext(e,n)});return getUnionType(i,e.some(i,isEmptyObjectType)?2:1)}if(isArrayType(t)||isTupleType(t)){return createTypeReference(t.target,e.sameMap(t.typeArguments,getWidenedType))}}return t}function reportWideningErrorsInType(t){var r=false;if(t.flags&134217728){if(t.flags&1048576){if(e.some(t.types,isEmptyObjectType)){r=true}else{for(var n=0,i=t.types;n<i.length;n++){var a=i[n];if(reportWideningErrorsInType(a)){r=true}}}}if(isArrayType(t)||isTupleType(t)){for(var o=0,s=t.typeArguments;o<s.length;o++){var a=s[o];if(reportWideningErrorsInType(a)){r=true}}}if(isObjectLiteralType(t)){for(var c=0,u=getPropertiesOfObjectType(t);c<u.length;c++){var l=u[c];var a=getTypeOfSymbol(l);if(a.flags&134217728){if(!reportWideningErrorsInType(a)){error(l.valueDeclaration,e.Diagnostics.Object_literal_s_property_0_implicitly_has_an_1_type,symbolToString(l),typeToString(getWidenedType(a)))}r=true}}}}return r}function reportImplicitAny(t,r){var n=typeToString(getWidenedType(r));if(e.isInJSFile(t)&&!e.isCheckJsEnabledForFile(e.getSourceFileOfNode(t),x)){return}var i;switch(t.kind){case 204:case 154:case 153:i=F?e.Diagnostics.Member_0_implicitly_has_an_1_type:e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 151:var a=t;if(e.isIdentifier(a.name)&&(e.isCallSignatureDeclaration(a.parent)||e.isMethodSignature(a.parent)||e.isFunctionTypeNode(a.parent))&&a.parent.parameters.indexOf(a)>-1&&(resolveName(a,a.name.escapedText,67897832,undefined,a.name.escapedText,true)||a.name.originalKeywordKind&&e.isTypeNodeKind(a.name.originalKeywordKind))){var o="arg"+a.parent.parameters.indexOf(a);errorOrSuggestion(F,t,e.Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1,o,e.declarationNameToString(a.name));return}i=t.dotDotDotToken?F?e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type:e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage:F?e.Diagnostics.Parameter_0_implicitly_has_an_1_type:e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;break;case 186:i=e.Diagnostics.Binding_element_0_implicitly_has_an_1_type;break;case 289:error(t,e.Diagnostics.Function_type_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,n);return;case 239:case 156:case 155:case 158:case 159:case 196:case 197:if(F&&!t.name){error(t,e.Diagnostics.Function_expression_which_lacks_return_type_annotation_implicitly_has_an_0_return_type,n);return}i=F?e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type:e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage;break;case 181:if(F){error(t,e.Diagnostics.Mapped_object_type_implicitly_has_an_any_template_type)}return;default:i=F?e.Diagnostics.Variable_0_implicitly_has_an_1_type:e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage}errorOrSuggestion(F,t,i,e.declarationNameToString(e.getNameOfDeclaration(t)),n)}function reportErrorsFromWidening(e,t){if(a&&F&&t.flags&134217728){if(!reportWideningErrorsInType(t)){reportImplicitAny(e,t)}}}function forEachMatchingParameterType(e,t,r){var n=getParameterCount(e);var i=getParameterCount(t);var a=getEffectiveRestType(e);var o=getEffectiveRestType(t);var s=o?i-1:i;var c=a?s:Math.min(n,s);var u=getThisTypeOfSignature(e);if(u){var l=getThisTypeOfSignature(t);if(l){r(u,l)}}for(var f=0;f<c;f++){r(getTypeAtPosition(e,f),getTypeAtPosition(t,f))}if(o){r(getRestTypeAtPosition(e,c),o)}}function createInferenceContext(e,t,r,n,i){var a=i?i.map(cloneInferenceInfo):e.map(createInferenceInfo);var o=mapper;o.typeParameters=e;o.signature=t;o.inferences=a;o.flags=r;o.compareTypes=n||compareTypesAssignable;return o;function mapper(e){for(var t=0;t<a.length;t++){if(e===a[t].typeParameter){a[t].isFixed=true;return getInferredType(o,t)}}return e}}function createInferenceInfo(e){return{typeParameter:e,candidates:undefined,contraCandidates:undefined,inferredType:undefined,priority:undefined,topLevel:true,isFixed:false}}function cloneInferenceInfo(e){return{typeParameter:e.typeParameter,candidates:e.candidates&&e.candidates.slice(),contraCandidates:e.contraCandidates&&e.contraCandidates.slice(),inferredType:e.inferredType,priority:e.priority,topLevel:e.topLevel,isFixed:e.isFixed}}function couldContainTypeVariables(t){var r=e.getObjectFlags(t);return!!(t.flags&63176704||r&4&&e.forEach(t.typeArguments,couldContainTypeVariables)||r&16&&t.symbol&&t.symbol.flags&(16|8192|2048|32)||r&32||t.flags&3145728&&couldUnionOrIntersectionContainTypeVariables(t))}function couldUnionOrIntersectionContainTypeVariables(t){if(t.couldContainTypeVariables===undefined){t.couldContainTypeVariables=e.some(t.types,couldContainTypeVariables)}return t.couldContainTypeVariables}function isTypeParameterAtTopLevel(t,r){return t===r||!!(t.flags&3145728)&&e.some(t.types,function(e){return isTypeParameterAtTopLevel(e,r)})}function createEmptyObjectTypeFromStringLiteral(t){var r=e.createSymbolTable();forEachType(t,function(t){if(!(t.flags&128)){return}var n=e.escapeLeadingUnderscores(t.value);var i=createSymbol(4,n);i.type=X;if(t.symbol){i.declarations=t.symbol.declarations;i.valueDeclaration=t.symbol.valueDeclaration}r.set(n,i)});var n=t.flags&4?createIndexInfo(xe,false):undefined;return createAnonymousType(undefined,r,e.emptyArray,e.emptyArray,n,undefined)}function inferTypeForHomomorphicMappedType(e,t,r){var n=e.id+","+t.id+","+r.id;if(ze.has(n)){return ze.get(n)}ze.set(n,undefined);var i=createReverseMappedType(e,t,r);ze.set(n,i);return i}function createReverseMappedType(t,r,n){var i=getPropertiesOfType(t);if(i.length===0&&!getIndexInfoOfType(t,0)){return undefined}for(var a=0,o=i;a<o.length;a++){var s=o[a];if(getTypeOfSymbol(s).flags&536870912){return undefined}}if(isArrayType(t)){return createArrayType(inferReverseMappedType(t.typeArguments[0],r,n))}if(isReadonlyArrayType(t)){return createReadonlyArrayType(inferReverseMappedType(t.typeArguments[0],r,n))}if(isTupleType(t)){var c=e.map(t.typeArguments||e.emptyArray,function(e){return inferReverseMappedType(e,r,n)});var u=getMappedTypeModifiers(r)&4?getTypeReferenceArity(t)-(t.target.hasRestElement?1:0):t.target.minLength;return createTupleType(c,u,t.target.hasRestElement,t.target.associatedNames)}var l=createObjectType(2048|16,undefined);l.source=t;l.mappedType=r;l.constraintType=n;return l}function getTypeOfReverseMappedSymbol(e){return inferReverseMappedType(e.propertyType,e.mappedType,e.constraintType)}function inferReverseMappedType(e,t,r){var n=getIndexedAccessType(r.type,getTypeParameterFromMappedType(t));var i=getTemplateTypeFromMappedType(t);var a=createInferenceInfo(n);inferTypes([a],e,i);return getTypeFromInference(a)}function getUnmatchedProperties(e,t,r){var n,a,o,s,c;return i(this,function(i){switch(i.label){case 0:n=t.flags&2097152?getPropertiesOfUnionOrIntersectionType(t):getPropertiesOfObjectType(t);a=0,o=n;i.label=1;case 1:if(!(a<o.length))return[3,4];s=o[a];if(!(r||!(s.flags&16777216)))return[3,3];c=getPropertyOfType(e,s.escapedName);if(!!c)return[3,3];return[4,s];case 2:i.sent();i.label=3;case 3:a++;return[3,1];case 4:return[2]}})}function getUnmatchedProperty(e,t,r){return getUnmatchedProperties(e,t,r).next().value}function tupleTypesDefinitelyUnrelated(e,t){return t.target.minLength>e.target.minLength||!getRestTypeOfTupleType(t)&&(!!getRestTypeOfTupleType(e)||getLengthOfTupleType(t)<getLengthOfTupleType(e))}function typesDefinitelyUnrelated(e,t){return isTupleType(e)&&isTupleType(t)&&tupleTypesDefinitelyUnrelated(e,t)||!!getUnmatchedProperty(e,t,false)&&!!getUnmatchedProperty(t,e,false)}function getTypeFromInference(e){return e.candidates?getUnionType(e.candidates,2):e.contraCandidates?getIntersectionType(e.contraCandidates):xe}function inferTypes(t,r,n,i){if(i===void 0){i=0}var a;var o;var s=false;var c=false;var u;var l=true;inferFromTypes(r,n);function inferFromTypes(t,r){if(!couldContainTypeVariables(r)){return}if(t===Z){var f=u;u=t;inferFromTypes(r,r);u=f;return}if(t.aliasSymbol&&t.aliasTypeArguments&&t.aliasSymbol===r.aliasSymbol){var d=t.aliasTypeArguments;var p=r.aliasTypeArguments;for(var g=0;g<d.length;g++){inferFromTypes(d[g],p[g])}return}if(t.flags&1048576&&r.flags&1048576&&!(t.flags&1024&&r.flags&1024)||t.flags&2097152&&r.flags&2097152){if(t===r){for(var _=0,m=t.types;_<m.length;_++){var y=m[_];inferFromTypes(y,y)}return}var h=void 0;for(var v=0,T=t.types;v<T.length;v++){var y=T[v];if(typeIdenticalToSomeType(y,r.types)){(h||(h=[])).push(y);inferFromTypes(y,y)}else if(y.flags&(256|128)){var S=getBaseTypeOfLiteralType(y);if(typeIdenticalToSomeType(S,r.types)){(h||(h=[])).push(y,S)}}}if(h){t=removeTypesFromUnionOrIntersection(t,h);r=removeTypesFromUnionOrIntersection(r,h)}}if(r.flags&8650752){if(t.flags&536870912||t===ye||i&8&&(t===Y||t===it)){return}var b=getInferenceInfoForType(r);if(b){if(!b.isFixed){if(b.priority===undefined||i<b.priority){b.candidates=undefined;b.contraCandidates=undefined;b.priority=i}if(i===b.priority){var x=u||t;if(s&&!c){b.contraCandidates=e.appendIfUnique(b.contraCandidates,x)}else{b.candidates=e.appendIfUnique(b.candidates,x)}}if(!(i&8)&&r.flags&262144&&!isTypeParameterAtTopLevel(n,r)){b.topLevel=false}}return}else{var C=getSimplifiedType(r);if(C!==r){inferFromTypesOnce(t,C)}else if(r.flags&8388608){var E=getSimplifiedType(r.indexType);if(E.flags&63176704){var D=distributeIndexOverObjectType(getSimplifiedType(r.objectType),E);if(D&&D!==r){inferFromTypesOnce(t,D)}}}}}if(e.getObjectFlags(t)&4&&e.getObjectFlags(r)&4&&t.target===r.target){var d=t.typeArguments||e.emptyArray;var p=r.typeArguments||e.emptyArray;var k=d.length<p.length?d.length:p.length;var N=getVariances(t.target);for(var g=0;g<k;g++){if(g<N.length&&N[g]===2){inferFromContravariantTypes(d[g],p[g])}else{inferFromTypes(d[g],p[g])}}}else if(t.flags&4194304&&r.flags&4194304){s=!s;inferFromTypes(t.type,r.type);s=!s}else if((isLiteralType(t)||t.flags&4)&&r.flags&4194304){var A=createEmptyObjectTypeFromStringLiteral(t);s=!s;var O=i;i|=16;inferFromTypes(A,r.type);i=O;s=!s}else if(t.flags&8388608&&r.flags&8388608){inferFromTypes(t.objectType,r.objectType);inferFromTypes(t.indexType,r.indexType)}else if(t.flags&16777216&&r.flags&16777216){inferFromTypes(t.checkType,r.checkType);inferFromTypes(t.extendsType,r.extendsType);inferFromTypes(getTrueTypeFromConditionalType(t),getTrueTypeFromConditionalType(r));inferFromTypes(getFalseTypeFromConditionalType(t),getFalseTypeFromConditionalType(r))}else if(r.flags&16777216){inferFromTypes(t,getUnionType([getTrueTypeFromConditionalType(r),getFalseTypeFromConditionalType(r)]))}else if(r.flags&3145728){var p=r.types;var F=0;var P=void 0;for(var I=0,w=p;I<w.length;I++){var y=w[I];if(getInferenceInfoForType(y)){P=y;F++}else{inferFromTypes(t,y)}}if(F===1){var O=i;i|=1;inferFromTypes(t,P);i=O}}else if(t.flags&1048576){var d=t.types;for(var M=0,L=d;M<L.length;M++){var R=L[M];inferFromTypes(R,r)}}else{if(!(i&32&&t.flags&(2097152|63176704))){var B=getApparentType(t);if(B!==t&&l&&!(B.flags&(524288|2097152))){l=false;return inferFromTypes(B,r)}t=B}if(t.flags&(524288|2097152)){var j=t.id+","+r.id;if(o&&o.get(j)){return}(o||(o=e.createMap())).set(j,true);var J=r.flags&524288&&!(e.getObjectFlags(r)&16&&r.symbol&&r.symbol.flags&32);var W=J?r.symbol:undefined;if(W){if(e.contains(a,W)){return}(a||(a=[])).push(W);inferFromObjectTypes(t,r);a.pop()}else{inferFromObjectTypes(t,r)}}}function inferFromTypesOnce(t,r){var n=t.id+","+r.id;if(!o||!o.get(n)){(o||(o=e.createMap())).set(n,true);inferFromTypes(t,r)}}}function inferFromContravariantTypes(e,t){if(N||i&64){s=!s;inferFromTypes(e,t);s=!s}else{inferFromTypes(e,t)}}function getInferenceInfoForType(e){if(e.flags&8650752){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(e===i.typeParameter){return i}}}return undefined}function inferFromMappedTypeConstraint(t,r,n){if(n.flags&1048576){var a=false;for(var o=0,s=n.types;o<s.length;o++){var c=s[o];a=inferFromMappedTypeConstraint(t,r,c)||a}return a}if(n.flags&4194304){var u=getInferenceInfoForType(n.type);if(u&&!u.isFixed){var l=inferTypeForHomomorphicMappedType(t,r,n);if(l){var f=i;i|=2;inferFromTypes(l,u.typeParameter);i=f}}return true}if(n.flags&262144){var f=i;i|=4;inferFromTypes(getIndexType(t),n);i=f;inferFromTypes(getUnionType(e.map(getPropertiesOfType(t),getTypeOfSymbol)),getTemplateTypeFromMappedType(r));return true}return false}function inferFromObjectTypes(t,r){if(isGenericMappedType(t)&&isGenericMappedType(r)){inferFromTypes(getConstraintTypeFromMappedType(t),getConstraintTypeFromMappedType(r));inferFromTypes(getTemplateTypeFromMappedType(t),getTemplateTypeFromMappedType(r))}if(e.getObjectFlags(r)&32){var n=getConstraintTypeFromMappedType(r);if(inferFromMappedTypeConstraint(t,r,n)){return}}if(!typesDefinitelyUnrelated(t,r)){inferFromProperties(t,r);inferFromSignatures(t,r,0);inferFromSignatures(t,r,1);inferFromIndexTypes(t,r)}}function inferFromProperties(e,t){if(isTupleType(e)){if(isTupleType(t)){var r=getLengthOfTupleType(e);var n=getLengthOfTupleType(t);var i=getRestTypeOfTupleType(e);var a=getRestTypeOfTupleType(t);var o=n<r||i?n:r;for(var s=0;s<o;s++){inferFromTypes(s<r?e.typeArguments[s]:i,t.typeArguments[s])}if(a){var c=o<r?e.typeArguments.slice(o,r):[];if(i){c.push(i)}if(c.length){inferFromTypes(getUnionType(c),a)}}return}if(isArrayType(t)){inferFromIndexTypes(e,t);return}}var u=getPropertiesOfObjectType(t);for(var l=0,f=u;l<f.length;l++){var d=f[l];var p=getPropertyOfType(e,d.escapedName);if(p){inferFromTypes(getTypeOfSymbol(p),getTypeOfSymbol(d))}}}function inferFromSignatures(e,t,r){var n=getSignaturesOfType(e,r);var i=getSignaturesOfType(t,r);var a=n.length;var o=i.length;var s=a<o?a:o;var c=!!(e.flags&536870912);for(var u=0;u<s;u++){inferFromSignature(getBaseSignature(n[a-s+u]),getBaseSignature(i[o-s+u]),c)}}function inferFromSignature(e,t,r){if(!r){var n=c;var i=t.declaration?t.declaration.kind:0;c=c||i===156||i===155||i===157;forEachMatchingParameterType(e,t,inferFromContravariantTypes);c=n}var a=getTypePredicateOfSignature(e);var o=getTypePredicateOfSignature(t);if(a&&o&&a.kind===o.kind){inferFromTypes(a.type,o.type)}else{inferFromTypes(getReturnTypeOfSignature(e),getReturnTypeOfSignature(t))}}function inferFromIndexTypes(e,t){var r=getIndexTypeOfType(t,0);if(r){var n=getIndexTypeOfType(e,0)||getImplicitIndexTypeOfType(e,0);if(n){inferFromTypes(n,r)}}var i=getIndexTypeOfType(t,1);if(i){var n=getIndexTypeOfType(e,1)||getIndexTypeOfType(e,0)||getImplicitIndexTypeOfType(e,1);if(n){inferFromTypes(n,i)}}}}function typeIdenticalToSomeType(e,t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(isTypeIdenticalTo(i,e)){return true}}return false}function removeTypesFromUnionOrIntersection(e,t){var r=[];for(var n=0,i=e.types;n<i.length;n++){var a=i[n];if(!typeIdenticalToSomeType(a,t)){r.push(a)}}return e.flags&1048576?getUnionType(r):getIntersectionType(r)}function hasPrimitiveConstraint(e){var t=getConstraintOfTypeParameter(e);return!!t&&maybeTypeOfKind(t.flags&16777216?getDefaultConstraintOfConditionalType(t):t,131068|4194304)}function isObjectLiteralType(t){return!!(e.getObjectFlags(t)&128)}function widenObjectLiteralCandidates(t){if(t.length>1){var r=e.filter(t,isObjectLiteralType);if(r.length){var n=getWidenedType(getUnionType(r,2));return e.concatenate(e.filter(t,function(e){return!isObjectLiteralType(e)}),[n])}}return t}function getContravariantInference(e){return e.priority&28?getIntersectionType(e.contraCandidates):getCommonSubtype(e.contraCandidates)}function getCovariantInference(t,r){var n=widenObjectLiteralCandidates(t.candidates);var i=hasPrimitiveConstraint(t.typeParameter);var a=!i&&t.topLevel&&(t.isFixed||!isTypeParameterAtTopLevel(getReturnTypeOfSignature(r),t.typeParameter));var o=i?e.sameMap(n,getRegularTypeOfLiteralType):a?e.sameMap(n,getWidenedLiteralType):n;var s=t.priority&28?getUnionType(o,2):getCommonSupertype(o);return getWidenedType(s)}function getInferredType(e,t){var r=e.inferences[t];var n=r.inferredType;if(!n){var i=e.signature;if(i){var a=r.candidates?getCovariantInference(r,i):undefined;if(r.contraCandidates){var o=getContravariantInference(r);n=a&&!(a.flags&131072)&&isTypeSubtypeOf(a,o)?a:o}else if(a){n=a}else if(e.flags&1){n=ye}else{var s=getDefaultFromTypeParameter(r.typeParameter);if(s){n=instantiateType(s,combineTypeMappers(createBackreferenceMapper(e.signature.typeParameters,t),e))}else{n=getDefaultTypeArgumentType(!!(e.flags&2))}}}else{n=getTypeFromInference(r)}r.inferredType=n;var c=getConstraintOfTypeParameter(r.typeParameter);if(c){var u=instantiateType(c,e);if(!e.compareTypes(n,getTypeWithThisArgument(u,n))){r.inferredType=n=u}}}return n}function getDefaultTypeArgumentType(e){return e?X:xe}function getInferredTypes(e){var t=[];for(var r=0;r<e.inferences.length;r++){t.push(getInferredType(e,r))}return t}function getCannotFindNameDiagnosticForName(t){switch(t){case"document":case"console":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_include_dom;case"$":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_jQuery_Try_npm_i_types_Slashjquery_and_then_add_jquery_to_the_types_field_in_your_tsconfig;case"describe":case"suite":case"it":case"test":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_a_test_runner_Try_npm_i_types_Slashjest_or_npm_i_types_Slashmocha_and_then_add_jest_or_mocha_to_the_types_field_in_your_tsconfig;case"process":case"require":case"Buffer":case"module":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_install_type_definitions_for_node_Try_npm_i_types_Slashnode_and_then_add_node_to_the_types_field_in_your_tsconfig;case"Map":case"Set":case"Promise":case"Symbol":case"WeakMap":case"WeakSet":case"Iterator":case"AsyncIterator":return e.Diagnostics.Cannot_find_name_0_Do_you_need_to_change_your_target_library_Try_changing_the_lib_compiler_option_to_es2015_or_later;default:return e.Diagnostics.Cannot_find_name_0}}function getResolvedSymbol(t){var r=getNodeLinks(t);if(!r.resolvedSymbol){r.resolvedSymbol=!e.nodeIsMissing(t)&&resolveName(t,t.escapedText,67220415|1048576,getCannotFindNameDiagnosticForName(t.escapedText),t,!e.isWriteOnlyAccess(t),false,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1)||Q}return r.resolvedSymbol}function isInTypeQuery(t){return!!e.findAncestor(t,function(e){return e.kind===167?true:e.kind===72||e.kind===148?false:"quit"})}function getFlowCacheKey(t){if(t.kind===72){var r=getResolvedSymbol(t);return r!==Q?(isConstraintPosition(t)?"@":"")+getSymbolId(r):undefined}if(t.kind===100){return"0"}if(t.kind===189){var n=getFlowCacheKey(t.expression);return n&&n+"."+e.idText(t.name)}if(t.kind===186){var i=t.parent.parent;var n=i.kind===186?getFlowCacheKey(i):i.initializer&&getFlowCacheKey(i.initializer);var a=getBindingElementNameText(t);var o=n&&a&&n+"."+a;return o}return undefined}function getBindingElementNameText(t){var r=t.parent;if(r.kind===184){var n=t.propertyName||t.name;switch(n.kind){case 72:return e.idText(n);case 149:return e.isStringOrNumericLiteralLike(n.expression)?n.expression.text:undefined;case 10:case 8:return n.text;default:e.Debug.fail("Unexpected name kind for binding element name")}}else{return""+r.elements.indexOf(t)}}function isMatchingReference(t,r){switch(t.kind){case 72:return r.kind===72&&getResolvedSymbol(t)===getResolvedSymbol(r)||(r.kind===237||r.kind===186)&&getExportSymbolOfValueSymbolIfExported(getResolvedSymbol(t))===getSymbolOfNode(r);case 100:return r.kind===100;case 98:return r.kind===98;case 189:case 190:return(e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r))&&getAccessedPropertyName(t)===getAccessedPropertyName(r)&&isMatchingReference(t.expression,r.expression);case 186:if(r.kind!==189)return false;var n=r;if(n.name.escapedText!==getBindingElementNameText(t))return false;if(t.parent.parent.kind===186&&isMatchingReference(t.parent.parent,n.expression)){return true}if(t.parent.parent.kind===237){var i=t.parent.parent.initializer;return!!i&&isMatchingReference(i,n.expression)}}return false}function getAccessedPropertyName(t){return e.isPropertyAccessExpression(t)?t.name.escapedText:e.isStringLiteral(t.argumentExpression)||e.isNumericLiteral(t.argumentExpression)?e.escapeLeadingUnderscores(t.argumentExpression.text):undefined}function containsMatchingReference(e,t){while(e.kind===189){e=e.expression;if(isMatchingReference(e,t)){return true}}return false}function containsMatchingReferenceDiscriminant(e,t){return t.kind===189&&containsMatchingReference(e,t.expression)&&isDiscriminantProperty(getDeclaredTypeOfReference(t.expression),t.name.escapedText)}function getDeclaredTypeOfReference(e){if(e.kind===72){return getTypeOfSymbol(getResolvedSymbol(e))}if(e.kind===189){var t=getDeclaredTypeOfReference(e.expression);return t&&getTypeOfPropertyOfType(t,e.name.escapedText)}return undefined}function isDiscriminantType(e){if(e.flags&1048576){if(e.flags&(16|1024)){return true}var t=0;for(var r=0,n=e.types;r<n.length;r++){var i=n[r];t|=i.flags}if(t&109440&&!(t&63176704)){return true}}return false}function isDiscriminantProperty(t,r){if(t&&t.flags&1048576){var n=getUnionOrIntersectionProperty(t,r);if(n&&e.getCheckFlags(n)&2){if(n.isDiscriminantProperty===undefined){n.isDiscriminantProperty=!!(n.checkFlags&32)&&isDiscriminantType(getTypeOfSymbol(n))}return!!n.isDiscriminantProperty}}return false}function hasNarrowableDeclaredType(e){var t=getDeclaredTypeOfReference(e);return!!(t&&t.flags&1048576)}function findDiscriminantProperties(e,t){var r;for(var n=0,i=e;n<i.length;n++){var a=i[n];if(isDiscriminantProperty(t,a.escapedName)){if(r){r.push(a);continue}r=[a]}}return r}function isOrContainsMatchingReference(e,t){return isMatchingReference(e,t)||containsMatchingReference(e,t)}function hasMatchingArgument(e,t){if(e.arguments){for(var r=0,n=e.arguments;r<n.length;r++){var i=n[r];if(isOrContainsMatchingReference(t,i)){return true}}}if(e.expression.kind===189&&isOrContainsMatchingReference(t,e.expression.expression)){return true}return false}function getFlowNodeId(e){if(!e.id){e.id=s;s++}return e.id}function typeMaybeAssignableTo(e,t){if(!(e.flags&1048576)){return isTypeAssignableTo(e,t)}for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(isTypeAssignableTo(i,t)){return true}}return false}function getAssignmentReducedType(e,t){if(e!==t){if(t.flags&131072){return t}var r=filterType(e,function(e){return typeMaybeAssignableTo(t,e)});if(t.flags&512&&isFreshLiteralType(t)){r=mapType(r,getFreshTypeOfLiteralType)}if(isTypeAssignableTo(t,r)){return r}}return e}function getTypeFactsOfTypes(e){var t=0;for(var r=0,n=e;r<n.length;r++){var i=n[r];t|=getTypeFacts(i)}return t}function isFunctionObjectType(e){var t=resolveStructuredTypeMembers(e);return!!(t.callSignatures.length||t.constructSignatures.length||t.members.get("bind")&&isTypeSubtypeOf(e,Ge))}function getTypeFacts(t){var r=t.flags;if(r&4){return k?16317953:16776705}if(r&128){var n=t.value==="";return k?n?12123649:7929345:n?12582401:16776705}if(r&(8|32)){return k?16317698:16776450}if(r&256){var i=t.value===0;return k?i?12123394:7929090:i?12582146:16776450}if(r&64){return k?16317188:16775940}if(r&2048){var i=isZeroBigInt(t);return k?i?12122884:7928580:i?12581636:16775940}if(r&16){return k?16316168:16774920}if(r&528){return k?t===ue||t===le?12121864:7927560:t===ue||t===le?12580616:16774920}if(r&524288){return e.getObjectFlags(t)&16&&isEmptyObjectType(t)?k?16318463:16777215:isFunctionObjectType(t)?k?7880640:16728e3:k?7888800:16736160}if(r&(16384|32768)){return 9830144}if(r&65536){return 9363232}if(r&12288){return k?7925520:16772880}if(r&67108864){return k?7888800:16736160}if(r&63176704){return getTypeFacts(getBaseConstraintOfType(t)||xe)}if(r&3145728){return getTypeFactsOfTypes(t.types)}return 16777215}function getTypeWithFacts(e,t){return filterType(e,function(e){return(getTypeFacts(e)&t)!==0})}function getTypeWithDefault(e,t){if(t){var r=getTypeOfExpression(t);return getUnionType([getTypeWithFacts(e,524288),r])}return e}function getTypeOfDestructuredProperty(t,r){var n=e.getTextOfPropertyName(r);return getConstraintForLocation(getTypeOfPropertyOfType(t,n),r)||isNumericLiteralName(n)&&getIndexTypeOfType(t,1)||getIndexTypeOfType(t,0)||ee}function getTypeOfDestructuredArrayElement(e,t){return everyType(e,isTupleLikeType)&&getTupleElementType(e,t)||checkIteratedTypeOrElementType(e,undefined,false,false)||ee}function getTypeOfDestructuredSpreadExpression(e){return createArrayType(checkIteratedTypeOrElementType(e,undefined,false,false)||ee)}function getAssignedTypeOfBinaryExpression(e){var t=e.parent.kind===187&&isDestructuringAssignmentTarget(e.parent)||e.parent.kind===275&&isDestructuringAssignmentTarget(e.parent.parent);return t?getTypeWithDefault(getAssignedType(e),e.right):getTypeOfExpression(e.right)}function isDestructuringAssignmentTarget(e){return e.parent.kind===204&&e.parent.left===e||e.parent.kind===227&&e.parent.initializer===e}function getAssignedTypeOfArrayLiteralElement(e,t){return getTypeOfDestructuredArrayElement(getAssignedType(e),e.elements.indexOf(t))}function getAssignedTypeOfSpreadExpression(e){return getTypeOfDestructuredSpreadExpression(getAssignedType(e.parent))}function getAssignedTypeOfPropertyAssignment(e){return getTypeOfDestructuredProperty(getAssignedType(e.parent),e.name)}function getAssignedTypeOfShorthandPropertyAssignment(e){return getTypeWithDefault(getAssignedTypeOfPropertyAssignment(e),e.objectAssignmentInitializer)}function getAssignedType(e){var t=e.parent;switch(t.kind){case 226:return oe;case 227:return checkRightHandSideOfForOf(t.expression,t.awaitModifier)||ee;case 204:return getAssignedTypeOfBinaryExpression(t);case 198:return re;case 187:return getAssignedTypeOfArrayLiteralElement(t,e);case 208:return getAssignedTypeOfSpreadExpression(t);case 275:return getAssignedTypeOfPropertyAssignment(t);case 276:return getAssignedTypeOfShorthandPropertyAssignment(t)}return ee}function getInitialTypeOfBindingElement(e){var t=e.parent;var r=getInitialType(t.parent);var n=t.kind===184?getTypeOfDestructuredProperty(r,e.propertyName||e.name):!e.dotDotDotToken?getTypeOfDestructuredArrayElement(r,t.elements.indexOf(e)):getTypeOfDestructuredSpreadExpression(r);return getTypeWithDefault(n,e.initializer)}function getTypeOfInitializer(e){var t=getNodeLinks(e);return t.resolvedType||getTypeOfExpression(e)}function getInitialTypeOfVariableDeclaration(e){if(e.initializer){return getTypeOfInitializer(e.initializer)}if(e.parent.parent.kind===226){return oe}if(e.parent.parent.kind===227){return checkRightHandSideOfForOf(e.parent.parent.expression,e.parent.parent.awaitModifier)||ee}return ee}function getInitialType(e){return e.kind===237?getInitialTypeOfVariableDeclaration(e):getInitialTypeOfBindingElement(e)}function getInitialOrAssignedType(e,t){return getConstraintForLocation(e.kind===237||e.kind===186?getInitialType(e):getAssignedType(e),t)}function isEmptyArrayAssignment(e){return e.kind===237&&e.initializer&&isEmptyArrayLiteral(e.initializer)||e.kind!==186&&e.parent.kind===204&&isEmptyArrayLiteral(e.parent.right)}function getReferenceCandidate(e){switch(e.kind){case 195:return getReferenceCandidate(e.expression);case 204:switch(e.operatorToken.kind){case 59:return getReferenceCandidate(e.left);case 27:return getReferenceCandidate(e.right)}}return e}function getReferenceRoot(e){var t=e.parent;return t.kind===195||t.kind===204&&t.operatorToken.kind===59&&t.left===e||t.kind===204&&t.operatorToken.kind===27&&t.right===e?getReferenceRoot(t):e}function getTypeOfSwitchClause(e){if(e.kind===271){return getRegularTypeOfLiteralType(getTypeOfExpression(e.expression))}return me}function getSwitchClauseTypes(e){var t=getNodeLinks(e);if(!t.switchTypes){t.switchTypes=[];for(var r=0,n=e.caseBlock.clauses;r<n.length;r++){var i=n[r];t.switchTypes.push(getTypeOfSwitchClause(i))}}return t.switchTypes}function getSwitchClauseTypeOfWitnesses(t){var r=[];for(var n=0,i=t.caseBlock.clauses;n<i.length;n++){var a=i[n];if(a.kind===271){if(a.expression.kind===10){r.push(a.expression.text);continue}return e.emptyArray}r.push(undefined)}return r}function eachTypeContainedIn(t,r){return t.flags&1048576?!e.forEach(t.types,function(t){return!e.contains(r,t)}):e.contains(r,t)}function isTypeSubsetOf(e,t){return e===t||t.flags&1048576&&isTypeSubsetOfUnion(e,t)}function isTypeSubsetOfUnion(e,t){if(e.flags&1048576){for(var r=0,n=e.types;r<n.length;r++){var i=n[r];if(!containsType(t.types,i)){return false}}return true}if(e.flags&1024&&getBaseTypeOfEnumLiteralType(e)===t){return true}return containsType(t.types,e)}function forEachType(t,r){return t.flags&1048576?e.forEach(t.types,r):r(t)}function everyType(t,r){return t.flags&1048576?e.every(t.types,r):r(t)}function filterType(t,r){if(t.flags&1048576){var n=t.types;var i=e.filter(n,r);return i===n?t:getUnionTypeFromSortedList(i,t.primitiveTypesOnly)}return r(t)?t:me}function mapType(e,t,r){if(e.flags&131072){return e}if(!(e.flags&1048576)){return t(e)}var n=e.types;var i;var a;for(var o=0,s=n;o<s.length;o++){var c=s[o];var u=t(c);if(u){if(!i){i=u}else if(!a){a=[i,u]}else{a.push(u)}}}return a?getUnionType(a,r?0:1):i}function extractTypesOfKind(e,t){return filterType(e,function(e){return(e.flags&t)!==0})}function replacePrimitivesWithLiterals(e,t){if(isTypeSubsetOf(oe,e)&&maybeTypeOfKind(t,128)||isTypeSubsetOf(se,e)&&maybeTypeOfKind(t,256)||isTypeSubsetOf(ce,e)&&maybeTypeOfKind(t,2048)){return mapType(e,function(e){return e.flags&4?extractTypesOfKind(t,4|128):e.flags&8?extractTypesOfKind(t,8|256):e.flags&64?extractTypesOfKind(t,64|2048):e})}return e}function isIncomplete(e){return e.flags===0}function getTypeFromFlowType(e){return e.flags===0?e.type:e}function createFlowType(e,t){return t?{flags:0,type:e}:e}function createEvolvingArrayType(e){var t=createObjectType(256);t.elementType=e;return t}function getEvolvingArrayType(e){return G[e.id]||(G[e.id]=createEvolvingArrayType(e))}function addEvolvingArrayElementType(e,t){var r=getBaseTypeOfLiteralType(getContextFreeTypeOfExpression(t));return isTypeSubsetOf(r,e.elementType)?e:getEvolvingArrayType(getUnionType([e.elementType,r]))}function createFinalArrayType(e){return e.flags&131072?it:createArrayType(e.flags&1048576?getUnionType(e.types,2):e)}function getFinalArrayType(e){return e.finalArrayType||(e.finalArrayType=createFinalArrayType(e.elementType))}function finalizeEvolvingArrayType(t){return e.getObjectFlags(t)&256?getFinalArrayType(t):t}function getElementTypeOfEvolvingArrayType(t){return e.getObjectFlags(t)&256?t.elementType:me}function isEvolvingArrayTypeList(t){var r=false;for(var n=0,i=t;n<i.length;n++){var a=i[n];if(!(a.flags&131072)){if(!(e.getObjectFlags(a)&256)){return false}r=true}}return r}function getUnionOrEvolvingArrayType(t,r){return isEvolvingArrayTypeList(t)?getEvolvingArrayType(getUnionType(e.map(t,getElementTypeOfEvolvingArrayType))):getUnionType(e.sameMap(t,finalizeEvolvingArrayType),r)}function isEvolvingArrayOperationTarget(t){var r=getReferenceRoot(t);var n=r.parent;var i=n.kind===189&&(n.name.escapedText==="length"||n.parent.kind===191&&e.isPushOrUnshiftIdentifier(n.name));var a=n.kind===190&&n.expression===r&&n.parent.kind===204&&n.parent.operatorToken.kind===59&&n.parent.left===n&&!e.isAssignmentTarget(n.parent)&&isTypeAssignableToKind(getTypeOfExpression(n.argumentExpression),296);return i||a}function maybeTypePredicateCall(e){var t=getNodeLinks(e);if(t.maybeTypePredicate===undefined){t.maybeTypePredicate=getMaybeTypePredicate(e)}return t.maybeTypePredicate}function getMaybeTypePredicate(t){if(t.expression.kind!==98){var r=checkNonNullExpression(t.expression);if(r!==ye){var n=getApparentType(r);return n!==ee&&e.some(getSignaturesOfType(n,0),signatureHasTypePredicate)}}return false}function reportFlowControlError(t){var r=e.findAncestor(t,e.isFunctionOrModuleBlock);var n=e.getSourceFileOfNode(t);var i=e.getSpanOfTokenAtPosition(n,r.statements.pos);Xt.add(e.createFileDiagnostic(n,i.start,i.length,e.Diagnostics.The_containing_function_or_module_body_is_too_large_for_control_flow_analysis))}function getFlowTypeOfReference(t,r,n,i,a){if(n===void 0){n=r}var o;var s=0;if(Ot){return ee}if(!t.flowNode||!a&&!(r.flags&133970943)){return r}var c=At;var u=getTypeFromFlowType(getTypeAtFlowNode(t.flowNode));At=c;var l=e.getObjectFlags(u)&256&&isEvolvingArrayOperationTarget(t)?it:finalizeEvolvingArrayType(u);if(t.parent&&t.parent.kind===213&&getTypeWithFacts(l,2097152).flags&131072){return r}return l;function getTypeAtFlowNode(e){if(s===2e3){Ot=true;reportFlowControlError(t);return ee}s++;while(true){var a=e.flags;if(a&1024){for(var o=c;o<At;o++){if(qt[o]===e){s--;return Gt[o]}}}var u=void 0;if(a&4096){e.locked=true;u=getTypeAtFlowNode(e.antecedent);e.locked=false}else if(a&2048){e=e.antecedent;continue}else if(a&16){u=getTypeAtFlowAssignment(e);if(!u){e=e.antecedent;continue}}else if(a&96){u=getTypeAtFlowCondition(e)}else if(a&128){u=getTypeAtSwitchClause(e)}else if(a&12){if(e.antecedents.length===1){e=e.antecedents[0];continue}u=a&4?getTypeAtFlowBranchLabel(e):getTypeAtFlowLoopLabel(e)}else if(a&256){u=getTypeAtFlowArrayMutation(e);if(!u){e=e.antecedent;continue}}else if(a&2){var l=e.container;if(l&&l!==i&&t.kind!==189&&t.kind!==190&&t.kind!==100){e=l.flowNode;continue}u=n}else{u=convertAutoToAny(r)}if(a&1024){qt[At]=e;Gt[At]=u;At++}s--;return u}}function getTypeAtFlowAssignment(n){var i=n.node;if(isMatchingReference(t,i)){if(e.getAssignmentTargetKind(i)===2){var a=getTypeAtFlowNode(n.antecedent);return createFlowType(getBaseTypeOfLiteralType(getTypeFromFlowType(a)),isIncomplete(a))}if(r===Y||r===it){if(isEmptyArrayAssignment(i)){return getEvolvingArrayType(me)}var o=getBaseTypeOfLiteralType(getInitialOrAssignedType(i,t));return isTypeAssignableTo(o,r)?o:nt}if(r.flags&1048576){return getAssignmentReducedType(r,getInitialOrAssignedType(i,t))}return r}if(containsMatchingReference(t,i)){if(e.isVariableDeclaration(i)&&(e.isInJSFile(i)||e.isVarConst(i))){var s=e.getDeclaredExpandoInitializer(i);if(s&&(s.kind===196||s.kind===197)){return getTypeAtFlowNode(n.antecedent)}}return r}if(e.isVariableDeclaration(i)&&i.parent.parent.kind===226&&isMatchingReference(t,i.parent.parent.expression)){return getNonNullableTypeIfNeeded(getTypeFromFlowType(getTypeAtFlowNode(n.antecedent)))}return undefined}function getTypeAtFlowArrayMutation(n){if(r===Y||r===it){var i=n.node;var a=i.kind===191?i.expression.expression:i.left.expression;if(isMatchingReference(t,getReferenceCandidate(a))){var o=getTypeAtFlowNode(n.antecedent);var s=getTypeFromFlowType(o);if(e.getObjectFlags(s)&256){var c=s;if(i.kind===191){for(var u=0,l=i.arguments;u<l.length;u++){var f=l[u];c=addEvolvingArrayElementType(c,f)}}else{var d=getContextFreeTypeOfExpression(i.left.argumentExpression);if(isTypeAssignableToKind(d,296)){c=addEvolvingArrayElementType(c,i.right)}}return c===s?o:createFlowType(c,isIncomplete(o))}return o}}return undefined}function getTypeAtFlowCondition(e){var t=getTypeAtFlowNode(e.antecedent);var r=getTypeFromFlowType(t);if(r.flags&131072){return t}var n=(e.flags&32)!==0;var i=finalizeEvolvingArrayType(r);var a=narrowType(i,e.expression,n);if(a===i){return t}var o=isIncomplete(t);var s=o&&a.flags&131072?ye:a;return createFlowType(s,o)}function getTypeAtSwitchClause(e){var n=e.switchStatement.expression;if(containsMatchingReferenceDiscriminant(t,n)){return r}var i=getTypeAtFlowNode(e.antecedent);var a=getTypeFromFlowType(i);if(isMatchingReference(t,n)){a=narrowTypeBySwitchOnDiscriminant(a,e.switchStatement,e.clauseStart,e.clauseEnd)}else if(isMatchingReferenceDiscriminant(n,a)){a=narrowTypeByDiscriminant(a,n,function(t){return narrowTypeBySwitchOnDiscriminant(t,e.switchStatement,e.clauseStart,e.clauseEnd)})}else if(n.kind===199&&isMatchingReference(t,n.expression)){a=narrowBySwitchOnTypeOf(a,e.switchStatement,e.clauseStart,e.clauseEnd)}return createFlowType(a,isIncomplete(i))}function getTypeAtFlowBranchLabel(t){var i=[];var a=false;var o=false;for(var s=0,c=t.antecedents;s<c.length;s++){var u=c[s];if(u.flags&2048&&u.lock.locked){continue}var l=getTypeAtFlowNode(u);var f=getTypeFromFlowType(l);if(f===r&&r===n){return f}e.pushIfUnique(i,f);if(!isTypeSubsetOf(f,r)){a=true}if(isIncomplete(l)){o=true}}return createFlowType(getUnionOrEvolvingArrayType(i,a?2:1),o)}function getTypeAtFlowLoopLabel(n){var i=getFlowNodeId(n);var a=Ut[i]||(Ut[i]=e.createMap());if(!o){o=getFlowCacheKey(t);if(!o){return r}}var s=a.get(o);if(s){return s}for(var c=kt;c<Nt;c++){if(zt[c]===n&&Vt[c]===o&&Kt[c].length){return createFlowType(getUnionOrEvolvingArrayType(Kt[c],1),true)}}var u=[];var l=false;var f;zt[Nt]=n;Vt[Nt]=o;Kt[Nt]=u;for(var d=0,p=n.antecedents;d<p.length;d++){var g=p[d];Nt++;var _=getTypeAtFlowNode(g);Nt--;if(!f){f=_}var m=getTypeFromFlowType(_);var y=a.get(o);if(y){return y}e.pushIfUnique(u,m);if(!isTypeSubsetOf(m,r)){l=true}if(m===r){break}}var h=getUnionOrEvolvingArrayType(u,l?2:1);if(isIncomplete(f)){return createFlowType(h,true)}a.set(o,h);return h}function isMatchingReferenceDiscriminant(e,r){if(!(r.flags&1048576)||e.kind!==189&&e.kind!==190){return false}var n=e;var i=getAccessedPropertyName(n);if(!i){return false}return isMatchingReference(t,n.expression)&&isDiscriminantProperty(r,i)}function narrowTypeByDiscriminant(e,t,r){var n=getAccessedPropertyName(t);if(!n){return e}var i=getTypeOfPropertyOfType(e,n);var a=i&&r(i);return i===a?e:filterType(e,function(e){return isTypeComparableTo(getTypeOfPropertyOfType(e,n),a)})}function narrowTypeByTruthiness(e,n,i){if(isMatchingReference(t,n)){return getTypeWithFacts(e,i?4194304:8388608)}if(isMatchingReferenceDiscriminant(n,r)){return narrowTypeByDiscriminant(e,n,function(e){return getTypeWithFacts(e,i?4194304:8388608)})}if(containsMatchingReferenceDiscriminant(t,n)){return r}return e}function isTypePresencePossible(e,t,r){if(getIndexInfoOfType(e,0)){return true}var n=getPropertyOfType(e,t);if(n){return n.flags&16777216?true:r}return!r}function narrowByInKeyword(t,r,n){if(t.flags&(1048576|524288)||t.flags&262144&&t.isThisType){var i=e.escapeLeadingUnderscores(r.text);return filterType(t,function(e){return isTypePresencePossible(e,i,n)})}return t}function narrowTypeByBinaryExpression(n,i,a){switch(i.operatorToken.kind){case 59:return narrowTypeByTruthiness(n,i.left,a);case 33:case 34:case 35:case 36:var o=i.operatorToken.kind;var s=getReferenceCandidate(i.left);var c=getReferenceCandidate(i.right);if(s.kind===199&&e.isStringLiteralLike(c)){return narrowTypeByTypeof(n,s,o,c,a)}if(c.kind===199&&e.isStringLiteralLike(s)){return narrowTypeByTypeof(n,c,o,s,a)}if(isMatchingReference(t,s)){return narrowTypeByEquality(n,o,c,a)}if(isMatchingReference(t,c)){return narrowTypeByEquality(n,o,s,a)}if(isMatchingReferenceDiscriminant(s,r)){return narrowTypeByDiscriminant(n,s,function(e){return narrowTypeByEquality(e,o,c,a)})}if(isMatchingReferenceDiscriminant(c,r)){return narrowTypeByDiscriminant(n,c,function(e){return narrowTypeByEquality(e,o,s,a)})}if(containsMatchingReferenceDiscriminant(t,s)||containsMatchingReferenceDiscriminant(t,c)){return r}break;case 94:return narrowTypeByInstanceof(n,i,a);case 93:var u=getReferenceCandidate(i.right);if(e.isStringLiteralLike(i.left)&&isMatchingReference(t,u)){return narrowByInKeyword(n,i.left,a)}break;case 27:return narrowType(n,i.right,a)}return n}function narrowTypeByEquality(e,t,r,n){if(e.flags&1){return e}if(t===34||t===36){n=!n}var i=getTypeOfExpression(r);if(i.flags&98304){if(!k){return e}var a=t===33||t===34;var o=a?n?262144:2097152:i.flags&65536?n?131072:1048576:n?65536:524288;return getTypeWithFacts(e,o)}if(e.flags&67637251){return e}if(n){var s=filterType(e,function(e){return areTypesComparable(e,i)});return s.flags&131072?e:replacePrimitivesWithLiterals(s,i)}if(isUnitType(i)){var c=getRegularTypeOfLiteralType(i);return filterType(e,function(e){return getRegularTypeOfLiteralType(e)!==c})}return e}function narrowTypeByTypeof(e,n,i,a,o){var s=getReferenceCandidate(n.expression);if(!isMatchingReference(t,s)){if(containsMatchingReference(t,s)&&hasNarrowableDeclaredType(s)){return r}return e}if(i===34||i===36){o=!o}if(e.flags&1&&a.text==="function"){return e}var c=o?er.get(a.text)||128:tr.get(a.text)||32768;return getTypeWithFacts(o?mapType(e,narrowTypeForTypeof):e,c);function narrowTypeForTypeof(e){if(e.flags&2&&a.text==="object"){return getUnionType([ve,ie])}var t=a.text==="function"?Ge:rr.get(a.text);if(t){if(isTypeSubtypeOf(e,t)){return e}if(isTypeSubtypeOf(t,e)){return t}if(e.flags&63176704){var r=getBaseConstraintOfType(e)||X;if(isTypeSubtypeOf(t,r)){return getIntersectionType([e,t])}}}return e}}function narrowTypeBySwitchOnDiscriminant(t,r,n,i){var a=getSwitchClauseTypes(r);if(!a.length){return t}var o=a.slice(n,i);var s=n===i||e.contains(o,me);var c=getUnionType(o);var u=c.flags&131072?me:replacePrimitivesWithLiterals(filterType(t,function(e){return areTypesComparable(c,e)}),c);if(!s){return u}var l=filterType(t,function(t){return!(isUnitType(t)&&e.contains(a,getRegularTypeOfLiteralType(t)))});return u.flags&131072?l:getUnionType([u,l])}function getImpliedTypeFromTypeofCase(e,t){switch(t){case"function":return e.flags&1?e:Ge;case"object":return e.flags&2?getUnionType([ve,ie]):e;default:return rr.get(t)||e}}function narrowTypeForTypeofSwitch(e){return function(t){if(isTypeSubtypeOf(e,t)){return e}if(t.flags&63176704){var r=getBaseConstraintOfType(t)||X;if(isTypeSubtypeOf(e,r)){return getIntersectionType([t,e])}}return t}}function narrowBySwitchOnTypeOf(t,r,n,i){var a=getSwitchClauseTypeOfWitnesses(r);if(!a.length){return t}var o=e.findIndex(a,function(e){return e===undefined});var s=n===i||o>=n&&o<i;var c;var u;if(o>-1){var l=a.filter(function(e){return e!==undefined});var f=o<n?n-1:n;var d=o<i?i-1:i;c=l.slice(f,d);u=getFactsFromTypeofSwitch(f,d,l,s)}else{c=a.slice(n,i);u=getFactsFromTypeofSwitch(n,i,a,s)}if(s){return filterType(t,function(e){return(getTypeFacts(e)&u)===u})}var p=getTypeWithFacts(getUnionType(c.map(function(e){return getImpliedTypeFromTypeofCase(t,e)})),u);if(p.flags&1048576){p=getAssignmentReducedType(p,getBaseConstraintOrType(t))}return getTypeWithFacts(mapType(t,narrowTypeForTypeofSwitch(p)),u)}function narrowTypeByInstanceof(n,i,a){var o=getReferenceCandidate(i.left);if(!isMatchingReference(t,o)){if(containsMatchingReference(t,o)&&hasNarrowableDeclaredType(o)){return r}return n}var s=getTypeOfExpression(i.right);if(!isTypeDerivedFrom(s,Ge)){return n}var c;var u=getPropertyOfType(s,"prototype");if(u){var l=getTypeOfSymbol(u);if(!isTypeAny(l)){c=l}}if(isTypeAny(n)&&(c===qe||c===Ge)){return n}if(!c){var f=getSignaturesOfType(s,1);c=f.length?getUnionType(e.map(f,function(e){return getReturnTypeOfSignature(getErasedSignature(e))})):xe}return getNarrowedType(n,c,a,isTypeDerivedFrom)}function getNarrowedType(e,t,r,n){if(!r){return filterType(e,function(e){return!n(e,t)})}if(e.flags&1048576){var i=filterType(e,function(e){return n(e,t)});if(!(i.flags&131072)){return i}}return isTypeSubtypeOf(t,e)?t:isTypeAssignableTo(e,t)?e:isTypeAssignableTo(t,e)?t:getIntersectionType([e,t])}function narrowTypeByTypePredicate(n,i,a){if(!hasMatchingArgument(i,t)||!maybeTypePredicateCall(i)){return n}var o=getResolvedSignature(i);var s=getTypePredicateOfSignature(o);if(!s){return n}if(isTypeAny(n)&&(s.type===qe||s.type===Ge)){return n}if(e.isIdentifierTypePredicate(s)){var c=i.arguments[s.parameterIndex-(o.thisParameter?1:0)];if(c){if(isMatchingReference(t,c)){return getNarrowedType(n,s.type,a,isTypeSubtypeOf)}if(containsMatchingReference(t,c)){return r}}}else{var u=e.skipParentheses(i.expression);if(u.kind===190||u.kind===189){var l=u;var f=e.skipParentheses(l.expression);if(isMatchingReference(t,f)){return getNarrowedType(n,s.type,a,isTypeSubtypeOf)}if(containsMatchingReference(t,f)){return r}}}return n}function narrowType(e,t,r){switch(t.kind){case 72:case 100:case 98:case 189:case 190:return narrowTypeByTruthiness(e,t,r);case 191:return narrowTypeByTypePredicate(e,t,r);case 195:return narrowType(e,t.expression,r);case 204:return narrowTypeByBinaryExpression(e,t,r);case 202:if(t.operator===52){return narrowType(e,t.operand,!r)}break}return e}}function getTypeOfSymbolAtLocation(t,r){t=t.exportSymbol||t;if(r.kind===72){if(e.isRightSideOfQualifiedNameOrPropertyAccess(r)){r=r.parent}if(e.isExpressionNode(r)&&!e.isAssignmentTarget(r)){var n=getTypeOfExpression(r);if(getExportSymbolOfValueSymbolIfExported(getNodeLinks(r).resolvedSymbol)===t){return n}}}return getTypeOfSymbol(t)}function getControlFlowContainer(t){return e.findAncestor(t.parent,function(t){return e.isFunctionLike(t)&&!e.getImmediatelyInvokedFunctionExpression(t)||t.kind===245||t.kind===279||t.kind===154})}function isParameterAssigned(t){var r=e.getRootDeclaration(t.valueDeclaration).parent;var n=getNodeLinks(r);if(!(n.flags&8388608)){n.flags|=8388608;if(!hasParentWithAssignmentsMarked(r)){markParameterAssignments(r)}}return t.isAssigned||false}function hasParentWithAssignmentsMarked(t){return!!e.findAncestor(t.parent,function(t){return e.isFunctionLike(t)&&!!(getNodeLinks(t).flags&8388608)})}function markParameterAssignments(t){if(t.kind===72){if(e.isAssignmentTarget(t)){var r=getResolvedSymbol(t);if(r.valueDeclaration&&e.getRootDeclaration(r.valueDeclaration).kind===151){r.isAssigned=true}}}else{e.forEachChild(t,markParameterAssignments)}}function isConstVariable(e){return e.flags&3&&(getDeclarationNodeFlagsFromSymbol(e)&2)!==0&&getTypeOfSymbol(e)!==it}function removeOptionalityFromDeclaredType(e,t){var r=k&&t.kind===151&&t.initializer&&getFalsyFlags(e)&32768&&!(getFalsyFlags(checkExpression(t.initializer))&32768);return r?getTypeWithFacts(e,524288):e}function isConstraintPosition(e){var t=e.parent;return t.kind===189||t.kind===191&&t.expression===e||t.kind===190&&t.expression===e||t.kind===186&&t.name===e&&!!t.initializer}function typeHasNullableConstraint(e){return e.flags&58982400&&maybeTypeOfKind(getBaseConstraintOfType(e)||xe,98304)}function getConstraintForLocation(e,t){if(e&&isConstraintPosition(t)&&forEachType(e,typeHasNullableConstraint)){return mapType(getWidenedType(e),getBaseConstraintOrType)}return e}function markAliasReferenced(e,t){if(isNonLocalAlias(e,67220415)&&!isInTypeQuery(t)&&!isConstEnumOrConstEnumOnlyModule(resolveAlias(e))){markAliasSymbolAsReferenced(e)}}function checkIdentifier(t){var r=getResolvedSymbol(t);if(r===Q){return ee}if(r===B){var n=e.getContainingFunction(t);if(C<2){if(n.kind===197){error(t,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_arrow_function_in_ES3_and_ES5_Consider_using_a_standard_function_expression)}else if(e.hasModifier(n,256)){error(t,e.Diagnostics.The_arguments_object_cannot_be_referenced_in_an_async_function_or_method_in_ES3_and_ES5_Consider_using_a_standard_function_or_method)}}getNodeLinks(n).flags|=8192;return getTypeOfSymbol(r)}if(!(t.parent&&e.isPropertyAccessExpression(t.parent)&&t.parent.expression===t)){markAliasReferenced(r,t)}var i=getExportSymbolOfValueSymbolIfExported(r);var a=i.valueDeclaration;if(i.flags&32){if(a.kind===240&&e.nodeIsDecorated(a)){var n=e.getContainingClass(t);while(n!==undefined){if(n===a&&n.name!==t){getNodeLinks(a).flags|=16777216;getNodeLinks(t).flags|=33554432;break}n=e.getContainingClass(n)}}else if(a.kind===209){var n=e.getThisContainer(t,false);while(n.kind!==279){if(n.parent===a){if(n.kind===154&&e.hasModifier(n,32)){getNodeLinks(a).flags|=16777216;getNodeLinks(t).flags|=33554432}break}n=e.getThisContainer(n,false)}}}checkNestedBlockScopedBinding(t,r);var o=getConstraintForLocation(getTypeOfSymbol(i),t);var s=e.getAssignmentTargetKind(t);if(s){if(!(i.flags&3)&&!(e.isInJSFile(t)&&i.flags&512)){error(t,e.Diagnostics.Cannot_assign_to_0_because_it_is_not_a_variable,symbolToString(r));return ee}if(isReadonlySymbol(i)){if(i.flags&3){error(t,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_constant,symbolToString(r))}else{error(t,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,symbolToString(r))}return ee}}var c=i.flags&2097152;if(i.flags&3){if(s===1){return o}}else if(c){a=e.find(r.declarations,isSomeImportDeclaration)}else{return o}if(!a){return o}var u=e.getRootDeclaration(a).kind===151;var l=getControlFlowContainer(a);var f=getControlFlowContainer(t);var d=f!==l;var p=t.parent&&t.parent.parent&&e.isSpreadAssignment(t.parent)&&isDestructuringAssignmentTarget(t.parent.parent);var g=r.flags&134217728;while(f!==l&&(f.kind===196||f.kind===197||e.isObjectLiteralOrClassExpressionMethod(f))&&(isConstVariable(i)||u&&!isParameterAssigned(i))){f=getControlFlowContainer(f)}var _=u||c||d||p||g||o!==Y&&o!==it&&(!k||(o.flags&3)!==0||isInTypeQuery(t)||t.parent.kind===257)||t.parent.kind===213||a.kind===237&&a.exclamationToken||a.flags&4194304;var m=_?u?removeOptionalityFromDeclaredType(o,a):o:o===Y||o===it?re:getOptionalType(o);var y=getFlowTypeOfReference(t,o,m,f,!_);if(!isEvolvingArrayOperationTarget(t)&&(o===Y||o===it)){if(y===Y||y===it){if(F){error(e.getNameOfDeclaration(a),e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined,symbolToString(r),typeToString(y));error(t,e.Diagnostics.Variable_0_implicitly_has_an_1_type,symbolToString(r),typeToString(y))}return convertAutoToAny(y)}}else if(!_&&!(getFalsyFlags(o)&32768)&&getFalsyFlags(y)&32768){error(t,e.Diagnostics.Variable_0_is_used_before_being_assigned,symbolToString(r));return o}return s?getBaseTypeOfLiteralType(y):y}function isInsideFunction(t,r){return!!e.findAncestor(t,function(t){return t===r?"quit":e.isFunctionLike(t)})}function getPartOfForStatementContainingNode(t,r){return e.findAncestor(t,function(e){return e===r?"quit":e===r.initializer||e===r.condition||e===r.incrementor||e===r.statement})}function checkNestedBlockScopedBinding(t,r){if(C>=2||(r.flags&(2|32))===0||r.valueDeclaration.parent.kind===274){return}var n=e.getEnclosingBlockScopeContainer(r.valueDeclaration);var i=isInsideFunction(t.parent,n);var a=n;var o=false;while(a&&!e.nodeStartsNewLexicalEnvironment(a)){if(e.isIterationStatement(a,false)){o=true;break}a=a.parent}if(o){if(i){var s=true;if(e.isForStatement(n)&&e.getAncestor(r.valueDeclaration,238).parent===n){var c=getPartOfForStatementContainingNode(t.parent,n);if(c){var u=getNodeLinks(c);u.flags|=131072;var l=u.capturedBlockScopeBindings||(u.capturedBlockScopeBindings=[]);e.pushIfUnique(l,r);if(c===n.initializer){s=false}}}if(s){getNodeLinks(a).flags|=65536}}if(n.kind===225&&e.getAncestor(r.valueDeclaration,238).parent===n&&isAssignedInBodyOfForStatement(t,n)){getNodeLinks(r.valueDeclaration).flags|=4194304}getNodeLinks(r.valueDeclaration).flags|=524288}if(i){getNodeLinks(r.valueDeclaration).flags|=262144}}function isBindingCapturedByNode(t,r){var n=getNodeLinks(t);return!!n&&e.contains(n.capturedBlockScopeBindings,getSymbolOfNode(r))}function isAssignedInBodyOfForStatement(t,r){var n=t;while(n.parent.kind===195){n=n.parent}var i=false;if(e.isAssignmentTarget(n)){i=true}else if(n.parent.kind===202||n.parent.kind===203){var a=n.parent;i=a.operator===44||a.operator===45}if(!i){return false}return!!e.findAncestor(n,function(e){return e===r?"quit":e===r.statement})}function captureLexicalThis(e,t){getNodeLinks(e).flags|=2;if(t.kind===154||t.kind===157){var r=t.parent;getNodeLinks(r).flags|=4}else{getNodeLinks(t).flags|=4}}function findFirstSuperCall(t){if(e.isSuperCall(t)){return t}else if(e.isFunctionLike(t)){return undefined}return e.forEachChild(t,findFirstSuperCall)}function getSuperCallInConstructor(e){var t=getNodeLinks(e);if(t.hasSuperCall===undefined){t.superCall=findFirstSuperCall(e.body);t.hasSuperCall=t.superCall?true:false}return t.superCall}function classDeclarationExtendsNull(e){var t=getSymbolOfNode(e);var r=getDeclaredTypeOfSymbol(t);var n=getBaseConstructorTypeOfClass(r);return n===ae}function checkThisBeforeSuper(t,r,n){var i=r.parent;var a=e.getEffectiveBaseTypeNode(i);if(a&&!classDeclarationExtendsNull(i)){var o=getSuperCallInConstructor(r);if(!o||o.end>t.pos){error(t,n)}}}function checkThisExpression(t){var r=e.getThisContainer(t,true);var n=false;if(r.kind===157){checkThisBeforeSuper(t,r,e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class)}if(r.kind===197){r=e.getThisContainer(r,false);n=true}switch(r.kind){case 244:error(t,e.Diagnostics.this_cannot_be_referenced_in_a_module_or_namespace_body);break;case 243:error(t,e.Diagnostics.this_cannot_be_referenced_in_current_location);break;case 157:if(isInConstructorArgumentInitializer(t,r)){error(t,e.Diagnostics.this_cannot_be_referenced_in_constructor_arguments)}break;case 154:case 153:if(e.hasModifier(r,32)){error(t,e.Diagnostics.this_cannot_be_referenced_in_a_static_property_initializer)}break;case 149:error(t,e.Diagnostics.this_cannot_be_referenced_in_a_computed_property_name);break}if(n&&C<2){captureLexicalThis(t,r)}var i=tryGetThisTypeAt(t,r);if(!i&&P){var a=error(t,n&&r.kind===279?e.Diagnostics.The_containing_arrow_function_captures_the_global_value_of_this_which_implicitly_has_type_any:e.Diagnostics.this_implicitly_has_type_any_because_it_does_not_have_a_type_annotation);if(!e.isSourceFile(r)){var o=tryGetThisTypeAt(r);if(o){addRelatedInfo(a,e.createDiagnosticForNode(r,e.Diagnostics.An_outer_value_of_this_is_shadowed_by_this_container))}}}return i||X}function tryGetThisTypeAt(t,r){if(r===void 0){r=e.getThisContainer(t,false)}var n=e.isInJSFile(t);if(e.isFunctionLike(r)&&(!isInParameterInitializerBeforeContainingFunction(t)||e.getThisParameter(r))){var i=getClassNameFromPrototypeMethod(r);if(n&&i){var a=checkExpression(i).symbol;if(a&&a.members&&a.flags&16){var o=getJSClassType(a);if(o){return getFlowTypeOfReference(t,o)}}}else if(n&&(r.kind===196||r.kind===239)&&e.getJSDocClassTag(r)){var o=getJSClassType(r.symbol);if(o){return getFlowTypeOfReference(t,o)}}var s=getThisTypeOfDeclaration(r)||getContextualThisParameterType(r);if(s){return getFlowTypeOfReference(t,s)}}if(e.isClassLike(r.parent)){var c=getSymbolOfNode(r.parent);var u=e.hasModifier(r,32)?getTypeOfSymbol(c):getDeclaredTypeOfSymbol(c).thisType;return getFlowTypeOfReference(t,u)}if(n){var u=getTypeForThisExpressionFromJSDoc(r);if(u&&u!==ee){return getFlowTypeOfReference(t,u)}}}function getClassNameFromPrototypeMethod(t){if(t.kind===196&&e.isBinaryExpression(t.parent)&&e.getAssignmentDeclarationKind(t.parent)===3){return t.parent.left.expression.expression}else if(t.kind===156&&t.parent.kind===188&&e.isBinaryExpression(t.parent.parent)&&e.getAssignmentDeclarationKind(t.parent.parent)===6){return t.parent.parent.left.expression}else if(t.kind===196&&t.parent.kind===275&&t.parent.parent.kind===188&&e.isBinaryExpression(t.parent.parent.parent)&&e.getAssignmentDeclarationKind(t.parent.parent.parent)===6){return t.parent.parent.parent.left.expression}else if(t.kind===196&&e.isPropertyAssignment(t.parent)&&e.isIdentifier(t.parent.name)&&(t.parent.name.escapedText==="value"||t.parent.name.escapedText==="get"||t.parent.name.escapedText==="set")&&e.isObjectLiteralExpression(t.parent.parent)&&e.isCallExpression(t.parent.parent.parent)&&t.parent.parent.parent.arguments[2]===t.parent.parent&&e.getAssignmentDeclarationKind(t.parent.parent.parent)===9){return t.parent.parent.parent.arguments[0].expression}else if(e.isMethodDeclaration(t)&&e.isIdentifier(t.name)&&(t.name.escapedText==="value"||t.name.escapedText==="get"||t.name.escapedText==="set")&&e.isObjectLiteralExpression(t.parent)&&e.isCallExpression(t.parent.parent)&&t.parent.parent.arguments[2]===t.parent&&e.getAssignmentDeclarationKind(t.parent.parent)===9){return t.parent.parent.arguments[0].expression}}function getTypeForThisExpressionFromJSDoc(t){var r=e.getJSDocType(t);if(r&&r.kind===289){var n=r;if(n.parameters.length>0&&n.parameters[0].name&&n.parameters[0].name.escapedText==="this"){return getTypeFromTypeNode(n.parameters[0].type)}}var i=e.getJSDocThisTag(t);if(i&&i.typeExpression){return getTypeFromTypeNode(i.typeExpression)}}function isInConstructorArgumentInitializer(t,r){return!!e.findAncestor(t,function(e){return e===r?"quit":e.kind===151})}function checkSuperExpression(t){var r=t.parent.kind===191&&t.parent.expression===t;var n=e.getSuperContainer(t,true);var i=false;if(!r){while(n&&n.kind===197){n=e.getSuperContainer(n,true);i=C<2}}var a=isLegalUsageOfSuperExpression(n);var o=0;if(!a){var s=e.findAncestor(t,function(e){return e===n?"quit":e.kind===149});if(s&&s.kind===149){error(t,e.Diagnostics.super_cannot_be_referenced_in_a_computed_property_name)}else if(r){error(t,e.Diagnostics.Super_calls_are_not_permitted_outside_constructors_or_in_nested_functions_inside_constructors)}else if(!n||!n.parent||!(e.isClassLike(n.parent)||n.parent.kind===188)){error(t,e.Diagnostics.super_can_only_be_referenced_in_members_of_derived_classes_or_object_literal_expressions)}else{error(t,e.Diagnostics.super_property_access_is_permitted_only_in_a_constructor_member_function_or_member_accessor_of_a_derived_class)}return ee}if(!r&&n.kind===157){checkThisBeforeSuper(t,n,e.Diagnostics.super_must_be_called_before_accessing_a_property_of_super_in_the_constructor_of_a_derived_class)}if(e.hasModifier(n,32)||r){o=512}else{o=256}getNodeLinks(t).flags|=o;if(n.kind===156&&e.hasModifier(n,256)){if(e.isSuperProperty(t.parent)&&e.isAssignmentTarget(t.parent)){getNodeLinks(n).flags|=4096}else{getNodeLinks(n).flags|=2048}}if(i){captureLexicalThis(t.parent,n)}if(n.parent.kind===188){if(C<2){error(t,e.Diagnostics.super_is_only_allowed_in_members_of_object_literal_expressions_when_option_target_is_ES2015_or_higher);return ee}else{return X}}var c=n.parent;if(!e.getEffectiveBaseTypeNode(c)){error(t,e.Diagnostics.super_can_only_be_referenced_in_a_derived_class);return ee}var u=getDeclaredTypeOfSymbol(getSymbolOfNode(c));var l=u&&getBaseTypes(u)[0];if(!l){return ee}if(n.kind===157&&isInConstructorArgumentInitializer(t,n)){error(t,e.Diagnostics.super_cannot_be_referenced_in_constructor_arguments);return ee}return o===512?getBaseConstructorTypeOfClass(u):getTypeWithThisArgument(l,u.thisType);function isLegalUsageOfSuperExpression(t){if(!t){return false}if(r){return t.kind===157}else{if(e.isClassLike(t.parent)||t.parent.kind===188){if(e.hasModifier(t,32)){return t.kind===156||t.kind===155||t.kind===158||t.kind===159}else{return t.kind===156||t.kind===155||t.kind===158||t.kind===159||t.kind===154||t.kind===153||t.kind===157}}}return false}}function getContainingObjectLiteral(e){return(e.kind===156||e.kind===158||e.kind===159)&&e.parent.kind===188?e.parent:e.kind===196&&e.parent.kind===275?e.parent.parent:undefined}function getThisTypeArgument(t){return e.getObjectFlags(t)&4&&t.target===rt?t.typeArguments[0]:undefined}function getThisTypeFromContextualType(t){return mapType(t,function(t){return t.flags&2097152?e.forEach(t.types,getThisTypeArgument):getThisTypeArgument(t)})}function getContextualThisParameterType(t){if(t.kind===197){return undefined}if(isContextSensitiveFunctionOrObjectLiteralMethod(t)){var r=getContextualSignature(t);if(r){var n=r.thisParameter;if(n){return getTypeOfSymbol(n)}}}var i=e.isInJSFile(t);if(P||i){var a=getContainingObjectLiteral(t);if(a){var o=getApparentTypeOfContextualType(a);var s=a;var c=o;while(c){var u=getThisTypeFromContextualType(c);if(u){return instantiateType(u,getContextualMapper(a))}if(s.parent.kind!==275){break}s=s.parent.parent;c=getApparentTypeOfContextualType(s)}return o?getNonNullableType(o):checkExpressionCached(a)}var l=t.parent;if(l.kind===204&&l.operatorToken.kind===59){var f=l.left;if(f.kind===189||f.kind===190){var d=f.expression;if(i&&e.isIdentifier(d)){var p=e.getSourceFileOfNode(l);if(p.commonJsModuleIndicator&&getResolvedSymbol(d)===p.symbol){return undefined}}return checkExpressionCached(d)}}}return undefined}function getContextuallyTypedParameterType(t){var r=t.parent;if(!isContextSensitiveFunctionOrObjectLiteralMethod(r)){return undefined}var n=e.getImmediatelyInvokedFunctionExpression(r);if(n&&n.arguments){var i=getEffectiveCallArguments(n);var a=r.parameters.indexOf(t);if(t.dotDotDotToken){return getSpreadArgumentType(i,a,i.length,X,undefined)}var o=getNodeLinks(n);var s=o.resolvedSignature;o.resolvedSignature=Le;var c=a<i.length?getWidenedLiteralType(checkExpression(i[a])):t.initializer?undefined:ne;o.resolvedSignature=s;return c}var u=getContextualSignature(r);if(u){var l=r.parameters.indexOf(t)-(e.getThisParameter(r)?1:0);return t.dotDotDotToken&&e.lastOrUndefined(r.parameters)===t?getRestTypeAtPosition(u,l):tryGetTypeAtPosition(u,l)}}function getContextualTypeForInitializerExpression(t){var r=t.parent;if(e.hasInitializer(r)&&t===r.initializer){var n=e.getEffectiveTypeAnnotationNode(r);if(n){return getTypeFromTypeNode(n)}if(r.kind===151){var i=getContextuallyTypedParameterType(r);if(i){return i}}if(e.isBindingPattern(r.name)){return getTypeFromBindingPattern(r.name,true,false)}if(e.isBindingPattern(r.parent)){var a=r.parent.parent;var o=r.propertyName||r.name;if(a.kind!==186){var s=e.getEffectiveTypeAnnotationNode(a);if(s&&!e.isBindingPattern(o)){var c=e.getTextOfPropertyName(o);if(c){return getTypeOfPropertyOfType(getTypeFromTypeNode(s),c)}}}}}return undefined}function getContextualTypeForReturnExpression(t){var r=e.getContainingFunction(t);if(r){var n=e.getFunctionFlags(r);if(n&1){return undefined}var i=getContextualReturnType(r);if(i){if(n&2){var a=getAwaitedTypeOfPromise(i);return a&&getUnionType([a,createPromiseLikeType(a)])}return i}}return undefined}function getContextualTypeForAwaitOperand(e){var t=getContextualType(e);if(t){var r=getAwaitedType(t);return r&&getUnionType([r,createPromiseLikeType(r)])}return undefined}function getContextualTypeForYieldOperand(t){var r=e.getContainingFunction(t);if(r){var n=e.getFunctionFlags(r);var i=getContextualReturnType(r);if(i){return t.asteriskToken?i:getIteratedTypeOfGenerator(i,(n&2)!==0)}}return undefined}function isInParameterInitializerBeforeContainingFunction(t){var r=false;while(t.parent&&!e.isFunctionLike(t.parent)){if(e.isParameter(t.parent)&&(r||t.parent.initializer===t)){return true}if(e.isBindingElement(t.parent)&&t.parent.initializer===t){r=true}t=t.parent}return false}function getContextualReturnType(e){var t=getReturnTypeFromAnnotation(e);if(t){return t}var r=getContextualSignatureForFunctionLikeDeclaration(e);if(r&&!isResolvingReturnTypeOfSignature(r)){return getReturnTypeOfSignature(r)}return undefined}function getContextualTypeForArgument(e,t){var r=getEffectiveCallArguments(e);var n=r.indexOf(t);return n===-1?undefined:getContextualTypeForArgumentAtIndex(e,n)}function getContextualTypeForArgumentAtIndex(t,r){var n=getNodeLinks(t).resolvedSignature===Be?Be:getResolvedSignature(t);if(e.isJsxOpeningLikeElement(t)&&r===0){return getEffectiveFirstArgumentForJsxSignature(n,t)}return getTypeAtPosition(n,r)}function getContextualTypeForSubstitutionExpression(e,t){if(e.parent.kind===193){return getContextualTypeForArgument(e.parent,t)}return undefined}function getContextualTypeForBinaryOperand(t){var r=t.parent;var n=r.left,i=r.operatorToken,a=r.right;switch(i.kind){case 59:if(t!==a){return undefined}var o=getIsContextSensitiveAssignmentOrContextType(r);if(!o){return undefined}return o===true?getTypeOfExpression(n):o;case 55:var s=getContextualType(r);return!s&&t===a&&!e.isDefaultedExpandoInitializer(r)?getTypeOfExpression(n):s;case 54:case 27:return t===a?getContextualType(r):undefined;default:return undefined}}function getIsContextSensitiveAssignmentOrContextType(t){var r=e.getAssignmentDeclarationKind(t);switch(r){case 0:return true;case 5:case 1:case 6:case 3:if(!t.left.symbol){return true}else{var n=t.left.symbol.valueDeclaration;if(!n){return false}var i=t.left;var a=e.getEffectiveTypeAnnotationNode(n);if(a){return getTypeFromTypeNode(a)}else if(e.isIdentifier(i.expression)){var o=i.expression;var s=resolveName(o,o.escapedText,67220415,undefined,o.escapedText,true);if(s){var c=e.getEffectiveTypeAnnotationNode(s.valueDeclaration);if(c){var u=getTypeOfPropertyOfContextualType(getTypeFromTypeNode(c),i.name.escapedText);return u||false}return false}}return!e.isInJSFile(n)}case 2:case 4:if(!t.symbol)return true;if(t.symbol.valueDeclaration){var c=e.getEffectiveTypeAnnotationNode(t.symbol.valueDeclaration);if(c){var u=getTypeFromTypeNode(c);if(u){return u}}}if(r===2)return false;var l=t.left;if(!e.isObjectLiteralMethod(e.getThisContainer(l.expression,false))){return false}var f=checkThisExpression(l.expression);return f&&getTypeOfPropertyOfContextualType(f,l.name.escapedText)||false;case 7:case 8:case 9:return e.Debug.fail("Does not apply");default:return e.Debug.assertNever(r)}}function getTypeOfPropertyOfContextualType(e,t){return mapType(e,function(e){if(e.flags&3670016){var r=getPropertyOfType(e,t);if(r){return getTypeOfSymbol(r)}if(isTupleType(e)){var n=getRestTypeOfTupleType(e);if(n&&isNumericLiteralName(t)&&+t>=0){return n}}return isNumericLiteralName(t)&&getIndexTypeOfContextualType(e,1)||getIndexTypeOfContextualType(e,0)}return undefined},true)}function getIndexTypeOfContextualType(e,t){return mapType(e,function(e){return getIndexTypeOfStructuredType(e,t)},true)}function getContextualTypeForObjectLiteralMethod(t){e.Debug.assert(e.isObjectLiteralMethod(t));if(t.flags&8388608){return undefined}return getContextualTypeForObjectLiteralElement(t)}function getContextualTypeForObjectLiteralElement(e){var t=e.parent;var r=getApparentTypeOfContextualType(t);if(r){if(!hasNonBindableDynamicName(e)){var n=getSymbolOfNode(e).escapedName;var i=getTypeOfPropertyOfContextualType(r,n);if(i){return i}}return isNumericName(e.name)&&getIndexTypeOfContextualType(r,1)||getIndexTypeOfContextualType(r,0)}return undefined}function getContextualTypeForElementExpression(e,t){return e&&(getTypeOfPropertyOfContextualType(e,""+t)||getIteratedTypeOrElementType(e,undefined,false,false,false))}function getContextualTypeForConditionalOperand(e){var t=e.parent;return e===t.whenTrue||e===t.whenFalse?getContextualType(t):undefined}function getContextualTypeForChildJsxExpression(e){var t=getApparentTypeOfContextualType(e.openingElement.tagName);var r=getJsxElementChildrenPropertyName(getJsxNamespaceAt(e));return t&&!isTypeAny(t)&&r&&r!==""?getTypeOfPropertyOfContextualType(t,r):undefined}function getContextualTypeForJsxExpression(t){var r=t.parent;return e.isJsxAttributeLike(r)?getContextualType(t):e.isJsxElement(r)?getContextualTypeForChildJsxExpression(r):undefined}function getContextualTypeForJsxAttribute(t){if(e.isJsxAttribute(t)){var r=getApparentTypeOfContextualType(t.parent);if(!r||isTypeAny(r)){return undefined}return getTypeOfPropertyOfContextualType(r,t.name.escapedText)}else{return getContextualType(t.parent)}}function isPossiblyDiscriminantValue(e){switch(e.kind){case 10:case 8:case 9:case 14:case 102:case 87:case 96:case 72:case 141:return true;case 189:case 195:return isPossiblyDiscriminantValue(e.expression);case 270:return!e.expression||isPossiblyDiscriminantValue(e.expression)}return false}function discriminateContextualTypeByObjectMembers(t,r){return discriminateTypeByDiscriminableItems(r,e.map(e.filter(t.properties,function(e){return!!e.symbol&&e.kind===275&&isPossiblyDiscriminantValue(e.initializer)&&isDiscriminantProperty(r,e.symbol.escapedName)}),function(e){return[function(){return checkExpression(e.initializer)},e.symbol.escapedName]}),isTypeAssignableTo,r)}function discriminateContextualTypeByJSXAttributes(t,r){return discriminateTypeByDiscriminableItems(r,e.map(e.filter(t.properties,function(e){return!!e.symbol&&e.kind===267&&isDiscriminantProperty(r,e.symbol.escapedName)&&(!e.initializer||isPossiblyDiscriminantValue(e.initializer))}),function(e){return[!e.initializer?function(){return fe}:function(){return checkExpression(e.initializer)},e.symbol.escapedName]}),isTypeAssignableTo,r)}function getApparentTypeOfContextualType(t){var r=getContextualType(t);r=r&&mapType(r,getApparentType);if(r&&r.flags&1048576){if(e.isObjectLiteralExpression(t)){return discriminateContextualTypeByObjectMembers(t,r)}else if(e.isJsxAttributes(t)){return discriminateContextualTypeByJSXAttributes(t,r)}}return r}function getContextualType(t){if(t.flags&8388608){return undefined}if(t.contextualType){return t.contextualType}var r=t.parent;switch(r.kind){case 237:case 151:case 154:case 153:case 186:return getContextualTypeForInitializerExpression(t);case 197:case 230:return getContextualTypeForReturnExpression(t);case 207:return getContextualTypeForYieldOperand(r);case 201:return getContextualTypeForAwaitOperand(r);case 191:case 192:return getContextualTypeForArgument(r,t);case 194:case 212:return getTypeFromTypeNode(r.type);case 204:return getContextualTypeForBinaryOperand(t);case 275:case 276:return getContextualTypeForObjectLiteralElement(r);case 277:return getApparentTypeOfContextualType(r.parent);case 187:{var n=r;var i=getApparentTypeOfContextualType(n);return getContextualTypeForElementExpression(i,e.indexOfNode(n.elements,t))}case 205:return getContextualTypeForConditionalOperand(t);case 216:e.Debug.assert(r.parent.kind===206);return getContextualTypeForSubstitutionExpression(r.parent,t);case 195:{var a=e.isInJSFile(r)?e.getJSDocTypeTag(r):undefined;return a?getTypeFromTypeNode(a.typeExpression.type):getContextualType(r)}case 270:return getContextualTypeForJsxExpression(r);case 267:case 269:return getContextualTypeForJsxAttribute(r);case 262:case 261:return getContextualJsxElementAttributesType(r)}return undefined}function getContextualMapper(t){var r=e.findAncestor(t,function(e){return!!e.contextualMapper});return r?r.contextualMapper:b}function getContextualJsxElementAttributesType(t){if(e.isJsxOpeningElement(t)&&t.parent.contextualType){return t.parent.contextualType}return getContextualTypeForArgumentAtIndex(t,0)}function getEffectiveFirstArgumentForJsxSignature(e,t){return getJsxReferenceKind(t)!==0?getJsxPropsTypeFromCallSignature(e,t):getJsxPropsTypeFromClassType(e,t)}function getJsxPropsTypeFromCallSignature(e,t){var r=getTypeOfFirstParameterOfSignatureWithFallback(e,xe);r=getJsxManagedAttributesFromLocatedAttributes(t,getJsxNamespaceAt(t),r);var n=getJsxType(c.IntrinsicAttributes,t);if(n!==ee){r=intersectTypes(n,r)}return r}function getJsxPropsTypeForSignatureFromMember(e,t){var r=getReturnTypeOfSignature(e);return isTypeAny(r)?r:getTypeOfPropertyOfType(r,t)}function getStaticTypeOfReferencedJsxConstructor(e){if(isJsxIntrinsicIdentifier(e.tagName)){var t=getIntrinsicAttributesTypeFromJsxOpeningLikeElement(e);var r=createSignatureForJSXIntrinsic(e,t);return getOrCreateTypeFromSignature(r)}var n=checkExpressionCached(e.tagName);if(n.flags&128){var t=getIntrinsicAttributesTypeFromStringLiteralType(n,e);if(!t){return ee}var r=createSignatureForJSXIntrinsic(e,t);return getOrCreateTypeFromSignature(r)}return n}function getJsxManagedAttributesFromLocatedAttributes(t,r,n){var i=getJsxLibraryManagedAttributes(r);if(i){var a=getDeclaredTypeOfSymbol(i);var o=getStaticTypeOfReferencedJsxConstructor(t);if(e.length(a.typeParameters)>=2){var s=fillMissingTypeArguments([o,n],a.typeParameters,2,e.isInJSFile(t));return createTypeReference(a,s)}else if(e.length(a.aliasTypeArguments)>=2){var s=fillMissingTypeArguments([o,n],a.aliasTypeArguments,2,e.isInJSFile(t));return getTypeAliasInstantiation(a.aliasSymbol,s)}}return n}function getJsxPropsTypeFromClassType(t,r){var n=getJsxNamespaceAt(r);var i=getJsxElementPropertiesName(n);var a=i===undefined?getTypeOfFirstParameterOfSignatureWithFallback(t,xe):i===""?getReturnTypeOfSignature(t):getJsxPropsTypeForSignatureFromMember(t,i);if(!a){if(!!i&&!!e.length(r.attributes.properties)){error(r,e.Diagnostics.JSX_element_class_does_not_support_attributes_because_it_does_not_have_a_0_property,e.unescapeLeadingUnderscores(i))}return xe}a=getJsxManagedAttributesFromLocatedAttributes(r,n,a);if(isTypeAny(a)){return a}else{var o=a;var s=getJsxType(c.IntrinsicClassAttributes,r);if(s!==ee){var u=getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(s.symbol);var l=getReturnTypeOfSignature(t);o=intersectTypes(u?createTypeReference(s,fillMissingTypeArguments([l],u,getMinTypeArgumentCount(u),e.isInJSFile(r))):s,o)}var f=getJsxType(c.IntrinsicAttributes,r);if(f!==ee){o=intersectTypes(f,o)}return o}}function getContextualCallSignature(e,t){var r=getSignaturesOfType(e,0);if(r.length===1){var n=r[0];if(!isAritySmaller(n,t)){return n}}}function isAritySmaller(t,r){var n=0;for(;n<r.parameters.length;n++){var i=r.parameters[n];if(i.initializer||i.questionToken||i.dotDotDotToken||isJSDocOptionalParameter(i)){break}}if(r.parameters.length&&e.parameterIsThisKeyword(r.parameters[0])){n--}return!hasEffectiveRestParameter(t)&&getParameterCount(t)<n}function isFunctionExpressionOrArrowFunction(e){return e.kind===196||e.kind===197}function getContextualSignatureForFunctionLikeDeclaration(t){return isFunctionExpressionOrArrowFunction(t)||e.isObjectLiteralMethod(t)?getContextualSignature(t):undefined}function getContextualTypeForFunctionLikeDeclaration(t){return e.isObjectLiteralMethod(t)?getContextualTypeForObjectLiteralMethod(t):getApparentTypeOfContextualType(t)}function getContextualSignature(t){e.Debug.assert(t.kind!==156||e.isObjectLiteralMethod(t));var r=getSignatureOfTypeTag(t);if(r){return r}var n=getContextualTypeForFunctionLikeDeclaration(t);if(!n){return undefined}if(!(n.flags&1048576)){return getContextualCallSignature(n,t)}var i;var a=n.types;for(var o=0,s=a;o<s.length;o++){var c=s[o];var u=getContextualCallSignature(c,t);if(u){if(!i){i=[u]}else if(!compareSignaturesIdentical(i[0],u,false,true,true,compareTypesIdentical)){return undefined}else{i.push(u)}}}var l;if(i){l=cloneSignature(i[0]);l.unionSignatures=i}return l}function checkSpreadExpression(e,t){if(C<2&&x.downlevelIteration){checkExternalEmitHelpers(e,1536)}var r=checkExpression(e.expression,t);return checkIteratedTypeOrElementType(r,e.expression,false,false)}function hasDefaultValue(e){return e.kind===186&&!!e.initializer||e.kind===204&&e.operatorToken.kind===59}function checkArrayLiteral(t,r,n){var i=t.elements;var a=i.length;var o=false;var s=[];var c=e.isAssignmentTarget(t);var u=getApparentTypeOfContextualType(t);for(var l=0;l<a;l++){var f=i[l];if(c&&f.kind===208){var d=checkExpression(f.expression,r,n);var p=getIndexTypeOfType(d,1)||getIteratedTypeOrElementType(d,undefined,false,false,false);if(p){s.push(p)}}else{var g=getContextualTypeForElementExpression(u,l);var _=checkExpressionForMutableLocation(f,r,g,n);s.push(_)}if(l<a-1&&f.kind===208){o=true}}if(!o){var m=a>0&&i[a-1].kind===208;var y=a-(m?1:0);var h=void 0;if(c&&y>0){var _=cloneTypeReference(createTupleType(s,y,m));_.pattern=t;return _}else if(h=getArrayLiteralTupleTypeIfApplicable(s,u,m,a)){return h}else if(n){return createTupleType(s,y,m)}}return getArrayLiteralType(s,2)}function getArrayLiteralTupleTypeIfApplicable(t,r,n,i){if(i===void 0){i=t.length}if(r&&forEachType(r,isTupleLikeType)){var a=i-(n?1:0);var o=r.pattern;if(!n&&o&&(o.kind===185||o.kind===187)){var s=o.elements;for(var c=i;c<s.length;c++){var u=s[c];if(hasDefaultValue(u)){t.push(r.typeArguments[c])}else if(c<s.length-1||!(u.kind===186&&u.dotDotDotToken||u.kind===208)){if(u.kind!==210){error(u,e.Diagnostics.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value)}t.push(k?he:ne)}}}return createTupleType(t,a,n)}}function getArrayLiteralType(e,t){if(t===void 0){t=1}return createArrayType(e.length?getUnionType(e,t):k?he:ne)}function isNumericName(e){switch(e.kind){case 149:return isNumericComputedName(e);case 72:return isNumericLiteralName(e.escapedText);case 8:case 10:return isNumericLiteralName(e.text);default:return false}}function isNumericComputedName(e){return isTypeAssignableToKind(checkComputedPropertyName(e),296)}function isInfinityOrNaNString(e){return e==="Infinity"||e==="-Infinity"||e==="NaN"}function isNumericLiteralName(e){return(+e).toString()===e}function checkComputedPropertyName(t){var r=getNodeLinks(t.expression);if(!r.resolvedType){r.resolvedType=checkExpression(t.expression);if(r.resolvedType.flags&98304||!isTypeAssignableToKind(r.resolvedType,132|296|12288)&&!isTypeAssignableTo(r.resolvedType,Te)){error(t,e.Diagnostics.A_computed_property_name_must_be_of_type_string_number_symbol_or_any)}else{checkThatExpressionIsProperSymbolReference(t.expression,r.resolvedType,true)}}return r.resolvedType}function getObjectLiteralIndexInfo(e,t,r,n){var i=[];for(var a=0;a<r.length;a++){if(n===0||isNumericName(e[a+t].name)){i.push(getTypeOfSymbol(r[a]))}}var o=i.length?getUnionType(i,2):re;return createIndexInfo(o,false)}function getImmediateAliasedSymbol(t){e.Debug.assert((t.flags&2097152)!==0,"Should only get Alias here.");var r=getSymbolLinks(t);if(!r.immediateTarget){var n=getDeclarationOfAliasSymbol(t);if(!n)return e.Debug.fail();r.immediateTarget=getTargetOfAliasDeclaration(n,true)}return r.immediateTarget}function checkObjectLiteral(t,r){var n=e.isAssignmentTarget(t);checkGrammarObjectLiteralExpression(t,n);var i;var a=[];var o=xe;var s=0;var c=getApparentTypeOfContextualType(t);var u=c&&c.pattern&&(c.pattern.kind===184||c.pattern.kind===188);var l=e.isInJSFile(t)&&!e.isInJsonFile(t);var f=e.getJSDocEnumTag(t);var d=!c&&l&&!f;var p=0;var g=false;var _=false;var m=false;i=e.createSymbolTable();var y=0;for(var h=0;h<t.properties.length;h++){var v=t.properties[h];var T=getSymbolOfNode(v);var S=v.name&&v.name.kind===149&&!e.isWellKnownSymbolSyntactically(v.name.expression)?checkComputedPropertyName(v.name):undefined;if(v.kind===275||v.kind===276||e.isObjectLiteralMethod(v)){var b=v.kind===275?checkPropertyAssignment(v,r):v.kind===276?checkExpressionForMutableLocation(v.name,r):checkObjectLiteralMethod(v,r);if(l){var E=getTypeForDeclarationFromJSDocComment(v);if(E){checkTypeAssignableTo(b,E,v);b=E}else if(f&&f.typeExpression){checkTypeAssignableTo(b,getTypeFromTypeNode(f.typeExpression),v)}}p|=b.flags;var D=S&&S.flags&8576?S:undefined;var k=D?createSymbol(4|T.flags,getLateBoundNameFromType(D),1024):createSymbol(4|T.flags,T.escapedName);if(D){k.nameType=D}if(n){var N=v.kind===275&&hasDefaultValue(v.initializer)||v.kind===276&&v.objectAssignmentInitializer;if(N){k.flags|=16777216}}else if(u&&!(e.getObjectFlags(c)&512)){var A=getPropertyOfType(c,T.escapedName);if(A){k.flags|=A.flags&16777216}else if(!x.suppressExcessPropertyErrors&&!getIndexInfoOfType(c,0)){error(v.name,e.Diagnostics.Object_literal_may_only_specify_known_properties_and_0_does_not_exist_in_type_1,symbolToString(T),typeToString(c))}}k.declarations=T.declarations;k.parent=T.parent;if(T.valueDeclaration){k.valueDeclaration=T.valueDeclaration}k.type=b;k.target=T;T=k}else if(v.kind===277){if(C<2){checkExternalEmitHelpers(v,2)}if(a.length>0){o=getSpreadType(o,createObjectLiteralType(),t.symbol,s,32768);a=[];i=e.createSymbolTable();_=false;m=false;p=0}var b=checkExpression(v.expression);if(!isValidSpreadType(b)){error(v,e.Diagnostics.Spread_types_may_only_be_created_from_object_types);return ee}o=getSpreadType(o,b,t.symbol,s,32768);y=h+1;continue}else{e.Debug.assert(v.kind===158||v.kind===159);checkNodeDeferred(v)}if(S&&!(S.flags&8576)){if(isTypeAssignableTo(S,Te)){if(isTypeAssignableTo(S,se)){m=true}else{_=true}if(n){g=true}}}else{i.set(T.escapedName,T)}a.push(T)}if(u){for(var O=0,F=getPropertiesOfType(c);O<F.length;O++){var k=F[O];if(!i.get(k.escapedName)&&!(o&&getPropertyOfType(o,k.escapedName))){if(!(k.flags&16777216)){error(k.valueDeclaration||k.bindingElement,e.Diagnostics.Initializer_provides_no_value_for_this_binding_element_and_the_binding_element_has_no_default_value)}i.set(k.escapedName,k);a.push(k)}}}if(o!==xe){if(a.length>0){o=getSpreadType(o,createObjectLiteralType(),t.symbol,s,32768)}return o}return createObjectLiteralType();function createObjectLiteralType(){var r=_?getObjectLiteralIndexInfo(t.properties,y,a,0):undefined;var o=m?getObjectLiteralIndexInfo(t.properties,y,a,1):undefined;var c=createAnonymousType(t.symbol,i,e.emptyArray,e.emptyArray,r,o);c.flags|=268435456|p&939524096;c.objectFlags|=128|w;if(d){c.objectFlags|=16384}if(g){c.objectFlags|=512}if(n){c.pattern=t}s|=c.flags&939524096;return c}}function isValidSpreadType(t){return!!(t.flags&(3|67108864|524288|58982400)||getFalsyFlags(t)&117632&&isValidSpreadType(removeDefinitelyFalsyTypes(t))||t.flags&3145728&&e.every(t.types,isValidSpreadType))}function checkJsxSelfClosingElementDeferred(e){checkJsxOpeningLikeElementOrOpeningFragment(e)}function checkJsxSelfClosingElement(e,t){checkNodeDeferred(e);return getJsxElementTypeAt(e)||X}function checkJsxElementDeferred(e){checkJsxOpeningLikeElementOrOpeningFragment(e.openingElement);if(isJsxIntrinsicIdentifier(e.closingElement.tagName)){getIntrinsicTagSymbol(e.closingElement)}else{checkExpression(e.closingElement.tagName)}checkJsxChildren(e)}function checkJsxElement(e,t){checkNodeDeferred(e);return getJsxElementTypeAt(e)||X}function checkJsxFragment(t){checkJsxOpeningLikeElementOrOpeningFragment(t.openingFragment);if(x.jsx===2&&(x.jsxFactory||e.getSourceFileOfNode(t).pragmas.has("jsx"))){error(t,x.jsxFactory?e.Diagnostics.JSX_fragment_is_not_supported_when_using_jsxFactory:e.Diagnostics.JSX_fragment_is_not_supported_when_using_an_inline_JSX_factory_pragma)}checkJsxChildren(t);return getJsxElementTypeAt(t)||X}function isUnhyphenatedJsxName(t){return!e.stringContains(t,"-")}function isJsxIntrinsicIdentifier(t){return t.kind===72&&e.isIntrinsicJsxName(t.escapedText)}function checkJsxAttribute(e,t){return e.initializer?checkExpressionForMutableLocation(e.initializer,t):fe}function createJsxAttributesTypeFromAttributesProperty(t,r){var n=t.attributes;var i=e.createSymbolTable();var a=Ce;var o=false;var s;var c=false;var u=0;var l=4096;var f=getJsxElementChildrenPropertyName(getJsxNamespaceAt(t));for(var d=0,p=n.properties;d<p.length;d++){var g=p[d];var _=g.symbol;if(e.isJsxAttribute(g)){var m=checkJsxAttribute(g,r);u|=m.flags&939524096;var y=createSymbol(4|33554432|_.flags,_.escapedName);y.declarations=_.declarations;y.parent=_.parent;if(_.valueDeclaration){y.valueDeclaration=_.valueDeclaration}y.type=m;y.target=_;i.set(y.escapedName,y);if(g.name.escapedText===f){c=true}}else{e.Debug.assert(g.kind===269);if(i.size>0){a=getSpreadType(a,createJsxAttributesType(),n.symbol,u,l);i=e.createSymbolTable()}var m=checkExpressionCached(g.expression,r);if(isTypeAny(m)){o=true}if(isValidSpreadType(m)){a=getSpreadType(a,m,n.symbol,u,l)}else{s=s?getIntersectionType([s,m]):m}}}if(!o){if(i.size>0){a=getSpreadType(a,createJsxAttributesType(),n.symbol,u,l)}}var h=t.parent.kind===260?t.parent:undefined;if(h&&h.openingElement===t&&h.children.length>0){var v=checkJsxChildren(h,r);if(!o&&f&&f!==""){if(c){error(n,e.Diagnostics._0_are_specified_twice_The_attribute_named_0_will_be_overwritten,e.unescapeLeadingUnderscores(f))}var T=getApparentTypeOfContextualType(t.attributes);var S=T&&getTypeOfPropertyOfContextualType(T,f);var b=createSymbol(4|33554432,f);b.type=v.length===1?v[0]:getArrayLiteralTupleTypeIfApplicable(v,S,false)||createArrayType(getUnionType(v));var x=e.createSymbolTable();x.set(f,b);a=getSpreadType(a,createAnonymousType(n.symbol,x,e.emptyArray,e.emptyArray,undefined,undefined),n.symbol,u,l)}}if(o){return X}if(s&&a!==Ce){return getIntersectionType([s,a])}return s||(a===Ce?createJsxAttributesType():a);function createJsxAttributesType(){l|=w;var t=createAnonymousType(n.symbol,i,e.emptyArray,e.emptyArray,undefined,undefined);t.flags|=268435456|u;t.objectFlags|=128|l;return t}}function checkJsxChildren(e,t){var r=[];for(var n=0,i=e.children;n<i.length;n++){var a=i[n];if(a.kind===11){if(!a.containsOnlyWhiteSpaces){r.push(oe)}}else{r.push(checkExpressionForMutableLocation(a,t))}}return r}function checkJsxAttributes(e,t){return createJsxAttributesTypeFromAttributesProperty(e.parent,t)}function getJsxType(e,t){var r=getJsxNamespaceAt(t);var n=r&&getExportsOfSymbol(r);var i=n&&getSymbol(n,e,67897832);return i?getDeclaredTypeOfSymbol(i):ee}function getIntrinsicTagSymbol(t){var r=getNodeLinks(t);if(!r.resolvedSymbol){var n=getJsxType(c.IntrinsicElements,t);if(n!==ee){if(!e.isIdentifier(t.tagName))return e.Debug.fail();var i=getPropertyOfType(n,t.tagName.escapedText);if(i){r.jsxFlags|=1;return r.resolvedSymbol=i}var a=getIndexTypeOfType(n,0);if(a){r.jsxFlags|=2;return r.resolvedSymbol=n.symbol}error(t,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.idText(t.tagName),"JSX."+c.IntrinsicElements);return r.resolvedSymbol=Q}else{if(F){error(t,e.Diagnostics.JSX_element_implicitly_has_type_any_because_no_interface_JSX_0_exists,e.unescapeLeadingUnderscores(c.IntrinsicElements))}return r.resolvedSymbol=Q}}return r.resolvedSymbol}function getJsxNamespaceAt(e){var t=e&&getNodeLinks(e);if(t&&t.jsxNamespace){return t.jsxNamespace}if(!t||t.jsxNamespace!==false){var r=getJsxNamespace(e);var n=resolveName(e,r,1920,undefined,r,false);if(n){var i=getSymbol(getExportsOfSymbol(resolveSymbol(n)),c.JSX,1920);if(i){if(t){t.jsxNamespace=i}return i}if(t){t.jsxNamespace=false}}}return getGlobalSymbol(c.JSX,1920,undefined)}function getNameFromJsxElementAttributesContainer(t,r){var n=r&&getSymbol(r.exports,t,67897832);var i=n&&getDeclaredTypeOfSymbol(n);var a=i&&getPropertiesOfType(i);if(a){if(a.length===0){return""}else if(a.length===1){return a[0].escapedName}else if(a.length>1){error(n.declarations[0],e.Diagnostics.The_global_type_JSX_0_may_not_have_more_than_one_property,e.unescapeLeadingUnderscores(t))}}return undefined}function getJsxLibraryManagedAttributes(e){return e&&getSymbol(e.exports,c.LibraryManagedAttributes,67897832)}function getJsxElementPropertiesName(e){return getNameFromJsxElementAttributesContainer(c.ElementAttributesPropertyNameContainer,e)}function getJsxElementChildrenPropertyName(e){return getNameFromJsxElementAttributesContainer(c.ElementChildrenAttributeNameContainer,e)}function getUninstantiatedJsxSignaturesOfType(t,r){if(t.flags&4){return[Le]}else if(t.flags&128){var n=getIntrinsicAttributesTypeFromStringLiteralType(t,r);if(!n){error(r,e.Diagnostics.Property_0_does_not_exist_on_type_1,t.value,"JSX."+c.IntrinsicElements);return e.emptyArray}else{var i=createSignatureForJSXIntrinsic(r,n);return[i]}}var a=getApparentType(t);var o=getSignaturesOfType(a,1);if(o.length===0){o=getSignaturesOfType(a,0)}if(o.length===0&&a.flags&1048576){o=getUnionSignatures(e.map(a.types,function(e){return getUninstantiatedJsxSignaturesOfType(e,r)}))}return o}function getIntrinsicAttributesTypeFromStringLiteralType(t,r){var n=getJsxType(c.IntrinsicElements,r);if(n!==ee){var i=t.value;var a=getPropertyOfType(n,e.escapeLeadingUnderscores(i));if(a){return getTypeOfSymbol(a)}var o=getIndexTypeOfType(n,0);if(o){return o}return undefined}return X}function checkJsxReturnAssignableToAppropriateBound(t,r,n){if(t===1){var i=getJsxStatelessElementTypeAt(n);if(i){checkTypeRelatedTo(r,i,sr,n,e.Diagnostics.JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements)}}else if(t===0){var a=getJsxElementClassTypeAt(n);if(a){checkTypeRelatedTo(r,a,sr,n,e.Diagnostics.JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements)}}else{var i=getJsxStatelessElementTypeAt(n);var a=getJsxElementClassTypeAt(n);if(!i||!a){return}var o=getUnionType([i,a]);checkTypeRelatedTo(r,o,sr,n,e.Diagnostics.JSX_element_type_0_is_not_a_constructor_function_for_JSX_elements)}}function getIntrinsicAttributesTypeFromJsxOpeningLikeElement(t){e.Debug.assert(isJsxIntrinsicIdentifier(t.tagName));var r=getNodeLinks(t);if(!r.resolvedJsxElementAttributesType){var n=getIntrinsicTagSymbol(t);if(r.jsxFlags&1){return r.resolvedJsxElementAttributesType=getTypeOfSymbol(n)}else if(r.jsxFlags&2){return r.resolvedJsxElementAttributesType=getIndexInfoOfSymbol(n,0).type}else{return r.resolvedJsxElementAttributesType=ee}}return r.resolvedJsxElementAttributesType}function getJsxElementClassTypeAt(e){var t=getJsxType(c.ElementClass,e);if(t===ee)return undefined;return t}function getJsxElementTypeAt(e){return getJsxType(c.Element,e)}function getJsxStatelessElementTypeAt(e){var t=getJsxElementTypeAt(e);if(t){return getUnionType([t,ie])}}function getJsxIntrinsicTagNamesAt(t){var r=getJsxType(c.IntrinsicElements,t);return r?getPropertiesOfType(r):e.emptyArray}function checkJsxPreconditions(t){if((x.jsx||0)===0){error(t,e.Diagnostics.Cannot_use_JSX_unless_the_jsx_flag_is_provided)}if(getJsxElementTypeAt(t)===undefined){if(F){error(t,e.Diagnostics.JSX_element_implicitly_has_type_any_because_the_global_type_JSX_Element_does_not_exist)}}}function checkJsxOpeningLikeElementOrOpeningFragment(t){var r=e.isJsxOpeningLikeElement(t);if(r){checkGrammarJsxElement(t)}checkJsxPreconditions(t);var n=Xt&&x.jsx===2?e.Diagnostics.Cannot_find_name_0:undefined;var i=getJsxNamespace(t);var a=r?t.tagName:t;var o=resolveName(a,i,67220415,n,i,true);if(o){o.isReferenced=67108863;if(o.flags&2097152&&!isConstEnumOrConstEnumOnlyModule(resolveAlias(o))){markAliasSymbolAsReferenced(o)}}if(r){var s=getResolvedSignature(t);checkJsxReturnAssignableToAppropriateBound(getJsxReferenceKind(t),getReturnTypeOfSignature(s),t)}}function isKnownProperty(e,t,r){if(e.flags&524288){var n=resolveStructuredTypeMembers(e);if(n.stringIndexInfo||n.numberIndexInfo&&isNumericLiteralName(t)||getPropertyOfObjectType(e,t)||r&&!isUnhyphenatedJsxName(t)){return true}}else if(e.flags&3145728){for(var i=0,a=e.types;i<a.length;i++){var o=a[i];if(isKnownProperty(o,t,r)){return true}}}else if(e.flags&16777216){return isKnownProperty(e.root.trueType,t,r)||isKnownProperty(e.root.falseType,t,r)}return false}function checkJsxExpression(t,r){if(t.expression){var n=checkExpression(t.expression,r);if(t.dotDotDotToken&&n!==X&&!isArrayType(n)){error(t,e.Diagnostics.JSX_spread_child_must_be_an_array_type)}return n}else{return ee}}function getDeclarationNodeFlagsFromSymbol(t){return t.valueDeclaration?e.getCombinedNodeFlags(t.valueDeclaration):0}function isPrototypeProperty(t){if(t.flags&8192||e.getCheckFlags(t)&4){return true}if(e.isInJSFile(t.valueDeclaration)){var r=t.valueDeclaration.parent;return r&&e.isBinaryExpression(r)&&e.getAssignmentDeclarationKind(r)===3}}function checkPropertyAccessibility(t,r,n,i){var a=e.getDeclarationModifierFlagsFromSymbol(i);var o=t.kind===148?t.right:t.kind===183?t:t.name;if(e.getCheckFlags(i)&256){error(o,e.Diagnostics.Property_0_has_conflicting_declarations_and_is_inaccessible_in_type_1,symbolToString(i),typeToString(n));return false}if(r){if(C<2){if(symbolHasNonMethodDeclaration(i)){error(o,e.Diagnostics.Only_public_and_protected_methods_of_the_base_class_are_accessible_via_the_super_keyword);return false}}if(a&128){error(o,e.Diagnostics.Abstract_method_0_in_class_1_cannot_be_accessed_via_super_expression,symbolToString(i),typeToString(getDeclaringClass(i)));return false}}if(a&128&&e.isThisProperty(t)&&symbolHasNonMethodDeclaration(i)){var s=e.getClassLikeDeclarationOfSymbol(getParentOfSymbol(i));if(s&&isNodeUsedDuringClassInitialization(t)){error(o,e.Diagnostics.Abstract_property_0_in_class_1_cannot_be_accessed_in_the_constructor,symbolToString(i),e.getTextOfIdentifierOrLiteral(s.name));return false}}if(!(a&24)){return true}if(a&8){var s=e.getClassLikeDeclarationOfSymbol(getParentOfSymbol(i));if(!isNodeWithinClass(t,s)){error(o,e.Diagnostics.Property_0_is_private_and_only_accessible_within_class_1,symbolToString(i),typeToString(getDeclaringClass(i)));return false}return true}if(r){return true}var c=forEachEnclosingClass(t,function(e){var t=getDeclaredTypeOfSymbol(getSymbolOfNode(e));return isClassDerivedFromDeclaringClasses(t,i)?t:undefined});if(!c){var u=void 0;if(a&32||!(u=getThisParameterFromNodeContext(t))||!u.type){error(o,e.Diagnostics.Property_0_is_protected_and_only_accessible_within_class_1_and_its_subclasses,symbolToString(i),typeToString(getDeclaringClass(i)||n));return false}var l=getTypeFromTypeNode(u.type);c=l.flags&262144?getConstraintOfTypeParameter(l):l}if(a&32){return true}if(n.flags&262144){n=n.isThisType?getConstraintOfTypeParameter(n):getBaseConstraintOfType(n)}if(!n||!hasBaseType(n,c)){error(o,e.Diagnostics.Property_0_is_protected_and_only_accessible_through_an_instance_of_class_1,symbolToString(i),typeToString(c));return false}return true}function getThisParameterFromNodeContext(t){var r=e.getThisContainer(t,false);return r&&e.isFunctionLike(r)?e.getThisParameter(r):undefined}function symbolHasNonMethodDeclaration(e){return!!forEachProperty(e,function(e){return!(e.flags&8192)})}function checkNonNullExpression(e,t,r,n){return checkNonNullType(checkExpression(e),e,t,r,n)}function getNonNullableTypeIfNeeded(e){var t=(k?getFalsyFlags(e):e.flags)&98304;if(t){return getNonNullableType(e)}return e}function checkNonNullType(t,r,n,i,a){if(t.flags&2){error(r,e.Diagnostics.Object_is_of_type_unknown);return ee}var o=(k?getFalsyFlags(t):t.flags)&98304;if(o){error(r,o&32768?o&65536?a||e.Diagnostics.Object_is_possibly_null_or_undefined:i||e.Diagnostics.Object_is_possibly_undefined:n||e.Diagnostics.Object_is_possibly_null);var s=getNonNullableType(t);return s.flags&(98304|131072)?ee:s}return t}function checkPropertyAccessExpression(e){return checkPropertyAccessExpressionOrQualifiedName(e,e.expression,e.name)}function checkQualifiedName(e){return checkPropertyAccessExpressionOrQualifiedName(e,e.left,e.right)}function checkPropertyAccessExpressionOrQualifiedName(t,r,n){var i;var a=checkNonNullExpression(r);var o=getNodeLinks(r).resolvedSymbol;var s=getApparentType(getWidenedType(a));if(isTypeAny(s)||s===ye){if(e.isIdentifier(r)&&o){markAliasReferenced(o,t)}return s}var c=e.getAssignmentTargetKind(t);var u=getPropertyOfType(s,n.escapedText);if(e.isIdentifier(r)&&o&&!(u&&isConstEnumOrConstEnumOnlyModule(u))){markAliasReferenced(o,t)}if(!u){var l=getIndexInfoOfType(s,0);if(!(l&&l.type)){if(isJSLiteralType(a)){return X}if(n.escapedText&&!checkAndReportErrorForExtendingInterface(t)){reportNonexistentProperty(n,a.flags&262144&&a.isThisType?s:a)}return ee}if(l.isReadonly&&(e.isAssignmentTarget(t)||e.isDeleteTarget(t))){error(t,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,typeToString(s))}i=l.type}else{checkPropertyNotUsedBeforeDeclaration(u,t,n);markPropertyAsReferenced(u,t,r.kind===100);getNodeLinks(t).resolvedSymbol=u;checkPropertyAccessibility(t,r.kind===98,s,u);if(c){if(isReferenceToReadonlyEntity(t,u)||isReferenceThroughNamespaceImport(t)){error(n,e.Diagnostics.Cannot_assign_to_0_because_it_is_a_read_only_property,e.idText(n));return ee}}i=getConstraintForLocation(getTypeOfSymbol(u),t)}if(t.kind!==189||c===1||u&&!(u.flags&(3|4|98304))&&!(u.flags&8192&&i.flags&1048576)){return i}var f=false;if(k&&O&&r.kind===100){var d=u&&u.valueDeclaration;if(d&&isInstancePropertyWithoutInitializer(d)){var p=getControlFlowContainer(t);if(p.kind===157&&p.parent===d.parent){f=true}}}else if(k&&u&&u.valueDeclaration&&e.isPropertyAccessExpression(u.valueDeclaration)&&e.getAssignmentDeclarationPropertyAccessKind(u.valueDeclaration)&&getControlFlowContainer(t)===getControlFlowContainer(u.valueDeclaration)){f=true}var g=getFlowTypeOfReference(t,i,f?getOptionalType(i):i);if(f&&!(getFalsyFlags(i)&32768)&&getFalsyFlags(g)&32768){error(n,e.Diagnostics.Property_0_is_used_before_being_assigned,symbolToString(u));return i}return c?getBaseTypeOfLiteralType(g):g}function checkPropertyNotUsedBeforeDeclaration(t,r,n){var i=t.valueDeclaration;if(!i){return}var a;var o=e.idText(n);if(isInPropertyInitializer(r)&&!isBlockScopedNameDeclaredBeforeUse(i,n)&&!isPropertyDeclaredInAncestorClass(t)){a=error(n,e.Diagnostics.Property_0_is_used_before_its_initialization,o)}else if(i.kind===240&&r.parent.kind!==164&&!(i.flags&4194304)&&!isBlockScopedNameDeclaredBeforeUse(i,n)){a=error(n,e.Diagnostics.Class_0_used_before_its_declaration,o)}if(a){addRelatedInfo(a,e.createDiagnosticForNode(i,e.Diagnostics._0_is_declared_here,o))}}function isInPropertyInitializer(t){return!!e.findAncestor(t,function(t){switch(t.kind){case 154:return true;case 275:return false;default:return e.isExpressionNode(t)?false:"quit"}})}function isPropertyDeclaredInAncestorClass(e){if(!(e.parent.flags&32)){return false}var t=getTypeOfSymbol(e.parent);while(true){t=t.symbol&&getSuperClass(t);if(!t){return false}var r=getPropertyOfType(t,e.escapedName);if(r&&r.valueDeclaration){return true}}}function getSuperClass(e){var t=getBaseTypes(e);if(t.length===0){return undefined}return getIntersectionType(t)}function reportNonexistentProperty(t,r){var n;var i;if(r.flags&1048576&&!(r.flags&131068)){for(var a=0,o=r.types;a<o.length;a++){var s=o[a];if(!getPropertyOfType(s,t.escapedText)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),typeToString(s));break}}}if(typeHasStaticProperty(t.escapedText,r)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_is_a_static_member_of_type_1,e.declarationNameToString(t),typeToString(r))}else{var c=getPromisedTypeOfPromise(r);if(c&&getPropertyOfType(c,t.escapedText)){n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_forget_to_use_await,e.declarationNameToString(t),typeToString(r))}else{var u=getSuggestedSymbolForNonexistentProperty(t,r);if(u!==undefined){var l=e.symbolName(u);n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2,e.declarationNameToString(t),typeToString(r),l);i=u.valueDeclaration&&e.createDiagnosticForNode(u.valueDeclaration,e.Diagnostics._0_is_declared_here,l)}else{n=e.chainDiagnosticMessages(n,e.Diagnostics.Property_0_does_not_exist_on_type_1,e.declarationNameToString(t),typeToString(r))}}}var f=e.createDiagnosticForNodeFromMessageChain(t,n);if(i){addRelatedInfo(f,i)}Xt.add(f)}function typeHasStaticProperty(t,r){var n=r.symbol&&getPropertyOfType(getTypeOfSymbol(r.symbol),t);return n!==undefined&&n.valueDeclaration&&e.hasModifier(n.valueDeclaration,32)}function getSuggestedSymbolForNonexistentProperty(t,r){return getSpellingSuggestionForName(e.isString(t)?t:e.idText(t),getPropertiesOfType(r),67220415)}function getSuggestionForNonexistentProperty(t,r){var n=getSuggestedSymbolForNonexistentProperty(t,r);return n&&e.symbolName(n)}function getSuggestedSymbolForNonexistentSymbol(t,r,n){e.Debug.assert(r!==undefined,"outername should always be defined");var i=resolveNameHelper(t,r,n,undefined,r,false,false,function(t,n,i){e.Debug.assertEqual(r,n,"name should equal outerName");var a=getSymbol(t,n,i);return a||getSpellingSuggestionForName(e.unescapeLeadingUnderscores(n),e.arrayFrom(t.values()),i)});return i}function getSuggestionForNonexistentSymbol(t,r,n){var i=getSuggestedSymbolForNonexistentSymbol(t,r,n);return i&&e.symbolName(i)}function getSuggestedSymbolForNonexistentModule(t,r){return r.exports&&getSpellingSuggestionForName(e.idText(t),getExportsOfModuleAsArray(r),2623475)}function getSuggestionForNonexistentExport(t,r){var n=getSuggestedSymbolForNonexistentModule(t,r);return n&&e.symbolName(n)}function getSpellingSuggestionForName(t,r,n){return e.getSpellingSuggestion(t,r,getCandidateName);function getCandidateName(t){var r=e.symbolName(t);return!e.startsWith(r,'"')&&t.flags&n?r:undefined}}function markPropertyAsReferenced(t,r,n){if(!t||!(t.flags&106500)||!t.valueDeclaration||!e.hasModifier(t.valueDeclaration,8)){return}if(r&&e.isWriteOnlyAccess(r)&&!(t.flags&65536&&!(t.flags&32768))){return}if(n){var i=e.findAncestor(r,e.isFunctionLikeDeclaration);if(i&&i.symbol===t){return}}(e.getCheckFlags(t)&1?getSymbolLinks(t).target:t).isReferenced=67108863}function isValidPropertyAccess(e,t){switch(e.kind){case 189:return isValidPropertyAccessWithType(e,e.expression.kind===98,t,getWidenedType(checkExpression(e.expression)));case 148:return isValidPropertyAccessWithType(e,false,t,getWidenedType(checkExpression(e.left)));case 183:return isValidPropertyAccessWithType(e,false,t,getTypeFromTypeNode(e))}}function isValidPropertyAccessForCompletions(e,t,r){return isValidPropertyAccessWithType(e,e.kind!==183&&e.expression.kind===98,r.escapedName,t)&&(!(r.flags&8192)||isValidMethodAccess(r,t))}function isValidMethodAccess(t,r){var n=getTypeOfPropertyOfType(r,t.escapedName);var i=getSignaturesOfType(getNonNullableType(n),0);e.Debug.assert(i.length!==0);return i.some(function(e){var t=getThisTypeOfSignature(e);return!t||isTypeAssignableTo(r,getInstantiatedSignatureThisType(e,t,r))})}function getInstantiatedSignatureThisType(e,t,r){if(!e.typeParameters){return t}var n=createInferenceContext(e.typeParameters,e,0);inferTypes(n.inferences,r,t);return instantiateType(t,createSignatureTypeMapper(e,getInferredTypes(n)))}function isValidPropertyAccessWithType(t,r,n,i){if(i===ee||isTypeAny(i)){return true}var a=getPropertyOfType(i,n);return a?checkPropertyAccessibility(t,r,i,a):e.isInJSFile(t)&&(i.flags&1048576)!==0&&i.types.some(function(e){return isValidPropertyAccessWithType(t,r,n,e)})}function getForInVariableSymbol(t){var r=t.initializer;if(r.kind===238){var n=r.declarations[0];if(n&&!e.isBindingPattern(n.name)){return getSymbolOfNode(n)}}else if(r.kind===72){return getResolvedSymbol(r)}return undefined}function hasNumericPropertyNames(e){return getIndexTypeOfType(e,1)&&!getIndexTypeOfType(e,0)}function isForInVariableForNumericPropertyNames(t){var r=e.skipParentheses(t);if(r.kind===72){var n=getResolvedSymbol(r);if(n.flags&3){var i=t;var a=t.parent;while(a){if(a.kind===226&&i===a.statement&&getForInVariableSymbol(a)===n&&hasNumericPropertyNames(getTypeOfExpression(a.expression))){return true}i=a;a=a.parent}}}return false}function checkIndexedAccess(t){var r=checkNonNullExpression(t.expression);var n=t.argumentExpression;if(!n){var i=e.getSourceFileOfNode(t);if(t.parent.kind===192&&t.parent.expression===t){var a=e.skipTrivia(i.text,t.expression.end);var o=t.end;grammarErrorAtPos(i,a,o-a,e.Diagnostics.new_T_cannot_be_used_to_create_an_array_Use_new_Array_T_instead)}else{var a=t.end-"]".length;var o=t.end;grammarErrorAtPos(i,a,o-a,e.Diagnostics.Expression_expected)}return ee}var s=checkExpression(n);if(r===ee||r===ye){return r}if(isConstEnumObjectType(r)&&n.kind!==10){error(n,e.Diagnostics.A_const_enum_member_can_only_be_accessed_using_a_string_literal);return ee}return checkIndexedAccessIndexType(getIndexedAccessType(r,isForInVariableForNumericPropertyNames(n)?se:s,t),t)}function checkThatExpressionIsProperSymbolReference(t,r,n){if(r===ee){return false}if(!e.isWellKnownSymbolSyntactically(t)){return false}if((r.flags&12288)===0){if(n){error(t,e.Diagnostics.A_computed_property_name_of_the_form_0_must_be_of_type_symbol,e.getTextOfNode(t))}return false}var i=t.expression;var a=getResolvedSymbol(i);if(!a){return false}var o=getGlobalESSymbolConstructorSymbol(true);if(!o){return false}if(a!==o){if(n){error(i,e.Diagnostics.Symbol_reference_does_not_refer_to_the_global_Symbol_constructor_object)}return false}return true}function callLikeExpressionMayHaveTypeArguments(t){return e.isCallOrNewExpression(t)||e.isTaggedTemplateExpression(t)||e.isJsxOpeningLikeElement(t)}function resolveUntypedCall(t){if(callLikeExpressionMayHaveTypeArguments(t)){e.forEach(t.typeArguments,checkSourceElement)}if(t.kind===193){checkExpression(t.template)}else if(e.isJsxOpeningLikeElement(t)){checkExpression(t.attributes)}else if(t.kind!==152){e.forEach(t.arguments,function(e){checkExpression(e)})}return Le}function resolveErrorCall(e){resolveUntypedCall(e);return Re}function reorderCandidates(t,r){var n;var i;var a=0;var o;var s=-1;var c;e.Debug.assert(!r.length);for(var u=0,l=t;u<l.length;u++){var f=l[u];var d=f.declaration&&getSymbolOfNode(f.declaration);var p=f.declaration&&f.declaration.parent;if(!i||d===i){if(n&&p===n){o=o+1}else{n=p;o=a}}else{o=a=r.length;n=p}i=d;if(f.hasLiteralTypes){s++;c=s;a++}else{c=o}r.splice(c,0,f)}}function isSpreadArgument(e){return!!e&&(e.kind===208||e.kind===215&&e.isSpread)}function getSpreadArgumentIndex(t){return e.findIndex(t,isSpreadArgument)}function acceptsVoid(e){return!!(e.flags&16384)}function hasCorrectArity(t,r,n,i){if(i===void 0){i=false}var a;var o=false;var s=getParameterCount(n);var c=getMinArgumentCount(n);if(t.kind===193){a=r.length;if(t.template.kind===206){var u=e.last(t.template.templateSpans);o=e.nodeIsMissing(u.literal)||!!u.literal.isUnterminated}else{var l=t.template;e.Debug.assert(l.kind===14);o=!!l.isUnterminated}}else if(t.kind===152){a=getDecoratorArgumentCount(t,n)}else if(e.isJsxOpeningLikeElement(t)){o=t.attributes.end===t.end;if(o){return true}a=c===0?r.length:1;s=r.length===0?s:1;c=Math.min(c,1)}else{if(!t.arguments){e.Debug.assert(t.kind===192);return getMinArgumentCount(n)===0}a=i?r.length+1:r.length;o=t.arguments.end===t.end;var f=getSpreadArgumentIndex(r);if(f>=0){return f>=getMinArgumentCount(n)&&(hasEffectiveRestParameter(n)||f<getParameterCount(n))}}if(!hasEffectiveRestParameter(n)&&a>s){return false}if(o||a>=c){return true}for(var d=a;d<c;d++){var p=getTypeAtPosition(n,d);if(filterType(p,acceptsVoid).flags&131072){return false}}return true}function hasCorrectTypeArgumentArity(t,r){var n=e.length(t.typeParameters);var i=getMinTypeArgumentCount(t.typeParameters);return!r||r.length>=i&&r.length<=n}function getSingleCallSignature(e){if(e.flags&524288){var t=resolveStructuredTypeMembers(e);if(t.callSignatures.length===1&&t.constructSignatures.length===0&&t.properties.length===0&&!t.stringIndexInfo&&!t.numberIndexInfo){return t.callSignatures[0]}}return undefined}function instantiateSignatureInContextOf(t,r,n,i){var a=createInferenceContext(t.typeParameters,t,0,i);var o=n?instantiateSignature(r,n):r;forEachMatchingParameterType(o,t,function(e,t){inferTypes(a.inferences,e,t)});if(!n){inferTypes(a.inferences,getReturnTypeOfSignature(r),getReturnTypeOfSignature(t),8)}return getSignatureInstantiation(t,getInferredTypes(a),e.isInJSFile(r.declaration))}function inferJsxTypeArguments(e,t,r,n){var i=getEffectiveFirstArgumentForJsxSignature(t,e);var a=checkExpressionWithContextualType(e.attributes,i,r&&r[0]!==undefined?b:n);inferTypes(n.inferences,a,i);return getInferredTypes(n)}function inferTypeArguments(t,r,n,i,a){for(var o=0,s=a.inferences;o<s.length;o++){var c=s[o];if(!c.isFixed){c.inferredType=undefined}}if(e.isJsxOpeningLikeElement(t)){return inferJsxTypeArguments(t,r,i,a)}if(t.kind!==152){var u=getContextualType(t);if(u){var l=instantiateType(u,cloneTypeMapper(getContextualMapper(t)));var f=getSingleCallSignature(l);var d=f&&f.typeParameters?getOrCreateTypeFromSignature(getSignatureInstantiationWithoutFillingInTypeArguments(f,f.typeParameters)):l;var p=getReturnTypeOfSignature(r);inferTypes(a.inferences,d,p,8)}}var g=getThisTypeOfSignature(r);if(g){var _=getThisArgumentOfCall(t);var m=_?checkExpression(_):_e;inferTypes(a.inferences,m,g)}var y=getNonArrayRestType(r);var h=y?Math.min(getParameterCount(r)-1,n.length):n.length;for(var v=0;v<h;v++){var T=n[v];if(T.kind!==210){var S=getTypeAtPosition(r,v);var x=i&&i[v]!==undefined?b:a;var C=checkExpressionWithContextualType(T,S,x);inferTypes(a.inferences,C,S)}}if(y){var E=getSpreadArgumentType(n,h,n.length,y,a);inferTypes(a.inferences,E,y)}return getInferredTypes(a)}function getArrayifiedType(e){if(forEachType(e,function(e){return!(e.flags&(1|63176704)||isArrayType(e)||isTupleType(e))})){return createArrayType(getIndexTypeOfType(e,1)||ee)}return e}function getSpreadArgumentType(t,r,n,i,a){if(r>=n-1){var o=t[n-1];if(isSpreadArgument(o)){return o.kind===215?createArrayType(o.type):getArrayifiedType(checkExpressionWithContextualType(o.expression,i,a))}}var s=getIndexTypeOfType(i,1)||X;var c=maybeTypeOfKind(s,131068|4194304);var u=[];var l=-1;for(var f=r;f<n;f++){var d=checkExpressionWithContextualType(t[f],s,a);if(l<0&&isSpreadArgument(t[f])){l=f-r}u.push(c?getRegularTypeOfLiteralType(d):getWidenedLiteralType(d))}return l<0?createTupleType(u):createTupleType(e.append(u.slice(0,l),getUnionType(u.slice(l))),l,true)}function checkTypeArguments(t,r,n,i){var a=e.isInJSFile(t.declaration);var o=t.typeParameters;var s=fillMissingTypeArguments(e.map(r,getTypeFromTypeNode),o,getMinTypeArgumentCount(o),a);var c;for(var u=0;u<r.length;u++){e.Debug.assert(o[u]!==undefined,"Should not call checkTypeArguments with too many type arguments");var l=getConstraintOfTypeParameter(o[u]);if(l){var f=n&&i?function(){return e.chainDiagnosticMessages(undefined,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}:undefined;var d=i||e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1;if(!c){c=createTypeMapper(o,s)}var p=s[u];if(!checkTypeAssignableTo(p,getTypeWithThisArgument(instantiateType(l,c),p),n?r[u]:undefined,d,f)){return undefined}}}return s}function getJsxReferenceKind(t){if(isJsxIntrinsicIdentifier(t.tagName)){return 2}var r=getApparentType(checkExpression(t.tagName));if(e.length(getSignaturesOfType(r,1))){return 0}if(e.length(getSignaturesOfType(r,0))){return 1}return 2}function checkApplicableSignatureForJsxOpeningLikeElement(e,t,r,n,i){var a=getEffectiveFirstArgumentForJsxSignature(t,e);var o=checkExpressionWithContextualType(e.attributes,a,n&&n[0]?b:undefined);return checkTypeRelatedToAndOptionallyElaborate(o,a,r,i?e.tagName:undefined,e.attributes)}function checkApplicableSignature(t,r,n,i,a,o){if(e.isJsxOpeningLikeElement(t)){return checkApplicableSignatureForJsxOpeningLikeElement(t,n,i,a,o)}var s=getThisTypeOfSignature(n);if(s&&s!==_e&&t.kind!==192){var c=getThisArgumentOfCall(t);var u=c?checkExpression(c):_e;var l=o?c||t:undefined;var f=e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1;if(!checkTypeRelatedTo(u,s,i,l,f)){return false}}var d=e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1;var p=getNonArrayRestType(n);var g=p?Math.min(getParameterCount(n)-1,r.length):r.length;for(var _=0;_<g;_++){var m=r[_];if(m.kind!==210){var y=getTypeAtPosition(n,_);var h=checkExpressionWithContextualType(m,y,a&&a[_]?b:undefined);var v=a?getRegularTypeOfObjectLiteral(h):h;if(!checkTypeRelatedToAndOptionallyElaborate(v,y,i,o?m:undefined,m,d)){return false}}}if(p){var T=getSpreadArgumentType(r,g,r.length,p,undefined);var l=o?g<r.length?r[g]:t:undefined;return checkTypeRelatedTo(T,p,i,l,d)}return true}function getThisArgumentOfCall(t){if(t.kind===191){var r=e.skipOuterExpressions(t.expression);if(r.kind===189||r.kind===190){return r.expression}}}function createSyntheticExpression(t,r,n){var i=e.createNode(215,t.pos,t.end);i.parent=t;i.type=r;i.isSpread=n||false;return i}function getEffectiveCallArguments(t){if(t.kind===193){var r=t.template;var n=[createSyntheticExpression(r,getGlobalTemplateStringsArrayType())];if(r.kind===206){e.forEach(r.templateSpans,function(e){n.push(e.expression)})}return n}if(t.kind===152){return getEffectiveDecoratorArguments(t)}if(e.isJsxOpeningLikeElement(t)){return t.attributes.properties.length>0||e.isJsxOpeningElement(t)&&t.parent.children.length>0?[t.attributes]:e.emptyArray}var i=t.arguments||e.emptyArray;var a=i.length;if(a&&isSpreadArgument(i[a-1])&&getSpreadArgumentIndex(i)===a-1){var o=i[a-1];var s=checkExpressionCached(o.expression);if(isTupleType(s)){var c=s.typeArguments||e.emptyArray;var u=s.target.hasRestElement?c.length-1:-1;var l=e.map(c,function(e,t){return createSyntheticExpression(o,e,t===u)});return e.concatenate(i.slice(0,a-1),l)}}return i}function getEffectiveDecoratorArguments(t){var r=t.parent;var n=t.expression;switch(r.kind){case 240:case 209:return[createSyntheticExpression(n,getTypeOfSymbol(getSymbolOfNode(r)))];case 151:var i=r.parent;return[createSyntheticExpression(n,r.parent.kind===157?getTypeOfSymbol(getSymbolOfNode(i)):ee),createSyntheticExpression(n,X),createSyntheticExpression(n,se)];case 154:case 156:case 158:case 159:var a=r.kind!==154&&C!==0;return[createSyntheticExpression(n,getParentTypeOfClassElement(r)),createSyntheticExpression(n,getClassElementPropertyKeyType(r)),createSyntheticExpression(n,a?createTypedPropertyDescriptorType(getTypeOfNode(r)):X)]}return e.Debug.fail()}function getDecoratorArgumentCount(t,r){switch(t.parent.kind){case 240:case 209:return 1;case 154:return 2;case 156:case 158:case 159:return C===0||r.parameters.length<=2?2:3;case 151:return 3;default:return e.Debug.fail()}}function getArgumentArityError(t,r,n){var i=Number.POSITIVE_INFINITY;var a=Number.NEGATIVE_INFINITY;var o=Number.NEGATIVE_INFINITY;var s=Number.POSITIVE_INFINITY;var c=n.length;var u;for(var l=0,f=r;l<f.length;l++){var d=f[l];var p=getMinArgumentCount(d);var g=getParameterCount(d);if(p<c&&p>o)o=p;if(c<g&&g<s)s=g;if(p<i){i=p;u=d}a=Math.max(a,g)}var _=e.some(r,hasEffectiveRestParameter);var m=_?i:i<a?i+"-"+a:i;var y=getSpreadArgumentIndex(n)>-1;if(c<=a&&y){c--}var h;if(u&&getMinArgumentCount(u)>c&&u.declaration){var v=u.declaration.parameters[u.thisParameter?c+1:c];if(v){h=e.createDiagnosticForNode(v,e.isBindingPattern(v.name)?e.Diagnostics.An_argument_matching_this_binding_pattern_was_not_provided:e.Diagnostics.An_argument_for_0_was_not_provided,!v.name?c:!e.isBindingPattern(v.name)?e.idText(getFirstIdentifier(v.name)):undefined)}}if(_||y){var T=_&&y?e.Diagnostics.Expected_at_least_0_arguments_but_got_1_or_more:_?e.Diagnostics.Expected_at_least_0_arguments_but_got_1:e.Diagnostics.Expected_0_arguments_but_got_1_or_more;var S=e.createDiagnosticForNode(t,T,m,c);return h?addRelatedInfo(S,h):S}if(i<c&&c<a){return e.createDiagnosticForNode(t,e.Diagnostics.No_overload_expects_0_arguments_but_overloads_do_exist_that_expect_either_1_or_2_arguments,c,o,s)}var b=e.createDiagnosticForNode(t,e.Diagnostics.Expected_0_arguments_but_got_1,m,c);return h?addRelatedInfo(b,h):b}function getTypeArgumentArityError(t,r,n){var i=Infinity;var a=-Infinity;for(var o=0,s=r;o<s.length;o++){var c=s[o];i=Math.min(i,getMinTypeArgumentCount(c.typeParameters));a=Math.max(a,e.length(c.typeParameters))}var u=i===a?i:i+"-"+a;return e.createDiagnosticForNodeArray(e.getSourceFileOfNode(t),n,e.Diagnostics.Expected_0_type_arguments_but_got_1,u,n.length)}function resolveCall(t,r,n,i,o){var s=t.kind===193;var c=t.kind===152;var u=e.isJsxOpeningLikeElement(t);var l=!n;var f;if(!c){f=t.typeArguments;if(s||u||t.expression.kind!==98){e.forEach(f,checkSourceElement)}}var d=n||[];reorderCandidates(r,d);if(!d.length){if(l){Xt.add(e.createDiagnosticForNode(t,e.Diagnostics.Call_target_does_not_contain_any_signatures))}return resolveErrorCall(t)}var p=getEffectiveCallArguments(t);var g=d.length===1&&!d[0].typeParameters;var _=!c&&!g?getExcludeArgument(p):undefined;var m;var y;var h;var v;var T=i&&t.kind===191&&t.arguments.hasTrailingComma;if(d.length>1){v=chooseOverload(d,or,T)}if(!v){v=chooseOverload(d,sr,T)}if(v){return v}if(l){if(m){checkApplicableSignature(t,p,m,sr,undefined,true)}else if(y){Xt.add(getArgumentArityError(t,[y],p))}else if(h){checkTypeArguments(h,t.typeArguments,true,o)}else{var S=e.filter(r,function(e){return hasCorrectTypeArgumentArity(e,f)});if(S.length===0){Xt.add(getTypeArgumentArityError(t,r,f))}else if(!c){Xt.add(getArgumentArityError(t,S,p))}else if(o){Xt.add(e.createDiagnosticForNode(t,o))}}}return a||!p?resolveErrorCall(t):getCandidateForOverloadFailure(t,d,p,!!n);function chooseOverload(r,n,i){if(i===void 0){i=false}m=undefined;y=undefined;h=undefined;if(g){var a=r[0];if(f||!hasCorrectArity(t,p,a,i)){return undefined}if(!checkApplicableSignature(t,p,a,n,_,false)){m=a;return undefined}return a}for(var o=0;o<r.length;o++){var a=r[o];if(!hasCorrectTypeArgumentArity(a,f)||!hasCorrectArity(t,p,a,i)){continue}var s=void 0;var c=void 0;if(a.typeParameters){var u=void 0;if(f){u=checkTypeArguments(a,f,false);if(!u){h=a;continue}}else{c=createInferenceContext(a.typeParameters,a,e.isInJSFile(t)?2:0);u=inferTypeArguments(t,a,p,_,c)}s=getSignatureInstantiation(a,u,e.isInJSFile(a.declaration));if(getNonArrayRestType(a)&&!hasCorrectArity(t,p,s,i)){y=s;continue}}else{s=a}if(!checkApplicableSignature(t,p,s,n,_,false)){if(!m||getEffectiveRestType(m)||!getEffectiveRestType(s)){m=s}continue}if(_){_=undefined;if(c){var u=inferTypeArguments(t,a,p,_,c);s=getSignatureInstantiation(a,u,e.isInJSFile(a.declaration))}if(!checkApplicableSignature(t,p,s,n,_,false)){if(!m||getEffectiveRestType(m)||!getEffectiveRestType(s)){m=s}continue}}r[o]=s;return s}return undefined}}function getExcludeArgument(e){var t;for(var r=0;r<e.length;r++){if(isContextSensitive(e[r])){if(!t){t=new Array(e.length)}t[r]=true}}return t}function getCandidateForOverloadFailure(t,r,n,i){e.Debug.assert(r.length>0);return i||r.length===1||r.some(function(e){return!!e.typeParameters})?pickLongestCandidateSignature(t,r,n):createUnionOfSignaturesForOverloadFailure(r)}function createUnionOfSignaturesForOverloadFailure(t){var r=e.mapDefined(t,function(e){return e.thisParameter});var n;if(r.length){n=createCombinedSymbolFromTypes(r,r.map(getTypeOfParameter))}var i=e.minAndMax(t,getNumNonRestParameters),a=i.min,o=i.max;var s=[];var c=function(r){var n=e.mapDefined(t,function(t){var n=t.parameters,i=t.hasRestParameter;return i?r<n.length-1?n[r]:e.last(n):r<n.length?n[r]:undefined});e.Debug.assert(n.length!==0);s.push(createCombinedSymbolFromTypes(n,e.mapDefined(t,function(e){return tryGetTypeAtPosition(e,r)})))};for(var u=0;u<o;u++){c(u)}var l=e.mapDefined(t,function(t){return t.hasRestParameter?e.last(t.parameters):undefined});var f=l.length!==0;if(f){var d=createArrayType(getUnionType(e.mapDefined(t,tryGetRestTypeOfSignature),2));s.push(createCombinedSymbolForOverloadFailure(l,d))}return createSignature(t[0].declaration,undefined,n,s,getIntersectionType(t.map(getReturnTypeOfSignature)),undefined,a,f,t.some(function(e){return e.hasLiteralTypes}))}function getNumNonRestParameters(e){var t=e.parameters.length;return e.hasRestParameter?t-1:t}function createCombinedSymbolFromTypes(e,t){return createCombinedSymbolForOverloadFailure(e,getUnionType(t,2))}function createCombinedSymbolForOverloadFailure(t,r){return createSymbolWithType(e.first(t),r)}function pickLongestCandidateSignature(t,r,n){var i=getLongestCandidateIndex(r,J===undefined?n.length:J);var a=r[i];var o=a.typeParameters;if(!o){return a}var s=callLikeExpressionMayHaveTypeArguments(t)?t.typeArguments:undefined;var c=s?createSignatureInstantiation(a,getTypeArgumentsFromNodes(s,o,e.isInJSFile(t))):inferSignatureInstantiationForOverloadFailure(t,o,a,n);r[i]=c;return c}function getTypeArgumentsFromNodes(e,t,r){var n=e.map(getTypeOfNode);while(n.length>t.length){n.pop()}while(n.length<t.length){n.push(getConstraintOfTypeParameter(t[n.length])||getDefaultTypeArgumentType(r))}return n}function inferSignatureInstantiationForOverloadFailure(t,r,n,i){var a=createInferenceContext(r,n,e.isInJSFile(t)?2:0);var o=inferTypeArguments(t,n,i,getExcludeArgument(i),a);return createSignatureInstantiation(n,o)}function getLongestCandidateIndex(e,t){var r=-1;var n=-1;for(var i=0;i<e.length;i++){var a=e[i];var o=getParameterCount(a);if(hasEffectiveRestParameter(a)||o>=t){return i}if(o>n){n=o;r=i}}return r}function resolveCallExpression(t,r,n){if(t.expression.kind===98){var i=checkSuperExpression(t.expression);if(isTypeAny(i)){for(var a=0,o=t.arguments;a<o.length;a++){var s=o[a];checkExpression(s)}return Le}if(i!==ee){var c=e.getEffectiveBaseTypeNode(e.getContainingClass(t));if(c){var u=getInstantiatedConstructorsForTypeArguments(i,c.typeArguments,c);return resolveCall(t,u,r,n)}}return resolveUntypedCall(t)}var l=checkNonNullExpression(t.expression,e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null,e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_undefined,e.Diagnostics.Cannot_invoke_an_object_which_is_possibly_null_or_undefined);if(l===ye){return je}var f=getApparentType(l);if(f===ee){return resolveErrorCall(t)}var d=getSignaturesOfType(f,0);var p=getSignaturesOfType(f,1).length;if(isUntypedFunctionCall(l,f,d.length,p)){if(l!==ee&&t.typeArguments){error(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments)}return resolveUntypedCall(t)}if(!d.length){if(p){error(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,typeToString(l))}else{var g=void 0;if(t.arguments.length===1){var _=e.getSourceFileOfNode(t).text;if(e.isLineBreak(_.charCodeAt(e.skipTrivia(_,t.expression.end,true)-1))){g=e.createDiagnosticForNode(t.expression,e.Diagnostics.It_is_highly_likely_that_you_are_missing_a_semicolon)}}invocationError(t,f,0,g)}return resolveErrorCall(t)}if(d.some(function(t){return e.isInJSFile(t.declaration)&&!!e.getJSDocClassTag(t.declaration)})){error(t,e.Diagnostics.Value_of_type_0_is_not_callable_Did_you_mean_to_include_new,typeToString(l));return resolveErrorCall(t)}return resolveCall(t,d,r,n)}function isUntypedFunctionCall(e,t,r,n){return isTypeAny(e)||isTypeAny(t)&&e.flags&262144||!r&&!n&&!(t.flags&(1048576|131072))&&isTypeAssignableTo(e,Ge)}function resolveNewExpression(t,r,n){if(t.arguments&&C<1){var i=getSpreadArgumentIndex(t.arguments);if(i>=0){error(t.arguments[i],e.Diagnostics.Spread_operator_in_new_expressions_is_only_available_when_targeting_ECMAScript_5_and_higher)}}var a=checkNonNullExpression(t.expression);if(a===ye){return je}a=getApparentType(a);if(a===ee){return resolveErrorCall(t)}if(isTypeAny(a)){if(t.typeArguments){error(t,e.Diagnostics.Untyped_function_calls_may_not_accept_type_arguments)}return resolveUntypedCall(t)}var o=getSignaturesOfType(a,1);if(o.length){if(!isConstructorAccessible(t,o[0])){return resolveErrorCall(t)}var s=a.symbol&&e.getClassLikeDeclarationOfSymbol(a.symbol);if(s&&e.hasModifier(s,128)){error(t,e.Diagnostics.Cannot_create_an_instance_of_an_abstract_class);return resolveErrorCall(t)}return resolveCall(t,o,r,n)}var c=getSignaturesOfType(a,0);if(c.length){var u=resolveCall(t,c,r,n);if(!F){if(u.declaration&&!isJSConstructor(u.declaration)&&getReturnTypeOfSignature(u)!==_e){error(t,e.Diagnostics.Only_a_void_function_can_be_called_with_the_new_keyword)}if(getThisTypeOfSignature(u)===_e){error(t,e.Diagnostics.A_function_that_is_called_with_the_new_keyword_cannot_have_a_this_type_that_is_void)}}return u}invocationError(t,a,1);return resolveErrorCall(t)}function typeHasProtectedAccessibleBase(t,r){var n=getBaseTypes(r);if(!e.length(n)){return false}var i=n[0];if(i.flags&2097152){var a=i.types;var o=e.countWhere(a,isMixinConstructorType);var s=0;for(var c=0,u=i.types;c<u.length;c++){var l=u[c];s++;if(o===0||o===a.length&&s===0||!isMixinConstructorType(l)){if(e.getObjectFlags(l)&(1|2)){if(l.symbol===t){return true}if(typeHasProtectedAccessibleBase(t,l)){return true}}}}return false}if(i.symbol===t){return true}return typeHasProtectedAccessibleBase(t,i)}function isConstructorAccessible(t,r){if(!r||!r.declaration){return true}var n=r.declaration;var i=e.getSelectedModifierFlags(n,24);if(!i){return true}var a=e.getClassLikeDeclarationOfSymbol(n.parent.symbol);var o=getDeclaredTypeOfSymbol(n.parent.symbol);if(!isNodeWithinClass(t,a)){var s=e.getContainingClass(t);if(s&&i&16){var c=getTypeOfNode(s);if(typeHasProtectedAccessibleBase(n.parent.symbol,c)){return true}}if(i&8){error(t,e.Diagnostics.Constructor_of_class_0_is_private_and_only_accessible_within_the_class_declaration,typeToString(o))}if(i&16){error(t,e.Diagnostics.Constructor_of_class_0_is_protected_and_only_accessible_within_the_class_declaration,typeToString(o))}return false}return true}function invocationError(t,r,n,i){var a=error(t,n===0?e.Diagnostics.Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatures:e.Diagnostics.Cannot_use_new_with_an_expression_whose_type_lacks_a_call_or_construct_signature,typeToString(r));invocationErrorRecovery(r,n,i?addRelatedInfo(a,i):a)}function invocationErrorRecovery(t,r,n){if(!t.symbol){return}var i=getSymbolLinks(t.symbol).originatingImport;if(i&&!e.isImportCall(i)){var a=getSignaturesOfType(getTypeOfSymbol(getSymbolLinks(t.symbol).target),r);if(!a||!a.length)return;addRelatedInfo(n,e.createDiagnosticForNode(i,e.Diagnostics.Type_originates_at_this_import_A_namespace_style_import_cannot_be_called_or_constructed_and_will_cause_a_failure_at_runtime_Consider_using_a_default_import_or_import_require_here_instead))}}function resolveTaggedTemplateExpression(e,t,r){var n=checkExpression(e.tag);var i=getApparentType(n);if(i===ee){return resolveErrorCall(e)}var a=getSignaturesOfType(i,0);var o=getSignaturesOfType(i,1).length;if(isUntypedFunctionCall(n,i,a.length,o)){return resolveUntypedCall(e)}if(!a.length){invocationError(e,i,0);return resolveErrorCall(e)}return resolveCall(e,a,t,r)}function getDiagnosticHeadMessageForDecoratorResolution(t){switch(t.parent.kind){case 240:case 209:return e.Diagnostics.Unable_to_resolve_signature_of_class_decorator_when_called_as_an_expression;case 151:return e.Diagnostics.Unable_to_resolve_signature_of_parameter_decorator_when_called_as_an_expression;case 154:return e.Diagnostics.Unable_to_resolve_signature_of_property_decorator_when_called_as_an_expression;case 156:case 158:case 159:return e.Diagnostics.Unable_to_resolve_signature_of_method_decorator_when_called_as_an_expression;default:return e.Debug.fail()}}function resolveDecorator(t,r,n){var i=checkExpression(t.expression);var a=getApparentType(i);if(a===ee){return resolveErrorCall(t)}var o=getSignaturesOfType(a,0);var s=getSignaturesOfType(a,1).length;if(isUntypedFunctionCall(i,a,o.length,s)){return resolveUntypedCall(t)}if(isPotentiallyUncalledDecorator(t,o)){var c=e.getTextOfNode(t.expression,false);error(t,e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0,c);return resolveErrorCall(t)}var u=getDiagnosticHeadMessageForDecoratorResolution(t);if(!o.length){var l=e.chainDiagnosticMessages(undefined,e.Diagnostics.Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatures,typeToString(a));l=e.chainDiagnosticMessages(l,u);var f=e.createDiagnosticForNodeFromMessageChain(t,l);Xt.add(f);invocationErrorRecovery(a,0,f);return resolveErrorCall(t)}return resolveCall(t,o,r,n,u)}function createSignatureForJSXIntrinsic(t,r){var n=getJsxNamespaceAt(t);var i=n&&getExportsOfSymbol(n);var a=i&&getSymbol(i,c.Element,67897832);var o=a&&L.symbolToEntityName(a,67897832,t);var s=e.createFunctionTypeNode(undefined,[e.createParameter(undefined,undefined,undefined,"props",undefined,L.typeToTypeNode(r,t))],o?e.createTypeReferenceNode(o,undefined):e.createKeywordTypeNode(120));var u=createSymbol(1,"props");u.type=r;return createSignature(s,undefined,undefined,[u],a?getDeclaredTypeOfSymbol(a):ee,undefined,1,false,false)}function resolveJsxOpeningLikeElement(t,r,n){if(isJsxIntrinsicIdentifier(t.tagName)){var i=getIntrinsicAttributesTypeFromJsxOpeningLikeElement(t);var a=createSignatureForJSXIntrinsic(t,i);checkTypeAssignableToAndOptionallyElaborate(checkExpressionWithContextualType(t.attributes,getEffectiveFirstArgumentForJsxSignature(a,t),undefined),i,t.tagName,t.attributes);return a}var o=checkExpression(t.tagName);var s=getApparentType(o);if(s===ee){return resolveErrorCall(t)}var c=getUninstantiatedJsxSignaturesOfType(o,t);if(isUntypedFunctionCall(o,s,c.length,0)){return resolveUntypedCall(t)}if(c.length===0){error(t.tagName,e.Diagnostics.JSX_element_type_0_does_not_have_any_construct_or_call_signatures,e.getTextOfNode(t.tagName));return resolveErrorCall(t)}return resolveCall(t,c,r,n)}function isPotentiallyUncalledDecorator(t,r){return r.length&&e.every(r,function(e){return e.minArgumentCount===0&&!e.hasRestParameter&&e.parameters.length<getDecoratorArgumentCount(t,e)})}function resolveSignature(t,r,n){switch(t.kind){case 191:return resolveCallExpression(t,r,n);case 192:return resolveNewExpression(t,r,n);case 193:return resolveTaggedTemplateExpression(t,r,n);case 152:return resolveDecorator(t,r,n);case 262:case 261:return resolveJsxOpeningLikeElement(t,r,n)}throw e.Debug.assertNever(t,"Branch in 'resolveSignature' should be unreachable.")}function getResolvedSignature(e,t,r){if(r===void 0){r=false}var n=getNodeLinks(e);var i=n.resolvedSignature;if(i&&i!==Be&&!t){return i}n.resolvedSignature=Be;var a=resolveSignature(e,t,r);n.resolvedSignature=kt===Nt?a:i;return a}function isJSConstructor(t){if(!t||!e.isInJSFile(t)){return false}var r=e.isFunctionDeclaration(t)||e.isFunctionExpression(t)?t:e.isVariableDeclaration(t)&&t.initializer&&e.isFunctionExpression(t.initializer)?t.initializer:undefined;if(r){if(e.getJSDocClassTag(t))return true;var n=getSymbolOfNode(r);return!!n&&n.members!==undefined}return false}function isJSConstructorType(e){if(e.flags&524288){var t=resolveStructuredTypeMembers(e);return t.callSignatures.length===1&&isJSConstructor(t.callSignatures[0].declaration)}return false}function getJSClassType(e){var t;if(isJSConstructor(e.valueDeclaration)){t=getInferredClassType(e)}var r=getAssignedClassType(e);var n=getTypeOfSymbol(e);if(n.symbol&&!isInferredClassType(n)&&isJSConstructor(n.symbol.valueDeclaration)){t=getInferredClassType(n.symbol)}return r&&t?getIntersectionType([t,r]):r||t}function getAssignedClassType(t){var r=t.valueDeclaration;var n=r&&r.parent&&(e.isFunctionDeclaration(r)&&getSymbolOfNode(r)||e.isBinaryExpression(r.parent)&&getSymbolOfNode(r.parent.left)||e.isVariableDeclaration(r.parent)&&getSymbolOfNode(r.parent));var i=n&&n.exports&&n.exports.get("prototype");var a=i&&i.valueDeclaration&&getAssignedJSPrototype(i.valueDeclaration);return a?checkExpression(a):undefined}function getAssignedJSPrototype(t){if(!t.parent){return false}var r=t.parent;while(r&&r.kind===189){r=r.parent}if(r&&e.isBinaryExpression(r)&&e.isPrototypeAccess(r.left)&&r.operatorToken.kind===59){var n=e.getInitializerOfBinaryExpression(r);return e.isObjectLiteralExpression(n)&&n}}function getInferredClassType(t){var r=getSymbolLinks(t);if(!r.inferredClassType){r.inferredClassType=createAnonymousType(t,getMembersOfSymbol(t)||S,e.emptyArray,e.emptyArray,undefined,undefined)}return r.inferredClassType}function isInferredClassType(t){return t.symbol&&e.getObjectFlags(t)&16&&getSymbolLinks(t.symbol).inferredClassType===t}function checkCallExpression(t){if(!checkGrammarTypeArguments(t,t.typeArguments))checkGrammarArguments(t.arguments);var r=getResolvedSignature(t);if(t.expression.kind===98){return _e}if(t.kind===192){var n=r.declaration;if(n&&n.kind!==157&&n.kind!==161&&n.kind!==166&&!e.isJSDocConstructSignature(n)){var i=checkExpression(t.expression).symbol;if(!i&&t.expression.kind===72){i=getResolvedSymbol(t.expression)}var a=i&&getJSClassType(i);if(a){return r.target?instantiateType(a,r.mapper):a}if(F){error(t,e.Diagnostics.new_expression_whose_target_lacks_a_construct_signature_implicitly_has_an_any_type)}return X}}if(e.isInJSFile(t)&&isCommonJsRequire(t)){return resolveExternalModuleTypeByLiteral(t.arguments[0])}var o=getReturnTypeOfSignature(r);if(o.flags&12288&&isSymbolOrSymbolForCall(t)){return getESSymbolLikeTypeForNode(e.walkUpParenthesizedExpressions(t.parent))}var s;if(e.isInJSFile(t)){var c=e.getDeclarationOfExpando(t);if(c){var u=getSymbolOfNode(c);if(u&&e.hasEntries(u.exports)){s=createAnonymousType(u,u.exports,e.emptyArray,e.emptyArray,undefined,undefined);s.objectFlags|=16384}}}return s?getIntersectionType([o,s]):o}function isSymbolOrSymbolForCall(t){if(!e.isCallExpression(t))return false;var r=t.expression;if(e.isPropertyAccessExpression(r)&&r.name.escapedText==="for"){r=r.expression}if(!e.isIdentifier(r)||r.escapedText!=="Symbol"){return false}var n=getGlobalESSymbolConstructorSymbol(false);if(!n){return false}return n===resolveName(r,"Symbol",67220415,undefined,undefined,false)}function checkImportCallExpression(t){if(!checkGrammarArguments(t.arguments))checkGrammarImportCallExpression(t);if(t.arguments.length===0){return createPromiseReturnType(t,X)}var r=t.arguments[0];var n=checkExpressionCached(r);for(var i=1;i<t.arguments.length;++i){checkExpressionCached(t.arguments[i])}if(n.flags&32768||n.flags&65536||!isTypeAssignableTo(n,oe)){error(r,e.Diagnostics.Dynamic_import_s_specifier_must_be_of_type_string_but_here_has_type_0,typeToString(n))}var a=resolveExternalModuleName(t,r);if(a){var o=resolveESModuleSymbol(a,r,true);if(o){return createPromiseReturnType(t,getTypeWithSyntheticDefaultImportType(getTypeOfSymbol(o),o,a))}}return createPromiseReturnType(t,X)}function getTypeWithSyntheticDefaultImportType(t,r,n){if(D&&t&&t!==ee){var i=t;if(!i.syntheticType){var a=e.find(n.declarations,e.isSourceFile);var o=canHaveSyntheticDefault(a,n,false);if(o){var s=e.createSymbolTable();var c=createSymbol(2097152,"default");c.nameType=getLiteralType("default");c.target=resolveSymbol(r);s.set("default",c);var u=createSymbol(2048,"__type");var l=createAnonymousType(u,s,e.emptyArray,e.emptyArray,undefined,undefined);u.type=l;i.syntheticType=isValidSpreadType(t)?getSpreadType(t,l,u,0,0):l}else{i.syntheticType=t}}return i.syntheticType}return t}function isCommonJsRequire(t){if(!e.isRequireCall(t,true)){return false}if(!e.isIdentifier(t.expression))return e.Debug.fail();var r=resolveName(t.expression,t.expression.escapedText,67220415,undefined,undefined,true);if(r===j){return true}if(r.flags&2097152){return false}var n=r.flags&16?239:r.flags&3?237:0;if(n!==0){var i=e.getDeclarationOfKind(r,n);return!!i&&!!(i.flags&4194304)}return false}function checkTaggedTemplateExpression(e){checkGrammarTypeArguments(e,e.typeArguments);if(C<2){checkExternalEmitHelpers(e,65536)}return getReturnTypeOfSignature(getResolvedSignature(e))}function checkAssertion(e){return checkAssertionWorker(e,e.type,e.expression)}function checkAssertionWorker(t,r,n,i){var o=getRegularTypeOfObjectLiteral(getBaseTypeOfLiteralType(checkExpression(n,i)));checkSourceElement(r);var s=getTypeFromTypeNode(r);if(a&&s!==ee){var c=getWidenedType(o);if(!isTypeComparableTo(s,c)){checkTypeComparableTo(o,s,t,e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first)}}return s}function checkNonNullAssertion(e){return getNonNullableType(checkExpression(e.expression))}function checkMetaProperty(t){checkGrammarMetaProperty(t);if(t.keywordToken===95){return checkNewTargetMetaProperty(t)}if(t.keywordToken===92){return checkImportMetaProperty(t)}return e.Debug.assertNever(t.keywordToken)}function checkNewTargetMetaProperty(t){var r=e.getNewTargetContainer(t);if(!r){error(t,e.Diagnostics.Meta_property_0_is_only_allowed_in_the_body_of_a_function_declaration_function_expression_or_constructor,"new.target");return ee}else if(r.kind===157){var n=getSymbolOfNode(r.parent);return getTypeOfSymbol(n)}else{var n=getSymbolOfNode(r);return getTypeOfSymbol(n)}}function checkImportMetaProperty(t){if(C<6||E<e.ModuleKind.ESNext){error(t,e.Diagnostics.The_import_meta_meta_property_is_only_allowed_using_ESNext_for_the_target_and_module_compiler_options)}var r=e.getSourceFileOfNode(t);e.Debug.assert(!!(r.flags&1048576),"Containing file is missing import meta node flag.");e.Debug.assert(!!r.externalModuleIndicator,"Containing file should be a module.");return t.name.escapedText==="meta"?getGlobalImportMetaType():ee}function getTypeOfParameter(t){var r=getTypeOfSymbol(t);if(k){var n=t.valueDeclaration;if(n&&e.hasInitializer(n)){return getOptionalType(r)}}return r}function getParameterNameAtPosition(e,t){var r=e.parameters.length-(e.hasRestParameter?1:0);if(t<r){return e.parameters[t].escapedName}var n=e.parameters[r]||Q;var i=getTypeOfSymbol(n);if(isTupleType(i)){var a=i.target.associatedNames;var o=t-r;return a?a[o]:n.escapedName+"_"+o}return n.escapedName}function getTypeAtPosition(e,t){return tryGetTypeAtPosition(e,t)||X}function tryGetTypeAtPosition(e,t){var r=e.parameters.length-(e.hasRestParameter?1:0);if(t<r){return getTypeOfParameter(e.parameters[t])}if(e.hasRestParameter){var n=getTypeOfSymbol(e.parameters[r]);if(isTupleType(n)){if(t-r<getLengthOfTupleType(n)){return n.typeArguments[t-r]}return getRestTypeOfTupleType(n)}return getIndexTypeOfType(n,1)}return undefined}function getRestTypeAtPosition(e,t){var r=getParameterCount(e);var n=getEffectiveRestType(e);if(n&&t===r-1){return n}var i=n?Math.min(t,r-1):t;var a=[];var o=[];for(var s=i;s<r;s++){a.push(getTypeAtPosition(e,s));o.push(getParameterNameAtPosition(e,s))}var c=getMinArgumentCount(e);var u=c<i?0:c-i;return createTupleType(a,u,!!n,o)}function getParameterCount(t){var r=t.parameters.length;if(t.hasRestParameter){var n=getTypeOfSymbol(t.parameters[r-1]);if(isTupleType(n)){return r+(n.typeArguments||e.emptyArray).length-1}}return r}function getMinArgumentCount(e){if(e.hasRestParameter){var t=getTypeOfSymbol(e.parameters[e.parameters.length-1]);if(isTupleType(t)){var r=t.target.minLength;if(r>0){return e.parameters.length-1+r}}}return e.minArgumentCount}function hasEffectiveRestParameter(e){if(e.hasRestParameter){var t=getTypeOfSymbol(e.parameters[e.parameters.length-1]);return!isTupleType(t)||t.target.hasRestElement}return false}function getEffectiveRestType(e){if(e.hasRestParameter){var t=getTypeOfSymbol(e.parameters[e.parameters.length-1]);return isTupleType(t)?getRestArrayTypeOfTupleType(t):t}return undefined}function getNonArrayRestType(e){var t=getEffectiveRestType(e);return t&&!isArrayType(t)&&!isTypeAny(t)?t:undefined}function getTypeOfFirstParameterOfSignature(e){return getTypeOfFirstParameterOfSignatureWithFallback(e,me)}function getTypeOfFirstParameterOfSignatureWithFallback(e,t){return e.parameters.length>0?getTypeAtPosition(e,0):t}function inferFromAnnotatedParameters(t,r,n){var i=t.parameters.length-(t.hasRestParameter?1:0);for(var a=0;a<i;a++){var o=t.parameters[a].valueDeclaration;if(o.type){var s=e.getEffectiveTypeAnnotationNode(o);if(s){inferTypes(n.inferences,getTypeFromTypeNode(s),getTypeAtPosition(r,a))}}}}function assignContextualParameterTypes(t,r){t.typeParameters=r.typeParameters;if(r.thisParameter){var n=t.thisParameter;if(!n||n.valueDeclaration&&!n.valueDeclaration.type){if(!n){t.thisParameter=createSymbolWithType(r.thisParameter,undefined)}assignTypeToParameterAndFixTypeParameters(t.thisParameter,getTypeOfSymbol(r.thisParameter))}}var i=t.parameters.length-(t.hasRestParameter?1:0);for(var a=0;a<i;a++){var n=t.parameters[a];if(!e.getEffectiveTypeAnnotationNode(n.valueDeclaration)){var o=getTypeAtPosition(r,a);assignTypeToParameterAndFixTypeParameters(n,o)}}if(t.hasRestParameter){var n=e.last(t.parameters);if(isTransientSymbol(n)||!e.getEffectiveTypeAnnotationNode(n.valueDeclaration)){var o=getRestTypeAtPosition(r,i);assignTypeToParameterAndFixTypeParameters(n,o)}}}function assignBindingElementTypes(t){for(var r=0,n=t.elements;r<n.length;r++){var i=n[r];if(!e.isOmittedExpression(i)){if(i.name.kind===72){getSymbolLinks(getSymbolOfNode(i)).type=getTypeForBindingElement(i)}else{assignBindingElementTypes(i.name)}}}}function assignTypeToParameterAndFixTypeParameters(e,t){var r=getSymbolLinks(e);if(!r.type){r.type=t;var n=e.valueDeclaration;if(n.name.kind!==72){if(r.type===xe){r.type=getTypeFromBindingPattern(n.name)}assignBindingElementTypes(n.name)}}}function createPromiseType(e){var t=getGlobalPromiseType(true);if(t!==ke){e=getAwaitedType(e)||xe;return createTypeReference(t,[e])}return xe}function createPromiseLikeType(e){var t=getGlobalPromiseLikeType(true);if(t!==ke){e=getAwaitedType(e)||xe;return createTypeReference(t,[e])}return xe}function createPromiseReturnType(t,r){var n=createPromiseType(r);if(n===xe){error(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_returns_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_must_return_a_Promise_Make_sure_you_have_a_declaration_for_Promise_or_include_ES2015_in_your_lib_option);return ee}else if(!getGlobalPromiseConstructorSymbol(true)){error(t,e.isImportCall(t)?e.Diagnostics.A_dynamic_import_call_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option:e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option)}return n}function getReturnTypeFromBody(t,r){if(!t.body){return ee}var n=e.getFunctionFlags(t);var i;if(t.body.kind!==218){i=checkExpressionCached(t.body,r);if(n&2){i=checkAwaitedType(i,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}}else{var a=checkAndAggregateReturnExpressionTypes(t,r);if(n&1){a=e.concatenate(checkAndAggregateYieldOperandTypes(t,r),a);if(!a||a.length===0){var o=n&2?createAsyncIterableIteratorType(X):createIterableIteratorType(X);if(F){error(t.asteriskToken,e.Diagnostics.Generator_implicitly_has_type_0_because_it_does_not_yield_any_values_Consider_supplying_a_return_type,typeToString(o))}return o}}else{if(!a){return n&2?createPromiseReturnType(t,me):me}if(a.length===0){return n&2?createPromiseReturnType(t,_e):_e}}i=getUnionType(a,2)}var s=getContextualSignatureForFunctionLikeDeclaration(t);if(!s){reportErrorsFromWidening(t,i)}if(isUnitType(i)){var c=!s?undefined:s===getSignatureFromDeclaration(t)?i:getReturnTypeOfSignature(s);if(c){switch(n&3){case 3:c=getIteratedTypeOfGenerator(c,true);break;case 1:c=getIteratedTypeOfGenerator(c,false);break;case 2:c=getPromisedTypeOfPromise(c);break}}i=getWidenedLiteralLikeTypeForContextualType(i,c)}var u=getWidenedType(i);switch(n&3){case 3:return createAsyncIterableIteratorType(u);case 1:return createIterableIteratorType(u);case 2:return createPromiseType(u);default:return u}}function checkAndAggregateYieldOperandTypes(t,r){var n=[];var i=(e.getFunctionFlags(t)&2)!==0;e.forEachYieldExpression(t.body,function(t){e.pushIfUnique(n,getYieldedTypeOfYieldExpression(t,i,r))});return n}function getYieldedTypeOfYieldExpression(t,r,n){var i=t.expression||t;var a=t.expression?checkExpression(t.expression,n):ne;var o=t.asteriskToken?checkIteratedTypeOrElementType(a,i,false,r):a;return!r?o:getAwaitedType(o,i,t.asteriskToken?e.Diagnostics.Type_of_iterated_elements_of_a_yield_Asterisk_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member:e.Diagnostics.Type_of_yield_operand_in_an_async_generator_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}function getFactsFromTypeofSwitch(e,t,r,n){var i=0;if(n){for(var a=t;a<r.length;a++){i|=tr.get(r[a])||32768}for(var a=e;a<t;a++){i&=~(tr.get(r[a])||0)}for(var a=0;a<e;a++){i|=tr.get(r[a])||32768}}else{for(var a=e;a<t;a++){i|=er.get(r[a])||128}for(var a=0;a<e;a++){i&=~(er.get(r[a])||0)}}return i}function isExhaustiveSwitchStatement(t){if(!t.possiblyExhaustive){return false}if(t.expression.kind===199){var r=getTypeOfExpression(t.expression.expression);var n=getSwitchClauseTypeOfWitnesses(t);var i=getFactsFromTypeofSwitch(0,0,n,true);var a=getBaseConstraintOfType(r)||r;return!!(filterType(a,function(e){return(getTypeFacts(e)&i)===i}).flags&131072)}var o=getTypeOfExpression(t.expression);if(!isLiteralType(o)){return false}var s=getSwitchClauseTypes(t);if(!s.length||e.some(s,isNeitherUnitTypeNorNever)){return false}return eachTypeContainedIn(mapType(o,getRegularTypeOfLiteralType),s)}function functionHasImplicitReturn(t){if(!(t.flags&128)){return false}if(e.some(t.body.statements,function(e){return e.kind===232&&isExhaustiveSwitchStatement(e)})){return false}return true}function checkAndAggregateReturnExpressionTypes(t,r){var n=e.getFunctionFlags(t);var i=[];var a=functionHasImplicitReturn(t);var o=false;e.forEachReturnStatement(t.body,function(s){var c=s.expression;if(c){var u=checkExpressionCached(c,r);if(n&2){u=checkAwaitedType(u,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}if(u.flags&131072){o=true}e.pushIfUnique(i,u)}else{a=true}});if(i.length===0&&!a&&(o||mayReturnNever(t))){return undefined}if(k&&i.length&&a&&!(isJSConstructor(t)&&i.some(function(e){return e.symbol===t.symbol}))){e.pushIfUnique(i,re)}return i}function mayReturnNever(e){switch(e.kind){case 196:case 197:return true;case 156:return e.parent.kind===188;default:return false}}function checkAllCodePathsInNonVoidFunctionReturnOrThrow(t,r){if(!a){return}if(r&&maybeTypeOfKind(r,1|16384)){return}if(t.kind===155||e.nodeIsMissing(t.body)||t.body.kind!==218||!functionHasImplicitReturn(t)){return}var n=t.flags&256;if(r&&r.flags&131072){error(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_returning_never_cannot_have_a_reachable_end_point)}else if(r&&!n){error(e.getEffectiveReturnTypeNode(t),e.Diagnostics.A_function_whose_declared_type_is_neither_void_nor_any_must_return_a_value)}else if(r&&k&&!isTypeAssignableTo(re,r)){error(e.getEffectiveReturnTypeNode(t),e.Diagnostics.Function_lacks_ending_return_statement_and_return_type_does_not_include_undefined)}else if(x.noImplicitReturns){if(!r){if(!n){return}var i=getReturnTypeOfSignature(getSignatureFromDeclaration(t));if(isUnwrappedReturnTypeVoidOrAny(t,i)){return}}error(e.getEffectiveReturnTypeNode(t)||t,e.Diagnostics.Not_all_code_paths_return_a_value)}}function checkFunctionExpressionOrObjectLiteralMethod(t,r){e.Debug.assert(t.kind!==156||e.isObjectLiteralMethod(t));checkNodeDeferred(t);if(r===1&&isContextSensitive(t)){if(!e.getEffectiveReturnTypeNode(t)&&hasContextSensitiveReturnExpression(t)){var n=getNodeLinks(t);if(n.contextFreeType){return n.contextFreeType}var i=getReturnTypeFromBody(t,r);var a=createSignature(undefined,undefined,undefined,e.emptyArray,i,undefined,0,false,false);var o=createAnonymousType(t.symbol,S,[a],e.emptyArray,undefined,undefined);o.flags|=536870912;return n.contextFreeType=o}return Ne}var s=checkGrammarFunctionLikeDeclaration(t);if(!s&&t.kind===196){checkGrammarForGenerator(t)}var c=getNodeLinks(t);var u=getTypeOfSymbol(getMergedSymbol(t.symbol));if(isTypeAny(u)){return u}if(!(c.flags&1024)){var l=getContextualSignature(t);if(!(c.flags&1024)){c.flags|=1024;if(l){var f=getSignaturesOfType(u,0)[0];if(isContextSensitive(t)){var d=getContextualMapper(t);if(r===2){inferFromAnnotatedParameters(f,l,d)}var p=d===b?l:instantiateSignature(l,d);assignContextualParameterTypes(f,p)}if(!getReturnTypeFromAnnotation(t)&&!f.resolvedReturnType){var i=getReturnTypeFromBody(t,r);if(!f.resolvedReturnType){f.resolvedReturnType=i}}}checkSignatureDeclaration(t)}}return u}function getReturnOrPromisedType(e,t){var r=getReturnTypeFromAnnotation(e);return r&&(t&3)===2?getAwaitedType(r)||ee:r}function checkFunctionExpressionOrObjectLiteralMethodDeferred(t){e.Debug.assert(t.kind!==156||e.isObjectLiteralMethod(t));var r=e.getFunctionFlags(t);var n=getReturnOrPromisedType(t,r);if((r&1)===0){checkAllCodePathsInNonVoidFunctionReturnOrThrow(t,n)}if(t.body){if(!e.getEffectiveReturnTypeNode(t)){getReturnTypeOfSignature(getSignatureFromDeclaration(t))}if(t.body.kind===218){checkSourceElement(t.body)}else{var i=checkExpression(t.body);if(n){if((r&3)===2){var a=checkAwaitedType(i,t.body,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);checkTypeAssignableToAndOptionallyElaborate(a,n,t.body,t.body)}else{checkTypeAssignableToAndOptionallyElaborate(i,n,t.body,t.body)}}}}}function checkArithmeticOperandType(e,t,r){if(!isTypeAssignableTo(t,be)){error(e,r);return false}return true}function isReadonlyAssignmentDeclaration(t){if(!e.isCallExpression(t)){return false}if(!e.isBindableObjectDefinePropertyCall(t)){return false}var r=checkExpressionCached(t.arguments[2]);var n=getTypeOfPropertyOfType(r,"value");if(n){var i=getPropertyOfType(r,"writable");var a=i&&getTypeOfSymbol(i);if(!a||a===ue||a===le){return true}if(i&&i.valueDeclaration&&e.isPropertyAssignment(i.valueDeclaration)){var o=i.valueDeclaration.initializer;var s=checkExpression(o);if(s===ue||s===le){return true}}return false}var c=getPropertyOfType(r,"set");return!c}function isReadonlySymbol(t){return!!(e.getCheckFlags(t)&8||t.flags&4&&e.getDeclarationModifierFlagsFromSymbol(t)&64||t.flags&3&&getDeclarationNodeFlagsFromSymbol(t)&2||t.flags&98304&&!(t.flags&65536)||t.flags&8||e.some(t.declarations,isReadonlyAssignmentDeclaration))}function isReferenceToReadonlyEntity(t,r){if(isReadonlySymbol(r)){if(r.flags&4&&(t.kind===189||t.kind===190)&&t.expression.kind===100){var n=e.getContainingFunction(t);if(!(n&&n.kind===157)){return true}return!r.valueDeclaration||!(n.parent===r.valueDeclaration.parent||n===r.valueDeclaration.parent)}return true}return false}function isReferenceThroughNamespaceImport(t){if(t.kind===189||t.kind===190){var r=e.skipParentheses(t.expression);if(r.kind===72){var n=getNodeLinks(r).resolvedSymbol;if(n.flags&2097152){var i=getDeclarationOfAliasSymbol(n);return!!i&&i.kind===251}}}return false}function checkReferenceExpression(t,r){var n=e.skipOuterExpressions(t,2|1);if(n.kind!==72&&n.kind!==189&&n.kind!==190){error(t,r);return false}return true}function checkDeleteExpression(t){checkExpression(t.expression);var r=e.skipParentheses(t.expression);if(r.kind!==189&&r.kind!==190){error(r,e.Diagnostics.The_operand_of_a_delete_operator_must_be_a_property_reference);return pe}var n=getNodeLinks(r);var i=getExportSymbolOfValueSymbolIfExported(n.resolvedSymbol);if(i&&isReadonlySymbol(i)){error(r,e.Diagnostics.The_operand_of_a_delete_operator_cannot_be_a_read_only_property)}return pe}function checkTypeOfExpression(e){checkExpression(e.expression);return nr}function checkVoidExpression(e){checkExpression(e.expression);return ne}function checkAwaitExpression(t){if(a){if(!(t.flags&16384)){grammarErrorOnFirstToken(t,e.Diagnostics.await_expression_is_only_allowed_within_an_async_function)}if(isInParameterInitializerBeforeContainingFunction(t)){error(t,e.Diagnostics.await_expressions_cannot_be_used_in_a_parameter_initializer)}}var r=checkExpression(t.expression);return checkAwaitedType(r,t,e.Diagnostics.Type_of_await_operand_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}function checkPrefixUnaryExpression(t){var r=checkExpression(t.operand);if(r===ye){return ye}switch(t.operand.kind){case 8:switch(t.operator){case 39:return getFreshTypeOfLiteralType(getLiteralType(-t.operand.text));case 38:return getFreshTypeOfLiteralType(getLiteralType(+t.operand.text))}break;case 9:if(t.operator===39){return getFreshTypeOfLiteralType(getLiteralType({negative:true,base10Value:e.parsePseudoBigInt(t.operand.text)}))}}switch(t.operator){case 38:case 39:case 53:checkNonNullType(r,t.operand);if(maybeTypeOfKind(r,12288)){error(t.operand,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(t.operator))}if(t.operator===38){if(maybeTypeOfKind(r,2112)){error(t.operand,e.Diagnostics.Operator_0_cannot_be_applied_to_type_1,e.tokenToString(t.operator),typeToString(r))}return se}return getUnaryResultType(r);case 52:checkTruthinessExpression(t.operand);var n=getTypeFacts(r)&(4194304|8388608);return n===4194304?ue:n===8388608?fe:pe;case 44:case 45:var i=checkArithmeticOperandType(t.operand,checkNonNullType(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type);if(i){checkReferenceExpression(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access)}return getUnaryResultType(r)}return ee}function checkPostfixUnaryExpression(t){var r=checkExpression(t.operand);if(r===ye){return ye}var n=checkArithmeticOperandType(t.operand,checkNonNullType(r,t.operand),e.Diagnostics.An_arithmetic_operand_must_be_of_type_any_number_bigint_or_an_enum_type);if(n){checkReferenceExpression(t.operand,e.Diagnostics.The_operand_of_an_increment_or_decrement_operator_must_be_a_variable_or_a_property_access)}return getUnaryResultType(r)}function getUnaryResultType(e){if(maybeTypeOfKind(e,2112)){return isTypeAssignableToKind(e,3)||maybeTypeOfKind(e,296)?be:ce}return se}function maybeTypeOfKind(e,t){if(e.flags&t&~134217728||t&134217728&&isGenericMappedType(e)){return true}if(e.flags&3145728){var r=e.types;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(maybeTypeOfKind(a,t)){return true}}}return false}function isTypeAssignableToKind(e,t,r){if(e.flags&t){return true}if(r&&e.flags&(3|16384|32768|65536)){return false}return!!(t&296)&&isTypeAssignableTo(e,se)||!!(t&2112)&&isTypeAssignableTo(e,ce)||!!(t&132)&&isTypeAssignableTo(e,oe)||!!(t&528)&&isTypeAssignableTo(e,pe)||!!(t&16384)&&isTypeAssignableTo(e,_e)||!!(t&131072)&&isTypeAssignableTo(e,me)||!!(t&65536)&&isTypeAssignableTo(e,ie)||!!(t&32768)&&isTypeAssignableTo(e,re)||!!(t&4096)&&isTypeAssignableTo(e,ge)||!!(t&67108864)&&isTypeAssignableTo(e,ve)}function allTypesAssignableToKind(t,r,n){return t.flags&1048576?e.every(t.types,function(e){return allTypesAssignableToKind(e,r,n)}):isTypeAssignableToKind(t,r,n)}function isConstEnumObjectType(t){return!!(e.getObjectFlags(t)&16)&&!!t.symbol&&isConstEnumSymbol(t.symbol)}function isConstEnumSymbol(e){return(e.flags&128)!==0}function checkInstanceOfExpression(t,r,n,i){if(n===ye||i===ye){return ye}if(!isTypeAny(n)&&allTypesAssignableToKind(n,131068)){error(t,e.Diagnostics.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter)}if(!(isTypeAny(i)||typeHasCallOrConstructSignatures(i)||isTypeSubtypeOf(i,Ge))){error(r,e.Diagnostics.The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type)}return pe}function checkInExpression(t,r,n,i){if(n===ye||i===ye){return ye}n=checkNonNullType(n,t);i=checkNonNullType(i,r);if(!(isTypeComparableTo(n,oe)||isTypeAssignableToKind(n,296|12288))){error(t,e.Diagnostics.The_left_hand_side_of_an_in_expression_must_be_of_type_any_string_number_or_symbol)}if(!isTypeAssignableToKind(i,67108864|58982400)){error(r,e.Diagnostics.The_right_hand_side_of_an_in_expression_must_be_of_type_any_an_object_type_or_a_type_parameter)}return pe}function checkObjectLiteralAssignment(e,t,r){var n=e.properties;if(k&&n.length===0){return checkNonNullType(t,e)}for(var i=0,a=n;i<a.length;i++){var o=a[i];checkObjectLiteralDestructuringPropertyAssignment(t,o,n,r)}return t}function checkObjectLiteralDestructuringPropertyAssignment(t,r,n,i){if(i===void 0){i=false}if(r.kind===275||r.kind===276){var a=r.name;if(a.kind===149){checkComputedPropertyName(a)}if(isComputedNonLiteralName(a)){return undefined}var o=getTypeOfObjectLiteralDestructuringProperty(t,a,r,i);if(o){return checkDestructuringAssignment(r.kind===276?r:r.initializer,o)}else{error(a,e.Diagnostics.Type_0_has_no_property_1_and_no_string_index_signature,typeToString(t),e.declarationNameToString(a))}}else if(r.kind===277){if(C<6){checkExternalEmitHelpers(r,4)}var s=[];if(n){for(var c=0;c<n.length-1;c++){s.push(n[c].name)}}var o=getRestType(t,s,t.symbol);checkGrammarForDisallowedTrailingComma(n,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);return checkDestructuringAssignment(r.expression,o)}else{error(r,e.Diagnostics.Property_assignment_expected)}}function getTypeOfObjectLiteralDestructuringProperty(t,r,n,i){if(isTypeAny(t)){return t}var a;var o=e.getTextOfPropertyName(r);if(o){var s=getPropertyOfType(t,o);if(s){markPropertyAsReferenced(s,n,i);checkPropertyAccessibility(n,false,t,s);a=getTypeOfSymbol(s)}a=a||(isNumericLiteralName(o)?getIndexTypeOfType(t,1):undefined)}return a||getIndexTypeOfType(t,0)}function checkArrayLiteralAssignment(e,t,r){var n=e.elements;if(C<2&&x.downlevelIteration){checkExternalEmitHelpers(e,512)}var i=checkIteratedTypeOrElementType(t,e,false,false)||ee;for(var a=0;a<n.length;a++){checkArrayLiteralDestructuringElementAssignment(e,t,a,i,r)}return t}function checkArrayLiteralDestructuringElementAssignment(t,r,n,i,a){var o=t.elements;var s=o[n];if(s.kind!==210){if(s.kind!==208){var c=""+n;var u=isTypeAny(r)?r:everyType(r,isTupleLikeType)?getTupleElementType(r,n):i;if(u){return checkDestructuringAssignment(s,u,a)}checkExpression(s);if(isTupleType(r)){error(s,e.Diagnostics.Tuple_type_0_with_length_1_cannot_be_assigned_to_tuple_with_length_2,typeToString(r),getTypeReferenceArity(r),o.length)}else{error(s,e.Diagnostics.Type_0_has_no_property_1,typeToString(r),c)}}else{if(n<o.length-1){error(s,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern)}else{var l=s.expression;if(l.kind===204&&l.operatorToken.kind===59){error(l.operatorToken,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}else{checkGrammarForDisallowedTrailingComma(t.elements,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);var u=everyType(r,isTupleType)?mapType(r,function(e){return sliceTupleType(e,n)}):createArrayType(i);return checkDestructuringAssignment(l,u,a)}}}}return undefined}function checkDestructuringAssignment(e,t,r,n){var i;if(e.kind===276){var a=e;if(a.objectAssignmentInitializer){if(k&&!(getFalsyFlags(checkExpression(a.objectAssignmentInitializer))&32768)){t=getTypeWithFacts(t,524288)}checkBinaryLikeExpression(a.name,a.equalsToken,a.objectAssignmentInitializer,r)}i=e.name}else{i=e}if(i.kind===204&&i.operatorToken.kind===59){checkBinaryExpression(i,r);i=i.left}if(i.kind===188){return checkObjectLiteralAssignment(i,t,n)}if(i.kind===187){return checkArrayLiteralAssignment(i,t,r)}return checkReferenceAssignment(i,t,r)}function checkReferenceAssignment(t,r,n){var i=checkExpression(t,n);var a=t.parent.kind===277?e.Diagnostics.The_target_of_an_object_rest_assignment_must_be_a_variable_or_a_property_access:e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access;if(checkReferenceExpression(t,a)){checkTypeAssignableToAndOptionallyElaborate(r,i,t,t)}return r}function isSideEffectFree(t){t=e.skipParentheses(t);switch(t.kind){case 72:case 10:case 13:case 193:case 206:case 14:case 8:case 9:case 102:case 87:case 96:case 141:case 196:case 209:case 197:case 187:case 188:case 199:case 213:case 261:case 260:return true;case 205:return isSideEffectFree(t.whenTrue)&&isSideEffectFree(t.whenFalse);case 204:if(e.isAssignmentOperator(t.operatorToken.kind)){return false}return isSideEffectFree(t.left)&&isSideEffectFree(t.right);case 202:case 203:switch(t.operator){case 52:case 38:case 39:case 53:return true}return false;case 200:case 194:case 212:default:return false}}function isTypeEqualityComparableTo(e,t){return(t.flags&98304)!==0||isTypeComparableTo(e,t)}function checkBinaryExpression(t,r){if(e.isInJSFile(t)&&e.getAssignedExpandoInitializer(t)){return checkExpression(t.right,r)}return checkBinaryLikeExpression(t.left,t.operatorToken,t.right,r,t)}function checkBinaryLikeExpression(t,r,n,i,o){var s=r.kind;if(s===59&&(t.kind===188||t.kind===187)){return checkDestructuringAssignment(t,checkExpression(n,i),i,n.kind===100)}var c;if(s===54||s===55){c=checkTruthinessExpression(t,i)}else{c=checkExpression(t,i)}var u=checkExpression(n,i);switch(s){case 40:case 41:case 62:case 63:case 42:case 64:case 43:case 65:case 39:case 61:case 46:case 66:case 47:case 67:case 48:case 68:case 50:case 70:case 51:case 71:case 49:case 69:if(c===ye||u===ye){return ye}c=checkNonNullType(c,t);u=checkNonNullType(u,n);var l=void 0;if(c.flags&528&&u.flags&528&&(l=getSuggestedBooleanOperator(r.kind))!==undefined){error(o||r,e.Diagnostics.The_0_operator_is_not_allowed_for_boolean_types_Consider_using_1_instead,e.tokenToString(r.kind),e.tokenToString(l));return se}else{var f=checkArithmeticOperandType(t,c,e.Diagnostics.The_left_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type);var d=checkArithmeticOperandType(n,u,e.Diagnostics.The_right_hand_side_of_an_arithmetic_operation_must_be_of_type_any_number_bigint_or_an_enum_type);var p;if(isTypeAssignableToKind(c,3)&&isTypeAssignableToKind(u,3)||!(maybeTypeOfKind(c,2112)||maybeTypeOfKind(u,2112))){p=se}else if(isTypeAssignableToKind(c,2112)&&isTypeAssignableToKind(u,2112)){switch(s){case 48:case 68:reportOperatorError()}p=ce}else{reportOperatorError();p=ee}if(f&&d){checkAssignmentOperator(p)}return p}case 38:case 60:if(c===ye||u===ye){return ye}if(!isTypeAssignableToKind(c,132)&&!isTypeAssignableToKind(u,132)){c=checkNonNullType(c,t);u=checkNonNullType(u,n)}var g=void 0;if(isTypeAssignableToKind(c,296,true)&&isTypeAssignableToKind(u,296,true)){g=se}else if(isTypeAssignableToKind(c,2112,true)&&isTypeAssignableToKind(u,2112,true)){g=ce}else if(isTypeAssignableToKind(c,132,true)||isTypeAssignableToKind(u,132,true)){g=oe}else if(isTypeAny(c)||isTypeAny(u)){g=c===ee||u===ee?ee:X}if(g&&!checkForDisallowedESSymbolOperand(s)){return g}if(!g){reportOperatorError();return X}if(s===60){checkAssignmentOperator(g)}return g;case 28:case 30:case 31:case 32:if(checkForDisallowedESSymbolOperand(s)){c=getBaseTypeOfLiteralType(checkNonNullType(c,t));u=getBaseTypeOfLiteralType(checkNonNullType(u,n));if(!(isTypeComparableTo(c,u)||isTypeComparableTo(u,c)||isTypeAssignableTo(c,be)&&isTypeAssignableTo(u,be))){reportOperatorError()}}return pe;case 33:case 34:case 35:case 36:var _=isLiteralType(c);var m=isLiteralType(u);if(!_||!m){c=_?getBaseTypeOfLiteralType(c):c;u=m?getBaseTypeOfLiteralType(u):u}if(!isTypeEqualityComparableTo(c,u)&&!isTypeEqualityComparableTo(u,c)){reportOperatorError()}return pe;case 94:return checkInstanceOfExpression(t,n,c,u);case 93:return checkInExpression(t,n,c,u);case 54:return getTypeFacts(c)&4194304?getUnionType([extractDefinitelyFalsyTypes(k?c:getBaseTypeOfLiteralType(u)),u]):c;case 55:return getTypeFacts(c)&8388608?getUnionType([removeDefinitelyFalsyTypes(c),u],2):c;case 59:var y=e.isBinaryExpression(t.parent)?e.getAssignmentDeclarationKind(t.parent):0;checkAssignmentDeclaration(y,u);if(isAssignmentDeclaration(y)){if(!(u.flags&524288)||y!==2&&y!==6&&!isEmptyObjectType(u)&&!isFunctionObjectType(u)&&!(e.getObjectFlags(u)&1)){checkAssignmentOperator(u)}return c}else{checkAssignmentOperator(u);return getRegularTypeOfObjectLiteral(u)}case 27:if(!x.allowUnreachableCode&&isSideEffectFree(t)&&!isEvalNode(n)){error(t,e.Diagnostics.Left_side_of_comma_operator_is_unused_and_has_no_side_effects)}return u;default:return e.Debug.fail()}function checkAssignmentDeclaration(t,r){if(t===2){for(var n=0,i=getPropertiesOfObjectType(r);n<i.length;n++){var a=i[n];var o=getTypeOfSymbol(a);if(o.symbol&&o.symbol.flags&32){var s=a.escapedName;var c=resolveName(a.valueDeclaration,s,67897832,undefined,s,false);if(c&&c.declarations.some(e.isJSDocTypedefTag)){grammarErrorOnNode(c.declarations[0],e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s));return grammarErrorOnNode(a.valueDeclaration,e.Diagnostics.Duplicate_identifier_0,e.unescapeLeadingUnderscores(s))}}}}}function isEvalNode(e){return e.kind===72&&e.escapedText==="eval"}function checkForDisallowedESSymbolOperand(r){var i=maybeTypeOfKind(c,12288)?t:maybeTypeOfKind(u,12288)?n:undefined;if(i){error(i,e.Diagnostics.The_0_operator_cannot_be_applied_to_type_symbol,e.tokenToString(r));return false}return true}function getSuggestedBooleanOperator(e){switch(e){case 50:case 70:return 55;case 51:case 71:return 36;case 49:case 69:return 54;default:return undefined}}function checkAssignmentOperator(r){if(a&&e.isAssignmentOperator(s)){if(checkReferenceExpression(t,e.Diagnostics.The_left_hand_side_of_an_assignment_expression_must_be_a_variable_or_a_property_access)&&(!e.isIdentifier(t)||e.unescapeLeadingUnderscores(t.escapedText)!=="exports")){checkTypeAssignableToAndOptionallyElaborate(r,c,t,n)}}}function isAssignmentDeclaration(r){switch(r){case 2:return true;case 1:case 5:case 6:case 3:case 4:var i=getSymbolOfNode(t);var a=e.getAssignedExpandoInitializer(n);return a&&e.isObjectLiteralExpression(a)&&i&&e.hasEntries(i.exports);default:return false}}function reportOperatorError(){var t=typeToString(c);var n=typeToString(u);var i=o||r;if(!tryGiveBetterPrimaryError(i,t,n)){error(i,e.Diagnostics.Operator_0_cannot_be_applied_to_types_1_and_2,e.tokenToString(r.kind),t,n)}}function tryGiveBetterPrimaryError(t,n,i){switch(r.kind){case 35:case 33:return error(t,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap,"false",n,i);case 36:case 34:return error(t,e.Diagnostics.This_condition_will_always_return_0_since_the_types_1_and_2_have_no_overlap,"true",n,i)}return undefined}}function isYieldExpressionInClass(t){var r=t;var n=t.parent;while(n){if(e.isFunctionLike(n)&&r===n.body){return false}else if(e.isClassLike(r)){return true}r=n;n=n.parent}return false}function checkYieldExpression(t){if(a){if(!(t.flags&4096)||isYieldExpressionInClass(t)){grammarErrorOnFirstToken(t,e.Diagnostics.A_yield_expression_is_only_allowed_in_a_generator_body)}if(isInParameterInitializerBeforeContainingFunction(t)){error(t,e.Diagnostics.yield_expressions_cannot_be_used_in_a_parameter_initializer)}}var r=e.getContainingFunction(t);if(!r)return X;var n=e.getFunctionFlags(r);if(!(n&1)){return X}if(t.asteriskToken){if((n&3)===3&&C<6){checkExternalEmitHelpers(t,26624)}if((n&3)===1&&C<2&&x.downlevelIteration){checkExternalEmitHelpers(t,256)}}var i=(n&2)!==0;var o=getYieldedTypeOfYieldExpression(t,i);var s=getReturnTypeFromAnnotation(r);if(s){var c=getIteratedTypeOfGenerator(s,i)||X;checkTypeAssignableToAndOptionallyElaborate(o,c,t.expression||t,t.expression)}return X}function checkConditionalExpression(e,t){checkTruthinessExpression(e.condition);var r=checkExpression(e.whenTrue,t);var n=checkExpression(e.whenFalse,t);return getUnionType([r,n],2)}function checkTemplateExpression(t){e.forEach(t.templateSpans,function(t){if(maybeTypeOfKind(checkExpression(t.expression),12288)){error(t.expression,e.Diagnostics.Implicit_conversion_of_a_symbol_to_a_string_will_fail_at_runtime_Consider_wrapping_this_expression_in_String)}});return oe}function getContextNode(t){if(t.kind===268&&!e.isJsxSelfClosingElement(t.parent)){return t.parent.parent}return t}function checkExpressionWithContextualType(e,t,r){var n=getContextNode(e);var i=n.contextualType;var a=n.contextualMapper;n.contextualType=t;n.contextualMapper=r;var o=r===b?1:r?2:3;var s=checkExpression(e,o);n.contextualType=i;n.contextualMapper=a;return s}function checkExpressionCached(e,t){var r=getNodeLinks(e);if(!r.resolvedType){if(t){return checkExpression(e,t)}var n=kt;kt=Nt;r.resolvedType=checkExpression(e,t);kt=n}return r.resolvedType}function isTypeAssertion(t){t=e.skipParentheses(t);return t.kind===194||t.kind===212}function checkDeclarationInitializer(t){var r=e.getEffectiveInitializer(t);var n=getTypeOfExpression(r,true);var i=e.getCombinedNodeFlags(t)&2||e.isDeclarationReadonly(t)||isTypeAssertion(r)?n:getWidenedLiteralType(n);if(e.isInJSFile(t)){if(i.flags&98304){reportImplicitAny(t,X);return X}else if(isEmptyArrayLiteralType(i)){reportImplicitAny(t,nt);return nt}}return i}function isLiteralOfContextualType(t,r){if(r){if(r.flags&3145728){var n=r.types;return e.some(n,function(e){return isLiteralOfContextualType(t,e)})}if(r.flags&58982400){var i=getBaseConstraintOfType(r)||xe;return maybeTypeOfKind(i,4)&&maybeTypeOfKind(t,128)||maybeTypeOfKind(i,8)&&maybeTypeOfKind(t,256)||maybeTypeOfKind(i,64)&&maybeTypeOfKind(t,2048)||maybeTypeOfKind(i,4096)&&maybeTypeOfKind(t,8192)||isLiteralOfContextualType(t,i)}return!!(r.flags&(128|4194304)&&maybeTypeOfKind(t,128)||r.flags&256&&maybeTypeOfKind(t,256)||r.flags&2048&&maybeTypeOfKind(t,2048)||r.flags&512&&maybeTypeOfKind(t,512)||r.flags&8192&&maybeTypeOfKind(t,8192))}return false}function checkExpressionForMutableLocation(e,t,r,n){if(arguments.length===2){r=getContextualType(e)}var i=checkExpression(e,t,n);return isTypeAssertion(e)?i:getWidenedLiteralLikeTypeForContextualType(i,r)}function checkPropertyAssignment(e,t){if(e.name.kind===149){checkComputedPropertyName(e.name)}return checkExpressionForMutableLocation(e.initializer,t)}function checkObjectLiteralMethod(e,t){checkGrammarMethod(e);if(e.name.kind===149){checkComputedPropertyName(e.name)}var r=checkFunctionExpressionOrObjectLiteralMethod(e,t);return instantiateTypeWithSingleGenericCallSignature(e,r,t)}function instantiateTypeWithSingleGenericCallSignature(e,t,r){if(r===2){var n=getSingleCallSignature(t);if(n&&n.typeParameters){var i=getApparentTypeOfContextualType(e);if(i){var a=getSingleCallSignature(getNonNullableType(i));if(a&&!a.typeParameters){return getOrCreateTypeFromSignature(instantiateSignatureInContextOf(n,a,getContextualMapper(e)))}}}}return t}function getTypeOfExpression(t,r){var n=e.skipParentheses(t);if(n.kind===191&&n.expression.kind!==98&&!e.isRequireCall(n,true)&&!isSymbolOrSymbolForCall(n)){var i=checkNonNullExpression(n.expression);var a=getSingleCallSignature(i);if(a&&!a.typeParameters){return getReturnTypeOfSignature(a)}}else if(n.kind===194||n.kind===212){return getTypeFromTypeNode(n.type)}return r?checkExpressionCached(t):checkExpression(t)}function getContextFreeTypeOfExpression(e){var t=getNodeLinks(e);if(t.contextFreeType){return t.contextFreeType}var r=e.contextualType;e.contextualType=X;var n=t.contextFreeType=checkExpression(e,1);e.contextualType=r;return n}function checkExpression(t,r,n){var i;if(t.kind===148){i=checkQualifiedName(t)}else{var a=checkExpressionWorker(t,r,n);i=instantiateTypeWithSingleGenericCallSignature(t,a,r)}if(isConstEnumObjectType(i)){var o=t.parent.kind===189&&t.parent.expression===t||t.parent.kind===190&&t.parent.expression===t||((t.kind===72||t.kind===148)&&isInRightSideOfImportOrExportAssignment(t)||t.parent.kind===167&&t.parent.exprName===t);if(!o){error(t,e.Diagnostics.const_enums_can_only_be_used_in_property_or_index_access_expressions_or_the_right_hand_side_of_an_import_declaration_or_export_assignment_or_type_query)}}return i}function checkParenthesizedExpression(t,r){var n=e.isInJSFile(t)?e.getJSDocTypeTag(t):undefined;if(n){return checkAssertionWorker(n,n.typeExpression.type,t.expression,r)}return checkExpression(t.expression,r)}function checkExpressionWorker(t,r,n){switch(t.kind){case 72:return checkIdentifier(t);case 100:return checkThisExpression(t);case 98:return checkSuperExpression(t);case 96:return ae;case 14:case 10:return getFreshTypeOfLiteralType(getLiteralType(t.text));case 8:checkGrammarNumericLiteral(t);return getFreshTypeOfLiteralType(getLiteralType(+t.text));case 9:checkGrammarBigIntLiteral(t);return getFreshTypeOfLiteralType(getBigIntLiteralType(t));case 102:return fe;case 87:return ue;case 206:return checkTemplateExpression(t);case 13:return tt;case 187:return checkArrayLiteral(t,r,n);case 188:return checkObjectLiteral(t,r);case 189:return checkPropertyAccessExpression(t);case 190:return checkIndexedAccess(t);case 191:if(t.expression.kind===92){return checkImportCallExpression(t)}case 192:return checkCallExpression(t);case 193:return checkTaggedTemplateExpression(t);case 195:return checkParenthesizedExpression(t,r);case 209:return checkClassExpression(t);case 196:case 197:return checkFunctionExpressionOrObjectLiteralMethod(t,r);case 199:return checkTypeOfExpression(t);case 194:case 212:return checkAssertion(t);case 213:return checkNonNullAssertion(t);case 214:return checkMetaProperty(t);case 198:return checkDeleteExpression(t);case 200:return checkVoidExpression(t);case 201:return checkAwaitExpression(t);case 202:return checkPrefixUnaryExpression(t);case 203:return checkPostfixUnaryExpression(t);case 204:return checkBinaryExpression(t,r);case 205:return checkConditionalExpression(t,r);case 208:return checkSpreadExpression(t,r);case 210:return ne;case 207:return checkYieldExpression(t);case 215:return t.type;case 270:return checkJsxExpression(t,r);case 260:return checkJsxElement(t,r);case 261:return checkJsxSelfClosingElement(t,r);case 264:return checkJsxFragment(t);case 268:return checkJsxAttributes(t,r);case 262:e.Debug.fail("Shouldn't ever directly check a JsxOpeningElement")}return ee}function checkTypeParameter(t){if(t.expression){grammarErrorOnFirstToken(t.expression,e.Diagnostics.Type_expected)}checkSourceElement(t.constraint);checkSourceElement(t.default);var r=getDeclaredTypeOfTypeParameter(getSymbolOfNode(t));if(!hasNonCircularBaseConstraint(r)){error(e.getEffectiveConstraintOfTypeParameter(t),e.Diagnostics.Type_parameter_0_has_a_circular_constraint,typeToString(r))}if(!hasNonCircularTypeParameterDefault(r)){error(t.default,e.Diagnostics.Type_parameter_0_has_a_circular_default,typeToString(r))}var n=getConstraintOfTypeParameter(r);var i=getDefaultFromTypeParameter(r);if(n&&i){checkTypeAssignableTo(i,getTypeWithThisArgument(n,i),t.default,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}if(a){checkTypeNameIsReserved(t.name,e.Diagnostics.Type_parameter_name_cannot_be_0)}}function checkParameter(t){checkGrammarDecoratorsAndModifiers(t);checkVariableLikeDeclaration(t);var r=e.getContainingFunction(t);if(e.hasModifier(t,92)){if(!(r.kind===157&&e.nodeIsPresent(r.body))){error(t,e.Diagnostics.A_parameter_property_is_only_allowed_in_a_constructor_implementation)}}if(t.questionToken&&e.isBindingPattern(t.name)&&r.body){error(t,e.Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature)}if(t.name&&e.isIdentifier(t.name)&&(t.name.escapedText==="this"||t.name.escapedText==="new")){if(r.parameters.indexOf(t)!==0){error(t,e.Diagnostics.A_0_parameter_must_be_the_first_parameter,t.name.escapedText)}if(r.kind===157||r.kind===161||r.kind===166){error(t,e.Diagnostics.A_constructor_cannot_have_a_this_parameter)}if(r.kind===197){error(t,e.Diagnostics.An_arrow_function_cannot_have_a_this_parameter)}}if(t.dotDotDotToken&&!e.isBindingPattern(t.name)&&!isTypeAssignableTo(getTypeOfSymbol(t.symbol),nt)){error(t,e.Diagnostics.A_rest_parameter_must_be_of_an_array_type)}}function checkTypePredicate(t){var r=getTypePredicateParent(t);if(!r){error(t,e.Diagnostics.A_type_predicate_is_only_allowed_in_return_type_position_for_functions_and_methods);return}var n=getTypePredicateOfSignature(getSignatureFromDeclaration(r));if(!n){return}checkSourceElement(t.type);var i=t.parameterName;if(e.isThisTypePredicate(n)){getTypeFromThisTypeNode(i)}else{if(n.parameterIndex>=0){if(r.parameters[n.parameterIndex].dotDotDotToken){error(i,e.Diagnostics.A_type_predicate_cannot_reference_a_rest_parameter)}else{var a=function(){return e.chainDiagnosticMessages(undefined,e.Diagnostics.A_type_predicate_s_type_must_be_assignable_to_its_parameter_s_type)};checkTypeAssignableTo(n.type,getTypeOfNode(r.parameters[n.parameterIndex]),t.type,undefined,a)}}else if(i){var o=false;for(var s=0,c=r.parameters;s<c.length;s++){var u=c[s].name;if(e.isBindingPattern(u)&&checkIfTypePredicateVariableIsDeclaredInBindingPattern(u,i,n.parameterName)){o=true;break}}if(!o){error(t.parameterName,e.Diagnostics.Cannot_find_parameter_0,n.parameterName)}}}}function getTypePredicateParent(e){switch(e.parent.kind){case 197:case 160:case 239:case 196:case 165:case 156:case 155:var t=e.parent;if(e===t.type){return t}}}function checkIfTypePredicateVariableIsDeclaredInBindingPattern(t,r,n){for(var i=0,a=t.elements;i<a.length;i++){var o=a[i];if(e.isOmittedExpression(o)){continue}var s=o.name;if(s.kind===72&&s.escapedText===n){error(r,e.Diagnostics.A_type_predicate_cannot_reference_element_0_in_a_binding_pattern,n);return true}else if(s.kind===185||s.kind===184){if(checkIfTypePredicateVariableIsDeclaredInBindingPattern(s,r,n)){return true}}}}function checkSignatureDeclaration(t){if(t.kind===162){checkGrammarIndexSignature(t)}else if(t.kind===165||t.kind===239||t.kind===166||t.kind===160||t.kind===157||t.kind===161){checkGrammarFunctionLikeDeclaration(t)}var r=e.getFunctionFlags(t);if(!(r&4)){if((r&3)===3&&C<6){checkExternalEmitHelpers(t,6144)}if((r&3)===2&&C<4){checkExternalEmitHelpers(t,64)}if((r&3)!==0&&C<2){checkExternalEmitHelpers(t,128)}}checkTypeParameters(t.typeParameters);e.forEach(t.parameters,checkParameter);if(t.type){checkSourceElement(t.type)}if(a){checkCollisionWithArgumentsInGeneratedCode(t);var n=e.getEffectiveReturnTypeNode(t);if(F&&!n){switch(t.kind){case 161:error(t,e.Diagnostics.Construct_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break;case 160:error(t,e.Diagnostics.Call_signature_which_lacks_return_type_annotation_implicitly_has_an_any_return_type);break}}if(n){var i=e.getFunctionFlags(t);if((i&(4|1))===1){var o=getTypeFromTypeNode(n);if(o===_e){error(n,e.Diagnostics.A_generator_cannot_have_a_void_type_annotation)}else{var s=getIteratedTypeOfGenerator(o,(i&2)!==0)||X;var c=i&2?createAsyncIterableIteratorType(s):createIterableIteratorType(s);checkTypeAssignableTo(c,o,n)}}else if((i&3)===2){checkAsyncFunctionReturnType(t,n)}}if(t.kind!==162&&t.kind!==289){registerForUnusedIdentifiersCheck(t)}}}function checkClassForDuplicateDeclarations(t){var r;(function(e){e[e["Getter"]=1]="Getter";e[e["Setter"]=2]="Setter";e[e["Method"]=4]="Method";e[e["Property"]=3]="Property"})(r||(r={}));var n=e.createUnderscoreEscapedMap();var i=e.createUnderscoreEscapedMap();for(var a=0,o=t.members;a<o.length;a++){var s=o[a];if(s.kind===157){for(var c=0,u=s.parameters;c<u.length;c++){var l=u[c];if(e.isParameterPropertyDeclaration(l)&&!e.isBindingPattern(l.name)){addName(n,l.name,l.name.escapedText,3)}}}else{var f=e.hasModifier(s,32);var d=f?i:n;var p=s.name;var g=p&&e.getPropertyNameForPropertyNameNode(p);if(p&&g){switch(s.kind){case 158:addName(d,p,g,1);break;case 159:addName(d,p,g,2);break;case 154:addName(d,p,g,3);break;case 156:addName(d,p,g,4);break}}}}function addName(t,r,n,i){var a=t.get(n);if(a){if(a&4){if(i!==4){error(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r))}}else if(a&i){error(r,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(r))}else{t.set(n,a|i)}}else{t.set(n,i)}}}function checkClassForStaticPropertyNameConflicts(t){for(var r=0,n=t.members;r<n.length;r++){var i=n[r];var a=i.name;var o=e.hasModifier(i,32);if(o&&a){var s=e.getPropertyNameForPropertyNameNode(a);switch(s){case"name":case"length":case"caller":case"arguments":case"prototype":var c=e.Diagnostics.Static_property_0_conflicts_with_built_in_property_Function_0_of_constructor_function_1;var u=getNameOfSymbolAsWritten(getSymbolOfNode(t));error(a,c,s,u);break}}}}function checkObjectTypeForDuplicateDeclarations(t){var r=e.createMap();for(var n=0,i=t.members;n<i.length;n++){var a=i[n];if(a.kind===153){var o=void 0;var s=a.name;switch(s.kind){case 10:case 8:o=s.text;break;case 72:o=e.idText(s);break;default:continue}if(r.get(o)){error(e.getNameOfDeclaration(a.symbol.valueDeclaration),e.Diagnostics.Duplicate_identifier_0,o);error(a.name,e.Diagnostics.Duplicate_identifier_0,o)}else{r.set(o,true)}}}}function checkTypeForDuplicateIndexSignatures(t){if(t.kind===241){var r=getSymbolOfNode(t);if(r.declarations.length>0&&r.declarations[0]!==t){return}}var n=getIndexSymbol(getSymbolOfNode(t));if(n){var i=false;var a=false;for(var o=0,s=n.declarations;o<s.length;o++){var c=s[o];var u=c;if(u.parameters.length===1&&u.parameters[0].type){switch(u.parameters[0].type.kind){case 138:if(!a){a=true}else{error(u,e.Diagnostics.Duplicate_string_index_signature)}break;case 135:if(!i){i=true}else{error(u,e.Diagnostics.Duplicate_number_index_signature)}break}}}}}function checkPropertyDeclaration(e){if(!checkGrammarDecoratorsAndModifiers(e)&&!checkGrammarProperty(e))checkGrammarComputedPropertyName(e.name);checkVariableLikeDeclaration(e)}function checkMethodDeclaration(t){if(!checkGrammarMethod(t))checkGrammarComputedPropertyName(t.name);checkFunctionOrMethodDeclaration(t);if(e.hasModifier(t,128)&&t.kind===156&&t.body){error(t,e.Diagnostics.Method_0_cannot_have_an_implementation_because_it_is_marked_abstract,e.declarationNameToString(t.name))}}function checkConstructorDeclaration(t){checkSignatureDeclaration(t);if(!checkGrammarConstructorTypeParameters(t))checkGrammarConstructorTypeAnnotation(t);checkSourceElement(t.body);var r=getSymbolOfNode(t);var n=e.getDeclarationOfKind(r,t.kind);if(t===n){checkFunctionOrConstructorSymbol(r)}if(e.nodeIsMissing(t.body)){return}if(!a){return}function isInstancePropertyWithInitializer(t){return t.kind===154&&!e.hasModifier(t,32)&&!!t.initializer}var i=t.parent;if(e.getEffectiveBaseTypeNode(i)){captureLexicalThis(t.parent,i);var o=classDeclarationExtendsNull(i);var s=getSuperCallInConstructor(t);if(s){if(o){error(s,e.Diagnostics.A_constructor_cannot_contain_a_super_call_when_its_class_extends_null)}var c=e.some(t.parent.members,isInstancePropertyWithInitializer)||e.some(t.parameters,function(t){return e.hasModifier(t,92)});if(c){var u=t.body.statements;var l=void 0;for(var f=0,d=u;f<d.length;f++){var p=d[f];if(p.kind===221&&e.isSuperCall(p.expression)){l=p;break}if(!e.isPrologueDirective(p)){break}}if(!l){error(t,e.Diagnostics.A_super_call_must_be_the_first_statement_in_the_constructor_when_a_class_contains_initialized_properties_or_has_parameter_properties)}}}else if(!o){error(t,e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call)}}}function checkAccessorDeclaration(t){if(a){if(!checkGrammarFunctionLikeDeclaration(t)&&!checkGrammarAccessor(t))checkGrammarComputedPropertyName(t.name);checkDecorators(t);checkSignatureDeclaration(t);if(t.kind===158){if(!(t.flags&4194304)&&e.nodeIsPresent(t.body)&&t.flags&128){if(!(t.flags&256)){error(t.name,e.Diagnostics.A_get_accessor_must_return_a_value)}}}if(t.name.kind===149){checkComputedPropertyName(t.name)}if(!hasNonBindableDynamicName(t)){var r=t.kind===158?159:158;var n=e.getDeclarationOfKind(getSymbolOfNode(t),r);if(n){var i=e.getModifierFlags(t);var o=e.getModifierFlags(n);if((i&28)!==(o&28)){error(t.name,e.Diagnostics.Getter_and_setter_accessors_do_not_agree_in_visibility)}if((i&128)!==(o&128)){error(t.name,e.Diagnostics.Accessors_must_both_be_abstract_or_non_abstract)}checkAccessorDeclarationTypesIdentical(t,n,getAnnotatedAccessorType,e.Diagnostics.get_and_set_accessor_must_have_the_same_type);checkAccessorDeclarationTypesIdentical(t,n,getThisTypeOfDeclaration,e.Diagnostics.get_and_set_accessor_must_have_the_same_this_type)}}var s=getTypeOfAccessors(getSymbolOfNode(t));if(t.kind===158){checkAllCodePathsInNonVoidFunctionReturnOrThrow(t,s)}}checkSourceElement(t.body)}function checkAccessorDeclarationTypesIdentical(e,t,r,n){var i=r(e);var a=r(t);if(i&&a&&!isTypeIdenticalTo(i,a)){error(e,n)}}function checkMissingDeclaration(e){checkDecorators(e)}function getEffectiveTypeArguments(t,r){return fillMissingTypeArguments(e.map(t.typeArguments,getTypeFromTypeNode),r,getMinTypeArgumentCount(r),e.isInJSFile(t))}function checkTypeArgumentConstraints(t,r){var n;var i;var a=true;for(var o=0;o<r.length;o++){var s=getConstraintOfTypeParameter(r[o]);if(s){if(!n){n=getEffectiveTypeArguments(t,r);i=createTypeMapper(r,n)}a=a&&checkTypeAssignableTo(n[o],instantiateType(s,i),t.typeArguments[o],e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1)}}return a}function getTypeParametersForTypeReference(t){var r=getTypeFromTypeReference(t);if(r!==ee){var n=getNodeLinks(t).resolvedSymbol;if(n){return n.flags&524288&&getSymbolLinks(n).typeParameters||(e.getObjectFlags(r)&4?r.target.localTypeParameters:undefined)}}return undefined}function checkTypeReferenceNode(t){checkGrammarTypeArguments(t,t.typeArguments);if(t.kind===164&&t.typeName.jsdocDotPos!==undefined&&!e.isInJSFile(t)&&!e.isInJSDoc(t)){grammarErrorAtPos(t,t.typeName.jsdocDotPos,1,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}var r=getTypeFromTypeReference(t);if(r!==ee){if(t.typeArguments){e.forEach(t.typeArguments,checkSourceElement);if(a){var n=getTypeParametersForTypeReference(t);if(n){checkTypeArgumentConstraints(t,n)}}}if(r.flags&32&&getNodeLinks(t).resolvedSymbol.flags&8){error(t,e.Diagnostics.Enum_type_0_has_members_with_initializers_that_are_not_literals,typeToString(r))}}}function getTypeArgumentConstraint(t){var r=e.tryCast(t.parent,e.isTypeReferenceType);if(!r)return undefined;var n=getTypeParametersForTypeReference(r);var i=getConstraintOfTypeParameter(n[r.typeArguments.indexOf(t)]);return i&&instantiateType(i,createTypeMapper(n,getEffectiveTypeArguments(r,n)))}function checkTypeQuery(e){getTypeFromTypeQueryNode(e)}function checkTypeLiteral(t){e.forEach(t.members,checkSourceElement);if(a){var r=getTypeFromTypeLiteralOrFunctionOrConstructorTypeNode(t);checkIndexConstraints(r);checkTypeForDuplicateIndexSignatures(t);checkObjectTypeForDuplicateDeclarations(t)}}function checkArrayType(e){checkSourceElement(e.elementType)}function checkTupleType(t){var r=t.elementTypes;var n=false;for(var i=0;i<r.length;i++){var a=r[i];if(a.kind===172){if(i!==r.length-1){grammarErrorOnNode(a,e.Diagnostics.A_rest_element_must_be_last_in_a_tuple_type);break}if(!isArrayType(getTypeFromTypeNode(a))){error(a,e.Diagnostics.A_rest_element_type_must_be_an_array_type)}}else if(a.kind===171){n=true}else if(n){grammarErrorOnNode(a,e.Diagnostics.A_required_element_cannot_follow_an_optional_element);break}}checkGrammarForDisallowedTrailingComma(t.elementTypes);e.forEach(t.elementTypes,checkSourceElement)}function checkUnionOrIntersectionType(t){e.forEach(t.types,checkSourceElement)}function checkIndexedAccessIndexType(t,r){if(!(t.flags&8388608)){return t}var n=t.objectType;var i=t.indexType;if(isTypeAssignableTo(i,getIndexType(n,false))){if(r.kind===190&&e.isAssignmentTarget(r)&&e.getObjectFlags(n)&32&&getMappedTypeModifiers(n)&1){error(r,e.Diagnostics.Index_signature_in_type_0_only_permits_reading,typeToString(n))}return t}if(getIndexInfoOfType(getApparentType(n),1)&&isTypeAssignableToKind(i,296)){return t}error(r,e.Diagnostics.Type_0_cannot_be_used_to_index_type_1,typeToString(i),typeToString(n));return t}function checkIndexedAccessType(e){checkSourceElement(e.objectType);checkSourceElement(e.indexType);checkIndexedAccessIndexType(getTypeFromIndexedAccessTypeNode(e),e)}function checkMappedType(t){checkSourceElement(t.typeParameter);checkSourceElement(t.type);if(!t.type){reportImplicitAny(t,X)}var r=getTypeFromMappedTypeNode(t);var n=getConstraintTypeFromMappedType(r);checkTypeAssignableTo(n,Se,e.getEffectiveConstraintOfTypeParameter(t.typeParameter))}function checkThisType(e){getTypeFromThisTypeNode(e)}function checkTypeOperator(e){checkGrammarTypeOperatorNode(e);checkSourceElement(e.type)}function checkConditionalType(t){e.forEachChild(t,checkSourceElement)}function checkInferType(t){if(!e.findAncestor(t,function(e){return e.parent&&e.parent.kind===175&&e.parent.extendsType===e})){grammarErrorOnNode(t,e.Diagnostics.infer_declarations_are_only_permitted_in_the_extends_clause_of_a_conditional_type)}checkSourceElement(t.typeParameter);registerForUnusedIdentifiersCheck(t)}function checkImportType(e){checkSourceElement(e.argument);getTypeFromTypeNode(e)}function isPrivateWithinAmbient(t){return e.hasModifier(t,8)&&!!(t.flags&4194304)}function getEffectiveDeclarationFlags(t,r){var n=e.getCombinedModifierFlags(t);if(t.parent.kind!==241&&t.parent.kind!==240&&t.parent.kind!==209&&t.flags&4194304){if(!(n&2)&&!(e.isModuleBlock(t.parent)&&e.isModuleDeclaration(t.parent.parent)&&e.isGlobalScopeAugmentation(t.parent.parent))){n|=1}n|=2}return n&r}function checkFunctionOrConstructorSymbol(t){if(!a){return}function getCanonicalOverload(e,t){var r=t!==undefined&&t.parent===e[0].parent;return r?t:e[0]}function checkFlagAgreementBetweenOverloads(t,r,n,i,a){var o=i^a;if(o!==0){var s=getEffectiveDeclarationFlags(getCanonicalOverload(t,r),n);e.forEach(t,function(t){var r=getEffectiveDeclarationFlags(t,n)^s;if(r&1){error(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_exported_or_non_exported)}else if(r&2){error(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_ambient_or_non_ambient)}else if(r&(8|16)){error(e.getNameOfDeclaration(t)||t,e.Diagnostics.Overload_signatures_must_all_be_public_private_or_protected)}else if(r&128){error(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_abstract_or_non_abstract)}})}}function checkQuestionTokenAgreementBetweenOverloads(t,r,n,i){if(n!==i){var a=e.hasQuestionToken(getCanonicalOverload(t,r));e.forEach(t,function(t){var r=e.hasQuestionToken(t)!==a;if(r){error(e.getNameOfDeclaration(t),e.Diagnostics.Overload_signatures_must_all_be_optional_or_required)}})}}var r=1|2|8|16|128;var n=0;var i=r;var o=false;var s=true;var c=false;var u;var l;var f;var d=t.declarations;var p=(t.flags&16384)!==0;function reportImplementationExpectedError(t){if(t.name&&e.nodeIsMissing(t.name)){return}var r=false;var n=e.forEachChild(t.parent,function(e){if(r){return e}else{r=e===t}});if(n&&n.pos===t.end){if(n.kind===t.kind){var i=n.name||n;var a=n.name;if(t.name&&a&&(e.isComputedPropertyName(t.name)&&e.isComputedPropertyName(a)||!e.isComputedPropertyName(t.name)&&!e.isComputedPropertyName(a)&&e.getEscapedTextOfIdentifierOrLiteral(t.name)===e.getEscapedTextOfIdentifierOrLiteral(a))){var o=(t.kind===156||t.kind===155)&&e.hasModifier(t,32)!==e.hasModifier(n,32);if(o){var s=e.hasModifier(t,32)?e.Diagnostics.Function_overload_must_be_static:e.Diagnostics.Function_overload_must_not_be_static;error(i,s)}return}else if(e.nodeIsPresent(n.body)){error(i,e.Diagnostics.Function_implementation_name_must_be_0,e.declarationNameToString(t.name));return}}}var c=t.name||t;if(p){error(c,e.Diagnostics.Constructor_implementation_is_missing)}else{if(e.hasModifier(t,128)){error(c,e.Diagnostics.All_declarations_of_an_abstract_method_must_be_consecutive)}else{error(c,e.Diagnostics.Function_implementation_is_missing_or_not_immediately_following_the_declaration)}}}var g=false;var _=false;for(var m=0,y=d;m<y.length;m++){var h=y[m];var v=h;var T=v.flags&4194304;var S=v.parent.kind===241||v.parent.kind===168||T;if(S){f=undefined}if(v.kind===239||v.kind===156||v.kind===155||v.kind===157){var b=getEffectiveDeclarationFlags(v,r);n|=b;i&=b;o=o||e.hasQuestionToken(v);s=s&&e.hasQuestionToken(v);if(e.nodeIsPresent(v.body)&&u){if(p){_=true}else{g=true}}else if(f&&f.parent===v.parent&&f.end!==v.pos){reportImplementationExpectedError(f)}if(e.nodeIsPresent(v.body)){if(!u){u=v}}else{c=true}f=v;if(!S){l=v}}}if(_){e.forEach(d,function(t){error(t,e.Diagnostics.Multiple_constructor_implementations_are_not_allowed)})}if(g){e.forEach(d,function(t){error(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_function_implementation)})}if(l&&!l.body&&!e.hasModifier(l,128)&&!l.questionToken){reportImplementationExpectedError(l)}if(c){checkFlagAgreementBetweenOverloads(d,u,r,n,i);checkQuestionTokenAgreementBetweenOverloads(d,u,o,s);if(u){var x=getSignaturesOfSymbol(t);var C=getSignatureFromDeclaration(u);for(var E=0,D=x;E<D.length;E++){var k=D[E];if(!isImplementationCompatibleWithOverload(C,k)){error(k.declaration,e.Diagnostics.Overload_signature_is_not_compatible_with_function_implementation);break}}}}}var Sr;(function(e){e[e["None"]=0]="None";e[e["ExportValue"]=1]="ExportValue";e[e["ExportType"]=2]="ExportType";e[e["ExportNamespace"]=4]="ExportNamespace"})(Sr||(Sr={}));function checkExportsOnMergedDeclarations(t){if(!a){return}var r=t.localSymbol;if(!r){r=getSymbolOfNode(t);if(!r.exportSymbol){return}}if(e.getDeclarationOfKind(r,t.kind)!==t){return}var n=0;var i=0;var o=0;for(var s=0,c=r.declarations;s<c.length;s++){var u=c[s];var l=getDeclarationSpaces(u);var f=getEffectiveDeclarationFlags(u,1|512);if(f&1){if(f&512){o|=l}else{n|=l}}else{i|=l}}var d=n|i;var p=n&i;var g=o&d;if(p||g){for(var _=0,m=r.declarations;_<m.length;_++){var u=m[_];var l=getDeclarationSpaces(u);var y=e.getNameOfDeclaration(u);if(l&g){error(y,e.Diagnostics.Merged_declaration_0_cannot_include_a_default_export_declaration_Consider_adding_a_separate_export_default_0_declaration_instead,e.declarationNameToString(y))}else if(l&p){error(y,e.Diagnostics.Individual_declarations_in_merged_declaration_0_must_be_all_exported_or_all_local,e.declarationNameToString(y))}}}function getDeclarationSpaces(t){var r=t;switch(r.kind){case 241:case 242:case 304:case 297:return 2;case 244:return e.isAmbientModule(r)||e.getModuleInstanceState(r)!==0?4|1:4;case 240:case 243:return 2|1;case 279:return 2|1|4;case 254:if(!e.isEntityNameExpression(r.expression)){return 1}r=r.expression;case 248:case 251:case 250:var n=0;var i=resolveAlias(getSymbolOfNode(r));e.forEach(i.declarations,function(e){n|=getDeclarationSpaces(e)});return n;case 237:case 186:case 239:case 253:return 1;default:return e.Debug.fail(e.Debug.showSyntaxKind(r))}}}function getAwaitedTypeOfPromise(e,t,r){var n=getPromisedTypeOfPromise(e,t);return n&&getAwaitedType(n,t,r)}function getPromisedTypeOfPromise(t,r){if(isTypeAny(t)){return undefined}var n=t;if(n.promisedTypeOfPromise){return n.promisedTypeOfPromise}if(isReferenceToType(t,getGlobalPromiseType(false))){return n.promisedTypeOfPromise=t.typeArguments[0]}var i=getTypeOfPropertyOfType(t,"then");if(isTypeAny(i)){return undefined}var a=i?getSignaturesOfType(i,0):e.emptyArray;if(a.length===0){if(r){error(r,e.Diagnostics.A_promise_must_have_a_then_method)}return undefined}var o=getTypeWithFacts(getUnionType(e.map(a,getTypeOfFirstParameterOfSignature)),2097152);if(isTypeAny(o)){return undefined}var s=getSignaturesOfType(o,0);if(s.length===0){if(r){error(r,e.Diagnostics.The_first_parameter_of_the_then_method_of_a_promise_must_be_a_callback)}return undefined}return n.promisedTypeOfPromise=getUnionType(e.map(s,getTypeOfFirstParameterOfSignature),2)}function checkAwaitedType(e,t,r){return getAwaitedType(e,t,r)||ee}function getAwaitedType(t,r,n){var i=t;if(i.awaitedTypeOfType){return i.awaitedTypeOfType}if(isTypeAny(t)){return i.awaitedTypeOfType=t}if(t.flags&1048576){var a=void 0;for(var o=0,s=t.types;o<s.length;o++){var c=s[o];a=e.append(a,getAwaitedType(c,r,n))}if(!a){return undefined}return i.awaitedTypeOfType=getUnionType(a)}var u=getPromisedTypeOfPromise(t);if(u){if(t.id===u.id||$t.indexOf(u.id)>=0){if(r){error(r,e.Diagnostics.Type_is_referenced_directly_or_indirectly_in_the_fulfillment_callback_of_its_own_then_method)}return undefined}$t.push(t.id);var l=getAwaitedType(u,r,n);$t.pop();if(!l){return undefined}return i.awaitedTypeOfType=l}var f=getTypeOfPropertyOfType(t,"then");if(f&&getSignaturesOfType(f,0).length>0){if(r){if(!n)return e.Debug.fail();error(r,n)}return undefined}return i.awaitedTypeOfType=t}function checkAsyncFunctionReturnType(t,r){var n=getTypeFromTypeNode(r);if(C>=2){if(n===ee){return}var i=getGlobalPromiseType(true);if(i!==ke&&!isReferenceToType(n,i)){error(r,e.Diagnostics.The_return_type_of_an_async_function_or_method_must_be_the_global_Promise_T_type);return}}else{markTypeNodeAsReferenced(r);if(n===ee){return}var a=e.getEntityNameFromTypeNode(r);if(a===undefined){error(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,typeToString(n));return}var o=resolveEntityName(a,67220415,true);var s=o?getTypeOfSymbol(o):ee;if(s===ee){if(a.kind===72&&a.escapedText==="Promise"&&getTargetType(n)===getGlobalPromiseType(false)){error(r,e.Diagnostics.An_async_function_or_method_in_ES5_SlashES3_requires_the_Promise_constructor_Make_sure_you_have_a_declaration_for_the_Promise_constructor_or_include_ES2015_in_your_lib_option)}else{error(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a))}return}var c=getGlobalPromiseConstructorLikeType(true);if(c===xe){error(r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value,e.entityNameToString(a));return}if(!checkTypeAssignableTo(s,c,r,e.Diagnostics.Type_0_is_not_a_valid_async_function_return_type_in_ES5_SlashES3_because_it_does_not_refer_to_a_Promise_compatible_constructor_value)){return}var u=a&&getFirstIdentifier(a);var l=getSymbol(t.locals,u.escapedText,67220415);if(l){error(l.valueDeclaration,e.Diagnostics.Duplicate_identifier_0_Compiler_uses_declaration_1_to_support_async_functions,e.idText(u),e.entityNameToString(a));return}}checkAwaitedType(n,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member)}function checkDecorator(t){var r=getResolvedSignature(t);var n=getReturnTypeOfSignature(r);if(n.flags&1){return}var i;var a=getDiagnosticHeadMessageForDecoratorResolution(t);var o;switch(t.parent.kind){case 240:var s=getSymbolOfNode(t.parent);var c=getTypeOfSymbol(s);i=getUnionType([c,_e]);break;case 151:i=_e;o=e.chainDiagnosticMessages(undefined,e.Diagnostics.The_return_type_of_a_parameter_decorator_function_must_be_either_void_or_any);break;case 154:i=_e;o=e.chainDiagnosticMessages(undefined,e.Diagnostics.The_return_type_of_a_property_decorator_function_must_be_either_void_or_any);break;case 156:case 158:case 159:var u=getTypeOfNode(t.parent);var l=createTypedPropertyDescriptorType(u);i=getUnionType([l,_e]);break;default:return e.Debug.fail()}checkTypeAssignableTo(n,i,t,a,function(){return o})}function markTypeNodeAsReferenced(t){markEntityNameOrEntityExpressionAsReference(t&&e.getEntityNameFromTypeNode(t))}function markEntityNameOrEntityExpressionAsReference(e){if(!e)return;var t=getFirstIdentifier(e);var r=(e.kind===72?67897832:1920)|2097152;var n=resolveName(t,t.escapedText,r,undefined,undefined,true);if(n&&n.flags&2097152&&symbolIsValue(n)&&!isConstEnumOrConstEnumOnlyModule(resolveAlias(n))){markAliasSymbolAsReferenced(n)}}function markDecoratorMedataDataTypeNodeAsReferenced(t){var r=getEntityNameForDecoratorMetadata(t);if(r&&e.isEntityName(r)){markEntityNameOrEntityExpressionAsReference(r)}}function getEntityNameForDecoratorMetadata(e){if(e){switch(e.kind){case 174:case 173:return getEntityNameForDecoratorMetadataFromTypeList(e.types);case 175:return getEntityNameForDecoratorMetadataFromTypeList([e.trueType,e.falseType]);case 177:return getEntityNameForDecoratorMetadata(e.type);case 164:return e.typeName}}}function getEntityNameForDecoratorMetadataFromTypeList(t){var r;for(var n=0,i=t;n<i.length;n++){var a=i[n];while(a.kind===177){a=a.type}if(a.kind===132){continue}if(!k&&(a.kind===96||a.kind===141)){continue}var o=getEntityNameForDecoratorMetadata(a);if(!o){return undefined}if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText){return undefined}}else{r=o}}return r}function getParameterTypeNodeForDecoratorCheck(t){var r=e.getEffectiveTypeAnnotationNode(t);return e.isRestParameter(t)?e.getRestParameterElementType(r):r}function checkDecorators(t){if(!t.decorators){return}if(!e.nodeCanBeDecorated(t,t.parent,t.parent.parent)){return}if(!x.experimentalDecorators){error(t,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_to_remove_this_warning)}var r=t.decorators[0];checkExternalEmitHelpers(r,8);if(t.kind===151){checkExternalEmitHelpers(r,32)}if(x.emitDecoratorMetadata){checkExternalEmitHelpers(r,16);switch(t.kind){case 240:var n=e.getFirstConstructorWithBody(t);if(n){for(var i=0,a=n.parameters;i<a.length;i++){var o=a[i];markDecoratorMedataDataTypeNodeAsReferenced(getParameterTypeNodeForDecoratorCheck(o))}}break;case 158:case 159:var s=t.kind===158?159:158;var c=e.getDeclarationOfKind(getSymbolOfNode(t),s);markDecoratorMedataDataTypeNodeAsReferenced(getAnnotatedAccessorTypeNode(t)||c&&getAnnotatedAccessorTypeNode(c));break;case 156:for(var u=0,l=t.parameters;u<l.length;u++){var o=l[u];markDecoratorMedataDataTypeNodeAsReferenced(getParameterTypeNodeForDecoratorCheck(o))}markDecoratorMedataDataTypeNodeAsReferenced(e.getEffectiveReturnTypeNode(t));break;case 154:markDecoratorMedataDataTypeNodeAsReferenced(e.getEffectiveTypeAnnotationNode(t));break;case 151:markDecoratorMedataDataTypeNodeAsReferenced(getParameterTypeNodeForDecoratorCheck(t));var f=t.parent;for(var d=0,p=f.parameters;d<p.length;d++){var o=p[d];markDecoratorMedataDataTypeNodeAsReferenced(getParameterTypeNodeForDecoratorCheck(o))}break}}e.forEach(t.decorators,checkDecorator)}function checkFunctionDeclaration(e){if(a){checkFunctionOrMethodDeclaration(e);checkGrammarForGenerator(e);checkCollisionWithRequireExportsInGeneratedCode(e,e.name);checkCollisionWithGlobalPromiseInGeneratedCode(e,e.name)}}function checkJSDocTypeAliasTag(t){if(!t.typeExpression){error(t.name,e.Diagnostics.JSDoc_typedef_tag_should_either_have_a_type_annotation_or_be_followed_by_property_or_member_tags)}if(t.name){checkTypeNameIsReserved(t.name,e.Diagnostics.Type_alias_name_cannot_be_0)}checkSourceElement(t.typeExpression)}function checkJSDocTemplateTag(e){checkSourceElement(e.constraint);for(var t=0,r=e.typeParameters;t<r.length;t++){var n=r[t];checkSourceElement(n)}}function checkJSDocTypeTag(e){checkSourceElement(e.typeExpression)}function checkJSDocParameterTag(t){checkSourceElement(t.typeExpression);if(!e.getParameterSymbolFromJSDoc(t)){var r=e.getHostSignatureFromJSDoc(t);if(r){var n=e.getJSDocTags(r).filter(e.isJSDocParameterTag).indexOf(t);if(n>-1&&n<r.parameters.length&&e.isBindingPattern(r.parameters[n].name)){return}if(!containsArgumentsReference(r)){error(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name,e.idText(t.name.kind===148?t.name.right:t.name))}else if(e.findLast(e.getJSDocTags(r),e.isJSDocParameterTag)===t&&t.typeExpression&&t.typeExpression.type&&!isArrayType(getTypeFromTypeNode(t.typeExpression.type))){error(t.name,e.Diagnostics.JSDoc_param_tag_has_name_0_but_there_is_no_parameter_with_that_name_It_would_match_arguments_if_it_had_an_array_type,e.idText(t.name.kind===148?t.name.right:t.name))}}}}function checkJSDocFunctionType(t){if(a&&!t.type&&!e.isJSDocConstructSignature(t)){reportImplicitAny(t,X)}checkSignatureDeclaration(t)}function checkJSDocAugmentsTag(t){var r=e.getJSDocHost(t);if(!e.isClassDeclaration(r)&&!e.isClassExpression(r)){error(r,e.Diagnostics.JSDoc_0_is_not_attached_to_a_class,e.idText(t.tagName));return}var n=e.getJSDocTags(r).filter(e.isJSDocAugmentsTag);e.Debug.assert(n.length>0);if(n.length>1){error(n[1],e.Diagnostics.Class_declarations_cannot_have_more_than_one_augments_or_extends_tag)}var i=getIdentifierFromEntityNameExpression(t.class.expression);var a=e.getClassExtendsHeritageElement(r);if(a){var o=getIdentifierFromEntityNameExpression(a.expression);if(o&&i.escapedText!==o.escapedText){error(i,e.Diagnostics.JSDoc_0_1_does_not_match_the_extends_2_clause,e.idText(t.tagName),e.idText(i),e.idText(o))}}}function getIdentifierFromEntityNameExpression(e){switch(e.kind){case 72:return e;case 189:return e.name;default:return undefined}}function checkFunctionOrMethodDeclaration(t){checkDecorators(t);checkSignatureDeclaration(t);var r=e.getFunctionFlags(t);if(t.name&&t.name.kind===149){checkComputedPropertyName(t.name)}if(!hasNonBindableDynamicName(t)){var n=getSymbolOfNode(t);var i=t.localSymbol||n;var o=e.find(i.declarations,function(e){return e.kind===t.kind&&!(e.flags&65536)});if(t===o){checkFunctionOrConstructorSymbol(i)}if(n.parent){if(e.getDeclarationOfKind(n,t.kind)===t){checkFunctionOrConstructorSymbol(n)}}}var s=t.kind===155?undefined:t.body;checkSourceElement(s);if((r&1)===0){var c=getReturnOrPromisedType(t,r);checkAllCodePathsInNonVoidFunctionReturnOrThrow(t,c)}if(a&&!e.getEffectiveReturnTypeNode(t)){if(e.nodeIsMissing(s)&&!isPrivateWithinAmbient(t)){reportImplicitAny(t,X)}if(r&1&&e.nodeIsPresent(s)){getReturnTypeOfSignature(getSignatureFromDeclaration(t))}}if(e.isInJSFile(t)){var u=e.getJSDocTypeTag(t);if(u&&u.typeExpression&&!getContextualCallSignature(getTypeFromTypeNode(u.typeExpression),t)){error(u,e.Diagnostics.The_type_of_a_function_declaration_must_match_the_function_s_signature)}}}function registerForUnusedIdentifiersCheck(t){if(a&&!(t.flags&4194304)){var r=e.getSourceFileOfNode(t);var n=Dt.get(r.path);if(!n){n=[];Dt.set(r.path,n)}n.push(t)}}function checkUnusedIdentifiers(t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n];switch(a.kind){case 240:case 209:checkUnusedClassMembers(a,r);checkUnusedTypeParameters(a,r);break;case 279:case 244:case 218:case 246:case 225:case 226:case 227:checkUnusedLocalsAndParameters(a,r);break;case 157:case 196:case 239:case 197:case 156:case 158:case 159:if(a.body){checkUnusedLocalsAndParameters(a,r)}checkUnusedTypeParameters(a,r);break;case 155:case 160:case 161:case 165:case 166:case 242:case 241:checkUnusedTypeParameters(a,r);break;case 176:checkUnusedInferTypeParameter(a,r);break;default:e.Debug.assertNever(a,"Node should not have been registered for unused identifiers check")}}}function errorUnusedLocal(t,r,n){var i=e.getNameOfDeclaration(t)||t;var a=isTypeDeclaration(t)?e.Diagnostics._0_is_declared_but_never_used:e.Diagnostics._0_is_declared_but_its_value_is_never_read;n(t,0,e.createDiagnosticForNode(i,a,r))}function isIdentifierThatStartsWithUnderscore(t){return e.isIdentifier(t)&&e.idText(t).charCodeAt(0)===95}function checkUnusedClassMembers(t,r){for(var n=0,i=t.members;n<i.length;n++){var a=i[n];switch(a.kind){case 156:case 154:case 158:case 159:if(a.kind===159&&a.symbol.flags&32768){break}var o=getSymbolOfNode(a);if(!o.isReferenced&&e.hasModifier(a,8)){r(a,0,e.createDiagnosticForNode(a.name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,symbolToString(o)))}break;case 157:for(var s=0,c=a.parameters;s<c.length;s++){var u=c[s];if(!u.symbol.isReferenced&&e.hasModifier(u,8)){r(u,0,e.createDiagnosticForNode(u.name,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read,e.symbolName(u.symbol)))}}break;case 162:case 217:break;default:e.Debug.fail()}}}function checkUnusedInferTypeParameter(t,r){var n=t.typeParameter;if(isTypeParameterUnused(n)){r(t,1,e.createDiagnosticForNode(t,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(n.name)))}}function checkUnusedTypeParameters(t,r){if(e.last(getSymbolOfNode(t).declarations)!==t)return;var n=e.getEffectiveTypeParameterDeclarations(t);var i=new e.NodeSet;for(var a=0,o=n;a<o.length;a++){var s=o[a];if(!isTypeParameterUnused(s))continue;var c=e.idText(s.name);var u=s.parent;if(u.kind!==176&&u.typeParameters.every(isTypeParameterUnused)){if(i.tryAdd(u)){var l=e.isJSDocTemplateTag(u)?e.rangeOfNode(u):e.rangeOfTypeParameters(u.typeParameters);var f=n.length===1;var d=f?e.Diagnostics._0_is_declared_but_its_value_is_never_read:e.Diagnostics.All_type_parameters_are_unused;var p=f?c:undefined;r(s,1,e.createFileDiagnostic(e.getSourceFileOfNode(u),l.pos,l.end-l.pos,d,p))}}else{r(s,1,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,c))}}}function isTypeParameterUnused(e){return!(getMergedSymbol(e.symbol).isReferenced&262144)&&!isIdentifierThatStartsWithUnderscore(e.name)}function addToGroup(e,t,r,n){var i=String(n(t));var a=e.get(i);if(a){a[1].push(r)}else{e.set(i,[t,[r]])}}function tryGetRootParameterDeclaration(t){return e.tryCast(e.getRootDeclaration(t),e.isParameter)}function checkUnusedLocalsAndParameters(t,r){if(t.flags&4194304)return;var n=e.createMap();var i=e.createMap();var a=e.createMap();t.locals.forEach(function(t){if(t.flags&262144?!(t.flags&3&&!(t.isReferenced&3)):t.isReferenced||t.exportSymbol){return}for(var o=0,s=t.declarations;o<s.length;o++){var c=s[o];if(e.isAmbientModule(c)||(e.isVariableDeclaration(c)&&e.isForInOrOfStatement(c.parent.parent)||isImportedDeclaration(c))&&isIdentifierThatStartsWithUnderscore(c.name)){continue}if(isImportedDeclaration(c)){addToGroup(n,importClauseFromImported(c),c,getNodeId)}else if(e.isBindingElement(c)&&e.isObjectBindingPattern(c.parent)){var u=e.last(c.parent.elements);if(c===u||!e.last(c.parent.elements).dotDotDotToken){addToGroup(i,c.parent,c,getNodeId)}}else if(e.isVariableDeclaration(c)){addToGroup(a,c.parent,c,getNodeId)}else{var l=t.valueDeclaration&&tryGetRootParameterDeclaration(t.valueDeclaration);var f=t.valueDeclaration&&e.getNameOfDeclaration(t.valueDeclaration);if(l&&f){if(!e.isParameterPropertyDeclaration(l)&&!e.parameterIsThisKeyword(l)&&!isIdentifierThatStartsWithUnderscore(f)){r(l,1,e.createDiagnosticForNode(f,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.symbolName(t)))}}else{errorUnusedLocal(c,e.symbolName(t),r)}}}});n.forEach(function(t){var n=t[0],i=t[1];var a=n.parent;var o=(n.name?1:0)+(n.namedBindings?n.namedBindings.kind===251?1:n.namedBindings.elements.length:0);if(o===i.length){r(a,0,i.length===1?e.createDiagnosticForNode(a,e.Diagnostics._0_is_declared_but_its_value_is_never_read,e.idText(e.first(i).name)):e.createDiagnosticForNode(a,e.Diagnostics.All_imports_in_import_declaration_are_unused))}else{for(var s=0,c=i;s<c.length;s++){var u=c[s];errorUnusedLocal(u,e.idText(u.name),r)}}});i.forEach(function(t){var n=t[0],i=t[1];var o=tryGetRootParameterDeclaration(n.parent)?1:0;if(n.elements.length===i.length){if(i.length===1&&n.parent.kind===237&&n.parent.parent.kind===238){addToGroup(a,n.parent.parent,n.parent,getNodeId)}else{r(n,o,i.length===1?e.createDiagnosticForNode(n,e.Diagnostics._0_is_declared_but_its_value_is_never_read,bindingNameText(e.first(i).name)):e.createDiagnosticForNode(n,e.Diagnostics.All_destructured_elements_are_unused))}}else{for(var s=0,c=i;s<c.length;s++){var u=c[s];r(u,o,e.createDiagnosticForNode(u,e.Diagnostics._0_is_declared_but_its_value_is_never_read,bindingNameText(u.name)))}}});a.forEach(function(t){var n=t[0],i=t[1];if(n.declarations.length===i.length){r(n,0,i.length===1?e.createDiagnosticForNode(e.first(i).name,e.Diagnostics._0_is_declared_but_its_value_is_never_read,bindingNameText(e.first(i).name)):e.createDiagnosticForNode(n.parent.kind===219?n.parent:n,e.Diagnostics.All_variables_are_unused))}else{for(var a=0,o=i;a<o.length;a++){var s=o[a];r(s,0,e.createDiagnosticForNode(s,e.Diagnostics._0_is_declared_but_its_value_is_never_read,bindingNameText(s.name)))}}})}function bindingNameText(t){switch(t.kind){case 72:return e.idText(t);case 185:case 184:return bindingNameText(e.cast(e.first(t.elements),e.isBindingElement).name);default:return e.Debug.assertNever(t)}}function isImportedDeclaration(e){return e.kind===250||e.kind===253||e.kind===251}function importClauseFromImported(e){return e.kind===250?e:e.kind===251?e.parent:e.parent.parent}function checkBlock(t){if(t.kind===218){checkGrammarStatementInAmbientContext(t)}if(e.isFunctionOrModuleBlock(t)){var r=Ot;e.forEach(t.statements,checkSourceElement);Ot=r}else{e.forEach(t.statements,checkSourceElement)}if(t.locals){registerForUnusedIdentifiersCheck(t)}}function checkCollisionWithArgumentsInGeneratedCode(t){if(C>=2||x.noEmit||!e.hasRestParameter(t)||t.flags&4194304||e.nodeIsMissing(t.body)){return}e.forEach(t.parameters,function(t){if(t.name&&!e.isBindingPattern(t.name)&&t.name.escapedText===B.escapedName){error(t,e.Diagnostics.Duplicate_identifier_arguments_Compiler_uses_arguments_to_initialize_rest_parameters)}})}function needCollisionCheckForIdentifier(t,r,n){if(!(r&&r.escapedText===n)){return false}if(t.kind===154||t.kind===153||t.kind===156||t.kind===155||t.kind===158||t.kind===159){return false}if(t.flags&4194304){return false}var i=e.getRootDeclaration(t);if(i.kind===151&&e.nodeIsMissing(i.parent.body)){return false}return true}function checkIfThisIsCapturedInEnclosingScope(t){e.findAncestor(t,function(r){if(getNodeCheckFlags(r)&4){var n=t.kind!==72;if(n){error(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_this_Compiler_uses_variable_declaration_this_to_capture_this_reference)}else{error(t,e.Diagnostics.Expression_resolves_to_variable_declaration_this_that_compiler_uses_to_capture_this_reference)}return true}return false})}function checkIfNewTargetIsCapturedInEnclosingScope(t){e.findAncestor(t,function(r){if(getNodeCheckFlags(r)&8){var n=t.kind!==72;if(n){error(e.getNameOfDeclaration(t),e.Diagnostics.Duplicate_identifier_newTarget_Compiler_uses_variable_declaration_newTarget_to_capture_new_target_meta_property_reference)}else{error(t,e.Diagnostics.Expression_resolves_to_variable_declaration_newTarget_that_compiler_uses_to_capture_new_target_meta_property_reference)}return true}return false})}function checkCollisionWithRequireExportsInGeneratedCode(t,r){if(E>=e.ModuleKind.ES2015||x.noEmit){return}if(!needCollisionCheckForIdentifier(t,r,"require")&&!needCollisionCheckForIdentifier(t,r,"exports")){return}if(e.isModuleDeclaration(t)&&e.getModuleInstanceState(t)!==1){return}var n=getDeclarationContainer(t);if(n.kind===279&&e.isExternalOrCommonJsModule(n)){error(r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module,e.declarationNameToString(r),e.declarationNameToString(r))}}function checkCollisionWithGlobalPromiseInGeneratedCode(t,r){if(C>=4||x.noEmit||!needCollisionCheckForIdentifier(t,r,"Promise")){return}if(e.isModuleDeclaration(t)&&e.getModuleInstanceState(t)!==1){return}var n=getDeclarationContainer(t);if(n.kind===279&&e.isExternalOrCommonJsModule(n)&&n.flags&1024){error(r,e.Diagnostics.Duplicate_identifier_0_Compiler_reserves_name_1_in_top_level_scope_of_a_module_containing_async_functions,e.declarationNameToString(r),e.declarationNameToString(r))}}function checkVarDeclaredNamesNotShadowed(t){if((e.getCombinedNodeFlags(t)&3)!==0||e.isParameterDeclaration(t)){return}if(t.kind===237&&!t.initializer){return}var r=getSymbolOfNode(t);if(r.flags&1){if(!e.isIdentifier(t.name))return e.Debug.fail();var n=resolveName(t,t.name.escapedText,3,undefined,undefined,false);if(n&&n!==r&&n.flags&2){if(getDeclarationNodeFlagsFromSymbol(n)&3){var i=e.getAncestor(n.valueDeclaration,238);var a=i.parent.kind===219&&i.parent.parent?i.parent.parent:undefined;var o=a&&(a.kind===218&&e.isFunctionLike(a.parent)||a.kind===245||a.kind===244||a.kind===279);if(!o){var s=symbolToString(n);error(t,e.Diagnostics.Cannot_initialize_outer_scoped_variable_0_in_the_same_scope_as_block_scoped_declaration_1,s,s)}}}}}function checkParameterInitializer(t){if(e.getRootDeclaration(t).kind!==151){return}var r=e.getContainingFunction(t);visit(t.initializer);function visit(n){if(e.isTypeNode(n)||e.isDeclarationName(n)){return}if(n.kind===189){return visit(n.expression)}else if(n.kind===72){var i=resolveName(n,n.escapedText,67220415|2097152,undefined,undefined,false);if(!i||i===Q||!i.valueDeclaration){return}if(i.valueDeclaration===t){error(n,e.Diagnostics.Parameter_0_cannot_be_referenced_in_its_initializer,e.declarationNameToString(t.name));return}var a=e.getEnclosingBlockScopeContainer(i.valueDeclaration);if(a===r){if(i.valueDeclaration.kind===151||i.valueDeclaration.kind===186){if(i.valueDeclaration.pos<t.pos){return}if(e.findAncestor(n,function(r){if(r===t.initializer){return"quit"}return e.isFunctionLike(r.parent)||r.parent.kind===154&&!e.hasModifier(r.parent,32)&&e.isClassLike(r.parent.parent)})){return}}error(n,e.Diagnostics.Initializer_of_parameter_0_cannot_reference_identifier_1_declared_after_it,e.declarationNameToString(t.name),e.declarationNameToString(n))}}else{return e.forEachChild(n,visit)}}}function convertAutoToAny(e){return e===Y?X:e===it?nt:e}function checkVariableLikeDeclaration(t){checkDecorators(t);if(!e.isBindingElement(t)){checkSourceElement(t.type)}if(!t.name){return}if(t.name.kind===149){checkComputedPropertyName(t.name);if(t.initializer){checkExpressionCached(t.initializer)}}if(t.kind===186){if(t.parent.kind===184&&C<6){checkExternalEmitHelpers(t,4)}if(t.propertyName&&t.propertyName.kind===149){checkComputedPropertyName(t.propertyName)}var r=t.parent.parent;var n=getTypeForBindingElementParent(r);var i=t.propertyName||t.name;if(!e.isBindingPattern(i)){var a=e.getTextOfPropertyName(i);if(a){var o=getPropertyOfType(n,a);if(o){markPropertyAsReferenced(o,undefined,false);checkPropertyAccessibility(r,!!r.initializer&&r.initializer.kind===98,n,o)}}}}if(e.isBindingPattern(t.name)){if(t.name.kind===185&&C<2&&x.downlevelIteration){checkExternalEmitHelpers(t,512)}e.forEach(t.name.elements,checkSourceElement)}if(t.initializer&&e.getRootDeclaration(t).kind===151&&e.nodeIsMissing(e.getContainingFunction(t).body)){error(t,e.Diagnostics.A_parameter_initializer_is_only_allowed_in_a_function_or_constructor_implementation);return}if(e.isBindingPattern(t.name)){if(t.initializer&&t.parent.parent.kind!==226){var s=checkExpressionCached(t.initializer);if(k&&t.name.elements.length===0){checkNonNullType(s,t)}else{checkTypeAssignableToAndOptionallyElaborate(s,getWidenedTypeForVariableLikeDeclaration(t),t,t.initializer)}checkParameterInitializer(t)}return}var c=getSymbolOfNode(t);var u=convertAutoToAny(getTypeOfSymbol(c));if(t===c.valueDeclaration){var l=e.getEffectiveInitializer(t);if(l){var f=e.isInJSFile(t)&&e.isObjectLiteralExpression(l)&&(l.properties.length===0||e.isPrototypeAccess(t.name))&&e.hasEntries(c.exports);if(!f&&t.parent.parent.kind!==226){checkTypeAssignableToAndOptionallyElaborate(checkExpressionCached(l),u,t,l,undefined);checkParameterInitializer(t)}}if(c.declarations.length>1){if(e.some(c.declarations,function(r){return r!==t&&e.isVariableLike(r)&&!areDeclarationFlagsIdentical(r,t)})){error(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}}}else{var d=convertAutoToAny(getWidenedTypeForVariableLikeDeclaration(t));if(u!==ee&&d!==ee&&!isTypeIdenticalTo(u,d)&&!(c.flags&67108864)){errorNextVariableOrPropertyDeclarationMustHaveSameType(u,t,d)}if(t.initializer){checkTypeAssignableToAndOptionallyElaborate(checkExpressionCached(t.initializer),d,t,t.initializer,undefined)}if(!areDeclarationFlagsIdentical(t,c.valueDeclaration)){error(t.name,e.Diagnostics.All_declarations_of_0_must_have_identical_modifiers,e.declarationNameToString(t.name))}}if(t.kind!==154&&t.kind!==153){checkExportsOnMergedDeclarations(t);if(t.kind===237||t.kind===186){checkVarDeclaredNamesNotShadowed(t)}checkCollisionWithRequireExportsInGeneratedCode(t,t.name);checkCollisionWithGlobalPromiseInGeneratedCode(t,t.name)}}function errorNextVariableOrPropertyDeclarationMustHaveSameType(t,r,n){var i=e.getNameOfDeclaration(r);var a=r.kind===154||r.kind===153?e.Diagnostics.Subsequent_property_declarations_must_have_the_same_type_Property_0_must_be_of_type_1_but_here_has_type_2:e.Diagnostics.Subsequent_variable_declarations_must_have_the_same_type_Variable_0_must_be_of_type_1_but_here_has_type_2;error(i,a,e.declarationNameToString(i),typeToString(t),typeToString(n))}function areDeclarationFlagsIdentical(t,r){if(t.kind===151&&r.kind===237||t.kind===237&&r.kind===151){return true}if(e.hasQuestionToken(t)!==e.hasQuestionToken(r)){return false}var n=8|16|256|128|64|32;return e.getSelectedModifierFlags(t,n)===e.getSelectedModifierFlags(r,n)}function checkVariableDeclaration(e){checkGrammarVariableDeclaration(e);return checkVariableLikeDeclaration(e)}function checkBindingElement(e){checkGrammarBindingElement(e);return checkVariableLikeDeclaration(e)}function checkVariableStatement(t){if(!checkGrammarDecoratorsAndModifiers(t)&&!checkGrammarVariableDeclarationList(t.declarationList))checkGrammarForDisallowedLetOrConstStatement(t);e.forEach(t.declarationList.declarations,checkSourceElement)}function checkExpressionStatement(e){checkGrammarStatementInAmbientContext(e);checkExpression(e.expression)}function checkIfStatement(t){checkGrammarStatementInAmbientContext(t);checkTruthinessExpression(t.expression);checkSourceElement(t.thenStatement);if(t.thenStatement.kind===220){error(t.thenStatement,e.Diagnostics.The_body_of_an_if_statement_cannot_be_the_empty_statement)}checkSourceElement(t.elseStatement)}function checkDoStatement(e){checkGrammarStatementInAmbientContext(e);checkSourceElement(e.statement);checkTruthinessExpression(e.expression)}function checkWhileStatement(e){checkGrammarStatementInAmbientContext(e);checkTruthinessExpression(e.expression);checkSourceElement(e.statement)}function checkTruthinessExpression(t,r){var n=checkExpression(t,r);if(n.flags&16384){error(t,e.Diagnostics.An_expression_of_type_void_cannot_be_tested_for_truthiness)}return n}function checkForStatement(t){if(!checkGrammarStatementInAmbientContext(t)){if(t.initializer&&t.initializer.kind===238){checkGrammarVariableDeclarationList(t.initializer)}}if(t.initializer){if(t.initializer.kind===238){e.forEach(t.initializer.declarations,checkVariableDeclaration)}else{checkExpression(t.initializer)}}if(t.condition)checkTruthinessExpression(t.condition);if(t.incrementor)checkExpression(t.incrementor);checkSourceElement(t.statement);if(t.locals){registerForUnusedIdentifiersCheck(t)}}function checkForOfStatement(t){checkGrammarForInOrForOfStatement(t);if(t.awaitModifier){var r=e.getFunctionFlags(e.getContainingFunction(t));if((r&(4|2))===2&&C<6){checkExternalEmitHelpers(t,16384)}}else if(x.downlevelIteration&&C<2){checkExternalEmitHelpers(t,256)}if(t.initializer.kind===238){checkForInOrForOfVariableDeclaration(t)}else{var n=t.initializer;var i=checkRightHandSideOfForOf(t.expression,t.awaitModifier);if(n.kind===187||n.kind===188){checkDestructuringAssignment(n,i||ee)}else{var a=checkExpression(n);checkReferenceExpression(n,e.Diagnostics.The_left_hand_side_of_a_for_of_statement_must_be_a_variable_or_a_property_access);if(i){checkTypeAssignableToAndOptionallyElaborate(i,a,n,t.expression)}}}checkSourceElement(t.statement);if(t.locals){registerForUnusedIdentifiersCheck(t)}}function checkForInStatement(t){checkGrammarForInOrForOfStatement(t);var r=getNonNullableTypeIfNeeded(checkExpression(t.expression));if(t.initializer.kind===238){var n=t.initializer.declarations[0];if(n&&e.isBindingPattern(n.name)){error(n.name,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern)}checkForInOrForOfVariableDeclaration(t)}else{var i=t.initializer;var a=checkExpression(i);if(i.kind===187||i.kind===188){error(i,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_be_a_destructuring_pattern)}else if(!isTypeAssignableTo(getIndexTypeOrString(r),a)){error(i,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_of_type_string_or_any)}else{checkReferenceExpression(i,e.Diagnostics.The_left_hand_side_of_a_for_in_statement_must_be_a_variable_or_a_property_access)}}if(r===me||!isTypeAssignableToKind(r,67108864|58982400)){error(t.expression,e.Diagnostics.The_right_hand_side_of_a_for_in_statement_must_be_of_type_any_an_object_type_or_a_type_parameter_but_here_has_type_0,typeToString(r))}checkSourceElement(t.statement);if(t.locals){registerForUnusedIdentifiersCheck(t)}}function checkForInOrForOfVariableDeclaration(e){var t=e.initializer;if(t.declarations.length>=1){var r=t.declarations[0];checkVariableDeclaration(r)}}function checkRightHandSideOfForOf(e,t){var r=checkNonNullExpression(e);return checkIteratedTypeOrElementType(r,e,true,t!==undefined)}function checkIteratedTypeOrElementType(e,t,r,n){if(isTypeAny(e)){return e}return getIteratedTypeOrElementType(e,t,r,n,true)||X}function getIteratedTypeOrElementType(t,r,n,i,a){if(t===me){reportTypeNotIterableError(r,t,i);return undefined}var o=C>=2;var s=!o&&x.downlevelIteration;if(o||s||i){var c=getIteratedTypeOfIterable(t,o?r:undefined,i,true,a);if(c||o){return c}}var u=t;var l=false;var f=false;if(n){if(u.flags&1048576){var d=t.types;var p=e.filter(d,function(e){return!(e.flags&132)});if(p!==d){u=getUnionType(p,2)}}else if(u.flags&132){u=me}f=u!==t;if(f){if(C<1){if(r){error(r,e.Diagnostics.Using_a_string_in_a_for_of_statement_is_only_supported_in_ECMAScript_5_and_higher);l=true}}if(u.flags&131072){return oe}}}if(!isArrayLikeType(u)){if(r&&!l){var g=!!getIteratedTypeOfIterable(t,undefined,i,true,a);var _=!n||f?s?e.Diagnostics.Type_0_is_not_an_array_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:g?e.Diagnostics.Type_0_is_not_an_array_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:e.Diagnostics.Type_0_is_not_an_array_type:s?e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_or_does_not_have_a_Symbol_iterator_method_that_returns_an_iterator:g?e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type_Use_compiler_option_downlevelIteration_to_allow_iterating_of_iterators:e.Diagnostics.Type_0_is_not_an_array_type_or_a_string_type;error(r,_,typeToString(u))}return f?oe:undefined}var m=getIndexTypeOfType(u,1);if(f&&m){if(m.flags&132){return oe}return getUnionType([m,oe],2)}return m}function getIteratedTypeOfIterable(t,r,n,i,a){if(isTypeAny(t)){return undefined}return mapType(t,getIteratedType);function getIteratedType(t){var o=t;if(n){if(o.iteratedTypeOfAsyncIterable){return o.iteratedTypeOfAsyncIterable}if(isReferenceToType(t,getGlobalAsyncIterableType(false))||isReferenceToType(t,getGlobalAsyncIterableIteratorType(false))){return o.iteratedTypeOfAsyncIterable=t.typeArguments[0]}}if(i){if(o.iteratedTypeOfIterable){return n?o.iteratedTypeOfAsyncIterable=getAwaitedType(o.iteratedTypeOfIterable):o.iteratedTypeOfIterable}if(isReferenceToType(t,getGlobalIterableType(false))||isReferenceToType(t,getGlobalIterableIteratorType(false))){return n?o.iteratedTypeOfAsyncIterable=getAwaitedType(t.typeArguments[0]):o.iteratedTypeOfIterable=t.typeArguments[0]}}var s=n&&getTypeOfPropertyOfType(t,e.getPropertyNameForKnownSymbolName("asyncIterator"));var c=s||(i?getTypeOfPropertyOfType(t,e.getPropertyNameForKnownSymbolName("iterator")):undefined);if(isTypeAny(c)){return undefined}var u=c?getSignaturesOfType(c,0):undefined;if(!e.some(u)){if(r){reportTypeNotIterableError(r,t,n);r=undefined}return undefined}var l=getUnionType(e.map(u,getReturnTypeOfSignature),2);var f=getIteratedTypeOfIterator(l,r,!!s);if(a&&r&&f){checkTypeAssignableTo(t,s?createAsyncIterableType(f):createIterableType(f),r)}if(f){return n?o.iteratedTypeOfAsyncIterable=s?f:getAwaitedType(f):o.iteratedTypeOfIterable=f}}}function reportTypeNotIterableError(t,r,n){error(t,n?e.Diagnostics.Type_0_must_have_a_Symbol_asyncIterator_method_that_returns_an_async_iterator:e.Diagnostics.Type_0_must_have_a_Symbol_iterator_method_that_returns_an_iterator,typeToString(r))}function getIteratedTypeOfIterator(t,r,n){if(isTypeAny(t)){return undefined}var i=t;if(n?i.iteratedTypeOfAsyncIterator:i.iteratedTypeOfIterator){return n?i.iteratedTypeOfAsyncIterator:i.iteratedTypeOfIterator}var a=n?getGlobalAsyncIteratorType:getGlobalIteratorType;if(isReferenceToType(t,a(false))){return n?i.iteratedTypeOfAsyncIterator=t.typeArguments[0]:i.iteratedTypeOfIterator=t.typeArguments[0]}var o=getTypeOfPropertyOfType(t,"next");if(isTypeAny(o)){return undefined}var s=o?getSignaturesOfType(o,0):e.emptyArray;if(s.length===0){if(r){error(r,n?e.Diagnostics.An_async_iterator_must_have_a_next_method:e.Diagnostics.An_iterator_must_have_a_next_method)}return undefined}var c=getUnionType(e.map(s,getReturnTypeOfSignature),2);if(isTypeAny(c)){return undefined}if(n){c=getAwaitedTypeOfPromise(c,r,e.Diagnostics.The_type_returned_by_the_next_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property);if(isTypeAny(c)){return undefined}}var u=c&&getTypeOfPropertyOfType(c,"value");if(!u){if(r){error(r,n?e.Diagnostics.The_type_returned_by_the_next_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property:e.Diagnostics.The_type_returned_by_the_next_method_of_an_iterator_must_have_a_value_property)}return undefined}return n?i.iteratedTypeOfAsyncIterator=u:i.iteratedTypeOfIterator=u}function getIteratedTypeOfGenerator(e,t){if(isTypeAny(e)){return undefined}return getIteratedTypeOfIterable(e,undefined,t,!t,false)||getIteratedTypeOfIterator(e,undefined,t)}function checkBreakOrContinueStatement(e){if(!checkGrammarStatementInAmbientContext(e))checkGrammarBreakOrContinueStatement(e)}function isUnwrappedReturnTypeVoidOrAny(t,r){var n=(e.getFunctionFlags(t)&3)===2?getPromisedTypeOfPromise(r):r;return!!n&&maybeTypeOfKind(n,16384|3)}function checkReturnStatement(t){if(checkGrammarStatementInAmbientContext(t)){return}var r=e.getContainingFunction(t);if(!r){grammarErrorOnFirstToken(t,e.Diagnostics.A_return_statement_can_only_be_used_within_a_function_body);return}var n=getSignatureFromDeclaration(r);var i=getReturnTypeOfSignature(n);var a=e.getFunctionFlags(r);var o=a&1;if(k||t.expression||i.flags&131072){var s=t.expression?checkExpressionCached(t.expression):re;if(o){return}else if(r.kind===159){if(t.expression){error(t,e.Diagnostics.Setters_cannot_return_a_value)}}else if(r.kind===157){if(t.expression&&!checkTypeAssignableToAndOptionallyElaborate(s,i,t,t.expression)){error(t,e.Diagnostics.Return_type_of_constructor_signature_must_be_assignable_to_the_instance_type_of_the_class)}}else if(getReturnTypeFromAnnotation(r)){if(a&2){var c=getPromisedTypeOfPromise(i);var u=checkAwaitedType(s,t,e.Diagnostics.The_return_type_of_an_async_function_must_either_be_a_valid_promise_or_must_not_contain_a_callable_then_member);if(c){checkTypeAssignableTo(u,c,t)}}else{checkTypeAssignableToAndOptionallyElaborate(s,i,t,t.expression)}}}else if(r.kind!==157&&x.noImplicitReturns&&!isUnwrappedReturnTypeVoidOrAny(r,i)&&!o){error(t,e.Diagnostics.Not_all_code_paths_return_a_value)}}function checkWithStatement(t){if(!checkGrammarStatementInAmbientContext(t)){if(t.flags&16384){grammarErrorOnFirstToken(t,e.Diagnostics.with_statements_are_not_allowed_in_an_async_function_block)}}checkExpression(t.expression);var r=e.getSourceFileOfNode(t);if(!hasParseDiagnostics(r)){var n=e.getSpanOfTokenAtPosition(r,t.pos).start;var i=t.statement.pos;grammarErrorAtPos(r,n,i-n,e.Diagnostics.The_with_statement_is_not_supported_All_symbols_in_a_with_block_will_have_type_any)}}function checkSwitchStatement(t){checkGrammarStatementInAmbientContext(t);var r;var n=false;var i=checkExpression(t.expression);var o=isLiteralType(i);e.forEach(t.caseBlock.clauses,function(s){if(s.kind===272&&!n){if(r===undefined){r=s}else{var c=e.getSourceFileOfNode(t);var u=e.skipTrivia(c.text,s.pos);var l=s.statements.length>0?s.statements[0].pos:s.end;grammarErrorAtPos(c,u,l-u,e.Diagnostics.A_default_clause_cannot_appear_more_than_once_in_a_switch_statement);n=true}}if(a&&s.kind===271){var f=checkExpression(s.expression);var d=isLiteralType(f);var p=i;if(!d||!o){f=d?getBaseTypeOfLiteralType(f):f;p=getBaseTypeOfLiteralType(i)}if(!isTypeEqualityComparableTo(p,f)){checkTypeComparableTo(f,p,s.expression,undefined)}}e.forEach(s.statements,checkSourceElement)});if(t.caseBlock.locals){registerForUnusedIdentifiersCheck(t.caseBlock)}}function checkLabeledStatement(t){if(!checkGrammarStatementInAmbientContext(t)){e.findAncestor(t.parent,function(r){if(e.isFunctionLike(r)){return"quit"}if(r.kind===233&&r.label.escapedText===t.label.escapedText){grammarErrorOnNode(t.label,e.Diagnostics.Duplicate_label_0,e.getTextOfNode(t.label));return true}return false})}checkSourceElement(t.statement)}function checkThrowStatement(t){if(!checkGrammarStatementInAmbientContext(t)){if(t.expression===undefined){grammarErrorAfterFirstToken(t,e.Diagnostics.Line_break_not_permitted_here)}}if(t.expression){checkExpression(t.expression)}}function checkTryStatement(t){checkGrammarStatementInAmbientContext(t);checkBlock(t.tryBlock);var r=t.catchClause;if(r){if(r.variableDeclaration){if(r.variableDeclaration.type){grammarErrorOnFirstToken(r.variableDeclaration.type,e.Diagnostics.Catch_clause_variable_cannot_have_a_type_annotation)}else if(r.variableDeclaration.initializer){grammarErrorOnFirstToken(r.variableDeclaration.initializer,e.Diagnostics.Catch_clause_variable_cannot_have_an_initializer)}else{var n=r.block.locals;if(n){e.forEachKey(r.locals,function(t){var r=n.get(t);if(r&&(r.flags&2)!==0){grammarErrorOnNode(r.valueDeclaration,e.Diagnostics.Cannot_redeclare_identifier_0_in_catch_clause,t)}})}}}checkBlock(r.block)}if(t.finallyBlock){checkBlock(t.finallyBlock)}}function checkIndexConstraints(t){var r=getIndexDeclarationOfSymbol(t.symbol,1);var n=getIndexDeclarationOfSymbol(t.symbol,0);var i=getIndexTypeOfType(t,0);var a=getIndexTypeOfType(t,1);if(i||a){e.forEach(getPropertiesOfObjectType(t),function(e){var o=getTypeOfSymbol(e);checkIndexConstraintForProperty(e,o,t,n,i,0);checkIndexConstraintForProperty(e,o,t,r,a,1)});var o=t.symbol.valueDeclaration;if(e.getObjectFlags(t)&1&&e.isClassLike(o)){for(var s=0,c=o.members;s<c.length;s++){var u=c[s];if(!e.hasModifier(u,32)&&hasNonBindableDynamicName(u)){var l=getSymbolOfNode(u);var f=getTypeOfSymbol(l);checkIndexConstraintForProperty(l,f,t,n,i,0);checkIndexConstraintForProperty(l,f,t,r,a,1)}}}}var d;if(i&&a){d=r||n;if(!d&&e.getObjectFlags(t)&2){var p=e.forEach(getBaseTypes(t),function(e){return getIndexTypeOfType(e,0)&&getIndexTypeOfType(e,1)});d=p?undefined:t.symbol.declarations[0]}}if(d&&!isTypeAssignableTo(a,i)){error(d,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1,typeToString(a),typeToString(i))}function checkIndexConstraintForProperty(t,r,n,i,a,o){if(!a||e.isKnownSymbol(t)){return}var s=t.valueDeclaration;var c=s&&e.getNameOfDeclaration(s);if(o===1&&!(c?isNumericName(c):isNumericLiteralName(t.escapedName))){return}var u;if(s&&c&&(s.kind===204||c.kind===149||t.parent===n.symbol)){u=s}else if(i){u=i}else if(e.getObjectFlags(n)&2){var l=e.forEach(getBaseTypes(n),function(e){return getPropertyOfObjectType(e,t.escapedName)&&getIndexTypeOfType(e,o)});u=l?undefined:n.symbol.declarations[0]}if(u&&!isTypeAssignableTo(r,a)){var f=o===0?e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2:e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2;error(u,f,symbolToString(t),typeToString(r),typeToString(a))}}}function checkTypeNameIsReserved(e,t){switch(e.escapedText){case"any":case"unknown":case"number":case"bigint":case"boolean":case"string":case"symbol":case"void":case"object":error(e,t,e.escapedText)}}function checkClassNameCollisionWithObject(t){if(C===1&&t.escapedText==="Object"&&E!==e.ModuleKind.ES2015&&E!==e.ModuleKind.ESNext){error(t,e.Diagnostics.Class_name_cannot_be_Object_when_targeting_ES5_with_module_0,e.ModuleKind[E])}}function checkTypeParameters(t){if(t){var r=false;for(var n=0;n<t.length;n++){var i=t[n];checkTypeParameter(i);if(a){if(i.default){r=true}else if(r){error(i,e.Diagnostics.Required_type_parameters_may_not_follow_optional_type_parameters)}for(var o=0;o<n;o++){if(t[o].symbol===i.symbol){error(i.name,e.Diagnostics.Duplicate_identifier_0,e.declarationNameToString(i.name))}}}}}}function checkTypeParameterListsIdentical(t){if(t.declarations.length===1){return}var r=getSymbolLinks(t);if(!r.typeParametersChecked){r.typeParametersChecked=true;var n=getClassOrInterfaceDeclarationsOfSymbol(t);if(n.length<=1){return}var i=getDeclaredTypeOfSymbol(t);if(!areTypeParametersIdentical(n,i.localTypeParameters)){var a=symbolToString(t);for(var o=0,s=n;o<s.length;o++){var c=s[o];error(c.name,e.Diagnostics.All_declarations_of_0_must_have_identical_type_parameters,a)}}}}function areTypeParametersIdentical(t,r){var n=e.length(r);var i=getMinTypeArgumentCount(r);for(var a=0,o=t;a<o.length;a++){var s=o[a];var c=e.getEffectiveTypeParameterDeclarations(s);var u=c.length;if(u<i||u>n){return false}for(var l=0;l<u;l++){var f=c[l];var d=r[l];if(f.name.escapedText!==d.symbol.escapedName){return false}var p=e.getEffectiveConstraintOfTypeParameter(f);var g=p&&getTypeFromTypeNode(p);var _=getConstraintOfTypeParameter(d);if(g){if(!_||!isTypeIdenticalTo(g,_)){return false}}var m=f.default&&getTypeFromTypeNode(f.default);var y=getDefaultFromTypeParameter(d);if(m&&y&&!isTypeIdenticalTo(m,y)){return false}}}return true}function checkClassExpression(e){checkClassLikeDeclaration(e);checkNodeDeferred(e);return getTypeOfSymbol(getSymbolOfNode(e))}function checkClassExpressionDeferred(t){e.forEach(t.members,checkSourceElement);registerForUnusedIdentifiersCheck(t)}function checkClassDeclaration(t){if(!t.name&&!e.hasModifier(t,512)){grammarErrorOnFirstToken(t,e.Diagnostics.A_class_declaration_without_the_default_modifier_must_have_a_name)}checkClassLikeDeclaration(t);e.forEach(t.members,checkSourceElement);registerForUnusedIdentifiersCheck(t)}function checkClassLikeDeclaration(t){checkGrammarClassLikeDeclaration(t);checkDecorators(t);if(t.name){checkTypeNameIsReserved(t.name,e.Diagnostics.Class_name_cannot_be_0);checkCollisionWithRequireExportsInGeneratedCode(t,t.name);checkCollisionWithGlobalPromiseInGeneratedCode(t,t.name);if(!(t.flags&4194304)){checkClassNameCollisionWithObject(t.name)}}checkTypeParameters(e.getEffectiveTypeParameterDeclarations(t));checkExportsOnMergedDeclarations(t);var r=getSymbolOfNode(t);var n=getDeclaredTypeOfSymbol(r);var i=getTypeWithThisArgument(n);var o=getTypeOfSymbol(r);checkTypeParameterListsIdentical(r);checkClassForDuplicateDeclarations(t);if(!(t.flags&4194304)){checkClassForStaticPropertyNameConflicts(t)}var s=e.getEffectiveBaseTypeNode(t);if(s){if(C<2){checkExternalEmitHelpers(s.parent,1)}var c=getBaseTypes(n);if(c.length&&a){var u=c[0];var l=getBaseConstructorTypeOfClass(n);var f=getApparentType(l);checkBaseTypeAccessibility(f,s);checkSourceElement(s.expression);var d=e.getClassExtendsHeritageElement(t);if(d&&d!==s){checkExpression(d.expression)}if(e.some(s.typeArguments)){e.forEach(s.typeArguments,checkSourceElement);for(var p=0,g=getConstructorsForTypeArguments(f,s.typeArguments,s);p<g.length;p++){var _=g[p];if(!checkTypeArgumentConstraints(s,_.typeParameters)){break}}}var m=getTypeWithThisArgument(u,n.thisType);if(!checkTypeAssignableTo(i,m,undefined)){issueMemberSpecificError(t,i,m,e.Diagnostics.Class_0_incorrectly_extends_base_class_1)}else{checkTypeAssignableTo(o,getTypeWithoutSignatures(f),t.name||t,e.Diagnostics.Class_static_side_0_incorrectly_extends_base_class_static_side_1)}if(l.flags&8650752&&!isMixinConstructorType(o)){error(t.name||t,e.Diagnostics.A_mixin_class_must_have_a_constructor_with_a_single_rest_parameter_of_type_any)}if(!(f.symbol&&f.symbol.flags&32)&&!(l.flags&8650752)){var y=getInstantiatedConstructorsForTypeArguments(f,s.typeArguments,s);if(e.forEach(y,function(e){return!isJSConstructor(e.declaration)&&getReturnTypeOfSignature(e)!==u})){error(s.expression,e.Diagnostics.Base_constructors_must_all_have_the_same_return_type)}}checkKindsOfPropertyMemberOverrides(n,u)}}var h=e.getClassImplementsHeritageClauseElements(t);if(h){for(var v=0,T=h;v<T.length;v++){var S=T[v];if(!e.isEntityNameExpression(S.expression)){error(S.expression,e.Diagnostics.A_class_can_only_implement_an_identifier_Slashqualified_name_with_optional_type_arguments)}checkTypeReferenceNode(S);if(a){var b=getTypeFromTypeNode(S);if(b!==ee){if(isValidBaseType(b)){var x=b.symbol&&b.symbol.flags&32?e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass:e.Diagnostics.Class_0_incorrectly_implements_interface_1;var m=getTypeWithThisArgument(b,n.thisType);if(!checkTypeAssignableTo(i,m,undefined)){issueMemberSpecificError(t,i,m,x)}}else{error(S,e.Diagnostics.A_class_can_only_implement_an_object_type_or_intersection_of_object_types_with_statically_known_members)}}}}}if(a){checkIndexConstraints(n);checkTypeForDuplicateIndexSignatures(t);checkPropertyInitialization(t)}}function issueMemberSpecificError(t,r,n,i){var a=false;var o=function(t){if(e.hasStaticModifier(t)){return"continue"}var i=t.name&&getSymbolAtLocation(t.name)||getSymbolAtLocation(t);if(i){var o=getPropertyOfType(r,i.escapedName);var s=getPropertyOfType(n,i.escapedName);if(o&&s){var c=function(){return e.chainDiagnosticMessages(undefined,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2,symbolToString(i),typeToString(r),typeToString(n))};if(!checkTypeAssignableTo(getTypeOfSymbol(o),getTypeOfSymbol(s),t.name||t,undefined,c)){a=true}}}};for(var s=0,c=t.members;s<c.length;s++){var u=c[s];o(u)}if(!a){checkTypeAssignableTo(r,n,t.name||t,i)}}function checkBaseTypeAccessibility(t,r){var n=getSignaturesOfType(t,1);if(n.length){var i=n[0].declaration;if(i&&e.hasModifier(i,8)){var a=e.getClassLikeDeclarationOfSymbol(t.symbol);if(!isNodeWithinClass(r,a)){error(r,e.Diagnostics.Cannot_extend_a_class_0_Class_constructor_is_marked_as_private,getFullyQualifiedName(t.symbol))}}}}function getTargetSymbol(t){return e.getCheckFlags(t)&1?t.target:t}function getClassOrInterfaceDeclarationsOfSymbol(t){return e.filter(t.declarations,function(e){return e.kind===240||e.kind===241})}function checkKindsOfPropertyMemberOverrides(t,r){var n=getPropertiesOfType(r);for(var i=0,a=n;i<a.length;i++){var o=a[i];var s=getTargetSymbol(o);if(s.flags&4194304){continue}var c=getTargetSymbol(getPropertyOfObjectType(t,s.escapedName));var u=e.getDeclarationModifierFlagsFromSymbol(s);e.Debug.assert(!!c,"derived should point to something, even if it is the base class' declaration.");if(c){if(c===s){var l=e.getClassLikeDeclarationOfSymbol(t.symbol);if(u&128&&(!l||!e.hasModifier(l,128))){if(l.kind===209){error(l,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1,symbolToString(o),typeToString(r))}else{error(l,e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2,typeToString(t),symbolToString(o),typeToString(r))}}}else{var f=e.getDeclarationModifierFlagsFromSymbol(c);if(u&8||f&8){continue}if(isPrototypeProperty(s)||s.flags&98308&&c.flags&98308){continue}var d=void 0;if(isPrototypeProperty(s)){if(c.flags&98304){d=e.Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor}else{d=e.Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_property}}else if(s.flags&98304){d=e.Diagnostics.Class_0_defines_instance_member_accessor_1_but_extended_class_2_defines_it_as_instance_member_function}else{d=e.Diagnostics.Class_0_defines_instance_member_property_1_but_extended_class_2_defines_it_as_instance_member_function}error(e.getNameOfDeclaration(c.valueDeclaration)||c.valueDeclaration,d,typeToString(r),symbolToString(s),typeToString(t))}}}}function checkInheritedPropertiesAreIdentical(t,r){var n=getBaseTypes(t);if(n.length<2){return true}var i=e.createUnderscoreEscapedMap();e.forEach(resolveDeclaredMembers(t).declaredProperties,function(e){i.set(e.escapedName,{prop:e,containingType:t})});var a=true;for(var o=0,s=n;o<s.length;o++){var c=s[o];var u=getPropertiesOfType(getTypeWithThisArgument(c,t.thisType));for(var l=0,f=u;l<f.length;l++){var d=f[l];var p=i.get(d.escapedName);if(!p){i.set(d.escapedName,{prop:d,containingType:c})}else{var g=p.containingType!==t;if(g&&!isPropertyIdenticalTo(p.prop,d)){a=false;var _=typeToString(p.containingType);var m=typeToString(c);var y=e.chainDiagnosticMessages(undefined,e.Diagnostics.Named_property_0_of_types_1_and_2_are_not_identical,symbolToString(d),_,m);y=e.chainDiagnosticMessages(y,e.Diagnostics.Interface_0_cannot_simultaneously_extend_types_1_and_2,typeToString(t),_,m);Xt.add(e.createDiagnosticForNodeFromMessageChain(r,y))}}}}return a}function checkPropertyInitialization(t){if(!k||!O||t.flags&4194304){return}var r=findConstructorDeclaration(t);for(var n=0,i=t.members;n<i.length;n++){var a=i[n];if(isInstancePropertyWithoutInitializer(a)){var o=a.name;if(e.isIdentifier(o)){var s=getTypeOfSymbol(getSymbolOfNode(a));if(!(s.flags&3||getFalsyFlags(s)&32768)){if(!r||!isPropertyInitializedInConstructor(o,s,r)){error(a.name,e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor,e.declarationNameToString(o))}}}}}}function isInstancePropertyWithoutInitializer(t){return t.kind===154&&!e.hasModifier(t,32|128)&&!t.exclamationToken&&!t.initializer}function isPropertyInitializedInConstructor(t,r,n){var i=e.createPropertyAccess(e.createThis(),t);i.expression.parent=i;i.parent=n;i.flowNode=n.returnFlowNode;var a=getFlowTypeOfReference(i,r,getOptionalType(r));return!(getFalsyFlags(a)&32768)}function checkInterfaceDeclaration(t){if(!checkGrammarDecoratorsAndModifiers(t))checkGrammarInterfaceDeclaration(t);checkTypeParameters(t.typeParameters);if(a){checkTypeNameIsReserved(t.name,e.Diagnostics.Interface_name_cannot_be_0);checkExportsOnMergedDeclarations(t);var r=getSymbolOfNode(t);checkTypeParameterListsIdentical(r);var n=e.getDeclarationOfKind(r,241);if(t===n){var i=getDeclaredTypeOfSymbol(r);var o=getTypeWithThisArgument(i);if(checkInheritedPropertiesAreIdentical(i,t.name)){for(var s=0,c=getBaseTypes(i);s<c.length;s++){var u=c[s];checkTypeAssignableTo(o,getTypeWithThisArgument(u,i.thisType),t.name,e.Diagnostics.Interface_0_incorrectly_extends_interface_1)}checkIndexConstraints(i)}}checkObjectTypeForDuplicateDeclarations(t)}e.forEach(e.getInterfaceBaseTypeNodes(t),function(t){if(!e.isEntityNameExpression(t.expression)){error(t.expression,e.Diagnostics.An_interface_can_only_extend_an_identifier_Slashqualified_name_with_optional_type_arguments)}checkTypeReferenceNode(t)});e.forEach(t.members,checkSourceElement);if(a){checkTypeForDuplicateIndexSignatures(t);registerForUnusedIdentifiersCheck(t)}}function checkTypeAliasDeclaration(t){checkGrammarDecoratorsAndModifiers(t);checkTypeNameIsReserved(t.name,e.Diagnostics.Type_alias_name_cannot_be_0);checkTypeParameters(t.typeParameters);checkSourceElement(t.type);registerForUnusedIdentifiersCheck(t)}function computeEnumMemberValues(e){var t=getNodeLinks(e);if(!(t.flags&16384)){t.flags|=16384;var r=0;for(var n=0,i=e.members;n<i.length;n++){var a=i[n];var o=computeMemberValue(a,r);getNodeLinks(a).enumMemberValue=o;r=typeof o==="number"?o+1:undefined}}}function computeMemberValue(t,r){if(isComputedNonLiteralName(t.name)){error(t.name,e.Diagnostics.Computed_property_names_are_not_allowed_in_enums)}else{var n=e.getTextOfPropertyName(t.name);if(isNumericLiteralName(n)&&!isInfinityOrNaNString(n)){error(t.name,e.Diagnostics.An_enum_member_cannot_have_a_numeric_name)}}if(t.initializer){return computeConstantValue(t)}if(t.parent.flags&4194304&&!e.isEnumConst(t.parent)){return undefined}if(r!==undefined){return r}error(t.name,e.Diagnostics.Enum_member_must_have_initializer);return undefined}function computeConstantValue(t){var r=getEnumKind(getSymbolOfNode(t.parent));var n=e.isEnumConst(t.parent);var i=t.initializer;var a=r===1&&!isLiteralEnumMember(t)?undefined:evaluate(i);if(a!==undefined){if(n&&typeof a==="number"&&!isFinite(a)){error(i,isNaN(a)?e.Diagnostics.const_enum_member_initializer_was_evaluated_to_disallowed_value_NaN:e.Diagnostics.const_enum_member_initializer_was_evaluated_to_a_non_finite_value)}}else if(r===1){error(i,e.Diagnostics.Computed_values_are_not_permitted_in_an_enum_with_string_valued_members);return 0}else if(n){error(i,e.Diagnostics.In_const_enum_declarations_member_initializer_must_be_constant_expression)}else if(t.parent.flags&4194304){error(i,e.Diagnostics.In_ambient_enum_declarations_member_initializer_must_be_constant_expression)}else{checkTypeAssignableTo(checkExpression(i),getDeclaredTypeOfSymbol(getSymbolOfNode(t.parent)),i,undefined)}return a;function evaluate(r){switch(r.kind){case 202:var n=evaluate(r.operand);if(typeof n==="number"){switch(r.operator){case 38:return n;case 39:return-n;case 53:return~n}}break;case 204:var i=evaluate(r.left);var a=evaluate(r.right);if(typeof i==="number"&&typeof a==="number"){switch(r.operatorToken.kind){case 50:return i|a;case 49:return i&a;case 47:return i>>a;case 48:return i>>>a;case 46:return i<<a;case 51:return i^a;case 40:return i*a;case 42:return i/a;case 38:return i+a;case 39:return i-a;case 43:return i%a;case 41:return Math.pow(i,a)}}else if(typeof i==="string"&&typeof a==="string"&&r.operatorToken.kind===38){return i+a}break;case 10:return r.text;case 8:checkGrammarNumericLiteral(r);return+r.text;case 195:return evaluate(r.expression);case 72:var o=r;if(isInfinityOrNaNString(o.escapedText)){return+o.escapedText}return e.nodeIsMissing(r)?0:evaluateEnumMember(r,getSymbolOfNode(t.parent),o.escapedText);case 190:case 189:var s=r;if(isConstantMemberAccess(s)){var c=getTypeOfExpression(s.expression);if(c.symbol&&c.symbol.flags&384){var u=void 0;if(s.kind===189){u=s.name.escapedText}else{var l=s.argumentExpression;e.Debug.assert(e.isLiteralExpression(l));u=e.escapeLeadingUnderscores(l.text)}return evaluateEnumMember(r,c.symbol,u)}}break}return undefined}function evaluateEnumMember(r,n,i){var a=n.exports.get(i);if(a){var o=a.valueDeclaration;if(o!==t){if(isBlockScopedNameDeclaredBeforeUse(o,t)){return getEnumMemberValue(o)}error(r,e.Diagnostics.A_member_initializer_in_a_enum_declaration_cannot_reference_members_declared_after_it_including_members_defined_in_other_enums);return 0}}return undefined}}function isConstantMemberAccess(e){return e.kind===72||e.kind===189&&isConstantMemberAccess(e.expression)||e.kind===190&&isConstantMemberAccess(e.expression)&&e.argumentExpression.kind===10}function checkEnumDeclaration(t){if(!a){return}checkGrammarDecoratorsAndModifiers(t);checkTypeNameIsReserved(t.name,e.Diagnostics.Enum_name_cannot_be_0);checkCollisionWithRequireExportsInGeneratedCode(t,t.name);checkCollisionWithGlobalPromiseInGeneratedCode(t,t.name);checkExportsOnMergedDeclarations(t);computeEnumMemberValues(t);var r=e.isEnumConst(t);if(x.isolatedModules&&r&&t.flags&4194304){error(t.name,e.Diagnostics.Ambient_const_enums_are_not_allowed_when_the_isolatedModules_flag_is_provided)}var n=getSymbolOfNode(t);var i=e.getDeclarationOfKind(n,t.kind);if(t===i){if(n.declarations.length>1){e.forEach(n.declarations,function(t){if(e.isEnumDeclaration(t)&&e.isEnumConst(t)!==r){error(e.getNameOfDeclaration(t),e.Diagnostics.Enum_declarations_must_all_be_const_or_non_const)}})}var o=false;e.forEach(n.declarations,function(t){if(t.kind!==243){return false}var r=t;if(!r.members.length){return false}var n=r.members[0];if(!n.initializer){if(o){error(n.name,e.Diagnostics.In_an_enum_with_multiple_declarations_only_one_declaration_can_omit_an_initializer_for_its_first_enum_element)}else{o=true}}})}}function getFirstNonAmbientClassOrFunctionDeclaration(t){var r=t.declarations;for(var n=0,i=r;n<i.length;n++){var a=i[n];if((a.kind===240||a.kind===239&&e.nodeIsPresent(a.body))&&!(a.flags&4194304)){return a}}return undefined}function inSameLexicalScope(t,r){var n=e.getEnclosingBlockScopeContainer(t);var i=e.getEnclosingBlockScopeContainer(r);if(isGlobalSourceFile(n)){return isGlobalSourceFile(i)}else if(isGlobalSourceFile(i)){return false}else{return n===i}}function checkModuleDeclaration(t){if(a){var r=e.isGlobalScopeAugmentation(t);var n=t.flags&4194304;if(r&&!n){error(t.name,e.Diagnostics.Augmentations_for_the_global_scope_should_have_declare_modifier_unless_they_appear_in_already_ambient_context)}var i=e.isAmbientModule(t);var o=i?e.Diagnostics.An_ambient_module_declaration_is_only_allowed_at_the_top_level_in_a_file:e.Diagnostics.A_namespace_declaration_is_only_allowed_in_a_namespace_or_module;if(checkGrammarModuleElementContext(t,o)){return}if(!checkGrammarDecoratorsAndModifiers(t)){if(!n&&t.name.kind===10){grammarErrorOnNode(t.name,e.Diagnostics.Only_ambient_modules_can_use_quoted_names)}}if(e.isIdentifier(t.name)){checkCollisionWithRequireExportsInGeneratedCode(t,t.name);checkCollisionWithGlobalPromiseInGeneratedCode(t,t.name)}checkExportsOnMergedDeclarations(t);var s=getSymbolOfNode(t);if(s.flags&512&&s.declarations.length>1&&!n&&isInstantiatedModule(t,!!x.preserveConstEnums||!!x.isolatedModules)){var c=getFirstNonAmbientClassOrFunctionDeclaration(s);if(c){if(e.getSourceFileOfNode(t)!==e.getSourceFileOfNode(c)){error(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_in_a_different_file_from_a_class_or_function_with_which_it_is_merged)}else if(t.pos<c.pos){error(t.name,e.Diagnostics.A_namespace_declaration_cannot_be_located_prior_to_a_class_or_function_with_which_it_is_merged)}}var u=e.getDeclarationOfKind(s,240);if(u&&inSameLexicalScope(t,u)){getNodeLinks(t).flags|=32768}}if(i){if(e.isExternalModuleAugmentation(t)){var l=r||getSymbolOfNode(t).flags&33554432;if(l&&t.body){for(var f=0,d=t.body.statements;f<d.length;f++){var p=d[f];checkModuleAugmentationElement(p,r)}}}else if(isGlobalSourceFile(t.parent)){if(r){error(t.name,e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations)}else if(e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name))){error(t.name,e.Diagnostics.Ambient_module_declaration_cannot_specify_relative_module_name)}}else{if(r){error(t.name,e.Diagnostics.Augmentations_for_the_global_scope_can_only_be_directly_nested_in_external_modules_or_ambient_module_declarations)}else{error(t.name,e.Diagnostics.Ambient_modules_cannot_be_nested_in_other_modules_or_namespaces)}}}}if(t.body){checkSourceElement(t.body);if(!e.isGlobalScopeAugmentation(t)){registerForUnusedIdentifiersCheck(t)}}}function checkModuleAugmentationElement(t,r){switch(t.kind){case 219:for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];checkModuleAugmentationElement(a,r)}break;case 254:case 255:grammarErrorOnFirstToken(t,e.Diagnostics.Exports_and_export_assignments_are_not_permitted_in_module_augmentations);break;case 248:case 249:grammarErrorOnFirstToken(t,e.Diagnostics.Imports_are_not_permitted_in_module_augmentations_Consider_moving_them_to_the_enclosing_external_module);break;case 186:case 237:var o=t.name;if(e.isBindingPattern(o)){for(var s=0,c=o.elements;s<c.length;s++){var u=c[s];checkModuleAugmentationElement(u,r)}break}case 240:case 243:case 239:case 241:case 244:case 242:if(r){return}var l=getSymbolOfNode(t);if(l){var f=!(l.flags&33554432);if(!f){f=!!l.parent&&e.isExternalModuleAugmentation(l.parent.declarations[0])}}break}}function getFirstIdentifier(e){switch(e.kind){case 72:return e;case 148:do{e=e.left}while(e.kind!==72);return e;case 189:do{e=e.expression}while(e.kind!==72);return e}}function checkExternalImportOrExportDeclaration(t){var r=e.getExternalModuleName(t);if(!r||e.nodeIsMissing(r)){return false}if(!e.isStringLiteral(r)){error(r,e.Diagnostics.String_literal_expected);return false}var n=t.parent.kind===245&&e.isAmbientModule(t.parent.parent);if(t.parent.kind!==279&&!n){error(r,t.kind===255?e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace:e.Diagnostics.Import_declarations_in_a_namespace_cannot_reference_a_module);return false}if(n&&e.isExternalModuleNameRelative(r.text)){if(!isTopLevelInExternalModuleAugmentation(t)){error(t,e.Diagnostics.Import_or_export_declaration_in_an_ambient_module_declaration_cannot_reference_module_through_relative_module_name);return false}}return true}function checkAliasSymbol(t){var r=getSymbolOfNode(t);var n=resolveAlias(r);if(n!==Q){var i=(r.flags&(67220415|1048576)?67220415:0)|(r.flags&67897832?67897832:0)|(r.flags&1920?1920:0);if(n.flags&i){var a=t.kind===257?e.Diagnostics.Export_declaration_conflicts_with_exported_declaration_of_0:e.Diagnostics.Import_declaration_conflicts_with_local_declaration_of_0;error(t,a,symbolToString(r))}if(x.isolatedModules&&t.kind===257&&!(n.flags&67220415)&&!(t.flags&4194304)){error(t,e.Diagnostics.Cannot_re_export_a_type_when_the_isolatedModules_flag_is_provided)}}}function checkImportBinding(e){checkCollisionWithRequireExportsInGeneratedCode(e,e.name);checkCollisionWithGlobalPromiseInGeneratedCode(e,e.name);checkAliasSymbol(e)}function checkImportDeclaration(t){if(checkGrammarModuleElementContext(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)){return}if(!checkGrammarDecoratorsAndModifiers(t)&&e.hasModifiers(t)){grammarErrorOnFirstToken(t,e.Diagnostics.An_import_declaration_cannot_have_modifiers)}if(checkExternalImportOrExportDeclaration(t)){var r=t.importClause;if(r){if(r.name){checkImportBinding(r)}if(r.namedBindings){if(r.namedBindings.kind===251){checkImportBinding(r.namedBindings)}else{var n=resolveExternalModuleName(t,t.moduleSpecifier);if(n){e.forEach(r.namedBindings.elements,checkImportBinding)}}}}}}function checkImportEqualsDeclaration(t){if(checkGrammarModuleElementContext(t,e.Diagnostics.An_import_declaration_can_only_be_used_in_a_namespace_or_module)){return}checkGrammarDecoratorsAndModifiers(t);if(e.isInternalModuleImportEqualsDeclaration(t)||checkExternalImportOrExportDeclaration(t)){checkImportBinding(t);if(e.hasModifier(t,1)){markExportAsReferenced(t)}if(t.moduleReference.kind!==259){var r=resolveAlias(getSymbolOfNode(t));if(r!==Q){if(r.flags&67220415){var n=getFirstIdentifier(t.moduleReference);if(!(resolveEntityName(n,67220415|1920).flags&1920)){error(n,e.Diagnostics.Module_0_is_hidden_by_a_local_declaration_with_the_same_name,e.declarationNameToString(n))}}if(r.flags&67897832){checkTypeNameIsReserved(t.name,e.Diagnostics.Import_name_cannot_be_0)}}}else{if(E>=e.ModuleKind.ES2015&&!(t.flags&4194304)){grammarErrorOnNode(t,e.Diagnostics.Import_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead)}}}}function checkExportDeclaration(t){if(checkGrammarModuleElementContext(t,e.Diagnostics.An_export_declaration_can_only_be_used_in_a_module)){return}if(!checkGrammarDecoratorsAndModifiers(t)&&e.hasModifiers(t)){grammarErrorOnFirstToken(t,e.Diagnostics.An_export_declaration_cannot_have_modifiers)}if(!t.moduleSpecifier||checkExternalImportOrExportDeclaration(t)){if(t.exportClause){e.forEach(t.exportClause.elements,checkExportSpecifier);var r=t.parent.kind===245&&e.isAmbientModule(t.parent.parent);var n=!r&&t.parent.kind===245&&!t.moduleSpecifier&&t.flags&4194304;if(t.parent.kind!==279&&!r&&!n){error(t,e.Diagnostics.Export_declarations_are_not_permitted_in_a_namespace)}}else{var i=resolveExternalModuleName(t,t.moduleSpecifier);if(i&&hasExportAssignmentSymbol(i)){error(t.moduleSpecifier,e.Diagnostics.Module_0_uses_export_and_cannot_be_used_with_export_Asterisk,symbolToString(i))}if(E!==e.ModuleKind.System&&E!==e.ModuleKind.ES2015&&E!==e.ModuleKind.ESNext){checkExternalEmitHelpers(t,32768)}}}}function checkGrammarModuleElementContext(e,t){var r=e.parent.kind===279||e.parent.kind===245||e.parent.kind===244;if(!r){grammarErrorOnFirstToken(e,t)}return!r}function checkExportSpecifier(t){checkAliasSymbol(t);if(e.getEmitDeclarations(x)){collectLinkedAliases(t.propertyName||t.name,true)}if(!t.parent.parent.moduleSpecifier){var r=t.propertyName||t.name;var n=resolveName(r,r.escapedText,67220415|67897832|1920|2097152,undefined,undefined,true);if(n&&(n===R||isGlobalSourceFile(getDeclarationContainer(n.declarations[0])))){error(r,e.Diagnostics.Cannot_export_0_Only_local_declarations_can_be_exported_from_a_module,e.idText(r))}else{markExportAsReferenced(t)}}}function checkExportAssignment(t){if(checkGrammarModuleElementContext(t,e.Diagnostics.An_export_assignment_can_only_be_used_in_a_module)){return}var r=t.parent.kind===279?t.parent:t.parent.parent;if(r.kind===244&&!e.isAmbientModule(r)){if(t.isExportEquals){error(t,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_namespace)}else{error(t,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module)}return}if(!checkGrammarDecoratorsAndModifiers(t)&&e.hasModifiers(t)){grammarErrorOnFirstToken(t,e.Diagnostics.An_export_assignment_cannot_have_modifiers)}if(t.expression.kind===72){markExportAsReferenced(t);if(e.getEmitDeclarations(x)){collectLinkedAliases(t.expression,true)}}else{checkExpressionCached(t.expression)}checkExternalModuleExports(r);if(t.flags&4194304&&!e.isEntityNameExpression(t.expression)){grammarErrorOnNode(t.expression,e.Diagnostics.The_expression_of_an_export_assignment_must_be_an_identifier_or_qualified_name_in_an_ambient_context)}if(t.isExportEquals&&!(t.flags&4194304)){if(E>=e.ModuleKind.ES2015){grammarErrorOnNode(t,e.Diagnostics.Export_assignment_cannot_be_used_when_targeting_ECMAScript_modules_Consider_using_export_default_or_another_module_format_instead)}else if(E===e.ModuleKind.System){grammarErrorOnNode(t,e.Diagnostics.Export_assignment_is_not_supported_when_module_flag_is_system)}}}function hasExportedMembers(t){return e.forEachEntry(t.exports,function(e,t){return t!=="export="})}function checkExternalModuleExports(t){var r=getSymbolOfNode(t);var n=getSymbolLinks(r);if(!n.exportsChecked){var i=r.exports.get("export=");if(i&&hasExportedMembers(r)){var a=getDeclarationOfAliasSymbol(i)||i.valueDeclaration;if(!isTopLevelInExternalModuleAugmentation(a)&&!e.isInJSFile(a)){error(a,e.Diagnostics.An_export_assignment_cannot_be_used_in_a_module_with_other_exported_elements)}}var o=getExportsOfModule(r);if(o){o.forEach(function(t,r){var n=t.declarations,i=t.flags;if(r==="__export"){return}if(i&(1920|64|384)){return}var a=e.countWhere(n,Tr);if(i&524288&&a<=2){return}if(a>1){for(var o=0,s=n;o<s.length;o++){var c=s[o];if(isNotOverload(c)){Xt.add(e.createDiagnosticForNode(c,e.Diagnostics.Cannot_redeclare_exported_variable_0,e.unescapeLeadingUnderscores(r)))}}}})}n.exportsChecked=true}}function isNotAccessor(t){return!e.isAccessor(t)}function isNotOverload(e){return e.kind!==239&&e.kind!==156||!!e.body}function checkSourceElement(t){if(!t){return}if(e.isInJSFile(t)){e.forEach(t.jsDoc,function(t){var r=t.tags;return e.forEach(r,checkSourceElement)})}var r=t.kind;if(l){switch(r){case 244:case 240:case 241:case 239:l.throwIfCancellationRequested()}}switch(r){case 150:return checkTypeParameter(t);case 151:return checkParameter(t);case 154:case 153:return checkPropertyDeclaration(t);case 165:case 166:case 160:case 161:case 162:return checkSignatureDeclaration(t);case 156:case 155:return checkMethodDeclaration(t);case 157:return checkConstructorDeclaration(t);case 158:case 159:return checkAccessorDeclaration(t);case 164:return checkTypeReferenceNode(t);case 163:return checkTypePredicate(t);case 167:return checkTypeQuery(t);case 168:return checkTypeLiteral(t);case 169:return checkArrayType(t);case 170:return checkTupleType(t);case 173:case 174:return checkUnionOrIntersectionType(t);case 177:case 171:case 172:return checkSourceElement(t.type);case 178:return checkThisType(t);case 179:return checkTypeOperator(t);case 175:return checkConditionalType(t);case 176:return checkInferType(t);case 183:return checkImportType(t);case 295:return checkJSDocAugmentsTag(t);case 304:case 297:return checkJSDocTypeAliasTag(t);case 303:return checkJSDocTemplateTag(t);case 302:return checkJSDocTypeTag(t);case 299:return checkJSDocParameterTag(t);case 289:checkJSDocFunctionType(t);case 287:case 286:case 284:case 285:case 292:checkJSDocTypeIsInJsFile(t);e.forEachChild(t,checkSourceElement);return;case 290:checkJSDocVariadicType(t);return;case 283:return checkSourceElement(t.type);case 180:return checkIndexedAccessType(t);case 181:return checkMappedType(t);case 239:return checkFunctionDeclaration(t);case 218:case 245:return checkBlock(t);case 219:return checkVariableStatement(t);case 221:return checkExpressionStatement(t);case 222:return checkIfStatement(t);case 223:return checkDoStatement(t);case 224:return checkWhileStatement(t);case 225:return checkForStatement(t);case 226:return checkForInStatement(t);case 227:return checkForOfStatement(t);case 228:case 229:return checkBreakOrContinueStatement(t);case 230:return checkReturnStatement(t);case 231:return checkWithStatement(t);case 232:return checkSwitchStatement(t);case 233:return checkLabeledStatement(t);case 234:return checkThrowStatement(t);case 235:return checkTryStatement(t);case 237:return checkVariableDeclaration(t);case 186:return checkBindingElement(t);case 240:return checkClassDeclaration(t);case 241:return checkInterfaceDeclaration(t);case 242:return checkTypeAliasDeclaration(t);case 243:return checkEnumDeclaration(t);case 244:return checkModuleDeclaration(t);case 249:return checkImportDeclaration(t);case 248:return checkImportEqualsDeclaration(t);case 255:return checkExportDeclaration(t);case 254:return checkExportAssignment(t);case 220:case 236:checkGrammarStatementInAmbientContext(t);return;case 258:return checkMissingDeclaration(t)}}function checkJSDocTypeIsInJsFile(t){if(!e.isInJSFile(t)){grammarErrorOnNode(t,e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments)}}function checkJSDocVariadicType(t){checkJSDocTypeIsInJsFile(t);checkSourceElement(t.type);var r=t.parent;if(e.isParameter(r)&&e.isJSDocFunctionType(r.parent)){if(e.last(r.parent.parameters)!==r){error(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}return}if(!e.isJSDocTypeExpression(r)){error(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature)}var n=t.parent.parent;if(!e.isJSDocParameterTag(n)){error(t,e.Diagnostics.JSDoc_may_only_appear_in_the_last_parameter_of_a_signature);return}var i=e.getParameterSymbolFromJSDoc(n);if(!i){return}var a=e.getHostSignatureFromJSDoc(n);if(!a||e.last(a.parameters).symbol!==i){error(t,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}}function getTypeFromJSDocVariadicType(t){var r=getTypeFromTypeNode(t.type);var n=t.parent;var i=t.parent.parent;if(e.isJSDocTypeExpression(t.parent)&&e.isJSDocParameterTag(i)){var a=e.getHostSignatureFromJSDoc(i);if(a){var o=e.lastOrUndefined(a.parameters);var s=e.getParameterSymbolFromJSDoc(i);if(!o||s&&o.symbol===s&&e.isRestParameter(o)){return createArrayType(r)}}}if(e.isParameter(n)&&e.isJSDocFunctionType(n.parent)){return createArrayType(r)}return addOptionality(r)}function checkNodeDeferred(t){var r=e.getSourceFileOfNode(t);var n=getNodeLinks(r);if(!(n.flags&1)){n.deferredNodes=n.deferredNodes||e.createMap();var i=""+getNodeId(t);n.deferredNodes.set(i,t)}}function checkDeferredNodes(e){var t=getNodeLinks(e);if(!t.deferredNodes){return}t.deferredNodes.forEach(function(e){switch(e.kind){case 196:case 197:case 156:case 155:checkFunctionExpressionOrObjectLiteralMethodDeferred(e);break;case 158:case 159:checkAccessorDeclaration(e);break;case 209:checkClassExpressionDeferred(e);break;case 261:checkJsxSelfClosingElementDeferred(e);break;case 260:checkJsxElementDeferred(e);break}})}function checkSourceFile(t){e.performance.mark("beforeCheck");checkSourceFileWorker(t);e.performance.mark("afterCheck");e.performance.measure("Check","beforeCheck","afterCheck")}function unusedIsError(t){switch(t){case 0:return!!x.noUnusedLocals;case 1:return!!x.noUnusedParameters;default:return e.Debug.assertNever(t)}}function getPotentiallyUnusedIdentifiers(t){return Dt.get(t.path)||e.emptyArray}function checkSourceFileWorker(t){var r=getNodeLinks(t);if(!(r.flags&1)){if(e.skipTypeChecking(t,x)){return}checkGrammarSourceFile(t);e.clear(Ht);e.clear(Qt);e.forEach(t.statements,checkSourceElement);checkSourceElement(t.endOfFileToken);checkDeferredNodes(t);if(e.isExternalOrCommonJsModule(t)){registerForUnusedIdentifiersCheck(t)}if(!t.isDeclarationFile&&(x.noUnusedLocals||x.noUnusedParameters)){checkUnusedIdentifiers(getPotentiallyUnusedIdentifiers(t),function(t,r,n){if(!e.containsParseError(t)&&unusedIsError(r)){Xt.add(n)}})}if(e.isExternalOrCommonJsModule(t)){checkExternalModuleExports(t)}if(Ht.length){e.forEach(Ht,checkIfThisIsCapturedInEnclosingScope);e.clear(Ht)}if(Qt.length){e.forEach(Qt,checkIfNewTargetIsCapturedInEnclosingScope);e.clear(Qt)}r.flags|=1}}function getDiagnostics(e,t){try{l=t;return getDiagnosticsWorker(e)}finally{l=undefined}}function getDiagnosticsWorker(t){throwIfNonDiagnosticsProducing();if(t){var n=Xt.getGlobalDiagnostics();var i=n.length;checkSourceFile(t);var a=Xt.getDiagnostics(t.fileName);var o=Xt.getGlobalDiagnostics();if(o!==n){var s=e.relativeComplement(n,o,e.compareDiagnostics);return e.concatenate(s,a)}else if(i===0&&o.length>0){return e.concatenate(o,a)}return a}e.forEach(r.getSourceFiles(),checkSourceFile);return Xt.getDiagnostics()}function getGlobalDiagnostics(){throwIfNonDiagnosticsProducing();return Xt.getGlobalDiagnostics()}function throwIfNonDiagnosticsProducing(){if(!a){throw new Error("Trying to get diagnostics from a type checker that does not produce them.")}}function getSymbolsInScope(t,r){if(t.flags&8388608){return[]}var n=e.createSymbolTable();var i=false;populateSymbols();n.delete("this");return symbolsToArray(n);function populateSymbols(){while(t){if(t.locals&&!isGlobalSourceFile(t)){copySymbols(t.locals,r)}switch(t.kind){case 279:if(!e.isExternalOrCommonJsModule(t))break;case 244:copySymbols(getSymbolOfNode(t).exports,r&2623475);break;case 243:copySymbols(getSymbolOfNode(t).exports,r&8);break;case 209:var n=t.name;if(n){copySymbol(t.symbol,r)}case 240:case 241:if(!i){copySymbols(getMembersOfSymbol(getSymbolOfNode(t)),r&67897832)}break;case 196:var a=t.name;if(a){copySymbol(t.symbol,r)}break}if(e.introducesArgumentsExoticObject(t)){copySymbol(B,r)}i=e.hasModifier(t,32);t=t.parent}copySymbols(We,r)}function copySymbol(t,r){if(e.getCombinedLocalAndExportSymbolFlags(t)&r){var i=t.escapedName;if(!n.has(i)){n.set(i,t)}}}function copySymbols(e,t){if(t){e.forEach(function(e){copySymbol(e,t)})}}}function isTypeDeclarationName(e){return e.kind===72&&isTypeDeclaration(e.parent)&&e.parent.name===e}function isTypeDeclaration(e){switch(e.kind){case 150:case 240:case 241:case 242:case 243:return true;default:return false}}function isTypeReferenceIdentifier(e){while(e.parent.kind===148){e=e.parent}return e.parent.kind===164}function isHeritageClauseElementIdentifier(e){while(e.parent.kind===189){e=e.parent}return e.parent.kind===211}function forEachEnclosingClass(t,r){var n;while(true){t=e.getContainingClass(t);if(!t)break;if(n=r(t))break}return n}function isNodeUsedDuringClassInitialization(t){return!!e.findAncestor(t,function(t){if(e.isConstructorDeclaration(t)&&e.nodeIsPresent(t.body)||e.isPropertyDeclaration(t)){return true}else if(e.isClassLike(t)||e.isFunctionLikeDeclaration(t)){return"quit"}return false})}function isNodeWithinClass(e,t){return!!forEachEnclosingClass(e,function(e){return e===t})}function getLeftSideOfImportEqualsOrExportAssignment(e){while(e.parent.kind===148){e=e.parent}if(e.parent.kind===248){return e.parent.moduleReference===e?e.parent:undefined}if(e.parent.kind===254){return e.parent.expression===e?e.parent:undefined}return undefined}function isInRightSideOfImportOrExportAssignment(e){return getLeftSideOfImportEqualsOrExportAssignment(e)!==undefined}function getSpecialPropertyAssignmentSymbolFromEntityName(t){var r=e.getAssignmentDeclarationKind(t.parent.parent);switch(r){case 1:case 3:return getSymbolOfNode(t.parent);case 4:case 2:case 5:return getSymbolOfNode(t.parent.parent)}}function isImportTypeQualifierPart(t){var r=t.parent;while(e.isQualifiedName(r)){t=r;r=r.parent}if(r&&r.kind===183&&r.qualifier===t){return r}return undefined}function getSymbolOfEntityNameOrPropertyAccessExpression(t){if(e.isDeclarationName(t)){return getSymbolOfNode(t.parent)}if(e.isInJSFile(t)&&t.parent.kind===189&&t.parent===t.parent.parent.left){var r=getSpecialPropertyAssignmentSymbolFromEntityName(t);if(r){return r}}if(t.parent.kind===254&&e.isEntityNameExpression(t)){var n=resolveEntityName(t,67220415|67897832|1920|2097152,true);if(n&&n!==Q){return n}}else if(!e.isPropertyAccessExpression(t)&&isInRightSideOfImportOrExportAssignment(t)){var i=e.getAncestor(t,248);e.Debug.assert(i!==undefined);return getSymbolOfPartOfRightHandSideOfImportEquals(t,true)}if(!e.isPropertyAccessExpression(t)){var a=isImportTypeQualifierPart(t);if(a){getTypeFromTypeNode(a);var o=getNodeLinks(t).resolvedSymbol;return o===Q?undefined:o}}while(e.isRightSideOfQualifiedNameOrPropertyAccess(t)){t=t.parent}if(isHeritageClauseElementIdentifier(t)){var s=0;if(t.parent.kind===211){s=67897832;if(e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)){s|=67220415}}else{s=1920}s|=2097152;var c=e.isEntityNameExpression(t)?resolveEntityName(t,s):undefined;if(c){return c}}if(t.parent.kind===299){return e.getParameterSymbolFromJSDoc(t.parent)}if(t.parent.kind===150&&t.parent.parent.kind===303){e.Debug.assert(!e.isInJSFile(t));var u=e.getTypeParameterFromJsDoc(t.parent);return u&&u.symbol}if(e.isExpressionNode(t)){if(e.nodeIsMissing(t)){return undefined}if(t.kind===72){if(e.isJSXTagName(t)&&isJsxIntrinsicIdentifier(t)){var l=getIntrinsicTagSymbol(t.parent);return l===Q?undefined:l}return resolveEntityName(t,67220415,false,true)}else if(t.kind===189||t.kind===148){var f=getNodeLinks(t);if(f.resolvedSymbol){return f.resolvedSymbol}if(t.kind===189){checkPropertyAccessExpression(t)}else{checkQualifiedName(t)}return f.resolvedSymbol}}else if(isTypeReferenceIdentifier(t)){var s=t.parent.kind===164?67897832:1920;return resolveEntityName(t,s,false,true)}if(t.parent.kind===163){return resolveEntityName(t,1)}return undefined}function getSymbolAtLocation(t){if(t.kind===279){return e.isExternalModule(t)?getMergedSymbol(t.symbol):undefined}var r=t.parent;var n=r.parent;if(t.flags&8388608){return undefined}if(isDeclarationNameOrImportPropertyName(t)){var i=getSymbolOfNode(r);return e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t?getImmediateAliasedSymbol(i):i}else if(e.isLiteralComputedPropertyDeclarationName(t)){return getSymbolOfNode(r.parent)}if(t.kind===72){if(isInRightSideOfImportOrExportAssignment(t)){return getSymbolOfEntityNameOrPropertyAccessExpression(t)}else if(r.kind===186&&n.kind===184&&t===r.propertyName){var a=getTypeOfNode(n);var o=getPropertyOfType(a,t.escapedText);if(o){return o}}}switch(t.kind){case 72:case 189:case 148:return getSymbolOfEntityNameOrPropertyAccessExpression(t);case 100:var s=e.getThisContainer(t,false);if(e.isFunctionLike(s)){var c=getSignatureFromDeclaration(s);if(c.thisParameter){return c.thisParameter}}if(e.isInExpressionContext(t)){return checkExpression(t).symbol}case 178:return getTypeFromThisTypeNode(t).symbol;case 98:return checkExpression(t).symbol;case 124:var u=t.parent;if(u&&u.kind===157){return u.parent.symbol}return undefined;case 10:case 14:if(e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t||(t.parent.kind===249||t.parent.kind===255)&&t.parent.moduleSpecifier===t||(e.isInJSFile(t)&&e.isRequireCall(t.parent,false)||e.isImportCall(t.parent))||e.isLiteralTypeNode(t.parent)&&e.isLiteralImportTypeNode(t.parent.parent)&&t.parent.parent.argument===t.parent){return resolveExternalModuleName(t,t)}if(e.isCallExpression(r)&&e.isBindableObjectDefinePropertyCall(r)&&r.arguments[1]===t){return getSymbolOfNode(r)}case 8:var l=e.isElementAccessExpression(r)?r.argumentExpression===t?getTypeOfExpression(r.expression):undefined:e.isLiteralTypeNode(r)&&e.isIndexedAccessTypeNode(n)?getTypeFromTypeNode(n.objectType):undefined;return l&&getPropertyOfType(l,e.escapeLeadingUnderscores(t.text));case 80:case 90:case 37:case 76:return getSymbolOfNode(t.parent);case 183:return e.isLiteralImportTypeNode(t)?getSymbolAtLocation(t.argument.literal):undefined;case 85:return e.isExportAssignment(t.parent)?e.Debug.assertDefined(t.parent.symbol):undefined;default:return undefined}}function getShorthandAssignmentValueSymbol(e){if(e&&e.kind===276){return resolveEntityName(e.name,67220415|2097152)}return undefined}function getExportSpecifierLocalTargetSymbol(e){return e.parent.parent.moduleSpecifier?getExternalModuleMember(e.parent.parent,e):resolveEntityName(e.propertyName||e.name,67220415|67897832|1920|2097152)}function getTypeOfNode(t){if(t.flags&8388608){return ee}var r=e.tryGetClassImplementingOrExtendingExpressionWithTypeArguments(t);var n=r&&getDeclaredTypeOfClassOrInterface(getSymbolOfNode(r.class));if(e.isPartOfTypeNode(t)){var i=getTypeFromTypeNode(t);return n?getTypeWithThisArgument(i,n.thisType):i}if(e.isExpressionNode(t)){return getRegularTypeOfExpression(t)}if(n&&!r.isImplements){var a=e.firstOrUndefined(getBaseTypes(n));return a?getTypeWithThisArgument(a,n.thisType):ee}if(isTypeDeclaration(t)){var o=getSymbolOfNode(t);return getDeclaredTypeOfSymbol(o)}if(isTypeDeclarationName(t)){var o=getSymbolAtLocation(t);return o?getDeclaredTypeOfSymbol(o):ee}if(e.isDeclaration(t)){var o=getSymbolOfNode(t);return getTypeOfSymbol(o)}if(isDeclarationNameOrImportPropertyName(t)){var o=getSymbolAtLocation(t);return o?getTypeOfSymbol(o):ee}if(e.isBindingPattern(t)){return getTypeForVariableLikeDeclaration(t.parent,true)||ee}if(isInRightSideOfImportOrExportAssignment(t)){var o=getSymbolAtLocation(t);if(o){var s=getDeclaredTypeOfSymbol(o);return s!==ee?s:getTypeOfSymbol(o)}}return ee}function getTypeOfArrayLiteralOrObjectLiteralDestructuringAssignment(t){e.Debug.assert(t.kind===188||t.kind===187);if(t.parent.kind===227){var r=checkRightHandSideOfForOf(t.parent.expression,t.parent.awaitModifier);return checkDestructuringAssignment(t,r||ee)}if(t.parent.kind===204){var r=getTypeOfExpression(t.parent.right);return checkDestructuringAssignment(t,r||ee)}if(t.parent.kind===275){var n=getTypeOfArrayLiteralOrObjectLiteralDestructuringAssignment(t.parent.parent);return checkObjectLiteralDestructuringPropertyAssignment(n||ee,t.parent)}e.Debug.assert(t.parent.kind===187);var i=getTypeOfArrayLiteralOrObjectLiteralDestructuringAssignment(t.parent);var a=checkIteratedTypeOrElementType(i||ee,t.parent,false,false)||ee;return checkArrayLiteralDestructuringElementAssignment(t.parent,i,t.parent.elements.indexOf(t),a||ee)}function getPropertySymbolOfDestructuringAssignment(e){var t=getTypeOfArrayLiteralOrObjectLiteralDestructuringAssignment(e.parent.parent);return t&&getPropertyOfType(t,e.escapedText)}function getRegularTypeOfExpression(t){if(e.isRightSideOfQualifiedNameOrPropertyAccess(t)){t=t.parent}return getRegularTypeOfLiteralType(getTypeOfExpression(t))}function getParentTypeOfClassElement(t){var r=getSymbolOfNode(t.parent);return e.hasModifier(t,32)?getTypeOfSymbol(r):getDeclaredTypeOfSymbol(r)}function getClassElementPropertyKeyType(t){var r=t.name;switch(r.kind){case 72:return getLiteralType(e.idText(r));case 8:case 10:return getLiteralType(r.text);case 149:var n=checkComputedPropertyName(r);return isTypeAssignableToKind(n,12288)?n:oe;default:e.Debug.fail("Unsupported property name.");return ee}}function getAugmentedPropertiesOfType(t){t=getApparentType(t);var r=e.createSymbolTable(getPropertiesOfType(t));var n=getSignaturesOfType(t,0).length?He:getSignaturesOfType(t,1).length?Qe:undefined;if(n){e.forEach(getPropertiesOfType(n),function(e){if(!r.has(e.escapedName)){r.set(e.escapedName,e)}})}return getNamedMembers(r)}function typeHasCallOrConstructSignatures(t){return e.typeHasCallOrConstructSignatures(t,W)}function getRootSymbols(t){var r=getImmediateRootSymbols(t);return r?e.flatMap(r,getRootSymbols):[t]}function getImmediateRootSymbols(t){if(e.getCheckFlags(t)&6){return e.mapDefined(getSymbolLinks(t).containingType.types,function(e){return getPropertyOfType(e,t.escapedName)})}else if(t.flags&33554432){var r=t,n=r.leftSpread,i=r.rightSpread,a=r.syntheticOrigin;return n?[n,i]:a?[a]:e.singleElementArray(tryGetAliasTarget(t))}return undefined}function tryGetAliasTarget(e){var t;var r=e;while(r=getSymbolLinks(r).target){t=r}return t}function isArgumentsLocalBinding(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=r.parent.kind===189&&r.parent.name===r;return!n&&getReferencedValueSymbol(r)===B}}return false}function moduleExportsSomeValue(t){var r=resolveExternalModuleName(t.parent,t);if(!r||e.isShorthandAmbientModuleSymbol(r)){return true}var n=hasExportAssignmentSymbol(r);r=resolveExternalModuleSymbol(r);var i=getSymbolLinks(r);if(i.exportsSomeValue===undefined){i.exportsSomeValue=n?!!(r.flags&67220415):e.forEachEntry(getExportsOfModule(r),isValue)}return i.exportsSomeValue;function isValue(e){e=resolveSymbol(e);return e&&!!(e.flags&67220415)}}function isNameOfModuleOrEnumDeclaration(t){return e.isModuleOrEnumDeclaration(t.parent)&&t===t.parent.name}function getReferencedExportContainer(t,r){var n=e.getParseTreeNode(t,e.isIdentifier);if(n){var i=getReferencedValueSymbol(n,isNameOfModuleOrEnumDeclaration(n));if(i){if(i.flags&1048576){var a=getMergedSymbol(i.exportSymbol);if(!r&&a.flags&944&&!(a.flags&3)){return undefined}i=a}var o=getParentOfSymbol(i);if(o){if(o.flags&512&&o.valueDeclaration.kind===279){var s=o.valueDeclaration;var c=e.getSourceFileOfNode(n);var u=s!==c;return u?undefined:s}return e.findAncestor(n.parent,function(t){return e.isModuleOrEnumDeclaration(t)&&getSymbolOfNode(t)===o})}}}}function getReferencedImportDeclaration(t){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=getReferencedValueSymbol(r);if(isNonLocalAlias(n,67220415)){return getDeclarationOfAliasSymbol(n)}}return undefined}function isSymbolOfDeclarationWithCollidingName(t){if(t.flags&418){var r=getSymbolLinks(t);if(r.isDeclarationWithCollidingName===undefined){var n=e.getEnclosingBlockScopeContainer(t.valueDeclaration);if(e.isStatementWithLocals(n)){var i=getNodeLinks(t.valueDeclaration);if(resolveName(n.parent,t.escapedName,67220415,undefined,undefined,false)){r.isDeclarationWithCollidingName=true}else if(i.flags&262144){var a=i.flags&524288;var o=e.isIterationStatement(n,false);var s=n.kind===218&&e.isIterationStatement(n.parent,false);r.isDeclarationWithCollidingName=!e.isBlockScopedContainerTopLevel(n)&&(!a||!o&&!s)}else{r.isDeclarationWithCollidingName=false}}}return r.isDeclarationWithCollidingName}return false}function getReferencedDeclarationWithCollidingName(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=getReferencedValueSymbol(r);if(n&&isSymbolOfDeclarationWithCollidingName(n)){return n.valueDeclaration}}}return undefined}function isDeclarationWithCollidingName(t){var r=e.getParseTreeNode(t,e.isDeclaration);if(r){var n=getSymbolOfNode(r);if(n){return isSymbolOfDeclarationWithCollidingName(n)}}return false}function isValueAliasDeclaration(t){switch(t.kind){case 248:case 250:case 251:case 253:case 257:return isAliasResolvedToValue(getSymbolOfNode(t)||Q);case 255:var r=t.exportClause;return!!r&&e.some(r.elements,isValueAliasDeclaration);case 254:return t.expression&&t.expression.kind===72?isAliasResolvedToValue(getSymbolOfNode(t)||Q):true}return false}function isTopLevelValueImportEqualsWithEntityName(t){var r=e.getParseTreeNode(t,e.isImportEqualsDeclaration);if(r===undefined||r.parent.kind!==279||!e.isInternalModuleImportEqualsDeclaration(r)){return false}var n=isAliasResolvedToValue(getSymbolOfNode(r));return n&&r.moduleReference&&!e.nodeIsMissing(r.moduleReference)}function isAliasResolvedToValue(e){var t=resolveAlias(e);if(t===Q){return true}return!!(t.flags&67220415)&&(x.preserveConstEnums||!isConstEnumOrConstEnumOnlyModule(t))}function isConstEnumOrConstEnumOnlyModule(e){return isConstEnumSymbol(e)||!!e.constEnumOnlyModule}function isReferencedAliasDeclaration(t,r){if(e.isAliasSymbolDeclaration(t)){var n=getSymbolOfNode(t);if(n&&getSymbolLinks(n).referenced){return true}var i=getSymbolLinks(n).target;if(i&&e.getModifierFlags(t)&1&&i.flags&67220415&&(x.preserveConstEnums||!isConstEnumOrConstEnumOnlyModule(i))){return true}}if(r){return!!e.forEachChild(t,function(e){return isReferencedAliasDeclaration(e,r)})}return false}function isImplementationOfOverload(t){if(e.nodeIsPresent(t.body)){if(e.isGetAccessor(t)||e.isSetAccessor(t))return false;var r=getSymbolOfNode(t);var n=getSignaturesOfSymbol(r);return n.length>1||n.length===1&&n[0].declaration!==t}return false}function isRequiredInitializedParameter(t){return!!k&&!isOptionalParameter(t)&&!e.isJSDocParameterTag(t)&&!!t.initializer&&!e.hasModifier(t,92)}function isOptionalUninitializedParameterProperty(t){return k&&isOptionalParameter(t)&&!t.initializer&&e.hasModifier(t,92)}function isExpandoFunctionDeclaration(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r){return false}var n=getSymbolOfNode(r);if(!n||!(n.flags&16)){return false}return!!e.forEachEntry(getExportsOfSymbol(n),function(t){return t.flags&67220415&&e.isPropertyAccessExpression(t.valueDeclaration)})}function getPropertiesOfContainerFunction(t){var r=e.getParseTreeNode(t,e.isFunctionDeclaration);if(!r){return e.emptyArray}var n=getSymbolOfNode(r);return n&&getPropertiesOfType(getTypeOfSymbol(n))||e.emptyArray}function getNodeCheckFlags(e){return getNodeLinks(e).flags||0}function getEnumMemberValue(e){computeEnumMemberValues(e.parent);return getNodeLinks(e).enumMemberValue}function canHaveConstantValue(e){switch(e.kind){case 278:case 189:case 190:return true}return false}function getConstantValue(t){if(t.kind===278){return getEnumMemberValue(t)}var r=getNodeLinks(t).resolvedSymbol;if(r&&r.flags&8){var n=r.valueDeclaration;if(e.isEnumConst(n.parent)){return getEnumMemberValue(n)}}return undefined}function isFunctionType(e){return!!(e.flags&524288)&&getSignaturesOfType(e,0).length>0}function getTypeReferenceSerializationKind(t,r){var n=e.getParseTreeNode(t,e.isEntityName);if(!n)return e.TypeReferenceSerializationKind.Unknown;if(r){r=e.getParseTreeNode(r);if(!r)return e.TypeReferenceSerializationKind.Unknown}var i=resolveEntityName(n,67220415,true,false,r);var a=resolveEntityName(n,67897832,true,false,r);if(i&&i===a){var o=getGlobalPromiseConstructorSymbol(false);if(o&&i===o){return e.TypeReferenceSerializationKind.Promise}var s=getTypeOfSymbol(i);if(s&&isConstructorType(s)){return e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue}}if(!a){return e.TypeReferenceSerializationKind.Unknown}var c=getDeclaredTypeOfSymbol(a);if(c===ee){return e.TypeReferenceSerializationKind.Unknown}else if(c.flags&3){return e.TypeReferenceSerializationKind.ObjectType}else if(isTypeAssignableToKind(c,16384|98304|131072)){return e.TypeReferenceSerializationKind.VoidNullableOrNeverType}else if(isTypeAssignableToKind(c,528)){return e.TypeReferenceSerializationKind.BooleanType}else if(isTypeAssignableToKind(c,296)){return e.TypeReferenceSerializationKind.NumberLikeType}else if(isTypeAssignableToKind(c,2112)){return e.TypeReferenceSerializationKind.BigIntLikeType}else if(isTypeAssignableToKind(c,132)){return e.TypeReferenceSerializationKind.StringLikeType}else if(isTupleType(c)){return e.TypeReferenceSerializationKind.ArrayLikeType}else if(isTypeAssignableToKind(c,12288)){return e.TypeReferenceSerializationKind.ESSymbolType}else if(isFunctionType(c)){return e.TypeReferenceSerializationKind.TypeWithCallSignature}else if(isArrayType(c)){return e.TypeReferenceSerializationKind.ArrayLikeType}else{return e.TypeReferenceSerializationKind.ObjectType}}function createTypeOfDeclaration(t,r,n,i,a){var o=e.getParseTreeNode(t,e.isVariableLikeOrAccessor);if(!o){return e.createToken(120)}var s=getSymbolOfNode(o);var c=s&&!(s.flags&(2048|131072))?getWidenedLiteralType(getTypeOfSymbol(s)):ee;if(c.flags&8192&&c.symbol===s){n|=1048576}if(a){c=getOptionalType(c)}return L.typeToTypeNode(c,r,n|1024,i)}function createReturnTypeOfSignatureDeclaration(t,r,n,i){var a=e.getParseTreeNode(t,e.isFunctionLike);if(!a){return e.createToken(120)}var o=getSignatureFromDeclaration(a);return L.typeToTypeNode(getReturnTypeOfSignature(o),r,n|1024,i)}function createTypeOfExpression(t,r,n,i){var a=e.getParseTreeNode(t,e.isExpression);if(!a){return e.createToken(120)}var o=getWidenedType(getRegularTypeOfExpression(a));return L.typeToTypeNode(o,r,n|1024,i)}function hasGlobalName(t){return We.has(e.escapeLeadingUnderscores(t))}function getReferencedValueSymbol(t,r){var n=getNodeLinks(t).resolvedSymbol;if(n){return n}var i=t;if(r){var a=t.parent;if(e.isDeclaration(a)&&t===a.name){i=getDeclarationContainer(a)}}return resolveName(i,t.escapedText,67220415|1048576|2097152,undefined,undefined,true)}function getReferencedValueDeclaration(t){if(!e.isGeneratedIdentifier(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r){var n=getReferencedValueSymbol(r);if(n){return getExportSymbolOfValueSymbolIfExported(n).valueDeclaration}}}return undefined}function isLiteralConstDeclaration(t){if(e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t)){return isFreshLiteralType(getTypeOfSymbol(getSymbolOfNode(t)))}return false}function literalTypeToNode(t,r,n){var i=t.flags&1024?L.symbolToExpression(t.symbol,67220415,r,undefined,n):t===fe?e.createTrue():t===ue&&e.createFalse();return i||e.createLiteral(t.value)}function createLiteralConstValue(e,t){var r=getTypeOfSymbol(getSymbolOfNode(e));return literalTypeToNode(r,e,t)}function createResolver(){var t=r.getResolvedTypeReferenceDirectives();var n;if(t){n=e.createMap();t.forEach(function(e,t){if(!e||!e.resolvedFileName){return}var i=r.getSourceFile(e.resolvedFileName);n.set(i.path,t)})}return{getReferencedExportContainer:getReferencedExportContainer,getReferencedImportDeclaration:getReferencedImportDeclaration,getReferencedDeclarationWithCollidingName:getReferencedDeclarationWithCollidingName,isDeclarationWithCollidingName:isDeclarationWithCollidingName,isValueAliasDeclaration:function(t){t=e.getParseTreeNode(t);return t?isValueAliasDeclaration(t):true},hasGlobalName:hasGlobalName,isReferencedAliasDeclaration:function(t,r){t=e.getParseTreeNode(t);return t?isReferencedAliasDeclaration(t,r):true},getNodeCheckFlags:function(t){t=e.getParseTreeNode(t);return t?getNodeCheckFlags(t):0},isTopLevelValueImportEqualsWithEntityName:isTopLevelValueImportEqualsWithEntityName,isDeclarationVisible:isDeclarationVisible,isImplementationOfOverload:isImplementationOfOverload,isRequiredInitializedParameter:isRequiredInitializedParameter,isOptionalUninitializedParameterProperty:isOptionalUninitializedParameterProperty,isExpandoFunctionDeclaration:isExpandoFunctionDeclaration,getPropertiesOfContainerFunction:getPropertiesOfContainerFunction,createTypeOfDeclaration:createTypeOfDeclaration,createReturnTypeOfSignatureDeclaration:createReturnTypeOfSignatureDeclaration,createTypeOfExpression:createTypeOfExpression,createLiteralConstValue:createLiteralConstValue,isSymbolAccessible:isSymbolAccessible,isEntityNameVisible:isEntityNameVisible,getConstantValue:function(t){var r=e.getParseTreeNode(t,canHaveConstantValue);return r?getConstantValue(r):undefined},collectLinkedAliases:collectLinkedAliases,getReferencedValueDeclaration:getReferencedValueDeclaration,getTypeReferenceSerializationKind:getTypeReferenceSerializationKind,isOptionalParameter:isOptionalParameter,moduleExportsSomeValue:moduleExportsSomeValue,isArgumentsLocalBinding:isArgumentsLocalBinding,getExternalModuleFileFromDeclaration:getExternalModuleFileFromDeclaration,getTypeReferenceDirectivesForEntityName:getTypeReferenceDirectivesForEntityName,getTypeReferenceDirectivesForSymbol:getTypeReferenceDirectivesForSymbol,isLiteralConstDeclaration:isLiteralConstDeclaration,isLateBound:function(t){var r=e.getParseTreeNode(t,e.isDeclaration);var n=r&&getSymbolOfNode(r);return!!(n&&e.getCheckFlags(n)&1024)},getJsxFactoryEntity:function(t){return t?(getJsxNamespace(t),e.getSourceFileOfNode(t).localJsxFactory||ar):ar},getAllAccessorDeclarations:function(t){t=e.getParseTreeNode(t,e.isGetOrSetAccessorDeclaration);var r=t.kind===159?158:159;var n=e.getDeclarationOfKind(getSymbolOfNode(t),r);var i=n&&n.pos<t.pos?n:t;var a=n&&n.pos<t.pos?t:n;var o=t.kind===159?t:n;var s=t.kind===158?t:n;return{firstAccessor:i,secondAccessor:a,setAccessor:o,getAccessor:s}},getSymbolOfExternalModuleSpecifier:function(e){return resolveExternalModuleNameWorker(e,e,undefined)},isBindingCapturedByNode:function(t,r){var n=e.getParseTreeNode(t);var i=e.getParseTreeNode(r);return!!n&&!!i&&(e.isVariableDeclaration(i)||e.isBindingElement(i))&&isBindingCapturedByNode(n,i)}};function isInHeritageClause(e){return e.parent&&e.parent.kind===211&&e.parent.parent&&e.parent.parent.kind===273}function getTypeReferenceDirectivesForEntityName(e){if(!n){return undefined}var t=67897832|1920;if(e.kind===72&&isInTypeQuery(e)||e.kind===189&&!isInHeritageClause(e)){t=67220415|1048576}var r=resolveEntityName(e,t,true);return r&&r!==Q?getTypeReferenceDirectivesForSymbol(r,t):undefined}function getTypeReferenceDirectivesForSymbol(t,r){if(!n){return undefined}if(!isSymbolFromTypeDeclarationFile(t)){return undefined}var i;for(var a=0,o=t.declarations;a<o.length;a++){var s=o[a];if(s.symbol&&s.symbol.flags&r){var c=e.getSourceFileOfNode(s);var u=n.get(c.path);if(u){(i||(i=[])).push(u)}else{return undefined}}}return i}function isSymbolFromTypeDeclarationFile(t){if(!t.declarations){return false}var r=t;while(true){var i=getParentOfSymbol(r);if(i){r=i}else{break}}if(r.valueDeclaration&&r.valueDeclaration.kind===279&&r.flags&512){return false}for(var a=0,o=t.declarations;a<o.length;a++){var s=o[a];var c=e.getSourceFileOfNode(s);if(n.has(c.path)){return true}}return false}}function getExternalModuleFileFromDeclaration(t){var r=t.kind===244?e.tryCast(t.name,e.isStringLiteral):e.getExternalModuleName(t);var n=resolveExternalModuleNameWorker(r,r,undefined);if(!n){return undefined}return e.getDeclarationOfKind(n,279)}function initializeTypeChecker(){for(var t=0,n=r.getSourceFiles();t<n.length;t++){var i=n[t];e.bindSourceFile(i,x)}Ue=e.createMap();var a;for(var o=0,s=r.getSourceFiles();o<s.length;o++){var i=s[o];if(i.redirectInfo){continue}if(!e.isExternalOrCommonJsModule(i)){mergeSymbolTable(We,i.locals)}if(i.jsGlobalAugmentations){mergeSymbolTable(We,i.jsGlobalAugmentations)}if(i.patternAmbientModules&&i.patternAmbientModules.length){Ke=e.concatenate(Ke,i.patternAmbientModules)}if(i.moduleAugmentations.length){(a||(a=[])).push(i.moduleAugmentations)}if(i.symbol&&i.symbol.globalExports){var c=i.symbol.globalExports;c.forEach(function(e,t){if(!We.has(t)){We.set(t,e)}})}}if(a){for(var u=0,l=a;u<l.length;u++){var f=l[u];for(var d=0,p=f;d<p.length;d++){var g=p[d];if(!e.isGlobalScopeAugmentation(g.parent))continue;mergeModuleAugmentation(g)}}}addToSymbolTable(We,vr,e.Diagnostics.Declaration_name_conflicts_with_built_in_global_identifier_0);getSymbolLinks(R).type=ne;getSymbolLinks(B).type=getGlobalType("IArguments",0,true);getSymbolLinks(Q).type=ee;$e=getGlobalType("Array",1,true);qe=getGlobalType("Object",0,true);Ge=getGlobalType("Function",0,true);He=A&&getGlobalType("CallableFunction",0,true)||Ge;Qe=A&&getGlobalType("NewableFunction",0,true)||Ge;Ye=getGlobalType("String",0,true);Ze=getGlobalType("Number",0,true);et=getGlobalType("Boolean",0,true);tt=getGlobalType("RegExp",0,true);nt=createArrayType(X);it=createArrayType(Y);if(it===xe){it=createAnonymousType(undefined,S,e.emptyArray,e.emptyArray,undefined,undefined)}Xe=getGlobalTypeOrUndefined("ReadonlyArray",1);at=Xe?createTypeFromGenericGlobalType(Xe,[X]):nt;rt=getGlobalTypeOrUndefined("ThisType",1);if(a){for(var _=0,m=a;_<m.length;_++){var f=m[_];for(var y=0,h=f;y<h.length;y++){var g=h[y];if(e.isGlobalScopeAugmentation(g.parent))continue;mergeModuleAugmentation(g)}}}Ue.forEach(function(t){var r=t.firstFile,n=t.secondFile,i=t.conflictingSymbols;if(i.size<8){i.forEach(function(t,r){var n=t.isBlockScoped,i=t.firstFileLocations,a=t.secondFileLocations;var o=n?e.Diagnostics.Cannot_redeclare_block_scoped_variable_0:e.Diagnostics.Duplicate_identifier_0;for(var s=0,c=i;s<c.length;s++){var u=c[s];addDuplicateDeclarationError(u,o,r,a)}for(var l=0,f=a;l<f.length;l++){var u=f[l];addDuplicateDeclarationError(u,o,r,i)}})}else{var a=e.arrayFrom(i.keys()).join(", ");Xt.add(addRelatedInfo(e.createDiagnosticForNode(r,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(n,e.Diagnostics.Conflicts_are_in_this_file)));Xt.add(addRelatedInfo(e.createDiagnosticForNode(n,e.Diagnostics.Definitions_of_the_following_identifiers_conflict_with_those_in_another_file_Colon_0,a),e.createDiagnosticForNode(r,e.Diagnostics.Conflicts_are_in_this_file)))}});Ue=undefined}function checkExternalEmitHelpers(t,r){if((f&r)!==r&&x.importHelpers){var n=e.getSourceFileOfNode(t);if(e.isEffectiveExternalModule(n,x)&&!(t.flags&4194304)){var i=resolveHelpersModule(n,t);if(i!==Q){var a=r&~f;for(var o=1;o<=65536;o<<=1){if(a&o){var s=getHelperName(o);var c=getSymbol(i.exports,e.escapeLeadingUnderscores(s),67220415);if(!c){error(t,e.Diagnostics.This_syntax_requires_an_imported_helper_named_1_but_module_0_has_no_exported_member_1,e.externalHelpersModuleNameText,s)}}}}f|=r}}}function getHelperName(t){switch(t){case 1:return"__extends";case 2:return"__assign";case 4:return"__rest";case 8:return"__decorate";case 16:return"__metadata";case 32:return"__param";case 64:return"__awaiter";case 128:return"__generator";case 256:return"__values";case 512:return"__read";case 1024:return"__spread";case 2048:return"__await";case 4096:return"__asyncGenerator";case 8192:return"__asyncDelegator";case 16384:return"__asyncValues";case 32768:return"__exportStar";case 65536:return"__makeTemplateObject";default:return e.Debug.fail("Unrecognized helper")}}function resolveHelpersModule(t,r){if(!d){d=resolveExternalModule(t,e.externalHelpersModuleNameText,e.Diagnostics.This_syntax_requires_an_imported_helper_but_module_0_cannot_be_found,r)||Q}return d}function checkGrammarDecoratorsAndModifiers(e){return checkGrammarDecorators(e)||checkGrammarModifiers(e)}function checkGrammarDecorators(t){if(!t.decorators){return false}if(!e.nodeCanBeDecorated(t,t.parent,t.parent.parent)){if(t.kind===156&&!e.nodeIsPresent(t.body)){return grammarErrorOnFirstToken(t,e.Diagnostics.A_decorator_can_only_decorate_a_method_implementation_not_an_overload)}else{return grammarErrorOnFirstToken(t,e.Diagnostics.Decorators_are_not_valid_here)}}else if(t.kind===158||t.kind===159){var r=e.getAllAccessorDeclarations(t.parent.members,t);if(r.firstAccessor.decorators&&t===r.secondAccessor){return grammarErrorOnFirstToken(t,e.Diagnostics.Decorators_cannot_be_applied_to_multiple_get_Slashset_accessors_of_the_same_name)}}return false}function checkGrammarModifiers(t){var r=reportObviousModifierErrors(t);if(r!==undefined){return r}var n,i,a,o;var s=0;for(var c=0,u=t.modifiers;c<u.length;c++){var l=u[c];if(l.kind!==133){if(t.kind===153||t.kind===155){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_type_member,e.tokenToString(l.kind))}if(t.kind===162){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_an_index_signature,e.tokenToString(l.kind))}}switch(l.kind){case 77:if(t.kind!==243){return grammarErrorOnNode(t,e.Diagnostics.A_class_member_cannot_have_the_0_keyword,e.tokenToString(77))}break;case 115:case 114:case 113:var f=visibilityToString(e.modifierToFlag(l.kind));if(s&28){return grammarErrorOnNode(l,e.Diagnostics.Accessibility_modifier_already_seen)}else if(s&32){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,f,"static")}else if(s&64){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,f,"readonly")}else if(s&256){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,f,"async")}else if(t.parent.kind===245||t.parent.kind===279){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,f)}else if(s&128){if(l.kind===113){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,f,"abstract")}else{return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,f,"abstract")}}s|=e.modifierToFlag(l.kind);break;case 116:if(s&32){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"static")}else if(s&64){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","readonly")}else if(s&256){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,"static","async")}else if(t.parent.kind===245||t.parent.kind===279){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_module_or_namespace_element,"static")}else if(t.kind===151){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"static")}else if(s&128){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract")}s|=32;n=l;break;case 133:if(s&64){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"readonly")}else if(t.kind!==154&&t.kind!==153&&t.kind!==162&&t.kind!==151){return grammarErrorOnNode(l,e.Diagnostics.readonly_modifier_can_only_appear_on_a_property_declaration_or_index_signature)}s|=64;o=l;break;case 85:if(s&1){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"export")}else if(s&2){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","declare")}else if(s&128){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","abstract")}else if(s&256){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_must_precede_1_modifier,"export","async")}else if(t.parent.kind===240){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_class_element,"export")}else if(t.kind===151){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"export")}s|=1;break;case 80:var d=t.parent.kind===279?t.parent:t.parent.parent;if(d.kind===244&&!e.isAmbientModule(d)){return grammarErrorOnNode(l,e.Diagnostics.A_default_export_can_only_be_used_in_an_ECMAScript_style_module)}s|=512;break;case 125:if(s&2){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"declare")}else if(s&256){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async")}else if(t.parent.kind===240){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_class_element,"declare")}else if(t.kind===151){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"declare")}else if(t.parent.flags&4194304&&t.parent.kind===245){return grammarErrorOnNode(l,e.Diagnostics.A_declare_modifier_cannot_be_used_in_an_already_ambient_context)}s|=2;i=l;break;case 118:if(s&128){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"abstract")}if(t.kind!==240){if(t.kind!==156&&t.kind!==154&&t.kind!==158&&t.kind!==159){return grammarErrorOnNode(l,e.Diagnostics.abstract_modifier_can_only_appear_on_a_class_method_or_property_declaration)}if(!(t.parent.kind===240&&e.hasModifier(t.parent,128))){return grammarErrorOnNode(l,e.Diagnostics.Abstract_methods_can_only_appear_within_an_abstract_class)}if(s&32){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"static","abstract")}if(s&8){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_with_1_modifier,"private","abstract")}}s|=128;break;case 121:if(s&256){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_already_seen,"async")}else if(s&2||t.parent.flags&4194304){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_be_used_in_an_ambient_context,"async")}else if(t.kind===151){return grammarErrorOnNode(l,e.Diagnostics._0_modifier_cannot_appear_on_a_parameter,"async")}s|=256;a=l;break}}if(t.kind===157){if(s&32){return grammarErrorOnNode(n,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"static")}if(s&128){return grammarErrorOnNode(n,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"abstract")}else if(s&256){return grammarErrorOnNode(a,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"async")}else if(s&64){return grammarErrorOnNode(o,e.Diagnostics._0_modifier_cannot_appear_on_a_constructor_declaration,"readonly")}return false}else if((t.kind===249||t.kind===248)&&s&2){return grammarErrorOnNode(i,e.Diagnostics.A_0_modifier_cannot_be_used_with_an_import_declaration,"declare")}else if(t.kind===151&&s&92&&e.isBindingPattern(t.name)){return grammarErrorOnNode(t,e.Diagnostics.A_parameter_property_may_not_be_declared_using_a_binding_pattern)}else if(t.kind===151&&s&92&&t.dotDotDotToken){return grammarErrorOnNode(t,e.Diagnostics.A_parameter_property_cannot_be_declared_using_a_rest_parameter)}if(s&256){return checkGrammarAsyncModifier(t,a)}return false}function reportObviousModifierErrors(t){return!t.modifiers?false:shouldReportBadModifier(t)?grammarErrorOnFirstToken(t,e.Diagnostics.Modifiers_cannot_appear_here):undefined}function shouldReportBadModifier(t){switch(t.kind){case 158:case 159:case 157:case 154:case 153:case 156:case 155:case 162:case 244:case 249:case 248:case 255:case 254:case 196:case 197:case 151:return false;default:if(t.parent.kind===245||t.parent.kind===279){return false}switch(t.kind){case 239:return nodeHasAnyModifiersExcept(t,121);case 240:return nodeHasAnyModifiersExcept(t,118);case 241:case 219:case 242:return true;case 243:return nodeHasAnyModifiersExcept(t,77);default:e.Debug.fail();return false}}}function nodeHasAnyModifiersExcept(e,t){return e.modifiers.length>1||e.modifiers[0].kind!==t}function checkGrammarAsyncModifier(t,r){switch(t.kind){case 156:case 239:case 196:case 197:return false}return grammarErrorOnNode(r,e.Diagnostics._0_modifier_cannot_be_used_here,"async")}function checkGrammarForDisallowedTrailingComma(t,r){if(r===void 0){r=e.Diagnostics.Trailing_comma_not_allowed}if(t&&t.hasTrailingComma){return grammarErrorAtPos(t[0],t.end-",".length,",".length,r)}return false}function checkGrammarTypeParameterList(t,r){if(t&&t.length===0){var n=t.pos-"<".length;var i=e.skipTrivia(r.text,t.end)+">".length;return grammarErrorAtPos(r,n,i-n,e.Diagnostics.Type_parameter_list_cannot_be_empty)}return false}function checkGrammarParameterList(t){var r=false;var n=t.length;for(var i=0;i<n;i++){var a=t[i];if(a.dotDotDotToken){if(i!==n-1){return grammarErrorOnNode(a.dotDotDotToken,e.Diagnostics.A_rest_parameter_must_be_last_in_a_parameter_list)}if(!(a.flags&4194304)){checkGrammarForDisallowedTrailingComma(t,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma)}if(e.isBindingPattern(a.name)){return grammarErrorOnNode(a.name,e.Diagnostics.A_rest_element_cannot_contain_a_binding_pattern)}if(a.questionToken){return grammarErrorOnNode(a.questionToken,e.Diagnostics.A_rest_parameter_cannot_be_optional)}if(a.initializer){return grammarErrorOnNode(a.name,e.Diagnostics.A_rest_parameter_cannot_have_an_initializer)}}else if(a.questionToken){r=true;if(a.initializer){return grammarErrorOnNode(a.name,e.Diagnostics.Parameter_cannot_have_question_mark_and_initializer)}}else if(r&&!a.initializer){return grammarErrorOnNode(a.name,e.Diagnostics.A_required_parameter_cannot_follow_an_optional_parameter)}}}function getNonSimpleParameters(t){return e.filter(t,function(t){return!!t.initializer||e.isBindingPattern(t.name)||e.isRestParameter(t)})}function checkGrammarForUseStrictSimpleParameterList(t){if(C>=3){var r=t.body&&e.isBlock(t.body)&&e.findUseStrictPrologue(t.body.statements);if(r){var n=getNonSimpleParameters(t.parameters);if(e.length(n)){e.forEach(n,function(t){addRelatedInfo(error(t,e.Diagnostics.This_parameter_is_not_allowed_with_use_strict_directive),e.createDiagnosticForNode(r,e.Diagnostics.use_strict_directive_used_here))});var i=n.map(function(t,r){return r===0?e.createDiagnosticForNode(t,e.Diagnostics.Non_simple_parameter_declared_here):e.createDiagnosticForNode(t,e.Diagnostics.and_here)});addRelatedInfo.apply(void 0,[error(r,e.Diagnostics.use_strict_directive_cannot_be_used_with_non_simple_parameter_list)].concat(i));return true}}}return false}function checkGrammarFunctionLikeDeclaration(t){var r=e.getSourceFileOfNode(t);return checkGrammarDecoratorsAndModifiers(t)||checkGrammarTypeParameterList(t.typeParameters,r)||checkGrammarParameterList(t.parameters)||checkGrammarArrowFunction(t,r)||e.isFunctionLikeDeclaration(t)&&checkGrammarForUseStrictSimpleParameterList(t)}function checkGrammarClassLikeDeclaration(t){var r=e.getSourceFileOfNode(t);return checkGrammarClassDeclarationHeritageClauses(t)||checkGrammarTypeParameterList(t.typeParameters,r)}function checkGrammarArrowFunction(t,r){if(!e.isArrowFunction(t)){return false}var n=t.equalsGreaterThanToken;var i=e.getLineAndCharacterOfPosition(r,n.pos).line;var a=e.getLineAndCharacterOfPosition(r,n.end).line;return i!==a&&grammarErrorOnNode(n,e.Diagnostics.Line_terminator_not_permitted_before_arrow)}function checkGrammarIndexSignatureParameters(t){var r=t.parameters[0];if(t.parameters.length!==1){if(r){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_must_have_exactly_one_parameter)}else{return grammarErrorOnNode(t,e.Diagnostics.An_index_signature_must_have_exactly_one_parameter)}}if(r.dotDotDotToken){return grammarErrorOnNode(r.dotDotDotToken,e.Diagnostics.An_index_signature_cannot_have_a_rest_parameter)}if(e.hasModifiers(r)){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_accessibility_modifier)}if(r.questionToken){return grammarErrorOnNode(r.questionToken,e.Diagnostics.An_index_signature_parameter_cannot_have_a_question_mark)}if(r.initializer){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_cannot_have_an_initializer)}if(!r.type){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_must_have_a_type_annotation)}if(r.type.kind!==138&&r.type.kind!==135){var n=getTypeFromTypeNode(r.type);if(n.flags&4||n.flags&8){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_type_alias_Consider_writing_0_Colon_1_Colon_2_instead,e.getTextOfNode(r.name),typeToString(n),typeToString(getTypeFromTypeNode(t.type)))}if(n.flags&1048576&&allTypesAssignableToKind(n,128,true)){return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead)}return grammarErrorOnNode(r.name,e.Diagnostics.An_index_signature_parameter_type_must_be_string_or_number)}if(!t.type){return grammarErrorOnNode(t,e.Diagnostics.An_index_signature_must_have_a_type_annotation)}return false}function checkGrammarIndexSignature(e){return checkGrammarDecoratorsAndModifiers(e)||checkGrammarIndexSignatureParameters(e)}function checkGrammarForAtLeastOneTypeArgument(t,r){if(r&&r.length===0){var n=e.getSourceFileOfNode(t);var i=r.pos-"<".length;var a=e.skipTrivia(n.text,r.end)+">".length;return grammarErrorAtPos(n,i,a-i,e.Diagnostics.Type_argument_list_cannot_be_empty)}return false}function checkGrammarTypeArguments(e,t){return checkGrammarForDisallowedTrailingComma(t)||checkGrammarForAtLeastOneTypeArgument(e,t)}function checkGrammarForOmittedArgument(t){if(t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(i.kind===210){return grammarErrorAtPos(i,i.pos,0,e.Diagnostics.Argument_expression_expected)}}}return false}function checkGrammarArguments(e){return checkGrammarForOmittedArgument(e)}function checkGrammarHeritageClause(t){var r=t.types;if(checkGrammarForDisallowedTrailingComma(r)){return true}if(r&&r.length===0){var n=e.tokenToString(t.token);return grammarErrorAtPos(t,r.pos,0,e.Diagnostics._0_list_cannot_be_empty,n)}return e.some(r,checkGrammarExpressionWithTypeArguments)}function checkGrammarExpressionWithTypeArguments(e){return checkGrammarTypeArguments(e,e.typeArguments)}function checkGrammarClassDeclarationHeritageClauses(t){var r=false;var n=false;if(!checkGrammarDecoratorsAndModifiers(t)&&t.heritageClauses){for(var i=0,a=t.heritageClauses;i<a.length;i++){var o=a[i];if(o.token===86){if(r){return grammarErrorOnFirstToken(o,e.Diagnostics.extends_clause_already_seen)}if(n){return grammarErrorOnFirstToken(o,e.Diagnostics.extends_clause_must_precede_implements_clause)}if(o.types.length>1){return grammarErrorOnFirstToken(o.types[1],e.Diagnostics.Classes_can_only_extend_a_single_class)}r=true}else{e.Debug.assert(o.token===109);if(n){return grammarErrorOnFirstToken(o,e.Diagnostics.implements_clause_already_seen)}n=true}checkGrammarHeritageClause(o)}}}function checkGrammarInterfaceDeclaration(t){var r=false;if(t.heritageClauses){for(var n=0,i=t.heritageClauses;n<i.length;n++){var a=i[n];if(a.token===86){if(r){return grammarErrorOnFirstToken(a,e.Diagnostics.extends_clause_already_seen)}r=true}else{e.Debug.assert(a.token===109);return grammarErrorOnFirstToken(a,e.Diagnostics.Interface_declaration_cannot_have_implements_clause)}checkGrammarHeritageClause(a)}}return false}function checkGrammarComputedPropertyName(t){if(t.kind!==149){return false}var r=t;if(r.expression.kind===204&&r.expression.operatorToken.kind===27){return grammarErrorOnNode(r.expression,e.Diagnostics.A_comma_expression_is_not_allowed_in_a_computed_property_name)}return false}function checkGrammarForGenerator(t){if(t.asteriskToken){e.Debug.assert(t.kind===239||t.kind===196||t.kind===156);if(t.flags&4194304){return grammarErrorOnNode(t.asteriskToken,e.Diagnostics.Generators_are_not_allowed_in_an_ambient_context)}if(!t.body){return grammarErrorOnNode(t.asteriskToken,e.Diagnostics.An_overload_signature_cannot_be_declared_as_a_generator)}}}function checkGrammarForInvalidQuestionMark(e,t){return!!e&&grammarErrorOnNode(e,t)}function checkGrammarForInvalidExclamationToken(e,t){return!!e&&grammarErrorOnNode(e,t)}function checkGrammarObjectLiteralExpression(t,r){var n;(function(e){e[e["Property"]=1]="Property";e[e["GetAccessor"]=2]="GetAccessor";e[e["SetAccessor"]=4]="SetAccessor";e[e["GetOrSetAccessor"]=6]="GetOrSetAccessor"})(n||(n={}));var i=e.createUnderscoreEscapedMap();for(var a=0,o=t.properties;a<o.length;a++){var s=o[a];if(s.kind===277){continue}var c=s.name;if(c.kind===149){checkGrammarComputedPropertyName(c)}if(s.kind===276&&!r&&s.objectAssignmentInitializer){return grammarErrorOnNode(s.equalsToken,e.Diagnostics.can_only_be_used_in_an_object_literal_property_inside_a_destructuring_assignment)}if(s.modifiers){for(var u=0,l=s.modifiers;u<l.length;u++){var f=l[u];if(f.kind!==121||s.kind!==156){grammarErrorOnNode(f,e.Diagnostics._0_modifier_cannot_be_used_here,e.getTextOfNode(f))}}}var d=void 0;switch(s.kind){case 276:checkGrammarForInvalidExclamationToken(s.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context);case 275:checkGrammarForInvalidQuestionMark(s.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional);if(c.kind===8){checkGrammarNumericLiteral(c)}case 156:d=1;break;case 158:d=2;break;case 159:d=4;break;default:throw e.Debug.assertNever(s,"Unexpected syntax kind:"+s.kind)}var p=e.getPropertyNameForPropertyNameNode(c);if(p===undefined){continue}var g=i.get(p);if(!g){i.set(p,d)}else{if(d===1&&g===1){grammarErrorOnNode(c,e.Diagnostics.Duplicate_identifier_0,e.getTextOfNode(c))}else if(d&6&&g&6){if(g!==6&&d!==g){i.set(p,d|g)}else{return grammarErrorOnNode(c,e.Diagnostics.An_object_literal_cannot_have_multiple_get_Slashset_accessors_with_the_same_name)}}else{return grammarErrorOnNode(c,e.Diagnostics.An_object_literal_cannot_have_property_and_accessor_with_the_same_name)}}}}function checkGrammarJsxElement(t){checkGrammarTypeArguments(t,t.typeArguments);var r=e.createUnderscoreEscapedMap();for(var n=0,i=t.attributes.properties;n<i.length;n++){var a=i[n];if(a.kind===269){continue}var o=a.name,s=a.initializer;if(!r.get(o.escapedText)){r.set(o.escapedText,true)}else{return grammarErrorOnNode(o,e.Diagnostics.JSX_elements_cannot_have_multiple_attributes_with_the_same_name)}if(s&&s.kind===270&&!s.expression){return grammarErrorOnNode(s,e.Diagnostics.JSX_attributes_must_only_be_assigned_a_non_empty_expression)}}}function checkGrammarForInOrForOfStatement(t){if(checkGrammarStatementInAmbientContext(t)){return true}if(t.kind===227&&t.awaitModifier){if((t.flags&16384)===0){return grammarErrorOnNode(t.awaitModifier,e.Diagnostics.A_for_await_of_statement_is_only_allowed_within_an_async_function_or_async_generator)}}if(t.initializer.kind===238){var r=t.initializer;if(!checkGrammarVariableDeclarationList(r)){var n=r.declarations;if(!n.length){return false}if(n.length>1){var i=t.kind===226?e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_in_statement:e.Diagnostics.Only_a_single_variable_declaration_is_allowed_in_a_for_of_statement;return grammarErrorOnFirstToken(r.declarations[1],i)}var a=n[0];if(a.initializer){var i=t.kind===226?e.Diagnostics.The_variable_declaration_of_a_for_in_statement_cannot_have_an_initializer:e.Diagnostics.The_variable_declaration_of_a_for_of_statement_cannot_have_an_initializer;return grammarErrorOnNode(a.name,i)}if(a.type){var i=t.kind===226?e.Diagnostics.The_left_hand_side_of_a_for_in_statement_cannot_use_a_type_annotation:e.Diagnostics.The_left_hand_side_of_a_for_of_statement_cannot_use_a_type_annotation;return grammarErrorOnNode(a,i)}}}return false}function checkGrammarAccessor(t){var r=t.kind;if(C<1){return grammarErrorOnNode(t.name,e.Diagnostics.Accessors_are_only_available_when_targeting_ECMAScript_5_and_higher)}else if(t.flags&4194304){return grammarErrorOnNode(t.name,e.Diagnostics.An_accessor_cannot_be_declared_in_an_ambient_context)}else if(t.body===undefined&&!e.hasModifier(t,128)){return grammarErrorAtPos(t,t.end-1,";".length,e.Diagnostics._0_expected,"{")}else if(t.body&&e.hasModifier(t,128)){return grammarErrorOnNode(t,e.Diagnostics.An_abstract_accessor_cannot_have_an_implementation)}else if(t.typeParameters){return grammarErrorOnNode(t.name,e.Diagnostics.An_accessor_cannot_have_type_parameters)}else if(!doesAccessorHaveCorrectParameterCount(t)){return grammarErrorOnNode(t.name,r===158?e.Diagnostics.A_get_accessor_cannot_have_parameters:e.Diagnostics.A_set_accessor_must_have_exactly_one_parameter)}else if(r===159){if(t.type){return grammarErrorOnNode(t.name,e.Diagnostics.A_set_accessor_cannot_have_a_return_type_annotation)}else{var n=t.parameters[0];if(n.dotDotDotToken){return grammarErrorOnNode(n.dotDotDotToken,e.Diagnostics.A_set_accessor_cannot_have_rest_parameter)}else if(n.questionToken){return grammarErrorOnNode(n.questionToken,e.Diagnostics.A_set_accessor_cannot_have_an_optional_parameter)}else if(n.initializer){return grammarErrorOnNode(t.name,e.Diagnostics.A_set_accessor_parameter_cannot_have_an_initializer)}}}return false}function doesAccessorHaveCorrectParameterCount(e){return getAccessorThisParameter(e)||e.parameters.length===(e.kind===158?0:1)}function getAccessorThisParameter(t){if(t.parameters.length===(t.kind===158?1:2)){return e.getThisParameter(t)}}function checkGrammarTypeOperatorNode(t){if(t.operator===142){if(t.type.kind!==139){return grammarErrorOnNode(t.type,e.Diagnostics._0_expected,e.tokenToString(139))}var r=e.walkUpParenthesizedTypes(t.parent);switch(r.kind){case 237:var n=r;if(n.name.kind!==72){return grammarErrorOnNode(t,e.Diagnostics.unique_symbol_types_may_not_be_used_on_a_variable_declaration_with_a_binding_name)}if(!e.isVariableDeclarationInVariableStatement(n)){return grammarErrorOnNode(t,e.Diagnostics.unique_symbol_types_are_only_allowed_on_variables_in_a_variable_statement)}if(!(n.parent.flags&2)){return grammarErrorOnNode(r.name,e.Diagnostics.A_variable_whose_type_is_a_unique_symbol_type_must_be_const)}break;case 154:if(!e.hasModifier(r,32)||!e.hasModifier(r,64)){return grammarErrorOnNode(r.name,e.Diagnostics.A_property_of_a_class_whose_type_is_a_unique_symbol_type_must_be_both_static_and_readonly)}break;case 153:if(!e.hasModifier(r,64)){return grammarErrorOnNode(r.name,e.Diagnostics.A_property_of_an_interface_or_type_literal_whose_type_is_a_unique_symbol_type_must_be_readonly)}break;default:return grammarErrorOnNode(t,e.Diagnostics.unique_symbol_types_are_not_allowed_here)}}}function checkGrammarForInvalidDynamicName(e,t){if(isNonBindableDynamicName(e)){return grammarErrorOnNode(e,t)}}function checkGrammarMethod(t){if(checkGrammarFunctionLikeDeclaration(t)){return true}if(t.kind===156){if(t.parent.kind===188){if(t.modifiers&&!(t.modifiers.length===1&&e.first(t.modifiers).kind===121)){return grammarErrorOnFirstToken(t,e.Diagnostics.Modifiers_cannot_appear_here)}else if(checkGrammarForInvalidQuestionMark(t.questionToken,e.Diagnostics.An_object_member_cannot_be_declared_optional)){return true}else if(checkGrammarForInvalidExclamationToken(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context)){return true}else if(t.body===undefined){return grammarErrorAtPos(t,t.end-1,";".length,e.Diagnostics._0_expected,"{")}}if(checkGrammarForGenerator(t)){return true}}if(e.isClassLike(t.parent)){if(t.flags&4194304){return checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_an_ambient_context_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else if(t.kind===156&&!t.body){return checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_a_method_overload_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}else if(t.parent.kind===241){return checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}else if(t.parent.kind===168){return checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)}}function checkGrammarBreakOrContinueStatement(t){var r=t;while(r){if(e.isFunctionLike(r)){return grammarErrorOnNode(t,e.Diagnostics.Jump_target_cannot_cross_function_boundary)}switch(r.kind){case 233:if(t.label&&r.label.escapedText===t.label.escapedText){var n=t.kind===228&&!e.isIterationStatement(r.statement,true);if(n){return grammarErrorOnNode(t,e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement)}return false}break;case 232:if(t.kind===229&&!t.label){return false}break;default:if(e.isIterationStatement(r,false)&&!t.label){return false}break}r=r.parent}if(t.label){var i=t.kind===229?e.Diagnostics.A_break_statement_can_only_jump_to_a_label_of_an_enclosing_statement:e.Diagnostics.A_continue_statement_can_only_jump_to_a_label_of_an_enclosing_iteration_statement;return grammarErrorOnNode(t,i)}else{var i=t.kind===229?e.Diagnostics.A_break_statement_can_only_be_used_within_an_enclosing_iteration_or_switch_statement:e.Diagnostics.A_continue_statement_can_only_be_used_within_an_enclosing_iteration_statement;return grammarErrorOnNode(t,i)}}function checkGrammarBindingElement(t){if(t.dotDotDotToken){var r=t.parent.elements;if(t!==e.last(r)){return grammarErrorOnNode(t,e.Diagnostics.A_rest_element_must_be_last_in_a_destructuring_pattern)}checkGrammarForDisallowedTrailingComma(r,e.Diagnostics.A_rest_parameter_or_binding_pattern_may_not_have_a_trailing_comma);if(t.propertyName){return grammarErrorOnNode(t.name,e.Diagnostics.A_rest_element_cannot_have_a_property_name)}if(t.initializer){return grammarErrorAtPos(t,t.initializer.pos-1,1,e.Diagnostics.A_rest_element_cannot_have_an_initializer)}}}function isStringOrNumberLiteralExpression(e){return e.kind===10||e.kind===8||e.kind===202&&e.operator===39&&e.operand.kind===8}function isBigIntLiteralExpression(e){return e.kind===9||e.kind===202&&e.operator===39&&e.operand.kind===9}function isSimpleLiteralEnumReference(t){if((e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)&&isStringOrNumberLiteralExpression(t.argumentExpression))&&e.isEntityNameExpression(t.expression))return!!(checkExpressionCached(t).flags&1024)}function checkAmbientInitializer(t){var r=t.initializer;if(r){var n=!(isStringOrNumberLiteralExpression(r)||isSimpleLiteralEnumReference(r)||r.kind===102||r.kind===87||isBigIntLiteralExpression(r));var i=e.isDeclarationReadonly(t)||e.isVariableDeclaration(t)&&e.isVarConst(t);if(i&&!t.type){if(n){return grammarErrorOnNode(r,e.Diagnostics.A_const_initializer_in_an_ambient_context_must_be_a_string_or_numeric_literal_or_literal_enum_reference)}}else{return grammarErrorOnNode(r,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}if(!i||n){return grammarErrorOnNode(r,e.Diagnostics.Initializers_are_not_allowed_in_ambient_contexts)}}}function checkGrammarVariableDeclaration(t){if(t.parent.parent.kind!==226&&t.parent.parent.kind!==227){if(t.flags&4194304){checkAmbientInitializer(t)}else if(!t.initializer){if(e.isBindingPattern(t.name)&&!e.isBindingPattern(t.parent)){return grammarErrorOnNode(t,e.Diagnostics.A_destructuring_declaration_must_have_an_initializer)}if(e.isVarConst(t)){return grammarErrorOnNode(t,e.Diagnostics.const_declarations_must_be_initialized)}}}if(t.exclamationToken&&(t.parent.parent.kind!==219||!t.type||t.initializer||t.flags&4194304)){return grammarErrorOnNode(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context)}if(x.module!==e.ModuleKind.ES2015&&x.module!==e.ModuleKind.ESNext&&x.module!==e.ModuleKind.System&&!x.noEmit&&!(t.parent.parent.flags&4194304)&&e.hasModifier(t.parent.parent,1)){checkESModuleMarker(t.name)}var r=e.isLet(t)||e.isVarConst(t);return r&&checkGrammarNameInLetOrConstDeclarations(t.name)}function checkESModuleMarker(t){if(t.kind===72){if(e.idText(t)==="__esModule"){return grammarErrorOnNode(t,e.Diagnostics.Identifier_expected_esModule_is_reserved_as_an_exported_marker_when_transforming_ECMAScript_modules)}}else{var r=t.elements;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(!e.isOmittedExpression(a)){return checkESModuleMarker(a.name)}}}return false}function checkGrammarNameInLetOrConstDeclarations(t){if(t.kind===72){if(t.originalKeywordKind===111){return grammarErrorOnNode(t,e.Diagnostics.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations)}}else{var r=t.elements;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(!e.isOmittedExpression(a)){checkGrammarNameInLetOrConstDeclarations(a.name)}}}return false}function checkGrammarVariableDeclarationList(t){var r=t.declarations;if(checkGrammarForDisallowedTrailingComma(t.declarations)){return true}if(!t.declarations.length){return grammarErrorAtPos(t,r.pos,r.end-r.pos,e.Diagnostics.Variable_declaration_list_cannot_be_empty)}return false}function allowLetAndConstDeclarations(e){switch(e.kind){case 222:case 223:case 224:case 231:case 225:case 226:case 227:return false;case 233:return allowLetAndConstDeclarations(e.parent)}return true}function checkGrammarForDisallowedLetOrConstStatement(t){if(!allowLetAndConstDeclarations(t.parent)){if(e.isLet(t.declarationList)){return grammarErrorOnNode(t,e.Diagnostics.let_declarations_can_only_be_declared_inside_a_block)}else if(e.isVarConst(t.declarationList)){return grammarErrorOnNode(t,e.Diagnostics.const_declarations_can_only_be_declared_inside_a_block)}}}function checkGrammarMetaProperty(t){var r=t.name.escapedText;switch(t.keywordToken){case 95:if(r!=="target"){return grammarErrorOnNode(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"target")}break;case 92:if(r!=="meta"){return grammarErrorOnNode(t.name,e.Diagnostics._0_is_not_a_valid_meta_property_for_keyword_1_Did_you_mean_2,t.name.escapedText,e.tokenToString(t.keywordToken),"meta")}break}}function hasParseDiagnostics(e){return e.parseDiagnostics.length>0}function grammarErrorOnFirstToken(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!hasParseDiagnostics(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);Xt.add(e.createFileDiagnostic(o,s.start,s.length,r,n,i,a));return true}return false}function grammarErrorAtPos(t,r,n,i,a,o,s){var c=e.getSourceFileOfNode(t);if(!hasParseDiagnostics(c)){Xt.add(e.createFileDiagnostic(c,r,n,i,a,o,s));return true}return false}function grammarErrorOnNode(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!hasParseDiagnostics(o)){Xt.add(e.createDiagnosticForNode(t,r,n,i,a));return true}return false}function checkGrammarConstructorTypeParameters(t){var r=e.isInJSFile(t)?e.getJSDocTypeParameterDeclarations(t):undefined;var n=t.typeParameters||r&&e.firstOrUndefined(r);if(n){var i=n.pos===n.end?n.pos:e.skipTrivia(e.getSourceFileOfNode(t).text,n.pos);return grammarErrorAtPos(t,i,n.end-i,e.Diagnostics.Type_parameters_cannot_appear_on_a_constructor_declaration)}}function checkGrammarConstructorTypeAnnotation(t){var r=e.getEffectiveReturnTypeNode(t);if(r){return grammarErrorOnNode(r,e.Diagnostics.Type_annotation_cannot_appear_on_a_constructor_declaration)}}function checkGrammarProperty(t){if(e.isClassLike(t.parent)){if(checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_a_class_property_declaration_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)){return true}}else if(t.parent.kind===241){if(checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_an_interface_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)){return true}if(t.initializer){return grammarErrorOnNode(t.initializer,e.Diagnostics.An_interface_property_cannot_have_an_initializer)}}else if(t.parent.kind===168){if(checkGrammarForInvalidDynamicName(t.name,e.Diagnostics.A_computed_property_name_in_a_type_literal_must_refer_to_an_expression_whose_type_is_a_literal_type_or_a_unique_symbol_type)){return true}if(t.initializer){return grammarErrorOnNode(t.initializer,e.Diagnostics.A_type_literal_property_cannot_have_an_initializer)}}if(t.flags&4194304){checkAmbientInitializer(t)}if(e.isPropertyDeclaration(t)&&t.exclamationToken&&(!e.isClassLike(t.parent)||!t.type||t.initializer||t.flags&4194304||e.hasModifier(t,32|128))){return grammarErrorOnNode(t.exclamationToken,e.Diagnostics.A_definite_assignment_assertion_is_not_permitted_in_this_context)}}function checkGrammarTopLevelElementForRequiredDeclareModifier(t){if(t.kind===241||t.kind===242||t.kind===249||t.kind===248||t.kind===255||t.kind===254||t.kind===247||e.hasModifier(t,2|1|512)){return false}return grammarErrorOnFirstToken(t,e.Diagnostics.A_declare_modifier_is_required_for_a_top_level_declaration_in_a_d_ts_file)}function checkGrammarTopLevelElementsForRequiredDeclareModifier(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(e.isDeclaration(i)||i.kind===219){if(checkGrammarTopLevelElementForRequiredDeclareModifier(i)){return true}}}return false}function checkGrammarSourceFile(e){return!!(e.flags&4194304)&&checkGrammarTopLevelElementsForRequiredDeclareModifier(e)}function checkGrammarStatementInAmbientContext(t){if(t.flags&4194304){if(e.isAccessor(t.parent)){return getNodeLinks(t).hasReportedStatementInAmbientContext=true}var r=getNodeLinks(t);if(!r.hasReportedStatementInAmbientContext&&e.isFunctionLike(t.parent)){return getNodeLinks(t).hasReportedStatementInAmbientContext=grammarErrorOnFirstToken(t,e.Diagnostics.An_implementation_cannot_be_declared_in_ambient_contexts)}if(t.parent.kind===218||t.parent.kind===245||t.parent.kind===279){var n=getNodeLinks(t.parent);if(!n.hasReportedStatementInAmbientContext){return n.hasReportedStatementInAmbientContext=grammarErrorOnFirstToken(t,e.Diagnostics.Statements_are_not_allowed_in_ambient_contexts)}}else{}}return false}function checkGrammarNumericLiteral(t){if(t.numericLiteralFlags&32){var r=void 0;if(C>=1){r=e.Diagnostics.Octal_literals_are_not_available_when_targeting_ECMAScript_5_and_higher_Use_the_syntax_0}else if(e.isChildOfNodeWithKind(t,182)){r=e.Diagnostics.Octal_literal_types_must_use_ES2015_syntax_Use_the_syntax_0}else if(e.isChildOfNodeWithKind(t,278)){r=e.Diagnostics.Octal_literals_are_not_allowed_in_enums_members_initializer_Use_the_syntax_0}if(r){var n=e.isPrefixUnaryExpression(t.parent)&&t.parent.operator===39;var i=(n?"-":"")+"0o"+t.text;return grammarErrorOnNode(n?t.parent:t,r,i)}}return false}function checkGrammarBigIntLiteral(t){var r=e.isLiteralTypeNode(t.parent)||e.isPrefixUnaryExpression(t.parent)&&e.isLiteralTypeNode(t.parent.parent);if(!r){if(C<6){if(grammarErrorOnNode(t,e.Diagnostics.BigInt_literals_are_not_available_when_targeting_lower_than_ESNext)){return true}}}return false}function grammarErrorAfterFirstToken(t,r,n,i,a){var o=e.getSourceFileOfNode(t);if(!hasParseDiagnostics(o)){var s=e.getSpanOfTokenAtPosition(o,t.pos);Xt.add(e.createFileDiagnostic(o,e.textSpanEnd(s),0,r,n,i,a));return true}return false}function getAmbientModules(){if(!Ve){Ve=[];We.forEach(function(e,r){if(t.test(r)){Ve.push(e)}})}return Ve}function checkGrammarImportCallExpression(t){if(E===e.ModuleKind.ES2015){return grammarErrorOnNode(t,e.Diagnostics.Dynamic_import_is_only_supported_when_module_flag_is_commonjs_or_esNext)}if(t.typeArguments){return grammarErrorOnNode(t,e.Diagnostics.Dynamic_import_cannot_have_type_arguments)}var r=t.arguments;if(r.length!==1){return grammarErrorOnNode(t,e.Diagnostics.Dynamic_import_must_have_one_specifier_as_an_argument)}if(e.isSpreadElement(r[0])){return grammarErrorOnNode(r[0],e.Diagnostics.Specifier_of_dynamic_import_cannot_be_spread_element)}return false}}e.createTypeChecker=createTypeChecker;function isDeclarationNameOrImportPropertyName(t){switch(t.parent.kind){case 253:case 257:return e.isIdentifier(t);default:return e.isDeclarationName(t)}}function isSomeImportDeclaration(e){switch(e.kind){case 250:case 248:case 251:case 253:return true;case 72:return e.parent.kind===253;default:return false}}var c;(function(e){e.JSX="JSX";e.IntrinsicElements="IntrinsicElements";e.ElementClass="ElementClass";e.ElementAttributesPropertyNameContainer="ElementAttributesProperty";e.ElementChildrenAttributeNameContainer="ElementChildrenAttribute";e.Element="Element";e.IntrinsicAttributes="IntrinsicAttributes";e.IntrinsicClassAttributes="IntrinsicClassAttributes";e.LibraryManagedAttributes="LibraryManagedAttributes"})(c||(c={}));function typeIsLiteralType(e){return!!(e.flags&2944)}})(s||(s={}));var s;(function(e){function createSynthesizedNode(t){var r=e.createNode(t,-1,-1);r.flags|=8;return r}function updateNode(t,r){if(t!==r){setOriginalNode(t,r);setTextRange(t,r);e.aggregateTransformFlags(t)}return t}e.updateNode=updateNode;function createNodeArray(t,r){if(!t||t===e.emptyArray){t=[]}else if(e.isNodeArray(t)){return t}var n=t;n.pos=-1;n.end=-1;n.hasTrailingComma=r;return n}e.createNodeArray=createNodeArray;function getSynthesizedClone(e){if(e===undefined){return e}var t=createSynthesizedNode(e.kind);t.flags|=e.flags;setOriginalNode(t,e);for(var r in e){if(t.hasOwnProperty(r)||!e.hasOwnProperty(r)){continue}t[r]=e[r]}return t}e.getSynthesizedClone=getSynthesizedClone;function createLiteral(t,r){if(typeof t==="number"){return createNumericLiteral(t+"")}if(typeof t==="object"&&"base10Value"in t){return createBigIntLiteral(e.pseudoBigIntToString(t)+"n")}if(typeof t==="boolean"){return t?createTrue():createFalse()}if(e.isString(t)){var n=createStringLiteral(t);if(r)n.singleQuote=true;return n}return createLiteralFromNode(t)}e.createLiteral=createLiteral;function createNumericLiteral(e){var t=createSynthesizedNode(8);t.text=e;t.numericLiteralFlags=0;return t}e.createNumericLiteral=createNumericLiteral;function createBigIntLiteral(e){var t=createSynthesizedNode(9);t.text=e;return t}e.createBigIntLiteral=createBigIntLiteral;function createStringLiteral(e){var t=createSynthesizedNode(10);t.text=e;return t}e.createStringLiteral=createStringLiteral;function createRegularExpressionLiteral(e){var t=createSynthesizedNode(13);t.text=e;return t}e.createRegularExpressionLiteral=createRegularExpressionLiteral;function createLiteralFromNode(t){var r=createStringLiteral(e.getTextOfIdentifierOrLiteral(t));r.textSourceNode=t;return r}function createIdentifier(t,r){var n=createSynthesizedNode(72);n.escapedText=e.escapeLeadingUnderscores(t);n.originalKeywordKind=t?e.stringToToken(t):0;n.autoGenerateFlags=0;n.autoGenerateId=0;if(r){n.typeArguments=createNodeArray(r)}return n}e.createIdentifier=createIdentifier;function updateIdentifier(t,r){return t.typeArguments!==r?updateNode(createIdentifier(e.idText(t),r),t):t}e.updateIdentifier=updateIdentifier;var t=0;function createTempVariable(e,r){var n=createIdentifier("");n.autoGenerateFlags=1;n.autoGenerateId=t;t++;if(e){e(n)}if(r){n.autoGenerateFlags|=8}return n}e.createTempVariable=createTempVariable;function createLoopVariable(){var e=createIdentifier("");e.autoGenerateFlags=2;e.autoGenerateId=t;t++;return e}e.createLoopVariable=createLoopVariable;function createUniqueName(e){var r=createIdentifier(e);r.autoGenerateFlags=3;r.autoGenerateId=t;t++;return r}e.createUniqueName=createUniqueName;function createOptimisticUniqueName(e){var r=createIdentifier(e);r.autoGenerateFlags=3|16;r.autoGenerateId=t;t++;return r}e.createOptimisticUniqueName=createOptimisticUniqueName;function createFileLevelUniqueName(e){var t=createOptimisticUniqueName(e);t.autoGenerateFlags|=32;return t}e.createFileLevelUniqueName=createFileLevelUniqueName;function getGeneratedNameForNode(r,n){var i=createIdentifier(r&&e.isIdentifier(r)?e.idText(r):"");i.autoGenerateFlags=4|n;i.autoGenerateId=t;i.original=r;t++;return i}e.getGeneratedNameForNode=getGeneratedNameForNode;function createToken(e){return createSynthesizedNode(e)}e.createToken=createToken;function createSuper(){return createSynthesizedNode(98)}e.createSuper=createSuper;function createThis(){return createSynthesizedNode(100)}e.createThis=createThis;function createNull(){return createSynthesizedNode(96)}e.createNull=createNull;function createTrue(){return createSynthesizedNode(102)}e.createTrue=createTrue;function createFalse(){return createSynthesizedNode(87)}e.createFalse=createFalse;function createModifier(e){return createToken(e)}e.createModifier=createModifier;function createModifiersFromModifierFlags(e){var t=[];if(e&1){t.push(createModifier(85))}if(e&2){t.push(createModifier(125))}if(e&512){t.push(createModifier(80))}if(e&2048){t.push(createModifier(77))}if(e&4){t.push(createModifier(115))}if(e&8){t.push(createModifier(113))}if(e&16){t.push(createModifier(114))}if(e&128){t.push(createModifier(118))}if(e&32){t.push(createModifier(116))}if(e&64){t.push(createModifier(133))}if(e&256){t.push(createModifier(121))}return t}e.createModifiersFromModifierFlags=createModifiersFromModifierFlags;function createQualifiedName(e,t){var r=createSynthesizedNode(148);r.left=e;r.right=asName(t);return r}e.createQualifiedName=createQualifiedName;function updateQualifiedName(e,t,r){return e.left!==t||e.right!==r?updateNode(createQualifiedName(t,r),e):e}e.updateQualifiedName=updateQualifiedName;function parenthesizeForComputedName(t){return e.isCommaSequence(t)?createParen(t):t}function createComputedPropertyName(e){var t=createSynthesizedNode(149);t.expression=parenthesizeForComputedName(e);return t}e.createComputedPropertyName=createComputedPropertyName;function updateComputedPropertyName(e,t){return e.expression!==t?updateNode(createComputedPropertyName(t),e):e}e.updateComputedPropertyName=updateComputedPropertyName;function createTypeParameterDeclaration(e,t,r){var n=createSynthesizedNode(150);n.name=asName(e);n.constraint=t;n.default=r;return n}e.createTypeParameterDeclaration=createTypeParameterDeclaration;function updateTypeParameterDeclaration(e,t,r,n){return e.name!==t||e.constraint!==r||e.default!==n?updateNode(createTypeParameterDeclaration(t,r,n),e):e}e.updateTypeParameterDeclaration=updateTypeParameterDeclaration;function createParameter(t,r,n,i,a,o,s){var c=createSynthesizedNode(151);c.decorators=asNodeArray(t);c.modifiers=asNodeArray(r);c.dotDotDotToken=n;c.name=asName(i);c.questionToken=a;c.type=o;c.initializer=s?e.parenthesizeExpressionForList(s):undefined;return c}e.createParameter=createParameter;function updateParameter(e,t,r,n,i,a,o,s){return e.decorators!==t||e.modifiers!==r||e.dotDotDotToken!==n||e.name!==i||e.questionToken!==a||e.type!==o||e.initializer!==s?updateNode(createParameter(t,r,n,i,a,o,s),e):e}e.updateParameter=updateParameter;function createDecorator(t){var r=createSynthesizedNode(152);r.expression=e.parenthesizeForAccess(t);return r}e.createDecorator=createDecorator;function updateDecorator(e,t){return e.expression!==t?updateNode(createDecorator(t),e):e}e.updateDecorator=updateDecorator;function createPropertySignature(e,t,r,n,i){var a=createSynthesizedNode(153);a.modifiers=asNodeArray(e);a.name=asName(t);a.questionToken=r;a.type=n;a.initializer=i;return a}e.createPropertySignature=createPropertySignature;function updatePropertySignature(e,t,r,n,i,a){return e.modifiers!==t||e.name!==r||e.questionToken!==n||e.type!==i||e.initializer!==a?updateNode(createPropertySignature(t,r,n,i,a),e):e}e.updatePropertySignature=updatePropertySignature;function createProperty(e,t,r,n,i,a){var o=createSynthesizedNode(154);o.decorators=asNodeArray(e);o.modifiers=asNodeArray(t);o.name=asName(r);o.questionToken=n!==undefined&&n.kind===56?n:undefined;o.exclamationToken=n!==undefined&&n.kind===52?n:undefined;o.type=i;o.initializer=a;return o}e.createProperty=createProperty;function updateProperty(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.questionToken!==(i!==undefined&&i.kind===56?i:undefined)||e.exclamationToken!==(i!==undefined&&i.kind===52?i:undefined)||e.type!==a||e.initializer!==o?updateNode(createProperty(t,r,n,i,a,o),e):e}e.updateProperty=updateProperty;function createMethodSignature(e,t,r,n,i){var a=createSignatureDeclaration(155,e,t,r);a.name=asName(n);a.questionToken=i;return a}e.createMethodSignature=createMethodSignature;function updateMethodSignature(e,t,r,n,i,a){return e.typeParameters!==t||e.parameters!==r||e.type!==n||e.name!==i||e.questionToken!==a?updateNode(createMethodSignature(t,r,n,i,a),e):e}e.updateMethodSignature=updateMethodSignature;function createMethod(e,t,r,n,i,a,o,s,c){var u=createSynthesizedNode(156);u.decorators=asNodeArray(e);u.modifiers=asNodeArray(t);u.asteriskToken=r;u.name=asName(n);u.questionToken=i;u.typeParameters=asNodeArray(a);u.parameters=createNodeArray(o);u.type=s;u.body=c;return u}e.createMethod=createMethod;function updateMethod(e,t,r,n,i,a,o,s,c,u){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.questionToken!==a||e.typeParameters!==o||e.parameters!==s||e.type!==c||e.body!==u?updateNode(createMethod(t,r,n,i,a,o,s,c,u),e):e}e.updateMethod=updateMethod;function createConstructor(e,t,r,n){var i=createSynthesizedNode(157);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.typeParameters=undefined;i.parameters=createNodeArray(r);i.type=undefined;i.body=n;return i}e.createConstructor=createConstructor;function updateConstructor(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.parameters!==n||e.body!==i?updateNode(createConstructor(t,r,n,i),e):e}e.updateConstructor=updateConstructor;function createGetAccessor(e,t,r,n,i,a){var o=createSynthesizedNode(158);o.decorators=asNodeArray(e);o.modifiers=asNodeArray(t);o.name=asName(r);o.typeParameters=undefined;o.parameters=createNodeArray(n);o.type=i;o.body=a;return o}e.createGetAccessor=createGetAccessor;function updateGetAccessor(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.type!==a||e.body!==o?updateNode(createGetAccessor(t,r,n,i,a,o),e):e}e.updateGetAccessor=updateGetAccessor;function createSetAccessor(e,t,r,n,i){var a=createSynthesizedNode(159);a.decorators=asNodeArray(e);a.modifiers=asNodeArray(t);a.name=asName(r);a.typeParameters=undefined;a.parameters=createNodeArray(n);a.body=i;return a}e.createSetAccessor=createSetAccessor;function updateSetAccessor(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.parameters!==i||e.body!==a?updateNode(createSetAccessor(t,r,n,i,a),e):e}e.updateSetAccessor=updateSetAccessor;function createCallSignature(e,t,r){return createSignatureDeclaration(160,e,t,r)}e.createCallSignature=createCallSignature;function updateCallSignature(e,t,r,n){return updateSignatureDeclaration(e,t,r,n)}e.updateCallSignature=updateCallSignature;function createConstructSignature(e,t,r){return createSignatureDeclaration(161,e,t,r)}e.createConstructSignature=createConstructSignature;function updateConstructSignature(e,t,r,n){return updateSignatureDeclaration(e,t,r,n)}e.updateConstructSignature=updateConstructSignature;function createIndexSignature(e,t,r,n){var i=createSynthesizedNode(162);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.parameters=createNodeArray(r);i.type=n;return i}e.createIndexSignature=createIndexSignature;function updateIndexSignature(e,t,r,n,i){return e.parameters!==n||e.type!==i||e.decorators!==t||e.modifiers!==r?updateNode(createIndexSignature(t,r,n,i),e):e}e.updateIndexSignature=updateIndexSignature;function createSignatureDeclaration(e,t,r,n,i){var a=createSynthesizedNode(e);a.typeParameters=asNodeArray(t);a.parameters=asNodeArray(r);a.type=n;a.typeArguments=asNodeArray(i);return a}e.createSignatureDeclaration=createSignatureDeclaration;function updateSignatureDeclaration(e,t,r,n){return e.typeParameters!==t||e.parameters!==r||e.type!==n?updateNode(createSignatureDeclaration(e.kind,t,r,n),e):e}function createKeywordTypeNode(e){return createSynthesizedNode(e)}e.createKeywordTypeNode=createKeywordTypeNode;function createTypePredicateNode(e,t){var r=createSynthesizedNode(163);r.parameterName=asName(e);r.type=t;return r}e.createTypePredicateNode=createTypePredicateNode;function updateTypePredicateNode(e,t,r){return e.parameterName!==t||e.type!==r?updateNode(createTypePredicateNode(t,r),e):e}e.updateTypePredicateNode=updateTypePredicateNode;function createTypeReferenceNode(t,r){var n=createSynthesizedNode(164);n.typeName=asName(t);n.typeArguments=r&&e.parenthesizeTypeParameters(r);return n}e.createTypeReferenceNode=createTypeReferenceNode;function updateTypeReferenceNode(e,t,r){return e.typeName!==t||e.typeArguments!==r?updateNode(createTypeReferenceNode(t,r),e):e}e.updateTypeReferenceNode=updateTypeReferenceNode;function createFunctionTypeNode(e,t,r){return createSignatureDeclaration(165,e,t,r)}e.createFunctionTypeNode=createFunctionTypeNode;function updateFunctionTypeNode(e,t,r,n){return updateSignatureDeclaration(e,t,r,n)}e.updateFunctionTypeNode=updateFunctionTypeNode;function createConstructorTypeNode(e,t,r){return createSignatureDeclaration(166,e,t,r)}e.createConstructorTypeNode=createConstructorTypeNode;function updateConstructorTypeNode(e,t,r,n){return updateSignatureDeclaration(e,t,r,n)}e.updateConstructorTypeNode=updateConstructorTypeNode;function createTypeQueryNode(e){var t=createSynthesizedNode(167);t.exprName=e;return t}e.createTypeQueryNode=createTypeQueryNode;function updateTypeQueryNode(e,t){return e.exprName!==t?updateNode(createTypeQueryNode(t),e):e}e.updateTypeQueryNode=updateTypeQueryNode;function createTypeLiteralNode(e){var t=createSynthesizedNode(168);t.members=createNodeArray(e);return t}e.createTypeLiteralNode=createTypeLiteralNode;function updateTypeLiteralNode(e,t){return e.members!==t?updateNode(createTypeLiteralNode(t),e):e}e.updateTypeLiteralNode=updateTypeLiteralNode;function createArrayTypeNode(t){var r=createSynthesizedNode(169);r.elementType=e.parenthesizeArrayTypeMember(t);return r}e.createArrayTypeNode=createArrayTypeNode;function updateArrayTypeNode(e,t){return e.elementType!==t?updateNode(createArrayTypeNode(t),e):e}e.updateArrayTypeNode=updateArrayTypeNode;function createTupleTypeNode(e){var t=createSynthesizedNode(170);t.elementTypes=createNodeArray(e);return t}e.createTupleTypeNode=createTupleTypeNode;function updateTupleTypeNode(e,t){return e.elementTypes!==t?updateNode(createTupleTypeNode(t),e):e}e.updateTupleTypeNode=updateTupleTypeNode;function createOptionalTypeNode(t){var r=createSynthesizedNode(171);r.type=e.parenthesizeArrayTypeMember(t);return r}e.createOptionalTypeNode=createOptionalTypeNode;function updateOptionalTypeNode(e,t){return e.type!==t?updateNode(createOptionalTypeNode(t),e):e}e.updateOptionalTypeNode=updateOptionalTypeNode;function createRestTypeNode(e){var t=createSynthesizedNode(172);t.type=e;return t}e.createRestTypeNode=createRestTypeNode;function updateRestTypeNode(e,t){return e.type!==t?updateNode(createRestTypeNode(t),e):e}e.updateRestTypeNode=updateRestTypeNode;function createUnionTypeNode(e){return createUnionOrIntersectionTypeNode(173,e)}e.createUnionTypeNode=createUnionTypeNode;function updateUnionTypeNode(e,t){return updateUnionOrIntersectionTypeNode(e,t)}e.updateUnionTypeNode=updateUnionTypeNode;function createIntersectionTypeNode(e){return createUnionOrIntersectionTypeNode(174,e)}e.createIntersectionTypeNode=createIntersectionTypeNode;function updateIntersectionTypeNode(e,t){return updateUnionOrIntersectionTypeNode(e,t)}e.updateIntersectionTypeNode=updateIntersectionTypeNode;function createUnionOrIntersectionTypeNode(t,r){var n=createSynthesizedNode(t);n.types=e.parenthesizeElementTypeMembers(r);return n}e.createUnionOrIntersectionTypeNode=createUnionOrIntersectionTypeNode;function updateUnionOrIntersectionTypeNode(e,t){return e.types!==t?updateNode(createUnionOrIntersectionTypeNode(e.kind,t),e):e}function createConditionalTypeNode(t,r,n,i){var a=createSynthesizedNode(175);a.checkType=e.parenthesizeConditionalTypeMember(t);a.extendsType=e.parenthesizeConditionalTypeMember(r);a.trueType=n;a.falseType=i;return a}e.createConditionalTypeNode=createConditionalTypeNode;function updateConditionalTypeNode(e,t,r,n,i){return e.checkType!==t||e.extendsType!==r||e.trueType!==n||e.falseType!==i?updateNode(createConditionalTypeNode(t,r,n,i),e):e}e.updateConditionalTypeNode=updateConditionalTypeNode;function createInferTypeNode(e){var t=createSynthesizedNode(176);t.typeParameter=e;return t}e.createInferTypeNode=createInferTypeNode;function updateInferTypeNode(e,t){return e.typeParameter!==t?updateNode(createInferTypeNode(t),e):e}e.updateInferTypeNode=updateInferTypeNode;function createImportTypeNode(e,t,r,n){var i=createSynthesizedNode(183);i.argument=e;i.qualifier=t;i.typeArguments=asNodeArray(r);i.isTypeOf=n;return i}e.createImportTypeNode=createImportTypeNode;function updateImportTypeNode(e,t,r,n,i){return e.argument!==t||e.qualifier!==r||e.typeArguments!==n||e.isTypeOf!==i?updateNode(createImportTypeNode(t,r,n,i),e):e}e.updateImportTypeNode=updateImportTypeNode;function createParenthesizedType(e){var t=createSynthesizedNode(177);t.type=e;return t}e.createParenthesizedType=createParenthesizedType;function updateParenthesizedType(e,t){return e.type!==t?updateNode(createParenthesizedType(t),e):e}e.updateParenthesizedType=updateParenthesizedType;function createThisTypeNode(){return createSynthesizedNode(178)}e.createThisTypeNode=createThisTypeNode;function createTypeOperatorNode(t,r){var n=createSynthesizedNode(179);n.operator=typeof t==="number"?t:129;n.type=e.parenthesizeElementTypeMember(typeof t==="number"?r:t);return n}e.createTypeOperatorNode=createTypeOperatorNode;function updateTypeOperatorNode(e,t){return e.type!==t?updateNode(createTypeOperatorNode(e.operator,t),e):e}e.updateTypeOperatorNode=updateTypeOperatorNode;function createIndexedAccessTypeNode(t,r){var n=createSynthesizedNode(180);n.objectType=e.parenthesizeElementTypeMember(t);n.indexType=r;return n}e.createIndexedAccessTypeNode=createIndexedAccessTypeNode;function updateIndexedAccessTypeNode(e,t,r){return e.objectType!==t||e.indexType!==r?updateNode(createIndexedAccessTypeNode(t,r),e):e}e.updateIndexedAccessTypeNode=updateIndexedAccessTypeNode;function createMappedTypeNode(e,t,r,n){var i=createSynthesizedNode(181);i.readonlyToken=e;i.typeParameter=t;i.questionToken=r;i.type=n;return i}e.createMappedTypeNode=createMappedTypeNode;function updateMappedTypeNode(e,t,r,n,i){return e.readonlyToken!==t||e.typeParameter!==r||e.questionToken!==n||e.type!==i?updateNode(createMappedTypeNode(t,r,n,i),e):e}e.updateMappedTypeNode=updateMappedTypeNode;function createLiteralTypeNode(e){var t=createSynthesizedNode(182);t.literal=e;return t}e.createLiteralTypeNode=createLiteralTypeNode;function updateLiteralTypeNode(e,t){return e.literal!==t?updateNode(createLiteralTypeNode(t),e):e}e.updateLiteralTypeNode=updateLiteralTypeNode;function createObjectBindingPattern(e){var t=createSynthesizedNode(184);t.elements=createNodeArray(e);return t}e.createObjectBindingPattern=createObjectBindingPattern;function updateObjectBindingPattern(e,t){return e.elements!==t?updateNode(createObjectBindingPattern(t),e):e}e.updateObjectBindingPattern=updateObjectBindingPattern;function createArrayBindingPattern(e){var t=createSynthesizedNode(185);t.elements=createNodeArray(e);return t}e.createArrayBindingPattern=createArrayBindingPattern;function updateArrayBindingPattern(e,t){return e.elements!==t?updateNode(createArrayBindingPattern(t),e):e}e.updateArrayBindingPattern=updateArrayBindingPattern;function createBindingElement(e,t,r,n){var i=createSynthesizedNode(186);i.dotDotDotToken=e;i.propertyName=asName(t);i.name=asName(r);i.initializer=n;return i}e.createBindingElement=createBindingElement;function updateBindingElement(e,t,r,n,i){return e.propertyName!==r||e.dotDotDotToken!==t||e.name!==n||e.initializer!==i?updateNode(createBindingElement(t,r,n,i),e):e}e.updateBindingElement=updateBindingElement;function createArrayLiteral(t,r){var n=createSynthesizedNode(187);n.elements=e.parenthesizeListElements(createNodeArray(t));if(r)n.multiLine=true;return n}e.createArrayLiteral=createArrayLiteral;function updateArrayLiteral(e,t){return e.elements!==t?updateNode(createArrayLiteral(t,e.multiLine),e):e}e.updateArrayLiteral=updateArrayLiteral;function createObjectLiteral(e,t){var r=createSynthesizedNode(188);r.properties=createNodeArray(e);if(t)r.multiLine=true;return r}e.createObjectLiteral=createObjectLiteral;function updateObjectLiteral(e,t){return e.properties!==t?updateNode(createObjectLiteral(t,e.multiLine),e):e}e.updateObjectLiteral=updateObjectLiteral;function createPropertyAccess(t,r){var n=createSynthesizedNode(189);n.expression=e.parenthesizeForAccess(t);n.name=asName(r);setEmitFlags(n,131072);return n}e.createPropertyAccess=createPropertyAccess;function updatePropertyAccess(t,r,n){return t.expression!==r||t.name!==n?updateNode(setEmitFlags(createPropertyAccess(r,n),e.getEmitFlags(t)),t):t}e.updatePropertyAccess=updatePropertyAccess;function createElementAccess(t,r){var n=createSynthesizedNode(190);n.expression=e.parenthesizeForAccess(t);n.argumentExpression=asExpression(r);return n}e.createElementAccess=createElementAccess;function updateElementAccess(e,t,r){return e.expression!==t||e.argumentExpression!==r?updateNode(createElementAccess(t,r),e):e}e.updateElementAccess=updateElementAccess;function createCall(t,r,n){var i=createSynthesizedNode(191);i.expression=e.parenthesizeForAccess(t);i.typeArguments=asNodeArray(r);i.arguments=e.parenthesizeListElements(createNodeArray(n));return i}e.createCall=createCall;function updateCall(e,t,r,n){return e.expression!==t||e.typeArguments!==r||e.arguments!==n?updateNode(createCall(t,r,n),e):e}e.updateCall=updateCall;function createNew(t,r,n){var i=createSynthesizedNode(192);i.expression=e.parenthesizeForNew(t);i.typeArguments=asNodeArray(r);i.arguments=n?e.parenthesizeListElements(createNodeArray(n)):undefined;return i}e.createNew=createNew;function updateNew(e,t,r,n){return e.expression!==t||e.typeArguments!==r||e.arguments!==n?updateNode(createNew(t,r,n),e):e}e.updateNew=updateNew;function createTaggedTemplate(t,r,n){var i=createSynthesizedNode(193);i.tag=e.parenthesizeForAccess(t);if(n){i.typeArguments=asNodeArray(r);i.template=n}else{i.typeArguments=undefined;i.template=r}return i}e.createTaggedTemplate=createTaggedTemplate;function updateTaggedTemplate(e,t,r,n){return e.tag!==t||(n?e.typeArguments!==r||e.template!==n:e.typeArguments!==undefined||e.template!==r)?updateNode(createTaggedTemplate(t,r,n),e):e}e.updateTaggedTemplate=updateTaggedTemplate;function createTypeAssertion(t,r){var n=createSynthesizedNode(194);n.type=t;n.expression=e.parenthesizePrefixOperand(r);return n}e.createTypeAssertion=createTypeAssertion;function updateTypeAssertion(e,t,r){return e.type!==t||e.expression!==r?updateNode(createTypeAssertion(t,r),e):e}e.updateTypeAssertion=updateTypeAssertion;function createParen(e){var t=createSynthesizedNode(195);t.expression=e;return t}e.createParen=createParen;function updateParen(e,t){return e.expression!==t?updateNode(createParen(t),e):e}e.updateParen=updateParen;function createFunctionExpression(e,t,r,n,i,a,o){var s=createSynthesizedNode(196);s.modifiers=asNodeArray(e);s.asteriskToken=t;s.name=asName(r);s.typeParameters=asNodeArray(n);s.parameters=createNodeArray(i);s.type=a;s.body=o;return s}e.createFunctionExpression=createFunctionExpression;function updateFunctionExpression(e,t,r,n,i,a,o,s){return e.name!==n||e.modifiers!==t||e.asteriskToken!==r||e.typeParameters!==i||e.parameters!==a||e.type!==o||e.body!==s?updateNode(createFunctionExpression(t,r,n,i,a,o,s),e):e}e.updateFunctionExpression=updateFunctionExpression;function createArrowFunction(t,r,n,i,a,o){var s=createSynthesizedNode(197);s.modifiers=asNodeArray(t);s.typeParameters=asNodeArray(r);s.parameters=createNodeArray(n);s.type=i;s.equalsGreaterThanToken=a||createToken(37);s.body=e.parenthesizeConciseBody(o);return s}e.createArrowFunction=createArrowFunction;function updateArrowFunction(e,t,r,n,i,a,o){return e.modifiers!==t||e.typeParameters!==r||e.parameters!==n||e.type!==i||e.equalsGreaterThanToken!==a||e.body!==o?updateNode(createArrowFunction(t,r,n,i,a,o),e):e}e.updateArrowFunction=updateArrowFunction;function createDelete(t){var r=createSynthesizedNode(198);r.expression=e.parenthesizePrefixOperand(t);return r}e.createDelete=createDelete;function updateDelete(e,t){return e.expression!==t?updateNode(createDelete(t),e):e}e.updateDelete=updateDelete;function createTypeOf(t){var r=createSynthesizedNode(199);r.expression=e.parenthesizePrefixOperand(t);return r}e.createTypeOf=createTypeOf;function updateTypeOf(e,t){return e.expression!==t?updateNode(createTypeOf(t),e):e}e.updateTypeOf=updateTypeOf;function createVoid(t){var r=createSynthesizedNode(200);r.expression=e.parenthesizePrefixOperand(t);return r}e.createVoid=createVoid;function updateVoid(e,t){return e.expression!==t?updateNode(createVoid(t),e):e}e.updateVoid=updateVoid;function createAwait(t){var r=createSynthesizedNode(201);r.expression=e.parenthesizePrefixOperand(t);return r}e.createAwait=createAwait;function updateAwait(e,t){return e.expression!==t?updateNode(createAwait(t),e):e}e.updateAwait=updateAwait;function createPrefix(t,r){var n=createSynthesizedNode(202);n.operator=t;n.operand=e.parenthesizePrefixOperand(r);return n}e.createPrefix=createPrefix;function updatePrefix(e,t){return e.operand!==t?updateNode(createPrefix(e.operator,t),e):e}e.updatePrefix=updatePrefix;function createPostfix(t,r){var n=createSynthesizedNode(203);n.operand=e.parenthesizePostfixOperand(t);n.operator=r;return n}e.createPostfix=createPostfix;function updatePostfix(e,t){return e.operand!==t?updateNode(createPostfix(t,e.operator),e):e}e.updatePostfix=updatePostfix;function createBinary(t,r,n){var i=createSynthesizedNode(204);var a=asToken(r);var o=a.kind;i.left=e.parenthesizeBinaryOperand(o,t,true,undefined);i.operatorToken=a;i.right=e.parenthesizeBinaryOperand(o,n,false,i.left);return i}e.createBinary=createBinary;function updateBinary(e,t,r,n){return e.left!==t||e.right!==r?updateNode(createBinary(t,n||e.operatorToken,r),e):e}e.updateBinary=updateBinary;function createConditional(t,r,n,i,a){var o=createSynthesizedNode(205);o.condition=e.parenthesizeForConditionalHead(t);o.questionToken=a?r:createToken(56);o.whenTrue=e.parenthesizeSubexpressionOfConditionalExpression(a?n:r);o.colonToken=a?i:createToken(57);o.whenFalse=e.parenthesizeSubexpressionOfConditionalExpression(a?a:n);return o}e.createConditional=createConditional;function updateConditional(e,t,r,n,i,a){return e.condition!==t||e.questionToken!==r||e.whenTrue!==n||e.colonToken!==i||e.whenFalse!==a?updateNode(createConditional(t,r,n,i,a),e):e}e.updateConditional=updateConditional;function createTemplateExpression(e,t){var r=createSynthesizedNode(206);r.head=e;r.templateSpans=createNodeArray(t);return r}e.createTemplateExpression=createTemplateExpression;function updateTemplateExpression(e,t,r){return e.head!==t||e.templateSpans!==r?updateNode(createTemplateExpression(t,r),e):e}e.updateTemplateExpression=updateTemplateExpression;function createTemplateHead(e){var t=createSynthesizedNode(15);t.text=e;return t}e.createTemplateHead=createTemplateHead;function createTemplateMiddle(e){var t=createSynthesizedNode(16);t.text=e;return t}e.createTemplateMiddle=createTemplateMiddle;function createTemplateTail(e){var t=createSynthesizedNode(17);t.text=e;return t}e.createTemplateTail=createTemplateTail;function createNoSubstitutionTemplateLiteral(e){var t=createSynthesizedNode(14);t.text=e;return t}e.createNoSubstitutionTemplateLiteral=createNoSubstitutionTemplateLiteral;function createYield(e,t){var r=createSynthesizedNode(207);r.asteriskToken=e&&e.kind===40?e:undefined;r.expression=e&&e.kind!==40?e:t;return r}e.createYield=createYield;function updateYield(e,t,r){return e.expression!==r||e.asteriskToken!==t?updateNode(createYield(t,r),e):e}e.updateYield=updateYield;function createSpread(t){var r=createSynthesizedNode(208);r.expression=e.parenthesizeExpressionForList(t);return r}e.createSpread=createSpread;function updateSpread(e,t){return e.expression!==t?updateNode(createSpread(t),e):e}e.updateSpread=updateSpread;function createClassExpression(e,t,r,n,i){var a=createSynthesizedNode(209);a.decorators=undefined;a.modifiers=asNodeArray(e);a.name=asName(t);a.typeParameters=asNodeArray(r);a.heritageClauses=asNodeArray(n);a.members=createNodeArray(i);return a}e.createClassExpression=createClassExpression;function updateClassExpression(e,t,r,n,i,a){return e.modifiers!==t||e.name!==r||e.typeParameters!==n||e.heritageClauses!==i||e.members!==a?updateNode(createClassExpression(t,r,n,i,a),e):e}e.updateClassExpression=updateClassExpression;function createOmittedExpression(){return createSynthesizedNode(210)}e.createOmittedExpression=createOmittedExpression;function createExpressionWithTypeArguments(t,r){var n=createSynthesizedNode(211);n.expression=e.parenthesizeForAccess(r);n.typeArguments=asNodeArray(t);return n}e.createExpressionWithTypeArguments=createExpressionWithTypeArguments;function updateExpressionWithTypeArguments(e,t,r){return e.typeArguments!==t||e.expression!==r?updateNode(createExpressionWithTypeArguments(t,r),e):e}e.updateExpressionWithTypeArguments=updateExpressionWithTypeArguments;function createAsExpression(e,t){var r=createSynthesizedNode(212);r.expression=e;r.type=t;return r}e.createAsExpression=createAsExpression;function updateAsExpression(e,t,r){return e.expression!==t||e.type!==r?updateNode(createAsExpression(t,r),e):e}e.updateAsExpression=updateAsExpression;function createNonNullExpression(t){var r=createSynthesizedNode(213);r.expression=e.parenthesizeForAccess(t);return r}e.createNonNullExpression=createNonNullExpression;function updateNonNullExpression(e,t){return e.expression!==t?updateNode(createNonNullExpression(t),e):e}e.updateNonNullExpression=updateNonNullExpression;function createMetaProperty(e,t){var r=createSynthesizedNode(214);r.keywordToken=e;r.name=t;return r}e.createMetaProperty=createMetaProperty;function updateMetaProperty(e,t){return e.name!==t?updateNode(createMetaProperty(e.keywordToken,t),e):e}e.updateMetaProperty=updateMetaProperty;function createTemplateSpan(e,t){var r=createSynthesizedNode(216);r.expression=e;r.literal=t;return r}e.createTemplateSpan=createTemplateSpan;function updateTemplateSpan(e,t,r){return e.expression!==t||e.literal!==r?updateNode(createTemplateSpan(t,r),e):e}e.updateTemplateSpan=updateTemplateSpan;function createSemicolonClassElement(){return createSynthesizedNode(217)}e.createSemicolonClassElement=createSemicolonClassElement;function createBlock(e,t){var r=createSynthesizedNode(218);r.statements=createNodeArray(e);if(t)r.multiLine=t;return r}e.createBlock=createBlock;function updateBlock(e,t){return e.statements!==t?updateNode(createBlock(t,e.multiLine),e):e}e.updateBlock=updateBlock;function createVariableStatement(t,r){var n=createSynthesizedNode(219);n.decorators=undefined;n.modifiers=asNodeArray(t);n.declarationList=e.isArray(r)?createVariableDeclarationList(r):r;return n}e.createVariableStatement=createVariableStatement;function updateVariableStatement(e,t,r){return e.modifiers!==t||e.declarationList!==r?updateNode(createVariableStatement(t,r),e):e}e.updateVariableStatement=updateVariableStatement;function createEmptyStatement(){return createSynthesizedNode(220)}e.createEmptyStatement=createEmptyStatement;function createExpressionStatement(t){var r=createSynthesizedNode(221);r.expression=e.parenthesizeExpressionForExpressionStatement(t);return r}e.createExpressionStatement=createExpressionStatement;function updateExpressionStatement(e,t){return e.expression!==t?updateNode(createExpressionStatement(t),e):e}e.updateExpressionStatement=updateExpressionStatement;e.createStatement=createExpressionStatement;e.updateStatement=updateExpressionStatement;function createIf(e,t,r){var n=createSynthesizedNode(222);n.expression=e;n.thenStatement=t;n.elseStatement=r;return n}e.createIf=createIf;function updateIf(e,t,r,n){return e.expression!==t||e.thenStatement!==r||e.elseStatement!==n?updateNode(createIf(t,r,n),e):e}e.updateIf=updateIf;function createDo(e,t){var r=createSynthesizedNode(223);r.statement=e;r.expression=t;return r}e.createDo=createDo;function updateDo(e,t,r){return e.statement!==t||e.expression!==r?updateNode(createDo(t,r),e):e}e.updateDo=updateDo;function createWhile(e,t){var r=createSynthesizedNode(224);r.expression=e;r.statement=t;return r}e.createWhile=createWhile;function updateWhile(e,t,r){return e.expression!==t||e.statement!==r?updateNode(createWhile(t,r),e):e}e.updateWhile=updateWhile;function createFor(e,t,r,n){var i=createSynthesizedNode(225);i.initializer=e;i.condition=t;i.incrementor=r;i.statement=n;return i}e.createFor=createFor;function updateFor(e,t,r,n,i){return e.initializer!==t||e.condition!==r||e.incrementor!==n||e.statement!==i?updateNode(createFor(t,r,n,i),e):e}e.updateFor=updateFor;function createForIn(e,t,r){var n=createSynthesizedNode(226);n.initializer=e;n.expression=t;n.statement=r;return n}e.createForIn=createForIn;function updateForIn(e,t,r,n){return e.initializer!==t||e.expression!==r||e.statement!==n?updateNode(createForIn(t,r,n),e):e}e.updateForIn=updateForIn;function createForOf(e,t,r,n){var i=createSynthesizedNode(227);i.awaitModifier=e;i.initializer=t;i.expression=r;i.statement=n;return i}e.createForOf=createForOf;function updateForOf(e,t,r,n,i){return e.awaitModifier!==t||e.initializer!==r||e.expression!==n||e.statement!==i?updateNode(createForOf(t,r,n,i),e):e}e.updateForOf=updateForOf;function createContinue(e){var t=createSynthesizedNode(228);t.label=asName(e);return t}e.createContinue=createContinue;function updateContinue(e,t){return e.label!==t?updateNode(createContinue(t),e):e}e.updateContinue=updateContinue;function createBreak(e){var t=createSynthesizedNode(229);t.label=asName(e);return t}e.createBreak=createBreak;function updateBreak(e,t){return e.label!==t?updateNode(createBreak(t),e):e}e.updateBreak=updateBreak;function createReturn(e){var t=createSynthesizedNode(230);t.expression=e;return t}e.createReturn=createReturn;function updateReturn(e,t){return e.expression!==t?updateNode(createReturn(t),e):e}e.updateReturn=updateReturn;function createWith(e,t){var r=createSynthesizedNode(231);r.expression=e;r.statement=t;return r}e.createWith=createWith;function updateWith(e,t,r){return e.expression!==t||e.statement!==r?updateNode(createWith(t,r),e):e}e.updateWith=updateWith;function createSwitch(t,r){var n=createSynthesizedNode(232);n.expression=e.parenthesizeExpressionForList(t);n.caseBlock=r;return n}e.createSwitch=createSwitch;function updateSwitch(e,t,r){return e.expression!==t||e.caseBlock!==r?updateNode(createSwitch(t,r),e):e}e.updateSwitch=updateSwitch;function createLabel(e,t){var r=createSynthesizedNode(233);r.label=asName(e);r.statement=t;return r}e.createLabel=createLabel;function updateLabel(e,t,r){return e.label!==t||e.statement!==r?updateNode(createLabel(t,r),e):e}e.updateLabel=updateLabel;function createThrow(e){var t=createSynthesizedNode(234);t.expression=e;return t}e.createThrow=createThrow;function updateThrow(e,t){return e.expression!==t?updateNode(createThrow(t),e):e}e.updateThrow=updateThrow;function createTry(e,t,r){var n=createSynthesizedNode(235);n.tryBlock=e;n.catchClause=t;n.finallyBlock=r;return n}e.createTry=createTry;function updateTry(e,t,r,n){return e.tryBlock!==t||e.catchClause!==r||e.finallyBlock!==n?updateNode(createTry(t,r,n),e):e}e.updateTry=updateTry;function createDebuggerStatement(){return createSynthesizedNode(236)}e.createDebuggerStatement=createDebuggerStatement;function createVariableDeclaration(t,r,n){var i=createSynthesizedNode(237);i.name=asName(t);i.type=r;i.initializer=n!==undefined?e.parenthesizeExpressionForList(n):undefined;return i}e.createVariableDeclaration=createVariableDeclaration;function updateVariableDeclaration(e,t,r,n){return e.name!==t||e.type!==r||e.initializer!==n?updateNode(createVariableDeclaration(t,r,n),e):e}e.updateVariableDeclaration=updateVariableDeclaration;function createVariableDeclarationList(e,t){if(t===void 0){t=0}var r=createSynthesizedNode(238);r.flags|=t&3;r.declarations=createNodeArray(e);return r}e.createVariableDeclarationList=createVariableDeclarationList;function updateVariableDeclarationList(e,t){return e.declarations!==t?updateNode(createVariableDeclarationList(t,e.flags),e):e}e.updateVariableDeclarationList=updateVariableDeclarationList;function createFunctionDeclaration(e,t,r,n,i,a,o,s){var c=createSynthesizedNode(239);c.decorators=asNodeArray(e);c.modifiers=asNodeArray(t);c.asteriskToken=r;c.name=asName(n);c.typeParameters=asNodeArray(i);c.parameters=createNodeArray(a);c.type=o;c.body=s;return c}e.createFunctionDeclaration=createFunctionDeclaration;function updateFunctionDeclaration(e,t,r,n,i,a,o,s,c){return e.decorators!==t||e.modifiers!==r||e.asteriskToken!==n||e.name!==i||e.typeParameters!==a||e.parameters!==o||e.type!==s||e.body!==c?updateNode(createFunctionDeclaration(t,r,n,i,a,o,s,c),e):e}e.updateFunctionDeclaration=updateFunctionDeclaration;function createClassDeclaration(e,t,r,n,i,a){var o=createSynthesizedNode(240);o.decorators=asNodeArray(e);o.modifiers=asNodeArray(t);o.name=asName(r);o.typeParameters=asNodeArray(n);o.heritageClauses=asNodeArray(i);o.members=createNodeArray(a);return o}e.createClassDeclaration=createClassDeclaration;function updateClassDeclaration(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?updateNode(createClassDeclaration(t,r,n,i,a,o),e):e}e.updateClassDeclaration=updateClassDeclaration;function createInterfaceDeclaration(e,t,r,n,i,a){var o=createSynthesizedNode(241);o.decorators=asNodeArray(e);o.modifiers=asNodeArray(t);o.name=asName(r);o.typeParameters=asNodeArray(n);o.heritageClauses=asNodeArray(i);o.members=createNodeArray(a);return o}e.createInterfaceDeclaration=createInterfaceDeclaration;function updateInterfaceDeclaration(e,t,r,n,i,a,o){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.heritageClauses!==a||e.members!==o?updateNode(createInterfaceDeclaration(t,r,n,i,a,o),e):e}e.updateInterfaceDeclaration=updateInterfaceDeclaration;function createTypeAliasDeclaration(e,t,r,n,i){var a=createSynthesizedNode(242);a.decorators=asNodeArray(e);a.modifiers=asNodeArray(t);a.name=asName(r);a.typeParameters=asNodeArray(n);a.type=i;return a}e.createTypeAliasDeclaration=createTypeAliasDeclaration;function updateTypeAliasDeclaration(e,t,r,n,i,a){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.typeParameters!==i||e.type!==a?updateNode(createTypeAliasDeclaration(t,r,n,i,a),e):e}e.updateTypeAliasDeclaration=updateTypeAliasDeclaration;function createEnumDeclaration(e,t,r,n){var i=createSynthesizedNode(243);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.name=asName(r);i.members=createNodeArray(n);return i}e.createEnumDeclaration=createEnumDeclaration;function updateEnumDeclaration(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.members!==i?updateNode(createEnumDeclaration(t,r,n,i),e):e}e.updateEnumDeclaration=updateEnumDeclaration;function createModuleDeclaration(e,t,r,n,i){if(i===void 0){i=0}var a=createSynthesizedNode(244);a.flags|=i&(16|4|512);a.decorators=asNodeArray(e);a.modifiers=asNodeArray(t);a.name=r;a.body=n;return a}e.createModuleDeclaration=createModuleDeclaration;function updateModuleDeclaration(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.body!==i?updateNode(createModuleDeclaration(t,r,n,i,e.flags),e):e}e.updateModuleDeclaration=updateModuleDeclaration;function createModuleBlock(e){var t=createSynthesizedNode(245);t.statements=createNodeArray(e);return t}e.createModuleBlock=createModuleBlock;function updateModuleBlock(e,t){return e.statements!==t?updateNode(createModuleBlock(t),e):e}e.updateModuleBlock=updateModuleBlock;function createCaseBlock(e){var t=createSynthesizedNode(246);t.clauses=createNodeArray(e);return t}e.createCaseBlock=createCaseBlock;function updateCaseBlock(e,t){return e.clauses!==t?updateNode(createCaseBlock(t),e):e}e.updateCaseBlock=updateCaseBlock;function createNamespaceExportDeclaration(e){var t=createSynthesizedNode(247);t.name=asName(e);return t}e.createNamespaceExportDeclaration=createNamespaceExportDeclaration;function updateNamespaceExportDeclaration(e,t){return e.name!==t?updateNode(createNamespaceExportDeclaration(t),e):e}e.updateNamespaceExportDeclaration=updateNamespaceExportDeclaration;function createImportEqualsDeclaration(e,t,r,n){var i=createSynthesizedNode(248);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.name=asName(r);i.moduleReference=n;return i}e.createImportEqualsDeclaration=createImportEqualsDeclaration;function updateImportEqualsDeclaration(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.name!==n||e.moduleReference!==i?updateNode(createImportEqualsDeclaration(t,r,n,i),e):e}e.updateImportEqualsDeclaration=updateImportEqualsDeclaration;function createImportDeclaration(e,t,r,n){var i=createSynthesizedNode(249);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.importClause=r;i.moduleSpecifier=n;return i}e.createImportDeclaration=createImportDeclaration;function updateImportDeclaration(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.importClause!==n||e.moduleSpecifier!==i?updateNode(createImportDeclaration(t,r,n,i),e):e}e.updateImportDeclaration=updateImportDeclaration;function createImportClause(e,t){var r=createSynthesizedNode(250);r.name=e;r.namedBindings=t;return r}e.createImportClause=createImportClause;function updateImportClause(e,t,r){return e.name!==t||e.namedBindings!==r?updateNode(createImportClause(t,r),e):e}e.updateImportClause=updateImportClause;function createNamespaceImport(e){var t=createSynthesizedNode(251);t.name=e;return t}e.createNamespaceImport=createNamespaceImport;function updateNamespaceImport(e,t){return e.name!==t?updateNode(createNamespaceImport(t),e):e}e.updateNamespaceImport=updateNamespaceImport;function createNamedImports(e){var t=createSynthesizedNode(252);t.elements=createNodeArray(e);return t}e.createNamedImports=createNamedImports;function updateNamedImports(e,t){return e.elements!==t?updateNode(createNamedImports(t),e):e}e.updateNamedImports=updateNamedImports;function createImportSpecifier(e,t){var r=createSynthesizedNode(253);r.propertyName=e;r.name=t;return r}e.createImportSpecifier=createImportSpecifier;function updateImportSpecifier(e,t,r){return e.propertyName!==t||e.name!==r?updateNode(createImportSpecifier(t,r),e):e}e.updateImportSpecifier=updateImportSpecifier;function createExportAssignment(t,r,n,i){var a=createSynthesizedNode(254);a.decorators=asNodeArray(t);a.modifiers=asNodeArray(r);a.isExportEquals=n;a.expression=n?e.parenthesizeBinaryOperand(59,i,false,undefined):e.parenthesizeDefaultExpression(i);return a}e.createExportAssignment=createExportAssignment;function updateExportAssignment(e,t,r,n){return e.decorators!==t||e.modifiers!==r||e.expression!==n?updateNode(createExportAssignment(t,r,e.isExportEquals,n),e):e}e.updateExportAssignment=updateExportAssignment;function createExportDeclaration(e,t,r,n){var i=createSynthesizedNode(255);i.decorators=asNodeArray(e);i.modifiers=asNodeArray(t);i.exportClause=r;i.moduleSpecifier=n;return i}e.createExportDeclaration=createExportDeclaration;function updateExportDeclaration(e,t,r,n,i){return e.decorators!==t||e.modifiers!==r||e.exportClause!==n||e.moduleSpecifier!==i?updateNode(createExportDeclaration(t,r,n,i),e):e}e.updateExportDeclaration=updateExportDeclaration;function createNamedExports(e){var t=createSynthesizedNode(256);t.elements=createNodeArray(e);return t}e.createNamedExports=createNamedExports;function updateNamedExports(e,t){return e.elements!==t?updateNode(createNamedExports(t),e):e}e.updateNamedExports=updateNamedExports;function createExportSpecifier(e,t){var r=createSynthesizedNode(257);r.propertyName=asName(e);r.name=asName(t);return r}e.createExportSpecifier=createExportSpecifier;function updateExportSpecifier(e,t,r){return e.propertyName!==t||e.name!==r?updateNode(createExportSpecifier(t,r),e):e}e.updateExportSpecifier=updateExportSpecifier;function createExternalModuleReference(e){var t=createSynthesizedNode(259);t.expression=e;return t}e.createExternalModuleReference=createExternalModuleReference;function updateExternalModuleReference(e,t){return e.expression!==t?updateNode(createExternalModuleReference(t),e):e}e.updateExternalModuleReference=updateExternalModuleReference;function createJSDocTypeExpression(e){var t=createSynthesizedNode(283);t.type=e;return t}e.createJSDocTypeExpression=createJSDocTypeExpression;function createJSDocTypeTag(e,t){var r=createJSDocTag(302,"type");r.typeExpression=e;r.comment=t;return r}e.createJSDocTypeTag=createJSDocTypeTag;function createJSDocReturnTag(e,t){var r=createJSDocTag(300,"returns");r.typeExpression=e;r.comment=t;return r}e.createJSDocReturnTag=createJSDocReturnTag;function createJSDocParamTag(e,t,r,n){var i=createJSDocTag(299,"param");i.typeExpression=r;i.name=e;i.isBracketed=t;i.comment=n;return i}e.createJSDocParamTag=createJSDocParamTag;function createJSDocComment(e,t){var r=createSynthesizedNode(291);r.comment=e;r.tags=t;return r}e.createJSDocComment=createJSDocComment;function createJSDocTag(e,t){var r=createSynthesizedNode(e);r.tagName=createIdentifier(t);return r}function createJsxElement(e,t,r){var n=createSynthesizedNode(260);n.openingElement=e;n.children=createNodeArray(t);n.closingElement=r;return n}e.createJsxElement=createJsxElement;function updateJsxElement(e,t,r,n){return e.openingElement!==t||e.children!==r||e.closingElement!==n?updateNode(createJsxElement(t,r,n),e):e}e.updateJsxElement=updateJsxElement;function createJsxSelfClosingElement(e,t,r){var n=createSynthesizedNode(261);n.tagName=e;n.typeArguments=asNodeArray(t);n.attributes=r;return n}e.createJsxSelfClosingElement=createJsxSelfClosingElement;function updateJsxSelfClosingElement(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?updateNode(createJsxSelfClosingElement(t,r,n),e):e}e.updateJsxSelfClosingElement=updateJsxSelfClosingElement;function createJsxOpeningElement(e,t,r){var n=createSynthesizedNode(262);n.tagName=e;n.typeArguments=asNodeArray(t);n.attributes=r;return n}e.createJsxOpeningElement=createJsxOpeningElement;function updateJsxOpeningElement(e,t,r,n){return e.tagName!==t||e.typeArguments!==r||e.attributes!==n?updateNode(createJsxOpeningElement(t,r,n),e):e}e.updateJsxOpeningElement=updateJsxOpeningElement;function createJsxClosingElement(e){var t=createSynthesizedNode(263);t.tagName=e;return t}e.createJsxClosingElement=createJsxClosingElement;function updateJsxClosingElement(e,t){return e.tagName!==t?updateNode(createJsxClosingElement(t),e):e}e.updateJsxClosingElement=updateJsxClosingElement;function createJsxFragment(e,t,r){var n=createSynthesizedNode(264);n.openingFragment=e;n.children=createNodeArray(t);n.closingFragment=r;return n}e.createJsxFragment=createJsxFragment;function updateJsxFragment(e,t,r,n){return e.openingFragment!==t||e.children!==r||e.closingFragment!==n?updateNode(createJsxFragment(t,r,n),e):e}e.updateJsxFragment=updateJsxFragment;function createJsxAttribute(e,t){var r=createSynthesizedNode(267);r.name=e;r.initializer=t;return r}e.createJsxAttribute=createJsxAttribute;function updateJsxAttribute(e,t,r){return e.name!==t||e.initializer!==r?updateNode(createJsxAttribute(t,r),e):e}e.updateJsxAttribute=updateJsxAttribute;function createJsxAttributes(e){var t=createSynthesizedNode(268);t.properties=createNodeArray(e);return t}e.createJsxAttributes=createJsxAttributes;function updateJsxAttributes(e,t){return e.properties!==t?updateNode(createJsxAttributes(t),e):e}e.updateJsxAttributes=updateJsxAttributes;function createJsxSpreadAttribute(e){var t=createSynthesizedNode(269);t.expression=e;return t}e.createJsxSpreadAttribute=createJsxSpreadAttribute;function updateJsxSpreadAttribute(e,t){return e.expression!==t?updateNode(createJsxSpreadAttribute(t),e):e}e.updateJsxSpreadAttribute=updateJsxSpreadAttribute;function createJsxExpression(e,t){var r=createSynthesizedNode(270);r.dotDotDotToken=e;r.expression=t;return r}e.createJsxExpression=createJsxExpression;function updateJsxExpression(e,t){return e.expression!==t?updateNode(createJsxExpression(e.dotDotDotToken,t),e):e}e.updateJsxExpression=updateJsxExpression;function createCaseClause(t,r){var n=createSynthesizedNode(271);n.expression=e.parenthesizeExpressionForList(t);n.statements=createNodeArray(r);return n}e.createCaseClause=createCaseClause;function updateCaseClause(e,t,r){return e.expression!==t||e.statements!==r?updateNode(createCaseClause(t,r),e):e}e.updateCaseClause=updateCaseClause;function createDefaultClause(e){var t=createSynthesizedNode(272);t.statements=createNodeArray(e);return t}e.createDefaultClause=createDefaultClause;function updateDefaultClause(e,t){return e.statements!==t?updateNode(createDefaultClause(t),e):e}e.updateDefaultClause=updateDefaultClause;function createHeritageClause(e,t){var r=createSynthesizedNode(273);r.token=e;r.types=createNodeArray(t);return r}e.createHeritageClause=createHeritageClause;function updateHeritageClause(e,t){return e.types!==t?updateNode(createHeritageClause(e.token,t),e):e}e.updateHeritageClause=updateHeritageClause;function createCatchClause(t,r){var n=createSynthesizedNode(274);n.variableDeclaration=e.isString(t)?createVariableDeclaration(t):t;n.block=r;return n}e.createCatchClause=createCatchClause;function updateCatchClause(e,t,r){return e.variableDeclaration!==t||e.block!==r?updateNode(createCatchClause(t,r),e):e}e.updateCatchClause=updateCatchClause;function createPropertyAssignment(t,r){var n=createSynthesizedNode(275);n.name=asName(t);n.questionToken=undefined;n.initializer=e.parenthesizeExpressionForList(r);return n}e.createPropertyAssignment=createPropertyAssignment;function updatePropertyAssignment(e,t,r){return e.name!==t||e.initializer!==r?updateNode(createPropertyAssignment(t,r),e):e}e.updatePropertyAssignment=updatePropertyAssignment;function createShorthandPropertyAssignment(t,r){var n=createSynthesizedNode(276);n.name=asName(t);n.objectAssignmentInitializer=r!==undefined?e.parenthesizeExpressionForList(r):undefined;return n}e.createShorthandPropertyAssignment=createShorthandPropertyAssignment;function updateShorthandPropertyAssignment(e,t,r){return e.name!==t||e.objectAssignmentInitializer!==r?updateNode(createShorthandPropertyAssignment(t,r),e):e}e.updateShorthandPropertyAssignment=updateShorthandPropertyAssignment;function createSpreadAssignment(t){var r=createSynthesizedNode(277);r.expression=t!==undefined?e.parenthesizeExpressionForList(t):undefined;return r}e.createSpreadAssignment=createSpreadAssignment;function updateSpreadAssignment(e,t){return e.expression!==t?updateNode(createSpreadAssignment(t),e):e}e.updateSpreadAssignment=updateSpreadAssignment;function createEnumMember(t,r){var n=createSynthesizedNode(278);n.name=asName(t);n.initializer=r&&e.parenthesizeExpressionForList(r);return n}e.createEnumMember=createEnumMember;function updateEnumMember(e,t,r){return e.name!==t||e.initializer!==r?updateNode(createEnumMember(t,r),e):e}e.updateEnumMember=updateEnumMember;function updateSourceFileNode(e,t,r,n,i,a,o){if(e.statements!==t||r!==undefined&&e.isDeclarationFile!==r||n!==undefined&&e.referencedFiles!==n||i!==undefined&&e.typeReferenceDirectives!==i||o!==undefined&&e.libReferenceDirectives!==o||a!==undefined&&e.hasNoDefaultLib!==a){var s=createSynthesizedNode(279);s.flags|=e.flags;s.statements=createNodeArray(t);s.endOfFileToken=e.endOfFileToken;s.fileName=e.fileName;s.path=e.path;s.text=e.text;s.isDeclarationFile=r===undefined?e.isDeclarationFile:r;s.referencedFiles=n===undefined?e.referencedFiles:n;s.typeReferenceDirectives=i===undefined?e.typeReferenceDirectives:i;s.hasNoDefaultLib=a===undefined?e.hasNoDefaultLib:a;s.libReferenceDirectives=o===undefined?e.libReferenceDirectives:o;if(e.amdDependencies!==undefined)s.amdDependencies=e.amdDependencies;if(e.moduleName!==undefined)s.moduleName=e.moduleName;if(e.languageVariant!==undefined)s.languageVariant=e.languageVariant;if(e.renamedDependencies!==undefined)s.renamedDependencies=e.renamedDependencies;if(e.languageVersion!==undefined)s.languageVersion=e.languageVersion;if(e.scriptKind!==undefined)s.scriptKind=e.scriptKind;if(e.externalModuleIndicator!==undefined)s.externalModuleIndicator=e.externalModuleIndicator;if(e.commonJsModuleIndicator!==undefined)s.commonJsModuleIndicator=e.commonJsModuleIndicator;if(e.identifiers!==undefined)s.identifiers=e.identifiers;if(e.nodeCount!==undefined)s.nodeCount=e.nodeCount;if(e.identifierCount!==undefined)s.identifierCount=e.identifierCount;if(e.symbolCount!==undefined)s.symbolCount=e.symbolCount;if(e.parseDiagnostics!==undefined)s.parseDiagnostics=e.parseDiagnostics;if(e.bindDiagnostics!==undefined)s.bindDiagnostics=e.bindDiagnostics;if(e.bindSuggestionDiagnostics!==undefined)s.bindSuggestionDiagnostics=e.bindSuggestionDiagnostics;if(e.lineMap!==undefined)s.lineMap=e.lineMap;if(e.classifiableNames!==undefined)s.classifiableNames=e.classifiableNames;if(e.resolvedModules!==undefined)s.resolvedModules=e.resolvedModules;if(e.resolvedTypeReferenceDirectiveNames!==undefined)s.resolvedTypeReferenceDirectiveNames=e.resolvedTypeReferenceDirectiveNames;if(e.imports!==undefined)s.imports=e.imports;if(e.moduleAugmentations!==undefined)s.moduleAugmentations=e.moduleAugmentations;if(e.pragmas!==undefined)s.pragmas=e.pragmas;if(e.localJsxFactory!==undefined)s.localJsxFactory=e.localJsxFactory;if(e.localJsxNamespace!==undefined)s.localJsxNamespace=e.localJsxNamespace;return updateNode(s,e)}return e}e.updateSourceFileNode=updateSourceFileNode;function getMutableClone(e){var t=getSynthesizedClone(e);t.pos=e.pos;t.end=e.end;t.parent=e.parent;return t}e.getMutableClone=getMutableClone;function createNotEmittedStatement(e){var t=createSynthesizedNode(307);t.original=e;setTextRange(t,e);return t}e.createNotEmittedStatement=createNotEmittedStatement;function createEndOfDeclarationMarker(e){var t=createSynthesizedNode(311);t.emitNode={};t.original=e;return t}e.createEndOfDeclarationMarker=createEndOfDeclarationMarker;function createMergeDeclarationMarker(e){var t=createSynthesizedNode(310);t.emitNode={};t.original=e;return t}e.createMergeDeclarationMarker=createMergeDeclarationMarker;function createPartiallyEmittedExpression(e,t){var r=createSynthesizedNode(308);r.expression=e;r.original=t;setTextRange(r,t);return r}e.createPartiallyEmittedExpression=createPartiallyEmittedExpression;function updatePartiallyEmittedExpression(e,t){if(e.expression!==t){return updateNode(createPartiallyEmittedExpression(t,e.original),e)}return e}e.updatePartiallyEmittedExpression=updatePartiallyEmittedExpression;function flattenCommaElements(t){if(e.nodeIsSynthesized(t)&&!e.isParseTreeNode(t)&&!t.original&&!t.emitNode&&!t.id){if(t.kind===309){return t.elements}if(e.isBinaryExpression(t)&&t.operatorToken.kind===27){return[t.left,t.right]}}return t}function createCommaList(t){var r=createSynthesizedNode(309);r.elements=createNodeArray(e.sameFlatMap(t,flattenCommaElements));return r}e.createCommaList=createCommaList;function updateCommaList(e,t){return e.elements!==t?updateNode(createCommaList(t),e):e}e.updateCommaList=updateCommaList;function createBundle(t,r){if(r===void 0){r=e.emptyArray}var n=e.createNode(280);n.prepends=r;n.sourceFiles=t;return n}e.createBundle=createBundle;function createUnparsedSourceFile(t,r,n){var i=e.createNode(281);i.text=t;i.sourceMapPath=r;i.sourceMapText=n;return i}e.createUnparsedSourceFile=createUnparsedSourceFile;function createInputFiles(t,r,n,i,a,o){var s=e.createNode(282);s.javascriptText=t;s.javascriptMapPath=n;s.javascriptMapText=i;s.declarationText=r;s.declarationMapPath=a;s.declarationMapText=o;return s}e.createInputFiles=createInputFiles;function updateBundle(t,r,n){if(n===void 0){n=e.emptyArray}if(t.sourceFiles!==r||t.prepends!==n){return createBundle(r,n)}return t}e.updateBundle=updateBundle;function createImmediatelyInvokedFunctionExpression(e,t,r){return createCall(createFunctionExpression(undefined,undefined,undefined,undefined,t?[t]:[],undefined,createBlock(e,true)),undefined,r?[r]:[])}e.createImmediatelyInvokedFunctionExpression=createImmediatelyInvokedFunctionExpression;function createImmediatelyInvokedArrowFunction(e,t,r){return createCall(createArrowFunction(undefined,undefined,t?[t]:[],undefined,undefined,createBlock(e,true)),undefined,r?[r]:[])}e.createImmediatelyInvokedArrowFunction=createImmediatelyInvokedArrowFunction;function createComma(e,t){return createBinary(e,27,t)}e.createComma=createComma;function createLessThan(e,t){return createBinary(e,28,t)}e.createLessThan=createLessThan;function createAssignment(e,t){return createBinary(e,59,t)}e.createAssignment=createAssignment;function createStrictEquality(e,t){return createBinary(e,35,t)}e.createStrictEquality=createStrictEquality;function createStrictInequality(e,t){return createBinary(e,36,t)}e.createStrictInequality=createStrictInequality;function createAdd(e,t){return createBinary(e,38,t)}e.createAdd=createAdd;function createSubtract(e,t){return createBinary(e,39,t)}e.createSubtract=createSubtract;function createPostfixIncrement(e){return createPostfix(e,44)}e.createPostfixIncrement=createPostfixIncrement;function createLogicalAnd(e,t){return createBinary(e,54,t)}e.createLogicalAnd=createLogicalAnd;function createLogicalOr(e,t){return createBinary(e,55,t)}e.createLogicalOr=createLogicalOr;function createLogicalNot(e){return createPrefix(52,e)}e.createLogicalNot=createLogicalNot;function createVoidZero(){return createVoid(createLiteral(0))}e.createVoidZero=createVoidZero;function createExportDefault(e){return createExportAssignment(undefined,undefined,false,e)}e.createExportDefault=createExportDefault;function createExternalModuleExport(e){return createExportDeclaration(undefined,undefined,createNamedExports([createExportSpecifier(undefined,e)]))}e.createExternalModuleExport=createExternalModuleExport;function asName(t){return e.isString(t)?createIdentifier(t):t}function asExpression(t){return e.isString(t)||typeof t==="number"?createLiteral(t):t}function asNodeArray(e){return e?createNodeArray(e):undefined}function asToken(e){return typeof e==="number"?createToken(e):e}function disposeEmitNodes(t){t=e.getSourceFileOfNode(e.getParseTreeNode(t));var r=t&&t.emitNode;var n=r&&r.annotatedNodes;if(n){for(var i=0,a=n;i<a.length;i++){var o=a[i];o.emitNode=undefined}}}e.disposeEmitNodes=disposeEmitNodes;function getOrCreateEmitNode(t){if(!t.emitNode){if(e.isParseTreeNode(t)){if(t.kind===279){return t.emitNode={annotatedNodes:[t]}}var r=e.getSourceFileOfNode(t);getOrCreateEmitNode(r).annotatedNodes.push(t)}t.emitNode={}}return t.emitNode}e.getOrCreateEmitNode=getOrCreateEmitNode;function setTextRange(e,t){if(t){e.pos=t.pos;e.end=t.end}return e}e.setTextRange=setTextRange;function setEmitFlags(e,t){getOrCreateEmitNode(e).flags=t;return e}e.setEmitFlags=setEmitFlags;function addEmitFlags(e,t){var r=getOrCreateEmitNode(e);r.flags=r.flags|t;return e}e.addEmitFlags=addEmitFlags;function getSourceMapRange(e){var t=e.emitNode;return t&&t.sourceMapRange||e}e.getSourceMapRange=getSourceMapRange;function setSourceMapRange(e,t){getOrCreateEmitNode(e).sourceMapRange=t;return e}e.setSourceMapRange=setSourceMapRange;var r;function createSourceMapSource(t,n,i){return new(r||(r=e.objectAllocator.getSourceMapSourceConstructor()))(t,n,i)}e.createSourceMapSource=createSourceMapSource;function getTokenSourceMapRange(e,t){var r=e.emitNode;var n=r&&r.tokenSourceMapRanges;return n&&n[t]}e.getTokenSourceMapRange=getTokenSourceMapRange;function setTokenSourceMapRange(e,t,r){var n=getOrCreateEmitNode(e);var i=n.tokenSourceMapRanges||(n.tokenSourceMapRanges=[]);i[t]=r;return e}e.setTokenSourceMapRange=setTokenSourceMapRange;function getStartsOnNewLine(e){var t=e.emitNode;return t&&t.startsOnNewLine}e.getStartsOnNewLine=getStartsOnNewLine;function setStartsOnNewLine(e,t){getOrCreateEmitNode(e).startsOnNewLine=t;return e}e.setStartsOnNewLine=setStartsOnNewLine;function getCommentRange(e){var t=e.emitNode;return t&&t.commentRange||e}e.getCommentRange=getCommentRange;function setCommentRange(e,t){getOrCreateEmitNode(e).commentRange=t;return e}e.setCommentRange=setCommentRange;function getSyntheticLeadingComments(e){var t=e.emitNode;return t&&t.leadingComments}e.getSyntheticLeadingComments=getSyntheticLeadingComments;function setSyntheticLeadingComments(e,t){getOrCreateEmitNode(e).leadingComments=t;return e}e.setSyntheticLeadingComments=setSyntheticLeadingComments;function addSyntheticLeadingComment(t,r,n,i){return setSyntheticLeadingComments(t,e.append(getSyntheticLeadingComments(t),{kind:r,pos:-1,end:-1,hasTrailingNewLine:i,text:n}))}e.addSyntheticLeadingComment=addSyntheticLeadingComment;function getSyntheticTrailingComments(e){var t=e.emitNode;return t&&t.trailingComments}e.getSyntheticTrailingComments=getSyntheticTrailingComments;function setSyntheticTrailingComments(e,t){getOrCreateEmitNode(e).trailingComments=t;return e}e.setSyntheticTrailingComments=setSyntheticTrailingComments;function addSyntheticTrailingComment(t,r,n,i){return setSyntheticTrailingComments(t,e.append(getSyntheticTrailingComments(t),{kind:r,pos:-1,end:-1,hasTrailingNewLine:i,text:n}))}e.addSyntheticTrailingComment=addSyntheticTrailingComment;function moveSyntheticComments(e,t){setSyntheticLeadingComments(e,getSyntheticLeadingComments(t));setSyntheticTrailingComments(e,getSyntheticTrailingComments(t));var r=getOrCreateEmitNode(t);r.leadingComments=undefined;r.trailingComments=undefined;return e}e.moveSyntheticComments=moveSyntheticComments;function getConstantValue(e){var t=e.emitNode;return t&&t.constantValue}e.getConstantValue=getConstantValue;function setConstantValue(e,t){var r=getOrCreateEmitNode(e);r.constantValue=t;return e}e.setConstantValue=setConstantValue;function addEmitHelper(t,r){var n=getOrCreateEmitNode(t);n.helpers=e.append(n.helpers,r);return t}e.addEmitHelper=addEmitHelper;function addEmitHelpers(t,r){if(e.some(r)){var n=getOrCreateEmitNode(t);for(var i=0,a=r;i<a.length;i++){var o=a[i];n.helpers=e.appendIfUnique(n.helpers,o)}}return t}e.addEmitHelpers=addEmitHelpers;function removeEmitHelper(t,r){var n=t.emitNode;if(n){var i=n.helpers;if(i){return e.orderedRemoveItem(i,r)}}return false}e.removeEmitHelper=removeEmitHelper;function getEmitHelpers(e){var t=e.emitNode;return t&&t.helpers}e.getEmitHelpers=getEmitHelpers;function moveEmitHelpers(t,r,n){var i=t.emitNode;var a=i&&i.helpers;if(!e.some(a))return;var o=getOrCreateEmitNode(r);var s=0;for(var c=0;c<a.length;c++){var u=a[c];if(n(u)){s++;o.helpers=e.appendIfUnique(o.helpers,u)}else if(s>0){a[c-s]=u}}if(s>0){a.length-=s}}e.moveEmitHelpers=moveEmitHelpers;function compareEmitHelpers(t,r){if(t===r)return 0;if(t.priority===r.priority)return 0;if(t.priority===undefined)return 1;if(r.priority===undefined)return-1;return e.compareValues(t.priority,r.priority)}e.compareEmitHelpers=compareEmitHelpers;function setOriginalNode(e,t){e.original=t;if(t){var r=t.emitNode;if(r)e.emitNode=mergeEmitNode(r,e.emitNode)}return e}e.setOriginalNode=setOriginalNode;function mergeEmitNode(t,r){var n=t.flags,i=t.leadingComments,a=t.trailingComments,o=t.commentRange,s=t.sourceMapRange,c=t.tokenSourceMapRanges,u=t.constantValue,l=t.helpers,f=t.startsOnNewLine;if(!r)r={};if(i)r.leadingComments=e.addRange(i.slice(),r.leadingComments);if(a)r.trailingComments=e.addRange(a.slice(),r.trailingComments);if(n)r.flags=n;if(o)r.commentRange=o;if(s)r.sourceMapRange=s;if(c)r.tokenSourceMapRanges=mergeTokenSourceMapRanges(c,r.tokenSourceMapRanges);if(u!==undefined)r.constantValue=u;if(l)r.helpers=e.addRange(r.helpers,l);if(f!==undefined)r.startsOnNewLine=f;return r}function mergeTokenSourceMapRanges(e,t){if(!t)t=[];for(var r in e){t[r]=e[r]}return t}})(s||(s={}));(function(e){e.nullTransformationContext={enableEmitNotification:e.noop,enableSubstitution:e.noop,endLexicalEnvironment:function(){return undefined},getCompilerOptions:e.notImplemented,getEmitHost:e.notImplemented,getEmitResolver:e.notImplemented,hoistFunctionDeclaration:e.noop,hoistVariableDeclaration:e.noop,isEmitNotificationEnabled:e.notImplemented,isSubstitutionEnabled:e.notImplemented,onEmitNode:e.noop,onSubstituteNode:e.notImplemented,readEmitHelpers:e.notImplemented,requestEmitHelper:e.noop,resumeLexicalEnvironment:e.noop,startLexicalEnvironment:e.noop,suspendLexicalEnvironment:e.noop,addDiagnostic:e.noop};function createTypeCheck(t,r){return r==="undefined"?e.createStrictEquality(t,e.createVoidZero()):e.createStrictEquality(e.createTypeOf(t),e.createLiteral(r))}e.createTypeCheck=createTypeCheck;function createMemberAccessForPropertyName(t,r,n){if(e.isComputedPropertyName(r)){return e.setTextRange(e.createElementAccess(t,r.expression),n)}else{var i=e.setTextRange(e.isIdentifier(r)?e.createPropertyAccess(t,r):e.createElementAccess(t,r),r);e.getOrCreateEmitNode(i).flags|=64;return i}}e.createMemberAccessForPropertyName=createMemberAccessForPropertyName;function createFunctionCall(t,r,n,i){return e.setTextRange(e.createCall(e.createPropertyAccess(t,"call"),undefined,[r].concat(n)),i)}e.createFunctionCall=createFunctionCall;function createFunctionApply(t,r,n,i){return e.setTextRange(e.createCall(e.createPropertyAccess(t,"apply"),undefined,[r,n]),i)}e.createFunctionApply=createFunctionApply;function createArraySlice(t,r){var n=[];if(r!==undefined){n.push(typeof r==="number"?e.createLiteral(r):r)}return e.createCall(e.createPropertyAccess(t,"slice"),undefined,n)}e.createArraySlice=createArraySlice;function createArrayConcat(t,r){return e.createCall(e.createPropertyAccess(t,"concat"),undefined,r)}e.createArrayConcat=createArrayConcat;function createMathPow(t,r,n){return e.setTextRange(e.createCall(e.createPropertyAccess(e.createIdentifier("Math"),"pow"),undefined,[t,r]),n)}e.createMathPow=createMathPow;function createReactNamespace(t,r){var n=e.createIdentifier(t||"React");n.flags&=~8;n.parent=e.getParseTreeNode(r);return n}function createJsxFactoryExpressionFromEntityName(t,r){if(e.isQualifiedName(t)){var n=createJsxFactoryExpressionFromEntityName(t.left,r);var i=e.createIdentifier(e.idText(t.right));i.escapedText=t.right.escapedText;return e.createPropertyAccess(n,i)}else{return createReactNamespace(e.idText(t),r)}}function createJsxFactoryExpression(t,r,n){return t?createJsxFactoryExpressionFromEntityName(t,n):e.createPropertyAccess(createReactNamespace(r,n),"createElement")}function createExpressionForJsxElement(t,r,n,i,a,o,s){var c=[n];if(i){c.push(i)}if(a&&a.length>0){if(!i){c.push(e.createNull())}if(a.length>1){for(var u=0,l=a;u<l.length;u++){var f=l[u];startOnNewLine(f);c.push(f)}}else{c.push(a[0])}}return e.setTextRange(e.createCall(createJsxFactoryExpression(t,r,o),undefined,c),s)}e.createExpressionForJsxElement=createExpressionForJsxElement;function createExpressionForJsxFragment(t,r,n,i,a){var o=e.createPropertyAccess(createReactNamespace(r,i),"Fragment");var s=[o];s.push(e.createNull());if(n&&n.length>0){if(n.length>1){for(var c=0,u=n;c<u.length;c++){var l=u[c];startOnNewLine(l);s.push(l)}}else{s.push(n[0])}}return e.setTextRange(e.createCall(createJsxFactoryExpression(t,r,i),undefined,s),a)}e.createExpressionForJsxFragment=createExpressionForJsxFragment;function getHelperName(t){return e.setEmitFlags(e.createIdentifier(t),4096|2)}e.getHelperName=getHelperName;var t={name:"typescript:values",scoped:false,text:'\n var __values = (this && this.__values) || function (o) {\n var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;\n if (m) return m.call(o);\n return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n };'};function createValuesHelper(r,n,i){r.requestEmitHelper(t);return e.setTextRange(e.createCall(getHelperName("__values"),undefined,[n]),i)}e.createValuesHelper=createValuesHelper;var r={name:"typescript:read",scoped:false,text:'\n var __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === "function" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i["return"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n };'};function createReadHelper(t,n,i,a){t.requestEmitHelper(r);return e.setTextRange(e.createCall(getHelperName("__read"),undefined,i!==undefined?[n,e.createLiteral(i)]:[n]),a)}e.createReadHelper=createReadHelper;var n={name:"typescript:spread",scoped:false,text:"\n var __spread = (this && this.__spread) || function () {\n for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i]));\n return ar;\n };"};function createSpreadHelper(t,i,a){t.requestEmitHelper(r);t.requestEmitHelper(n);return e.setTextRange(e.createCall(getHelperName("__spread"),undefined,i),a)}e.createSpreadHelper=createSpreadHelper;function createForOfBindingStatement(t,r){if(e.isVariableDeclarationList(t)){var n=e.first(t.declarations);var i=e.updateVariableDeclaration(n,n.name,undefined,r);return e.setTextRange(e.createVariableStatement(undefined,e.updateVariableDeclarationList(t,[i])),t)}else{var a=e.setTextRange(e.createAssignment(t,r),t);return e.setTextRange(e.createStatement(a),t)}}e.createForOfBindingStatement=createForOfBindingStatement;function insertLeadingStatement(t,r){if(e.isBlock(t)){return e.updateBlock(t,e.setTextRange(e.createNodeArray([r].concat(t.statements)),t.statements))}else{return e.createBlock(e.createNodeArray([t,r]),true)}}e.insertLeadingStatement=insertLeadingStatement;function restoreEnclosingLabel(t,r,n){if(!r){return t}var i=e.updateLabel(r,r.label,r.statement.kind===233?restoreEnclosingLabel(t,r.statement):t);if(n){n(r)}return i}e.restoreEnclosingLabel=restoreEnclosingLabel;function shouldBeCapturedInTempVariable(t,r){var n=e.skipParentheses(t);switch(n.kind){case 72:return r;case 100:case 8:case 9:case 10:return false;case 187:var i=n.elements;if(i.length===0){return false}return true;case 188:return n.properties.length>0;default:return true}}function createCallBinding(t,r,n,i){if(i===void 0){i=false}var a=skipOuterExpressions(t,7);var o;var s;if(e.isSuperProperty(a)){o=e.createThis();s=a}else if(a.kind===98){o=e.createThis();s=n<2?e.setTextRange(e.createIdentifier("_super"),a):a}else if(e.getEmitFlags(a)&4096){o=e.createVoidZero();s=parenthesizeForAccess(a)}else{switch(a.kind){case 189:{if(shouldBeCapturedInTempVariable(a.expression,i)){o=e.createTempVariable(r);s=e.createPropertyAccess(e.setTextRange(e.createAssignment(o,a.expression),a.expression),a.name);e.setTextRange(s,a)}else{o=a.expression;s=a}break}case 190:{if(shouldBeCapturedInTempVariable(a.expression,i)){o=e.createTempVariable(r);s=e.createElementAccess(e.setTextRange(e.createAssignment(o,a.expression),a.expression),a.argumentExpression);e.setTextRange(s,a)}else{o=a.expression;s=a}break}default:{o=e.createVoidZero();s=parenthesizeForAccess(t);break}}}return{target:s,thisArg:o}}e.createCallBinding=createCallBinding;function inlineExpressions(t){return t.length>10?e.createCommaList(t):e.reduceLeft(t,e.createComma)}e.inlineExpressions=inlineExpressions;function createExpressionFromEntityName(t){if(e.isQualifiedName(t)){var r=createExpressionFromEntityName(t.left);var n=e.getMutableClone(t.right);return e.setTextRange(e.createPropertyAccess(r,n),t)}else{return e.getMutableClone(t)}}e.createExpressionFromEntityName=createExpressionFromEntityName;function createExpressionForPropertyName(t){if(e.isIdentifier(t)){return e.createLiteral(t)}else if(e.isComputedPropertyName(t)){return e.getMutableClone(t.expression)}else{return e.getMutableClone(t)}}e.createExpressionForPropertyName=createExpressionForPropertyName;function createExpressionForObjectLiteralElementLike(e,t,r){switch(t.kind){case 158:case 159:return createExpressionForAccessorDeclaration(e.properties,t,r,!!e.multiLine);case 275:return createExpressionForPropertyAssignment(t,r);case 276:return createExpressionForShorthandPropertyAssignment(t,r);case 156:return createExpressionForMethodDeclaration(t,r)}}e.createExpressionForObjectLiteralElementLike=createExpressionForObjectLiteralElementLike;function createExpressionForAccessorDeclaration(t,r,n,i){var a=e.getAllAccessorDeclarations(t,r),o=a.firstAccessor,s=a.getAccessor,c=a.setAccessor;if(r===o){var u=[];if(s){var l=e.createFunctionExpression(s.modifiers,undefined,undefined,undefined,s.parameters,undefined,s.body);e.setTextRange(l,s);e.setOriginalNode(l,s);var f=e.createPropertyAssignment("get",l);u.push(f)}if(c){var d=e.createFunctionExpression(c.modifiers,undefined,undefined,undefined,c.parameters,undefined,c.body);e.setTextRange(d,c);e.setOriginalNode(d,c);var p=e.createPropertyAssignment("set",d);u.push(p)}u.push(e.createPropertyAssignment("enumerable",e.createTrue()));u.push(e.createPropertyAssignment("configurable",e.createTrue()));var g=e.setTextRange(e.createCall(e.createPropertyAccess(e.createIdentifier("Object"),"defineProperty"),undefined,[n,createExpressionForPropertyName(r.name),e.createObjectLiteral(u,i)]),o);return e.aggregateTransformFlags(g)}return undefined}function createExpressionForPropertyAssignment(t,r){return e.aggregateTransformFlags(e.setOriginalNode(e.setTextRange(e.createAssignment(createMemberAccessForPropertyName(r,t.name,t.name),t.initializer),t),t))}function createExpressionForShorthandPropertyAssignment(t,r){return e.aggregateTransformFlags(e.setOriginalNode(e.setTextRange(e.createAssignment(createMemberAccessForPropertyName(r,t.name,t.name),e.getSynthesizedClone(t.name)),t),t))}function createExpressionForMethodDeclaration(t,r){return e.aggregateTransformFlags(e.setOriginalNode(e.setTextRange(e.createAssignment(createMemberAccessForPropertyName(r,t.name,t.name),e.setOriginalNode(e.setTextRange(e.createFunctionExpression(t.modifiers,t.asteriskToken,undefined,undefined,t.parameters,undefined,t.body),t),t)),t),t))}function getInternalName(e,t,r){return getName(e,t,r,16384|32768)}e.getInternalName=getInternalName;function isInternalName(t){return(e.getEmitFlags(t)&32768)!==0}e.isInternalName=isInternalName;function getLocalName(e,t,r){return getName(e,t,r,16384)}e.getLocalName=getLocalName;function isLocalName(t){return(e.getEmitFlags(t)&16384)!==0}e.isLocalName=isLocalName;function getExportName(e,t,r){return getName(e,t,r,8192)}e.getExportName=getExportName;function isExportName(t){return(e.getEmitFlags(t)&8192)!==0}e.isExportName=isExportName;function getDeclarationName(e,t,r){return getName(e,t,r)}e.getDeclarationName=getDeclarationName;function getName(t,r,n,i){if(i===void 0){i=0}var a=e.getNameOfDeclaration(t);if(a&&e.isIdentifier(a)&&!e.isGeneratedIdentifier(a)){var o=e.getMutableClone(a);i|=e.getEmitFlags(a);if(!n)i|=48;if(!r)i|=1536;if(i)e.setEmitFlags(o,i);return o}return e.getGeneratedNameForNode(t)}function getExternalModuleOrNamespaceExportName(t,r,n,i){if(t&&e.hasModifier(r,1)){return getNamespaceMemberName(t,getName(r),n,i)}return getExportName(r,n,i)}e.getExternalModuleOrNamespaceExportName=getExternalModuleOrNamespaceExportName;function getNamespaceMemberName(t,r,n,i){var a=e.createPropertyAccess(t,e.nodeIsSynthesized(r)?r:e.getSynthesizedClone(r));e.setTextRange(a,r);var o=0;if(!i)o|=48;if(!n)o|=1536;if(o)e.setEmitFlags(a,o);return a}e.getNamespaceMemberName=getNamespaceMemberName;function convertToFunctionBody(t,r){return e.isBlock(t)?t:e.setTextRange(e.createBlock([e.setTextRange(e.createReturn(t),t)],r),t)}e.convertToFunctionBody=convertToFunctionBody;function convertFunctionDeclarationToExpression(t){if(!t.body)return e.Debug.fail();var r=e.createFunctionExpression(t.modifiers,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);e.setOriginalNode(r,t);e.setTextRange(r,t);if(e.getStartsOnNewLine(t)){e.setStartsOnNewLine(r,true)}e.aggregateTransformFlags(r);return r}e.convertFunctionDeclarationToExpression=convertFunctionDeclarationToExpression;function isUseStrictPrologue(t){return e.isStringLiteral(t.expression)&&t.expression.text==="use strict"}function addPrologue(e,t,r,n){var i=addStandardPrologue(e,t,r);return addCustomPrologue(e,t,i,n)}e.addPrologue=addPrologue;function addStandardPrologue(t,r,n){e.Debug.assert(t.length===0,"Prologue directives should be at the first statement in the target statements array");var i=false;var a=0;var o=r.length;while(a<o){var s=r[a];if(e.isPrologueDirective(s)){if(isUseStrictPrologue(s)){i=true}t.push(s)}else{break}a++}if(n&&!i){t.push(startOnNewLine(e.createStatement(e.createLiteral("use strict"))))}return a}e.addStandardPrologue=addStandardPrologue;function addCustomPrologue(t,r,n,i){var a=r.length;while(n!==undefined&&n<a){var o=r[n];if(e.getEmitFlags(o)&1048576){e.append(t,i?e.visitNode(o,i,e.isStatement):o)}else{break}n++}return n}e.addCustomPrologue=addCustomPrologue;function findUseStrictPrologue(t){for(var r=0,n=t;r<n.length;r++){var i=n[r];if(e.isPrologueDirective(i)){if(isUseStrictPrologue(i)){return i}}else{break}}return undefined}e.findUseStrictPrologue=findUseStrictPrologue;function startsWithUseStrict(t){var r=e.firstOrUndefined(t);return r!==undefined&&e.isPrologueDirective(r)&&isUseStrictPrologue(r)}e.startsWithUseStrict=startsWithUseStrict;function ensureUseStrict(t){var r=findUseStrictPrologue(t);if(!r){return e.setTextRange(e.createNodeArray([startOnNewLine(e.createStatement(e.createLiteral("use strict")))].concat(t)),t)}return t}e.ensureUseStrict=ensureUseStrict;function parenthesizeBinaryOperand(t,r,n,i){var a=e.skipPartiallyEmittedExpressions(r);if(a.kind===195){return r}return binaryOperandNeedsParentheses(t,r,n,i)?e.createParen(r):r}e.parenthesizeBinaryOperand=parenthesizeBinaryOperand;function binaryOperandNeedsParentheses(t,r,n,i){var a=e.getOperatorPrecedence(204,t);var o=e.getOperatorAssociativity(204,t);var s=e.skipPartiallyEmittedExpressions(r);if(!n&&r.kind===197&&a>4){return true}var c=e.getExpressionPrecedence(s);switch(e.compareValues(c,a)){case-1:if(!n&&o===1&&r.kind===207){return false}return true;case 1:return false;case 0:if(n){return o===1}else{if(e.isBinaryExpression(s)&&s.operatorToken.kind===t){if(operatorHasAssociativeProperty(t)){return false}if(t===38){var u=i?getLiteralKindOfBinaryPlusOperand(i):0;if(e.isLiteralKind(u)&&u===getLiteralKindOfBinaryPlusOperand(s)){return false}}}var l=e.getExpressionAssociativity(s);return l===0}}}function operatorHasAssociativeProperty(e){return e===40||e===50||e===49||e===51}function getLiteralKindOfBinaryPlusOperand(t){t=e.skipPartiallyEmittedExpressions(t);if(e.isLiteralKind(t.kind)){return t.kind}if(t.kind===204&&t.operatorToken.kind===38){if(t.cachedLiteralKind!==undefined){return t.cachedLiteralKind}var r=getLiteralKindOfBinaryPlusOperand(t.left);var n=e.isLiteralKind(r)&&r===getLiteralKindOfBinaryPlusOperand(t.right)?r:0;t.cachedLiteralKind=n;return n}return 0}function parenthesizeForConditionalHead(t){var r=e.getOperatorPrecedence(205,56);var n=e.skipPartiallyEmittedExpressions(t);var i=e.getExpressionPrecedence(n);if(e.compareValues(i,r)===-1){return e.createParen(t)}return t}e.parenthesizeForConditionalHead=parenthesizeForConditionalHead;function parenthesizeSubexpressionOfConditionalExpression(t){var r=e.skipPartiallyEmittedExpressions(t);return isCommaSequence(r)?e.createParen(t):t}e.parenthesizeSubexpressionOfConditionalExpression=parenthesizeSubexpressionOfConditionalExpression;function parenthesizeDefaultExpression(t){var r=e.skipPartiallyEmittedExpressions(t);var n=isCommaSequence(r);if(!n){switch(getLeftmostExpression(r,false).kind){case 209:case 196:n=true}}return n?e.createParen(t):t}e.parenthesizeDefaultExpression=parenthesizeDefaultExpression;function parenthesizeForNew(t){var r=getLeftmostExpression(t,true);switch(r.kind){case 191:return e.createParen(t);case 192:return!r.arguments?e.createParen(t):t}return parenthesizeForAccess(t)}e.parenthesizeForNew=parenthesizeForNew;function parenthesizeForAccess(t){var r=e.skipPartiallyEmittedExpressions(t);if(e.isLeftHandSideExpression(r)&&(r.kind!==192||r.arguments)){return t}return e.setTextRange(e.createParen(t),t)}e.parenthesizeForAccess=parenthesizeForAccess;function parenthesizePostfixOperand(t){return e.isLeftHandSideExpression(t)?t:e.setTextRange(e.createParen(t),t)}e.parenthesizePostfixOperand=parenthesizePostfixOperand;function parenthesizePrefixOperand(t){return e.isUnaryExpression(t)?t:e.setTextRange(e.createParen(t),t)}e.parenthesizePrefixOperand=parenthesizePrefixOperand;function parenthesizeListElements(t){var r;for(var n=0;n<t.length;n++){var i=parenthesizeExpressionForList(t[n]);if(r!==undefined||i!==t[n]){if(r===undefined){r=t.slice(0,n)}r.push(i)}}if(r!==undefined){return e.setTextRange(e.createNodeArray(r,t.hasTrailingComma),t)}return t}e.parenthesizeListElements=parenthesizeListElements;function parenthesizeExpressionForList(t){var r=e.skipPartiallyEmittedExpressions(t);var n=e.getExpressionPrecedence(r);var i=e.getOperatorPrecedence(204,27);return n>i?t:e.setTextRange(e.createParen(t),t)}e.parenthesizeExpressionForList=parenthesizeExpressionForList;function parenthesizeExpressionForExpressionStatement(t){var r=e.skipPartiallyEmittedExpressions(t);if(e.isCallExpression(r)){var n=r.expression;var i=e.skipPartiallyEmittedExpressions(n).kind;if(i===196||i===197){var a=e.getMutableClone(r);a.expression=e.setTextRange(e.createParen(n),n);return recreateOuterExpressions(t,a,4)}}var o=getLeftmostExpression(r,false).kind;if(o===188||o===196){return e.setTextRange(e.createParen(t),t)}return t}e.parenthesizeExpressionForExpressionStatement=parenthesizeExpressionForExpressionStatement;function parenthesizeConditionalTypeMember(t){return t.kind===175?e.createParenthesizedType(t):t}e.parenthesizeConditionalTypeMember=parenthesizeConditionalTypeMember;function parenthesizeElementTypeMember(t){switch(t.kind){case 173:case 174:case 165:case 166:return e.createParenthesizedType(t)}return parenthesizeConditionalTypeMember(t)}e.parenthesizeElementTypeMember=parenthesizeElementTypeMember;function parenthesizeArrayTypeMember(t){switch(t.kind){case 167:case 179:case 176:return e.createParenthesizedType(t)}return parenthesizeElementTypeMember(t)}e.parenthesizeArrayTypeMember=parenthesizeArrayTypeMember;function parenthesizeElementTypeMembers(t){return e.createNodeArray(e.sameMap(t,parenthesizeElementTypeMember))}e.parenthesizeElementTypeMembers=parenthesizeElementTypeMembers;function parenthesizeTypeParameters(t){if(e.some(t)){var r=[];for(var n=0;n<t.length;++n){var i=t[n];r.push(n===0&&e.isFunctionOrConstructorTypeNode(i)&&i.typeParameters?e.createParenthesizedType(i):i)}return e.createNodeArray(r)}}e.parenthesizeTypeParameters=parenthesizeTypeParameters;function getLeftmostExpression(e,t){while(true){switch(e.kind){case 203:e=e.operand;continue;case 204:e=e.left;continue;case 205:e=e.condition;continue;case 193:e=e.tag;continue;case 191:if(t){return e}case 212:case 190:case 189:case 213:case 308:e=e.expression;continue}return e}}function parenthesizeConciseBody(t){if(!e.isBlock(t)&&(isCommaSequence(t)||getLeftmostExpression(t,false).kind===188)){return e.setTextRange(e.createParen(t),t)}return t}e.parenthesizeConciseBody=parenthesizeConciseBody;function isCommaSequence(e){return e.kind===204&&e.operatorToken.kind===27||e.kind===309}e.isCommaSequence=isCommaSequence;var i;(function(e){e[e["Parentheses"]=1]="Parentheses";e[e["Assertions"]=2]="Assertions";e[e["PartiallyEmittedExpressions"]=4]="PartiallyEmittedExpressions";e[e["All"]=7]="All"})(i=e.OuterExpressionKinds||(e.OuterExpressionKinds={}));function isOuterExpression(e,t){if(t===void 0){t=7}switch(e.kind){case 195:return(t&1)!==0;case 194:case 212:case 213:return(t&2)!==0;case 308:return(t&4)!==0}return false}e.isOuterExpression=isOuterExpression;function skipOuterExpressions(t,r){if(r===void 0){r=7}var n;do{n=t;if(r&1){t=e.skipParentheses(t)}if(r&2){t=skipAssertions(t)}if(r&4){t=e.skipPartiallyEmittedExpressions(t)}}while(n!==t);return t}e.skipOuterExpressions=skipOuterExpressions;function skipAssertions(t){while(e.isAssertionExpression(t)||t.kind===213){t=t.expression}return t}e.skipAssertions=skipAssertions;function updateOuterExpression(t,r){switch(t.kind){case 195:return e.updateParen(t,r);case 194:return e.updateTypeAssertion(t,t.type,r);case 212:return e.updateAsExpression(t,r,t.type);case 213:return e.updateNonNullExpression(t,r);case 308:return e.updatePartiallyEmittedExpression(t,r)}}function isIgnorableParen(t){return t.kind===195&&e.nodeIsSynthesized(t)&&e.nodeIsSynthesized(e.getSourceMapRange(t))&&e.nodeIsSynthesized(e.getCommentRange(t))&&!e.some(e.getSyntheticLeadingComments(t))&&!e.some(e.getSyntheticTrailingComments(t))}function recreateOuterExpressions(e,t,r){if(r===void 0){r=7}if(e&&isOuterExpression(e,r)&&!isIgnorableParen(e)){return updateOuterExpression(e,recreateOuterExpressions(e.expression,t))}return t}e.recreateOuterExpressions=recreateOuterExpressions;function startOnNewLine(t){return e.setStartsOnNewLine(t,true)}e.startOnNewLine=startOnNewLine;function getExternalHelpersModuleName(t){var r=e.getOriginalNode(t,e.isSourceFile);var n=r&&r.emitNode;return n&&n.externalHelpersModuleName}e.getExternalHelpersModuleName=getExternalHelpersModuleName;function getOrCreateExternalHelpersModuleNameIfNeeded(t,r,n,i){if(r.importHelpers&&e.isEffectiveExternalModule(t,r)){var a=getExternalHelpersModuleName(t);if(a){return a}var o=e.getEmitModuleKind(r);var s=(n||r.esModuleInterop&&i)&&o!==e.ModuleKind.System&&o!==e.ModuleKind.ES2015&&o!==e.ModuleKind.ESNext;if(!s){var c=e.getEmitHelpers(t);if(c){for(var u=0,l=c;u<l.length;u++){var f=l[u];if(!f.scoped){s=true;break}}}}if(s){var d=e.getOriginalNode(t,e.isSourceFile);var p=e.getOrCreateEmitNode(d);return p.externalHelpersModuleName||(p.externalHelpersModuleName=e.createUniqueName(e.externalHelpersModuleNameText))}}}e.getOrCreateExternalHelpersModuleNameIfNeeded=getOrCreateExternalHelpersModuleNameIfNeeded;function getLocalNameForExternalImport(t,r){var n=e.getNamespaceDeclarationNode(t);if(n&&!e.isDefaultImport(t)){var i=n.name;return e.isGeneratedIdentifier(i)?i:e.createIdentifier(e.getSourceTextOfNodeFromSourceFile(r,i)||e.idText(i))}if(t.kind===249&&t.importClause){return e.getGeneratedNameForNode(t)}if(t.kind===255&&t.moduleSpecifier){return e.getGeneratedNameForNode(t)}return undefined}e.getLocalNameForExternalImport=getLocalNameForExternalImport;function getExternalModuleNameLiteral(t,r,n,i,a){var o=e.getExternalModuleName(t);if(o.kind===10){return tryGetModuleNameFromDeclaration(t,n,i,a)||tryRenameExternalModule(o,r)||e.getSynthesizedClone(o)}return undefined}e.getExternalModuleNameLiteral=getExternalModuleNameLiteral;function tryRenameExternalModule(t,r){var n=r.renamedDependencies&&r.renamedDependencies.get(t.text);return n&&e.createLiteral(n)}function tryGetModuleNameFromFile(t,r,n){if(!t){return undefined}if(t.moduleName){return e.createLiteral(t.moduleName)}if(!t.isDeclarationFile&&(n.out||n.outFile)){return e.createLiteral(e.getExternalModuleNameFromPath(r,t.fileName))}return undefined}e.tryGetModuleNameFromFile=tryGetModuleNameFromFile;function tryGetModuleNameFromDeclaration(e,t,r,n){return tryGetModuleNameFromFile(r.getExternalModuleFileFromDeclaration(e),t,n)}function getInitializerOfBindingOrAssignmentElement(t){if(e.isDeclarationBindingElement(t)){return t.initializer}if(e.isPropertyAssignment(t)){var r=t.initializer;return e.isAssignmentExpression(r,true)?r.right:undefined}if(e.isShorthandPropertyAssignment(t)){return t.objectAssignmentInitializer}if(e.isAssignmentExpression(t,true)){return t.right}if(e.isSpreadElement(t)){return getInitializerOfBindingOrAssignmentElement(t.expression)}}e.getInitializerOfBindingOrAssignmentElement=getInitializerOfBindingOrAssignmentElement;function getTargetOfBindingOrAssignmentElement(t){if(e.isDeclarationBindingElement(t)){return t.name}if(e.isObjectLiteralElementLike(t)){switch(t.kind){case 275:return getTargetOfBindingOrAssignmentElement(t.initializer);case 276:return t.name;case 277:return getTargetOfBindingOrAssignmentElement(t.expression)}return undefined}if(e.isAssignmentExpression(t,true)){return getTargetOfBindingOrAssignmentElement(t.left)}if(e.isSpreadElement(t)){return getTargetOfBindingOrAssignmentElement(t.expression)}return t}e.getTargetOfBindingOrAssignmentElement=getTargetOfBindingOrAssignmentElement;function getRestIndicatorOfBindingOrAssignmentElement(e){switch(e.kind){case 151:case 186:return e.dotDotDotToken;case 208:case 277:return e}return undefined}e.getRestIndicatorOfBindingOrAssignmentElement=getRestIndicatorOfBindingOrAssignmentElement;function getPropertyNameOfBindingOrAssignmentElement(t){switch(t.kind){case 186:if(t.propertyName){var r=t.propertyName;return e.isComputedPropertyName(r)&&isStringOrNumericLiteral(r.expression)?r.expression:r}break;case 275:if(t.name){var r=t.name;return e.isComputedPropertyName(r)&&isStringOrNumericLiteral(r.expression)?r.expression:r}break;case 277:return t.name}var n=getTargetOfBindingOrAssignmentElement(t);if(n&&e.isPropertyName(n)){return e.isComputedPropertyName(n)&&isStringOrNumericLiteral(n.expression)?n.expression:n}e.Debug.fail("Invalid property name for binding element.")}e.getPropertyNameOfBindingOrAssignmentElement=getPropertyNameOfBindingOrAssignmentElement;function isStringOrNumericLiteral(e){var t=e.kind;return t===10||t===8}function getElementsOfBindingOrAssignmentPattern(e){switch(e.kind){case 184:case 185:case 187:return e.elements;case 188:return e.properties}}e.getElementsOfBindingOrAssignmentPattern=getElementsOfBindingOrAssignmentPattern;function convertToArrayAssignmentElement(t){if(e.isBindingElement(t)){if(t.dotDotDotToken){e.Debug.assertNode(t.name,e.isIdentifier);return e.setOriginalNode(e.setTextRange(e.createSpread(t.name),t),t)}var r=convertToAssignmentElementTarget(t.name);return t.initializer?e.setOriginalNode(e.setTextRange(e.createAssignment(r,t.initializer),t),t):r}e.Debug.assertNode(t,e.isExpression);return t}e.convertToArrayAssignmentElement=convertToArrayAssignmentElement;function convertToObjectAssignmentElement(t){if(e.isBindingElement(t)){if(t.dotDotDotToken){e.Debug.assertNode(t.name,e.isIdentifier);return e.setOriginalNode(e.setTextRange(e.createSpreadAssignment(t.name),t),t)}if(t.propertyName){var r=convertToAssignmentElementTarget(t.name);return e.setOriginalNode(e.setTextRange(e.createPropertyAssignment(t.propertyName,t.initializer?e.createAssignment(r,t.initializer):r),t),t)}e.Debug.assertNode(t.name,e.isIdentifier);return e.setOriginalNode(e.setTextRange(e.createShorthandPropertyAssignment(t.name,t.initializer),t),t)}e.Debug.assertNode(t,e.isObjectLiteralElementLike);return t}e.convertToObjectAssignmentElement=convertToObjectAssignmentElement;function convertToAssignmentPattern(e){switch(e.kind){case 185:case 187:return convertToArrayAssignmentPattern(e);case 184:case 188:return convertToObjectAssignmentPattern(e)}}e.convertToAssignmentPattern=convertToAssignmentPattern;function convertToObjectAssignmentPattern(t){if(e.isObjectBindingPattern(t)){return e.setOriginalNode(e.setTextRange(e.createObjectLiteral(e.map(t.elements,convertToObjectAssignmentElement)),t),t)}e.Debug.assertNode(t,e.isObjectLiteralExpression);return t}e.convertToObjectAssignmentPattern=convertToObjectAssignmentPattern;function convertToArrayAssignmentPattern(t){if(e.isArrayBindingPattern(t)){return e.setOriginalNode(e.setTextRange(e.createArrayLiteral(e.map(t.elements,convertToArrayAssignmentElement)),t),t)}e.Debug.assertNode(t,e.isArrayLiteralExpression);return t}e.convertToArrayAssignmentPattern=convertToArrayAssignmentPattern;function convertToAssignmentElementTarget(t){if(e.isBindingPattern(t)){return convertToAssignmentPattern(t)}e.Debug.assertNode(t,e.isExpression);return t}e.convertToAssignmentElementTarget=convertToAssignmentElementTarget})(s||(s={}));var s;(function(e){var t=e.or(e.isTypeNode,e.isTypeParameterDeclaration);function visitNode(t,r,n,i){if(t===undefined||r===undefined){return t}e.aggregateTransformFlags(t);var a=r(t);if(a===t){return t}var o;if(a===undefined){return undefined}else if(e.isArray(a)){o=(i||extractSingleNode)(a)}else{o=a}e.Debug.assertNode(o,n);e.aggregateTransformFlags(o);return o}e.visitNode=visitNode;function visitNodes(t,r,n,i,a){if(t===undefined||r===undefined){return t}var o;var s=t.length;if(i===undefined||i<0){i=0}if(a===undefined||a>s-i){a=s-i}if(i>0||a<s){o=e.createNodeArray([],t.hasTrailingComma&&i+a===s)}for(var c=0;c<a;c++){var u=t[c+i];e.aggregateTransformFlags(u);var l=u!==undefined?r(u):undefined;if(o!==undefined||l===undefined||l!==u){if(o===undefined){o=e.createNodeArray(t.slice(0,c),t.hasTrailingComma);e.setTextRange(o,t)}if(l){if(e.isArray(l)){for(var f=0,d=l;f<d.length;f++){var p=d[f];e.Debug.assertNode(p,n);e.aggregateTransformFlags(p);o.push(p)}}else{e.Debug.assertNode(l,n);e.aggregateTransformFlags(l);o.push(l)}}}}return o||t}e.visitNodes=visitNodes;function visitLexicalEnvironment(t,r,n,i,a){n.startLexicalEnvironment();t=visitNodes(t,r,e.isStatement,i);if(a&&!e.startsWithUseStrict(t)){t=e.setTextRange(e.createNodeArray([e.createExpressionStatement(e.createLiteral("use strict"))].concat(t)),t)}var o=n.endLexicalEnvironment();return e.setTextRange(e.createNodeArray(e.concatenate(o,t)),t)}e.visitLexicalEnvironment=visitLexicalEnvironment;function visitParameterList(t,r,n,i){if(i===void 0){i=visitNodes}n.startLexicalEnvironment();var a=i(t,r,e.isParameterDeclaration);n.suspendLexicalEnvironment();return a}e.visitParameterList=visitParameterList;function visitFunctionBody(t,r,n){n.resumeLexicalEnvironment();var i=visitNode(t,r,e.isConciseBody);var a=n.endLexicalEnvironment();if(e.some(a)){var o=e.convertToFunctionBody(i);var s=e.mergeLexicalEnvironment(o.statements,a);return e.updateBlock(o,s)}return i}e.visitFunctionBody=visitFunctionBody;function visitEachChild(r,n,i,a,o){if(a===void 0){a=visitNodes}if(r===undefined){return undefined}var s=r.kind;if(s>0&&s<=147||s===178){return r}switch(s){case 72:return e.updateIdentifier(r,a(r.typeArguments,n,t));case 148:return e.updateQualifiedName(r,visitNode(r.left,n,e.isEntityName),visitNode(r.right,n,e.isIdentifier));case 149:return e.updateComputedPropertyName(r,visitNode(r.expression,n,e.isExpression));case 150:return e.updateTypeParameterDeclaration(r,visitNode(r.name,n,e.isIdentifier),visitNode(r.constraint,n,e.isTypeNode),visitNode(r.default,n,e.isTypeNode));case 151:return e.updateParameter(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.dotDotDotToken,o,e.isToken),visitNode(r.name,n,e.isBindingName),visitNode(r.questionToken,o,e.isToken),visitNode(r.type,n,e.isTypeNode),visitNode(r.initializer,n,e.isExpression));case 152:return e.updateDecorator(r,visitNode(r.expression,n,e.isExpression));case 153:return e.updatePropertySignature(r,a(r.modifiers,n,e.isToken),visitNode(r.name,n,e.isPropertyName),visitNode(r.questionToken,o,e.isToken),visitNode(r.type,n,e.isTypeNode),visitNode(r.initializer,n,e.isExpression));case 154:return e.updateProperty(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isPropertyName),visitNode(r.questionToken,o,e.isToken),visitNode(r.type,n,e.isTypeNode),visitNode(r.initializer,n,e.isExpression));case 155:return e.updateMethodSignature(r,a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode),visitNode(r.name,n,e.isPropertyName),visitNode(r.questionToken,o,e.isToken));case 156:return e.updateMethod(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.asteriskToken,o,e.isToken),visitNode(r.name,n,e.isPropertyName),visitNode(r.questionToken,o,e.isToken),a(r.typeParameters,n,e.isTypeParameterDeclaration),visitParameterList(r.parameters,n,i,a),visitNode(r.type,n,e.isTypeNode),visitFunctionBody(r.body,n,i));case 157:return e.updateConstructor(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitParameterList(r.parameters,n,i,a),visitFunctionBody(r.body,n,i));case 158:return e.updateGetAccessor(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isPropertyName),visitParameterList(r.parameters,n,i,a),visitNode(r.type,n,e.isTypeNode),visitFunctionBody(r.body,n,i));case 159:return e.updateSetAccessor(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isPropertyName),visitParameterList(r.parameters,n,i,a),visitFunctionBody(r.body,n,i));case 160:return e.updateCallSignature(r,a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 161:return e.updateConstructSignature(r,a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 162:return e.updateIndexSignature(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 163:return e.updateTypePredicateNode(r,visitNode(r.parameterName,n),visitNode(r.type,n,e.isTypeNode));case 164:return e.updateTypeReferenceNode(r,visitNode(r.typeName,n,e.isEntityName),a(r.typeArguments,n,e.isTypeNode));case 165:return e.updateFunctionTypeNode(r,a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 166:return e.updateConstructorTypeNode(r,a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.parameters,n,e.isParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 167:return e.updateTypeQueryNode(r,visitNode(r.exprName,n,e.isEntityName));case 168:return e.updateTypeLiteralNode(r,a(r.members,n,e.isTypeElement));case 169:return e.updateArrayTypeNode(r,visitNode(r.elementType,n,e.isTypeNode));case 170:return e.updateTupleTypeNode(r,a(r.elementTypes,n,e.isTypeNode));case 171:return e.updateOptionalTypeNode(r,visitNode(r.type,n,e.isTypeNode));case 172:return e.updateRestTypeNode(r,visitNode(r.type,n,e.isTypeNode));case 173:return e.updateUnionTypeNode(r,a(r.types,n,e.isTypeNode));case 174:return e.updateIntersectionTypeNode(r,a(r.types,n,e.isTypeNode));case 175:return e.updateConditionalTypeNode(r,visitNode(r.checkType,n,e.isTypeNode),visitNode(r.extendsType,n,e.isTypeNode),visitNode(r.trueType,n,e.isTypeNode),visitNode(r.falseType,n,e.isTypeNode));case 176:return e.updateInferTypeNode(r,visitNode(r.typeParameter,n,e.isTypeParameterDeclaration));case 183:return e.updateImportTypeNode(r,visitNode(r.argument,n,e.isTypeNode),visitNode(r.qualifier,n,e.isEntityName),visitNodes(r.typeArguments,n,e.isTypeNode),r.isTypeOf);case 177:return e.updateParenthesizedType(r,visitNode(r.type,n,e.isTypeNode));case 179:return e.updateTypeOperatorNode(r,visitNode(r.type,n,e.isTypeNode));case 180:return e.updateIndexedAccessTypeNode(r,visitNode(r.objectType,n,e.isTypeNode),visitNode(r.indexType,n,e.isTypeNode));case 181:return e.updateMappedTypeNode(r,visitNode(r.readonlyToken,o,e.isToken),visitNode(r.typeParameter,n,e.isTypeParameterDeclaration),visitNode(r.questionToken,o,e.isToken),visitNode(r.type,n,e.isTypeNode));case 182:return e.updateLiteralTypeNode(r,visitNode(r.literal,n,e.isExpression));case 184:return e.updateObjectBindingPattern(r,a(r.elements,n,e.isBindingElement));case 185:return e.updateArrayBindingPattern(r,a(r.elements,n,e.isArrayBindingElement));case 186:return e.updateBindingElement(r,visitNode(r.dotDotDotToken,o,e.isToken),visitNode(r.propertyName,n,e.isPropertyName),visitNode(r.name,n,e.isBindingName),visitNode(r.initializer,n,e.isExpression));case 187:return e.updateArrayLiteral(r,a(r.elements,n,e.isExpression));case 188:return e.updateObjectLiteral(r,a(r.properties,n,e.isObjectLiteralElementLike));case 189:return e.updatePropertyAccess(r,visitNode(r.expression,n,e.isExpression),visitNode(r.name,n,e.isIdentifier));case 190:return e.updateElementAccess(r,visitNode(r.expression,n,e.isExpression),visitNode(r.argumentExpression,n,e.isExpression));case 191:return e.updateCall(r,visitNode(r.expression,n,e.isExpression),a(r.typeArguments,n,e.isTypeNode),a(r.arguments,n,e.isExpression));case 192:return e.updateNew(r,visitNode(r.expression,n,e.isExpression),a(r.typeArguments,n,e.isTypeNode),a(r.arguments,n,e.isExpression));case 193:return e.updateTaggedTemplate(r,visitNode(r.tag,n,e.isExpression),visitNodes(r.typeArguments,n,e.isExpression),visitNode(r.template,n,e.isTemplateLiteral));case 194:return e.updateTypeAssertion(r,visitNode(r.type,n,e.isTypeNode),visitNode(r.expression,n,e.isExpression));case 195:return e.updateParen(r,visitNode(r.expression,n,e.isExpression));case 196:return e.updateFunctionExpression(r,a(r.modifiers,n,e.isModifier),visitNode(r.asteriskToken,o,e.isToken),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),visitParameterList(r.parameters,n,i,a),visitNode(r.type,n,e.isTypeNode),visitFunctionBody(r.body,n,i));case 197:return e.updateArrowFunction(r,a(r.modifiers,n,e.isModifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),visitParameterList(r.parameters,n,i,a),visitNode(r.type,n,e.isTypeNode),visitNode(r.equalsGreaterThanToken,n,e.isToken),visitFunctionBody(r.body,n,i));case 198:return e.updateDelete(r,visitNode(r.expression,n,e.isExpression));case 199:return e.updateTypeOf(r,visitNode(r.expression,n,e.isExpression));case 200:return e.updateVoid(r,visitNode(r.expression,n,e.isExpression));case 201:return e.updateAwait(r,visitNode(r.expression,n,e.isExpression));case 202:return e.updatePrefix(r,visitNode(r.operand,n,e.isExpression));case 203:return e.updatePostfix(r,visitNode(r.operand,n,e.isExpression));case 204:return e.updateBinary(r,visitNode(r.left,n,e.isExpression),visitNode(r.right,n,e.isExpression),visitNode(r.operatorToken,n,e.isToken));case 205:return e.updateConditional(r,visitNode(r.condition,n,e.isExpression),visitNode(r.questionToken,n,e.isToken),visitNode(r.whenTrue,n,e.isExpression),visitNode(r.colonToken,n,e.isToken),visitNode(r.whenFalse,n,e.isExpression));case 206:return e.updateTemplateExpression(r,visitNode(r.head,n,e.isTemplateHead),a(r.templateSpans,n,e.isTemplateSpan));case 207:return e.updateYield(r,visitNode(r.asteriskToken,o,e.isToken),visitNode(r.expression,n,e.isExpression));case 208:return e.updateSpread(r,visitNode(r.expression,n,e.isExpression));case 209:return e.updateClassExpression(r,a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.heritageClauses,n,e.isHeritageClause),a(r.members,n,e.isClassElement));case 211:return e.updateExpressionWithTypeArguments(r,a(r.typeArguments,n,e.isTypeNode),visitNode(r.expression,n,e.isExpression));case 212:return e.updateAsExpression(r,visitNode(r.expression,n,e.isExpression),visitNode(r.type,n,e.isTypeNode));case 213:return e.updateNonNullExpression(r,visitNode(r.expression,n,e.isExpression));case 214:return e.updateMetaProperty(r,visitNode(r.name,n,e.isIdentifier));case 216:return e.updateTemplateSpan(r,visitNode(r.expression,n,e.isExpression),visitNode(r.literal,n,e.isTemplateMiddleOrTemplateTail));case 218:return e.updateBlock(r,a(r.statements,n,e.isStatement));case 219:return e.updateVariableStatement(r,a(r.modifiers,n,e.isModifier),visitNode(r.declarationList,n,e.isVariableDeclarationList));case 221:return e.updateExpressionStatement(r,visitNode(r.expression,n,e.isExpression));case 222:return e.updateIf(r,visitNode(r.expression,n,e.isExpression),visitNode(r.thenStatement,n,e.isStatement,e.liftToBlock),visitNode(r.elseStatement,n,e.isStatement,e.liftToBlock));case 223:return e.updateDo(r,visitNode(r.statement,n,e.isStatement,e.liftToBlock),visitNode(r.expression,n,e.isExpression));case 224:return e.updateWhile(r,visitNode(r.expression,n,e.isExpression),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 225:return e.updateFor(r,visitNode(r.initializer,n,e.isForInitializer),visitNode(r.condition,n,e.isExpression),visitNode(r.incrementor,n,e.isExpression),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 226:return e.updateForIn(r,visitNode(r.initializer,n,e.isForInitializer),visitNode(r.expression,n,e.isExpression),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 227:return e.updateForOf(r,visitNode(r.awaitModifier,n,e.isToken),visitNode(r.initializer,n,e.isForInitializer),visitNode(r.expression,n,e.isExpression),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 228:return e.updateContinue(r,visitNode(r.label,n,e.isIdentifier));case 229:return e.updateBreak(r,visitNode(r.label,n,e.isIdentifier));case 230:return e.updateReturn(r,visitNode(r.expression,n,e.isExpression));case 231:return e.updateWith(r,visitNode(r.expression,n,e.isExpression),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 232:return e.updateSwitch(r,visitNode(r.expression,n,e.isExpression),visitNode(r.caseBlock,n,e.isCaseBlock));case 233:return e.updateLabel(r,visitNode(r.label,n,e.isIdentifier),visitNode(r.statement,n,e.isStatement,e.liftToBlock));case 234:return e.updateThrow(r,visitNode(r.expression,n,e.isExpression));case 235:return e.updateTry(r,visitNode(r.tryBlock,n,e.isBlock),visitNode(r.catchClause,n,e.isCatchClause),visitNode(r.finallyBlock,n,e.isBlock));case 237:return e.updateVariableDeclaration(r,visitNode(r.name,n,e.isBindingName),visitNode(r.type,n,e.isTypeNode),visitNode(r.initializer,n,e.isExpression));case 238:return e.updateVariableDeclarationList(r,a(r.declarations,n,e.isVariableDeclaration));case 239:return e.updateFunctionDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.asteriskToken,o,e.isToken),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),visitParameterList(r.parameters,n,i,a),visitNode(r.type,n,e.isTypeNode),visitFunctionBody(r.body,n,i));case 240:return e.updateClassDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.heritageClauses,n,e.isHeritageClause),a(r.members,n,e.isClassElement));case 241:return e.updateInterfaceDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),a(r.heritageClauses,n,e.isHeritageClause),a(r.members,n,e.isTypeElement));case 242:return e.updateTypeAliasDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),a(r.typeParameters,n,e.isTypeParameterDeclaration),visitNode(r.type,n,e.isTypeNode));case 243:return e.updateEnumDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),a(r.members,n,e.isEnumMember));case 244:return e.updateModuleDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),visitNode(r.body,n,e.isModuleBody));case 245:return e.updateModuleBlock(r,a(r.statements,n,e.isStatement));case 246:return e.updateCaseBlock(r,a(r.clauses,n,e.isCaseOrDefaultClause));case 247:return e.updateNamespaceExportDeclaration(r,visitNode(r.name,n,e.isIdentifier));case 248:return e.updateImportEqualsDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.name,n,e.isIdentifier),visitNode(r.moduleReference,n,e.isModuleReference));case 249:return e.updateImportDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.importClause,n,e.isImportClause),visitNode(r.moduleSpecifier,n,e.isExpression));case 250:return e.updateImportClause(r,visitNode(r.name,n,e.isIdentifier),visitNode(r.namedBindings,n,e.isNamedImportBindings));case 251:return e.updateNamespaceImport(r,visitNode(r.name,n,e.isIdentifier));case 252:return e.updateNamedImports(r,a(r.elements,n,e.isImportSpecifier));case 253:return e.updateImportSpecifier(r,visitNode(r.propertyName,n,e.isIdentifier),visitNode(r.name,n,e.isIdentifier));case 254:return e.updateExportAssignment(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.expression,n,e.isExpression));case 255:return e.updateExportDeclaration(r,a(r.decorators,n,e.isDecorator),a(r.modifiers,n,e.isModifier),visitNode(r.exportClause,n,e.isNamedExports),visitNode(r.moduleSpecifier,n,e.isExpression));case 256:return e.updateNamedExports(r,a(r.elements,n,e.isExportSpecifier));case 257:return e.updateExportSpecifier(r,visitNode(r.propertyName,n,e.isIdentifier),visitNode(r.name,n,e.isIdentifier));case 259:return e.updateExternalModuleReference(r,visitNode(r.expression,n,e.isExpression));case 260:return e.updateJsxElement(r,visitNode(r.openingElement,n,e.isJsxOpeningElement),a(r.children,n,e.isJsxChild),visitNode(r.closingElement,n,e.isJsxClosingElement));case 261:return e.updateJsxSelfClosingElement(r,visitNode(r.tagName,n,e.isJsxTagNameExpression),a(r.typeArguments,n,e.isTypeNode),visitNode(r.attributes,n,e.isJsxAttributes));case 262:return e.updateJsxOpeningElement(r,visitNode(r.tagName,n,e.isJsxTagNameExpression),a(r.typeArguments,n,e.isTypeNode),visitNode(r.attributes,n,e.isJsxAttributes));case 263:return e.updateJsxClosingElement(r,visitNode(r.tagName,n,e.isJsxTagNameExpression));case 264:return e.updateJsxFragment(r,visitNode(r.openingFragment,n,e.isJsxOpeningFragment),a(r.children,n,e.isJsxChild),visitNode(r.closingFragment,n,e.isJsxClosingFragment));case 267:return e.updateJsxAttribute(r,visitNode(r.name,n,e.isIdentifier),visitNode(r.initializer,n,e.isStringLiteralOrJsxExpression));case 268:return e.updateJsxAttributes(r,a(r.properties,n,e.isJsxAttributeLike));case 269:return e.updateJsxSpreadAttribute(r,visitNode(r.expression,n,e.isExpression));case 270:return e.updateJsxExpression(r,visitNode(r.expression,n,e.isExpression));case 271:return e.updateCaseClause(r,visitNode(r.expression,n,e.isExpression),a(r.statements,n,e.isStatement));case 272:return e.updateDefaultClause(r,a(r.statements,n,e.isStatement));case 273:return e.updateHeritageClause(r,a(r.types,n,e.isExpressionWithTypeArguments));case 274:return e.updateCatchClause(r,visitNode(r.variableDeclaration,n,e.isVariableDeclaration),visitNode(r.block,n,e.isBlock));case 275:return e.updatePropertyAssignment(r,visitNode(r.name,n,e.isPropertyName),visitNode(r.initializer,n,e.isExpression));case 276:return e.updateShorthandPropertyAssignment(r,visitNode(r.name,n,e.isIdentifier),visitNode(r.objectAssignmentInitializer,n,e.isExpression));case 277:return e.updateSpreadAssignment(r,visitNode(r.expression,n,e.isExpression));case 278:return e.updateEnumMember(r,visitNode(r.name,n,e.isPropertyName),visitNode(r.initializer,n,e.isExpression));case 279:return e.updateSourceFileNode(r,visitLexicalEnvironment(r.statements,n,i));case 308:return e.updatePartiallyEmittedExpression(r,visitNode(r.expression,n,e.isExpression));case 309:return e.updateCommaList(r,a(r.elements,n,e.isExpression));default:return r}}e.visitEachChild=visitEachChild;function extractSingleNode(t){e.Debug.assert(t.length<=1,"Too many nodes written to output.");return e.singleOrUndefined(t)}})(s||(s={}));(function(e){function reduceNode(e,t,r){return e?t(r,e):r}function reduceNodeArray(e,t,r){return e?t(r,e):r}function reduceEachChild(t,r,n,i){if(t===undefined){return r}var a=i?reduceNodeArray:e.reduceLeft;var o=i||n;var s=t.kind;if(s>0&&s<=147){return r}if(s>=163&&s<=182){return r}var c=r;switch(t.kind){case 217:case 220:case 210:case 236:case 307:break;case 148:c=reduceNode(t.left,n,c);c=reduceNode(t.right,n,c);break;case 149:c=reduceNode(t.expression,n,c);break;case 151:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=reduceNode(t.type,n,c);c=reduceNode(t.initializer,n,c);break;case 152:c=reduceNode(t.expression,n,c);break;case 153:c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=reduceNode(t.questionToken,n,c);c=reduceNode(t.type,n,c);c=reduceNode(t.initializer,n,c);break;case 154:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=reduceNode(t.type,n,c);c=reduceNode(t.initializer,n,c);break;case 156:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.typeParameters,o,c);c=a(t.parameters,o,c);c=reduceNode(t.type,n,c);c=reduceNode(t.body,n,c);break;case 157:c=a(t.modifiers,o,c);c=a(t.parameters,o,c);c=reduceNode(t.body,n,c);break;case 158:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.parameters,o,c);c=reduceNode(t.type,n,c);c=reduceNode(t.body,n,c);break;case 159:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.parameters,o,c);c=reduceNode(t.body,n,c);break;case 184:case 185:c=a(t.elements,o,c);break;case 186:c=reduceNode(t.propertyName,n,c);c=reduceNode(t.name,n,c);c=reduceNode(t.initializer,n,c);break;case 187:c=a(t.elements,o,c);break;case 188:c=a(t.properties,o,c);break;case 189:c=reduceNode(t.expression,n,c);c=reduceNode(t.name,n,c);break;case 190:c=reduceNode(t.expression,n,c);c=reduceNode(t.argumentExpression,n,c);break;case 191:c=reduceNode(t.expression,n,c);c=a(t.typeArguments,o,c);c=a(t.arguments,o,c);break;case 192:c=reduceNode(t.expression,n,c);c=a(t.typeArguments,o,c);c=a(t.arguments,o,c);break;case 193:c=reduceNode(t.tag,n,c);c=a(t.typeArguments,o,c);c=reduceNode(t.template,n,c);break;case 194:c=reduceNode(t.type,n,c);c=reduceNode(t.expression,n,c);break;case 196:c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.typeParameters,o,c);c=a(t.parameters,o,c);c=reduceNode(t.type,n,c);c=reduceNode(t.body,n,c);break;case 197:c=a(t.modifiers,o,c);c=a(t.typeParameters,o,c);c=a(t.parameters,o,c);c=reduceNode(t.type,n,c);c=reduceNode(t.body,n,c);break;case 195:case 198:case 199:case 200:case 201:case 207:case 208:case 213:c=reduceNode(t.expression,n,c);break;case 202:case 203:c=reduceNode(t.operand,n,c);break;case 204:c=reduceNode(t.left,n,c);c=reduceNode(t.right,n,c);break;case 205:c=reduceNode(t.condition,n,c);c=reduceNode(t.whenTrue,n,c);c=reduceNode(t.whenFalse,n,c);break;case 206:c=reduceNode(t.head,n,c);c=a(t.templateSpans,o,c);break;case 209:c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.typeParameters,o,c);c=a(t.heritageClauses,o,c);c=a(t.members,o,c);break;case 211:c=reduceNode(t.expression,n,c);c=a(t.typeArguments,o,c);break;case 212:c=reduceNode(t.expression,n,c);c=reduceNode(t.type,n,c);break;case 216:c=reduceNode(t.expression,n,c);c=reduceNode(t.literal,n,c);break;case 218:c=a(t.statements,o,c);break;case 219:c=a(t.modifiers,o,c);c=reduceNode(t.declarationList,n,c);break;case 221:c=reduceNode(t.expression,n,c);break;case 222:c=reduceNode(t.expression,n,c);c=reduceNode(t.thenStatement,n,c);c=reduceNode(t.elseStatement,n,c);break;case 223:c=reduceNode(t.statement,n,c);c=reduceNode(t.expression,n,c);break;case 224:case 231:c=reduceNode(t.expression,n,c);c=reduceNode(t.statement,n,c);break;case 225:c=reduceNode(t.initializer,n,c);c=reduceNode(t.condition,n,c);c=reduceNode(t.incrementor,n,c);c=reduceNode(t.statement,n,c);break;case 226:case 227:c=reduceNode(t.initializer,n,c);c=reduceNode(t.expression,n,c);c=reduceNode(t.statement,n,c);break;case 230:case 234:c=reduceNode(t.expression,n,c);break;case 232:c=reduceNode(t.expression,n,c);c=reduceNode(t.caseBlock,n,c);break;case 233:c=reduceNode(t.label,n,c);c=reduceNode(t.statement,n,c);break;case 235:c=reduceNode(t.tryBlock,n,c);c=reduceNode(t.catchClause,n,c);c=reduceNode(t.finallyBlock,n,c);break;case 237:c=reduceNode(t.name,n,c);c=reduceNode(t.type,n,c);c=reduceNode(t.initializer,n,c);break;case 238:c=a(t.declarations,o,c);break;case 239:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.typeParameters,o,c);c=a(t.parameters,o,c);c=reduceNode(t.type,n,c);c=reduceNode(t.body,n,c);break;case 240:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.typeParameters,o,c);c=a(t.heritageClauses,o,c);c=a(t.members,o,c);break;case 243:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=a(t.members,o,c);break;case 244:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=reduceNode(t.body,n,c);break;case 245:c=a(t.statements,o,c);break;case 246:c=a(t.clauses,o,c);break;case 248:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.name,n,c);c=reduceNode(t.moduleReference,n,c);break;case 249:c=a(t.decorators,o,c);c=a(t.modifiers,o,c);c=reduceNode(t.importClause,n,c);c=reduceNode(t.moduleSpecifier,n,c);break;case 250:c=reduceNode(t.name,n,c);c=reduceNode(t.namedBindings,n,c);break;case 251:c=reduceNode(t.name,n,c);break;case 252:case 256:c=a(t.elements,o,c);break;case 253:case 257:c=reduceNode(t.propertyName,n,c);c=reduceNode(t.name,n,c);break;case 254:c=e.reduceLeft(t.decorators,n,c);c=e.reduceLeft(t.modifiers,n,c);c=reduceNode(t.expression,n,c);break;case 255:c=e.reduceLeft(t.decorators,n,c);c=e.reduceLeft(t.modifiers,n,c);c=reduceNode(t.exportClause,n,c);c=reduceNode(t.moduleSpecifier,n,c);break;case 259:c=reduceNode(t.expression,n,c);break;case 260:c=reduceNode(t.openingElement,n,c);c=e.reduceLeft(t.children,n,c);c=reduceNode(t.closingElement,n,c);break;case 264:c=reduceNode(t.openingFragment,n,c);c=e.reduceLeft(t.children,n,c);c=reduceNode(t.closingFragment,n,c);break;case 261:case 262:c=reduceNode(t.tagName,n,c);c=a(t.typeArguments,n,c);c=reduceNode(t.attributes,n,c);break;case 268:c=a(t.properties,o,c);break;case 263:c=reduceNode(t.tagName,n,c);break;case 267:c=reduceNode(t.name,n,c);c=reduceNode(t.initializer,n,c);break;case 269:c=reduceNode(t.expression,n,c);break;case 270:c=reduceNode(t.expression,n,c);break;case 271:c=reduceNode(t.expression,n,c);case 272:c=a(t.statements,o,c);break;case 273:c=a(t.types,o,c);break;case 274:c=reduceNode(t.variableDeclaration,n,c);c=reduceNode(t.block,n,c);break;case 275:c=reduceNode(t.name,n,c);c=reduceNode(t.initializer,n,c);break;case 276:c=reduceNode(t.name,n,c);c=reduceNode(t.objectAssignmentInitializer,n,c);break;case 277:c=reduceNode(t.expression,n,c);break;case 278:c=reduceNode(t.name,n,c);c=reduceNode(t.initializer,n,c);break;case 279:c=a(t.statements,o,c);break;case 308:c=reduceNode(t.expression,n,c);break;case 309:c=a(t.elements,o,c);break;default:break}return c}e.reduceEachChild=reduceEachChild;function mergeLexicalEnvironment(t,r){if(!e.some(r)){return t}return e.isNodeArray(t)?e.setTextRange(e.createNodeArray(e.addStatementsAfterPrologue(t.slice(),r)),t):e.addStatementsAfterPrologue(t,r)}e.mergeLexicalEnvironment=mergeLexicalEnvironment;function liftToBlock(r){t.assert(e.every(r,e.isStatement),"Cannot lift nodes to a Block.");return e.singleOrUndefined(r)||e.createBlock(r)}e.liftToBlock=liftToBlock;function aggregateTransformFlags(e){aggregateTransformFlagsForNode(e);return e}e.aggregateTransformFlags=aggregateTransformFlags;function aggregateTransformFlagsForNode(t){if(t===undefined){return 0}if(t.transformFlags&536870912){return t.transformFlags&~e.getTransformFlagsSubtreeExclusions(t.kind)}var r=aggregateTransformFlagsForSubtree(t);return e.computeTransformFlagsForNode(t,r)}function aggregateTransformFlagsForNodeArray(e){if(e===undefined){return 0}var t=0;var r=0;for(var n=0,i=e;n<i.length;n++){var a=i[n];t|=aggregateTransformFlagsForNode(a);r|=a.transformFlags&~536870912}e.transformFlags=r|536870912;return t}function aggregateTransformFlagsForSubtree(t){if(e.hasModifier(t,2)||e.isTypeNode(t)&&t.kind!==211){return 0}return reduceEachChild(t,0,aggregateTransformFlagsForChildNode,aggregateTransformFlagsForChildNodes)}function aggregateTransformFlagsForChildNode(e,t){return e|aggregateTransformFlagsForNode(t)}function aggregateTransformFlagsForChildNodes(e,t){return e|aggregateTransformFlagsForNodeArray(t)}var t;(function(t){var r=false;function failBadSyntaxKind(r,n){return t.fail((n||"Unexpected node.")+"\r\nNode "+e.formatSyntaxKind(r.kind)+" was unexpected.",failBadSyntaxKind)}t.failBadSyntaxKind=failBadSyntaxKind;t.assertEachNode=t.shouldAssert(1)?function(r,n,i){return t.assert(n===undefined||e.every(r,n),i||"Unexpected node.",function(){return"Node array did not pass test '"+t.getFunctionName(n)+"'."},t.assertEachNode)}:e.noop;t.assertNode=t.shouldAssert(1)?function(r,n,i){return t.assert(n===undefined||n(r),i||"Unexpected node.",function(){return"Node "+e.formatSyntaxKind(r.kind)+" did not pass test '"+t.getFunctionName(n)+"'."},t.assertNode)}:e.noop;t.assertOptionalNode=t.shouldAssert(1)?function(r,n,i){return t.assert(n===undefined||r===undefined||n(r),i||"Unexpected node.",function(){return"Node "+e.formatSyntaxKind(r.kind)+" did not pass test '"+t.getFunctionName(n)+"'."},t.assertOptionalNode)}:e.noop;t.assertOptionalToken=t.shouldAssert(1)?function(r,n,i){return t.assert(n===undefined||r===undefined||r.kind===n,i||"Unexpected node.",function(){return"Node "+e.formatSyntaxKind(r.kind)+" was not a '"+e.formatSyntaxKind(n)+"' token."},t.assertOptionalToken)}:e.noop;t.assertMissingNode=t.shouldAssert(1)?function(r,n){return t.assert(r===undefined,n||"Unexpected node.",function(){return"Node "+e.formatSyntaxKind(r.kind)+" was unexpected'."},t.assertMissingNode)}:e.noop;function enableDebugInfo(){if(r)return;Object.defineProperties(e.objectAllocator.getSymbolConstructor().prototype,{__debugFlags:{get:function(){return e.formatSymbolFlags(this.flags)}}});Object.defineProperties(e.objectAllocator.getTypeConstructor().prototype,{__debugFlags:{get:function(){return e.formatTypeFlags(this.flags)}},__debugObjectFlags:{get:function(){return this.flags&524288?e.formatObjectFlags(this.objectFlags):""}},__debugTypeToString:{value:function(){return this.checker.typeToString(this)}}});var t=[e.objectAllocator.getNodeConstructor(),e.objectAllocator.getIdentifierConstructor(),e.objectAllocator.getTokenConstructor(),e.objectAllocator.getSourceFileConstructor()];for(var n=0,i=t;n<i.length;n++){var a=i[n];if(!a.prototype.hasOwnProperty("__debugKind")){Object.defineProperties(a.prototype,{__debugKind:{get:function(){return e.formatSyntaxKind(this.kind)}},__debugModifierFlags:{get:function(){return e.formatModifierFlags(e.getModifierFlagsNoCache(this))}},__debugTransformFlags:{get:function(){return e.formatTransformFlags(this.transformFlags)}},__debugEmitFlags:{get:function(){return e.formatEmitFlags(e.getEmitFlags(this))}},__debugGetText:{value:function(t){if(e.nodeIsSynthesized(this))return"";var r=e.getParseTreeNode(this);var n=r&&e.getSourceFileOfNode(r);return n?e.getSourceTextOfNodeFromSourceFile(n,r,t):""}}})}}r=true}t.enableDebugInfo=enableDebugInfo})(t=e.Debug||(e.Debug={}))})(s||(s={}));var s;(function(e){function createSourceMapGenerator(t,r,n,i,a){var o=a.extendedDiagnostics?e.performance.createTimer("Source Map","beforeSourcemap","afterSourcemap"):e.performance.nullTimer,s=o.enter,c=o.exit;var u=[];var l=[];var f=e.createMap();var d;var p=[];var g;var _="";var m=0;var y=0;var h=0;var v=0;var T=0;var S=0;var b=false;var x=0;var C=0;var E=0;var D=0;var k=0;var N=0;var A=false;var O=false;var F=false;return{getSources:function(){return u},addSource:addSource,setSourceContent:setSourceContent,addName:addName,addMapping:addMapping,appendSourceMap:appendSourceMap,toJSON:toJSON,toString:function(){return JSON.stringify(toJSON())}};function addSource(r){s();var n=e.getRelativePathToDirectoryOrUrl(i,r,t.getCurrentDirectory(),t.getCanonicalFileName,true);var a=f.get(n);if(a===undefined){a=l.length;l.push(n);u.push(r);f.set(n,a)}c();return a}function setSourceContent(e,t){s();if(t!==null){if(!d)d=[];while(d.length<e){d.push(null)}d[e]=t}c()}function addName(t){s();if(!g)g=e.createMap();var r=g.get(t);if(r===undefined){r=p.length;p.push(t);g.set(t,r)}c();return r}function isNewGeneratedPosition(e,t){return!A||x!==e||C!==t}function isBacktrackingSourcePosition(e,t,r){return e!==undefined&&t!==undefined&&r!==undefined&&E===e&&(D>t||D===t&&k>r)}function addMapping(t,r,n,i,a,o){e.Debug.assert(t>=x,"generatedLine cannot backtrack");e.Debug.assert(r>=0,"generatedCharacter cannot be negative");e.Debug.assert(n===undefined||n>=0,"sourceIndex cannot be negative");e.Debug.assert(i===undefined||i>=0,"sourceLine cannot be negative");e.Debug.assert(a===undefined||a>=0,"sourceCharacter cannot be negative");s();if(isNewGeneratedPosition(t,r)||isBacktrackingSourcePosition(n,i,a)){commitPendingMapping();x=t;C=r;O=false;F=false;A=true}if(n!==undefined&&i!==undefined&&a!==undefined){E=n;D=i;k=a;O=true;if(o!==undefined){N=o;F=true}}c()}function appendSourceMap(t,r,n,i){var a;e.Debug.assert(t>=x,"generatedLine cannot backtrack");e.Debug.assert(r>=0,"generatedCharacter cannot be negative");s();var o=[];var u;var l=decodeMappings(n.mappings);for(var f=l.next(),d=f.value,p=f.done;!p;a=l.next(),d=a.value,p=a.done,a){var g=void 0;var _=void 0;var m=void 0;var y=void 0;if(d.sourceIndex!==undefined){g=o[d.sourceIndex];if(g===undefined){var h=n.sources[d.sourceIndex];var v=n.sourceRoot?e.combinePaths(n.sourceRoot,h):h;var T=e.combinePaths(e.getDirectoryPath(i),v);o[d.sourceIndex]=g=addSource(T);if(n.sourcesContent&&typeof n.sourcesContent[d.sourceIndex]==="string"){setSourceContent(g,n.sourcesContent[d.sourceIndex])}}_=d.sourceLine;m=d.sourceCharacter;if(n.names&&d.nameIndex!==undefined){if(!u)u=[];y=u[d.nameIndex];if(y===undefined){u[d.nameIndex]=y=addName(n.names[d.nameIndex])}}}var S=d.generatedLine+t;var b=d.generatedLine===0?d.generatedCharacter+r:d.generatedCharacter;addMapping(S,b,g,_,m,y)}c()}function shouldCommitMapping(){return!b||m!==x||y!==C||h!==E||v!==D||T!==k||S!==N}function commitPendingMapping(){if(!A||!shouldCommitMapping()){return}s();if(m<x){do{_+=";";m++;y=0}while(m<x)}else{e.Debug.assertEqual(m,x,"generatedLine cannot backtrack");if(b){_+=","}}_+=base64VLQFormatEncode(C-y);y=C;if(O){_+=base64VLQFormatEncode(E-h);h=E;_+=base64VLQFormatEncode(D-v);v=D;_+=base64VLQFormatEncode(k-T);T=k;if(F){_+=base64VLQFormatEncode(N-S);S=N}}b=true;c()}function toJSON(){commitPendingMapping();return{version:3,file:r,sourceRoot:n,sources:l,names:p,mappings:_,sourcesContent:d}}}e.createSourceMapGenerator=createSourceMapGenerator;var t=/^\/\/[@#] source[M]appingURL=(.+)\s*$/;var r=/^\s*(\/\/[@#] .*)?$/;function tryGetSourceMappingURL(n,i){if(i===void 0){i=e.computeLineStarts(n)}for(var a=i.length-1;a>=0;a--){var o=n.substring(i[a],i[a+1]);var s=t.exec(o);if(s){return s[1]}else if(!o.match(r)){break}}}e.tryGetSourceMappingURL=tryGetSourceMappingURL;function isStringOrNull(e){return typeof e==="string"||e===null}function isRawSourceMap(t){return t!==null&&typeof t==="object"&&t.version===3&&typeof t.file==="string"&&typeof t.mappings==="string"&&e.isArray(t.sources)&&e.every(t.sources,e.isString)&&(t.sourceRoot===undefined||t.sourceRoot===null||typeof t.sourceRoot==="string")&&(t.sourcesContent===undefined||t.sourcesContent===null||e.isArray(t.sourcesContent)&&e.every(t.sourcesContent,isStringOrNull))&&(t.names===undefined||t.names===null||e.isArray(t.names)&&e.every(t.names,e.isString))}e.isRawSourceMap=isRawSourceMap;function tryParseRawSourceMap(e){try{var t=JSON.parse(e);if(isRawSourceMap(t)){return t}}catch(e){}return undefined}e.tryParseRawSourceMap=tryParseRawSourceMap;function decodeMappings(e){var t=false;var r=0;var n=0;var i=0;var a=0;var o=0;var s=0;var c=0;var u;return{get pos(){return r},get error(){return u},get state(){return captureMapping(true,true)},next:function(){while(!t&&r<e.length){var u=e.charCodeAt(r);if(u===59){n++;i=0;r++;continue}if(u===44){r++;continue}var l=false;var f=false;i+=base64VLQFormatDecode();if(hasReportedError())return stopIterating();if(i<0)return setErrorAndStopIterating("Invalid generatedCharacter found");if(!isSourceMappingSegmentEnd()){l=true;a+=base64VLQFormatDecode();if(hasReportedError())return stopIterating();if(a<0)return setErrorAndStopIterating("Invalid sourceIndex found");if(isSourceMappingSegmentEnd())return setErrorAndStopIterating("Unsupported Format: No entries after sourceIndex");o+=base64VLQFormatDecode();if(hasReportedError())return stopIterating();if(o<0)return setErrorAndStopIterating("Invalid sourceLine found");if(isSourceMappingSegmentEnd())return setErrorAndStopIterating("Unsupported Format: No entries after sourceLine");s+=base64VLQFormatDecode();if(hasReportedError())return stopIterating();if(s<0)return setErrorAndStopIterating("Invalid sourceCharacter found");if(!isSourceMappingSegmentEnd()){f=true;c+=base64VLQFormatDecode();if(hasReportedError())return stopIterating();if(c<0)return setErrorAndStopIterating("Invalid nameIndex found");if(!isSourceMappingSegmentEnd())return setErrorAndStopIterating("Unsupported Error Format: Entries after nameIndex")}}return{value:captureMapping(l,f),done:t}}return stopIterating()}};function captureMapping(e,t){return{generatedLine:n,generatedCharacter:i,sourceIndex:e?a:undefined,sourceLine:e?o:undefined,sourceCharacter:e?s:undefined,nameIndex:t?c:undefined}}function stopIterating(){t=true;return{value:undefined,done:true}}function setError(e){if(u===undefined){u=e}}function setErrorAndStopIterating(e){setError(e);return stopIterating()}function hasReportedError(){return u!==undefined}function isSourceMappingSegmentEnd(){return r===e.length||e.charCodeAt(r)===44||e.charCodeAt(r)===59}function base64VLQFormatDecode(){var t=true;var n=0;var i=0;for(;t;r++){if(r>=e.length)return setError("Error in decoding base64VLQFormatDecode, past the mapping string"),-1;var a=base64FormatDecode(e.charCodeAt(r));if(a===-1)return setError("Invalid character in VLQ"),-1;t=(a&32)!==0;i=i|(a&31)<<n;n+=5}if((i&1)===0){i=i>>1}else{i=i>>1;i=-i}return i}}e.decodeMappings=decodeMappings;function sameMapping(e,t){return e===t||e.generatedLine===t.generatedLine&&e.generatedCharacter===t.generatedCharacter&&e.sourceIndex===t.sourceIndex&&e.sourceLine===t.sourceLine&&e.sourceCharacter===t.sourceCharacter&&e.nameIndex===t.nameIndex}e.sameMapping=sameMapping;function isSourceMapping(e){return e.sourceIndex!==undefined&&e.sourceLine!==undefined&&e.sourceCharacter!==undefined}e.isSourceMapping=isSourceMapping;function base64FormatEncode(t){return t>=0&&t<26?65+t:t>=26&&t<52?97+t-26:t>=52&&t<62?48+t-52:t===62?43:t===63?47:e.Debug.fail(t+": not a base64 value")}function base64FormatDecode(e){return e>=65&&e<=90?e-65:e>=97&&e<=122?e-97+26:e>=48&&e<=57?e-48+52:e===43?62:e===47?63:-1}function base64VLQFormatEncode(e){if(e<0){e=(-e<<1)+1}else{e=e<<1}var t="";do{var r=e&31;e=e>>5;if(e>0){r=r|32}t=t+String.fromCharCode(base64FormatEncode(r))}while(e>0);return t}function isSourceMappedPosition(e){return e.sourceIndex!==undefined&&e.sourcePosition!==undefined}function sameMappedPosition(e,t){return e.generatedPosition===t.generatedPosition&&e.sourceIndex===t.sourceIndex&&e.sourcePosition===t.sourcePosition}function compareSourcePositions(t,r){return e.compareValues(t.sourceIndex,r.sourceIndex)}function compareGeneratedPositions(t,r){return e.compareValues(t.generatedPosition,r.generatedPosition)}function getSourcePositionOfMapping(e){return e.sourcePosition}function getGeneratedPositionOfMapping(e){return e.generatedPosition}function createDocumentPositionMapper(t,r,n){var i=e.getDirectoryPath(n);var a=r.sourceRoot?e.getNormalizedAbsolutePath(r.sourceRoot,i):i;var o=e.getNormalizedAbsolutePath(r.file,i);var s=t.getCanonicalFileName(o);var c=t.getSourceFileLike(s);var u=r.sources.map(function(t){return e.getNormalizedAbsolutePath(t,a)});var l=u.map(function(e){return t.getCanonicalFileName(e)});var f=e.createMapFromEntries(l.map(function(e,t){return[e,t]}));var d;var p;var g;return{getSourcePosition:getSourcePosition,getGeneratedPosition:getGeneratedPosition};function processMapping(n){var i=c!==undefined?e.getPositionOfLineAndCharacterWithEdits(c,n.generatedLine,n.generatedCharacter):-1;var a;var o;if(isSourceMapping(n)){var s=l[n.sourceIndex];var u=t.getSourceFileLike(s);a=r.sources[n.sourceIndex];o=u!==undefined?e.getPositionOfLineAndCharacterWithEdits(u,n.sourceLine,n.sourceCharacter):-1}return{generatedPosition:i,source:a,sourceIndex:n.sourceIndex,sourcePosition:o,nameIndex:n.nameIndex}}function getDecodedMappings(){if(d===undefined){var n=decodeMappings(r.mappings);var i=e.arrayFrom(n,processMapping);if(n.error!==undefined){if(t.log){t.log("Encountered error while decoding sourcemap: "+n.error)}d=e.emptyArray}else{d=i}}return d}function getSourceMappings(t){if(g===undefined){var r=[];for(var n=0,i=getDecodedMappings();n<i.length;n++){var a=i[n];if(!isSourceMappedPosition(a))continue;var o=r[a.sourceIndex];if(!o)r[a.sourceIndex]=o=[];o.push(a)}g=r.map(function(t){return e.sortAndDeduplicate(t,compareSourcePositions,sameMappedPosition)})}return g[t]}function getGeneratedMappings(){if(p===undefined){var t=[];for(var r=0,n=getDecodedMappings();r<n.length;r++){var i=n[r];t.push(i)}p=e.sortAndDeduplicate(t,compareGeneratedPositions,sameMappedPosition)}return p}function getGeneratedPosition(r){var n=f.get(t.getCanonicalFileName(r.fileName));if(n===undefined)return r;var i=getSourceMappings(n);if(!e.some(i))return r;var a=e.binarySearchKey(i,r.pos,getSourcePositionOfMapping,e.compareValues);if(a<0){a=~a}var s=i[a];if(s===undefined||s.sourceIndex!==n){return r}return{fileName:o,pos:s.generatedPosition}}function getSourcePosition(t){var r=getGeneratedMappings();if(!e.some(r))return t;var n=e.binarySearchKey(r,t.pos,getGeneratedPositionOfMapping,e.compareValues);if(n<0){n=~n}var i=r[n];if(i===undefined||!isSourceMappedPosition(i)){return t}return{fileName:u[i.sourceIndex],pos:i.sourcePosition}}}e.createDocumentPositionMapper=createDocumentPositionMapper;e.identitySourceMapConsumer={getSourcePosition:e.identity,getGeneratedPosition:e.identity}})(s||(s={}));var s;(function(e){function getOriginalNodeId(t){t=e.getOriginalNode(t);return t?e.getNodeId(t):0}e.getOriginalNodeId=getOriginalNodeId;function containsDefaultReference(t){if(!t)return false;if(!e.isNamedImports(t))return false;return e.some(t.elements,isNamedDefaultReference)}function isNamedDefaultReference(e){return e.propertyName!==undefined&&e.propertyName.escapedText==="default"}function chainBundle(t){return transformSourceFileOrBundle;function transformSourceFileOrBundle(e){return e.kind===279?t(e):transformBundle(e)}function transformBundle(r){return e.createBundle(e.map(r.sourceFiles,t),r.prepends)}}e.chainBundle=chainBundle;function getImportNeedsImportStarHelper(t){if(!!e.getNamespaceDeclarationNode(t)){return true}var r=t.importClause&&t.importClause.namedBindings;if(!r){return false}if(!e.isNamedImports(r))return false;var n=0;for(var i=0,a=r.elements;i<a.length;i++){var o=a[i];if(isNamedDefaultReference(o)){n++}}return n>0&&n!==r.elements.length||!!(r.elements.length-n)&&e.isDefaultImport(t)}e.getImportNeedsImportStarHelper=getImportNeedsImportStarHelper;function getImportNeedsImportDefaultHelper(t){return!getImportNeedsImportStarHelper(t)&&(e.isDefaultImport(t)||!!t.importClause&&e.isNamedImports(t.importClause.namedBindings)&&containsDefaultReference(t.importClause.namedBindings))}e.getImportNeedsImportDefaultHelper=getImportNeedsImportDefaultHelper;function collectExternalModuleInfo(t,r,n){var i=[];var a=e.createMultiMap();var o=[];var s=e.createMap();var c;var u=false;var l;var f=false;var d=false;for(var p=0,g=t.statements;p<g.length;p++){var _=g[p];switch(_.kind){case 249:i.push(_);d=d||getImportNeedsImportStarHelper(_)||getImportNeedsImportDefaultHelper(_);break;case 248:if(_.moduleReference.kind===259){i.push(_)}break;case 255:if(_.moduleSpecifier){if(!_.exportClause){i.push(_);f=true}else{i.push(_)}}else{for(var m=0,y=_.exportClause.elements;m<y.length;m++){var h=y[m];if(!s.get(e.idText(h.name))){var v=h.propertyName||h.name;a.add(e.idText(v),h);var T=r.getReferencedImportDeclaration(v)||r.getReferencedValueDeclaration(v);if(T){multiMapSparseArrayAdd(o,getOriginalNodeId(T),h.name)}s.set(e.idText(h.name),true);c=e.append(c,h.name)}}}break;case 254:if(_.isExportEquals&&!l){l=_}break;case 219:if(e.hasModifier(_,1)){for(var S=0,b=_.declarationList.declarations;S<b.length;S++){var T=b[S];c=collectExportedVariableInfo(T,s,c)}}break;case 239:if(e.hasModifier(_,1)){if(e.hasModifier(_,512)){if(!u){multiMapSparseArrayAdd(o,getOriginalNodeId(_),e.getDeclarationName(_));u=true}}else{var v=_.name;if(!s.get(e.idText(v))){multiMapSparseArrayAdd(o,getOriginalNodeId(_),v);s.set(e.idText(v),true);c=e.append(c,v)}}}break;case 240:if(e.hasModifier(_,1)){if(e.hasModifier(_,512)){if(!u){multiMapSparseArrayAdd(o,getOriginalNodeId(_),e.getDeclarationName(_));u=true}}else{var v=_.name;if(v&&!s.get(e.idText(v))){multiMapSparseArrayAdd(o,getOriginalNodeId(_),v);s.set(e.idText(v),true);c=e.append(c,v)}}}break}}var x=e.getOrCreateExternalHelpersModuleNameIfNeeded(t,n,f,d);var C=x&&e.createImportDeclaration(undefined,undefined,e.createImportClause(undefined,e.createNamespaceImport(x)),e.createLiteral(e.externalHelpersModuleNameText));if(C){e.addEmitFlags(C,67108864);i.unshift(C)}return{externalImports:i,exportSpecifiers:a,exportEquals:l,hasExportStarsToExportValues:f,exportedBindings:o,exportedNames:c,externalHelpersImportDeclaration:C}}e.collectExternalModuleInfo=collectExternalModuleInfo;function collectExportedVariableInfo(t,r,n){if(e.isBindingPattern(t.name)){for(var i=0,a=t.name.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){n=collectExportedVariableInfo(o,r,n)}}}else if(!e.isGeneratedIdentifier(t.name)){var s=e.idText(t.name);if(!r.get(s)){r.set(s,true);n=e.append(n,t.name)}}return n}function multiMapSparseArrayAdd(e,t,r){var n=e[t];if(n){n.push(r)}else{e[t]=n=[r]}return n}function isSimpleCopiableExpression(t){return e.isStringLiteralLike(t)||t.kind===8||e.isKeyword(t.kind)||e.isIdentifier(t)}e.isSimpleCopiableExpression=isSimpleCopiableExpression;function helperString(e){var t=[];for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}return function(r){var n="";for(var i=0;i<t.length;i++){n+=e[i];n+=r(t[i])}n+=e[e.length-1];return n}}e.helperString=helperString})(s||(s={}));var s;(function(e){var t;(function(e){e[e["All"]=0]="All";e[e["ObjectRest"]=1]="ObjectRest"})(t=e.FlattenLevel||(e.FlattenLevel={}));function flattenDestructuringAssignment(t,r,n,i,a,o){var s=t;var c;if(e.isDestructuringAssignment(t)){c=t.right;while(e.isEmptyArrayLiteral(t.left)||e.isEmptyObjectLiteral(t.left)){if(e.isDestructuringAssignment(c)){s=t=c;c=t.right}else{return e.visitNode(c,r,e.isExpression)}}}var u;var l={context:n,level:i,downlevelIteration:!!n.getCompilerOptions().downlevelIteration,hoistTempVariables:true,emitExpression:emitExpression,emitBindingOrAssignment:emitBindingOrAssignment,createArrayBindingOrAssignmentPattern:makeArrayAssignmentPattern,createObjectBindingOrAssignmentPattern:makeObjectAssignmentPattern,createArrayBindingOrAssignmentElement:makeAssignmentElement,visitor:r};if(c){c=e.visitNode(c,r,e.isExpression);if(e.isIdentifier(c)&&bindingOrAssignmentElementAssignsToName(t,c.escapedText)){c=ensureIdentifier(l,c,false,s)}else if(a){c=ensureIdentifier(l,c,true,s)}else if(e.nodeIsSynthesized(t)){s=c}}flattenBindingOrAssignmentElement(l,t,c,s,e.isDestructuringAssignment(t));if(c&&a){if(!e.some(u)){return c}u.push(c)}return e.aggregateTransformFlags(e.inlineExpressions(u))||e.createOmittedExpression();function emitExpression(t){e.setEmitFlags(t,64);e.aggregateTransformFlags(t);u=e.append(u,t)}function emitBindingOrAssignment(t,n,i,a){e.Debug.assertNode(t,o?e.isIdentifier:e.isExpression);var s=o?o(t,n,i):e.setTextRange(e.createAssignment(e.visitNode(t,r,e.isExpression),n),i);s.original=a;emitExpression(s)}}e.flattenDestructuringAssignment=flattenDestructuringAssignment;function bindingOrAssignmentElementAssignsToName(t,r){var n=e.getTargetOfBindingOrAssignmentElement(t);if(e.isBindingOrAssignmentPattern(n)){return bindingOrAssignmentPatternAssignsToName(n,r)}else if(e.isIdentifier(n)){return n.escapedText===r}return false}function bindingOrAssignmentPatternAssignsToName(t,r){var n=e.getElementsOfBindingOrAssignmentPattern(t);for(var i=0,a=n;i<a.length;i++){var o=a[i];if(bindingOrAssignmentElementAssignsToName(o,r)){return true}}return false}function flattenDestructuringBinding(t,r,n,i,a,o,s){if(o===void 0){o=false}var c;var u=[];var l=[];var f={context:n,level:i,downlevelIteration:!!n.getCompilerOptions().downlevelIteration,hoistTempVariables:o,emitExpression:emitExpression,emitBindingOrAssignment:emitBindingOrAssignment,createArrayBindingOrAssignmentPattern:makeArrayBindingPattern,createObjectBindingOrAssignmentPattern:makeObjectBindingPattern,createArrayBindingOrAssignmentElement:makeBindingElement,visitor:r};if(e.isVariableDeclaration(t)){var d=e.getInitializerOfBindingOrAssignmentElement(t);if(d&&e.isIdentifier(d)&&bindingOrAssignmentElementAssignsToName(t,d.escapedText)){d=ensureIdentifier(f,d,false,d);t=e.updateVariableDeclaration(t,t.name,t.type,d)}}flattenBindingOrAssignmentElement(f,t,a,t,s);if(c){var p=e.createTempVariable(undefined);if(o){var g=e.inlineExpressions(c);c=undefined;emitBindingOrAssignment(p,g,undefined,undefined)}else{n.hoistVariableDeclaration(p);var _=e.last(u);_.pendingExpressions=e.append(_.pendingExpressions,e.createAssignment(p,_.value));e.addRange(_.pendingExpressions,c);_.value=p}}for(var m=0,y=u;m<y.length;m++){var h=y[m],v=h.pendingExpressions,T=h.name,g=h.value,S=h.location,b=h.original;var x=e.createVariableDeclaration(T,undefined,v?e.inlineExpressions(e.append(v,g)):g);x.original=b;e.setTextRange(x,S);if(e.isIdentifier(T)){e.setEmitFlags(x,64)}e.aggregateTransformFlags(x);l.push(x)}return l;function emitExpression(t){c=e.append(c,t)}function emitBindingOrAssignment(t,r,n,i){e.Debug.assertNode(t,e.isBindingName);if(c){r=e.inlineExpressions(e.append(c,r));c=undefined}u.push({pendingExpressions:c,name:t,value:r,location:n,original:i})}}e.flattenDestructuringBinding=flattenDestructuringBinding;function flattenBindingOrAssignmentElement(t,r,n,i,a){if(!a){var o=e.visitNode(e.getInitializerOfBindingOrAssignmentElement(r),t.visitor,e.isExpression);if(o){n=n?createDefaultValueCheck(t,n,o,i):o}else if(!n){n=e.createVoidZero()}}var s=e.getTargetOfBindingOrAssignmentElement(r);if(e.isObjectBindingOrAssignmentPattern(s)){flattenObjectBindingOrAssignmentPattern(t,r,s,n,i)}else if(e.isArrayBindingOrAssignmentPattern(s)){flattenArrayBindingOrAssignmentPattern(t,r,s,n,i)}else{t.emitBindingOrAssignment(s,n,i,r)}}function flattenObjectBindingOrAssignmentPattern(t,r,n,i,a){var o=e.getElementsOfBindingOrAssignmentPattern(n);var s=o.length;if(s!==1){var c=!e.isDeclarationBindingElement(r)||s!==0;i=ensureIdentifier(t,i,c,a)}var u;var l;for(var f=0;f<s;f++){var d=o[f];if(!e.getRestIndicatorOfBindingOrAssignmentElement(d)){var p=e.getPropertyNameOfBindingOrAssignmentElement(d);if(t.level>=1&&!(d.transformFlags&(131072|262144))&&!(e.getTargetOfBindingOrAssignmentElement(d).transformFlags&(131072|262144))&&!e.isComputedPropertyName(p)){u=e.append(u,d)}else{if(u){t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(u),i,a,n);u=undefined}var g=createDestructuringPropertyAccess(t,i,p);if(e.isComputedPropertyName(p)){l=e.append(l,g.argumentExpression)}flattenBindingOrAssignmentElement(t,d,g,d)}}else if(f===s-1){if(u){t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(u),i,a,n);u=undefined}var g=createRestCall(t.context,i,o,l,n);flattenBindingOrAssignmentElement(t,d,g,d)}}if(u){t.emitBindingOrAssignment(t.createObjectBindingOrAssignmentPattern(u),i,a,n)}}function flattenArrayBindingOrAssignmentPattern(t,r,n,i,a){var o=e.getElementsOfBindingOrAssignmentPattern(n);var s=o.length;if(t.level<1&&t.downlevelIteration){i=ensureIdentifier(t,e.createReadHelper(t.context,i,s>0&&e.getRestIndicatorOfBindingOrAssignmentElement(o[s-1])?undefined:s,a),false,a)}else if(s!==1&&(t.level<1||s===0)||e.every(o,e.isOmittedExpression)){var c=!e.isDeclarationBindingElement(r)||s!==0;i=ensureIdentifier(t,i,c,a)}var u;var l;for(var f=0;f<s;f++){var d=o[f];if(t.level>=1){if(d.transformFlags&262144){var p=e.createTempVariable(undefined);if(t.hoistTempVariables){t.context.hoistVariableDeclaration(p)}l=e.append(l,[p,d]);u=e.append(u,t.createArrayBindingOrAssignmentElement(p))}else{u=e.append(u,d)}}else if(e.isOmittedExpression(d)){continue}else if(!e.getRestIndicatorOfBindingOrAssignmentElement(d)){var g=e.createElementAccess(i,f);flattenBindingOrAssignmentElement(t,d,g,d)}else if(f===s-1){var g=e.createArraySlice(i,f);flattenBindingOrAssignmentElement(t,d,g,d)}}if(u){t.emitBindingOrAssignment(t.createArrayBindingOrAssignmentPattern(u),i,a,n)}if(l){for(var _=0,m=l;_<m.length;_++){var y=m[_],h=y[0],d=y[1];flattenBindingOrAssignmentElement(t,d,h,d)}}}function createDefaultValueCheck(t,r,n,i){r=ensureIdentifier(t,r,true,i);return e.createConditional(e.createTypeCheck(r,"undefined"),n,r)}function createDestructuringPropertyAccess(t,r,n){if(e.isComputedPropertyName(n)){var i=ensureIdentifier(t,e.visitNode(n.expression,t.visitor),false,n);return e.createElementAccess(r,i)}else if(e.isStringOrNumericLiteralLike(n)){var i=e.getSynthesizedClone(n);i.text=i.text;return e.createElementAccess(r,i)}else{var a=e.createIdentifier(e.idText(n));return e.createPropertyAccess(r,a)}}function ensureIdentifier(t,r,n,i){if(e.isIdentifier(r)&&n){return r}else{var a=e.createTempVariable(undefined);if(t.hoistTempVariables){t.context.hoistVariableDeclaration(a);t.emitExpression(e.setTextRange(e.createAssignment(a,r),i))}else{t.emitBindingOrAssignment(a,r,i,undefined)}return a}}function makeArrayBindingPattern(t){e.Debug.assertEachNode(t,e.isArrayBindingElement);return e.createArrayBindingPattern(t)}function makeArrayAssignmentPattern(t){return e.createArrayLiteral(e.map(t,e.convertToArrayAssignmentElement))}function makeObjectBindingPattern(t){e.Debug.assertEachNode(t,e.isBindingElement);return e.createObjectBindingPattern(t)}function makeObjectAssignmentPattern(t){return e.createObjectLiteral(e.map(t,e.convertToObjectAssignmentElement))}function makeBindingElement(t){return e.createBindingElement(undefined,undefined,t)}function makeAssignmentElement(e){return e}var r={name:"typescript:rest",scoped:false,text:'\n var __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === "function")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)\n t[p[i]] = s[p[i]];\n return t;\n };'};function createRestCall(t,n,i,a,o){t.requestEmitHelper(r);var s=[];var c=0;for(var u=0;u<i.length-1;u++){var l=e.getPropertyNameOfBindingOrAssignmentElement(i[u]);if(l){if(e.isComputedPropertyName(l)){var f=a[c];c++;s.push(e.createConditional(e.createTypeCheck(f,"symbol"),f,e.createAdd(f,e.createLiteral(""))))}else{s.push(e.createLiteral(l))}}}return e.createCall(e.getHelperName("__rest"),undefined,[n,e.setTextRange(e.createArrayLiteral(s),o)])}})(s||(s={}));var s;(function(e){var t=false;var r;(function(e){e[e["ClassAliases"]=1]="ClassAliases";e[e["NamespaceExports"]=2]="NamespaceExports";e[e["NonQualifiedEnumMembers"]=8]="NonQualifiedEnumMembers"})(r||(r={}));var n;(function(e){e[e["None"]=0]="None";e[e["HasStaticInitializedProperties"]=1]="HasStaticInitializedProperties";e[e["HasConstructorDecorators"]=2]="HasConstructorDecorators";e[e["HasMemberDecorators"]=4]="HasMemberDecorators";e[e["IsExportOfNamespace"]=8]="IsExportOfNamespace";e[e["IsNamedExternalExport"]=16]="IsNamedExternalExport";e[e["IsDefaultExternalExport"]=32]="IsDefaultExternalExport";e[e["IsDerivedClass"]=64]="IsDerivedClass";e[e["UseImmediatelyInvokedFunctionExpression"]=128]="UseImmediatelyInvokedFunctionExpression";e[e["HasAnyDecorators"]=6]="HasAnyDecorators";e[e["NeedsName"]=5]="NeedsName";e[e["MayNeedImmediatelyInvokedFunctionExpression"]=7]="MayNeedImmediatelyInvokedFunctionExpression";e[e["IsExported"]=56]="IsExported"})(n||(n={}));function transformTypeScript(r){var n=r.startLexicalEnvironment,i=r.resumeLexicalEnvironment,a=r.endLexicalEnvironment,o=r.hoistVariableDeclaration;var s=r.getEmitResolver();var c=r.getCompilerOptions();var u=e.getStrictOptionValue(c,"strictNullChecks");var l=e.getEmitScriptTarget(c);var f=e.getEmitModuleKind(c);var d=r.onEmitNode;var p=r.onSubstituteNode;r.onEmitNode=onEmitNode;r.onSubstituteNode=onSubstituteNode;r.enableSubstitution(189);r.enableSubstitution(190);var g;var _;var m;var y;var h;var v;var T;var S;var b;var x;return transformSourceFileOrBundle;function transformSourceFileOrBundle(e){if(e.kind===280){return transformBundle(e)}return transformSourceFile(e)}function transformBundle(t){return e.createBundle(t.sourceFiles.map(transformSourceFile),e.mapDefined(t.prepends,function(t){if(t.kind===282){return e.createUnparsedSourceFile(t.javascriptText,t.javascriptMapPath,t.javascriptMapText)}return t}))}function transformSourceFile(t){if(t.isDeclarationFile){return t}g=t;var n=saveStateAndInvoke(t,visitSourceFile);e.addEmitHelpers(n,r.readEmitHelpers());g=undefined;return n}function saveStateAndInvoke(e,t){var r=y;var n=h;var i=v;onBeforeVisitNode(e);var a=t(e);if(y!==r){v=i}y=r;h=n;return a}function onBeforeVisitNode(t){switch(t.kind){case 279:case 246:case 245:case 218:y=t;h=undefined;v=undefined;break;case 240:case 239:if(e.hasModifier(t,2)){break}if(t.name){recordEmittedDeclarationInScope(t)}else{e.Debug.assert(t.kind===240||e.hasModifier(t,512))}if(e.isClassDeclaration(t)){h=t}break}}function visitor(e){return saveStateAndInvoke(e,visitorWorker)}function visitorWorker(t){if(t.transformFlags&1){return visitTypeScript(t)}else if(t.transformFlags&2){return e.visitEachChild(t,visitor,r)}return t}function sourceElementVisitor(e){return saveStateAndInvoke(e,sourceElementVisitorWorker)}function sourceElementVisitorWorker(e){switch(e.kind){case 249:case 248:case 254:case 255:return visitEllidableStatement(e);default:return visitorWorker(e)}}function visitEllidableStatement(t){var n=e.getParseTreeNode(t);if(n!==t){if(t.transformFlags&2){return e.visitEachChild(t,visitor,r)}return t}switch(t.kind){case 249:return visitImportDeclaration(t);case 248:return visitImportEqualsDeclaration(t);case 254:return visitExportAssignment(t);case 255:return visitExportDeclaration(t);default:e.Debug.fail("Unhandled ellided statement")}}function namespaceElementVisitor(e){return saveStateAndInvoke(e,namespaceElementVisitorWorker)}function namespaceElementVisitorWorker(t){if(t.kind===255||t.kind===249||t.kind===250||t.kind===248&&t.moduleReference.kind===259){return undefined}else if(t.transformFlags&1||e.hasModifier(t,1)){return visitTypeScript(t)}else if(t.transformFlags&2){return e.visitEachChild(t,visitor,r)}return t}function classElementVisitor(e){return saveStateAndInvoke(e,classElementVisitorWorker)}function classElementVisitorWorker(t){switch(t.kind){case 157:return undefined;case 154:case 162:case 158:case 159:case 156:return visitorWorker(t);case 217:return t;default:return e.Debug.failBadSyntaxKind(t)}}function modifierVisitor(t){if(e.modifierToFlag(t.kind)&2270){return undefined}else if(_&&t.kind===85){return undefined}return t}function visitTypeScript(t){if(e.hasModifier(t,2)&&e.isStatement(t)){return e.createNotEmittedStatement(t)}switch(t.kind){case 85:case 80:return _?undefined:t;case 115:case 113:case 114:case 118:case 77:case 125:case 133:case 169:case 170:case 171:case 172:case 168:case 163:case 150:case 120:case 143:case 123:case 138:case 135:case 132:case 106:case 139:case 166:case 165:case 167:case 164:case 173:case 174:case 175:case 177:case 178:case 179:case 180:case 181:case 182:case 162:case 152:case 242:return undefined;case 154:return visitPropertyDeclaration(t);case 247:return undefined;case 157:return visitConstructor(t);case 241:return e.createNotEmittedStatement(t);case 240:return visitClassDeclaration(t);case 209:return visitClassExpression(t);case 273:return visitHeritageClause(t);case 211:return visitExpressionWithTypeArguments(t);case 156:return visitMethodDeclaration(t);case 158:return visitGetAccessor(t);case 159:return visitSetAccessor(t);case 239:return visitFunctionDeclaration(t);case 196:return visitFunctionExpression(t);case 197:return visitArrowFunction(t);case 151:return visitParameter(t);case 195:return visitParenthesizedExpression(t);case 194:case 212:return visitAssertionExpression(t);case 191:return visitCallExpression(t);case 192:return visitNewExpression(t);case 193:return visitTaggedTemplateExpression(t);case 213:return visitNonNullExpression(t);case 243:return visitEnumDeclaration(t);case 219:return visitVariableStatement(t);case 237:return visitVariableDeclaration(t);case 244:return visitModuleDeclaration(t);case 248:return visitImportEqualsDeclaration(t);default:return e.Debug.failBadSyntaxKind(t)}}function visitSourceFile(t){var n=e.getStrictOptionValue(c,"alwaysStrict")&&!(e.isExternalModule(t)&&f>=e.ModuleKind.ES2015)&&!e.isJsonSourceFile(t);return e.updateSourceFileNode(t,e.visitLexicalEnvironment(t.statements,sourceElementVisitor,r,0,n))}function shouldEmitDecorateCallForClass(t){if(t.decorators&&t.decorators.length>0){return true}var r=e.getFirstConstructorWithBody(t);if(r){return e.forEach(r.parameters,shouldEmitDecorateCallForParameter)}return false}function shouldEmitDecorateCallForParameter(e){return e.decorators!==undefined&&e.decorators.length>0}function getClassFacts(t,r){var n=0;if(e.some(r))n|=1;var i=e.getEffectiveBaseTypeNode(t);if(i&&e.skipOuterExpressions(i.expression).kind!==96)n|=64;if(shouldEmitDecorateCallForClass(t))n|=2;if(e.childIsDecorated(t))n|=4;if(isExportOfNamespace(t))n|=8;else if(isDefaultExternalModuleExport(t))n|=32;else if(isNamedExternalModuleExport(t))n|=16;if(l<=1&&n&7)n|=128;return n}function visitClassDeclaration(t){var n=x;x=undefined;var i=getInitializedProperties(t,true);var a=getClassFacts(t,i);if(a&128){r.startLexicalEnvironment()}var o=t.name||(a&5?e.getGeneratedNameForNode(t):undefined);var s=a&2?createClassDeclarationHeadWithDecorators(t,o,a):createClassDeclarationHeadWithoutDecorators(t,o,a);var c=[s];if(e.some(x)){c.push(e.createExpressionStatement(e.inlineExpressions(x)))}x=n;if(a&1){addInitializedPropertyStatements(c,i,a&128?e.getInternalName(t):e.getLocalName(t))}addClassElementDecorationStatements(c,t,false);addClassElementDecorationStatements(c,t,true);addConstructorDecorationStatement(c,t);if(a&128){var u=e.createTokenRange(e.skipTrivia(g.text,t.members.end),19);var l=e.getInternalName(t);var f=e.createPartiallyEmittedExpression(l);f.end=u.end;e.setEmitFlags(f,1536);var d=e.createReturn(f);d.pos=u.pos;e.setEmitFlags(d,1536|384);c.push(d);e.addStatementsAfterPrologue(c,r.endLexicalEnvironment());var p=e.createImmediatelyInvokedArrowFunction(c);e.setEmitFlags(p,33554432);var _=e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.getLocalName(t,false,false),undefined,p)]));e.setOriginalNode(_,t);e.setCommentRange(_,t);e.setSourceMapRange(_,e.moveRangePastDecorators(t));e.startOnNewLine(_);c=[_]}if(a&8){addExportMemberAssignment(c,t)}else if(a&128||a&2){if(a&32){c.push(e.createExportDefault(e.getLocalName(t,false,true)))}else if(a&16){c.push(e.createExternalModuleExport(e.getLocalName(t,false,true)))}}if(c.length>1){c.push(e.createEndOfDeclarationMarker(t));e.setEmitFlags(s,e.getEmitFlags(s)|4194304)}return e.singleOrMany(c)}function createClassDeclarationHeadWithoutDecorators(t,r,n){var i=!(n&128)?e.visitNodes(t.modifiers,modifierVisitor,e.isModifier):undefined;var a=e.createClassDeclaration(undefined,i,r,undefined,e.visitNodes(t.heritageClauses,visitor,e.isHeritageClause),transformClassMembers(t,(n&64)!==0));var o=e.getEmitFlags(t);if(n&1){o|=32}e.setTextRange(a,t);e.setOriginalNode(a,t);e.setEmitFlags(a,o);return a}function createClassDeclarationHeadWithDecorators(t,r,n){var i=e.moveRangePastDecorators(t);var a=getClassAliasIfNeeded(t);var o=e.getLocalName(t,false,true);var s=e.visitNodes(t.heritageClauses,visitor,e.isHeritageClause);var c=transformClassMembers(t,(n&64)!==0);var u=e.createClassExpression(undefined,r,undefined,s,c);e.setOriginalNode(u,t);e.setTextRange(u,i);var l=e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(o,undefined,a?e.createAssignment(a,u):u)],1));e.setOriginalNode(l,t);e.setTextRange(l,i);e.setCommentRange(l,t);return l}function visitClassExpression(t){var r=x;x=undefined;var n=getInitializedProperties(t,true);var i=e.visitNodes(t.heritageClauses,visitor,e.isHeritageClause);var a=transformClassMembers(t,e.some(i,function(e){return e.token===86}));var c=e.createClassExpression(undefined,t.name,undefined,i,a);e.setOriginalNode(c,t);e.setTextRange(c,t);if(e.some(n)||e.some(x)){var u=[];var l=s.getNodeCheckFlags(t)&16777216;var f=e.createTempVariable(o,!!l);if(l){enableSubstitutionForClassAliases();var d=e.getSynthesizedClone(f);d.autoGenerateFlags&=~8;S[e.getOriginalNodeId(t)]=d}e.setEmitFlags(c,65536|e.getEmitFlags(c));u.push(e.startOnNewLine(e.createAssignment(f,c)));e.addRange(u,e.map(x,e.startOnNewLine));x=r;e.addRange(u,generateInitializedPropertyExpressions(n,f));u.push(e.startOnNewLine(f));return e.inlineExpressions(u)}x=r;return c}function transformClassMembers(t,r){var n=[];var i=transformConstructor(t,r);if(i){n.push(i)}e.addRange(n,e.visitNodes(t.members,classElementVisitor,e.isClassElement));return e.setTextRange(e.createNodeArray(n),t.members)}function transformConstructor(t,n){var i=e.getFirstConstructorWithBody(t);var a=e.forEach(t.members,isInstanceInitializedProperty);var o=i&&i.transformFlags&4096&&e.forEach(i.parameters,isParameterWithPropertyAssignment);if(!a&&!o){return e.visitEachChild(i,visitor,r)}var s=transformConstructorParameters(i);var c=transformConstructorBody(t,i,n);return e.startOnNewLine(e.setOriginalNode(e.setTextRange(e.createConstructor(undefined,undefined,s,c),i||t),i))}function transformConstructorParameters(t){return e.visitParameterList(t&&t.parameters,visitor,r)||[]}function transformConstructorBody(t,r,n){var o=[];var s=0;i();if(r){s=addPrologueDirectivesAndInitialSuperCall(r,o);var c=getParametersWithPropertyAssignments(r);e.addRange(o,e.map(c,transformParameterWithPropertyAssignment))}else if(n){o.push(e.createExpressionStatement(e.createCall(e.createSuper(),undefined,[e.createSpread(e.createIdentifier("arguments"))])))}var u=getInitializedProperties(t,false);addInitializedPropertyStatements(o,u,e.createThis());if(r){e.addRange(o,e.visitNodes(r.body.statements,visitor,e.isStatement,s))}o=e.mergeLexicalEnvironment(o,a());return e.setTextRange(e.createBlock(e.setTextRange(e.createNodeArray(o),r?r.body.statements:t.members),true),r?r.body:undefined)}function addPrologueDirectivesAndInitialSuperCall(t,r){if(t.body){var n=t.body.statements;var i=e.addPrologue(r,n,false,visitor);if(i===n.length){return i}var a=n[i];if(a.kind===221&&e.isSuperCall(a.expression)){r.push(e.visitNode(a,visitor,e.isStatement));return i+1}return i}return 0}function getParametersWithPropertyAssignments(t){return e.filter(t.parameters,isParameterWithPropertyAssignment)}function isParameterWithPropertyAssignment(t){return e.hasModifier(t,92)&&e.isIdentifier(t.name)}function transformParameterWithPropertyAssignment(t){e.Debug.assert(e.isIdentifier(t.name));var r=t.name;var n=e.getMutableClone(r);e.setEmitFlags(n,1536|48);var i=e.getMutableClone(r);e.setEmitFlags(i,1536);return e.startOnNewLine(e.setEmitFlags(e.setTextRange(e.createExpressionStatement(e.createAssignment(e.setTextRange(e.createPropertyAccess(e.createThis(),n),t.name),i)),e.moveRangePos(t,-1)),1536))}function getInitializedProperties(t,r){return e.filter(t.members,r?isStaticInitializedProperty:isInstanceInitializedProperty)}function isStaticInitializedProperty(e){return isInitializedProperty(e,true)}function isInstanceInitializedProperty(e){return isInitializedProperty(e,false)}function isInitializedProperty(t,r){return t.kind===154&&r===e.hasModifier(t,32)&&t.initializer!==undefined}function addInitializedPropertyStatements(t,r,n){for(var i=0,a=r;i<a.length;i++){var o=a[i];var s=e.createExpressionStatement(transformInitializedProperty(o,n));e.setSourceMapRange(s,e.moveRangePastModifiers(o));e.setCommentRange(s,o);e.setOriginalNode(s,o);t.push(s)}}function generateInitializedPropertyExpressions(t,r){var n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i];var s=transformInitializedProperty(o,r);e.startOnNewLine(s);e.setSourceMapRange(s,e.moveRangePastModifiers(o));e.setCommentRange(s,o);e.setOriginalNode(s,o);n.push(s)}return n}function transformInitializedProperty(t,r){var n=e.isComputedPropertyName(t.name)&&!isSimpleInlineableExpression(t.name.expression)?e.updateComputedPropertyName(t.name,e.getGeneratedNameForNode(t.name)):t.name;var i=e.visitNode(t.initializer,visitor,e.isExpression);var a=e.createMemberAccessForPropertyName(r,n,n);return e.createAssignment(a,i)}function getDecoratedClassElements(t,r){return e.filter(t.members,r?function(e){return isStaticDecoratedClassElement(e,t)}:function(e){return isInstanceDecoratedClassElement(e,t)})}function isStaticDecoratedClassElement(e,t){return isDecoratedClassElement(e,true,t)}function isInstanceDecoratedClassElement(e,t){return isDecoratedClassElement(e,false,t)}function isDecoratedClassElement(t,r,n){return e.nodeOrChildIsDecorated(t,n)&&r===e.hasModifier(t,32)}function getDecoratorsOfParameters(e){var t;if(e){var r=e.parameters;for(var n=0;n<r.length;n++){var i=r[n];if(t||i.decorators){if(!t){t=new Array(r.length)}t[n]=i.decorators}}}return t}function getAllDecoratorsOfConstructor(t){var r=t.decorators;var n=getDecoratorsOfParameters(e.getFirstConstructorWithBody(t));if(!r&&!n){return undefined}return{decorators:r,parameters:n}}function getAllDecoratorsOfClassElement(e,t){switch(t.kind){case 158:case 159:return getAllDecoratorsOfAccessors(e,t);case 156:return getAllDecoratorsOfMethod(t);case 154:return getAllDecoratorsOfProperty(t);default:return undefined}}function getAllDecoratorsOfAccessors(t,r){if(!r.body){return undefined}var n=e.getAllAccessorDeclarations(t.members,r),i=n.firstAccessor,a=n.secondAccessor,o=n.setAccessor;var s=i.decorators?i:a&&a.decorators?a:undefined;if(!s||r!==s){return undefined}var c=s.decorators;var u=getDecoratorsOfParameters(o);if(!c&&!u){return undefined}return{decorators:c,parameters:u}}function getAllDecoratorsOfMethod(e){if(!e.body){return undefined}var t=e.decorators;var r=getDecoratorsOfParameters(e);if(!t&&!r){return undefined}return{decorators:t,parameters:r}}function getAllDecoratorsOfProperty(e){var t=e.decorators;if(!t){return undefined}return{decorators:t}}function transformAllDecoratorsOfDeclaration(t,r,n){if(!n){return undefined}var i=[];e.addRange(i,e.map(n.decorators,transformDecorator));e.addRange(i,e.flatMap(n.parameters,transformDecoratorsOfParameter));addTypeMetadata(t,r,i);return i}function addClassElementDecorationStatements(t,r,n){e.addRange(t,e.map(generateClassElementDecorationExpressions(r,n),expressionToStatement))}function generateClassElementDecorationExpressions(e,t){var r=getDecoratedClassElements(e,t);var n;for(var i=0,a=r;i<a.length;i++){var o=a[i];var s=generateClassElementDecorationExpression(e,o);if(s){if(!n){n=[s]}else{n.push(s)}}}return n}function generateClassElementDecorationExpression(t,n){var i=getAllDecoratorsOfClassElement(t,n);var a=transformAllDecoratorsOfDeclaration(n,t,i);if(!a){return undefined}var o=getClassMemberPrefix(t,n);var s=getExpressionForPropertyName(n,true);var c=l>0?n.kind===154?e.createVoidZero():e.createNull():undefined;var u=createDecorateHelper(r,a,o,s,c,e.moveRangePastDecorators(n));e.setEmitFlags(u,1536);return u}function addConstructorDecorationStatement(t,r){var n=generateConstructorDecorationExpression(r);if(n){t.push(e.setOriginalNode(e.createExpressionStatement(n),r))}}function generateConstructorDecorationExpression(t){var n=getAllDecoratorsOfConstructor(t);var i=transformAllDecoratorsOfDeclaration(t,t,n);if(!i){return undefined}var a=S&&S[e.getOriginalNodeId(t)];var o=e.getLocalName(t,false,true);var s=createDecorateHelper(r,i,o);var c=e.createAssignment(o,a?e.createAssignment(a,s):s);e.setEmitFlags(c,1536);e.setSourceMapRange(c,e.moveRangePastDecorators(t));return c}function transformDecorator(t){return e.visitNode(t.expression,visitor,e.isExpression)}function transformDecoratorsOfParameter(t,n){var i;if(t){i=[];for(var a=0,o=t;a<o.length;a++){var s=o[a];var c=createParamHelper(r,transformDecorator(s),n,s.expression);e.setEmitFlags(c,1536);i.push(c)}}return i}function addTypeMetadata(e,r,n){if(t){addNewTypeMetadata(e,r,n)}else{addOldTypeMetadata(e,r,n)}}function addOldTypeMetadata(e,t,n){if(c.emitDecoratorMetadata){if(shouldAddTypeMetadata(e)){n.push(createMetadataHelper(r,"design:type",serializeTypeOfNode(e)))}if(shouldAddParamTypesMetadata(e)){n.push(createMetadataHelper(r,"design:paramtypes",serializeParameterTypesOfNode(e,t)))}if(shouldAddReturnTypeMetadata(e)){n.push(createMetadataHelper(r,"design:returntype",serializeReturnTypeOfNode(e)))}}}function addNewTypeMetadata(t,n,i){if(c.emitDecoratorMetadata){var a=void 0;if(shouldAddTypeMetadata(t)){(a||(a=[])).push(e.createPropertyAssignment("type",e.createArrowFunction(undefined,undefined,[],undefined,e.createToken(37),serializeTypeOfNode(t))))}if(shouldAddParamTypesMetadata(t)){(a||(a=[])).push(e.createPropertyAssignment("paramTypes",e.createArrowFunction(undefined,undefined,[],undefined,e.createToken(37),serializeParameterTypesOfNode(t,n))))}if(shouldAddReturnTypeMetadata(t)){(a||(a=[])).push(e.createPropertyAssignment("returnType",e.createArrowFunction(undefined,undefined,[],undefined,e.createToken(37),serializeReturnTypeOfNode(t))))}if(a){i.push(createMetadataHelper(r,"design:typeinfo",e.createObjectLiteral(a,true)))}}}function shouldAddTypeMetadata(e){var t=e.kind;return t===156||t===158||t===159||t===154}function shouldAddReturnTypeMetadata(e){return e.kind===156}function shouldAddParamTypesMetadata(t){switch(t.kind){case 240:case 209:return e.getFirstConstructorWithBody(t)!==undefined;case 156:case 158:case 159:return true}return false}function getAccessorTypeNode(t){var r=s.getAllAccessorDeclarations(t);return r.setAccessor&&e.getSetAccessorTypeAnnotationNode(r.setAccessor)||r.getAccessor&&e.getEffectiveReturnTypeNode(r.getAccessor)}function serializeTypeOfNode(t){switch(t.kind){case 154:case 151:return serializeTypeNode(t.type);case 159:case 158:return serializeTypeNode(getAccessorTypeNode(t));case 240:case 209:case 156:return e.createIdentifier("Function");default:return e.createVoidZero()}}function serializeParameterTypesOfNode(t,r){var n=e.isClassLike(t)?e.getFirstConstructorWithBody(t):e.isFunctionLike(t)&&e.nodeIsPresent(t.body)?t:undefined;var i=[];if(n){var a=getParametersOfDecoratedDeclaration(n,r);var o=a.length;for(var s=0;s<o;s++){var c=a[s];if(s===0&&e.isIdentifier(c.name)&&c.name.escapedText==="this"){continue}if(c.dotDotDotToken){i.push(serializeTypeNode(e.getRestParameterElementType(c.type)))}else{i.push(serializeTypeOfNode(c))}}}return e.createArrayLiteral(i)}function getParametersOfDecoratedDeclaration(t,r){if(r&&t.kind===158){var n=e.getAllAccessorDeclarations(r.members,t).setAccessor;if(n){return n.parameters}}return t.parameters}function serializeReturnTypeOfNode(t){if(e.isFunctionLike(t)&&t.type){return serializeTypeNode(t.type)}else if(e.isAsyncFunction(t)){return e.createIdentifier("Promise")}return e.createVoidZero()}function serializeTypeNode(t){if(t===undefined){return e.createIdentifier("Object")}switch(t.kind){case 106:case 141:case 96:case 132:return e.createVoidZero();case 177:return serializeTypeNode(t.type);case 165:case 166:return e.createIdentifier("Function");case 169:case 170:return e.createIdentifier("Array");case 163:case 123:return e.createIdentifier("Boolean");case 138:return e.createIdentifier("String");case 136:return e.createIdentifier("Object");case 182:switch(t.literal.kind){case 10:return e.createIdentifier("String");case 8:return e.createIdentifier("Number");case 9:return getGlobalBigIntNameWithFallback();case 102:case 87:return e.createIdentifier("Boolean");default:return e.Debug.failBadSyntaxKind(t.literal)}case 135:return e.createIdentifier("Number");case 146:return getGlobalBigIntNameWithFallback();case 139:return l<2?getGlobalSymbolNameWithFallback():e.createIdentifier("Symbol");case 164:return serializeTypeReferenceNode(t);case 174:case 173:return serializeTypeList(t.types);case 175:return serializeTypeList([t.trueType,t.falseType]);case 167:case 179:case 180:case 181:case 168:case 120:case 143:case 178:case 183:break;default:return e.Debug.failBadSyntaxKind(t)}return e.createIdentifier("Object")}function serializeTypeList(t){var r;for(var n=0,i=t;n<i.length;n++){var a=i[n];while(a.kind===177){a=a.type}if(a.kind===132){continue}if(!u&&(a.kind===96||a.kind===141)){continue}var o=serializeTypeNode(a);if(e.isIdentifier(o)&&o.escapedText==="Object"){return o}else if(r){if(!e.isIdentifier(r)||!e.isIdentifier(o)||r.escapedText!==o.escapedText){return e.createIdentifier("Object")}}else{r=o}}return r||e.createVoidZero()}function serializeTypeReferenceNode(t){var r=s.getTypeReferenceSerializationKind(t.typeName,h||y);switch(r){case e.TypeReferenceSerializationKind.Unknown:if(e.findAncestor(t,function(t){return t.parent&&e.isConditionalTypeNode(t.parent)&&(t.parent.trueType===t||t.parent.falseType===t)})){return e.createIdentifier("Object")}var n=serializeEntityNameAsExpressionFallback(t.typeName);var i=e.createTempVariable(o);return e.createConditional(e.createTypeCheck(e.createAssignment(i,n),"function"),i,e.createIdentifier("Object"));case e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue:return serializeEntityNameAsExpression(t.typeName);case e.TypeReferenceSerializationKind.VoidNullableOrNeverType:return e.createVoidZero();case e.TypeReferenceSerializationKind.BigIntLikeType:return getGlobalBigIntNameWithFallback();case e.TypeReferenceSerializationKind.BooleanType:return e.createIdentifier("Boolean");case e.TypeReferenceSerializationKind.NumberLikeType:return e.createIdentifier("Number");case e.TypeReferenceSerializationKind.StringLikeType:return e.createIdentifier("String");case e.TypeReferenceSerializationKind.ArrayLikeType:return e.createIdentifier("Array");case e.TypeReferenceSerializationKind.ESSymbolType:return l<2?getGlobalSymbolNameWithFallback():e.createIdentifier("Symbol");case e.TypeReferenceSerializationKind.TypeWithCallSignature:return e.createIdentifier("Function");case e.TypeReferenceSerializationKind.Promise:return e.createIdentifier("Promise");case e.TypeReferenceSerializationKind.ObjectType:return e.createIdentifier("Object");default:return e.Debug.assertNever(r)}}function createCheckedValue(t,r){return e.createLogicalAnd(e.createStrictInequality(e.createTypeOf(t),e.createLiteral("undefined")),r)}function serializeEntityNameAsExpressionFallback(t){if(t.kind===72){var r=serializeEntityNameAsExpression(t);return createCheckedValue(r,r)}if(t.left.kind===72){return createCheckedValue(serializeEntityNameAsExpression(t.left),serializeEntityNameAsExpression(t))}var n=serializeEntityNameAsExpressionFallback(t.left);var i=e.createTempVariable(o);return e.createLogicalAnd(e.createLogicalAnd(n.left,e.createStrictInequality(e.createAssignment(i,n.right),e.createVoidZero())),e.createPropertyAccess(i,t.right))}function serializeEntityNameAsExpression(t){switch(t.kind){case 72:var r=e.getMutableClone(t);r.flags&=~8;r.original=undefined;r.parent=e.getParseTreeNode(y);return r;case 148:return serializeQualifiedNameAsExpression(t)}}function serializeQualifiedNameAsExpression(t){return e.createPropertyAccess(serializeEntityNameAsExpression(t.left),t.right)}function getGlobalSymbolNameWithFallback(){return e.createConditional(e.createTypeCheck(e.createIdentifier("Symbol"),"function"),e.createIdentifier("Symbol"),e.createIdentifier("Object"))}function getGlobalBigIntNameWithFallback(){return l<6?e.createConditional(e.createTypeCheck(e.createIdentifier("BigInt"),"function"),e.createIdentifier("BigInt"),e.createIdentifier("Object")):e.createIdentifier("BigInt")}function isSimpleInlineableExpression(t){return!e.isIdentifier(t)&&e.isSimpleCopiableExpression(t)||e.isWellKnownSymbolSyntactically(t)}function getExpressionForPropertyName(t,r){var n=t.name;if(e.isComputedPropertyName(n)){return r&&!isSimpleInlineableExpression(n.expression)?e.getGeneratedNameForNode(n):n.expression}else if(e.isIdentifier(n)){return e.createLiteral(e.idText(n))}else{return e.getSynthesizedClone(n)}}function getPropertyNameExpressionIfNeeded(t,r,n){if(e.isComputedPropertyName(t)){var i=e.visitNode(t.expression,visitor,e.isExpression);var a=e.skipPartiallyEmittedExpressions(i);var s=isSimpleInlineableExpression(a);if(!s&&r){var c=e.getGeneratedNameForNode(t);o(c);return e.createAssignment(c,i)}return n&&(s||e.isIdentifier(a))?undefined:i}}function visitPropertyNameOfClassElement(t){var r=t.name;var n=getPropertyNameExpressionIfNeeded(r,e.some(t.decorators),false);if(n){if(e.some(x)){n=e.inlineExpressions(x.concat([n]));x.length=0}return e.updateComputedPropertyName(r,n)}else{return r}}function visitHeritageClause(t){if(t.token===86){var r=e.visitNodes(t.types,visitor,e.isExpressionWithTypeArguments,0,1);return e.setTextRange(e.createHeritageClause(86,r),t)}return undefined}function visitExpressionWithTypeArguments(t){return e.updateExpressionWithTypeArguments(t,undefined,e.visitNode(t.expression,visitor,e.isLeftHandSideExpression))}function shouldEmitFunctionLikeDeclaration(t){return!e.nodeIsMissing(t.body)}function visitPropertyDeclaration(t){var r=getPropertyNameExpressionIfNeeded(t.name,e.some(t.decorators)||!!t.initializer,true);if(r&&!isSimpleInlineableExpression(r)){(x||(x=[])).push(r)}return undefined}function visitConstructor(t){if(!shouldEmitFunctionLikeDeclaration(t)){return undefined}return e.updateConstructor(t,e.visitNodes(t.decorators,visitor,e.isDecorator),e.visitNodes(t.modifiers,visitor,e.isModifier),e.visitParameterList(t.parameters,visitor,r),e.visitFunctionBody(t.body,visitor,r))}function visitMethodDeclaration(t){if(!shouldEmitFunctionLikeDeclaration(t)){return undefined}var n=e.updateMethod(t,undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),t.asteriskToken,visitPropertyNameOfClassElement(t),undefined,undefined,e.visitParameterList(t.parameters,visitor,r),undefined,e.visitFunctionBody(t.body,visitor,r));if(n!==t){e.setCommentRange(n,t);e.setSourceMapRange(n,e.moveRangePastDecorators(t))}return n}function shouldEmitAccessorDeclaration(t){return!(e.nodeIsMissing(t.body)&&e.hasModifier(t,128))}function visitGetAccessor(t){if(!shouldEmitAccessorDeclaration(t)){return undefined}var n=e.updateGetAccessor(t,undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),visitPropertyNameOfClassElement(t),e.visitParameterList(t.parameters,visitor,r),undefined,e.visitFunctionBody(t.body,visitor,r)||e.createBlock([]));if(n!==t){e.setCommentRange(n,t);e.setSourceMapRange(n,e.moveRangePastDecorators(t))}return n}function visitSetAccessor(t){if(!shouldEmitAccessorDeclaration(t)){return undefined}var n=e.updateSetAccessor(t,undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),visitPropertyNameOfClassElement(t),e.visitParameterList(t.parameters,visitor,r),e.visitFunctionBody(t.body,visitor,r)||e.createBlock([]));if(n!==t){e.setCommentRange(n,t);e.setSourceMapRange(n,e.moveRangePastDecorators(t))}return n}function visitFunctionDeclaration(t){if(!shouldEmitFunctionLikeDeclaration(t)){return e.createNotEmittedStatement(t)}var n=e.updateFunctionDeclaration(t,undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),t.asteriskToken,t.name,undefined,e.visitParameterList(t.parameters,visitor,r),undefined,e.visitFunctionBody(t.body,visitor,r)||e.createBlock([]));if(isExportOfNamespace(t)){var i=[n];addExportMemberAssignment(i,t);return i}return n}function visitFunctionExpression(t){if(!shouldEmitFunctionLikeDeclaration(t)){return e.createOmittedExpression()}var n=e.updateFunctionExpression(t,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),t.asteriskToken,t.name,undefined,e.visitParameterList(t.parameters,visitor,r),undefined,e.visitFunctionBody(t.body,visitor,r)||e.createBlock([]));return n}function visitArrowFunction(t){var n=e.updateArrowFunction(t,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),undefined,e.visitParameterList(t.parameters,visitor,r),undefined,t.equalsGreaterThanToken,e.visitFunctionBody(t.body,visitor,r));return n}function visitParameter(t){if(e.parameterIsThisKeyword(t)){return undefined}var r=e.createParameter(undefined,undefined,t.dotDotDotToken,e.visitNode(t.name,visitor,e.isBindingName),undefined,undefined,e.visitNode(t.initializer,visitor,e.isExpression));e.setOriginalNode(r,t);e.setTextRange(r,e.moveRangePastModifiers(t));e.setCommentRange(r,t);e.setSourceMapRange(r,e.moveRangePastModifiers(t));e.setEmitFlags(r.name,32);return r}function visitVariableStatement(t){if(isExportOfNamespace(t)){var n=e.getInitializedVariables(t.declarationList);if(n.length===0){return undefined}return e.setTextRange(e.createExpressionStatement(e.inlineExpressions(e.map(n,transformInitializedVariable))),t)}else{return e.visitEachChild(t,visitor,r)}}function transformInitializedVariable(t){var n=t.name;if(e.isBindingPattern(n)){return e.flattenDestructuringAssignment(t,visitor,r,0,false,createNamespaceExportExpression)}else{return e.setTextRange(e.createAssignment(getNamespaceMemberNameWithSourceMapsAndWithoutComments(n),e.visitNode(t.initializer,visitor,e.isExpression)),t)}}function visitVariableDeclaration(t){return e.updateVariableDeclaration(t,e.visitNode(t.name,visitor,e.isBindingName),undefined,e.visitNode(t.initializer,visitor,e.isExpression))}function visitParenthesizedExpression(t){var n=e.skipOuterExpressions(t.expression,~2);if(e.isAssertionExpression(n)){var i=e.visitNode(t.expression,visitor,e.isExpression);if(e.length(e.getLeadingCommentRangesOfNode(i,g))){return e.updateParen(t,i)}return e.createPartiallyEmittedExpression(i,t)}return e.visitEachChild(t,visitor,r)}function visitAssertionExpression(t){var r=e.visitNode(t.expression,visitor,e.isExpression);return e.createPartiallyEmittedExpression(r,t)}function visitNonNullExpression(t){var r=e.visitNode(t.expression,visitor,e.isLeftHandSideExpression);return e.createPartiallyEmittedExpression(r,t)}function visitCallExpression(t){return e.updateCall(t,e.visitNode(t.expression,visitor,e.isExpression),undefined,e.visitNodes(t.arguments,visitor,e.isExpression))}function visitNewExpression(t){return e.updateNew(t,e.visitNode(t.expression,visitor,e.isExpression),undefined,e.visitNodes(t.arguments,visitor,e.isExpression))}function visitTaggedTemplateExpression(t){return e.updateTaggedTemplate(t,e.visitNode(t.tag,visitor,e.isExpression),undefined,e.visitNode(t.template,visitor,e.isExpression))}function shouldEmitEnumDeclaration(t){return!e.isEnumConst(t)||c.preserveConstEnums||c.isolatedModules}function visitEnumDeclaration(t){if(!shouldEmitEnumDeclaration(t)){return undefined}var r=[];var n=2;var i=addVarForEnumOrModuleDeclaration(r,t);if(i){if(f!==e.ModuleKind.System||y!==g){n|=512}}var a=getNamespaceParameterName(t);var o=getNamespaceContainerName(t);var s=e.hasModifier(t,1)?e.getExternalModuleOrNamespaceExportName(m,t,false,true):e.getLocalName(t,false,true);var c=e.createLogicalOr(s,e.createAssignment(s,e.createObjectLiteral()));if(hasNamespaceQualifiedExportName(t)){var u=e.getLocalName(t,false,true);c=e.createAssignment(u,c)}var l=e.createExpressionStatement(e.createCall(e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,a)],undefined,transformEnumBody(t,o)),undefined,[c]));e.setOriginalNode(l,t);if(i){e.setSyntheticLeadingComments(l,undefined);e.setSyntheticTrailingComments(l,undefined)}e.setTextRange(l,t);e.addEmitFlags(l,n);r.push(l);r.push(e.createEndOfDeclarationMarker(t));return r}function transformEnumBody(t,r){var i=m;m=r;var o=[];n();var s=e.map(t.members,transformEnumMember);e.addStatementsAfterPrologue(o,a());e.addRange(o,s);m=i;return e.createBlock(e.setTextRange(e.createNodeArray(o),t.members),true)}function transformEnumMember(t){var r=getExpressionForPropertyName(t,false);var n=transformEnumMemberDeclarationValue(t);var i=e.createAssignment(e.createElementAccess(m,r),n);var a=n.kind===10?i:e.createAssignment(e.createElementAccess(m,i),r);return e.setTextRange(e.createExpressionStatement(e.setTextRange(a,t)),t)}function transformEnumMemberDeclarationValue(t){var r=s.getConstantValue(t);if(r!==undefined){return e.createLiteral(r)}else{enableSubstitutionForNonQualifiedEnumMembers();if(t.initializer){return e.visitNode(t.initializer,visitor,e.isExpression)}else{return e.createVoidZero()}}}function shouldEmitModuleDeclaration(t){return e.isInstantiatedModule(t,!!c.preserveConstEnums||!!c.isolatedModules)}function hasNamespaceQualifiedExportName(t){return isExportOfNamespace(t)||isExternalModuleExport(t)&&f!==e.ModuleKind.ES2015&&f!==e.ModuleKind.ESNext&&f!==e.ModuleKind.System}function recordEmittedDeclarationInScope(t){if(!v){v=e.createUnderscoreEscapedMap()}var r=declaredNameInScope(t);if(!v.has(r)){v.set(r,t)}}function isFirstEmittedDeclarationInScope(e){if(v){var t=declaredNameInScope(e);return v.get(t)===e}return true}function declaredNameInScope(t){e.Debug.assertNode(t.name,e.isIdentifier);return t.name.escapedText}function addVarForEnumOrModuleDeclaration(t,r){var n=e.createVariableStatement(e.visitNodes(r.modifiers,modifierVisitor,e.isModifier),e.createVariableDeclarationList([e.createVariableDeclaration(e.getLocalName(r,false,true))],y.kind===279?0:1));e.setOriginalNode(n,r);recordEmittedDeclarationInScope(r);if(isFirstEmittedDeclarationInScope(r)){if(r.kind===243){e.setSourceMapRange(n.declarationList,r)}else{e.setSourceMapRange(n,r)}e.setCommentRange(n,r);e.addEmitFlags(n,1024|4194304);t.push(n);return true}else{var i=e.createMergeDeclarationMarker(n);e.setEmitFlags(i,1536|4194304);t.push(i);return false}}function visitModuleDeclaration(t){if(!shouldEmitModuleDeclaration(t)){return e.createNotEmittedStatement(t)}e.Debug.assertNode(t.name,e.isIdentifier,"A TypeScript namespace should have an Identifier name.");enableSubstitutionForNamespaceExports();var r=[];var n=2;var i=addVarForEnumOrModuleDeclaration(r,t);if(i){if(f!==e.ModuleKind.System||y!==g){n|=512}}var a=getNamespaceParameterName(t);var o=getNamespaceContainerName(t);var s=e.hasModifier(t,1)?e.getExternalModuleOrNamespaceExportName(m,t,false,true):e.getLocalName(t,false,true);var c=e.createLogicalOr(s,e.createAssignment(s,e.createObjectLiteral()));if(hasNamespaceQualifiedExportName(t)){var u=e.getLocalName(t,false,true);c=e.createAssignment(u,c)}var l=e.createExpressionStatement(e.createCall(e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,a)],undefined,transformModuleBody(t,o)),undefined,[c]));e.setOriginalNode(l,t);if(i){e.setSyntheticLeadingComments(l,undefined);e.setSyntheticTrailingComments(l,undefined)}e.setTextRange(l,t);e.addEmitFlags(l,n);r.push(l);r.push(e.createEndOfDeclarationMarker(t));return r}function transformModuleBody(t,r){var i=m;var o=_;var s=v;m=r;_=t;v=undefined;var c=[];n();var u;var l;var f=t.body;if(f.kind===245){saveStateAndInvoke(f,function(t){return e.addRange(c,e.visitNodes(t.statements,namespaceElementVisitor,e.isStatement))});u=f.statements;l=f}else{var d=visitModuleDeclaration(f);if(d){if(e.isArray(d)){e.addRange(c,d)}else{c.push(d)}}var p=getInnerMostModuleDeclarationFromDottedModule(t).body;u=e.moveRangePos(p.statements,-1)}e.addStatementsAfterPrologue(c,a());m=i;_=o;v=s;var g=e.createBlock(e.setTextRange(e.createNodeArray(c),u),true);e.setTextRange(g,l);if(f.kind!==245){e.setEmitFlags(g,e.getEmitFlags(g)|1536)}return g}function getInnerMostModuleDeclarationFromDottedModule(e){if(e.body.kind===244){var t=getInnerMostModuleDeclarationFromDottedModule(e.body);return t||e.body}}function visitImportDeclaration(t){if(!t.importClause){return t}var r=e.visitNode(t.importClause,visitImportClause,e.isImportClause);return r?e.updateImportDeclaration(t,undefined,undefined,r,t.moduleSpecifier):undefined}function visitImportClause(t){var r=s.isReferencedAliasDeclaration(t)?t.name:undefined;var n=e.visitNode(t.namedBindings,visitNamedImportBindings,e.isNamedImportBindings);return r||n?e.updateImportClause(t,r,n):undefined}function visitNamedImportBindings(t){if(t.kind===251){return s.isReferencedAliasDeclaration(t)?t:undefined}else{var r=e.visitNodes(t.elements,visitImportSpecifier,e.isImportSpecifier);return e.some(r)?e.updateNamedImports(t,r):undefined}}function visitImportSpecifier(e){return s.isReferencedAliasDeclaration(e)?e:undefined}function visitExportAssignment(t){return s.isValueAliasDeclaration(t)?e.visitEachChild(t,visitor,r):undefined}function visitExportDeclaration(t){if(!t.exportClause){return c.isolatedModules||s.moduleExportsSomeValue(t.moduleSpecifier)?t:undefined}if(!s.isValueAliasDeclaration(t)){return undefined}var r=e.visitNode(t.exportClause,visitNamedExports,e.isNamedExports);return r?e.updateExportDeclaration(t,undefined,undefined,r,t.moduleSpecifier):undefined}function visitNamedExports(t){var r=e.visitNodes(t.elements,visitExportSpecifier,e.isExportSpecifier);return e.some(r)?e.updateNamedExports(t,r):undefined}function visitExportSpecifier(e){return s.isValueAliasDeclaration(e)?e:undefined}function shouldEmitImportEqualsDeclaration(t){return s.isReferencedAliasDeclaration(t)||!e.isExternalModule(g)&&s.isTopLevelValueImportEqualsWithEntityName(t)}function visitImportEqualsDeclaration(t){if(e.isExternalModuleImportEqualsDeclaration(t)){return s.isReferencedAliasDeclaration(t)?e.visitEachChild(t,visitor,r):undefined}if(!shouldEmitImportEqualsDeclaration(t)){return undefined}var n=e.createExpressionFromEntityName(t.moduleReference);e.setEmitFlags(n,1536|2048);if(isNamedExternalModuleExport(t)||!isExportOfNamespace(t)){return e.setOriginalNode(e.setTextRange(e.createVariableStatement(e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),e.createVariableDeclarationList([e.setOriginalNode(e.createVariableDeclaration(t.name,undefined,n),t)])),t),t)}else{return e.setOriginalNode(createNamespaceExport(t.name,n,t),t)}}function isExportOfNamespace(t){return _!==undefined&&e.hasModifier(t,1)}function isExternalModuleExport(t){return _===undefined&&e.hasModifier(t,1)}function isNamedExternalModuleExport(t){return isExternalModuleExport(t)&&!e.hasModifier(t,512)}function isDefaultExternalModuleExport(t){return isExternalModuleExport(t)&&e.hasModifier(t,512)}function expressionToStatement(t){return e.createExpressionStatement(t)}function addExportMemberAssignment(t,r){var n=e.createAssignment(e.getExternalModuleOrNamespaceExportName(m,r,false,true),e.getLocalName(r));e.setSourceMapRange(n,e.createRange(r.name?r.name.pos:r.pos,r.end));var i=e.createExpressionStatement(n);e.setSourceMapRange(i,e.createRange(-1,r.end));t.push(i)}function createNamespaceExport(t,r,n){return e.setTextRange(e.createExpressionStatement(e.createAssignment(e.getNamespaceMemberName(m,t,false,true),r)),n)}function createNamespaceExportExpression(t,r,n){return e.setTextRange(e.createAssignment(getNamespaceMemberNameWithSourceMapsAndWithoutComments(t),r),n)}function getNamespaceMemberNameWithSourceMapsAndWithoutComments(t){return e.getNamespaceMemberName(m,t,false,true)}function getNamespaceParameterName(t){var r=e.getGeneratedNameForNode(t);e.setSourceMapRange(r,t.name);return r}function getNamespaceContainerName(t){return e.getGeneratedNameForNode(t)}function getClassAliasIfNeeded(t){if(s.getNodeCheckFlags(t)&16777216){enableSubstitutionForClassAliases();var r=e.createUniqueName(t.name&&!e.isGeneratedIdentifier(t.name)?e.idText(t.name):"default");S[e.getOriginalNodeId(t)]=r;o(r);return r}}function getClassPrototype(t){return e.createPropertyAccess(e.getDeclarationName(t),"prototype")}function getClassMemberPrefix(t,r){return e.hasModifier(r,32)?e.getDeclarationName(t):getClassPrototype(t)}function enableSubstitutionForNonQualifiedEnumMembers(){if((T&8)===0){T|=8;r.enableSubstitution(72)}}function enableSubstitutionForClassAliases(){if((T&1)===0){T|=1;r.enableSubstitution(72);S=[]}}function enableSubstitutionForNamespaceExports(){if((T&2)===0){T|=2;r.enableSubstitution(72);r.enableSubstitution(276);r.enableEmitNotification(244)}}function isTransformedModuleDeclaration(t){return e.getOriginalNode(t).kind===244}function isTransformedEnumDeclaration(t){return e.getOriginalNode(t).kind===243}function onEmitNode(t,r,n){var i=b;var a=g;if(e.isSourceFile(r)){g=r}if(T&2&&isTransformedModuleDeclaration(r)){b|=2}if(T&8&&isTransformedEnumDeclaration(r)){b|=8}d(t,r,n);b=i;g=a}function onSubstituteNode(t,r){r=p(t,r);if(t===1){return substituteExpression(r)}else if(e.isShorthandPropertyAssignment(r)){return substituteShorthandPropertyAssignment(r)}return r}function substituteShorthandPropertyAssignment(t){if(T&2){var r=t.name;var n=trySubstituteNamespaceExportedName(r);if(n){if(t.objectAssignmentInitializer){var i=e.createAssignment(n,t.objectAssignmentInitializer);return e.setTextRange(e.createPropertyAssignment(r,i),t)}return e.setTextRange(e.createPropertyAssignment(r,n),t)}}return t}function substituteExpression(e){switch(e.kind){case 72:return substituteExpressionIdentifier(e);case 189:return substitutePropertyAccessExpression(e);case 190:return substituteElementAccessExpression(e)}return e}function substituteExpressionIdentifier(e){return trySubstituteClassAlias(e)||trySubstituteNamespaceExportedName(e)||e}function trySubstituteClassAlias(t){if(T&1){if(s.getNodeCheckFlags(t)&33554432){var r=s.getReferencedValueDeclaration(t);if(r){var n=S[r.id];if(n){var i=e.getSynthesizedClone(n);e.setSourceMapRange(i,t);e.setCommentRange(i,t);return i}}}}return undefined}function trySubstituteNamespaceExportedName(t){if(T&b&&!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var r=s.getReferencedExportContainer(t,false);if(r&&r.kind!==279){var n=b&2&&r.kind===244||b&8&&r.kind===243;if(n){return e.setTextRange(e.createPropertyAccess(e.getGeneratedNameForNode(r),t),t)}}}return undefined}function substitutePropertyAccessExpression(e){return substituteConstantValue(e)}function substituteElementAccessExpression(e){return substituteConstantValue(e)}function substituteConstantValue(t){var r=tryGetConstEnumValue(t);if(r!==undefined){e.setConstantValue(t,r);var n=e.createLiteral(r);if(!c.removeComments){var i=e.isPropertyAccessExpression(t)?e.declarationNameToString(t.name):e.getTextOfNode(t.argumentExpression);e.addSyntheticTrailingComment(n,3," "+i+" ")}return n}return t}function tryGetConstEnumValue(t){if(c.isolatedModules){return undefined}return e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)?s.getConstantValue(t):undefined}}e.transformTypeScript=transformTypeScript;function createDecorateHelper(t,r,n,a,o,s){var c=[];c.push(e.createArrayLiteral(r,true));c.push(n);if(a){c.push(a);if(o){c.push(o)}}t.requestEmitHelper(i);return e.setTextRange(e.createCall(e.getHelperName("__decorate"),undefined,c),s)}var i={name:"typescript:decorate",scoped:false,priority:2,text:'\n var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n };'};function createMetadataHelper(t,r,n){t.requestEmitHelper(a);return e.createCall(e.getHelperName("__metadata"),undefined,[e.createLiteral(r),n])}var a={name:"typescript:metadata",scoped:false,priority:3,text:'\n var __metadata = (this && this.__metadata) || function (k, v) {\n if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);\n };'};function createParamHelper(t,r,n,i){t.requestEmitHelper(o);return e.setTextRange(e.createCall(e.getHelperName("__param"),undefined,[e.createLiteral(n),r]),i)}var o={name:"typescript:param",scoped:false,priority:4,text:"\n var __param = (this && this.__param) || function (paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n };"}})(s||(s={}));var s;(function(e){var t;(function(e){e[e["AsyncMethodsWithSuper"]=1]="AsyncMethodsWithSuper"})(t||(t={}));function transformES2017(t){var r=t.resumeLexicalEnvironment,n=t.endLexicalEnvironment,i=t.hoistVariableDeclaration;var a=t.getEmitResolver();var o=t.getCompilerOptions();var s=e.getEmitScriptTarget(o);var c;var u=0;var l;var f;var d;var p=[];var g=t.onEmitNode;var _=t.onSubstituteNode;t.onEmitNode=onEmitNode;t.onSubstituteNode=onSubstituteNode;return e.chainBundle(transformSourceFile);function transformSourceFile(r){if(r.isDeclarationFile){return r}var n=e.visitEachChild(r,visitor,t);e.addEmitHelpers(n,t.readEmitHelpers());return n}function visitor(r){if((r.transformFlags&16)===0){return r}switch(r.kind){case 121:return undefined;case 201:return visitAwaitExpression(r);case 156:return visitMethodDeclaration(r);case 239:return visitFunctionDeclaration(r);case 196:return visitFunctionExpression(r);case 197:return visitArrowFunction(r);case 189:if(f&&e.isPropertyAccessExpression(r)&&r.expression.kind===98){f.set(r.name.escapedText,true)}return e.visitEachChild(r,visitor,t);case 190:if(f&&r.expression.kind===98){d=true}return e.visitEachChild(r,visitor,t);default:return e.visitEachChild(r,visitor,t)}}function asyncBodyVisitor(r){if(e.isNodeWithPossibleHoistedDeclaration(r)){switch(r.kind){case 219:return visitVariableStatementInAsyncBody(r);case 225:return visitForStatementInAsyncBody(r);case 226:return visitForInStatementInAsyncBody(r);case 227:return visitForOfStatementInAsyncBody(r);case 274:return visitCatchClauseInAsyncBody(r);case 218:case 232:case 246:case 271:case 272:case 235:case 223:case 224:case 222:case 231:case 233:return e.visitEachChild(r,asyncBodyVisitor,t);default:return e.Debug.assertNever(r,"Unhandled node.")}}return visitor(r)}function visitCatchClauseInAsyncBody(r){var n=e.createUnderscoreEscapedMap();recordDeclarationName(r.variableDeclaration,n);var i;n.forEach(function(t,r){if(l.has(r)){if(!i){i=e.cloneMap(l)}i.delete(r)}});if(i){var a=l;l=i;var o=e.visitEachChild(r,asyncBodyVisitor,t);l=a;return o}else{return e.visitEachChild(r,asyncBodyVisitor,t)}}function visitVariableStatementInAsyncBody(r){if(isVariableDeclarationListWithCollidingName(r.declarationList)){var n=visitVariableDeclarationListWithCollidingNames(r.declarationList,false);return n?e.createExpressionStatement(n):undefined}return e.visitEachChild(r,visitor,t)}function visitForInStatementInAsyncBody(t){return e.updateForIn(t,isVariableDeclarationListWithCollidingName(t.initializer)?visitVariableDeclarationListWithCollidingNames(t.initializer,true):e.visitNode(t.initializer,visitor,e.isForInitializer),e.visitNode(t.expression,visitor,e.isExpression),e.visitNode(t.statement,asyncBodyVisitor,e.isStatement,e.liftToBlock))}function visitForOfStatementInAsyncBody(t){return e.updateForOf(t,e.visitNode(t.awaitModifier,visitor,e.isToken),isVariableDeclarationListWithCollidingName(t.initializer)?visitVariableDeclarationListWithCollidingNames(t.initializer,true):e.visitNode(t.initializer,visitor,e.isForInitializer),e.visitNode(t.expression,visitor,e.isExpression),e.visitNode(t.statement,asyncBodyVisitor,e.isStatement,e.liftToBlock))}function visitForStatementInAsyncBody(t){var r=t.initializer;return e.updateFor(t,isVariableDeclarationListWithCollidingName(r)?visitVariableDeclarationListWithCollidingNames(r,false):e.visitNode(t.initializer,visitor,e.isForInitializer),e.visitNode(t.condition,visitor,e.isExpression),e.visitNode(t.incrementor,visitor,e.isExpression),e.visitNode(t.statement,asyncBodyVisitor,e.isStatement,e.liftToBlock))}function visitAwaitExpression(t){return e.setOriginalNode(e.setTextRange(e.createYield(undefined,e.visitNode(t.expression,visitor,e.isExpression)),t),t)}function visitMethodDeclaration(r){return e.updateMethod(r,undefined,e.visitNodes(r.modifiers,visitor,e.isModifier),r.asteriskToken,r.name,undefined,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,e.getFunctionFlags(r)&2?transformAsyncFunctionBody(r):e.visitFunctionBody(r.body,visitor,t))}function visitFunctionDeclaration(r){return e.updateFunctionDeclaration(r,undefined,e.visitNodes(r.modifiers,visitor,e.isModifier),r.asteriskToken,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,e.getFunctionFlags(r)&2?transformAsyncFunctionBody(r):e.visitFunctionBody(r.body,visitor,t))}function visitFunctionExpression(r){return e.updateFunctionExpression(r,e.visitNodes(r.modifiers,visitor,e.isModifier),r.asteriskToken,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,e.getFunctionFlags(r)&2?transformAsyncFunctionBody(r):e.visitFunctionBody(r.body,visitor,t))}function visitArrowFunction(r){return e.updateArrowFunction(r,e.visitNodes(r.modifiers,visitor,e.isModifier),undefined,e.visitParameterList(r.parameters,visitor,t),undefined,r.equalsGreaterThanToken,e.getFunctionFlags(r)&2?transformAsyncFunctionBody(r):e.visitFunctionBody(r.body,visitor,t))}function recordDeclarationName(t,r){var n=t.name;if(e.isIdentifier(n)){r.set(n.escapedText,true)}else{for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){recordDeclarationName(o,r)}}}}function isVariableDeclarationListWithCollidingName(t){return!!t&&e.isVariableDeclarationList(t)&&!(t.flags&3)&&t.declarations.some(collidesWithParameterName)}function visitVariableDeclarationListWithCollidingNames(t,r){hoistVariableDeclarationList(t);var n=e.getInitializedVariables(t);if(n.length===0){if(r){return e.visitNode(e.convertToAssignmentElementTarget(t.declarations[0].name),visitor,e.isExpression)}return undefined}return e.inlineExpressions(e.map(n,transformInitializedVariable))}function hoistVariableDeclarationList(t){e.forEach(t.declarations,hoistVariable)}function hoistVariable(t){var r=t.name;if(e.isIdentifier(r)){i(r)}else{for(var n=0,a=r.elements;n<a.length;n++){var o=a[n];if(!e.isOmittedExpression(o)){hoistVariable(o)}}}}function transformInitializedVariable(t){var r=e.setSourceMapRange(e.createAssignment(e.convertToAssignmentElementTarget(t.name),t.initializer),t);return e.visitNode(r,visitor,e.isExpression)}function collidesWithParameterName(t){var r=t.name;if(e.isIdentifier(r)){return l.has(r.escapedText)}else{for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];if(!e.isOmittedExpression(a)&&collidesWithParameterName(a)){return true}}}return false}function transformAsyncFunctionBody(i){r();var o=e.getOriginalNode(i,e.isFunctionLike);var c=o.type;var u=s<2?getPromiseConstructor(c):undefined;var g=i.kind===197;var _=(a.getNodeCheckFlags(i)&8192)!==0;var m=l;l=e.createUnderscoreEscapedMap();for(var y=0,h=i.parameters;y<h.length;y++){var v=h[y];recordDeclarationName(v,l)}var T=f;var S=d;f=e.createUnderscoreEscapedMap();d=false;var b;if(!g){var x=[];var C=e.addPrologue(x,i.body.statements,false,visitor);x.push(e.createReturn(createAwaiterHelper(t,_,u,transformAsyncFunctionBodyWorker(i.body,C))));e.addStatementsAfterPrologue(x,n());var E=s>=2&&a.getNodeCheckFlags(i)&(4096|2048);if(E){enableSubstitutionForAsyncMethodsWithSuper();var D=createSuperAccessVariableStatement(a,i,f);p[e.getNodeId(D)]=true;e.addStatementsAfterPrologue(x,[D])}var k=e.createBlock(x,true);e.setTextRange(k,i.body);if(E&&d){if(a.getNodeCheckFlags(i)&4096){e.addEmitHelper(k,e.advancedAsyncSuperHelper)}else if(a.getNodeCheckFlags(i)&2048){e.addEmitHelper(k,e.asyncSuperHelper)}}b=k}else{var N=createAwaiterHelper(t,_,u,transformAsyncFunctionBodyWorker(i.body));var A=n();if(e.some(A)){var k=e.convertToFunctionBody(N);b=e.updateBlock(k,e.setTextRange(e.createNodeArray(e.concatenate(A,k.statements)),k.statements))}else{b=N}}l=m;f=T;d=S;return b}function transformAsyncFunctionBodyWorker(t,r){if(e.isBlock(t)){return e.updateBlock(t,e.visitNodes(t.statements,asyncBodyVisitor,e.isStatement,r))}else{return e.convertToFunctionBody(e.visitNode(t,asyncBodyVisitor,e.isConciseBody))}}function getPromiseConstructor(t){var r=t&&e.getEntityNameFromTypeNode(t);if(r&&e.isEntityName(r)){var n=a.getTypeReferenceSerializationKind(r);if(n===e.TypeReferenceSerializationKind.TypeWithConstructSignatureAndValue||n===e.TypeReferenceSerializationKind.Unknown){return r}}return undefined}function enableSubstitutionForAsyncMethodsWithSuper(){if((c&1)===0){c|=1;t.enableSubstitution(191);t.enableSubstitution(189);t.enableSubstitution(190);t.enableEmitNotification(240);t.enableEmitNotification(156);t.enableEmitNotification(158);t.enableEmitNotification(159);t.enableEmitNotification(157);t.enableEmitNotification(219)}}function onEmitNode(t,r,n){if(c&1&&isSuperContainer(r)){var i=a.getNodeCheckFlags(r)&(2048|4096);if(i!==u){var o=u;u=i;g(t,r,n);u=o;return}}else if(c&&p[e.getNodeId(r)]){var o=u;u=0;g(t,r,n);u=o;return}g(t,r,n)}function onSubstituteNode(e,t){t=_(e,t);if(e===1&&u){return substituteExpression(t)}return t}function substituteExpression(e){switch(e.kind){case 189:return substitutePropertyAccessExpression(e);case 190:return substituteElementAccessExpression(e);case 191:return substituteCallExpression(e)}return e}function substitutePropertyAccessExpression(t){if(t.expression.kind===98){return e.setTextRange(e.createPropertyAccess(e.createFileLevelUniqueName("_super"),t.name),t)}return t}function substituteElementAccessExpression(e){if(e.expression.kind===98){return createSuperElementAccessInAsyncMethod(e.argumentExpression,e)}return e}function substituteCallExpression(t){var r=t.expression;if(e.isSuperProperty(r)){var n=e.isPropertyAccessExpression(r)?substitutePropertyAccessExpression(r):substituteElementAccessExpression(r);return e.createCall(e.createPropertyAccess(n,"call"),undefined,[e.createThis()].concat(t.arguments))}return t}function isSuperContainer(e){var t=e.kind;return t===240||t===157||t===156||t===158||t===159}function createSuperElementAccessInAsyncMethod(t,r){if(u&4096){return e.setTextRange(e.createPropertyAccess(e.createCall(e.createFileLevelUniqueName("_superIndex"),undefined,[t]),"value"),r)}else{return e.setTextRange(e.createCall(e.createFileLevelUniqueName("_superIndex"),undefined,[t]),r)}}}e.transformES2017=transformES2017;function createSuperAccessVariableStatement(t,r,n){var i=(t.getNodeCheckFlags(r)&4096)!==0;var a=[];n.forEach(function(t,r){var n=e.unescapeLeadingUnderscores(r);var o=[];o.push(e.createPropertyAssignment("get",e.createArrowFunction(undefined,undefined,[],undefined,undefined,e.createPropertyAccess(e.createSuper(),n))));if(i){o.push(e.createPropertyAssignment("set",e.createArrowFunction(undefined,undefined,[e.createParameter(undefined,undefined,undefined,"v",undefined,undefined,undefined)],undefined,undefined,e.createAssignment(e.createPropertyAccess(e.createSuper(),n),e.createIdentifier("v")))))}a.push(e.createPropertyAssignment(n,e.createObjectLiteral(o)))});return e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.createFileLevelUniqueName("_super"),undefined,e.createCall(e.createPropertyAccess(e.createIdentifier("Object"),"create"),undefined,[e.createNull(),e.createObjectLiteral(a,true)]))],2))}e.createSuperAccessVariableStatement=createSuperAccessVariableStatement;var r={name:"typescript:awaiter",scoped:false,priority:5,text:'\n var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n };'};function createAwaiterHelper(t,n,i,a){t.requestEmitHelper(r);var o=e.createFunctionExpression(undefined,e.createToken(40),undefined,undefined,[],undefined,a);(o.emitNode||(o.emitNode={})).flags|=262144|524288;return e.createCall(e.getHelperName("__awaiter"),undefined,[e.createThis(),n?e.createIdentifier("arguments"):e.createVoidZero(),i?e.createExpressionFromEntityName(i):e.createVoidZero(),o])}e.asyncSuperHelper={name:"typescript:async-super",scoped:true,text:e.helperString(a(["\n const "," = name => super[name];"],["\n const "," = name => super[name];"]),"_superIndex")};e.advancedAsyncSuperHelper={name:"typescript:advanced-async-super",scoped:true,text:e.helperString(a(["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"],["\n const "," = (function (geti, seti) {\n const cache = Object.create(null);\n return name => cache[name] || (cache[name] = { get value() { return geti(name); }, set value(v) { seti(name, v); } });\n })(name => super[name], (name, value) => super[name] = value);"]),"_superIndex")}})(s||(s={}));var s;(function(e){var t;(function(e){e[e["AsyncMethodsWithSuper"]=1]="AsyncMethodsWithSuper"})(t||(t={}));function transformESNext(t){var r=t.resumeLexicalEnvironment,n=t.endLexicalEnvironment,i=t.hoistVariableDeclaration;var a=t.getEmitResolver();var o=t.getCompilerOptions();var s=e.getEmitScriptTarget(o);var c=t.onEmitNode;t.onEmitNode=onEmitNode;var u=t.onSubstituteNode;t.onSubstituteNode=onSubstituteNode;var l;var f;var d=0;var p;var g;var _=[];return e.chainBundle(transformSourceFile);function transformSourceFile(r){if(r.isDeclarationFile){return r}var n=e.visitEachChild(r,visitor,t);e.addEmitHelpers(n,t.readEmitHelpers());return n}function visitor(e){return visitorWorker(e,false)}function visitorNoDestructuringValue(e){return visitorWorker(e,true)}function visitorNoAsyncModifier(e){if(e.kind===121){return undefined}return e}function visitorWorker(r,n){if((r.transformFlags&8)===0){return r}switch(r.kind){case 201:return visitAwaitExpression(r);case 207:return visitYieldExpression(r);case 230:return visitReturnStatement(r);case 233:return visitLabeledStatement(r);case 188:return visitObjectLiteralExpression(r);case 204:return visitBinaryExpression(r,n);case 237:return visitVariableDeclaration(r);case 227:return visitForOfStatement(r,undefined);case 225:return visitForStatement(r);case 200:return visitVoidExpression(r);case 157:return visitConstructorDeclaration(r);case 156:return visitMethodDeclaration(r);case 158:return visitGetAccessorDeclaration(r);case 159:return visitSetAccessorDeclaration(r);case 239:return visitFunctionDeclaration(r);case 196:return visitFunctionExpression(r);case 197:return visitArrowFunction(r);case 151:return visitParameter(r);case 221:return visitExpressionStatement(r);case 195:return visitParenthesizedExpression(r,n);case 274:return visitCatchClause(r);case 189:if(p&&e.isPropertyAccessExpression(r)&&r.expression.kind===98){p.set(r.name.escapedText,true)}return e.visitEachChild(r,visitor,t);case 190:if(p&&r.expression.kind===98){g=true}return e.visitEachChild(r,visitor,t);default:return e.visitEachChild(r,visitor,t)}}function visitAwaitExpression(r){if(f&2&&f&1){return e.setOriginalNode(e.setTextRange(e.createYield(createAwaitHelper(t,e.visitNode(r.expression,visitor,e.isExpression))),r),r)}return e.visitEachChild(r,visitor,t)}function visitYieldExpression(r){if(f&2&&f&1){if(r.asteriskToken){var n=e.visitNode(r.expression,visitor,e.isExpression);return e.setOriginalNode(e.setTextRange(e.createYield(createAwaitHelper(t,e.updateYield(r,r.asteriskToken,createAsyncDelegatorHelper(t,createAsyncValuesHelper(t,n,n),n)))),r),r)}return e.setOriginalNode(e.setTextRange(e.createYield(createDownlevelAwait(r.expression?e.visitNode(r.expression,visitor,e.isExpression):e.createVoidZero())),r),r)}return e.visitEachChild(r,visitor,t)}function visitReturnStatement(r){if(f&2&&f&1){return e.updateReturn(r,createDownlevelAwait(r.expression?e.visitNode(r.expression,visitor,e.isExpression):e.createVoidZero()))}return e.visitEachChild(r,visitor,t)}function visitLabeledStatement(r){if(f&2){var n=e.unwrapInnermostStatementOfLabel(r);if(n.kind===227&&n.awaitModifier){return visitForOfStatement(n,r)}return e.restoreEnclosingLabel(e.visitEachChild(n,visitor,t),r)}return e.visitEachChild(r,visitor,t)}function chunkObjectLiteralElements(t){var r;var n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i];if(o.kind===277){if(r){n.push(e.createObjectLiteral(r));r=undefined}var s=o.expression;n.push(e.visitNode(s,visitor,e.isExpression))}else{r=e.append(r,o.kind===275?e.createPropertyAssignment(o.name,e.visitNode(o.initializer,visitor,e.isExpression)):e.visitNode(o,visitor,e.isObjectLiteralElementLike))}}if(r){n.push(e.createObjectLiteral(r))}return n}function visitObjectLiteralExpression(r){if(r.transformFlags&262144){var n=chunkObjectLiteralElements(r.properties);if(n.length&&n[0].kind!==188){n.unshift(e.createObjectLiteral())}return createAssignHelper(t,n)}return e.visitEachChild(r,visitor,t)}function visitExpressionStatement(r){return e.visitEachChild(r,visitorNoDestructuringValue,t)}function visitParenthesizedExpression(r,n){return e.visitEachChild(r,n?visitorNoDestructuringValue:visitor,t)}function visitCatchClause(r){if(!r.variableDeclaration){return e.updateCatchClause(r,e.createVariableDeclaration(e.createTempVariable(undefined)),e.visitNode(r.block,visitor,e.isBlock))}return e.visitEachChild(r,visitor,t)}function visitBinaryExpression(r,n){if(e.isDestructuringAssignment(r)&&r.left.transformFlags&262144){return e.flattenDestructuringAssignment(r,visitor,t,1,!n)}else if(r.operatorToken.kind===27){return e.updateBinary(r,e.visitNode(r.left,visitorNoDestructuringValue,e.isExpression),e.visitNode(r.right,n?visitorNoDestructuringValue:visitor,e.isExpression))}return e.visitEachChild(r,visitor,t)}function visitVariableDeclaration(r){if(e.isBindingPattern(r.name)&&r.name.transformFlags&262144){return e.flattenDestructuringBinding(r,visitor,t,1)}return e.visitEachChild(r,visitor,t)}function visitForStatement(t){return e.updateFor(t,e.visitNode(t.initializer,visitorNoDestructuringValue,e.isForInitializer),e.visitNode(t.condition,visitor,e.isExpression),e.visitNode(t.incrementor,visitor,e.isExpression),e.visitNode(t.statement,visitor,e.isStatement))}function visitVoidExpression(r){return e.visitEachChild(r,visitorNoDestructuringValue,t)}function visitForOfStatement(r,n){if(r.initializer.transformFlags&262144){r=transformForOfStatementWithObjectRest(r)}if(r.awaitModifier){return transformForAwaitOfStatement(r,n)}else{return e.restoreEnclosingLabel(e.visitEachChild(r,visitor,t),n)}}function transformForOfStatementWithObjectRest(t){var r=e.skipParentheses(t.initializer);if(e.isVariableDeclarationList(r)||e.isAssignmentPattern(r)){var n=void 0;var i=void 0;var a=e.createTempVariable(undefined);var o=[e.createForOfBindingStatement(r,a)];if(e.isBlock(t.statement)){e.addRange(o,t.statement.statements);n=t.statement;i=t.statement.statements}else if(t.statement){e.append(o,t.statement);n=t.statement;i=t.statement}return e.updateForOf(t,t.awaitModifier,e.setTextRange(e.createVariableDeclarationList([e.setTextRange(e.createVariableDeclaration(a),t.initializer)],1),t.initializer),t.expression,e.setTextRange(e.createBlock(e.setTextRange(e.createNodeArray(o),i),true),n))}return t}function convertForOfStatementHead(t,r){var n=e.createForOfBindingStatement(t.initializer,r);var i;var a;var o=[e.visitNode(n,visitor,e.isStatement)];var s=e.visitNode(t.statement,visitor,e.isStatement);if(e.isBlock(s)){e.addRange(o,s.statements);i=s;a=s.statements}else{o.push(s)}return e.setEmitFlags(e.setTextRange(e.createBlock(e.setTextRange(e.createNodeArray(o),a),true),i),48|384)}function createDownlevelAwait(r){return f&1?e.createYield(undefined,createAwaitHelper(t,r)):e.createAwait(r)}function transformForAwaitOfStatement(r,n){var a=e.visitNode(r.expression,visitor,e.isExpression);var o=e.isIdentifier(a)?e.getGeneratedNameForNode(a):e.createTempVariable(undefined);var s=e.isIdentifier(a)?e.getGeneratedNameForNode(o):e.createTempVariable(undefined);var c=e.createUniqueName("e");var u=e.getGeneratedNameForNode(c);var l=e.createTempVariable(undefined);var f=createAsyncValuesHelper(t,a,r.expression);var d=e.createCall(e.createPropertyAccess(o,"next"),undefined,[]);var p=e.createPropertyAccess(s,"done");var g=e.createPropertyAccess(s,"value");var _=e.createFunctionCall(l,o,[]);i(c);i(l);var m=e.setEmitFlags(e.setTextRange(e.createFor(e.setEmitFlags(e.setTextRange(e.createVariableDeclarationList([e.setTextRange(e.createVariableDeclaration(o,undefined,f),r.expression),e.createVariableDeclaration(s)]),r.expression),2097152),e.createComma(e.createAssignment(s,createDownlevelAwait(d)),e.createLogicalNot(p)),undefined,convertForOfStatementHead(r,g)),r),256);return e.createTry(e.createBlock([e.restoreEnclosingLabel(m,n)]),e.createCatchClause(e.createVariableDeclaration(u),e.setEmitFlags(e.createBlock([e.createExpressionStatement(e.createAssignment(c,e.createObjectLiteral([e.createPropertyAssignment("error",u)])))]),1)),e.createBlock([e.createTry(e.createBlock([e.setEmitFlags(e.createIf(e.createLogicalAnd(e.createLogicalAnd(s,e.createLogicalNot(p)),e.createAssignment(l,e.createPropertyAccess(o,"return"))),e.createExpressionStatement(createDownlevelAwait(_))),1)]),undefined,e.setEmitFlags(e.createBlock([e.setEmitFlags(e.createIf(c,e.createThrow(e.createPropertyAccess(c,"error"))),1)]),1))]))}function visitParameter(r){if(r.transformFlags&262144){return e.updateParameter(r,undefined,undefined,r.dotDotDotToken,e.getGeneratedNameForNode(r),undefined,undefined,e.visitNode(r.initializer,visitor,e.isExpression))}return e.visitEachChild(r,visitor,t)}function visitConstructorDeclaration(r){var n=f;f=0;var i=e.updateConstructor(r,undefined,r.modifiers,e.visitParameterList(r.parameters,visitor,t),transformFunctionBody(r));f=n;return i}function visitGetAccessorDeclaration(r){var n=f;f=0;var i=e.updateGetAccessor(r,undefined,r.modifiers,e.visitNode(r.name,visitor,e.isPropertyName),e.visitParameterList(r.parameters,visitor,t),undefined,transformFunctionBody(r));f=n;return i}function visitSetAccessorDeclaration(r){var n=f;f=0;var i=e.updateSetAccessor(r,undefined,r.modifiers,e.visitNode(r.name,visitor,e.isPropertyName),e.visitParameterList(r.parameters,visitor,t),transformFunctionBody(r));f=n;return i}function visitMethodDeclaration(r){var n=f;f=e.getFunctionFlags(r);var i=e.updateMethod(r,undefined,f&1?e.visitNodes(r.modifiers,visitorNoAsyncModifier,e.isModifier):r.modifiers,f&2?undefined:r.asteriskToken,e.visitNode(r.name,visitor,e.isPropertyName),e.visitNode(undefined,visitor,e.isToken),undefined,e.visitParameterList(r.parameters,visitor,t),undefined,f&2&&f&1?transformAsyncGeneratorFunctionBody(r):transformFunctionBody(r));f=n;return i}function visitFunctionDeclaration(r){var n=f;f=e.getFunctionFlags(r);var i=e.updateFunctionDeclaration(r,undefined,f&1?e.visitNodes(r.modifiers,visitorNoAsyncModifier,e.isModifier):r.modifiers,f&2?undefined:r.asteriskToken,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,f&2&&f&1?transformAsyncGeneratorFunctionBody(r):transformFunctionBody(r));f=n;return i}function visitArrowFunction(r){var n=f;f=e.getFunctionFlags(r);var i=e.updateArrowFunction(r,r.modifiers,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,r.equalsGreaterThanToken,transformFunctionBody(r));f=n;return i}function visitFunctionExpression(r){var n=f;f=e.getFunctionFlags(r);var i=e.updateFunctionExpression(r,f&1?e.visitNodes(r.modifiers,visitorNoAsyncModifier,e.isModifier):r.modifiers,f&2?undefined:r.asteriskToken,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,f&2&&f&1?transformAsyncGeneratorFunctionBody(r):transformFunctionBody(r));f=n;return i}function transformAsyncGeneratorFunctionBody(i){r();var o=[];var c=e.addPrologue(o,i.body.statements,false,visitor);appendObjectRestAssignmentsIfNeeded(o,i);var u=p;var l=g;p=e.createUnderscoreEscapedMap();g=false;var f=e.createReturn(createAsyncGeneratorHelper(t,e.createFunctionExpression(undefined,e.createToken(40),i.name&&e.getGeneratedNameForNode(i.name),undefined,[],undefined,e.updateBlock(i.body,e.visitLexicalEnvironment(i.body.statements,visitor,t,c)))));var d=s>=2&&a.getNodeCheckFlags(i)&(4096|2048);if(d){enableSubstitutionForAsyncMethodsWithSuper();var m=e.createSuperAccessVariableStatement(a,i,p);_[e.getNodeId(m)]=true;e.addStatementsAfterPrologue(o,[m])}o.push(f);e.addStatementsAfterPrologue(o,n());var y=e.updateBlock(i.body,o);if(d&&g){if(a.getNodeCheckFlags(i)&4096){e.addEmitHelper(y,e.advancedAsyncSuperHelper)}else if(a.getNodeCheckFlags(i)&2048){e.addEmitHelper(y,e.asyncSuperHelper)}}p=u;g=l;return y}function transformFunctionBody(t){r();var i=0;var a=[];var o=e.visitNode(t.body,visitor,e.isConciseBody);if(e.isBlock(o)){i=e.addPrologue(a,o.statements,false,visitor)}e.addRange(a,appendObjectRestAssignmentsIfNeeded(undefined,t));var s=n();if(i>0||e.some(a)||e.some(s)){var c=e.convertToFunctionBody(o,true);e.addStatementsAfterPrologue(a,s);e.addRange(a,c.statements.slice(i));return e.updateBlock(c,e.setTextRange(e.createNodeArray(a),c.statements))}return o}function appendObjectRestAssignmentsIfNeeded(r,n){for(var i=0,a=n.parameters;i<a.length;i++){var o=a[i];if(o.transformFlags&262144){var s=e.getGeneratedNameForNode(o);var c=e.flattenDestructuringBinding(o,visitor,t,1,s,false,true);if(e.some(c)){var u=e.createVariableStatement(undefined,e.createVariableDeclarationList(c));e.setEmitFlags(u,1048576);r=e.append(r,u)}}}return r}function enableSubstitutionForAsyncMethodsWithSuper(){if((l&1)===0){l|=1;t.enableSubstitution(191);t.enableSubstitution(189);t.enableSubstitution(190);t.enableEmitNotification(240);t.enableEmitNotification(156);t.enableEmitNotification(158);t.enableEmitNotification(159);t.enableEmitNotification(157);t.enableEmitNotification(219)}}function onEmitNode(t,r,n){if(l&1&&isSuperContainer(r)){var i=a.getNodeCheckFlags(r)&(2048|4096);if(i!==d){var o=d;d=i;c(t,r,n);d=o;return}}else if(l&&_[e.getNodeId(r)]){var o=d;d=0;c(t,r,n);d=o;return}c(t,r,n)}function onSubstituteNode(e,t){t=u(e,t);if(e===1&&d){return substituteExpression(t)}return t}function substituteExpression(e){switch(e.kind){case 189:return substitutePropertyAccessExpression(e);case 190:return substituteElementAccessExpression(e);case 191:return substituteCallExpression(e)}return e}function substitutePropertyAccessExpression(t){if(t.expression.kind===98){return e.setTextRange(e.createPropertyAccess(e.createFileLevelUniqueName("_super"),t.name),t)}return t}function substituteElementAccessExpression(e){if(e.expression.kind===98){return createSuperElementAccessInAsyncMethod(e.argumentExpression,e)}return e}function substituteCallExpression(t){var r=t.expression;if(e.isSuperProperty(r)){var n=e.isPropertyAccessExpression(r)?substitutePropertyAccessExpression(r):substituteElementAccessExpression(r);return e.createCall(e.createPropertyAccess(n,"call"),undefined,[e.createThis()].concat(t.arguments))}return t}function isSuperContainer(e){var t=e.kind;return t===240||t===157||t===156||t===158||t===159}function createSuperElementAccessInAsyncMethod(t,r){if(d&4096){return e.setTextRange(e.createPropertyAccess(e.createCall(e.createIdentifier("_superIndex"),undefined,[t]),"value"),r)}else{return e.setTextRange(e.createCall(e.createIdentifier("_superIndex"),undefined,[t]),r)}}}e.transformESNext=transformESNext;var r={name:"typescript:assign",scoped:false,priority:1,text:"\n var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n };"};function createAssignHelper(t,n){if(t.getCompilerOptions().target>=2){return e.createCall(e.createPropertyAccess(e.createIdentifier("Object"),"assign"),undefined,n)}t.requestEmitHelper(r);return e.createCall(e.getHelperName("__assign"),undefined,n)}e.createAssignHelper=createAssignHelper;var n={name:"typescript:await",scoped:false,text:"\n var __await = (this && this.__await) || function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }"};function createAwaitHelper(t,r){t.requestEmitHelper(n);return e.createCall(e.getHelperName("__await"),undefined,[r])}var i={name:"typescript:asyncGenerator",scoped:false,text:'\n var __asyncGenerator = (this && this.__asyncGenerator) || function (thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume("next", value); }\n function reject(value) { resume("throw", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n };'};function createAsyncGeneratorHelper(t,r){t.requestEmitHelper(n);t.requestEmitHelper(i);(r.emitNode||(r.emitNode={})).flags|=262144;return e.createCall(e.getHelperName("__asyncGenerator"),undefined,[e.createThis(),e.createIdentifier("arguments"),r])}var a={name:"typescript:asyncDelegator",scoped:false,text:'\n var __asyncDelegator = (this && this.__asyncDelegator) || function (o) {\n var i, p;\n return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }\n };'};function createAsyncDelegatorHelper(t,r,i){t.requestEmitHelper(n);t.requestEmitHelper(a);return e.setTextRange(e.createCall(e.getHelperName("__asyncDelegator"),undefined,[r]),i)}var o={name:"typescript:asyncValues",scoped:false,text:'\n var __asyncValues = (this && this.__asyncValues) || function (o) {\n if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n };'};function createAsyncValuesHelper(t,r,n){t.requestEmitHelper(o);return e.setTextRange(e.createCall(e.getHelperName("__asyncValues"),undefined,[r]),n)}})(s||(s={}));var s;(function(e){function transformJsx(r){var n=r.getCompilerOptions();var i;return e.chainBundle(transformSourceFile);function transformSourceFile(t){if(t.isDeclarationFile){return t}i=t;var n=e.visitEachChild(t,visitor,r);e.addEmitHelpers(n,r.readEmitHelpers());return n}function visitor(e){if(e.transformFlags&4){return visitorWorker(e)}else{return e}}function visitorWorker(t){switch(t.kind){case 260:return visitJsxElement(t,false);case 261:return visitJsxSelfClosingElement(t,false);case 264:return visitJsxFragment(t,false);case 270:return visitJsxExpression(t);default:return e.visitEachChild(t,visitor,r)}}function transformJsxChildToExpression(t){switch(t.kind){case 11:return visitJsxText(t);case 270:return visitJsxExpression(t);case 260:return visitJsxElement(t,true);case 261:return visitJsxSelfClosingElement(t,true);case 264:return visitJsxFragment(t,true);default:return e.Debug.failBadSyntaxKind(t)}}function visitJsxElement(e,t){return visitJsxOpeningLikeElement(e.openingElement,e.children,t,e)}function visitJsxSelfClosingElement(e,t){return visitJsxOpeningLikeElement(e,undefined,t,e)}function visitJsxFragment(e,t){return visitJsxOpeningFragment(e.openingFragment,e.children,t,e)}function visitJsxOpeningLikeElement(t,a,o,s){var c=getTagName(t);var u;var l=t.attributes.properties;if(l.length===0){u=e.createNull()}else{var f=e.flatten(e.spanMap(l,e.isJsxSpreadAttribute,function(t,r){return r?e.map(t,transformJsxSpreadAttributeToExpression):e.createObjectLiteral(e.map(t,transformJsxAttributeToObjectLiteralElement))}));if(e.isJsxSpreadAttribute(l[0])){f.unshift(e.createObjectLiteral())}u=e.singleOrUndefined(f);if(!u){u=e.createAssignHelper(r,f)}}var d=e.createExpressionForJsxElement(r.getEmitResolver().getJsxFactoryEntity(i),n.reactNamespace,c,u,e.mapDefined(a,transformJsxChildToExpression),t,s);if(o){e.startOnNewLine(d)}return d}function visitJsxOpeningFragment(t,a,o,s){var c=e.createExpressionForJsxFragment(r.getEmitResolver().getJsxFactoryEntity(i),n.reactNamespace,e.mapDefined(a,transformJsxChildToExpression),t,s);if(o){e.startOnNewLine(c)}return c}function transformJsxSpreadAttributeToExpression(t){return e.visitNode(t.expression,visitor,e.isExpression)}function transformJsxAttributeToObjectLiteralElement(t){var r=getAttributeName(t);var n=transformJsxAttributeInitializer(t.initializer);return e.createPropertyAssignment(r,n)}function transformJsxAttributeInitializer(t){if(t===undefined){return e.createTrue()}else if(t.kind===10){var r=e.createLiteral(tryDecodeEntities(t.text)||t.text);r.singleQuote=t.singleQuote!==undefined?t.singleQuote:!e.isStringDoubleQuoted(t,i);return e.setTextRange(r,t)}else if(t.kind===270){if(t.expression===undefined){return e.createTrue()}return visitJsxExpression(t)}else{return e.Debug.failBadSyntaxKind(t)}}function visitJsxText(t){var r=fixupWhitespaceAndDecodeEntities(e.getTextOfNode(t,true));return r===undefined?undefined:e.createLiteral(r)}function fixupWhitespaceAndDecodeEntities(t){var r;var n=0;var i=-1;for(var a=0;a<t.length;a++){var o=t.charCodeAt(a);if(e.isLineBreak(o)){if(n!==-1&&i!==-1){r=addLineOfJsxText(r,t.substr(n,i-n+1))}n=-1}else if(!e.isWhiteSpaceSingleLine(o)){i=a;if(n===-1){n=a}}}return n!==-1?addLineOfJsxText(r,t.substr(n)):r}function addLineOfJsxText(e,t){var r=decodeEntities(t);return e===undefined?r:e+" "+r}function decodeEntities(e){return e.replace(/&((#((\d+)|x([\da-fA-F]+)))|(\w+));/g,function(e,r,n,i,a,o,s){if(a){return String.fromCharCode(parseInt(a,10))}else if(o){return String.fromCharCode(parseInt(o,16))}else{var c=t.get(s);return c?String.fromCharCode(c):e}})}function tryDecodeEntities(e){var t=decodeEntities(e);return t===e?undefined:t}function getTagName(t){if(t.kind===260){return getTagName(t.openingElement)}else{var r=t.tagName;if(e.isIdentifier(r)&&e.isIntrinsicJsxName(r.escapedText)){return e.createLiteral(e.idText(r))}else{return e.createExpressionFromEntityName(r)}}}function getAttributeName(t){var r=t.name;var n=e.idText(r);if(/^[A-Za-z_]\w*$/.test(n)){return r}else{return e.createLiteral(n)}}function visitJsxExpression(t){return e.visitNode(t.expression,visitor,e.isExpression)}}e.transformJsx=transformJsx;var t=e.createMapFromTemplate({quot:34,amp:38,apos:39,lt:60,gt:62,nbsp:160,iexcl:161,cent:162,pound:163,curren:164,yen:165,brvbar:166,sect:167,uml:168,copy:169,ordf:170,laquo:171,not:172,shy:173,reg:174,macr:175,deg:176,plusmn:177,sup2:178,sup3:179,acute:180,micro:181,para:182,middot:183,cedil:184,sup1:185,ordm:186,raquo:187,frac14:188,frac12:189,frac34:190,iquest:191,Agrave:192,Aacute:193,Acirc:194,Atilde:195,Auml:196,Aring:197,AElig:198,Ccedil:199,Egrave:200,Eacute:201,Ecirc:202,Euml:203,Igrave:204,Iacute:205,Icirc:206,Iuml:207,ETH:208,Ntilde:209,Ograve:210,Oacute:211,Ocirc:212,Otilde:213,Ouml:214,times:215,Oslash:216,Ugrave:217,Uacute:218,Ucirc:219,Uuml:220,Yacute:221,THORN:222,szlig:223,agrave:224,aacute:225,acirc:226,atilde:227,auml:228,aring:229,aelig:230,ccedil:231,egrave:232,eacute:233,ecirc:234,euml:235,igrave:236,iacute:237,icirc:238,iuml:239,eth:240,ntilde:241,ograve:242,oacute:243,ocirc:244,otilde:245,ouml:246,divide:247,oslash:248,ugrave:249,uacute:250,ucirc:251,uuml:252,yacute:253,thorn:254,yuml:255,OElig:338,oelig:339,Scaron:352,scaron:353,Yuml:376,fnof:402,circ:710,tilde:732,Alpha:913,Beta:914,Gamma:915,Delta:916,Epsilon:917,Zeta:918,Eta:919,Theta:920,Iota:921,Kappa:922,Lambda:923,Mu:924,Nu:925,Xi:926,Omicron:927,Pi:928,Rho:929,Sigma:931,Tau:932,Upsilon:933,Phi:934,Chi:935,Psi:936,Omega:937,alpha:945,beta:946,gamma:947,delta:948,epsilon:949,zeta:950,eta:951,theta:952,iota:953,kappa:954,lambda:955,mu:956,nu:957,xi:958,omicron:959,pi:960,rho:961,sigmaf:962,sigma:963,tau:964,upsilon:965,phi:966,chi:967,psi:968,omega:969,thetasym:977,upsih:978,piv:982,ensp:8194,emsp:8195,thinsp:8201,zwnj:8204,zwj:8205,lrm:8206,rlm:8207,ndash:8211,mdash:8212,lsquo:8216,rsquo:8217,sbquo:8218,ldquo:8220,rdquo:8221,bdquo:8222,dagger:8224,Dagger:8225,bull:8226,hellip:8230,permil:8240,prime:8242,Prime:8243,lsaquo:8249,rsaquo:8250,oline:8254,frasl:8260,euro:8364,image:8465,weierp:8472,real:8476,trade:8482,alefsym:8501,larr:8592,uarr:8593,rarr:8594,darr:8595,harr:8596,crarr:8629,lArr:8656,uArr:8657,rArr:8658,dArr:8659,hArr:8660,forall:8704,part:8706,exist:8707,empty:8709,nabla:8711,isin:8712,notin:8713,ni:8715,prod:8719,sum:8721,minus:8722,lowast:8727,radic:8730,prop:8733,infin:8734,ang:8736,and:8743,or:8744,cap:8745,cup:8746,int:8747,there4:8756,sim:8764,cong:8773,asymp:8776,ne:8800,equiv:8801,le:8804,ge:8805,sub:8834,sup:8835,nsub:8836,sube:8838,supe:8839,oplus:8853,otimes:8855,perp:8869,sdot:8901,lceil:8968,rceil:8969,lfloor:8970,rfloor:8971,lang:9001,rang:9002,loz:9674,spades:9824,clubs:9827,hearts:9829,diams:9830})})(s||(s={}));var s;(function(e){function transformES2016(t){var r=t.hoistVariableDeclaration;return e.chainBundle(transformSourceFile);function transformSourceFile(r){if(r.isDeclarationFile){return r}return e.visitEachChild(r,visitor,t)}function visitor(r){if((r.transformFlags&32)===0){return r}switch(r.kind){case 204:return visitBinaryExpression(r);default:return e.visitEachChild(r,visitor,t)}}function visitBinaryExpression(r){switch(r.operatorToken.kind){case 63:return visitExponentiationAssignmentExpression(r);case 41:return visitExponentiationExpression(r);default:return e.visitEachChild(r,visitor,t)}}function visitExponentiationAssignmentExpression(t){var n;var i;var a=e.visitNode(t.left,visitor,e.isExpression);var o=e.visitNode(t.right,visitor,e.isExpression);if(e.isElementAccessExpression(a)){var s=e.createTempVariable(r);var c=e.createTempVariable(r);n=e.setTextRange(e.createElementAccess(e.setTextRange(e.createAssignment(s,a.expression),a.expression),e.setTextRange(e.createAssignment(c,a.argumentExpression),a.argumentExpression)),a);i=e.setTextRange(e.createElementAccess(s,c),a)}else if(e.isPropertyAccessExpression(a)){var s=e.createTempVariable(r);n=e.setTextRange(e.createPropertyAccess(e.setTextRange(e.createAssignment(s,a.expression),a.expression),a.name),a);i=e.setTextRange(e.createPropertyAccess(s,a.name),a)}else{n=a;i=a}return e.setTextRange(e.createAssignment(n,e.createMathPow(i,o,t)),t)}function visitExponentiationExpression(t){var r=e.visitNode(t.left,visitor,e.isExpression);var n=e.visitNode(t.right,visitor,e.isExpression);return e.createMathPow(r,n,t)}}e.transformES2016=transformES2016})(s||(s={}));var s;(function(e){var t;(function(e){e[e["CapturedThis"]=1]="CapturedThis";e[e["BlockScopedBindings"]=2]="BlockScopedBindings"})(t||(t={}));var r;(function(e){e[e["Body"]=1]="Body";e[e["Initializer"]=2]="Initializer"})(r||(r={}));var n;(function(e){e[e["ToOriginal"]=0]="ToOriginal";e[e["ToOutParameter"]=1]="ToOutParameter"})(n||(n={}));var i;(function(e){e[e["Break"]=2]="Break";e[e["Continue"]=4]="Continue";e[e["Return"]=8]="Return"})(i||(i={}));var a;(function(e){e[e["NoReplacement"]=0]="NoReplacement";e[e["ReplaceSuperCapture"]=1]="ReplaceSuperCapture";e[e["ReplaceWithReturn"]=2]="ReplaceWithReturn"})(a||(a={}));var o;(function(e){e[e["None"]=0]="None";e[e["Function"]=1]="Function";e[e["ArrowFunction"]=2]="ArrowFunction";e[e["AsyncFunctionBody"]=4]="AsyncFunctionBody";e[e["NonStaticClassElement"]=8]="NonStaticClassElement";e[e["CapturesThis"]=16]="CapturesThis";e[e["ExportedVariableStatement"]=32]="ExportedVariableStatement";e[e["TopLevel"]=64]="TopLevel";e[e["Block"]=128]="Block";e[e["IterationStatement"]=256]="IterationStatement";e[e["IterationStatementBlock"]=512]="IterationStatementBlock";e[e["ForStatement"]=1024]="ForStatement";e[e["ForInOrForOfStatement"]=2048]="ForInOrForOfStatement";e[e["ConstructorWithCapturedSuper"]=4096]="ConstructorWithCapturedSuper";e[e["ComputedPropertyName"]=8192]="ComputedPropertyName";e[e["AncestorFactsMask"]=16383]="AncestorFactsMask";e[e["BlockScopeIncludes"]=0]="BlockScopeIncludes";e[e["BlockScopeExcludes"]=4032]="BlockScopeExcludes";e[e["SourceFileIncludes"]=64]="SourceFileIncludes";e[e["SourceFileExcludes"]=3968]="SourceFileExcludes";e[e["FunctionIncludes"]=65]="FunctionIncludes";e[e["FunctionExcludes"]=16286]="FunctionExcludes";e[e["AsyncFunctionBodyIncludes"]=69]="AsyncFunctionBodyIncludes";e[e["AsyncFunctionBodyExcludes"]=16278]="AsyncFunctionBodyExcludes";e[e["ArrowFunctionIncludes"]=66]="ArrowFunctionIncludes";e[e["ArrowFunctionExcludes"]=16256]="ArrowFunctionExcludes";e[e["ConstructorIncludes"]=73]="ConstructorIncludes";e[e["ConstructorExcludes"]=16278]="ConstructorExcludes";e[e["DoOrWhileStatementIncludes"]=256]="DoOrWhileStatementIncludes";e[e["DoOrWhileStatementExcludes"]=0]="DoOrWhileStatementExcludes";e[e["ForStatementIncludes"]=1280]="ForStatementIncludes";e[e["ForStatementExcludes"]=3008]="ForStatementExcludes";e[e["ForInOrForOfStatementIncludes"]=2304]="ForInOrForOfStatementIncludes";e[e["ForInOrForOfStatementExcludes"]=1984]="ForInOrForOfStatementExcludes";e[e["BlockIncludes"]=128]="BlockIncludes";e[e["BlockExcludes"]=3904]="BlockExcludes";e[e["IterationStatementBlockIncludes"]=512]="IterationStatementBlockIncludes";e[e["IterationStatementBlockExcludes"]=4032]="IterationStatementBlockExcludes";e[e["ComputedPropertyNameIncludes"]=8192]="ComputedPropertyNameIncludes";e[e["ComputedPropertyNameExcludes"]=0]="ComputedPropertyNameExcludes";e[e["NewTarget"]=16384]="NewTarget";e[e["NewTargetInComputedPropertyName"]=32768]="NewTargetInComputedPropertyName";e[e["SubtreeFactsMask"]=-16384]="SubtreeFactsMask";e[e["PropagateNewTargetMask"]=49152]="PropagateNewTargetMask"})(o||(o={}));function transformES2015(t){var r=t.startLexicalEnvironment,n=t.resumeLexicalEnvironment,i=t.endLexicalEnvironment,a=t.hoistVariableDeclaration;var o=t.getCompilerOptions();var s=t.getEmitResolver();var c=t.onSubstituteNode;var u=t.onEmitNode;t.onEmitNode=onEmitNode;t.onSubstituteNode=onSubstituteNode;var l;var f;var d;var p;function recordTaggedTemplateString(t){p=e.append(p,e.createVariableDeclaration(t))}var g;var _;return e.chainBundle(transformSourceFile);function transformSourceFile(r){if(r.isDeclarationFile){return r}l=r;f=r.text;var n=visitSourceFile(r);e.addEmitHelpers(n,t.readEmitHelpers());l=undefined;f=undefined;p=undefined;d=0;return n}function enterSubtree(e,t){var r=d;d=(d&~e|t)&16383;return r}function exitSubtree(e,t,r){d=(d&~t|r)&-16384|e}function isReturnVoidStatementInConstructorWithCapturedSuper(e){return(d&4096)!==0&&e.kind===230&&!e.expression}function shouldVisitNode(t){return(t.transformFlags&128)!==0||g!==undefined||d&4096&&(e.isStatement(t)||t.kind===218)||e.isIterationStatement(t,false)&&shouldConvertIterationStatement(t)||(e.getEmitFlags(t)&33554432)!==0}function visitor(e){if(shouldVisitNode(e)){return visitJavaScript(e)}else{return e}}function functionBodyVisitor(e){if(shouldVisitNode(e)){return visitBlock(e,true)}return e}function callExpressionVisitor(e){if(e.kind===98){return visitSuperKeyword(true)}return visitor(e)}function visitJavaScript(r){switch(r.kind){case 116:return undefined;case 240:return visitClassDeclaration(r);case 209:return visitClassExpression(r);case 151:return visitParameter(r);case 239:return visitFunctionDeclaration(r);case 197:return visitArrowFunction(r);case 196:return visitFunctionExpression(r);case 237:return visitVariableDeclaration(r);case 72:return visitIdentifier(r);case 238:return visitVariableDeclarationList(r);case 232:return visitSwitchStatement(r);case 246:return visitCaseBlock(r);case 218:return visitBlock(r,false);case 229:case 228:return visitBreakOrContinueStatement(r);case 233:return visitLabeledStatement(r);case 223:case 224:return visitDoOrWhileStatement(r,undefined);case 225:return visitForStatement(r,undefined);case 226:return visitForInStatement(r,undefined);case 227:return visitForOfStatement(r,undefined);case 221:return visitExpressionStatement(r);case 188:return visitObjectLiteralExpression(r);case 274:return visitCatchClause(r);case 276:return visitShorthandPropertyAssignment(r);case 149:return visitComputedPropertyName(r);case 187:return visitArrayLiteralExpression(r);case 191:return visitCallExpression(r);case 192:return visitNewExpression(r);case 195:return visitParenthesizedExpression(r,true);case 204:return visitBinaryExpression(r,true);case 14:case 15:case 16:case 17:return visitTemplateLiteral(r);case 10:return visitStringLiteral(r);case 8:return visitNumericLiteral(r);case 193:return visitTaggedTemplateExpression(r);case 206:return visitTemplateExpression(r);case 207:return visitYieldExpression(r);case 208:return visitSpreadElement(r);case 98:return visitSuperKeyword(false);case 100:return visitThisKeyword(r);case 214:return visitMetaProperty(r);case 156:return visitMethodDeclaration(r);case 158:case 159:return visitAccessorDeclaration(r);case 219:return visitVariableStatement(r);case 230:return visitReturnStatement(r);default:return e.visitEachChild(r,visitor,t)}}function visitSourceFile(t){var n=enterSubtree(3968,64);var a=[];r();var o=e.addStandardPrologue(a,t.statements,false);addCaptureThisForNodeIfNeeded(a,t);o=e.addCustomPrologue(a,t.statements,o,visitor);e.addRange(a,e.visitNodes(t.statements,visitor,e.isStatement,o));if(p){a.push(e.createVariableStatement(undefined,e.createVariableDeclarationList(p)))}e.addStatementsAfterPrologue(a,i());exitSubtree(n,0,0);return e.updateSourceFileNode(t,e.setTextRange(e.createNodeArray(a),t.statements))}function visitSwitchStatement(r){if(g!==undefined){var n=g.allowedNonLabeledJumps;g.allowedNonLabeledJumps|=2;var i=e.visitEachChild(r,visitor,t);g.allowedNonLabeledJumps=n;return i}return e.visitEachChild(r,visitor,t)}function visitCaseBlock(r){var n=enterSubtree(4032,0);var i=e.visitEachChild(r,visitor,t);exitSubtree(n,0,0);return i}function returnCapturedThis(t){return e.setOriginalNode(e.createReturn(e.createFileLevelUniqueName("_this")),t)}function visitReturnStatement(r){if(g){g.nonLocalJumps|=8;if(isReturnVoidStatementInConstructorWithCapturedSuper(r)){r=returnCapturedThis(r)}return e.createReturn(e.createObjectLiteral([e.createPropertyAssignment(e.createIdentifier("value"),r.expression?e.visitNode(r.expression,visitor,e.isExpression):e.createVoidZero())]))}else if(isReturnVoidStatementInConstructorWithCapturedSuper(r)){return returnCapturedThis(r)}return e.visitEachChild(r,visitor,t)}function visitThisKeyword(t){if(g){if(d&2){g.containsLexicalThis=true;return t}return g.thisName||(g.thisName=e.createUniqueName("this"))}return t}function visitIdentifier(t){if(!g){return t}if(e.isGeneratedIdentifier(t)){return t}if(t.escapedText!=="arguments"||!s.isArgumentsLocalBinding(t)){return t}return g.argumentsName||(g.argumentsName=e.createUniqueName("arguments"))}function visitBreakOrContinueStatement(r){if(g){var n=r.kind===229?2:4;var i=r.label&&g.labels&&g.labels.get(e.idText(r.label))||!r.label&&g.allowedNonLabeledJumps&n;if(!i){var a=void 0;var o=r.label;if(!o){if(r.kind===229){g.nonLocalJumps|=2;a="break"}else{g.nonLocalJumps|=4;a="continue"}}else{if(r.kind===229){a="break-"+o.escapedText;setLabeledJump(g,true,e.idText(o),a)}else{a="continue-"+o.escapedText;setLabeledJump(g,false,e.idText(o),a)}}var s=e.createLiteral(a);if(g.loopOutParameters.length){var c=g.loopOutParameters;var u=void 0;for(var l=0;l<c.length;l++){var f=copyOutParameter(c[l],1);if(l===0){u=f}else{u=e.createBinary(u,27,f)}}s=e.createBinary(u,27,s)}return e.createReturn(s)}}return e.visitEachChild(r,visitor,t)}function visitClassDeclaration(t){var r=e.createVariableDeclaration(e.getLocalName(t,true),undefined,transformClassLikeDeclarationToExpression(t));e.setOriginalNode(r,t);var n=[];var i=e.createVariableStatement(undefined,e.createVariableDeclarationList([r]));e.setOriginalNode(i,t);e.setTextRange(i,t);e.startOnNewLine(i);n.push(i);if(e.hasModifier(t,1)){var a=e.hasModifier(t,512)?e.createExportDefault(e.getLocalName(t)):e.createExternalModuleExport(e.getLocalName(t));e.setOriginalNode(a,i);n.push(a)}var o=e.getEmitFlags(t);if((o&4194304)===0){n.push(e.createEndOfDeclarationMarker(t));e.setEmitFlags(i,o|4194304)}return e.singleOrMany(n)}function visitClassExpression(e){return transformClassLikeDeclarationToExpression(e)}function transformClassLikeDeclarationToExpression(t){if(t.name){enableSubstitutionsForBlockScopedBindings()}var r=e.getEffectiveBaseTypeNode(t);var n=e.createFunctionExpression(undefined,undefined,undefined,undefined,r?[e.createParameter(undefined,undefined,undefined,e.createFileLevelUniqueName("_super"))]:[],undefined,transformClassBody(t,r));e.setEmitFlags(n,e.getEmitFlags(t)&65536|524288);var i=e.createPartiallyEmittedExpression(n);i.end=t.end;e.setEmitFlags(i,1536);var a=e.createPartiallyEmittedExpression(i);a.end=e.skipTrivia(f,t.pos);e.setEmitFlags(a,1536);var o=e.createParen(e.createCall(a,undefined,r?[e.visitNode(r.expression,visitor,e.isExpression)]:[]));e.addSyntheticLeadingComment(o,3,"* @class ");return o}function transformClassBody(t,n){var a=[];r();addExtendsHelperIfNeeded(a,t,n);addConstructor(a,t,n);addClassMembers(a,t);var o=e.createTokenRange(e.skipTrivia(f,t.members.end),19);var s=e.getInternalName(t);var c=e.createPartiallyEmittedExpression(s);c.end=o.end;e.setEmitFlags(c,1536);var u=e.createReturn(c);u.pos=o.pos;e.setEmitFlags(u,1536|384);a.push(u);e.addStatementsAfterPrologue(a,i());var l=e.createBlock(e.setTextRange(e.createNodeArray(a),t.members),true);e.setEmitFlags(l,1536);return l}function addExtendsHelperIfNeeded(r,n,i){if(i){r.push(e.setTextRange(e.createExpressionStatement(createExtendsHelper(t,e.getInternalName(n))),i))}}function addConstructor(t,r,n){var i=g;g=undefined;var a=enterSubtree(16278,73);var o=e.getFirstConstructorWithBody(r);var s=hasSynthesizedDefaultSuperCall(o,n!==undefined);var c=e.createFunctionDeclaration(undefined,undefined,undefined,e.getInternalName(r),undefined,transformConstructorParameters(o,s),undefined,transformConstructorBody(o,r,n,s));e.setTextRange(c,o||r);if(n){e.setEmitFlags(c,8)}t.push(c);exitSubtree(a,49152,0);g=i}function transformConstructorParameters(r,n){return e.visitParameterList(r&&!n?r.parameters:undefined,visitor,t)||[]}function transformConstructorBody(t,r,a,o){var s=[];n();var c=-1;if(o){c=0}else if(t){c=e.addStandardPrologue(s,t.body.statements,false)}if(t){addDefaultValueAssignmentsIfNeeded(s,t);addRestParameterIfNeeded(s,t,o);if(!o){c=e.addCustomPrologue(s,t.body.statements,c,visitor)}e.Debug.assert(c>=0,"statementOffset not initialized correctly!")}var u=!!a&&e.skipOuterExpressions(a.expression).kind!==96;var l=declareOrCaptureOrReturnThisForConstructorIfNeeded(s,t,u,o,c);if(l===1||l===2){c++}if(t){if(l===1){d|=4096}e.addRange(s,e.visitNodes(t.body.statements,visitor,e.isStatement,c))}if(u&&l!==2&&!(t&&isSufficientlyCoveredByReturnStatements(t.body))){s.push(e.createReturn(e.createFileLevelUniqueName("_this")))}e.addStatementsAfterPrologue(s,i());if(t){prependCaptureNewTargetIfNeeded(s,t,false)}var f=e.createBlock(e.setTextRange(e.createNodeArray(s),t?t.body.statements:r.members),true);e.setTextRange(f,t?t.body:r);if(!t){e.setEmitFlags(f,1536)}return f}function isSufficientlyCoveredByReturnStatements(t){if(t.kind===230){return true}else if(t.kind===222){var r=t;if(r.elseStatement){return isSufficientlyCoveredByReturnStatements(r.thenStatement)&&isSufficientlyCoveredByReturnStatements(r.elseStatement)}}else if(t.kind===218){var n=e.lastOrUndefined(t.statements);if(n&&isSufficientlyCoveredByReturnStatements(n)){return true}}return false}function declareOrCaptureOrReturnThisForConstructorIfNeeded(t,r,n,i,a){if(!n){if(r){addCaptureThisForNodeIfNeeded(t,r)}return 0}if(!r){t.push(e.createReturn(createDefaultSuperCallOrThis()));return 2}if(i){captureThisForNode(t,r,createDefaultSuperCallOrThis());enableSubstitutionsForCapturedThis();return 1}var o;var s;var c=r.body.statements;if(a<c.length){o=c[a];if(o.kind===221&&e.isSuperCall(o.expression)){s=visitImmediateSuperCallInBody(o.expression)}}if(s&&a===c.length-1&&!(r.transformFlags&(8192|16384))){var u=e.createReturn(s);if(s.kind!==204||s.left.kind!==191){e.Debug.fail("Assumed generated super call would have form 'super.call(...) || this'.")}e.setCommentRange(u,e.getCommentRange(e.setEmitFlags(s.left,1536)));t.push(u);return 2}captureThisForNode(t,r,s||createActualThis());if(s){return 1}return 0}function createActualThis(){return e.setEmitFlags(e.createThis(),4)}function createDefaultSuperCallOrThis(){return e.createLogicalOr(e.createLogicalAnd(e.createStrictInequality(e.createFileLevelUniqueName("_super"),e.createNull()),e.createFunctionApply(e.createFileLevelUniqueName("_super"),createActualThis(),e.createIdentifier("arguments"))),createActualThis())}function visitParameter(t){if(t.dotDotDotToken){return undefined}else if(e.isBindingPattern(t.name)){return e.setOriginalNode(e.setTextRange(e.createParameter(undefined,undefined,undefined,e.getGeneratedNameForNode(t),undefined,undefined,undefined),t),t)}else if(t.initializer){return e.setOriginalNode(e.setTextRange(e.createParameter(undefined,undefined,undefined,t.name,undefined,undefined,undefined),t),t)}else{return t}}function shouldAddDefaultValueAssignments(e){return(e.transformFlags&65536)!==0}function addDefaultValueAssignmentsIfNeeded(t,r){if(!shouldAddDefaultValueAssignments(r)){return}for(var n=0,i=r.parameters;n<i.length;n++){var a=i[n];var o=a.name,s=a.initializer,c=a.dotDotDotToken;if(c){continue}if(e.isBindingPattern(o)){addDefaultValueAssignmentForBindingPattern(t,a,o,s)}else if(s){addDefaultValueAssignmentForInitializer(t,a,o,s)}}}function addDefaultValueAssignmentForBindingPattern(r,n,i,a){var o=e.getGeneratedNameForNode(n);if(i.elements.length>0){r.push(e.setEmitFlags(e.createVariableStatement(undefined,e.createVariableDeclarationList(e.flattenDestructuringBinding(n,visitor,t,0,o))),1048576))}else if(a){r.push(e.setEmitFlags(e.createExpressionStatement(e.createAssignment(o,e.visitNode(a,visitor,e.isExpression))),1048576))}}function addDefaultValueAssignmentForInitializer(t,r,n,i){i=e.visitNode(i,visitor,e.isExpression);var a=e.createIf(e.createTypeCheck(e.getSynthesizedClone(n),"undefined"),e.setEmitFlags(e.setTextRange(e.createBlock([e.createExpressionStatement(e.setEmitFlags(e.setTextRange(e.createAssignment(e.setEmitFlags(e.getMutableClone(n),48),e.setEmitFlags(i,48|e.getEmitFlags(i)|1536)),r),1536))]),r),1|32|384|1536));e.startOnNewLine(a);e.setTextRange(a,r);e.setEmitFlags(a,384|32|1048576|1536);t.push(a)}function shouldAddRestParameter(e,t){return e&&e.dotDotDotToken&&e.name.kind===72&&!t}function addRestParameterIfNeeded(t,r,n){var i=e.lastOrUndefined(r.parameters);if(!shouldAddRestParameter(i,n)){return}var a=e.getMutableClone(i.name);e.setEmitFlags(a,48);var o=e.getSynthesizedClone(i.name);var s=r.parameters.length-1;var c=e.createLoopVariable();t.push(e.setEmitFlags(e.setTextRange(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(a,undefined,e.createArrayLiteral([]))])),i),1048576));var u=e.createFor(e.setTextRange(e.createVariableDeclarationList([e.createVariableDeclaration(c,undefined,e.createLiteral(s))]),i),e.setTextRange(e.createLessThan(c,e.createPropertyAccess(e.createIdentifier("arguments"),"length")),i),e.setTextRange(e.createPostfixIncrement(c),i),e.createBlock([e.startOnNewLine(e.setTextRange(e.createExpressionStatement(e.createAssignment(e.createElementAccess(o,s===0?c:e.createSubtract(c,e.createLiteral(s))),e.createElementAccess(e.createIdentifier("arguments"),c))),i))]));e.setEmitFlags(u,1048576);e.startOnNewLine(u);t.push(u)}function addCaptureThisForNodeIfNeeded(t,r){if(r.transformFlags&16384&&r.kind!==197){captureThisForNode(t,r,e.createThis())}}function captureThisForNode(t,r,n){enableSubstitutionsForCapturedThis();var i=e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.createFileLevelUniqueName("_this"),undefined,n)]));e.setEmitFlags(i,1536|1048576);e.setSourceMapRange(i,r);t.push(i)}function prependCaptureNewTargetIfNeeded(t,r,n){if(d&16384){var i=void 0;switch(r.kind){case 197:return t;case 156:case 158:case 159:i=e.createVoidZero();break;case 157:i=e.createPropertyAccess(e.setEmitFlags(e.createThis(),4),"constructor");break;case 239:case 196:i=e.createConditional(e.createLogicalAnd(e.setEmitFlags(e.createThis(),4),e.createBinary(e.setEmitFlags(e.createThis(),4),94,e.getLocalName(r))),e.createPropertyAccess(e.setEmitFlags(e.createThis(),4),"constructor"),e.createVoidZero());break;default:return e.Debug.failBadSyntaxKind(r)}var a=e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.createFileLevelUniqueName("_newTarget"),undefined,i)]));if(n){return[a].concat(t)}t.unshift(a)}return t}function addClassMembers(t,r){for(var n=0,i=r.members;n<i.length;n++){var a=i[n];switch(a.kind){case 217:t.push(transformSemicolonClassElementToStatement(a));break;case 156:t.push(transformClassMethodDeclarationToStatement(getClassMemberPrefix(r,a),a,r));break;case 158:case 159:var o=e.getAllAccessorDeclarations(r.members,a);if(a===o.firstAccessor){t.push(transformAccessorsToStatement(getClassMemberPrefix(r,a),o,r))}break;case 157:break;default:e.Debug.failBadSyntaxKind(r);break}}}function transformSemicolonClassElementToStatement(t){return e.setTextRange(e.createEmptyStatement(),t)}function transformClassMethodDeclarationToStatement(t,r,n){var i=enterSubtree(0,0);var a=e.getCommentRange(r);var o=e.getSourceMapRange(r);var s=e.createMemberAccessForPropertyName(t,e.visitNode(r.name,visitor,e.isPropertyName),r.name);var c=transformFunctionLikeToExpression(r,r,undefined,n);e.setEmitFlags(c,1536);e.setSourceMapRange(c,o);var u=e.setTextRange(e.createExpressionStatement(e.createAssignment(s,c)),r);e.setOriginalNode(u,r);e.setCommentRange(u,a);e.setEmitFlags(u,48);exitSubtree(i,49152,d&49152?16384:0);return u}function transformAccessorsToStatement(t,r,n){var i=e.createExpressionStatement(transformAccessorsToExpression(t,r,n,false));e.setEmitFlags(i,1536);e.setSourceMapRange(i,e.getSourceMapRange(r.firstAccessor));return i}function transformAccessorsToExpression(t,r,n,i){var a=r.firstAccessor,o=r.getAccessor,s=r.setAccessor;var c=enterSubtree(0,0);var u=e.getMutableClone(t);e.setEmitFlags(u,1536|32);e.setSourceMapRange(u,a.name);var l=e.createExpressionForPropertyName(e.visitNode(a.name,visitor,e.isPropertyName));e.setEmitFlags(l,1536|16);e.setSourceMapRange(l,a.name);var f=[];if(o){var p=transformFunctionLikeToExpression(o,undefined,undefined,n);e.setSourceMapRange(p,e.getSourceMapRange(o));e.setEmitFlags(p,512);var g=e.createPropertyAssignment("get",p);e.setCommentRange(g,e.getCommentRange(o));f.push(g)}if(s){var _=transformFunctionLikeToExpression(s,undefined,undefined,n);e.setSourceMapRange(_,e.getSourceMapRange(s));e.setEmitFlags(_,512);var m=e.createPropertyAssignment("set",_);e.setCommentRange(m,e.getCommentRange(s));f.push(m)}f.push(e.createPropertyAssignment("enumerable",e.createTrue()),e.createPropertyAssignment("configurable",e.createTrue()));var y=e.createCall(e.createPropertyAccess(e.createIdentifier("Object"),"defineProperty"),undefined,[u,l,e.createObjectLiteral(f,true)]);if(i){e.startOnNewLine(y)}exitSubtree(c,49152,d&49152?16384:0);return y}function visitArrowFunction(r){if(r.transformFlags&8192){enableSubstitutionsForCapturedThis()}var n=g;g=undefined;var i=enterSubtree(16256,66);var a=e.createFunctionExpression(undefined,undefined,undefined,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,transformFunctionBody(r));e.setTextRange(a,r);e.setOriginalNode(a,r);e.setEmitFlags(a,8);exitSubtree(i,0,0);g=n;return a}function visitFunctionExpression(r){var n=e.getEmitFlags(r)&262144?enterSubtree(16278,69):enterSubtree(16286,65);var i=g;g=undefined;var a=e.visitParameterList(r.parameters,visitor,t);var o=r.transformFlags&64?transformFunctionBody(r):visitFunctionBodyDownLevel(r);var s=d&16384?e.getLocalName(r):r.name;exitSubtree(n,49152,0);g=i;return e.updateFunctionExpression(r,undefined,r.asteriskToken,s,undefined,a,undefined,o)}function visitFunctionDeclaration(r){var n=g;g=undefined;var i=enterSubtree(16286,65);var a=e.visitParameterList(r.parameters,visitor,t);var o=r.transformFlags&64?transformFunctionBody(r):visitFunctionBodyDownLevel(r);var s=d&16384?e.getLocalName(r):r.name;exitSubtree(i,49152,0);g=n;return e.updateFunctionDeclaration(r,undefined,e.visitNodes(r.modifiers,visitor,e.isModifier),r.asteriskToken,s,undefined,a,undefined,o)}function transformFunctionLikeToExpression(r,n,i,a){var o=g;g=undefined;var s=a&&e.isClassLike(a)&&!e.hasModifier(r,32)?enterSubtree(16286,65|8):enterSubtree(16286,65);var c=e.visitParameterList(r.parameters,visitor,t);var u=transformFunctionBody(r);if(d&16384&&!i&&(r.kind===239||r.kind===196)){i=e.getGeneratedNameForNode(r)}exitSubtree(s,49152,0);g=o;return e.setOriginalNode(e.setTextRange(e.createFunctionExpression(undefined,r.asteriskToken,i,undefined,c,undefined,u),n),r)}function transformFunctionBody(r){var i=false;var a=false;var o;var s;var c=[];var u=[];var f=r.body;var d;n();if(e.isBlock(f)){d=e.addStandardPrologue(c,f.statements,false)}addCaptureThisForNodeIfNeeded(c,r);addDefaultValueAssignmentsIfNeeded(c,r);addRestParameterIfNeeded(c,r,false);if(e.isBlock(f)){d=e.addCustomPrologue(c,f.statements,d,visitor);o=f.statements;e.addRange(u,e.visitNodes(f.statements,visitor,e.isStatement,d));if(!i&&f.multiLine){i=true}}else{e.Debug.assert(r.kind===197);o=e.moveRangeEnd(f,-1);var p=r.equalsGreaterThanToken;if(!e.nodeIsSynthesized(p)&&!e.nodeIsSynthesized(f)){if(e.rangeEndIsOnSameLineAsRangeStart(p,f,l)){a=true}else{i=true}}var g=e.visitNode(f,visitor,e.isExpression);var _=e.createReturn(g);e.setTextRange(_,f);e.moveSyntheticComments(_,f);e.setEmitFlags(_,384|32|1024);u.push(_);s=f}var m=t.endLexicalEnvironment();e.addStatementsAfterPrologue(u,m);prependCaptureNewTargetIfNeeded(u,r,false);if(e.some(c)||e.some(m)){i=true}var y=e.createBlock(e.setTextRange(e.createNodeArray(c.concat(u)),o),i);e.setTextRange(y,r.body);if(!i&&a){e.setEmitFlags(y,1)}if(s){e.setTokenSourceMapRange(y,19,s)}e.setOriginalNode(y,r.body);return y}function visitFunctionBodyDownLevel(r){var n=e.visitFunctionBody(r.body,functionBodyVisitor,t);return e.updateBlock(n,e.setTextRange(e.createNodeArray(prependCaptureNewTargetIfNeeded(n.statements,r,true)),n.statements))}function visitBlock(r,n){if(n){return e.visitEachChild(r,visitor,t)}var i=d&256?enterSubtree(4032,512):enterSubtree(3904,128);var a=e.visitEachChild(r,visitor,t);exitSubtree(i,0,0);return a}function visitExpressionStatement(r){switch(r.expression.kind){case 195:return e.updateExpressionStatement(r,visitParenthesizedExpression(r.expression,false));case 204:return e.updateExpressionStatement(r,visitBinaryExpression(r.expression,false))}return e.visitEachChild(r,visitor,t)}function visitParenthesizedExpression(r,n){if(!n){switch(r.expression.kind){case 195:return e.updateParen(r,visitParenthesizedExpression(r.expression,false));case 204:return e.updateParen(r,visitBinaryExpression(r.expression,false))}}return e.visitEachChild(r,visitor,t)}function visitBinaryExpression(r,n){if(e.isDestructuringAssignment(r)){return e.flattenDestructuringAssignment(r,visitor,t,0,n)}return e.visitEachChild(r,visitor,t)}function visitVariableStatement(r){var n=enterSubtree(0,e.hasModifier(r,1)?32:0);var i;if(g&&(r.declarationList.flags&3)===0){var a=void 0;for(var o=0,s=r.declarationList.declarations;o<s.length;o++){var c=s[o];hoistVariableDeclarationDeclaredInConvertedLoop(g,c);if(c.initializer){var u=void 0;if(e.isBindingPattern(c.name)){u=e.flattenDestructuringAssignment(c,visitor,t,0)}else{u=e.createBinary(c.name,59,e.visitNode(c.initializer,visitor,e.isExpression));e.setTextRange(u,c)}a=e.append(a,u)}}if(a){i=e.setTextRange(e.createExpressionStatement(e.inlineExpressions(a)),r)}else{i=undefined}}else{i=e.visitEachChild(r,visitor,t)}exitSubtree(n,0,0);return i}function visitVariableDeclarationList(r){if(r.transformFlags&64){if(r.flags&3){enableSubstitutionsForBlockScopedBindings()}var n=e.flatMap(r.declarations,r.flags&1?visitVariableDeclarationInLetDeclarationList:visitVariableDeclaration);var i=e.createVariableDeclarationList(n);e.setOriginalNode(i,r);e.setTextRange(i,r);e.setCommentRange(i,r);if(r.transformFlags&2097152&&(e.isBindingPattern(r.declarations[0].name)||e.isBindingPattern(e.last(r.declarations).name))){e.setSourceMapRange(i,getRangeUnion(n))}return i}return e.visitEachChild(r,visitor,t)}function getRangeUnion(t){var r=-1,n=-1;for(var i=0,a=t;i<a.length;i++){var o=a[i];r=r===-1?o.pos:o.pos===-1?r:Math.min(r,o.pos);n=Math.max(n,o.end)}return e.createRange(r,n)}function shouldEmitExplicitInitializerForLetDeclaration(e){var t=s.getNodeCheckFlags(e);var r=t&262144;var n=t&524288;var i=(d&64)!==0||r&&n&&(d&512)!==0;var a=!i&&(d&2048)===0&&(!s.isDeclarationWithCollidingName(e)||n&&!r&&(d&(1024|2048))===0);return a}function visitVariableDeclarationInLetDeclarationList(r){var n=r.name;if(e.isBindingPattern(n)){return visitVariableDeclaration(r)}if(!r.initializer&&shouldEmitExplicitInitializerForLetDeclaration(r)){var i=e.getMutableClone(r);i.initializer=e.createVoidZero();return i}return e.visitEachChild(r,visitor,t)}function visitVariableDeclaration(r){var n=enterSubtree(32,0);var i;if(e.isBindingPattern(r.name)){i=e.flattenDestructuringBinding(r,visitor,t,0,undefined,(n&32)!==0)}else{i=e.visitEachChild(r,visitor,t)}exitSubtree(n,0,0);return i}function recordLabel(t){g.labels.set(e.idText(t.label),true)}function resetLabel(t){g.labels.set(e.idText(t.label),false)}function visitLabeledStatement(t){if(g&&!g.labels){g.labels=e.createMap()}var r=e.unwrapInnermostStatementOfLabel(t,g&&recordLabel);return e.isIterationStatement(r,false)?visitIterationStatement(r,t):e.restoreEnclosingLabel(e.visitNode(r,visitor,e.isStatement,e.liftToBlock),t,g&&resetLabel)}function visitIterationStatement(e,t){switch(e.kind){case 223:case 224:return visitDoOrWhileStatement(e,t);case 225:return visitForStatement(e,t);case 226:return visitForInStatement(e,t);case 227:return visitForOfStatement(e,t)}}function visitIterationStatementWithFacts(e,t,r,n,i){var a=enterSubtree(e,t);var o=convertIterationStatementBodyIfNecessary(r,n,i);exitSubtree(a,0,0);return o}function visitDoOrWhileStatement(e,t){return visitIterationStatementWithFacts(0,256,e,t)}function visitForStatement(e,t){return visitIterationStatementWithFacts(3008,1280,e,t)}function visitForInStatement(e,t){return visitIterationStatementWithFacts(1984,2304,e,t)}function visitForOfStatement(e,t){return visitIterationStatementWithFacts(1984,2304,e,t,o.downlevelIteration?convertForOfStatementForIterable:convertForOfStatementForArray)}function convertForOfStatementHead(r,n,i){var a=[];var o=r.initializer;if(e.isVariableDeclarationList(o)){if(r.initializer.flags&3){enableSubstitutionsForBlockScopedBindings()}var s=e.firstOrUndefined(o.declarations);if(s&&e.isBindingPattern(s.name)){var c=e.flattenDestructuringBinding(s,visitor,t,0,n);var u=e.setTextRange(e.createVariableDeclarationList(c),r.initializer);e.setOriginalNode(u,r.initializer);e.setSourceMapRange(u,e.createRange(c[0].pos,e.last(c).end));a.push(e.createVariableStatement(undefined,u))}else{a.push(e.setTextRange(e.createVariableStatement(undefined,e.setOriginalNode(e.setTextRange(e.createVariableDeclarationList([e.createVariableDeclaration(s?s.name:e.createTempVariable(undefined),undefined,n)]),e.moveRangePos(o,-1)),o)),e.moveRangeEnd(o,-1)))}}else{var l=e.createAssignment(o,n);if(e.isDestructuringAssignment(l)){e.aggregateTransformFlags(l);a.push(e.createExpressionStatement(visitBinaryExpression(l,false)))}else{l.end=o.end;a.push(e.setTextRange(e.createExpressionStatement(e.visitNode(l,visitor,e.isExpression)),e.moveRangeEnd(o,-1)))}}if(i){return createSyntheticBlockForConvertedStatements(e.addRange(a,i))}else{var f=e.visitNode(r.statement,visitor,e.isStatement,e.liftToBlock);if(e.isBlock(f)){return e.updateBlock(f,e.setTextRange(e.createNodeArray(e.concatenate(a,f.statements)),f.statements))}else{a.push(f);return createSyntheticBlockForConvertedStatements(a)}}}function createSyntheticBlockForConvertedStatements(t){return e.setEmitFlags(e.createBlock(e.createNodeArray(t),true),48|384)}function convertForOfStatementForArray(t,r,n){var i=e.visitNode(t.expression,visitor,e.isExpression);var a=e.createLoopVariable();var o=e.isIdentifier(i)?e.getGeneratedNameForNode(i):e.createTempVariable(undefined);e.setEmitFlags(i,48|e.getEmitFlags(i));var s=e.setTextRange(e.createFor(e.setEmitFlags(e.setTextRange(e.createVariableDeclarationList([e.setTextRange(e.createVariableDeclaration(a,undefined,e.createLiteral(0)),e.moveRangePos(t.expression,-1)),e.setTextRange(e.createVariableDeclaration(o,undefined,i),t.expression)]),t.expression),2097152),e.setTextRange(e.createLessThan(a,e.createPropertyAccess(o,"length")),t.expression),e.setTextRange(e.createPostfixIncrement(a),t.expression),convertForOfStatementHead(t,e.createElementAccess(o,a),n)),t);e.setEmitFlags(s,256);e.setTextRange(s,t);return e.restoreEnclosingLabel(s,r,g&&resetLabel)}function convertForOfStatementForIterable(r,n,i){var o=e.visitNode(r.expression,visitor,e.isExpression);var s=e.isIdentifier(o)?e.getGeneratedNameForNode(o):e.createTempVariable(undefined);var c=e.isIdentifier(o)?e.getGeneratedNameForNode(s):e.createTempVariable(undefined);var u=e.createUniqueName("e");var l=e.getGeneratedNameForNode(u);var f=e.createTempVariable(undefined);var d=e.createValuesHelper(t,o,r.expression);var p=e.createCall(e.createPropertyAccess(s,"next"),undefined,[]);a(u);a(f);var _=e.setEmitFlags(e.setTextRange(e.createFor(e.setEmitFlags(e.setTextRange(e.createVariableDeclarationList([e.setTextRange(e.createVariableDeclaration(s,undefined,d),r.expression),e.createVariableDeclaration(c,undefined,p)]),r.expression),2097152),e.createLogicalNot(e.createPropertyAccess(c,"done")),e.createAssignment(c,p),convertForOfStatementHead(r,e.createPropertyAccess(c,"value"),i)),r),256);return e.createTry(e.createBlock([e.restoreEnclosingLabel(_,n,g&&resetLabel)]),e.createCatchClause(e.createVariableDeclaration(l),e.setEmitFlags(e.createBlock([e.createExpressionStatement(e.createAssignment(u,e.createObjectLiteral([e.createPropertyAssignment("error",l)])))]),1)),e.createBlock([e.createTry(e.createBlock([e.setEmitFlags(e.createIf(e.createLogicalAnd(e.createLogicalAnd(c,e.createLogicalNot(e.createPropertyAccess(c,"done"))),e.createAssignment(f,e.createPropertyAccess(s,"return"))),e.createExpressionStatement(e.createFunctionCall(f,s,[]))),1)]),undefined,e.setEmitFlags(e.createBlock([e.setEmitFlags(e.createIf(u,e.createThrow(e.createPropertyAccess(u,"error"))),1)]),1))]))}function visitObjectLiteralExpression(r){var n=r.properties;var i=n.length;var o=i;var s=i;for(var c=0;c<i;c++){var u=n[c];if(u.transformFlags&4194304&&d&4&&c<s){s=c}if(u.name.kind===149){o=c;break}}if(o!==i){if(s<o){o=s}var l=e.createTempVariable(a);var f=[];var p=e.createAssignment(l,e.setEmitFlags(e.createObjectLiteral(e.visitNodes(n,visitor,e.isObjectLiteralElementLike,0,o),r.multiLine),65536));if(r.multiLine){e.startOnNewLine(p)}f.push(p);addObjectLiteralMembers(f,r,l,o);f.push(r.multiLine?e.startOnNewLine(e.getMutableClone(l)):l);return e.inlineExpressions(f)}return e.visitEachChild(r,visitor,t)}function shouldConvertPartOfIterationStatement(e){return(s.getNodeCheckFlags(e)&131072)!==0}function shouldConvertInitializerOfForStatement(t){return e.isForStatement(t)&&!!t.initializer&&shouldConvertPartOfIterationStatement(t.initializer)}function shouldConvertConditionOfForStatement(t){return e.isForStatement(t)&&!!t.condition&&shouldConvertPartOfIterationStatement(t.condition)}function shouldConvertIncrementorOfForStatement(t){return e.isForStatement(t)&&!!t.incrementor&&shouldConvertPartOfIterationStatement(t.incrementor)}function shouldConvertIterationStatement(e){return shouldConvertBodyOfIterationStatement(e)||shouldConvertInitializerOfForStatement(e)}function shouldConvertBodyOfIterationStatement(e){return(s.getNodeCheckFlags(e)&65536)!==0}function hoistVariableDeclarationDeclaredInConvertedLoop(t,r){if(!t.hoistedLocalVariables){t.hoistedLocalVariables=[]}visit(r.name);function visit(r){if(r.kind===72){t.hoistedLocalVariables.push(r)}else{for(var n=0,i=r.elements;n<i.length;n++){var a=i[n];if(!e.isOmittedExpression(a)){visit(a.name)}}}}}function convertIterationStatementBodyIfNecessary(r,n,i){if(!shouldConvertIterationStatement(r)){var a=void 0;if(g){a=g.allowedNonLabeledJumps;g.allowedNonLabeledJumps=2|4}var o=i?i(r,n,undefined):e.restoreEnclosingLabel(e.visitEachChild(r,visitor,t),n,g&&resetLabel);if(g){g.allowedNonLabeledJumps=a}return o}var s=createConvertedLoopState(r);var c=[];var u=g;g=s;var l=shouldConvertInitializerOfForStatement(r)?createFunctionForInitializerOfForStatement(r,s):undefined;var f=shouldConvertBodyOfIterationStatement(r)?createFunctionForBodyOfIterationStatement(r,s,u):undefined;g=u;if(l)c.push(l.functionDeclaration);if(f)c.push(f.functionDeclaration);addExtraDeclarationsForConvertedLoop(c,s,u);if(l){c.push(generateCallToConvertedLoopInitializer(l.functionName,l.containsYield))}var d;if(f){if(i){d=i(r,n,f.part)}else{var p=convertIterationStatementCore(r,l,e.createBlock(f.part,true));e.aggregateTransformFlags(p);d=e.restoreEnclosingLabel(p,n,g&&resetLabel)}}else{var _=convertIterationStatementCore(r,l,e.visitNode(r.statement,visitor,e.isStatement,e.liftToBlock));e.aggregateTransformFlags(_);d=e.restoreEnclosingLabel(_,n,g&&resetLabel)}c.push(d);return c}function convertIterationStatementCore(t,r,n){switch(t.kind){case 225:return convertForStatement(t,r,n);case 226:return convertForInStatement(t,n);case 227:return convertForOfStatement(t,n);case 223:return convertDoStatement(t,n);case 224:return convertWhileStatement(t,n);default:return e.Debug.failBadSyntaxKind(t,"IterationStatement expected")}}function convertForStatement(t,r,n){var i=t.condition&&shouldConvertPartOfIterationStatement(t.condition);var a=i||t.incrementor&&shouldConvertPartOfIterationStatement(t.incrementor);return e.updateFor(t,e.visitNode(r?r.part:t.initializer,visitor,e.isForInitializer),e.visitNode(i?undefined:t.condition,visitor,e.isExpression),e.visitNode(a?undefined:t.incrementor,visitor,e.isExpression),n)}function convertForOfStatement(t,r){return e.updateForOf(t,undefined,e.visitNode(t.initializer,visitor,e.isForInitializer),e.visitNode(t.expression,visitor,e.isExpression),r)}function convertForInStatement(t,r){return e.updateForIn(t,e.visitNode(t.initializer,visitor,e.isForInitializer),e.visitNode(t.expression,visitor,e.isExpression),r)}function convertDoStatement(t,r){return e.updateDo(t,r,e.visitNode(t.expression,visitor,e.isExpression))}function convertWhileStatement(t,r){return e.updateWhile(t,e.visitNode(t.expression,visitor,e.isExpression),r)}function createConvertedLoopState(t){var r;switch(t.kind){case 225:case 226:case 227:var n=t.initializer;if(n&&n.kind===238){r=n}break}var i=[];var a=[];if(r&&e.getCombinedNodeFlags(r)&3){var o=shouldConvertInitializerOfForStatement(t);for(var s=0,c=r.declarations;s<c.length;s++){var u=c[s];processLoopVariableDeclaration(t,u,i,a,o)}}var l={loopParameters:i,loopOutParameters:a};if(g){if(g.argumentsName){l.argumentsName=g.argumentsName}if(g.thisName){l.thisName=g.thisName}if(g.hoistedLocalVariables){l.hoistedLocalVariables=g.hoistedLocalVariables}}return l}function addExtraDeclarationsForConvertedLoop(t,r,n){var i;if(r.argumentsName){if(n){n.argumentsName=r.argumentsName}else{(i||(i=[])).push(e.createVariableDeclaration(r.argumentsName,undefined,e.createIdentifier("arguments")))}}if(r.thisName){if(n){n.thisName=r.thisName}else{(i||(i=[])).push(e.createVariableDeclaration(r.thisName,undefined,e.createIdentifier("this")))}}if(r.hoistedLocalVariables){if(n){n.hoistedLocalVariables=r.hoistedLocalVariables}else{if(!i){i=[]}for(var a=0,o=r.hoistedLocalVariables;a<o.length;a++){var s=o[a];i.push(e.createVariableDeclaration(s))}}}if(r.loopOutParameters.length){if(!i){i=[]}for(var c=0,u=r.loopOutParameters;c<u.length;c++){var l=u[c];i.push(e.createVariableDeclaration(l.outParamName))}}if(r.conditionVariable){if(!i){i=[]}i.push(e.createVariableDeclaration(r.conditionVariable,undefined,e.createFalse()))}if(i){t.push(e.createVariableStatement(undefined,e.createVariableDeclarationList(i)))}}function createOutVariable(t){return e.createVariableDeclaration(t.originalName,undefined,t.outParamName)}function createFunctionForInitializerOfForStatement(t,r){var n=e.createUniqueName("_loop_init");var i=(t.initializer.transformFlags&4194304)!==0;var a=0;if(r.containsLexicalThis)a|=8;if(i&&d&4)a|=262144;var o=[];o.push(e.createVariableStatement(undefined,t.initializer));copyOutParameters(r.loopOutParameters,2,1,o);var s=e.createVariableStatement(undefined,e.setEmitFlags(e.createVariableDeclarationList([e.createVariableDeclaration(n,undefined,e.setEmitFlags(e.createFunctionExpression(undefined,i?e.createToken(40):undefined,undefined,undefined,undefined,undefined,e.visitNode(e.createBlock(o,true),visitor,e.isBlock)),a))]),2097152));var c=e.createVariableDeclarationList(e.map(r.loopOutParameters,createOutVariable));return{functionName:n,containsYield:i,functionDeclaration:s,part:c}}function createFunctionForBodyOfIterationStatement(t,n,a){var o=e.createUniqueName("_loop");r();var s=e.visitNode(t.statement,visitor,e.isStatement,e.liftToBlock);var c=i();var u=[];if(shouldConvertConditionOfForStatement(t)||shouldConvertIncrementorOfForStatement(t)){n.conditionVariable=e.createUniqueName("inc");u.push(e.createIf(n.conditionVariable,e.createStatement(e.visitNode(t.incrementor,visitor,e.isExpression)),e.createStatement(e.createAssignment(n.conditionVariable,e.createTrue()))));if(shouldConvertConditionOfForStatement(t)){u.push(e.createIf(e.createPrefix(52,e.visitNode(t.condition,visitor,e.isExpression)),e.visitNode(e.createBreak(),visitor,e.isStatement)))}}if(e.isBlock(s)){e.addRange(u,s.statements)}else{u.push(s)}copyOutParameters(n.loopOutParameters,1,1,u);e.addStatementsAfterPrologue(u,c);var l=e.createBlock(u,true);if(e.isBlock(s))e.setOriginalNode(l,s);var f=(t.statement.transformFlags&4194304)!==0;var p=0;if(n.containsLexicalThis)p|=8;if(f&&(d&4)!==0)p|=262144;var g=e.createVariableStatement(undefined,e.setEmitFlags(e.createVariableDeclarationList([e.createVariableDeclaration(o,undefined,e.setEmitFlags(e.createFunctionExpression(undefined,f?e.createToken(40):undefined,undefined,undefined,n.loopParameters,undefined,l),p))]),2097152));var _=generateCallToConvertedLoop(o,n,a,f);return{functionName:o,containsYield:f,functionDeclaration:g,part:_}}function copyOutParameter(t,r){var n=r===0?t.outParamName:t.originalName;var i=r===0?t.originalName:t.outParamName;return e.createBinary(i,59,n)}function copyOutParameters(t,r,n,i){for(var a=0,o=t;a<o.length;a++){var s=o[a];if(s.flags&r){i.push(e.createExpressionStatement(copyOutParameter(s,n)))}}}function generateCallToConvertedLoopInitializer(t,r){var n=e.createCall(t,undefined,[]);var i=r?e.createYield(e.createToken(40),e.setEmitFlags(n,8388608)):n;return e.createStatement(i)}function generateCallToConvertedLoop(t,r,n,i){var a=[];var o=!(r.nonLocalJumps&~4)&&!r.labeledNonLocalBreaks&&!r.labeledNonLocalContinues;var s=e.createCall(t,undefined,e.map(r.loopParameters,function(e){return e.name}));var c=i?e.createYield(e.createToken(40),e.setEmitFlags(s,8388608)):s;if(o){a.push(e.createExpressionStatement(c));copyOutParameters(r.loopOutParameters,1,0,a)}else{var u=e.createUniqueName("state");var l=e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(u,undefined,c)]));a.push(l);copyOutParameters(r.loopOutParameters,1,0,a);if(r.nonLocalJumps&8){var f=void 0;if(n){n.nonLocalJumps|=8;f=e.createReturn(u)}else{f=e.createReturn(e.createPropertyAccess(u,"value"))}a.push(e.createIf(e.createBinary(e.createTypeOf(u),35,e.createLiteral("object")),f))}if(r.nonLocalJumps&2){a.push(e.createIf(e.createBinary(u,35,e.createLiteral("break")),e.createBreak()))}if(r.labeledNonLocalBreaks||r.labeledNonLocalContinues){var d=[];processLabeledJumps(r.labeledNonLocalBreaks,true,u,n,d);processLabeledJumps(r.labeledNonLocalContinues,false,u,n,d);a.push(e.createSwitch(u,e.createCaseBlock(d)))}}return a}function setLabeledJump(t,r,n,i){if(r){if(!t.labeledNonLocalBreaks){t.labeledNonLocalBreaks=e.createMap()}t.labeledNonLocalBreaks.set(n,i)}else{if(!t.labeledNonLocalContinues){t.labeledNonLocalContinues=e.createMap()}t.labeledNonLocalContinues.set(n,i)}}function processLabeledJumps(t,r,n,i,a){if(!t){return}t.forEach(function(t,o){var s=[];if(!i||i.labels&&i.labels.get(o)){var c=e.createIdentifier(o);s.push(r?e.createBreak(c):e.createContinue(c))}else{setLabeledJump(i,r,o,t);s.push(e.createReturn(n))}a.push(e.createCaseClause(e.createLiteral(t),s))})}function processLoopVariableDeclaration(t,r,n,i,a){var o=r.name;if(e.isBindingPattern(o)){for(var c=0,u=o.elements;c<u.length;c++){var l=u[c];if(!e.isOmittedExpression(l)){processLoopVariableDeclaration(t,l,n,i,a)}}}else{n.push(e.createParameter(undefined,undefined,undefined,o));var f=s.getNodeCheckFlags(r);if(f&4194304||a){var d=e.createUniqueName("out_"+e.idText(o));var p=0;if(f&4194304){p|=1}if(e.isForStatement(t)&&t.initializer&&s.isBindingCapturedByNode(t.initializer,r)){p|=2}i.push({flags:p,originalName:o,outParamName:d})}}}function addObjectLiteralMembers(t,r,n,i){var a=r.properties;var o=a.length;for(var s=i;s<o;s++){var c=a[s];switch(c.kind){case 158:case 159:var u=e.getAllAccessorDeclarations(r.properties,c);if(c===u.firstAccessor){t.push(transformAccessorsToExpression(n,u,r,!!r.multiLine))}break;case 156:t.push(transformObjectLiteralMethodDeclarationToExpression(c,n,r,r.multiLine));break;case 275:t.push(transformPropertyAssignmentToExpression(c,n,r.multiLine));break;case 276:t.push(transformShorthandPropertyAssignmentToExpression(c,n,r.multiLine));break;default:e.Debug.failBadSyntaxKind(r);break}}}function transformPropertyAssignmentToExpression(t,r,n){var i=e.createAssignment(e.createMemberAccessForPropertyName(r,e.visitNode(t.name,visitor,e.isPropertyName)),e.visitNode(t.initializer,visitor,e.isExpression));e.setTextRange(i,t);if(n){e.startOnNewLine(i)}return i}function transformShorthandPropertyAssignmentToExpression(t,r,n){var i=e.createAssignment(e.createMemberAccessForPropertyName(r,e.visitNode(t.name,visitor,e.isPropertyName)),e.getSynthesizedClone(t.name));e.setTextRange(i,t);if(n){e.startOnNewLine(i)}return i}function transformObjectLiteralMethodDeclarationToExpression(t,r,n,i){var a=enterSubtree(0,0);var o=e.createAssignment(e.createMemberAccessForPropertyName(r,e.visitNode(t.name,visitor,e.isPropertyName)),transformFunctionLikeToExpression(t,t,undefined,n));e.setTextRange(o,t);if(i){e.startOnNewLine(o)}exitSubtree(a,49152,d&49152?16384:0);return o}function visitCatchClause(r){var n=enterSubtree(4032,0);var i;e.Debug.assert(!!r.variableDeclaration,"Catch clause variable should always be present when downleveling ES2015.");if(e.isBindingPattern(r.variableDeclaration.name)){var a=e.createTempVariable(undefined);var o=e.createVariableDeclaration(a);e.setTextRange(o,r.variableDeclaration);var s=e.flattenDestructuringBinding(r.variableDeclaration,visitor,t,0,a);var c=e.createVariableDeclarationList(s);e.setTextRange(c,r.variableDeclaration);var u=e.createVariableStatement(undefined,c);i=e.updateCatchClause(r,o,addStatementToStartOfBlock(r.block,u))}else{i=e.visitEachChild(r,visitor,t)}exitSubtree(n,0,0);return i}function addStatementToStartOfBlock(t,r){var n=e.visitNodes(t.statements,visitor,e.isStatement);return e.updateBlock(t,[r].concat(n))}function visitMethodDeclaration(t){e.Debug.assert(!e.isComputedPropertyName(t.name));var r=transformFunctionLikeToExpression(t,e.moveRangePos(t,-1),undefined,undefined);e.setEmitFlags(r,512|e.getEmitFlags(r));return e.setTextRange(e.createPropertyAssignment(t.name,r),t)}function visitAccessorDeclaration(r){e.Debug.assert(!e.isComputedPropertyName(r.name));var n=g;g=undefined;var i=enterSubtree(16286,65);var a;var o=e.visitParameterList(r.parameters,visitor,t);var s=r.transformFlags&(16384|128)?transformFunctionBody(r):visitFunctionBodyDownLevel(r);if(r.kind===158){a=e.updateGetAccessor(r,r.decorators,r.modifiers,r.name,o,r.type,s)}else{a=e.updateSetAccessor(r,r.decorators,r.modifiers,r.name,o,s)}exitSubtree(i,49152,0);g=n;return a}function visitShorthandPropertyAssignment(t){return e.setTextRange(e.createPropertyAssignment(t.name,e.getSynthesizedClone(t.name)),t)}function visitComputedPropertyName(r){var n=enterSubtree(0,8192);var i=e.visitEachChild(r,visitor,t);exitSubtree(n,49152,d&49152?32768:0);return i}function visitYieldExpression(r){return e.visitEachChild(r,visitor,t)}function visitArrayLiteralExpression(r){if(r.transformFlags&64){return transformAndSpreadElements(r.elements,true,!!r.multiLine,!!r.elements.hasTrailingComma)}return e.visitEachChild(r,visitor,t)}function visitCallExpression(t){if(e.getEmitFlags(t)&33554432){return visitTypeScriptClassWrapper(t)}if(t.transformFlags&64){return visitCallExpressionWithPotentialCapturedThisAssignment(t,true)}return e.updateCall(t,e.visitNode(t.expression,callExpressionVisitor,e.isExpression),undefined,e.visitNodes(t.arguments,visitor,e.isExpression))}function visitTypeScriptClassWrapper(t){var r=e.cast(e.cast(e.skipOuterExpressions(t.expression),e.isArrowFunction).body,e.isBlock);var n=function(t){return e.isVariableStatement(t)&&!!e.first(t.declarationList.declarations).initializer};var i=e.visitNodes(r.statements,visitor,e.isStatement);var a=e.filter(i,n);var o=e.filter(i,function(e){return!n(e)});var s=e.cast(e.first(a),e.isVariableStatement);var c=s.declarationList.declarations[0];var u=e.skipOuterExpressions(c.initializer);var l=e.tryCast(u,e.isAssignmentExpression);var f=e.cast(l?e.skipOuterExpressions(l.right):u,e.isCallExpression);var d=e.cast(e.skipOuterExpressions(f.expression),e.isFunctionExpression);var p=d.body.statements;var g=0;var _=-1;var m=[];if(l){var y=e.tryCast(p[g],e.isExpressionStatement);if(y){m.push(y);g++}m.push(p[g]);g++;m.push(e.createExpressionStatement(e.createAssignment(l.left,e.cast(c.name,e.isIdentifier))))}while(!e.isReturnStatement(e.elementAt(p,_))){_--}e.addRange(m,p,g,_);if(_<-1){e.addRange(m,p,_+1)}e.addRange(m,o);e.addRange(m,a,1);return e.recreateOuterExpressions(t.expression,e.recreateOuterExpressions(c.initializer,e.recreateOuterExpressions(l&&l.right,e.updateCall(f,e.recreateOuterExpressions(f.expression,e.updateFunctionExpression(d,undefined,undefined,undefined,undefined,d.parameters,undefined,e.updateBlock(d.body,m))),undefined,f.arguments))))}function visitImmediateSuperCallInBody(e){return visitCallExpressionWithPotentialCapturedThisAssignment(e,false)}function visitCallExpressionWithPotentialCapturedThisAssignment(r,n){if(r.transformFlags&131072||r.expression.kind===98||e.isSuperProperty(e.skipOuterExpressions(r.expression))){var i=e.createCallBinding(r.expression,a),o=i.target,s=i.thisArg;if(r.expression.kind===98){e.setEmitFlags(s,4)}var c=void 0;if(r.transformFlags&131072){c=e.createFunctionApply(e.visitNode(o,callExpressionVisitor,e.isExpression),e.visitNode(s,visitor,e.isExpression),transformAndSpreadElements(r.arguments,false,false,false))}else{c=e.createFunctionCall(e.visitNode(o,callExpressionVisitor,e.isExpression),e.visitNode(s,visitor,e.isExpression),e.visitNodes(r.arguments,visitor,e.isExpression),r)}if(r.expression.kind===98){var u=e.createThis();e.setEmitFlags(u,4);var l=e.createLogicalOr(c,u);c=n?e.createAssignment(e.createFileLevelUniqueName("_this"),l):l}return e.setOriginalNode(c,r)}return e.visitEachChild(r,visitor,t)}function visitNewExpression(r){if(r.transformFlags&131072){var n=e.createCallBinding(e.createPropertyAccess(r.expression,"bind"),a),i=n.target,o=n.thisArg;return e.createNew(e.createFunctionApply(e.visitNode(i,visitor,e.isExpression),o,transformAndSpreadElements(e.createNodeArray([e.createVoidZero()].concat(r.arguments)),false,false,false)),undefined,[])}return e.visitEachChild(r,visitor,t)}function transformAndSpreadElements(r,n,i,a){var s=r.length;var c=e.flatten(e.spanMap(r,partitionSpread,function(e,t,r,n){return t(e,i,a&&n===s)}));if(o.downlevelIteration){if(c.length===1){var u=c[0];if(e.isCallExpression(u)&&e.isIdentifier(u.expression)&&e.getEmitFlags(u.expression)&4096&&u.expression.escapedText==="___spread"){return c[0]}}return e.createSpreadHelper(t,c)}else{if(c.length===1){var l=r[0];return n&&e.isSpreadElement(l)&&l.expression.kind!==187?e.createArraySlice(c[0]):c[0]}return e.createArrayConcat(c.shift(),c)}}function partitionSpread(t){return e.isSpreadElement(t)?visitSpanOfSpreads:visitSpanOfNonSpreads}function visitSpanOfSpreads(t){return e.map(t,visitExpressionOfSpread)}function visitSpanOfNonSpreads(t,r,n){return e.createArrayLiteral(e.visitNodes(e.createNodeArray(t,n),visitor,e.isExpression),r)}function visitSpreadElement(t){return e.visitNode(t.expression,visitor,e.isExpression)}function visitExpressionOfSpread(t){return e.visitNode(t.expression,visitor,e.isExpression)}function visitTemplateLiteral(t){return e.setTextRange(e.createLiteral(t.text),t)}function visitStringLiteral(t){if(t.hasExtendedUnicodeEscape){return e.setTextRange(e.createLiteral(t.text),t)}return t}function visitNumericLiteral(t){if(t.numericLiteralFlags&384){return e.setTextRange(e.createNumericLiteral(t.text),t)}return t}function visitTaggedTemplateExpression(r){var n=e.visitNode(r.tag,visitor,e.isExpression);var i=[undefined];var a=[];var o=[];var s=r.template;if(e.isNoSubstitutionTemplateLiteral(s)){a.push(e.createLiteral(s.text));o.push(getRawLiteral(s))}else{a.push(e.createLiteral(s.head.text));o.push(getRawLiteral(s.head));for(var c=0,u=s.templateSpans;c<u.length;c++){var f=u[c];a.push(e.createLiteral(f.literal.text));o.push(getRawLiteral(f.literal));i.push(e.visitNode(f.expression,visitor,e.isExpression))}}var d=createTemplateObjectHelper(t,e.createArrayLiteral(a),e.createArrayLiteral(o));if(e.isExternalModule(l)){var p=e.createUniqueName("templateObject");recordTaggedTemplateString(p);i[0]=e.createLogicalOr(p,e.createAssignment(p,d))}else{i[0]=d}return e.createCall(n,undefined,i)}function getRawLiteral(t){var r=e.getSourceTextOfNodeFromSourceFile(l,t);var n=t.kind===14||t.kind===17;r=r.substring(1,r.length-(n?1:2));r=r.replace(/\r\n?/g,"\n");return e.setTextRange(e.createLiteral(r),t)}function visitTemplateExpression(t){var r=[];addTemplateHead(r,t);addTemplateSpans(r,t);var n=e.reduceLeft(r,e.createAdd);if(e.nodeIsSynthesized(n)){n.pos=t.pos;n.end=t.end}return n}function shouldAddTemplateHead(t){e.Debug.assert(t.templateSpans.length!==0);return t.head.text.length!==0||t.templateSpans[0].literal.text.length===0}function addTemplateHead(t,r){if(!shouldAddTemplateHead(r)){return}t.push(e.createLiteral(r.head.text))}function addTemplateSpans(t,r){for(var n=0,i=r.templateSpans;n<i.length;n++){var a=i[n];t.push(e.visitNode(a.expression,visitor,e.isExpression));if(a.literal.text.length!==0){t.push(e.createLiteral(a.literal.text))}}}function visitSuperKeyword(t){return d&8&&!t?e.createPropertyAccess(e.createFileLevelUniqueName("_super"),"prototype"):e.createFileLevelUniqueName("_super")}function visitMetaProperty(t){if(t.keywordToken===95&&t.name.escapedText==="target"){if(d&8192){d|=32768}else{d|=16384}return e.createFileLevelUniqueName("_newTarget")}return t}function onEmitNode(t,r,n){if(_&1&&e.isFunctionLike(r)){var i=enterSubtree(16286,e.getEmitFlags(r)&8?65|16:65);u(t,r,n);exitSubtree(i,0,0);return}u(t,r,n)}function enableSubstitutionsForBlockScopedBindings(){if((_&2)===0){_|=2;t.enableSubstitution(72)}}function enableSubstitutionsForCapturedThis(){if((_&1)===0){_|=1;t.enableSubstitution(100);t.enableEmitNotification(157);t.enableEmitNotification(156);t.enableEmitNotification(158);t.enableEmitNotification(159);t.enableEmitNotification(197);t.enableEmitNotification(196);t.enableEmitNotification(239)}}function onSubstituteNode(t,r){r=c(t,r);if(t===1){return substituteExpression(r)}if(e.isIdentifier(r)){return substituteIdentifier(r)}return r}function substituteIdentifier(t){if(_&2&&!e.isInternalName(t)){var r=e.getParseTreeNode(t,e.isIdentifier);if(r&&isNameOfDeclarationWithCollidingName(r)){return e.setTextRange(e.getGeneratedNameForNode(r),t)}}return t}function isNameOfDeclarationWithCollidingName(e){switch(e.parent.kind){case 186:case 240:case 243:case 237:return e.parent.name===e&&s.isDeclarationWithCollidingName(e.parent)}return false}function substituteExpression(e){switch(e.kind){case 72:return substituteExpressionIdentifier(e);case 100:return substituteThisKeyword(e)}return e}function substituteExpressionIdentifier(t){if(_&2&&!e.isInternalName(t)){var r=s.getReferencedDeclarationWithCollidingName(t);if(r&&!(e.isClassLike(r)&&isPartOfClassBody(r,t))){return e.setTextRange(e.getGeneratedNameForNode(e.getNameOfDeclaration(r)),t)}}return t}function isPartOfClassBody(t,r){var n=e.getParseTreeNode(r);if(!n||n===t||n.end<=t.pos||n.pos>=t.end){return false}var i=e.getEnclosingBlockScopeContainer(t);while(n){if(n===i||n===t){return false}if(e.isClassElement(n)&&n.parent===t){return true}n=n.parent}return false}function substituteThisKeyword(t){if(_&1&&d&16){return e.setTextRange(e.createFileLevelUniqueName("_this"),t)}return t}function getClassMemberPrefix(t,r){return e.hasModifier(r,32)?e.getInternalName(t):e.createPropertyAccess(e.getInternalName(t),"prototype")}function hasSynthesizedDefaultSuperCall(t,r){if(!t||!r){return false}if(e.some(t.parameters)){return false}var n=e.firstOrUndefined(t.body.statements);if(!n||!e.nodeIsSynthesized(n)||n.kind!==221){return false}var i=n.expression;if(!e.nodeIsSynthesized(i)||i.kind!==191){return false}var a=i.expression;if(!e.nodeIsSynthesized(a)||a.kind!==98){return false}var o=e.singleOrUndefined(i.arguments);if(!o||!e.nodeIsSynthesized(o)||o.kind!==208){return false}var s=o.expression;return e.isIdentifier(s)&&s.escapedText==="arguments"}}e.transformES2015=transformES2015;function createExtendsHelper(t,r){t.requestEmitHelper(s);return e.createCall(e.getHelperName("__extends"),undefined,[r,e.createFileLevelUniqueName("_super")])}function createTemplateObjectHelper(t,r,n){t.requestEmitHelper(c);return e.createCall(e.getHelperName("__makeTemplateObject"),undefined,[r,n])}var s={name:"typescript:extends",scoped:false,priority:0,text:"\n var __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n })();"};var c={name:"typescript:makeTemplateObject",scoped:false,priority:0,text:'\n var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n };'}})(s||(s={}));var s;(function(e){function transformES5(t){var r=t.getCompilerOptions();var n;var i;if(r.jsx===1||r.jsx===3){n=t.onEmitNode;t.onEmitNode=onEmitNode;t.enableEmitNotification(262);t.enableEmitNotification(263);t.enableEmitNotification(261);i=[]}var a=t.onSubstituteNode;t.onSubstituteNode=onSubstituteNode;t.enableSubstitution(189);t.enableSubstitution(275);return e.chainBundle(transformSourceFile);function transformSourceFile(e){return e}function onEmitNode(t,r,a){switch(r.kind){case 262:case 263:case 261:var o=r.tagName;i[e.getOriginalNodeId(o)]=true;break}n(t,r,a)}function onSubstituteNode(t,r){if(r.id&&i&&i[r.id]){return a(t,r)}r=a(t,r);if(e.isPropertyAccessExpression(r)){return substitutePropertyAccessExpression(r)}else if(e.isPropertyAssignment(r)){return substitutePropertyAssignment(r)}return r}function substitutePropertyAccessExpression(t){var r=trySubstituteReservedName(t.name);if(r){return e.setTextRange(e.createElementAccess(t.expression,r),t)}return t}function substitutePropertyAssignment(t){var r=e.isIdentifier(t.name)&&trySubstituteReservedName(t.name);if(r){return e.updatePropertyAssignment(t,r,t.initializer)}return t}function trySubstituteReservedName(t){var r=t.originalKeywordKind||(e.nodeIsSynthesized(t)?e.stringToToken(e.idText(t)):undefined);if(r!==undefined&&r>=73&&r<=108){return e.setTextRange(e.createLiteral(t),t)}return undefined}}e.transformES5=transformES5})(s||(s={}));var s;(function(e){var t;(function(e){e[e["Nop"]=0]="Nop";e[e["Statement"]=1]="Statement";e[e["Assign"]=2]="Assign";e[e["Break"]=3]="Break";e[e["BreakWhenTrue"]=4]="BreakWhenTrue";e[e["BreakWhenFalse"]=5]="BreakWhenFalse";e[e["Yield"]=6]="Yield";e[e["YieldStar"]=7]="YieldStar";e[e["Return"]=8]="Return";e[e["Throw"]=9]="Throw";e[e["Endfinally"]=10]="Endfinally"})(t||(t={}));var r;(function(e){e[e["Open"]=0]="Open";e[e["Close"]=1]="Close"})(r||(r={}));var n;(function(e){e[e["Exception"]=0]="Exception";e[e["With"]=1]="With";e[e["Switch"]=2]="Switch";e[e["Loop"]=3]="Loop";e[e["Labeled"]=4]="Labeled"})(n||(n={}));var i;(function(e){e[e["Try"]=0]="Try";e[e["Catch"]=1]="Catch";e[e["Finally"]=2]="Finally";e[e["Done"]=3]="Done"})(i||(i={}));var a;(function(e){e[e["Next"]=0]="Next";e[e["Throw"]=1]="Throw";e[e["Return"]=2]="Return";e[e["Break"]=3]="Break";e[e["Yield"]=4]="Yield";e[e["YieldStar"]=5]="YieldStar";e[e["Catch"]=6]="Catch";e[e["Endfinally"]=7]="Endfinally"})(a||(a={}));function getInstructionName(e){switch(e){case 2:return"return";case 3:return"break";case 4:return"yield";case 5:return"yield*";case 7:return"endfinally";default:return undefined}}function transformGenerators(t){var r=t.resumeLexicalEnvironment,n=t.endLexicalEnvironment,i=t.hoistFunctionDeclaration,a=t.hoistVariableDeclaration;var o=t.getCompilerOptions();var s=e.getEmitScriptTarget(o);var c=t.getEmitResolver();var u=t.onSubstituteNode;t.onSubstituteNode=onSubstituteNode;var l;var f;var d;var p;var g;var _;var m;var y;var h;var v;var T=1;var S;var b;var x;var C;var E=0;var D=0;var k;var N;var A;var O;var F;var P;var I;var w;return e.chainBundle(transformSourceFile);function transformSourceFile(r){if(r.isDeclarationFile||(r.transformFlags&512)===0){return r}var n=e.visitEachChild(r,visitor,t);e.addEmitHelpers(n,t.readEmitHelpers());return n}function visitor(r){var n=r.transformFlags;if(p){return visitJavaScriptInStatementContainingYield(r)}else if(d){return visitJavaScriptInGeneratorFunctionBody(r)}else if(n&256){return visitGenerator(r)}else if(n&512){return e.visitEachChild(r,visitor,t)}else{return r}}function visitJavaScriptInStatementContainingYield(e){switch(e.kind){case 223:return visitDoStatement(e);case 224:return visitWhileStatement(e);case 232:return visitSwitchStatement(e);case 233:return visitLabeledStatement(e);default:return visitJavaScriptInGeneratorFunctionBody(e)}}function visitJavaScriptInGeneratorFunctionBody(r){switch(r.kind){case 239:return visitFunctionDeclaration(r);case 196:return visitFunctionExpression(r);case 158:case 159:return visitAccessorDeclaration(r);case 219:return visitVariableStatement(r);case 225:return visitForStatement(r);case 226:return visitForInStatement(r);case 229:return visitBreakStatement(r);case 228:return visitContinueStatement(r);case 230:return visitReturnStatement(r);default:if(r.transformFlags&4194304){return visitJavaScriptContainingYield(r)}else if(r.transformFlags&(512|8388608)){return e.visitEachChild(r,visitor,t)}else{return r}}}function visitJavaScriptContainingYield(r){switch(r.kind){case 204:return visitBinaryExpression(r);case 205:return visitConditionalExpression(r);case 207:return visitYieldExpression(r);case 187:return visitArrayLiteralExpression(r);case 188:return visitObjectLiteralExpression(r);case 190:return visitElementAccessExpression(r);case 191:return visitCallExpression(r);case 192:return visitNewExpression(r);default:return e.visitEachChild(r,visitor,t)}}function visitGenerator(t){switch(t.kind){case 239:return visitFunctionDeclaration(t);case 196:return visitFunctionExpression(t);default:return e.Debug.failBadSyntaxKind(t)}}function visitFunctionDeclaration(r){if(r.asteriskToken){r=e.setOriginalNode(e.setTextRange(e.createFunctionDeclaration(undefined,r.modifiers,undefined,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,transformGeneratorFunctionBody(r.body)),r),r)}else{var n=d;var a=p;d=false;p=false;r=e.visitEachChild(r,visitor,t);d=n;p=a}if(d){i(r);return undefined}else{return r}}function visitFunctionExpression(r){if(r.asteriskToken){r=e.setOriginalNode(e.setTextRange(e.createFunctionExpression(undefined,undefined,r.name,undefined,e.visitParameterList(r.parameters,visitor,t),undefined,transformGeneratorFunctionBody(r.body)),r),r)}else{var n=d;var i=p;d=false;p=false;r=e.visitEachChild(r,visitor,t);d=n;p=i}return r}function visitAccessorDeclaration(r){var n=d;var i=p;d=false;p=false;r=e.visitEachChild(r,visitor,t);d=n;p=i;return r}function transformGeneratorFunctionBody(t){var i=[];var a=d;var o=p;var s=g;var c=_;var u=m;var l=y;var f=h;var E=v;var D=T;var k=S;var N=b;var A=x;var O=C;d=true;p=false;g=undefined;_=undefined;m=undefined;y=undefined;h=undefined;v=undefined;T=1;S=undefined;b=undefined;x=undefined;C=e.createTempVariable(undefined);r();var F=e.addPrologue(i,t.statements,false,visitor);transformAndEmitStatements(t.statements,F);var P=build();e.addStatementsAfterPrologue(i,n());i.push(e.createReturn(P));d=a;p=o;g=s;_=c;m=u;y=l;h=f;v=E;T=D;S=k;b=N;x=A;C=O;return e.setTextRange(e.createBlock(i,t.multiLine),t)}function visitVariableStatement(t){if(t.transformFlags&4194304){transformAndEmitVariableDeclarationList(t.declarationList);return undefined}else{if(e.getEmitFlags(t)&1048576){return t}for(var r=0,n=t.declarationList.declarations;r<n.length;r++){var i=n[r];a(i.name)}var o=e.getInitializedVariables(t.declarationList);if(o.length===0){return undefined}return e.setSourceMapRange(e.createExpressionStatement(e.inlineExpressions(e.map(o,transformInitializedVariable))),t)}}function visitBinaryExpression(t){var r=e.getExpressionAssociativity(t);switch(r){case 0:return visitLeftAssociativeBinaryExpression(t);case 1:return visitRightAssociativeBinaryExpression(t);default:return e.Debug.assertNever(r)}}function isCompoundAssignment(e){return e>=60&&e<=71}function getOperatorForCompoundAssignment(e){switch(e){case 60:return 38;case 61:return 39;case 62:return 40;case 63:return 41;case 64:return 42;case 65:return 43;case 66:return 46;case 67:return 47;case 68:return 48;case 69:return 49;case 70:return 50;case 71:return 51}}function visitRightAssociativeBinaryExpression(r){var n=r.left,i=r.right;if(containsYield(i)){var a=void 0;switch(n.kind){case 189:a=e.updatePropertyAccess(n,cacheExpression(e.visitNode(n.expression,visitor,e.isLeftHandSideExpression)),n.name);break;case 190:a=e.updateElementAccess(n,cacheExpression(e.visitNode(n.expression,visitor,e.isLeftHandSideExpression)),cacheExpression(e.visitNode(n.argumentExpression,visitor,e.isExpression)));break;default:a=e.visitNode(n,visitor,e.isExpression);break}var o=r.operatorToken.kind;if(isCompoundAssignment(o)){return e.setTextRange(e.createAssignment(a,e.setTextRange(e.createBinary(cacheExpression(a),getOperatorForCompoundAssignment(o),e.visitNode(i,visitor,e.isExpression)),r)),r)}else{return e.updateBinary(r,a,e.visitNode(i,visitor,e.isExpression))}}return e.visitEachChild(r,visitor,t)}function visitLeftAssociativeBinaryExpression(r){if(containsYield(r.right)){if(e.isLogicalOperator(r.operatorToken.kind)){return visitLogicalBinaryExpression(r)}else if(r.operatorToken.kind===27){return visitCommaExpression(r)}var n=e.getMutableClone(r);n.left=cacheExpression(e.visitNode(r.left,visitor,e.isExpression));n.right=e.visitNode(r.right,visitor,e.isExpression);return n}return e.visitEachChild(r,visitor,t)}function visitLogicalBinaryExpression(t){var r=defineLabel();var n=declareLocal();emitAssignment(n,e.visitNode(t.left,visitor,e.isExpression),t.left);if(t.operatorToken.kind===54){emitBreakWhenFalse(r,n,t.left)}else{emitBreakWhenTrue(r,n,t.left)}emitAssignment(n,e.visitNode(t.right,visitor,e.isExpression),t.right);markLabel(r);return n}function visitCommaExpression(t){var r=[];visit(t.left);visit(t.right);return e.inlineExpressions(r);function visit(t){if(e.isBinaryExpression(t)&&t.operatorToken.kind===27){visit(t.left);visit(t.right)}else{if(containsYield(t)&&r.length>0){emitWorker(1,[e.createExpressionStatement(e.inlineExpressions(r))]);r=[]}r.push(e.visitNode(t,visitor,e.isExpression))}}}function visitConditionalExpression(r){if(containsYield(r.whenTrue)||containsYield(r.whenFalse)){var n=defineLabel();var i=defineLabel();var a=declareLocal();emitBreakWhenFalse(n,e.visitNode(r.condition,visitor,e.isExpression),r.condition);emitAssignment(a,e.visitNode(r.whenTrue,visitor,e.isExpression),r.whenTrue);emitBreak(i);markLabel(n);emitAssignment(a,e.visitNode(r.whenFalse,visitor,e.isExpression),r.whenFalse);markLabel(i);return a}return e.visitEachChild(r,visitor,t)}function visitYieldExpression(r){var n=defineLabel();var i=e.visitNode(r.expression,visitor,e.isExpression);if(r.asteriskToken){var a=(e.getEmitFlags(r.expression)&8388608)===0?e.createValuesHelper(t,i,r):i;emitYieldStar(a,r)}else{emitYield(i,r)}markLabel(n);return createGeneratorResume(r)}function visitArrayLiteralExpression(e){return visitElements(e.elements,undefined,undefined,e.multiLine)}function visitElements(t,r,n,i){var a=countInitialNodesWithoutYield(t);var o;if(a>0){o=declareLocal();var s=e.visitNodes(t,visitor,e.isExpression,0,a);emitAssignment(o,e.createArrayLiteral(r?[r].concat(s):s));r=undefined}var c=e.reduceLeft(t,reduceElement,[],a);return o?e.createArrayConcat(o,[e.createArrayLiteral(c,i)]):e.setTextRange(e.createArrayLiteral(r?[r].concat(c):c,i),n);function reduceElement(t,n){if(containsYield(n)&&t.length>0){var a=o!==undefined;if(!o){o=declareLocal()}emitAssignment(o,a?e.createArrayConcat(o,[e.createArrayLiteral(t,i)]):e.createArrayLiteral(r?[r].concat(t):t,i));r=undefined;t=[]}t.push(e.visitNode(n,visitor,e.isExpression));return t}}function visitObjectLiteralExpression(t){var r=t.properties;var n=t.multiLine;var i=countInitialNodesWithoutYield(r);var a=declareLocal();emitAssignment(a,e.createObjectLiteral(e.visitNodes(r,visitor,e.isObjectLiteralElementLike,0,i),n));var o=e.reduceLeft(r,reduceProperty,[],i);o.push(n?e.startOnNewLine(e.getMutableClone(a)):a);return e.inlineExpressions(o);function reduceProperty(r,i){if(containsYield(i)&&r.length>0){emitStatement(e.createExpressionStatement(e.inlineExpressions(r)));r=[]}var o=e.createExpressionForObjectLiteralElementLike(t,i,a);var s=e.visitNode(o,visitor,e.isExpression);if(s){if(n){e.startOnNewLine(s)}r.push(s)}return r}}function visitElementAccessExpression(r){if(containsYield(r.argumentExpression)){var n=e.getMutableClone(r);n.expression=cacheExpression(e.visitNode(r.expression,visitor,e.isLeftHandSideExpression));n.argumentExpression=e.visitNode(r.argumentExpression,visitor,e.isExpression);return n}return e.visitEachChild(r,visitor,t)}function visitCallExpression(r){if(!e.isImportCall(r)&&e.forEach(r.arguments,containsYield)){var n=e.createCallBinding(r.expression,a,s,true),i=n.target,o=n.thisArg;return e.setOriginalNode(e.createFunctionApply(cacheExpression(e.visitNode(i,visitor,e.isLeftHandSideExpression)),o,visitElements(r.arguments),r),r)}return e.visitEachChild(r,visitor,t)}function visitNewExpression(r){if(e.forEach(r.arguments,containsYield)){var n=e.createCallBinding(e.createPropertyAccess(r.expression,"bind"),a),i=n.target,o=n.thisArg;return e.setOriginalNode(e.setTextRange(e.createNew(e.createFunctionApply(cacheExpression(e.visitNode(i,visitor,e.isExpression)),o,visitElements(r.arguments,e.createVoidZero())),undefined,[]),r),r)}return e.visitEachChild(r,visitor,t)}function transformAndEmitStatements(e,t){if(t===void 0){t=0}var r=e.length;for(var n=t;n<r;n++){transformAndEmitStatement(e[n])}}function transformAndEmitEmbeddedStatement(t){if(e.isBlock(t)){transformAndEmitStatements(t.statements)}else{transformAndEmitStatement(t)}}function transformAndEmitStatement(e){var t=p;if(!p){p=containsYield(e)}transformAndEmitStatementWorker(e);p=t}function transformAndEmitStatementWorker(t){switch(t.kind){case 218:return transformAndEmitBlock(t);case 221:return transformAndEmitExpressionStatement(t);case 222:return transformAndEmitIfStatement(t);case 223:return transformAndEmitDoStatement(t);case 224:return transformAndEmitWhileStatement(t);case 225:return transformAndEmitForStatement(t);case 226:return transformAndEmitForInStatement(t);case 228:return transformAndEmitContinueStatement(t);case 229:return transformAndEmitBreakStatement(t);case 230:return transformAndEmitReturnStatement(t);case 231:return transformAndEmitWithStatement(t);case 232:return transformAndEmitSwitchStatement(t);case 233:return transformAndEmitLabeledStatement(t);case 234:return transformAndEmitThrowStatement(t);case 235:return transformAndEmitTryStatement(t);default:return emitStatement(e.visitNode(t,visitor,e.isStatement))}}function transformAndEmitBlock(t){if(containsYield(t)){transformAndEmitStatements(t.statements)}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function transformAndEmitExpressionStatement(t){emitStatement(e.visitNode(t,visitor,e.isStatement))}function transformAndEmitVariableDeclarationList(t){for(var r=0,n=t.declarations;r<n.length;r++){var i=n[r];var o=e.getSynthesizedClone(i.name);e.setCommentRange(o,i.name);a(o)}var s=e.getInitializedVariables(t);var c=s.length;var u=0;var l=[];while(u<c){for(var f=u;f<c;f++){var i=s[f];if(containsYield(i.initializer)&&l.length>0){break}l.push(transformInitializedVariable(i))}if(l.length){emitStatement(e.createExpressionStatement(e.inlineExpressions(l)));u+=l.length;l=[]}}return undefined}function transformInitializedVariable(t){return e.setSourceMapRange(e.createAssignment(e.setSourceMapRange(e.getSynthesizedClone(t.name),t.name),e.visitNode(t.initializer,visitor,e.isExpression)),t)}function transformAndEmitIfStatement(t){if(containsYield(t)){if(containsYield(t.thenStatement)||containsYield(t.elseStatement)){var r=defineLabel();var n=t.elseStatement?defineLabel():undefined;emitBreakWhenFalse(t.elseStatement?n:r,e.visitNode(t.expression,visitor,e.isExpression),t.expression);transformAndEmitEmbeddedStatement(t.thenStatement);if(t.elseStatement){emitBreak(r);markLabel(n);transformAndEmitEmbeddedStatement(t.elseStatement)}markLabel(r)}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function transformAndEmitDoStatement(t){if(containsYield(t)){var r=defineLabel();var n=defineLabel();beginLoopBlock(r);markLabel(n);transformAndEmitEmbeddedStatement(t.statement);markLabel(r);emitBreakWhenTrue(n,e.visitNode(t.expression,visitor,e.isExpression));endLoopBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitDoStatement(r){if(p){beginScriptLoopBlock();r=e.visitEachChild(r,visitor,t);endLoopBlock();return r}else{return e.visitEachChild(r,visitor,t)}}function transformAndEmitWhileStatement(t){if(containsYield(t)){var r=defineLabel();var n=beginLoopBlock(r);markLabel(r);emitBreakWhenFalse(n,e.visitNode(t.expression,visitor,e.isExpression));transformAndEmitEmbeddedStatement(t.statement);emitBreak(r);endLoopBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitWhileStatement(r){if(p){beginScriptLoopBlock();r=e.visitEachChild(r,visitor,t);endLoopBlock();return r}else{return e.visitEachChild(r,visitor,t)}}function transformAndEmitForStatement(t){if(containsYield(t)){var r=defineLabel();var n=defineLabel();var i=beginLoopBlock(n);if(t.initializer){var a=t.initializer;if(e.isVariableDeclarationList(a)){transformAndEmitVariableDeclarationList(a)}else{emitStatement(e.setTextRange(e.createExpressionStatement(e.visitNode(a,visitor,e.isExpression)),a))}}markLabel(r);if(t.condition){emitBreakWhenFalse(i,e.visitNode(t.condition,visitor,e.isExpression))}transformAndEmitEmbeddedStatement(t.statement);markLabel(n);if(t.incrementor){emitStatement(e.setTextRange(e.createExpressionStatement(e.visitNode(t.incrementor,visitor,e.isExpression)),t.incrementor))}emitBreak(r);endLoopBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitForStatement(r){if(p){beginScriptLoopBlock()}var n=r.initializer;if(n&&e.isVariableDeclarationList(n)){for(var i=0,o=n.declarations;i<o.length;i++){var s=o[i];a(s.name)}var c=e.getInitializedVariables(n);r=e.updateFor(r,c.length>0?e.inlineExpressions(e.map(c,transformInitializedVariable)):undefined,e.visitNode(r.condition,visitor,e.isExpression),e.visitNode(r.incrementor,visitor,e.isExpression),e.visitNode(r.statement,visitor,e.isStatement,e.liftToBlock))}else{r=e.visitEachChild(r,visitor,t)}if(p){endLoopBlock()}return r}function transformAndEmitForInStatement(t){if(containsYield(t)){var r=declareLocal();var n=declareLocal();var i=e.createLoopVariable();var o=t.initializer;a(i);emitAssignment(r,e.createArrayLiteral());emitStatement(e.createForIn(n,e.visitNode(t.expression,visitor,e.isExpression),e.createExpressionStatement(e.createCall(e.createPropertyAccess(r,"push"),undefined,[n]))));emitAssignment(i,e.createLiteral(0));var s=defineLabel();var c=defineLabel();var u=beginLoopBlock(c);markLabel(s);emitBreakWhenFalse(u,e.createLessThan(i,e.createPropertyAccess(r,"length")));var l=void 0;if(e.isVariableDeclarationList(o)){for(var f=0,d=o.declarations;f<d.length;f++){var p=d[f];a(p.name)}l=e.getSynthesizedClone(o.declarations[0].name)}else{l=e.visitNode(o,visitor,e.isExpression);e.Debug.assert(e.isLeftHandSideExpression(l))}emitAssignment(l,e.createElementAccess(r,i));transformAndEmitEmbeddedStatement(t.statement);markLabel(c);emitStatement(e.createExpressionStatement(e.createPostfixIncrement(i)));emitBreak(s);endLoopBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitForInStatement(r){if(p){beginScriptLoopBlock()}var n=r.initializer;if(e.isVariableDeclarationList(n)){for(var i=0,o=n.declarations;i<o.length;i++){var s=o[i];a(s.name)}r=e.updateForIn(r,n.declarations[0].name,e.visitNode(r.expression,visitor,e.isExpression),e.visitNode(r.statement,visitor,e.isStatement,e.liftToBlock))}else{r=e.visitEachChild(r,visitor,t)}if(p){endLoopBlock()}return r}function transformAndEmitContinueStatement(t){var r=findContinueTarget(t.label?e.idText(t.label):undefined);if(r>0){emitBreak(r,t)}else{emitStatement(t)}}function visitContinueStatement(r){if(p){var n=findContinueTarget(r.label&&e.idText(r.label));if(n>0){return createInlineBreak(n,r)}}return e.visitEachChild(r,visitor,t)}function transformAndEmitBreakStatement(t){var r=findBreakTarget(t.label?e.idText(t.label):undefined);if(r>0){emitBreak(r,t)}else{emitStatement(t)}}function visitBreakStatement(r){if(p){var n=findBreakTarget(r.label&&e.idText(r.label));if(n>0){return createInlineBreak(n,r)}}return e.visitEachChild(r,visitor,t)}function transformAndEmitReturnStatement(t){emitReturn(e.visitNode(t.expression,visitor,e.isExpression),t)}function visitReturnStatement(t){return createInlineReturn(e.visitNode(t.expression,visitor,e.isExpression),t)}function transformAndEmitWithStatement(t){if(containsYield(t)){beginWithBlock(cacheExpression(e.visitNode(t.expression,visitor,e.isExpression)));transformAndEmitEmbeddedStatement(t.statement);endWithBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function transformAndEmitSwitchStatement(t){if(containsYield(t.caseBlock)){var r=t.caseBlock;var n=r.clauses.length;var i=beginSwitchBlock();var a=cacheExpression(e.visitNode(t.expression,visitor,e.isExpression));var o=[];var s=-1;for(var c=0;c<n;c++){var u=r.clauses[c];o.push(defineLabel());if(u.kind===272&&s===-1){s=c}}var l=0;var f=[];while(l<n){var d=0;for(var c=l;c<n;c++){var u=r.clauses[c];if(u.kind===271){if(containsYield(u.expression)&&f.length>0){break}f.push(e.createCaseClause(e.visitNode(u.expression,visitor,e.isExpression),[createInlineBreak(o[c],u.expression)]))}else{d++}}if(f.length){emitStatement(e.createSwitch(a,e.createCaseBlock(f)));l+=f.length;f=[]}if(d>0){l+=d;d=0}}if(s>=0){emitBreak(o[s])}else{emitBreak(i)}for(var c=0;c<n;c++){markLabel(o[c]);transformAndEmitStatements(r.clauses[c].statements)}endSwitchBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitSwitchStatement(r){if(p){beginScriptSwitchBlock()}r=e.visitEachChild(r,visitor,t);if(p){endSwitchBlock()}return r}function transformAndEmitLabeledStatement(t){if(containsYield(t)){beginLabeledBlock(e.idText(t.label));transformAndEmitEmbeddedStatement(t.statement);endLabeledBlock()}else{emitStatement(e.visitNode(t,visitor,e.isStatement))}}function visitLabeledStatement(r){if(p){beginScriptLabeledBlock(e.idText(r.label))}r=e.visitEachChild(r,visitor,t);if(p){endLabeledBlock()}return r}function transformAndEmitThrowStatement(t){emitThrow(e.visitNode(t.expression,visitor,e.isExpression),t)}function transformAndEmitTryStatement(r){if(containsYield(r)){beginExceptionBlock();transformAndEmitEmbeddedStatement(r.tryBlock);if(r.catchClause){beginCatchBlock(r.catchClause.variableDeclaration);transformAndEmitEmbeddedStatement(r.catchClause.block)}if(r.finallyBlock){beginFinallyBlock();transformAndEmitEmbeddedStatement(r.finallyBlock)}endExceptionBlock()}else{emitStatement(e.visitEachChild(r,visitor,t))}}function containsYield(e){return!!e&&(e.transformFlags&4194304)!==0}function countInitialNodesWithoutYield(e){var t=e.length;for(var r=0;r<t;r++){if(containsYield(e[r])){return r}}return-1}function onSubstituteNode(e,t){t=u(e,t);if(e===1){return substituteExpression(t)}return t}function substituteExpression(t){if(e.isIdentifier(t)){return substituteExpressionIdentifier(t)}return t}function substituteExpressionIdentifier(t){if(!e.isGeneratedIdentifier(t)&&l&&l.has(e.idText(t))){var r=e.getOriginalNode(t);if(e.isIdentifier(r)&&r.parent){var n=c.getReferencedValueDeclaration(r);if(n){var i=f[e.getOriginalNodeId(n)];if(i){var a=e.getMutableClone(i);e.setSourceMapRange(a,t);e.setCommentRange(a,t);return a}}}}return t}function cacheExpression(t){var r;if(e.isGeneratedIdentifier(t)||e.getEmitFlags(t)&4096){return t}r=e.createTempVariable(a);emitAssignment(r,t,t);return r}function declareLocal(t){var r=t?e.createUniqueName(t):e.createTempVariable(undefined);a(r);return r}function defineLabel(){if(!h){h=[]}var e=T;T++;h[e]=-1;return e}function markLabel(t){e.Debug.assert(h!==undefined,"No labels were defined.");h[t]=S?S.length:0}function beginBlock(e){if(!g){g=[];m=[];_=[];y=[]}var t=m.length;m[t]=0;_[t]=S?S.length:0;g[t]=e;y.push(e);return t}function endBlock(){var t=peekBlock();if(t===undefined)return e.Debug.fail("beginBlock was never called.");var r=m.length;m[r]=1;_[r]=S?S.length:0;g[r]=t;y.pop();return t}function peekBlock(){return e.lastOrUndefined(y)}function peekBlockKind(){var e=peekBlock();return e&&e.kind}function beginWithBlock(e){var t=defineLabel();var r=defineLabel();markLabel(t);beginBlock({kind:1,expression:e,startLabel:t,endLabel:r})}function endWithBlock(){e.Debug.assert(peekBlockKind()===1);var t=endBlock();markLabel(t.endLabel)}function beginExceptionBlock(){var e=defineLabel();var t=defineLabel();markLabel(e);beginBlock({kind:0,state:0,startLabel:e,endLabel:t});emitNop();return t}function beginCatchBlock(r){e.Debug.assert(peekBlockKind()===0);var n;if(e.isGeneratedIdentifier(r.name)){n=r.name;a(r.name)}else{var i=e.idText(r.name);n=declareLocal(i);if(!l){l=e.createMap();f=[];t.enableSubstitution(72)}l.set(i,true);f[e.getOriginalNodeId(r)]=n}var o=peekBlock();e.Debug.assert(o.state<1);var s=o.endLabel;emitBreak(s);var c=defineLabel();markLabel(c);o.state=1;o.catchVariable=n;o.catchLabel=c;emitAssignment(n,e.createCall(e.createPropertyAccess(C,"sent"),undefined,[]));emitNop()}function beginFinallyBlock(){e.Debug.assert(peekBlockKind()===0);var t=peekBlock();e.Debug.assert(t.state<2);var r=t.endLabel;emitBreak(r);var n=defineLabel();markLabel(n);t.state=2;t.finallyLabel=n}function endExceptionBlock(){e.Debug.assert(peekBlockKind()===0);var t=endBlock();var r=t.state;if(r<2){emitBreak(t.endLabel)}else{emitEndfinally()}markLabel(t.endLabel);emitNop();t.state=3}function beginScriptLoopBlock(){beginBlock({kind:3,isScript:true,breakLabel:-1,continueLabel:-1})}function beginLoopBlock(e){var t=defineLabel();beginBlock({kind:3,isScript:false,breakLabel:t,continueLabel:e});return t}function endLoopBlock(){e.Debug.assert(peekBlockKind()===3);var t=endBlock();var r=t.breakLabel;if(!t.isScript){markLabel(r)}}function beginScriptSwitchBlock(){beginBlock({kind:2,isScript:true,breakLabel:-1})}function beginSwitchBlock(){var e=defineLabel();beginBlock({kind:2,isScript:false,breakLabel:e});return e}function endSwitchBlock(){e.Debug.assert(peekBlockKind()===2);var t=endBlock();var r=t.breakLabel;if(!t.isScript){markLabel(r)}}function beginScriptLabeledBlock(e){beginBlock({kind:4,isScript:true,labelText:e,breakLabel:-1})}function beginLabeledBlock(e){var t=defineLabel();beginBlock({kind:4,isScript:false,labelText:e,breakLabel:t})}function endLabeledBlock(){e.Debug.assert(peekBlockKind()===4);var t=endBlock();if(!t.isScript){markLabel(t.breakLabel)}}function supportsUnlabeledBreak(e){return e.kind===2||e.kind===3}function supportsLabeledBreakOrContinue(e){return e.kind===4}function supportsUnlabeledContinue(e){return e.kind===3}function hasImmediateContainingLabeledBlock(e,t){for(var r=t;r>=0;r--){var n=y[r];if(supportsLabeledBreakOrContinue(n)){if(n.labelText===e){return true}}else{break}}return false}function findBreakTarget(e){if(y){if(e){for(var t=y.length-1;t>=0;t--){var r=y[t];if(supportsLabeledBreakOrContinue(r)&&r.labelText===e){return r.breakLabel}else if(supportsUnlabeledBreak(r)&&hasImmediateContainingLabeledBlock(e,t-1)){return r.breakLabel}}}else{for(var t=y.length-1;t>=0;t--){var r=y[t];if(supportsUnlabeledBreak(r)){return r.breakLabel}}}}return 0}function findContinueTarget(e){if(y){if(e){for(var t=y.length-1;t>=0;t--){var r=y[t];if(supportsUnlabeledContinue(r)&&hasImmediateContainingLabeledBlock(e,t-1)){return r.continueLabel}}}else{for(var t=y.length-1;t>=0;t--){var r=y[t];if(supportsUnlabeledContinue(r)){return r.continueLabel}}}}return 0}function createLabel(t){if(t!==undefined&&t>0){if(v===undefined){v=[]}var r=e.createLiteral(-1);if(v[t]===undefined){v[t]=[r]}else{v[t].push(r)}return r}return e.createOmittedExpression()}function createInstruction(t){var r=e.createLiteral(t);e.addSyntheticTrailingComment(r,3,getInstructionName(t));return r}function createInlineBreak(t,r){e.Debug.assertLessThan(0,t,"Invalid label");return e.setTextRange(e.createReturn(e.createArrayLiteral([createInstruction(3),createLabel(t)])),r)}function createInlineReturn(t,r){return e.setTextRange(e.createReturn(e.createArrayLiteral(t?[createInstruction(2),t]:[createInstruction(2)])),r)}function createGeneratorResume(t){return e.setTextRange(e.createCall(e.createPropertyAccess(C,"sent"),undefined,[]),t)}function emitNop(){emitWorker(0)}function emitStatement(e){if(e){emitWorker(1,[e])}else{emitNop()}}function emitAssignment(e,t,r){emitWorker(2,[e,t],r)}function emitBreak(e,t){emitWorker(3,[e],t)}function emitBreakWhenTrue(e,t,r){emitWorker(4,[e,t],r)}function emitBreakWhenFalse(e,t,r){emitWorker(5,[e,t],r)}function emitYieldStar(e,t){emitWorker(7,[e],t)}function emitYield(e,t){emitWorker(6,[e],t)}function emitReturn(e,t){emitWorker(8,[e],t)}function emitThrow(e,t){emitWorker(9,[e],t)}function emitEndfinally(){emitWorker(10)}function emitWorker(e,t,r){if(S===undefined){S=[];b=[];x=[]}if(h===undefined){markLabel(defineLabel())}var n=S.length;S[n]=e;b[n]=t;x[n]=r}function build(){E=0;D=0;k=undefined;N=false;A=false;O=undefined;F=undefined;P=undefined;I=undefined;w=undefined;var r=buildStatements();return createGeneratorHelper(t,e.setEmitFlags(e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,C)],undefined,e.createBlock(r,r.length>0)),524288))}function buildStatements(){if(S){for(var t=0;t<S.length;t++){writeOperation(t)}flushFinalLabel(S.length)}else{flushFinalLabel(0)}if(O){var r=e.createPropertyAccess(C,"label");var n=e.createSwitch(r,e.createCaseBlock(O));return[e.startOnNewLine(n)]}if(F){return F}return[]}function flushLabel(){if(!F){return}appendLabel(!N);N=false;A=false;D++}function flushFinalLabel(e){if(isFinalLabelReachable(e)){tryEnterLabel(e);w=undefined;writeReturn(undefined,undefined)}if(F&&O){appendLabel(false)}updateLabelExpressions()}function isFinalLabelReachable(e){if(!A){return true}if(!h||!v){return false}for(var t=0;t<h.length;t++){if(h[t]===e&&v[t]){return true}}return false}function appendLabel(t){if(!O){O=[]}if(F){if(w){for(var r=w.length-1;r>=0;r--){var n=w[r];F=[e.createWith(n.expression,e.createBlock(F))]}}if(I){var i=I.startLabel,a=I.catchLabel,o=I.finallyLabel,s=I.endLabel;F.unshift(e.createExpressionStatement(e.createCall(e.createPropertyAccess(e.createPropertyAccess(C,"trys"),"push"),undefined,[e.createArrayLiteral([createLabel(i),createLabel(a),createLabel(o),createLabel(s)])])));I=undefined}if(t){F.push(e.createExpressionStatement(e.createAssignment(e.createPropertyAccess(C,"label"),e.createLiteral(D+1))))}}O.push(e.createCaseClause(e.createLiteral(D),F||[]));F=undefined}function tryEnterLabel(e){if(!h){return}for(var t=0;t<h.length;t++){if(h[t]===e){flushLabel();if(k===undefined){k=[]}if(k[D]===undefined){k[D]=[t]}else{k[D].push(t)}}}}function updateLabelExpressions(){if(v!==undefined&&k!==undefined){for(var e=0;e<k.length;e++){var t=k[e];if(t!==undefined){for(var r=0,n=t;r<n.length;r++){var i=n[r];var a=v[i];if(a!==undefined){for(var o=0,s=a;o<s.length;o++){var c=s[o];c.text=String(e)}}}}}}}function tryEnterOrLeaveBlock(e){if(g){for(;E<m.length&&_[E]<=e;E++){var t=g[E];var r=m[E];switch(t.kind){case 0:if(r===0){if(!P){P=[]}if(!F){F=[]}P.push(I);I=t}else if(r===1){I=P.pop()}break;case 1:if(r===0){if(!w){w=[]}w.push(t)}else if(r===1){w.pop()}break}}}}function writeOperation(e){tryEnterLabel(e);tryEnterOrLeaveBlock(e);if(N){return}N=false;A=false;var t=S[e];if(t===0){return}else if(t===10){return writeEndfinally()}var r=b[e];if(t===1){return writeStatement(r[0])}var n=x[e];switch(t){case 2:return writeAssign(r[0],r[1],n);case 3:return writeBreak(r[0],n);case 4:return writeBreakWhenTrue(r[0],r[1],n);case 5:return writeBreakWhenFalse(r[0],r[1],n);case 6:return writeYield(r[0],n);case 7:return writeYieldStar(r[0],n);case 8:return writeReturn(r[0],n);case 9:return writeThrow(r[0],n)}}function writeStatement(e){if(e){if(!F){F=[e]}else{F.push(e)}}}function writeAssign(t,r,n){writeStatement(e.setTextRange(e.createExpressionStatement(e.createAssignment(t,r)),n))}function writeThrow(t,r){N=true;A=true;writeStatement(e.setTextRange(e.createThrow(t),r))}function writeReturn(t,r){N=true;A=true;writeStatement(e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral(t?[createInstruction(2),t]:[createInstruction(2)])),r),384))}function writeBreak(t,r){N=true;writeStatement(e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral([createInstruction(3),createLabel(t)])),r),384))}function writeBreakWhenTrue(t,r,n){writeStatement(e.setEmitFlags(e.createIf(r,e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral([createInstruction(3),createLabel(t)])),n),384)),1))}function writeBreakWhenFalse(t,r,n){writeStatement(e.setEmitFlags(e.createIf(e.createLogicalNot(r),e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral([createInstruction(3),createLabel(t)])),n),384)),1))}function writeYield(t,r){N=true;writeStatement(e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral(t?[createInstruction(4),t]:[createInstruction(4)])),r),384))}function writeYieldStar(t,r){N=true;writeStatement(e.setEmitFlags(e.setTextRange(e.createReturn(e.createArrayLiteral([createInstruction(5),t])),r),384))}function writeEndfinally(){N=true;writeStatement(e.createReturn(e.createArrayLiteral([createInstruction(7)])))}}e.transformGenerators=transformGenerators;function createGeneratorHelper(t,r){t.requestEmitHelper(o);return e.createCall(e.getHelperName("__generator"),undefined,[e.createThis(),r])}var o={name:"typescript:generator",scoped:false,priority:6,text:'\n var __generator = (this && this.__generator) || function (thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError("Generator is already executing.");\n while (_) try {\n if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n };'}})(s||(s={}));var s;(function(e){function transformModule(a){function getTransformModuleDelegate(t){switch(t){case e.ModuleKind.AMD:return transformAMDModule;case e.ModuleKind.UMD:return transformUMDModule;default:return transformCommonJSModule}}var o=a.startLexicalEnvironment,s=a.endLexicalEnvironment,c=a.hoistVariableDeclaration;var u=a.getCompilerOptions();var l=a.getEmitResolver();var f=a.getEmitHost();var d=e.getEmitScriptTarget(u);var p=e.getEmitModuleKind(u);var g=a.onSubstituteNode;var _=a.onEmitNode;a.onSubstituteNode=onSubstituteNode;a.onEmitNode=onEmitNode;a.enableSubstitution(72);a.enableSubstitution(204);a.enableSubstitution(202);a.enableSubstitution(203);a.enableSubstitution(276);a.enableEmitNotification(279);var m=[];var y=[];var h;var v;var T;var S;return e.chainBundle(transformSourceFile);function transformSourceFile(t){if(t.isDeclarationFile||!(e.isEffectiveExternalModule(t,u)||t.transformFlags&16777216||e.isJsonSourceFile(t)&&e.hasJsonModuleEmitEnabled(u)&&(u.out||u.outFile))){return t}h=t;v=e.collectExternalModuleInfo(t,l,u);m[e.getOriginalNodeId(t)]=v;var r=getTransformModuleDelegate(p);var n=r(t);h=undefined;v=undefined;S=false;return e.aggregateTransformFlags(n)}function shouldEmitUnderscoreUnderscoreESModule(){if(!v.exportEquals&&e.isExternalModule(h)){return true}return false}function transformCommonJSModule(r){o();var n=[];var i=e.getStrictOptionValue(u,"alwaysStrict")||!u.noImplicitUseStrict&&e.isExternalModule(h);var c=e.addPrologue(n,r.statements,i,sourceElementVisitor);if(shouldEmitUnderscoreUnderscoreESModule()){e.append(n,createUnderscoreUnderscoreESModule())}e.append(n,e.visitNode(v.externalHelpersImportDeclaration,sourceElementVisitor,e.isStatement));e.addRange(n,e.visitNodes(r.statements,sourceElementVisitor,e.isStatement,c));addExportEqualsIfNeeded(n,false);e.addStatementsAfterPrologue(n,s());var l=e.updateSourceFileNode(r,e.setTextRange(e.createNodeArray(n),r.statements));if(v.hasExportStarsToExportValues&&!u.importHelpers){e.addEmitHelper(l,t)}e.addEmitHelpers(l,a.readEmitHelpers());return l}function transformAMDModule(t){var r=e.createIdentifier("define");var n=e.tryGetModuleNameFromFile(t,f,u);var i=e.isJsonSourceFile(t)&&t;var o=collectAsynchronousDependencies(t,true),s=o.aliasedModuleNames,c=o.unaliasedModuleNames,l=o.importAliasNames;var d=e.updateSourceFileNode(t,e.setTextRange(e.createNodeArray([e.createExpressionStatement(e.createCall(r,undefined,(n?[n]:[]).concat([e.createArrayLiteral(i?e.emptyArray:[e.createLiteral("require"),e.createLiteral("exports")].concat(s,c)),i?i.statements.length?i.statements[0].expression:e.createObjectLiteral():e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,"require"),e.createParameter(undefined,undefined,undefined,"exports")].concat(l),undefined,transformAsynchronousModuleBody(t))])))]),t.statements));e.addEmitHelpers(d,a.readEmitHelpers());return d}function transformUMDModule(t){var r=collectAsynchronousDependencies(t,false),n=r.aliasedModuleNames,i=r.unaliasedModuleNames,o=r.importAliasNames;var s=e.tryGetModuleNameFromFile(t,f,u);var c=e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,"factory")],undefined,e.setTextRange(e.createBlock([e.createIf(e.createLogicalAnd(e.createTypeCheck(e.createIdentifier("module"),"object"),e.createTypeCheck(e.createPropertyAccess(e.createIdentifier("module"),"exports"),"object")),e.createBlock([e.createVariableStatement(undefined,[e.createVariableDeclaration("v",undefined,e.createCall(e.createIdentifier("factory"),undefined,[e.createIdentifier("require"),e.createIdentifier("exports")]))]),e.setEmitFlags(e.createIf(e.createStrictInequality(e.createIdentifier("v"),e.createIdentifier("undefined")),e.createExpressionStatement(e.createAssignment(e.createPropertyAccess(e.createIdentifier("module"),"exports"),e.createIdentifier("v")))),1)]),e.createIf(e.createLogicalAnd(e.createTypeCheck(e.createIdentifier("define"),"function"),e.createPropertyAccess(e.createIdentifier("define"),"amd")),e.createBlock([e.createExpressionStatement(e.createCall(e.createIdentifier("define"),undefined,(s?[s]:[]).concat([e.createArrayLiteral([e.createLiteral("require"),e.createLiteral("exports")].concat(n,i)),e.createIdentifier("factory")])))])))],true),undefined));var l=e.updateSourceFileNode(t,e.setTextRange(e.createNodeArray([e.createExpressionStatement(e.createCall(c,undefined,[e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,"require"),e.createParameter(undefined,undefined,undefined,"exports")].concat(o),undefined,transformAsynchronousModuleBody(t))]))]),t.statements));e.addEmitHelpers(l,a.readEmitHelpers());return l}function collectAsynchronousDependencies(t,r){var n=[];var i=[];var a=[];for(var o=0,s=t.amdDependencies;o<s.length;o++){var c=s[o];if(c.name){n.push(e.createLiteral(c.path));a.push(e.createParameter(undefined,undefined,undefined,c.name))}else{i.push(e.createLiteral(c.path))}}for(var d=0,p=v.externalImports;d<p.length;d++){var g=p[d];var _=e.getExternalModuleNameLiteral(g,h,f,l,u);var m=e.getLocalNameForExternalImport(g,h);if(_){if(r&&m){e.setEmitFlags(m,4);n.push(_);a.push(e.createParameter(undefined,undefined,undefined,m))}else{i.push(_)}}}return{aliasedModuleNames:n,unaliasedModuleNames:i,importAliasNames:a}}function getAMDImportExpressionForImport(t){if(e.isImportEqualsDeclaration(t)||e.isExportDeclaration(t)||!e.getExternalModuleNameLiteral(t,h,f,l,u)){return undefined}var r=e.getLocalNameForExternalImport(t,h);var n=getHelperExpressionForImport(t,r);if(n===r){return undefined}return e.createExpressionStatement(e.createAssignment(r,n))}function transformAsynchronousModuleBody(n){o();var i=[];var a=e.addPrologue(i,n.statements,!u.noImplicitUseStrict,sourceElementVisitor);if(shouldEmitUnderscoreUnderscoreESModule()){e.append(i,createUnderscoreUnderscoreESModule())}e.append(i,e.visitNode(v.externalHelpersImportDeclaration,sourceElementVisitor,e.isStatement));if(p===e.ModuleKind.AMD){e.addRange(i,e.mapDefined(v.externalImports,getAMDImportExpressionForImport))}e.addRange(i,e.visitNodes(n.statements,sourceElementVisitor,e.isStatement,a));addExportEqualsIfNeeded(i,true);e.addStatementsAfterPrologue(i,s());var c=e.createBlock(i,true);if(v.hasExportStarsToExportValues&&!u.importHelpers){e.addEmitHelper(c,t)}if(S){e.addEmitHelper(c,r)}return c}function addExportEqualsIfNeeded(t,r){if(v.exportEquals){var n=e.visitNode(v.exportEquals.expression,moduleExpressionElementVisitor);if(n){if(r){var i=e.createReturn(n);e.setTextRange(i,v.exportEquals);e.setEmitFlags(i,384|1536);t.push(i)}else{var i=e.createExpressionStatement(e.createAssignment(e.createPropertyAccess(e.createIdentifier("module"),"exports"),n));e.setTextRange(i,v.exportEquals);e.setEmitFlags(i,1536);t.push(i)}}}}function sourceElementVisitor(t){switch(t.kind){case 249:return visitImportDeclaration(t);case 248:return visitImportEqualsDeclaration(t);case 255:return visitExportDeclaration(t);case 254:return visitExportAssignment(t);case 219:return visitVariableStatement(t);case 239:return visitFunctionDeclaration(t);case 240:return visitClassDeclaration(t);case 310:return visitMergeDeclarationMarker(t);case 311:return visitEndOfDeclarationMarker(t);default:return e.visitEachChild(t,moduleExpressionElementVisitor,a)}}function moduleExpressionElementVisitor(t){if(!(t.transformFlags&16777216)&&!(t.transformFlags&2048)){return t}if(e.isImportCall(t)){return visitImportCallExpression(t)}else if(t.transformFlags&1024&&e.isBinaryExpression(t)){return visitDestructuringAssignment(t)}else{return e.visitEachChild(t,moduleExpressionElementVisitor,a)}}function destructuringNeedsFlattening(t){if(e.isObjectLiteralExpression(t)){for(var r=0,n=t.properties;r<n.length;r++){var i=n[r];switch(i.kind){case 275:if(destructuringNeedsFlattening(i.initializer)){return true}break;case 276:if(destructuringNeedsFlattening(i.name)){return true}break;case 277:if(destructuringNeedsFlattening(i.expression)){return true}break;case 156:case 158:case 159:return false;default:e.Debug.assertNever(i,"Unhandled object member kind")}}}else if(e.isArrayLiteralExpression(t)){for(var a=0,o=t.elements;a<o.length;a++){var i=o[a];if(e.isSpreadElement(i)){if(destructuringNeedsFlattening(i.expression)){return true}}else if(destructuringNeedsFlattening(i)){return true}}}else if(e.isIdentifier(t)){return e.length(getExports(t))>(e.isExportName(t)?1:0)}return false}function visitDestructuringAssignment(t){if(destructuringNeedsFlattening(t.left)){return e.flattenDestructuringAssignment(t,moduleExpressionElementVisitor,a,0,false,createAllExportExpressions)}return e.visitEachChild(t,moduleExpressionElementVisitor,a)}function visitImportCallExpression(t){var r=e.visitNode(e.firstOrUndefined(t.arguments),moduleExpressionElementVisitor);var n=!!(t.transformFlags&8192);switch(u.module){case e.ModuleKind.AMD:return createImportCallExpressionAMD(r,n);case e.ModuleKind.UMD:return createImportCallExpressionUMD(r,n);case e.ModuleKind.CommonJS:default:return createImportCallExpressionCommonJS(r,n)}}function createImportCallExpressionUMD(t,r){S=true;if(e.isSimpleCopiableExpression(t)){var n=e.isGeneratedIdentifier(t)?t:e.isStringLiteral(t)?e.createLiteral(t):e.setEmitFlags(e.setTextRange(e.getSynthesizedClone(t),t),1536);return e.createConditional(e.createIdentifier("__syncRequire"),createImportCallExpressionCommonJS(t,r),createImportCallExpressionAMD(n,r))}else{var i=e.createTempVariable(c);return e.createComma(e.createAssignment(i,t),e.createConditional(e.createIdentifier("__syncRequire"),createImportCallExpressionCommonJS(i,r),createImportCallExpressionAMD(i,r)))}}function createImportCallExpressionAMD(t,r){var i=e.createUniqueName("resolve");var o=e.createUniqueName("reject");var s=[e.createParameter(undefined,undefined,undefined,i),e.createParameter(undefined,undefined,undefined,o)];var c=e.createBlock([e.createExpressionStatement(e.createCall(e.createIdentifier("require"),undefined,[e.createArrayLiteral([t||e.createOmittedExpression()]),i,o]))]);var l;if(d>=2){l=e.createArrowFunction(undefined,undefined,s,undefined,undefined,c)}else{l=e.createFunctionExpression(undefined,undefined,undefined,undefined,s,undefined,c);if(r){e.setEmitFlags(l,8)}}var f=e.createNew(e.createIdentifier("Promise"),undefined,[l]);if(u.esModuleInterop){a.requestEmitHelper(n);return e.createCall(e.createPropertyAccess(f,e.createIdentifier("then")),undefined,[e.getHelperName("__importStar")])}return f}function createImportCallExpressionCommonJS(t,r){var i=e.createCall(e.createPropertyAccess(e.createIdentifier("Promise"),"resolve"),undefined,[]);var o=e.createCall(e.createIdentifier("require"),undefined,t?[t]:[]);if(u.esModuleInterop){a.requestEmitHelper(n);o=e.createCall(e.getHelperName("__importStar"),undefined,[o])}var s;if(d>=2){s=e.createArrowFunction(undefined,undefined,[],undefined,undefined,o)}else{s=e.createFunctionExpression(undefined,undefined,undefined,undefined,[],undefined,e.createBlock([e.createReturn(o)]));if(r){e.setEmitFlags(s,8)}}return e.createCall(e.createPropertyAccess(i,"then"),undefined,[s])}function getHelperExpressionForImport(t,r){if(!u.esModuleInterop||e.getEmitFlags(t)&67108864){return r}if(e.getImportNeedsImportStarHelper(t)){a.requestEmitHelper(n);return e.createCall(e.getHelperName("__importStar"),undefined,[r])}if(e.getImportNeedsImportDefaultHelper(t)){a.requestEmitHelper(i);return e.createCall(e.getHelperName("__importDefault"),undefined,[r])}return r}function visitImportDeclaration(t){var r;var n=e.getNamespaceDeclarationNode(t);if(p!==e.ModuleKind.AMD){if(!t.importClause){return e.setOriginalNode(e.setTextRange(e.createExpressionStatement(createRequireCall(t)),t),t)}else{var i=[];if(n&&!e.isDefaultImport(t)){i.push(e.createVariableDeclaration(e.getSynthesizedClone(n.name),undefined,getHelperExpressionForImport(t,createRequireCall(t))))}else{i.push(e.createVariableDeclaration(e.getGeneratedNameForNode(t),undefined,getHelperExpressionForImport(t,createRequireCall(t))));if(n&&e.isDefaultImport(t)){i.push(e.createVariableDeclaration(e.getSynthesizedClone(n.name),undefined,e.getGeneratedNameForNode(t)))}}r=e.append(r,e.setOriginalNode(e.setTextRange(e.createVariableStatement(undefined,e.createVariableDeclarationList(i,d>=2?2:0)),t),t))}}else if(n&&e.isDefaultImport(t)){r=e.append(r,e.createVariableStatement(undefined,e.createVariableDeclarationList([e.setOriginalNode(e.setTextRange(e.createVariableDeclaration(e.getSynthesizedClone(n.name),undefined,e.getGeneratedNameForNode(t)),t),t)],d>=2?2:0)))}if(hasAssociatedEndOfDeclarationMarker(t)){var a=e.getOriginalNodeId(t);y[a]=appendExportsOfImportDeclaration(y[a],t)}else{r=appendExportsOfImportDeclaration(r,t)}return e.singleOrMany(r)}function createRequireCall(t){var r=e.getExternalModuleNameLiteral(t,h,f,l,u);var n=[];if(r){n.push(r)}return e.createCall(e.createIdentifier("require"),undefined,n)}function visitImportEqualsDeclaration(t){e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer.");var r;if(p!==e.ModuleKind.AMD){if(e.hasModifier(t,1)){r=e.append(r,e.setOriginalNode(e.setTextRange(e.createExpressionStatement(createExportExpression(t.name,createRequireCall(t))),t),t))}else{r=e.append(r,e.setOriginalNode(e.setTextRange(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.getSynthesizedClone(t.name),undefined,createRequireCall(t))],d>=2?2:0)),t),t))}}else{if(e.hasModifier(t,1)){r=e.append(r,e.setOriginalNode(e.setTextRange(e.createExpressionStatement(createExportExpression(e.getExportName(t),e.getLocalName(t))),t),t))}}if(hasAssociatedEndOfDeclarationMarker(t)){var n=e.getOriginalNodeId(t);y[n]=appendExportsOfImportEqualsDeclaration(y[n],t)}else{r=appendExportsOfImportEqualsDeclaration(r,t)}return e.singleOrMany(r)}function visitExportDeclaration(t){if(!t.moduleSpecifier){return undefined}var r=e.getGeneratedNameForNode(t);if(t.exportClause){var n=[];if(p!==e.ModuleKind.AMD){n.push(e.setOriginalNode(e.setTextRange(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(r,undefined,createRequireCall(t))])),t),t))}for(var i=0,o=t.exportClause.elements;i<o.length;i++){var s=o[i];var c=e.createPropertyAccess(r,s.propertyName||s.name);n.push(e.setOriginalNode(e.setTextRange(e.createExpressionStatement(createExportExpression(e.getExportName(s),c)),s),s))}return e.singleOrMany(n)}else{return e.setOriginalNode(e.setTextRange(e.createExpressionStatement(createExportStarHelper(a,p!==e.ModuleKind.AMD?createRequireCall(t):r)),t),t)}}function visitExportAssignment(t){if(t.isExportEquals){return undefined}var r;var n=t.original;if(n&&hasAssociatedEndOfDeclarationMarker(n)){var i=e.getOriginalNodeId(t);y[i]=appendExportStatement(y[i],e.createIdentifier("default"),e.visitNode(t.expression,moduleExpressionElementVisitor),t,true)}else{r=appendExportStatement(r,e.createIdentifier("default"),e.visitNode(t.expression,moduleExpressionElementVisitor),t,true)}return e.singleOrMany(r)}function visitFunctionDeclaration(t){var r;if(e.hasModifier(t,1)){r=e.append(r,e.setOriginalNode(e.setTextRange(e.createFunctionDeclaration(undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),t.asteriskToken,e.getDeclarationName(t,true,true),undefined,e.visitNodes(t.parameters,moduleExpressionElementVisitor),undefined,e.visitEachChild(t.body,moduleExpressionElementVisitor,a)),t),t))}else{r=e.append(r,e.visitEachChild(t,moduleExpressionElementVisitor,a))}if(hasAssociatedEndOfDeclarationMarker(t)){var n=e.getOriginalNodeId(t);y[n]=appendExportsOfHoistedDeclaration(y[n],t)}else{r=appendExportsOfHoistedDeclaration(r,t)}return e.singleOrMany(r)}function visitClassDeclaration(t){var r;if(e.hasModifier(t,1)){r=e.append(r,e.setOriginalNode(e.setTextRange(e.createClassDeclaration(undefined,e.visitNodes(t.modifiers,modifierVisitor,e.isModifier),e.getDeclarationName(t,true,true),undefined,e.visitNodes(t.heritageClauses,moduleExpressionElementVisitor),e.visitNodes(t.members,moduleExpressionElementVisitor)),t),t))}else{r=e.append(r,e.visitEachChild(t,moduleExpressionElementVisitor,a))}if(hasAssociatedEndOfDeclarationMarker(t)){var n=e.getOriginalNodeId(t);y[n]=appendExportsOfHoistedDeclaration(y[n],t)}else{r=appendExportsOfHoistedDeclaration(r,t)}return e.singleOrMany(r)}function visitVariableStatement(t){var r;var n;var i;if(e.hasModifier(t,1)){var o=void 0;for(var s=0,c=t.declarationList.declarations;s<c.length;s++){var u=c[s];if(e.isIdentifier(u.name)&&e.isLocalName(u.name)){if(!o){o=e.visitNodes(t.modifiers,modifierVisitor,e.isModifier)}n=e.append(n,u)}else if(u.initializer){i=e.append(i,transformInitializedVariable(u))}}if(n){r=e.append(r,e.updateVariableStatement(t,o,e.updateVariableDeclarationList(t.declarationList,n)))}if(i){r=e.append(r,e.setOriginalNode(e.setTextRange(e.createExpressionStatement(e.inlineExpressions(i)),t),t))}}else{r=e.append(r,e.visitEachChild(t,moduleExpressionElementVisitor,a))}if(hasAssociatedEndOfDeclarationMarker(t)){var l=e.getOriginalNodeId(t);y[l]=appendExportsOfVariableStatement(y[l],t)}else{r=appendExportsOfVariableStatement(r,t)}return e.singleOrMany(r)}function createAllExportExpressions(t,r,n){var i=getExports(t);if(i){var a=e.isExportName(t)?r:e.createAssignment(t,r);for(var o=0,s=i;o<s.length;o++){var c=s[o];e.setEmitFlags(a,4);a=createExportExpression(c,a,n)}return a}return e.createAssignment(t,r)}function transformInitializedVariable(t){if(e.isBindingPattern(t.name)){return e.flattenDestructuringAssignment(e.visitNode(t,moduleExpressionElementVisitor),undefined,a,0,false,createAllExportExpressions)}else{return e.createAssignment(e.setTextRange(e.createPropertyAccess(e.createIdentifier("exports"),t.name),t.name),e.visitNode(t.initializer,moduleExpressionElementVisitor))}}function visitMergeDeclarationMarker(t){if(hasAssociatedEndOfDeclarationMarker(t)&&t.original.kind===219){var r=e.getOriginalNodeId(t);y[r]=appendExportsOfVariableStatement(y[r],t.original)}return t}function hasAssociatedEndOfDeclarationMarker(t){return(e.getEmitFlags(t)&4194304)!==0}function visitEndOfDeclarationMarker(t){var r=e.getOriginalNodeId(t);var n=y[r];if(n){delete y[r];return e.append(n,t)}return t}function appendExportsOfImportDeclaration(e,t){if(v.exportEquals){return e}var r=t.importClause;if(!r){return e}if(r.name){e=appendExportsOfDeclaration(e,r)}var n=r.namedBindings;if(n){switch(n.kind){case 251:e=appendExportsOfDeclaration(e,n);break;case 252:for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e=appendExportsOfDeclaration(e,o)}break}}return e}function appendExportsOfImportEqualsDeclaration(e,t){if(v.exportEquals){return e}return appendExportsOfDeclaration(e,t)}function appendExportsOfVariableStatement(e,t){if(v.exportEquals){return e}for(var r=0,n=t.declarationList.declarations;r<n.length;r++){var i=n[r];e=appendExportsOfBindingElement(e,i)}return e}function appendExportsOfBindingElement(t,r){if(v.exportEquals){return t}if(e.isBindingPattern(r.name)){for(var n=0,i=r.name.elements;n<i.length;n++){var a=i[n];if(!e.isOmittedExpression(a)){t=appendExportsOfBindingElement(t,a)}}}else if(!e.isGeneratedIdentifier(r.name)){t=appendExportsOfDeclaration(t,r)}return t}function appendExportsOfHoistedDeclaration(t,r){if(v.exportEquals){return t}if(e.hasModifier(r,1)){var n=e.hasModifier(r,512)?e.createIdentifier("default"):e.getDeclarationName(r);t=appendExportStatement(t,n,e.getLocalName(r),r)}if(r.name){t=appendExportsOfDeclaration(t,r)}return t}function appendExportsOfDeclaration(t,r){var n=e.getDeclarationName(r);var i=v.exportSpecifiers.get(e.idText(n));if(i){for(var a=0,o=i;a<o.length;a++){var s=o[a];t=appendExportStatement(t,s.name,n,s.name)}}return t}function appendExportStatement(t,r,n,i,a){t=e.append(t,createExportStatement(r,n,i,a));return t}function createUnderscoreUnderscoreESModule(){var t;if(d===0){t=e.createExpressionStatement(createExportExpression(e.createIdentifier("__esModule"),e.createLiteral(true)))}else{t=e.createExpressionStatement(e.createCall(e.createPropertyAccess(e.createIdentifier("Object"),"defineProperty"),undefined,[e.createIdentifier("exports"),e.createLiteral("__esModule"),e.createObjectLiteral([e.createPropertyAssignment("value",e.createLiteral(true))])]))}e.setEmitFlags(t,1048576);return t}function createExportStatement(t,r,n,i){var a=e.setTextRange(e.createExpressionStatement(createExportExpression(t,r)),n);e.startOnNewLine(a);if(!i){e.setEmitFlags(a,1536)}return a}function createExportExpression(t,r,n){return e.setTextRange(e.createAssignment(e.createPropertyAccess(e.createIdentifier("exports"),e.getSynthesizedClone(t)),r),n)}function modifierVisitor(e){switch(e.kind){case 85:case 80:return undefined}return e}function onEmitNode(t,r,n){if(r.kind===279){h=r;v=m[e.getOriginalNodeId(h)];T=[];_(t,r,n);h=undefined;v=undefined;T=undefined}else{_(t,r,n)}}function onSubstituteNode(t,r){r=g(t,r);if(r.id&&T[r.id]){return r}if(t===1){return substituteExpression(r)}else if(e.isShorthandPropertyAssignment(r)){return substituteShorthandPropertyAssignment(r)}return r}function substituteShorthandPropertyAssignment(t){var r=t.name;var n=substituteExpressionIdentifier(r);if(n!==r){if(t.objectAssignmentInitializer){var i=e.createAssignment(n,t.objectAssignmentInitializer);return e.setTextRange(e.createPropertyAssignment(r,i),t)}return e.setTextRange(e.createPropertyAssignment(r,n),t)}return t}function substituteExpression(e){switch(e.kind){case 72:return substituteExpressionIdentifier(e);case 204:return substituteBinaryExpression(e);case 203:case 202:return substituteUnaryExpression(e)}return e}function substituteExpressionIdentifier(t){if(e.getEmitFlags(t)&4096){var r=e.getExternalHelpersModuleName(h);if(r){return e.createPropertyAccess(r,t)}return t}if(!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var n=l.getReferencedExportContainer(t,e.isExportName(t));if(n&&n.kind===279){return e.setTextRange(e.createPropertyAccess(e.createIdentifier("exports"),e.getSynthesizedClone(t)),t)}var i=l.getReferencedImportDeclaration(t);if(i){if(e.isImportClause(i)){return e.setTextRange(e.createPropertyAccess(e.getGeneratedNameForNode(i.parent),e.createIdentifier("default")),t)}else if(e.isImportSpecifier(i)){var a=i.propertyName||i.name;return e.setTextRange(e.createPropertyAccess(e.getGeneratedNameForNode(i.parent.parent.parent),e.getSynthesizedClone(a)),t)}}}return t}function substituteBinaryExpression(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=getExports(t.left);if(r){var n=t;for(var i=0,a=r;i<a.length;i++){var o=a[i];T[e.getNodeId(n)]=true;n=createExportExpression(o,n,t)}return n}}return t}function substituteUnaryExpression(t){if((t.operator===44||t.operator===45)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var r=getExports(t.operand);if(r){var n=t.kind===203?e.setTextRange(e.createBinary(t.operand,e.createToken(t.operator===44?60:61),e.createLiteral(1)),t):t;for(var i=0,a=r;i<a.length;i++){var o=a[i];T[e.getNodeId(n)]=true;n=createExportExpression(o,n)}return n}}return t}function getExports(t){if(!e.isGeneratedIdentifier(t)){var r=l.getReferencedImportDeclaration(t)||l.getReferencedValueDeclaration(t);if(r){return v&&v.exportedBindings[e.getOriginalNodeId(r)]}}}}e.transformModule=transformModule;var t={name:"typescript:export-star",scoped:true,text:"\n function __export(m) {\n for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];\n }"};function createExportStarHelper(t,r){var n=t.getCompilerOptions();return n.importHelpers?e.createCall(e.getHelperName("__exportStar"),undefined,[r,e.createIdentifier("exports")]):e.createCall(e.createIdentifier("__export"),undefined,[r])}var r={name:"typescript:dynamicimport-sync-require",scoped:true,text:'\n var __syncRequire = typeof module === "object" && typeof module.exports === "object";'};var n={name:"typescript:commonjsimportstar",scoped:false,text:'\nvar __importStar = (this && this.__importStar) || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\n result["default"] = mod;\n return result;\n};'};var i={name:"typescript:commonjsimportdefault",scoped:false,text:'\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { "default": mod };\n};'}})(s||(s={}));var s;(function(e){function transformSystemModule(t){var r=t.startLexicalEnvironment,n=t.endLexicalEnvironment,i=t.hoistVariableDeclaration;var a=t.getCompilerOptions();var o=t.getEmitResolver();var s=t.getEmitHost();var c=t.onSubstituteNode;var u=t.onEmitNode;t.onSubstituteNode=onSubstituteNode;t.onEmitNode=onEmitNode;t.enableSubstitution(72);t.enableSubstitution(276);t.enableSubstitution(204);t.enableSubstitution(202);t.enableSubstitution(203);t.enableEmitNotification(279);var l=[];var f=[];var d=[];var p=[];var g;var _;var m;var y;var h;var v;var T;return e.chainBundle(transformSourceFile);function transformSourceFile(t){if(t.isDeclarationFile||!(e.isEffectiveExternalModule(t,a)||t.transformFlags&16777216)){return t}var r=e.getOriginalNodeId(t);g=t;v=t;_=l[r]=e.collectExternalModuleInfo(t,o,a);m=e.createUniqueName("exports");d[r]=m;y=e.createUniqueName("context");var n=collectDependencyGroups(_.externalImports);var i=createSystemModuleBody(t,n);var c=e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,m),e.createParameter(undefined,undefined,undefined,y)],undefined,i);var u=e.tryGetModuleNameFromFile(t,s,a);var f=e.createArrayLiteral(e.map(n,function(e){return e.name}));var S=e.setEmitFlags(e.updateSourceFileNode(t,e.setTextRange(e.createNodeArray([e.createExpressionStatement(e.createCall(e.createPropertyAccess(e.createIdentifier("System"),"register"),undefined,u?[u,f,c]:[f,c]))]),t.statements)),1024);if(!(a.outFile||a.out)){e.moveEmitHelpers(S,i,function(e){return!e.scoped})}if(T){p[r]=T;T=undefined}g=undefined;_=undefined;m=undefined;y=undefined;h=undefined;v=undefined;return e.aggregateTransformFlags(S)}function collectDependencyGroups(t){var r=e.createMap();var n=[];for(var i=0,c=t;i<c.length;i++){var u=c[i];var l=e.getExternalModuleNameLiteral(u,g,s,o,a);if(l){var f=l.text;var d=r.get(f);if(d!==undefined){n[d].externalImports.push(u)}else{r.set(f,n.length);n.push({name:l,externalImports:[u]})}}}return n}function createSystemModuleBody(t,i){var o=[];r();var s=e.getStrictOptionValue(a,"alwaysStrict")||!a.noImplicitUseStrict&&e.isExternalModule(g);var c=e.addPrologue(o,t.statements,s,sourceElementVisitor);o.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration("__moduleName",undefined,e.createLogicalAnd(y,e.createPropertyAccess(y,"id")))])));e.visitNode(_.externalHelpersImportDeclaration,sourceElementVisitor,e.isStatement);var u=e.visitNodes(t.statements,sourceElementVisitor,e.isStatement,c);e.addRange(o,h);e.addStatementsAfterPrologue(o,n());var l=addExportStarIfNeeded(o);var f=e.createObjectLiteral([e.createPropertyAssignment("setters",createSettersArray(l,i)),e.createPropertyAssignment("execute",e.createFunctionExpression(undefined,undefined,undefined,undefined,[],undefined,e.createBlock(u,true)))]);f.multiLine=true;o.push(e.createReturn(f));return e.createBlock(o,true)}function addExportStarIfNeeded(t){if(!_.hasExportStarsToExportValues){return}if(!_.exportedNames&&_.exportSpecifiers.size===0){var r=false;for(var n=0,i=_.externalImports;n<i.length;n++){var a=i[n];if(a.kind===255&&a.exportClause){r=true;break}}if(!r){var o=createExportStarFunction(undefined);t.push(o);return o.name}}var s=[];if(_.exportedNames){for(var c=0,u=_.exportedNames;c<u.length;c++){var l=u[c];if(l.escapedText==="default"){continue}s.push(e.createPropertyAssignment(e.createLiteral(l),e.createTrue()))}}for(var f=0,d=_.externalImports;f<d.length;f++){var a=d[f];if(a.kind!==255){continue}if(!a.exportClause){continue}for(var p=0,g=a.exportClause.elements;p<g.length;p++){var m=g[p];s.push(e.createPropertyAssignment(e.createLiteral(e.idText(m.name||m.propertyName)),e.createTrue()))}}var y=e.createUniqueName("exportedNames");t.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(y,undefined,e.createObjectLiteral(s,true))])));var h=createExportStarFunction(y);t.push(h);return h.name}function createExportStarFunction(t){var r=e.createUniqueName("exportStar");var n=e.createIdentifier("m");var i=e.createIdentifier("n");var a=e.createIdentifier("exports");var o=e.createStrictInequality(i,e.createLiteral("default"));if(t){o=e.createLogicalAnd(o,e.createLogicalNot(e.createCall(e.createPropertyAccess(t,"hasOwnProperty"),undefined,[i])))}return e.createFunctionDeclaration(undefined,undefined,undefined,r,undefined,[e.createParameter(undefined,undefined,undefined,n)],undefined,e.createBlock([e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(a,undefined,e.createObjectLiteral([]))])),e.createForIn(e.createVariableDeclarationList([e.createVariableDeclaration(i,undefined)]),n,e.createBlock([e.setEmitFlags(e.createIf(o,e.createExpressionStatement(e.createAssignment(e.createElementAccess(a,i),e.createElementAccess(n,i)))),1)])),e.createExpressionStatement(e.createCall(m,undefined,[a]))],true))}function createSettersArray(t,r){var n=[];for(var i=0,a=r;i<a.length;i++){var o=a[i];var s=e.forEach(o.externalImports,function(t){return e.getLocalNameForExternalImport(t,g)});var c=s?e.getGeneratedNameForNode(s):e.createUniqueName("");var u=[];for(var l=0,f=o.externalImports;l<f.length;l++){var d=f[l];var p=e.getLocalNameForExternalImport(d,g);switch(d.kind){case 249:if(!d.importClause){break}case 248:e.Debug.assert(p!==undefined);u.push(e.createExpressionStatement(e.createAssignment(p,c)));break;case 255:e.Debug.assert(p!==undefined);if(d.exportClause){var _=[];for(var y=0,h=d.exportClause.elements;y<h.length;y++){var v=h[y];_.push(e.createPropertyAssignment(e.createLiteral(e.idText(v.name)),e.createElementAccess(c,e.createLiteral(e.idText(v.propertyName||v.name)))))}u.push(e.createExpressionStatement(e.createCall(m,undefined,[e.createObjectLiteral(_,true)])))}else{u.push(e.createExpressionStatement(e.createCall(t,undefined,[c])))}break}}n.push(e.createFunctionExpression(undefined,undefined,undefined,undefined,[e.createParameter(undefined,undefined,undefined,c)],undefined,e.createBlock(u,true)))}return e.createArrayLiteral(n,true)}function sourceElementVisitor(e){switch(e.kind){case 249:return visitImportDeclaration(e);case 248:return visitImportEqualsDeclaration(e);case 255:return undefined;case 254:return visitExportAssignment(e);default:return nestedElementVisitor(e)}}function visitImportDeclaration(t){var r;if(t.importClause){i(e.getLocalNameForExternalImport(t,g))}if(hasAssociatedEndOfDeclarationMarker(t)){var n=e.getOriginalNodeId(t);f[n]=appendExportsOfImportDeclaration(f[n],t)}else{r=appendExportsOfImportDeclaration(r,t)}return e.singleOrMany(r)}function visitImportEqualsDeclaration(t){e.Debug.assert(e.isExternalModuleImportEqualsDeclaration(t),"import= for internal module references should be handled in an earlier transformer.");var r;i(e.getLocalNameForExternalImport(t,g));if(hasAssociatedEndOfDeclarationMarker(t)){var n=e.getOriginalNodeId(t);f[n]=appendExportsOfImportEqualsDeclaration(f[n],t)}else{r=appendExportsOfImportEqualsDeclaration(r,t)}return e.singleOrMany(r)}function visitExportAssignment(t){if(t.isExportEquals){return undefined}var r=e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression);var n=t.original;if(n&&hasAssociatedEndOfDeclarationMarker(n)){var i=e.getOriginalNodeId(t);f[i]=appendExportStatement(f[i],e.createIdentifier("default"),r,true)}else{return createExportStatement(e.createIdentifier("default"),r,true)}}function visitFunctionDeclaration(r){if(e.hasModifier(r,1)){h=e.append(h,e.updateFunctionDeclaration(r,r.decorators,e.visitNodes(r.modifiers,modifierVisitor,e.isModifier),r.asteriskToken,e.getDeclarationName(r,true,true),undefined,e.visitNodes(r.parameters,destructuringAndImportCallVisitor,e.isParameterDeclaration),undefined,e.visitNode(r.body,destructuringAndImportCallVisitor,e.isBlock)))}else{h=e.append(h,e.visitEachChild(r,destructuringAndImportCallVisitor,t))}if(hasAssociatedEndOfDeclarationMarker(r)){var n=e.getOriginalNodeId(r);f[n]=appendExportsOfHoistedDeclaration(f[n],r)}else{h=appendExportsOfHoistedDeclaration(h,r)}return undefined}function visitClassDeclaration(t){var r;var n=e.getLocalName(t);i(n);r=e.append(r,e.setTextRange(e.createExpressionStatement(e.createAssignment(n,e.setTextRange(e.createClassExpression(undefined,t.name,undefined,e.visitNodes(t.heritageClauses,destructuringAndImportCallVisitor,e.isHeritageClause),e.visitNodes(t.members,destructuringAndImportCallVisitor,e.isClassElement)),t))),t));if(hasAssociatedEndOfDeclarationMarker(t)){var a=e.getOriginalNodeId(t);f[a]=appendExportsOfHoistedDeclaration(f[a],t)}else{r=appendExportsOfHoistedDeclaration(r,t)}return e.singleOrMany(r)}function visitVariableStatement(t){if(!shouldHoistVariableDeclarationList(t.declarationList)){return e.visitNode(t,destructuringAndImportCallVisitor,e.isStatement)}var r;var n=e.hasModifier(t,1);var i=hasAssociatedEndOfDeclarationMarker(t);for(var a=0,o=t.declarationList.declarations;a<o.length;a++){var s=o[a];if(s.initializer){r=e.append(r,transformInitializedVariable(s,n&&!i))}else{hoistBindingElement(s)}}var c;if(r){c=e.append(c,e.setTextRange(e.createExpressionStatement(e.inlineExpressions(r)),t))}if(i){var u=e.getOriginalNodeId(t);f[u]=appendExportsOfVariableStatement(f[u],t,n)}else{c=appendExportsOfVariableStatement(c,t,false)}return e.singleOrMany(c)}function hoistBindingElement(t){if(e.isBindingPattern(t.name)){for(var r=0,n=t.name.elements;r<n.length;r++){var a=n[r];if(!e.isOmittedExpression(a)){hoistBindingElement(a)}}}else{i(e.getSynthesizedClone(t.name))}}function shouldHoistVariableDeclarationList(t){return(e.getEmitFlags(t)&2097152)===0&&(v.kind===279||(e.getOriginalNode(t).flags&3)===0)}function transformInitializedVariable(r,n){var i=n?createExportedVariableAssignment:createNonExportedVariableAssignment;return e.isBindingPattern(r.name)?e.flattenDestructuringAssignment(r,destructuringAndImportCallVisitor,t,0,false,i):r.initializer?i(r.name,e.visitNode(r.initializer,destructuringAndImportCallVisitor,e.isExpression)):r.name}function createExportedVariableAssignment(e,t,r){return createVariableAssignment(e,t,r,true)}function createNonExportedVariableAssignment(e,t,r){return createVariableAssignment(e,t,r,false)}function createVariableAssignment(t,r,n,a){i(e.getSynthesizedClone(t));return a?createExportExpression(t,preventSubstitution(e.setTextRange(e.createAssignment(t,r),n))):preventSubstitution(e.setTextRange(e.createAssignment(t,r),n))}function visitMergeDeclarationMarker(t){if(hasAssociatedEndOfDeclarationMarker(t)&&t.original.kind===219){var r=e.getOriginalNodeId(t);var n=e.hasModifier(t.original,1);f[r]=appendExportsOfVariableStatement(f[r],t.original,n)}return t}function hasAssociatedEndOfDeclarationMarker(t){return(e.getEmitFlags(t)&4194304)!==0}function visitEndOfDeclarationMarker(t){var r=e.getOriginalNodeId(t);var n=f[r];if(n){delete f[r];return e.append(n,t)}else{var i=e.getOriginalNode(t);if(e.isModuleOrEnumDeclaration(i)){return e.append(appendExportsOfDeclaration(n,i),t)}}return t}function appendExportsOfImportDeclaration(e,t){if(_.exportEquals){return e}var r=t.importClause;if(!r){return e}if(r.name){e=appendExportsOfDeclaration(e,r)}var n=r.namedBindings;if(n){switch(n.kind){case 251:e=appendExportsOfDeclaration(e,n);break;case 252:for(var i=0,a=n.elements;i<a.length;i++){var o=a[i];e=appendExportsOfDeclaration(e,o)}break}}return e}function appendExportsOfImportEqualsDeclaration(e,t){if(_.exportEquals){return e}return appendExportsOfDeclaration(e,t)}function appendExportsOfVariableStatement(e,t,r){if(_.exportEquals){return e}for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];if(a.initializer||r){e=appendExportsOfBindingElement(e,a,r)}}return e}function appendExportsOfBindingElement(t,r,n){if(_.exportEquals){return t}if(e.isBindingPattern(r.name)){for(var i=0,a=r.name.elements;i<a.length;i++){var o=a[i];if(!e.isOmittedExpression(o)){t=appendExportsOfBindingElement(t,o,n)}}}else if(!e.isGeneratedIdentifier(r.name)){var s=void 0;if(n){t=appendExportStatement(t,r.name,e.getLocalName(r));s=e.idText(r.name)}t=appendExportsOfDeclaration(t,r,s)}return t}function appendExportsOfHoistedDeclaration(t,r){if(_.exportEquals){return t}var n;if(e.hasModifier(r,1)){var i=e.hasModifier(r,512)?e.createLiteral("default"):r.name;t=appendExportStatement(t,i,e.getLocalName(r));n=e.getTextOfIdentifierOrLiteral(i)}if(r.name){t=appendExportsOfDeclaration(t,r,n)}return t}function appendExportsOfDeclaration(t,r,n){if(_.exportEquals){return t}var i=e.getDeclarationName(r);var a=_.exportSpecifiers.get(e.idText(i));if(a){for(var o=0,s=a;o<s.length;o++){var c=s[o];if(c.name.escapedText!==n){t=appendExportStatement(t,c.name,i)}}}return t}function appendExportStatement(t,r,n,i){t=e.append(t,createExportStatement(r,n,i));return t}function createExportStatement(t,r,n){var i=e.createExpressionStatement(createExportExpression(t,r));e.startOnNewLine(i);if(!n){e.setEmitFlags(i,1536)}return i}function createExportExpression(t,r){var n=e.isIdentifier(t)?e.createLiteral(t):t;e.setEmitFlags(r,e.getEmitFlags(r)|1536);return e.setCommentRange(e.createCall(m,undefined,[n,r]),r)}function nestedElementVisitor(e){switch(e.kind){case 219:return visitVariableStatement(e);case 239:return visitFunctionDeclaration(e);case 240:return visitClassDeclaration(e);case 225:return visitForStatement(e);case 226:return visitForInStatement(e);case 227:return visitForOfStatement(e);case 223:return visitDoStatement(e);case 224:return visitWhileStatement(e);case 233:return visitLabeledStatement(e);case 231:return visitWithStatement(e);case 232:return visitSwitchStatement(e);case 246:return visitCaseBlock(e);case 271:return visitCaseClause(e);case 272:return visitDefaultClause(e);case 235:return visitTryStatement(e);case 274:return visitCatchClause(e);case 218:return visitBlock(e);case 310:return visitMergeDeclarationMarker(e);case 311:return visitEndOfDeclarationMarker(e);default:return destructuringAndImportCallVisitor(e)}}function visitForStatement(t){var r=v;v=t;t=e.updateFor(t,t.initializer&&visitForInitializer(t.initializer),e.visitNode(t.condition,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.incrementor,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.statement,nestedElementVisitor,e.isStatement));v=r;return t}function visitForInStatement(t){var r=v;v=t;t=e.updateForIn(t,visitForInitializer(t.initializer),e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock));v=r;return t}function visitForOfStatement(t){var r=v;v=t;t=e.updateForOf(t,t.awaitModifier,visitForInitializer(t.initializer),e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock));v=r;return t}function shouldHoistForInitializer(t){return e.isVariableDeclarationList(t)&&shouldHoistVariableDeclarationList(t)}function visitForInitializer(r){if(shouldHoistForInitializer(r)){var n=void 0;for(var i=0,a=r.declarations;i<a.length;i++){var o=a[i];n=e.append(n,transformInitializedVariable(o,false));if(!o.initializer){hoistBindingElement(o)}}return n?e.inlineExpressions(n):e.createOmittedExpression()}else{return e.visitEachChild(r,nestedElementVisitor,t)}}function visitDoStatement(t){return e.updateDo(t,e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock),e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression))}function visitWhileStatement(t){return e.updateWhile(t,e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock))}function visitLabeledStatement(t){return e.updateLabel(t,t.label,e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock))}function visitWithStatement(t){return e.updateWith(t,e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.statement,nestedElementVisitor,e.isStatement,e.liftToBlock))}function visitSwitchStatement(t){return e.updateSwitch(t,e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNode(t.caseBlock,nestedElementVisitor,e.isCaseBlock))}function visitCaseBlock(t){var r=v;v=t;t=e.updateCaseBlock(t,e.visitNodes(t.clauses,nestedElementVisitor,e.isCaseOrDefaultClause));v=r;return t}function visitCaseClause(t){return e.updateCaseClause(t,e.visitNode(t.expression,destructuringAndImportCallVisitor,e.isExpression),e.visitNodes(t.statements,nestedElementVisitor,e.isStatement))}function visitDefaultClause(r){return e.visitEachChild(r,nestedElementVisitor,t)}function visitTryStatement(r){return e.visitEachChild(r,nestedElementVisitor,t)}function visitCatchClause(t){var r=v;v=t;t=e.updateCatchClause(t,t.variableDeclaration,e.visitNode(t.block,nestedElementVisitor,e.isBlock));v=r;return t}function visitBlock(r){var n=v;v=r;r=e.visitEachChild(r,nestedElementVisitor,t);v=n;return r}function destructuringAndImportCallVisitor(r){if(r.transformFlags&1024&&r.kind===204){return visitDestructuringAssignment(r)}else if(e.isImportCall(r)){return visitImportCallExpression(r)}else if(r.transformFlags&2048||r.transformFlags&16777216){return e.visitEachChild(r,destructuringAndImportCallVisitor,t)}else{return r}}function visitImportCallExpression(t){return e.createCall(e.createPropertyAccess(y,e.createIdentifier("import")),undefined,e.some(t.arguments)?[e.visitNode(t.arguments[0],destructuringAndImportCallVisitor)]:[])}function visitDestructuringAssignment(r){if(hasExportedReferenceInDestructuringTarget(r.left)){return e.flattenDestructuringAssignment(r,destructuringAndImportCallVisitor,t,0,true)}return e.visitEachChild(r,destructuringAndImportCallVisitor,t)}function hasExportedReferenceInDestructuringTarget(t){if(e.isAssignmentExpression(t,true)){return hasExportedReferenceInDestructuringTarget(t.left)}else if(e.isSpreadElement(t)){return hasExportedReferenceInDestructuringTarget(t.expression)}else if(e.isObjectLiteralExpression(t)){return e.some(t.properties,hasExportedReferenceInDestructuringTarget)}else if(e.isArrayLiteralExpression(t)){return e.some(t.elements,hasExportedReferenceInDestructuringTarget)}else if(e.isShorthandPropertyAssignment(t)){return hasExportedReferenceInDestructuringTarget(t.name)}else if(e.isPropertyAssignment(t)){return hasExportedReferenceInDestructuringTarget(t.initializer)}else if(e.isIdentifier(t)){var r=o.getReferencedExportContainer(t);return r!==undefined&&r.kind===279}else{return false}}function modifierVisitor(e){switch(e.kind){case 85:case 80:return undefined}return e}function onEmitNode(t,r,n){if(r.kind===279){var i=e.getOriginalNodeId(r);g=r;_=l[i];m=d[i];T=p[i];if(T){delete p[i]}u(t,r,n);g=undefined;_=undefined;m=undefined;T=undefined}else{u(t,r,n)}}function onSubstituteNode(e,t){t=c(e,t);if(isSubstitutionPrevented(t)){return t}if(e===1){return substituteExpression(t)}else if(e===4){return substituteUnspecified(t)}return t}function substituteUnspecified(e){switch(e.kind){case 276:return substituteShorthandPropertyAssignment(e)}return e}function substituteShorthandPropertyAssignment(t){var r=t.name;if(!e.isGeneratedIdentifier(r)&&!e.isLocalName(r)){var n=o.getReferencedImportDeclaration(r);if(n){if(e.isImportClause(n)){return e.setTextRange(e.createPropertyAssignment(e.getSynthesizedClone(r),e.createPropertyAccess(e.getGeneratedNameForNode(n.parent),e.createIdentifier("default"))),t)}else if(e.isImportSpecifier(n)){return e.setTextRange(e.createPropertyAssignment(e.getSynthesizedClone(r),e.createPropertyAccess(e.getGeneratedNameForNode(n.parent.parent.parent),e.getSynthesizedClone(n.propertyName||n.name))),t)}}}return t}function substituteExpression(e){switch(e.kind){case 72:return substituteExpressionIdentifier(e);case 204:return substituteBinaryExpression(e);case 202:case 203:return substituteUnaryExpression(e)}return e}function substituteExpressionIdentifier(t){if(e.getEmitFlags(t)&4096){var r=e.getExternalHelpersModuleName(g);if(r){return e.createPropertyAccess(r,t)}return t}if(!e.isGeneratedIdentifier(t)&&!e.isLocalName(t)){var n=o.getReferencedImportDeclaration(t);if(n){if(e.isImportClause(n)){return e.setTextRange(e.createPropertyAccess(e.getGeneratedNameForNode(n.parent),e.createIdentifier("default")),t)}else if(e.isImportSpecifier(n)){return e.setTextRange(e.createPropertyAccess(e.getGeneratedNameForNode(n.parent.parent.parent),e.getSynthesizedClone(n.propertyName||n.name)),t)}}}return t}function substituteBinaryExpression(t){if(e.isAssignmentOperator(t.operatorToken.kind)&&e.isIdentifier(t.left)&&!e.isGeneratedIdentifier(t.left)&&!e.isLocalName(t.left)&&!e.isDeclarationNameOfEnumOrNamespace(t.left)){var r=getExports(t.left);if(r){var n=t;for(var i=0,a=r;i<a.length;i++){var o=a[i];n=createExportExpression(o,preventSubstitution(n))}return n}}return t}function substituteUnaryExpression(t){if((t.operator===44||t.operator===45)&&e.isIdentifier(t.operand)&&!e.isGeneratedIdentifier(t.operand)&&!e.isLocalName(t.operand)&&!e.isDeclarationNameOfEnumOrNamespace(t.operand)){var r=getExports(t.operand);if(r){var n=t.kind===203?e.setTextRange(e.createPrefix(t.operator,t.operand),t):t;for(var i=0,a=r;i<a.length;i++){var o=a[i];n=createExportExpression(o,preventSubstitution(n))}if(t.kind===203){n=t.operator===44?e.createSubtract(preventSubstitution(n),e.createLiteral(1)):e.createAdd(preventSubstitution(n),e.createLiteral(1))}return n}}return t}function getExports(t){var r;if(!e.isGeneratedIdentifier(t)){var n=o.getReferencedImportDeclaration(t)||o.getReferencedValueDeclaration(t);if(n){var i=o.getReferencedExportContainer(t,false);if(i&&i.kind===279){r=e.append(r,e.getDeclarationName(n))}r=e.addRange(r,_&&_.exportedBindings[e.getOriginalNodeId(n)])}}return r}function preventSubstitution(t){if(T===undefined)T=[];T[e.getNodeId(t)]=true;return t}function isSubstitutionPrevented(e){return T&&e.id&&T[e.id]}}e.transformSystemModule=transformSystemModule})(s||(s={}));var s;(function(e){function transformES2015Module(t){var r=t.getCompilerOptions();var n=t.onEmitNode;var i=t.onSubstituteNode;t.onEmitNode=onEmitNode;t.onSubstituteNode=onSubstituteNode;t.enableEmitNotification(279);t.enableSubstitution(72);var a;return e.chainBundle(transformSourceFile);function transformSourceFile(n){if(n.isDeclarationFile){return n}if(e.isExternalModule(n)||r.isolatedModules){var i=e.getOrCreateExternalHelpersModuleNameIfNeeded(n,r);if(i){var a=[];var o=e.addPrologue(a,n.statements);var s=e.createImportDeclaration(undefined,undefined,e.createImportClause(undefined,e.createNamespaceImport(i)),e.createLiteral(e.externalHelpersModuleNameText));e.addEmitFlags(s,67108864);e.append(a,s);e.addRange(a,e.visitNodes(n.statements,visitor,e.isStatement,o));return e.updateSourceFileNode(n,e.setTextRange(e.createNodeArray(a),n.statements))}else{return e.visitEachChild(n,visitor,t)}}return n}function visitor(e){switch(e.kind){case 248:return undefined;case 254:return visitExportAssignment(e)}return e}function visitExportAssignment(e){return e.isExportEquals?undefined:e}function onEmitNode(t,r,i){if(e.isSourceFile(r)){a=r;n(t,r,i);a=undefined}else{n(t,r,i)}}function onSubstituteNode(t,r){r=i(t,r);if(e.isIdentifier(r)&&t===1){return substituteExpressionIdentifier(r)}return r}function substituteExpressionIdentifier(t){if(e.getEmitFlags(t)&4096){var r=e.getExternalHelpersModuleName(a);if(r){return e.createPropertyAccess(r,t)}}return t}}e.transformES2015Module=transformES2015Module})(s||(s={}));var s;(function(e){function canProduceDiagnostics(t){return e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isBindingElement(t)||e.isSetAccessor(t)||e.isGetAccessor(t)||e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isParameter(t)||e.isTypeParameterDeclaration(t)||e.isExpressionWithTypeArguments(t)||e.isImportEqualsDeclaration(t)||e.isTypeAliasDeclaration(t)||e.isConstructorDeclaration(t)||e.isIndexSignatureDeclaration(t)}e.canProduceDiagnostics=canProduceDiagnostics;function createGetSymbolAccessibilityDiagnosticForNodeName(t){if(e.isSetAccessor(t)||e.isGetAccessor(t)){return getAccessorNameVisibilityError}else if(e.isMethodSignature(t)||e.isMethodDeclaration(t)){return getMethodNameVisibilityError}else{return createGetSymbolAccessibilityDiagnosticForNode(t)}function getAccessorNameVisibilityError(e){var r=getAccessorNameVisibilityDiagnosticMessage(e);return r!==undefined?{diagnosticMessage:r,errorNode:t,typeName:t.name}:undefined}function getAccessorNameVisibilityDiagnosticMessage(r){if(e.hasModifier(t,32)){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1}else if(t.parent.kind===240){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1}else{return r.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}}function getMethodNameVisibilityError(e){var r=getMethodNameVisibilityDiagnosticMessage(e);return r!==undefined?{diagnosticMessage:r,errorNode:t,typeName:t.name}:undefined}function getMethodNameVisibilityDiagnosticMessage(r){if(e.hasModifier(t,32)){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_method_0_of_exported_class_has_or_is_using_private_name_1}else if(t.parent.kind===240){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_method_0_of_exported_class_has_or_is_using_private_name_1}else{return r.errorModuleName?e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Method_0_of_exported_interface_has_or_is_using_private_name_1}}}e.createGetSymbolAccessibilityDiagnosticForNodeName=createGetSymbolAccessibilityDiagnosticForNodeName;function createGetSymbolAccessibilityDiagnosticForNode(t){if(e.isVariableDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertySignature(t)||e.isBindingElement(t)||e.isConstructorDeclaration(t)){return getVariableDeclarationTypeVisibilityError}else if(e.isSetAccessor(t)||e.isGetAccessor(t)){return getAccessorDeclarationTypeVisibilityError}else if(e.isConstructSignatureDeclaration(t)||e.isCallSignatureDeclaration(t)||e.isMethodDeclaration(t)||e.isMethodSignature(t)||e.isFunctionDeclaration(t)||e.isIndexSignatureDeclaration(t)){return getReturnTypeVisibilityError}else if(e.isParameter(t)){if(e.isParameterPropertyDeclaration(t)&&e.hasModifier(t.parent,8)){return getVariableDeclarationTypeVisibilityError}return getParameterDeclarationTypeVisibilityError}else if(e.isTypeParameterDeclaration(t)){return getTypeParameterConstraintVisibilityError}else if(e.isExpressionWithTypeArguments(t)){return getHeritageClauseVisibilityError}else if(e.isImportEqualsDeclaration(t)){return getImportEntityNameVisibilityError}else if(e.isTypeAliasDeclaration(t)){return getTypeAliasDeclarationVisibilityError}else{return e.Debug.assertNever(t,"Attempted to set a declaration diagnostic context for unhandled node kind: "+e.SyntaxKind[t.kind])}function getVariableDeclarationTypeVisibilityDiagnosticMessage(r){if(t.kind===237||t.kind===186){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Exported_variable_0_has_or_is_using_private_name_1}else if(t.kind===154||t.kind===153||t.kind===151&&e.hasModifier(t.parent,8)){if(e.hasModifier(t,32)){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_static_property_0_of_exported_class_has_or_is_using_private_name_1}else if(t.parent.kind===240||t.kind===151){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Public_property_0_of_exported_class_has_or_is_using_private_name_1}else{return r.errorModuleName?e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Property_0_of_exported_interface_has_or_is_using_private_name_1}}}function getVariableDeclarationTypeVisibilityError(e){var r=getVariableDeclarationTypeVisibilityDiagnosticMessage(e);return r!==undefined?{diagnosticMessage:r,errorNode:t,typeName:t.name}:undefined}function getAccessorDeclarationTypeVisibilityError(r){var n;if(t.kind===159){if(e.hasModifier(t,32)){n=r.errorModuleName?e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_static_setter_0_from_exported_class_has_or_is_using_private_name_1}else{n=r.errorModuleName?e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_type_of_public_setter_0_from_exported_class_has_or_is_using_private_name_1}}else{if(e.hasModifier(t,32)){n=r.errorModuleName?r.accessibility===2?e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_static_getter_0_from_exported_class_has_or_is_using_private_name_1}else{n=r.errorModuleName?r.accessibility===2?e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Return_type_of_public_getter_0_from_exported_class_has_or_is_using_private_name_1}}return{diagnosticMessage:n,errorNode:t.name,typeName:t.name}}function getReturnTypeVisibilityError(r){var n;switch(t.kind){case 161:n=r.errorModuleName?e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 160:n=r.errorModuleName?e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_call_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 162:n=r.errorModuleName?e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_index_signature_from_exported_interface_has_or_is_using_private_name_0;break;case 156:case 155:if(e.hasModifier(t,32)){n=r.errorModuleName?r.accessibility===2?e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_static_method_from_exported_class_has_or_is_using_private_name_0}else if(t.parent.kind===240){n=r.errorModuleName?r.accessibility===2?e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_public_method_from_exported_class_has_or_is_using_private_name_0}else{n=r.errorModuleName?e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_method_from_exported_interface_has_or_is_using_private_name_0}break;case 239:n=r.errorModuleName?r.accessibility===2?e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_external_module_1_but_cannot_be_named:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_name_0_from_private_module_1:e.Diagnostics.Return_type_of_exported_function_has_or_is_using_private_name_0;break;default:return e.Debug.fail("This is unknown kind for signature: "+t.kind)}return{diagnosticMessage:n,errorNode:t.name||t}}function getParameterDeclarationTypeVisibilityError(e){var r=getParameterDeclarationTypeVisibilityDiagnosticMessage(e);return r!==undefined?{diagnosticMessage:r,errorNode:t,typeName:t.name}:undefined}function getParameterDeclarationTypeVisibilityDiagnosticMessage(r){switch(t.parent.kind){case 157:return r.errorModuleName?r.accessibility===2?e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_from_exported_class_has_or_is_using_private_name_1;case 161:case 166:return r.errorModuleName?e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;case 160:return r.errorModuleName?e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;case 162:return r.errorModuleName?e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_index_signature_from_exported_interface_has_or_is_using_private_name_1;case 156:case 155:if(e.hasModifier(t.parent,32)){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1}else if(t.parent.parent.kind===240){return r.errorModuleName?r.accessibility===2?e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1}else{return r.errorModuleName?e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1}case 239:case 165:return r.errorModuleName?r.accessibility===2?e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_name_1_from_private_module_2:e.Diagnostics.Parameter_0_of_exported_function_has_or_is_using_private_name_1;default:return e.Debug.fail("Unknown parent for parameter: "+e.SyntaxKind[t.parent.kind])}}function getTypeParameterConstraintVisibilityError(){var r;switch(t.parent.kind){case 240:r=e.Diagnostics.Type_parameter_0_of_exported_class_has_or_is_using_private_name_1;break;case 241:r=e.Diagnostics.Type_parameter_0_of_exported_interface_has_or_is_using_private_name_1;break;case 161:r=e.Diagnostics.Type_parameter_0_of_constructor_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 160:r=e.Diagnostics.Type_parameter_0_of_call_signature_from_exported_interface_has_or_is_using_private_name_1;break;case 156:case 155:if(e.hasModifier(t.parent,32)){r=e.Diagnostics.Type_parameter_0_of_public_static_method_from_exported_class_has_or_is_using_private_name_1}else if(t.parent.parent.kind===240){r=e.Diagnostics.Type_parameter_0_of_public_method_from_exported_class_has_or_is_using_private_name_1}else{r=e.Diagnostics.Type_parameter_0_of_method_from_exported_interface_has_or_is_using_private_name_1}break;case 239:r=e.Diagnostics.Type_parameter_0_of_exported_function_has_or_is_using_private_name_1;break;case 242:r=e.Diagnostics.Type_parameter_0_of_exported_type_alias_has_or_is_using_private_name_1;break;default:return e.Debug.fail("This is unknown parent for type parameter: "+t.parent.kind)}return{diagnosticMessage:r,errorNode:t,typeName:t.name}}function getHeritageClauseVisibilityError(){var r;if(t.parent.parent.kind===240){r=e.isHeritageClause(t.parent)&&t.parent.token===109?e.Diagnostics.Implements_clause_of_exported_class_0_has_or_is_using_private_name_1:e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1}else{r=e.Diagnostics.extends_clause_of_exported_interface_0_has_or_is_using_private_name_1}return{diagnosticMessage:r,errorNode:t,typeName:e.getNameOfDeclaration(t.parent.parent)}}function getImportEntityNameVisibilityError(){return{diagnosticMessage:e.Diagnostics.Import_declaration_0_is_using_private_name_1,errorNode:t,typeName:t.name}}function getTypeAliasDeclarationVisibilityError(){return{diagnosticMessage:e.Diagnostics.Exported_type_alias_0_has_or_is_using_private_name_1,errorNode:t.type,typeName:t.name}}}e.createGetSymbolAccessibilityDiagnosticForNode=createGetSymbolAccessibilityDiagnosticForNode})(s||(s={}));var s;(function(e){function getDeclarationDiagnostics(t,r,n){if(n&&e.isSourceFileJS(n)){return[]}var i=t.getCompilerOptions();var a=e.transformNodes(r,t,i,n?[n]:e.filter(t.getSourceFiles(),e.isSourceFileNotJS),[transformDeclarations],false);return a.diagnostics}e.getDeclarationDiagnostics=getDeclarationDiagnostics;var t=1024|2048|4096|8|524288|4|1;function transformDeclarations(r){var n=function(){return e.Debug.fail("Diagnostic emitted without context")};var i=n;var a=true;var o=false;var s=false;var c=false;var u=false;var l;var f;var d;var p;var g;var _;var m=r.getEmitHost();var y={trackSymbol:trackSymbol,reportInaccessibleThisError:reportInaccessibleThisError,reportInaccessibleUniqueSymbolError:reportInaccessibleUniqueSymbolError,reportPrivateInBaseOfClassExpression:reportPrivateInBaseOfClassExpression,reportLikelyUnsafeImportRequiredError:reportLikelyUnsafeImportRequiredError,moduleResolverHost:m,trackReferencedAmbientModule:trackReferencedAmbientModule,trackExternalModuleSymbolOfImportTypeNode:trackExternalModuleSymbolOfImportTypeNode};var h;var v;var T;var S;var b=r.getEmitResolver();var x=r.getCompilerOptions();var C=e.getNewLineCharacter(x);var E=x.noResolve,D=x.stripInternal;return transformRoot;function recordTypeReferenceDirectivesIfNecessary(t){if(!t){return}f=f||e.createMap();for(var r=0,n=t;r<n.length;r++){var i=n[r];f.set(i,true)}}function trackReferencedAmbientModule(t,r){var n=b.getTypeReferenceDirectivesForSymbol(r,67108863);if(e.length(n)){return recordTypeReferenceDirectivesIfNecessary(n)}var i=e.getSourceFileOfNode(t);T.set(""+e.getOriginalNodeId(i),i)}function handleSymbolAccessibilityError(t){if(t.accessibility===0){if(t&&t.aliasesToMakeVisible){if(!d){d=t.aliasesToMakeVisible}else{for(var n=0,a=t.aliasesToMakeVisible;n<a.length;n++){var o=a[n];e.pushIfUnique(d,o)}}}}else{var s=i(t);if(s){if(s.typeName){r.addDiagnostic(e.createDiagnosticForNode(t.errorNode||s.errorNode,s.diagnosticMessage,e.getTextOfNode(s.typeName),t.errorSymbolName,t.errorModuleName))}else{r.addDiagnostic(e.createDiagnosticForNode(t.errorNode||s.errorNode,s.diagnosticMessage,t.errorSymbolName,t.errorModuleName))}}}}function trackExternalModuleSymbolOfImportTypeNode(e){if(!o){(_||(_=[])).push(e)}}function trackSymbol(e,t,r){if(e.flags&262144)return;handleSymbolAccessibilityError(b.isSymbolAccessible(e,t,r,true));recordTypeReferenceDirectivesIfNecessary(b.getTypeReferenceDirectivesForSymbol(e,r))}function reportPrivateInBaseOfClassExpression(t){if(h){r.addDiagnostic(e.createDiagnosticForNode(h,e.Diagnostics.Property_0_of_exported_class_expression_may_not_be_private_or_protected,t))}}function reportInaccessibleUniqueSymbolError(){if(h){r.addDiagnostic(e.createDiagnosticForNode(h,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(h),"unique symbol"))}}function reportInaccessibleThisError(){if(h){r.addDiagnostic(e.createDiagnosticForNode(h,e.Diagnostics.The_inferred_type_of_0_references_an_inaccessible_1_type_A_type_annotation_is_necessary,e.declarationNameToString(h),"this"))}}function reportLikelyUnsafeImportRequiredError(t){if(h){r.addDiagnostic(e.createDiagnosticForNode(h,e.Diagnostics.The_inferred_type_of_0_cannot_be_named_without_a_reference_to_1_This_is_likely_not_portable_A_type_annotation_is_necessary,e.declarationNameToString(h),t))}}function transformRoot(t){if(t.kind===279&&(t.isDeclarationFile||e.isSourceFileJS(t))){return t}if(t.kind===280){o=true;T=e.createMap();S=e.createMap();var y=false;var h=e.createBundle(e.map(t.sourceFiles,function(t){if(t.isDeclarationFile||e.isSourceFileJS(t))return undefined;y=y||t.hasNoDefaultLib;v=t;l=t;d=undefined;g=false;p=e.createMap();i=n;c=false;u=false;collectReferences(t,T);collectLibs(t,S);if(e.isExternalModule(t)){s=false;a=false;var o=e.visitNodes(t.statements,visitDeclarationStatements);var f=e.updateSourceFileNode(t,[e.createModuleDeclaration([],[e.createModifier(125)],e.createLiteral(e.getResolvedExternalModuleName(r.getEmitHost(),t)),e.createModuleBlock(e.setTextRange(e.createNodeArray(transformAndReplaceLatePaintedStatements(o)),t.statements)))],true,[],[],false,[]);return f}a=true;var _=e.visitNodes(t.statements,visitDeclarationStatements);return e.updateSourceFileNode(t,transformAndReplaceLatePaintedStatements(_),true,[],[],false,[])}),e.mapDefined(t.prepends,function(t){if(t.kind===282){return e.createUnparsedSourceFile(t.declarationText,t.declarationMapPath,t.declarationMapText)}}));h.syntheticFileReferences=[];h.syntheticTypeReferences=getFileReferencesForUsedTypeReferences();h.syntheticLibReferences=getLibReferences();h.hasNoDefaultLib=y;var b=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(t,m,true).declarationFilePath));var x=mapReferencesIntoArray(h.syntheticFileReferences,b);T.forEach(x);return h}a=true;c=false;u=false;l=t;v=t;i=n;o=false;s=false;g=false;d=undefined;p=e.createMap();f=undefined;T=collectReferences(v,e.createMap());S=collectLibs(v,e.createMap());var C=[];var E=e.getDirectoryPath(e.normalizeSlashes(e.getOutputPathsFor(t,m,true).declarationFilePath));var D=mapReferencesIntoArray(C,E);var k=e.visitNodes(t.statements,visitDeclarationStatements);var N=e.setTextRange(e.createNodeArray(transformAndReplaceLatePaintedStatements(k)),t.statements);T.forEach(D);var A=e.filter(N,e.isAnyImportSyntax);if(e.isExternalModule(t)&&(!s||c&&!u)){N=e.setTextRange(e.createNodeArray(N.concat([e.createExportDeclaration(undefined,undefined,e.createNamedExports([]),undefined)])),N)}var O=e.updateSourceFileNode(t,N,true,C,getFileReferencesForUsedTypeReferences(),t.hasNoDefaultLib,getLibReferences());O.exportedModulesFromDeclarationEmit=_;return O;function getLibReferences(){return e.map(e.arrayFrom(S.keys()),function(e){return{fileName:e,pos:-1,end:-1}})}function getFileReferencesForUsedTypeReferences(){return f?e.mapDefined(e.arrayFrom(f.keys()),getFileReferenceForTypeName):[]}function getFileReferenceForTypeName(t){if(A){for(var r=0,n=A;r<n.length;r++){var i=n[r];if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference)){var a=i.moduleReference.expression;if(e.isStringLiteralLike(a)&&a.text===t){return undefined}}else if(e.isImportDeclaration(i)&&e.isStringLiteral(i.moduleSpecifier)&&i.moduleSpecifier.text===t){return undefined}}}return{fileName:t,pos:-1,end:-1}}function mapReferencesIntoArray(r,n){return function(i){var a;if(i.isDeclarationFile){a=i.fileName}else{if(o&&e.contains(t.sourceFiles,i))return;var s=e.getOutputPathsFor(i,m,true);a=s.declarationFilePath||s.jsFilePath||i.fileName}if(a){var c=e.getRelativePathToDirectoryOrUrl(n,a,m.getCurrentDirectory(),m.getCanonicalFileName,false);if(e.startsWith(c,"./")&&e.hasExtension(c)){c=c.substring(2)}if(e.startsWith(c,"node_modules/")||c.indexOf("/node_modules/")!==-1){return}r.push({pos:-1,end:-1,fileName:c})}}}}function collectReferences(t,r){if(E||e.isSourceFileJS(t))return r;e.forEach(t.referencedFiles,function(n){var i=e.tryResolveScriptReference(m,t,n);if(i){r.set(""+e.getOriginalNodeId(i),i)}});return r}function collectLibs(t,r){e.forEach(t.libReferenceDirectives,function(e){var t=m.getLibFileFromReference(e);if(t){r.set(e.fileName.toLocaleLowerCase(),true)}});return r}function filterBindingPatternInitializers(t){if(t.kind===72){return t}else{if(t.kind===185){return e.updateArrayBindingPattern(t,e.visitNodes(t.elements,visitBindingElement))}else{return e.updateObjectBindingPattern(t,e.visitNodes(t.elements,visitBindingElement))}}function visitBindingElement(t){if(t.kind===210){return t}return e.updateBindingElement(t,t.dotDotDotToken,t.propertyName,filterBindingPatternInitializers(t.name),shouldPrintWithInitializer(t)?t.initializer:undefined)}}function ensureParameter(t,r){var n;if(!g){n=i;i=e.createGetSymbolAccessibilityDiagnosticForNode(t)}var a=e.updateParameter(t,undefined,maskModifiers(t,r),t.dotDotDotToken,filterBindingPatternInitializers(t.name),b.isOptionalParameter(t)?t.questionToken||e.createToken(56):undefined,ensureType(t,t.type,true),ensureNoInitializer(t));if(!g){i=n}return a}function shouldPrintWithInitializer(t){return canHaveLiteralInitializer(t)&&b.isLiteralConstDeclaration(e.getParseTreeNode(t))}function ensureNoInitializer(t){if(shouldPrintWithInitializer(t)){return b.createLiteralConstValue(e.getParseTreeNode(t),y)}return undefined}function ensureType(r,n,a){if(!a&&e.hasModifier(r,8)){return}if(shouldPrintWithInitializer(r)){return}var o=r.kind===151&&(b.isRequiredInitializedParameter(r)||b.isOptionalUninitializedParameterProperty(r));if(n&&!o){return e.visitNode(n,visitDeclarationSubtree)}if(!e.getParseTreeNode(r)){return n?e.visitNode(n,visitDeclarationSubtree):e.createKeywordTypeNode(120)}if(r.kind===159){return e.createKeywordTypeNode(120)}h=r.name;var s;if(!g){s=i;i=e.createGetSymbolAccessibilityDiagnosticForNode(r)}if(r.kind===237||r.kind===186){return cleanup(b.createTypeOfDeclaration(r,l,t,y))}if(r.kind===151||r.kind===154||r.kind===153){if(!r.initializer)return cleanup(b.createTypeOfDeclaration(r,l,t,y,o));return cleanup(b.createTypeOfDeclaration(r,l,t,y,o)||b.createTypeOfExpression(r.initializer,l,t,y))}return cleanup(b.createReturnTypeOfSignatureDeclaration(r,l,t,y));function cleanup(t){h=undefined;if(!g){i=s}return t||e.createKeywordTypeNode(120)}}function isDeclarationAndNotVisible(t){t=e.getParseTreeNode(t);switch(t.kind){case 239:case 244:case 241:case 240:case 242:case 243:return!b.isDeclarationVisible(t);case 237:return!getBindingNameVisible(t);case 248:case 249:case 255:case 254:return false}return false}function getBindingNameVisible(t){if(e.isOmittedExpression(t)){return false}if(e.isBindingPattern(t.name)){return e.some(t.name.elements,getBindingNameVisible)}else{return b.isDeclarationVisible(t)}}function updateParamsList(t,r,n){if(e.hasModifier(t,8)){return undefined}var i=e.map(r,function(e){return ensureParameter(e,n)});if(!i){return undefined}return e.createNodeArray(i,r.hasTrailingComma)}function ensureTypeParams(t,r){return e.hasModifier(t,8)?undefined:e.visitNodes(r,visitDeclarationSubtree)}function isEnclosingDeclaration(t){return e.isSourceFile(t)||e.isTypeAliasDeclaration(t)||e.isModuleDeclaration(t)||e.isClassDeclaration(t)||e.isInterfaceDeclaration(t)||e.isFunctionLike(t)||e.isIndexSignatureDeclaration(t)||e.isMappedTypeNode(t)}function checkEntityNameVisibility(e,t){var r=b.isEntityNameVisible(e,t);handleSymbolAccessibilityError(r);recordTypeReferenceDirectivesIfNecessary(b.getTypeReferenceDirectivesForEntityName(e))}function preserveJsDoc(t,r){if(e.hasJSDocNodes(t)&&e.hasJSDocNodes(r)){t.jsDoc=r.jsDoc}return e.setCommentRange(t,e.getCommentRange(r))}function rewriteModuleSpecifier(t,n){if(!n)return undefined;s=s||t.kind!==244&&t.kind!==183;if(e.isStringLiteralLike(n)){if(o){var i=e.getExternalModuleNameFromDeclaration(r.getEmitHost(),b,t);if(i){return e.createLiteral(i)}}else{var a=b.getSymbolOfExternalModuleSpecifier(n);if(a){(_||(_=[])).push(a)}}}return n}function transformImportEqualsDeclaration(t){if(!b.isDeclarationVisible(t))return;if(t.moduleReference.kind===259){var r=e.getExternalModuleImportEqualsDeclarationExpression(t);return e.updateImportEqualsDeclaration(t,undefined,t.modifiers,t.name,e.updateExternalModuleReference(t.moduleReference,rewriteModuleSpecifier(t,r)))}else{var n=i;i=e.createGetSymbolAccessibilityDiagnosticForNode(t);checkEntityNameVisibility(t.moduleReference,l);i=n;return t}}function transformImportDeclaration(t){if(!t.importClause){return e.updateImportDeclaration(t,undefined,t.modifiers,t.importClause,rewriteModuleSpecifier(t,t.moduleSpecifier))}var r=t.importClause&&t.importClause.name&&b.isDeclarationVisible(t.importClause)?t.importClause.name:undefined;if(!t.importClause.namedBindings){return r&&e.updateImportDeclaration(t,undefined,t.modifiers,e.updateImportClause(t.importClause,r,undefined),rewriteModuleSpecifier(t,t.moduleSpecifier))}if(t.importClause.namedBindings.kind===251){var n=b.isDeclarationVisible(t.importClause.namedBindings)?t.importClause.namedBindings:undefined;return r||n?e.updateImportDeclaration(t,undefined,t.modifiers,e.updateImportClause(t.importClause,r,n),rewriteModuleSpecifier(t,t.moduleSpecifier)):undefined}var i=e.mapDefined(t.importClause.namedBindings.elements,function(e){return b.isDeclarationVisible(e)?e:undefined});if(i&&i.length||r){return e.updateImportDeclaration(t,undefined,t.modifiers,e.updateImportClause(t.importClause,r,i&&i.length?e.updateNamedImports(t.importClause.namedBindings,i):undefined),rewriteModuleSpecifier(t,t.moduleSpecifier))}}function transformAndReplaceLatePaintedStatements(t){while(e.length(d)){var r=d.shift();if(!e.isLateVisibilityPaintedStatement(r)){return e.Debug.fail("Late replaced statement was found which is not handled by the declaration transformer!: "+(e.SyntaxKind?e.SyntaxKind[r.kind]:r.kind))}var n=transformTopLevelDeclaration(r,true);p.set(""+e.getOriginalNodeId(r),n)}return e.visitNodes(t,visitLateVisibilityMarkedStatements);function visitLateVisibilityMarkedStatements(t){if(e.isLateVisibilityPaintedStatement(t)){var r=""+e.getOriginalNodeId(t);if(p.has(r)){var n=p.get(r);p.delete(r);if(n&&e.isSourceFile(t.parent)){if(e.isArray(n)?e.some(n,needsScopeMarker):needsScopeMarker(n)){c=true}if(e.isArray(n)?e.some(n,isExternalModuleIndicator):isExternalModuleIndicator(n)){s=true}}return n}}return t}}function isExternalModuleIndicator(t){return e.isAnyImportOrReExport(t)||e.isExportAssignment(t)||e.hasModifier(t,1)}function needsScopeMarker(t){return!e.isAnyImportOrReExport(t)&&!e.isExportAssignment(t)&&!e.hasModifier(t,1)&&!e.isAmbientModule(t)}function visitDeclarationSubtree(t){if(shouldStripInternal(t))return;if(e.isDeclaration(t)){if(isDeclarationAndNotVisible(t))return;if(e.hasDynamicName(t)&&!b.isLateBound(e.getParseTreeNode(t))){return}}if(e.isFunctionLike(t)&&b.isImplementationOfOverload(t))return;if(e.isSemicolonClassElement(t))return;var n;if(isEnclosingDeclaration(t)){n=l;l=t}var a=i;if(e.isMethodDeclaration(t)||e.isMethodSignature(t)){if(e.hasModifier(t,8)){if(t.symbol&&t.symbol.declarations&&t.symbol.declarations[0]!==t)return;return cleanup(e.createProperty(undefined,ensureModifiers(t),t.name,undefined,undefined,undefined))}}var o=e.canProduceDiagnostics(t);if(o&&!g){i=e.createGetSymbolAccessibilityDiagnosticForNode(t)}if(e.isTypeQueryNode(t)){checkEntityNameVisibility(t.exprName,l)}var s=g;var c=(t.kind===168||t.kind===181)&&t.parent.kind!==242;if(c){g=true}if(isProcessedComponent(t)){switch(t.kind){case 211:{if(e.isEntityName(t.expression)||e.isEntityNameExpression(t.expression)){checkEntityNameVisibility(t.expression,l)}var u=e.visitEachChild(t,visitDeclarationSubtree,r);return cleanup(e.updateExpressionWithTypeArguments(u,e.parenthesizeTypeParameters(u.typeArguments),u.expression))}case 164:{checkEntityNameVisibility(t.typeName,l);var u=e.visitEachChild(t,visitDeclarationSubtree,r);return cleanup(e.updateTypeReferenceNode(u,u.typeName,e.parenthesizeTypeParameters(u.typeArguments)))}case 161:return cleanup(e.updateConstructSignature(t,ensureTypeParams(t,t.typeParameters),updateParamsList(t,t.parameters),ensureType(t,t.type)));case 157:{var f=e.hasModifier(t,8);var d=e.createSignatureDeclaration(157,f?undefined:ensureTypeParams(t,t.typeParameters),f?undefined:updateParamsList(t,t.parameters,0),undefined);d.modifiers=e.createNodeArray(ensureModifiers(t));return cleanup(d)}case 156:{var p=e.createSignatureDeclaration(155,ensureTypeParams(t,t.typeParameters),updateParamsList(t,t.parameters),ensureType(t,t.type));p.name=t.name;p.modifiers=e.createNodeArray(ensureModifiers(t));p.questionToken=t.questionToken;return cleanup(p)}case 158:{var _=ensureAccessor(t);return cleanup(_)}case 159:{var _=ensureAccessor(t);return cleanup(_)}case 154:return cleanup(e.updateProperty(t,undefined,ensureModifiers(t),t.name,t.questionToken,!e.hasModifier(t,8)?ensureType(t,t.type):undefined,ensureNoInitializer(t)));case 153:return cleanup(e.updatePropertySignature(t,ensureModifiers(t),t.name,t.questionToken,!e.hasModifier(t,8)?ensureType(t,t.type):undefined,ensureNoInitializer(t)));case 155:{return cleanup(e.updateMethodSignature(t,ensureTypeParams(t,t.typeParameters),updateParamsList(t,t.parameters),ensureType(t,t.type),t.name,t.questionToken))}case 160:{return cleanup(e.updateCallSignature(t,ensureTypeParams(t,t.typeParameters),updateParamsList(t,t.parameters),ensureType(t,t.type)))}case 162:{return cleanup(e.updateIndexSignature(t,undefined,ensureModifiers(t),updateParamsList(t,t.parameters),e.visitNode(t.type,visitDeclarationSubtree)||e.createKeywordTypeNode(120)))}case 237:{if(e.isBindingPattern(t.name)){return recreateBindingPattern(t.name)}c=true;g=true;return cleanup(e.updateVariableDeclaration(t,t.name,ensureType(t,t.type),ensureNoInitializer(t)))}case 150:{if(isPrivateMethodTypeParameter(t)&&(t.default||t.constraint)){return cleanup(e.updateTypeParameterDeclaration(t,t.name,undefined,undefined))}return cleanup(e.visitEachChild(t,visitDeclarationSubtree,r))}case 175:{var m=e.visitNode(t.checkType,visitDeclarationSubtree);var y=e.visitNode(t.extendsType,visitDeclarationSubtree);var h=l;l=t.trueType;var v=e.visitNode(t.trueType,visitDeclarationSubtree);l=h;var T=e.visitNode(t.falseType,visitDeclarationSubtree);return cleanup(e.updateConditionalTypeNode(t,m,y,v,T))}case 165:{return cleanup(e.updateFunctionTypeNode(t,e.visitNodes(t.typeParameters,visitDeclarationSubtree),updateParamsList(t,t.parameters),e.visitNode(t.type,visitDeclarationSubtree)))}case 166:{return cleanup(e.updateConstructorTypeNode(t,e.visitNodes(t.typeParameters,visitDeclarationSubtree),updateParamsList(t,t.parameters),e.visitNode(t.type,visitDeclarationSubtree)))}case 183:{if(!e.isLiteralImportTypeNode(t))return cleanup(t);return cleanup(e.updateImportTypeNode(t,e.updateLiteralTypeNode(t.argument,rewriteModuleSpecifier(t,t.argument.literal)),t.qualifier,e.visitNodes(t.typeArguments,visitDeclarationSubtree,e.isTypeNode),t.isTypeOf))}default:e.Debug.assertNever(t,"Attempted to process unhandled node kind: "+e.SyntaxKind[t.kind])}}return cleanup(e.visitEachChild(t,visitDeclarationSubtree,r));function cleanup(r){if(r&&o&&e.hasDynamicName(t)){checkName(t)}if(isEnclosingDeclaration(t)){l=n}if(o&&!g){i=a}if(c){g=s}if(r===t){return r}return r&&e.setOriginalNode(preserveJsDoc(r,t),t)}}function isPrivateMethodTypeParameter(t){return t.parent.kind===156&&e.hasModifier(t.parent,8)}function visitDeclarationStatements(r){if(!isPreservedDeclarationStatement(r)){return}if(shouldStripInternal(r))return;switch(r.kind){case 255:{if(e.isSourceFile(r.parent)){s=true;u=true}return e.updateExportDeclaration(r,undefined,r.modifiers,r.exportClause,rewriteModuleSpecifier(r,r.moduleSpecifier))}case 254:{if(e.isSourceFile(r.parent)){s=true;u=true}if(r.expression.kind===72){return r}else{var n=e.createOptimisticUniqueName("_default");i=function(){return{diagnosticMessage:e.Diagnostics.Default_export_of_the_module_has_or_is_using_private_name_0,errorNode:r}};var o=e.createVariableDeclaration(n,b.createTypeOfExpression(r.expression,r,t,y),undefined);var c=e.createVariableStatement(a?[e.createModifier(125)]:[],e.createVariableDeclarationList([o],2));return[c,e.updateExportAssignment(r,r.decorators,r.modifiers,n)]}}}var l=transformTopLevelDeclaration(r);p.set(""+e.getOriginalNodeId(r),l);return r}function transformTopLevelDeclaration(r,n){if(shouldStripInternal(r))return;switch(r.kind){case 248:{return transformImportEqualsDeclaration(r)}case 249:{return transformImportDeclaration(r)}}if(e.isDeclaration(r)&&isDeclarationAndNotVisible(r))return;if(e.isFunctionLike(r)&&b.isImplementationOfOverload(r))return;var o;if(isEnclosingDeclaration(r)){o=l;l=r}var s=e.canProduceDiagnostics(r);var c=i;if(s){i=e.createGetSymbolAccessibilityDiagnosticForNode(r)}var u=a;switch(r.kind){case 242:return cleanup(e.updateTypeAliasDeclaration(r,undefined,ensureModifiers(r,n),r.name,e.visitNodes(r.typeParameters,visitDeclarationSubtree,e.isTypeParameterDeclaration),e.visitNode(r.type,visitDeclarationSubtree,e.isTypeNode)));case 241:{return cleanup(e.updateInterfaceDeclaration(r,undefined,ensureModifiers(r,n),r.name,ensureTypeParams(r,r.typeParameters),transformHeritageClauses(r.heritageClauses),e.visitNodes(r.members,visitDeclarationSubtree)))}case 239:{var f=cleanup(e.updateFunctionDeclaration(r,undefined,ensureModifiers(r,n),undefined,r.name,ensureTypeParams(r,r.typeParameters),updateParamsList(r,r.parameters),ensureType(r,r.type),undefined));if(f&&b.isExpandoFunctionDeclaration(r)){var d=e.mapDefined(b.getPropertiesOfContainerFunction(r),function(r){if(!e.isPropertyAccessExpression(r.valueDeclaration)){return undefined}var n=b.createTypeOfDeclaration(r.valueDeclaration,l,t,y);var i=e.createVariableDeclaration(e.unescapeLeadingUnderscores(r.escapedName),n,undefined);return e.createVariableStatement(undefined,e.createVariableDeclarationList([i]))});var g=e.createModuleDeclaration(undefined,ensureModifiers(r,n),r.name,e.createModuleBlock(d),16);return[f,g]}else{return f}}case 244:{a=false;var _=r.body;if(_&&_.kind===245){var m=e.visitNodes(_.statements,visitDeclarationStatements);var h=e.updateModuleBlock(_,transformAndReplaceLatePaintedStatements(m));a=u;var v=ensureModifiers(r,n);return cleanup(e.updateModuleDeclaration(r,undefined,v,e.isExternalModuleAugmentation(r)?rewriteModuleSpecifier(r,r.name):r.name,h))}else{a=u;var v=ensureModifiers(r,n);a=false;e.visitNode(_,visitDeclarationStatements);var T=""+e.getOriginalNodeId(_);var h=p.get(T);p.delete(T);return cleanup(e.updateModuleDeclaration(r,undefined,v,r.name,h))}}case 240:{var S=e.createNodeArray(ensureModifiers(r,n));var x=ensureTypeParams(r,r.typeParameters);var C=e.getFirstConstructorWithBody(r);var E=void 0;if(C){var D=i;E=e.compact(e.flatMap(C.parameters,function(t){if(!e.hasModifier(t,92))return;i=e.createGetSymbolAccessibilityDiagnosticForNode(t);if(t.name.kind===72){return preserveJsDoc(e.createProperty(undefined,ensureModifiers(t),t.name,t.questionToken,ensureType(t,t.type),ensureNoInitializer(t)),t)}else{return walkBindingPattern(t.name)}function walkBindingPattern(r){var n;for(var i=0,a=r.elements;i<a.length;i++){var o=a[i];if(e.isOmittedExpression(o))continue;if(e.isBindingPattern(o.name)){n=e.concatenate(n,walkBindingPattern(o.name))}n=n||[];n.push(e.createProperty(undefined,ensureModifiers(t),o.name,undefined,ensureType(o,undefined),undefined))}return n}}));i=D}var k=e.createNodeArray(e.concatenate(E,e.visitNodes(r.members,visitDeclarationSubtree)));var N=e.getEffectiveBaseTypeNode(r);if(N&&!e.isEntityNameExpression(N.expression)&&N.expression.kind!==96){var A=e.createOptimisticUniqueName(e.unescapeLeadingUnderscores(r.name.escapedText)+"_base");i=function(){return{diagnosticMessage:e.Diagnostics.extends_clause_of_exported_class_0_has_or_is_using_private_name_1,errorNode:N,typeName:r.name}};var O=e.createVariableDeclaration(A,b.createTypeOfExpression(N.expression,r,t,y),undefined);var F=e.createVariableStatement(a?[e.createModifier(125)]:[],e.createVariableDeclarationList([O],2));var P=e.createNodeArray(e.map(r.heritageClauses,function(t){if(t.token===86){var r=i;i=e.createGetSymbolAccessibilityDiagnosticForNode(t.types[0]);var n=e.updateHeritageClause(t,e.map(t.types,function(t){return e.updateExpressionWithTypeArguments(t,e.visitNodes(t.typeArguments,visitDeclarationSubtree),A)}));i=r;return n}return e.updateHeritageClause(t,e.visitNodes(e.createNodeArray(e.filter(t.types,function(t){return e.isEntityNameExpression(t.expression)||t.expression.kind===96})),visitDeclarationSubtree))}));return[F,cleanup(e.updateClassDeclaration(r,undefined,S,r.name,x,P,k))]}else{var P=transformHeritageClauses(r.heritageClauses);return cleanup(e.updateClassDeclaration(r,undefined,S,r.name,x,P,k))}}case 219:{return cleanup(transformVariableStatement(r,n))}case 243:{return cleanup(e.updateEnumDeclaration(r,undefined,e.createNodeArray(ensureModifiers(r,n)),r.name,e.createNodeArray(e.mapDefined(r.members,function(t){if(shouldStripInternal(t))return;var r=b.getConstantValue(t);return preserveJsDoc(e.updateEnumMember(t,t.name,r!==undefined?e.createLiteral(r):undefined),t)}))))}}return e.Debug.assertNever(r,"Unhandled top-level node in declaration emit: "+e.SyntaxKind[r.kind]);function cleanup(t){if(isEnclosingDeclaration(r)){l=o}if(s){i=c}if(r.kind===244){a=u}if(t===r){return t}return t&&e.setOriginalNode(preserveJsDoc(t,r),r)}}function transformVariableStatement(t,r){if(!e.forEach(t.declarationList.declarations,getBindingNameVisible))return;var n=e.visitNodes(t.declarationList.declarations,visitDeclarationSubtree);if(!e.length(n))return;return e.updateVariableStatement(t,e.createNodeArray(ensureModifiers(t,r)),e.updateVariableDeclarationList(t.declarationList,n))}function recreateBindingPattern(t){return e.flatten(e.mapDefined(t.elements,function(e){return recreateBindingElement(e)}))}function recreateBindingElement(t){if(t.kind===210){return}if(t.name){if(!getBindingNameVisible(t))return;if(e.isBindingPattern(t.name)){return recreateBindingPattern(t.name)}else{return e.createVariableDeclaration(t.name,ensureType(t,undefined),undefined)}}}function checkName(t){var r;if(!g){r=i;i=e.createGetSymbolAccessibilityDiagnosticForNodeName(t)}h=t.name;e.Debug.assert(b.isLateBound(e.getParseTreeNode(t)));var n=t;var a=n.name.expression;checkEntityNameVisibility(a,l);if(!g){i=r}h=undefined}function hasInternalAnnotation(t){var r=v.text.substring(t.pos,t.end);return e.stringContains(r,"@internal")}function shouldStripInternal(t){if(D&&t){var r=e.getLeadingCommentRangesOfNode(e.getParseTreeNode(t),v);if(e.forEach(r,hasInternalAnnotation)){return true}}return false}function isScopeMarker(t){return e.isExportAssignment(t)||e.isExportDeclaration(t)}function hasScopeMarker(t){if(e.isModuleBlock(t)){return e.some(t.statements,isScopeMarker)}return false}function ensureModifiers(t,r){var n=e.getModifierFlags(t);var i=ensureModifierFlags(t,r);if(n===i){return t.modifiers}return e.createModifiersFromModifierFlags(i)}function ensureModifierFlags(t,r){var n=3071^(4|256);var i=a&&!isAlwaysType(t)?2:0;var s=t.parent.kind===279;if(!s||o&&s&&e.isExternalModule(t.parent)){n^=(r||o&&s||hasScopeMarker(t.parent)?0:1)|2;i=0}return maskModifierFlags(t,n,i)}function ensureAccessor(t){var r=b.getAllAccessorDeclarations(t);if(t.kind!==r.firstAccessor.kind){return}var n=getTypeAnnotationFromAccessor(t);if(!n&&r.secondAccessor){n=getTypeAnnotationFromAccessor(r.secondAccessor);i=e.createGetSymbolAccessibilityDiagnosticForNode(r.secondAccessor)}var a=e.createProperty(undefined,maskModifiers(t,undefined,!r.setAccessor?64:0),t.name,t.questionToken,ensureType(t,n),undefined);var o=r.secondAccessor&&e.getLeadingCommentRangesOfNode(r.secondAccessor,v);if(o){var s=function(t){if(t.kind===3){var r=v.text.slice(t.pos+2,t.end-2);var n=r.split(/\r\n?|\n/g);if(n.length>1){var i=n.slice(1);var o=e.guessIndentation(i);r=[n[0]].concat(e.map(i,function(e){return e.slice(o)})).join(C)}e.addSyntheticLeadingComment(a,t.kind,r,t.hasTrailingNewLine)}};for(var c=0,u=o;c<u.length;c++){var l=u[c];s(l)}}return a}function transformHeritageClauses(t){return e.createNodeArray(e.filter(e.map(t,function(t){return e.updateHeritageClause(t,e.visitNodes(e.createNodeArray(e.filter(t.types,function(r){return e.isEntityNameExpression(r.expression)||t.token===86&&r.expression.kind===96})),visitDeclarationSubtree))}),function(e){return e.types&&!!e.types.length}))}}e.transformDeclarations=transformDeclarations;function isAlwaysType(e){if(e.kind===241){return true}return false}function maskModifiers(t,r,n){return e.createModifiersFromModifierFlags(maskModifierFlags(t,r,n))}function maskModifierFlags(t,r,n){if(r===void 0){r=3071^4}if(n===void 0){n=0}var i=e.getModifierFlags(t)&r|n;if(i&512&&!(i&1)){i^=1}if(i&512&&i&2){i^=2}return i}function getTypeAnnotationFromAccessor(e){if(e){return e.kind===158?e.type:e.parameters.length>0?e.parameters[0].type:undefined}}function canHaveLiteralInitializer(t){switch(t.kind){case 154:case 153:return!e.hasModifier(t,8);case 151:case 237:return true}return false}function isPreservedDeclarationStatement(e){switch(e.kind){case 239:case 244:case 248:case 241:case 240:case 242:case 243:case 219:case 249:case 255:case 254:return true}return false}function isProcessedComponent(e){switch(e.kind){case 161:case 157:case 156:case 158:case 159:case 154:case 153:case 155:case 160:case 162:case 237:case 150:case 211:case 164:case 175:case 165:case 166:case 183:return true}return false}})(s||(s={}));var s;(function(e){function getModuleTransformer(t){switch(t){case e.ModuleKind.ESNext:case e.ModuleKind.ES2015:return e.transformES2015Module;case e.ModuleKind.System:return e.transformSystemModule;default:return e.transformModule}}var t;(function(e){e[e["Uninitialized"]=0]="Uninitialized";e[e["Initialized"]=1]="Initialized";e[e["Completed"]=2]="Completed";e[e["Disposed"]=3]="Disposed"})(t||(t={}));var r;(function(e){e[e["Substitution"]=1]="Substitution";e[e["EmitNotifications"]=2]="EmitNotifications"})(r||(r={}));function getTransformers(t,r){var n=t.jsx;var i=e.getEmitScriptTarget(t);var a=e.getEmitModuleKind(t);var o=[];e.addRange(o,r&&r.before);o.push(e.transformTypeScript);if(n===2){o.push(e.transformJsx)}if(i<6){o.push(e.transformESNext)}if(i<4){o.push(e.transformES2017)}if(i<3){o.push(e.transformES2016)}if(i<2){o.push(e.transformES2015);o.push(e.transformGenerators)}o.push(getModuleTransformer(a));if(i<1){o.push(e.transformES5)}e.addRange(o,r&&r.after);return o}e.getTransformers=getTransformers;function noEmitSubstitution(e,t){return t}e.noEmitSubstitution=noEmitSubstitution;function noEmitNotification(e,t,r){r(e,t)}e.noEmitNotification=noEmitNotification;function transformNodes(t,r,n,i,a,o){var s=new Array(312);var c;var u;var l=[];var f=[];var d=0;var p=false;var g;var _=noEmitSubstitution;var m=noEmitNotification;var y=0;var h=[];var v={getCompilerOptions:function(){return n},getEmitResolver:function(){return t},getEmitHost:function(){return r},startLexicalEnvironment:startLexicalEnvironment,suspendLexicalEnvironment:suspendLexicalEnvironment,resumeLexicalEnvironment:resumeLexicalEnvironment,endLexicalEnvironment:endLexicalEnvironment,hoistVariableDeclaration:hoistVariableDeclaration,hoistFunctionDeclaration:hoistFunctionDeclaration,requestEmitHelper:requestEmitHelper,readEmitHelpers:readEmitHelpers,enableSubstitution:enableSubstitution,enableEmitNotification:enableEmitNotification,isSubstitutionEnabled:isSubstitutionEnabled,isEmitNotificationEnabled:isEmitNotificationEnabled,get onSubstituteNode(){return _},set onSubstituteNode(t){e.Debug.assert(y<1,"Cannot modify transformation hooks after initialization has completed.");e.Debug.assert(t!==undefined,"Value must not be 'undefined'");_=t},get onEmitNode(){return m},set onEmitNode(t){e.Debug.assert(y<1,"Cannot modify transformation hooks after initialization has completed.");e.Debug.assert(t!==undefined,"Value must not be 'undefined'");m=t},addDiagnostic:function(e){h.push(e)}};for(var T=0,S=i;T<S.length;T++){var b=S[T];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(b)))}e.performance.mark("beforeTransform");var x=e.chain.apply(void 0,a)(v);y=1;var C=e.map(i,o?x:transformRoot);y=2;e.performance.mark("afterTransform");e.performance.measure("transformTime","beforeTransform","afterTransform");return{transformed:C,substituteNode:substituteNode,emitNodeWithNotification:emitNodeWithNotification,dispose:dispose,diagnostics:h};function transformRoot(t){return t&&(!e.isSourceFile(t)||!t.isDeclarationFile)?x(t):t}function enableSubstitution(t){e.Debug.assert(y<2,"Cannot modify the transformation context after transformation has completed.");s[t]|=1}function isSubstitutionEnabled(t){return(s[t.kind]&1)!==0&&(e.getEmitFlags(t)&4)===0}function substituteNode(t,r){e.Debug.assert(y<3,"Cannot substitute a node after the result is disposed.");return r&&isSubstitutionEnabled(r)&&_(t,r)||r}function enableEmitNotification(t){e.Debug.assert(y<2,"Cannot modify the transformation context after transformation has completed.");s[t]|=2}function isEmitNotificationEnabled(t){return(s[t.kind]&2)!==0||(e.getEmitFlags(t)&2)!==0}function emitNodeWithNotification(t,r,n){e.Debug.assert(y<3,"Cannot invoke TransformationResult callbacks after the result is disposed.");if(r){if(isEmitNotificationEnabled(r)){m(t,r,n)}else{n(t,r)}}}function hoistVariableDeclaration(t){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");var r=e.setEmitFlags(e.createVariableDeclaration(t),64);if(!c){c=[r]}else{c.push(r)}}function hoistFunctionDeclaration(t){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");if(!u){u=[t]}else{u.push(t)}}function startLexicalEnvironment(){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");e.Debug.assert(!p,"Lexical environment is suspended.");l[d]=c;f[d]=u;d++;c=undefined;u=undefined}function suspendLexicalEnvironment(){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");e.Debug.assert(!p,"Lexical environment is already suspended.");p=true}function resumeLexicalEnvironment(){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");e.Debug.assert(p,"Lexical environment is not suspended.");p=false}function endLexicalEnvironment(){e.Debug.assert(y>0,"Cannot modify the lexical environment during initialization.");e.Debug.assert(y<2,"Cannot modify the lexical environment after transformation has completed.");e.Debug.assert(!p,"Lexical environment is suspended.");var t;if(c||u){if(u){t=u.slice()}if(c){var r=e.createVariableStatement(undefined,e.createVariableDeclarationList(c));if(!t){t=[r]}else{t.push(r)}}}d--;c=l[d];u=f[d];if(d===0){l=[];f=[]}return t}function requestEmitHelper(t){e.Debug.assert(y>0,"Cannot modify the transformation context during initialization.");e.Debug.assert(y<2,"Cannot modify the transformation context after transformation has completed.");e.Debug.assert(!t.scoped,"Cannot request a scoped emit helper.");g=e.append(g,t)}function readEmitHelpers(){e.Debug.assert(y>0,"Cannot modify the transformation context during initialization.");e.Debug.assert(y<2,"Cannot modify the transformation context after transformation has completed.");var t=g;g=undefined;return t}function dispose(){if(y<3){for(var t=0,r=i;t<r.length;t++){var n=r[t];e.disposeEmitNodes(e.getSourceFileOfNode(e.getParseTreeNode(n)))}c=undefined;l=undefined;u=undefined;f=undefined;_=undefined;m=undefined;g=undefined;y=3}}}e.transformNodes=transformNodes})(s||(s={}));var s;(function(e){var t=".tsbundleinfo";var r=createBracketsMap();var n={pos:-1,end:-1};function forEachEmittedFile(t,r,n,i){if(i===void 0){i=false}var a=e.isArray(n)?n:e.getSourceFilesToEmit(t,n);var o=t.getCompilerOptions();if(o.outFile||o.out){if(a.length){var s=e.createBundle(a,t.getPrependNodes());var c=r(getOutputPathsFor(s,t,i),s);if(c){return c}}}else{for(var u=0,l=a;u<l.length;u++){var f=l[u];var c=r(getOutputPathsFor(f,t,i),f);if(c){return c}}}}e.forEachEmittedFile=forEachEmittedFile;function getOutputPathsFor(r,n,i){var a=n.getCompilerOptions();if(r.kind===280){var o=a.outFile||a.out;var s=a.emitDeclarationOnly?undefined:o;var c=s&&getSourceMapFilePath(s,a);var u=i||e.getEmitDeclarations(a)?e.removeFileExtension(o)+".d.ts":undefined;var l=u&&e.getAreDeclarationMapsEnabled(a)?u+".map":undefined;var f=a.references&&s?e.removeFileExtension(s)+t:undefined;return{jsFilePath:s,sourceMapFilePath:c,declarationFilePath:u,declarationMapPath:l,bundleInfoPath:f}}else{var d=e.getOwnEmitOutputFilePath(r.fileName,n,getOutputExtension(r,a));var p=e.isJsonSourceFile(r)&&e.comparePaths(r.fileName,d,n.getCurrentDirectory(),!n.useCaseSensitiveFileNames())===0;var s=a.emitDeclarationOnly||p?undefined:d;var c=!s||e.isJsonSourceFile(r)?undefined:getSourceMapFilePath(s,a);var g=e.isSourceFileJS(r);var u=(i||e.getEmitDeclarations(a))&&!g?e.getDeclarationEmitOutputFilePath(r.fileName,n):undefined;var l=u&&e.getAreDeclarationMapsEnabled(a)?u+".map":undefined;return{jsFilePath:s,sourceMapFilePath:c,declarationFilePath:u,declarationMapPath:l,bundleInfoPath:undefined}}}e.getOutputPathsFor=getOutputPathsFor;function getSourceMapFilePath(e,t){return t.sourceMap&&!t.inlineSourceMap?e+".map":undefined}function createDefaultBundleInfo(){return{originalOffset:-1,totalLength:-1}}function getOutputExtension(t,r){if(e.isJsonSourceFile(t)){return".json"}if(r.jsx===1){if(e.isSourceFileJS(t)){if(e.fileExtensionIs(t.fileName,".jsx")){return".jsx"}}else if(t.languageVariant===1){return".jsx"}}return".js"}e.getOutputExtension=getOutputExtension;function emitFiles(t,r,n,i,a,o){var s=r.getCompilerOptions();var c=s.sourceMap||s.inlineSourceMap||e.getAreDeclarationMapsEnabled(s)?[]:undefined;var u=s.listEmittedFiles?[]:undefined;var l=e.createDiagnosticCollection();var f=e.getNewLineCharacter(s,function(){return r.getNewLine()});var d=e.createTextWriter(f);var p=e.performance.createTimer("printTime","beforePrint","afterPrint"),g=p.enter,_=p.exit;var m=createDefaultBundleInfo();var y=false;var h;g();forEachEmittedFile(r,emitSourceFileOrBundle,e.getSourceFilesToEmit(r,n),i);_();return{emitSkipped:y,diagnostics:l.getDiagnostics(),emittedFiles:u,sourceMaps:c,exportedModulesFromDeclarationEmit:h};function emitSourceFileOrBundle(e,t){var r=e.jsFilePath,n=e.sourceMapFilePath,a=e.declarationFilePath,o=e.declarationMapPath,s=e.bundleInfoPath;emitJsFileOrBundle(t,r,n,s);emitDeclarationFileOrBundle(t,a,o);if(!y&&u){if(!i){if(r){u.push(r)}if(n){u.push(n)}if(s){u.push(s)}}if(a){u.push(a)}if(o){u.push(o)}}}function emitJsFileOrBundle(n,o,c,u){if(i||!o){return}if(o&&r.isEmitBlocked(o)||s.noEmit){y=true;return}var l=e.transformNodes(t,r,s,[n],a,false);var f={removeComments:s.removeComments,newLine:s.newLine,noEmitHelpers:s.noEmitHelpers,module:s.module,target:s.target,sourceMap:s.sourceMap,inlineSourceMap:s.inlineSourceMap,inlineSources:s.inlineSources,extendedDiagnostics:s.extendedDiagnostics};var d=createPrinter(f,{hasGlobalName:t.hasGlobalName,onEmitNode:l.emitNodeWithNotification,substituteNode:l.substituteNode});e.Debug.assert(l.transformed.length===1,"Should only see one output from the transform");printSourceFileOrBundle(o,c,l.transformed[0],u,d,s);l.dispose()}function emitDeclarationFileOrBundle(n,a,c){if(!(a&&!e.isInJSFile(n))){return}var u=e.isSourceFile(n)?[n]:n.sourceFiles;var f=e.filter(u,e.isSourceFileNotJS);var d=s.outFile||s.out?[e.createBundle(f,!e.isSourceFile(n)?n.prepends:undefined)]:f;if(i&&!e.getEmitDeclarations(s)){f.forEach(collectLinkedAliases)}var p=e.transformNodes(t,r,s,d,e.concatenate([e.transformDeclarations],o),false);if(e.length(p.diagnostics)){for(var g=0,_=p.diagnostics;g<_.length;g++){var m=_[g];l.add(m)}}var v={removeComments:s.removeComments,newLine:s.newLine,noEmitHelpers:true,module:s.module,target:s.target,sourceMap:s.sourceMap,inlineSourceMap:s.inlineSourceMap,extendedDiagnostics:s.extendedDiagnostics,onlyPrintJsDocStyle:true};var T=createPrinter(v,{hasGlobalName:t.hasGlobalName,onEmitNode:p.emitNodeWithNotification,substituteNode:p.substituteNode});var S=!!p.diagnostics&&!!p.diagnostics.length||!!r.isEmitBlocked(a)||!!s.noEmit;y=y||S;if(!S||i){e.Debug.assert(p.transformed.length===1,"Should only see one output from the decl transform");printSourceFileOrBundle(a,c,p.transformed[0],undefined,T,{sourceMap:s.declarationMap,sourceRoot:s.sourceRoot,mapRoot:s.mapRoot,extendedDiagnostics:s.extendedDiagnostics});if(i&&p.transformed[0].kind===279){var b=p.transformed[0];h=b.exportedModulesFromDeclarationEmit}}p.dispose()}function collectLinkedAliases(r){if(e.isExportAssignment(r)){if(r.expression.kind===72){t.collectLinkedAliases(r.expression,true)}return}else if(e.isExportSpecifier(r)){t.collectLinkedAliases(r.propertyName||r.name,true);return}e.forEachChild(r,collectLinkedAliases)}function printSourceFileOrBundle(t,n,i,a,o,u){var p=i.kind===280?i:undefined;var g=i.kind===279?i:undefined;var _=p?p.sourceFiles:[g];var y;if(shouldEmitSourceMaps(u,i)){y=e.createSourceMapGenerator(r,e.getBaseFileName(e.normalizeSlashes(t)),getSourceRoot(u),getSourceMapDirectory(u,t,g),u)}if(p){o.writeBundle(p,m,d,y)}else{o.writeFile(g,d,y)}if(y){if(c){c.push({inputSourceFileNames:y.getSources(),sourceMap:y.toJSON()})}var h=getSourceMappingURL(u,y,t,n,g);if(h){if(!d.isAtStartOfLine())d.rawWrite(f);d.writeComment("//# "+"sourceMappingURL"+"="+h)}if(n){var v=y.toString();e.writeFile(r,l,n,v,false,_)}}else{d.writeLine()}e.writeFile(r,l,t,d.getText(),!!s.emitBOM,_);if(a){m.totalLength=d.getTextPos();e.writeFile(r,l,a,JSON.stringify(m,undefined,2),false)}d.clear();m=createDefaultBundleInfo()}function shouldEmitSourceMaps(t,r){return(t.sourceMap||t.inlineSourceMap)&&(r.kind!==279||!e.fileExtensionIs(r.fileName,".json"))}function getSourceRoot(t){var r=e.normalizeSlashes(t.sourceRoot||"");return r?e.ensureTrailingDirectorySeparator(r):r}function getSourceMapDirectory(t,n,i){if(t.sourceRoot)return r.getCommonSourceDirectory();if(t.mapRoot){var a=e.normalizeSlashes(t.mapRoot);if(i){a=e.getDirectoryPath(e.getSourceFilePathInNewDir(i.fileName,r,a))}if(e.getRootLength(a)===0){a=e.combinePaths(r.getCommonSourceDirectory(),a)}return a}return e.getDirectoryPath(e.normalizePath(n))}function getSourceMappingURL(t,n,i,a,o){if(t.inlineSourceMap){var s=n.toString();var c=e.base64encode(e.sys,s);return"data:application/json;base64,"+c}var u=e.getBaseFileName(e.normalizeSlashes(e.Debug.assertDefined(a)));if(t.mapRoot){var l=e.normalizeSlashes(t.mapRoot);if(o){l=e.getDirectoryPath(e.getSourceFilePathInNewDir(o.fileName,r,l))}if(e.getRootLength(l)===0){l=e.combinePaths(r.getCommonSourceDirectory(),l);return e.getRelativePathToDirectoryOrUrl(e.getDirectoryPath(e.normalizePath(i)),e.combinePaths(l,u),r.getCurrentDirectory(),r.getCanonicalFileName,true)}else{return e.combinePaths(l,u)}}return u}}e.emitFiles=emitFiles;var i;(function(e){e[e["Notification"]=0]="Notification";e[e["Substitution"]=1]="Substitution";e[e["Comments"]=2]="Comments";e[e["SourceMaps"]=3]="SourceMaps";e[e["Emit"]=4]="Emit"})(i||(i={}));function createPrinter(t,r){if(t===void 0){t={}}if(r===void 0){r={}}var i=r.hasGlobalName,a=r.onEmitNode,o=a===void 0?e.noEmitNotification:a,s=r.substituteNode,c=s===void 0?e.noEmitSubstitution:s,u=r.onBeforeEmitNodeArray,l=r.onAfterEmitNodeArray,f=r.onBeforeEmitToken,d=r.onAfterEmitToken;var p=!!t.extendedDiagnostics;var g=e.getNewLineCharacter(t);var _=e.getEmitModuleKind(t);var m=e.createMap();var y;var h;var v;var T;var S;var b;var x;var C;var E;var D;var k=writeBase;var N;var A=true;var O;var F;var P=-1;var I=-1;var w=-1;var M=-1;var L;var R;var B=false;var j=!!t.removeComments;var J=e.performance.createTimerIf(p,"commentTime","beforeComment","afterComment"),W=J.enter,U=J.exit;reset();return{printNode:printNode,printList:printList,printFile:printFile,printBundle:printBundle,writeNode:writeNode,writeList:writeList,writeFile:writeFile,writeBundle:writeBundle};function printNode(t,r,n){switch(t){case 0:e.Debug.assert(e.isSourceFile(r),"Expected a SourceFile node.");break;case 2:e.Debug.assert(e.isIdentifier(r),"Expected an Identifier node.");break;case 1:e.Debug.assert(e.isExpression(r),"Expected an Expression node.");break}switch(r.kind){case 279:return printFile(r);case 280:return printBundle(r);case 281:return printUnparsedSource(r)}writeNode(t,r,n,beginPrint());return endPrint()}function printList(e,t,r){writeList(e,t,r,beginPrint());return endPrint()}function printBundle(e){writeBundle(e,undefined,beginPrint(),undefined);return endPrint()}function printFile(e){writeFile(e,beginPrint(),undefined);return endPrint()}function printUnparsedSource(e){writeUnparsedSource(e,beginPrint());return endPrint()}function writeNode(e,t,r,n){var i=E;setWriter(n,undefined);print(e,t,r);reset();E=i}function writeList(e,t,r,i){var a=E;setWriter(i,undefined);if(r){setSourceFile(r)}emitList(n,t,e);reset();E=a}function writeBundle(e,t,r,n){N=false;var i=E;setWriter(r,n);emitShebangIfNeeded(e);emitPrologueDirectivesIfNeeded(e);emitHelpers(e);emitSyntheticTripleSlashReferencesIfNeeded(e);for(var a=0,o=e.prepends;a<o.length;a++){var s=o[a];writeLine();print(4,s,undefined)}if(t){t.originalOffset=E.getTextPos()}for(var c=0,u=e.sourceFiles;c<u.length;c++){var l=u[c];print(0,l,l)}reset();E=i}function writeUnparsedSource(e,t){var r=E;setWriter(t,undefined);print(4,e,undefined);reset();E=r}function writeFile(e,t,r){N=true;var n=E;setWriter(t,r);emitShebangIfNeeded(e);emitPrologueDirectivesIfNeeded(e);print(0,e,e);reset();E=n}function beginPrint(){return D||(D=e.createTextWriter(g))}function endPrint(){var e=D.getText();D.clear();return e}function print(e,t,r){if(r){setSourceFile(r)}var n=getPipelinePhase(0,t);n(e,t)}function setSourceFile(e){y=e;L=undefined;R=undefined;if(e){setSourceMapSource(e)}}function setWriter(r,n){if(r&&t.omitTrailingSemicolon){r=e.getTrailingSemicolonOmittingWriter(r)}E=r;O=n;A=!E||!O}function reset(){h=[];v=[];T=e.createMap();S=[];b=0;x=[];y=undefined;L=undefined;R=undefined;setWriter(undefined,undefined)}function getCurrentLineMap(){return L||(L=e.getLineStarts(y))}function emit(e){if(e===undefined)return;var t=getPipelinePhase(0,e);t(4,e)}function emitIdentifierName(e){if(e===undefined)return;var t=getPipelinePhase(0,e);t(2,e)}function emitExpression(e){if(e===undefined)return;var t=getPipelinePhase(0,e);t(1,e)}function getPipelinePhase(t,r){switch(t){case 0:if(o!==e.noEmitNotification){return pipelineEmitWithNotification}case 1:if(c!==e.noEmitSubstitution){return pipelineEmitWithSubstitution}case 2:if(!j&&r.kind!==279){return pipelineEmitWithComments}case 3:if(!A&&r.kind!==279&&!e.isInJsonFile(r)){return pipelineEmitWithSourceMap}case 4:return pipelineEmitWithHint;default:return e.Debug.assertNever(t)}}function getNextPipelinePhase(e,t){return getPipelinePhase(e+1,t)}function pipelineEmitWithNotification(e,t){var r=getNextPipelinePhase(0,t);o(e,t,r)}function pipelineEmitWithHint(t,r){if(t===0)return emitSourceFile(e.cast(r,e.isSourceFile));if(t===2)return emitIdentifier(e.cast(r,e.isIdentifier));if(t===3)return emitMappedTypeParameter(e.cast(r,e.isTypeParameterDeclaration));if(t===5){e.Debug.assertNode(r,e.isEmptyStatement);return emitEmptyStatement(true)}if(t===4){if(e.isKeyword(r.kind))return writeTokenNode(r,writeKeyword);switch(r.kind){case 15:case 16:case 17:return emitLiteral(r);case 281:return emitUnparsedSource(r);case 72:return emitIdentifier(r);case 148:return emitQualifiedName(r);case 149:return emitComputedPropertyName(r);case 150:return emitTypeParameter(r);case 151:return emitParameter(r);case 152:return emitDecorator(r);case 153:return emitPropertySignature(r);case 154:return emitPropertyDeclaration(r);case 155:return emitMethodSignature(r);case 156:return emitMethodDeclaration(r);case 157:return emitConstructor(r);case 158:case 159:return emitAccessorDeclaration(r);case 160:return emitCallSignature(r);case 161:return emitConstructSignature(r);case 162:return emitIndexSignature(r);case 163:return emitTypePredicate(r);case 164:return emitTypeReference(r);case 165:return emitFunctionType(r);case 289:return emitJSDocFunctionType(r);case 166:return emitConstructorType(r);case 167:return emitTypeQuery(r);case 168:return emitTypeLiteral(r);case 169:return emitArrayType(r);case 170:return emitTupleType(r);case 171:return emitOptionalType(r);case 173:return emitUnionType(r);case 174:return emitIntersectionType(r);case 175:return emitConditionalType(r);case 176:return emitInferType(r);case 177:return emitParenthesizedType(r);case 211:return emitExpressionWithTypeArguments(r);case 178:return emitThisType();case 179:return emitTypeOperator(r);case 180:return emitIndexedAccessType(r);case 181:return emitMappedType(r);case 182:return emitLiteralType(r);case 183:return emitImportTypeNode(r);case 284:writePunctuation("*");return;case 285:writePunctuation("?");return;case 286:return emitJSDocNullableType(r);case 287:return emitJSDocNonNullableType(r);case 288:return emitJSDocOptionalType(r);case 172:case 290:return emitRestOrJSDocVariadicType(r);case 184:return emitObjectBindingPattern(r);case 185:return emitArrayBindingPattern(r);case 186:return emitBindingElement(r);case 216:return emitTemplateSpan(r);case 217:return emitSemicolonClassElement();case 218:return emitBlock(r);case 219:return emitVariableStatement(r);case 220:return emitEmptyStatement(false);case 221:return emitExpressionStatement(r);case 222:return emitIfStatement(r);case 223:return emitDoStatement(r);case 224:return emitWhileStatement(r);case 225:return emitForStatement(r);case 226:return emitForInStatement(r);case 227:return emitForOfStatement(r);case 228:return emitContinueStatement(r);case 229:return emitBreakStatement(r);case 230:return emitReturnStatement(r);case 231:return emitWithStatement(r);case 232:return emitSwitchStatement(r);case 233:return emitLabeledStatement(r);case 234:return emitThrowStatement(r);case 235:return emitTryStatement(r);case 236:return emitDebuggerStatement(r);case 237:return emitVariableDeclaration(r);case 238:return emitVariableDeclarationList(r);case 239:return emitFunctionDeclaration(r);case 240:return emitClassDeclaration(r);case 241:return emitInterfaceDeclaration(r);case 242:return emitTypeAliasDeclaration(r);case 243:return emitEnumDeclaration(r);case 244:return emitModuleDeclaration(r);case 245:return emitModuleBlock(r);case 246:return emitCaseBlock(r);case 247:return emitNamespaceExportDeclaration(r);case 248:return emitImportEqualsDeclaration(r);case 249:return emitImportDeclaration(r);case 250:return emitImportClause(r);case 251:return emitNamespaceImport(r);case 252:return emitNamedImports(r);case 253:return emitImportSpecifier(r);case 254:return emitExportAssignment(r);case 255:return emitExportDeclaration(r);case 256:return emitNamedExports(r);case 257:return emitExportSpecifier(r);case 258:return;case 259:return emitExternalModuleReference(r);case 11:return emitJsxText(r);case 262:case 265:return emitJsxOpeningElementOrFragment(r);case 263:case 266:return emitJsxClosingElementOrFragment(r);case 267:return emitJsxAttribute(r);case 268:return emitJsxAttributes(r);case 269:return emitJsxSpreadAttribute(r);case 270:return emitJsxExpression(r);case 271:return emitCaseClause(r);case 272:return emitDefaultClause(r);case 273:return emitHeritageClause(r);case 274:return emitCatchClause(r);case 275:return emitPropertyAssignment(r);case 276:return emitShorthandPropertyAssignment(r);case 277:return emitSpreadAssignment(r);case 278:return emitEnumMember(r);case 299:case 305:return emitJSDocPropertyLikeTag(r);case 300:case 302:case 301:case 298:return emitJSDocSimpleTypedTag(r);case 295:return emitJSDocAugmentsTag(r);case 303:return emitJSDocTemplateTag(r);case 304:return emitJSDocTypedefTag(r);case 297:return emitJSDocCallbackTag(r);case 293:return emitJSDocSignature(r);case 292:return emitJSDocTypeLiteral(r);case 296:case 294:return emitJSDocSimpleTag(r);case 291:return emitJSDoc(r)}if(e.isExpression(r)){t=1;if(c!==e.noEmitSubstitution){r=c(t,r)}}else if(e.isToken(r)){return writeTokenNode(r,writePunctuation)}}if(t===1){switch(r.kind){case 8:case 9:return emitNumericOrBigIntLiteral(r);case 10:case 13:case 14:return emitLiteral(r);case 72:return emitIdentifier(r);case 87:case 96:case 98:case 102:case 100:case 92:writeTokenNode(r,writeKeyword);return;case 187:return emitArrayLiteralExpression(r);case 188:return emitObjectLiteralExpression(r);case 189:return emitPropertyAccessExpression(r);case 190:return emitElementAccessExpression(r);case 191:return emitCallExpression(r);case 192:return emitNewExpression(r);case 193:return emitTaggedTemplateExpression(r);case 194:return emitTypeAssertionExpression(r);case 195:return emitParenthesizedExpression(r);case 196:return emitFunctionExpression(r);case 197:return emitArrowFunction(r);case 198:return emitDeleteExpression(r);case 199:return emitTypeOfExpression(r);case 200:return emitVoidExpression(r);case 201:return emitAwaitExpression(r);case 202:return emitPrefixUnaryExpression(r);case 203:return emitPostfixUnaryExpression(r);case 204:return emitBinaryExpression(r);case 205:return emitConditionalExpression(r);case 206:return emitTemplateExpression(r);case 207:return emitYieldExpression(r);case 208:return emitSpreadExpression(r);case 209:return emitClassExpression(r);case 210:return;case 212:return emitAsExpression(r);case 213:return emitNonNullExpression(r);case 214:return emitMetaProperty(r);case 260:return emitJsxElement(r);case 261:return emitJsxSelfClosingElement(r);case 264:return emitJsxFragment(r);case 308:return emitPartiallyEmittedExpression(r);case 309:return emitCommaList(r)}}}function emitMappedTypeParameter(e){emit(e.name);writeSpace();writeKeyword("in");writeSpace();emit(e.constraint)}function pipelineEmitWithSubstitution(e,t){var r=getNextPipelinePhase(1,t);r(e,c(e,t))}function emitHelpers(r){var n=false;var i=r.kind===280?r:undefined;if(i&&_===e.ModuleKind.None){return}var a=i?i.sourceFiles.length:1;for(var o=0;o<a;o++){var s=i?i.sourceFiles[o]:r;var c=e.isSourceFile(s)?s:y;var u=t.noEmitHelpers||e.getExternalHelpersModuleName(c)!==undefined;var l=e.isSourceFile(s)&&!N;var f=e.getEmitHelpers(s);if(f){for(var d=0,p=e.stableSort(f,e.compareEmitHelpers);d<p.length;d++){var g=p[d];if(!g.scoped){if(u)continue;if(l){if(m.get(g.name)){continue}m.set(g.name,true)}}else if(i){continue}if(typeof g.text==="string"){writeLines(g.text)}else{writeLines(g.text(makeFileLevelOptimisticUniqueName))}n=true}}}return n}function emitNumericOrBigIntLiteral(e){emitLiteral(e)}function emitLiteral(r){var n=getLiteralTextOfNode(r,t.neverAsciiEscape);if((t.sourceMap||t.inlineSourceMap)&&(r.kind===10||e.isTemplateLiteralKind(r.kind))){writeLiteral(n)}else{writeStringLiteral(n)}}function emitUnparsedSource(e){E.rawWrite(e.text)}function emitIdentifier(e){var t=e.symbol?writeSymbol:k;t(getTextOfNode(e,false),e.symbol);emitList(e,e.typeArguments,53776)}function emitQualifiedName(e){emitEntityName(e.left);writePunctuation(".");emit(e.right)}function emitEntityName(e){if(e.kind===72){emitExpression(e)}else{emit(e)}}function emitComputedPropertyName(e){writePunctuation("[");emitExpression(e.expression);writePunctuation("]")}function emitTypeParameter(e){emit(e.name);if(e.constraint){writeSpace();writeKeyword("extends");writeSpace();emit(e.constraint)}if(e.default){writeSpace();writeOperator("=");writeSpace();emit(e.default)}}function emitParameter(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emit(e.dotDotDotToken);emitNodeWithWriter(e.name,writeParameter);emit(e.questionToken);if(e.parent&&e.parent.kind===289&&!e.name){emit(e.type)}else{emitTypeAnnotation(e.type)}emitInitializer(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name?e.name.end:e.modifiers?e.modifiers.end:e.decorators?e.decorators.end:e.pos,e)}function emitDecorator(e){writePunctuation("@");emitExpression(e.expression)}function emitPropertySignature(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emitNodeWithWriter(e.name,writeProperty);emit(e.questionToken);emitTypeAnnotation(e.type);writeTrailingSemicolon()}function emitPropertyDeclaration(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emit(e.name);emit(e.questionToken);emit(e.exclamationToken);emitTypeAnnotation(e.type);emitInitializer(e.initializer,e.type?e.type.end:e.questionToken?e.questionToken.end:e.name.end,e);writeTrailingSemicolon()}function emitMethodSignature(e){pushNameGenerationScope(e);emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emit(e.name);emit(e.questionToken);emitTypeParameters(e,e.typeParameters);emitParameters(e,e.parameters);emitTypeAnnotation(e.type);writeTrailingSemicolon();popNameGenerationScope(e)}function emitMethodDeclaration(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emit(e.asteriskToken);emit(e.name);emit(e.questionToken);emitSignatureAndBody(e,emitSignatureHead)}function emitConstructor(e){emitModifiers(e,e.modifiers);writeKeyword("constructor");emitSignatureAndBody(e,emitSignatureHead)}function emitAccessorDeclaration(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);writeKeyword(e.kind===158?"get":"set");writeSpace();emit(e.name);emitSignatureAndBody(e,emitSignatureHead)}function emitCallSignature(e){pushNameGenerationScope(e);emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emitTypeParameters(e,e.typeParameters);emitParameters(e,e.parameters);emitTypeAnnotation(e.type);writeTrailingSemicolon();popNameGenerationScope(e)}function emitConstructSignature(e){pushNameGenerationScope(e);emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);writeKeyword("new");writeSpace();emitTypeParameters(e,e.typeParameters);emitParameters(e,e.parameters);emitTypeAnnotation(e.type);writeTrailingSemicolon();popNameGenerationScope(e)}function emitIndexSignature(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emitParametersForIndexSignature(e,e.parameters);emitTypeAnnotation(e.type);writeTrailingSemicolon()}function emitSemicolonClassElement(){writeTrailingSemicolon()}function emitTypePredicate(e){emit(e.parameterName);writeSpace();writeKeyword("is");writeSpace();emit(e.type)}function emitTypeReference(e){emit(e.typeName);emitTypeArguments(e,e.typeArguments)}function emitFunctionType(e){pushNameGenerationScope(e);emitTypeParameters(e,e.typeParameters);emitParametersForArrow(e,e.parameters);writeSpace();writePunctuation("=>");writeSpace();emit(e.type);popNameGenerationScope(e)}function emitJSDocFunctionType(e){writeKeyword("function");emitParameters(e,e.parameters);writePunctuation(":");emit(e.type)}function emitJSDocNullableType(e){writePunctuation("?");emit(e.type)}function emitJSDocNonNullableType(e){writePunctuation("!");emit(e.type)}function emitJSDocOptionalType(e){emit(e.type);writePunctuation("=")}function emitConstructorType(e){pushNameGenerationScope(e);writeKeyword("new");writeSpace();emitTypeParameters(e,e.typeParameters);emitParameters(e,e.parameters);writeSpace();writePunctuation("=>");writeSpace();emit(e.type);popNameGenerationScope(e)}function emitTypeQuery(e){writeKeyword("typeof");writeSpace();emit(e.exprName)}function emitTypeLiteral(t){writePunctuation("{");var r=e.getEmitFlags(t)&1?768:32897;emitList(t,t.members,r|524288);writePunctuation("}")}function emitArrayType(e){emit(e.elementType);writePunctuation("[");writePunctuation("]")}function emitRestOrJSDocVariadicType(e){writePunctuation("...");emit(e.type)}function emitTupleType(e){writePunctuation("[");emitList(e,e.elementTypes,528);writePunctuation("]")}function emitOptionalType(e){emit(e.type);writePunctuation("?")}function emitUnionType(e){emitList(e,e.types,516)}function emitIntersectionType(e){emitList(e,e.types,520)}function emitConditionalType(e){emit(e.checkType);writeSpace();writeKeyword("extends");writeSpace();emit(e.extendsType);writeSpace();writePunctuation("?");writeSpace();emit(e.trueType);writeSpace();writePunctuation(":");writeSpace();emit(e.falseType)}function emitInferType(e){writeKeyword("infer");writeSpace();emit(e.typeParameter)}function emitParenthesizedType(e){writePunctuation("(");emit(e.type);writePunctuation(")")}function emitThisType(){writeKeyword("this")}function emitTypeOperator(e){writeTokenText(e.operator,writeKeyword);writeSpace();emit(e.type)}function emitIndexedAccessType(e){emit(e.objectType);writePunctuation("[");emit(e.indexType);writePunctuation("]")}function emitMappedType(t){var r=e.getEmitFlags(t);writePunctuation("{");if(r&1){writeSpace()}else{writeLine();increaseIndent()}if(t.readonlyToken){emit(t.readonlyToken);if(t.readonlyToken.kind!==133){writeKeyword("readonly")}writeSpace()}writePunctuation("[");var n=getPipelinePhase(0,t.typeParameter);n(3,t.typeParameter);writePunctuation("]");if(t.questionToken){emit(t.questionToken);if(t.questionToken.kind!==56){writePunctuation("?")}}writePunctuation(":");writeSpace();emit(t.type);writeTrailingSemicolon();if(r&1){writeSpace()}else{writeLine();decreaseIndent()}writePunctuation("}")}function emitLiteralType(e){emitExpression(e.literal)}function emitImportTypeNode(e){if(e.isTypeOf){writeKeyword("typeof");writeSpace()}writeKeyword("import");writePunctuation("(");emit(e.argument);writePunctuation(")");if(e.qualifier){writePunctuation(".");emit(e.qualifier)}emitTypeArguments(e,e.typeArguments)}function emitObjectBindingPattern(e){writePunctuation("{");emitList(e,e.elements,525136);writePunctuation("}")}function emitArrayBindingPattern(e){writePunctuation("[");emitList(e,e.elements,524880);writePunctuation("]")}function emitBindingElement(e){emit(e.dotDotDotToken);if(e.propertyName){emit(e.propertyName);writePunctuation(":");writeSpace()}emit(e.name);emitInitializer(e.initializer,e.name.end,e)}function emitArrayLiteralExpression(e){var t=e.elements;var r=e.multiLine?65536:0;emitExpressionList(e,t,8914|r)}function emitObjectLiteralExpression(t){e.forEach(t.properties,generateMemberNames);var r=e.getEmitFlags(t)&65536;if(r){increaseIndent()}var n=t.multiLine?65536:0;var i=y.languageVersion>=1&&!e.isJsonSourceFile(y)?64:0;emitList(t,t.properties,526226|i|n);if(r){decreaseIndent()}}function emitPropertyAccessExpression(t){var r=false;var n=false;if(!(e.getEmitFlags(t)&131072)){var i=t.expression.end;var a=e.skipTrivia(y.text,t.expression.end)+1;var o=e.createToken(24);o.pos=i;o.end=a;r=needsIndentation(t,t.expression,o);n=needsIndentation(t,o,t.name)}emitExpression(t.expression);increaseIndentIf(r,false);var s=!r&&needsDotDotForPropertyAccess(t.expression);if(s){writePunctuation(".")}emitTokenWithComment(24,t.expression.end,writePunctuation,t);increaseIndentIf(n,false);emit(t.name);decreaseIndentIf(r,n)}function needsDotDotForPropertyAccess(r){r=e.skipPartiallyEmittedExpressions(r);if(e.isNumericLiteral(r)){var n=getLiteralTextOfNode(r,true);return!r.numericLiteralFlags&&!e.stringContains(n,e.tokenToString(24))}else if(e.isPropertyAccessExpression(r)||e.isElementAccessExpression(r)){var i=e.getConstantValue(r);return typeof i==="number"&&isFinite(i)&&Math.floor(i)===i&&t.removeComments}}function emitElementAccessExpression(e){emitExpression(e.expression);emitTokenWithComment(22,e.expression.end,writePunctuation,e);emitExpression(e.argumentExpression);emitTokenWithComment(23,e.argumentExpression.end,writePunctuation,e)}function emitCallExpression(e){emitExpression(e.expression);emitTypeArguments(e,e.typeArguments);emitExpressionList(e,e.arguments,2576)}function emitNewExpression(e){emitTokenWithComment(95,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression);emitTypeArguments(e,e.typeArguments);emitExpressionList(e,e.arguments,18960)}function emitTaggedTemplateExpression(e){emitExpression(e.tag);emitTypeArguments(e,e.typeArguments);writeSpace();emitExpression(e.template)}function emitTypeAssertionExpression(e){writePunctuation("<");emit(e.type);writePunctuation(">");emitExpression(e.expression)}function emitParenthesizedExpression(e){var t=emitTokenWithComment(20,e.pos,writePunctuation,e);emitExpression(e.expression);emitTokenWithComment(21,e.expression?e.expression.end:t,writePunctuation,e)}function emitFunctionExpression(e){generateNameIfNeeded(e.name);emitFunctionDeclarationOrExpression(e)}function emitArrowFunction(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);emitSignatureAndBody(e,emitArrowFunctionHead)}function emitArrowFunctionHead(e){emitTypeParameters(e,e.typeParameters);emitParametersForArrow(e,e.parameters);emitTypeAnnotation(e.type);writeSpace();emit(e.equalsGreaterThanToken)}function emitDeleteExpression(e){emitTokenWithComment(81,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression)}function emitTypeOfExpression(e){emitTokenWithComment(104,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression)}function emitVoidExpression(e){emitTokenWithComment(106,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression)}function emitAwaitExpression(e){emitTokenWithComment(122,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression)}function emitPrefixUnaryExpression(e){writeTokenText(e.operator,writeOperator);if(shouldEmitWhitespaceBeforeOperand(e)){writeSpace()}emitExpression(e.operand)}function shouldEmitWhitespaceBeforeOperand(e){var t=e.operand;return t.kind===202&&(e.operator===38&&(t.operator===38||t.operator===44)||e.operator===39&&(t.operator===39||t.operator===45))}function emitPostfixUnaryExpression(e){emitExpression(e.operand);writeTokenText(e.operator,writeOperator)}function emitBinaryExpression(e){var t=e.operatorToken.kind!==27;var r=needsIndentation(e,e.left,e.operatorToken);var n=needsIndentation(e,e.operatorToken,e.right);emitExpression(e.left);increaseIndentIf(r,t);emitLeadingCommentsOfPosition(e.operatorToken.pos);writeTokenNode(e.operatorToken,e.operatorToken.kind===93?writeKeyword:writeOperator);emitTrailingCommentsOfPosition(e.operatorToken.end,true);increaseIndentIf(n,true);emitExpression(e.right);decreaseIndentIf(r,n)}function emitConditionalExpression(e){var t=needsIndentation(e,e.condition,e.questionToken);var r=needsIndentation(e,e.questionToken,e.whenTrue);var n=needsIndentation(e,e.whenTrue,e.colonToken);var i=needsIndentation(e,e.colonToken,e.whenFalse);emitExpression(e.condition);increaseIndentIf(t,true);emit(e.questionToken);increaseIndentIf(r,true);emitExpression(e.whenTrue);decreaseIndentIf(t,r);increaseIndentIf(n,true);emit(e.colonToken);increaseIndentIf(i,true);emitExpression(e.whenFalse);decreaseIndentIf(n,i)}function emitTemplateExpression(e){emit(e.head);emitList(e,e.templateSpans,262144)}function emitYieldExpression(e){emitTokenWithComment(117,e.pos,writeKeyword,e);emit(e.asteriskToken);emitExpressionWithLeadingSpace(e.expression)}function emitSpreadExpression(e){emitTokenWithComment(25,e.pos,writePunctuation,e);emitExpression(e.expression)}function emitClassExpression(e){generateNameIfNeeded(e.name);emitClassDeclarationOrExpression(e)}function emitExpressionWithTypeArguments(e){emitExpression(e.expression);emitTypeArguments(e,e.typeArguments)}function emitAsExpression(e){emitExpression(e.expression);if(e.type){writeSpace();writeKeyword("as");writeSpace();emit(e.type)}}function emitNonNullExpression(e){emitExpression(e.expression);writeOperator("!")}function emitMetaProperty(e){writeToken(e.keywordToken,e.pos,writePunctuation);writePunctuation(".");emit(e.name)}function emitTemplateSpan(e){emitExpression(e.expression);emit(e.literal)}function emitBlock(e){emitBlockStatements(e,!e.multiLine&&isEmptyBlock(e))}function emitBlockStatements(t,r){emitTokenWithComment(18,t.pos,writePunctuation,t);var n=r||e.getEmitFlags(t)&1?768:129;emitList(t,t.statements,n);emitTokenWithComment(19,t.statements.end,writePunctuation,t,!!(n&1))}function emitVariableStatement(e){emitModifiers(e,e.modifiers);emit(e.declarationList);writeTrailingSemicolon()}function emitEmptyStatement(e){if(e){writePunctuation(";")}else{writeTrailingSemicolon()}}function emitExpressionStatement(t){emitExpression(t.expression);if(!e.isJsonSourceFile(y)||e.nodeIsSynthesized(t.expression)){writeTrailingSemicolon()}}function emitIfStatement(e){var t=emitTokenWithComment(91,e.pos,writeKeyword,e);writeSpace();emitTokenWithComment(20,t,writePunctuation,e);emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e);emitEmbeddedStatement(e,e.thenStatement);if(e.elseStatement){writeLineOrSpace(e);emitTokenWithComment(83,e.thenStatement.end,writeKeyword,e);if(e.elseStatement.kind===222){writeSpace();emit(e.elseStatement)}else{emitEmbeddedStatement(e,e.elseStatement)}}}function emitWhileClause(e,t){var r=emitTokenWithComment(107,t,writeKeyword,e);writeSpace();emitTokenWithComment(20,r,writePunctuation,e);emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e)}function emitDoStatement(t){emitTokenWithComment(82,t.pos,writeKeyword,t);emitEmbeddedStatement(t,t.statement);if(e.isBlock(t.statement)){writeSpace()}else{writeLineOrSpace(t)}emitWhileClause(t,t.statement.end);writePunctuation(";")}function emitWhileStatement(e){emitWhileClause(e,e.pos);emitEmbeddedStatement(e,e.statement)}function emitForStatement(e){var t=emitTokenWithComment(89,e.pos,writeKeyword,e);writeSpace();var r=emitTokenWithComment(20,t,writePunctuation,e);emitForBinding(e.initializer);r=emitTokenWithComment(26,e.initializer?e.initializer.end:r,writePunctuation,e);emitExpressionWithLeadingSpace(e.condition);r=emitTokenWithComment(26,e.condition?e.condition.end:r,writePunctuation,e);emitExpressionWithLeadingSpace(e.incrementor);emitTokenWithComment(21,e.incrementor?e.incrementor.end:r,writePunctuation,e);emitEmbeddedStatement(e,e.statement)}function emitForInStatement(e){var t=emitTokenWithComment(89,e.pos,writeKeyword,e);writeSpace();emitTokenWithComment(20,t,writePunctuation,e);emitForBinding(e.initializer);writeSpace();emitTokenWithComment(93,e.initializer.end,writeKeyword,e);writeSpace();emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e);emitEmbeddedStatement(e,e.statement)}function emitForOfStatement(e){var t=emitTokenWithComment(89,e.pos,writeKeyword,e);writeSpace();emitWithTrailingSpace(e.awaitModifier);emitTokenWithComment(20,t,writePunctuation,e);emitForBinding(e.initializer);writeSpace();emitTokenWithComment(147,e.initializer.end,writeKeyword,e);writeSpace();emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e);emitEmbeddedStatement(e,e.statement)}function emitForBinding(e){if(e!==undefined){if(e.kind===238){emit(e)}else{emitExpression(e)}}}function emitContinueStatement(e){emitTokenWithComment(78,e.pos,writeKeyword,e);emitWithLeadingSpace(e.label);writeTrailingSemicolon()}function emitBreakStatement(e){emitTokenWithComment(73,e.pos,writeKeyword,e);emitWithLeadingSpace(e.label);writeTrailingSemicolon()}function emitTokenWithComment(t,r,n,i,a){var o=e.getParseTreeNode(i);var s=o&&o.kind===i.kind;var c=r;if(s){r=e.skipTrivia(y.text,r)}if(emitLeadingCommentsOfPosition&&s&&i.pos!==c){var u=a&&!e.positionsAreOnSameLine(c,r,y);if(u){increaseIndent()}emitLeadingCommentsOfPosition(c);if(u){decreaseIndent()}}r=writeTokenText(t,n,r);if(emitTrailingCommentsOfPosition&&s&&i.end!==r){emitTrailingCommentsOfPosition(r,true)}return r}function emitReturnStatement(e){emitTokenWithComment(97,e.pos,writeKeyword,e);emitExpressionWithLeadingSpace(e.expression);writeTrailingSemicolon()}function emitWithStatement(e){var t=emitTokenWithComment(108,e.pos,writeKeyword,e);writeSpace();emitTokenWithComment(20,t,writePunctuation,e);emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e);emitEmbeddedStatement(e,e.statement)}function emitSwitchStatement(e){var t=emitTokenWithComment(99,e.pos,writeKeyword,e);writeSpace();emitTokenWithComment(20,t,writePunctuation,e);emitExpression(e.expression);emitTokenWithComment(21,e.expression.end,writePunctuation,e);writeSpace();emit(e.caseBlock)}function emitLabeledStatement(e){emit(e.label);emitTokenWithComment(57,e.label.end,writePunctuation,e);writeSpace();emit(e.statement)}function emitThrowStatement(e){emitTokenWithComment(101,e.pos,writeKeyword,e);emitExpressionWithLeadingSpace(e.expression);writeTrailingSemicolon()}function emitTryStatement(e){emitTokenWithComment(103,e.pos,writeKeyword,e);writeSpace();emit(e.tryBlock);if(e.catchClause){writeLineOrSpace(e);emit(e.catchClause)}if(e.finallyBlock){writeLineOrSpace(e);emitTokenWithComment(88,(e.catchClause||e.tryBlock).end,writeKeyword,e);writeSpace();emit(e.finallyBlock)}}function emitDebuggerStatement(e){writeToken(79,e.pos,writeKeyword);writeTrailingSemicolon()}function emitVariableDeclaration(e){emit(e.name);emitTypeAnnotation(e.type);emitInitializer(e.initializer,e.type?e.type.end:e.name.end,e)}function emitVariableDeclarationList(t){writeKeyword(e.isLet(t)?"let":e.isVarConst(t)?"const":"var");writeSpace();emitList(t,t.declarations,528)}function emitFunctionDeclaration(e){emitFunctionDeclarationOrExpression(e)}function emitFunctionDeclarationOrExpression(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);writeKeyword("function");emit(e.asteriskToken);writeSpace();emitIdentifierName(e.name);emitSignatureAndBody(e,emitSignatureHead)}function emitBlockCallback(e,t){emitBlockFunctionBody(t)}function emitSignatureAndBody(t,r){var n=t.body;if(n){if(e.isBlock(n)){var i=e.getEmitFlags(t)&65536;if(i){increaseIndent()}pushNameGenerationScope(t);e.forEach(t.parameters,generateNames);generateNames(t.body);r(t);if(o){o(4,n,emitBlockCallback)}else{emitBlockFunctionBody(n)}popNameGenerationScope(t);if(i){decreaseIndent()}}else{r(t);writeSpace();emitExpression(n)}}else{r(t);writeTrailingSemicolon()}}function emitSignatureHead(e){emitTypeParameters(e,e.typeParameters);emitParameters(e,e.parameters);emitTypeAnnotation(e.type)}function shouldEmitBlockFunctionBodyOnSingleLine(t){if(e.getEmitFlags(t)&1){return true}if(t.multiLine){return false}if(!e.nodeIsSynthesized(t)&&!e.rangeIsOnSingleLine(t,y)){return false}if(shouldWriteLeadingLineTerminator(t,t.statements,2)||shouldWriteClosingLineTerminator(t,t.statements,2)){return false}var r;for(var n=0,i=t.statements;n<i.length;n++){var a=i[n];if(shouldWriteSeparatingLineTerminator(r,a,2)){return false}r=a}return true}function emitBlockFunctionBody(e){writeSpace();writePunctuation("{");increaseIndent();var t=shouldEmitBlockFunctionBodyOnSingleLine(e)?emitBlockFunctionBodyOnSingleLine:emitBlockFunctionBodyWorker;if(emitBodyWithDetachedComments){emitBodyWithDetachedComments(e,e.statements,t)}else{t(e)}decreaseIndent();writeToken(19,e.statements.end,writePunctuation,e)}function emitBlockFunctionBodyOnSingleLine(e){emitBlockFunctionBodyWorker(e,true)}function emitBlockFunctionBodyWorker(e,t){var r=emitPrologueDirectives(e.statements,true);var n=E.getTextPos();emitHelpers(e);if(r===0&&n===E.getTextPos()&&t){decreaseIndent();emitList(e,e.statements,768);increaseIndent()}else{emitList(e,e.statements,1,r)}}function emitClassDeclaration(e){emitClassDeclarationOrExpression(e)}function emitClassDeclarationOrExpression(t){e.forEach(t.members,generateMemberNames);emitDecorators(t,t.decorators);emitModifiers(t,t.modifiers);writeKeyword("class");if(t.name){writeSpace();emitIdentifierName(t.name)}var r=e.getEmitFlags(t)&65536;if(r){increaseIndent()}emitTypeParameters(t,t.typeParameters);emitList(t,t.heritageClauses,0);writeSpace();writePunctuation("{");emitList(t,t.members,129);writePunctuation("}");if(r){decreaseIndent()}}function emitInterfaceDeclaration(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);writeKeyword("interface");writeSpace();emit(e.name);emitTypeParameters(e,e.typeParameters);emitList(e,e.heritageClauses,512);writeSpace();writePunctuation("{");emitList(e,e.members,129);writePunctuation("}")}function emitTypeAliasDeclaration(e){emitDecorators(e,e.decorators);emitModifiers(e,e.modifiers);writeKeyword("type");writeSpace();emit(e.name);emitTypeParameters(e,e.typeParameters);writeSpace();writePunctuation("=");writeSpace();emit(e.type);writeTrailingSemicolon()}function emitEnumDeclaration(e){emitModifiers(e,e.modifiers);writeKeyword("enum");writeSpace();emit(e.name);writeSpace();writePunctuation("{");emitList(e,e.members,145);writePunctuation("}")}function emitModuleDeclaration(e){emitModifiers(e,e.modifiers);if(~e.flags&512){writeKeyword(e.flags&16?"namespace":"module");writeSpace()}emit(e.name);var t=e.body;if(!t)return writeTrailingSemicolon();while(t.kind===244){writePunctuation(".");emit(t.name);t=t.body}writeSpace();emit(t)}function emitModuleBlock(t){pushNameGenerationScope(t);e.forEach(t.statements,generateNames);emitBlockStatements(t,isEmptyBlock(t));popNameGenerationScope(t)}function emitCaseBlock(e){emitTokenWithComment(18,e.pos,writePunctuation,e);emitList(e,e.clauses,129);emitTokenWithComment(19,e.clauses.end,writePunctuation,e,true)}function emitImportEqualsDeclaration(e){emitModifiers(e,e.modifiers);emitTokenWithComment(92,e.modifiers?e.modifiers.end:e.pos,writeKeyword,e);writeSpace();emit(e.name);writeSpace();emitTokenWithComment(59,e.name.end,writePunctuation,e);writeSpace();emitModuleReference(e.moduleReference);writeTrailingSemicolon()}function emitModuleReference(e){if(e.kind===72){emitExpression(e)}else{emit(e)}}function emitImportDeclaration(e){emitModifiers(e,e.modifiers);emitTokenWithComment(92,e.modifiers?e.modifiers.end:e.pos,writeKeyword,e);writeSpace();if(e.importClause){emit(e.importClause);writeSpace();emitTokenWithComment(144,e.importClause.end,writeKeyword,e);writeSpace()}emitExpression(e.moduleSpecifier);writeTrailingSemicolon()}function emitImportClause(e){emit(e.name);if(e.name&&e.namedBindings){emitTokenWithComment(27,e.name.end,writePunctuation,e);writeSpace()}emit(e.namedBindings)}function emitNamespaceImport(e){var t=emitTokenWithComment(40,e.pos,writePunctuation,e);writeSpace();emitTokenWithComment(119,t,writeKeyword,e);writeSpace();emit(e.name)}function emitNamedImports(e){emitNamedImportsOrExports(e)}function emitImportSpecifier(e){emitImportOrExportSpecifier(e)}function emitExportAssignment(e){var t=emitTokenWithComment(85,e.pos,writeKeyword,e);writeSpace();if(e.isExportEquals){emitTokenWithComment(59,t,writeOperator,e)}else{emitTokenWithComment(80,t,writeKeyword,e)}writeSpace();emitExpression(e.expression);writeTrailingSemicolon()}function emitExportDeclaration(e){var t=emitTokenWithComment(85,e.pos,writeKeyword,e);writeSpace();if(e.exportClause){emit(e.exportClause)}else{t=emitTokenWithComment(40,t,writePunctuation,e)}if(e.moduleSpecifier){writeSpace();var r=e.exportClause?e.exportClause.end:t;emitTokenWithComment(144,r,writeKeyword,e);writeSpace();emitExpression(e.moduleSpecifier)}writeTrailingSemicolon()}function emitNamespaceExportDeclaration(e){var t=emitTokenWithComment(85,e.pos,writeKeyword,e);writeSpace();t=emitTokenWithComment(119,t,writeKeyword,e);writeSpace();t=emitTokenWithComment(131,t,writeKeyword,e);writeSpace();emit(e.name);writeTrailingSemicolon()}function emitNamedExports(e){emitNamedImportsOrExports(e)}function emitExportSpecifier(e){emitImportOrExportSpecifier(e)}function emitNamedImportsOrExports(e){writePunctuation("{");emitList(e,e.elements,525136);writePunctuation("}")}function emitImportOrExportSpecifier(e){if(e.propertyName){emit(e.propertyName);writeSpace();emitTokenWithComment(119,e.propertyName.end,writeKeyword,e);writeSpace()}emit(e.name)}function emitExternalModuleReference(e){writeKeyword("require");writePunctuation("(");emitExpression(e.expression);writePunctuation(")")}function emitJsxElement(e){emit(e.openingElement);emitList(e,e.children,262144);emit(e.closingElement)}function emitJsxSelfClosingElement(e){writePunctuation("<");emitJsxTagName(e.tagName);writeSpace();emit(e.attributes);writePunctuation("/>")}function emitJsxFragment(e){emit(e.openingFragment);emitList(e,e.children,262144);emit(e.closingFragment)}function emitJsxOpeningElementOrFragment(t){writePunctuation("<");if(e.isJsxOpeningElement(t)){emitJsxTagName(t.tagName);if(t.attributes.properties&&t.attributes.properties.length>0){writeSpace()}emit(t.attributes)}writePunctuation(">")}function emitJsxText(e){E.writeLiteral(getTextOfNode(e,true))}function emitJsxClosingElementOrFragment(t){writePunctuation("</");if(e.isJsxClosingElement(t)){emitJsxTagName(t.tagName)}writePunctuation(">")}function emitJsxAttributes(e){emitList(e,e.properties,262656)}function emitJsxAttribute(e){emit(e.name);emitNodeWithPrefix("=",writePunctuation,e.initializer,emit)}function emitJsxSpreadAttribute(e){writePunctuation("{...");emitExpression(e.expression);writePunctuation("}")}function emitJsxExpression(e){if(e.expression){writePunctuation("{");emit(e.dotDotDotToken);emitExpression(e.expression);writePunctuation("}")}}function emitJsxTagName(e){if(e.kind===72){emitExpression(e)}else{emit(e)}}function emitCaseClause(e){emitTokenWithComment(74,e.pos,writeKeyword,e);writeSpace();emitExpression(e.expression);emitCaseOrDefaultClauseRest(e,e.statements,e.expression.end)}function emitDefaultClause(e){var t=emitTokenWithComment(80,e.pos,writeKeyword,e);emitCaseOrDefaultClauseRest(e,e.statements,t)}function emitCaseOrDefaultClauseRest(t,r,n){var i=r.length===1&&(e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r[0])||e.rangeStartPositionsAreOnSameLine(t,r[0],y));var a=163969;if(i){writeToken(57,n,writePunctuation,t);writeSpace();a&=~(1|128)}else{emitTokenWithComment(57,n,writePunctuation,t)}emitList(t,r,a)}function emitHeritageClause(e){writeSpace();writeTokenText(e.token,writeKeyword);writeSpace();emitList(e,e.types,528)}function emitCatchClause(e){var t=emitTokenWithComment(75,e.pos,writeKeyword,e);writeSpace();if(e.variableDeclaration){emitTokenWithComment(20,t,writePunctuation,e);emit(e.variableDeclaration);emitTokenWithComment(21,e.variableDeclaration.end,writePunctuation,e);writeSpace()}emit(e.block)}function emitPropertyAssignment(t){emit(t.name);writePunctuation(":");writeSpace();var r=t.initializer;if(emitTrailingCommentsOfPosition&&(e.getEmitFlags(r)&512)===0){var n=e.getCommentRange(r);emitTrailingCommentsOfPosition(n.pos)}emitExpression(r)}function emitShorthandPropertyAssignment(e){emit(e.name);if(e.objectAssignmentInitializer){writeSpace();writePunctuation("=");writeSpace();emitExpression(e.objectAssignmentInitializer)}}function emitSpreadAssignment(e){if(e.expression){emitTokenWithComment(25,e.pos,writePunctuation,e);emitExpression(e.expression)}}function emitEnumMember(e){emit(e.name);emitInitializer(e.initializer,e.name.end,e)}function emitJSDoc(e){k("/**");if(e.comment){var t=e.comment.split(/\r\n?|\n/g);for(var r=0,n=t;r<n.length;r++){var i=n[r];writeLine();writeSpace();writePunctuation("*");writeSpace();k(i)}}if(e.tags){if(e.tags.length===1&&e.tags[0].kind===302&&!e.comment){writeSpace();emit(e.tags[0])}else{emitList(e,e.tags,33)}}writeSpace();k("*/")}function emitJSDocSimpleTypedTag(e){emitJSDocTagName(e.tagName);emitJSDocTypeExpression(e.typeExpression);emitJSDocComment(e.comment)}function emitJSDocAugmentsTag(e){emitJSDocTagName(e.tagName);writeSpace();writePunctuation("{");emit(e.class);writePunctuation("}");emitJSDocComment(e.comment)}function emitJSDocTemplateTag(e){emitJSDocTagName(e.tagName);emitJSDocTypeExpression(e.constraint);writeSpace();emitList(e,e.typeParameters,528);emitJSDocComment(e.comment)}function emitJSDocTypedefTag(e){emitJSDocTagName(e.tagName);if(e.typeExpression){if(e.typeExpression.kind===283){emitJSDocTypeExpression(e.typeExpression)}else{writeSpace();writePunctuation("{");k("Object");if(e.typeExpression.isArrayType){writePunctuation("[");writePunctuation("]")}writePunctuation("}")}}if(e.fullName){writeSpace();emit(e.fullName)}emitJSDocComment(e.comment);if(e.typeExpression&&e.typeExpression.kind===292){emitJSDocTypeLiteral(e.typeExpression)}}function emitJSDocCallbackTag(e){emitJSDocTagName(e.tagName);if(e.name){writeSpace();emit(e.name)}emitJSDocComment(e.comment);emitJSDocSignature(e.typeExpression)}function emitJSDocSimpleTag(e){emitJSDocTagName(e.tagName);emitJSDocComment(e.comment)}function emitJSDocTypeLiteral(t){emitList(t,e.createNodeArray(t.jsDocPropertyTags),33)}function emitJSDocSignature(t){if(t.typeParameters){emitList(t,e.createNodeArray(t.typeParameters),33)}if(t.parameters){emitList(t,e.createNodeArray(t.parameters),33)}if(t.type){writeLine();writeSpace();writePunctuation("*");writeSpace();emit(t.type)}}function emitJSDocPropertyLikeTag(e){emitJSDocTagName(e.tagName);emitJSDocTypeExpression(e.typeExpression);writeSpace();if(e.isBracketed){writePunctuation("[")}emit(e.name);if(e.isBracketed){writePunctuation("]")}emitJSDocComment(e.comment)}function emitJSDocTagName(e){writePunctuation("@");emit(e)}function emitJSDocComment(e){if(e){writeSpace();k(e)}}function emitJSDocTypeExpression(e){if(e){writeSpace();writePunctuation("{");emit(e.type);writePunctuation("}")}}function emitSourceFile(t){writeLine();var r=t.statements;if(emitBodyWithDetachedComments){var n=r.length===0||!e.isPrologueDirective(r[0])||e.nodeIsSynthesized(r[0]);if(n){emitBodyWithDetachedComments(t,r,emitSourceFileWorker);return}}emitSourceFileWorker(t)}function emitSyntheticTripleSlashReferencesIfNeeded(e){emitTripleSlashDirectives(!!e.hasNoDefaultLib,e.syntheticFileReferences||[],e.syntheticTypeReferences||[],e.syntheticLibReferences||[])}function emitTripleSlashDirectivesIfNeeded(e){if(e.isDeclarationFile)emitTripleSlashDirectives(e.hasNoDefaultLib,e.referencedFiles,e.typeReferenceDirectives,e.libReferenceDirectives)}function emitTripleSlashDirectives(e,t,r,n){if(e){writeComment('/// <reference no-default-lib="true"/>');writeLine()}if(y&&y.moduleName){writeComment('/// <amd-module name="'+y.moduleName+'" />');writeLine()}if(y&&y.amdDependencies){for(var i=0,a=y.amdDependencies;i<a.length;i++){var o=a[i];if(o.name){writeComment('/// <amd-dependency name="'+o.name+'" path="'+o.path+'" />')}else{writeComment('/// <amd-dependency path="'+o.path+'" />')}writeLine()}}for(var s=0,c=t;s<c.length;s++){var u=c[s];writeComment('/// <reference path="'+u.fileName+'" />');writeLine()}for(var l=0,f=r;l<f.length;l++){var u=f[l];writeComment('/// <reference types="'+u.fileName+'" />');writeLine()}for(var d=0,p=n;d<p.length;d++){var u=p[d];writeComment('/// <reference lib="'+u.fileName+'" />');writeLine()}}function emitSourceFileWorker(t){var r=t.statements;pushNameGenerationScope(t);e.forEach(t.statements,generateNames);emitHelpers(t);var n=e.findIndex(r,function(t){return!e.isPrologueDirective(t)});emitTripleSlashDirectivesIfNeeded(t);emitList(t,r,1,n===-1?r.length:n);popNameGenerationScope(t)}function emitPartiallyEmittedExpression(e){emitExpression(e.expression)}function emitCommaList(e){emitExpressionList(e,e.elements,528)}function emitPrologueDirectives(t,r,n){for(var i=0;i<t.length;i++){var a=t[i];if(e.isPrologueDirective(a)){var o=n?!n.has(a.expression.text):true;if(o){if(r||i>0){writeLine()}emit(a);if(n){n.set(a.expression.text,true)}}}else{return i}}return t.length}function emitPrologueDirectivesIfNeeded(t){if(e.isSourceFile(t)){setSourceFile(t);emitPrologueDirectives(t.statements)}else{var r=e.createMap();for(var n=0,i=t.sourceFiles;n<i.length;n++){var a=i[n];setSourceFile(a);emitPrologueDirectives(a.statements,true,r)}setSourceFile(undefined)}}function emitShebangIfNeeded(t){if(e.isSourceFile(t)){var r=e.getShebang(t.text);if(r){writeComment(r);writeLine();return true}}else{for(var n=0,i=t.sourceFiles;n<i.length;n++){var a=i[n];if(emitShebangIfNeeded(a)){break}}}}function emitNodeWithWriter(e,t){if(!e)return;var r=k;k=t;emit(e);k=r}function emitModifiers(e,t){if(t&&t.length){emitList(e,t,262656);writeSpace()}}function emitTypeAnnotation(e){if(e){writePunctuation(":");writeSpace();emit(e)}}function emitInitializer(e,t,r){if(e){writeSpace();emitTokenWithComment(59,t,writeOperator,r);writeSpace();emitExpression(e)}}function emitNodeWithPrefix(e,t,r,n){if(r){t(e);n(r)}}function emitWithLeadingSpace(e){if(e){writeSpace();emit(e)}}function emitExpressionWithLeadingSpace(e){if(e){writeSpace();emitExpression(e)}}function emitWithTrailingSpace(e){if(e){emit(e);writeSpace()}}function emitEmbeddedStatement(t,r){if(e.isBlock(r)||e.getEmitFlags(t)&1){writeSpace();emit(r)}else{writeLine();increaseIndent();if(e.isEmptyStatement(r)){var n=getPipelinePhase(0,r);n(5,r)}else{emit(r)}decreaseIndent()}}function emitDecorators(e,t){emitList(e,t,49153)}function emitTypeArguments(e,t){emitList(e,t,53776)}function emitTypeParameters(t,r){if(e.isFunctionLike(t)&&t.typeArguments){return emitTypeArguments(t,t.typeArguments)}emitList(t,r,53776)}function emitParameters(e,t){emitList(e,t,2576)}function canEmitSimpleArrowHead(t,r){var n=e.singleOrUndefined(r);return n&&n.pos===t.pos&&e.isArrowFunction(t)&&!t.type&&!e.some(t.decorators)&&!e.some(t.modifiers)&&!e.some(t.typeParameters)&&!e.some(n.decorators)&&!e.some(n.modifiers)&&!n.dotDotDotToken&&!n.questionToken&&!n.type&&!n.initializer&&e.isIdentifier(n.name)}function emitParametersForArrow(e,t){if(canEmitSimpleArrowHead(e,t)){emitList(e,t,2576&~2048)}else{emitParameters(e,t)}}function emitParametersForIndexSignature(e,t){emitList(e,t,8848)}function emitList(e,t,r,n,i){emitNodeList(emit,e,t,r,n,i)}function emitExpressionList(e,t,r,n,i){emitNodeList(emitExpression,e,t,r,n,i)}function writeDelimiter(e){switch(e&60){case 0:break;case 16:writePunctuation(",");break;case 4:writeSpace();writePunctuation("|");break;case 32:writeSpace();writePunctuation("*");writeSpace();break;case 8:writeSpace();writePunctuation("&");break}}function emitNodeList(t,r,n,i,a,o){if(a===void 0){a=0}if(o===void 0){o=n?n.length-a:0}var s=n===undefined;if(s&&i&16384){return}var c=n===undefined||a>=n.length||o===0;if(c&&i&32768){if(u){u(n)}if(l){l(n)}return}if(i&15360){writePunctuation(getOpeningBracket(i));if(c&&!s){emitTrailingCommentsOfPosition(n.pos,true)}}if(u){u(n)}if(c){if(i&1){writeLine()}else if(i&256&&!(i&524288)){writeSpace()}}else{var f=(i&262144)===0;var d=f;if(shouldWriteLeadingLineTerminator(r,n,i)){writeLine();d=false}else if(i&256){writeSpace()}if(i&128){increaseIndent()}var p=void 0;var g=false;for(var _=0;_<o;_++){var m=n[a+_];if(i&32){writeLine();writeDelimiter(i)}else if(p){if(i&60&&p.end!==r.end){emitLeadingCommentsOfPosition(p.end)}writeDelimiter(i);if(shouldWriteSeparatingLineTerminator(p,m,i)){if((i&(3|128))===0){increaseIndent();g=true}writeLine();d=false}else if(p&&i&512){writeSpace()}}if(d){if(emitTrailingCommentsOfPosition){var y=e.getCommentRange(m);emitTrailingCommentsOfPosition(y.pos)}}else{d=f}t(m);if(g){decreaseIndent();g=false}p=m}var h=i&64&&n.hasTrailingComma;if(i&16&&h){writePunctuation(",")}if(p&&i&60&&p.end!==r.end&&!(e.getEmitFlags(p)&1024)){emitLeadingCommentsOfPosition(p.end)}if(i&128){decreaseIndent()}if(shouldWriteClosingLineTerminator(r,n,i)){writeLine()}else if(i&256){writeSpace()}}if(l){l(n)}if(i&15360){if(c&&!s){emitLeadingCommentsOfPosition(n.end)}writePunctuation(getClosingBracket(i))}}function writeLiteral(e){E.writeLiteral(e)}function writeStringLiteral(e){E.writeStringLiteral(e)}function writeBase(e){E.write(e)}function writeSymbol(e,t){E.writeSymbol(e,t)}function writePunctuation(e){E.writePunctuation(e)}function writeTrailingSemicolon(){E.writeTrailingSemicolon(";")}function writeKeyword(e){E.writeKeyword(e)}function writeOperator(e){E.writeOperator(e)}function writeParameter(e){E.writeParameter(e)}function writeComment(e){E.writeComment(e)}function writeSpace(){E.writeSpace(" ")}function writeProperty(e){E.writeProperty(e)}function writeLine(){E.writeLine()}function increaseIndent(){E.increaseIndent()}function decreaseIndent(){E.decreaseIndent()}function writeToken(e,t,r,n){return!A?emitTokenWithSourceMap(n,e,r,t,writeTokenText):writeTokenText(e,r,t)}function writeTokenNode(t,r){if(f){f(t)}r(e.tokenToString(t.kind));if(d){d(t)}}function writeTokenText(t,r,n){var i=e.tokenToString(t);r(i);return n<0?n:n+i.length}function writeLineOrSpace(t){if(e.getEmitFlags(t)&1){writeSpace()}else{writeLine()}}function writeLines(t){var r=t.split(/\r\n?|\n/g);var n=e.guessIndentation(r);for(var i=0,a=r;i<a.length;i++){var o=a[i];var s=n?o.slice(n):o;if(s.length){writeLine();k(s);E.rawWrite(g)}}}function increaseIndentIf(e,t){if(e){increaseIndent();writeLine()}else if(t){writeSpace()}}function decreaseIndentIf(e,t){if(e){decreaseIndent()}if(t){decreaseIndent()}}function shouldWriteLeadingLineTerminator(t,r,n){if(n&1){return true}if(n&2){if(n&65536){return true}var i=r[0];if(i===undefined){return!e.rangeIsOnSingleLine(t,y)}else if(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(i)){return synthesizedNodeStartsOnNewLine(i,n)}else{return!e.rangeStartPositionsAreOnSameLine(t,i,y)}}else{return false}}function shouldWriteSeparatingLineTerminator(t,r,n){if(n&1){return true}else if(n&2){if(t===undefined||r===undefined){return false}else if(e.nodeIsSynthesized(t)||e.nodeIsSynthesized(r)){return synthesizedNodeStartsOnNewLine(t,n)||synthesizedNodeStartsOnNewLine(r,n)}else{return!e.rangeEndIsOnSameLineAsRangeStart(t,r,y)}}else{return e.getStartsOnNewLine(r)}}function shouldWriteClosingLineTerminator(t,r,n){if(n&1){return(n&131072)===0}else if(n&2){if(n&65536){return true}var i=e.lastOrUndefined(r);if(i===undefined){return!e.rangeIsOnSingleLine(t,y)}else if(e.positionIsSynthesized(t.pos)||e.nodeIsSynthesized(i)){return synthesizedNodeStartsOnNewLine(i,n)}else{return!e.rangeEndPositionsAreOnSameLine(t,i,y)}}else{return false}}function synthesizedNodeStartsOnNewLine(t,r){if(e.nodeIsSynthesized(t)){var n=e.getStartsOnNewLine(t);if(n===undefined){return(r&65536)!==0}return n}return(r&65536)!==0}function needsIndentation(t,r,n){t=skipSynthesizedParentheses(t);r=skipSynthesizedParentheses(r);n=skipSynthesizedParentheses(n);if(e.getStartsOnNewLine(n)){return true}return!e.nodeIsSynthesized(t)&&!e.nodeIsSynthesized(r)&&!e.nodeIsSynthesized(n)&&!e.rangeEndIsOnSameLineAsRangeStart(r,n,y)}function isEmptyBlock(t){return t.statements.length===0&&e.rangeEndIsOnSameLineAsRangeStart(t,t,y)}function skipSynthesizedParentheses(t){while(t.kind===195&&e.nodeIsSynthesized(t)){t=t.expression}return t}function getTextOfNode(t,r){if(e.isGeneratedIdentifier(t)){return generateName(t)}else if(e.isIdentifier(t)&&(e.nodeIsSynthesized(t)||!t.parent||!y||t.parent&&y&&e.getSourceFileOfNode(t)!==e.getOriginalNode(y))){return e.idText(t)}else if(t.kind===10&&t.textSourceNode){return getTextOfNode(t.textSourceNode,r)}else if(e.isLiteralExpression(t)&&(e.nodeIsSynthesized(t)||!t.parent)){return t.text}return e.getSourceTextOfNodeFromSourceFile(y,t,r)}function getLiteralTextOfNode(t,r){if(t.kind===10&&t.textSourceNode){var n=t.textSourceNode;if(e.isIdentifier(n)){return r||e.getEmitFlags(t)&16777216?'"'+e.escapeString(getTextOfNode(n))+'"':'"'+e.escapeNonAsciiString(getTextOfNode(n))+'"'}else{return getLiteralTextOfNode(n,r)}}return e.getLiteralText(t,y,r)}function pushNameGenerationScope(t){if(t&&e.getEmitFlags(t)&524288){return}S.push(b);b=0;x.push(C)}function popNameGenerationScope(t){if(t&&e.getEmitFlags(t)&524288){return}b=S.pop();C=x.pop()}function reserveNameInNestedScopes(t){if(!C||C===e.lastOrUndefined(x)){C=e.createMap()}C.set(t,true)}function generateNames(t){if(!t)return;switch(t.kind){case 218:e.forEach(t.statements,generateNames);break;case 233:case 231:case 223:case 224:generateNames(t.statement);break;case 222:generateNames(t.thenStatement);generateNames(t.elseStatement);break;case 225:case 227:case 226:generateNames(t.initializer);generateNames(t.statement);break;case 232:generateNames(t.caseBlock);break;case 246:e.forEach(t.clauses,generateNames);break;case 271:case 272:e.forEach(t.statements,generateNames);break;case 235:generateNames(t.tryBlock);generateNames(t.catchClause);generateNames(t.finallyBlock);break;case 274:generateNames(t.variableDeclaration);generateNames(t.block);break;case 219:generateNames(t.declarationList);break;case 238:e.forEach(t.declarations,generateNames);break;case 237:case 151:case 186:case 240:generateNameIfNeeded(t.name);break;case 239:generateNameIfNeeded(t.name);if(e.getEmitFlags(t)&524288){e.forEach(t.parameters,generateNames);generateNames(t.body)}break;case 184:case 185:e.forEach(t.elements,generateNames);break;case 249:generateNames(t.importClause);break;case 250:generateNameIfNeeded(t.name);generateNames(t.namedBindings);break;case 251:generateNameIfNeeded(t.name);break;case 252:e.forEach(t.elements,generateNames);break;case 253:generateNameIfNeeded(t.propertyName||t.name);break}}function generateMemberNames(e){if(!e)return;switch(e.kind){case 275:case 276:case 154:case 156:case 158:case 159:generateNameIfNeeded(e.name);break}}function generateNameIfNeeded(t){if(t){if(e.isGeneratedIdentifier(t)){generateName(t)}else if(e.isBindingPattern(t)){generateNames(t)}}}function generateName(e){if((e.autoGenerateFlags&7)===4){return generateNameCached(getNodeForGeneratedName(e),e.autoGenerateFlags)}else{var t=e.autoGenerateId;return v[t]||(v[t]=makeName(e))}}function generateNameCached(t,r){var n=e.getNodeId(t);return h[n]||(h[n]=generateNameForNode(t,r))}function isUniqueName(e){return isFileLevelUniqueName(e)&&!T.has(e)&&!(C&&C.has(e))}function isFileLevelUniqueName(t){return y?e.isFileLevelUniqueName(y,t,i):true}function isUniqueLocalName(t,r){for(var n=r;e.isNodeDescendantOf(n,r);n=n.nextContainer){if(n.locals){var i=n.locals.get(e.escapeLeadingUnderscores(t));if(i&&i.flags&(67220415|1048576|2097152)){return false}}}return true}function makeTempVariableName(e,t){if(e&&!(b&e)){var r=e===268435456?"_i":"_n";if(isUniqueName(r)){b|=e;if(t){reserveNameInNestedScopes(r)}return r}}while(true){var n=b&268435455;b++;if(n!==8&&n!==13){var r=n<26?"_"+String.fromCharCode(97+n):"_"+(n-26);if(isUniqueName(r)){if(t){reserveNameInNestedScopes(r)}return r}}}}function makeUniqueName(e,t,r,n){if(t===void 0){t=isUniqueName}if(r){if(t(e)){if(n){reserveNameInNestedScopes(e)}else{T.set(e,true)}return e}}if(e.charCodeAt(e.length-1)!==95){e+="_"}var i=1;while(true){var a=e+i;if(t(a)){if(n){reserveNameInNestedScopes(a)}else{T.set(a,true)}return a}i++}}function makeFileLevelOptimisticUniqueName(e){return makeUniqueName(e,isFileLevelUniqueName,true)}function generateNameForModuleOrEnum(e){var t=getTextOfNode(e.name);return isUniqueLocalName(t,e)?t:makeUniqueName(t)}function generateNameForImportOrExportDeclaration(t){var r=e.getExternalModuleName(t);var n=e.isStringLiteral(r)?e.makeIdentifierFromModuleName(r.text):"module";return makeUniqueName(n)}function generateNameForExportDefault(){return makeUniqueName("default")}function generateNameForClassExpression(){return makeUniqueName("class")}function generateNameForMethodOrAccessor(t){if(e.isIdentifier(t.name)){return generateNameCached(t.name)}return makeTempVariableName(0)}function generateNameForNode(e,t){switch(e.kind){case 72:return makeUniqueName(getTextOfNode(e),isUniqueName,!!(t&16),!!(t&8));case 244:case 243:return generateNameForModuleOrEnum(e);case 249:case 255:return generateNameForImportOrExportDeclaration(e);case 239:case 240:case 254:return generateNameForExportDefault();case 209:return generateNameForClassExpression();case 156:case 158:case 159:return generateNameForMethodOrAccessor(e);default:return makeTempVariableName(0)}}function makeName(t){switch(t.autoGenerateFlags&7){case 1:return makeTempVariableName(0,!!(t.autoGenerateFlags&8));case 2:return makeTempVariableName(268435456,!!(t.autoGenerateFlags&8));case 3:return makeUniqueName(e.idText(t),t.autoGenerateFlags&32?isFileLevelUniqueName:isUniqueName,!!(t.autoGenerateFlags&16),!!(t.autoGenerateFlags&8))}return e.Debug.fail("Unsupported GeneratedIdentifierKind.")}function getNodeForGeneratedName(t){var r=t.autoGenerateId;var n=t;var i=n.original;while(i){n=i;if(e.isIdentifier(n)&&!!(n.autoGenerateFlags&4)&&n.autoGenerateId!==r){break}i=n.original}return n}function pipelineEmitWithComments(t,r){W();B=false;var n=e.getEmitFlags(r);var i=e.getCommentRange(r),a=i.pos,o=i.end;var s=r.kind!==307;var c=a<0||(n&512)!==0||r.kind===11;var u=o<0||(n&1024)!==0||r.kind===11;var l=I;var f=w;var d=M;if((a>0||o>0)&&a!==o){if(!c){emitLeadingComments(a,s)}if(!c||a>=0&&(n&512)!==0){I=a}if(!u||o>=0&&(n&1024)!==0){w=o;if(r.kind===238){M=o}}}e.forEach(e.getSyntheticLeadingComments(r),emitLeadingSynthesizedComment);U();var p=getNextPipelinePhase(2,r);if(n&2048){j=true;p(t,r);j=false}else{p(t,r)}W();e.forEach(e.getSyntheticTrailingComments(r),emitTrailingSynthesizedComment);if((a>0||o>0)&&a!==o){I=l;w=f;M=d;if(!u&&s){emitTrailingComments(o)}}U()}function emitLeadingSynthesizedComment(e){if(e.kind===2){E.writeLine()}writeSynthesizedComment(e);if(e.hasTrailingNewLine||e.kind===2){E.writeLine()}else{E.writeSpace(" ")}}function emitTrailingSynthesizedComment(e){if(!E.isAtStartOfLine()){E.writeSpace(" ")}writeSynthesizedComment(e);if(e.hasTrailingNewLine){E.writeLine()}}function writeSynthesizedComment(t){var r=formatSynthesizedComment(t);var n=t.kind===3?e.computeLineStarts(r):undefined;e.writeCommentRange(r,n,E,0,r.length,g)}function formatSynthesizedComment(e){return e.kind===3?"/*"+e.text+"*/":"//"+e.text}function emitBodyWithDetachedComments(t,r,n){W();var i=r.pos,a=r.end;var o=e.getEmitFlags(t);var s=i<0||(o&512)!==0;var c=j||a<0||(o&1024)!==0;if(!s){emitDetachedCommentsAndUpdateCommentsInfo(r)}U();if(o&2048&&!j){j=true;n(t);j=false}else{n(t)}W();if(!c){emitLeadingComments(r.end,true);if(B&&!E.isAtStartOfLine()){E.writeLine()}}U()}function emitLeadingComments(e,t){B=false;if(t){forEachLeadingCommentToEmit(e,emitLeadingComment)}else if(e===0){forEachLeadingCommentToEmit(e,emitTripleSlashLeadingComment)}}function emitTripleSlashLeadingComment(e,t,r,n,i){if(isTripleSlashComment(e,t)){emitLeadingComment(e,t,r,n,i)}}function shouldWriteComment(r,n){if(t.onlyPrintJsDocStyle){return e.isJSDocLikeText(r,n)||e.isPinnedComment(r,n)}return true}function emitLeadingComment(t,r,n,i,a){if(!shouldWriteComment(y.text,t))return;if(!B){e.emitNewLineBeforeLeadingCommentOfPosition(getCurrentLineMap(),E,a,t);B=true}emitPos(t);e.writeCommentRange(y.text,getCurrentLineMap(),E,t,r,g);emitPos(r);if(i){E.writeLine()}else if(n===3){E.writeSpace(" ")}}function emitLeadingCommentsOfPosition(e){if(j||e===-1){return}emitLeadingComments(e,true)}function emitTrailingComments(e){forEachTrailingCommentToEmit(e,emitTrailingComment)}function emitTrailingComment(t,r,n,i){if(!shouldWriteComment(y.text,t))return;if(!E.isAtStartOfLine()){E.writeSpace(" ")}emitPos(t);e.writeCommentRange(y.text,getCurrentLineMap(),E,t,r,g);emitPos(r);if(i){E.writeLine()}}function emitTrailingCommentsOfPosition(e,t){if(j){return}W();forEachTrailingCommentToEmit(e,t?emitTrailingComment:emitTrailingCommentOfPosition);U()}function emitTrailingCommentOfPosition(t,r,n,i){emitPos(t);e.writeCommentRange(y.text,getCurrentLineMap(),E,t,r,g);emitPos(r);if(i){E.writeLine()}else{E.writeSpace(" ")}}function forEachLeadingCommentToEmit(t,r){if(y&&(I===-1||t!==I)){if(hasDetachedComments(t)){forEachLeadingCommentWithoutDetachedComments(r)}else{e.forEachLeadingCommentRange(y.text,t,r,t)}}}function forEachTrailingCommentToEmit(t,r){if(y&&(w===-1||t!==w&&t!==M)){e.forEachTrailingCommentRange(y.text,t,r)}}function hasDetachedComments(t){return R!==undefined&&e.last(R).nodePos===t}function forEachLeadingCommentWithoutDetachedComments(t){var r=e.last(R).detachedCommentEndPos;if(R.length-1){R.pop()}else{R=undefined}e.forEachLeadingCommentRange(y.text,r,t,r)}function emitDetachedCommentsAndUpdateCommentsInfo(t){var r=e.emitDetachedComments(y.text,getCurrentLineMap(),E,emitComment,t,g,j);if(r){if(R){R.push(r)}else{R=[r]}}}function emitComment(t,r,n,i,a,o){if(!shouldWriteComment(y.text,i))return;emitPos(i);e.writeCommentRange(t,r,n,i,a,o);emitPos(a)}function isTripleSlashComment(t,r){return e.isRecognizedTripleSlashComment(y.text,t,r)}function pipelineEmitWithSourceMap(t,r){var n=getNextPipelinePhase(3,r);if(e.isUnparsedSource(r)&&r.sourceMapText!==undefined){var i=e.tryParseRawSourceMap(r.sourceMapText);if(i){O.appendSourceMap(E.getLine(),E.getColumn(),i,r.sourceMapPath)}n(t,r)}else{var a=e.getSourceMapRange(r),o=a.pos,s=a.end,c=a.source,u=c===void 0?F:c;var l=e.getEmitFlags(r);if(r.kind!==307&&(l&16)===0&&o>=0){emitSourcePos(u,skipSourceTrivia(u,o))}if(l&64){A=true;n(t,r);A=false}else{n(t,r)}if(r.kind!==307&&(l&32)===0&&s>=0){emitSourcePos(u,s)}}}function skipSourceTrivia(t,r){return t.skipTrivia?t.skipTrivia(r):e.skipTrivia(F.text,r)}function emitPos(t){if(A||e.positionIsSynthesized(t)||isJsonSourceMapSource(F)){return}var r=e.getLineAndCharacterOfPosition(y,t),n=r.line,i=r.character;O.addMapping(E.getLine(),E.getColumn(),P,n,i,undefined)}function emitSourcePos(e,t){if(e!==F){var r=F;setSourceMapSource(e);emitPos(t);setSourceMapSource(r)}else{emitPos(t)}}function emitTokenWithSourceMap(t,r,n,i,a){if(A||t&&e.isInJsonFile(t)){return a(r,n,i)}var o=t&&t.emitNode;var s=o&&o.flags||0;var c=o&&o.tokenSourceMapRanges&&o.tokenSourceMapRanges[r];var u=c&&c.source||F;i=skipSourceTrivia(u,c?c.pos:i);if((s&128)===0&&i>=0){emitSourcePos(u,i)}i=a(r,n,i);if(c)i=c.end;if((s&256)===0&&i>=0){emitSourcePos(u,i)}return i}function setSourceMapSource(e){if(A){return}F=e;if(isJsonSourceMapSource(e)){return}P=O.addSource(e.fileName);if(t.inlineSources){O.setSourceContent(P,e.text)}}function isJsonSourceMapSource(t){return e.fileExtensionIs(t.fileName,".json")}}e.createPrinter=createPrinter;function createBracketsMap(){var e=[];e[1024]=["{","}"];e[2048]=["(",")"];e[4096]=["<",">"];e[8192]=["[","]"];return e}function getOpeningBracket(e){return r[e&15360][0]}function getClosingBracket(e){return r[e&15360][1]}var a;(function(e){e[e["Auto"]=0]="Auto";e[e["CountMask"]=268435455]="CountMask";e[e["_i"]=268435456]="_i"})(a||(a={}))})(s||(s={}));var s;(function(e){function createCachedDirectoryStructureHost(t,r,n){if(!t.getDirectories||!t.readDirectory){return undefined}var i=e.createMap();var a=e.createGetCanonicalFileName(n);return{useCaseSensitiveFileNames:n,fileExists:fileExists,readFile:function(e,r){return t.readFile(e,r)},directoryExists:t.directoryExists&&directoryExists,getDirectories:getDirectories,readDirectory:readDirectory,createDirectory:t.createDirectory&&createDirectory,writeFile:t.writeFile&&writeFile,addOrDeleteFileOrDirectory:addOrDeleteFileOrDirectory,addOrDeleteFile:addOrDeleteFile,clearCache:clearCache};function toPath(t){return e.toPath(t,r,a)}function getCachedFileSystemEntries(t){return i.get(e.ensureTrailingDirectorySeparator(t))}function getCachedFileSystemEntriesForBaseDir(t){return getCachedFileSystemEntries(e.getDirectoryPath(t))}function getBaseNameOfFileName(t){return e.getBaseFileName(e.normalizePath(t))}function createCachedFileSystemEntries(r,n){var a={files:e.map(t.readDirectory(r,undefined,undefined,["*.*"]),getBaseNameOfFileName)||[],directories:t.getDirectories(r)||[]};i.set(e.ensureTrailingDirectorySeparator(n),a);return a}function tryReadDirectory(t,r){r=e.ensureTrailingDirectorySeparator(r);var n=getCachedFileSystemEntries(r);if(n){return n}try{return createCachedFileSystemEntries(t,r)}catch(t){e.Debug.assert(!i.has(e.ensureTrailingDirectorySeparator(r)));return undefined}}function fileNameEqual(e,t){return a(e)===a(t)}function hasEntry(t,r){return e.some(t,function(e){return fileNameEqual(e,r)})}function updateFileSystemEntry(t,r,n){if(hasEntry(t,r)){if(!n){return e.filterMutate(t,function(e){return!fileNameEqual(e,r)})}}else if(n){return t.push(r)}}function writeFile(e,r,n){var i=toPath(e);var a=getCachedFileSystemEntriesForBaseDir(i);if(a){updateFilesOfFileSystemEntry(a,getBaseNameOfFileName(e),true)}return t.writeFile(e,r,n)}function fileExists(e){var r=toPath(e);var n=getCachedFileSystemEntriesForBaseDir(r);return n&&hasEntry(n.files,getBaseNameOfFileName(e))||t.fileExists(e)}function directoryExists(r){var n=toPath(r);return i.has(e.ensureTrailingDirectorySeparator(n))||t.directoryExists(r)}function createDirectory(e){var r=toPath(e);var n=getCachedFileSystemEntriesForBaseDir(r);var i=getBaseNameOfFileName(e);if(n){updateFileSystemEntry(n.directories,i,true)}t.createDirectory(e)}function getDirectories(e){var r=toPath(e);var n=tryReadDirectory(e,r);if(n){return n.directories.slice()}return t.getDirectories(e)}function readDirectory(i,a,o,s,c){var u=toPath(i);var l=tryReadDirectory(i,u);if(l){return e.matchFiles(i,a,o,s,n,r,c,getFileSystemEntries)}return t.readDirectory(i,a,o,s,c);function getFileSystemEntries(t){var r=toPath(t);if(r===u){return l}return tryReadDirectory(t,r)||e.emptyFileSystemEntries}}function addOrDeleteFileOrDirectory(e,r){var n=getCachedFileSystemEntries(r);if(n){clearCache();return undefined}var i=getCachedFileSystemEntriesForBaseDir(r);if(!i){return undefined}if(!t.directoryExists){clearCache();return undefined}var a=getBaseNameOfFileName(e);var o={fileExists:t.fileExists(r),directoryExists:t.directoryExists(r)};if(o.directoryExists||hasEntry(i.directories,a)){clearCache()}else{updateFilesOfFileSystemEntry(i,a,o.fileExists)}return o}function addOrDeleteFile(t,r,n){if(n===e.FileWatcherEventKind.Changed){return}var i=getCachedFileSystemEntriesForBaseDir(r);if(i){updateFilesOfFileSystemEntry(i,getBaseNameOfFileName(t),n===e.FileWatcherEventKind.Created)}}function updateFilesOfFileSystemEntry(e,t,r){updateFileSystemEntry(e.files,t,r)}function clearCache(){i.clear()}}e.createCachedDirectoryStructureHost=createCachedDirectoryStructureHost;var t;(function(e){e[e["None"]=0]="None";e[e["Partial"]=1]="Partial";e[e["Full"]=2]="Full"})(t=e.ConfigFileProgramReloadLevel||(e.ConfigFileProgramReloadLevel={}));function updateMissingFilePathsWatch(t,r,n){var i=t.getMissingFilePaths();var a=e.arrayToSet(i);e.mutateMap(r,a,{createNewValue:n,onDeleteValue:e.closeFileWatcher})}e.updateMissingFilePathsWatch=updateMissingFilePathsWatch;function updateWatchingWildcardDirectories(t,r,n){e.mutateMap(t,r,{createNewValue:createWildcardDirectoryWatcher,onDeleteValue:closeFileWatcherOf,onExistingValue:updateWildcardDirectoryWatcher});function createWildcardDirectoryWatcher(e,t){return{watcher:n(e,t),flags:t}}function updateWildcardDirectoryWatcher(e,r,n){if(e.flags===r){return}e.watcher.close();t.set(n,createWildcardDirectoryWatcher(n,r))}}e.updateWatchingWildcardDirectories=updateWatchingWildcardDirectories;function isEmittedFileOfProgram(e,t){if(!e){return false}return e.isEmittedFile(t)}e.isEmittedFileOfProgram=isEmittedFileOfProgram;var r;(function(e){e[e["None"]=0]="None";e[e["TriggerOnly"]=1]="TriggerOnly";e[e["Verbose"]=2]="Verbose"})(r=e.WatchLogLevel||(e.WatchLogLevel={}));function getWatchFactory(e,t,r){return getWatchFactoryWith(e,t,r,watchFile,watchDirectory)}e.getWatchFactory=getWatchFactory;function getWatchFactoryWith(e,t,n,i,a){var o=getCreateFileWatcher(e,i);var s=e===r.None?watchFilePath:o;var c=getCreateFileWatcher(e,a);return{watchFile:function(e,r,a,s,c,u){return o(e,r,a,s,undefined,c,u,i,t,"FileWatcher",n)},watchFilePath:function(e,r,a,o,c,u,l){return s(e,r,a,o,c,u,l,i,t,"FileWatcher",n)},watchDirectory:function(e,r,i,o,s,u){return c(e,r,i,o,undefined,s,u,a,t,"DirectoryWatcher",n)}};function watchFilePath(e,t,r,n,a){return i(e,t,function(e,t){return r(e,t,a)},n)}}function watchFile(e,t,r,n){return e.watchFile(t,r,n)}function watchDirectory(e,t,r,n){return e.watchDirectory(t,r,(n&1)!==0)}function getCreateFileWatcher(e,t){switch(e){case r.None:return t;case r.TriggerOnly:return createFileWatcherWithTriggerLogging;case r.Verbose:return t===watchDirectory?createDirectoryWatcherWithLogging:createFileWatcherWithLogging}}function createFileWatcherWithLogging(e,t,r,n,i,a,o,s,c,u,l){c(u+":: Added:: "+getWatchInfo(t,n,a,o,l));var f=createFileWatcherWithTriggerLogging(e,t,r,n,i,a,o,s,c,u,l);return{close:function(){c(u+":: Close:: "+getWatchInfo(t,n,a,o,l));f.close()}}}function createDirectoryWatcherWithLogging(t,r,n,i,a,o,s,c,u,l,f){var d=l+":: Added:: "+getWatchInfo(r,i,o,s,f);u(d);var p=e.timestamp();var g=createFileWatcherWithTriggerLogging(t,r,n,i,a,o,s,c,u,l,f);var _=e.timestamp()-p;u("Elapsed:: "+_+"ms "+d);return{close:function(){var t=l+":: Close:: "+getWatchInfo(r,i,o,s,f);u(t);var n=e.timestamp();g.close();var a=e.timestamp()-n;u("Elapsed:: "+a+"ms "+t)}}}function createFileWatcherWithTriggerLogging(t,r,n,i,a,o,s,c,u,l,f){return c(t,r,function(t,c){var d=l+":: Triggered with "+t+" "+(c!==undefined?c:"")+":: "+getWatchInfo(r,i,o,s,f);u(d);var p=e.timestamp();n(t,c,a);var g=e.timestamp()-p;u("Elapsed:: "+g+"ms "+d)},i)}function getWatchInfo(e,t,r,n,i){return"WatchInfo: "+e+" "+t+" "+(i?i(r,n):r)}function closeFileWatcherOf(e){e.watcher.close()}e.closeFileWatcherOf=closeFileWatcherOf})(s||(s={}));var s;(function(e){var t=/(^\s*$)|(^\s*\/\/\/?\s*(@ts-ignore)?)/;function findConfigFile(t,r,n){if(n===void 0){n="tsconfig.json"}return e.forEachAncestorDirectory(t,function(t){var i=e.combinePaths(t,n);return r(i)?i:undefined})}e.findConfigFile=findConfigFile;function resolveTripleslashReference(t,r){var n=e.getDirectoryPath(r);var i=e.isRootedDiskPath(t)?t:e.combinePaths(n,t);return e.normalizePath(i)}e.resolveTripleslashReference=resolveTripleslashReference;function computeCommonSourceDirectoryOfFilenames(t,r,n){var i;var a=e.forEach(t,function(t){var a=e.getNormalizedPathComponents(t,r);a.pop();if(!i){i=a;return}var o=Math.min(i.length,a.length);for(var s=0;s<o;s++){if(n(i[s])!==n(a[s])){if(s===0){return true}i.length=s;break}}if(a.length<i.length){i.length=a.length}});if(a){return""}if(!i){return r}return e.getPathFromPathComponents(i)}e.computeCommonSourceDirectoryOfFilenames=computeCommonSourceDirectoryOfFilenames;function createCompilerHost(e,t){return createCompilerHostWorker(e,t)}e.createCompilerHost=createCompilerHost;function createCompilerHostWorker(t,r,n){if(n===void 0){n=e.sys}var i=e.createMap();function getCanonicalFileName(e){return n.useCaseSensitiveFileNames?e:e.toLowerCase()}function getSourceFile(t,n,i){var a;try{e.performance.mark("beforeIORead");a=c.readFile(t);e.performance.mark("afterIORead");e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){if(i){i(e.message)}a=""}return a!==undefined?e.createSourceFile(t,a,n,r):undefined}function directoryExists(e){if(i.has(e)){return true}if(n.directoryExists(e)){i.set(e,true);return true}return false}function ensureDirectoriesExist(t){if(t.length>e.getRootLength(t)&&!directoryExists(t)){var r=e.getDirectoryPath(t);ensureDirectoriesExist(r);if(c.createDirectory){c.createDirectory(t)}else{n.createDirectory(t)}}}var a;function writeFileIfUpdated(t,r,i){if(!a){a=e.createMap()}var o=n.createHash(r);var s=n.getModifiedTime(t);if(s){var c=a.get(t);if(c&&c.byteOrderMark===i&&c.hash===o&&c.mtime.getTime()===s.getTime()){return}}n.writeFile(t,r,i);var u=n.getModifiedTime(t)||e.missingFileModifiedTime;a.set(t,{hash:o,byteOrderMark:i,mtime:u})}function writeFile(r,i,a,o){try{e.performance.mark("beforeIOWrite");ensureDirectoriesExist(e.getDirectoryPath(e.normalizePath(r)));if(e.isWatchSet(t)&&n.createHash&&n.getModifiedTime){writeFileIfUpdated(r,i,a)}else{n.writeFile(r,i,a)}e.performance.mark("afterIOWrite");e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){if(o){o(e.message)}}}function getDefaultLibLocation(){return e.getDirectoryPath(e.normalizePath(n.getExecutingFilePath()))}var o=e.getNewLineCharacter(t,function(){return n.newLine});var s=n.realpath&&function(e){return n.realpath(e)};var c={getSourceFile:getSourceFile,getDefaultLibLocation:getDefaultLibLocation,getDefaultLibFileName:function(t){return e.combinePaths(getDefaultLibLocation(),e.getDefaultLibFileName(t))},writeFile:writeFile,getCurrentDirectory:e.memoize(function(){return n.getCurrentDirectory()}),useCaseSensitiveFileNames:function(){return n.useCaseSensitiveFileNames},getCanonicalFileName:getCanonicalFileName,getNewLine:function(){return o},fileExists:function(e){return n.fileExists(e)},readFile:function(e){return n.readFile(e)},trace:function(e){return n.write(e+o)},directoryExists:function(e){return n.directoryExists(e)},getEnvironmentVariable:function(e){return n.getEnvironmentVariable?n.getEnvironmentVariable(e):""},getDirectories:function(e){return n.getDirectories(e)},realpath:s,readDirectory:function(e,t,r,i,a){return n.readDirectory(e,t,r,i,a)},createDirectory:function(e){return n.createDirectory(e)}};return c}e.createCompilerHostWorker=createCompilerHostWorker;function changeCompilerHostToUseCache(t,r,n){var i=t.readFile;var a=t.fileExists;var o=t.directoryExists;var s=t.createDirectory;var c=t.writeFile;var u=t.getSourceFile;var l=e.createMap();var f=e.createMap();var d=e.createMap();var p=e.createMap();var g=function(e){var t=r(e);var n=l.get(t);if(n!==undefined)return n||undefined;return _(t,e)};var _=function(e,r){var n=i.call(t,r);l.set(e,n||false);return n};t.readFile=function(n){var a=r(n);var o=l.get(a);if(o!==undefined)return o;if(!e.fileExtensionIs(n,".json")){return i.call(t,n)}return _(a,n)};if(n){t.getSourceFile=function(n,i,a,o){var s=r(n);var c=p.get(s);if(c)return c;var l=u.call(t,n,i,a,o);if(l&&(e.isDeclarationFileName(n)||e.fileExtensionIs(n,".json"))){p.set(s,l)}return l}}t.fileExists=function(e){var n=r(e);var i=f.get(n);if(i!==undefined)return i;var o=a.call(t,e);f.set(n,!!o);return o};t.writeFile=function(e,i,a,o,s){var u=r(e);f.delete(u);var d=l.get(u);if(d&&d!==i){l.delete(u);p.delete(u)}else if(n){var g=p.get(u);if(g&&g.text!==i){p.delete(u)}}c.call(t,e,i,a,o,s)};if(o&&s){t.directoryExists=function(e){var n=r(e);var i=d.get(n);if(i!==undefined)return i;var a=o.call(t,e);d.set(n,!!a);return a};t.createDirectory=function(e){var n=r(e);d.delete(n);s.call(t,e)}}return{originalReadFile:i,originalFileExists:a,originalDirectoryExists:o,originalCreateDirectory:s,originalWriteFile:c,originalGetSourceFile:u,readFileWithCache:g}}e.changeCompilerHostToUseCache=changeCompilerHostToUseCache;function getPreEmitDiagnostics(t,r,n){var i=t.getConfigFileParsingDiagnostics().concat(t.getOptionsDiagnostics(n),t.getSyntacticDiagnostics(r,n),t.getGlobalDiagnostics(n),t.getSemanticDiagnostics(r,n));if(e.getEmitDeclarations(t.getCompilerOptions())){e.addRange(i,t.getDeclarationDiagnostics(r,n))}return e.sortAndDeduplicateDiagnostics(i)}e.getPreEmitDiagnostics=getPreEmitDiagnostics;function formatDiagnostics(e,t){var r="";for(var n=0,i=e;n<i.length;n++){var a=i[n];r+=formatDiagnostic(a,t)}return r}e.formatDiagnostics=formatDiagnostics;function formatDiagnostic(t,r){var n=e.diagnosticCategoryName(t)+" TS"+t.code+": "+flattenDiagnosticMessageText(t.messageText,r.getNewLine())+r.getNewLine();if(t.file){var i=e.getLineAndCharacterOfPosition(t.file,t.start),a=i.line,o=i.character;var s=t.file.fileName;var c=e.convertToRelativePath(s,r.getCurrentDirectory(),function(e){return r.getCanonicalFileName(e)});return c+"("+(a+1)+","+(o+1)+"): "+n}return n}e.formatDiagnostic=formatDiagnostic;var r;(function(e){e["Grey"]="";e["Red"]="";e["Yellow"]="";e["Blue"]="";e["Cyan"]=""})(r=e.ForegroundColorEscapeSequences||(e.ForegroundColorEscapeSequences={}));var i="";var a=" ";var o="";var s="...";var c=" ";var u=" ";function getCategoryFormat(t){switch(t){case e.DiagnosticCategory.Error:return r.Red;case e.DiagnosticCategory.Warning:return r.Yellow;case e.DiagnosticCategory.Suggestion:return e.Debug.fail("Should never get an Info diagnostic on the command line.");case e.DiagnosticCategory.Message:return r.Blue}}function formatColorAndReset(e,t){return t+e+o}e.formatColorAndReset=formatColorAndReset;function padLeft(e,t){while(e.length<t){e=" "+e}return e}function formatCodeSpan(t,r,n,c,u,l){var f=e.getLineAndCharacterOfPosition(t,r),d=f.line,p=f.character;var g=e.getLineAndCharacterOfPosition(t,r+n),_=g.line,m=g.character;var y=e.getLineAndCharacterOfPosition(t,t.text.length).line;var h=_-d>=4;var v=(_+1+"").length;if(h){v=Math.max(s.length,v)}var T="";for(var S=d;S<=_;S++){T+=l.getNewLine();if(h&&d+1<S&&S<_-1){T+=c+formatColorAndReset(padLeft(s,v),i)+a+l.getNewLine();S=_-1}var b=e.getPositionOfLineAndCharacter(t,S,0);var x=S<y?e.getPositionOfLineAndCharacter(t,S+1,0):t.text.length;var C=t.text.slice(b,x);C=C.replace(/\s+$/g,"");C=C.replace("\t"," ");T+=c+formatColorAndReset(padLeft(S+1+"",v),i)+a;T+=C+l.getNewLine();T+=c+formatColorAndReset(padLeft("",v),i)+a;T+=u;if(S===d){var E=S===_?m:undefined;T+=C.slice(0,p).replace(/\S/g," ");T+=C.slice(p,E).replace(/./g,"~")}else if(S===_){T+=C.slice(0,m).replace(/./g,"~")}else{T+=C.replace(/./g,"~")}T+=o}return T}function formatLocation(t,n,i,a){if(a===void 0){a=formatColorAndReset}var o=e.getLineAndCharacterOfPosition(t,n),s=o.line,c=o.character;var u=i?e.convertToRelativePath(t.fileName,i.getCurrentDirectory(),function(e){return i.getCanonicalFileName(e)}):t.fileName;var l="";l+=a(u,r.Cyan);l+=":";l+=a(""+(s+1),r.Yellow);l+=":";l+=a(""+(c+1),r.Yellow);return l}e.formatLocation=formatLocation;function formatDiagnosticsWithColorAndContext(t,n){var i="";for(var a=0,o=t;a<o.length;a++){var s=o[a];if(s.file){var l=s.file,f=s.start;i+=formatLocation(l,f,n);i+=" - "}i+=formatColorAndReset(e.diagnosticCategoryName(s),getCategoryFormat(s.category));i+=formatColorAndReset(" TS"+s.code+": ",r.Grey);i+=flattenDiagnosticMessageText(s.messageText,n.getNewLine());if(s.file){i+=n.getNewLine();i+=formatCodeSpan(s.file,s.start,s.length,"",getCategoryFormat(s.category),n);if(s.relatedInformation){i+=n.getNewLine();for(var d=0,p=s.relatedInformation;d<p.length;d++){var g=p[d],l=g.file,f=g.start,_=g.length,m=g.messageText;if(l){i+=n.getNewLine();i+=c+formatLocation(l,f,n);i+=formatCodeSpan(l,f,_,u,r.Cyan,n)}i+=n.getNewLine();i+=u+flattenDiagnosticMessageText(m,n.getNewLine())}}}i+=n.getNewLine()}return i}e.formatDiagnosticsWithColorAndContext=formatDiagnosticsWithColorAndContext;function flattenDiagnosticMessageText(t,r){if(e.isString(t)){return t}else{var n=t;var i="";var a=0;while(n){if(a){i+=r;for(var o=0;o<a;o++){i+=" "}}i+=n.messageText;a++;n=n.next}return i}}e.flattenDiagnosticMessageText=flattenDiagnosticMessageText;function loadWithLocalCache(t,r,n,i){if(t.length===0){return[]}var a=[];var o=e.createMap();for(var s=0,c=t;s<c.length;s++){var u=c[s];var l=void 0;if(o.has(u)){l=o.get(u)}else{o.set(u,l=i(u,r,n))}a.push(l)}return a}function isProgramUptoDate(t,r,n,i,a,o,s,c){if(!t||s){return false}if(t.getRootFileNames().length!==r.length){return false}var u;if(!e.arrayIsEqualTo(t.getProjectReferences(),c,projectReferenceUptoDate)){return false}if(t.getSourceFiles().some(sourceFileNotUptoDate)){return false}if(t.getMissingFilePaths().some(a)){return false}var l=t.getCompilerOptions();if(!e.compareDataObjects(l,n)){return false}if(l.configFile&&n.configFile){return l.configFile.text===n.configFile.text}return true;function sourceFileNotUptoDate(e){return!sourceFileVersionUptoDate(e)||o(e.path)}function sourceFileVersionUptoDate(e){return e.version===i(e.resolvedPath)}function projectReferenceUptoDate(r,n,i){if(!e.projectReferenceIsEqualTo(r,n)){return false}return resolvedProjectReferenceUptoDate(t.getResolvedProjectReferences()[i],r)}function resolvedProjectReferenceUptoDate(t,r){if(t){if(e.contains(u,t)){return true}if(!sourceFileVersionUptoDate(t.sourceFile)){return false}(u||(u=[])).push(t);return!e.forEach(t.references,function(e,r){return!resolvedProjectReferenceUptoDate(e,t.commandLine.projectReferences[r])})}return!a(resolveProjectReferencePath(r))}}e.isProgramUptoDate=isProgramUptoDate;function getConfigFileParsingDiagnostics(e){return e.options.configFile?e.options.configFile.parseDiagnostics.concat(e.errors):e.errors}e.getConfigFileParsingDiagnostics=getConfigFileParsingDiagnostics;function shouldProgramCreateNewSourceFiles(t,r){if(!t)return false;var n=t.getCompilerOptions();return!!e.sourceFileAffectingCompilerOptions.some(function(t){return!e.isJsonEqual(e.getCompilerOptionValue(n,t),e.getCompilerOptionValue(r,t))})}function createCreateProgramOptions(e,t,r,n,i){return{rootNames:e,options:t,host:r,oldProgram:n,configFileParsingDiagnostics:i}}function createProgram(r,i,a,o,s){var c=e.isArray(r)?createCreateProgramOptions(r,i,a,o,s):r;var u=c.rootNames,l=c.options,f=c.configFileParsingDiagnostics,d=c.projectReferences;var p=c.oldProgram;var g;var _;var m;var y;var h;var v;var T;var S;var b=e.createMap();var x={};var C={};var E=e.createMap();var D=e.createDiagnosticCollection();var k=typeof l.maxNodeModuleJsDepth==="number"?l.maxNodeModuleJsDepth:0;var N=0;var A=e.createMap();var O=e.createMap();e.performance.mark("beforeProgram");var F=c.host||createCompilerHost(l);var P=parseConfigHostFromCompilerHost(F);var I=l.noLib;var w=e.memoize(function(){return F.getDefaultLibFileName(l)});var M=F.getDefaultLibLocation?F.getDefaultLibLocation():e.getDirectoryPath(w());var L=e.createDiagnosticCollection();var R=F.getCurrentDirectory();var B=e.getSupportedExtensions(l);var j=e.getSuppoertedExtensionsWithJsonIfResolveJsonModule(l,B);var J=e.createMap();var W;var U;var z;var V=F.hasInvalidatedResolution||e.returnFalse;if(F.resolveModuleNames){z=function(t,r,n,i){return F.resolveModuleNames(e.Debug.assertEachDefined(t),r,n,i).map(function(t){if(!t||t.extension!==undefined){return t}var r=e.clone(t);r.extension=e.extensionFromPath(t.resolvedFileName);return r})}}else{U=e.createModuleResolutionCache(R,function(e){return F.getCanonicalFileName(e)});var K=function(t,r,n){return e.resolveModuleName(t,r,l,F,U,n).resolvedModule};z=function(t,r,n,i){return loadWithLocalCache(e.Debug.assertEachDefined(t),r,i,K)}}var q;if(F.resolveTypeReferenceDirectives){q=function(t,r,n){return F.resolveTypeReferenceDirectives(e.Debug.assertEachDefined(t),r,n)}}else{var G=function(t,r,n){return e.resolveTypeReferenceDirective(t,r,l,F,n).resolvedTypeReferenceDirective};q=function(t,r,n){return loadWithLocalCache(e.Debug.assertEachDefined(t),r,n,G)}}var H=e.createMap();var Q=e.createMap();var $=e.createMultiMap();var X=e.createMap();var Y;var Z=F.useCaseSensitiveFileNames()?e.createMap():undefined;var ee;var te;var re;var ne=shouldProgramCreateNewSourceFiles(p,l);var ie=tryReuseStructureFromOldProgram();if(ie!==2){_=[];m=[];if(d){if(!ee){ee=d.map(parseProjectReferenceConfigFile)}if(u.length){for(var ae=0,oe=ee;ae<oe.length;ae++){var se=oe[ae];if(se){var ce=se.commandLine.options.outFile||se.commandLine.options.out;if(ce){var ue=e.changeExtension(ce,".d.ts");processSourceFile(ue,false,false,undefined)}}}}}e.forEach(u,function(e){return processRootFile(e,false,false)});var le=u.length?e.getAutomaticTypeDirectiveNames(l,F):e.emptyArray;if(le.length){var fe=l.configFilePath?e.getDirectoryPath(l.configFilePath):F.getCurrentDirectory();var de=e.combinePaths(fe,"__inferred type names__.ts");var pe=q(le,de);for(var ge=0;ge<le.length;ge++){processTypeReferenceDirective(le[ge],pe[ge])}}if(u.length&&!I){var _e=w();if(!l.lib&&_e){processRootFile(_e,true,false)}else{e.forEach(l.lib,function(t){processRootFile(e.combinePaths(M,t),true,false)})}}Y=e.arrayFrom(X.keys(),function(e){return e}).filter(function(e){return!X.get(e)});y=e.stableSort(_,compareDefaultLibFiles).concat(m);_=undefined;m=undefined}e.Debug.assert(!!Y);if(p&&F.onReleaseOldSourceFile){var me=p.getSourceFiles();for(var ye=0,he=me;ye<he.length;ye++){var ve=he[ye];var Te=getSourceFileByPath(ve.resolvedPath);if(ne||!Te||ve.resolvedPath===ve.path&&Te.resolvedPath!==ve.path){F.onReleaseOldSourceFile(ve,p.getCompilerOptions(),!!getSourceFileByPath(ve.path))}}p.forEachResolvedProjectReference(function(e,t){if(e&&!getResolvedProjectReferenceByPath(t)){F.onReleaseOldSourceFile(e.sourceFile,p.getCompilerOptions(),false)}})}p=undefined;g={getRootFileNames:function(){return u},getSourceFile:getSourceFile,getSourceFileByPath:getSourceFileByPath,getSourceFiles:function(){return y},getMissingFilePaths:function(){return Y},getCompilerOptions:function(){return l},getSyntacticDiagnostics:getSyntacticDiagnostics,getOptionsDiagnostics:getOptionsDiagnostics,getGlobalDiagnostics:getGlobalDiagnostics,getSemanticDiagnostics:getSemanticDiagnostics,getSuggestionDiagnostics:getSuggestionDiagnostics,getDeclarationDiagnostics:getDeclarationDiagnostics,getTypeChecker:getTypeChecker,getClassifiableNames:getClassifiableNames,getDiagnosticsProducingTypeChecker:getDiagnosticsProducingTypeChecker,getCommonSourceDirectory:getCommonSourceDirectory,emit:emit,getCurrentDirectory:function(){return R},getNodeCount:function(){return getDiagnosticsProducingTypeChecker().getNodeCount()},getIdentifierCount:function(){return getDiagnosticsProducingTypeChecker().getIdentifierCount()},getSymbolCount:function(){return getDiagnosticsProducingTypeChecker().getSymbolCount()},getTypeCount:function(){return getDiagnosticsProducingTypeChecker().getTypeCount()},getFileProcessingDiagnostics:function(){return D},getResolvedTypeReferenceDirectives:function(){return E},isSourceFileFromExternalLibrary:isSourceFileFromExternalLibrary,isSourceFileDefaultLibrary:isSourceFileDefaultLibrary,dropDiagnosticsProducingTypeChecker:dropDiagnosticsProducingTypeChecker,getSourceFileFromReference:getSourceFileFromReference,getLibFileFromReference:getLibFileFromReference,sourceFileToPackageName:Q,redirectTargetsMap:$,isEmittedFile:isEmittedFile,getConfigFileParsingDiagnostics:getConfigFileParsingDiagnostics,getResolvedModuleWithFailedLookupLocationsFromCache:getResolvedModuleWithFailedLookupLocationsFromCache,getProjectReferences:getProjectReferences,getResolvedProjectReferences:getResolvedProjectReferences,getProjectReferenceRedirect:getProjectReferenceRedirect,getResolvedProjectReferenceToRedirect:getResolvedProjectReferenceToRedirect,getResolvedProjectReferenceByPath:getResolvedProjectReferenceByPath,forEachResolvedProjectReference:forEachResolvedProjectReference};verifyCompilerOptions();e.performance.mark("afterProgram");e.performance.measure("Program","beforeProgram","afterProgram");return g;function compareDefaultLibFiles(t,r){return e.compareValues(getDefaultLibFilePriority(t),getDefaultLibFilePriority(r))}function getDefaultLibFilePriority(t){if(e.containsPath(M,t.fileName,false)){var r=e.getBaseFileName(t.fileName);if(r==="lib.d.ts"||r==="lib.es6.d.ts")return 0;var n=e.removeSuffix(e.removePrefix(r,"lib."),".d.ts");var i=e.libs.indexOf(n);if(i!==-1)return i+1}return e.libs.length+2}function getResolvedModuleWithFailedLookupLocationsFromCache(t,r){return U&&e.resolveModuleNameFromCache(t,r,U)}function toPath(t){return e.toPath(t,R,getCanonicalFileName)}function getCommonSourceDirectory(){if(h===undefined){var t=e.filter(y,function(t){return e.sourceFileMayBeEmitted(t,l,isSourceFileFromExternalLibrary)});if(l.rootDir&&checkSourceFilesBelongToPath(t,l.rootDir)){h=e.getNormalizedAbsolutePath(l.rootDir,R)}else if(l.composite&&l.configFilePath){h=e.getDirectoryPath(e.normalizeSlashes(l.configFilePath));checkSourceFilesBelongToPath(t,h)}else{h=computeCommonSourceDirectory(t)}if(h&&h[h.length-1]!==e.directorySeparator){h+=e.directorySeparator}}return h}function getClassifiableNames(){if(!S){getTypeChecker();S=e.createUnderscoreEscapedMap();for(var t=0,r=y;t<r.length;t++){var n=r[t];e.copyEntries(n.classifiableNames,S)}}return S}function resolveModuleNamesReusingOldState(t,r,n){if(ie===0&&!n.ambientModuleNames.length){return z(t,r,undefined,getResolvedProjectReferenceToRedirect(n.originalFileName))}var i=p&&p.getSourceFile(r);if(i!==n&&n.resolvedModules){var a=[];for(var o=0,s=t;o<s.length;o++){var c=s[o];var u=n.resolvedModules.get(c);a.push(u)}return a}var f;var d;var g;var _={};for(var m=0;m<t.length;m++){var c=t[m];if(n===i&&!V(i.path)){var y=i&&i.resolvedModules.get(c);if(y){if(e.isTraceEnabled(l,F)){e.trace(F,e.Diagnostics.Reusing_resolution_of_module_0_to_file_1_from_old_program,c,r)}(d||(d=new Array(t.length)))[m]=y;(g||(g=[])).push(c);continue}}var h=false;if(e.contains(n.ambientModuleNames,c)){h=true;if(e.isTraceEnabled(l,F)){e.trace(F,e.Diagnostics.Module_0_was_resolved_as_locally_declared_ambient_module_in_file_1,c,r)}}else{h=moduleNameResolvesToAmbientModuleInNonModifiedFile(c)}if(h){(d||(d=new Array(t.length)))[m]=_}else{(f||(f=[])).push(c)}}var v=f&&f.length?z(f,r,g,getResolvedProjectReferenceToRedirect(n.originalFileName)):e.emptyArray;if(!d){e.Debug.assert(v.length===t.length);return v}var T=0;for(var m=0;m<d.length;m++){if(d[m]){if(d[m]===_){d[m]=undefined}}else{d[m]=v[T];T++}}e.Debug.assert(T===v.length);return d;function moduleNameResolvesToAmbientModuleInNonModifiedFile(t){var r=e.getResolvedModule(i,t);var n=r&&p.getSourceFile(r.resolvedFileName);if(r&&n&&!n.externalModuleIndicator){return false}var a=b.get(t);if(!a){return false}if(e.isTraceEnabled(l,F)){e.trace(F,e.Diagnostics.Module_0_was_resolved_as_ambient_module_declared_in_1_since_this_file_was_not_modified,t,a)}return true}}function canReuseProjectReferences(){return!forEachProjectReference(p.getProjectReferences(),p.getResolvedProjectReferences(),function(e,t,r){var n=(r?r.commandLine.projectReferences:d)[t];var i=parseProjectReferenceConfigFile(n);if(e){return!i||i.sourceFile!==e.sourceFile}else{return i!==undefined}},function(t,r){var n=r?getResolvedProjectReferenceByPath(r.sourceFile.path).commandLine.projectReferences:d;return!e.arrayIsEqualTo(t,n,e.projectReferenceIsEqualTo)})}function tryReuseStructureFromOldProgram(){if(!p){return 0}var t=p.getCompilerOptions();if(e.changesAffectModuleResolution(t,l)){return p.structureIsReused=0}e.Debug.assert(!(p.structureIsReused&(2|1)));var r=p.getRootFileNames();if(!e.arrayIsEqualTo(r,u)){return p.structureIsReused=0}if(!e.arrayIsEqualTo(l.types,t.types)){return p.structureIsReused=0}if(!canReuseProjectReferences()){return p.structureIsReused=0}if(d){ee=d.map(parseProjectReferenceConfigFile)}var n=[];var i=[];p.structureIsReused=2;if(p.getMissingFilePaths().some(function(e){return F.fileExists(e)})){return p.structureIsReused=0}var a=p.getSourceFiles();var o;(function(e){e[e["Exists"]=0]="Exists";e[e["Modified"]=1]="Modified"})(o||(o={}));var s=e.createMap();for(var c=0,f=a;c<f.length;c++){var g=f[c];var _=F.getSourceFileByPath?F.getSourceFileByPath(g.fileName,g.resolvedPath,l.target,undefined,ne):F.getSourceFile(g.fileName,l.target,undefined,ne);if(!_){return p.structureIsReused=0}e.Debug.assert(!_.redirectInfo,"Host should not return a redirect source file from `getSourceFile`");var m=void 0;if(g.redirectInfo){if(_!==g.redirectInfo.unredirected){return p.structureIsReused=0}m=false;_=g}else if(p.redirectTargetsMap.has(g.path)){if(_!==g){return p.structureIsReused=0}m=false}else{m=_!==g}_.path=g.path;_.originalFileName=g.originalFileName;_.resolvedPath=g.resolvedPath;_.fileName=g.fileName;var h=p.sourceFileToPackageName.get(g.path);if(h!==undefined){var v=s.get(h);var T=m?1:0;if(v!==undefined&&T===1||v===1){return p.structureIsReused=0}s.set(h,T)}if(m){if(!e.arrayIsEqualTo(g.libReferenceDirectives,_.libReferenceDirectives,fileReferenceIsEqualTo)){return p.structureIsReused=0}if(g.hasNoDefaultLib!==_.hasNoDefaultLib){p.structureIsReused=1}if(!e.arrayIsEqualTo(g.referencedFiles,_.referencedFiles,fileReferenceIsEqualTo)){p.structureIsReused=1}collectExternalModuleReferences(_);if(!e.arrayIsEqualTo(g.imports,_.imports,moduleNameIsEqualTo)){p.structureIsReused=1}if(!e.arrayIsEqualTo(g.moduleAugmentations,_.moduleAugmentations,moduleNameIsEqualTo)){p.structureIsReused=1}if((g.flags&1572864)!==(_.flags&1572864)){p.structureIsReused=1}if(!e.arrayIsEqualTo(g.typeReferenceDirectives,_.typeReferenceDirectives,fileReferenceIsEqualTo)){p.structureIsReused=1}i.push({oldFile:g,newFile:_})}else if(V(g.path)){p.structureIsReused=1;i.push({oldFile:g,newFile:_})}n.push(_)}if(p.structureIsReused!==2){return p.structureIsReused}var S=i.map(function(e){return e.oldFile});for(var x=0,C=a;x<C.length;x++){var k=C[x];if(!e.contains(S,k)){for(var N=0,A=k.ambientModuleNames;N<A.length;N++){var P=A[N];b.set(P,k.fileName)}}}for(var I=0,w=i;I<w.length;I++){var M=w[I],g=M.oldFile,_=M.newFile;var L=e.getNormalizedAbsolutePath(_.originalFileName,R);if(z){var B=getModuleNames(_);var j=resolveModuleNamesReusingOldState(B,L,_);var J=e.hasChangesInResolutions(B,j,g.resolvedModules,e.moduleResolutionIsEqualTo);if(J){p.structureIsReused=1;_.resolvedModules=e.zipToMap(B,j)}else{_.resolvedModules=g.resolvedModules}}if(q){var W=e.map(_.typeReferenceDirectives,function(e){return e.fileName.toLocaleLowerCase()});var j=q(W,L,getResolvedProjectReferenceToRedirect(_.originalFileName));var J=e.hasChangesInResolutions(W,j,g.resolvedTypeReferenceDirectiveNames,e.typeDirectiveIsEqualTo);if(J){p.structureIsReused=1;_.resolvedTypeReferenceDirectiveNames=e.zipToMap(W,j)}else{_.resolvedTypeReferenceDirectiveNames=g.resolvedTypeReferenceDirectiveNames}}}if(p.structureIsReused!==2){return p.structureIsReused}if(F.hasChangedAutomaticTypeDirectiveNames){return p.structureIsReused=1}Y=p.getMissingFilePaths();for(var U=0,K=n;U<K.length;U++){var _=K[U];var G=_.path;addFileToFilesByName(_,G,_.resolvedPath);if(p.isSourceFileFromExternalLibrary(p.getSourceFileByPath(G))){O.set(G,true)}}y=n;D=p.getFileProcessingDiagnostics();for(var H=0,X=i;H<X.length;H++){var Z=X[H];D.reattachFileDiagnostics(Z.newFile)}E=p.getResolvedTypeReferenceDirectives();Q=p.sourceFileToPackageName;$=p.redirectTargetsMap;return p.structureIsReused=2}function getEmitHost(t){return n({getPrependNodes:getPrependNodes,getCanonicalFileName:getCanonicalFileName,getCommonSourceDirectory:g.getCommonSourceDirectory,getCompilerOptions:g.getCompilerOptions,getCurrentDirectory:function(){return R},getNewLine:function(){return F.getNewLine()},getSourceFile:g.getSourceFile,getSourceFileByPath:g.getSourceFileByPath,getSourceFiles:g.getSourceFiles,getLibFileFromReference:g.getLibFileFromReference,isSourceFileFromExternalLibrary:isSourceFileFromExternalLibrary,writeFile:t||function(e,t,r,n,i){return F.writeFile(e,t,r,n,i)},isEmitBlocked:isEmitBlocked,readFile:function(e){return F.readFile(e)},fileExists:function(t){var r=toPath(t);if(getSourceFileByPath(r))return true;if(e.contains(Y,r))return false;return F.fileExists(t)}},F.directoryExists?{directoryExists:function(e){return F.directoryExists(e)}}:{},{useCaseSensitiveFileNames:function(){return F.useCaseSensitiveFileNames()}})}function getResolvedProjectReferences(){return ee}function getProjectReferences(){return d}function getPrependNodes(){if(!d){return e.emptyArray}var t=[];for(var r=0;r<d.length;r++){var n=d[r];var i=ee[r].commandLine;if(n.prepend&&i&&i.options){var a=i.options.outFile||i.options.out;if(!a)continue;var o=e.changeExtension(a,".d.ts");var s=F.readFile(a)||"/* Input file "+a+" was missing */\r\n";var c=a+".map";var u=F.readFile(c);var l=F.readFile(o)||"/* Input file "+o+" was missing */\r\n";var f=o+".map";var p=F.readFile(f);var g=e.createInputFiles(s,l,u&&c,u,p&&f,p);t.push(g)}}return t}function isSourceFileFromExternalLibrary(e){return!!O.get(e.path)}function isSourceFileDefaultLibrary(t){if(t.hasNoDefaultLib){return true}if(!l.noLib){return false}var r=F.useCaseSensitiveFileNames()?e.equateStringsCaseSensitive:e.equateStringsCaseInsensitive;if(!l.lib){return r(t.fileName,w())}else{return e.some(l.lib,function(n){return r(t.fileName,e.combinePaths(M,n))})}}function getDiagnosticsProducingTypeChecker(){return v||(v=e.createTypeChecker(g,true))}function dropDiagnosticsProducingTypeChecker(){v=undefined}function getTypeChecker(){return T||(T=e.createTypeChecker(g,false))}function emit(e,t,r,n,i){return runWithCancellationToken(function(){return emitWorker(g,e,t,r,n,i)})}function isEmitBlocked(e){return J.has(toPath(e))}function emitWorker(t,r,n,i,a,o){var s=[];if(!a){if(l.noEmit){return{diagnostics:s,sourceMaps:undefined,emittedFiles:undefined,emitSkipped:true}}if(l.noEmitOnError){var c=t.getOptionsDiagnostics(i).concat(t.getSyntacticDiagnostics(r,i),t.getGlobalDiagnostics(i),t.getSemanticDiagnostics(r,i));if(c.length===0&&e.getEmitDeclarations(t.getCompilerOptions())){s=t.getDeclarationDiagnostics(undefined,i)}if(c.length>0||s.length>0){return{diagnostics:e.concatenate(c,s),sourceMaps:undefined,emittedFiles:undefined,emitSkipped:true}}}}var u=getDiagnosticsProducingTypeChecker().getEmitResolver(l.outFile||l.out?undefined:r,i);e.performance.mark("beforeEmit");var f=a?[]:e.getTransformers(l,o);var d=e.emitFiles(u,getEmitHost(n),r,a,f,o&&o.afterDeclarations);e.performance.mark("afterEmit");e.performance.measure("Emit","beforeEmit","afterEmit");return d}function getSourceFile(e){return getSourceFileByPath(toPath(e))}function getSourceFileByPath(e){return X.get(e)}function getDiagnosticsHelper(t,r,n){if(t){return r(t,n)}return e.sortAndDeduplicateDiagnostics(e.flatMap(g.getSourceFiles(),function(e){if(n){n.throwIfCancellationRequested()}return r(e,n)}))}function getSyntacticDiagnostics(e,t){return getDiagnosticsHelper(e,getSyntacticDiagnosticsForFile,t)}function getSemanticDiagnostics(e,t){return getDiagnosticsHelper(e,getSemanticDiagnosticsForFile,t)}function getDeclarationDiagnostics(e,t){var r=g.getCompilerOptions();if(!e||r.out||r.outFile){return getDeclarationDiagnosticsWorker(e,t)}else{return getDiagnosticsHelper(e,getDeclarationDiagnosticsForFile,t)}}function getSyntacticDiagnosticsForFile(t){if(e.isSourceFileJS(t)){if(!t.additionalSyntacticDiagnostics){t.additionalSyntacticDiagnostics=getJSSyntacticDiagnosticsForFile(t)}return e.concatenate(t.additionalSyntacticDiagnostics,t.parseDiagnostics)}return t.parseDiagnostics}function runWithCancellationToken(t){try{return t()}catch(t){if(t instanceof e.OperationCanceledException){T=undefined;v=undefined}throw t}}function getSemanticDiagnosticsForFile(e,t){return getAndCacheDiagnostics(e,t,x,getSemanticDiagnosticsForFileNoCache)}function getSemanticDiagnosticsForFileNoCache(t,r){return runWithCancellationToken(function(){if(e.skipTypeChecking(t,l)){return e.emptyArray}var n=getDiagnosticsProducingTypeChecker();e.Debug.assert(!!t.bindDiagnostics);var i=e.isCheckJsEnabledForFile(t,l);var a=t.scriptKind===3||t.scriptKind===4||t.scriptKind===5||i||t.scriptKind===7;var o=a?t.bindDiagnostics:e.emptyArray;var s=a?n.getDiagnostics(t,r):e.emptyArray;var c=D.getDiagnostics(t.fileName);var u=L.getDiagnostics(t.fileName);var f;for(var d=0,p=[o,s,c,u,i?t.jsDocDiagnostics:undefined];d<p.length;d++){var g=p[d];if(g){for(var _=0,m=g;_<m.length;_++){var y=m[_];if(shouldReportDiagnostic(y)){f=e.append(f,y)}}}}return f})}function getSuggestionDiagnostics(e,t){return runWithCancellationToken(function(){return getDiagnosticsProducingTypeChecker().getSuggestionDiagnostics(e,t)})}function shouldReportDiagnostic(r){var n=r.file,i=r.start;if(n){var a=e.getLineStarts(n);var o=e.computeLineAndCharacterOfPosition(a,i).line;while(o>0){var s=n.text.slice(a[o-1],a[o]);var c=t.exec(s);if(!c){return true}if(c[3]){return false}o--}}return true}function getJSSyntacticDiagnosticsForFile(t){return runWithCancellationToken(function(){var r=[];var n=t;walk(t);return r;function walk(t){switch(n.kind){case 151:case 154:if(n.questionToken===t){r.push(createDiagnosticForNode(t,e.Diagnostics._0_can_only_be_used_in_a_ts_file,"?"));return}case 156:case 155:case 157:case 158:case 159:case 196:case 239:case 197:case 237:if(n.type===t){r.push(createDiagnosticForNode(t,e.Diagnostics.types_can_only_be_used_in_a_ts_file));return}}switch(t.kind){case 248:r.push(createDiagnosticForNode(t,e.Diagnostics.import_can_only_be_used_in_a_ts_file));return;case 254:if(t.isExportEquals){r.push(createDiagnosticForNode(t,e.Diagnostics.export_can_only_be_used_in_a_ts_file));return}break;case 273:var i=t;if(i.token===109){r.push(createDiagnosticForNode(t,e.Diagnostics.implements_clauses_can_only_be_used_in_a_ts_file));return}break;case 241:r.push(createDiagnosticForNode(t,e.Diagnostics.interface_declarations_can_only_be_used_in_a_ts_file));return;case 244:r.push(createDiagnosticForNode(t,e.Diagnostics.module_declarations_can_only_be_used_in_a_ts_file));return;case 242:r.push(createDiagnosticForNode(t,e.Diagnostics.type_aliases_can_only_be_used_in_a_ts_file));return;case 243:r.push(createDiagnosticForNode(t,e.Diagnostics.enum_declarations_can_only_be_used_in_a_ts_file));return;case 213:r.push(createDiagnosticForNode(t,e.Diagnostics.non_null_assertions_can_only_be_used_in_a_ts_file));return;case 212:r.push(createDiagnosticForNode(t.type,e.Diagnostics.type_assertion_expressions_can_only_be_used_in_a_ts_file));return;case 194:e.Debug.fail()}var a=n;n=t;e.forEachChild(t,walk,walkArray);n=a}function walkArray(t){if(n.decorators===t&&!l.experimentalDecorators){r.push(createDiagnosticForNode(n,e.Diagnostics.Experimental_support_for_decorators_is_a_feature_that_is_subject_to_change_in_a_future_release_Set_the_experimentalDecorators_option_to_remove_this_warning))}switch(n.kind){case 240:case 156:case 155:case 157:case 158:case 159:case 196:case 239:case 197:if(t===n.typeParameters){r.push(createDiagnosticForNodeArray(t,e.Diagnostics.type_parameter_declarations_can_only_be_used_in_a_ts_file));return}case 219:if(t===n.modifiers){return checkModifiers(t,n.kind===219)}break;case 154:if(t===n.modifiers){for(var i=0,a=t;i<a.length;i++){var o=a[i];if(o.kind!==116){r.push(createDiagnosticForNode(o,e.Diagnostics._0_can_only_be_used_in_a_ts_file,e.tokenToString(o.kind)))}}return}break;case 151:if(t===n.modifiers){r.push(createDiagnosticForNodeArray(t,e.Diagnostics.parameter_modifiers_can_only_be_used_in_a_ts_file));return}break;case 191:case 192:case 211:case 261:case 262:if(t===n.typeArguments){r.push(createDiagnosticForNodeArray(t,e.Diagnostics.type_arguments_can_only_be_used_in_a_ts_file));return}break}for(var s=0,c=t;s<c.length;s++){var u=c[s];walk(u)}}function checkModifiers(t,n){for(var i=0,a=t;i<a.length;i++){var o=a[i];switch(o.kind){case 77:if(n){continue}case 115:case 113:case 114:case 133:case 125:case 118:r.push(createDiagnosticForNode(o,e.Diagnostics._0_can_only_be_used_in_a_ts_file,e.tokenToString(o.kind)));break;case 116:case 85:case 80:}}}function createDiagnosticForNodeArray(r,n,i,a,o){var s=r.pos;return e.createFileDiagnostic(t,s,r.end-s,n,i,a,o)}function createDiagnosticForNode(r,n,i,a,o){return e.createDiagnosticForNodeInSourceFile(t,r,n,i,a,o)}})}function getDeclarationDiagnosticsWorker(e,t){return getAndCacheDiagnostics(e,t,C,getDeclarationDiagnosticsForFileNoCache)}function getDeclarationDiagnosticsForFileNoCache(t,r){return runWithCancellationToken(function(){var n=getDiagnosticsProducingTypeChecker().getEmitResolver(t,r);return e.getDeclarationDiagnostics(getEmitHost(e.noop),n,t)})}function getAndCacheDiagnostics(t,r,n,i){var a=t?n.perFile&&n.perFile.get(t.path):n.allDiagnostics;if(a){return a}var o=i(t,r)||e.emptyArray;if(t){if(!n.perFile){n.perFile=e.createMap()}n.perFile.set(t.path,o)}else{n.allDiagnostics=o}return o}function getDeclarationDiagnosticsForFile(e,t){return e.isDeclarationFile?[]:getDeclarationDiagnosticsWorker(e,t)}function getOptionsDiagnostics(){return e.sortAndDeduplicateDiagnostics(e.concatenate(D.getGlobalDiagnostics(),e.concatenate(L.getGlobalDiagnostics(),getOptionsDiagnosticsOfConfigFile())))}function getOptionsDiagnosticsOfConfigFile(){if(!l.configFile){return e.emptyArray}var t=L.getDiagnostics(l.configFile.fileName);forEachResolvedProjectReference(function(r){if(r){t=e.concatenate(t,L.getDiagnostics(r.sourceFile.fileName))}});return t}function getGlobalDiagnostics(){return u.length?e.sortAndDeduplicateDiagnostics(getDiagnosticsProducingTypeChecker().getGlobalDiagnostics().slice()):e.emptyArray}function getConfigFileParsingDiagnostics(){return f||e.emptyArray}function processRootFile(t,r,n){processSourceFile(e.normalizePath(t),r,n,undefined)}function fileReferenceIsEqualTo(e,t){return e.fileName===t.fileName}function moduleNameIsEqualTo(e,t){return e.kind===72?t.kind===72&&e.escapedText===t.escapedText:t.kind===10&&e.text===t.text}function collectExternalModuleReferences(t){if(t.imports){return}var r=e.isSourceFileJS(t);var n=e.isExternalModule(t);var i;var a;var o;if(l.importHelpers&&(l.isolatedModules||n)&&!t.isDeclarationFile){var s=e.createLiteral(e.externalHelpersModuleNameText);var c=e.createImportDeclaration(undefined,undefined,undefined,s);e.addEmitFlags(c,67108864);s.parent=c;c.parent=t;i=[s]}for(var u=0,f=t.statements;u<f.length;u++){var d=f[u];collectModuleReferences(d,false)}if(t.flags&524288||r){collectDynamicImportOrRequireCalls(t)}t.imports=i||e.emptyArray;t.moduleAugmentations=a||e.emptyArray;t.ambientModuleNames=o||e.emptyArray;return;function collectModuleReferences(r,s){if(e.isAnyImportOrReExport(r)){var c=e.getExternalModuleName(r);if(c&&e.isStringLiteral(c)&&c.text&&(!s||!e.isExternalModuleNameRelative(c.text))){i=e.append(i,c)}}else if(e.isModuleDeclaration(r)){if(e.isAmbientModule(r)&&(s||e.hasModifier(r,2)||t.isDeclarationFile)){var u=e.getTextOfIdentifierOrLiteral(r.name);if(n||s&&!e.isExternalModuleNameRelative(u)){(a||(a=[])).push(r.name)}else if(!s){if(t.isDeclarationFile){(o||(o=[])).push(u)}var l=r.body;if(l){for(var f=0,d=l.statements;f<d.length;f++){var p=d[f];collectModuleReferences(p,true)}}}}}}function collectDynamicImportOrRequireCalls(t){var r=/import|require/g;while(r.exec(t.text)!==null){var n=getNodeAtPosition(t,r.lastIndex);if(e.isRequireCall(n,true)){i=e.append(i,n.arguments[0])}else if(e.isImportCall(n)&&n.arguments.length===1&&e.isStringLiteralLike(n.arguments[0])){i=e.append(i,n.arguments[0])}else if(e.isLiteralImportTypeNode(n)){i=e.append(i,n.argument.literal)}}}function getNodeAtPosition(t,n){var i=t;var a=function(e){if(e.pos<=n&&(n<e.end||n===e.end&&e.kind===1)){return e}};while(true){var o=r&&e.hasJSDocNodes(i)&&e.forEach(i.jsDoc,a)||e.forEachChild(i,a);if(!o){return i}i=o}}}function getLibFileFromReference(t){var r=t.fileName.toLocaleLowerCase();var n=e.libMap.get(r);if(n){return getSourceFile(e.combinePaths(M,n))}}function getSourceFileFromReference(e,t){return getSourceFileFromReferenceWorker(resolveTripleslashReference(t.fileName,e.fileName),function(e){return X.get(toPath(e))})}function getSourceFileFromReferenceWorker(t,r,n,i){if(e.hasExtension(t)){if(!l.allowNonTsExtensions&&!e.forEach(j,function(r){return e.fileExtensionIs(F.getCanonicalFileName(t),r)})){if(n)n(e.Diagnostics.File_0_has_unsupported_extension_The_only_supported_extensions_are_1,t,"'"+B.join("', '")+"'");return undefined}var a=r(t);if(n){if(!a){var o=getProjectReferenceRedirect(t);if(o){n(e.Diagnostics.Output_file_0_has_not_been_built_from_source_file_1,o,t)}else{n(e.Diagnostics.File_0_not_found,t)}}else if(i&&F.getCanonicalFileName(t)===F.getCanonicalFileName(i.fileName)){n(e.Diagnostics.A_file_cannot_have_a_reference_to_itself)}}return a}else{var s=l.allowNonTsExtensions&&r(t);if(s)return s;if(n&&l.allowNonTsExtensions){n(e.Diagnostics.File_0_not_found,t);return undefined}var c=e.forEach(B,function(e){return r(t+e)});if(n&&!c)n(e.Diagnostics.File_0_not_found,t+".ts");return c}}function processSourceFile(t,r,n,i,a,o,s){getSourceFileFromReferenceWorker(t,function(e){return findSourceFile(e,toPath(e),r,n,a,o,s,i)},function(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}D.add(a!==undefined&&s!==undefined&&o!==undefined?e.createFileDiagnostic.apply(void 0,[a,o,s-o,t].concat(r)):e.createCompilerDiagnostic.apply(void 0,[t].concat(r)))},a)}function reportFileNamesDifferOnlyInCasingError(t,r,n,i,a){if(n!==undefined&&i!==undefined&&a!==undefined){D.add(e.createFileDiagnostic(n,i,a-i,e.Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing,t,r))}else{D.add(e.createCompilerDiagnostic(e.Diagnostics.File_name_0_differs_from_already_included_file_name_1_only_in_casing,t,r))}}function createRedirectSourceFile(e,t,r,n,i,a){var o=Object.create(e);o.fileName=r;o.path=n;o.resolvedPath=i;o.originalFileName=a;o.redirectInfo={redirectTarget:e,unredirected:t};O.set(n,N>0);Object.defineProperties(o,{id:{get:function(){return this.redirectInfo.redirectTarget.id},set:function(e){this.redirectInfo.redirectTarget.id=e}},symbol:{get:function(){return this.redirectInfo.redirectTarget.symbol},set:function(e){this.redirectInfo.redirectTarget.symbol=e}}});return o}function findSourceFile(t,r,n,i,a,o,s,c){var u=t;if(X.has(r)){var f=X.get(r);if(f&&l.forceConsistentCasingInFileNames){var d=t;var p=f.fileName;var g=toPath(p)!==toPath(d);if(g){d=getProjectReferenceRedirect(t)||t}if(e.getNormalizedAbsolutePath(p,R)!==e.getNormalizedAbsolutePath(d,R)){reportFileNamesDifferOnlyInCasingError(d,p,a,o,s)}}if(f&&O.get(f.path)&&N===0){O.set(f.path,false);if(!l.noResolve){processReferencedFiles(f,n);processTypeReferenceDirectives(f)}processLibReferenceDirectives(f);A.set(f.path,false);processImportedModules(f)}else if(f&&A.get(f.path)){if(N<k){A.set(f.path,false);processImportedModules(f)}}return f}var y;if(a){var h=getProjectReferenceRedirect(t);if(h){(a.redirectedReferences||(a.redirectedReferences=[])).push(t);t=h;y=toPath(h)}}var v=F.getSourceFile(t,l.target,function(r){if(a!==undefined&&o!==undefined&&s!==undefined){D.add(e.createFileDiagnostic(a,o,s-o,e.Diagnostics.Cannot_read_file_0_Colon_1,t,r))}else{D.add(e.createCompilerDiagnostic(e.Diagnostics.Cannot_read_file_0_Colon_1,t,r))}},ne);if(c){var T=e.packageIdToString(c);var S=H.get(T);if(S){var b=createRedirectSourceFile(S,v,t,r,toPath(t),u);$.add(S.path,t);addFileToFilesByName(b,r,y);Q.set(r,c.name);m.push(b);return b}else if(v){H.set(T,v);Q.set(r,c.name)}}addFileToFilesByName(v,r,y);if(v){O.set(r,N>0);v.path=r;v.resolvedPath=toPath(t);v.originalFileName=u;if(F.useCaseSensitiveFileNames()){var x=r.toLowerCase();var C=Z.get(x);if(C){reportFileNamesDifferOnlyInCasingError(t,C.fileName,a,o,s)}else{Z.set(x,v)}}I=I||v.hasNoDefaultLib&&!i;if(!l.noResolve){processReferencedFiles(v,n);processTypeReferenceDirectives(v)}processLibReferenceDirectives(v);processImportedModules(v);if(n){_.push(v)}else{m.push(v)}}return v}function addFileToFilesByName(e,t,r){X.set(t,e);if(r){X.set(r,e)}}function getProjectReferenceRedirect(t){if(!ee||!ee.length||e.fileExtensionIs(t,".d.ts")||!e.fileExtensionIsOneOf(t,e.supportedTSExtensions)){return undefined}var r=getResolvedProjectReferenceToRedirect(t);if(!r){return undefined}var n=r.commandLine.options.outFile||r.commandLine.options.out;return n?e.changeExtension(n,".d.ts"):e.getOutputDeclarationFileName(t,r.commandLine)}function getResolvedProjectReferenceToRedirect(t){if(re===undefined){re=e.createMap();forEachResolvedProjectReference(function(e,t){if(e&&toPath(l.configFilePath)!==t){e.commandLine.fileNames.forEach(function(e){return re.set(toPath(e),t)})}})}var r=re.get(toPath(t));return r&&getResolvedProjectReferenceByPath(r)}function forEachResolvedProjectReference(e){return forEachProjectReference(d,ee,function(t,r,n){var i=(n?n.commandLine.projectReferences:d)[r];var a=toPath(resolveProjectReferencePath(i));return e(t,a)})}function forEachProjectReference(t,r,n,i){var a;return worker(t,r,undefined,n,i);function worker(t,r,n,i,o){if(o){var s=o(t,n);if(s){return s}}return e.forEach(r,function(t,r){if(e.contains(a,t)){return undefined}var s=i(t,r,n);if(s){return s}if(!t)return undefined;(a||(a=[])).push(t);return worker(t.commandLine.projectReferences,t.references,t,i,o)})}}function getResolvedProjectReferenceByPath(e){if(!te){return undefined}return te.get(e)||undefined}function processReferencedFiles(t,r){e.forEach(t.referencedFiles,function(e){var n=resolveTripleslashReference(e.fileName,t.originalFileName);processSourceFile(n,r,false,undefined,t,e.pos,e.end)})}function processTypeReferenceDirectives(t){var r=e.map(t.typeReferenceDirectives,function(e){return e.fileName.toLocaleLowerCase()});if(!r){return}var n=q(r,t.originalFileName,getResolvedProjectReferenceToRedirect(t.originalFileName));for(var i=0;i<r.length;i++){var a=t.typeReferenceDirectives[i];var o=n[i];var s=a.fileName.toLocaleLowerCase();e.setResolvedTypeReferenceDirective(t,s,o);processTypeReferenceDirective(s,o,t,a.pos,a.end)}}function processTypeReferenceDirective(t,r,n,i,a){var o=E.get(t);if(o&&o.primary){return}var s=true;if(r){if(r.isExternalLibraryImport)N++;if(r.primary){processSourceFile(r.resolvedFileName,false,false,r.packageId,n,i,a)}else{if(o){if(r.resolvedFileName!==o.resolvedFileName){var c=F.readFile(r.resolvedFileName);if(c!==getSourceFile(o.resolvedFileName).text){D.add(createDiagnostic(n,i,a,e.Diagnostics.Conflicting_definitions_for_0_found_at_1_and_2_Consider_installing_a_specific_version_of_this_library_to_resolve_the_conflict,t,r.resolvedFileName,o.resolvedFileName))}}s=false}else{processSourceFile(r.resolvedFileName,false,false,r.packageId,n,i,a)}}if(r.isExternalLibraryImport)N--}else{D.add(createDiagnostic(n,i,a,e.Diagnostics.Cannot_find_type_definition_file_for_0,t))}if(s){E.set(t,r)}}function processLibReferenceDirectives(t){e.forEach(t.libReferenceDirectives,function(r){var n=r.fileName.toLocaleLowerCase();var i=e.libMap.get(n);if(i){processRootFile(e.combinePaths(M,i),true,true)}else{var a=e.removeSuffix(e.removePrefix(n,"lib."),".d.ts");var o=e.getSpellingSuggestion(a,e.libs,e.identity);var s=o?e.Diagnostics.Cannot_find_lib_definition_for_0_Did_you_mean_1:e.Diagnostics.Cannot_find_lib_definition_for_0;D.add(createDiagnostic(t,r.pos,r.end,s,n,o))}})}function createDiagnostic(t,r,n,i){var a=[];for(var o=4;o<arguments.length;o++){a[o-4]=arguments[o]}if(t===undefined||r===undefined||n===undefined){return e.createCompilerDiagnostic.apply(void 0,[i].concat(a))}else{return e.createFileDiagnostic.apply(void 0,[t,r,n-r,i].concat(a))}}function getCanonicalFileName(e){return F.getCanonicalFileName(e)}function processImportedModules(t){collectExternalModuleReferences(t);if(t.imports.length||t.moduleAugmentations.length){var r=getModuleNames(t);var n=resolveModuleNamesReusingOldState(r,e.getNormalizedAbsolutePath(t.originalFileName,R),t);e.Debug.assert(n.length===r.length);for(var i=0;i<r.length;i++){var a=n[i];e.setResolvedModule(t,r[i],a);if(!a){continue}var o=a.isExternalLibraryImport;var s=!e.resolutionExtensionIsTSOrJson(a.extension);var c=o&&s;var u=a.resolvedFileName;if(o){N++}var f=c&&N>k;var d=u&&!getResolutionDiagnostic(l,a)&&!l.noResolve&&i<t.imports.length&&!f&&!(s&&!l.allowJs)&&(e.isInJSFile(t.imports[i])||!(t.imports[i].flags&2097152));if(f){A.set(t.path,true)}else if(d){var p=toPath(u);var g=e.skipTrivia(t.text,t.imports[i].pos);findSourceFile(u,p,false,false,t,g,t.imports[i].end,a.packageId)}if(o){N--}}}else{t.resolvedModules=undefined}}function computeCommonSourceDirectory(t){var r=e.mapDefined(t,function(e){return e.isDeclarationFile?undefined:e.fileName});return computeCommonSourceDirectoryOfFilenames(r,R,getCanonicalFileName)}function checkSourceFilesBelongToPath(t,r){var n=true;var i=F.getCanonicalFileName(e.getNormalizedAbsolutePath(r,R));for(var a=0,o=t;a<o.length;a++){var s=o[a];if(!s.isDeclarationFile){var c=F.getCanonicalFileName(e.getNormalizedAbsolutePath(s.fileName,R));if(c.indexOf(i)!==0){L.add(e.createCompilerDiagnostic(e.Diagnostics.File_0_is_not_under_rootDir_1_rootDir_is_expected_to_contain_all_source_files,s.fileName,r));n=false}}}return n}function parseProjectReferenceConfigFile(t){if(!te){te=e.createMap()}var r=resolveProjectReferencePath(t);var n=toPath(r);var i=te.get(n);if(i!==undefined){return i||undefined}var a=e.getNormalizedAbsolutePath(e.getDirectoryPath(r),F.getCurrentDirectory());var o=F.getSourceFile(r,100);addFileToFilesByName(o,n,undefined);if(o===undefined){te.set(n,false);return undefined}o.path=n;o.resolvedPath=n;o.originalFileName=r;var s=e.parseJsonSourceFileConfigFileContent(o,P,a,undefined,r);var c={commandLine:s,sourceFile:o};te.set(n,c);if(s.projectReferences){c.references=s.projectReferences.map(parseProjectReferenceConfigFile)}return c}function verifyCompilerOptions(){if(l.strictPropertyInitialization&&!e.getStrictOptionValue(l,"strictNullChecks")){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"strictPropertyInitialization","strictNullChecks")}if(l.isolatedModules){if(e.getEmitDeclarations(l)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,getEmitDeclarationOptionName(l),"isolatedModules")}if(l.noEmitOnError){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"noEmitOnError","isolatedModules")}if(l.out){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","isolatedModules")}if(l.outFile){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"outFile","isolatedModules")}}if(l.inlineSourceMap){if(l.sourceMap){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"sourceMap","inlineSourceMap")}if(l.mapRoot){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"mapRoot","inlineSourceMap")}}if(l.paths&&l.baseUrl===undefined){createDiagnosticForOptionName(e.Diagnostics.Option_paths_cannot_be_used_without_specifying_baseUrl_option,"paths")}if(l.composite){if(l.declaration===false){createDiagnosticForOptionName(e.Diagnostics.Composite_projects_may_not_disable_declaration_emit,"declaration")}}verifyProjectReferences();if(l.composite){var t=y.filter(function(e){return!e.isDeclarationFile});if(u.length<t.length){var r=u.map(function(t){return e.normalizePath(t).toLowerCase()});for(var n=0,i=t.map(function(t){return e.normalizePath(t.path).toLowerCase()});n<i.length;n++){var a=i[n];if(r.indexOf(a)===-1){L.add(e.createCompilerDiagnostic(e.Diagnostics.File_0_is_not_in_project_file_list_Projects_must_list_all_files_or_use_an_include_pattern,a))}}}}if(l.paths){for(var o in l.paths){if(!e.hasProperty(l.paths,o)){continue}if(!e.hasZeroOrOneAsteriskCharacter(o)){createDiagnosticForOptionPaths(true,o,e.Diagnostics.Pattern_0_can_have_at_most_one_Asterisk_character,o)}if(e.isArray(l.paths[o])){var s=l.paths[o].length;if(s===0){createDiagnosticForOptionPaths(false,o,e.Diagnostics.Substitutions_for_pattern_0_shouldn_t_be_an_empty_array,o)}for(var c=0;c<s;c++){var f=l.paths[o][c];var d=typeof f;if(d==="string"){if(!e.hasZeroOrOneAsteriskCharacter(f)){createDiagnosticForOptionPathKeyValue(o,c,e.Diagnostics.Substitution_0_in_pattern_1_in_can_have_at_most_one_Asterisk_character,f,o)}}else{createDiagnosticForOptionPathKeyValue(o,c,e.Diagnostics.Substitution_0_for_pattern_1_has_incorrect_type_expected_string_got_2,f,o,d)}}}else{createDiagnosticForOptionPaths(false,o,e.Diagnostics.Substitutions_for_pattern_0_should_be_an_array,o)}}}if(!l.sourceMap&&!l.inlineSourceMap){if(l.inlineSources){createDiagnosticForOptionName(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"inlineSources")}if(l.sourceRoot){createDiagnosticForOptionName(e.Diagnostics.Option_0_can_only_be_used_when_either_option_inlineSourceMap_or_option_sourceMap_is_provided,"sourceRoot")}}if(l.out&&l.outFile){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"out","outFile")}if(l.mapRoot&&!(l.sourceMap||l.declarationMap)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"mapRoot","sourceMap","declarationMap")}if(l.declarationDir){if(!e.getEmitDeclarations(l)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationDir","declaration","composite")}if(l.out||l.outFile){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"declarationDir",l.out?"out":"outFile")}}if(l.declarationMap&&!e.getEmitDeclarations(l)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"declarationMap","declaration","composite")}if(l.lib&&l.noLib){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"lib","noLib")}if(l.noImplicitUseStrict&&e.getStrictOptionValue(l,"alwaysStrict")){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"noImplicitUseStrict","alwaysStrict")}var p=l.target||0;var g=l.outFile||l.out;var _=e.find(y,function(t){return e.isExternalModule(t)&&!t.isDeclarationFile});if(l.isolatedModules){if(l.module===e.ModuleKind.None&&p<2){createDiagnosticForOptionName(e.Diagnostics.Option_isolatedModules_can_only_be_used_when_either_option_module_is_provided_or_option_target_is_ES2015_or_higher,"isolatedModules","target")}var m=e.find(y,function(t){return!e.isExternalModule(t)&&!t.isDeclarationFile&&t.scriptKind!==6});if(m){var h=e.getErrorSpanForNode(m,m);L.add(e.createFileDiagnostic(m,h.start,h.length,e.Diagnostics.Cannot_compile_namespaces_when_the_isolatedModules_flag_is_provided))}}else if(_&&p<2&&l.module===e.ModuleKind.None){var h=e.getErrorSpanForNode(_,_.externalModuleIndicator);L.add(e.createFileDiagnostic(_,h.start,h.length,e.Diagnostics.Cannot_use_imports_exports_or_module_augmentations_when_module_is_none))}if(g&&!l.emitDeclarationOnly){if(l.module&&!(l.module===e.ModuleKind.AMD||l.module===e.ModuleKind.System)){createDiagnosticForOptionName(e.Diagnostics.Only_amd_and_system_modules_are_supported_alongside_0,l.out?"out":"outFile","module")}else if(l.module===undefined&&_){var h=e.getErrorSpanForNode(_,_.externalModuleIndicator);L.add(e.createFileDiagnostic(_,h.start,h.length,e.Diagnostics.Cannot_compile_modules_using_option_0_unless_the_module_flag_is_amd_or_system,l.out?"out":"outFile"))}}if(l.resolveJsonModule){if(e.getEmitModuleResolutionKind(l)!==e.ModuleResolutionKind.NodeJs){createDiagnosticForOptionName(e.Diagnostics.Option_resolveJsonModule_cannot_be_specified_without_node_module_resolution_strategy,"resolveJsonModule")}else if(!e.hasJsonModuleEmitEnabled(l)){createDiagnosticForOptionName(e.Diagnostics.Option_resolveJsonModule_can_only_be_specified_when_module_code_generation_is_commonjs_amd_es2015_or_esNext,"resolveJsonModule","module")}}if(l.outDir||l.sourceRoot||l.mapRoot){var v=getCommonSourceDirectory();if(l.outDir&&v===""&&y.some(function(t){return e.getRootLength(t.fileName)>1})){createDiagnosticForOptionName(e.Diagnostics.Cannot_find_the_common_subdirectory_path_for_the_input_files,"outDir")}}if(!l.noEmit&&l.allowJs&&e.getEmitDeclarations(l)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"allowJs",getEmitDeclarationOptionName(l))}if(l.checkJs&&!l.allowJs){L.add(e.createCompilerDiagnostic(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"checkJs","allowJs"))}if(l.emitDeclarationOnly){if(!e.getEmitDeclarations(l)){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1_or_option_2,"emitDeclarationOnly","declaration","composite")}if(l.noEmit){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"emitDeclarationOnly","noEmit")}}if(l.emitDecoratorMetadata&&!l.experimentalDecorators){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_without_specifying_option_1,"emitDecoratorMetadata","experimentalDecorators")}if(l.jsxFactory){if(l.reactNamespace){createDiagnosticForOptionName(e.Diagnostics.Option_0_cannot_be_specified_with_option_1,"reactNamespace","jsxFactory")}if(!e.parseIsolatedEntityName(l.jsxFactory,p)){createOptionValueDiagnostic("jsxFactory",e.Diagnostics.Invalid_value_for_jsxFactory_0_is_not_a_valid_identifier_or_qualified_name,l.jsxFactory)}}else if(l.reactNamespace&&!e.isIdentifierText(l.reactNamespace,p)){createOptionValueDiagnostic("reactNamespace",e.Diagnostics.Invalid_value_for_reactNamespace_0_is_not_a_valid_identifier,l.reactNamespace)}if(!l.noEmit&&!l.suppressOutputPathCheck){var T=getEmitHost();var S=e.createMap();e.forEachEmittedFile(T,function(e){if(!l.emitDeclarationOnly){verifyEmitFilePath(e.jsFilePath,S)}verifyEmitFilePath(e.declarationFilePath,S)})}function verifyEmitFilePath(t,r){if(t){var n=toPath(t);if(X.has(n)){var i;if(!l.configFilePath){i=e.chainDiagnosticMessages(undefined,e.Diagnostics.Adding_a_tsconfig_json_file_will_help_organize_projects_that_contain_both_TypeScript_and_JavaScript_files_Learn_more_at_https_Colon_Slash_Slashaka_ms_Slashtsconfig)}i=e.chainDiagnosticMessages(i,e.Diagnostics.Cannot_write_file_0_because_it_would_overwrite_input_file,t);blockEmittingOfFile(t,e.createCompilerDiagnosticFromMessageChain(i))}var a=!F.useCaseSensitiveFileNames()?n.toLocaleLowerCase():n;if(r.has(a)){blockEmittingOfFile(t,e.createCompilerDiagnostic(e.Diagnostics.Cannot_write_file_0_because_it_would_be_overwritten_by_multiple_input_files,t))}else{r.set(a,true)}}}}function verifyProjectReferences(){forEachProjectReference(d,ee,function(t,r,n){var i=(n?n.commandLine.projectReferences:d)[r];var a=n&&n.sourceFile;if(!t){createDiagnosticForReference(a,r,e.Diagnostics.File_0_not_found,i.path);return}var o=t.commandLine.options;if(!o.composite){var s=n?n.commandLine.fileNames:u;if(s.length){createDiagnosticForReference(a,r,e.Diagnostics.Referenced_project_0_must_have_setting_composite_Colon_true,i.path)}}if(i.prepend){var c=o.outFile||o.out;if(c){if(!F.fileExists(c)){createDiagnosticForReference(a,r,e.Diagnostics.Output_file_0_from_project_1_does_not_exist,c,i.path)}}else{createDiagnosticForReference(a,r,e.Diagnostics.Cannot_prepend_project_0_because_it_does_not_have_outFile_set,i.path)}}})}function createDiagnosticForOptionPathKeyValue(t,r,n,i,a,o){var s=true;var c=getOptionPathsSyntax();for(var u=0,f=c;u<f.length;u++){var d=f[u];if(e.isObjectLiteralExpression(d.initializer)){for(var p=0,g=e.getPropertyAssignment(d.initializer,t);p<g.length;p++){var _=g[p];var m=_.initializer;if(e.isArrayLiteralExpression(m)&&m.elements.length>r){L.add(e.createDiagnosticForNodeInSourceFile(l.configFile,m.elements[r],n,i,a,o));s=false}}}}if(s){L.add(e.createCompilerDiagnostic(n,i,a,o))}}function createDiagnosticForOptionPaths(t,r,n,i){var a=true;var o=getOptionPathsSyntax();for(var s=0,c=o;s<c.length;s++){var u=c[s];if(e.isObjectLiteralExpression(u.initializer)&&createOptionDiagnosticInObjectLiteralSyntax(u.initializer,t,r,undefined,n,i)){a=false}}if(a){L.add(e.createCompilerDiagnostic(n,i))}}function getOptionsSyntaxByName(t){var r=getCompilerOptionsObjectLiteralSyntax();if(r){return e.getPropertyAssignment(r,t)}return undefined}function getOptionPathsSyntax(){return getOptionsSyntaxByName("paths")||e.emptyArray}function createDiagnosticForOptionName(e,t,r,n){createDiagnosticForOption(true,t,r,e,t,r,n)}function createOptionValueDiagnostic(e,t,r){createDiagnosticForOption(false,e,undefined,t,r)}function createDiagnosticForReference(t,r,n,i,a){var o=e.firstDefined(e.getTsConfigPropArray(t||l.configFile,"references"),function(t){return e.isArrayLiteralExpression(t.initializer)?t.initializer:undefined});if(o&&o.elements.length>r){L.add(e.createDiagnosticForNodeInSourceFile(t||l.configFile,o.elements[r],n,i,a))}else{L.add(e.createCompilerDiagnostic(n,i,a))}}function createDiagnosticForOption(t,r,n,i,a,o,s){var c=getCompilerOptionsObjectLiteralSyntax();var u=!c||!createOptionDiagnosticInObjectLiteralSyntax(c,t,r,n,i,a,o,s);if(u){L.add(e.createCompilerDiagnostic(i,a,o,s))}}function getCompilerOptionsObjectLiteralSyntax(){if(W===undefined){W=null;var t=e.getTsConfigObjectLiteralExpression(l.configFile);if(t){for(var r=0,n=e.getPropertyAssignment(t,"compilerOptions");r<n.length;r++){var i=n[r];if(e.isObjectLiteralExpression(i.initializer)){W=i.initializer;break}}}}return W}function createOptionDiagnosticInObjectLiteralSyntax(t,r,n,i,a,o,s,c){var u=e.getPropertyAssignment(t,n,i);for(var f=0,d=u;f<d.length;f++){var p=d[f];L.add(e.createDiagnosticForNodeInSourceFile(l.configFile,r?p.name:p.initializer,a,o,s,c))}return!!u.length}function blockEmittingOfFile(e,t){J.set(toPath(e),true);L.add(t)}function isEmittedFile(t){if(l.noEmit){return false}var r=toPath(t);if(getSourceFileByPath(r)){return false}var n=l.outFile||l.out;if(n){return isSameFile(r,n)||isSameFile(r,e.removeFileExtension(n)+".d.ts")}if(l.declarationDir&&e.containsPath(l.declarationDir,r,R,!F.useCaseSensitiveFileNames())){return true}if(l.outDir){return e.containsPath(l.outDir,r,R,!F.useCaseSensitiveFileNames())}if(e.fileExtensionIsOneOf(r,e.supportedJSExtensions)||e.fileExtensionIs(r,".d.ts")){var i=e.removeFileExtension(r);return!!getSourceFileByPath(i+".ts")||!!getSourceFileByPath(i+".tsx")}return false}function isSameFile(t,r){return e.comparePaths(t,r,R,!F.useCaseSensitiveFileNames())===0}}e.createProgram=createProgram;function parseConfigHostFromCompilerHost(t){return{fileExists:function(e){return t.fileExists(e)},readDirectory:function(r,n,i,a,o){e.Debug.assertDefined(t.readDirectory,"'CompilerHost.readDirectory' must be implemented to correctly process 'projectReferences'");return t.readDirectory(r,n,i,a,o)},readFile:function(e){return t.readFile(e)},useCaseSensitiveFileNames:t.useCaseSensitiveFileNames(),getCurrentDirectory:function(){return t.getCurrentDirectory()},onUnRecoverableConfigFileDiagnostic:function(){return undefined},trace:t.trace?function(e){return t.trace(e)}:undefined}}e.parseConfigHostFromCompilerHost=parseConfigHostFromCompilerHost;function resolveProjectReferencePath(t,r){var n=r?r:t;return e.resolveConfigFileProjectName(n.path)}e.resolveProjectReferencePath=resolveProjectReferencePath;function getEmitDeclarationOptionName(e){return e.declaration?"declaration":"composite"}function getResolutionDiagnostic(t,r){var n=r.extension;switch(n){case".ts":case".d.ts":return undefined;case".tsx":return needJsx();case".jsx":return needJsx()||needAllowJs();case".js":return needAllowJs();case".json":return needResolveJsonModule()}function needJsx(){return t.jsx?undefined:e.Diagnostics.Module_0_was_resolved_to_1_but_jsx_is_not_set}function needAllowJs(){return t.allowJs||!e.getStrictOptionValue(t,"noImplicitAny")?undefined:e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type}function needResolveJsonModule(){return t.resolveJsonModule?undefined:e.Diagnostics.Module_0_was_resolved_to_1_but_resolveJsonModule_is_not_used}}e.getResolutionDiagnostic=getResolutionDiagnostic;function getModuleNames(e){var t=e.imports,r=e.moduleAugmentations;var n=t.map(function(e){return e.text});for(var i=0,a=r;i<a.length;i++){var o=a[i];if(o.kind===10){n.push(o.text)}}return n}})(s||(s={}));var s;(function(e){function getFileEmitOutput(e,t,r,n,i){var a=[];var o=e.emit(t,writeFile,n,r,i);return{outputFiles:a,emitSkipped:o.emitSkipped,exportedModulesFromDeclarationEmit:o.exportedModulesFromDeclarationEmit};function writeFile(e,t,r){a.push({name:e,writeByteOrderMark:r,text:t})}}e.getFileEmitOutput=getFileEmitOutput})(s||(s={}));(function(e){var t;(function(t){function getReferencedFileFromImportedModuleSymbol(t){if(t.declarations&&t.declarations[0]){var r=e.getSourceFileOfNode(t.declarations[0]);return r&&r.resolvedPath}}function getReferencedFileFromImportLiteral(e,t){var r=e.getSymbolAtLocation(t);return r&&getReferencedFileFromImportedModuleSymbol(r)}function getReferencedFileFromFileName(t,r,n,i){return e.toPath(t.getProjectReferenceRedirect(r)||r,n,i)}function getReferencedFiles(t,r,n){var i;if(r.imports&&r.imports.length>0){var a=t.getTypeChecker();for(var o=0,s=r.imports;o<s.length;o++){var c=s[o];var u=getReferencedFileFromImportLiteral(a,c);if(u){addReferencedFile(u)}}}var l=e.getDirectoryPath(r.path);if(r.referencedFiles&&r.referencedFiles.length>0){for(var f=0,d=r.referencedFiles;f<d.length;f++){var p=d[f];var g=getReferencedFileFromFileName(t,p.fileName,l,n);addReferencedFile(g)}}if(r.resolvedTypeReferenceDirectiveNames){r.resolvedTypeReferenceDirectiveNames.forEach(function(e){if(!e){return}var r=e.resolvedFileName;var i=getReferencedFileFromFileName(t,r,l,n);addReferencedFile(i)})}if(r.moduleAugmentations.length){var a=t.getTypeChecker();for(var _=0,m=r.moduleAugmentations;_<m.length;_++){var y=m[_];if(!e.isStringLiteral(y)){continue}var h=a.getSymbolAtLocation(y);if(!h){continue}addReferenceFromAmbientModule(h)}}for(var v=0,T=t.getTypeChecker().getAmbientModules();v<T.length;v++){var S=T[v];if(S.declarations.length>1){addReferenceFromAmbientModule(S)}}return i;function addReferenceFromAmbientModule(t){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];var o=e.getSourceFileOfNode(a);if(o&&o!==r){addReferencedFile(o.resolvedPath)}}}function addReferencedFile(t){if(!i){i=e.createMap()}i.set(t,true)}}function canReuseOldState(e,t){return t&&!t.referencedMap===!e}t.canReuseOldState=canReuseOldState;function create(t,r,n){var i=e.createMap();var a=t.getCompilerOptions().module!==e.ModuleKind.None?e.createMap():undefined;var o=a?e.createMap():undefined;var s=e.createMap();var c=canReuseOldState(a,n);for(var u=0,l=t.getSourceFiles();u<l.length;u++){var f=l[u];var d=f.version;var p=c?n.fileInfos.get(f.path):undefined;if(a){var g=getReferencedFiles(t,f,r);if(g){a.set(f.path,g)}if(c){var _=n.exportedModulesMap.get(f.path);if(_){o.set(f.path,_)}}}i.set(f.path,{version:d,signature:p&&p.signature})}return{fileInfos:i,referencedMap:a,exportedModulesMap:o,hasCalledUpdateShapeSignature:s,allFilesExcludingDefaultLibraryFile:undefined,allFileNames:undefined}}t.create=create;function getFilesAffectedBy(t,r,n,i,a,o,s){var c=o||e.createMap();var u=r.getSourceFileByPath(n);if(!u){return e.emptyArray}if(!updateShapeSignature(t,r,u,c,i,a,s)){return[u]}var l=(t.referencedMap?getFilesAffectedByUpdatedShapeWhenModuleEmit:getFilesAffectedByUpdatedShapeWhenNonModuleEmit)(t,r,u,c,i,a,s);if(!o){updateSignaturesFromCache(t,c)}return l}t.getFilesAffectedBy=getFilesAffectedBy;function updateSignaturesFromCache(e,t){t.forEach(function(t,r){e.fileInfos.get(r).signature=t;e.hasCalledUpdateShapeSignature.set(r,true)})}t.updateSignaturesFromCache=updateSignaturesFromCache;function updateShapeSignature(t,r,n,i,a,o,s){e.Debug.assert(!!n);e.Debug.assert(!s||!!t.exportedModulesMap,"Compute visible to outside map only if visibleToOutsideReferencedMap present in the state");if(t.hasCalledUpdateShapeSignature.has(n.path)||i.has(n.path)){return false}var c=t.fileInfos.get(n.path);if(!c)return e.Debug.fail();var u=c.signature;var l;if(n.isDeclarationFile){l=n.version;if(s&&l!==u){var f=t.referencedMap?t.referencedMap.get(n.path):undefined;s.set(n.path,f||false)}}else{var d=e.getFileEmitOutput(r,n,true,a);if(d.outputFiles&&d.outputFiles.length>0){l=o(d.outputFiles[0].text);if(s&&l!==u){updateExportedModules(n,d.exportedModulesFromDeclarationEmit,s)}}else{l=u}}i.set(n.path,l);return!u||l!==u}function updateExportedModules(t,r,n){if(!r){n.set(t.path,false);return}var i;r.forEach(function(e){return addExportedModule(getReferencedFileFromImportedModuleSymbol(e))});n.set(t.path,i||false);function addExportedModule(t){if(t){if(!i){i=e.createMap()}i.set(t,true)}}}function updateExportedFilesMapFromCache(t,r){if(r){e.Debug.assert(!!t.exportedModulesMap);r.forEach(function(e,r){if(e){t.exportedModulesMap.set(r,e)}else{t.exportedModulesMap.delete(r)}})}}t.updateExportedFilesMapFromCache=updateExportedFilesMapFromCache;function getAllDependencies(t,r,n){var i;var a=r.getCompilerOptions();if(a.outFile||a.out){return getAllFileNames(t,r)}if(!t.referencedMap||isFileAffectingGlobalScope(n)){return getAllFileNames(t,r)}var o=e.createMap();var s=[n.path];while(s.length){var c=s.pop();if(!o.has(c)){o.set(c,true);var u=t.referencedMap.get(c);if(u){var l=u.keys();for(var f=l.next(),d=f.value,p=f.done;!p;i=l.next(),d=i.value,p=i.done,i){s.push(d)}}}}return e.arrayFrom(e.mapDefinedIterator(o.keys(),function(e){var t=r.getSourceFileByPath(e);return t?t.fileName:e}))}t.getAllDependencies=getAllDependencies;function getAllFileNames(t,r){if(!t.allFileNames){var n=r.getSourceFiles();t.allFileNames=n===e.emptyArray?e.emptyArray:n.map(function(e){return e.fileName})}return t.allFileNames}function getReferencedByPaths(t,r){return e.arrayFrom(e.mapDefinedIterator(t.referencedMap.entries(),function(e){var t=e[0],n=e[1];return n.has(r)?t:undefined}))}function containsOnlyAmbientModules(t){for(var r=0,n=t.statements;r<n.length;r++){var i=n[r];if(!e.isModuleWithStringLiteralName(i)){return false}}return true}function containsGlobalScopeAugmentation(t){return e.some(t.moduleAugmentations,function(t){return e.isGlobalScopeAugmentation(t.parent)})}function isFileAffectingGlobalScope(t){return containsGlobalScopeAugmentation(t)||!e.isExternalModule(t)&&!containsOnlyAmbientModules(t)}function getAllFilesExcludingDefaultLibraryFile(t,r,n){if(t.allFilesExcludingDefaultLibraryFile){return t.allFilesExcludingDefaultLibraryFile}var i;addSourceFile(n);for(var a=0,o=r.getSourceFiles();a<o.length;a++){var s=o[a];if(s!==n){addSourceFile(s)}}t.allFilesExcludingDefaultLibraryFile=i||e.emptyArray;return t.allFilesExcludingDefaultLibraryFile;function addSourceFile(e){if(!r.isSourceFileDefaultLibrary(e)){(i||(i=[])).push(e)}}}function getFilesAffectedByUpdatedShapeWhenNonModuleEmit(e,t,r){var n=t.getCompilerOptions();if(n&&(n.out||n.outFile)){return[r]}return getAllFilesExcludingDefaultLibraryFile(e,t,r)}function getFilesAffectedByUpdatedShapeWhenModuleEmit(t,r,n,i,a,o,s){if(isFileAffectingGlobalScope(n)){return getAllFilesExcludingDefaultLibraryFile(t,r,n)}var c=r.getCompilerOptions();if(c&&(c.isolatedModules||c.out||c.outFile)){return[n]}var u=e.createMap();u.set(n.path,n);var l=getReferencedByPaths(t,n.path);while(l.length>0){var f=l.pop();if(!u.has(f)){var d=r.getSourceFileByPath(f);u.set(f,d);if(d&&updateShapeSignature(t,r,d,i,a,o,s)){l.push.apply(l,getReferencedByPaths(t,f))}}}return e.arrayFrom(e.mapDefinedIterator(u.values(),function(e){return e}))}})(t=e.BuilderState||(e.BuilderState={}))})(s||(s={}));var s;(function(e){function hasSameKeys(t,r){return t===r||t!==undefined&&r!==undefined&&t.size===r.size&&!e.forEachKey(t,function(e){return!r.has(e)})}function createBuilderProgramState(t,r,n){var i=e.BuilderState.create(t,r,n);i.program=t;var a=t.getCompilerOptions();if(!a.outFile&&!a.out){i.semanticDiagnosticsPerFile=e.createMap()}i.changedFilesSet=e.createMap();var o=e.BuilderState.canReuseOldState(i.referencedMap,n);var s=o?n.program.getCompilerOptions():undefined;var c=o&&n.semanticDiagnosticsPerFile&&!!i.semanticDiagnosticsPerFile&&!e.compilerOptionsAffectSemanticDiagnostics(a,s);if(o){if(!n.currentChangedFilePath){e.Debug.assert(!n.affectedFiles&&(!n.currentAffectedFilesSignatures||!n.currentAffectedFilesSignatures.size),"Cannot reuse if only few affected files of currentChangedFile were iterated")}if(c){e.Debug.assert(!e.forEachKey(n.changedFilesSet,function(e){return n.semanticDiagnosticsPerFile.has(e)}),"Semantic diagnostics shouldnt be available for changed files")}e.copyEntries(n.changedFilesSet,i.changedFilesSet)}var u=i.referencedMap;var l=o?n.referencedMap:undefined;var f=c&&!a.skipLibCheck===!s.skipLibCheck;var d=f&&!a.skipDefaultLibCheck===!s.skipDefaultLibCheck;i.fileInfos.forEach(function(t,r){var a;var s;if(!o||!(a=n.fileInfos.get(r))||a.version!==t.version||!hasSameKeys(s=u&&u.get(r),l&&l.get(r))||s&&e.forEachKey(s,function(e){return!i.fileInfos.has(e)&&n.fileInfos.has(e)})){i.changedFilesSet.set(r,true)}else if(c){var p=i.program.getSourceFileByPath(r);if(p.isDeclarationFile&&!f){return}if(p.hasNoDefaultLib&&!d){return}var g=n.semanticDiagnosticsPerFile.get(r);if(g){i.semanticDiagnosticsPerFile.set(r,g);if(!i.semanticDiagnosticsFromOldState){i.semanticDiagnosticsFromOldState=e.createMap()}i.semanticDiagnosticsFromOldState.set(r,true)}}});return i}function assertSourceFileOkWithoutNextAffectedCall(t,r){e.Debug.assert(!r||!t.affectedFiles||t.affectedFiles[t.affectedFilesIndex-1]!==r||!t.semanticDiagnosticsPerFile.has(r.path))}function getNextAffectedFile(t,r,n){while(true){var i=t.affectedFiles;if(i){var a=t.seenAffectedFiles;var o=t.affectedFilesIndex;while(o<i.length){var s=i[o];if(!a.has(s.path)){t.affectedFilesIndex=o;cleanSemanticDiagnosticsOfAffectedFile(t,s);return s}a.set(s.path,true);o++}t.changedFilesSet.delete(t.currentChangedFilePath);t.currentChangedFilePath=undefined;e.BuilderState.updateSignaturesFromCache(t,t.currentAffectedFilesSignatures);t.currentAffectedFilesSignatures.clear();e.BuilderState.updateExportedFilesMapFromCache(t,t.currentAffectedFilesExportedModulesMap);t.affectedFiles=undefined}var c=t.changedFilesSet.keys().next();if(c.done){return undefined}var u=t.program.getCompilerOptions();if(u.outFile||u.out){e.Debug.assert(!t.semanticDiagnosticsPerFile);return t.program}t.currentAffectedFilesSignatures=t.currentAffectedFilesSignatures||e.createMap();if(t.exportedModulesMap){t.currentAffectedFilesExportedModulesMap=t.currentAffectedFilesExportedModulesMap||e.createMap()}t.affectedFiles=e.BuilderState.getFilesAffectedBy(t,t.program,c.value,r,n,t.currentAffectedFilesSignatures,t.currentAffectedFilesExportedModulesMap);t.currentChangedFilePath=c.value;t.affectedFilesIndex=0;t.seenAffectedFiles=t.seenAffectedFiles||e.createMap()}}function cleanSemanticDiagnosticsOfAffectedFile(t,r){if(removeSemanticDiagnosticsOf(t,r.path)){return}if(t.allFilesExcludingDefaultLibraryFile===t.affectedFiles&&!t.cleanedDiagnosticsOfLibFiles){t.cleanedDiagnosticsOfLibFiles=true;var n=t.program.getCompilerOptions();if(e.forEach(t.program.getSourceFiles(),function(r){return t.program.isSourceFileDefaultLibrary(r)&&!e.skipTypeChecking(r,n)&&removeSemanticDiagnosticsOf(t,r.path)})){return}}if(!t.exportedModulesMap||t.affectedFiles.length===1||!t.changedFilesSet.has(r.path)){return}e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap);var i=e.createMap();if(e.forEachEntry(t.currentAffectedFilesExportedModulesMap,function(e,n){return e&&e.has(r.path)&&removeSemanticDiagnosticsOfFilesReferencingPath(t,n,i)})){return}e.forEachEntry(t.exportedModulesMap,function(e,n){return!t.currentAffectedFilesExportedModulesMap.has(n)&&e.has(r.path)&&removeSemanticDiagnosticsOfFilesReferencingPath(t,n,i)})}function removeSemanticDiagnosticsOfFilesReferencingPath(t,r,n){return e.forEachEntry(t.referencedMap,function(e,i){return e.has(r)&&removeSemanticDiagnosticsOfFileAndExportsOfFile(t,i,n)})}function removeSemanticDiagnosticsOfFileAndExportsOfFile(t,r,n){if(!e.addToSeen(n,r)){return false}if(removeSemanticDiagnosticsOf(t,r)){return true}e.Debug.assert(!!t.currentAffectedFilesExportedModulesMap);if(e.forEachEntry(t.currentAffectedFilesExportedModulesMap,function(e,i){return e&&e.has(r)&&removeSemanticDiagnosticsOfFileAndExportsOfFile(t,i,n)})){return true}return!!e.forEachEntry(t.exportedModulesMap,function(e,i){return!t.currentAffectedFilesExportedModulesMap.has(i)&&e.has(r)&&removeSemanticDiagnosticsOfFileAndExportsOfFile(t,i,n)})}function removeSemanticDiagnosticsOf(e,t){if(!e.semanticDiagnosticsFromOldState){return true}e.semanticDiagnosticsFromOldState.delete(t);e.semanticDiagnosticsPerFile.delete(t);return!e.semanticDiagnosticsFromOldState.size}function doneWithAffectedFile(e,t){if(t===e.program){e.changedFilesSet.clear()}else{e.seenAffectedFiles.set(t.path,true);e.affectedFilesIndex++}}function toAffectedFileResult(e,t,r){doneWithAffectedFile(e,r);return{result:t,affected:r}}function getSemanticDiagnosticsOfFile(e,t,r){var n=t.path;var i=e.semanticDiagnosticsPerFile.get(n);if(i){return i}var a=e.program.getSemanticDiagnostics(t,r);e.semanticDiagnosticsPerFile.set(n,a);return a}var t;(function(e){e[e["SemanticDiagnosticsBuilderProgram"]=0]="SemanticDiagnosticsBuilderProgram";e[e["EmitAndSemanticDiagnosticsBuilderProgram"]=1]="EmitAndSemanticDiagnosticsBuilderProgram"})(t=e.BuilderProgramKind||(e.BuilderProgramKind={}));function getBuilderCreationParameters(t,r,n,i,a,o){var s;var c;var u;if(t===undefined){e.Debug.assert(r===undefined);s=n;u=i;e.Debug.assert(!!u);c=u.getProgram()}else if(e.isArray(t)){u=i;c=e.createProgram({rootNames:t,options:r,host:n,oldProgram:u&&u.getProgram(),configFileParsingDiagnostics:a,projectReferences:o});s=n}else{c=t;s=r;u=n;a=i}return{host:s,newProgram:c,oldProgram:u,configFileParsingDiagnostics:a||e.emptyArray}}e.getBuilderCreationParameters=getBuilderCreationParameters;function createBuilderProgram(r,n){var i=n.newProgram,a=n.host,o=n.oldProgram,s=n.configFileParsingDiagnostics;var c=o&&o.getState();if(c&&i===c.program&&s===i.getConfigFileParsingDiagnostics()){i=undefined;c=undefined;return o}var u=e.createGetCanonicalFileName(a.useCaseSensitiveFileNames());var l=a.createHash||e.identity;var f=createBuilderProgramState(i,u,c);i=undefined;o=undefined;c=undefined;var d={getState:function(){return f},getProgram:function(){return f.program},getCompilerOptions:function(){return f.program.getCompilerOptions()},getSourceFile:function(e){return f.program.getSourceFile(e)},getSourceFiles:function(){return f.program.getSourceFiles()},getOptionsDiagnostics:function(e){return f.program.getOptionsDiagnostics(e)},getGlobalDiagnostics:function(e){return f.program.getGlobalDiagnostics(e)},getConfigFileParsingDiagnostics:function(){return s||f.program.getConfigFileParsingDiagnostics()},getSyntacticDiagnostics:function(e,t){return f.program.getSyntacticDiagnostics(e,t)},getSemanticDiagnostics:getSemanticDiagnostics,emit:emit,getAllDependencies:function(t){return e.BuilderState.getAllDependencies(f,f.program,t)},getCurrentDirectory:function(){return f.program.getCurrentDirectory()}};if(r===t.SemanticDiagnosticsBuilderProgram){d.getSemanticDiagnosticsOfNextAffectedFile=getSemanticDiagnosticsOfNextAffectedFile}else if(r===t.EmitAndSemanticDiagnosticsBuilderProgram){d.emitNextAffectedFile=emitNextAffectedFile}else{e.notImplemented()}return d;function emitNextAffectedFile(e,t,r,n){var i=getNextAffectedFile(f,t,l);if(!i){return undefined}return toAffectedFileResult(f,f.program.emit(i===f.program?undefined:i,e||a.writeFile,t,r,n),i)}function emit(n,i,o,s,c){if(r===t.EmitAndSemanticDiagnosticsBuilderProgram){assertSourceFileOkWithoutNextAffectedCall(f,n);if(!n){var u=[];var l=false;var d=void 0;var p=[];var g=void 0;while(g=emitNextAffectedFile(i,o,s,c)){l=l||g.result.emitSkipped;d=e.addRange(d,g.result.diagnostics);p=e.addRange(p,g.result.emittedFiles);u=e.addRange(u,g.result.sourceMaps)}return{emitSkipped:l,diagnostics:d||e.emptyArray,emittedFiles:p,sourceMaps:u}}}return f.program.emit(n,i||a.writeFile,o,s,c)}function getSemanticDiagnosticsOfNextAffectedFile(e,t){while(true){var r=getNextAffectedFile(f,e,l);if(!r){return undefined}else if(r===f.program){return toAffectedFileResult(f,f.program.getSemanticDiagnostics(undefined,e),r)}if(t&&t(r)){doneWithAffectedFile(f,r);continue}return toAffectedFileResult(f,getSemanticDiagnosticsOfFile(f,r,e),r)}}function getSemanticDiagnostics(n,i){assertSourceFileOkWithoutNextAffectedCall(f,n);var a=f.program.getCompilerOptions();if(a.outFile||a.out){e.Debug.assert(!f.semanticDiagnosticsPerFile);return f.program.getSemanticDiagnostics(n,i)}if(n){return getSemanticDiagnosticsOfFile(f,n,i)}if(r===t.SemanticDiagnosticsBuilderProgram){var o=void 0;while(o=getNextAffectedFile(f,i,l)){doneWithAffectedFile(f,o)}}var s;for(var c=0,u=f.program.getSourceFiles();c<u.length;c++){var d=u[c];s=e.addRange(s,getSemanticDiagnosticsOfFile(f,d,i))}return s||e.emptyArray}}e.createBuilderProgram=createBuilderProgram})(s||(s={}));(function(e){function createSemanticDiagnosticsBuilderProgram(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.SemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))}e.createSemanticDiagnosticsBuilderProgram=createSemanticDiagnosticsBuilderProgram;function createEmitAndSemanticDiagnosticsBuilderProgram(t,r,n,i,a,o){return e.createBuilderProgram(e.BuilderProgramKind.EmitAndSemanticDiagnosticsBuilderProgram,e.getBuilderCreationParameters(t,r,n,i,a,o))}e.createEmitAndSemanticDiagnosticsBuilderProgram=createEmitAndSemanticDiagnosticsBuilderProgram;function createAbstractBuilder(t,r,n,i,a,o){var s=e.getBuilderCreationParameters(t,r,n,i,a,o).newProgram;return{getProgram:function(){return s},getState:e.notImplemented,getCompilerOptions:e.notImplemented,getSourceFile:e.notImplemented,getSourceFiles:e.notImplemented,getOptionsDiagnostics:e.notImplemented,getGlobalDiagnostics:e.notImplemented,getConfigFileParsingDiagnostics:e.notImplemented,getSyntacticDiagnostics:e.notImplemented,getSemanticDiagnostics:e.notImplemented,emit:e.notImplemented,getAllDependencies:e.notImplemented,getCurrentDirectory:e.notImplemented}}e.createAbstractBuilder=createAbstractBuilder})(s||(s={}));var s;(function(e){function isPathInNodeModulesStartingWithDot(t){return e.stringContains(t,"/node_modules/.")}e.isPathInNodeModulesStartingWithDot=isPathInNodeModulesStartingWithDot;e.maxNumberOfFilesToIterateForInvalidation=256;function createResolutionCache(t,r,n){var i;var a;var o;var s=false;var c=e.createMultiMap();var u=e.memoize(function(){return t.getCurrentDirectory()});var l=t.getCachedDirectoryStructureHost();var f=e.createMap();var d=e.createCacheWithRedirects();var p=e.createCacheWithRedirects();var g=e.createModuleResolutionCacheWithMaps(d,p,u(),t.getCanonicalFileName);var _=e.createMap();var m=e.createCacheWithRedirects();var y=[".ts",".tsx",".js",".jsx",".json"];var h=e.createMap();var v=e.createMap();var T=r&&e.removeTrailingDirectorySeparator(e.getNormalizedAbsolutePath(r,u()));var S=T&&t.toPath(T);var b=e.createMap();return{startRecordingFilesWithChangedResolutions:startRecordingFilesWithChangedResolutions,finishRecordingFilesWithChangedResolutions:finishRecordingFilesWithChangedResolutions,startCachingPerDirectoryResolution:clearPerDirectoryResolutions,finishCachingPerDirectoryResolution:finishCachingPerDirectoryResolution,resolveModuleNames:resolveModuleNames,getResolvedModuleWithFailedLookupLocationsFromCache:getResolvedModuleWithFailedLookupLocationsFromCache,resolveTypeReferenceDirectives:resolveTypeReferenceDirectives,removeResolutionsFromProjectReferenceRedirects:removeResolutionsFromProjectReferenceRedirects,removeResolutionsOfFile:removeResolutionsOfFile,invalidateResolutionOfFile:invalidateResolutionOfFile,setFilesWithInvalidatedNonRelativeUnresolvedImports:setFilesWithInvalidatedNonRelativeUnresolvedImports,createHasInvalidatedResolution:createHasInvalidatedResolution,updateTypeRootsWatch:updateTypeRootsWatch,closeTypeRootsWatch:closeTypeRootsWatch,clear:clear};function getResolvedModule(e){return e.resolvedModule}function getResolvedTypeReferenceDirective(e){return e.resolvedTypeReferenceDirective}function isInDirectoryPath(t,r){if(t===undefined||r.length<=t.length){return false}return e.startsWith(r,t)&&r[t.length]===e.directorySeparator}function clear(){e.clearMap(v,e.closeFileWatcherOf);h.clear();c.clear();closeTypeRootsWatch();f.clear();_.clear();s=false;clearPerDirectoryResolutions()}function startRecordingFilesWithChangedResolutions(){i=[]}function finishRecordingFilesWithChangedResolutions(){var e=i;i=undefined;return e}function isFileWithInvalidatedNonRelativeUnresolvedImports(e){if(!o){return false}var t=o.get(e);return!!t&&!!t.length}function createHasInvalidatedResolution(t){if(s||t){a=undefined;return e.returnTrue}var r=a;a=undefined;return function(e){return!!r&&r.has(e)||isFileWithInvalidatedNonRelativeUnresolvedImports(e)}}function clearPerDirectoryResolutions(){d.clear();p.clear();m.clear();c.forEach(watchFailedLookupLocationOfNonRelativeModuleResolutions);c.clear()}function finishCachingPerDirectoryResolution(){s=false;o=undefined;clearPerDirectoryResolutions();v.forEach(function(e,t){if(e.refCount===0){v.delete(t);e.watcher.close()}})}function resolveModuleName(r,n,i,a,o){var s=e.resolveModuleName(r,n,i,a,g,o);if(!t.getGlobalCache){return s}var c=t.getGlobalCache();if(c!==undefined&&!e.isExternalModuleNameRelative(r)&&!(s.resolvedModule&&e.extensionIsTS(s.resolvedModule.extension))){var u=e.loadModuleFromGlobalCache(r,t.projectName,i,a,c),l=u.resolvedModule,f=u.failedLookupLocations;if(l){return{resolvedModule:l,failedLookupLocations:e.addRange(s.failedLookupLocations,f)}}}return s}function resolveNamesWithLocalCache(r,n,a,o,c,u,l,f,d,p){var g=t.toPath(n);var _=o.get(g)||o.set(g,e.createMap()).get(g);var m=e.getDirectoryPath(g);var y=c.getOrCreateMapOfCacheRedirects(a);var h=y.get(m);if(!h){h=e.createMap();y.set(m,h)}var v=[];var T=t.getCompilationSettings();var S=p&&isFileWithInvalidatedNonRelativeUnresolvedImports(g);var b=t.getCurrentProgram();var x=b&&b.getResolvedProjectReferenceToRedirect(n);var C=x?!a||a.sourceFile.path!==x.sourceFile.path:!!a;var E=e.createMap();for(var D=0,k=r;D<k.length;D++){var N=k[D];var A=_.get(N);if(!E.has(N)&&s||C||!A||A.isInvalidated||S&&!e.isExternalModuleNameRelative(N)&&f(A)){var O=A;var F=h.get(N);if(F){A=F}else{A=u(N,n,T,t,a);h.set(N,A)}_.set(N,A);watchFailedLookupLocationsOfExternalModuleResolutions(N,A);if(O){stopWatchFailedLookupLocationOfResolution(O)}if(p&&i&&!resolutionIsEqualTo(O,A)){i.push(g);p=false}}e.Debug.assert(A!==undefined&&!A.isInvalidated);E.set(N,true);v.push(l(A))}_.forEach(function(t,r){if(!E.has(r)&&!e.contains(d,r)){stopWatchFailedLookupLocationOfResolution(t);_.delete(r)}});return v;function resolutionIsEqualTo(e,t){if(e===t){return true}if(!e||!t){return false}var r=l(e);var n=l(t);if(r===n){return true}if(!r||!n){return false}return r.resolvedFileName===n.resolvedFileName}}function resolveTypeReferenceDirectives(t,r,n){return resolveNamesWithLocalCache(t,r,n,_,m,e.resolveTypeReferenceDirective,getResolvedTypeReferenceDirective,function(e){return e.resolvedTypeReferenceDirective===undefined},undefined,false)}function resolveModuleNames(t,r,i,a){return resolveNamesWithLocalCache(t,r,a,f,d,resolveModuleName,getResolvedModule,function(t){return!t.resolvedModule||!e.resolutionExtensionIsTSOrJson(t.resolvedModule.extension)},i,n)}function getResolvedModuleWithFailedLookupLocationsFromCache(e,r){var n=f.get(t.toPath(r));return n&&n.get(e)}function isNodeModulesDirectory(t){return e.endsWith(t,"/node_modules")}function isNodeModulesAtTypesDirectory(t){return e.endsWith(t,"/node_modules/@types")}function canWatchDirectory(t){var r=e.getRootLength(t);if(t.length===r){return false}var n=t.indexOf(e.directorySeparator,r);if(n===-1){return false}if(t.charCodeAt(0)!==47&&t.substr(r,n).search(/users/i)===-1){return true}for(var i=n+1,a=2;a>0;a--){i=t.indexOf(e.directorySeparator,i)+1;if(i===0){return false}}return true}function getDirectoryToWatchFailedLookupLocation(t,r){if(isInDirectoryPath(S,r)){t=e.isRootedDiskPath(t)?e.normalizePath(t):e.getNormalizedAbsolutePath(t,u());e.Debug.assert(t.length===r.length,"FailedLookup: "+t+" failedLookupLocationPath: "+r);var n=r.indexOf(e.directorySeparator,S.length+1);if(n!==-1){return{dir:t.substr(0,n),dirPath:r.substr(0,n)}}else{return{dir:T,dirPath:S,nonRecursive:false}}}return getDirectoryToWatchFromFailedLookupLocationDirectory(e.getDirectoryPath(e.getNormalizedAbsolutePath(t,u())),e.getDirectoryPath(r))}function getDirectoryToWatchFromFailedLookupLocationDirectory(t,r){while(e.pathContainsNodeModules(r)){t=e.getDirectoryPath(t);r=e.getDirectoryPath(r)}if(isNodeModulesDirectory(r)){return canWatchDirectory(e.getDirectoryPath(r))?{dir:t,dirPath:r}:undefined}var n=true;var i,a;if(S!==undefined){while(!isInDirectoryPath(r,S)){var o=e.getDirectoryPath(r);if(o===r){break}n=false;i=r;a=t;r=o;t=e.getDirectoryPath(t)}}return canWatchDirectory(r)?{dir:a||t,dirPath:i||r,nonRecursive:n}:undefined}function isPathWithDefaultFailedLookupExtension(t){return e.fileExtensionIsOneOf(t,y)}function watchFailedLookupLocationsOfExternalModuleResolutions(t,r){if(r.failedLookupLocations&&r.failedLookupLocations.length){if(r.refCount){r.refCount++}else{r.refCount=1;if(e.isExternalModuleNameRelative(t)){watchFailedLookupLocationOfResolution(r)}else{c.add(t,r)}}}}function watchFailedLookupLocationOfResolution(r){e.Debug.assert(!!r.refCount);var n=r.failedLookupLocations;var i=false;for(var a=0,o=n;a<o.length;a++){var s=o[a];var c=t.toPath(s);var u=getDirectoryToWatchFailedLookupLocation(s,c);if(u){var l=u.dir,f=u.dirPath,d=u.nonRecursive;if(!isPathWithDefaultFailedLookupExtension(c)){var p=h.get(c)||0;h.set(c,p+1)}if(f===S){e.Debug.assert(!d);i=true}else{setDirectoryWatcher(l,f,d)}}}if(i){setDirectoryWatcher(T,S,true)}}function setRefCountToUndefined(e){e.refCount=undefined}function watchFailedLookupLocationOfNonRelativeModuleResolutions(e,r){var n=t.getCurrentProgram();var i=n&&n.getTypeChecker().tryFindAmbientModuleWithoutAugmentations(r)?setRefCountToUndefined:watchFailedLookupLocationOfResolution;e.forEach(i)}function setDirectoryWatcher(t,r,n){var i=v.get(r);if(i){e.Debug.assert(!!n===!!i.nonRecursive);i.refCount++}else{v.set(r,{watcher:createDirectoryWatcher(t,r,n),refCount:1,nonRecursive:n})}}function stopWatchFailedLookupLocationOfResolution(r){if(!r.refCount){return}r.refCount--;if(r.refCount){return}var n=r.failedLookupLocations;var i=false;for(var a=0,o=n;a<o.length;a++){var s=o[a];var c=t.toPath(s);var u=getDirectoryToWatchFailedLookupLocation(s,c);if(u){var l=u.dirPath;var f=h.get(c);if(f){if(f===1){h.delete(c)}else{e.Debug.assert(f>1);h.set(c,f-1)}}if(l===S){i=true}else{removeDirectoryWatcher(l)}}}if(i){removeDirectoryWatcher(S)}}function removeDirectoryWatcher(e){var t=v.get(e);t.refCount--}function createDirectoryWatcher(e,r,n){return t.watchDirectoryOfFailedLookupLocation(e,function(e){var n=t.toPath(e);if(l){l.addOrDeleteFileOrDirectory(e,n)}if(!s&&invalidateResolutionOfFailedLookupLocation(n,r===n)){t.onInvalidatedResolution()}},n?0:1)}function removeResolutionsOfFileFromCache(e,t){var r=e.get(t);if(r){r.forEach(stopWatchFailedLookupLocationOfResolution);e.delete(t)}}function removeResolutionsFromProjectReferenceRedirects(r){if(!e.fileExtensionIs(r,".json")){return}var n=t.getCurrentProgram();if(!n){return}var i=n.getResolvedProjectReferenceByPath(r);if(!i){return}i.commandLine.fileNames.forEach(function(e){return removeResolutionsOfFile(t.toPath(e))})}function removeResolutionsOfFile(e){removeResolutionsOfFileFromCache(f,e);removeResolutionsOfFileFromCache(_,e)}function invalidateResolutionCache(t,r,n){var i=e.createMap();t.forEach(function(t,o){var s=e.getDirectoryPath(o);var c=i.get(s);if(!c){c=e.createMap();i.set(s,c)}t.forEach(function(t,i){if(c.has(i)){return}c.set(i,true);if(!t.isInvalidated&&r(t,n)){t.isInvalidated=true;(a||(a=e.createMap())).set(o,true)}})})}function hasReachedResolutionIterationLimit(){var r=t.maxNumberOfFilesToIterateForInvalidation||e.maxNumberOfFilesToIterateForInvalidation;return f.size>r||_.size>r}function invalidateResolutions(e){if(hasReachedResolutionIterationLimit()){s=true;return}invalidateResolutionCache(f,e,getResolvedModule);invalidateResolutionCache(_,e,getResolvedTypeReferenceDirective)}function invalidateResolutionOfFile(e){removeResolutionsOfFile(e);invalidateResolutions(function(r,n){var i=n(r);return!!i&&t.toPath(i.resolvedFileName)===e})}function setFilesWithInvalidatedNonRelativeUnresolvedImports(t){e.Debug.assert(o===t||o===undefined);o=t}function invalidateResolutionOfFailedLookupLocation(r,n){var i;if(n){i=function(e){return isInDirectoryPath(r,t.toPath(e))}}else{if(isPathInNodeModulesStartingWithDot(r))return false;var o=e.getDirectoryPath(r);if(isNodeModulesAtTypesDirectory(r)||isNodeModulesDirectory(r)||isNodeModulesAtTypesDirectory(o)||isNodeModulesDirectory(o)){i=function(n){var i=t.toPath(n);return i===r||e.startsWith(t.toPath(n),r)}}else{if(!isPathWithDefaultFailedLookupExtension(r)&&!h.has(r)){return false}if(e.isEmittedFileOfProgram(t.getCurrentProgram(),r)){return false}i=function(e){return t.toPath(e)===r}}}var c=function(t){return e.some(t.failedLookupLocations,i)};var u=a&&a.size;invalidateResolutions(c);return s||a&&a.size!==u}function closeTypeRootsWatch(){e.clearMap(b,e.closeFileWatcher)}function getDirectoryToWatchFailedLookupLocationFromTypeRoot(e,t){if(s){return undefined}if(isInDirectoryPath(S,t)){return S}var r=getDirectoryToWatchFromFailedLookupLocationDirectory(e,t);return r&&v.has(r.dirPath)?r.dirPath:undefined}function createTypeRootsWatch(e,r){return t.watchTypeRootsDirectory(r,function(n){var i=t.toPath(n);if(l){l.addOrDeleteFileOrDirectory(n,i)}t.onChangedAutomaticTypeDirectiveNames();var a=getDirectoryToWatchFailedLookupLocationFromTypeRoot(r,e);if(a&&invalidateResolutionOfFailedLookupLocation(i,a===i)){t.onInvalidatedResolution()}},1)}function updateTypeRootsWatch(){var r=t.getCompilationSettings();if(r.types){closeTypeRootsWatch();return}var n=e.getEffectiveTypeRoots(r,{directoryExists:directoryExistsForTypeRootWatch,getCurrentDirectory:u});if(n){e.mutateMap(b,e.arrayToMap(n,function(e){return t.toPath(e)}),{createNewValue:createTypeRootsWatch,onDeleteValue:e.closeFileWatcher})}else{closeTypeRootsWatch()}}function directoryExistsForTypeRootWatch(r){var n=e.getDirectoryPath(e.getDirectoryPath(r));var i=t.toPath(n);return i===S||canWatchDirectory(i)}}e.createResolutionCache=createResolutionCache})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["Relative"]=0]="Relative";e[e["NonRelative"]=1]="NonRelative";e[e["Auto"]=2]="Auto"})(r||(r={}));var n;(function(e){e[e["Minimal"]=0]="Minimal";e[e["Index"]=1]="Index";e[e["JsExtension"]=2]="JsExtension"})(n||(n={}));function getPreferences(t,r,n){var i=t.importModuleSpecifierPreference,a=t.importModuleSpecifierEnding;return{relativePreference:i==="relative"?0:i==="non-relative"?1:2,ending:getEnding()};function getEnding(){switch(a){case"minimal":return 0;case"index":return 1;case"js":return 2;default:return usesJsExtensionOnImports(n)?2:e.getEmitModuleResolutionKind(r)!==e.ModuleResolutionKind.NodeJs?1:0}}}function getPreferencesForUpdate(t,r){return{relativePreference:e.isExternalModuleNameRelative(r)?0:1,ending:e.hasJSOrJsonFileExtension(r)?2:e.getEmitModuleResolutionKind(t)!==e.ModuleResolutionKind.NodeJs||e.endsWith(r,"index")?1:0}}function updateModuleSpecifier(e,t,r,n,i,a,o){var s=getModuleSpecifierWorker(e,t,r,n,i,a,getPreferencesForUpdate(e,o));if(s===o)return undefined;return s}t.updateModuleSpecifier=updateModuleSpecifier;function getModuleSpecifier(e,t,r,n,i,a,o,s){if(o===void 0){o={}}return getModuleSpecifierWorker(e,r,n,i,a,s,getPreferences(o,e,t))}t.getModuleSpecifier=getModuleSpecifier;function getModuleSpecifierWorker(t,r,n,i,a,o,s){var c=getInfo(r,i);var u=getAllModulePaths(a,r,n,c.getCanonicalFileName,i,o);return e.firstDefined(u,function(e){return tryGetModuleNameAsNodeModule(e,c,i,t)})||getLocalModuleSpecifier(n,c,t,s)}function getModuleSpecifiers(t,r,n,i,a,o,s){var c=tryGetModuleNameFromAmbientModule(t);if(c)return[c];var u=getInfo(n.path,i);var l=e.getSourceFileOfNode(t.valueDeclaration||e.getNonAugmentationDeclaration(t));var f=getAllModulePaths(a,n.path,l.fileName,u.getCanonicalFileName,i,s);var d=getPreferences(o,r,n);var p=e.mapDefined(f,function(e){return tryGetModuleNameAsNodeModule(e,u,i,r)});return p.length?p:f.map(function(e){return getLocalModuleSpecifier(e,u,r,d)})}t.getModuleSpecifiers=getModuleSpecifiers;function getInfo(t,r){var n=e.createGetCanonicalFileName(r.useCaseSensitiveFileNames?r.useCaseSensitiveFileNames():true);var i=e.getDirectoryPath(t);return{getCanonicalFileName:n,sourceDirectory:i}}function getLocalModuleSpecifier(t,r,n,i){var a=r.getCanonicalFileName,o=r.sourceDirectory;var s=i.ending,c=i.relativePreference;var u=n.baseUrl,l=n.paths,f=n.rootDirs;var d=f&&tryGetModuleNameFromRootDirs(f,t,o,a)||removeExtensionAndIndexPostFix(e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(o,t,a)),s,n);if(!u||c===0){return d}var p=getRelativePathIfInDirectory(t,u,a);if(!p){return d}var g=removeExtensionAndIndexPostFix(p,s,n);var _=l&&tryGetModuleNameFromPaths(e.removeFileExtension(p),g,l);var m=_===undefined?g:_;if(c===1){return m}if(c!==2)e.Debug.assertNever(c);return isPathRelativeToParent(m)||countPathComponents(d)<countPathComponents(m)?d:m}function countPathComponents(t){var r=0;for(var n=e.startsWith(t,"./")?2:0;n<t.length;n++){if(t.charCodeAt(n)===47)r++}return r}t.countPathComponents=countPathComponents;function usesJsExtensionOnImports(t){var r=t.imports;return e.firstDefined(r,function(t){var r=t.text;return e.pathIsRelative(r)?e.hasJSOrJsonFileExtension(r):undefined})||false}function stringsEqual(e,t,r){return r(e)===r(t)}function isNodeModulesOrScopedPackageDirectory(t,r){return r(t)==="node_modules"||e.startsWith(t,"@")}function guessDirectorySymlink(t,r,n,i){var a=e.getPathComponents(e.toPath(t,n,i));var o=e.getPathComponents(e.toPath(r,n,i));while(!isNodeModulesOrScopedPackageDirectory(a[a.length-2],i)&&!isNodeModulesOrScopedPackageDirectory(o[o.length-2],i)&&stringsEqual(a[a.length-1],o[o.length-1],i)){a.pop();o.pop()}return[e.getPathFromPathComponents(a),e.getPathFromPathComponents(o)]}function discoverProbableSymlinks(t,r,n){var i=e.createMap();var a=e.mapDefined(t,function(t){return t.resolvedModules&&e.firstDefinedIterator(t.resolvedModules.values(),function(e){return e&&e.originalPath&&e.resolvedFileName!==e.originalPath?[e.resolvedFileName,e.originalPath]:undefined})});for(var o=0,s=a;o<s.length;o++){var c=s[o],u=c[0],l=c[1];var f=guessDirectorySymlink(u,l,n,r),d=f[0],p=f[1];i.set(p,d)}return i}function getAllModulePaths(t,r,n,i,a,o){var s=o.get(n);var c=s?s.concat([n]):[n];var u=a.getCurrentDirectory?a.getCurrentDirectory():"";var l=c.map(function(t){return e.getNormalizedAbsolutePath(t,u)});var f=discoverProbableSymlinks(t,i,u);var d=[];var p=!a.useCaseSensitiveFileNames||a.useCaseSensitiveFileNames()?e.compareStringsCaseSensitive:e.compareStringsCaseInsensitive;f.forEach(function(t,n){if(e.startsWithDirectory(r,t,i)){return}var o=l.find(function(e){return p(e.slice(0,t.length+1),t+"/")===0});if(o===undefined)return;var s=e.getRelativePathFromDirectory(t,o,i);var c=e.resolvePath(n,s);if(!a.fileExists||a.fileExists(c)){d.push(c)}});d.push.apply(d,l);return d}function tryGetModuleNameFromAmbientModule(t){var r=e.find(t.declarations,function(t){return e.isNonGlobalAmbientModule(t)&&(!e.isExternalModuleAugmentation(t)||!e.isExternalModuleNameRelative(e.getTextOfIdentifierOrLiteral(t.name)))});if(r){return r.name.text}}function tryGetModuleNameFromPaths(t,r,n){for(var i in n){for(var a=0,o=n[i];a<o.length;a++){var s=o[a];var c=e.removeFileExtension(e.normalizePath(s));var u=c.indexOf("*");if(u!==-1){var l=c.substr(0,u);var f=c.substr(u+1);if(r.length>=l.length+f.length&&e.startsWith(r,l)&&e.endsWith(r,f)||!f&&r===e.removeTrailingDirectorySeparator(l)){var d=r.substr(l.length,r.length-f.length);return i.replace("*",d)}}else if(c===r||c===t){return i}}}}function tryGetModuleNameFromRootDirs(t,r,n,i){var a=getPathRelativeToRootDirs(r,t,i);if(a===undefined){return undefined}var o=getPathRelativeToRootDirs(n,t,i);var s=o!==undefined?e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(o,a,i)):a;return e.removeFileExtension(s)}function tryGetModuleNameAsNodeModule(t,r,n,i){var a=r.getCanonicalFileName,o=r.sourceDirectory;if(!n.fileExists||!n.readFile){return undefined}var s=getNodeModulePathParts(t);if(!s){return undefined}var c=t.substring(0,s.packageRootIndex);var u=e.combinePaths(c,"package.json");var l=n.fileExists(u)?JSON.parse(n.readFile(u)):undefined;var f=l&&l.typesVersions?e.getPackageJsonTypesVersionsPaths(l.typesVersions):undefined;if(f){var d=t.slice(s.packageRootIndex+1);var p=tryGetModuleNameFromPaths(e.removeFileExtension(d),removeExtensionAndIndexPostFix(d,0,i),f.paths);if(p!==undefined){t=e.combinePaths(t.slice(0,s.packageRootIndex),p)}}var g=getDirectoryOrExtensionlessFileName(t);if(!e.startsWith(o,a(g.substring(0,s.topLevelNodeModulesIndex))))return undefined;var _=g.substring(s.topLevelPackageNameIndex+1);var m=e.getPackageNameFromTypesPackageName(_);return e.getEmitModuleResolutionKind(i)!==e.ModuleResolutionKind.NodeJs&&m===_?undefined:m;function getDirectoryOrExtensionlessFileName(t){if(l){var r=l.typings||l.types||l.main;if(r){var i=e.toPath(r,c,a);if(e.removeFileExtension(i)===e.removeFileExtension(a(t))){return c}}}var o=e.removeFileExtension(t);if(a(o.substring(s.fileNameIndex))==="/index"&&!tryGetAnyFileFromPath(n,o.substring(0,s.fileNameIndex))){return o.substring(0,s.fileNameIndex)}return o}}function tryGetAnyFileFromPath(t,r){if(!t.fileExists)return;var n=e.getSupportedExtensions({allowJs:true},[{extension:"node",isMixedContent:false},{extension:"json",isMixedContent:false,scriptKind:6}]);for(var i=0,a=n;i<a.length;i++){var o=a[i];var s=r+o;if(t.fileExists(s)){return s}}}function getNodeModulePathParts(t){var r=0;var n=0;var i=0;var a=0;var o;(function(e){e[e["BeforeNodeModules"]=0]="BeforeNodeModules";e[e["NodeModules"]=1]="NodeModules";e[e["Scope"]=2]="Scope";e[e["PackageContent"]=3]="PackageContent"})(o||(o={}));var s=0;var c=0;var u=0;while(c>=0){s=c;c=t.indexOf("/",s+1);switch(u){case 0:if(t.indexOf(e.nodeModulesPathPart,s)===s){r=s;n=c;u=1}break;case 1:case 2:if(u===1&&t.charAt(s+1)==="@"){u=2}else{i=c;u=3}break;case 3:if(t.indexOf(e.nodeModulesPathPart,s)===s){u=1}else{u=3}break}}a=s;return u>1?{topLevelNodeModulesIndex:r,topLevelPackageNameIndex:n,packageRootIndex:i,fileNameIndex:a}:undefined}function getPathRelativeToRootDirs(t,r,n){return e.firstDefined(r,function(e){var r=getRelativePathIfInDirectory(t,e,n);return isPathRelativeToParent(r)?undefined:r})}function removeExtensionAndIndexPostFix(t,r,n){if(e.fileExtensionIs(t,".json"))return t;var i=e.removeFileExtension(t);switch(r){case 0:return e.removeSuffix(i,"/index");case 1:return i;case 2:return i+getJSExtensionForFile(t,n);default:return e.Debug.assertNever(r)}}function getJSExtensionForFile(t,r){var n=e.extensionFromPath(t);switch(n){case".ts":case".d.ts":return".js";case".tsx":return r.jsx===1?".jsx":".js";case".js":case".jsx":case".json":return n;default:return e.Debug.assertNever(n)}}function getRelativePathIfInDirectory(t,r,n){var i=e.getRelativePathToDirectoryOrUrl(r,t,r,n,false);return e.isRootedDiskPath(i)?undefined:i}function isPathRelativeToParent(t){return e.startsWith(t,"..")}})(t=e.moduleSpecifiers||(e.moduleSpecifiers={}))})(s||(s={}));var s;(function(e){var t=e.sys?{getCurrentDirectory:function(){return e.sys.getCurrentDirectory()},getNewLine:function(){return e.sys.newLine},getCanonicalFileName:e.createGetCanonicalFileName(e.sys.useCaseSensitiveFileNames)}:undefined;function createDiagnosticReporter(r,n){var i=r===e.sys?t:{getCurrentDirectory:function(){return r.getCurrentDirectory()},getNewLine:function(){return r.newLine},getCanonicalFileName:e.createGetCanonicalFileName(r.useCaseSensitiveFileNames)};if(!n){return function(t){return r.write(e.formatDiagnostic(t,i))}}var a=new Array(1);return function(t){a[0]=t;r.write(e.formatDiagnosticsWithColorAndContext(a,i)+i.getNewLine());a[0]=undefined}}e.createDiagnosticReporter=createDiagnosticReporter;function clearScreenIfNotWatchingForFileChanges(t,r,n){if(t.clearScreen&&!n.preserveWatchOutput&&!n.extendedDiagnostics&&!n.diagnostics&&e.contains(e.screenStartingMessageCodes,r.code)){t.clearScreen();return true}return false}e.screenStartingMessageCodes=[e.Diagnostics.Starting_compilation_in_watch_mode.code,e.Diagnostics.File_change_detected_Starting_incremental_compilation.code];function getPlainDiagnosticFollowingNewLines(t,r){return e.contains(e.screenStartingMessageCodes,t.code)?r+r:r}function createWatchStatusReporter(t,r){return r?function(r,n,i){clearScreenIfNotWatchingForFileChanges(t,r,i);var a="["+e.formatColorAndReset((new Date).toLocaleTimeString(),e.ForegroundColorEscapeSequences.Grey)+"] ";a+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+(n+n);t.write(a)}:function(r,n,i){var a="";if(!clearScreenIfNotWatchingForFileChanges(t,r,i)){a+=n}a+=(new Date).toLocaleTimeString()+" - ";a+=""+e.flattenDiagnosticMessageText(r.messageText,t.newLine)+getPlainDiagnosticFollowingNewLines(r,n);t.write(a)}}e.createWatchStatusReporter=createWatchStatusReporter;function parseConfigFileWithSystem(t,r,n,i){var a=n;a.onUnRecoverableConfigFileDiagnostic=function(t){return reportUnrecoverableDiagnostic(e.sys,i,t)};var o=e.getParsedCommandLineOfConfigFile(t,r,a);a.onUnRecoverableConfigFileDiagnostic=undefined;return o}e.parseConfigFileWithSystem=parseConfigFileWithSystem;function getErrorCountForSummary(t){return e.countWhere(t,function(t){return t.category===e.DiagnosticCategory.Error})}e.getErrorCountForSummary=getErrorCountForSummary;function getWatchErrorSummaryDiagnosticMessage(t){return t===1?e.Diagnostics.Found_1_error_Watching_for_file_changes:e.Diagnostics.Found_0_errors_Watching_for_file_changes}e.getWatchErrorSummaryDiagnosticMessage=getWatchErrorSummaryDiagnosticMessage;function getErrorSummaryText(t,r){if(t===0)return"";var n=e.createCompilerDiagnostic(t===1?e.Diagnostics.Found_1_error:e.Diagnostics.Found_0_errors,t);return""+r+e.flattenDiagnosticMessageText(n.messageText,r)+r+r}e.getErrorSummaryText=getErrorSummaryText;function emitFilesAndReportErrors(t,r,n,i,a){var o=t.getConfigFileParsingDiagnostics().slice();var s=o.length;e.addRange(o,t.getSyntacticDiagnostics());var c=false;if(o.length===s){e.addRange(o,t.getOptionsDiagnostics());e.addRange(o,t.getGlobalDiagnostics());if(o.length===s){c=true}}var u=t.emit(undefined,a),l=u.emittedFiles,f=u.emitSkipped,d=u.diagnostics;e.addRange(o,d);if(c){e.addRange(o,t.getSemanticDiagnostics())}e.sortAndDeduplicateDiagnostics(o).forEach(r);if(n){var p=t.getCurrentDirectory();e.forEach(l,function(t){var r=e.getNormalizedAbsolutePath(t,p);n("TSFILE: "+r)});if(t.getCompilerOptions().listFiles){e.forEach(t.getSourceFiles(),function(e){n(e.fileName)})}}if(i){i(getErrorCountForSummary(o))}if(f&&o.length>0){return e.ExitStatus.DiagnosticsPresent_OutputsSkipped}else if(o.length>0){return e.ExitStatus.DiagnosticsPresent_OutputsGenerated}return e.ExitStatus.Success}e.emitFilesAndReportErrors=emitFilesAndReportErrors;var r={close:e.noop};function createWatchHost(t,n){if(t===void 0){t=e.sys}var i=n||createWatchStatusReporter(t);return{onWatchStatusChange:i,watchFile:t.watchFile?function(e,r,n){return t.watchFile(e,r,n)}:function(){return r},watchDirectory:t.watchDirectory?function(e,r,n){return t.watchDirectory(e,r,n)}:function(){return r},setTimeout:t.setTimeout?function(e,r){var n=[];for(var i=2;i<arguments.length;i++){n[i-2]=arguments[i]}var a;return(a=t.setTimeout).call.apply(a,[t,e,r].concat(n))}:e.noop,clearTimeout:t.clearTimeout?function(e){return t.clearTimeout(e)}:e.noop}}e.createWatchHost=createWatchHost;function createWatchCompilerHost(t,r,n,i){if(t===void 0){t=e.sys}if(!r){r=e.createEmitAndSemanticDiagnosticsBuilderProgram}var a=t;a;var o=function(){return t.useCaseSensitiveFileNames};var s=function(e){return t.write(e+t.newLine)};var c=createWatchHost(t,i),u=c.onWatchStatusChange,l=c.watchFile,f=c.watchDirectory,d=c.setTimeout,p=c.clearTimeout;return{useCaseSensitiveFileNames:o,getNewLine:function(){return t.newLine},getCurrentDirectory:function(){return t.getCurrentDirectory()},getDefaultLibLocation:getDefaultLibLocation,getDefaultLibFileName:function(t){return e.combinePaths(getDefaultLibLocation(),e.getDefaultLibFileName(t))},fileExists:function(e){return t.fileExists(e)},readFile:function(e,r){return t.readFile(e,r)},directoryExists:function(e){return t.directoryExists(e)},getDirectories:function(e){return t.getDirectories(e)},readDirectory:function(e,r,n,i,a){return t.readDirectory(e,r,n,i,a)},realpath:t.realpath&&function(e){return t.realpath(e)},getEnvironmentVariable:t.getEnvironmentVariable&&function(e){return t.getEnvironmentVariable(e)},watchFile:l,watchDirectory:f,setTimeout:d,clearTimeout:p,trace:function(e){return t.write(e)},onWatchStatusChange:u,createDirectory:function(e){return t.createDirectory(e)},writeFile:function(e,r,n){return t.writeFile(e,r,n)},onCachedDirectoryStructureHostCreate:function(e){return a=e||t},createHash:t.createHash&&function(e){return t.createHash(e)},createProgram:r,afterProgramCreate:emitFilesAndReportErrorUsingBuilder};function getDefaultLibLocation(){return e.getDirectoryPath(e.normalizePath(t.getExecutingFilePath()))}function emitFilesAndReportErrorUsingBuilder(r){var i=r.getCompilerOptions();var a=e.getNewLineCharacter(i,function(){return t.newLine});emitFilesAndReportErrors(r,n,s,function(t){return u(e.createCompilerDiagnostic(getWatchErrorSummaryDiagnosticMessage(t),t),a,i)})}}function reportUnrecoverableDiagnostic(t,r,n){r(n);t.exit(e.ExitStatus.DiagnosticsPresent_OutputsSkipped)}function createWatchCompilerHostOfConfigFile(e,t,r,n,i,a){var o=i||createDiagnosticReporter(r);var s=createWatchCompilerHost(r,n,o,a);s.onUnRecoverableConfigFileDiagnostic=function(e){return reportUnrecoverableDiagnostic(r,o,e)};s.configFileName=e;s.optionsToExtend=t;return s}e.createWatchCompilerHostOfConfigFile=createWatchCompilerHostOfConfigFile;function createWatchCompilerHostOfFilesAndCompilerOptions(e,t,r,n,i,a,o){var s=createWatchCompilerHost(r,n,i||createDiagnosticReporter(r),a);s.rootFiles=e;s.options=t;s.projectReferences=o;return s}e.createWatchCompilerHostOfFilesAndCompilerOptions=createWatchCompilerHostOfFilesAndCompilerOptions})(s||(s={}));(function(e){function createWatchCompilerHost(t,r,n,i,a,o,s){if(e.isArray(t)){return e.createWatchCompilerHostOfFilesAndCompilerOptions(t,r,n,i,a,o,s)}else{return e.createWatchCompilerHostOfConfigFile(t,r,n,i,a,o)}}e.createWatchCompilerHost=createWatchCompilerHost;var t=1;function createWatchProgram(r){var n;var i;var a;var o;var s;var c=e.createMap();var u;var l=false;var f=false;var d=r.useCaseSensitiveFileNames();var p=r.getCurrentDirectory();var g=function(){return p};var _=function(e,t){return r.readFile(e,t)};var m=r.configFileName,y=r.optionsToExtend,h=y===void 0?{}:y,v=r.createProgram;var T=r.rootFiles,S=r.options,b=r.projectReferences;var x;var C;var E=false;var D=false;var k=m===undefined?undefined:e.createCachedDirectoryStructureHost(r,p,d);if(k&&r.onCachedDirectoryStructureHostCreate){r.onCachedDirectoryStructureHostCreate(k)}var N=k||r;var A={useCaseSensitiveFileNames:d,readDirectory:function(e,t,r,n,i){return N.readDirectory(e,t,r,n,i)},fileExists:function(e){return r.fileExists(e)},readFile:_,getCurrentDirectory:g,onUnRecoverableConfigFileDiagnostic:r.onUnRecoverableConfigFileDiagnostic,trace:r.trace?function(e){return r.trace(e)}:undefined};var O=updateNewLine();if(m&&r.configFileParsingResult){setConfigFileParsingResult(r.configFileParsingResult);O=updateNewLine()}reportWatchDiagnostic(e.Diagnostics.Starting_compilation_in_watch_mode);if(m&&!r.configFileParsingResult){O=e.getNewLineCharacter(h,function(){return r.getNewLine()});e.Debug.assert(!T);parseConfigFile();O=updateNewLine()}var F=r.trace&&function(e){r.trace(e+O)};var P=F?S.extendedDiagnostics?e.WatchLogLevel.Verbose:S.diagnostics?e.WatchLogLevel.TriggerOnly:e.WatchLogLevel.None:e.WatchLogLevel.None;var I=P!==e.WatchLogLevel.None?F:e.noop;var w=e.getWatchFactory(P,I),M=w.watchFile,L=w.watchFilePath,R=w.watchDirectory;var B=e.createGetCanonicalFileName(d);I("Current directory: "+p+" CaseSensitiveFileNames: "+d);if(m){M(r,m,scheduleProgramReload,e.PollingInterval.High,"Config file")}var j={getSourceFile:function(e,t,r,n){return getVersionedSourceFileByPath(e,toPath(e),t,r,n)},getSourceFileByPath:getVersionedSourceFileByPath,getDefaultLibLocation:r.getDefaultLibLocation&&function(){return r.getDefaultLibLocation()},getDefaultLibFileName:function(e){return r.getDefaultLibFileName(e)},writeFile:writeFile,getCurrentDirectory:g,useCaseSensitiveFileNames:function(){return d},getCanonicalFileName:B,getNewLine:function(){return O},fileExists:fileExists,readFile:_,trace:F,directoryExists:N.directoryExists&&function(e){return N.directoryExists(e)},getDirectories:N.getDirectories&&function(e){return N.getDirectories(e)},realpath:r.realpath&&function(e){return r.realpath(e)},getEnvironmentVariable:r.getEnvironmentVariable?function(e){return r.getEnvironmentVariable(e)}:function(){return""},onReleaseOldSourceFile:onReleaseOldSourceFile,createHash:r.createHash&&function(e){return r.createHash(e)},toPath:toPath,getCompilationSettings:function(){return S},watchDirectoryOfFailedLookupLocation:function(e,t,n){return R(r,e,t,n,"Failed Lookup Locations")},watchTypeRootsDirectory:function(e,t,n){return R(r,e,t,n,"Type roots")},getCachedDirectoryStructureHost:function(){return k},onInvalidatedResolution:scheduleProgramUpdate,onChangedAutomaticTypeDirectiveNames:function(){f=true;scheduleProgramUpdate()},maxNumberOfFilesToIterateForInvalidation:r.maxNumberOfFilesToIterateForInvalidation,getCurrentProgram:getCurrentProgram,writeLog:I,readDirectory:function(e,t,r,n,i){return N.readDirectory(e,t,r,n,i)}};var J=e.createResolutionCache(j,m?e.getDirectoryPath(e.getNormalizedAbsolutePath(m,p)):p,false);j.resolveModuleNames=r.resolveModuleNames?function(e,t,n,i){return r.resolveModuleNames(e,t,n,i)}:function(e,t,r,n){return J.resolveModuleNames(e,t,r,n)};j.resolveTypeReferenceDirectives=r.resolveTypeReferenceDirectives?function(e,t,n){return r.resolveTypeReferenceDirectives(e,t,n)}:function(e,t,r){return J.resolveTypeReferenceDirectives(e,t,r)};var W=!!r.resolveModuleNames||!!r.resolveTypeReferenceDirectives;synchronizeProgram();watchConfigFileWildCardDirectories();return m?{getCurrentProgram:getCurrentBuilderProgram,getProgram:synchronizeProgram}:{getCurrentProgram:getCurrentBuilderProgram,getProgram:synchronizeProgram,updateRootFileNames:updateRootFileNames};function getCurrentBuilderProgram(){return n}function getCurrentProgram(){return n&&n.getProgram()}function synchronizeProgram(){I("Synchronizing program");var t=getCurrentProgram();if(l){O=updateNewLine();if(t&&e.changesAffectModuleResolution(t.getCompilerOptions(),S)){J.clear()}}var i=J.createHasInvalidatedResolution(W);if(e.isProgramUptoDate(getCurrentProgram(),T,S,getSourceVersion,fileExists,i,f,b)){if(D){n=v(undefined,undefined,j,n,C,b);D=false}}else{createNewProgram(t,i)}if(r.afterProgramCreate){r.afterProgramCreate(n)}return n}function createNewProgram(t,r){if(P!==e.WatchLogLevel.None){I("CreatingProgramWith::");I(" roots: "+JSON.stringify(T));I(" options: "+JSON.stringify(S))}var i=l||!t;l=false;D=false;J.startCachingPerDirectoryResolution();j.hasInvalidatedResolution=r;j.hasChangedAutomaticTypeDirectiveNames=f;n=v(T,S,j,n,C,b);J.finishCachingPerDirectoryResolution();e.updateMissingFilePathsWatch(n.getProgram(),a||(a=e.createMap()),watchMissingFilePath);if(i){J.updateTypeRootsWatch()}if(u){for(var o=0,s=u;o<s.length;o++){var d=s[o];if(!a.has(d)){c.delete(d)}}u=undefined}}function updateRootFileNames(t){e.Debug.assert(!m,"Cannot update root file names with config file watch mode");T=t;scheduleProgramUpdate()}function updateNewLine(){return e.getNewLineCharacter(S||h,function(){return r.getNewLine()})}function toPath(t){return e.toPath(t,p,B)}function isFileMissingOnHost(e){return typeof e==="number"}function isFilePresentOnHost(e){return!!e.sourceFile}function fileExists(e){var t=toPath(e);if(isFileMissingOnHost(c.get(t))){return true}return N.fileExists(e)}function getVersionedSourceFileByPath(n,i,a,o,s){var u=c.get(i);if(isFileMissingOnHost(u)){return undefined}if(!u||s||!isFilePresentOnHost(u)||u.version.toString()!==u.sourceFile.version){var l=getNewSourceFile();if(u){if(s){u.version++}if(l){u.sourceFile=l;l.version=u.version.toString();if(!u.fileWatcher){u.fileWatcher=L(r,n,onSourceFileChange,e.PollingInterval.Low,i,"Source file")}}else{if(isFilePresentOnHost(u)){u.fileWatcher.close()}c.set(i,u.version)}}else{if(l){l.version=t.toString();var f=L(r,n,onSourceFileChange,e.PollingInterval.Low,i,"Source file");c.set(i,{sourceFile:l,version:t,fileWatcher:f})}else{c.set(i,t)}}return l}return u.sourceFile;function getNewSourceFile(){var t;try{e.performance.mark("beforeIORead");t=r.readFile(n,S.charset);e.performance.mark("afterIORead");e.performance.measure("I/O Read","beforeIORead","afterIORead")}catch(e){if(o){o(e.message)}}return t!==undefined?e.createSourceFile(n,t,a):undefined}}function nextSourceFileVersion(e){var t=c.get(e);if(t!==undefined){if(isFileMissingOnHost(t)){c.set(e,{version:Number(t)+1})}else{t.version++}}}function getSourceVersion(e){var t=c.get(e);return!t||isFileMissingOnHost(t)?undefined:t.version.toString()}function onReleaseOldSourceFile(e,t,r){var n=c.get(e.resolvedPath);if(n){if(isFileMissingOnHost(n)){(u||(u=[])).push(e.path)}else if(n.sourceFile===e){if(n.fileWatcher){n.fileWatcher.close()}c.delete(e.resolvedPath);if(!r){J.removeResolutionsOfFile(e.path)}}}}function reportWatchDiagnostic(t){if(r.onWatchStatusChange){r.onWatchStatusChange(e.createCompilerDiagnostic(t),O,S||h)}}function scheduleProgramUpdate(){if(!r.setTimeout||!r.clearTimeout){return}if(s){r.clearTimeout(s)}I("Scheduling update");s=r.setTimeout(updateProgram,250)}function scheduleProgramReload(){e.Debug.assert(!!m);i=e.ConfigFileProgramReloadLevel.Full;scheduleProgramUpdate()}function updateProgram(){s=undefined;reportWatchDiagnostic(e.Diagnostics.File_change_detected_Starting_incremental_compilation);switch(i){case e.ConfigFileProgramReloadLevel.Partial:return reloadFileNamesFromConfigFile();case e.ConfigFileProgramReloadLevel.Full:return reloadConfigFile();default:synchronizeProgram();return}}function reloadFileNamesFromConfigFile(){I("Reloading new file names and options");var t=e.getFileNamesFromConfigSpecs(x,e.getDirectoryPath(m),S,A);if(e.updateErrorForNoInputFiles(t,m,x,C,E)){D=true}T=t.fileNames;synchronizeProgram()}function reloadConfigFile(){I("Reloading config file: "+m);i=e.ConfigFileProgramReloadLevel.None;if(k){k.clearCache()}parseConfigFile();l=true;synchronizeProgram();watchConfigFileWildCardDirectories()}function parseConfigFile(){setConfigFileParsingResult(e.getParsedCommandLineOfConfigFile(m,h,A))}function setConfigFileParsingResult(t){T=t.fileNames;S=t.options;x=t.configFileSpecs;b=t.projectReferences;C=e.getConfigFileParsingDiagnostics(t).slice();E=e.canJsonReportNoInutFiles(t.raw);D=true}function onSourceFileChange(t,r,n){updateCachedSystemWithFile(t,n,r);if(r===e.FileWatcherEventKind.Deleted&&c.get(n)){J.invalidateResolutionOfFile(n)}J.removeResolutionsFromProjectReferenceRedirects(n);nextSourceFileVersion(n);scheduleProgramUpdate()}function updateCachedSystemWithFile(e,t,r){if(k){k.addOrDeleteFile(e,t,r)}}function watchMissingFilePath(t){return L(r,t,onMissingFileChange,e.PollingInterval.Medium,t,"Missing file")}function onMissingFileChange(t,r,n){updateCachedSystemWithFile(t,n,r);if(r===e.FileWatcherEventKind.Created&&a.has(n)){a.get(n).close();a.delete(n);nextSourceFileVersion(n);scheduleProgramUpdate()}}function watchConfigFileWildCardDirectories(){if(x){e.updateWatchingWildcardDirectories(o||(o=e.createMap()),e.createMapFromTemplate(x.wildcardDirectories),watchWildcardDirectory)}else if(o){e.clearMap(o,e.closeFileWatcherOf)}}function watchWildcardDirectory(t,n){return R(r,t,function(r){e.Debug.assert(!!m);var n=toPath(r);if(k){k.addOrDeleteFileOrDirectory(r,n)}nextSourceFileVersion(n);if(e.isPathInNodeModulesStartingWithDot(n))return;if(n!==t&&e.hasExtension(n)&&!e.isSupportedSourceFileName(r,S)){I("Project: "+m+" Detected file add/remove of non supported extension: "+r);return}if(i!==e.ConfigFileProgramReloadLevel.Full){i=e.ConfigFileProgramReloadLevel.Partial;scheduleProgramUpdate()}},n,"Wild card directories")}function ensureDirectoriesExist(t){if(t.length>e.getRootLength(t)&&!r.directoryExists(t)){var n=e.getDirectoryPath(t);ensureDirectoriesExist(n);r.createDirectory(t)}}function writeFile(t,n,i,a){try{e.performance.mark("beforeIOWrite");ensureDirectoriesExist(e.getDirectoryPath(e.normalizePath(t)));r.writeFile(t,n,i);e.performance.mark("afterIOWrite");e.performance.measure("I/O Write","beforeIOWrite","afterIOWrite")}catch(e){if(a){a(e.message)}}}}e.createWatchProgram=createWatchProgram})(s||(s={}));var s;(function(e){var t=new Date(-864e13);var r=new Date(864e13);var n;(function(e){e[e["None"]=0]="None";e[e["Success"]=1]="Success";e[e["DeclarationOutputUnchanged"]=2]="DeclarationOutputUnchanged";e[e["ConfigFileErrors"]=4]="ConfigFileErrors";e[e["SyntaxErrors"]=8]="SyntaxErrors";e[e["TypeErrors"]=16]="TypeErrors";e[e["DeclarationEmitErrors"]=32]="DeclarationEmitErrors";e[e["EmitErrors"]=64]="EmitErrors";e[e["AnyErrors"]=124]="AnyErrors"})(n||(n={}));var i;(function(e){e[e["Unbuildable"]=0]="Unbuildable";e[e["UpToDate"]=1]="UpToDate";e[e["UpToDateWithUpstreamTypes"]=2]="UpToDateWithUpstreamTypes";e[e["OutputMissing"]=3]="OutputMissing";e[e["OutOfDateWithSelf"]=4]="OutOfDateWithSelf";e[e["OutOfDateWithUpstream"]=5]="OutOfDateWithUpstream";e[e["UpstreamOutOfDate"]=6]="UpstreamOutOfDate";e[e["UpstreamBlocked"]=7]="UpstreamBlocked";e[e["ComputingUpstream"]=8]="ComputingUpstream";e[e["ContainerOnly"]=9]="ContainerOnly"})(i=e.UpToDateStatusType||(e.UpToDateStatusType={}));function createFileMap(t){var r=e.createMap();return{setValue:setValue,getValue:getValue,removeKey:removeKey,forEach:forEach,hasKey:hasKey,getSize:getSize,clear:clear};function forEach(e){r.forEach(e)}function hasKey(e){return r.has(t(e))}function removeKey(e){r.delete(t(e))}function setValue(e,n){r.set(t(e),n)}function getValue(e){return r.get(t(e))}function getSize(){return r.size}function clear(){r.clear()}}function getOrCreateValueFromConfigFileMap(e,t,r){var n=e.getValue(t);var i;if(!n){i=r();e.setValue(t,i)}return n||i}function getOrCreateValueMapFromConfigFileMap(t,r){return getOrCreateValueFromConfigFileMap(t,r,e.createMap)}function getOutputDeclarationFileName(t,r){var n=e.getRelativePathFromDirectory(rootDirOfOptions(r.options,r.options.configFilePath),t,true);var i=e.resolvePath(r.options.declarationDir||r.options.outDir||e.getDirectoryPath(r.options.configFilePath),n);return e.changeExtension(i,".d.ts")}e.getOutputDeclarationFileName=getOutputDeclarationFileName;function getOutputJSFileName(t,r){var n=e.getRelativePathFromDirectory(rootDirOfOptions(r.options,r.options.configFilePath),t,true);var i=e.resolvePath(r.options.outDir||e.getDirectoryPath(r.options.configFilePath),n);var a=e.fileExtensionIs(t,".json")?".json":e.fileExtensionIs(t,".tsx")&&r.options.jsx===1?".jsx":".js";return e.changeExtension(i,a)}function getOutputFileNames(t,r){if(r.options.outFile||r.options.out||e.fileExtensionIs(t,".d.ts")){return e.emptyArray}var n=[];var i=getOutputJSFileName(t,r);n.push(i);if(r.options.sourceMap){n.push(i+".map")}if(e.getEmitDeclarations(r.options)&&!e.fileExtensionIs(t,".json")){var a=getOutputDeclarationFileName(t,r);n.push(a);if(r.options.declarationMap){n.push(a+".map")}}return n}function getOutFileOutputs(t){var r=t.options.outFile||t.options.out;if(!r){return e.Debug.fail("outFile must be set")}var n=[];n.push(r);if(t.options.sourceMap){n.push(r+".map")}if(e.getEmitDeclarations(t.options)){var i=e.changeExtension(r,".d.ts");n.push(i);if(t.options.declarationMap){n.push(i+".map")}}return n}function rootDirOfOptions(t,r){return t.rootDir||e.getDirectoryPath(r)}function newer(e,t){return t>e?t:e}function isDeclarationFile(t){return e.fileExtensionIs(t,".d.ts")}function createBuilderStatusReporter(t,r){return function(n){var i=r?"["+e.formatColorAndReset((new Date).toLocaleTimeString(),e.ForegroundColorEscapeSequences.Grey)+"] ":(new Date).toLocaleTimeString()+" - ";i+=""+e.flattenDiagnosticMessageText(n.messageText,t.newLine)+(t.newLine+t.newLine);t.write(i)}}e.createBuilderStatusReporter=createBuilderStatusReporter;function createSolutionBuilderHostBase(t,r,n){if(t===void 0){t=e.sys}var i=e.createCompilerHostWorker({},undefined,t);i.getModifiedTime=t.getModifiedTime?function(e){return t.getModifiedTime(e)}:function(){return undefined};i.setModifiedTime=t.setModifiedTime?function(e,r){return t.setModifiedTime(e,r)}:e.noop;i.deleteFile=t.deleteFile?function(e){return t.deleteFile(e)}:e.noop;i.reportDiagnostic=r||e.createDiagnosticReporter(t);i.reportSolutionBuilderStatus=n||createBuilderStatusReporter(t);return i}function createSolutionBuilderHost(t,r,n,i){if(t===void 0){t=e.sys}var a=createSolutionBuilderHostBase(t,r,n);a.reportErrorSummary=i;return a}e.createSolutionBuilderHost=createSolutionBuilderHost;function createSolutionBuilderWithWatchHost(t,r,n,i){var a=createSolutionBuilderHostBase(t,r,n);var o=e.createWatchHost(t,i);a.onWatchStatusChange=o.onWatchStatusChange;a.watchFile=o.watchFile;a.watchDirectory=o.watchDirectory;a.setTimeout=o.setTimeout;a.clearTimeout=o.clearTimeout;return a}e.createSolutionBuilderWithWatchHost=createSolutionBuilderWithWatchHost;function getCompilerOptionsOfBuildOptions(t){var r={};e.commonOptionsWithBuild.forEach(function(e){r[e.name]=t[e.name]});return r}function createSolutionBuilder(a,o,s){var c=a;var u=a.getCurrentDirectory();var l=e.createGetCanonicalFileName(a.useCaseSensitiveFileNames());var f=e.parseConfigHostFromCompilerHost(a);var d=s;var p=getCompilerOptionsOfBuildOptions(d);var g=createFileMap(toPath);var _=createFileMap(toPath);var m=createFileMap(toPath);var y=e.createMap();var h;var v=function(e){return a.trace&&a.trace(e)};var T=function(e){return a.readFile(e)};var S=createFileMap(toPath);var b=createFileMap(toPath);var x=createFileMap(toPath);var C=[];var E=0;var D;var k=false;var N=createFileMap(toPath);var A=createFileMap(toPath);var O=createFileMap(toPath);return{buildAllProjects:buildAllProjects,getUpToDateStatusOfFile:getUpToDateStatusOfFile,cleanAllProjects:cleanAllProjects,resetBuildContext:resetBuildContext,getBuildGraph:getBuildGraph,invalidateProject:invalidateProject,buildInvalidatedProject:buildInvalidatedProject,resolveProjectName:resolveProjectName,startWatching:startWatching};function toPath(t){return e.toPath(t,u,l)}function resetBuildContext(t){if(t===void 0){t=s}d=t;p=getCompilerOptionsOfBuildOptions(d);g.clear();_.clear();m.clear();y.clear();h=undefined;S.clear();b.clear();x.clear();C.length=0;E=0;if(D){clearTimeout(D);D=undefined}k=false;e.clearMap(N,function(t){return e.clearMap(t,e.closeFileWatcherOf)});e.clearMap(A,function(t){return e.clearMap(t,e.closeFileWatcher)});e.clearMap(O,e.closeFileWatcher)}function isParsedCommandLine(e){return!!e.options}function parseConfigFile(t){var r=g.getValue(t);if(r){return isParsedCommandLine(r)?r:undefined}var n;f.onUnRecoverableConfigFileDiagnostic=function(e){return n=e};var i=e.getParsedCommandLineOfConfigFile(t,p,f);f.onUnRecoverableConfigFileDiagnostic=e.noop;g.setValue(t,i||n);return i}function reportStatus(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}a.reportSolutionBuilderStatus(e.createCompilerDiagnostic.apply(void 0,[t].concat(r)))}function reportWatchStatus(t){var r=[];for(var n=1;n<arguments.length;n++){r[n-1]=arguments[n]}if(c.onWatchStatusChange){c.onWatchStatusChange(e.createCompilerDiagnostic.apply(void 0,[t].concat(r)),a.getNewLine(),p)}}function startWatching(){var e=getGlobalDependencyGraph();for(var t=0,r=e.buildQueue;t<r.length;t++){var n=r[t];watchConfigFile(n);var i=parseConfigFile(n);if(i){watchWildCardDirectories(n,i);watchInputFiles(n,i)}}}function watchConfigFile(t){if(d.watch&&!O.hasKey(t)){O.setValue(t,c.watchFile(t,function(){invalidateProjectAndScheduleBuilds(t,e.ConfigFileProgramReloadLevel.Full)}))}}function watchWildCardDirectories(t,r){if(!d.watch)return;e.updateWatchingWildcardDirectories(getOrCreateValueMapFromConfigFileMap(N,t),e.createMapFromTemplate(r.configFileSpecs.wildcardDirectories),function(n,i){return c.watchDirectory(n,function(i){var a=toPath(i);if(a!==toPath(n)&&e.hasExtension(a)&&!e.isSupportedSourceFileName(i,r.options)){return}if(isOutputFile(i,r)){return}invalidateProjectAndScheduleBuilds(t,e.ConfigFileProgramReloadLevel.Partial)},!!(i&1))})}function watchInputFiles(t,r){if(!d.watch)return;e.mutateMap(getOrCreateValueMapFromConfigFileMap(A,t),e.arrayToMap(r.fileNames,toPath),{createNewValue:function(r,n){return c.watchFile(n,function(){invalidateProjectAndScheduleBuilds(t,e.ConfigFileProgramReloadLevel.None)})},onDeleteValue:e.closeFileWatcher})}function isOutputFile(t,r){if(r.options.noEmit)return false;if(!e.fileExtensionIs(t,".d.ts")&&(e.fileExtensionIs(t,".ts")||e.fileExtensionIs(t,".tsx"))){return false}var n=r.options.outFile||r.options.out;if(n&&(isSameFile(t,n)||isSameFile(t,e.removeFileExtension(n)+".d.ts"))){return true}if(r.options.declarationDir&&e.containsPath(r.options.declarationDir,t,u,!a.useCaseSensitiveFileNames())){return true}if(r.options.outDir&&e.containsPath(r.options.outDir,t,u,!a.useCaseSensitiveFileNames())){return true}return!e.forEach(r.fileNames,function(e){return isSameFile(t,e)})}function isSameFile(t,r){return e.comparePaths(t,r,u,!a.useCaseSensitiveFileNames())===0}function invalidateProjectAndScheduleBuilds(e,t){k=true;invalidateResolvedProject(e,t);scheduleBuildInvalidatedProject()}function getUpToDateStatusOfFile(e){return getUpToDateStatus(parseConfigFile(e))}function getBuildGraph(e){return createDependencyGraph(resolveProjectNames(e))}function getGlobalDependencyGraph(){return h||(h=getBuildGraph(o))}function getUpToDateStatus(e){if(e===undefined){return{type:i.Unbuildable,reason:"File deleted mid-build"}}var t=m.getValue(e.options.configFilePath);if(t!==undefined){return t}var r=getUpToDateStatusWorker(e);m.setValue(e.options.configFilePath,r);return r}function getUpToDateStatusWorker(n){var o=undefined;var s=t;for(var c=0,u=n.fileNames;c<u.length;c++){var l=u[c];if(!a.fileExists(l)){return{type:i.Unbuildable,reason:l+" does not exist"}}var f=a.getModifiedTime(l)||e.missingFileModifiedTime;if(f>s){o=l;s=f}}var d=getAllProjectOutputs(n);if(d.length===0){return{type:i.ContainerOnly}}var p="(none)";var g=r;var y="(none)";var h=t;var v;var T=t;var S=false;for(var b=0,x=d;b<x.length;b++){var C=x[b];if(!a.fileExists(C)){v=C;break}var E=a.getModifiedTime(C)||e.missingFileModifiedTime;if(E<g){g=E;p=C}if(E<s){S=true;break}if(E>h){h=E;y=C}if(isDeclarationFile(C)){var D=_.getValue(C);if(D!==undefined){T=newer(D,T)}else{var k=a.getModifiedTime(C)||e.missingFileModifiedTime;T=newer(T,k)}}}var N=false;var A=false;var O;if(n.projectReferences){m.setValue(n.options.configFilePath,{type:i.ComputingUpstream});for(var F=0,P=n.projectReferences;F<P.length;F++){var I=P[F];A=A||!!I.prepend;var w=e.resolveProjectReferencePath(I);var M=getUpToDateStatus(parseConfigFile(w));if(M.type===i.ComputingUpstream){continue}if(M.type===i.Unbuildable){return{type:i.UpstreamBlocked,upstreamProjectName:I.path}}if(M.type!==i.UpToDate){return{type:i.UpstreamOutOfDate,upstreamProjectName:I.path}}if(M.newestInputFileTime&&M.newestInputFileTime<=g){continue}if(M.newestDeclarationFileContentChangedTime&&M.newestDeclarationFileContentChangedTime<=g){N=true;O=I.path;continue}e.Debug.assert(p!==undefined,"Should have an oldest output filename here");return{type:i.OutOfDateWithUpstream,outOfDateOutputFileName:p,newerProjectName:I.path}}}if(v!==undefined){return{type:i.OutputMissing,missingOutputFileName:v}}if(S){return{type:i.OutOfDateWithSelf,outOfDateOutputFileName:p,newerInputFileName:o}}if(A&&N){return{type:i.OutOfDateWithUpstream,outOfDateOutputFileName:p,newerProjectName:O}}return{type:N?i.UpToDateWithUpstreamTypes:i.UpToDate,newestDeclarationFileContentChangedTime:T,newestInputFileTime:s,newestOutputFileTime:h,newestInputFileName:o,newestOutputFileName:y,oldestOutputFileName:p}}function invalidateProject(e,t){invalidateResolvedProject(resolveProjectName(e),t)}function invalidateResolvedProject(t,r){if(r===e.ConfigFileProgramReloadLevel.Full){g.removeKey(t);h=undefined}m.removeKey(t);S.removeKey(t);addProjToQueue(t,r)}function addProjToQueue(t,r){var n=b.getValue(t);if(n===undefined){b.setValue(t,r||e.ConfigFileProgramReloadLevel.None);C.push(t)}else if(n<(r||e.ConfigFileProgramReloadLevel.None)){b.setValue(t,r||e.ConfigFileProgramReloadLevel.None)}}function getNextInvalidatedProject(){if(E<C.length){var e=C[E];E++;var t=b.getValue(e);b.removeKey(e);if(!b.getSize()){C.length=0;E=0}return{project:e,reloadLevel:t}}}function hasPendingInvalidatedProjects(){return!!b.getSize()}function scheduleBuildInvalidatedProject(){if(!c.setTimeout||!c.clearTimeout){return}if(D){c.clearTimeout(D)}D=c.setTimeout(buildInvalidatedProject,250)}function buildInvalidatedProject(){D=undefined;if(k){k=false;x.clear();reportWatchStatus(e.Diagnostics.File_change_detected_Starting_incremental_compilation)}var t=getNextInvalidatedProject();if(t){buildSingleInvalidatedProject(t.project,t.reloadLevel);if(hasPendingInvalidatedProjects()){if(d.watch&&!D){scheduleBuildInvalidatedProject()}}else{reportErrorSummary()}}}function reportErrorSummary(){if(d.watch||a.reportErrorSummary){getGlobalDependencyGraph().buildQueue.forEach(function(t){if(!x.hasKey(t)){reportErrors(S.getValue(t)||e.emptyArray)}});var t=0;S.forEach(function(r){return t+=e.getErrorCountForSummary(r)});if(d.watch){reportWatchStatus(e.getWatchErrorSummaryDiagnosticMessage(t),t)}else{a.reportErrorSummary(t)}}}function buildSingleInvalidatedProject(t,r){var a=parseConfigFile(t);if(!a){reportParseConfigFileDiagnostic(t);return}if(r===e.ConfigFileProgramReloadLevel.Full){watchConfigFile(t);watchWildCardDirectories(t,a);watchInputFiles(t,a)}else if(r===e.ConfigFileProgramReloadLevel.Partial){var o=e.getFileNamesFromConfigSpecs(a.configFileSpecs,e.getDirectoryPath(t),a.options,f);e.updateErrorForNoInputFiles(o,t,a.configFileSpecs,a.errors,e.canJsonReportNoInutFiles(a.raw));a.fileNames=o.fileNames;watchInputFiles(t,a)}var s=getUpToDateStatus(a);verboseReportProjectStatus(t,s);if(s.type===i.UpstreamBlocked){if(d.verbose)reportStatus(e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_has_errors,t,s.upstreamProjectName);return}var c=buildSingleProject(t);var u=getGlobalDependencyGraph();var l=u.referencingProjectsMap.getValue(t);if(!l)return;for(var p=0,g=u.buildQueue;p<g.length;p++){var _=g[p];var m=l.getValue(_);if(m||m!==undefined&&!(c&n.DeclarationOutputUnchanged)){addProjToQueue(_)}}}function createDependencyGraph(t){var r=createFileMap(toPath);var n=createFileMap(toPath);var i=[];var a=[];var o=createFileMap(toPath);for(var s=0,c=t;s<c.length;s++){var u=c[s];visit(u)}return{buildQueue:a,referencingProjectsMap:o};function visit(t,s){if(n.hasKey(t))return;if(r.hasKey(t)){if(!s){reportStatus(e.Diagnostics.Project_references_may_not_form_a_circular_graph_Cycle_detected_Colon_0,i.join("\r\n"))}return}r.setValue(t,true);i.push(t);var c=parseConfigFile(t);if(c&&c.projectReferences){for(var u=0,l=c.projectReferences;u<l.length;u++){var f=l[u];var d=resolveProjectName(f.path);visit(d,s||f.circular);var p=getOrCreateValueFromConfigFileMap(o,d,function(){return createFileMap(toPath)});p.setValue(t,!!f.prepend)}}i.pop();n.setValue(t,true);a.push(t)}}function buildSingleProject(o){if(d.dry){reportStatus(e.Diagnostics.A_non_dry_build_would_build_project_0,o);return n.Success}if(d.verbose)reportStatus(e.Diagnostics.Building_project_0,o);var s=n.None;s|=n.DeclarationOutputUnchanged;var c=parseConfigFile(o);if(!c){s|=n.ConfigFileErrors;reportParseConfigFileDiagnostic(o);m.setValue(o,{type:i.Unbuildable,reason:"Config file errors"});return s}if(c.fileNames.length===0){reportAndStoreErrors(o,c.errors);return n.None}var u={projectReferences:c.projectReferences,host:a,rootNames:c.fileNames,options:c.options,configFileParsingDiagnostics:c.errors};if(a.beforeCreateProgram){a.beforeCreateProgram(d)}var l=e.createProgram(u);var f=l.getOptionsDiagnostics().concat(l.getConfigFileParsingDiagnostics(),l.getSyntacticDiagnostics());if(f.length){return buildErrors(f,n.SyntaxErrors,"Syntactic")}var p=l.getSemanticDiagnostics();if(p.length){return buildErrors(p,n.TypeErrors,"Semantic")}var g=t;var y=false;var h;var b=function(e){return(h||(h=[])).push(e)};var x=[];e.emitFilesAndReportErrors(l,b,v,undefined,function(e,t,r){return x.push({name:e,text:t,writeByteOrderMark:r})});if(h){return buildErrors(h,n.DeclarationEmitErrors,"Declaration file")}var C=e.createDiagnosticCollection();x.forEach(function(t){var r=t.name,i=t.text,o=t.writeByteOrderMark;var c;if(!y&&isDeclarationFile(r)){if(a.fileExists(r)&&T(r)===i){c=a.getModifiedTime(r)}else{s&=~n.DeclarationOutputUnchanged;y=true}}e.writeFile(a,C,r,i,o);if(c!==undefined){g=newer(c,g);_.setValue(r,c)}});var E=C.getDiagnostics();if(E.length){return buildErrors(E,n.EmitErrors,"Emit")}var D={type:i.UpToDate,newestDeclarationFileContentChangedTime:y?r:g};S.removeKey(o);m.setValue(o,D);if(a.afterProgramEmitAndDiagnostics){a.afterProgramEmitAndDiagnostics(l)}return s;function buildErrors(e,t,r){s|=t;reportAndStoreErrors(o,e);m.setValue(o,{type:i.Unbuildable,reason:r+" errors"});if(a.afterProgramEmitAndDiagnostics){a.afterProgramEmitAndDiagnostics(l)}return s}}function updateOutputTimestamps(r){if(d.dry){return reportStatus(e.Diagnostics.A_non_dry_build_would_build_project_0,r.options.configFilePath)}if(d.verbose){reportStatus(e.Diagnostics.Updating_output_timestamps_of_project_0,r.options.configFilePath)}var n=new Date;var o=getAllProjectOutputs(r);var s=t;for(var c=0,u=o;c<u.length;c++){var l=u[c];if(isDeclarationFile(l)){s=newer(s,a.getModifiedTime(l)||e.missingFileModifiedTime)}a.setModifiedTime(l,n)}m.setValue(r.options.configFilePath,{type:i.UpToDate,newestDeclarationFileContentChangedTime:s})}function getFilesToClean(){var e=getGlobalDependencyGraph();var t=[];for(var r=0,n=e.buildQueue;r<n.length;r++){var i=n[r];var o=parseConfigFile(i);if(o===undefined){reportParseConfigFileDiagnostic(i);continue}var s=getAllProjectOutputs(o);for(var c=0,u=s;c<u.length;c++){var l=u[c];if(a.fileExists(l)){t.push(l)}}}return t}function cleanAllProjects(){var t=getFilesToClean();if(d.dry){reportStatus(e.Diagnostics.A_non_dry_build_would_delete_the_following_files_Colon_0,t.map(function(e){return"\r\n * "+e}).join(""));return e.ExitStatus.Success}for(var r=0,n=t;r<n.length;r++){var i=n[r];a.deleteFile(i)}return e.ExitStatus.Success}function resolveProjectName(t){return resolveConfigFileProjectName(e.resolvePath(a.getCurrentDirectory(),t))}function resolveProjectNames(e){return e.map(resolveProjectName)}function buildAllProjects(){if(d.watch){reportWatchStatus(e.Diagnostics.Starting_compilation_in_watch_mode)}var t=e.changeCompilerHostToUseCache(a,toPath,true),r=t.originalReadFile,o=t.originalFileExists,c=t.originalDirectoryExists,u=t.originalCreateDirectory,l=t.originalWriteFile,f=t.originalGetSourceFile,p=t.readFileWithCache;var g=T;T=p;var _=getGlobalDependencyGraph();reportBuildQueue(_);var m=false;for(var y=0,h=_.buildQueue;y<h.length;y++){var v=h[y];var S=parseConfigFile(v);if(S===undefined){reportParseConfigFileDiagnostic(v);m=true;break}var b=S.errors;var x=getUpToDateStatus(S);verboseReportProjectStatus(v,x);var C=S.options.configFilePath;if(x.type===i.UpToDate&&!d.force){reportAndStoreErrors(v,b);if(s.dry){reportStatus(e.Diagnostics.Project_0_is_up_to_date,C)}continue}if(x.type===i.UpToDateWithUpstreamTypes&&!d.force){reportAndStoreErrors(v,b);updateOutputTimestamps(S);continue}if(x.type===i.UpstreamBlocked){reportAndStoreErrors(v,b);if(d.verbose)reportStatus(e.Diagnostics.Skipping_build_of_project_0_because_its_dependency_1_has_errors,C,x.upstreamProjectName);continue}if(x.type===i.ContainerOnly){reportAndStoreErrors(v,b);continue}var E=buildSingleProject(v);m=m||!!(E&n.AnyErrors)}reportErrorSummary();a.readFile=r;a.fileExists=o;a.directoryExists=c;a.createDirectory=u;a.writeFile=l;T=g;a.getSourceFile=f;return m?e.ExitStatus.DiagnosticsPresent_OutputsSkipped:e.ExitStatus.Success}function reportParseConfigFileDiagnostic(e){reportAndStoreErrors(e,[g.getValue(e)])}function reportAndStoreErrors(e,t){reportErrors(t);x.setValue(e,true);S.setValue(e,t)}function reportErrors(e){e.forEach(function(e){return a.reportDiagnostic(e)})}function reportBuildQueue(t){if(d.verbose){reportStatus(e.Diagnostics.Projects_in_this_build_Colon_0,t.buildQueue.map(function(e){return"\r\n * "+relName(e)}).join(""))}}function relName(t){return e.convertToRelativePath(t,a.getCurrentDirectory(),function(e){return a.getCanonicalFileName(e)})}function verboseReportProjectStatus(e,t){if(!d.verbose)return;return formatUpToDateStatus(e,t,relName,reportStatus)}}e.createSolutionBuilder=createSolutionBuilder;function resolveConfigFileProjectName(t){if(e.fileExtensionIs(t,".json")){return t}return e.combinePaths(t,"tsconfig.json")}e.resolveConfigFileProjectName=resolveConfigFileProjectName;function getAllProjectOutputs(e){if(e.options.outFile||e.options.out){return getOutFileOutputs(e)}else{var t=[];for(var r=0,n=e.fileNames;r<n.length;r++){var i=n[r];t.push.apply(t,getOutputFileNames(i,e))}return t}}e.getAllProjectOutputs=getAllProjectOutputs;function formatUpToDateStatus(t,r,n,a){switch(r.type){case i.OutOfDateWithSelf:return a(e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,n(t),n(r.outOfDateOutputFileName),n(r.newerInputFileName));case i.OutOfDateWithUpstream:return a(e.Diagnostics.Project_0_is_out_of_date_because_oldest_output_1_is_older_than_newest_input_2,n(t),n(r.outOfDateOutputFileName),n(r.newerProjectName));case i.OutputMissing:return a(e.Diagnostics.Project_0_is_out_of_date_because_output_file_1_does_not_exist,n(t),n(r.missingOutputFileName));case i.UpToDate:if(r.newestInputFileTime!==undefined){return a(e.Diagnostics.Project_0_is_up_to_date_because_newest_input_1_is_older_than_oldest_output_2,n(t),n(r.newestInputFileName||""),n(r.oldestOutputFileName||""))}break;case i.UpToDateWithUpstreamTypes:return a(e.Diagnostics.Project_0_is_up_to_date_with_d_ts_files_from_its_dependencies,n(t));case i.UpstreamOutOfDate:return a(e.Diagnostics.Project_0_is_out_of_date_because_its_dependency_1_is_out_of_date,n(t),n(r.upstreamProjectName));case i.UpstreamBlocked:return a(e.Diagnostics.Project_0_can_t_be_built_because_its_dependency_1_has_errors,n(t),n(r.upstreamProjectName));case i.Unbuildable:return a(e.Diagnostics.Failed_to_parse_file_0_Colon_1,n(t),r.reason);case i.ContainerOnly:case i.ComputingUpstream:break;default:e.assertType(r)}}e.formatUpToDateStatus=formatUpToDateStatus})(s||(s={}));var s;(function(e){var t;(function(e){e[e["Const"]=0]="Const";e[e["Array"]=1]="Array";e[e["FunctionOrClass"]=2]="FunctionOrClass";e[e["Object"]=3]="Object"})(t=e.ValueKind||(e.ValueKind={}));function inspectModule(t){return inspectValue(e.removeFileExtension(e.getBaseFileName(t)),tryRequire(t))}e.inspectModule=inspectModule;function inspectValue(e,t){return getValueInfo(e,t,getRecurser())}e.inspectValue=inspectValue;function getRecurser(){var e=new Set;var t=[];return function(r,n,i,a){if(e.has(r)||t.length>4){return a(e.has(r),t)}e.add(r);t.push(n);var o=i();t.pop();e.delete(r);return o}}function getValueInfo(t,r,n){return n(r,t,function(){if(typeof r==="function")return getFunctionOrClassInfo(r,t,n);if(typeof r==="object"){var i=getBuiltinType(t,r,n);if(i!==undefined)return i;var a=getEntriesOfObject(r);var o=Object.getPrototypeOf(r)!==Object.prototype;var s=e.flatMap(a,function(e){var t=e.key,r=e.value;return getValueInfo(t,r,n)});return{kind:3,name:t,hasNontrivialPrototype:o,members:s}}return{kind:0,name:t,typeName:isNullOrUndefined(r)?"any":typeof r}},function(e,r){return anyValue(t," "+(e?"Circular reference":"Too-deep object hierarchy")+" from "+r.join("."))})}function getFunctionOrClassInfo(t,r,n){var i=getPrototypeMembers(t,n);var a=e.flatMap(getEntriesOfObject(t),function(e){var t=e.key,r=e.value;return getValueInfo(t,r,n)});var o=e.cast(Function.prototype.toString.call(t),e.isString);var s=e.stringContains(o,"{ [native code] }")?getFunctionLength(t):o;return{kind:2,name:r,source:s,namespaceMembers:a,prototypeMembers:i}}var r=e.memoize(function(){var t=e.createMap();for(var r=0,n=getEntriesOfObject(global);r<n.length;r++){var i=n[r],a=i.key,o=i.value;if(typeof o==="function"&&typeof o.prototype==="object"&&o!==Object){t.set(a,o)}}return t});function getBuiltinType(t,n,i){return e.isArray(n)?{name:t,kind:1,inner:n.length&&getValueInfo("element",e.first(n),i)||anyValue(t)}:e.forEachEntry(r(),function(e,r){return n instanceof e?{kind:0,name:t,typeName:r}:undefined})}function getPrototypeMembers(t,r){var n=t.prototype;return typeof n!=="object"||n===null?e.emptyArray:e.mapDefined(getEntriesOfObject(n),function(e){var t=e.key,n=e.value;return t==="constructor"?undefined:getValueInfo(t,n,r)})}var n=new Set(["arguments","caller","constructor","eval","super_"]);var i=new Set(Object.getOwnPropertyNames(e.noop));function getEntriesOfObject(t){var r=e.createMap();var a=[];var o=t;while(!isNullOrUndefined(o)&&o!==Object.prototype&&o!==Function.prototype){for(var s=0,c=Object.getOwnPropertyNames(o);s<c.length;s++){var u=c[s];if(!isJsPrivate(u)&&!n.has(u)&&(typeof t!=="function"||!i.has(u))&&e.addToSeen(r,u)){var l=safeGetPropertyOfObject(o,u);if(!(u==="toString"&&typeof l==="function"&&l.length===0)){a.push({key:u,value:l})}}}o=Object.getPrototypeOf(o)}return a.sort(function(t,r){return e.compareStringsCaseSensitive(t.key,r.key)})}function getFunctionLength(t){return e.tryCast(safeGetPropertyOfObject(t,"length"),e.isNumber)||0}function safeGetPropertyOfObject(e,t){var r=Object.getOwnPropertyDescriptor(e,t);return r&&r.value}function isNullOrUndefined(e){return e==null}function anyValue(e,t){return{kind:0,name:e,typeName:"any",comment:t}}function isJsPrivate(e){return e.startsWith("_")}e.isJsPrivate=isJsPrivate;function tryRequire(e){try{return require(e)}catch(e){return undefined}}})(s||(s={}));var s;(function(e){var t;(function(t){t.ActionSet="action::set";t.ActionInvalidate="action::invalidate";t.ActionPackageInstalled="action::packageInstalled";t.ActionValueInspected="action::valueInspected";t.EventTypesRegistry="event::typesRegistry";t.EventBeginInstallTypes="event::beginInstallTypes";t.EventEndInstallTypes="event::endInstallTypes";t.EventInitializationFailed="event::initializationFailed";var r;(function(e){e.GlobalCacheLocation="--globalTypingsCacheLocation";e.LogFile="--logFile";e.EnableTelemetry="--enableTelemetry";e.TypingSafeListLocation="--typingSafeListLocation";e.TypesMapLocation="--typesMapLocation";e.NpmLocation="--npmLocation"})(r=t.Arguments||(t.Arguments={}));function hasArgument(t){return e.sys.args.indexOf(t)>=0}t.hasArgument=hasArgument;function findArgument(t){var r=e.sys.args.indexOf(t);return r>=0&&r<e.sys.args.length-1?e.sys.args[r+1]:undefined}t.findArgument=findArgument;function nowString(){var e=new Date;return e.getHours()+":"+e.getMinutes()+":"+e.getSeconds()+"."+e.getMilliseconds()}t.nowString=nowString})(t=e.server||(e.server={}))})(s||(s={}));var s;(function(e){var t;(function(t){function isTypingUpToDate(t,r){var n=new e.Version(e.getProperty(r,"ts"+e.versionMajorMinor)||e.getProperty(r,"latest"));return n.compareTo(t.version)<=0}t.isTypingUpToDate=isTypingUpToDate;t.nodeCoreModuleList=["assert","async_hooks","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","http2","inspector","net","os","path","perf_hooks","process","punycode","querystring","readline","repl","stream","string_decoder","timers","tls","tty","url","util","v8","vm","zlib"];t.nodeCoreModules=e.arrayToSet(t.nodeCoreModuleList);function loadSafeList(t,r){var n=e.readConfigFile(r,function(e){return t.readFile(e)});return e.createMapFromTemplate(n.config)}t.loadSafeList=loadSafeList;function loadTypesMap(t,r){var n=e.readConfigFile(r,function(e){return t.readFile(e)});if(n.config){return e.createMapFromTemplate(n.config.simpleMap)}return undefined}t.loadTypesMap=loadTypesMap;function discoverTypings(r,n,i,a,o,s,c,u,l){if(!c||!c.enable){return{cachedTypingPaths:[],newTypingNames:[],filesToWatch:[]}}var f=e.createMap();i=e.mapDefined(i,function(t){var r=e.normalizePath(t);if(e.hasJSFileExtension(r)){return r}});var d=[];if(c.include)addInferredTypings(c.include,"Explicitly included types");var p=c.exclude||[];var g=e.arrayToSet(i,e.getDirectoryPath);g.set(a,true);g.forEach(function(t,r){var n=e.combinePaths(r,"package.json");getTypingNamesFromJson(n,d);var i=e.combinePaths(r,"bower.json");getTypingNamesFromJson(i,d);var a=e.combinePaths(r,"bower_components");getTypingNamesFromPackagesFolder(a,d);var o=e.combinePaths(r,"node_modules");getTypingNamesFromPackagesFolder(o,d)});getTypingNamesFromSourceFileNames(i);if(u){var _=e.deduplicate(u.map(function(e){return t.nodeCoreModules.has(e)?"node":e}),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive);addInferredTypings(_,"Inferred typings from unresolved imports")}s.forEach(function(e,t){var r=l.get(t);if(f.has(t)&&f.get(t)===undefined&&r!==undefined&&isTypingUpToDate(e,r)){f.set(t,e.typingLocation)}});for(var m=0,y=p;m<y.length;m++){var h=y[m];var v=f.delete(h);if(v&&n)n("Typing for "+h+" is in exclude list, will be ignored.")}var T=[];var S=[];f.forEach(function(e,t){if(e!==undefined){S.push(e)}else{T.push(t)}});var b={cachedTypingPaths:S,newTypingNames:T,filesToWatch:d};if(n)n("Result: "+JSON.stringify(b));return b;function addInferredTyping(e){if(!f.has(e)){f.set(e,undefined)}}function addInferredTypings(t,r){if(n)n(r+": "+JSON.stringify(t));e.forEach(t,addInferredTyping)}function getTypingNamesFromJson(t,n){if(!r.fileExists(t)){return}n.push(t);var i=e.readConfigFile(t,function(e){return r.readFile(e)}).config;var a=e.flatMap([i.dependencies,i.devDependencies,i.optionalDependencies,i.peerDependencies],e.getOwnKeys);addInferredTypings(a,"Typing names in '"+t+"' dependencies")}function getTypingNamesFromSourceFileNames(t){var r=e.mapDefined(t,function(t){if(!e.hasJSFileExtension(t))return undefined;var r=e.removeFileExtension(e.getBaseFileName(t.toLowerCase()));var n=e.removeMinAndVersionNumbers(r);return o.get(n)});if(r.length){addInferredTypings(r,"Inferred typings from file names")}var i=e.some(t,function(t){return e.fileExtensionIs(t,".jsx")});if(i){if(n)n("Inferred 'react' typings due to presence of '.jsx' extension");addInferredTyping("react")}}function getTypingNamesFromPackagesFolder(t,i){i.push(t);if(!r.directoryExists(t)){return}var a=r.readDirectory(t,[".json"],undefined,undefined,2);if(n)n("Searching for typing names in "+t+"; all files: "+JSON.stringify(a));var o=[];for(var s=0,c=a;s<c.length;s++){var u=c[s];var l=e.normalizePath(u);var d=e.getBaseFileName(l);if(d!=="package.json"&&d!=="bower.json"){continue}var p=e.readConfigFile(l,function(e){return r.readFile(e)});var g=p.config;if(d==="package.json"&&g._requiredBy&&e.filter(g._requiredBy,function(e){return e[0]==="#"||e==="/"}).length===0){continue}if(!g.name){continue}var _=g.types||g.typings;if(_){var m=e.getNormalizedAbsolutePath(_,e.getDirectoryPath(l));if(n)n(" Package '"+g.name+"' provides its own types.");f.set(g.name,m)}else{o.push(g.name)}}addInferredTypings(o," Found package names")}}t.discoverTypings=discoverTypings;var r;(function(e){e[e["Ok"]=0]="Ok";e[e["ScopedPackagesNotSupported"]=1]="ScopedPackagesNotSupported";e[e["EmptyName"]=2]="EmptyName";e[e["NameTooLong"]=3]="NameTooLong";e[e["NameStartsWithDot"]=4]="NameStartsWithDot";e[e["NameStartsWithUnderscore"]=5]="NameStartsWithUnderscore";e[e["NameContainsNonURISafeCharacters"]=6]="NameContainsNonURISafeCharacters"})(r=t.PackageNameValidationResult||(t.PackageNameValidationResult={}));var n=214;function validatePackageName(e){if(!e){return 2}if(e.length>n){return 3}if(e.charCodeAt(0)===46){return 4}if(e.charCodeAt(0)===95){return 5}if(/^@[^/]+\/[^/]+$/.test(e)){return 1}if(encodeURIComponent(e)!==e){return 6}return 0}t.validatePackageName=validatePackageName;function renderPackageNameValidationFailure(t,r){switch(t){case 2:return"Package name '"+r+"' cannot be empty";case 3:return"Package name '"+r+"' should be less than "+n+" characters";case 4:return"Package name '"+r+"' cannot start with '.'";case 5:return"Package name '"+r+"' cannot start with '_'";case 1:return"Package '"+r+"' is scoped and currently is not supported";case 6:return"Package name '"+r+"' contains non URI safe characters";case 0:return e.Debug.fail();default:throw e.Debug.assertNever(t)}}t.renderPackageNameValidationFailure=renderPackageNameValidationFailure})(t=e.JsTyping||(e.JsTyping={}))})(s||(s={}));var s;(function(e){var t;(function(e){var t=function(){function StringScriptSnapshot(e){this.text=e}StringScriptSnapshot.prototype.getText=function(e,t){return e===0&&t===this.text.length?this.text:this.text.substring(e,t)};StringScriptSnapshot.prototype.getLength=function(){return this.text.length};StringScriptSnapshot.prototype.getChangeRange=function(){return undefined};return StringScriptSnapshot}();function fromString(e){return new t(e)}e.fromString=fromString})(t=e.ScriptSnapshot||(e.ScriptSnapshot={}));e.emptyOptions={};var r;(function(e){e["none"]="none";e["definition"]="definition";e["reference"]="reference";e["writtenReference"]="writtenReference"})(r=e.HighlightSpanKind||(e.HighlightSpanKind={}));var n;(function(e){e[e["None"]=0]="None";e[e["Block"]=1]="Block";e[e["Smart"]=2]="Smart"})(n=e.IndentStyle||(e.IndentStyle={}));function getDefaultFormatCodeSettings(e){return{indentSize:4,tabSize:4,newLineCharacter:e||"\n",convertTabsToSpaces:true,indentStyle:n.Smart,insertSpaceAfterConstructor:false,insertSpaceAfterCommaDelimiter:true,insertSpaceAfterSemicolonInForStatements:true,insertSpaceBeforeAndAfterBinaryOperators:true,insertSpaceAfterKeywordsInControlFlowStatements:true,insertSpaceAfterFunctionKeywordForAnonymousFunctions:false,insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis:false,insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets:false,insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces:true,insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces:false,insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces:false,insertSpaceBeforeFunctionParenthesis:false,placeOpenBraceOnNewLineForFunctions:false,placeOpenBraceOnNewLineForControlBlocks:false}}e.getDefaultFormatCodeSettings=getDefaultFormatCodeSettings;e.testFormatSettings=getDefaultFormatCodeSettings("\n");var i;(function(e){e[e["aliasName"]=0]="aliasName";e[e["className"]=1]="className";e[e["enumName"]=2]="enumName";e[e["fieldName"]=3]="fieldName";e[e["interfaceName"]=4]="interfaceName";e[e["keyword"]=5]="keyword";e[e["lineBreak"]=6]="lineBreak";e[e["numericLiteral"]=7]="numericLiteral";e[e["stringLiteral"]=8]="stringLiteral";e[e["localName"]=9]="localName";e[e["methodName"]=10]="methodName";e[e["moduleName"]=11]="moduleName";e[e["operator"]=12]="operator";e[e["parameterName"]=13]="parameterName";e[e["propertyName"]=14]="propertyName";e[e["punctuation"]=15]="punctuation";e[e["space"]=16]="space";e[e["text"]=17]="text";e[e["typeParameterName"]=18]="typeParameterName";e[e["enumMemberName"]=19]="enumMemberName";e[e["functionName"]=20]="functionName";e[e["regularExpressionLiteral"]=21]="regularExpressionLiteral"})(i=e.SymbolDisplayPartKind||(e.SymbolDisplayPartKind={}));var a;(function(e){e["Comment"]="comment";e["Region"]="region";e["Code"]="code";e["Imports"]="imports"})(a=e.OutliningSpanKind||(e.OutliningSpanKind={}));var o;(function(e){e[e["JavaScript"]=0]="JavaScript";e[e["SourceMap"]=1]="SourceMap";e[e["Declaration"]=2]="Declaration"})(o=e.OutputFileType||(e.OutputFileType={}));var s;(function(e){e[e["None"]=0]="None";e[e["InMultiLineCommentTrivia"]=1]="InMultiLineCommentTrivia";e[e["InSingleQuoteStringLiteral"]=2]="InSingleQuoteStringLiteral";e[e["InDoubleQuoteStringLiteral"]=3]="InDoubleQuoteStringLiteral";e[e["InTemplateHeadOrNoSubstitutionTemplate"]=4]="InTemplateHeadOrNoSubstitutionTemplate";e[e["InTemplateMiddleOrTail"]=5]="InTemplateMiddleOrTail";e[e["InTemplateSubstitutionPosition"]=6]="InTemplateSubstitutionPosition"})(s=e.EndOfLineState||(e.EndOfLineState={}));var c;(function(e){e[e["Punctuation"]=0]="Punctuation";e[e["Keyword"]=1]="Keyword";e[e["Operator"]=2]="Operator";e[e["Comment"]=3]="Comment";e[e["Whitespace"]=4]="Whitespace";e[e["Identifier"]=5]="Identifier";e[e["NumberLiteral"]=6]="NumberLiteral";e[e["BigIntLiteral"]=7]="BigIntLiteral";e[e["StringLiteral"]=8]="StringLiteral";e[e["RegExpLiteral"]=9]="RegExpLiteral"})(c=e.TokenClass||(e.TokenClass={}));var u;(function(e){e["unknown"]="";e["warning"]="warning";e["keyword"]="keyword";e["scriptElement"]="script";e["moduleElement"]="module";e["classElement"]="class";e["localClassElement"]="local class";e["interfaceElement"]="interface";e["typeElement"]="type";e["enumElement"]="enum";e["enumMemberElement"]="enum member";e["variableElement"]="var";e["localVariableElement"]="local var";e["functionElement"]="function";e["localFunctionElement"]="local function";e["memberFunctionElement"]="method";e["memberGetAccessorElement"]="getter";e["memberSetAccessorElement"]="setter";e["memberVariableElement"]="property";e["constructorImplementationElement"]="constructor";e["callSignatureElement"]="call";e["indexSignatureElement"]="index";e["constructSignatureElement"]="construct";e["parameterElement"]="parameter";e["typeParameterElement"]="type parameter";e["primitiveType"]="primitive type";e["label"]="label";e["alias"]="alias";e["constElement"]="const";e["letElement"]="let";e["directory"]="directory";e["externalModuleName"]="external module name";e["jsxAttribute"]="JSX attribute";e["string"]="string"})(u=e.ScriptElementKind||(e.ScriptElementKind={}));var l;(function(e){e["none"]="";e["publicMemberModifier"]="public";e["privateMemberModifier"]="private";e["protectedMemberModifier"]="protected";e["exportedModifier"]="export";e["ambientModifier"]="declare";e["staticModifier"]="static";e["abstractModifier"]="abstract";e["optionalModifier"]="optional";e["dtsModifier"]=".d.ts";e["tsModifier"]=".ts";e["tsxModifier"]=".tsx";e["jsModifier"]=".js";e["jsxModifier"]=".jsx";e["jsonModifier"]=".json"})(l=e.ScriptElementKindModifier||(e.ScriptElementKindModifier={}));var f;(function(e){e["comment"]="comment";e["identifier"]="identifier";e["keyword"]="keyword";e["numericLiteral"]="number";e["bigintLiteral"]="bigint";e["operator"]="operator";e["stringLiteral"]="string";e["whiteSpace"]="whitespace";e["text"]="text";e["punctuation"]="punctuation";e["className"]="class name";e["enumName"]="enum name";e["interfaceName"]="interface name";e["moduleName"]="module name";e["typeParameterName"]="type parameter name";e["typeAliasName"]="type alias name";e["parameterName"]="parameter name";e["docCommentTagName"]="doc comment tag name";e["jsxOpenTagName"]="jsx open tag name";e["jsxCloseTagName"]="jsx close tag name";e["jsxSelfClosingTagName"]="jsx self closing tag name";e["jsxAttribute"]="jsx attribute";e["jsxText"]="jsx text";e["jsxAttributeStringLiteralValue"]="jsx attribute string literal value"})(f=e.ClassificationTypeNames||(e.ClassificationTypeNames={}));var d;(function(e){e[e["comment"]=1]="comment";e[e["identifier"]=2]="identifier";e[e["keyword"]=3]="keyword";e[e["numericLiteral"]=4]="numericLiteral";e[e["operator"]=5]="operator";e[e["stringLiteral"]=6]="stringLiteral";e[e["regularExpressionLiteral"]=7]="regularExpressionLiteral";e[e["whiteSpace"]=8]="whiteSpace";e[e["text"]=9]="text";e[e["punctuation"]=10]="punctuation";e[e["className"]=11]="className";e[e["enumName"]=12]="enumName";e[e["interfaceName"]=13]="interfaceName";e[e["moduleName"]=14]="moduleName";e[e["typeParameterName"]=15]="typeParameterName";e[e["typeAliasName"]=16]="typeAliasName";e[e["parameterName"]=17]="parameterName";e[e["docCommentTagName"]=18]="docCommentTagName";e[e["jsxOpenTagName"]=19]="jsxOpenTagName";e[e["jsxCloseTagName"]=20]="jsxCloseTagName";e[e["jsxSelfClosingTagName"]=21]="jsxSelfClosingTagName";e[e["jsxAttribute"]=22]="jsxAttribute";e[e["jsxText"]=23]="jsxText";e[e["jsxAttributeStringLiteralValue"]=24]="jsxAttributeStringLiteralValue";e[e["bigintLiteral"]=25]="bigintLiteral"})(d=e.ClassificationType||(e.ClassificationType={}))})(s||(s={}));var s;(function(e){e.scanner=e.createScanner(6,true);var t;(function(e){e[e["None"]=0]="None";e[e["Value"]=1]="Value";e[e["Type"]=2]="Type";e[e["Namespace"]=4]="Namespace";e[e["All"]=7]="All"})(t=e.SemanticMeaning||(e.SemanticMeaning={}));function getMeaningFromDeclaration(t){switch(t.kind){case 237:return e.isInJSFile(t)&&e.getJSDocEnumTag(t)?7:1;case 151:case 186:case 154:case 153:case 275:case 276:case 156:case 155:case 157:case 158:case 159:case 239:case 196:case 197:case 274:case 267:return 1;case 150:case 241:case 242:case 168:return 2;case 304:return t.name===undefined?1|2:2;case 278:case 240:return 1|2;case 244:if(e.isAmbientModule(t)){return 4|1}else if(e.getModuleInstanceState(t)===1){return 4|1}else{return 4}case 243:case 252:case 253:case 248:case 249:case 254:case 255:return 7;case 279:return 4|1}return 7}e.getMeaningFromDeclaration=getMeaningFromDeclaration;function getMeaningFromLocation(t){if(t.kind===279){return 1}else if(t.parent.kind===254||t.parent.kind===259){return 7}else if(isInRightSideOfInternalImportEqualsDeclaration(t)){return getMeaningFromRightHandSideOfImportEquals(t)}else if(e.isDeclarationName(t)){return getMeaningFromDeclaration(t.parent)}else if(isTypeReference(t)){return 2}else if(isNamespaceReference(t)){return 4}else if(e.isTypeParameterDeclaration(t.parent)){e.Debug.assert(e.isJSDocTemplateTag(t.parent.parent));return 2}else if(e.isLiteralTypeNode(t.parent)){return 2|1}else{return 1}}e.getMeaningFromLocation=getMeaningFromLocation;function getMeaningFromRightHandSideOfImportEquals(t){var r=t.kind===148?t:e.isQualifiedName(t.parent)&&t.parent.right===t?t.parent:undefined;return r&&r.parent.kind===248?7:4}function isInRightSideOfInternalImportEqualsDeclaration(t){while(t.parent.kind===148){t=t.parent}return e.isInternalModuleImportEqualsDeclaration(t.parent)&&t.parent.moduleReference===t}e.isInRightSideOfInternalImportEqualsDeclaration=isInRightSideOfInternalImportEqualsDeclaration;function isNamespaceReference(e){return isQualifiedNameNamespaceReference(e)||isPropertyAccessNamespaceReference(e)}function isQualifiedNameNamespaceReference(e){var t=e;var r=true;if(t.parent.kind===148){while(t.parent&&t.parent.kind===148){t=t.parent}r=t.right===e}return t.parent.kind===164&&!r}function isPropertyAccessNamespaceReference(e){var t=e;var r=true;if(t.parent.kind===189){while(t.parent&&t.parent.kind===189){t=t.parent}r=t.name===e}if(!r&&t.parent.kind===211&&t.parent.parent.kind===273){var n=t.parent.parent.parent;return n.kind===240&&t.parent.parent.token===109||n.kind===241&&t.parent.parent.token===86}return false}function isTypeReference(t){if(e.isRightSideOfQualifiedNameOrPropertyAccess(t)){t=t.parent}switch(t.kind){case 100:return!e.isExpressionNode(t);case 178:return true}switch(t.parent.kind){case 164:return true;case 183:return!t.parent.isTypeOf;case 211:return!e.isExpressionWithTypeArgumentsInClassExtendsClause(t.parent)}return false}function isCallExpressionTarget(t){return isCallOrNewExpressionTargetWorker(t,e.isCallExpression)}e.isCallExpressionTarget=isCallExpressionTarget;function isNewExpressionTarget(t){return isCallOrNewExpressionTargetWorker(t,e.isNewExpression)}e.isNewExpressionTarget=isNewExpressionTarget;function isCallOrNewExpressionTarget(t){return isCallOrNewExpressionTargetWorker(t,e.isCallOrNewExpression)}e.isCallOrNewExpressionTarget=isCallOrNewExpressionTarget;function isCallOrNewExpressionTargetWorker(e,t){var r=climbPastPropertyAccess(e);return!!r&&!!r.parent&&t(r.parent)&&r.parent.expression===r}function climbPastPropertyAccess(e){return isRightSideOfPropertyAccess(e)?e.parent:e}e.climbPastPropertyAccess=climbPastPropertyAccess;function getTargetLabel(e,t){while(e){if(e.kind===233&&e.label.escapedText===t){return e.label}e=e.parent}return undefined}e.getTargetLabel=getTargetLabel;function hasPropertyAccessExpressionWithName(t,r){if(!e.isPropertyAccessExpression(t.expression)){return false}return t.expression.name.text===r}e.hasPropertyAccessExpressionWithName=hasPropertyAccessExpressionWithName;function isJumpStatementTarget(t){return t.kind===72&&e.isBreakOrContinueStatement(t.parent)&&t.parent.label===t}e.isJumpStatementTarget=isJumpStatementTarget;function isLabelOfLabeledStatement(t){return t.kind===72&&e.isLabeledStatement(t.parent)&&t.parent.label===t}e.isLabelOfLabeledStatement=isLabelOfLabeledStatement;function isLabelName(e){return isLabelOfLabeledStatement(e)||isJumpStatementTarget(e)}e.isLabelName=isLabelName;function isTagName(t){return e.isJSDocTag(t.parent)&&t.parent.tagName===t}e.isTagName=isTagName;function isRightSideOfQualifiedName(e){return e.parent.kind===148&&e.parent.right===e}e.isRightSideOfQualifiedName=isRightSideOfQualifiedName;function isRightSideOfPropertyAccess(e){return e&&e.parent&&e.parent.kind===189&&e.parent.name===e}e.isRightSideOfPropertyAccess=isRightSideOfPropertyAccess;function isNameOfModuleDeclaration(e){return e.parent.kind===244&&e.parent.name===e}e.isNameOfModuleDeclaration=isNameOfModuleDeclaration;function isNameOfFunctionDeclaration(t){return t.kind===72&&e.isFunctionLike(t.parent)&&t.parent.name===t}e.isNameOfFunctionDeclaration=isNameOfFunctionDeclaration;function isLiteralNameOfPropertyDeclarationOrIndexAccess(t){switch(t.parent.kind){case 154:case 153:case 275:case 278:case 156:case 155:case 158:case 159:case 244:return e.getNameOfDeclaration(t.parent)===t;case 190:return t.parent.argumentExpression===t;case 149:return true;case 182:return t.parent.parent.kind===180;default:return false}}e.isLiteralNameOfPropertyDeclarationOrIndexAccess=isLiteralNameOfPropertyDeclarationOrIndexAccess;function isExpressionOfExternalModuleImportEqualsDeclaration(t){return e.isExternalModuleImportEqualsDeclaration(t.parent.parent)&&e.getExternalModuleImportEqualsDeclarationExpression(t.parent.parent)===t}e.isExpressionOfExternalModuleImportEqualsDeclaration=isExpressionOfExternalModuleImportEqualsDeclaration;function getContainerNode(t){if(e.isJSDocTypeAlias(t)){t=t.parent.parent}while(true){t=t.parent;if(!t){return undefined}switch(t.kind){case 279:case 156:case 155:case 239:case 196:case 158:case 159:case 240:case 241:case 243:case 244:return t}}}e.getContainerNode=getContainerNode;function getNodeKind(t){switch(t.kind){case 279:return e.isExternalModule(t)?"module":"script";case 244:return"module";case 240:case 209:return"class";case 241:return"interface";case 242:case 297:case 304:return"type";case 243:return"enum";case 237:return getKindOfVariableDeclaration(t);case 186:return getKindOfVariableDeclaration(e.getRootDeclaration(t));case 197:case 239:case 196:return"function";case 158:return"getter";case 159:return"setter";case 156:case 155:return"method";case 154:case 153:return"property";case 162:return"index";case 161:return"construct";case 160:return"call";case 157:return"constructor";case 150:return"type parameter";case 278:return"enum member";case 151:return e.hasModifier(t,92)?"property":"parameter";case 248:case 253:case 257:case 251:return"alias";case 204:var r=e.getAssignmentDeclarationKind(t);var n=t.right;switch(r){case 7:case 8:case 9:case 0:return"";case 1:case 2:var i=getNodeKind(n);return i===""?"const":i;case 3:return e.isFunctionExpression(n)?"method":"property";case 4:return"property";case 5:return e.isFunctionExpression(n)?"method":"property";case 6:return"local class";default:{e.assertType(r);return""}}case 72:return e.isImportClause(t.parent)?"alias":"";default:return""}function getKindOfVariableDeclaration(t){return e.isVarConst(t)?"const":e.isLet(t)?"let":"var"}}e.getNodeKind=getNodeKind;function isThis(t){switch(t.kind){case 100:return true;case 72:return e.identifierIsThisKeyword(t)&&t.parent.kind===151;default:return false}}e.isThis=isThis;var r=/^\/\/\/\s*</;function getLineStartPositionForPosition(t,r){var n=e.getLineStarts(r);var i=r.getLineAndCharacterOfPosition(t).line;return n[i]}e.getLineStartPositionForPosition=getLineStartPositionForPosition;function rangeContainsRange(e,t){return startEndContainsRange(e.pos,e.end,t)}e.rangeContainsRange=rangeContainsRange;function rangeContainsRangeExclusive(e,t){return rangeContainsPositionExclusive(e,t.pos)&&rangeContainsPositionExclusive(e,t.end)}e.rangeContainsRangeExclusive=rangeContainsRangeExclusive;function rangeContainsPosition(e,t){return e.pos<=t&&t<=e.end}e.rangeContainsPosition=rangeContainsPosition;function rangeContainsPositionExclusive(e,t){return e.pos<t&&t<e.end}e.rangeContainsPositionExclusive=rangeContainsPositionExclusive;function startEndContainsRange(e,t,r){return e<=r.pos&&t>=r.end}e.startEndContainsRange=startEndContainsRange;function rangeContainsStartEnd(e,t,r){return e.pos<=t&&e.end>=r}e.rangeContainsStartEnd=rangeContainsStartEnd;function rangeOverlapsWithStartEnd(e,t,r){return startEndOverlapsWithStartEnd(e.pos,e.end,t,r)}e.rangeOverlapsWithStartEnd=rangeOverlapsWithStartEnd;function nodeOverlapsWithStartEnd(e,t,r,n){return startEndOverlapsWithStartEnd(e.getStart(t),e.end,r,n)}e.nodeOverlapsWithStartEnd=nodeOverlapsWithStartEnd;function startEndOverlapsWithStartEnd(e,t,r,n){var i=Math.max(e,r);var a=Math.min(t,n);return i<a}e.startEndOverlapsWithStartEnd=startEndOverlapsWithStartEnd;function positionBelongsToNode(t,r,n){e.Debug.assert(t.pos<=r);return r<t.end||!isCompletedNode(t,n)}e.positionBelongsToNode=positionBelongsToNode;function isCompletedNode(t,r){if(t===undefined||e.nodeIsMissing(t)){return false}switch(t.kind){case 240:case 241:case 243:case 188:case 184:case 168:case 218:case 245:case 246:case 252:case 256:return nodeEndsWith(t,19,r);case 274:return isCompletedNode(t.block,r);case 192:if(!t.arguments){return true}case 191:case 195:case 177:return nodeEndsWith(t,21,r);case 165:case 166:return isCompletedNode(t.type,r);case 157:case 158:case 159:case 239:case 196:case 156:case 155:case 161:case 160:case 197:if(t.body){return isCompletedNode(t.body,r)}if(t.type){return isCompletedNode(t.type,r)}return hasChildOfKind(t,21,r);case 244:return!!t.body&&isCompletedNode(t.body,r);case 222:if(t.elseStatement){return isCompletedNode(t.elseStatement,r)}return isCompletedNode(t.thenStatement,r);case 221:return isCompletedNode(t.expression,r)||hasChildOfKind(t,26,r);case 187:case 185:case 190:case 149:case 170:return nodeEndsWith(t,23,r);case 162:if(t.type){return isCompletedNode(t.type,r)}return hasChildOfKind(t,23,r);case 271:case 272:return false;case 225:case 226:case 227:case 224:return isCompletedNode(t.statement,r);case 223:return hasChildOfKind(t,107,r)?nodeEndsWith(t,21,r):isCompletedNode(t.statement,r);case 167:return isCompletedNode(t.exprName,r);case 199:case 198:case 200:case 207:case 208:var n=t;return isCompletedNode(n.expression,r);case 193:return isCompletedNode(t.template,r);case 206:var i=e.lastOrUndefined(t.templateSpans);return isCompletedNode(i,r);case 216:return e.nodeIsPresent(t.literal);case 255:case 249:return e.nodeIsPresent(t.moduleSpecifier);case 202:return isCompletedNode(t.operand,r);case 204:return isCompletedNode(t.right,r);case 205:return isCompletedNode(t.whenFalse,r);default:return true}}function nodeEndsWith(t,r,n){var i=t.getChildren(n);if(i.length){var a=e.last(i);if(a.kind===r){return true}else if(a.kind===26&&i.length!==1){return i[i.length-2].kind===r}}return false}function findListItemInfo(t){var r=findContainingList(t);if(!r){return undefined}var n=r.getChildren();var i=e.indexOfNode(n,t);return{listItemIndex:i,list:r}}e.findListItemInfo=findListItemInfo;function hasChildOfKind(e,t,r){return!!findChildOfKind(e,t,r)}e.hasChildOfKind=hasChildOfKind;function findChildOfKind(t,r,n){return e.find(t.getChildren(n),function(e){return e.kind===r})}e.findChildOfKind=findChildOfKind;function findContainingList(t){var r=e.find(t.parent.getChildren(),function(r){return e.isSyntaxList(r)&&rangeContainsRange(r,t)});e.Debug.assert(!r||e.contains(r.getChildren(),t));return r}e.findContainingList=findContainingList;function getTouchingPropertyName(t,r){return getTouchingToken(t,r,function(t){return e.isPropertyNameLiteral(t)||e.isKeyword(t.kind)})}e.getTouchingPropertyName=getTouchingPropertyName;function getTouchingToken(e,t,r){return getTokenAtPositionWorker(e,t,false,r,false)}e.getTouchingToken=getTouchingToken;function getTokenAtPosition(e,t){return getTokenAtPositionWorker(e,t,true,undefined,false)}e.getTokenAtPosition=getTokenAtPosition;function getTokenAtPositionWorker(e,t,r,n,i){var a=e;e:while(true){for(var o=0,s=a.getChildren(e);o<s.length;o++){var c=s[o];var u=r?c.getFullStart():c.getStart(e,true);if(u>t){break}var l=c.getEnd();if(t<l||t===l&&(c.kind===1||i)){a=c;continue e}else if(n&&l===t){var f=findPrecedingToken(t,e,c);if(f&&n(f)){return f}}}return a}}function findTokenOnLeftOfPosition(t,r){var n=getTokenAtPosition(t,r);if(e.isToken(n)&&r>n.getStart(t)&&r<n.getEnd()){return n}return findPrecedingToken(r,t)}e.findTokenOnLeftOfPosition=findTokenOnLeftOfPosition;function findNextToken(t,r,n){return find(r);function find(r){if(e.isToken(r)&&r.pos===t.end){return r}return e.firstDefined(r.getChildren(),function(e){var r=e.pos<=t.pos&&e.end>t.end||e.pos===t.end;return r&&nodeHasTokens(e,n)?find(e):undefined})}}e.findNextToken=findNextToken;function findPrecedingToken(t,r,n,i){var a=find(n||r);e.Debug.assert(!(a&&isWhiteSpaceOnlyJsxText(a)));return a;function find(a){if(isNonWhitespaceToken(a)&&a.kind!==1){return a}var o=a.getChildren(r);for(var s=0;s<o.length;s++){var c=o[s];if(t<c.end){var u=c.getStart(r,!i);var l=u>=t||!nodeHasTokens(c,r)||isWhiteSpaceOnlyJsxText(c);if(l){var f=findRightmostChildNodeWithTokens(o,s,r);return f&&findRightmostToken(f,r)}else{return find(c)}}}e.Debug.assert(n!==undefined||a.kind===279||a.kind===1||e.isJSDocCommentContainingNode(a));var d=findRightmostChildNodeWithTokens(o,o.length,r);return d&&findRightmostToken(d,r)}}e.findPrecedingToken=findPrecedingToken;function isNonWhitespaceToken(t){return e.isToken(t)&&!isWhiteSpaceOnlyJsxText(t)}function findRightmostToken(e,t){if(isNonWhitespaceToken(e)){return e}var r=e.getChildren(t);var n=findRightmostChildNodeWithTokens(r,r.length,t);return n&&findRightmostToken(n,t)}function findRightmostChildNodeWithTokens(t,r,n){for(var i=r-1;i>=0;i--){var a=t[i];if(isWhiteSpaceOnlyJsxText(a)){e.Debug.assert(i>0,"`JsxText` tokens should not be the first child of `JsxElement | JsxSelfClosingElement`")}else if(nodeHasTokens(t[i],n)){return t[i]}}}function isInString(t,r,n){if(n===void 0){n=findPrecedingToken(r,t)}if(n&&e.isStringTextContainingNode(n)){var i=n.getStart(t);var a=n.getEnd();if(i<r&&r<a){return true}if(r===a){return!!n.isUnterminated}}return false}e.isInString=isInString;function isInsideJsxElementOrAttribute(e,t){var r=getTokenAtPosition(e,t);if(!r){return false}if(r.kind===11){return true}if(r.kind===28&&r.parent.kind===11){return true}if(r.kind===28&&r.parent.kind===270){return true}if(r&&r.kind===19&&r.parent.kind===270){return true}if(r.kind===28&&r.parent.kind===263){return true}return false}e.isInsideJsxElementOrAttribute=isInsideJsxElementOrAttribute;function isWhiteSpaceOnlyJsxText(t){return e.isJsxText(t)&&t.containsOnlyWhiteSpaces}function isInTemplateString(t,r){var n=getTokenAtPosition(t,r);return e.isTemplateLiteralKind(n.kind)&&r>n.getStart(t)}e.isInTemplateString=isInTemplateString;function isInJSXText(t,r){var n=getTokenAtPosition(t,r);if(e.isJsxText(n)){return true}if(n.kind===18&&e.isJsxExpression(n.parent)&&e.isJsxElement(n.parent.parent)){return true}if(n.kind===28&&e.isJsxOpeningLikeElement(n.parent)&&e.isJsxElement(n.parent.parent)){return true}return false}e.isInJSXText=isInJSXText;function findPrecedingMatchingToken(e,t,r){var n=e.kind;var i=0;while(true){var a=findPrecedingToken(e.getFullStart(),r);if(!a){return undefined}e=a;if(e.kind===t){if(i===0){return e}i--}else if(e.kind===n){i++}}}e.findPrecedingMatchingToken=findPrecedingMatchingToken;function isPossiblyTypeArgumentPosition(t,r,n){var i=getPossibleTypeArgumentsInfo(t,r);return i!==undefined&&(e.isPartOfTypeNode(i.called)||getPossibleGenericSignatures(i.called,i.nTypeArguments,n).length!==0||isPossiblyTypeArgumentPosition(i.called,r,n))}e.isPossiblyTypeArgumentPosition=isPossiblyTypeArgumentPosition;function getPossibleGenericSignatures(t,r,n){var i=n.getTypeAtLocation(t);var a=e.isNewExpression(t.parent)?i.getConstructSignatures():i.getCallSignatures();return a.filter(function(e){return!!e.typeParameters&&e.typeParameters.length>=r})}e.getPossibleGenericSignatures=getPossibleGenericSignatures;function getPossibleTypeArgumentsInfo(t,r){var n=t;var i=0;var a=0;while(n){switch(n.kind){case 28:n=findPrecedingToken(n.getFullStart(),r);if(!n||!e.isIdentifier(n))return undefined;if(!i){return e.isDeclarationName(n)?undefined:{called:n,nTypeArguments:a}}i--;break;case 48:i=+3;break;case 47:i=+2;break;case 30:i++;break;case 19:n=findPrecedingMatchingToken(n,18,r);if(!n)return undefined;break;case 21:n=findPrecedingMatchingToken(n,20,r);if(!n)return undefined;break;case 23:n=findPrecedingMatchingToken(n,22,r);if(!n)return undefined;break;case 27:a++;break;case 37:case 72:case 10:case 8:case 9:case 102:case 87:case 104:case 86:case 129:case 24:case 50:case 56:case 57:break;default:if(e.isTypeNode(n)){break}return undefined}n=findPrecedingToken(n.getFullStart(),r)}return undefined}e.getPossibleTypeArgumentsInfo=getPossibleTypeArgumentsInfo;function isInComment(t,r,n){return e.formatting.getRangeOfEnclosingComment(t,r,undefined,n)}e.isInComment=isInComment;function hasDocComment(t,r){var n=getTokenAtPosition(t,r);return!!e.findAncestor(n,e.isJSDoc)}e.hasDocComment=hasDocComment;function nodeHasTokens(e,t){return e.kind===1?!!e.jsDoc:e.getWidth(t)!==0}function getNodeModifiers(t){var r=e.isDeclaration(t)?e.getCombinedModifierFlags(t):0;var n=[];if(r&8)n.push("private");if(r&16)n.push("protected");if(r&4)n.push("public");if(r&32)n.push("static");if(r&128)n.push("abstract");if(r&1)n.push("export");if(t.flags&4194304)n.push("declare");return n.length>0?n.join(","):""}e.getNodeModifiers=getNodeModifiers;function getTypeArgumentOrTypeParameterList(t){if(t.kind===164||t.kind===191){return t.typeArguments}if(e.isFunctionLike(t)||t.kind===240||t.kind===241){return t.typeParameters}return undefined}e.getTypeArgumentOrTypeParameterList=getTypeArgumentOrTypeParameterList;function isComment(e){return e===2||e===3}e.isComment=isComment;function isStringOrRegularExpressionOrTemplateLiteral(t){if(t===10||t===13||e.isTemplateLiteralKind(t)){return true}return false}e.isStringOrRegularExpressionOrTemplateLiteral=isStringOrRegularExpressionOrTemplateLiteral;function isPunctuation(e){return 18<=e&&e<=71}e.isPunctuation=isPunctuation;function isInsideTemplateLiteral(t,r,n){return e.isTemplateLiteralKind(t.kind)&&(t.getStart(n)<r&&r<t.end)||!!t.isUnterminated&&r===t.end}e.isInsideTemplateLiteral=isInsideTemplateLiteral;function isAccessibilityModifier(e){switch(e){case 115:case 113:case 114:return true}return false}e.isAccessibilityModifier=isAccessibilityModifier;function cloneCompilerOptions(t){var r=e.clone(t);e.setConfigFileInOptions(r,t&&t.configFile);return r}e.cloneCompilerOptions=cloneCompilerOptions;function isArrayLiteralOrObjectLiteralDestructuringPattern(e){if(e.kind===187||e.kind===188){if(e.parent.kind===204&&e.parent.left===e&&e.parent.operatorToken.kind===59){return true}if(e.parent.kind===227&&e.parent.initializer===e){return true}if(isArrayLiteralOrObjectLiteralDestructuringPattern(e.parent.kind===275?e.parent.parent:e.parent)){return true}}return false}e.isArrayLiteralOrObjectLiteralDestructuringPattern=isArrayLiteralOrObjectLiteralDestructuringPattern;function isInReferenceComment(e,t){return isInReferenceCommentWorker(e,t,true)}e.isInReferenceComment=isInReferenceComment;function isInNonReferenceComment(e,t){return isInReferenceCommentWorker(e,t,false)}e.isInNonReferenceComment=isInNonReferenceComment;function isInReferenceCommentWorker(e,t,n){var i=isInComment(e,t,undefined);return!!i&&n===r.test(e.text.substring(i.pos,i.end))}function createTextSpanFromNode(t,r){return e.createTextSpanFromBounds(t.getStart(r),t.getEnd())}e.createTextSpanFromNode=createTextSpanFromNode;function createTextRangeFromNode(t,r){return e.createRange(t.getStart(r),t.end)}e.createTextRangeFromNode=createTextRangeFromNode;function createTextSpanFromRange(t){return e.createTextSpanFromBounds(t.pos,t.end)}e.createTextSpanFromRange=createTextSpanFromRange;function createTextRangeFromSpan(t){return e.createRange(t.start,t.start+t.length)}e.createTextRangeFromSpan=createTextRangeFromSpan;function createTextChangeFromStartLength(t,r,n){return createTextChange(e.createTextSpan(t,r),n)}e.createTextChangeFromStartLength=createTextChangeFromStartLength;function createTextChange(e,t){return{span:e,newText:t}}e.createTextChange=createTextChange;e.typeKeywords=[120,146,123,87,129,132,96,135,136,138,139,102,106,141,142,143];function isTypeKeyword(t){return e.contains(e.typeKeywords,t)}e.isTypeKeyword=isTypeKeyword;function isExternalModuleSymbol(e){return!!(e.flags&1536)&&e.name.charCodeAt(0)===34}e.isExternalModuleSymbol=isExternalModuleSymbol;function nodeSeenTracker(){var t=[];return function(r){var n=e.getNodeId(r);return!t[n]&&(t[n]=true)}}e.nodeSeenTracker=nodeSeenTracker;function getSnapshotText(e){return e.getText(0,e.getLength())}e.getSnapshotText=getSnapshotText;function repeatString(e,t){var r="";for(var n=0;n<t;n++){r+=e}return r}e.repeatString=repeatString;function skipConstraint(e){return e.isTypeParameter()?e.getConstraint()||e:e}e.skipConstraint=skipConstraint;function getNameFromPropertyName(t){return t.kind===149?e.isStringOrNumericLiteralLike(t.expression)?t.expression.text:undefined:e.getTextOfIdentifierOrLiteral(t)}e.getNameFromPropertyName=getNameFromPropertyName;function programContainsEs6Modules(e){return e.getSourceFiles().some(function(t){return!t.isDeclarationFile&&!e.isSourceFileFromExternalLibrary(t)&&!!t.externalModuleIndicator})}e.programContainsEs6Modules=programContainsEs6Modules;function compilerOptionsIndicateEs6Modules(e){return!!e.module||e.target>=2||!!e.noEmit}e.compilerOptionsIndicateEs6Modules=compilerOptionsIndicateEs6Modules;function hostUsesCaseSensitiveFileNames(e){return e.useCaseSensitiveFileNames?e.useCaseSensitiveFileNames():false}e.hostUsesCaseSensitiveFileNames=hostUsesCaseSensitiveFileNames;function hostGetCanonicalFileName(t){return e.createGetCanonicalFileName(hostUsesCaseSensitiveFileNames(t))}e.hostGetCanonicalFileName=hostGetCanonicalFileName;function makeImportIfNecessary(e,t,r,n){return e||t&&t.length?makeImport(e,t,r,n):undefined}e.makeImportIfNecessary=makeImportIfNecessary;function makeImport(t,r,n,i){return e.createImportDeclaration(undefined,undefined,t||r?e.createImportClause(t,r&&r.length?e.createNamedImports(r):undefined):undefined,typeof n==="string"?makeStringLiteral(n,i):n)}e.makeImport=makeImport;function makeStringLiteral(t,r){return e.createLiteral(t,r===0)}e.makeStringLiteral=makeStringLiteral;var n;(function(e){e[e["Single"]=0]="Single";e[e["Double"]=1]="Double"})(n=e.QuotePreference||(e.QuotePreference={}));function quotePreferenceFromString(t,r){return e.isStringDoubleQuoted(t,r)?1:0}e.quotePreferenceFromString=quotePreferenceFromString;function getQuotePreference(t,r){if(r.quotePreference){return r.quotePreference==="single"?0:1}else{var n=t.imports&&e.find(t.imports,e.isStringLiteral);return n?quotePreferenceFromString(n,t):1}}e.getQuotePreference=getQuotePreference;function getQuoteFromPreference(t){switch(t){case 0:return"'";case 1:return'"';default:return e.Debug.assertNever(t)}}e.getQuoteFromPreference=getQuoteFromPreference;function symbolNameNoDefault(t){var r=symbolEscapedNameNoDefault(t);return r===undefined?undefined:e.unescapeLeadingUnderscores(r)}e.symbolNameNoDefault=symbolNameNoDefault;function symbolEscapedNameNoDefault(t){if(t.escapedName!=="default"){return t.escapedName}return e.firstDefined(t.declarations,function(t){var r=e.getNameOfDeclaration(t);return r&&r.kind===72?r.escapedText:undefined})}e.symbolEscapedNameNoDefault=symbolEscapedNameNoDefault;function isObjectBindingElementWithoutPropertyName(t){return e.isBindingElement(t)&&e.isObjectBindingPattern(t.parent)&&e.isIdentifier(t.name)&&!t.propertyName}e.isObjectBindingElementWithoutPropertyName=isObjectBindingElementWithoutPropertyName;function getPropertySymbolFromBindingElement(e,t){var r=e.getTypeAtLocation(t.parent);return r&&e.getPropertyOfType(r,t.name.text)}e.getPropertySymbolFromBindingElement=getPropertySymbolFromBindingElement;function getPropertySymbolsFromBaseTypes(t,r,n,i){var a=e.createMap();return recur(t);function recur(t){if(!(t.flags&(32|64))||!e.addToSeen(a,e.getSymbolId(t)))return;return e.firstDefined(t.declarations,function(t){return e.firstDefined(e.getAllSuperTypeNodes(t),function(t){var a=n.getTypeAtLocation(t);var o=a&&a.symbol&&n.getPropertyOfType(a,r);return a&&o&&(e.firstDefined(n.getRootSymbols(o),i)||recur(a.symbol))})})}}e.getPropertySymbolsFromBaseTypes=getPropertySymbolsFromBaseTypes;function isMemberSymbolInBaseType(e,t){return getPropertySymbolsFromBaseTypes(e.parent,e.name,t,function(e){return true})||false}e.isMemberSymbolInBaseType=isMemberSymbolInBaseType;function getParentNodeInSpan(t,r,n){if(!t)return undefined;while(t.parent){if(e.isSourceFile(t.parent)||!spanContainsNode(n,t.parent,r)){return t}t=t.parent}}e.getParentNodeInSpan=getParentNodeInSpan;function spanContainsNode(t,r,n){return e.textSpanContainsPosition(t,r.getStart(n))&&r.getEnd()<=e.textSpanEnd(t)}function findModifier(t,r){return t.modifiers&&e.find(t.modifiers,function(e){return e.kind===r})}e.findModifier=findModifier;function insertImport(t,r,n){var i=e.findLast(r.statements,e.isAnyImportSyntax);if(i){t.insertNodeAfter(r,i,n)}else{t.insertNodeAtTopOfFile(r,n,true)}}e.insertImport=insertImport;function textSpansEqual(e,t){return!!e&&!!t&&e.start===t.start&&e.length===t.length}e.textSpansEqual=textSpansEqual;function documentSpansEqual(e,t){return e.fileName===t.fileName&&textSpansEqual(e.textSpan,t.textSpan)}e.documentSpansEqual=documentSpansEqual})(s||(s={}));(function(e){function isFirstDeclarationOfSymbolParameter(e){return e.declarations&&e.declarations.length>0&&e.declarations[0].kind===151}e.isFirstDeclarationOfSymbolParameter=isFirstDeclarationOfSymbolParameter;var t=getDisplayPartWriter();function getDisplayPartWriter(){var t=e.defaultMaximumTruncationLength*10;var r;var n;var i;var a;resetWriter();var o=function(t){return writeKind(t,e.SymbolDisplayPartKind.text)};return{displayParts:function(){var n=r.length&&r[r.length-1].text;if(a>t&&n&&n!=="..."){if(!e.isWhiteSpaceLike(n.charCodeAt(n.length-1))){r.push(displayPart(" ",e.SymbolDisplayPartKind.space))}r.push(displayPart("...",e.SymbolDisplayPartKind.punctuation))}return r},writeKeyword:function(t){return writeKind(t,e.SymbolDisplayPartKind.keyword)},writeOperator:function(t){return writeKind(t,e.SymbolDisplayPartKind.operator)},writePunctuation:function(t){return writeKind(t,e.SymbolDisplayPartKind.punctuation)},writeTrailingSemicolon:function(t){return writeKind(t,e.SymbolDisplayPartKind.punctuation)},writeSpace:function(t){return writeKind(t,e.SymbolDisplayPartKind.space)},writeStringLiteral:function(t){return writeKind(t,e.SymbolDisplayPartKind.stringLiteral)},writeParameter:function(t){return writeKind(t,e.SymbolDisplayPartKind.parameterName)},writeProperty:function(t){return writeKind(t,e.SymbolDisplayPartKind.propertyName)},writeLiteral:function(t){return writeKind(t,e.SymbolDisplayPartKind.stringLiteral)},writeSymbol:writeSymbol,writeLine:writeLine,write:o,writeComment:o,getText:function(){return""},getTextPos:function(){return 0},getColumn:function(){return 0},getLine:function(){return 0},isAtStartOfLine:function(){return false},rawWrite:e.notImplemented,getIndent:function(){return i},increaseIndent:function(){i++},decreaseIndent:function(){i--},clear:resetWriter,trackSymbol:e.noop,reportInaccessibleThisError:e.noop,reportInaccessibleUniqueSymbolError:e.noop,reportPrivateInBaseOfClassExpression:e.noop};function writeIndent(){if(a>t)return;if(n){var o=e.getIndentString(i);if(o){a+=o.length;r.push(displayPart(o,e.SymbolDisplayPartKind.space))}n=false}}function writeKind(e,n){if(a>t)return;writeIndent();a+=e.length;r.push(displayPart(e,n))}function writeSymbol(e,n){if(a>t)return;writeIndent();a+=e.length;r.push(symbolPart(e,n))}function writeLine(){if(a>t)return;a+=1;r.push(lineBreakPart());n=true}function resetWriter(){r=[];n=true;i=0;a=0}}function symbolPart(t,r){return displayPart(t,displayPartKind(r));function displayPartKind(t){var r=t.flags;if(r&3){return isFirstDeclarationOfSymbolParameter(t)?e.SymbolDisplayPartKind.parameterName:e.SymbolDisplayPartKind.localName}else if(r&4){return e.SymbolDisplayPartKind.propertyName}else if(r&32768){return e.SymbolDisplayPartKind.propertyName}else if(r&65536){return e.SymbolDisplayPartKind.propertyName}else if(r&8){return e.SymbolDisplayPartKind.enumMemberName}else if(r&16){return e.SymbolDisplayPartKind.functionName}else if(r&32){return e.SymbolDisplayPartKind.className}else if(r&64){return e.SymbolDisplayPartKind.interfaceName}else if(r&384){return e.SymbolDisplayPartKind.enumName}else if(r&1536){return e.SymbolDisplayPartKind.moduleName}else if(r&8192){return e.SymbolDisplayPartKind.methodName}else if(r&262144){return e.SymbolDisplayPartKind.typeParameterName}else if(r&524288){return e.SymbolDisplayPartKind.aliasName}else if(r&2097152){return e.SymbolDisplayPartKind.aliasName}return e.SymbolDisplayPartKind.text}}e.symbolPart=symbolPart;function displayPart(t,r){return{text:t,kind:e.SymbolDisplayPartKind[r]}}e.displayPart=displayPart;function spacePart(){return displayPart(" ",e.SymbolDisplayPartKind.space)}e.spacePart=spacePart;function keywordPart(t){return displayPart(e.tokenToString(t),e.SymbolDisplayPartKind.keyword)}e.keywordPart=keywordPart;function punctuationPart(t){return displayPart(e.tokenToString(t),e.SymbolDisplayPartKind.punctuation)}e.punctuationPart=punctuationPart;function operatorPart(t){return displayPart(e.tokenToString(t),e.SymbolDisplayPartKind.operator)}e.operatorPart=operatorPart;function textOrKeywordPart(t){var r=e.stringToToken(t);return r===undefined?textPart(t):keywordPart(r)}e.textOrKeywordPart=textOrKeywordPart;function textPart(t){return displayPart(t,e.SymbolDisplayPartKind.text)}e.textPart=textPart;var r="\r\n";function getNewLineOrDefaultFromHost(e,t){return t&&t.newLineCharacter||e.getNewLine&&e.getNewLine()||r}e.getNewLineOrDefaultFromHost=getNewLineOrDefaultFromHost;function lineBreakPart(){return displayPart("\n",e.SymbolDisplayPartKind.lineBreak)}e.lineBreakPart=lineBreakPart;function mapToDisplayParts(e){try{e(t);return t.displayParts()}finally{t.clear()}}e.mapToDisplayParts=mapToDisplayParts;function typeToDisplayParts(e,t,r,n){if(n===void 0){n=0}return mapToDisplayParts(function(i){e.writeType(t,r,n|1024|16384,i)})}e.typeToDisplayParts=typeToDisplayParts;function symbolToDisplayParts(e,t,r,n,i){if(i===void 0){i=0}return mapToDisplayParts(function(a){e.writeSymbol(t,r,n,i|8,a)})}e.symbolToDisplayParts=symbolToDisplayParts;function signatureToDisplayParts(e,t,r,n){if(n===void 0){n=0}n|=16384|1024|32|8192;return mapToDisplayParts(function(i){e.writeSignature(t,r,n,undefined,i)})}e.signatureToDisplayParts=signatureToDisplayParts;function isImportOrExportSpecifierName(t){return!!t.parent&&e.isImportOrExportSpecifier(t.parent)&&t.parent.propertyName===t}e.isImportOrExportSpecifierName=isImportOrExportSpecifierName;function stripQuotes(e){var t=e.length;if(t>=2&&e.charCodeAt(0)===e.charCodeAt(t-1)&&startsWithQuote(e)){return e.substring(1,t-1)}return e}e.stripQuotes=stripQuotes;function startsWithQuote(t){return e.isSingleOrDoubleQuote(t.charCodeAt(0))}e.startsWithQuote=startsWithQuote;function scriptKindIs(t,r){var n=[];for(var i=2;i<arguments.length;i++){n[i-2]=arguments[i]}var a=getScriptKind(t,r);return e.some(n,function(e){return e===a})}e.scriptKindIs=scriptKindIs;function getScriptKind(t,r){return e.ensureScriptKind(t,r&&r.getScriptKind&&r.getScriptKind(t))}e.getScriptKind=getScriptKind;function getUniqueSymbolId(t,r){return e.getSymbolId(e.skipAlias(t,r))}e.getUniqueSymbolId=getUniqueSymbolId;function getFirstNonSpaceCharacterPosition(t,r){while(e.isWhiteSpaceLike(t.charCodeAt(r))){r+=1}return r}e.getFirstNonSpaceCharacterPosition=getFirstNonSpaceCharacterPosition;function getPrecedingNonSpaceCharacterPosition(t,r){while(r>-1&&e.isWhiteSpaceSingleLine(t.charCodeAt(r))){r-=1}return r+1}e.getPrecedingNonSpaceCharacterPosition=getPrecedingNonSpaceCharacterPosition;function getSynthesizedDeepClone(e,t){if(t===void 0){t=true}var r=e&&getSynthesizedDeepCloneWorker(e);if(r&&!t)suppressLeadingAndTrailingTrivia(r);return r}e.getSynthesizedDeepClone=getSynthesizedDeepClone;function getSynthesizedDeepCloneWithRenames(t,r,n,i,a){if(r===void 0){r=true}var o;if(e.isIdentifier(t)&&n&&i){var s=i.getSymbolAtLocation(t);var c=s&&n.get(String(e.getSymbolId(s)));if(c){o=e.createIdentifier(c.text)}}if(!o){o=getSynthesizedDeepCloneWorker(t,n,i,a)}if(o&&!r)suppressLeadingAndTrailingTrivia(o);if(a&&o)a(t,o);return o}e.getSynthesizedDeepCloneWithRenames=getSynthesizedDeepCloneWithRenames;function getSynthesizedDeepCloneWorker(t,r,n,i){var a=r||n||i?e.visitEachChild(t,wrapper,e.nullTransformationContext):e.visitEachChild(t,getSynthesizedDeepClone,e.nullTransformationContext);if(a===t){var o=e.getSynthesizedClone(t);if(e.isStringLiteral(o)){o.textSourceNode=t}else if(e.isNumericLiteral(o)){o.numericLiteralFlags=t.numericLiteralFlags}return e.setTextRange(o,t)}a.parent=undefined;return a;function wrapper(e){return getSynthesizedDeepCloneWithRenames(e,true,r,n,i)}}function getSynthesizedDeepClones(t,r){if(r===void 0){r=true}return t&&e.createNodeArray(t.map(function(e){return getSynthesizedDeepClone(e,r)}),t.hasTrailingComma)}e.getSynthesizedDeepClones=getSynthesizedDeepClones;function suppressLeadingAndTrailingTrivia(e){suppressLeadingTrivia(e);suppressTrailingTrivia(e)}e.suppressLeadingAndTrailingTrivia=suppressLeadingAndTrailingTrivia;function suppressLeadingTrivia(e){addEmitFlagsRecursively(e,512,getFirstChild)}e.suppressLeadingTrivia=suppressLeadingTrivia;function suppressTrailingTrivia(t){addEmitFlagsRecursively(t,1024,e.getLastChild)}e.suppressTrailingTrivia=suppressTrailingTrivia;function addEmitFlagsRecursively(t,r,n){e.addEmitFlags(t,r);var i=n(t);if(i)addEmitFlagsRecursively(i,r,n)}function getFirstChild(e){return e.forEachChild(function(e){return e})}function getUniqueName(t,r){var n=t;for(var i=1;!e.isFileLevelUniqueName(r,n);i++){n=t+"_"+i}return n}e.getUniqueName=getUniqueName;function getRenameLocation(t,r,n,i){var a=0;var o=-1;for(var s=0,c=t;s<c.length;s++){var u=c[s],l=u.fileName,f=u.textChanges;e.Debug.assert(l===r);for(var d=0,p=f;d<p.length;d++){var g=p[d];var _=g.span,m=g.newText;var y=indexInTextChange(m,n);if(y!==-1){o=_.start+a+y;if(!i){return o}}a+=m.length-_.length}}e.Debug.assert(i);e.Debug.assert(o>=0);return o}e.getRenameLocation=getRenameLocation;function copyComments(t,r,n,i,a){e.forEachLeadingCommentRange(n.text,t.pos,function(t,o,s,c){if(s===3){t+=2;o-=2}else{t+=2}e.addSyntheticLeadingComment(r,i||s,n.text.slice(t,o),a!==undefined?a:c)})}e.copyComments=copyComments;function indexInTextChange(t,r){if(e.startsWith(t,r))return 0;var n=t.indexOf(" "+r);if(n===-1)n=t.indexOf("."+r);if(n===-1)n=t.indexOf('"'+r);return n===-1?-1:n+1}function getContextualTypeFromParent(e,t){var r=e.parent;switch(r.kind){case 192:return t.getContextualType(r);case 204:{var n=r,i=n.left,a=n.operatorToken,o=n.right;return isEqualityOperatorKind(a.kind)?t.getTypeAtLocation(e===o?i:o):t.getContextualType(e)}case 271:return r.expression===e?getSwitchedType(r,t):undefined;default:return t.getContextualType(e)}}e.getContextualTypeFromParent=getContextualTypeFromParent;function quote(t,r){if(/^\d+$/.test(t)){return t}var n=JSON.stringify(t);switch(r.quotePreference){case undefined:case"double":return n;case"single":return"'"+stripQuotes(n).replace("'","\\'").replace('\\"','"')+"'";default:return e.Debug.assertNever(r.quotePreference)}}e.quote=quote;function isEqualityOperatorKind(e){switch(e){case 35:case 33:case 36:case 34:return true;default:return false}}e.isEqualityOperatorKind=isEqualityOperatorKind;function isStringLiteralOrTemplate(e){switch(e.kind){case 10:case 14:case 206:case 193:return true;default:return false}}e.isStringLiteralOrTemplate=isStringLiteralOrTemplate;function hasIndexSignature(e){return!!e.getStringIndexType()||!!e.getNumberIndexType()}e.hasIndexSignature=hasIndexSignature;function getSwitchedType(e,t){return t.getTypeAtLocation(e.parent.parent.expression)}e.getSwitchedType=getSwitchedType})(s||(s={}));var s;(function(e){function createClassifier(){var r=e.createScanner(6,false);function getClassificationsForLine(e,t,r){return convertClassificationsToResult(getEncodedLexicalClassifications(e,t,r),e)}function getEncodedLexicalClassifications(n,i,a){var o=0;var s=0;var c=[];var u=getPrefixFromLexState(i),l=u.prefix,f=u.pushTemplate;n=l+n;var d=l.length;if(f){c.push(15)}r.setText(n);var p=0;var g=[];var _=0;do{o=r.scan();if(!e.isTrivia(o)){handleToken();s=o}var m=r.getTextPos();pushEncodedClassification(r.getTokenPos(),m,d,classFromKind(o),g);if(m>=n.length){var y=getNewEndOfLineState(r,o,e.lastOrUndefined(c));if(y!==undefined){p=y}}}while(o!==1);function handleToken(){switch(o){case 42:case 64:if(!t[s]&&r.reScanSlashToken()===13){o=13}break;case 28:if(s===72){_++}break;case 30:if(_>0){_--}break;case 120:case 138:case 135:case 123:case 139:if(_>0&&!a){o=72}break;case 15:c.push(o);break;case 18:if(c.length>0){c.push(o)}break;case 19:if(c.length>0){var n=e.lastOrUndefined(c);if(n===15){o=r.reScanTemplateToken();if(o===17){c.pop()}else{e.Debug.assertEqual(o,16,"Should have been a template middle.")}}else{e.Debug.assertEqual(n,18,"Should have been an open brace");c.pop()}}break;default:if(!e.isKeyword(o)){break}if(s===24){o=72}else if(e.isKeyword(s)&&e.isKeyword(o)&&!canFollow(s,o)){o=72}}}return{endOfLineState:p,spans:g}}return{getClassificationsForLine:getClassificationsForLine,getEncodedLexicalClassifications:getEncodedLexicalClassifications}}e.createClassifier=createClassifier;var t=e.arrayToNumericMap([72,10,8,9,13,100,44,45,21,23,19,102,87],function(e){return e},function(){return true});function getNewEndOfLineState(t,r,n){switch(r){case 10:{if(!t.isUnterminated())return undefined;var i=t.getTokenText();var a=i.length-1;var o=0;while(i.charCodeAt(a-o)===92){o++}if((o&1)===0)return undefined;return i.charCodeAt(0)===34?3:2}case 3:return t.isUnterminated()?1:undefined;default:if(e.isTemplateLiteralKind(r)){if(!t.isUnterminated()){return undefined}switch(r){case 17:return 5;case 14:return 4;default:return e.Debug.fail("Only 'NoSubstitutionTemplateLiteral's and 'TemplateTail's can be unterminated; got SyntaxKind #"+r)}}return n===15?6:undefined}}function pushEncodedClassification(e,t,r,n,i){if(n===8){return}if(e===0&&r>0){e+=r}var a=t-e;if(a>0){i.push(e-r,a,n)}}function convertClassificationsToResult(t,r){var n=[];var i=t.spans;var a=0;for(var o=0;o<i.length;o+=3){var s=i[o];var c=i[o+1];var u=i[o+2];if(a>=0){var l=s-a;if(l>0){n.push({length:l,classification:e.TokenClass.Whitespace})}}n.push({length:c,classification:convertClassification(u)});a=s+c}var f=r.length-a;if(f>0){n.push({length:f,classification:e.TokenClass.Whitespace})}return{entries:n,finalLexState:t.endOfLineState}}function convertClassification(t){switch(t){case 1:return e.TokenClass.Comment;case 3:return e.TokenClass.Keyword;case 4:return e.TokenClass.NumberLiteral;case 25:return e.TokenClass.BigIntLiteral;case 5:return e.TokenClass.Operator;case 6:return e.TokenClass.StringLiteral;case 8:return e.TokenClass.Whitespace;case 10:return e.TokenClass.Punctuation;case 2:case 11:case 12:case 13:case 14:case 15:case 16:case 9:case 17:return e.TokenClass.Identifier;default:return undefined}}function canFollow(t,r){if(!e.isAccessibilityModifier(t)){return true}switch(r){case 126:case 137:case 124:case 116:return true;default:return false}}function getPrefixFromLexState(t){switch(t){case 3:return{prefix:'"\\\n'};case 2:return{prefix:"'\\\n"};case 1:return{prefix:"/*\n"};case 4:return{prefix:"`\n"};case 5:return{prefix:"}\n",pushTemplate:true};case 6:return{prefix:"",pushTemplate:true};case 0:return{prefix:""};default:return e.Debug.assertNever(t)}}function isBinaryExpressionOperatorToken(e){switch(e){case 40:case 42:case 43:case 38:case 39:case 46:case 47:case 48:case 28:case 30:case 31:case 32:case 94:case 93:case 119:case 33:case 34:case 35:case 36:case 49:case 51:case 50:case 54:case 55:case 70:case 69:case 71:case 66:case 67:case 68:case 60:case 61:case 62:case 64:case 65:case 59:case 27:return true;default:return false}}function isPrefixUnaryExpressionOperatorToken(e){switch(e){case 38:case 39:case 53:case 52:case 44:case 45:return true;default:return false}}function classFromKind(t){if(e.isKeyword(t)){return 3}else if(isBinaryExpressionOperatorToken(t)||isPrefixUnaryExpressionOperatorToken(t)){return 5}else if(t>=18&&t<=71){return 10}switch(t){case 8:return 4;case 9:return 25;case 10:return 6;case 13:return 7;case 7:case 3:case 2:return 1;case 5:case 4:return 8;case 72:default:if(e.isTemplateLiteralKind(t)){return 6}return 2}}function getSemanticClassifications(e,t,r,n,i){return convertClassificationsToSpans(getEncodedSemanticClassifications(e,t,r,n,i))}e.getSemanticClassifications=getSemanticClassifications;function checkForClassificationCancellation(e,t){switch(t){case 244:case 240:case 241:case 239:e.throwIfCancellationRequested()}}function getEncodedSemanticClassifications(t,r,n,i,a){var o=[];n.forEachChild(function cb(o){if(!o||!e.textSpanIntersectsWith(a,o.pos,o.getFullWidth())){return}checkForClassificationCancellation(r,o.kind);if(e.isIdentifier(o)&&!e.nodeIsMissing(o)&&i.has(o.escapedText)){var s=t.getSymbolAtLocation(o);var c=s&&classifySymbol(s,e.getMeaningFromLocation(o),t);if(c){pushClassification(o.getStart(n),o.getEnd(),c)}}o.forEachChild(cb)});return{spans:o,endOfLineState:0};function pushClassification(e,t,r){o.push(e);o.push(t-e);o.push(r)}}e.getEncodedSemanticClassifications=getEncodedSemanticClassifications;function classifySymbol(e,t,r){var n=e.getFlags();if((n&2885600)===0){return undefined}else if(n&32){return 11}else if(n&384){return 12}else if(n&524288){return 16}else if(n&1536){return t&4||t&1&&hasValueSideModule(e)?14:undefined}else if(n&2097152){return classifySymbol(r.getAliasedSymbol(e),t,r)}else if(t&2){return n&64?13:n&262144?15:undefined}else{return undefined}}function hasValueSideModule(t){return e.some(t.declarations,function(t){return e.isModuleDeclaration(t)&&e.getModuleInstanceState(t)===1})}function getClassificationTypeName(e){switch(e){case 1:return"comment";case 2:return"identifier";case 3:return"keyword";case 4:return"number";case 25:return"bigint";case 5:return"operator";case 6:return"string";case 8:return"whitespace";case 9:return"text";case 10:return"punctuation";case 11:return"class name";case 12:return"enum name";case 13:return"interface name";case 14:return"module name";case 15:return"type parameter name";case 16:return"type alias name";case 17:return"parameter name";case 18:return"doc comment tag name";case 19:return"jsx open tag name";case 20:return"jsx close tag name";case 21:return"jsx self closing tag name";case 22:return"jsx attribute";case 23:return"jsx text";case 24:return"jsx attribute string literal value";default:return undefined}}function convertClassificationsToSpans(t){e.Debug.assert(t.spans.length%3===0);var r=t.spans;var n=[];for(var i=0;i<r.length;i+=3){n.push({textSpan:e.createTextSpan(r[i],r[i+1]),classificationType:getClassificationTypeName(r[i+2])})}return n}function getSyntacticClassifications(e,t,r){return convertClassificationsToSpans(getEncodedSyntacticClassifications(e,t,r))}e.getSyntacticClassifications=getSyntacticClassifications;function getEncodedSyntacticClassifications(t,r,n){var i=n.start;var a=n.length;var o=e.createScanner(6,false,r.languageVariant,r.text);var s=e.createScanner(6,false,r.languageVariant,r.text);var c=[];processElement(r);return{spans:c,endOfLineState:0};function pushClassification(e,t,r){c.push(e);c.push(t);c.push(r)}function classifyLeadingTriviaAndGetTokenStart(t){o.setTextPos(t.pos);while(true){var n=o.getTextPos();if(!e.couldStartTrivia(r.text,n)){return n}var i=o.scan();var a=o.getTextPos();var s=a-n;if(!e.isTrivia(i)){return n}switch(i){case 4:case 5:continue;case 2:case 3:classifyComment(t,i,n,s);o.setTextPos(a);continue;case 7:var c=r.text;var u=c.charCodeAt(n);if(u===60||u===62){pushClassification(n,s,1);continue}e.Debug.assert(u===124||u===61);classifyDisabledMergeCode(c,n,a);break;case 6:break;default:e.Debug.assertNever(i)}}}function classifyComment(t,n,i,a){if(n===3){var o=e.parseIsolatedJSDocComment(r.text,i,a);if(o&&o.jsDoc){o.jsDoc.parent=t;classifyJSDocComment(o.jsDoc);return}}pushCommentRange(i,a)}function pushCommentRange(e,t){pushClassification(e,t,1)}function classifyJSDocComment(e){var t=e.pos;if(e.tags){for(var r=0,n=e.tags;r<n.length;r++){var i=n[r];if(i.pos!==t){pushCommentRange(t,i.pos-t)}pushClassification(i.pos,1,10);pushClassification(i.tagName.pos,i.tagName.end-i.tagName.pos,18);t=i.tagName.end;switch(i.kind){case 299:processJSDocParameterTag(i);break;case 303:processJSDocTemplateTag(i);t=i.end;break;case 302:processElement(i.typeExpression);t=i.end;break;case 300:processElement(i.typeExpression);t=i.end;break}}}if(t!==e.end){pushCommentRange(t,e.end-t)}return;function processJSDocParameterTag(e){if(e.isNameFirst){pushCommentRange(t,e.name.pos-t);pushClassification(e.name.pos,e.name.end-e.name.pos,17);t=e.name.end}if(e.typeExpression){pushCommentRange(t,e.typeExpression.pos-t);processElement(e.typeExpression);t=e.typeExpression.end}if(!e.isNameFirst){pushCommentRange(t,e.name.pos-t);pushClassification(e.name.pos,e.name.end-e.name.pos,17);t=e.name.end}}}function processJSDocTemplateTag(e){for(var t=0,r=e.getChildren();t<r.length;t++){var n=r[t];processElement(n)}}function classifyDisabledMergeCode(t,r,n){var i;for(i=r;i<n;i++){if(e.isLineBreak(t.charCodeAt(i))){break}}pushClassification(r,i-r,1);s.setTextPos(i);while(s.getTextPos()<n){classifyDisabledCodeToken()}}function classifyDisabledCodeToken(){var e=s.getTextPos();var t=s.scan();var r=s.getTextPos();var n=classifyTokenType(t);if(n){pushClassification(e,r-e,n)}}function tryClassifyNode(t){if(e.isJSDoc(t)){return true}if(e.nodeIsMissing(t)){return true}var r=tryClassifyJsxElementName(t);if(!e.isToken(t)&&t.kind!==11&&r===undefined){return false}var n=t.kind===11?t.pos:classifyLeadingTriviaAndGetTokenStart(t);var i=t.end-n;e.Debug.assert(i>=0);if(i>0){var a=r||classifyTokenType(t.kind,t);if(a){pushClassification(n,i,a)}}return true}function tryClassifyJsxElementName(e){switch(e.parent&&e.parent.kind){case 262:if(e.parent.tagName===e){return 19}break;case 263:if(e.parent.tagName===e){return 20}break;case 261:if(e.parent.tagName===e){return 21}break;case 267:if(e.parent.name===e){return 22}break}return undefined}function classifyTokenType(t,r){if(e.isKeyword(t)){return 3}if(t===28||t===30){if(r&&e.getTypeArgumentOrTypeParameterList(r.parent)){return 10}}if(e.isPunctuation(t)){if(r){var n=r.parent;if(t===59){if(n.kind===237||n.kind===154||n.kind===151||n.kind===267){return 5}}if(n.kind===204||n.kind===202||n.kind===203||n.kind===205){return 5}}return 10}else if(t===8){return 4}else if(t===9){return 25}else if(t===10){return r.parent.kind===267?24:6}else if(t===13){return 6}else if(e.isTemplateLiteralKind(t)){return 6}else if(t===11){return 23}else if(t===72){if(r){switch(r.parent.kind){case 240:if(r.parent.name===r){return 11}return;case 150:if(r.parent.name===r){return 15}return;case 241:if(r.parent.name===r){return 13}return;case 243:if(r.parent.name===r){return 12}return;case 244:if(r.parent.name===r){return 14}return;case 151:if(r.parent.name===r){return e.isThisIdentifier(r)?3:17}return}}return 2}}function processElement(n){if(!n){return}if(e.decodedTextSpanIntersectsWith(i,a,n.pos,n.getFullWidth())){checkForClassificationCancellation(t,n.kind);for(var o=0,s=n.getChildren(r);o<s.length;o++){var c=s[o];if(!tryClassifyNode(c)){processElement(c)}}}}}e.getEncodedSyntacticClassifications=getEncodedSyntacticClassifications})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(r){function getStringLiteralCompletions(t,r,n,i,a,o,s,c){if(e.isInReferenceComment(t,r)){var u=getTripleSlashReferenceCompletion(t,r,a,o);return u&&convertPathCompletions(u)}if(e.isInString(t,r,n)){return!n||!e.isStringLiteralLike(n)?undefined:convertStringLiteralCompletions(getStringLiteralCompletionEntries(t,n,r,i,a,o),t,i,s,c)}}r.getStringLiteralCompletions=getStringLiteralCompletions;function convertStringLiteralCompletions(r,n,i,a,o){if(r===undefined){return undefined}switch(r.kind){case 0:return convertPathCompletions(r.paths);case 1:{var s=[];t.getCompletionEntriesFromSymbols(r.symbols,s,n,n,i,6,a,4,o);return{isGlobalCompletion:false,isMemberCompletion:true,isNewIdentifierLocation:r.hasIndexSignature,entries:s}}case 2:{var s=r.types.map(function(e){return{name:e.value,kindModifiers:"",kind:"string",sortText:"0"}});return{isGlobalCompletion:false,isMemberCompletion:false,isNewIdentifierLocation:r.isNewIdentifier,entries:s}}default:return e.Debug.assertNever(r)}}function getStringLiteralCompletionDetails(t,r,n,i,a,o,s,c){if(!i||!e.isStringLiteralLike(i))return undefined;var u=getStringLiteralCompletionEntries(r,i,n,a,o,s);return u&&stringLiteralCompletionDetails(t,i,u,r,a,c)}r.getStringLiteralCompletionDetails=getStringLiteralCompletionDetails;function stringLiteralCompletionDetails(r,n,i,a,o,s){switch(i.kind){case 0:{var c=e.find(i.paths,function(e){return e.name===r});return c&&t.createCompletionDetails(r,kindModifiersFromExtension(c.extension),c.kind,[e.textPart(r)])}case 1:{var c=e.find(i.symbols,function(e){return e.name===r});return c&&t.createCompletionDetailsForSymbol(c,o,a,n,s)}case 2:return e.find(i.types,function(e){return e.value===r})?t.createCompletionDetails(r,"","type",[e.textPart(r)]):undefined;default:return e.Debug.assertNever(i)}}function convertPathCompletions(e){var t=false;var r=true;var n=e.map(function(e){var t=e.name,r=e.kind,n=e.span,i=e.extension;return{name:t,kind:r,kindModifiers:kindModifiersFromExtension(i),sortText:"0",replacementSpan:n}});return{isGlobalCompletion:t,isMemberCompletion:false,isNewIdentifierLocation:r,entries:n}}function kindModifiersFromExtension(t){switch(t){case".d.ts":return".d.ts";case".js":return".js";case".json":return".json";case".jsx":return".jsx";case".ts":return".ts";case".tsx":return".tsx";case undefined:return"";default:return e.Debug.assertNever(t)}}var n;(function(e){e[e["Paths"]=0]="Paths";e[e["Properties"]=1]="Properties";e[e["Types"]=2]="Types"})(n||(n={}));function getStringLiteralCompletionEntries(t,r,n,i,a,o){var s=r.parent;switch(s.kind){case 182:switch(s.parent.kind){case 164:return{kind:2,types:getStringLiteralTypes(i.getTypeArgumentConstraint(s)),isNewIdentifier:false};case 180:return stringLiteralCompletionsFromProperties(i.getTypeFromTypeNode(s.parent.objectType));case 183:return{kind:0,paths:getStringLiteralCompletionsFromModuleNames(t,r,a,o,i)};case 173:{if(!e.isTypeReferenceNode(s.parent.parent))return undefined;var c=getAlreadyUsedTypesInStringLiteralUnion(s.parent,s);var u=getStringLiteralTypes(i.getTypeArgumentConstraint(s.parent)).filter(function(t){return!e.contains(c,t.value)});return{kind:2,types:u,isNewIdentifier:false}}default:return undefined}case 275:if(e.isObjectLiteralExpression(s.parent)&&s.name===r){return stringLiteralCompletionsFromProperties(i.getContextualType(s.parent))}return fromContextualType();case 190:{var l=s,f=l.expression,d=l.argumentExpression;if(r===d){return stringLiteralCompletionsFromProperties(i.getTypeAtLocation(f))}return undefined}case 191:case 192:if(!e.isRequireCall(s,false)&&!e.isImportCall(s)){var p=e.SignatureHelp.getArgumentInfoForCompletions(r,n,t);return p?getStringLiteralCompletionsFromSignature(p,i):fromContextualType()}case 249:case 255:case 259:return{kind:0,paths:getStringLiteralCompletionsFromModuleNames(t,r,a,o,i)};default:return fromContextualType()}function fromContextualType(){return{kind:2,types:getStringLiteralTypes(e.getContextualTypeFromParent(r,i)),isNewIdentifier:false}}}function getAlreadyUsedTypesInStringLiteralUnion(t,r){return e.mapDefined(t.types,function(t){return t!==r&&e.isLiteralTypeNode(t)&&e.isStringLiteral(t.literal)?t.literal.text:undefined})}function getStringLiteralCompletionsFromSignature(t,r){var n=false;var i=e.createMap();var a=[];r.getResolvedSignature(t.invocation,a,t.argumentCount);var o=e.flatMap(a,function(e){if(!e.hasRestParameter&&t.argumentCount>e.parameters.length)return;var a=r.getParameterType(e,t.argumentIndex);n=n||!!(a.flags&4);return getStringLiteralTypes(a,i)});return{kind:2,types:o,isNewIdentifier:n}}function stringLiteralCompletionsFromProperties(t){return t&&{kind:1,symbols:t.getApparentProperties(),hasIndexSignature:e.hasIndexSignature(t)}}function getStringLiteralTypes(t,r){if(r===void 0){r=e.createMap()}if(!t)return e.emptyArray;t=e.skipConstraint(t);return t.isUnion()?e.flatMap(t.types,function(e){return getStringLiteralTypes(e,r)}):t.isStringLiteral()&&!(t.flags&1024)&&e.addToSeen(r,t.value)?[t]:e.emptyArray}function nameAndKind(e,t,r){return{name:e,kind:t,extension:r}}function directoryResult(e){return nameAndKind(e,"directory",undefined)}function addReplacementSpans(e,t,r){var n=getDirectoryFragmentTextSpan(e,t);return r.map(function(e){var t=e.name,r=e.kind,i=e.extension;return{name:t,kind:r,extension:i,span:n}})}function getStringLiteralCompletionsFromModuleNames(e,t,r,n,i){return addReplacementSpans(t.text,t.getStart(e)+1,getStringLiteralCompletionsFromModuleNamesWorker(e,t,r,n,i))}function getStringLiteralCompletionsFromModuleNamesWorker(t,r,n,i,a){var o=e.normalizeSlashes(r.text);var s=t.path;var c=e.getDirectoryPath(s);return isPathRelativeToScript(o)||!n.baseUrl&&(e.isRootedDiskPath(o)||e.isUrl(o))?getCompletionEntriesForRelativeModules(o,c,n,i,s):getCompletionEntriesForNonRelativeModules(o,c,n,i,a)}function getExtensionOptions(e,t){if(t===void 0){t=false}return{extensions:getSupportedExtensionsForModuleResolution(e),includeExtensions:t}}function getCompletionEntriesForRelativeModules(e,t,r,n,i){var a=getExtensionOptions(r);if(r.rootDirs){return getCompletionEntriesForDirectoryFragmentWithRootDirs(r.rootDirs,e,t,a,r,n,i)}else{return getCompletionEntriesForDirectoryFragment(e,t,a,n,i)}}function getSupportedExtensionsForModuleResolution(t){var r=e.getSupportedExtensions(t);return t.resolveJsonModule&&e.getEmitModuleResolutionKind(t)===e.ModuleResolutionKind.NodeJs?r.concat(".json"):r}function getBaseDirectoriesFromRootDirs(t,r,n,i){t=t.map(function(t){return e.normalizePath(e.isRootedDiskPath(t)?t:e.combinePaths(r,t))});var a=e.firstDefined(t,function(t){return e.containsPath(t,n,r,i)?n.substr(t.length):undefined});return e.deduplicate(t.map(function(t){return e.combinePaths(t,a)}).concat([n]),e.equateStringsCaseSensitive,e.compareStringsCaseSensitive)}function getCompletionEntriesForDirectoryFragmentWithRootDirs(t,r,n,i,a,o,s){var c=a.project||o.getCurrentDirectory();var u=!(o.useCaseSensitiveFileNames&&o.useCaseSensitiveFileNames());var l=getBaseDirectoriesFromRootDirs(t,c,n,u);return e.flatMap(l,function(e){return getCompletionEntriesForDirectoryFragment(r,e,i,o,s)})}function getCompletionEntriesForDirectoryFragment(t,r,n,i,a,o){var s=n.extensions,c=n.includeExtensions;if(o===void 0){o=[]}if(t===undefined){t=""}t=e.normalizeSlashes(t);if(!e.hasTrailingDirectorySeparator(t)){t=e.getDirectoryPath(t)}if(t===""){t="."+e.directorySeparator}t=e.ensureTrailingDirectorySeparator(t);var u=e.resolvePath(r,t);var l=e.hasTrailingDirectorySeparator(u)?u:e.getDirectoryPath(u);var f=!(i.useCaseSensitiveFileNames&&i.useCaseSensitiveFileNames());if(!tryDirectoryExists(i,l))return o;var d=tryReadDirectory(i,l,s,undefined,["./*"]);if(d){var p=e.createMap();for(var g=0,_=d;g<_.length;g++){var m=_[g];m=e.normalizePath(m);if(a&&e.comparePaths(m,a,r,f)===0){continue}var y=c||e.fileExtensionIs(m,".json")?e.getBaseFileName(m):e.removeFileExtension(e.getBaseFileName(m));p.set(y,e.tryGetExtensionFromPath(m))}p.forEach(function(e,t){o.push(nameAndKind(t,"script",e))})}var h=tryGetDirectories(i,l);if(h){for(var v=0,T=h;v<T.length;v++){var S=T[v];var b=e.getBaseFileName(e.normalizePath(S));if(b!=="@types"){o.push(directoryResult(b))}}}var x=findPackageJson(l,i);if(x){var C=e.readJson(x,i);var E=C.typesVersions;if(typeof E==="object"){var D=e.getPackageJsonTypesVersionsPaths(E);var k=D&&D.paths;var N=u.slice(e.ensureTrailingDirectorySeparator(l).length);if(k){addCompletionEntriesFromPaths(o,N,l,s,k,i)}}}return o}function addCompletionEntriesFromPaths(t,r,n,i,a,o){for(var s in a){if(!e.hasProperty(a,s))continue;var c=a[s];if(c){var u=function(e,r,n){if(!t.some(function(t){return t.name===e})){t.push(nameAndKind(e,r,n))}};for(var l=0,f=getCompletionsForPathMapping(s,c,r,n,i,o);l<f.length;l++){var d=f[l],p=d.name,g=d.kind,_=d.extension;u(p,g,_)}}}}function getCompletionEntriesForNonRelativeModules(t,r,n,i,a){var o=n.baseUrl,s=n.paths;var c=[];var u=getExtensionOptions(n);if(o){var l=n.project||i.getCurrentDirectory();var f=e.normalizePath(e.combinePaths(l,o));getCompletionEntriesForDirectoryFragment(t,f,u,i,undefined,c);if(s){addCompletionEntriesFromPaths(c,t,f,u.extensions,s,i)}}var d=getFragmentDirectory(t);for(var p=0,g=getAmbientModuleCompletions(t,d,a);p<g.length;p++){var _=g[p];c.push(nameAndKind(_,"external module name",undefined))}getCompletionEntriesFromTypings(i,n,r,d,u,c);if(e.getEmitModuleResolutionKind(n)===e.ModuleResolutionKind.NodeJs){var m=false;if(d===undefined){var y=function(e){if(!c.some(function(t){return t.name===e})){m=true;c.push(nameAndKind(e,"external module name",undefined))}};for(var h=0,v=enumerateNodeModulesVisibleToScript(i,r);h<v.length;h++){var T=v[h];y(T)}}if(!m){e.forEachAncestorDirectory(r,function(r){var n=e.combinePaths(r,"node_modules");if(tryDirectoryExists(i,n)){getCompletionEntriesForDirectoryFragment(t,n,u,i,undefined,c)}})}}return c}function getFragmentDirectory(t){return containsSlash(t)?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):undefined}function getCompletionsForPathMapping(t,r,n,i,a,o){if(!e.endsWith(t,"*")){return!e.stringContains(t,"*")?justPathMappingName(t):e.emptyArray}var s=t.slice(0,t.length-1);var c=e.tryRemovePrefix(n,s);return c===undefined?justPathMappingName(s):e.flatMap(r,function(e){return getModulesForPathsPattern(c,i,e,a,o)});function justPathMappingName(t){return e.startsWith(t,n)?[directoryResult(t)]:e.emptyArray}}function getModulesForPathsPattern(t,r,n,i,a){if(!a.readDirectory){return undefined}var o=e.hasZeroOrOneAsteriskCharacter(n)?e.tryParsePattern(n):undefined;if(!o){return undefined}var s=e.resolvePath(o.prefix);var c=e.hasTrailingDirectorySeparator(o.prefix)?s:e.getDirectoryPath(s);var u=e.hasTrailingDirectorySeparator(o.prefix)?"":e.getBaseFileName(s);var l=containsSlash(t);var f=l?e.hasTrailingDirectorySeparator(t)?t:e.getDirectoryPath(t):undefined;var d=l?e.combinePaths(c,u+f):c;var p=e.normalizePath(o.suffix);var g=e.normalizePath(e.combinePaths(r,d));var _=l?g:e.ensureTrailingDirectorySeparator(g)+u;var m=p?"**/*":"./*";var y=e.mapDefined(tryReadDirectory(a,g,i,undefined,[m]),function(t){var r=e.tryGetExtensionFromPath(t);var n=trimPrefixAndSuffix(t);return n===undefined?undefined:nameAndKind(e.removeFileExtension(n),"script",r)});var h=e.mapDefined(tryGetDirectories(a,g).map(function(t){return e.combinePaths(g,t)}),function(e){var t=trimPrefixAndSuffix(e);return t===undefined?undefined:directoryResult(t)});return y.concat(h);function trimPrefixAndSuffix(t){var r=withoutStartAndEnd(e.normalizePath(t),_,p);return r===undefined?undefined:removeLeadingDirectorySeparator(r)}}function withoutStartAndEnd(t,r,n){return e.startsWith(t,r)&&e.endsWith(t,n)?t.slice(r.length,t.length-n.length):undefined}function removeLeadingDirectorySeparator(t){return t[0]===e.directorySeparator?t.slice(1):t}function getAmbientModuleCompletions(t,r,n){var i=n.getAmbientModules().map(function(t){return e.stripQuotes(t.name)});var a=i.filter(function(r){return e.startsWith(r,t)});if(r!==undefined){var o=e.ensureTrailingDirectorySeparator(r);return a.map(function(t){return e.removePrefix(t,o)})}return a}function getTripleSlashReferenceCompletion(t,r,n,a){var o=e.getTokenAtPosition(t,r);var s=e.getLeadingCommentRanges(t.text,o.pos);var c=s&&e.find(s,function(e){return r>=e.pos&&r<=e.end});if(!c){return undefined}var u=t.text.slice(c.pos,r);var l=i.exec(u);if(!l){return undefined}var f=l[1],d=l[2],p=l[3];var g=e.getDirectoryPath(t.path);var _=d==="path"?getCompletionEntriesForDirectoryFragment(p,g,getExtensionOptions(n,true),a,t.path):d==="types"?getCompletionEntriesFromTypings(a,n,g,getFragmentDirectory(p),getExtensionOptions(n)):e.Debug.fail();return addReplacementSpans(p,c.pos+f.length,_)}function getCompletionEntriesFromTypings(t,r,n,i,a,o){if(o===void 0){o=[]}var s=e.createMap();var c=tryAndIgnoreErrors(function(){return e.getEffectiveTypeRoots(r,t)})||e.emptyArray;for(var u=0,l=c;u<l.length;u++){var f=l[u];getCompletionEntriesFromDirectories(f)}for(var d=0,p=findPackageJsons(n,t);d<p.length;d++){var g=p[d];var _=e.combinePaths(e.getDirectoryPath(g),"node_modules/@types");getCompletionEntriesFromDirectories(_)}return o;function getCompletionEntriesFromDirectories(n){if(!tryDirectoryExists(t,n))return;for(var c=0,u=tryGetDirectories(t,n);c<u.length;c++){var l=u[c];var f=e.unmangleScopedPackageName(l);if(r.types&&!e.contains(r.types,f))continue;if(i===undefined){if(!s.has(f)){o.push(nameAndKind(f,"external module name",undefined));s.set(f,true)}}else{var d=e.combinePaths(n,l);var p=e.tryRemoveDirectoryPrefix(i,f,e.hostGetCanonicalFileName(t));if(p!==undefined){getCompletionEntriesForDirectoryFragment(p,d,a,t,undefined,o)}}}}}function findPackageJsons(t,r){var n=[];e.forEachAncestorDirectory(t,function(t){var i=e.findConfigFile(t,function(e){return tryFileExists(r,e)},"package.json");if(!i){return true}n.push(i)});return n}function findPackageJson(t,r){var n;e.forEachAncestorDirectory(t,function(t){if(t==="node_modules")return true;n=e.findConfigFile(t,function(e){return tryFileExists(r,e)},"package.json");if(n){return true}});return n}function enumerateNodeModulesVisibleToScript(t,r){if(!t.readFile||!t.fileExists)return e.emptyArray;var n=[];for(var i=0,o=findPackageJsons(r,t);i<o.length;i++){var s=o[i];var c=e.readJson(s,t);for(var u=0,l=a;u<l.length;u++){var f=l[u];var d=c[f];if(!d)continue;for(var p in d){if(d.hasOwnProperty(p)&&!e.startsWith(p,"@types/")){n.push(p)}}}}return n}function getDirectoryFragmentTextSpan(t,r){var n=Math.max(t.lastIndexOf(e.directorySeparator),t.lastIndexOf("\\"));var i=n!==-1?n+1:0;var a=t.length-i;return a===0||e.isIdentifierText(t.substr(i,a),6)?undefined:e.createTextSpan(r+i,a)}function isPathRelativeToScript(e){if(e&&e.length>=2&&e.charCodeAt(0)===46){var t=e.length>=3&&e.charCodeAt(1)===46?2:1;var r=e.charCodeAt(t);return r===47||r===92}return false}var i=/^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/;var a=["dependencies","devDependencies","peerDependencies","optionalDependencies"];function tryGetDirectories(e,t){return tryIOAndConsumeErrors(e,e.getDirectories,t)||[]}function tryReadDirectory(t,r,n,i,a){return tryIOAndConsumeErrors(t,t.readDirectory,r,n,i,a)||e.emptyArray}function tryFileExists(e,t){return tryIOAndConsumeErrors(e,e.fileExists,t)}function tryDirectoryExists(t,r){return tryAndIgnoreErrors(function(){return e.directoryProbablyExists(r,t)})||false}function tryIOAndConsumeErrors(e,t){var r=[];for(var n=2;n<arguments.length;n++){r[n-2]=arguments[n]}return tryAndIgnoreErrors(function(){return t&&t.apply(e,r)})}function tryAndIgnoreErrors(e){try{return e()}catch(e){return undefined}}function containsSlash(t){return e.stringContains(t,e.directorySeparator)}})(r=t.StringCompletions||(t.StringCompletions={}))})(t=e.Completions||(e.Completions={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["ThisType"]=0]="ThisType";e[e["SymbolMemberNoExport"]=1]="SymbolMemberNoExport";e[e["SymbolMemberExport"]=2]="SymbolMemberExport";e[e["Export"]=3]="Export"})(r||(r={}));function originIsSymbolMember(e){return e.kind===2||e.kind===1}function originIsExport(e){return e.kind===2||e.kind===3}var n;(function(e){e[e["None"]=0]="None";e[e["All"]=1]="All";e[e["ClassElementKeywords"]=2]="ClassElementKeywords";e[e["InterfaceElementKeywords"]=3]="InterfaceElementKeywords";e[e["ConstructorParameterKeywords"]=4]="ConstructorParameterKeywords";e[e["FunctionLikeBodyKeywords"]=5]="FunctionLikeBodyKeywords";e[e["TypeKeywords"]=6]="TypeKeywords"})(n||(n={}));var i;(function(e){e[e["Continue"]=0]="Continue";e[e["Success"]=1]="Success";e[e["Fail"]=2]="Fail"})(i||(i={}));function getCompletionsAtPosition(r,n,i,a,o,s,c){var u=n.getTypeChecker();var l=n.getCompilerOptions();var f=e.findPrecedingToken(o,a);if(c&&!isValidTrigger(a,c,f,o))return undefined;var d=t.StringCompletions.getStringLiteralCompletions(a,o,f,u,l,r,i,s);if(d){return d}if(f&&e.isBreakOrContinueStatement(f.parent)&&(f.kind===73||f.kind===78||f.kind===72)){return getLabelCompletionAtPosition(f.parent)}var p=getCompletionData(n,i,a,isUncheckedFile(a,l),o,s,undefined);if(!p){return undefined}switch(p.kind){case 0:return completionInfoFromData(a,u,l,i,p,s);case 1:return jsdocCompletionInfo(e.JsDoc.getJSDocTagNameCompletions());case 2:return jsdocCompletionInfo(e.JsDoc.getJSDocTagCompletions());case 3:return jsdocCompletionInfo(e.JsDoc.getJSDocParameterNameCompletions(p.tag));default:return e.Debug.assertNever(p)}}t.getCompletionsAtPosition=getCompletionsAtPosition;function jsdocCompletionInfo(e){return{isGlobalCompletion:false,isMemberCompletion:false,isNewIdentifierLocation:false,entries:e}}function completionInfoFromData(t,r,n,i,a,o){var s=a.symbols,c=a.completionKind,u=a.isInSnippetScope,l=a.isNewIdentifierLocation,f=a.location,d=a.propertyAccessToConvert,p=a.keywordFilters,g=a.literals,_=a.symbolToOriginInfoMap,m=a.recommendedCompletion,y=a.isJsxInitializer;if(f&&f.parent&&e.isJsxClosingElement(f.parent)){var h=f.parent.parent.openingElement.tagName;var v=!!e.findChildOfKind(f.parent,30,t);var T={name:h.getFullText(t)+(v?"":">"),kind:"class",kindModifiers:undefined,sortText:"0"};return{isGlobalCompletion:false,isMemberCompletion:true,isNewIdentifierLocation:false,entries:[T]}}var S=[];if(isUncheckedFile(t,n)){var b=getCompletionEntriesFromSymbols(s,S,f,t,r,n.target,i,c,o,d,y,m,_);getJSCompletionEntries(t,f.pos,b,n.target,S)}else{if((!s||s.length===0)&&p===0){return undefined}getCompletionEntriesFromSymbols(s,S,f,t,r,n.target,i,c,o,d,y,m,_)}if(p!==0){var x=e.arrayToSet(S,function(e){return e.name});for(var C=0,E=getKeywordCompletions(p);C<E.length;C++){var D=E[C];if(!x.has(D.name)){S.push(D)}}}for(var k=0,N=g;k<N.length;k++){var A=N[k];S.push(createCompletionEntryForLiteral(A))}return{isGlobalCompletion:u,isMemberCompletion:isMemberCompletionKind(c),isNewIdentifierLocation:l,entries:S}}function isUncheckedFile(t,r){return e.isSourceFileJS(t)&&!e.isCheckJsEnabledForFile(t,r)}function isMemberCompletionKind(e){switch(e){case 0:case 3:case 2:return true;default:return false}}function getJSCompletionEntries(t,r,n,i,a){e.getNameTable(t).forEach(function(t,o){if(t===r){return}var s=e.unescapeLeadingUnderscores(o);if(e.addToSeen(n,s)&&e.isIdentifierText(s,i)){a.push({name:s,kind:"warning",kindModifiers:"",sortText:"1"})}})}var a=function(t){return typeof t==="object"?e.pseudoBigIntToString(t)+"n":JSON.stringify(t)};function createCompletionEntryForLiteral(e){return{name:a(e),kind:"string",kindModifiers:"",sortText:"0"}}function createCompletionEntry(t,r,n,i,a,o,s,c,u,l,f){var d=getCompletionEntryDisplayNameForSymbol(t,a,s,o);if(!d){return undefined}var p=d.name,g=d.needsConvertPropertyAccess;var _;var m;if(s&&s.kind===0){_=g?"this["+e.quote(p,f)+"]":"this."+p}else if((s&&originIsSymbolMember(s)||g)&&u){_=g?"["+e.quote(p,f)+"]":"["+p+"]";var y=e.findChildOfKind(u,24,n);var h=e.startsWith(p,u.name.text)?u.name.end:y.end;m=e.createTextSpanFromBounds(y.getStart(n),h)}if(l){if(_===undefined)_=p;_="{"+_+"}";if(typeof l!=="boolean"){m=e.createTextSpanFromNode(l,n)}}if(_!==undefined&&!f.includeCompletionsWithInsertText){return undefined}return{name:p,kind:e.SymbolDisplay.getSymbolKind(i,t,r),kindModifiers:e.SymbolDisplay.getSymbolModifiers(t),sortText:"0",source:getSourceFromOrigin(s),hasAction:trueOrUndefined(!!s&&originIsExport(s)),isRecommended:trueOrUndefined(isRecommendedCompletionMatch(t,c,i)),insertText:_,replacementSpan:m}}function isRecommendedCompletionMatch(e,t,r){return e===t||!!(e.flags&1048576)&&r.getExportSymbolOfSymbol(e)===t}function trueOrUndefined(e){return e?true:undefined}function getSourceFromOrigin(t){return t&&originIsExport(t)?e.stripQuotes(t.moduleSymbol.name):undefined}function getCompletionEntriesFromSymbols(t,r,n,i,a,o,s,c,u,l,f,d,p){var g=e.timestamp();var _=e.createMap();for(var m=0,y=t;m<y.length;m++){var h=y[m];var v=p?p[e.getSymbolId(h)]:undefined;var T=createCompletionEntry(h,n,i,a,o,c,v,d,l,f,u);if(!T){continue}var S=T.name;if(_.has(S)){continue}if(!v&&!(h.parent===undefined&&!e.some(h.declarations,function(e){return e.getSourceFile()===n.getSourceFile()}))){_.set(S,true)}r.push(T)}s("getCompletionsAtPosition: getCompletionEntriesFromSymbols: "+(e.timestamp()-g));return _}t.getCompletionEntriesFromSymbols=getCompletionEntriesFromSymbols;function getLabelCompletionAtPosition(e){var t=getLabelStatementCompletions(e);if(t.length){return{isGlobalCompletion:false,isMemberCompletion:false,isNewIdentifierLocation:false,entries:t}}}function getLabelStatementCompletions(t){var r=[];var n=e.createMap();var i=t;while(i){if(e.isFunctionLike(i)){break}if(e.isLabeledStatement(i)){var a=i.label.text;if(!n.has(a)){n.set(a,true);r.push({name:a,kindModifiers:"",kind:"label",sortText:"0"})}}i=i.parent}return r}function getSymbolCompletionFromEntryId(t,r,n,i,o){var s=t.getCompilerOptions();var c=getCompletionData(t,r,n,isUncheckedFile(n,s),i,{includeCompletionsForModuleExports:true,includeCompletionsWithInsertText:true},o);if(!c){return{type:"none"}}if(c.kind!==0){return{type:"request",request:c}}var u=c.symbols,l=c.literals,f=c.location,d=c.completionKind,p=c.symbolToOriginInfoMap,g=c.previousToken,_=c.isJsxInitializer;var m=e.find(l,function(e){return a(e)===o.name});if(m!==undefined)return{type:"literal",literal:m};return e.firstDefined(u,function(t){var r=p[e.getSymbolId(t)];var n=getCompletionEntryDisplayNameForSymbol(t,s.target,r,d);return n&&n.name===o.name&&getSourceFromOrigin(r)===o.source?{type:"symbol",symbol:t,location:f,symbolToOriginInfoMap:p,previousToken:g,isJsxInitializer:_}:undefined})||{type:"none"}}function getSymbolName(t,r,n){return r&&originIsExport(r)&&r.isDefaultExport&&t.escapedName==="default"?e.firstDefined(t.declarations,function(t){return e.isExportAssignment(t)&&e.isIdentifier(t.expression)?t.expression.text:undefined})||e.codefix.moduleSymbolToValidIdentifier(r.moduleSymbol,n):t.name}function getCompletionEntryDetails(r,n,i,o,s,c,l,f,d){var p=r.getTypeChecker();var g=r.getCompilerOptions();var _=s.name;var m=e.findPrecedingToken(o,i);if(e.isInString(i,o,m)){return t.StringCompletions.getStringLiteralCompletionDetails(_,i,o,m,p,g,c,d)}var y=getSymbolCompletionFromEntryId(r,n,i,o,s);switch(y.type){case"request":{var h=y.request;switch(h.kind){case 1:return e.JsDoc.getJSDocTagNameCompletionDetails(_);case 2:return e.JsDoc.getJSDocTagCompletionDetails(_);case 3:return e.JsDoc.getJSDocParameterNameCompletionDetails(_);default:return e.Debug.assertNever(h)}}case"symbol":{var v=y.symbol,T=y.location,S=y.symbolToOriginInfoMap,b=y.previousToken;var x=getCompletionEntryCodeActionsAndSourceDisplay(S,v,r,p,c,g,i,o,b,l,f),C=x.codeActions,E=x.sourceDisplay;return createCompletionDetailsForSymbol(v,p,i,T,d,C,E)}case"literal":{var D=y.literal;return createSimpleDetails(a(D),"string",typeof D==="string"?e.SymbolDisplayPartKind.stringLiteral:e.SymbolDisplayPartKind.numericLiteral)}case"none":return u().some(function(e){return e.name===_})?createSimpleDetails(_,"keyword",e.SymbolDisplayPartKind.keyword):undefined;default:e.Debug.assertNever(y)}}t.getCompletionEntryDetails=getCompletionEntryDetails;function createSimpleDetails(t,r,n){return createCompletionDetails(t,"",r,[e.displayPart(t,n)])}function createCompletionDetailsForSymbol(t,r,n,i,a,o,s){var c=r.runWithCancellationToken(a,function(r){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,t,n,i,i,7)}),u=c.displayParts,l=c.documentation,f=c.symbolKind,d=c.tags;return createCompletionDetails(t.name,e.SymbolDisplay.getSymbolModifiers(t),f,u,l,d,o,s)}t.createCompletionDetailsForSymbol=createCompletionDetailsForSymbol;function createCompletionDetails(e,t,r,n,i,a,o,s){return{name:e,kindModifiers:t,kind:r,displayParts:n,documentation:i,tags:a,codeActions:o,source:s}}t.createCompletionDetails=createCompletionDetails;function getCompletionEntryCodeActionsAndSourceDisplay(t,r,n,i,a,o,s,c,u,l,f){var d=t[e.getSymbolId(r)];if(!d||!originIsExport(d)){return{codeActions:undefined,sourceDisplay:undefined}}var p=d.moduleSymbol;var g=i.getMergedSymbol(e.skipAlias(r.exportSymbol||r,i));var _=e.codefix.getImportCompletionAction(g,p,s,getSymbolName(r,d,o.target),a,n,l,u&&e.isIdentifier(u)?u.getStart(s):c,f),m=_.moduleSpecifier,y=_.codeAction;return{sourceDisplay:[e.textPart(m)],codeActions:[y]}}function getCompletionEntrySymbol(e,t,r,n,i){var a=getSymbolCompletionFromEntryId(e,t,r,n,i);return a.type==="symbol"?a.symbol:undefined}t.getCompletionEntrySymbol=getCompletionEntrySymbol;var o;(function(e){e[e["Data"]=0]="Data";e[e["JsDocTagName"]=1]="JsDocTagName";e[e["JsDocTag"]=2]="JsDocTag";e[e["JsDocParameterName"]=3]="JsDocParameterName"})(o||(o={}));var s;(function(e){e[e["ObjectPropertyDeclaration"]=0]="ObjectPropertyDeclaration";e[e["Global"]=1]="Global";e[e["PropertyAccess"]=2]="PropertyAccess";e[e["MemberLike"]=3]="MemberLike";e[e["String"]=4]="String";e[e["None"]=5]="None"})(s=t.CompletionKind||(t.CompletionKind={}));function getRecommendedCompletion(t,r,n){return e.firstDefined(r&&(r.isUnion()?r.types:[r]),function(r){var i=r&&r.symbol;return i&&(i.flags&(8|384|32)&&!e.isAbstractConstructorSymbol(i))?getFirstSymbolInChain(i,t,n):undefined})}function getContextualType(t,r,n,i){var a=t.parent;switch(t.kind){case 72:return e.getContextualTypeFromParent(t,i);case 59:switch(a.kind){case 237:return i.getContextualType(a.initializer);case 204:return i.getTypeAtLocation(a.left);case 267:return i.getContextualTypeForJsxAttribute(a);default:return undefined}case 95:return i.getContextualType(a);case 74:return e.getSwitchedType(e.cast(a,e.isCaseClause),i);case 18:return e.isJsxExpression(a)&&a.parent.kind!==260?i.getContextualTypeForJsxAttribute(a.parent):undefined;default:var o=e.SignatureHelp.getArgumentInfoForCompletions(t,r,n);return o?i.getContextualTypeForArgumentAtIndex(o.invocation,o.argumentIndex+(t.kind===27?1:0)):e.isEqualityOperatorKind(t.kind)&&e.isBinaryExpression(a)&&e.isEqualityOperatorKind(a.operatorToken.kind)?i.getTypeAtLocation(a.left):i.getContextualType(t)}}function getFirstSymbolInChain(t,r,n){var i=n.getAccessibleSymbolChain(t,r,67108863,false);if(i)return e.first(i);return t.parent&&(isModuleSymbol(t.parent)?t:getFirstSymbolInChain(t.parent,r,n))}function isModuleSymbol(e){return e.declarations.some(function(e){return e.kind===279})}function getCompletionData(t,r,n,i,a,o,s){var c=t.getTypeChecker();var u=e.timestamp();var l=e.getTokenAtPosition(n,a);r("getCompletionData: Get current token: "+(e.timestamp()-u));u=e.timestamp();var f=e.isInComment(n,a,l);r("getCompletionData: Is inside comment: "+(e.timestamp()-u));var d=false;var p=false;if(f){if(e.hasDocComment(n,a)){if(n.text.charCodeAt(a-1)===64){return{kind:1}}else{var g=e.getLineStartPositionForPosition(a,n);if(!n.text.substring(g,a).match(/[^\*|\s|(/\*\*)]/)){return{kind:2}}}}var _=getJsDocTagAtPosition(l,a);if(_){if(_.tagName.pos<=a&&a<=_.tagName.end){return{kind:1}}if(isTagWithTypeExpression(_)&&_.typeExpression&&_.typeExpression.kind===283){l=e.getTokenAtPosition(n,a);if(!l||!e.isDeclarationName(l)&&(l.parent.kind!==305||l.parent.name!==l)){d=isCurrentlyEditingNode(_.typeExpression)}}if(e.isJSDocParameterTag(_)&&(e.nodeIsMissing(_.name)||_.name.pos<=a&&a<=_.name.end)){return{kind:3,tag:_}}}if(!d){r("Returning an empty list because completion was inside a regular comment or plain text part of a JsDoc comment.");return undefined}}u=e.timestamp();var m=e.findPrecedingToken(a,n,undefined);r("getCompletionData: Get previous token 1: "+(e.timestamp()-u));var y=m;if(y&&a<=y.end&&(e.isIdentifier(y)||e.isKeyword(y.kind))){var h=e.timestamp();y=e.findPrecedingToken(y.getFullStart(),n,undefined);r("getCompletionData: Get previous token 2: "+(e.timestamp()-h))}var v=l;var T;var S=false;var b=false;var x=false;var C=false;var E=e.getTouchingPropertyName(n,a);if(y){if(isCompletionListBlocker(y)){r("Returning an empty list because completion was requested in an invalid position.");return undefined}var D=y.parent;if(y.kind===24){S=true;switch(D.kind){case 189:T=D;v=T.expression;break;case 148:v=D.left;break;case 244:v=D.name;break;case 183:case 214:v=D;break;default:return undefined}}else if(n.languageVariant===1){if(D&&D.kind===189){y=D;D=D.parent}if(l.parent===E){switch(l.kind){case 30:if(l.parent.kind===260||l.parent.kind===262){E=l}break;case 42:if(l.parent.kind===261){E=l}break}}switch(D.kind){case 263:if(y.kind===42){x=true;E=y}break;case 204:if(!binaryExpressionMayBeOpenTag(D)){break}case 261:case 260:case 262:if(y.kind===28){b=true;E=y}break;case 267:switch(m.kind){case 59:C=true;break;case 72:if(D!==m.parent&&!D.initializer&&e.findChildOfKind(D,59,n)){C=m}}break}}}var k=e.timestamp();var N=5;var A=false;var O=0;var F=[];var P=[];if(S){getTypeScriptMemberSymbols()}else if(b){var I=e.Debug.assertEachDefined(c.getJsxIntrinsicTagNamesAt(E),"getJsxIntrinsicTagNames() should all be defined");tryGetGlobalSymbols();F=I.concat(F);N=3;O=0}else if(x){var w=y.parent.parent.openingElement.tagName;var M=c.getSymbolAtLocation(w);if(M){F=[M]}N=3;O=0}else{if(!tryGetGlobalSymbols()){return undefined}}r("getCompletionData: Semantic work: "+(e.timestamp()-k));var L=m&&getContextualType(m,a,n,c);var R=e.mapDefined(L&&(L.isUnion()?L.types:[L]),function(e){return e.isLiteral()?e.value:undefined});var B=m&&L&&getRecommendedCompletion(m,L,c);return{kind:0,symbols:F,completionKind:N,isInSnippetScope:p,propertyAccessToConvert:T,isNewIdentifierLocation:A,location:E,keywordFilters:O,literals:R,symbolToOriginInfoMap:P,recommendedCompletion:B,previousToken:m,isJsxInitializer:C};function isTagWithTypeExpression(e){switch(e.kind){case 299:case 305:case 300:case 302:case 304:return true;default:return false}}function getTypeScriptMemberSymbols(){N=2;var t=e.isLiteralImportTypeNode(v);var r=d||t&&!v.isTypeOf||e.isPartOfTypeNode(v.parent);var i=e.isInRightSideOfInternalImportEqualsDeclaration(v);var a=i||!r&&e.isPossiblyTypeArgumentPosition(y,n,c);if(e.isEntityName(v)||t){var o=e.isModuleDeclaration(v.parent);if(o)A=true;var s=c.getSymbolAtLocation(v);if(s){s=e.skipAlias(s,c);if(s.flags&(1536|384)){var u=e.Debug.assertEachDefined(c.getExportsOfModule(s),"getExportsOfModule() should all be defined");var l=function(e){return c.isValidPropertyAccess(t?v:v.parent,e.name)};var f=function(e){return symbolCanBeReferencedAtTypeLocation(e)};var p=o?function(e){return!!(e.flags&1920)&&!e.declarations.every(function(e){return e.parent===v.parent})}:a?function(e){return f(e)||l(e)}:r?f:l;for(var g=0,_=u;g<_.length;g++){var m=_[g];if(p(m)){F.push(m)}}if(!r&&s.declarations.some(function(e){return e.kind!==279&&e.kind!==244&&e.kind!==243})){addTypeProperties(c.getTypeOfSymbolAtLocation(s,v))}return}}}if(e.isMetaProperty(v)&&(v.keywordToken===95||v.keywordToken===92)){var h=v.keywordToken===95?"target":"meta";F.push(c.createSymbol(4,e.escapeLeadingUnderscores(h)));return}if(!r){addTypeProperties(c.getTypeAtLocation(v))}}function addTypeProperties(e){A=!!e.getStringIndexType();if(i){F.push.apply(F,getPropertiesForCompletion(e,c))}else{for(var t=0,r=e.getApparentProperties();t<r.length;t++){var n=r[t];if(c.isValidPropertyAccessForCompletions(v.kind===183?v:v.parent,e,n)){addPropertySymbol(n)}}}}function addPropertySymbol(t){var r=e.firstDefined(t.declarations,function(t){return e.tryCast(e.getNameOfDeclaration(t),e.isComputedPropertyName)});if(r){var n=getLeftMostName(r.expression);var i=n&&c.getSymbolAtLocation(n);var a=i&&getFirstSymbolInChain(i,y,c);if(a&&!P[e.getSymbolId(a)]){F.push(a);var o=a.parent;P[e.getSymbolId(a)]=!o||!e.isExternalModuleSymbol(o)?{kind:1}:{kind:2,moduleSymbol:o,isDefaultExport:false}}}else{F.push(t)}}function getLeftMostName(t){return e.isIdentifier(t)?t:e.isPropertyAccessExpression(t)?getLeftMostName(t.expression):undefined}function tryGetGlobalSymbols(){var e=tryGetObjectLikeCompletionSymbols()||tryGetImportOrExportClauseCompletionSymbols()||tryGetConstructorCompletion()||tryGetClassLikeCompletionSymbols()||tryGetJsxCompletionSymbols()||(getGlobalCompletions(),1);return e===1}function tryGetConstructorCompletion(){if(!tryGetConstructorLikeCompletionContainer(y))return 0;N=5;A=true;O=4;return 1}function tryGetJsxCompletionSymbols(){var e=tryGetContainingJsxElement(y);var t=e&&c.getContextualType(e.attributes);if(!t)return 0;F=filterJsxAttributes(getPropertiesForObjectExpression(t,e.attributes,c),e.attributes.properties);N=3;A=false;return 1}function getGlobalCompletions(){O=tryGetFunctionLikeBodyCompletionContainer(y)?5:1;N=1;A=isNewIdentifierDefinitionLocation(y);if(m!==y){e.Debug.assert(!!m,"Expected 'contextToken' to be defined when different from 'previousToken'.")}var r=m!==y?m.getStart():a;var i=getScopeNode(y,r,n)||n;p=isSnippetScope(i);var s=isTypeOnlyCompletion();var u=(s?0:67220415)|67897832|1920|2097152;F=e.Debug.assertEachDefined(c.getSymbolsInScope(i,u),"getSymbolsInScope() should all be defined");if(o.includeCompletionsWithInsertText&&i.kind!==279){var l=c.tryGetThisTypeAt(i);if(l){for(var f=0,d=getPropertiesForCompletion(l,c);f<d.length;f++){var g=d[f];P[e.getSymbolId(g)]={kind:0};F.push(g)}}}if(shouldOfferImportCompletions()){getSymbolsFromOtherSourceFileExports(F,m&&e.isIdentifier(m)?m.text:"",t.getCompilerOptions().target)}filterGlobalCompletion(F)}function shouldOfferImportCompletions(){if(!o.includeCompletionsForModuleExports)return false;if(n.externalModuleIndicator)return true;if(n.commonJsModuleIndicator)return false;if(e.compilerOptionsIndicateEs6Modules(t.getCompilerOptions()))return true;return e.programContainsEs6Modules(t)}function isSnippetScope(t){switch(t.kind){case 279:case 206:case 270:case 218:return true;default:return e.isStatement(t)}}function filterGlobalCompletion(t){var r=isTypeOnlyCompletion();var i=r||!isContextTokenValueLocation(y)&&e.isPossiblyTypeArgumentPosition(y,n,c);if(r)O=6;e.filterMutate(t,function(t){if(!e.isSourceFile(E)){if(e.isExportAssignment(E.parent)){return true}t=e.skipAlias(t,c);if(e.isInRightSideOfInternalImportEqualsDeclaration(E)){return!!(t.flags&1920)}if(i){var n=symbolCanBeReferencedAtTypeLocation(t);if(n||r){return n}}}return!!(e.getCombinedLocalAndExportSymbolFlags(t)&67220415)})}function isTypeOnlyCompletion(){return d||!isContextTokenValueLocation(y)&&(e.isPartOfTypeNode(E)||isContextTokenTypeLocation(y))}function isContextTokenValueLocation(t){return t&&t.kind===104&&(t.parent.kind===167||e.isTypeOfExpression(t.parent))}function isContextTokenTypeLocation(t){if(t){var r=t.parent.kind;switch(t.kind){case 57:return r===154||r===153||r===151||r===237||e.isFunctionLikeKind(r);case 59:return r===242;case 119:return r===212}}return false}function symbolCanBeReferencedAtTypeLocation(t,r){if(r===void 0){r=e.createMap()}var n=e.skipAlias(t.exportSymbol||t,c);return!!(n.flags&67897832)||!!(n.flags&1536)&&e.addToSeen(r,e.getSymbolId(n))&&c.getExportsOfModule(n).some(function(e){return symbolCanBeReferencedAtTypeLocation(e,r)})}function getSymbolsFromOtherSourceFileExports(r,i,a){var o=i.toLowerCase();var u=e.createMap();e.codefix.forEachExternalModuleToImportFrom(c,n,t.getSourceFiles(),function(t){if(s&&s.source&&e.stripQuotes(t.name)!==s.source){return}var n=c.resolveExternalModuleSymbol(t);if(!e.addToSeen(u,e.getSymbolId(n))){return}if(n!==t&&e.some(n.declarations,function(e){return!!e.getSourceFile().externalModuleIndicator})){r.push(n);P[e.getSymbolId(n)]={kind:3,moduleSymbol:t,isDefaultExport:false}}for(var i=0,l=c.getExportsOfModule(t);i<l.length;i++){var f=l[i];if(c.getMergedSymbol(f.parent)!==n||e.some(f.declarations,function(t){return e.isExportSpecifier(t)&&(t.propertyName?e.isIdentifierANonContextualKeyword(t.name):!!t.parent.parent.moduleSpecifier)})){continue}var d=f.escapedName==="default";if(d){f=e.getLocalSymbolForExportDefault(f)||f}var p={kind:3,moduleSymbol:t,isDefaultExport:d};if(s||stringContainsCharactersInOrder(getSymbolName(f,p,a).toLowerCase(),o)){r.push(f);P[e.getSymbolId(f)]=p}}})}function stringContainsCharactersInOrder(e,t){if(t.length===0){return true}var r=0;for(var n=0;n<e.length;n++){if(e.charCodeAt(n)===t.charCodeAt(r)){r++;if(r===t.length){return true}}}return false}function getScopeNode(t,r,n){var i=t;while(i&&!e.positionBelongsToNode(i,r,n)){i=i.parent}return i}function isCompletionListBlocker(t){var n=e.timestamp();var i=isInStringOrRegularExpressionOrTemplateLiteral(t)||isSolelyIdentifierDefinitionLocation(t)||isDotOfNumericLiteral(t)||isInJsxText(t);r("getCompletionsAtPosition: isCompletionListBlocker: "+(e.timestamp()-n));return i}function isInJsxText(e){if(e.kind===11){return true}if(e.kind===30&&e.parent){if(e.parent.kind===262){return true}if(e.parent.kind===263||e.parent.kind===261){return!!e.parent.parent&&e.parent.parent.kind===260}}return false}function isNewIdentifierDefinitionLocation(e){if(e){var t=e.parent.kind;switch(keywordForNode(e)){case 27:return t===191||t===157||t===192||t===187||t===204||t===165;case 20:return t===191||t===157||t===192||t===195||t===177;case 22:return t===187||t===162||t===149;case 130:case 131:return true;case 24:return t===244;case 18:return t===240;case 59:return t===237||t===204;case 15:return t===206;case 16:return t===216;case 115:case 113:case 114:return t===154}}return false}function isInStringOrRegularExpressionOrTemplateLiteral(t){return(e.isRegularExpressionLiteral(t)||e.isStringTextContainingNode(t))&&(e.rangeContainsPositionExclusive(e.createTextRangeFromSpan(e.createTextSpanFromNode(t)),a)||a===t.end&&(!!t.isUnterminated||e.isRegularExpressionLiteral(t)))}function tryGetObjectLikeCompletionSymbols(){var t=tryGetObjectLikeCompletionContainer(y);if(!t)return 0;N=0;var r;var n;if(t.kind===188){var i=c.getContextualType(t);if(!i)return 2;A=e.hasIndexSignature(i);r=getPropertiesForObjectExpression(i,t,c);n=t.properties}else{e.Debug.assert(t.kind===184);A=false;var a=e.getRootDeclaration(t.parent);if(!e.isVariableLike(a))return e.Debug.fail("Root declaration is not variable-like.");var o=e.hasInitializer(a)||e.hasType(a)||a.parent.parent.kind===227;if(!o&&a.kind===151){if(e.isExpression(a.parent)){o=!!c.getContextualType(a.parent)}else if(a.parent.kind===156||a.parent.kind===159){o=e.isExpression(a.parent.parent)&&!!c.getContextualType(a.parent.parent)}}if(o){var i=c.getTypeAtLocation(t);if(!i)return 2;r=c.getPropertiesOfType(i).filter(function(t){return!(e.getDeclarationModifierFlagsFromSymbol(t)&24)});n=t.elements}}if(r&&r.length>0){F=filterObjectMembersList(r,e.Debug.assertDefined(n))}return 1}function tryGetImportOrExportClauseCompletionSymbols(){var t=y&&(y.kind===18||y.kind===27)?e.tryCast(y.parent,e.isNamedImportsOrExports):undefined;if(!t)return 0;var r=(t.kind===252?t.parent.parent:t.parent).moduleSpecifier;var n=c.getSymbolAtLocation(r);if(!n)return 2;N=3;A=false;var i=c.getExportsAndPropertiesOfModule(n);var a=e.arrayToSet(t.elements,function(e){return isCurrentlyEditingNode(e)?undefined:(e.propertyName||e.name).escapedText});F=i.filter(function(e){return e.escapedName!=="default"&&!a.get(e.escapedName)});return 1}function tryGetClassLikeCompletionSymbols(){var t=tryGetObjectTypeDeclarationCompletionContainer(n,y,E);if(!t)return 0;N=3;A=true;O=y.kind===40?0:e.isClassLike(t)?2:3;if(!e.isClassLike(t))return 1;var r=y.parent;var i=e.isClassElement(r)?e.getModifierFlags(r):0;if(y.kind===72&&!isCurrentlyEditingNode(y)){switch(y.getText()){case"private":i=i|8;break;case"static":i=i|32;break}}if(!(i&8)){var a=e.flatMap(e.getAllSuperTypeNodes(t),function(e){var r=c.getTypeAtLocation(e);return r&&c.getPropertiesOfType(i&32?c.getTypeOfSymbolAtLocation(r.symbol,t):r)});F=filterClassMembersList(a,t.members,i)}return 1}function tryGetObjectLikeCompletionContainer(t){if(t){var r=t.parent;switch(t.kind){case 18:case 27:if(e.isObjectLiteralExpression(r)||e.isObjectBindingPattern(r)){return r}break;case 40:return e.isMethodDeclaration(r)?e.tryCast(r.parent,e.isObjectLiteralExpression):undefined;case 72:return t.text==="async"&&e.isShorthandPropertyAssignment(t.parent)?t.parent.parent:undefined}}return undefined}function isConstructorParameterCompletion(t){return!!t.parent&&e.isParameter(t.parent)&&e.isConstructorDeclaration(t.parent.parent)&&(e.isParameterPropertyModifier(t.kind)||e.isDeclarationName(t))}function tryGetConstructorLikeCompletionContainer(t){if(t){var r=t.parent;switch(t.kind){case 20:case 27:return e.isConstructorDeclaration(t.parent)?t.parent:undefined;default:if(isConstructorParameterCompletion(t)){return r.parent}}}return undefined}function tryGetFunctionLikeBodyCompletionContainer(t){if(t){var r;var n=e.findAncestor(t.parent,function(t){if(e.isClassLike(t)){return"quit"}if(e.isFunctionLikeDeclaration(t)&&r===t.body){return true}r=t;return false});return n&&n}}function tryGetContainingJsxElement(t){if(t){var r=t.parent;switch(t.kind){case 30:case 29:case 42:case 72:case 189:case 268:case 267:case 269:if(r&&(r.kind===261||r.kind===262)){if(t.kind===30){var i=e.findPrecedingToken(t.pos,n,undefined);if(!r.typeArguments||i&&i.kind===42)break}return r}else if(r.kind===267){return r.parent.parent}break;case 10:if(r&&(r.kind===267||r.kind===269)){return r.parent.parent}break;case 19:if(r&&r.kind===270&&r.parent&&r.parent.kind===267){return r.parent.parent.parent}if(r&&r.kind===269){return r.parent.parent}break}}return undefined}function isSolelyIdentifierDefinitionLocation(t){var r=t.parent;var n=r.kind;switch(t.kind){case 27:return n===237||n===238||n===219||n===243||isFunctionLikeButNotConstructor(n)||n===241||n===185||n===242||e.isClassLike(r)&&!!r.typeParameters&&r.typeParameters.end>=t.pos;case 24:return n===185;case 57:return n===186;case 22:return n===185;case 20:return n===274||isFunctionLikeButNotConstructor(n);case 18:return n===243;case 28:return n===240||n===209||n===241||n===242||e.isFunctionLikeKind(n);case 116:return n===154&&!e.isClassLike(r.parent);case 25:return n===151||!!r.parent&&r.parent.kind===185;case 115:case 113:case 114:return n===151&&!e.isConstructorDeclaration(r.parent);case 119:return n===253||n===257||n===251;case 126:case 137:return!isFromObjectTypeDeclaration(t);case 76:case 84:case 110:case 90:case 105:case 92:case 111:case 77:case 117:case 140:return true;case 40:return e.isFunctionLike(t.parent)&&!e.isMethodDeclaration(t.parent)}if(isClassMemberCompletionKeyword(keywordForNode(t))&&isFromObjectTypeDeclaration(t)){return false}if(isConstructorParameterCompletion(t)){if(!e.isIdentifier(t)||e.isParameterPropertyModifier(keywordForNode(t))||isCurrentlyEditingNode(t)){return false}}switch(keywordForNode(t)){case 118:case 76:case 77:case 125:case 84:case 90:case 110:case 111:case 113:case 114:case 115:case 116:case 105:case 117:return true;case 121:return e.isPropertyDeclaration(t.parent)}return e.isDeclarationName(t)&&!e.isJsxAttribute(t.parent)&&!(e.isClassLike(t.parent)&&(t!==m||a>m.end))}function isFunctionLikeButNotConstructor(t){return e.isFunctionLikeKind(t)&&t!==157}function isDotOfNumericLiteral(e){if(e.kind===8){var t=e.getFullText();return t.charAt(t.length-1)==="."}return false}function filterObjectMembersList(t,r){if(r.length===0){return t}var n=e.createUnderscoreEscapedMap();for(var i=0,a=r;i<a.length;i++){var o=a[i];if(o.kind!==275&&o.kind!==276&&o.kind!==186&&o.kind!==156&&o.kind!==158&&o.kind!==159){continue}if(isCurrentlyEditingNode(o)){continue}var s=void 0;if(e.isBindingElement(o)&&o.propertyName){if(o.propertyName.kind===72){s=o.propertyName.escapedText}}else{var c=e.getNameOfDeclaration(o);s=c&&e.isPropertyNameLiteral(c)?e.getEscapedTextOfIdentifierOrLiteral(c):undefined}n.set(s,true)}return t.filter(function(e){return!n.get(e.escapedName)})}function filterClassMembersList(t,r,n){var i=e.createUnderscoreEscapedMap();for(var a=0,o=r;a<o.length;a++){var s=o[a];if(s.kind!==154&&s.kind!==156&&s.kind!==158&&s.kind!==159){continue}if(isCurrentlyEditingNode(s)){continue}if(e.hasModifier(s,8)){continue}if(e.hasModifier(s,32)!==!!(n&32)){continue}var c=e.getPropertyNameForPropertyNameNode(s.name);if(c){i.set(c,true)}}return t.filter(function(t){return!i.has(t.escapedName)&&!!t.declarations&&!(e.getDeclarationModifierFlagsFromSymbol(t)&8)})}function filterJsxAttributes(t,r){var n=e.createUnderscoreEscapedMap();for(var i=0,a=r;i<a.length;i++){var o=a[i];if(isCurrentlyEditingNode(o)){continue}if(o.kind===267){n.set(o.name.escapedText,true)}}return t.filter(function(e){return!n.get(e.escapedName)})}function isCurrentlyEditingNode(e){return e.getStart(n)<=a&&a<=e.getEnd()}}function getCompletionEntryDisplayNameForSymbol(t,r,n,i){var a=getSymbolName(t,n,r);if(a===undefined||t.flags&1536&&e.startsWithQuote(a)||e.isKnownSymbol(t)){return undefined}var o={name:a,needsConvertPropertyAccess:false};if(e.isIdentifierText(a,r))return o;switch(i){case 3:return undefined;case 0:return{name:JSON.stringify(a),needsConvertPropertyAccess:false};case 2:case 1:return a.charCodeAt(0)===32?undefined:{name:a,needsConvertPropertyAccess:true};case 5:case 4:return o;default:e.Debug.assertNever(i)}}var c=[];var u=e.memoize(function(){var t=[];for(var r=73;r<=147;r++){t.push({name:e.tokenToString(r),kind:"keyword",kindModifiers:"",sortText:"0"})}return t});function getKeywordCompletions(t){return c[t]||(c[t]=u().filter(function(r){var n=e.stringToToken(r.name);switch(t){case 0:return false;case 1:return n===121||122||!e.isContextualKeyword(n)&&!isClassMemberCompletionKeyword(n)||n===125||n===130||e.isTypeKeyword(n)&&n!==141;case 2:return isClassMemberCompletionKeyword(n);case 3:return isInterfaceOrTypeLiteralCompletionKeyword(n);case 4:return e.isParameterPropertyModifier(n);case 5:return isFunctionLikeBodyKeyword(n);case 6:return e.isTypeKeyword(n);default:return e.Debug.assertNever(t)}}))}function isInterfaceOrTypeLiteralCompletionKeyword(e){return e===133}function isClassMemberCompletionKeyword(t){switch(t){case 118:case 124:case 126:case 137:case 121:return true;default:return e.isClassMemberModifier(t)}}function isFunctionLikeBodyKeyword(t){return t===121||t===122||!e.isContextualKeyword(t)&&!isClassMemberCompletionKeyword(t)}function keywordForNode(t){return e.isIdentifier(t)?t.originalKeywordKind||0:t.kind}function getJsDocTagAtPosition(t,r){var n=e.findAncestor(t,e.isJSDoc);return n&&n.tags&&(e.rangeContainsPosition(n,r)?e.findLast(n.tags,function(e){return e.pos<r}):undefined)}function getPropertiesForObjectExpression(t,r,n){return t.isUnion()?n.getAllPossiblePropertiesOfTypes(t.types.filter(function(t){return!(t.flags&131068||n.isArrayLikeType(t)||e.typeHasCallOrConstructSignatures(t,n)||n.isTypeInvalidDueToUnionDiscriminant(t,r))})):t.getApparentProperties()}function getPropertiesForCompletion(t,r){return t.isUnion()?e.Debug.assertEachDefined(r.getAllPossiblePropertiesOfTypes(t.types),"getAllPossiblePropertiesOfTypes() should all be defined"):e.Debug.assertEachDefined(t.getApparentProperties(),"getApparentProperties() should all be defined")}function tryGetObjectTypeDeclarationCompletionContainer(t,r,n){switch(n.kind){case 306:return e.tryCast(n.parent,e.isObjectTypeDeclaration);case 1:var i=e.tryCast(e.lastOrUndefined(e.cast(n.parent,e.isSourceFile).statements),e.isObjectTypeDeclaration);if(i&&!e.findChildOfKind(i,19,t)){return i}}if(!r)return undefined;switch(r.kind){case 26:case 19:return isFromObjectTypeDeclaration(n)&&n.parent.name===n?n.parent.parent:e.tryCast(n,e.isObjectTypeDeclaration);case 18:case 27:return e.tryCast(r.parent,e.isObjectTypeDeclaration);default:if(!isFromObjectTypeDeclaration(r))return undefined;var a=e.isClassLike(r.parent.parent)?isClassMemberCompletionKeyword:isInterfaceOrTypeLiteralCompletionKeyword;return a(r.kind)||r.kind===40||e.isIdentifier(r)&&a(e.stringToToken(r.text))?r.parent.parent:undefined}}function isFromObjectTypeDeclaration(t){return t.parent&&e.isClassOrTypeElement(t.parent)&&e.isObjectTypeDeclaration(t.parent.parent)}function isValidTrigger(t,r,n,i){switch(r){case".":case"@":return true;case'"':case"'":case"`":return!!n&&e.isStringLiteralOrTemplate(n)&&i===n.getStart(t)+1;case"<":return!!n&&n.kind===28&&(!e.isBinaryExpression(n.parent)||binaryExpressionMayBeOpenTag(n.parent));case"/":return!!n&&(e.isStringLiteralLike(n)?!!e.tryGetImportFromModuleSpecifier(n):n.kind===42&&e.isJsxClosingElement(n.parent));default:return e.Debug.assertNever(r)}}function binaryExpressionMayBeOpenTag(t){var r=t.left;return e.nodeIsMissing(r)}})(t=e.Completions||(e.Completions={}))})(s||(s={}));var s;(function(e){var t;(function(t){function getDocumentHighlights(t,r,n,i,a){var o=e.getTouchingPropertyName(n,i);if(o.parent&&(e.isJsxOpeningElement(o.parent)&&o.parent.tagName===o||e.isJsxClosingElement(o.parent))){var s=o.parent.parent,c=s.openingElement,u=s.closingElement;var l=[c,u].map(function(e){var t=e.tagName;return getHighlightSpanForNode(t,n)});return[{fileName:n.fileName,highlightSpans:l}]}return getSemanticDocumentHighlights(i,o,t,r,a)||getSyntacticDocumentHighlights(o,n)}t.getDocumentHighlights=getDocumentHighlights;function getHighlightSpanForNode(t,r){return{fileName:r.fileName,textSpan:e.createTextSpanFromNode(t,r),kind:"none"}}function getSemanticDocumentHighlights(t,r,n,i,a){var o=e.arrayToSet(a,function(e){return e.fileName});var s=e.FindAllReferences.getReferenceEntriesForNode(t,r,n,a,i,undefined,o);if(!s)return undefined;var c=e.arrayToMultiMap(s.map(e.FindAllReferences.toHighlightSpan),function(e){return e.fileName},function(e){return e.span});return e.arrayFrom(c.entries(),function(t){var r=t[0],i=t[1];if(!o.has(r)){e.Debug.assert(n.redirectTargetsMap.has(r));var s=n.getSourceFile(r);var c=e.find(a,function(e){return!!e.redirectInfo&&e.redirectInfo.redirectTarget===s});r=c.fileName;e.Debug.assert(o.has(r))}return{fileName:r,highlightSpans:i}})}function getSyntacticDocumentHighlights(e,t){var r=getHighlightSpans(e,t);return r&&[{fileName:t.fileName,highlightSpans:r}]}function getHighlightSpans(t,r){switch(t.kind){case 91:case 83:return e.isIfStatement(t.parent)?getIfElseOccurrences(t.parent,r):undefined;case 97:return useParent(t.parent,e.isReturnStatement,getReturnOccurrences);case 101:return useParent(t.parent,e.isThrowStatement,getThrowOccurrences);case 103:case 75:case 88:var n=t.kind===75?t.parent.parent:t.parent;return useParent(n,e.isTryStatement,getTryCatchFinallyOccurrences);case 99:return useParent(t.parent,e.isSwitchStatement,getSwitchCaseDefaultOccurrences);case 74:case 80:return useParent(t.parent.parent.parent,e.isSwitchStatement,getSwitchCaseDefaultOccurrences);case 73:case 78:return useParent(t.parent,e.isBreakOrContinueStatement,getBreakOrContinueStatementOccurrences);case 89:case 107:case 82:return useParent(t.parent,function(t){return e.isIterationStatement(t,true)},getLoopBreakContinueOccurrences);case 124:return getFromAllDeclarations(e.isConstructorDeclaration,[124]);case 126:case 137:return getFromAllDeclarations(e.isAccessor,[126,137]);case 122:return useParent(t.parent,e.isAwaitExpression,getAsyncAndAwaitOccurrences);case 121:return highlightSpans(getAsyncAndAwaitOccurrences(t));case 117:return highlightSpans(getYieldOccurrences(t));default:return e.isModifierKind(t.kind)&&(e.isDeclaration(t.parent)||e.isVariableStatement(t.parent))?highlightSpans(getModifierOccurrences(t.kind,t.parent)):undefined}function getFromAllDeclarations(n,i){return useParent(t.parent,n,function(t){return e.mapDefined(t.symbol.declarations,function(t){return n(t)?e.find(t.getChildren(r),function(t){return e.contains(i,t.kind)}):undefined})})}function useParent(e,t,n){return t(e)?highlightSpans(n(e,r)):undefined}function highlightSpans(e){return e&&e.map(function(e){return getHighlightSpanForNode(e,r)})}}function aggregateOwnedThrowStatements(t){if(e.isThrowStatement(t)){return[t]}else if(e.isTryStatement(t)){return e.concatenate(t.catchClause?aggregateOwnedThrowStatements(t.catchClause):t.tryBlock&&aggregateOwnedThrowStatements(t.tryBlock),t.finallyBlock&&aggregateOwnedThrowStatements(t.finallyBlock))}return e.isFunctionLike(t)?undefined:flatMapChildren(t,aggregateOwnedThrowStatements)}function getThrowStatementOwner(t){var r=t;while(r.parent){var n=r.parent;if(e.isFunctionBlock(n)||n.kind===279){return n}if(e.isTryStatement(n)&&n.tryBlock===r&&n.catchClause){return r}r=n}return undefined}function aggregateAllBreakAndContinueStatements(t){return e.isBreakOrContinueStatement(t)?[t]:e.isFunctionLike(t)?undefined:flatMapChildren(t,aggregateAllBreakAndContinueStatements)}function flatMapChildren(t,r){var n=[];t.forEachChild(function(t){var i=r(t);if(i!==undefined){n.push.apply(n,e.toArray(i))}});return n}function ownsBreakOrContinueStatement(e,t){var r=getBreakOrContinueOwner(t);return!!r&&r===e}function getBreakOrContinueOwner(t){return e.findAncestor(t,function(r){switch(r.kind){case 232:if(t.kind===228){return false}case 225:case 226:case 227:case 224:case 223:return!t.label||isLabeledBy(r,t.label.escapedText);default:return e.isFunctionLike(r)&&"quit"}})}function getModifierOccurrences(t,r){return e.mapDefined(getNodesToSearchForModifier(r,e.modifierToFlag(t)),function(r){return e.findModifier(r,t)})}function getNodesToSearchForModifier(t,r){var n=t.parent;switch(n.kind){case 245:case 279:case 218:case 271:case 272:if(r&128&&e.isClassDeclaration(t)){return t.members.concat([t])}else{return n.statements}case 157:case 156:case 239:return n.parameters.concat(e.isClassLike(n.parent)?n.parent.members:[]);case 240:case 209:var i=n.members;if(r&28){var a=e.find(n.members,e.isConstructorDeclaration);if(a){return i.concat(a.parameters)}}else if(r&128){return i.concat([n])}return i;default:e.Debug.assertNever(n,"Invalid container kind.")}}function pushKeywordIf(t,r){var n=[];for(var i=2;i<arguments.length;i++){n[i-2]=arguments[i]}if(r&&e.contains(n,r.kind)){t.push(r);return true}return false}function getLoopBreakContinueOccurrences(t){var r=[];if(pushKeywordIf(r,t.getFirstToken(),89,107,82)){if(t.kind===223){var n=t.getChildren();for(var i=n.length-1;i>=0;i--){if(pushKeywordIf(r,n[i],107)){break}}}}e.forEach(aggregateAllBreakAndContinueStatements(t.statement),function(e){if(ownsBreakOrContinueStatement(t,e)){pushKeywordIf(r,e.getFirstToken(),73,78)}});return r}function getBreakOrContinueStatementOccurrences(e){var t=getBreakOrContinueOwner(e);if(t){switch(t.kind){case 225:case 226:case 227:case 223:case 224:return getLoopBreakContinueOccurrences(t);case 232:return getSwitchCaseDefaultOccurrences(t)}}return undefined}function getSwitchCaseDefaultOccurrences(t){var r=[];pushKeywordIf(r,t.getFirstToken(),99);e.forEach(t.caseBlock.clauses,function(n){pushKeywordIf(r,n.getFirstToken(),74,80);e.forEach(aggregateAllBreakAndContinueStatements(n),function(e){if(ownsBreakOrContinueStatement(t,e)){pushKeywordIf(r,e.getFirstToken(),73)}})});return r}function getTryCatchFinallyOccurrences(t,r){var n=[];pushKeywordIf(n,t.getFirstToken(),103);if(t.catchClause){pushKeywordIf(n,t.catchClause.getFirstToken(),75)}if(t.finallyBlock){var i=e.findChildOfKind(t,88,r);pushKeywordIf(n,i,88)}return n}function getThrowOccurrences(t,r){var n=getThrowStatementOwner(t);if(!n){return undefined}var i=[];e.forEach(aggregateOwnedThrowStatements(n),function(t){i.push(e.findChildOfKind(t,101,r))});if(e.isFunctionBlock(n)){e.forEachReturnStatement(n,function(t){i.push(e.findChildOfKind(t,97,r))})}return i}function getReturnOccurrences(t,r){var n=e.getContainingFunction(t);if(!n){return undefined}var i=[];e.forEachReturnStatement(e.cast(n.body,e.isBlock),function(t){i.push(e.findChildOfKind(t,97,r))});e.forEach(aggregateOwnedThrowStatements(n.body),function(t){i.push(e.findChildOfKind(t,101,r))});return i}function getAsyncAndAwaitOccurrences(t){var r=e.getContainingFunction(t);if(!r){return undefined}var n=[];if(r.modifiers){r.modifiers.forEach(function(e){pushKeywordIf(n,e,121)})}e.forEachChild(r,function(t){traverseWithoutCrossingFunction(t,function(t){if(e.isAwaitExpression(t)){pushKeywordIf(n,t.getFirstToken(),122)}})});return n}function getYieldOccurrences(t){var r=e.getContainingFunction(t);if(!r){return undefined}var n=[];e.forEachChild(r,function(t){traverseWithoutCrossingFunction(t,function(t){if(e.isYieldExpression(t)){pushKeywordIf(n,t.getFirstToken(),117)}})});return n}function traverseWithoutCrossingFunction(t,r){r(t);if(!e.isFunctionLike(t)&&!e.isClassLike(t)&&!e.isInterfaceDeclaration(t)&&!e.isModuleDeclaration(t)&&!e.isTypeAliasDeclaration(t)&&!e.isTypeNode(t)){e.forEachChild(t,function(e){return traverseWithoutCrossingFunction(e,r)})}}function getIfElseOccurrences(t,r){var n=getIfElseKeywords(t,r);var i=[];for(var a=0;a<n.length;a++){if(n[a].kind===83&&a<n.length-1){var o=n[a];var s=n[a+1];var c=true;for(var u=s.getStart(r)-1;u>=o.end;u--){if(!e.isWhiteSpaceSingleLine(r.text.charCodeAt(u))){c=false;break}}if(c){i.push({fileName:r.fileName,textSpan:e.createTextSpanFromBounds(o.getStart(),s.end),kind:"reference"});a++;continue}}i.push(getHighlightSpanForNode(n[a],r))}return i}function getIfElseKeywords(t,r){var n=[];while(e.isIfStatement(t.parent)&&t.parent.elseStatement===t){t=t.parent}while(true){var i=t.getChildren(r);pushKeywordIf(n,i[0],91);for(var a=i.length-1;a>=0;a--){if(pushKeywordIf(n,i[a],83)){break}}if(!t.elseStatement||!e.isIfStatement(t.elseStatement)){break}t=t.elseStatement}return n}function isLabeledBy(t,r){return!!e.findAncestor(t.parent,function(t){return!e.isLabeledStatement(t)?"quit":t.label.escapedText===r})}})(t=e.DocumentHighlights||(e.DocumentHighlights={}))})(s||(s={}));var s;(function(e){function createDocumentRegistry(e,t){return createDocumentRegistryInternal(e,t)}e.createDocumentRegistry=createDocumentRegistry;function createDocumentRegistryInternal(t,r,n){if(r===void 0){r=""}var i=e.createMap();var a=e.createGetCanonicalFileName(!!t);function reportStats(){var t=e.arrayFrom(i.keys()).filter(function(e){return e&&e.charAt(0)==="_"}).map(function(e){var t=i.get(e);var r=[];t.forEach(function(e,t){r.push({name:t,refCount:e.languageServiceRefCount})});r.sort(function(e,t){return t.refCount-e.refCount});return{bucket:e,sourceFiles:r}});return JSON.stringify(t,undefined,2)}function acquireDocument(t,n,i,o,s){var c=e.toPath(t,r,a);var u=getKeyForCompilationSettings(n);return acquireDocumentWithKey(t,c,n,u,i,o,s)}function acquireDocumentWithKey(e,t,r,n,i,a,o){return acquireOrUpdateDocument(e,t,r,n,i,a,true,o)}function updateDocument(t,n,i,o,s){var c=e.toPath(t,r,a);var u=getKeyForCompilationSettings(n);return updateDocumentWithKey(t,c,n,u,i,o,s)}function updateDocumentWithKey(e,t,r,n,i,a,o){return acquireOrUpdateDocument(e,t,r,n,i,a,false,o)}function acquireOrUpdateDocument(t,r,a,o,s,c,u,l){var f=e.getOrUpdate(i,o,e.createMap);var d=f.get(r);var p=l===6?100:a.target||1;if(!d&&n){var g=n.getDocument(o,r);if(g){e.Debug.assert(u);d={sourceFile:g,languageServiceRefCount:0};f.set(r,d)}}if(!d){var g=e.createLanguageServiceSourceFile(t,s,p,c,false,l);if(n){n.setDocument(o,r,g)}d={sourceFile:g,languageServiceRefCount:1};f.set(r,d)}else{if(d.sourceFile.version!==c){d.sourceFile=e.updateLanguageServiceSourceFile(d.sourceFile,s,c,s.getChangeRange(d.sourceFile.scriptSnapshot));if(n){n.setDocument(o,r,d.sourceFile)}}if(u){d.languageServiceRefCount++}}e.Debug.assert(d.languageServiceRefCount!==0);return d.sourceFile}function releaseDocument(t,n){var i=e.toPath(t,r,a);var o=getKeyForCompilationSettings(n);return releaseDocumentWithKey(i,o)}function releaseDocumentWithKey(t,r){var n=e.Debug.assertDefined(i.get(r));var a=n.get(t);a.languageServiceRefCount--;e.Debug.assert(a.languageServiceRefCount>=0);if(a.languageServiceRefCount===0){n.delete(t)}}function getLanguageServiceRefCounts(t){return e.arrayFrom(i.entries(),function(e){var r=e[0],n=e[1];var i=n.get(t);return[r,i&&i.languageServiceRefCount]})}return{acquireDocument:acquireDocument,acquireDocumentWithKey:acquireDocumentWithKey,updateDocument:updateDocument,updateDocumentWithKey:updateDocumentWithKey,releaseDocument:releaseDocument,releaseDocumentWithKey:releaseDocumentWithKey,getLanguageServiceRefCounts:getLanguageServiceRefCounts,reportStats:reportStats,getKeyForCompilationSettings:getKeyForCompilationSettings}}e.createDocumentRegistryInternal=createDocumentRegistryInternal;function getKeyForCompilationSettings(t){return e.sourceFileAffectingCompilerOptions.map(function(r){return e.getCompilerOptionValue(t,r)}).join("|")}})(s||(s={}));var s;(function(e){var t;(function(t){function createImportTracker(e,t,r,i){var a=getDirectImportsMap(e,r,i);return function(o,s,c){var u=getImportersForExport(e,t,a,s,r,i),l=u.directImports,f=u.indirectUsers;return n({indirectUsers:f},getSearchesFromDirectImports(l,o,s.exportKind,r,c))}}t.createImportTracker=createImportTracker;var r;(function(e){e[e["Named"]=0]="Named";e[e["Default"]=1]="Default";e[e["ExportEquals"]=2]="ExportEquals"})(r=t.ExportKind||(t.ExportKind={}));var i;(function(e){e[e["Import"]=0]="Import";e[e["Export"]=1]="Export"})(i=t.ImportExport||(t.ImportExport={}));function getImportersForExport(t,r,n,i,a,o){var s=i.exportingModuleSymbol,c=i.exportKind;var u=e.nodeSeenTracker();var l=e.nodeSeenTracker();var f=[];var d=!!s.globalExports;var p=d?undefined:[];handleDirectImports(s);return{directImports:f,indirectUsers:getIndirectUsers()};function getIndirectUsers(){if(d){return t}for(var n=0,i=s.declarations;n<i.length;n++){var a=i[n];if(e.isExternalModuleAugmentation(a)&&r.has(a.getSourceFile().fileName)){addIndirectUser(a)}}return p.map(e.getSourceFileOfNode)}function handleDirectImports(t){var r=getDirectImports(t);if(r){for(var n=0,i=r;n<i.length;n++){var s=i[n];if(!u(s)){continue}if(o)o.throwIfCancellationRequested();switch(s.kind){case 191:if(!d){var l=s.parent;if(c===2&&l.kind===237){var p=l.name;if(p.kind===72){f.push(p);break}}addIndirectUser(s.getSourceFile())}break;case 72:break;case 248:handleNamespaceImport(s,s.name,e.hasModifier(s,1),false);break;case 249:f.push(s);var g=s.importClause&&s.importClause.namedBindings;if(g&&g.kind===251){handleNamespaceImport(s,g.name,false,true)}else if(!d&&e.isDefaultImport(s)){addIndirectUser(getSourceFileLikeForImportDeclaration(s))}break;case 255:if(!s.exportClause){handleDirectImports(getContainingModuleSymbol(s,a))}else{f.push(s)}break;case 183:f.push(s);break;default:e.Debug.assertNever(s,"Unexpected import kind: "+e.Debug.showSyntaxKind(s))}}}}function handleNamespaceImport(t,r,n,i){if(c===2){if(!i)f.push(t)}else if(!d){var o=getSourceFileLikeForImportDeclaration(t);e.Debug.assert(o.kind===279||o.kind===244);if(n||findNamespaceReExports(o,r,a)){addIndirectUsers(o)}else{addIndirectUser(o)}}}function addIndirectUser(t){e.Debug.assert(!d);var r=l(t);if(r){p.push(t)}return r}function addIndirectUsers(t){if(!addIndirectUser(t)){return}var r=a.getMergedSymbol(t.symbol);e.Debug.assert(!!(r.flags&1536));var n=getDirectImports(r);if(n){for(var i=0,o=n;i<o.length;i++){var s=o[i];addIndirectUsers(getSourceFileLikeForImportDeclaration(s))}}}function getDirectImports(t){return n.get(e.getSymbolId(t).toString())}}function getSearchesFromDirectImports(t,r,n,i,a){var o=[];var s=[];function addSearch(e,t){o.push([e,t])}if(t){for(var c=0,u=t;c<u.length;c++){var l=u[c];handleImport(l)}}return{importSearches:o,singleReferences:s};function handleImport(t){if(t.kind===248){if(isExternalModuleImportEquals(t)){handleNamespaceImportLike(t.name)}return}if(t.kind===72){handleNamespaceImportLike(t);return}if(t.kind===183){if(t.qualifier){if(e.isIdentifier(t.qualifier)&&t.qualifier.escapedText===e.symbolName(r)){s.push(t.qualifier)}}else if(n===2){s.push(t.argument.literal)}return}if(t.moduleSpecifier.kind!==10){return}if(t.kind===255){searchForNamedImport(t.exportClause);return}var o=t.importClause||{name:undefined,namedBindings:undefined},c=o.name,u=o.namedBindings;if(u){switch(u.kind){case 251:handleNamespaceImportLike(u.name);break;case 252:if(n===0||n===1){searchForNamedImport(u)}break;default:e.Debug.assertNever(u)}}if(c&&(n===1||n===2)&&(!a||c.escapedText===e.symbolEscapedNameNoDefault(r))){var l=i.getSymbolAtLocation(c);addSearch(c,l)}}function handleNamespaceImportLike(e){if(n===2&&(!a||isNameMatch(e.escapedText))){addSearch(e,i.getSymbolAtLocation(e))}}function searchForNamedImport(e){if(!e){return}for(var t=0,n=e.elements;t<n.length;t++){var o=n[t];var c=o.name,u=o.propertyName;if(!isNameMatch((u||c).escapedText)){continue}if(u){s.push(u);if(!a||c.escapedText===r.escapedName){addSearch(c,i.getSymbolAtLocation(c))}}else{var l=o.kind===257&&o.propertyName?i.getExportSpecifierLocalTargetSymbol(o):i.getSymbolAtLocation(c);addSearch(c,l)}}}function isNameMatch(e){return e===r.escapedName||n!==0&&e==="default"}}function findNamespaceReExports(t,r,n){var i=n.getSymbolAtLocation(r);return!!forEachPossibleImportOrExportStatement(t,function(t){if(!e.isExportDeclaration(t))return;var r=t.exportClause,a=t.moduleSpecifier;return!a&&r&&r.elements.some(function(e){return n.getExportSpecifierLocalTargetSymbol(e)===i})})}function findModuleReferences(e,t,r){var n=[];var i=e.getTypeChecker();for(var a=0,o=t;a<o.length;a++){var s=o[a];var c=r.valueDeclaration;if(c.kind===279){for(var u=0,l=s.referencedFiles;u<l.length;u++){var f=l[u];if(e.getSourceFileFromReference(s,f)===c){n.push({kind:"reference",referencingFile:s,ref:f})}}for(var d=0,p=s.typeReferenceDirectives;d<p.length;d++){var f=p[d];var g=e.getResolvedTypeReferenceDirectives().get(f.fileName);if(g!==undefined&&g.resolvedFileName===c.fileName){n.push({kind:"reference",referencingFile:s,ref:f})}}}forEachImport(s,function(e,t){var a=i.getSymbolAtLocation(t);if(a===r){n.push({kind:"import",literal:t})}})}return n}t.findModuleReferences=findModuleReferences;function getDirectImportsMap(t,r,n){var i=e.createMap();for(var a=0,o=t;a<o.length;a++){var s=o[a];if(n)n.throwIfCancellationRequested();forEachImport(s,function(t,n){var a=r.getSymbolAtLocation(n);if(a){var o=e.getSymbolId(a).toString();var s=i.get(o);if(!s){i.set(o,s=[])}s.push(t)}})}return i}function forEachPossibleImportOrExportStatement(t,r){return e.forEach(t.kind===279?t.statements:t.body.statements,function(t){return r(t)||isAmbientModuleDeclaration(t)&&e.forEach(t.body&&t.body.statements,r)})}function forEachImport(t,r){if(t.externalModuleIndicator||t.imports!==undefined){for(var n=0,i=t.imports;n<i.length;n++){var a=i[n];r(e.importFromModuleSpecifier(a),a)}}else{forEachPossibleImportOrExportStatement(t,function(t){switch(t.kind){case 255:case 249:{var n=t;if(n.moduleSpecifier&&e.isStringLiteral(n.moduleSpecifier)){r(n,n.moduleSpecifier)}break}case 248:{var n=t;if(isExternalModuleImportEquals(n)){r(n,n.moduleReference.expression)}break}}})}}function getImportOrExportSymbol(t,r,n,i){return i?getExport():getExport()||getImport();function getExport(){var a=t.parent;var o=a.parent;if(r.exportSymbol){if(a.kind===189){return r.declarations.some(function(e){return e===a})&&e.isBinaryExpression(o)?getSpecialPropertyExport(o,false):undefined}else{return exportInfo(r.exportSymbol,getExportKindForDeclaration(a))}}else{var s=getExportNode(a,t);if(s&&e.hasModifier(s,1)){if(e.isImportEqualsDeclaration(s)&&s.moduleReference===t){if(i){return undefined}var c=n.getSymbolAtLocation(s.name);return{kind:0,symbol:c}}else{return exportInfo(r,getExportKindForDeclaration(s))}}else if(e.isExportAssignment(a)){return getExportAssignmentExport(a)}else if(e.isExportAssignment(o)){return getExportAssignmentExport(o)}else if(e.isBinaryExpression(a)){return getSpecialPropertyExport(a,true)}else if(e.isBinaryExpression(o)){return getSpecialPropertyExport(o,true)}else if(e.isJSDocTypedefTag(a)){return exportInfo(r,0)}}function getExportAssignmentExport(t){var n=e.Debug.assertDefined(t.symbol.parent,"Expected export symbol to have a parent");var i=t.isExportEquals?2:1;return{kind:1,symbol:r,exportInfo:{exportingModuleSymbol:n,exportKind:i}}}function getSpecialPropertyExport(t,i){var a;switch(e.getAssignmentDeclarationKind(t)){case 1:a=0;break;case 2:a=2;break;default:return undefined}var o=i?n.getSymbolAtLocation(e.cast(t.left,e.isPropertyAccessExpression).name):r;if(o&&!(n.getMergedSymbol(o.parent).flags&1536)){e.Debug.fail("Special property assignment kind does not have a module as its parent. Assignment is "+e.Debug.showSymbol(o)+", parent is "+e.Debug.showSymbol(o.parent))}return o&&exportInfo(o,a)}}function getImport(){var i=isNodeImport(t);if(!i)return undefined;var a=n.getImmediateAliasedSymbol(r);if(!a)return undefined;a=skipExportSpecifierSymbol(a,n);if(a.escapedName==="export="){a=getExportEqualsLocalSymbol(a,n)}var o=e.symbolEscapedNameNoDefault(a);if(o===undefined||o==="default"||o===r.escapedName){return{kind:0,symbol:a}}}function exportInfo(e,t){var r=getExportInfo(e,t,n);return r&&{kind:1,symbol:e,exportInfo:r}}function getExportKindForDeclaration(t){return e.hasModifier(t,512)?1:0}}t.getImportOrExportSymbol=getImportOrExportSymbol;function getExportEqualsLocalSymbol(t,r){if(t.flags&2097152){return e.Debug.assertDefined(r.getImmediateAliasedSymbol(t))}var n=t.valueDeclaration;if(e.isExportAssignment(n)){return e.Debug.assertDefined(n.expression.symbol)}else if(e.isBinaryExpression(n)){return e.Debug.assertDefined(n.right.symbol)}else if(e.isSourceFile(n)){return e.Debug.assertDefined(n.symbol)}return e.Debug.fail()}function getExportNode(e,t){if(e.kind===237){var r=e;return r.name!==t?undefined:r.parent.kind===274?undefined:r.parent.parent.kind===219?r.parent.parent:undefined}else{return e}}function isNodeImport(t){var r=t.parent;switch(r.kind){case 248:return r.name===t&&isExternalModuleImportEquals(r);case 253:return!r.propertyName;case 250:case 251:e.Debug.assert(r.name===t);return true;default:return false}}function getExportInfo(t,r,n){var i=t.parent;if(!i)return undefined;var a=n.getMergedSymbol(i);return e.isExternalModuleSymbol(a)?{exportingModuleSymbol:a,exportKind:r}:undefined}t.getExportInfo=getExportInfo;function skipExportSpecifierSymbol(t,r){if(t.declarations){for(var n=0,i=t.declarations;n<i.length;n++){var a=i[n];if(e.isExportSpecifier(a)&&!a.propertyName&&!a.parent.parent.moduleSpecifier){return r.getExportSpecifierLocalTargetSymbol(a)}}}return t}function getContainingModuleSymbol(e,t){return t.getMergedSymbol(getSourceFileLikeForImportDeclaration(e).symbol)}function getSourceFileLikeForImportDeclaration(t){if(t.kind===191){return t.getSourceFile()}var r=t.parent;if(r.kind===279){return r}e.Debug.assert(r.kind===245);return e.cast(r.parent,isAmbientModuleDeclaration)}function isAmbientModuleDeclaration(e){return e.kind===244&&e.name.kind===10}function isExternalModuleImportEquals(e){return e.moduleReference.kind===259&&e.moduleReference.expression.kind===10}})(t=e.FindAllReferences||(e.FindAllReferences={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["Symbol"]=0]="Symbol";e[e["Label"]=1]="Label";e[e["Keyword"]=2]="Keyword";e[e["This"]=3]="This";e[e["String"]=4]="String"})(r=t.DefinitionKind||(t.DefinitionKind={}));var i;(function(e){e[e["Span"]=0]="Span";e[e["Node"]=1]="Node";e[e["StringLiteral"]=2]="StringLiteral";e[e["SearchedLocalFoundProperty"]=3]="SearchedLocalFoundProperty";e[e["SearchedPropertyFoundLocal"]=4]="SearchedPropertyFoundLocal"})(i=t.EntryKind||(t.EntryKind={}));function nodeEntry(e,t){if(t===void 0){t=1}return{kind:t,node:e.name||e}}t.nodeEntry=nodeEntry;function findReferencedSymbols(r,n,i,a,o){var s=e.getTouchingPropertyName(a,o);var c=t.Core.getReferencedSymbolsForNode(o,s,r,i,n);var u=r.getTypeChecker();return!c||!c.length?undefined:e.mapDefined(c,function(e){var t=e.definition,r=e.references;return t&&{definition:u.runWithCancellationToken(n,function(e){return definitionToReferencedSymbolDefinitionInfo(t,e,s)}),references:r.map(toReferenceEntry)}})}t.findReferencedSymbols=findReferencedSymbols;function getImplementationsAtPosition(t,r,n,i,a){var o=e.getTouchingPropertyName(i,a);var s=getImplementationReferenceEntries(t,r,n,o,a);var c=t.getTypeChecker();return e.map(s,function(e){return toImplementationLocation(e,c)})}t.getImplementationsAtPosition=getImplementationsAtPosition;function getImplementationReferenceEntries(r,n,i,a,o){if(a.kind===279){return undefined}var s=r.getTypeChecker();if(a.parent.kind===276){var c=[];t.Core.getReferenceEntriesForShorthandPropertyAssignment(a,s,function(e){return c.push(nodeEntry(e))});return c}else if(a.kind===98||e.isSuperProperty(a.parent)){var u=s.getSymbolAtLocation(a);return u.valueDeclaration&&[nodeEntry(u.valueDeclaration)]}else{return getReferenceEntriesForNode(o,a,r,i,n,{implementations:true})}}function findReferenceOrRenameEntries(r,n,i,a,o,s,c){return e.map(flattenEntries(t.Core.getReferencedSymbolsForNode(o,a,r,i,n,s)),function(e){return c(e,a,r.getTypeChecker())})}t.findReferenceOrRenameEntries=findReferenceOrRenameEntries;function getReferenceEntriesForNode(r,n,i,a,o,s,c){if(s===void 0){s={}}if(c===void 0){c=e.arrayToSet(a,function(e){return e.fileName})}return flattenEntries(t.Core.getReferencedSymbolsForNode(r,n,i,a,o,s,c))}t.getReferenceEntriesForNode=getReferenceEntriesForNode;function flattenEntries(t){return t&&e.flatMap(t,function(e){return e.references})}function definitionToReferencedSymbolDefinitionInfo(t,r,n){var i=function(){switch(t.type){case 0:{var i=t.symbol;var a=getDefinitionKindAndDisplayParts(i,r,n),o=a.displayParts,s=a.kind;var c=o.map(function(e){return e.text}).join("");return{node:i.declarations?e.getNameOfDeclaration(e.first(i.declarations))||e.first(i.declarations):n,name:c,kind:s,displayParts:o}}case 1:{var u=t.node;return{node:u,name:u.text,kind:"label",displayParts:[e.displayPart(u.text,e.SymbolDisplayPartKind.text)]}}case 2:{var l=t.node;var f=e.tokenToString(l.kind);return{node:l,name:f,kind:"keyword",displayParts:[{text:f,kind:"keyword"}]}}case 3:{var d=t.node;var i=r.getSymbolAtLocation(d);var p=i&&e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(r,i,d.getSourceFile(),e.getContainerNode(d),d).displayParts||[e.textPart("this")];return{node:d,name:"this",kind:"var",displayParts:p}}case 4:{var g=t.node;return{node:g,name:g.text,kind:"var",displayParts:[e.displayPart(e.getTextOfNode(g),e.SymbolDisplayPartKind.stringLiteral)]}}default:return e.Debug.assertNever(t)}}();var a=i.node,o=i.name,s=i.kind,c=i.displayParts;var u=a.getSourceFile();return{containerKind:"",containerName:"",fileName:u.fileName,kind:s,name:o,textSpan:getTextSpan(e.isComputedPropertyName(a)?a.expression:a,u),displayParts:c}}function getDefinitionKindAndDisplayParts(r,n,i){var a=t.Core.getIntersectingMeaningFromDeclarations(i,r);var o=r.declarations&&e.firstOrUndefined(r.declarations)||i;var s=e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(n,r,o.getSourceFile(),o,o,a),c=s.displayParts,u=s.symbolKind;return{displayParts:c,kind:u}}function toRenameLocation(e,t,r){return n({},entryToDocumentSpan(e),getPrefixAndSuffixText(e,t,r))}t.toRenameLocation=toRenameLocation;function toReferenceEntry(t){var r=entryToDocumentSpan(t),n=r.textSpan,i=r.fileName;if(t.kind===0){return{textSpan:n,fileName:i,isWriteAccess:false,isDefinition:false}}var a=t.kind,o=t.node;return{textSpan:n,fileName:i,isWriteAccess:isWriteAccessForReference(o),isDefinition:o.kind===80||!!e.getDeclarationFromName(o)||e.isLiteralComputedPropertyDeclarationName(o),isInString:a===2?true:undefined}}t.toReferenceEntry=toReferenceEntry;function entryToDocumentSpan(e){if(e.kind===0){return{textSpan:e.textSpan,fileName:e.fileName}}else{var t=e.node.getSourceFile();return{textSpan:getTextSpan(e.node,t),fileName:t.fileName}}}function getPrefixAndSuffixText(t,r,n){if(t.kind!==0&&e.isIdentifier(r)){var i=t.node,a=t.kind;var o=r.text;var s=e.isShorthandPropertyAssignment(i.parent);if(s||e.isObjectBindingElementWithoutPropertyName(i.parent)){var c={prefixText:o+": "};var u={suffixText:": "+o};return a===3?c:a===4?u:s?u:c}else if(e.isImportSpecifier(t.node.parent)&&!t.node.parent.propertyName){var l=e.isExportSpecifier(r.parent)?n.getExportSpecifierLocalTargetSymbol(r.parent):n.getSymbolAtLocation(r);return e.contains(l.declarations,t.node.parent)?{prefixText:o+" as "}:e.emptyOptions}else if(e.isExportSpecifier(t.node.parent)&&!t.node.parent.propertyName){return r===t.node?{prefixText:o+" as "}:{suffixText:" as "+o}}}return e.emptyOptions}function toImplementationLocation(e,t){if(e.kind!==0){var r=e.node;var i=r.getSourceFile();return n({textSpan:getTextSpan(r,i),fileName:i.fileName},implementationKindDisplayParts(r,t))}else{var a=e.textSpan,o=e.fileName;return{textSpan:a,fileName:o,kind:"",displayParts:[]}}}function implementationKindDisplayParts(t,r){var n=r.getSymbolAtLocation(e.isDeclaration(t)&&t.name?t.name:t);if(n){return getDefinitionKindAndDisplayParts(n,r,t)}else if(t.kind===188){return{kind:"interface",displayParts:[e.punctuationPart(20),e.textPart("object literal"),e.punctuationPart(21)]}}else if(t.kind===209){return{kind:"local class",displayParts:[e.punctuationPart(20),e.textPart("anonymous local class"),e.punctuationPart(21)]}}else{return{kind:e.getNodeKind(t),displayParts:[]}}}function toHighlightSpan(e){if(e.kind===0){var t=e.fileName,r=e.textSpan;return{fileName:t,span:{textSpan:r,kind:"reference"}}}var n=e.node,i=e.kind;var a=n.getSourceFile();var o=isWriteAccessForReference(n);var s={textSpan:getTextSpan(n,a),kind:o?"writtenReference":"reference",isInString:i===2?true:undefined};return{fileName:a.fileName,span:s}}t.toHighlightSpan=toHighlightSpan;function getTextSpan(t,r){var n=t.getStart(r);var i=t.getEnd();if(t.kind===10){n+=1;i-=1}return e.createTextSpanFromBounds(n,i)}function isWriteAccessForReference(t){var r=e.getDeclarationFromName(t);return!!r&&declarationIsWriteAccess(r)||t.kind===80||e.isWriteAccess(t)}function declarationIsWriteAccess(t){if(!!(t.flags&4194304))return true;switch(t.kind){case 204:case 186:case 240:case 209:case 80:case 243:case 278:case 257:case 250:case 248:case 253:case 241:case 297:case 304:case 267:case 244:case 247:case 251:case 151:case 276:case 242:case 150:return true;case 275:return!e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent);case 239:case 196:case 157:case 156:case 158:case 159:return!!t.body;case 237:case 154:return!!t.initializer||e.isCatchClause(t.parent);case 155:case 153:case 305:case 299:return false;default:return e.Debug.failBadSyntaxKind(t)}}})(t=e.FindAllReferences||(e.FindAllReferences={}))})(s||(s={}));(function(e){var t;(function(t){var r;(function(r){function getReferencedSymbolsForNode(t,r,n,i,a,o,s){if(o===void 0){o={}}if(s===void 0){s=e.arrayToSet(i,function(e){return e.fileName})}if(e.isSourceFile(r)){var c=e.GoToDefinition.getReferenceAtPosition(r,t,n);var u=c&&n.getTypeChecker().getMergedSymbol(c.file.symbol);return u&&getReferencedSymbolsForModule(n,u,false,i,s)}if(!o.implementations){var l=getReferencedSymbolsSpecial(r,i,a);if(l){return l}}var f=n.getTypeChecker();var d=f.getSymbolAtLocation(r);if(!d){return!o.implementations&&e.isStringLiteral(r)?getReferencesForStringLiteral(r,i,a):undefined}if(d.escapedName==="export="){return getReferencedSymbolsForModule(n,d.parent,false,i,s)}var p=e.emptyArray;var g=isModuleSymbol(d);var _=r;if(g){var m=d.exports.get("export=");p=getReferencedSymbolsForModule(n,d,!!m,i,s);if(!m||!s.has(g.fileName))return p;d=e.skipAlias(m,f);_=undefined}return e.concatenate(p,getReferencedSymbolsForSymbol(d,_,i,s,f,a,o))}r.getReferencedSymbolsForNode=getReferencedSymbolsForNode;function isModuleSymbol(t){return t.flags&1536?e.find(t.declarations,e.isSourceFile):undefined}function getReferencedSymbolsForModule(r,n,i,a,o){e.Debug.assert(!!n.valueDeclaration);var s=e.mapDefined(t.findModuleReferences(r,a,n),function(r){if(r.kind==="import"){var n=r.literal.parent;if(e.isLiteralTypeNode(n)){var a=e.cast(n.parent,e.isImportTypeNode);if(i&&!a.qualifier){return undefined}}return t.nodeEntry(r.literal)}else{return{kind:0,fileName:r.referencingFile.fileName,textSpan:e.createTextSpanFromRange(r.ref)}}});for(var c=0,u=n.declarations;c<u.length;c++){var l=u[c];switch(l.kind){case 279:break;case 244:if(o.has(l.getSourceFile().fileName)){s.push(t.nodeEntry(l.name))}break;default:e.Debug.fail("Expected a module symbol to be declared by a SourceFile or ModuleDeclaration.")}}var f=n.exports.get("export=");if(f){for(var d=0,p=f.declarations;d<p.length;d++){var l=p[d];var g=l.getSourceFile();if(o.has(g.fileName)){var _=e.isBinaryExpression(l)&&e.isPropertyAccessExpression(l.left)?l.left.expression:e.isExportAssignment(l)?e.Debug.assertDefined(e.findChildOfKind(l,85,g)):e.getNameOfDeclaration(l)||l;s.push(t.nodeEntry(_))}}}return s.length?[{definition:{type:0,symbol:n},references:s}]:e.emptyArray}function getReferencedSymbolsSpecial(t,r,n){if(e.isTypeKeyword(t.kind)){return getAllReferencesForKeyword(r,t.kind,n)}if(e.isJumpStatementTarget(t)){var i=e.getTargetLabel(t.parent,t.text);return i&&getLabelReferencesInNode(i.parent,i)}else if(e.isLabelOfLabeledStatement(t)){return getLabelReferencesInNode(t.parent,t)}if(e.isThis(t)){return getReferencesForThisKeyword(t,r,n)}if(t.kind===98){return getReferencesForSuperKeyword(t)}return undefined}function getReferencedSymbolsForSymbol(t,r,n,a,o,s,c){var u=r&&skipPastExportOrImportSpecifierOrUnion(t,r,o,!!c.isForRename)||t;var l=r?getIntersectingMeaningFromDeclarations(r,u):7;var f=[];var d=new i(n,a,r?getSpecialSearchKind(r):0,o,s,l,c,f);var p=!c.isForRename?undefined:e.find(u.declarations,e.isExportSpecifier);if(p){getReferencesAtExportSpecifier(p.name,u,p,d.createSearch(r,t,undefined),d,true,true)}else if(r&&r.kind===80){addReference(r,u,d);searchForImportsOfExport(r,u,{exportingModuleSymbol:e.Debug.assertDefined(u.parent,"Expected export symbol to have a parent"),exportKind:1},d)}else{var g=d.createSearch(r,u,undefined,{allSearchSymbols:r?populateSearchSymbolSet(u,r,o,!!c.isForRename,!!c.implementations):[u]});var _=getSymbolScope(u);if(_){getReferencesInContainer(_,_.getSourceFile(),g,d,!(e.isSourceFile(_)&&!e.contains(n,_)))}else{for(var m=0,y=d.sourceFiles;m<y.length;m++){var h=y[m];d.cancellationToken.throwIfCancellationRequested();searchForName(h,g,d)}}}return f}function getSpecialSearchKind(t){switch(t.kind){case 124:return 1;case 72:if(e.isClassLike(t.parent)){e.Debug.assert(t.parent.name===t);return 2}default:return 0}}function skipPastExportOrImportSpecifierOrUnion(t,r,n,i){var a=r.parent;if(e.isExportSpecifier(a)&&!i){return getLocalSymbolForExportSpecifier(r,t,a,n)}return e.firstDefined(t.declarations,function(i){if(!i.parent){e.Debug.fail("Unexpected symbol at "+e.Debug.showSyntaxKind(r)+": "+e.Debug.showSymbol(t))}return e.isTypeLiteralNode(i.parent)&&e.isUnionTypeNode(i.parent.parent)?n.getPropertyOfType(n.getTypeFromTypeNode(i.parent.parent),t.name):undefined})}var n;(function(e){e[e["None"]=0]="None";e[e["Constructor"]=1]="Constructor";e[e["Class"]=2]="Class"})(n||(n={}));var i=function(){function State(t,r,n,i,a,o,s,c){this.sourceFiles=t;this.sourceFilesSet=r;this.specialSearchKind=n;this.checker=i;this.cancellationToken=a;this.searchMeaning=o;this.options=s;this.result=c;this.inheritsFromCache=e.createMap();this.markSeenContainingTypeReference=e.nodeSeenTracker();this.markSeenReExportRHS=e.nodeSeenTracker();this.symbolIdToReferences=[];this.sourceFileToSeenSymbols=[]}State.prototype.includesSourceFile=function(e){return this.sourceFilesSet.has(e.fileName)};State.prototype.getImportSearches=function(e,r){if(!this.importTracker)this.importTracker=t.createImportTracker(this.sourceFiles,this.sourceFilesSet,this.checker,this.cancellationToken);return this.importTracker(e,r,!!this.options.isForRename)};State.prototype.createSearch=function(t,r,n,i){if(i===void 0){i={}}var a=i.text,o=a===void 0?e.stripQuotes(e.unescapeLeadingUnderscores((e.getLocalSymbolForExportDefault(r)||r).escapedName)):a,s=i.allSearchSymbols,c=s===void 0?[r]:s;var u=e.escapeLeadingUnderscores(o);var l=this.options.implementations&&t?getParentSymbolsOfPropertyAccess(t,r,this.checker):undefined;return{symbol:r,comingFrom:n,text:o,escapedText:u,parents:l,allSearchSymbols:c,includes:function(t){return e.contains(c,t)}}};State.prototype.referenceAdder=function(r){var n=e.getSymbolId(r);var i=this.symbolIdToReferences[n];if(!i){i=this.symbolIdToReferences[n]=[];this.result.push({definition:{type:0,symbol:r},references:i})}return function(e,r){return i.push(t.nodeEntry(e,r))}};State.prototype.addStringOrCommentReference=function(e,t){this.result.push({definition:undefined,references:[{kind:0,fileName:e,textSpan:t}]})};State.prototype.markSearchedSymbols=function(t,r){var n=e.getNodeId(t);var i=this.sourceFileToSeenSymbols[n]||(this.sourceFileToSeenSymbols[n]=e.createMap());var a=false;for(var o=0,s=r;o<s.length;o++){var c=s[o];a=e.addToSeen(i,e.getSymbolId(c))||a}return a};return State}();function searchForImportsOfExport(e,t,r,n){var i=n.getImportSearches(t,r),a=i.importSearches,o=i.singleReferences,s=i.indirectUsers;if(o.length){var c=n.referenceAdder(t);for(var u=0,l=o;u<l.length;u++){var f=l[u];if(shouldAddSingleReference(f,n))c(f)}}for(var d=0,p=a;d<p.length;d++){var g=p[d],_=g[0],m=g[1];getReferencesInSourceFile(_.getSourceFile(),n.createSearch(_,m,1),n)}if(s.length){var y=void 0;switch(r.exportKind){case 0:y=n.createSearch(e,t,1);break;case 1:y=n.options.isForRename?undefined:n.createSearch(e,t,1,{text:"default"});break;case 2:break}if(y){for(var h=0,v=s;h<v.length;h++){var T=v[h];searchForName(T,y,n)}}}}function eachExportReference(r,n,i,a,o,s,c,u){var l=t.createImportTracker(r,e.arrayToSet(r,function(e){return e.fileName}),n,i);var f=l(a,{exportKind:c?1:0,exportingModuleSymbol:o},false),d=f.importSearches,p=f.indirectUsers;for(var g=0,_=d;g<_.length;g++){var m=_[g][0];u(m)}for(var y=0,h=p;y<h.length;y++){var v=h[y];for(var T=0,S=getPossibleSymbolReferenceNodes(v,c?"default":s);T<S.length;T++){var b=S[T];if(e.isIdentifier(b)&&!e.isImportOrExportSpecifier(b.parent)&&n.getSymbolAtLocation(b)===a){u(b)}}}}r.eachExportReference=eachExportReference;function shouldAddSingleReference(t,r){if(!hasMatchingMeaning(t,r))return false;if(!r.options.isForRename)return true;if(!e.isIdentifier(t))return false;return!(e.isImportOrExportSpecifier(t.parent)&&t.escapedText==="default")}function searchForImportedSymbol(e,t){for(var r=0,n=e.declarations;r<n.length;r++){var i=n[r];var a=i.getSourceFile();getReferencesInSourceFile(a,t.createSearch(i,e,0),t,t.includesSourceFile(a))}}function searchForName(t,r,n){if(e.getNameTable(t).get(r.escapedText)!==undefined){getReferencesInSourceFile(t,r,n)}}function getPropertySymbolOfDestructuringAssignment(t,r){return e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent.parent)?r.getPropertySymbolOfDestructuringAssignment(t):undefined}function getSymbolScope(t){var r=t.declarations,n=t.flags,i=t.parent,a=t.valueDeclaration;if(a&&(a.kind===196||a.kind===209)){return a}if(!r){return undefined}if(n&(4|8192)){var o=e.find(r,function(t){return e.hasModifier(t,8)});if(o){return e.getAncestor(o,240)}return undefined}if(r.some(e.isObjectBindingElementWithoutPropertyName)){return undefined}var s=i&&!(t.flags&262144);if(s&&!(e.isExternalModuleSymbol(i)&&!i.globalExports)){return undefined}var c;for(var u=0,l=r;u<l.length;u++){var f=l[u];var d=e.getContainerNode(f);if(c&&c!==d){return undefined}if(!d||d.kind===279&&!e.isExternalOrCommonJsModule(d)){return undefined}c=d}return s?c.getSourceFile():c}function isSymbolReferencedInFile(e,t,r){return eachSymbolReferenceInFile(e,t,r,function(){return true})||false}r.isSymbolReferencedInFile=isSymbolReferencedInFile;function eachSymbolReferenceInFile(t,r,n,i){var a=e.isParameterPropertyDeclaration(t.parent)?e.first(r.getSymbolsOfParameterPropertyDeclaration(t.parent,t.text)):r.getSymbolAtLocation(t);if(!a)return undefined;for(var o=0,s=getPossibleSymbolReferenceNodes(n,a.name);o<s.length;o++){var c=s[o];if(!e.isIdentifier(c)||c===t||c.escapedText!==t.escapedText)continue;var u=r.getSymbolAtLocation(c);if(u===a||r.getShorthandAssignmentValueSymbol(c.parent)===a||e.isExportSpecifier(c.parent)&&getLocalSymbolForExportSpecifier(c,u,c.parent,r)===a){var l=i(c);if(l)return l}}}r.eachSymbolReferenceInFile=eachSymbolReferenceInFile;function eachSignatureCall(t,r,n,i){if(!t.name||!e.isIdentifier(t.name))return;var a=e.Debug.assertDefined(n.getSymbolAtLocation(t.name));for(var o=0,s=r;o<s.length;o++){var c=s[o];for(var u=0,l=getPossibleSymbolReferenceNodes(c,a.name);u<l.length;u++){var f=l[u];if(!e.isIdentifier(f)||f===t.name||f.escapedText!==t.name.escapedText)continue;var d=e.climbPastPropertyAccess(f);var p=d.parent;if(!e.isCallExpression(p)||p.expression!==d)continue;var g=n.getSymbolAtLocation(f);if(g&&n.getRootSymbols(g).some(function(e){return e===a})){i(p)}}}}r.eachSignatureCall=eachSignatureCall;function getPossibleSymbolReferenceNodes(t,r,n){if(n===void 0){n=t}return getPossibleSymbolReferencePositions(t,r,n).map(function(r){return e.getTouchingPropertyName(t,r)})}function getPossibleSymbolReferencePositions(t,r,n){if(n===void 0){n=t}var i=[];if(!r||!r.length){return i}var a=t.text;var o=a.length;var s=r.length;var c=a.indexOf(r,n.pos);while(c>=0){if(c>n.end)break;var u=c+s;if((c===0||!e.isIdentifierPart(a.charCodeAt(c-1),6))&&(u===o||!e.isIdentifierPart(a.charCodeAt(u),6))){i.push(c)}c=a.indexOf(r,c+s+1)}return i}function getLabelReferencesInNode(r,n){var i=r.getSourceFile();var a=n.text;var o=e.mapDefined(getPossibleSymbolReferenceNodes(i,a,r),function(r){return r===n||e.isJumpStatementTarget(r)&&e.getTargetLabel(r,a)===n?t.nodeEntry(r):undefined});return[{definition:{type:1,node:n},references:o}]}function isValidReferencePosition(t,r){switch(t.kind){case 72:return t.text.length===r.length;case 10:{var n=t;return(e.isLiteralNameOfPropertyDeclarationOrIndexAccess(n)||e.isNameOfModuleDeclaration(t)||e.isExpressionOfExternalModuleImportEqualsDeclaration(t)||e.isCallExpression(t.parent)&&e.isBindableObjectDefinePropertyCall(t.parent)&&t.parent.arguments[1]===t)&&n.text.length===r.length}case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t)&&t.text.length===r.length;case 80:return"default".length===r.length;default:return false}}function getAllReferencesForKeyword(r,n,i){var a=e.flatMap(r,function(r){i.throwIfCancellationRequested();return e.mapDefined(getPossibleSymbolReferenceNodes(r,e.tokenToString(n),r),function(e){return e.kind===n?t.nodeEntry(e):undefined})});return a.length?[{definition:{type:2,node:a[0].node},references:a}]:undefined}function getReferencesInSourceFile(e,t,r,n){if(n===void 0){n=true}r.cancellationToken.throwIfCancellationRequested();return getReferencesInContainer(e,e,t,r,n)}function getReferencesInContainer(e,t,r,n,i){if(!n.markSearchedSymbols(t,r.allSearchSymbols)){return}for(var a=0,o=getPossibleSymbolReferencePositions(t,r.text,e);a<o.length;a++){var s=o[a];getReferencesAtLocation(t,s,r,n,i)}}function hasMatchingMeaning(t,r){return!!(e.getMeaningFromLocation(t)&r.searchMeaning)}function getReferencesAtLocation(t,r,n,i,a){var o=e.getTouchingPropertyName(t,r);if(!isValidReferencePosition(o,n.text)){if(!i.options.implementations&&(i.options.findInStrings&&e.isInString(t,r)||i.options.findInComments&&e.isInNonReferenceComment(t,r))){i.addStringOrCommentReference(t.fileName,e.createTextSpan(r,n.text.length))}return}if(!hasMatchingMeaning(o,i))return;var s=i.checker.getSymbolAtLocation(o);if(!s){return}var c=o.parent;if(e.isImportSpecifier(c)&&c.propertyName===o){return}if(e.isExportSpecifier(c)){e.Debug.assert(o.kind===72);getReferencesAtExportSpecifier(o,s,c,n,i,a);return}var u=getRelatedSymbol(n,s,o,i);if(!u){getReferenceForShorthandProperty(s,n,i);return}switch(i.specialSearchKind){case 0:if(a)addReference(o,u,i);break;case 1:addConstructorReferences(o,t,n,i);break;case 2:addClassStaticThisReferences(o,n,i);break;default:e.Debug.assertNever(i.specialSearchKind)}getImportOrExportReferences(o,s,n,i)}function getReferencesAtExportSpecifier(r,n,i,a,o,s,c){var u=i.parent,l=i.propertyName,f=i.name;var d=u.parent;var p=getLocalSymbolForExportSpecifier(r,n,i,o.checker);if(!c&&!a.includes(p)){return}if(!l){if(!(o.options.isForRename&&f.escapedText==="default")){addRef()}}else if(r===l){if(!d.moduleSpecifier){addRef()}if(s&&!o.options.isForRename&&o.markSeenReExportRHS(f)){addReference(f,e.Debug.assertDefined(i.symbol),o)}}else{if(o.markSeenReExportRHS(r)){addRef()}}if(!o.options.isForRename||c){var g=r.originalKeywordKind===80?1:0;var _=e.Debug.assertDefined(i.symbol);var m=e.Debug.assertDefined(t.getExportInfo(_,g,o.checker));searchForImportsOfExport(r,_,m,o)}if(a.comingFrom!==1&&d.moduleSpecifier&&!l&&!o.options.isForRename){var y=o.checker.getExportSpecifierLocalTargetSymbol(i);if(y)searchForImportedSymbol(y,o)}function addRef(){if(s)addReference(r,p,o)}}function getLocalSymbolForExportSpecifier(e,t,r,n){return isExportSpecifierAlias(e,r)&&n.getExportSpecifierLocalTargetSymbol(r)||t}function isExportSpecifierAlias(t,r){var n=r.parent,i=r.propertyName,a=r.name;e.Debug.assert(i===t||a===t);if(i){return i===t}else{return!n.parent.moduleSpecifier}}function getImportOrExportReferences(e,r,n,i){var a=t.getImportOrExportSymbol(e,r,i.checker,n.comingFrom===1);if(!a)return;var o=a.symbol;if(a.kind===0){if(!i.options.isForRename){searchForImportedSymbol(o,i)}}else{searchForImportsOfExport(e,o,a.exportInfo,i)}}function getReferenceForShorthandProperty(t,r,n){var i=t.flags,a=t.valueDeclaration;var o=n.checker.getShorthandAssignmentValueSymbol(a);var s=a&&e.getNameOfDeclaration(a);if(!(i&33554432)&&s&&r.includes(o)){addReference(s,o,n)}}function addReference(e,t,r){var n="kind"in t?t:{kind:undefined,symbol:t},i=n.kind,a=n.symbol;var o=r.referenceAdder(a);if(r.options.implementations){addImplementationReferences(e,o,r)}else{o(e,i)}}function addConstructorReferences(t,r,n,i){if(e.isNewExpressionTarget(t)){addReference(t,n.symbol,i)}var a=function(){return i.referenceAdder(n.symbol)};if(e.isClassLike(t.parent)){e.Debug.assert(t.kind===80||t.parent.name===t);findOwnConstructorReferences(n.symbol,r,a())}else{var o=tryGetClassByExtendingIdentifier(t);if(o){findSuperConstructorAccesses(o,a())}}}function addClassStaticThisReferences(t,r,n){addReference(t,r.symbol,n);var i=t.parent;if(n.options.isForRename||!e.isClassLike(i))return;e.Debug.assert(i.name===t);var a=n.referenceAdder(r.symbol);for(var o=0,s=i.members;o<s.length;o++){var c=s[o];if(!(e.isMethodOrAccessor(c)&&e.hasModifier(c,32))){continue}if(c.body){c.body.forEachChild(function cb(t){if(t.kind===100){a(t)}else if(!e.isFunctionLike(t)&&!e.isClassLike(t)){t.forEachChild(cb)}})}}}function findOwnConstructorReferences(t,r,n){for(var i=0,a=t.members.get("__constructor").declarations;i<a.length;i++){var o=a[i];var s=e.findChildOfKind(o,124,r);e.Debug.assert(o.kind===157&&!!s);n(s)}t.exports.forEach(function(t){var r=t.valueDeclaration;if(r&&r.kind===156){var i=r.body;if(i){forEachDescendantOfKind(i,100,function(t){if(e.isNewExpressionTarget(t)){n(t)}})}}})}function findSuperConstructorAccesses(t,r){var n=t.symbol.members.get("__constructor");if(!n){return}for(var i=0,a=n.declarations;i<a.length;i++){var o=a[i];e.Debug.assert(o.kind===157);var s=o.body;if(s){forEachDescendantOfKind(s,98,function(t){if(e.isCallExpressionTarget(t)){r(t)}})}}}function addImplementationReferences(t,r,n){if(e.isDeclarationName(t)&&isImplementation(t.parent)){r(t);return}if(t.kind!==72){return}if(t.parent.kind===276){getReferenceEntriesForShorthandPropertyAssignment(t,n.checker,r)}var i=getContainingClassIfInHeritageClause(t);if(i){r(i);return}var a=e.findAncestor(t,function(t){return!e.isQualifiedName(t.parent)&&!e.isTypeNode(t.parent)&&!e.isTypeElement(t.parent)});var o=a.parent;if(e.hasType(o)&&o.type===a&&n.markSeenContainingTypeReference(o)){if(e.hasInitializer(o)){addIfImplementation(o.initializer)}else if(e.isFunctionLike(o)&&o.body){var s=o.body;if(s.kind===218){e.forEachReturnStatement(s,function(e){if(e.expression)addIfImplementation(e.expression)})}else{addIfImplementation(s)}}else if(e.isAssertionExpression(o)){addIfImplementation(o.expression)}}function addIfImplementation(e){if(isImplementationExpression(e))r(e)}}function getContainingClassIfInHeritageClause(t){return e.isIdentifier(t)||e.isPropertyAccessExpression(t)?getContainingClassIfInHeritageClause(t.parent):e.isExpressionWithTypeArguments(t)?e.tryCast(t.parent.parent,e.isClassLike):undefined}function isImplementationExpression(e){switch(e.kind){case 195:return isImplementationExpression(e.expression);case 197:case 196:case 188:case 209:case 187:return true;default:return false}}function explicitlyInheritsFrom(t,r,n,i){if(t===r){return true}var a=e.getSymbolId(t)+","+e.getSymbolId(r);var o=n.get(a);if(o!==undefined){return o}n.set(a,false);var s=t.declarations.some(function(t){return e.getAllSuperTypeNodes(t).some(function(e){var t=i.getTypeAtLocation(e);return!!t&&!!t.symbol&&explicitlyInheritsFrom(t.symbol,r,n,i)})});n.set(a,s);return s}function getReferencesForSuperKeyword(r){var n=e.getSuperContainer(r,false);if(!n){return undefined}var i=32;switch(n.kind){case 154:case 153:case 156:case 155:case 157:case 158:case 159:i&=e.getModifierFlags(n);n=n.parent;break;default:return undefined}var a=n.getSourceFile();var o=e.mapDefined(getPossibleSymbolReferenceNodes(a,"super",n),function(r){if(r.kind!==98){return}var a=e.getSuperContainer(r,false);return a&&(32&e.getModifierFlags(a))===i&&a.parent.symbol===n.symbol?t.nodeEntry(r):undefined});return[{definition:{type:0,symbol:n.symbol},references:o}]}function getReferencesForThisKeyword(r,n,i){var a=e.getThisContainer(r,false);var o=32;switch(a.kind){case 156:case 155:if(e.isObjectLiteralMethod(a)){break}case 154:case 153:case 157:case 158:case 159:o&=e.getModifierFlags(a);a=a.parent;break;case 279:if(e.isExternalModule(a)){return undefined}case 239:case 196:break;default:return undefined}var s=e.flatMap(a.kind===279?n:[a.getSourceFile()],function(t){i.throwIfCancellationRequested();return getPossibleSymbolReferenceNodes(t,"this",e.isSourceFile(a)?t:a).filter(function(t){if(!e.isThis(t)){return false}var r=e.getThisContainer(t,false);switch(a.kind){case 196:case 239:return a.symbol===r.symbol;case 156:case 155:return e.isObjectLiteralMethod(a)&&a.symbol===r.symbol;case 209:case 240:return r.parent&&a.symbol===r.parent.symbol&&(e.getModifierFlags(r)&32)===o;case 279:return r.kind===279&&!e.isExternalModule(r)}})}).map(function(e){return t.nodeEntry(e)});var c=e.firstDefined(s,function(t){return e.isParameter(t.node.parent)?t.node:undefined});return[{definition:{type:3,node:c||r},references:s}]}function getReferencesForStringLiteral(r,n,i){var a=e.flatMap(n,function(n){i.throwIfCancellationRequested();return e.mapDefined(getPossibleSymbolReferenceNodes(n,r.text),function(n){return e.isStringLiteral(n)&&n.text===r.text?t.nodeEntry(n,2):undefined})});return[{definition:{type:4,node:r},references:a}]}function populateSearchSymbolSet(e,t,r,n,i){var a=[];forEachRelatedSymbol(e,t,r,n,function(e,t,r){a.push(r||t||e)},function(){return!i});return a}function forEachRelatedSymbol(t,r,n,i,a,o){var s=e.getContainingObjectLiteralElement(r);if(s){var c=n.getShorthandAssignmentValueSymbol(r.parent);if(c&&i){return a(c,undefined,undefined,3)}var u=n.getContextualType(s.parent);var l=u&&e.firstDefined(e.getPropertySymbolsFromContextualType(s,n,u,true),function(e){return fromRoot(e,4)});if(l)return l;var f=getPropertySymbolOfDestructuringAssignment(r,n);var d=f&&a(f,undefined,undefined,4);if(d)return d;var p=c&&a(c,undefined,undefined,3);if(p)return p}var g=fromRoot(t);if(g)return g;if(t.valueDeclaration&&e.isParameterPropertyDeclaration(t.valueDeclaration)){var _=n.getSymbolsOfParameterPropertyDeclaration(e.cast(t.valueDeclaration,e.isParameter),t.name);e.Debug.assert(_.length===2&&!!(_[0].flags&1)&&!!(_[1].flags&4));return fromRoot(t.flags&1?_[1]:_[0])}if(!i){var m=e.isObjectBindingElementWithoutPropertyName(r.parent)?e.getPropertySymbolFromBindingElement(n,r.parent):undefined;return m&&fromRoot(m,4)}function fromRoot(t,r){return e.firstDefined(n.getRootSymbols(t),function(i){return a(t,i,undefined,r)||(i.parent&&i.parent.flags&(32|64)&&o(i)?e.getPropertySymbolsFromBaseTypes(i.parent,i.name,n,function(e){return a(t,i,e,r)}):undefined)})}}function getRelatedSymbol(t,r,n,i){var a=i.checker;return forEachRelatedSymbol(r,n,a,false,function(r,n,i,a){return t.includes(i||n||r)?{symbol:n&&!(e.getCheckFlags(r)&6)?n:r,kind:a}:undefined},function(e){return!(t.parents&&!t.parents.some(function(t){return explicitlyInheritsFrom(e.parent,t,i.inheritsFromCache,a)}))})}function getIntersectingMeaningFromDeclarations(t,r){var n=e.getMeaningFromLocation(t);var i=r.declarations;if(i){var a=void 0;do{a=n;for(var o=0,s=i;o<s.length;o++){var c=s[o];var u=e.getMeaningFromDeclaration(c);if(u&n){n|=u}}}while(n!==a)}return n}r.getIntersectingMeaningFromDeclarations=getIntersectingMeaningFromDeclarations;function isImplementation(t){return!!(t.flags&4194304)||(e.isVariableLike(t)?e.hasInitializer(t):e.isFunctionLikeDeclaration(t)?!!t.body:e.isClassLike(t)||e.isModuleOrEnumDeclaration(t))}function getReferenceEntriesForShorthandPropertyAssignment(t,r,n){var i=r.getSymbolAtLocation(t);var a=r.getShorthandAssignmentValueSymbol(i.valueDeclaration);if(a){for(var o=0,s=a.getDeclarations();o<s.length;o++){var c=s[o];if(e.getMeaningFromDeclaration(c)&1){n(c)}}}}r.getReferenceEntriesForShorthandPropertyAssignment=getReferenceEntriesForShorthandPropertyAssignment;function forEachDescendantOfKind(t,r,n){e.forEachChild(t,function(e){if(e.kind===r){n(e)}forEachDescendantOfKind(e,r,n)})}function tryGetClassByExtendingIdentifier(t){return e.tryGetClassExtendingExpressionWithTypeArguments(e.climbPastPropertyAccess(t).parent)}function getParentSymbolsOfPropertyAccess(t,r,n){var i=e.isRightSideOfPropertyAccess(t)?t.parent:undefined;var a=i&&n.getTypeAtLocation(i.expression);var o=e.mapDefined(a&&(a.isUnionOrIntersection()?a.types:a.symbol===r.parent?undefined:[a]),function(e){return e.symbol&&e.symbol.flags&(32|64)?e.symbol:undefined});return o.length===0?undefined:o}})(r=t.Core||(t.Core={}))})(t=e.FindAllReferences||(e.FindAllReferences={}))})(s||(s={}));var s;(function(e){function getEditsForFileRename(t,r,n,i,a,o,s){var c=e.hostUsesCaseSensitiveFileNames(i);var u=e.createGetCanonicalFileName(c);var l=getPathUpdater(r,n,u,s);var f=getPathUpdater(n,r,u,s);return e.textChanges.ChangeTracker.with({host:i,formatContext:a},function(e){updateTsconfigFiles(t,e,l,r,n,i.getCurrentDirectory(),c);updateImports(t,e,l,f,i,u)})}e.getEditsForFileRename=getEditsForFileRename;function getPathUpdater(t,r,n,i){var a=n(t);return function(e){var t=i&&i.tryGetSourcePosition({fileName:e,pos:0});var r=getUpdatedPath(t?t.fileName:e);return t?r===undefined?undefined:makeCorrespondingRelativeChange(t.fileName,r,e,n):r};function getUpdatedPath(t){if(n(t)===a)return r;var i=e.tryRemoveDirectoryPrefix(t,a,n);return i===undefined?undefined:r+"/"+i}}e.getPathUpdater=getPathUpdater;function makeCorrespondingRelativeChange(t,r,n,i){var a=e.getRelativePathFromFile(t,r,i);return combinePathsSafe(e.getDirectoryPath(n),a)}function updateTsconfigFiles(t,r,n,i,a,o,s){var c=t.getCompilerOptions().configFile;if(!c)return;var u=e.getDirectoryPath(c.fileName);var l=e.getTsConfigObjectLiteralExpression(c);if(!l)return;forEachProperty(l,function(t,n){switch(n){case"files":case"include":case"exclude":{var l=updatePaths(t);if(!l&&n==="include"&&e.isArrayLiteralExpression(t.initializer)){var f=e.mapDefined(t.initializer.elements,function(t){return e.isStringLiteral(t)?t.text:undefined});var d=e.getFileMatcherPatterns(u,[],f,s,o);if(e.getRegexFromPattern(e.Debug.assertDefined(d.includeFilePattern),s).test(i)&&!e.getRegexFromPattern(e.Debug.assertDefined(d.includeFilePattern),s).test(a)){r.insertNodeAfter(c,e.last(t.initializer.elements),e.createStringLiteral(relativePath(a)))}}break}case"compilerOptions":forEachProperty(t.initializer,function(t,r){var n=e.getOptionFromName(r);if(n&&(n.isFilePath||n.type==="list"&&n.element.isFilePath)){updatePaths(t)}else if(r==="paths"){forEachProperty(t.initializer,function(t){if(!e.isArrayLiteralExpression(t.initializer))return;for(var r=0,n=t.initializer.elements;r<n.length;r++){var i=n[r];tryUpdateString(i)}})}});break}});function updatePaths(t){var r=e.isArrayLiteralExpression(t.initializer)?t.initializer.elements:[t.initializer];var n=false;for(var i=0,a=r;i<a.length;i++){var o=a[i];n=tryUpdateString(o)||n}return n}function tryUpdateString(t){if(!e.isStringLiteral(t))return false;var i=combinePathsSafe(u,t.text);var a=n(i);if(a!==undefined){r.replaceRangeWithText(c,createStringRange(t,c),relativePath(a));return true}return false}function relativePath(t){return e.getRelativePathFromDirectory(u,t,!s)}}function updateImports(t,r,n,i,a,o){var s=t.getSourceFiles();var c=function(c){var u=n(c.path);var l=u!==undefined?u:c.path;var f=e.getDirectoryPath(l);var d=i(c.fileName);var p=d||c.fileName;var g=e.getDirectoryPath(p);var _=u!==undefined||d!==undefined;updateImportsWorker(c,r,function(t){if(!e.pathIsRelative(t))return undefined;var r=combinePathsSafe(g,t);var i=n(r);return i===undefined?undefined:e.ensurePathIsNonModuleName(e.getRelativePathFromDirectory(f,i,o))},function(r){var i=t.getTypeChecker().getSymbolAtLocation(r);if(i&&i.declarations.some(function(t){return e.isAmbientModule(t)}))return undefined;var o=d!==undefined?getSourceFileToImportFromResolved(e.resolveModuleName(r.text,p,t.getCompilerOptions(),a),n,a):getSourceFileToImport(i,r,c,t,a,n);return o!==undefined&&(o.updated||_&&e.pathIsRelative(r.text))?e.moduleSpecifiers.updateModuleSpecifier(t.getCompilerOptions(),l,o.newFileName,a,s,t.redirectTargetsMap,r.text):undefined})};for(var u=0,l=s;u<l.length;u++){var f=l[u];c(f)}}function combineNormal(t,r){return e.normalizePath(e.combinePaths(t,r))}function combinePathsSafe(t,r){return e.ensurePathIsNonModuleName(combineNormal(t,r))}function getSourceFileToImport(t,r,n,i,a,o){if(t){var s=e.find(t.declarations,e.isSourceFile).fileName;var c=o(s);return c===undefined?{newFileName:s,updated:false}:{newFileName:c,updated:true}}else{var u=a.resolveModuleNames?a.getResolvedModuleWithFailedLookupLocationsFromCache&&a.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,n.fileName):i.getResolvedModuleWithFailedLookupLocationsFromCache(r.text,n.fileName);return getSourceFileToImportFromResolved(u,o,a)}}function getSourceFileToImportFromResolved(t,r,n){return tryEach(tryGetNewFile)||tryEach(tryGetOldFile);function tryEach(r){return t&&(t.resolvedModule&&r(t.resolvedModule.resolvedFileName)||e.firstDefined(t.failedLookupLocations,r))}function tryGetNewFile(e){var t=r(e);return t!==undefined&&n.fileExists(t)?{newFileName:t,updated:true}:undefined}function tryGetOldFile(e){var t=r(e);return n.fileExists(e)?t!==undefined?{newFileName:t,updated:true}:{newFileName:e,updated:false}:undefined}}function updateImportsWorker(t,r,n,i){for(var a=0,o=t.referencedFiles||e.emptyArray;a<o.length;a++){var s=o[a];var c=n(s.fileName);if(c!==undefined&&c!==t.text.slice(s.pos,s.end))r.replaceRangeWithText(t,s,c)}for(var u=0,l=t.imports;u<l.length;u++){var f=l[u];var c=i(f);if(c!==undefined&&c!==f.text)r.replaceRangeWithText(t,createStringRange(f,t),c)}}function createStringRange(t,r){return e.createRange(t.getStart(r)+1,t.end-1)}function forEachProperty(t,r){if(!e.isObjectLiteralExpression(t))return;for(var n=0,i=t.properties;n<i.length;n++){var a=i[n];if(e.isPropertyAssignment(a)&&e.isStringLiteral(a.name)){r(a,a.name.text)}}}})(s||(s={}));var s;(function(e){var t;(function(t){function getDefinitionAtPosition(t,r,n){var i=getReferenceAtPosition(r,n,t);if(i){return[getDefinitionInfoForFileReference(i.fileName,i.file.fileName)]}var a=e.getTouchingPropertyName(r,n);if(a===r){return undefined}var o=a.parent;if(e.isJumpStatementTarget(a)){var s=e.getTargetLabel(a.parent,a.text);return s?[createDefinitionInfoFromName(s,"label",a.text,undefined)]:undefined}var c=t.getTypeChecker();var u=getSymbol(a,c);if(!u){return getDefinitionInfoForIndexSignatures(a,c)}var l=tryGetSignatureDeclaration(c,a);if(l&&!(e.isJsxOpeningLikeElement(a.parent)&&isConstructorLike(l))){var f=createDefinitionFromSignatureDeclaration(c,l);if(c.getRootSymbols(u).some(function(e){return symbolMatchesSignature(e,l)})||u.declarations&&u.declarations.some(function(t){return e.isVariableDeclaration(t)&&!!t.initializer&&e.isRequireCall(t.initializer,false)})){return[f]}else{var d=getDefinitionFromSymbol(c,u,a)||e.emptyArray;return a.kind===98?[f].concat(d):d.concat([f])}}if(a.parent.kind===276){var p=c.getShorthandAssignmentValueSymbol(u.valueDeclaration);return p?p.declarations.map(function(e){return createDefinitionInfo(e,c,p,a)}):[]}if(e.isPropertyName(a)&&e.isBindingElement(o)&&e.isObjectBindingPattern(o.parent)&&a===(o.propertyName||o.name)){var g=e.getNameFromPropertyName(a);var _=c.getTypeAtLocation(o.parent);return g===undefined?e.emptyArray:e.flatMap(_.isUnion()?_.types:[_],function(e){var t=e.getProperty(g);return t&&getDefinitionFromSymbol(c,t,a)})}var m=e.getContainingObjectLiteralElement(a);if(m){var y=m&&c.getContextualType(m.parent);if(y){return e.flatMap(e.getPropertySymbolsFromContextualType(m,c,y,false),function(e){return getDefinitionFromSymbol(c,e,a)})}}return getDefinitionFromSymbol(c,u,a)}t.getDefinitionAtPosition=getDefinitionAtPosition;function symbolMatchesSignature(t,r){return t===r.symbol||t===r.symbol.parent||!e.isCallLikeExpression(r.parent)&&t===r.parent.symbol}function getReferenceAtPosition(t,r,n){var i=findReferenceInPosition(t.referencedFiles,r);if(i){var a=e.tryResolveScriptReference(n,t,i);return a&&{fileName:i.fileName,file:a}}var o=findReferenceInPosition(t.typeReferenceDirectives,r);if(o){var s=n.getResolvedTypeReferenceDirectives().get(o.fileName);var a=s&&n.getSourceFile(s.resolvedFileName);return a&&{fileName:o.fileName,file:a}}var c=findReferenceInPosition(t.libReferenceDirectives,r);if(c){var a=n.getLibFileFromReference(c);return a&&{fileName:c.fileName,file:a}}return undefined}t.getReferenceAtPosition=getReferenceAtPosition;function getTypeDefinitionAtPosition(t,r,n){var i=e.getTouchingPropertyName(r,n);if(i===r){return undefined}var a=t.getSymbolAtLocation(i);if(!a)return undefined;var o=t.getTypeOfSymbolAtLocation(a,i);var s=tryGetReturnTypeOfFunction(a,o,t);var c=s&&definitionFromType(s,t,i);return c&&c.length!==0?c:definitionFromType(o,t,i)}t.getTypeDefinitionAtPosition=getTypeDefinitionAtPosition;function definitionFromType(t,r,n){return e.flatMap(t.isUnion()&&!(t.flags&32)?t.types:[t],function(e){return e.symbol&&getDefinitionFromSymbol(r,e.symbol,n)})}function tryGetReturnTypeOfFunction(t,r,n){if(r.symbol===t||t.valueDeclaration&&r.symbol&&e.isVariableDeclaration(t.valueDeclaration)&&t.valueDeclaration.initializer===r.symbol.valueDeclaration){var i=r.getCallSignatures();if(i.length===1)return n.getReturnTypeOfSignature(e.first(i))}return undefined}function getDefinitionAndBoundSpan(t,r,n){var i=getDefinitionAtPosition(t,r,n);if(!i||i.length===0){return undefined}var a=findReferenceInPosition(r.referencedFiles,n)||findReferenceInPosition(r.typeReferenceDirectives,n)||findReferenceInPosition(r.libReferenceDirectives,n);if(a){return{definitions:i,textSpan:e.createTextSpanFromRange(a)}}var o=e.getTouchingPropertyName(r,n);var s=e.createTextSpan(o.getStart(),o.getWidth());return{definitions:i,textSpan:s}}t.getDefinitionAndBoundSpan=getDefinitionAndBoundSpan;function getDefinitionInfoForIndexSignatures(t,r){if(!e.isPropertyAccessExpression(t.parent)||t.parent.name!==t)return;var n=r.getTypeAtLocation(t.parent.expression);return e.mapDefined(n.isUnionOrIntersection()?n.types:[n],function(e){var t=r.getIndexInfoOfType(e,0);return t&&t.declaration&&createDefinitionFromSignatureDeclaration(r,t.declaration)})}function getSymbol(e,t){var r=t.getSymbolAtLocation(e);if(r&&r.flags&2097152&&shouldSkipAlias(e,r.declarations[0])){var n=t.getAliasedSymbol(r);if(n.declarations){return n}}return r}function shouldSkipAlias(e,t){if(e.kind!==72){return false}if(e.parent===t){return true}switch(t.kind){case 250:case 248:return true;case 253:return t.parent.kind===252;default:return false}}function getDefinitionFromSymbol(t,r,n){return getConstructSignatureDefinition()||getCallSignatureDefinition()||e.map(r.declarations,function(e){return createDefinitionInfo(e,t,r,n)});function getConstructSignatureDefinition(){if(r.flags&32&&(e.isNewExpressionTarget(n)||n.kind===124)){var t=e.find(r.declarations,e.isClassLike)||e.Debug.fail("Expected declaration to have at least one class-like declaration");return getSignatureDefinition(t.members,true)}}function getCallSignatureDefinition(){return e.isCallOrNewExpressionTarget(n)||e.isNameOfFunctionDeclaration(n)?getSignatureDefinition(r.declarations,false):undefined}function getSignatureDefinition(i,a){if(!i){return undefined}var o=i.filter(a?e.isConstructorDeclaration:e.isFunctionLike);return o.length?[createDefinitionInfo(e.find(o,function(e){return!!e.body})||e.last(o),t,r,n)]:undefined}}function createDefinitionInfo(t,r,n,i){var a=r.symbolToString(n);var o=e.SymbolDisplay.getSymbolKind(r,n,i);var s=n.parent?r.symbolToString(n.parent,i):"";return createDefinitionInfoFromName(t,o,a,s)}function createDefinitionInfoFromName(t,r,n,i){var a=e.getNameOfDeclaration(t)||t;var o=a.getSourceFile();return{fileName:o.fileName,textSpan:e.createTextSpanFromNode(a,o),kind:r,name:n,containerKind:undefined,containerName:i}}function createDefinitionFromSignatureDeclaration(e,t){return createDefinitionInfo(t,e,t.symbol,t)}function findReferenceInPosition(t,r){return e.find(t,function(t){return e.textRangeContainsPositionInclusive(t,r)})}t.findReferenceInPosition=findReferenceInPosition;function getDefinitionInfoForFileReference(t,r){return{fileName:r,textSpan:e.createTextSpanFromBounds(0,0),kind:"script",name:t,containerName:undefined,containerKind:undefined}}function getAncestorCallLikeExpression(t){var r=climbPastManyPropertyAccesses(t);var n=r.parent;return n&&e.isCallLikeExpression(n)&&e.getInvokedExpression(n)===r?n:undefined}function climbPastManyPropertyAccesses(t){return e.isRightSideOfPropertyAccess(t)?climbPastManyPropertyAccesses(t.parent):t}function tryGetSignatureDeclaration(t,r){var n=getAncestorCallLikeExpression(r);var i=n&&t.getResolvedSignature(n);return e.tryCast(i&&i.declaration,function(t){return e.isFunctionLike(t)&&!e.isFunctionTypeNode(t)})}function isConstructorLike(e){switch(e.kind){case 157:case 166:case 161:return true;default:return false}}})(t=e.GoToDefinition||(e.GoToDefinition={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=["abstract","access","alias","argument","async","augments","author","borrows","callback","class","classdesc","constant","constructor","constructs","copyright","default","deprecated","description","emits","enum","event","example","exports","extends","external","field","file","fileoverview","fires","function","generator","global","hideconstructor","host","ignore","implements","inheritdoc","inner","instance","interface","kind","lends","license","listens","member","memberof","method","mixes","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","template","this","throws","todo","tutorial","type","typedef","var","variation","version","virtual","yields"];var n;var i;function getJsDocCommentsFromDeclarations(t){var r=[];forEachUnique(t,function(t){for(var n=0,i=getCommentHavingNodes(t);n<i.length;n++){var a=i[n].comment;if(a===undefined)continue;if(r.length){r.push(e.lineBreakPart())}r.push(e.textPart(a))}});return r}t.getJsDocCommentsFromDeclarations=getJsDocCommentsFromDeclarations;function getCommentHavingNodes(t){switch(t.kind){case 299:case 305:return[t];case 297:case 304:return[t,t.parent];default:return e.getJSDocCommentsAndTags(t)}}function getJsDocTagsFromDeclarations(t){var r=[];forEachUnique(t,function(t){for(var n=0,i=e.getJSDocTags(t);n<i.length;n++){var a=i[n];r.push({name:a.tagName.text,text:getCommentText(a)})}});return r}t.getJsDocTagsFromDeclarations=getJsDocTagsFromDeclarations;function getCommentText(e){var t=e.comment;switch(e.kind){case 295:return withNode(e.class);case 303:return withList(e.typeParameters);case 302:return withNode(e.typeExpression);case 304:case 297:case 305:case 299:var r=e.name;return r?withNode(r):t;default:return t}function withNode(e){return addComment(e.getText())}function withList(e){return addComment(e.map(function(e){return e.getText()}).join(", "))}function addComment(e){return t===undefined?e:e+" "+t}}function forEachUnique(e,t){if(e){for(var r=0;r<e.length;r++){if(e.indexOf(e[r])===r){var n=t(e[r],r);if(n){return n}}}}return undefined}function getJSDocTagNameCompletions(){return n||(n=e.map(r,function(e){return{name:e,kind:"keyword",kindModifiers:"",sortText:"0"}}))}t.getJSDocTagNameCompletions=getJSDocTagNameCompletions;t.getJSDocTagNameCompletionDetails=getJSDocTagCompletionDetails;function getJSDocTagCompletions(){return i||(i=e.map(r,function(e){return{name:"@"+e,kind:"keyword",kindModifiers:"",sortText:"0"}}))}t.getJSDocTagCompletions=getJSDocTagCompletions;function getJSDocTagCompletionDetails(t){return{name:t,kind:"",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:undefined,codeActions:undefined}}t.getJSDocTagCompletionDetails=getJSDocTagCompletionDetails;function getJSDocParameterNameCompletions(t){if(!e.isIdentifier(t.name)){return e.emptyArray}var r=t.name.text;var n=t.parent;var i=n.parent;if(!e.isFunctionLike(i))return[];return e.mapDefined(i.parameters,function(i){if(!e.isIdentifier(i.name))return undefined;var a=i.name.text;if(n.tags.some(function(r){return r!==t&&e.isJSDocParameterTag(r)&&e.isIdentifier(r.name)&&r.name.escapedText===a})||r!==undefined&&!e.startsWith(a,r)){return undefined}return{name:a,kind:"parameter",kindModifiers:"",sortText:"0"}})}t.getJSDocParameterNameCompletions=getJSDocParameterNameCompletions;function getJSDocParameterNameCompletionDetails(t){return{name:t,kind:"parameter",kindModifiers:"",displayParts:[e.textPart(t)],documentation:e.emptyArray,tags:undefined,codeActions:undefined}}t.getJSDocParameterNameCompletionDetails=getJSDocParameterNameCompletionDetails;function getDocCommentTemplateAtPosition(t,r,n){var i=e.getTokenAtPosition(r,n);var a=e.findAncestor(i,e.isJSDoc);if(a&&(a.comment!==undefined||e.length(a.tags))){return undefined}var o=i.getStart(r);if(!a&&o<n){return undefined}var s=getCommentOwnerInfo(i);if(!s){return undefined}var c=s.commentOwner,u=s.parameters;if(c.getStart(r)<n){return undefined}if(!u||u.length===0){var l="/** */";return{newText:l,caretOffset:3}}var f=getIndentationStringAtPosition(r,n);var d="/**"+t+f+" * ";var p=d+t+parameterDocComments(u,e.hasJSFileExtension(r.fileName),f,t)+f+" */"+(o===n?t+f:"");return{newText:p,caretOffset:d.length}}t.getDocCommentTemplateAtPosition=getDocCommentTemplateAtPosition;function getIndentationStringAtPosition(t,r){var n=t.text;var i=e.getLineStartPositionForPosition(r,t);var a=i;for(;a<=r&&e.isWhiteSpaceSingleLine(n.charCodeAt(a));a++);return n.slice(i,a)}function parameterDocComments(e,t,r,n){return e.map(function(e,i){var a=e.name,o=e.dotDotDotToken;var s=a.kind===72?a.text:"param"+i;var c=t?o?"{...any} ":"{any} ":"";return r+" * @param "+c+s+n}).join("")}function getCommentOwnerInfo(t){return e.forEachAncestor(t,getCommentOwnerInfoWorker)}function getCommentOwnerInfoWorker(t){switch(t.kind){case 239:case 196:case 156:case 157:case 155:var r=t.parameters;return{commentOwner:t,parameters:r};case 275:return getCommentOwnerInfoWorker(t.initializer);case 240:case 241:case 153:case 243:case 278:case 242:return{commentOwner:t};case 219:{var n=t;var i=n.declarationList.declarations;var a=i.length===1&&i[0].initializer?getParametersFromRightHandSideOfAssignment(i[0].initializer):undefined;return{commentOwner:t,parameters:a}}case 279:return"quit";case 244:return t.parent.kind===244?undefined:{commentOwner:t};case 204:{var o=t;if(e.getAssignmentDeclarationKind(o)===0){return"quit"}var s=e.isFunctionLike(o.right)?o.right.parameters:e.emptyArray;return{commentOwner:t,parameters:s}}}}function getParametersFromRightHandSideOfAssignment(t){while(t.kind===195){t=t.expression}switch(t.kind){case 196:case 197:return t.parameters;case 209:{var r=e.find(t.members,e.isConstructorDeclaration);return r?r.parameters:e.emptyArray}}return e.emptyArray}})(t=e.JsDoc||(e.JsDoc={}))})(s||(s={}));var s;(function(e){var t;(function(t){function getNavigateToItems(t,r,n,i,a,o){var s=e.createPatternMatcher(i);if(!s)return e.emptyArray;var c=[];var u=function(e){n.throwIfCancellationRequested();if(o&&e.isDeclarationFile){return"continue"}e.getNamedDeclarations().forEach(function(t,n){getItemsFromNamedDeclaration(s,n,t,r,e.fileName,c)})};for(var l=0,f=t;l<f.length;l++){var d=f[l];u(d)}c.sort(compareNavigateToItems);return(a===undefined?c:c.slice(0,a)).map(createNavigateToItem)}t.getNavigateToItems=getNavigateToItems;function getItemsFromNamedDeclaration(e,t,r,n,i,a){var o=e.getMatchForLastSegmentOfPattern(t);if(!o){return}for(var s=0,c=r;s<c.length;s++){var u=c[s];if(!shouldKeepItem(u,n))continue;if(e.patternContainsDots){var l=e.getFullMatch(getContainers(u),t);if(l){a.push({name:t,fileName:i,matchKind:l.kind,isCaseSensitive:l.isCaseSensitive,declaration:u})}}else{a.push({name:t,fileName:i,matchKind:o.kind,isCaseSensitive:o.isCaseSensitive,declaration:u})}}}function shouldKeepItem(e,t){switch(e.kind){case 250:case 253:case 248:var r=t.getSymbolAtLocation(e.name);var n=t.getAliasedSymbol(r);return r.escapedName!==n.escapedName;default:return true}}function tryAddSingleDeclarationName(t,r){var n=e.getNameOfDeclaration(t);return!!n&&(pushLiteral(n,r)||n.kind===149&&tryAddComputedPropertyName(n.expression,r))}function tryAddComputedPropertyName(t,r){return pushLiteral(t,r)||e.isPropertyAccessExpression(t)&&(r.push(t.name.text),true)&&tryAddComputedPropertyName(t.expression,r)}function pushLiteral(t,r){return e.isPropertyNameLiteral(t)&&(r.push(e.getTextOfIdentifierOrLiteral(t)),true)}function getContainers(t){var r=[];var n=e.getNameOfDeclaration(t);if(n&&n.kind===149&&!tryAddComputedPropertyName(n.expression,r)){return e.emptyArray}r.shift();var i=e.getContainerNode(t);while(i){if(!tryAddSingleDeclarationName(i,r)){return e.emptyArray}i=e.getContainerNode(i)}return r.reverse()}function compareNavigateToItems(t,r){return e.compareValues(t.matchKind,r.matchKind)||e.compareStringsCaseSensitiveUI(t.name,r.name)}function createNavigateToItem(t){var r=t.declaration;var n=e.getContainerNode(r);var i=n&&e.getNameOfDeclaration(n);return{name:t.name,kind:e.getNodeKind(r),kindModifiers:e.getNodeModifiers(r),matchKind:e.PatternMatchKind[t.matchKind],isCaseSensitive:t.isCaseSensitive,fileName:t.fileName,textSpan:e.createTextSpanFromNode(r),containerName:i?i.text:"",containerKind:i?e.getNodeKind(n):""}}})(t=e.NavigateTo||(e.NavigateTo={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=/\s+/g;var n;var i;var a=[];var o;var s=[];function getNavigationBarItems(t,r){n=r;i=t;try{return e.map(topLevelItems(rootNavigationBarNode(t)),convertToTopLevelItem)}finally{reset()}}t.getNavigationBarItems=getNavigationBarItems;function getNavigationTree(e,t){n=t;i=e;try{return convertToTree(rootNavigationBarNode(e))}finally{reset()}}t.getNavigationTree=getNavigationTree;function reset(){i=undefined;n=undefined;a=[];o=undefined;s=[]}function nodeText(e){return e.getText(i)}function navigationBarNodeKind(e){return e.node.kind}function pushChild(e,t){if(e.children){e.children.push(t)}else{e.children=[t]}}function rootNavigationBarNode(t){e.Debug.assert(!a.length);var r={node:t,name:undefined,additionalNodes:undefined,parent:undefined,children:undefined,indent:0};o=r;for(var n=0,i=t.statements;n<i.length;n++){var s=i[n];addChildrenRecursively(s)}endNode();e.Debug.assert(!o&&!a.length);return r}function addLeafNode(e){pushChild(o,emptyNavigationBarNode(e))}function emptyNavigationBarNode(t){return{node:t,name:e.isDeclaration(t)||e.isExpression(t)?e.getNameOfDeclaration(t):undefined,additionalNodes:undefined,parent:o,children:undefined,indent:o.indent+1}}function startNode(e){var t=emptyNavigationBarNode(e);pushChild(o,t);a.push(o);o=t}function endNode(){if(o.children){mergeChildren(o.children,o);sortChildren(o.children)}o=a.pop()}function addNodeWithRecursiveChild(e,t){startNode(e);addChildrenRecursively(t);endNode()}function addChildrenRecursively(t){n.throwIfCancellationRequested();if(!t||e.isToken(t)){return}switch(t.kind){case 157:var r=t;addNodeWithRecursiveChild(r,r.body);for(var i=0,a=r.parameters;i<a.length;i++){var o=a[i];if(e.isParameterPropertyDeclaration(o)){addLeafNode(o)}}break;case 156:case 158:case 159:case 155:if(!e.hasDynamicName(t)){addNodeWithRecursiveChild(t,t.body)}break;case 154:case 153:if(!e.hasDynamicName(t)){addLeafNode(t)}break;case 250:var s=t;if(s.name){addLeafNode(s.name)}var c=s.namedBindings;if(c){if(c.kind===251){addLeafNode(c)}else{for(var u=0,l=c.elements;u<l.length;u++){var f=l[u];addLeafNode(f)}}}break;case 186:case 237:var d=t,p=d.name,g=d.initializer;if(e.isBindingPattern(p)){addChildrenRecursively(p)}else if(g&&isFunctionOrClassExpression(g)){if(g.name){addChildrenRecursively(g)}else{startNode(t);e.forEachChild(g,addChildrenRecursively);endNode()}}else{addNodeWithRecursiveChild(t,g)}break;case 197:case 239:case 196:addNodeWithRecursiveChild(t,t.body);break;case 243:startNode(t);for(var _=0,m=t.members;_<m.length;_++){var y=m[_];if(!isComputedProperty(y)){addLeafNode(y)}}endNode();break;case 240:case 209:case 241:startNode(t);for(var h=0,v=t.members;h<v.length;h++){var y=v[h];addChildrenRecursively(y)}endNode();break;case 244:addNodeWithRecursiveChild(t,getInteriorModule(t).body);break;case 257:case 248:case 162:case 160:case 161:case 242:addLeafNode(t);break;case 204:{var T=e.getAssignmentDeclarationKind(t);switch(T){case 1:case 2:case 3:case 6:addNodeWithRecursiveChild(t,t.right);return;case 4:case 5:case 0:case 7:case 8:case 9:break;default:e.Debug.assertNever(T)}}default:if(e.hasJSDocNodes(t)){e.forEach(t.jsDoc,function(t){e.forEach(t.tags,function(t){if(e.isJSDocTypeAlias(t)){addLeafNode(t)}})})}e.forEachChild(t,addChildrenRecursively)}}function mergeChildren(t,r){var n=e.createMap();e.filterMutate(t,function(t){var i=e.getNameOfDeclaration(t.node);var a=i&&nodeText(i);if(!a){return true}var o=n.get(a);if(!o){n.set(a,t);return true}if(o instanceof Array){for(var s=0,c=o;s<c.length;s++){var u=c[s];if(tryMerge(u,t,r)){return false}}o.push(t);return true}else{var u=o;if(tryMerge(u,t,r)){return false}n.set(a,[u,t]);return true}})}function tryMerge(e,t,r){if(shouldReallyMerge(e.node,t.node,r)){merge(e,t);return true}return false}function shouldReallyMerge(t,r,n){if(t.kind!==r.kind||t.parent!==r.parent&&!(isOwnChild(t,n)&&isOwnChild(r,n))){return false}switch(t.kind){case 154:case 156:case 158:case 159:return e.hasModifier(t,32)===e.hasModifier(r,32);case 244:return areSameModule(t,r);default:return true}}function isOwnChild(t,r){var n=e.isModuleBlock(t.parent)?t.parent.parent:t.parent;return n===r.node||e.contains(r.additionalNodes,n)}function areSameModule(e,t){return e.body.kind===t.body.kind&&(e.body.kind!==244||areSameModule(e.body,t.body))}function merge(t,r){var n;t.additionalNodes=t.additionalNodes||[];t.additionalNodes.push(r.node);if(r.additionalNodes){(n=t.additionalNodes).push.apply(n,r.additionalNodes)}t.children=e.concatenate(t.children,r.children);if(t.children){mergeChildren(t.children,t);sortChildren(t.children)}}function sortChildren(e){e.sort(compareChildren)}function compareChildren(t,r){return e.compareStringsCaseSensitiveUI(tryGetName(t.node),tryGetName(r.node))||e.compareValues(navigationBarNodeKind(t),navigationBarNodeKind(r))}function tryGetName(t){if(t.kind===244){return getModuleName(t)}var r=e.getNameOfDeclaration(t);if(r&&e.isPropertyName(r)){return e.unescapeLeadingUnderscores(e.getPropertyNameForPropertyNameNode(r))}switch(t.kind){case 196:case 197:case 209:return getFunctionOrClassName(t);default:return undefined}}function getItemName(t,r){if(t.kind===244){return getModuleName(t)}if(r){var n=nodeText(r);if(n.length>0){return n}}switch(t.kind){case 279:var i=t;return e.isExternalModule(i)?'"'+e.escapeString(e.getBaseFileName(e.removeFileExtension(e.normalizePath(i.fileName))))+'"':"<global>";case 197:case 239:case 196:case 240:case 209:if(e.getModifierFlags(t)&512){return"default"}return getFunctionOrClassName(t);case 157:return"constructor";case 161:return"new()";case 160:return"()";case 162:return"[]";default:return"<unknown>"}}function topLevelItems(t){var r=[];function recur(e){if(isTopLevel(e)){r.push(e);if(e.children){for(var t=0,n=e.children;t<n.length;t++){var i=n[t];recur(i)}}}}recur(t);return r;function isTopLevel(t){switch(navigationBarNodeKind(t)){case 240:case 209:case 243:case 241:case 244:case 279:case 242:case 304:case 297:return true;case 157:case 156:case 158:case 159:case 237:return hasSomeImportantChild(t);case 197:case 239:case 196:return isTopLevelFunctionDeclaration(t);default:return false}function isTopLevelFunctionDeclaration(e){if(!e.node.body){return false}switch(navigationBarNodeKind(e.parent)){case 245:case 279:case 156:case 157:return true;default:return hasSomeImportantChild(e)}}function hasSomeImportantChild(t){return e.some(t.children,function(e){var t=navigationBarNodeKind(e);return t!==237&&t!==186})}}}function convertToTree(t){return{text:getItemName(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:getModifiers(t.node),spans:getSpans(t),nameSpan:t.name&&getNodeSpan(t.name),childItems:e.map(t.children,convertToTree)}}function convertToTopLevelItem(t){return{text:getItemName(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:getModifiers(t.node),spans:getSpans(t),childItems:e.map(t.children,convertToChildItem)||s,indent:t.indent,bolded:false,grayed:false};function convertToChildItem(t){return{text:getItemName(t.node,t.name),kind:e.getNodeKind(t.node),kindModifiers:e.getNodeModifiers(t.node),spans:getSpans(t),childItems:s,indent:0,bolded:false,grayed:false}}}function getSpans(e){var t=[getNodeSpan(e.node)];if(e.additionalNodes){for(var r=0,n=e.additionalNodes;r<n.length;r++){var i=n[r];t.push(getNodeSpan(i))}}return t}function getModuleName(t){if(e.isAmbientModule(t)){return e.getTextOfNode(t.name)}var r=[];r.push(e.getTextOfIdentifierOrLiteral(t.name));while(t.body&&t.body.kind===244){t=t.body;r.push(e.getTextOfIdentifierOrLiteral(t.name))}return r.join(".")}function getInteriorModule(t){return t.body&&e.isModuleDeclaration(t.body)?getInteriorModule(t.body):t}function isComputedProperty(e){return!e.name||e.name.kind===149}function getNodeSpan(t){return t.kind===279?e.createTextSpanFromRange(t):e.createTextSpanFromNode(t,i)}function getModifiers(t){if(t.parent&&t.parent.kind===237){t=t.parent}return e.getNodeModifiers(t)}function getFunctionOrClassName(t){var n=t.parent;if(t.name&&e.getFullWidth(t.name)>0){return e.declarationNameToString(t.name)}else if(e.isVariableDeclaration(n)){return e.declarationNameToString(n.name)}else if(e.isBinaryExpression(n)&&n.operatorToken.kind===59){return nodeText(n.left).replace(r,"")}else if(e.isPropertyAssignment(n)){return nodeText(n.name)}else if(e.getModifierFlags(t)&512){return"default"}else if(e.isClassLike(t)){return"<class>"}else if(e.isCallExpression(n)){var a=getCalledExpressionName(n.expression);if(a!==undefined){var o=e.mapDefined(n.arguments,function(t){return e.isStringLiteral(t)?t.getText(i):undefined}).join(", ");return a+"("+o+") callback"}}return"<function>"}function getCalledExpressionName(t){if(e.isIdentifier(t)){return t.text}else if(e.isPropertyAccessExpression(t)){var r=getCalledExpressionName(t.expression);var n=t.name.text;return r===undefined?n:r+"."+n}else{return undefined}}function isFunctionOrClassExpression(e){switch(e.kind){case 197:case 196:case 209:return true;default:return false}}})(t=e.NavigationBar||(e.NavigationBar={}))})(s||(s={}));var s;(function(e){var t;(function(t){function organizeImports(t,r,n,i,a){var o=e.textChanges.ChangeTracker.fromContext({host:n,formatContext:r});var s=function(e){return coalesceImports(removeUnusedImports(e,t,i))};var c=t.statements.filter(e.isImportDeclaration);organizeImportsWorker(c,s);var u=t.statements.filter(e.isExportDeclaration);organizeImportsWorker(u,coalesceExports);for(var l=0,f=t.statements.filter(e.isAmbientModule);l<f.length;l++){var d=f[l];var p=getModuleBlock(d);var g=p.statements.filter(e.isImportDeclaration);organizeImportsWorker(g,s);var _=p.statements.filter(e.isExportDeclaration);organizeImportsWorker(_,coalesceExports)}return o.getChanges();function organizeImportsWorker(i,a){if(e.length(i)===0){return}e.suppressLeadingTrivia(i[0]);var s=e.group(i,function(e){return getExternalModuleName(e.moduleSpecifier)});var c=e.stableSort(s,function(e,t){return compareModuleSpecifiers(e[0].moduleSpecifier,t[0].moduleSpecifier)});var u=e.flatMap(c,function(e){return getExternalModuleName(e[0].moduleSpecifier)?a(e):e});if(u.length===0){o.delete(t,i[0])}else{o.replaceNodeWithNodes(t,i[0],u,{useNonAdjustedStartPosition:true,useNonAdjustedEndPosition:false,suffix:e.getNewLineOrDefaultFromHost(n,r.options)})}for(var l=1;l<i.length;l++){o.delete(t,i[l])}}}t.organizeImports=organizeImports;function getModuleBlock(t){var r=t.body;return r&&!e.isIdentifier(r)?e.isModuleBlock(r)?r:getModuleBlock(r):undefined}function removeUnusedImports(t,r,n){var i=n.getTypeChecker();var a=i.getJsxNamespace();var o=!!(r.transformFlags&4);var s=[];for(var c=0,u=t;c<u.length;c++){var l=u[c];var f=l.importClause;if(!f){s.push(l);continue}var d=f.name,p=f.namedBindings;if(d&&!isDeclarationUsed(d)){d=undefined}if(p){if(e.isNamespaceImport(p)){if(!isDeclarationUsed(p.name)){p=undefined}}else{var g=p.elements.filter(function(e){return isDeclarationUsed(e.name)});if(g.length<p.elements.length){p=g.length?e.updateNamedImports(p,g):undefined}}}if(d||p){s.push(updateImportDeclarationAndClause(l,d,p))}}return s;function isDeclarationUsed(t){return o&&t.text===a||e.FindAllReferences.Core.isSymbolReferencedInFile(t,i,r)}}function getExternalModuleName(t){return t!==undefined&&e.isStringLiteralLike(t)?t.text:undefined}function coalesceImports(t){if(t.length===0){return t}var r=getCategorizedImports(t),n=r.importWithoutClause,i=r.defaultImports,a=r.namespaceImports,o=r.namedImports;var s=[];if(n){s.push(n)}if(i.length===1&&a.length===1&&o.length===0){var c=i[0];s.push(updateImportDeclarationAndClause(c,c.importClause.name,a[0].importClause.namedBindings));return s}var u=e.stableSort(a,function(e,t){return compareIdentifiers(e.importClause.namedBindings.name,t.importClause.namedBindings.name)});for(var l=0,f=u;l<f.length;l++){var d=f[l];s.push(updateImportDeclarationAndClause(d,undefined,d.importClause.namedBindings))}if(i.length===0&&o.length===0){return s}var p;var g=[];if(i.length===1){p=i[0].importClause.name}else{for(var _=0,m=i;_<m.length;_++){var c=m[_];g.push(e.createImportSpecifier(e.createIdentifier("default"),c.importClause.name))}}g.push.apply(g,e.flatMap(o,function(e){return e.importClause.namedBindings.elements}));var y=sortSpecifiers(g);var h=i.length>0?i[0]:o[0];var v=y.length===0?p?undefined:e.createNamedImports(e.emptyArray):o.length===0?e.createNamedImports(y):e.updateNamedImports(o[0].importClause.namedBindings,y);s.push(updateImportDeclarationAndClause(h,p,v));return s;function getCategorizedImports(t){var r;var n=[];var i=[];var a=[];for(var o=0,s=t;o<s.length;o++){var c=s[o];if(c.importClause===undefined){r=r||c;continue}var u=c.importClause,l=u.name,f=u.namedBindings;if(l){n.push(c)}if(f){if(e.isNamespaceImport(f)){i.push(c)}else{a.push(c)}}}return{importWithoutClause:r,defaultImports:n,namespaceImports:i,namedImports:a}}}t.coalesceImports=coalesceImports;function coalesceExports(t){if(t.length===0){return t}var r=getCategorizedExports(t),n=r.exportWithoutClause,i=r.namedExports;var a=[];if(n){a.push(n)}if(i.length===0){return a}var o=[];o.push.apply(o,e.flatMap(i,function(e){return e.exportClause.elements}));var s=sortSpecifiers(o);var c=i[0];a.push(e.updateExportDeclaration(c,c.decorators,c.modifiers,e.updateNamedExports(c.exportClause,s),c.moduleSpecifier));return a;function getCategorizedExports(e){var t;var r=[];for(var n=0,i=e;n<i.length;n++){var a=i[n];if(a.exportClause===undefined){t=t||a}else{r.push(a)}}return{exportWithoutClause:t,namedExports:r}}}t.coalesceExports=coalesceExports;function updateImportDeclarationAndClause(t,r,n){return e.updateImportDeclaration(t,t.decorators,t.modifiers,e.updateImportClause(t.importClause,r,n),t.moduleSpecifier)}function sortSpecifiers(t){return e.stableSort(t,function(e,t){return compareIdentifiers(e.propertyName||e.name,t.propertyName||t.name)||compareIdentifiers(e.name,t.name)})}function compareModuleSpecifiers(t,r){var n=getExternalModuleName(t);var i=getExternalModuleName(r);return e.compareBooleans(n===undefined,i===undefined)||e.compareBooleans(e.isExternalModuleNameRelative(n),e.isExternalModuleNameRelative(i))||e.compareStringsCaseInsensitive(n,i)}t.compareModuleSpecifiers=compareModuleSpecifiers;function compareIdentifiers(t,r){return e.compareStringsCaseInsensitive(t.text,r.text)}})(t=e.OrganizeImports||(e.OrganizeImports={}))})(s||(s={}));var s;(function(e){var t;(function(t){function collectElements(e,t){var r=[];addNodeOutliningSpans(e,t,r);addRegionOutliningSpans(e,r);return r.sort(function(e,t){return e.textSpan.start-t.textSpan.start})}t.collectElements=collectElements;function addNodeOutliningSpans(t,r,n){var i=40;var a=0;var o=t.statements;var s=o.length;while(a<s){while(a<s&&!e.isAnyImportSyntax(o[a])){visitNonImportNode(o[a]);a++}if(a===s)break;var c=a;while(a<s&&e.isAnyImportSyntax(o[a])){addOutliningForLeadingCommentsForNode(o[a],t,r,n);a++}var u=a-1;if(u!==c){n.push(createOutliningSpanFromBounds(e.findChildOfKind(o[c],92,t).getStart(t),o[u].getEnd(),"imports"))}}function visitNonImportNode(a){if(i===0)return;r.throwIfCancellationRequested();if(e.isDeclaration(a)){addOutliningForLeadingCommentsForNode(a,t,r,n)}var o=getOutliningSpanForNode(a,t);if(o)n.push(o);i--;if(e.isIfStatement(a)&&a.elseStatement&&e.isIfStatement(a.elseStatement)){visitNonImportNode(a.expression);visitNonImportNode(a.thenStatement);i++;visitNonImportNode(a.elseStatement);i--}else{a.forEachChild(visitNonImportNode)}i++}}function addRegionOutliningSpans(t,r){var n=[];var i=t.getLineStarts();for(var a=0;a<i.length;a++){var o=i[a];var s=a+1===i.length?t.getEnd():i[a+1]-1;var c=t.text.substring(o,s);var u=isRegionDelimiter(c);if(!u||e.isInComment(t,o)){continue}if(!u[1]){var l=e.createTextSpanFromBounds(t.text.indexOf("//",o),s);n.push(createOutliningSpan(l,"region",l,false,u[2]||"#region"))}else{var f=n.pop();if(f){f.textSpan.length=s-f.textSpan.start;f.hintSpan.length=s-f.textSpan.start;r.push(f)}}}}var r=/^\s*\/\/\s*#(end)?region(?:\s+(.*))?(?:\r)?$/;function isRegionDelimiter(e){return r.exec(e)}function addOutliningForLeadingCommentsForNode(t,r,n,i){var a=e.getLeadingCommentRangesOfNode(t,r);if(!a)return;var o=-1;var s=-1;var c=0;var u=r.getFullText();for(var l=0,f=a;l<f.length;l++){var d=f[l],p=d.kind,g=d.pos,_=d.end;n.throwIfCancellationRequested();switch(p){case 2:var m=u.slice(g,_);if(isRegionDelimiter(m)){combineAndAddMultipleSingleLineComments();c=0;break}if(c===0){o=g}s=_;c++;break;case 3:combineAndAddMultipleSingleLineComments();i.push(createOutliningSpanFromBounds(g,_,"comment"));c=0;break;default:e.Debug.assertNever(p)}}combineAndAddMultipleSingleLineComments();function combineAndAddMultipleSingleLineComments(){if(c>1){i.push(createOutliningSpanFromBounds(o,s,"comment"))}}}function createOutliningSpanFromBounds(t,r,n){return createOutliningSpan(e.createTextSpanFromBounds(t,r),n)}function getOutliningSpanForNode(t,r){switch(t.kind){case 218:if(e.isFunctionBlock(t)){return spanForNode(t.parent,t.parent.kind!==197)}switch(t.parent.kind){case 223:case 226:case 227:case 225:case 222:case 224:case 231:case 274:return spanForNode(t.parent);case 235:var n=t.parent;if(n.tryBlock===t){return spanForNode(t.parent)}else if(n.finallyBlock===t){return spanForNode(e.findChildOfKind(n,88,r))}default:return createOutliningSpan(e.createTextSpanFromNode(t,r),"code")}case 245:return spanForNode(t.parent);case 240:case 241:case 243:case 246:return spanForNode(t);case 188:return spanForObjectOrArrayLiteral(t);case 187:return spanForObjectOrArrayLiteral(t,22);case 260:return spanForJSXElement(t);case 261:case 262:return spanForJSXAttributes(t.attributes)}function spanForJSXElement(t){var n=e.createTextSpanFromBounds(t.openingElement.getStart(r),t.closingElement.getEnd());var i=t.openingElement.tagName.getText(r);var a="<"+i+">...</"+i+">";return createOutliningSpan(n,"code",n,false,a)}function spanForJSXAttributes(e){if(e.properties.length===0){return undefined}return createOutliningSpanFromBounds(e.getStart(r),e.getEnd(),"code")}function spanForObjectOrArrayLiteral(t,r){if(r===void 0){r=18}return spanForNode(t,false,!e.isArrayLiteralExpression(t.parent),r)}function spanForNode(n,i,a,o){if(i===void 0){i=false}if(a===void 0){a=true}if(o===void 0){o=18}var s=e.findChildOfKind(t,o,r);var c=o===18?19:23;var u=e.findChildOfKind(t,c,r);if(!s||!u){return undefined}var l=e.createTextSpanFromBounds(a?s.getFullStart():s.getStart(r),u.getEnd());return createOutliningSpan(l,"code",e.createTextSpanFromNode(n,r),i)}}function createOutliningSpan(e,t,r,n,i){if(r===void 0){r=e}if(n===void 0){n=false}if(i===void 0){i="..."}return{textSpan:e,kind:t,hintSpan:r,bannerText:i,autoCollapse:n}}})(t=e.OutliningElementsCollector||(e.OutliningElementsCollector={}))})(s||(s={}));var s;(function(e){var t;(function(e){e[e["exact"]=0]="exact";e[e["prefix"]=1]="prefix";e[e["substring"]=2]="substring";e[e["camelCase"]=3]="camelCase"})(t=e.PatternMatchKind||(e.PatternMatchKind={}));function createPatternMatch(e,t){return{kind:e,isCaseSensitive:t}}function createPatternMatcher(t){var r=e.createMap();var n=t.trim().split(".").map(function(e){return createSegment(e.trim())});if(n.some(function(e){return!e.subWordTextChunks.length}))return undefined;return{getFullMatch:function(e,t){return getFullMatch(e,t,n,r)},getMatchForLastSegmentOfPattern:function(t){return matchSegment(t,e.last(n),r)},patternContainsDots:n.length>1}}e.createPatternMatcher=createPatternMatcher;function getFullMatch(t,r,n,i){var a=matchSegment(r,e.last(n),i);if(!a){return undefined}if(n.length-1>t.length){return undefined}var o;for(var s=n.length-2,c=t.length-1;s>=0;s-=1,c-=1){o=betterMatch(o,matchSegment(t[c],n[s],i))}return o}function getWordSpans(e,t){var r=t.get(e);if(!r){t.set(e,r=breakIntoWordSpans(e))}return r}function matchTextChunk(r,n,i){var a=indexOfIgnoringCase(r,n.textLowerCase);if(a===0){return createPatternMatch(n.text.length===r.length?t.exact:t.prefix,e.startsWith(r,n.text))}if(n.isLowerCase){if(a===-1)return undefined;var o=getWordSpans(r,i);for(var s=0,c=o;s<c.length;s++){var u=c[s];if(partStartsWith(r,u,n.text,true)){return createPatternMatch(t.substring,partStartsWith(r,u,n.text,false))}}if(n.text.length<r.length&&isUpperCaseLetter(r.charCodeAt(a))){return createPatternMatch(t.substring,false)}}else{if(r.indexOf(n.text)>0){return createPatternMatch(t.substring,true)}if(n.characterSpans.length>0){var l=getWordSpans(r,i);var f=tryCamelCaseMatch(r,l,n,false)?true:tryCamelCaseMatch(r,l,n,true)?false:undefined;if(f!==undefined){return createPatternMatch(t.camelCase,f)}}}}function matchSegment(e,t,r){if(every(t.totalTextChunk.text,function(e){return e!==32&&e!==42})){var n=matchTextChunk(e,t.totalTextChunk,r);if(n)return n}var i=t.subWordTextChunks;var a;for(var o=0,s=i;o<s.length;o++){var c=s[o];a=betterMatch(a,matchTextChunk(e,c,r))}return a}function betterMatch(t,r){return e.min(t,r,compareMatches)}function compareMatches(t,r){return t===undefined?1:r===undefined?-1:e.compareValues(t.kind,r.kind)||e.compareBooleans(!t.isCaseSensitive,!r.isCaseSensitive)}function partStartsWith(e,t,r,n,i){if(i===void 0){i={start:0,length:r.length}}return i.length<=t.length&&everyInRange(0,i.length,function(a){return equalChars(r.charCodeAt(i.start+a),e.charCodeAt(t.start+a),n)})}function equalChars(e,t,r){return r?toLowerCase(e)===toLowerCase(t):e===t}function tryCamelCaseMatch(t,r,n,i){var a=n.characterSpans;var o=0;var s=0;var c;var u;while(true){if(s===a.length){return true}else if(o===r.length){return false}var l=r[o];var f=false;for(;s<a.length;s++){var d=a[s];if(f){if(!isUpperCaseLetter(n.text.charCodeAt(a[s-1].start))||!isUpperCaseLetter(n.text.charCodeAt(a[s].start))){break}}if(!partStartsWith(t,l,n.text,i,d)){break}f=true;c=c===undefined?o:c;u=u===undefined?true:u;l=e.createTextSpan(l.start+d.length,l.length-d.length)}if(!f&&u!==undefined){u=false}o++}}function createSegment(e){return{totalTextChunk:createTextChunk(e),subWordTextChunks:breakPatternIntoTextChunks(e)}}function isUpperCaseLetter(t){if(t>=65&&t<=90){return true}if(t<127||!e.isUnicodeIdentifierStart(t,6)){return false}var r=String.fromCharCode(t);return r===r.toUpperCase()}function isLowerCaseLetter(t){if(t>=97&&t<=122){return true}if(t<127||!e.isUnicodeIdentifierStart(t,6)){return false}var r=String.fromCharCode(t);return r===r.toLowerCase()}function indexOfIgnoringCase(e,t){var r=e.length-t.length;var n=function(r){if(every(t,function(t,n){return toLowerCase(e.charCodeAt(n+r))===t})){return{value:r}}};for(var i=0;i<=r;i++){var a=n(i);if(typeof a==="object")return a.value}return-1}function toLowerCase(e){if(e>=65&&e<=90){return 97+(e-65)}if(e<127){return e}return String.fromCharCode(e).toLowerCase().charCodeAt(0)}function isDigit(e){return e>=48&&e<=57}function isWordChar(e){return isUpperCaseLetter(e)||isLowerCaseLetter(e)||isDigit(e)||e===95||e===36}function breakPatternIntoTextChunks(e){var t=[];var r=0;var n=0;for(var i=0;i<e.length;i++){var a=e.charCodeAt(i);if(isWordChar(a)){if(n===0){r=i}n++}else{if(n>0){t.push(createTextChunk(e.substr(r,n)));n=0}}}if(n>0){t.push(createTextChunk(e.substr(r,n)))}return t}function createTextChunk(e){var t=e.toLowerCase();return{text:e,textLowerCase:t,isLowerCase:e===t,characterSpans:breakIntoCharacterSpans(e)}}function breakIntoCharacterSpans(e){return breakIntoSpans(e,false)}e.breakIntoCharacterSpans=breakIntoCharacterSpans;function breakIntoWordSpans(e){return breakIntoSpans(e,true)}e.breakIntoWordSpans=breakIntoWordSpans;function breakIntoSpans(t,r){var n=[];var i=0;for(var a=1;a<t.length;a++){var o=isDigit(t.charCodeAt(a-1));var s=isDigit(t.charCodeAt(a));var c=transitionFromLowerToUpper(t,r,a);var u=r&&transitionFromUpperToLower(t,a,i);if(charIsPunctuation(t.charCodeAt(a-1))||charIsPunctuation(t.charCodeAt(a))||o!==s||c||u){if(!isAllPunctuation(t,i,a)){n.push(e.createTextSpan(i,a-i))}i=a}}if(!isAllPunctuation(t,i,t.length)){n.push(e.createTextSpan(i,t.length-i))}return n}function charIsPunctuation(e){switch(e){case 33:case 34:case 35:case 37:case 38:case 39:case 40:case 41:case 42:case 44:case 45:case 46:case 47:case 58:case 59:case 63:case 64:case 91:case 92:case 93:case 95:case 123:case 125:return true}return false}function isAllPunctuation(e,t,r){return every(e,function(e){return charIsPunctuation(e)&&e!==95},t,r)}function transitionFromUpperToLower(e,t,r){return t!==r&&t+1<e.length&&isUpperCaseLetter(e.charCodeAt(t))&&isLowerCaseLetter(e.charCodeAt(t+1))&&every(e,isUpperCaseLetter,r,t)}function transitionFromLowerToUpper(e,t,r){var n=isUpperCaseLetter(e.charCodeAt(r-1));var i=isUpperCaseLetter(e.charCodeAt(r));return i&&(!t||!n)}function everyInRange(e,t,r){for(var n=e;n<t;n++){if(!r(n)){return false}}return true}function every(e,t,r,n){if(r===void 0){r=0}if(n===void 0){n=e.length}return everyInRange(r,n,function(r){return t(e.charCodeAt(r),r)})}})(s||(s={}));var s;(function(e){function preProcessFile(t,r,n){if(r===void 0){r=true}if(n===void 0){n=false}var i={languageVersion:1,pragmas:undefined,checkJsDirective:undefined,referencedFiles:[],typeReferenceDirectives:[],libReferenceDirectives:[],amdDependencies:[],hasNoDefaultLib:undefined,moduleName:undefined};var a=[];var o;var s;var c;var u=0;var l=false;function nextToken(){s=c;c=e.scanner.scan();if(c===18){u++}else if(c===19){u--}return c}function getFileReference(){var t=e.scanner.getTokenValue();var r=e.scanner.getTokenPos();return{fileName:t,pos:r,end:r+t.length}}function recordAmbientExternalModule(){if(!o){o=[]}o.push({ref:getFileReference(),depth:u})}function recordModuleName(){a.push(getFileReference());markAsExternalModuleIfTopLevel()}function markAsExternalModuleIfTopLevel(){if(u===0){l=true}}function tryConsumeDeclare(){var t=e.scanner.getToken();if(t===125){t=nextToken();if(t===130){t=nextToken();if(t===10){recordAmbientExternalModule()}}return true}return false}function tryConsumeImport(){if(s===24){return false}var t=e.scanner.getToken();if(t===92){t=nextToken();if(t===20){t=nextToken();if(t===10){recordModuleName();return true}}else if(t===10){recordModuleName();return true}else{if(t===72||e.isKeyword(t)){t=nextToken();if(t===144){t=nextToken();if(t===10){recordModuleName();return true}}else if(t===59){if(tryConsumeRequireCall(true)){return true}}else if(t===27){t=nextToken()}else{return true}}if(t===18){t=nextToken();while(t!==19&&t!==1){t=nextToken()}if(t===19){t=nextToken();if(t===144){t=nextToken();if(t===10){recordModuleName()}}}}else if(t===40){t=nextToken();if(t===119){t=nextToken();if(t===72||e.isKeyword(t)){t=nextToken();if(t===144){t=nextToken();if(t===10){recordModuleName()}}}}}}return true}return false}function tryConsumeExport(){var t=e.scanner.getToken();if(t===85){markAsExternalModuleIfTopLevel();t=nextToken();if(t===18){t=nextToken();while(t!==19&&t!==1){t=nextToken()}if(t===19){t=nextToken();if(t===144){t=nextToken();if(t===10){recordModuleName()}}}}else if(t===40){t=nextToken();if(t===144){t=nextToken();if(t===10){recordModuleName()}}}else if(t===92){t=nextToken();if(t===72||e.isKeyword(t)){t=nextToken();if(t===59){if(tryConsumeRequireCall(true)){return true}}}}return true}return false}function tryConsumeRequireCall(t){var r=t?nextToken():e.scanner.getToken();if(r===134){r=nextToken();if(r===20){r=nextToken();if(r===10){recordModuleName()}}return true}return false}function tryConsumeDefine(){var t=e.scanner.getToken();if(t===72&&e.scanner.getTokenValue()==="define"){t=nextToken();if(t!==20){return true}t=nextToken();if(t===10){t=nextToken();if(t===27){t=nextToken()}else{return true}}if(t!==22){return true}t=nextToken();while(t!==23&&t!==1){if(t===10){recordModuleName()}t=nextToken()}return true}return false}function processImports(){e.scanner.setText(t);nextToken();while(true){if(e.scanner.getToken()===1){break}if(tryConsumeDeclare()||tryConsumeImport()||tryConsumeExport()||n&&(tryConsumeRequireCall(false)||tryConsumeDefine())){continue}else{nextToken()}}e.scanner.setText(undefined)}if(r){processImports()}e.processCommentPragmas(i,t);e.processPragmasIntoFields(i,e.noop);if(l){if(o){for(var f=0,d=o;f<d.length;f++){var p=d[f];a.push(p.ref)}}return{referencedFiles:i.referencedFiles,typeReferenceDirectives:i.typeReferenceDirectives,libReferenceDirectives:i.libReferenceDirectives,importedFiles:a,isLibFile:!!i.hasNoDefaultLib,ambientExternalModules:undefined}}else{var g=void 0;if(o){for(var _=0,m=o;_<m.length;_++){var p=m[_];if(p.depth===0){if(!g){g=[]}g.push(p.ref.fileName)}else{a.push(p.ref)}}}return{referencedFiles:i.referencedFiles,typeReferenceDirectives:i.typeReferenceDirectives,libReferenceDirectives:i.libReferenceDirectives,importedFiles:a,isLibFile:!!i.hasNoDefaultLib,ambientExternalModules:g}}}e.preProcessFile=preProcessFile})(s||(s={}));var s;(function(e){var t;(function(t){function getRenameInfo(t,r,n){var i=e.getTouchingPropertyName(r,n);var a=i&&nodeIsEligibleForRename(i)?getRenameInfoForNode(i,t.getTypeChecker(),r,function(e){return t.isSourceFileDefaultLibrary(e.getSourceFile())}):undefined;return a||getRenameInfoError(e.Diagnostics.You_cannot_rename_this_element)}t.getRenameInfo=getRenameInfo;function getRenameInfoForNode(t,r,n,i){var a=r.getSymbolAtLocation(t);if(!a)return;var o=a.declarations;if(!o||o.length===0)return;if(o.some(i)){return getRenameInfoError(e.Diagnostics.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library)}if(e.isIdentifier(t)&&t.originalKeywordKind===80&&a.parent.flags&1536){return undefined}if(e.isStringLiteralLike(t)&&e.tryGetImportFromModuleSpecifier(t)){return getRenameInfoForModule(t,n,a)}var s=e.SymbolDisplay.getSymbolKind(r,a,t);var c=e.isImportOrExportSpecifierName(t)||e.isStringOrNumericLiteralLike(t)&&t.parent.kind===149?e.stripQuotes(e.getTextOfIdentifierOrLiteral(t)):undefined;var u=c||r.symbolToString(a);var l=c||r.getFullyQualifiedName(a);return getRenameInfoSuccess(u,l,s,e.SymbolDisplay.getSymbolModifiers(a),t,n)}function getRenameInfoForModule(t,r,n){if(!e.isExternalModuleNameRelative(t.text)){return getRenameInfoError(e.Diagnostics.You_cannot_rename_a_module_via_a_global_import)}var i=e.find(n.declarations,e.isSourceFile);if(!i)return undefined;var a=t.text.endsWith("/index")||t.text.endsWith("/index.js")?undefined:e.tryRemoveSuffix(e.removeFileExtension(i.fileName),"/index");var o=a===undefined?i.fileName:a;var s=a===undefined?"module":"directory";var c=t.text.lastIndexOf("/")+1;var u=e.createTextSpan(t.getStart(r)+1+c,t.text.length-c);return{canRename:true,fileToRename:o,kind:s,displayName:o,fullDisplayName:o,kindModifiers:"",triggerSpan:u}}function getRenameInfoSuccess(e,t,r,n,i,a){return{canRename:true,fileToRename:undefined,kind:r,displayName:e,fullDisplayName:t,kindModifiers:n,triggerSpan:createTriggerSpanForNode(i,a)}}function getRenameInfoError(t){return{canRename:false,localizedErrorMessage:e.getLocaleSpecificMessage(t)}}function createTriggerSpanForNode(t,r){var n=t.getStart(r);var i=t.getWidth(r);if(t.kind===10){n+=1;i-=2}return e.createTextSpan(n,i)}function nodeIsEligibleForRename(t){switch(t.kind){case 72:case 10:case 100:return true;case 8:return e.isLiteralNameOfPropertyDeclarationOrIndexAccess(t);default:return false}}})(t=e.Rename||(e.Rename={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["Call"]=0]="Call";e[e["TypeArgs"]=1]="TypeArgs";e[e["Contextual"]=2]="Contextual"})(r||(r={}));function getSignatureHelpItems(t,r,n,i,a){var o=t.getTypeChecker();var s=e.findTokenOnLeftOfPosition(r,n);if(!s){return undefined}var c=!!i&&i.kind==="characterTyped";if(c&&(e.isInString(r,n,s)||e.isInComment(r,n))){return undefined}var u=!!i&&i.kind==="invoked";var l=getContainingArgumentInfo(s,n,r,o,u);if(!l)return undefined;a.throwIfCancellationRequested();var f=getCandidateOrTypeInfo(l,o,r,s,c);a.throwIfCancellationRequested();if(!f){return e.isSourceFileJS(r)?createJSSignatureHelpItems(l,t,a):undefined}return o.runWithCancellationToken(a,function(e){return f.kind===0?createSignatureHelpItems(f.candidates,f.resolvedSignature,l,r,e):createTypeHelpItems(f.symbol,l,r,e)})}t.getSignatureHelpItems=getSignatureHelpItems;var n;(function(e){e[e["Candidate"]=0]="Candidate";e[e["Type"]=1]="Type"})(n||(n={}));function getCandidateOrTypeInfo(t,r,n,i,a){var o=t.invocation,s=t.argumentCount;switch(o.kind){case 0:{if(a&&!isSyntacticOwner(i,o.node,n)){return undefined}var c=[];var u=r.getResolvedSignatureForSignatureHelp(o.node,c,s);return c.length===0?undefined:{kind:0,candidates:c,resolvedSignature:u}}case 1:{var l=o.called;if(a&&!containsPrecedingToken(i,n,e.isIdentifier(l)?l.parent:l)){return undefined}var c=e.getPossibleGenericSignatures(l,s,r);if(c.length!==0)return{kind:0,candidates:c,resolvedSignature:e.first(c)};var f=r.getSymbolAtLocation(l);return f&&{kind:1,symbol:f}}case 2:return{kind:0,candidates:[o.signature],resolvedSignature:o.signature};default:return e.Debug.assertNever(o)}}function isSyntacticOwner(t,r,n){if(!e.isCallOrNewExpression(r))return false;var i=r.getChildren(n);switch(t.kind){case 20:return e.contains(i,t);case 27:{var a=e.findContainingList(t);return!!a&&e.contains(i,a)}case 28:return containsPrecedingToken(t,n,r.expression);default:return false}}function createJSSignatureHelpItems(t,r,n){if(t.invocation.kind===2)return undefined;var i=getExpressionFromInvocation(t.invocation);var a=e.isIdentifier(i)?i.text:e.isPropertyAccessExpression(i)?i.name.text:undefined;var o=r.getTypeChecker();return a===undefined?undefined:e.firstDefined(r.getSourceFiles(),function(r){return e.firstDefined(r.getNamedDeclarations().get(a),function(e){var i=e.symbol&&o.getTypeOfSymbolAtLocation(e.symbol,e);var a=i&&i.getCallSignatures();if(a&&a.length){return o.runWithCancellationToken(n,function(e){return createSignatureHelpItems(a,a[0],t,r,e)})}})})}function containsPrecedingToken(t,r,n){var i=e.Debug.assertDefined(e.findPrecedingToken(t.getFullStart(),r,t.parent,true));return e.rangeContainsRange(n,i)}function getArgumentInfoForCompletions(e,t,r){var n=getImmediatelyContainingArgumentInfo(e,t,r);return!n||n.isTypeParameterList||n.invocation.kind!==0?undefined:{invocation:n.invocation.node,argumentCount:n.argumentCount,argumentIndex:n.argumentIndex}}t.getArgumentInfoForCompletions=getArgumentInfoForCompletions;function getArgumentOrParameterListInfo(t,r){var n=getArgumentOrParameterListAndIndex(t,r);if(!n)return undefined;var i=n.list,a=n.argumentIndex;var o=getArgumentCount(i);if(a!==0){e.Debug.assertLessThan(a,o)}var s=getApplicableSpanForArguments(i,r);return{list:i,argumentIndex:a,argumentCount:o,argumentsSpan:s}}function getArgumentOrParameterListAndIndex(t,r){if(t.kind===28||t.kind===20){return{list:getChildListThatStartsWithOpenerToken(t.parent,t,r),argumentIndex:0}}else{var n=e.findContainingList(t);return n&&{list:n,argumentIndex:getArgumentIndex(n,t)}}}function getImmediatelyContainingArgumentInfo(t,r,n){var i=t.parent;if(e.isCallOrNewExpression(i)){var a=i;var o=getArgumentOrParameterListInfo(t,n);if(!o)return undefined;var s=o.list,c=o.argumentIndex,u=o.argumentCount,l=o.argumentsSpan;var f=!!i.typeArguments&&i.typeArguments.pos===s.pos;return{isTypeParameterList:f,invocation:{kind:0,node:a},argumentsSpan:l,argumentIndex:c,argumentCount:u}}else if(e.isNoSubstitutionTemplateLiteral(t)&&e.isTaggedTemplateExpression(i)){if(e.isInsideTemplateLiteral(t,r,n)){return getArgumentListInfoForTemplate(i,0,n)}return undefined}else if(e.isTemplateHead(t)&&i.parent.kind===193){var d=i;var p=d.parent;e.Debug.assert(d.kind===206);var c=e.isInsideTemplateLiteral(t,r,n)?0:1;return getArgumentListInfoForTemplate(p,c,n)}else if(e.isTemplateSpan(i)&&e.isTaggedTemplateExpression(i.parent.parent)){var g=i;var p=i.parent.parent;if(e.isTemplateTail(t)&&!e.isInsideTemplateLiteral(t,r,n)){return undefined}var _=g.parent.templateSpans.indexOf(g);var c=getArgumentIndexForTemplatePiece(_,t,r,n);return getArgumentListInfoForTemplate(p,c,n)}else if(e.isJsxOpeningLikeElement(i)){var m=i.attributes.pos;var y=e.skipTrivia(n.text,i.attributes.end,false);return{isTypeParameterList:false,invocation:{kind:0,node:i},argumentsSpan:e.createTextSpan(m,y-m),argumentIndex:0,argumentCount:1}}else{var h=e.getPossibleTypeArgumentsInfo(t,n);if(h){var v=h.called,T=h.nTypeArguments;var a={kind:1,called:v};var l=e.createTextSpanFromBounds(v.getStart(n),t.end);return{isTypeParameterList:true,invocation:a,argumentsSpan:l,argumentIndex:T,argumentCount:T+1}}return undefined}}function getImmediatelyContainingArgumentOrContextualParameterInfo(e,t,r,n){return tryGetParameterInfo(e,t,r,n)||getImmediatelyContainingArgumentInfo(e,t,r)}function getHighestBinary(t){return e.isBinaryExpression(t.parent)?getHighestBinary(t.parent):t}function countBinaryExpressionParameters(t){return e.isBinaryExpression(t.left)?countBinaryExpressionParameters(t.left)+1:2}function tryGetParameterInfo(t,r,n,i){var a=getContextualSignatureLocationInfo(t,n,i);if(!a)return undefined;var o=a.contextualType,s=a.argumentIndex,c=a.argumentCount,u=a.argumentsSpan;var l=o.getCallSignatures();if(l.length!==1)return undefined;var f={kind:2,signature:e.first(l),node:t,symbol:chooseBetterSymbol(o.symbol)};return{isTypeParameterList:false,invocation:f,argumentsSpan:u,argumentIndex:s,argumentCount:c}}function getContextualSignatureLocationInfo(t,r,n){if(t.kind!==20&&t.kind!==27)return undefined;var i=t.parent;switch(i.kind){case 195:case 156:case 196:case 197:var a=getArgumentOrParameterListInfo(t,r);if(!a)return undefined;var o=a.argumentIndex,s=a.argumentCount,c=a.argumentsSpan;var u=e.isMethodDeclaration(i)?n.getContextualTypeForObjectLiteralElement(i):n.getContextualType(i);return u&&{contextualType:u,argumentIndex:o,argumentCount:s,argumentsSpan:c};case 204:{var l=getHighestBinary(i);var f=n.getContextualType(l);var d=t.kind===20?0:countBinaryExpressionParameters(i)-1;var p=countBinaryExpressionParameters(l);return f&&{contextualType:f,argumentIndex:d,argumentCount:p,argumentsSpan:e.createTextSpanFromNode(i)}}default:return undefined}}function chooseBetterSymbol(t){return t.name==="__type"?e.firstDefined(t.declarations,function(t){return e.isFunctionTypeNode(t)?t.parent.symbol:undefined})||t:t}function getArgumentIndex(e,t){var r=0;for(var n=0,i=e.getChildren();n<i.length;n++){var a=i[n];if(a===t){break}if(a.kind!==27){r++}}return r}function getArgumentCount(t){var r=t.getChildren();var n=e.countWhere(r,function(e){return e.kind!==27});if(r.length>0&&e.last(r).kind===27){n++}return n}function getArgumentIndexForTemplatePiece(t,r,n,i){e.Debug.assert(n>=r.getStart(),"Assumed 'position' could not occur before node.");if(e.isTemplateLiteralToken(r)){if(e.isInsideTemplateLiteral(r,n,i)){return 0}return t+2}return t+1}function getArgumentListInfoForTemplate(t,r,n){var i=e.isNoSubstitutionTemplateLiteral(t.template)?1:t.template.templateSpans.length+1;if(r!==0){e.Debug.assertLessThan(r,i)}return{isTypeParameterList:false,invocation:{kind:0,node:t},argumentsSpan:getApplicableSpanForTaggedTemplate(t,n),argumentIndex:r,argumentCount:i}}function getApplicableSpanForArguments(t,r){var n=t.getFullStart();var i=e.skipTrivia(r.text,t.getEnd(),false);return e.createTextSpan(n,i-n)}function getApplicableSpanForTaggedTemplate(t,r){var n=t.template;var i=n.getStart();var a=n.getEnd();if(n.kind===206){var o=e.last(n.templateSpans);if(o.literal.getFullWidth()===0){a=e.skipTrivia(r.text,a,false)}}return e.createTextSpan(i,a-i)}function getContainingArgumentInfo(t,r,n,i,a){var o=function(t){e.Debug.assert(e.rangeContainsRange(t.parent,t),"Not a subspan",function(){return"Child: "+e.Debug.showSyntaxKind(t)+", parent: "+e.Debug.showSyntaxKind(t.parent)});var a=getImmediatelyContainingArgumentOrContextualParameterInfo(t,r,n,i);if(a){return{value:a}}};for(var s=t;a||!e.isBlock(s)&&!e.isSourceFile(s);s=s.parent){var c=o(s);if(typeof c==="object")return c.value}return undefined}function getChildListThatStartsWithOpenerToken(t,r,n){var i=t.getChildren(n);var a=i.indexOf(r);e.Debug.assert(a>=0&&i.length>a+1);return i[a+1]}function getExpressionFromInvocation(t){return t.kind===0?e.getInvokedExpression(t.node):t.called}function getEnclosingDeclarationFromInvocation(e){return e.kind===0?e.node:e.kind===1?e.called:e.node}var i=8192|70221824|16384;function createSignatureHelpItems(t,r,n,i,a){var o=n.isTypeParameterList,s=n.argumentCount,c=n.argumentsSpan,u=n.invocation,l=n.argumentIndex;var f=getEnclosingDeclarationFromInvocation(u);var d=u.kind===2?u.symbol:a.getSymbolAtLocation(getExpressionFromInvocation(u));var p=d?e.symbolToDisplayParts(a,d,undefined,undefined):e.emptyArray;var g=t.map(function(e){return getSignatureHelpItem(e,p,o,a,f,i)});if(l!==0){e.Debug.assertLessThan(l,s)}var _=t.indexOf(r);e.Debug.assert(_!==-1);return{items:g,applicableSpan:c,selectedItemIndex:_,argumentIndex:l,argumentCount:s}}function createTypeHelpItems(e,t,r,n){var i=t.argumentCount,a=t.argumentsSpan,o=t.invocation,s=t.argumentIndex;var c=n.getLocalTypeParametersOfClassOrInterfaceOrTypeAlias(e);if(!c)return undefined;var u=[getTypeHelpItem(e,c,n,getEnclosingDeclarationFromInvocation(o),r)];return{items:u,applicableSpan:a,selectedItemIndex:0,argumentIndex:s,argumentCount:i}}function getTypeHelpItem(t,r,n,i,o){var s=e.symbolToDisplayParts(n,t);var c=e.createPrinter({removeComments:true});var u=r.map(function(e){return createSignatureHelpParameterForTypeParameter(e,n,i,o,c)});var l=t.getDocumentationComment(n);var f=t.getJsDocTags();var d=s.concat([e.punctuationPart(28)]);return{isVariadic:false,prefixDisplayParts:d,suffixDisplayParts:[e.punctuationPart(30)],separatorDisplayParts:a,parameters:u,documentation:l,tags:f}}var a=[e.punctuationPart(27),e.spacePart()];function getSignatureHelpItem(e,t,r,n,i,o){var s=(r?itemInfoForTypeParameters:itemInfoForParameters)(e,n,i,o),c=s.isVariadic,u=s.parameters,l=s.prefix,f=s.suffix;var d=t.concat(l);var p=f.concat(returnTypeToDisplayParts(e,i,n));var g=e.getDocumentationComment(n);var _=e.getJsDocTags();return{isVariadic:c,prefixDisplayParts:d,suffixDisplayParts:p,separatorDisplayParts:a,parameters:u,documentation:g,tags:_}}function returnTypeToDisplayParts(t,r,n){return e.mapToDisplayParts(function(e){e.writePunctuation(":");e.writeSpace(" ");var i=n.getTypePredicateOfSignature(t);if(i){n.writeTypePredicate(i,r,undefined,e)}else{n.writeType(n.getReturnTypeOfSignature(t),r,undefined,e)}})}function itemInfoForTypeParameters(t,r,n,a){var o=(t.target||t).typeParameters;var s=e.createPrinter({removeComments:true});var c=(o||e.emptyArray).map(function(e){return createSignatureHelpParameterForTypeParameter(e,r,n,a,s)});var u=e.mapToDisplayParts(function(o){var c=t.thisParameter?[r.symbolToParameterDeclaration(t.thisParameter,n,i)]:[];var u=e.createNodeArray(c.concat(t.parameters.map(function(e){return r.symbolToParameterDeclaration(e,n,i)})));s.writeList(2576,u,a,o)});return{isVariadic:false,parameters:c,prefix:[e.punctuationPart(28)],suffix:[e.punctuationPart(30)].concat(u)}}function itemInfoForParameters(t,r,n,i){var a=t.hasRestParameter;var o=e.createPrinter({removeComments:true});var s=e.mapToDisplayParts(function(a){if(t.typeParameters&&t.typeParameters.length){var s=e.createNodeArray(t.typeParameters.map(function(e){return r.typeParameterToDeclaration(e,n)}));o.writeList(53776,s,i,a)}});var c=t.parameters.map(function(e){return createSignatureHelpParameterForParameter(e,r,n,i,o)});return{isVariadic:a,parameters:c,prefix:s.concat([e.punctuationPart(20)]),suffix:[e.punctuationPart(21)]}}function createSignatureHelpParameterForParameter(t,r,n,a,o){var s=e.mapToDisplayParts(function(e){var s=r.symbolToParameterDeclaration(t,n,i);o.writeNode(4,s,a,e)});var c=r.isOptionalParameter(t.valueDeclaration);return{name:t.name,documentation:t.getDocumentationComment(r),displayParts:s,isOptional:c}}function createSignatureHelpParameterForTypeParameter(t,r,n,i,a){var o=e.mapToDisplayParts(function(e){var o=r.typeParameterToDeclaration(t,n);a.writeNode(4,o,i,e)});return{name:t.symbol.name,documentation:t.symbol.getDocumentationComment(r),displayParts:o,isOptional:false}}})(t=e.SignatureHelp||(e.SignatureHelp={}))})(s||(s={}));var s;(function(e){var t=/^data:(?:application\/json(?:;charset=[uU][tT][fF]-8);base64,([A-Za-z0-9+\/=]+)$)?/;function getSourceMapper(r,n,i,a,o){var s=e.createGetCanonicalFileName(r);var c;return{tryGetSourcePosition:tryGetSourcePosition,tryGetGeneratedPosition:tryGetGeneratedPosition,toLineColumnOffset:toLineColumnOffset,clearCache:clearCache};function toPath(t){return e.toPath(t,n,s)}function scanForSourcemapURL(t){var r=c.get(toPath(t));if(!r){return}return e.tryGetSourceMappingURL(r.text,e.getLineStarts(r))}function convertDocumentToSourceMapper(t,r,n){var a=e.tryParseRawSourceMap(r);if(!a||!a.sources||!a.file||!a.mappings){return t.sourceMapper=e.identitySourceMapConsumer}var u=o();return t.sourceMapper=e.createDocumentPositionMapper({getSourceFileLike:function(e){var t=u&&u.getSourceFileByPath(e);if(t===undefined||t.resolvedPath!==e){return c.get(e)}return t},getCanonicalFileName:s,log:i},a,n)}function getSourceMapper(r,n){if(!a.readFile||!a.fileExists){return n.sourceMapper=e.identitySourceMapConsumer}if(n.sourceMapper){return n.sourceMapper}var i=scanForSourcemapURL(r);if(i){var o=t.exec(i);if(o){if(o[1]){var c=o[1];return convertDocumentToSourceMapper(n,e.base64decode(e.sys,c),r)}i=undefined}}var u=[];if(i){u.push(i)}u.push(r+".map");for(var l=0,f=u;l<f.length;l++){var d=f[l];var p=e.toPath(d,e.getDirectoryPath(r),s);if(a.fileExists(p)){return convertDocumentToSourceMapper(n,a.readFile(p),p)}}return n.sourceMapper=e.identitySourceMapConsumer}function tryGetSourcePosition(t){if(!e.isDeclarationFileName(t.fileName))return undefined;var r=getFile(t.fileName);if(!r)return undefined;var n=getSourceMapper(t.fileName,r).getSourcePosition(t);return n===t?undefined:tryGetSourcePosition(n)||n}function tryGetGeneratedPosition(t){var r=o();var i=r.getCompilerOptions();var a=i.outFile||i.out;var c=a?e.removeFileExtension(a)+".d.ts":e.getDeclarationEmitOutputFilePathWorker(t.fileName,r.getCompilerOptions(),n,r.getCommonSourceDirectory(),s);if(c===undefined)return undefined;var u=getFile(c);if(!u)return undefined;var l=getSourceMapper(c,u).getGeneratedPosition(t);return l===t?undefined:l}function getFile(e){var t=toPath(e);var r=o().getSourceFileByPath(t);if(r&&r.resolvedPath===t){return r}return c.get(t)}function toLineColumnOffset(e,t){var r=getFile(e);return r.getLineAndCharacterOfPosition(t)}function clearCache(){c=createSourceFileLikeCache(a)}}e.getSourceMapper=getSourceMapper;function createSourceFileLikeCache(t){var r=e.createMap();return{get:function(n){if(r.has(n)){return r.get(n)}if(!t.fileExists||!t.readFile||!t.fileExists(n))return;var i=t.readFile(n);var a={text:i,lineMap:undefined,getLineAndCharacterOfPosition:function(t){return e.computeLineAndCharacterOfPosition(e.getLineStarts(this),t)}};r.set(n,a);return a}}}})(s||(s={}));var s;(function(e){function computeSuggestionDiagnostics(t,r,n){r.getSemanticDiagnostics(t,n);var i=[];var a=r.getTypeChecker();if(t.commonJsModuleIndicator&&(e.programContainsEs6Modules(r)||e.compilerOptionsIndicateEs6Modules(r.getCompilerOptions()))&&containsTopLevelCommonjs(t)){i.push(e.createDiagnosticForNode(getErrorNodeFromCommonJsIndicator(t.commonJsModuleIndicator),e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module))}var o=e.isSourceFileJS(t);check(t);if(e.getAllowSyntheticDefaultImports(r.getCompilerOptions())){for(var s=0,c=t.imports;s<c.length;s++){var u=c[s];var l=e.importFromModuleSpecifier(u);var f=importNameForConvertToDefaultImport(l);if(!f)continue;var d=e.getResolvedModule(t,u.text);var p=d&&r.getSourceFile(d.resolvedFileName);if(p&&p.externalModuleIndicator&&e.isExportAssignment(p.externalModuleIndicator)&&p.externalModuleIndicator.isExportEquals){i.push(e.createDiagnosticForNode(f,e.Diagnostics.Import_may_be_converted_to_a_default_import))}}}e.addRange(i,t.bindSuggestionDiagnostics);e.addRange(i,r.getSuggestionDiagnostics(t,n));return i.sort(function(e,t){return e.start-t.start});function check(r){if(o){switch(r.kind){case 196:var n=e.getDeclarationOfExpando(r);if(n){var s=n.symbol;if(s&&(s.exports&&s.exports.size||s.members&&s.members.size)){i.push(e.createDiagnosticForNode(e.isVariableDeclaration(r.parent)?r.parent.name:r,e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration));break}}case 239:var c=r.symbol;if(c.members&&c.members.size>0){i.push(e.createDiagnosticForNode(e.isVariableDeclaration(r.parent)?r.parent.name:r,e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration))}break}}else{if(e.isVariableStatement(r)&&r.parent===t&&r.declarationList.flags&2&&r.declarationList.declarations.length===1){var u=r.declarationList.declarations[0].initializer;if(u&&e.isRequireCall(u,true)){i.push(e.createDiagnosticForNode(u,e.Diagnostics.require_call_may_be_converted_to_an_import))}}if(e.codefix.parameterShouldGetTypeFromJSDoc(r)){i.push(e.createDiagnosticForNode(r.name||r,e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types))}}if(e.isFunctionLikeDeclaration(r)){addConvertToAsyncFunctionDiagnostics(r,a,i)}r.forEachChild(check)}}e.computeSuggestionDiagnostics=computeSuggestionDiagnostics;function containsTopLevelCommonjs(t){return t.statements.some(function(t){switch(t.kind){case 219:return t.declarationList.declarations.some(function(t){return!!t.initializer&&e.isRequireCall(propertyAccessLeftHandSide(t.initializer),true)});case 221:{var r=t.expression;if(!e.isBinaryExpression(r))return e.isRequireCall(r,true);var n=e.getAssignmentDeclarationKind(r);return n===1||n===2}default:return false}})}function propertyAccessLeftHandSide(t){return e.isPropertyAccessExpression(t)?propertyAccessLeftHandSide(t.expression):t}function importNameForConvertToDefaultImport(t){switch(t.kind){case 249:var r=t.importClause,n=t.moduleSpecifier;return r&&!r.name&&r.namedBindings&&r.namedBindings.kind===251&&e.isStringLiteral(n)?r.namedBindings.name:undefined;case 248:return t.name;default:return undefined}}function addConvertToAsyncFunctionDiagnostics(t,r,n){if(!e.isAsyncFunction(t)&&t.body&&e.isBlock(t.body)&&hasReturnStatementWithPromiseHandler(t.body)&&returnsPromise(t,r)){n.push(e.createDiagnosticForNode(!t.name&&e.isVariableDeclaration(t.parent)&&e.isIdentifier(t.parent.name)?t.parent.name:t,e.Diagnostics.This_may_be_converted_to_an_async_function))}}function returnsPromise(e,t){var r=t.getTypeAtLocation(e);var n=t.getSignaturesOfType(r,0);var i=n.length?t.getReturnTypeOfSignature(n[0]):undefined;return!!i&&!!t.getPromisedTypeOfPromise(i)}function getErrorNodeFromCommonJsIndicator(t){return e.isBinaryExpression(t)?t.left:t}function hasReturnStatementWithPromiseHandler(t){return!!e.forEachReturnStatement(t,isReturnStatementWithFixablePromiseHandler)}function isReturnStatementWithFixablePromiseHandler(t){return e.isReturnStatement(t)&&!!t.expression&&isFixablePromiseHandler(t.expression)}e.isReturnStatementWithFixablePromiseHandler=isReturnStatementWithFixablePromiseHandler;function isFixablePromiseHandler(t){if(!isPromiseHandler(t)||!t.arguments.every(isFixablePromiseArgument)){return false}var r=t.expression;while(isPromiseHandler(r)||e.isPropertyAccessExpression(r)){if(e.isCallExpression(r)&&!r.arguments.every(isFixablePromiseArgument)){return false}r=r.expression}return true}e.isFixablePromiseHandler=isFixablePromiseHandler;function isPromiseHandler(t){return e.isCallExpression(t)&&(e.hasPropertyAccessExpressionWithName(t,"then")||e.hasPropertyAccessExpressionWithName(t,"catch"))}function isFixablePromiseArgument(e){switch(e.kind){case 96:case 72:case 239:case 196:case 197:return true;default:return false}}})(s||(s={}));var s;(function(e){var t;(function(t){function getSymbolKind(t,r,n){var i=getSymbolKindOfConstructorPropertyMethodAccessorFunctionOrVar(t,r,n);if(i!==""){return i}var a=e.getCombinedLocalAndExportSymbolFlags(r);if(a&32){return e.getDeclarationOfKind(r,209)?"local class":"class"}if(a&384)return"enum";if(a&524288)return"type";if(a&64)return"interface";if(a&262144)return"type parameter";if(a&262144)return"type parameter";if(a&8)return"enum member";if(a&2097152)return"alias";if(a&1536)return"module";return i}t.getSymbolKind=getSymbolKind;function getSymbolKindOfConstructorPropertyMethodAccessorFunctionOrVar(t,r,n){var i=t.getRootSymbols(r);if(i.length===1&&e.first(i).flags&8192&&t.getTypeOfSymbolAtLocation(r,n).getNonNullableType().getCallSignatures().length!==0){return"method"}if(t.isUndefinedSymbol(r)){return"var"}if(t.isArgumentsSymbol(r)){return"local var"}if(n.kind===100&&e.isExpression(n)){return"parameter"}var a=e.getCombinedLocalAndExportSymbolFlags(r);if(a&3){if(e.isFirstDeclarationOfSymbolParameter(r)){return"parameter"}else if(r.valueDeclaration&&e.isVarConst(r.valueDeclaration)){return"const"}else if(e.forEach(r.declarations,e.isLet)){return"let"}return isLocalVariableOrFunction(r)?"local var":"var"}if(a&16)return isLocalVariableOrFunction(r)?"local function":"function";if(a&32768)return"getter";if(a&65536)return"setter";if(a&8192)return"method";if(a&16384)return"constructor";if(a&4){if(a&33554432&&r.checkFlags&6){var o=e.forEach(t.getRootSymbols(r),function(t){var r=t.getFlags();if(r&(98308|3)){return"property"}e.Debug.assert(!!(r&(8192|16)))});if(!o){var s=t.getTypeOfSymbolAtLocation(r,n);if(s.getCallSignatures().length){return"method"}return"property"}return o}switch(n.parent&&n.parent.kind){case 262:case 260:case 261:return n.kind===72?"property":"JSX attribute";case 267:return"JSX attribute";default:return"property"}}return""}function getSymbolModifiers(t){var r=t&&t.declarations&&t.declarations.length>0?e.getNodeModifiers(t.declarations[0]):"";var n=t&&t.flags&16777216?"optional":"";return r&&n?r+","+n:r||n}t.getSymbolModifiers=getSymbolModifiers;function getSymbolDisplayPartsDocumentationAndSymbolKind(t,r,n,i,a,o,s){if(o===void 0){o=e.getMeaningFromLocation(a)}var c=[];var u;var l;var f=e.getCombinedLocalAndExportSymbolFlags(r);var d=o&1?getSymbolKindOfConstructorPropertyMethodAccessorFunctionOrVar(t,r,a):"";var p=false;var g=a.kind===100&&e.isInExpressionContext(a);var _;var m;var y;var h;if(a.kind===100&&!g){return{displayParts:[e.keywordPart(100)],documentation:[],symbolKind:"primitive type",tags:undefined}}if(d!==""||f&32||f&2097152){if(d==="getter"||d==="setter"){d="property"}var v=void 0;_=g?t.getTypeAtLocation(a):t.getTypeOfSymbolAtLocation(r.exportSymbol||r,a);if(a.parent&&a.parent.kind===189){var T=a.parent.name;if(T===a||T&&T.getFullWidth()===0){a=a.parent}}var S=void 0;if(e.isCallOrNewExpression(a)){S=a}else if(e.isCallExpressionTarget(a)||e.isNewExpressionTarget(a)){S=a.parent}else if(a.parent&&e.isJsxOpeningLikeElement(a.parent)&&e.isFunctionLike(r.valueDeclaration)){S=a.parent}if(S){var b=[];v=t.getResolvedSignature(S,b);var x=S.kind===192||e.isCallExpression(S)&&S.expression.kind===98;var C=x?_.getConstructSignatures():_.getCallSignatures();if(!e.contains(C,v.target)&&!e.contains(C,v)){v=C.length?C[0]:undefined}if(v){if(x&&f&32){d="constructor";addPrefixForAnyFunctionOrVar(_.symbol,d)}else if(f&2097152){d="alias";pushSymbolKind(d);c.push(e.spacePart());if(x){c.push(e.keywordPart(95));c.push(e.spacePart())}addFullSymbolName(r)}else{addPrefixForAnyFunctionOrVar(r,d)}switch(d){case"JSX attribute":case"property":case"var":case"const":case"let":case"parameter":case"local var":c.push(e.punctuationPart(57));c.push(e.spacePart());if(!(e.getObjectFlags(_)&16)&&_.symbol){e.addRange(c,e.symbolToDisplayParts(t,_.symbol,i,undefined,4|1));c.push(e.lineBreakPart())}if(x){c.push(e.keywordPart(95));c.push(e.spacePart())}addSignatureDisplayParts(v,C,262144);break;default:addSignatureDisplayParts(v,C)}p=true}}else if(e.isNameOfFunctionDeclaration(a)&&!(f&98304)||a.kind===124&&a.parent.kind===157){var E=a.parent;var D=e.find(r.declarations,function(e){return e===(a.kind===124?E.parent:E)});if(D){var C=E.kind===157?_.getNonNullableType().getConstructSignatures():_.getNonNullableType().getCallSignatures();if(!t.isImplementationOfOverload(E)){v=t.getSignatureFromDeclaration(E)}else{v=C[0]}if(E.kind===157){d="constructor";addPrefixForAnyFunctionOrVar(_.symbol,d)}else{addPrefixForAnyFunctionOrVar(E.kind===160&&!(_.symbol.flags&2048||_.symbol.flags&4096)?_.symbol:r,d)}addSignatureDisplayParts(v,C);p=true}}}if(f&32&&!p&&!g){addAliasPrefixIfNecessary();if(e.getDeclarationOfKind(r,209)){pushSymbolKind("local class")}else{c.push(e.keywordPart(76))}c.push(e.spacePart());addFullSymbolName(r);writeTypeParametersOfSymbol(r,n)}if(f&64&&o&2){prefixNextMeaning();c.push(e.keywordPart(110));c.push(e.spacePart());addFullSymbolName(r);writeTypeParametersOfSymbol(r,n)}if(f&524288&&o&2){prefixNextMeaning();c.push(e.keywordPart(140));c.push(e.spacePart());addFullSymbolName(r);writeTypeParametersOfSymbol(r,n);c.push(e.spacePart());c.push(e.operatorPart(59));c.push(e.spacePart());e.addRange(c,e.typeToDisplayParts(t,t.getDeclaredTypeOfSymbol(r),i,8388608))}if(f&384){prefixNextMeaning();if(e.some(r.declarations,function(t){return e.isEnumDeclaration(t)&&e.isEnumConst(t)})){c.push(e.keywordPart(77));c.push(e.spacePart())}c.push(e.keywordPart(84));c.push(e.spacePart());addFullSymbolName(r)}if(f&1536){prefixNextMeaning();var k=e.getDeclarationOfKind(r,244);var N=k&&k.name&&k.name.kind===72;c.push(e.keywordPart(N?131:130));c.push(e.spacePart());addFullSymbolName(r)}if(f&262144&&o&2){prefixNextMeaning();c.push(e.punctuationPart(20));c.push(e.textPart("type parameter"));c.push(e.punctuationPart(21));c.push(e.spacePart());addFullSymbolName(r);if(r.parent){addInPrefix();addFullSymbolName(r.parent,i);writeTypeParametersOfSymbol(r.parent,i)}else{var A=e.getDeclarationOfKind(r,150);if(A===undefined)return e.Debug.fail();var k=A.parent;if(k){if(e.isFunctionLikeKind(k.kind)){addInPrefix();var v=t.getSignatureFromDeclaration(k);if(k.kind===161){c.push(e.keywordPart(95));c.push(e.spacePart())}else if(k.kind!==160&&k.name){addFullSymbolName(k.symbol)}e.addRange(c,e.signatureToDisplayParts(t,v,n,32))}else if(k.kind===242){addInPrefix();c.push(e.keywordPart(140));c.push(e.spacePart());addFullSymbolName(k.symbol);writeTypeParametersOfSymbol(k.symbol,n)}}}}if(f&8){d="enum member";addPrefixForAnyFunctionOrVar(r,"enum member");var k=r.declarations[0];if(k.kind===278){var O=t.getConstantValue(k);if(O!==undefined){c.push(e.spacePart());c.push(e.operatorPart(59));c.push(e.spacePart());c.push(e.displayPart(e.getTextOfConstantValue(O),typeof O==="number"?e.SymbolDisplayPartKind.numericLiteral:e.SymbolDisplayPartKind.stringLiteral))}}}if(f&2097152){prefixNextMeaning();if(!p){var F=t.getAliasedSymbol(r);if(F!==r&&F.declarations&&F.declarations.length>0){var P=F.declarations[0];var I=e.getNameOfDeclaration(P);if(I){var w=e.isModuleWithStringLiteralName(P)&&e.hasModifier(P,2);var M=r.name!=="default"&&!w;var L=getSymbolDisplayPartsDocumentationAndSymbolKind(t,F,e.getSourceFileOfNode(P),P,I,o,M?r:F);c.push.apply(c,L.displayParts);c.push(e.lineBreakPart());y=L.documentation;h=L.tags}}}switch(r.declarations[0].kind){case 247:c.push(e.keywordPart(85));c.push(e.spacePart());c.push(e.keywordPart(131));break;case 254:c.push(e.keywordPart(85));c.push(e.spacePart());c.push(e.keywordPart(r.declarations[0].isExportEquals?59:80));break;case 257:c.push(e.keywordPart(85));break;default:c.push(e.keywordPart(92))}c.push(e.spacePart());addFullSymbolName(r);e.forEach(r.declarations,function(r){if(r.kind===248){var n=r;if(e.isExternalModuleImportEqualsDeclaration(n)){c.push(e.spacePart());c.push(e.operatorPart(59));c.push(e.spacePart());c.push(e.keywordPart(134));c.push(e.punctuationPart(20));c.push(e.displayPart(e.getTextOfNode(e.getExternalModuleImportEqualsDeclarationExpression(n)),e.SymbolDisplayPartKind.stringLiteral));c.push(e.punctuationPart(21))}else{var a=t.getSymbolAtLocation(n.moduleReference);if(a){c.push(e.spacePart());c.push(e.operatorPart(59));c.push(e.spacePart());addFullSymbolName(a,i)}}return true}})}if(!p){if(d!==""){if(_){if(g){prefixNextMeaning();c.push(e.keywordPart(100))}else{addPrefixForAnyFunctionOrVar(r,d)}if(d==="property"||d==="JSX attribute"||f&3||d==="local var"||g){c.push(e.punctuationPart(57));c.push(e.spacePart());if(_.symbol&&_.symbol.flags&262144){var R=e.mapToDisplayParts(function(r){var n=t.typeParameterToDeclaration(_,i);getPrinter().writeNode(4,n,e.getSourceFileOfNode(e.getParseTreeNode(i)),r)});e.addRange(c,R)}else{e.addRange(c,e.typeToDisplayParts(t,_,i))}}else if(f&16||f&8192||f&16384||f&131072||f&98304||d==="method"){var C=_.getNonNullableType().getCallSignatures();if(C.length){addSignatureDisplayParts(C[0],C)}}}}else{d=getSymbolKind(t,r,a)}}if(!u){u=r.getDocumentationComment(t);l=r.getJsDocTags();if(u.length===0&&f&4){if(r.parent&&e.forEach(r.parent.declarations,function(e){return e.kind===279})){for(var B=0,j=r.declarations;B<j.length;B++){var k=j[B];if(!k.parent||k.parent.kind!==204){continue}var J=t.getSymbolAtLocation(k.parent.right);if(!J){continue}u=J.getDocumentationComment(t);l=J.getJsDocTags();if(u.length>0){break}}}}}if(u.length===0&&y){u=y}if(l.length===0&&h){l=h}return{displayParts:c,documentation:u,symbolKind:d,tags:l.length===0?undefined:l};function getPrinter(){if(!m){m=e.createPrinter({removeComments:true})}return m}function prefixNextMeaning(){if(c.length){c.push(e.lineBreakPart())}addAliasPrefixIfNecessary()}function addAliasPrefixIfNecessary(){if(s){pushSymbolKind("alias");c.push(e.spacePart())}}function addInPrefix(){c.push(e.spacePart());c.push(e.keywordPart(93));c.push(e.spacePart())}function addFullSymbolName(i,a){if(s&&i===r){i=s}var o=e.symbolToDisplayParts(t,i,a||n,undefined,1|2|4);e.addRange(c,o);if(r.flags&16777216){c.push(e.punctuationPart(56))}}function addPrefixForAnyFunctionOrVar(t,r){prefixNextMeaning();if(r){pushSymbolKind(r);if(t&&!e.some(t.declarations,function(t){return e.isArrowFunction(t)||(e.isFunctionExpression(t)||e.isClassExpression(t))&&!t.name})){c.push(e.spacePart());addFullSymbolName(t)}}}function pushSymbolKind(t){switch(t){case"var":case"function":case"let":case"const":case"constructor":c.push(e.textOrKeywordPart(t));return;default:c.push(e.punctuationPart(20));c.push(e.textOrKeywordPart(t));c.push(e.punctuationPart(21));return}}function addSignatureDisplayParts(r,n,a){if(a===void 0){a=0}e.addRange(c,e.signatureToDisplayParts(t,r,i,a|32));if(n.length>1){c.push(e.spacePart());c.push(e.punctuationPart(20));c.push(e.operatorPart(38));c.push(e.displayPart((n.length-1).toString(),e.SymbolDisplayPartKind.numericLiteral));c.push(e.spacePart());c.push(e.textPart(n.length===2?"overload":"overloads"));c.push(e.punctuationPart(21))}var o=r.getDocumentationComment(t);u=o.length===0?undefined:o;l=r.getJsDocTags()}function writeTypeParametersOfSymbol(r,n){var i=e.mapToDisplayParts(function(i){var a=t.symbolToTypeParameterDeclarations(r,n);getPrinter().writeList(53776,a,e.getSourceFileOfNode(e.getParseTreeNode(n)),i)});e.addRange(c,i)}}t.getSymbolDisplayPartsDocumentationAndSymbolKind=getSymbolDisplayPartsDocumentationAndSymbolKind;function isLocalVariableOrFunction(t){if(t.parent){return false}return e.forEach(t.declarations,function(t){if(t.kind===196){return true}if(t.kind!==237&&t.kind!==239){return false}for(var r=t.parent;!e.isFunctionBlock(r);r=r.parent){if(r.kind===279||r.kind===245){return false}}return true})}})(t=e.SymbolDisplay||(e.SymbolDisplay={}))})(s||(s={}));var s;(function(e){function transpileModule(t,r){var n=[];var i=r.compilerOptions?fixupCompilerOptions(r.compilerOptions,n):e.getDefaultCompilerOptions();i.isolatedModules=true;i.suppressOutputPathCheck=true;i.allowNonTsExtensions=true;i.noLib=true;i.lib=undefined;i.types=undefined;i.noEmit=undefined;i.noEmitOnError=undefined;i.paths=undefined;i.rootDirs=undefined;i.declaration=undefined;i.composite=undefined;i.declarationDir=undefined;i.out=undefined;i.outFile=undefined;i.noResolve=true;var a=r.fileName||(i.jsx?"module.tsx":"module.ts");var o=e.createSourceFile(a,t,i.target);if(r.moduleName){o.moduleName=r.moduleName}if(r.renamedDependencies){o.renamedDependencies=e.createMapFromTemplate(r.renamedDependencies)}var s=e.getNewLineCharacter(i);var c;var u;var l={getSourceFile:function(t){return t===e.normalizePath(a)?o:undefined},writeFile:function(t,r){if(e.fileExtensionIs(t,".map")){e.Debug.assertEqual(u,undefined,"Unexpected multiple source map outputs, file:",t);u=r}else{e.Debug.assertEqual(c,undefined,"Unexpected multiple outputs, file:",t);c=r}},getDefaultLibFileName:function(){return"lib.d.ts"},useCaseSensitiveFileNames:function(){return false},getCanonicalFileName:function(e){return e},getCurrentDirectory:function(){return""},getNewLine:function(){return s},fileExists:function(e){return e===a},readFile:function(){return""},directoryExists:function(){return true},getDirectories:function(){return[]}};var f=e.createProgram([a],i,l);if(r.reportDiagnostics){e.addRange(n,f.getSyntacticDiagnostics(o));e.addRange(n,f.getOptionsDiagnostics())}f.emit(undefined,undefined,undefined,undefined,r.transformers);if(c===undefined)return e.Debug.fail("Output generation failed");return{outputText:c,diagnostics:n,sourceMapText:u}}e.transpileModule=transpileModule;function transpile(t,r,n,i,a){var o=transpileModule(t,{compilerOptions:r,fileName:n,reportDiagnostics:!!i,moduleName:a});e.addRange(i,o.diagnostics);return o.outputText}e.transpile=transpile;var t;function fixupCompilerOptions(r,n){t=t||e.filter(e.optionDeclarations,function(t){return typeof t.type==="object"&&!e.forEachEntry(t.type,function(e){return typeof e!=="number"})});r=e.cloneCompilerOptions(r);var i=function(t){if(!e.hasProperty(r,t.name)){return"continue"}var i=r[t.name];if(e.isString(i)){r[t.name]=e.parseCustomTypeOption(t,i,n)}else{if(!e.forEachEntry(t.type,function(e){return e===i})){n.push(e.createCompilerDiagnosticForInvalidCustomType(t))}}};for(var a=0,o=t;a<o.length;a++){var s=o[a];i(s)}return r}e.fixupCompilerOptions=fixupCompilerOptions})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["FormatDocument"]=0]="FormatDocument";e[e["FormatSelection"]=1]="FormatSelection";e[e["FormatOnEnter"]=2]="FormatOnEnter";e[e["FormatOnSemicolon"]=3]="FormatOnSemicolon";e[e["FormatOnOpeningCurlyBrace"]=4]="FormatOnOpeningCurlyBrace";e[e["FormatOnClosingCurlyBrace"]=5]="FormatOnClosingCurlyBrace"})(r=t.FormattingRequestKind||(t.FormattingRequestKind={}));var n=function(){function FormattingContext(e,t,r){this.sourceFile=e;this.formattingRequestKind=t;this.options=r}FormattingContext.prototype.updateContext=function(t,r,n,i,a){this.currentTokenSpan=e.Debug.assertDefined(t);this.currentTokenParent=e.Debug.assertDefined(r);this.nextTokenSpan=e.Debug.assertDefined(n);this.nextTokenParent=e.Debug.assertDefined(i);this.contextNode=e.Debug.assertDefined(a);this.contextNodeAllOnSameLine=undefined;this.nextNodeAllOnSameLine=undefined;this.tokensAreOnSameLine=undefined;this.contextNodeBlockIsOnOneLine=undefined;this.nextNodeBlockIsOnOneLine=undefined};FormattingContext.prototype.ContextNodeAllOnSameLine=function(){if(this.contextNodeAllOnSameLine===undefined){this.contextNodeAllOnSameLine=this.NodeIsOnOneLine(this.contextNode)}return this.contextNodeAllOnSameLine};FormattingContext.prototype.NextNodeAllOnSameLine=function(){if(this.nextNodeAllOnSameLine===undefined){this.nextNodeAllOnSameLine=this.NodeIsOnOneLine(this.nextTokenParent)}return this.nextNodeAllOnSameLine};FormattingContext.prototype.TokensAreOnSameLine=function(){if(this.tokensAreOnSameLine===undefined){var e=this.sourceFile.getLineAndCharacterOfPosition(this.currentTokenSpan.pos).line;var t=this.sourceFile.getLineAndCharacterOfPosition(this.nextTokenSpan.pos).line;this.tokensAreOnSameLine=e===t}return this.tokensAreOnSameLine};FormattingContext.prototype.ContextNodeBlockIsOnOneLine=function(){if(this.contextNodeBlockIsOnOneLine===undefined){this.contextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.contextNode)}return this.contextNodeBlockIsOnOneLine};FormattingContext.prototype.NextNodeBlockIsOnOneLine=function(){if(this.nextNodeBlockIsOnOneLine===undefined){this.nextNodeBlockIsOnOneLine=this.BlockIsOnOneLine(this.nextTokenParent)}return this.nextNodeBlockIsOnOneLine};FormattingContext.prototype.NodeIsOnOneLine=function(e){var t=this.sourceFile.getLineAndCharacterOfPosition(e.getStart(this.sourceFile)).line;var r=this.sourceFile.getLineAndCharacterOfPosition(e.getEnd()).line;return t===r};FormattingContext.prototype.BlockIsOnOneLine=function(t){var r=e.findChildOfKind(t,18,this.sourceFile);var n=e.findChildOfKind(t,19,this.sourceFile);if(r&&n){var i=this.sourceFile.getLineAndCharacterOfPosition(r.getEnd()).line;var a=this.sourceFile.getLineAndCharacterOfPosition(n.getStart(this.sourceFile)).line;return i===a}return false};return FormattingContext}();t.FormattingContext=n})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=e.createScanner(6,false,0);var n=e.createScanner(6,false,1);var i;(function(e){e[e["Scan"]=0]="Scan";e[e["RescanGreaterThanToken"]=1]="RescanGreaterThanToken";e[e["RescanSlashToken"]=2]="RescanSlashToken";e[e["RescanTemplateToken"]=3]="RescanTemplateToken";e[e["RescanJsxIdentifier"]=4]="RescanJsxIdentifier";e[e["RescanJsxText"]=5]="RescanJsxText"})(i||(i={}));function getFormattingScanner(t,i,a,o,s){var c=i===1?n:r;c.setText(t);c.setTextPos(a);var u=true;var l;var f;var d;var p;var g;var _=s({advance:advance,readTokenInfo:readTokenInfo,isOnToken:isOnToken,getCurrentLeadingTrivia:function(){return l},lastTrailingTriviaWasNewLine:function(){return u},skipToEndOf:skipToEndOf});g=undefined;c.setText(undefined);return _;function advance(){g=undefined;var t=c.getStartPos()!==a;if(t){u=!!f&&e.last(f).kind===4}else{c.scan()}l=undefined;f=undefined;var r=c.getStartPos();while(r<o){var n=c.getToken();if(!e.isTrivia(n)){break}c.scan();var i={pos:r,end:c.getStartPos(),kind:n};r=c.getStartPos();l=e.append(l,i)}d=c.getStartPos()}function shouldRescanGreaterThanToken(e){switch(e.kind){case 32:case 67:case 68:case 48:case 47:return true}return false}function shouldRescanJsxIdentifier(t){if(t.parent){switch(t.parent.kind){case 267:case 262:case 263:case 261:return e.isKeyword(t.kind)||t.kind===72}}return false}function shouldRescanJsxText(e){return e.kind===11}function shouldRescanSlashToken(e){return e.kind===13}function shouldRescanTemplateToken(e){return e.kind===16||e.kind===17}function startsWithSlashToken(e){return e===42||e===64}function readTokenInfo(t){e.Debug.assert(isOnToken());var r=shouldRescanGreaterThanToken(t)?1:shouldRescanSlashToken(t)?2:shouldRescanTemplateToken(t)?3:shouldRescanJsxIdentifier(t)?4:shouldRescanJsxText(t)?5:0;if(g&&r===p){return fixTokenKind(g,t)}if(c.getStartPos()!==d){e.Debug.assert(g!==undefined);c.setTextPos(d);c.scan()}var n=getNextToken(t,r);var i={pos:c.getStartPos(),end:c.getTextPos(),kind:n};if(f){f=undefined}while(c.getStartPos()<o){n=c.scan();if(!e.isTrivia(n)){break}var a={pos:c.getStartPos(),end:c.getTextPos(),kind:n};if(!f){f=[]}f.push(a);if(n===4){c.scan();break}}g={leadingTrivia:l,trailingTrivia:f,token:i};return fixTokenKind(g,t)}function getNextToken(t,r){var n=c.getToken();p=0;switch(r){case 1:if(n===30){p=1;var i=c.reScanGreaterToken();e.Debug.assert(t.kind===i);return i}break;case 2:if(startsWithSlashToken(n)){p=2;var i=c.reScanSlashToken();e.Debug.assert(t.kind===i);return i}break;case 3:if(n===19){p=3;return c.reScanTemplateToken()}break;case 4:p=4;return c.scanJsxIdentifier();case 5:p=5;return c.reScanJsxToken();case 0:break;default:e.Debug.assertNever(r)}return n}function isOnToken(){var t=g?g.token.kind:c.getToken();var r=g?g.token.pos:c.getStartPos();return r<o&&t!==1&&!e.isTrivia(t)}function fixTokenKind(t,r){if(e.isToken(r)&&t.token.kind!==r.kind){t.token.kind=r.kind}return t}function skipToEndOf(e){c.setTextPos(e.end);d=c.getStartPos();p=undefined;g=undefined;u=false;l=undefined;f=undefined}}t.getFormattingScanner=getFormattingScanner})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){t.anyContext=e.emptyArray;var r;(function(e){e[e["Ignore"]=1]="Ignore";e[e["Space"]=2]="Space";e[e["NewLine"]=4]="NewLine";e[e["Delete"]=8]="Delete"})(r=t.RuleAction||(t.RuleAction={}));var n;(function(e){e[e["None"]=0]="None";e[e["CanDeleteNewLines"]=1]="CanDeleteNewLines"})(n=t.RuleFlags||(t.RuleFlags={}))})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){function getAllRules(){var r=[];for(var n=0;n<=147;n++){r.push(n)}function anyTokenExcept(){var e=[];for(var t=0;t<arguments.length;t++){e[t]=arguments[t]}return{tokens:r.filter(function(t){return!e.some(function(e){return e===t})}),isSpecific:false}}var i={tokens:r,isSpecific:false};var a=tokenRangeFrom(r.concat([3]));var o=tokenRangeFromRange(73,147);var s=tokenRangeFromRange(28,71);var c=[93,94,147,119,128];var u=[44,45,53,52];var l=[8,9,72,20,22,18,100,95];var f=[72,20,100,95];var d=[72,21,23,95];var p=[72,20,100,95];var g=[72,21,23,95];var _=[2,3];var m=[72].concat(e.typeKeywords);var y=a;var h=tokenRangeFrom([72,3,76,85,92]);var v=tokenRangeFrom([21,3,82,103,88,83]);var T=[rule("IgnoreBeforeComment",i,_,t.anyContext,1),rule("IgnoreAfterLineComment",2,i,t.anyContext,1),rule("NotSpaceBeforeColon",i,57,[isNonJsxSameLineTokenContext,isNotBinaryOpContext,isNotTypeAnnotationContext],8),rule("SpaceAfterColon",57,i,[isNonJsxSameLineTokenContext,isNotBinaryOpContext],2),rule("NoSpaceBeforeQuestionMark",i,56,[isNonJsxSameLineTokenContext,isNotBinaryOpContext],8),rule("SpaceAfterQuestionMarkInConditionalOperator",56,i,[isNonJsxSameLineTokenContext,isConditionalOperatorContext],2),rule("NoSpaceAfterQuestionMark",56,i,[isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeDot",i,24,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterDot",24,i,[isNonJsxSameLineTokenContext],8),rule("NoSpaceBetweenImportParenInImportType",92,20,[isNonJsxSameLineTokenContext,isImportTypeContext],8),rule("NoSpaceAfterUnaryPrefixOperator",u,l,[isNonJsxSameLineTokenContext,isNotBinaryOpContext],8),rule("NoSpaceAfterUnaryPreincrementOperator",44,f,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterUnaryPredecrementOperator",45,p,[isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeUnaryPostincrementOperator",d,44,[isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeUnaryPostdecrementOperator",g,45,[isNonJsxSameLineTokenContext],8),rule("SpaceAfterPostincrementWhenFollowedByAdd",44,38,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterAddWhenFollowedByUnaryPlus",38,38,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterAddWhenFollowedByPreincrement",38,44,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterPostdecrementWhenFollowedBySubtract",45,39,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterSubtractWhenFollowedByUnaryMinus",39,39,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterSubtractWhenFollowedByPredecrement",39,45,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("NoSpaceAfterCloseBrace",19,[27,26],[isNonJsxSameLineTokenContext],8),rule("NewLineBeforeCloseBraceInBlockContext",a,19,[isMultilineBlockContext],4),rule("SpaceAfterCloseBrace",19,anyTokenExcept(21),[isNonJsxSameLineTokenContext,isAfterCodeBlockContext],2),rule("SpaceBetweenCloseBraceAndElse",19,83,[isNonJsxSameLineTokenContext],2),rule("SpaceBetweenCloseBraceAndWhile",19,107,[isNonJsxSameLineTokenContext],2),rule("NoSpaceBetweenEmptyBraceBrackets",18,19,[isNonJsxSameLineTokenContext,isObjectContext],8),rule("SpaceAfterConditionalClosingParen",21,22,[isControlDeclContext],2),rule("NoSpaceBetweenFunctionKeywordAndStar",90,40,[isFunctionDeclarationOrFunctionExpressionContext],8),rule("SpaceAfterStarInGeneratorDeclaration",40,[72,20],[isFunctionDeclarationOrFunctionExpressionContext],2),rule("SpaceAfterFunctionInFuncDecl",90,i,[isFunctionDeclContext],2),rule("NewLineAfterOpenBraceInBlockContext",18,i,[isMultilineBlockContext],4),rule("SpaceAfterGetSetInMember",[126,137],72,[isFunctionDeclContext],2),rule("NoSpaceBetweenYieldKeywordAndStar",117,40,[isNonJsxSameLineTokenContext,isYieldOrYieldStarWithOperand],8),rule("SpaceBetweenYieldOrYieldStarAndOperand",[117,40],i,[isNonJsxSameLineTokenContext,isYieldOrYieldStarWithOperand],2),rule("NoSpaceBetweenReturnAndSemicolon",97,26,[isNonJsxSameLineTokenContext],8),rule("SpaceAfterCertainKeywords",[105,101,95,81,97,104,122],i,[isNonJsxSameLineTokenContext],2),rule("SpaceAfterLetConstInVariableDeclaration",[111,77],i,[isNonJsxSameLineTokenContext,isStartOfVariableDeclarationList],2),rule("NoSpaceBeforeOpenParenInFuncCall",i,20,[isNonJsxSameLineTokenContext,isFunctionCallOrNewContext,isPreviousTokenNotComma],8),rule("SpaceBeforeBinaryKeywordOperator",i,c,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterBinaryKeywordOperator",c,i,[isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterVoidOperator",106,i,[isNonJsxSameLineTokenContext,isVoidOpContext],2),rule("SpaceBetweenAsyncAndOpenParen",121,20,[isArrowFunctionContext,isNonJsxSameLineTokenContext],2),rule("SpaceBetweenAsyncAndFunctionKeyword",121,90,[isNonJsxSameLineTokenContext],2),rule("NoSpaceBetweenTagAndTemplateString",[72,21],[14,15],[isNonJsxSameLineTokenContext],8),rule("SpaceBeforeJsxAttribute",i,72,[isNextTokenParentJsxAttribute,isNonJsxSameLineTokenContext],2),rule("SpaceBeforeSlashInJsxOpeningElement",i,42,[isJsxSelfClosingElementContext,isNonJsxSameLineTokenContext],2),rule("NoSpaceBeforeGreaterThanTokenInJsxOpeningElement",42,30,[isJsxSelfClosingElementContext,isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeEqualInJsxAttribute",i,59,[isJsxAttributeContext,isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterEqualInJsxAttribute",59,i,[isJsxAttributeContext,isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterModuleImport",[130,134],20,[isNonJsxSameLineTokenContext],8),rule("SpaceAfterCertainTypeScriptKeywords",[118,76,125,80,84,85,86,126,109,92,110,130,131,113,115,114,133,137,116,140,144,129,127],i,[isNonJsxSameLineTokenContext],2),rule("SpaceBeforeCertainTypeScriptKeywords",i,[86,109,144],[isNonJsxSameLineTokenContext],2),rule("SpaceAfterModuleName",10,18,[isModuleDeclContext],2),rule("SpaceBeforeArrow",i,37,[isNonJsxSameLineTokenContext],2),rule("SpaceAfterArrow",37,i,[isNonJsxSameLineTokenContext],2),rule("NoSpaceAfterEllipsis",25,72,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterOptionalParameters",56,[21,27],[isNonJsxSameLineTokenContext,isNotBinaryOpContext],8),rule("NoSpaceBetweenEmptyInterfaceBraceBrackets",18,19,[isNonJsxSameLineTokenContext,isObjectTypeContext],8),rule("NoSpaceBeforeOpenAngularBracket",m,28,[isNonJsxSameLineTokenContext,isTypeArgumentOrParameterOrAssertionContext],8),rule("NoSpaceBetweenCloseParenAndAngularBracket",21,28,[isNonJsxSameLineTokenContext,isTypeArgumentOrParameterOrAssertionContext],8),rule("NoSpaceAfterOpenAngularBracket",28,i,[isNonJsxSameLineTokenContext,isTypeArgumentOrParameterOrAssertionContext],8),rule("NoSpaceBeforeCloseAngularBracket",i,30,[isNonJsxSameLineTokenContext,isTypeArgumentOrParameterOrAssertionContext],8),rule("NoSpaceAfterCloseAngularBracket",30,[20,22,30,27],[isNonJsxSameLineTokenContext,isTypeArgumentOrParameterOrAssertionContext,isNotFunctionDeclContext],8),rule("SpaceBeforeAt",[21,72],58,[isNonJsxSameLineTokenContext],2),rule("NoSpaceAfterAt",58,i,[isNonJsxSameLineTokenContext],8),rule("SpaceAfterDecorator",i,[118,72,85,80,76,116,115,113,114,126,137,22,40],[isEndOfDecoratorContextOnSameLine],2),rule("NoSpaceBeforeNonNullAssertionOperator",i,52,[isNonJsxSameLineTokenContext,isNonNullAssertionContext],8),rule("NoSpaceAfterNewKeywordOnConstructorSignature",95,20,[isNonJsxSameLineTokenContext,isConstructorSignatureContext],8)];var S=[rule("SpaceAfterConstructor",124,20,[isOptionEnabled("insertSpaceAfterConstructor"),isNonJsxSameLineTokenContext],2),rule("NoSpaceAfterConstructor",124,20,[isOptionDisabledOrUndefined("insertSpaceAfterConstructor"),isNonJsxSameLineTokenContext],8),rule("SpaceAfterComma",27,i,[isOptionEnabled("insertSpaceAfterCommaDelimiter"),isNonJsxSameLineTokenContext,isNonJsxElementOrFragmentContext,isNextTokenNotCloseBracket],2),rule("NoSpaceAfterComma",27,i,[isOptionDisabledOrUndefined("insertSpaceAfterCommaDelimiter"),isNonJsxSameLineTokenContext,isNonJsxElementOrFragmentContext],8),rule("SpaceAfterAnonymousFunctionKeyword",90,20,[isOptionEnabled("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),isFunctionDeclContext],2),rule("NoSpaceAfterAnonymousFunctionKeyword",90,20,[isOptionDisabledOrUndefined("insertSpaceAfterFunctionKeywordForAnonymousFunctions"),isFunctionDeclContext],8),rule("SpaceAfterKeywordInControl",o,20,[isOptionEnabled("insertSpaceAfterKeywordsInControlFlowStatements"),isControlDeclContext],2),rule("NoSpaceAfterKeywordInControl",o,20,[isOptionDisabledOrUndefined("insertSpaceAfterKeywordsInControlFlowStatements"),isControlDeclContext],8),rule("SpaceAfterOpenParen",20,i,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),isNonJsxSameLineTokenContext],2),rule("SpaceBeforeCloseParen",i,21,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),isNonJsxSameLineTokenContext],2),rule("SpaceBetweenOpenParens",20,20,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),isNonJsxSameLineTokenContext],2),rule("NoSpaceBetweenParens",20,21,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterOpenParen",20,i,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeCloseParen",i,21,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis"),isNonJsxSameLineTokenContext],8),rule("SpaceAfterOpenBracket",22,i,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),isNonJsxSameLineTokenContext],2),rule("SpaceBeforeCloseBracket",i,23,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),isNonJsxSameLineTokenContext],2),rule("NoSpaceBetweenBrackets",22,23,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterOpenBracket",22,i,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeCloseBracket",i,23,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets"),isNonJsxSameLineTokenContext],8),rule("SpaceAfterOpenBrace",18,i,[isOptionEnabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),isBraceWrappedContext],2),rule("SpaceBeforeCloseBrace",i,19,[isOptionEnabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),isBraceWrappedContext],2),rule("NoSpaceBetweenEmptyBraceBrackets",18,19,[isNonJsxSameLineTokenContext,isObjectContext],8),rule("NoSpaceAfterOpenBrace",18,i,[isOptionDisabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeCloseBrace",i,19,[isOptionDisabled("insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces"),isNonJsxSameLineTokenContext],8),rule("SpaceAfterTemplateHeadAndMiddle",[15,16],i,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),isNonJsxSameLineTokenContext],2),rule("SpaceBeforeTemplateMiddleAndTail",i,[16,17],[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),isNonJsxSameLineTokenContext],2),rule("NoSpaceAfterTemplateHeadAndMiddle",[15,16],i,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeTemplateMiddleAndTail",i,[16,17],[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces"),isNonJsxSameLineTokenContext],8),rule("SpaceAfterOpenBraceInJsxExpression",18,i,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),isNonJsxSameLineTokenContext,isJsxExpressionContext],2),rule("SpaceBeforeCloseBraceInJsxExpression",i,19,[isOptionEnabled("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),isNonJsxSameLineTokenContext,isJsxExpressionContext],2),rule("NoSpaceAfterOpenBraceInJsxExpression",18,i,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),isNonJsxSameLineTokenContext,isJsxExpressionContext],8),rule("NoSpaceBeforeCloseBraceInJsxExpression",i,19,[isOptionDisabledOrUndefined("insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces"),isNonJsxSameLineTokenContext,isJsxExpressionContext],8),rule("SpaceAfterSemicolonInFor",26,i,[isOptionEnabled("insertSpaceAfterSemicolonInForStatements"),isNonJsxSameLineTokenContext,isForContext],2),rule("NoSpaceAfterSemicolonInFor",26,i,[isOptionDisabledOrUndefined("insertSpaceAfterSemicolonInForStatements"),isNonJsxSameLineTokenContext,isForContext],8),rule("SpaceBeforeBinaryOperator",i,s,[isOptionEnabled("insertSpaceBeforeAndAfterBinaryOperators"),isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("SpaceAfterBinaryOperator",s,i,[isOptionEnabled("insertSpaceBeforeAndAfterBinaryOperators"),isNonJsxSameLineTokenContext,isBinaryOpContext],2),rule("NoSpaceBeforeBinaryOperator",i,s,[isOptionDisabledOrUndefined("insertSpaceBeforeAndAfterBinaryOperators"),isNonJsxSameLineTokenContext,isBinaryOpContext],8),rule("NoSpaceAfterBinaryOperator",s,i,[isOptionDisabledOrUndefined("insertSpaceBeforeAndAfterBinaryOperators"),isNonJsxSameLineTokenContext,isBinaryOpContext],8),rule("SpaceBeforeOpenParenInFuncDecl",i,20,[isOptionEnabled("insertSpaceBeforeFunctionParenthesis"),isNonJsxSameLineTokenContext,isFunctionDeclContext],2),rule("NoSpaceBeforeOpenParenInFuncDecl",i,20,[isOptionDisabledOrUndefined("insertSpaceBeforeFunctionParenthesis"),isNonJsxSameLineTokenContext,isFunctionDeclContext],8),rule("NewLineBeforeOpenBraceInControl",v,18,[isOptionEnabled("placeOpenBraceOnNewLineForControlBlocks"),isControlDeclContext,isBeforeMultilineBlockContext],4,1),rule("NewLineBeforeOpenBraceInFunction",y,18,[isOptionEnabled("placeOpenBraceOnNewLineForFunctions"),isFunctionDeclContext,isBeforeMultilineBlockContext],4,1),rule("NewLineBeforeOpenBraceInTypeScriptDeclWithBlock",h,18,[isOptionEnabled("placeOpenBraceOnNewLineForFunctions"),isTypeScriptDeclWithBlockContext,isBeforeMultilineBlockContext],4,1),rule("SpaceAfterTypeAssertion",30,i,[isOptionEnabled("insertSpaceAfterTypeAssertion"),isNonJsxSameLineTokenContext,isTypeAssertionContext],2),rule("NoSpaceAfterTypeAssertion",30,i,[isOptionDisabledOrUndefined("insertSpaceAfterTypeAssertion"),isNonJsxSameLineTokenContext,isTypeAssertionContext],8),rule("SpaceBeforeTypeAnnotation",i,57,[isOptionEnabled("insertSpaceBeforeTypeAnnotation"),isNonJsxSameLineTokenContext,isTypeAnnotationContext],2),rule("NoSpaceBeforeTypeAnnotation",i,57,[isOptionDisabledOrUndefined("insertSpaceBeforeTypeAnnotation"),isNonJsxSameLineTokenContext,isTypeAnnotationContext],8)];var b=[rule("NoSpaceBeforeSemicolon",i,26,[isNonJsxSameLineTokenContext],8),rule("SpaceBeforeOpenBraceInControl",v,18,[isOptionDisabledOrUndefinedOrTokensOnSameLine("placeOpenBraceOnNewLineForControlBlocks"),isControlDeclContext,isNotFormatOnEnter,isSameLineTokenOrBeforeBlockContext],2,1),rule("SpaceBeforeOpenBraceInFunction",y,18,[isOptionDisabledOrUndefinedOrTokensOnSameLine("placeOpenBraceOnNewLineForFunctions"),isFunctionDeclContext,isBeforeBlockContext,isNotFormatOnEnter,isSameLineTokenOrBeforeBlockContext],2,1),rule("SpaceBeforeOpenBraceInTypeScriptDeclWithBlock",h,18,[isOptionDisabledOrUndefinedOrTokensOnSameLine("placeOpenBraceOnNewLineForFunctions"),isTypeScriptDeclWithBlockContext,isNotFormatOnEnter,isSameLineTokenOrBeforeBlockContext],2,1),rule("NoSpaceBeforeComma",i,27,[isNonJsxSameLineTokenContext],8),rule("NoSpaceBeforeOpenBracket",anyTokenExcept(121,74),22,[isNonJsxSameLineTokenContext],8),rule("NoSpaceAfterCloseBracket",23,i,[isNonJsxSameLineTokenContext,isNotBeforeBlockInFunctionDeclarationContext],8),rule("SpaceAfterSemicolon",26,i,[isNonJsxSameLineTokenContext],2),rule("SpaceBetweenForAndAwaitKeyword",89,122,[isNonJsxSameLineTokenContext],2),rule("SpaceBetweenStatements",[21,82,83,74],i,[isNonJsxSameLineTokenContext,isNonJsxElementOrFragmentContext,isNotForContext],2),rule("SpaceAfterTryFinally",[103,88],18,[isNonJsxSameLineTokenContext],2)];return T.concat(S,b)}t.getAllRules=getAllRules;function rule(e,t,r,n,i,a){if(a===void 0){a=0}return{leftTokenRange:toTokenRange(t),rightTokenRange:toTokenRange(r),rule:{debugName:e,context:n,action:i,flags:a}}}function tokenRangeFrom(e){return{tokens:e,isSpecific:true}}function toTokenRange(t){return typeof t==="number"?tokenRangeFrom([t]):e.isArray(t)?tokenRangeFrom(t):t}function tokenRangeFromRange(t,r,n){if(n===void 0){n=[]}var i=[];for(var a=t;a<=r;a++){if(!e.contains(n,a)){i.push(a)}}return tokenRangeFrom(i)}function isOptionEnabled(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!!t.options[e]}}function isOptionDisabled(e){return function(t){return t.options&&t.options.hasOwnProperty(e)&&!t.options[e]}}function isOptionDisabledOrUndefined(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]}}function isOptionDisabledOrUndefinedOrTokensOnSameLine(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!t.options[e]||t.TokensAreOnSameLine()}}function isOptionEnabledOrUndefined(e){return function(t){return!t.options||!t.options.hasOwnProperty(e)||!!t.options[e]}}function isForContext(e){return e.contextNode.kind===225}function isNotForContext(e){return!isForContext(e)}function isBinaryOpContext(e){switch(e.contextNode.kind){case 204:case 205:case 175:case 212:case 257:case 253:case 163:case 173:case 174:return true;case 186:case 242:case 248:case 237:case 151:case 278:case 154:case 153:return e.currentTokenSpan.kind===59||e.nextTokenSpan.kind===59;case 226:case 150:return e.currentTokenSpan.kind===93||e.nextTokenSpan.kind===93;case 227:return e.currentTokenSpan.kind===147||e.nextTokenSpan.kind===147}return false}function isNotBinaryOpContext(e){return!isBinaryOpContext(e)}function isNotTypeAnnotationContext(e){return!isTypeAnnotationContext(e)}function isTypeAnnotationContext(t){var r=t.contextNode.kind;return r===154||r===153||r===151||r===237||e.isFunctionLikeKind(r)}function isConditionalOperatorContext(e){return e.contextNode.kind===205||e.contextNode.kind===175}function isSameLineTokenOrBeforeBlockContext(e){return e.TokensAreOnSameLine()||isBeforeBlockContext(e)}function isBraceWrappedContext(e){return e.contextNode.kind===184||e.contextNode.kind===181||isSingleLineBlockContext(e)}function isBeforeMultilineBlockContext(e){return isBeforeBlockContext(e)&&!(e.NextNodeAllOnSameLine()||e.NextNodeBlockIsOnOneLine())}function isMultilineBlockContext(e){return isBlockContext(e)&&!(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function isSingleLineBlockContext(e){return isBlockContext(e)&&(e.ContextNodeAllOnSameLine()||e.ContextNodeBlockIsOnOneLine())}function isBlockContext(e){return nodeIsBlockContext(e.contextNode)}function isBeforeBlockContext(e){return nodeIsBlockContext(e.nextTokenParent)}function nodeIsBlockContext(e){if(nodeIsTypeScriptDeclWithBlockContext(e)){return true}switch(e.kind){case 218:case 246:case 188:case 245:return true}return false}function isFunctionDeclContext(e){switch(e.contextNode.kind){case 239:case 156:case 155:case 158:case 159:case 160:case 196:case 157:case 197:case 241:return true}return false}function isNotFunctionDeclContext(e){return!isFunctionDeclContext(e)}function isFunctionDeclarationOrFunctionExpressionContext(e){return e.contextNode.kind===239||e.contextNode.kind===196}function isTypeScriptDeclWithBlockContext(e){return nodeIsTypeScriptDeclWithBlockContext(e.contextNode)}function nodeIsTypeScriptDeclWithBlockContext(e){switch(e.kind){case 240:case 209:case 241:case 243:case 168:case 244:case 255:case 256:case 249:case 252:return true}return false}function isAfterCodeBlockContext(e){switch(e.currentTokenParent.kind){case 240:case 244:case 243:case 274:case 245:case 232:return true;case 218:{var t=e.currentTokenParent.parent;if(!t||t.kind!==197&&t.kind!==196){return true}}}return false}function isControlDeclContext(e){switch(e.contextNode.kind){case 222:case 232:case 225:case 226:case 227:case 224:case 235:case 223:case 231:case 274:return true;default:return false}}function isObjectContext(e){return e.contextNode.kind===188}function isFunctionCallContext(e){return e.contextNode.kind===191}function isNewContext(e){return e.contextNode.kind===192}function isFunctionCallOrNewContext(e){return isFunctionCallContext(e)||isNewContext(e)}function isPreviousTokenNotComma(e){return e.currentTokenSpan.kind!==27}function isNextTokenNotCloseBracket(e){return e.nextTokenSpan.kind!==23}function isArrowFunctionContext(e){return e.contextNode.kind===197}function isImportTypeContext(e){return e.contextNode.kind===183}function isNonJsxSameLineTokenContext(e){return e.TokensAreOnSameLine()&&e.contextNode.kind!==11}function isNonJsxElementOrFragmentContext(e){return e.contextNode.kind!==260&&e.contextNode.kind!==264}function isJsxExpressionContext(e){return e.contextNode.kind===270||e.contextNode.kind===269}function isNextTokenParentJsxAttribute(e){return e.nextTokenParent.kind===267}function isJsxAttributeContext(e){return e.contextNode.kind===267}function isJsxSelfClosingElementContext(e){return e.contextNode.kind===261}function isNotBeforeBlockInFunctionDeclarationContext(e){return!isFunctionDeclContext(e)&&!isBeforeBlockContext(e)}function isEndOfDecoratorContextOnSameLine(e){return e.TokensAreOnSameLine()&&!!e.contextNode.decorators&&nodeIsInDecoratorContext(e.currentTokenParent)&&!nodeIsInDecoratorContext(e.nextTokenParent)}function nodeIsInDecoratorContext(t){while(e.isExpressionNode(t)){t=t.parent}return t.kind===152}function isStartOfVariableDeclarationList(e){return e.currentTokenParent.kind===238&&e.currentTokenParent.getStart(e.sourceFile)===e.currentTokenSpan.pos}function isNotFormatOnEnter(e){return e.formattingRequestKind!==2}function isModuleDeclContext(e){return e.contextNode.kind===244}function isObjectTypeContext(e){return e.contextNode.kind===168}function isConstructorSignatureContext(e){return e.contextNode.kind===161}function isTypeArgumentOrParameterOrAssertion(e,t){if(e.kind!==28&&e.kind!==30){return false}switch(t.kind){case 164:case 194:case 242:case 240:case 209:case 241:case 239:case 196:case 197:case 156:case 155:case 160:case 161:case 191:case 192:case 211:return true;default:return false}}function isTypeArgumentOrParameterOrAssertionContext(e){return isTypeArgumentOrParameterOrAssertion(e.currentTokenSpan,e.currentTokenParent)||isTypeArgumentOrParameterOrAssertion(e.nextTokenSpan,e.nextTokenParent)}function isTypeAssertionContext(e){return e.contextNode.kind===194}function isVoidOpContext(e){return e.currentTokenSpan.kind===106&&e.currentTokenParent.kind===200}function isYieldOrYieldStarWithOperand(e){return e.contextNode.kind===207&&e.contextNode.expression!==undefined}function isNonNullAssertionContext(e){return e.contextNode.kind===213}})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){function getFormatContext(e){return{options:e,getRule:getRulesMap()}}t.getFormatContext=getFormatContext;var r;function getRulesMap(){if(r===undefined){r=createRulesMap(t.getAllRules())}return r}function createRulesMap(t){var r=buildMap(t);return function(t){var n=r[getRuleBucketIndex(t.currentTokenSpan.kind,t.nextTokenSpan.kind)];return n&&e.find(n,function(r){return e.every(r.context,function(e){return e(t)})})}}function buildMap(e){var t=new Array(a*a);var r=new Array(t.length);for(var n=0,i=e;n<i.length;n++){var o=i[n];var s=o.leftTokenRange.isSpecific&&o.rightTokenRange.isSpecific;for(var c=0,u=o.leftTokenRange.tokens;c<u.length;c++){var l=u[c];for(var f=0,d=o.rightTokenRange.tokens;f<d.length;f++){var p=d[f];var g=getRuleBucketIndex(l,p);var _=t[g];if(_===undefined){_=t[g]=[]}addRule(_,o.rule,s,r,g)}}}return t}function getRuleBucketIndex(t,r){e.Debug.assert(t<=147&&r<=147,"Must compute formatting context from tokens");return t*a+r}var n=5;var i=31;var a=147+1;var o;(function(e){e[e["IgnoreRulesSpecific"]=0]="IgnoreRulesSpecific";e[e["IgnoreRulesAny"]=n*1]="IgnoreRulesAny";e[e["ContextRulesSpecific"]=n*2]="ContextRulesSpecific";e[e["ContextRulesAny"]=n*3]="ContextRulesAny";e[e["NoContextRulesSpecific"]=n*4]="NoContextRulesSpecific";e[e["NoContextRulesAny"]=n*5]="NoContextRulesAny"})(o||(o={}));function addRule(e,r,n,i,a){var s=r.action===1?n?o.IgnoreRulesSpecific:o.IgnoreRulesAny:r.context!==t.anyContext?n?o.ContextRulesSpecific:o.ContextRulesAny:n?o.NoContextRulesSpecific:o.NoContextRulesAny;var c=i[a]||0;e.splice(getInsertionIndex(c,s),0,r);i[a]=increaseInsertionIndex(c,s)}function getInsertionIndex(e,t){var r=0;for(var a=0;a<=t;a+=n){r+=e&i;e>>=n}return r}function increaseInsertionIndex(t,r){var n=(t>>r&i)+1;e.Debug.assert((n&i)===n,"Adding more rules into the sub-bucket than allowed. Maximum allowed is 32 rules.");return t&~(i<<r)|n<<r}})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(e){e[e["Unknown"]=-1]="Unknown"})(r||(r={}));function formatOnEnter(t,r,n){var i=r.getLineAndCharacterOfPosition(t).line;if(i===0){return[]}var a=e.getEndLinePosition(i,r);while(e.isWhiteSpaceSingleLine(r.text.charCodeAt(a))){a--}if(e.isLineBreak(r.text.charCodeAt(a))){a--}var o={pos:e.getStartPositionOfLine(i-1,r),end:a+1};return formatSpan(o,r,n,2)}t.formatOnEnter=formatOnEnter;function formatOnSemicolon(e,t,r){var n=findImmediatelyPrecedingTokenOfKind(e,26,t);return formatNodeLines(findOutermostNodeWithinListLevel(n),t,r,3)}t.formatOnSemicolon=formatOnSemicolon;function formatOnOpeningCurly(t,r,n){var i=findImmediatelyPrecedingTokenOfKind(t,18,r);if(!i){return[]}var a=i.parent;var o=findOutermostNodeWithinListLevel(a);var s={pos:e.getLineStartPositionForPosition(o.getStart(r),r),end:t};return formatSpan(s,r,n,4)}t.formatOnOpeningCurly=formatOnOpeningCurly;function formatOnClosingCurly(e,t,r){var n=findImmediatelyPrecedingTokenOfKind(e,19,t);return formatNodeLines(findOutermostNodeWithinListLevel(n),t,r,5)}t.formatOnClosingCurly=formatOnClosingCurly;function formatDocument(e,t){var r={pos:0,end:e.text.length};return formatSpan(r,e,t,0)}t.formatDocument=formatDocument;function formatSelection(t,r,n,i){var a={pos:e.getLineStartPositionForPosition(t,n),end:r};return formatSpan(a,n,i,1)}t.formatSelection=formatSelection;function findImmediatelyPrecedingTokenOfKind(t,r,n){var i=e.findPrecedingToken(t,n);return i&&i.kind===r&&t===i.getEnd()?i:undefined}function findOutermostNodeWithinListLevel(e){var t=e;while(t&&t.parent&&t.parent.end===e.end&&!isListElement(t.parent,t)){t=t.parent}return t}function isListElement(t,r){switch(t.kind){case 240:case 241:return e.rangeContainsRange(t.members,r);case 244:var n=t.body;return!!n&&n.kind===245&&e.rangeContainsRange(n.statements,r);case 279:case 218:case 245:return e.rangeContainsRange(t.statements,r);case 274:return e.rangeContainsRange(t.block.statements,r)}return false}function findEnclosingNode(t,r){return find(r);function find(n){var i=e.forEachChild(n,function(n){return e.startEndContainsRange(n.getStart(r),n.end,t)&&n});if(i){var a=find(i);if(a){return a}}return n}}function prepareRangeContainsErrorFunction(t,r){if(!t.length){return rangeHasNoErrors}var n=t.filter(function(t){return e.rangeOverlapsWithStartEnd(r,t.start,t.start+t.length)}).sort(function(e,t){return e.start-t.start});if(!n.length){return rangeHasNoErrors}var i=0;return function(t){while(true){if(i>=n.length){return false}var r=n[i];if(t.end<=r.start){return false}if(e.startEndOverlapsWithStartEnd(t.pos,t.end,r.start,r.start+r.length)){return true}i++}};function rangeHasNoErrors(){return false}}function getScanStartPosition(t,r,n){var i=t.getStart(n);if(i===r.pos&&t.end===r.end){return i}var a=e.findPrecedingToken(r.pos,n);if(!a){return t.pos}if(a.end>=r.pos){return t.pos}return a.end}function getOwnOrInheritedDelta(e,r,n){var i=-1;var a;while(e){var o=n.getLineAndCharacterOfPosition(e.getStart(n)).line;if(i!==-1&&o!==i){break}if(t.SmartIndenter.shouldIndentChildNode(r,e,a,n)){return r.indentSize}i=o;a=e;e=e.parent}return 0}function formatNodeGivenIndentation(e,r,n,i,a,o){var s={pos:0,end:r.text.length};return t.getFormattingScanner(r.text,n,s.pos,s.end,function(t){return formatSpanWorker(s,e,i,a,t,o,1,function(e){return false},r)})}t.formatNodeGivenIndentation=formatNodeGivenIndentation;function formatNodeLines(t,r,n,i){if(!t){return[]}var a={pos:e.getLineStartPositionForPosition(t.getStart(r),r),end:t.end};return formatSpan(a,r,n,i)}function formatSpan(e,r,n,i){var a=findEnclosingNode(e,r);return t.getFormattingScanner(r.text,r.languageVariant,getScanStartPosition(a,e,r),e.end,function(o){return formatSpanWorker(e,a,t.SmartIndenter.getIndentationForNode(a,e,r,n.options),getOwnOrInheritedDelta(a,n.options,r),o,n,i,prepareRangeContainsErrorFunction(r.parseDiagnostics,e),r)})}function formatSpanWorker(r,n,i,a,o,s,c,u,l){var f=s.options,d=s.getRule;var p=new t.FormattingContext(l,c,f);var g;var _;var m;var y;var h=-1;var v=[];o.advance();if(o.isOnToken()){var T=l.getLineAndCharacterOfPosition(n.getStart(l)).line;var S=T;if(n.decorators){S=l.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(n,l)).line}processNode(n,n,T,S,i,a)}if(!o.isOnToken()){var b=o.getCurrentLeadingTrivia();if(b){indentTriviaItems(b,i,false,function(e){return processRange(e,l.getLineAndCharacterOfPosition(e.pos),n,n,undefined)});trimTrailingWhitespacesForRemainingRange()}}return v;function tryComputeIndentationForListItem(r,n,i,a,o){if(e.rangeOverlapsWithStartEnd(a,r,n)||e.rangeContainsStartEnd(a,r,n)){if(o!==-1){return o}}else{var s=l.getLineAndCharacterOfPosition(r).line;var c=e.getLineStartPositionForPosition(r,l);var u=t.SmartIndenter.findFirstNonWhitespaceColumn(c,r,l,f);if(s!==i||r===u){var d=t.SmartIndenter.getBaseIndentation(f);return d>u?d:u}}return-1}function computeIndentation(e,r,n,i,a,o){var s=t.SmartIndenter.shouldIndentChildNode(f,e)?f.indentSize:0;if(o===r){return{indentation:r===y?h:a.getIndentation(),delta:Math.min(f.indentSize,a.getDelta(e)+s)}}else if(n===-1){if(e.kind===20&&r===y){return{indentation:h,delta:a.getDelta(e)}}else if(t.SmartIndenter.childStartsOnTheSameLineWithElseInIfStatement(i,e,r,l)){return{indentation:a.getIndentation(),delta:s}}else{return{indentation:a.getIndentation()+a.getDelta(e),delta:s}}}else{return{indentation:n,delta:s}}}function getFirstNonDecoratorTokenOfNode(t){if(t.modifiers&&t.modifiers.length){return t.modifiers[0].kind}switch(t.kind){case 240:return 76;case 241:return 110;case 239:return 90;case 243:return 243;case 158:return 126;case 159:return 137;case 156:if(t.asteriskToken){return 40}case 154:case 151:var r=e.getNameOfDeclaration(t);if(r){return r.kind}}}function getDynamicIndentation(e,r,n,i){return{getIndentationForComment:function(e,t,r){switch(e){case 19:case 23:case 21:return n+getDelta(r)}return t!==-1?t:n},getIndentationForToken:function(e,t,r,i){return!i&&shouldAddDelta(e,t,r)?n+getDelta(r):n},getIndentation:function(){return n},getDelta:getDelta,recomputeIndentation:function(r){if(e.parent&&t.SmartIndenter.shouldIndentChildNode(f,e.parent,e,l)){n+=r?f.indentSize:-f.indentSize;i=t.SmartIndenter.shouldIndentChildNode(f,e)?f.indentSize:0}}};function shouldAddDelta(t,n,i){switch(n){case 18:case 19:case 21:case 83:case 107:case 58:return false;case 42:case 30:switch(i.kind){case 262:case 263:case 261:return false}break;case 22:case 23:if(i.kind!==181){return false}break}return r!==t&&!(e.decorators&&n===getFirstNonDecoratorTokenOfNode(e))}function getDelta(r){return t.SmartIndenter.nodeWillIndentChild(f,e,r,l,true)?i:0}}function processNode(n,i,a,s,c,d){if(!e.rangeOverlapsWithStartEnd(r,n.getStart(l),n.getEnd())){return}var p=getDynamicIndentation(n,a,c,d);var _=i;e.forEachChild(n,function(e){processChildNode(e,-1,n,p,a,s,false)},function(e){processChildNodes(e,n,a,p)});while(o.isOnToken()){var m=o.readTokenInfo(n);if(m.token.end>n.end){break}consumeTokenAndAdvanceScanner(m,n,p,n)}function processChildNode(t,i,a,s,c,u,f,d){var p=t.getStart(l);var g=l.getLineAndCharacterOfPosition(p).line;var m=g;if(t.decorators){m=l.getLineAndCharacterOfPosition(e.getNonDecoratorTokenPosOfNode(t,l)).line}var y=-1;if(f&&e.rangeContainsRange(r,a)){y=tryComputeIndentationForListItem(p,t.end,c,r,i);if(y!==-1){i=y}}if(!e.rangeOverlapsWithStartEnd(r,t.pos,t.end)){if(t.end<r.pos){o.skipToEndOf(t)}return i}if(t.getFullWidth()===0){return i}while(o.isOnToken()){var h=o.readTokenInfo(n);if(h.token.end>p){break}consumeTokenAndAdvanceScanner(h,n,s,n)}if(!o.isOnToken()){return i}if(e.isToken(t)&&t.kind!==11){var h=o.readTokenInfo(t);e.Debug.assert(h.token.end===t.end,"Token end is child end");consumeTokenAndAdvanceScanner(h,n,s,t);return i}var v=t.kind===152?g:u;var T=computeIndentation(t,g,y,n,s,v);processNode(t,_,g,m,T.indentation,T.delta);if(t.kind===11){var S={pos:t.getStart(),end:t.getEnd()};indentMultilineCommentOrJsxText(S,T.indentation,true,false)}_=n;if(d&&a.kind===187&&i===-1){i=T.indentation}return i}function processChildNodes(r,i,a,s){e.Debug.assert(e.isNodeArray(r));var c=getOpenTokenForList(i,r);var u=s;var d=a;if(c!==0){while(o.isOnToken()){var p=o.readTokenInfo(i);if(p.token.end>r.pos){break}else if(p.token.kind===c){d=l.getLineAndCharacterOfPosition(p.token.pos).line;consumeTokenAndAdvanceScanner(p,i,s,i);var g=void 0;if(h!==-1){g=h}else{var _=e.getLineStartPositionForPosition(p.token.pos,l);g=t.SmartIndenter.findFirstNonWhitespaceColumn(_,p.token.pos,l,f)}u=getDynamicIndentation(i,a,g,f.indentSize)}else{consumeTokenAndAdvanceScanner(p,i,s,i)}}}var m=-1;for(var y=0;y<r.length;y++){var v=r[y];m=processChildNode(v,m,n,u,d,d,true,y===0)}var T=getCloseTokenForOpenToken(c);if(T!==0&&o.isOnToken()){var p=o.readTokenInfo(i);if(p.token.kind===27&&e.isCallLikeExpression(i)){o.advance();p=o.isOnToken()?o.readTokenInfo(i):undefined}if(p&&p.token.kind===T&&e.rangeContainsRange(i,p.token)){consumeTokenAndAdvanceScanner(p,i,u,i,true)}}}function consumeTokenAndAdvanceScanner(t,n,i,a,s){e.Debug.assert(e.rangeContainsRange(n,t.token));var c=o.lastTrailingTriviaWasNewLine();var f=false;if(t.leadingTrivia){processTrivia(t.leadingTrivia,n,_,i)}var d=0;var p=e.rangeContainsRange(r,t.token);var m=l.getLineAndCharacterOfPosition(t.token.pos);if(p){var v=u(t.token);var T=g;d=processRange(t.token,m,n,_,i);if(!v){if(d===0){var S=T&&l.getLineAndCharacterOfPosition(T.end).line;f=c&&m.line!==S}else{f=d===1}}}if(t.trailingTrivia){processTrivia(t.trailingTrivia,n,_,i)}if(f){var b=p&&!u(t.token)?i.getIndentationForToken(m.line,t.token.kind,a,!!s):-1;var x=true;if(t.leadingTrivia){var C=i.getIndentationForComment(t.token.kind,b,a);x=indentTriviaItems(t.leadingTrivia,C,x,function(e){return insertIndentation(e.pos,C,false)})}if(b!==-1&&x){insertIndentation(t.token.pos,b,d===1);y=m.line;h=b}}o.advance();_=n}}function indentTriviaItems(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o];var u=e.rangeContainsRange(r,c);switch(c.kind){case 3:if(u){indentMultilineCommentOrJsxText(c,n,!i)}i=false;break;case 2:if(i&&u){a(c)}i=false;break;case 4:i=true;break}}return i}function processTrivia(t,n,i,a){for(var o=0,s=t;o<s.length;o++){var c=s[o];if(e.isComment(c.kind)&&e.rangeContainsRange(r,c)){var u=l.getLineAndCharacterOfPosition(c.pos);processRange(c,u,n,i,a)}}}function processRange(e,t,n,i,a){var o=u(e);var s=0;if(!o){if(!g){var c=l.getLineAndCharacterOfPosition(r.pos);trimTrailingWhitespacesForLines(c.line,t.line)}else{s=processPair(e,t.line,n,g,m,_,i,a)}}g=e;_=n;m=t.line;return s}function processPair(t,r,n,i,a,o,s,c){p.updateContext(i,o,t,n,s);var u=d(p);var f;var g=0;if(u){g=applyRuleEdits(u,i,a,t,r);switch(g){case 2:if(n.getStart(l)===t.pos){c.recomputeIndentation(false)}break;case 1:if(n.getStart(l)===t.pos){c.recomputeIndentation(true)}break;default:e.Debug.assert(g===0)}f=!(u.action&8)&&u.flags!==1}else{f=true}if(r!==a&&f){trimTrailingWhitespacesForLines(a,r,i)}return g}function insertIndentation(t,r,n){var i=getIndentationString(r,f);if(n){recordReplace(t,0,i)}else{var a=l.getLineAndCharacterOfPosition(t);var o=e.getStartPositionOfLine(a.line,l);if(r!==characterToColumn(o,a.character)||indentationIsDifferent(i,o)){recordReplace(o,a.character,i)}}}function characterToColumn(e,t){var r=0;for(var n=0;n<t;n++){if(l.text.charCodeAt(e+n)===9){r+=f.tabSize-r%f.tabSize}else{r++}}return r}function indentationIsDifferent(e,t){return e!==l.text.substr(t,e.length)}function indentMultilineCommentOrJsxText(r,n,i,a){if(a===void 0){a=true}var o=l.getLineAndCharacterOfPosition(r.pos).line;var s=l.getLineAndCharacterOfPosition(r.end).line;if(o===s){if(!i){insertIndentation(r.pos,n,false)}return}var c=[];var u=r.pos;for(var d=o;d<s;d++){var p=e.getEndLinePosition(d,l);c.push({pos:u,end:p});u=e.getStartPositionOfLine(d+1,l)}if(a){c.push({pos:u,end:r.end})}if(c.length===0)return;var g=e.getStartPositionOfLine(o,l);var _=t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(g,c[0].pos,l,f);if(n===_.column){return}var m=0;if(i){m=1;o++}var y=n-_.column;for(var h=m;h<c.length;h++,o++){var v=e.getStartPositionOfLine(o,l);var T=h===0?_:t.SmartIndenter.findFirstNonWhitespaceCharacterAndColumn(c[h].pos,c[h].end,l,f);var S=T.column+y;if(S>0){var b=getIndentationString(S,f);recordReplace(v,T.character,b)}else{recordDelete(v,T.character)}}}function trimTrailingWhitespacesForLines(t,r,n){for(var i=t;i<r;i++){var a=e.getStartPositionOfLine(i,l);var o=e.getEndLinePosition(i,l);if(n&&(e.isComment(n.kind)||e.isStringOrRegularExpressionOrTemplateLiteral(n.kind))&&n.pos<=o&&n.end>o){continue}var s=getTrailingWhitespaceStartPosition(a,o);if(s!==-1){e.Debug.assert(s===a||!e.isWhiteSpaceSingleLine(l.text.charCodeAt(s-1)));recordDelete(s,o+1-s)}}}function getTrailingWhitespaceStartPosition(t,r){var n=r;while(n>=t&&e.isWhiteSpaceSingleLine(l.text.charCodeAt(n))){n--}if(n!==r){return n+1}return-1}function trimTrailingWhitespacesForRemainingRange(){var e=g?g.end:r.pos;var t=l.getLineAndCharacterOfPosition(e).line;var n=l.getLineAndCharacterOfPosition(r.end).line;trimTrailingWhitespacesForLines(t,n+1,g)}function recordDelete(t,r){if(r){v.push(e.createTextChangeFromStartLength(t,r,""))}}function recordReplace(t,r,n){if(r||n){v.push(e.createTextChangeFromStartLength(t,r,n))}}function applyRuleEdits(e,t,r,n,i){var a=i!==r;switch(e.action){case 1:return 0;case 8:if(t.end!==n.pos){recordDelete(t.end,n.pos-t.end);return a?2:0}break;case 4:if(e.flags!==1&&r!==i){return 0}var o=i-r;if(o!==1){recordReplace(t.end,n.pos-t.end,f.newLineCharacter);return a?0:1}break;case 2:if(e.flags!==1&&r!==i){return 0}var s=n.pos-t.end;if(s!==1||l.text.charCodeAt(t.end)!==32){recordReplace(t.end,n.pos-t.end," ");return a?2:0}}return 0}}var n;(function(e){e[e["None"]=0]="None";e[e["LineAdded"]=1]="LineAdded";e[e["LineRemoved"]=2]="LineRemoved"})(n||(n={}));function getRangeOfEnclosingComment(t,r,n,i){if(i===void 0){i=e.getTokenAtPosition(t,r)}var a=e.findAncestor(i,e.isJSDoc);if(a)i=a.parent;var o=i.getStart(t);if(o<=r&&r<i.getEnd()){return undefined}n=n===null?undefined:n===undefined?e.findPrecedingToken(r,t):n;var s=n&&e.getTrailingCommentRanges(t.text,n.end);var c=e.getLeadingCommentRangesOfNode(i,t);var u=e.concatenate(s,c);return u&&e.find(u,function(n){return e.rangeContainsPositionExclusive(n,r)||r===n.end&&(n.kind===2||r===t.getFullWidth())})}t.getRangeOfEnclosingComment=getRangeOfEnclosingComment;function getOpenTokenForList(e,t){switch(e.kind){case 157:case 239:case 196:case 156:case 155:case 197:if(e.typeParameters===t){return 28}else if(e.parameters===t){return 20}break;case 191:case 192:if(e.typeArguments===t){return 28}else if(e.arguments===t){return 20}break;case 164:if(e.typeArguments===t){return 28}break;case 168:return 18}return 0}function getCloseTokenForOpenToken(e){switch(e){case 20:return 21;case 28:return 30;case 18:return 19}return 0}var i;var a;var o;function getIndentationString(t,r){var n=!i||(i.tabSize!==r.tabSize||i.indentSize!==r.indentSize);if(n){i={tabSize:r.tabSize,indentSize:r.indentSize};a=o=undefined}if(!r.convertTabsToSpaces){var s=Math.floor(t/r.tabSize);var c=t-s*r.tabSize;var u=void 0;if(!a){a=[]}if(a[s]===undefined){a[s]=u=e.repeatString("\t",s)}else{u=a[s]}return c?u+e.repeatString(" ",c):u}else{var l=void 0;var f=Math.floor(t/r.indentSize);var d=t%r.indentSize;if(!o){o=[]}if(o[f]===undefined){l=e.repeatString(" ",r.indentSize*f);o[f]=l}else{l=o[f]}return d?l+e.repeatString(" ",d):l}}t.getIndentationString=getIndentationString})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(r){var n;(function(e){e[e["Unknown"]=-1]="Unknown"})(n||(n={}));function getIndentation(r,n,i,a){if(a===void 0){a=false}if(r>n.text.length){return getBaseIndentation(i)}if(i.indentStyle===e.IndentStyle.None){return 0}var o=e.findPrecedingToken(r,n,undefined,true);var s=t.getRangeOfEnclosingComment(n,r,o||null);if(s&&s.kind===3){return getCommentIndent(n,r,i,s)}if(!o){return getBaseIndentation(i)}var c=e.isStringOrRegularExpressionOrTemplateLiteral(o.kind);if(c&&o.getStart(n)<=r&&r<o.end){return 0}var u=n.getLineAndCharacterOfPosition(r).line;if(i.indentStyle===e.IndentStyle.Block){return getBlockIndent(n,r,i)}if(o.kind===27&&o.parent.kind!==204){var l=getActualIndentationForListItemBeforeComma(o,n,i);if(l!==-1){return l}}var f=getListByPosition(r,o.parent,n);if(f&&!e.rangeContainsRange(f,o)){return getActualIndentationForListStartLine(f,n,i)+i.indentSize}return getSmartIndent(n,r,o,u,a,i)}r.getIndentation=getIndentation;function getCommentIndent(t,r,n,i){var a=e.getLineAndCharacterOfPosition(t,r).line-1;var o=e.getLineAndCharacterOfPosition(t,i.pos).line;e.Debug.assert(o>=0);if(a<=o){return findFirstNonWhitespaceColumn(e.getStartPositionOfLine(o,t),r,t,n)}var s=e.getStartPositionOfLine(a,t);var c=findFirstNonWhitespaceCharacterAndColumn(s,r,t,n),u=c.column,l=c.character;if(u===0){return u}var f=t.text.charCodeAt(s+l);return f===42?u-1:u}function getBlockIndent(t,r,n){var i=r;while(i>0){var a=t.text.charCodeAt(i);if(!e.isWhiteSpaceLike(a)){break}i--}var o=e.getLineStartPositionForPosition(i,t);return findFirstNonWhitespaceColumn(o,i,t,n)}function getSmartIndent(t,r,n,i,a,o){var s;var c=n;while(c){if(e.positionBelongsToNode(c,r,t)&&shouldIndentChildNode(o,c,s,t,true)){var u=getStartLineAndCharacterForNode(c,t);var l=nextTokenIsCurlyBraceOnSameLineAsCursor(n,c,i,t);var f=l!==0?a&&l===2?o.indentSize:0:i!==u.line?o.indentSize:0;return getIndentationForNodeWorker(c,u,undefined,f,t,true,o)}var d=getActualIndentationForListItem(c,t,o,true);if(d!==-1){return d}s=c;c=c.parent}return getBaseIndentation(o)}function getIndentationForNode(e,t,r,n){var i=r.getLineAndCharacterOfPosition(e.getStart(r));return getIndentationForNodeWorker(e,i,t,0,r,false,n)}r.getIndentationForNode=getIndentationForNode;function getBaseIndentation(e){return e.baseIndentSize||0}r.getBaseIndentation=getBaseIndentation;function getIndentationForNodeWorker(e,t,r,n,i,a,o){var s=e.parent;while(s){var c=true;if(r){var u=e.getStart(i);c=u<r.pos||u>r.end}var l=getContainingListOrParentStart(s,e,i);var f=l.line===t.line||childStartsOnTheSameLineWithElseInIfStatement(s,e,t.line,i);if(c){var d=getActualIndentationForListItem(e,i,o,!f);if(d!==-1){return d+n}d=getActualIndentationForNode(e,s,t,f,i,o);if(d!==-1){return d+n}}if(shouldIndentChildNode(o,s,e,i,a)&&!f){n+=o.indentSize}var p=isArgumentAndStartLineOverlapsExpressionBeingCalled(s,e,t.line,i);e=s;s=e.parent;t=p?i.getLineAndCharacterOfPosition(e.getStart(i)):l}return n+getBaseIndentation(o)}function getContainingListOrParentStart(e,t,r){var n=getContainingList(t,r);var i=n?n.pos:e.getStart(r);return r.getLineAndCharacterOfPosition(i)}function getActualIndentationForListItemBeforeComma(t,r,n){var i=e.findListItemInfo(t);if(i&&i.listItemIndex>0){return deriveActualIndentationFromList(i.list.getChildren(),i.listItemIndex-1,r,n)}else{return-1}}function getActualIndentationForNode(t,r,n,i,a,o){var s=(e.isDeclaration(t)||e.isStatementButNotDeclaration(t))&&(r.kind===279||!i);if(!s){return-1}return findColumnForFirstNonWhitespaceCharacterInLine(n,a,o)}var i;(function(e){e[e["Unknown"]=0]="Unknown";e[e["OpenBrace"]=1]="OpenBrace";e[e["CloseBrace"]=2]="CloseBrace"})(i||(i={}));function nextTokenIsCurlyBraceOnSameLineAsCursor(t,r,n,i){var a=e.findNextToken(t,r,i);if(!a){return 0}if(a.kind===18){return 1}else if(a.kind===19){var o=getStartLineAndCharacterForNode(a,i).line;return n===o?2:0}return 0}function getStartLineAndCharacterForNode(e,t){return t.getLineAndCharacterOfPosition(e.getStart(t))}function isArgumentAndStartLineOverlapsExpressionBeingCalled(t,r,n,i){if(!(e.isCallExpression(t)&&e.contains(t.arguments,r))){return false}var a=t.expression.getEnd();var o=e.getLineAndCharacterOfPosition(i,a).line;return o===n}r.isArgumentAndStartLineOverlapsExpressionBeingCalled=isArgumentAndStartLineOverlapsExpressionBeingCalled;function childStartsOnTheSameLineWithElseInIfStatement(t,r,n,i){if(t.kind===222&&t.elseStatement===r){var a=e.findChildOfKind(t,83,i);e.Debug.assert(a!==undefined);var o=getStartLineAndCharacterForNode(a,i).line;return o===n}return false}r.childStartsOnTheSameLineWithElseInIfStatement=childStartsOnTheSameLineWithElseInIfStatement;function getContainingList(e,t){return e.parent&&getListByRange(e.getStart(t),e.getEnd(),e.parent,t)}r.getContainingList=getContainingList;function getListByPosition(e,t,r){return t&&getListByRange(e,e,t,r)}function getListByRange(t,r,n,i){switch(n.kind){case 164:return getList(n.typeArguments);case 188:return getList(n.properties);case 187:return getList(n.elements);case 168:return getList(n.members);case 239:case 196:case 197:case 156:case 155:case 160:case 157:case 166:case 161:return getList(n.typeParameters)||getList(n.parameters);case 240:case 209:case 241:case 242:case 303:return getList(n.typeParameters);case 192:case 191:return getList(n.typeArguments)||getList(n.arguments);case 238:return getList(n.declarations);case 252:case 256:return getList(n.elements);case 184:case 185:return getList(n.elements)}function getList(a){return a&&e.rangeContainsStartEnd(getVisualListRange(n,a,i),t,r)?a:undefined}}function getVisualListRange(e,t,r){var n=e.getChildren(r);for(var i=1;i<n.length-1;i++){if(n[i].pos===t.pos&&n[i].end===t.end){return{pos:n[i-1].end,end:n[i+1].getStart(r)}}}return t}function getActualIndentationForListStartLine(e,t,r){if(!e){return-1}return findColumnForFirstNonWhitespaceCharacterInLine(t.getLineAndCharacterOfPosition(e.pos),t,r)}function getActualIndentationForListItem(e,t,r,n){if(e.parent&&e.parent.kind===238){return-1}var i=getContainingList(e,t);if(i){var a=i.indexOf(e);if(a!==-1){var o=deriveActualIndentationFromList(i,a,t,r);if(o!==-1){return o}}return getActualIndentationForListStartLine(i,t,r)+(n?r.indentSize:0)}return-1}function deriveActualIndentationFromList(t,r,n,i){e.Debug.assert(r>=0&&r<t.length);var a=t[r];var o=getStartLineAndCharacterForNode(a,n);for(var s=r-1;s>=0;s--){if(t[s].kind===27){continue}var c=n.getLineAndCharacterOfPosition(t[s].end).line;if(c!==o.line){return findColumnForFirstNonWhitespaceCharacterInLine(o,n,i)}o=getStartLineAndCharacterForNode(t[s],n)}return-1}function findColumnForFirstNonWhitespaceCharacterInLine(e,t,r){var n=t.getPositionOfLineAndCharacter(e.line,0);return findFirstNonWhitespaceColumn(n,n+e.character,t,r)}function findFirstNonWhitespaceCharacterAndColumn(t,r,n,i){var a=0;var o=0;for(var s=t;s<r;s++){var c=n.text.charCodeAt(s);if(!e.isWhiteSpaceSingleLine(c)){break}if(c===9){o+=i.tabSize+o%i.tabSize}else{o++}a++}return{column:o,character:a}}r.findFirstNonWhitespaceCharacterAndColumn=findFirstNonWhitespaceCharacterAndColumn;function findFirstNonWhitespaceColumn(e,t,r,n){return findFirstNonWhitespaceCharacterAndColumn(e,t,r,n).column}r.findFirstNonWhitespaceColumn=findFirstNonWhitespaceColumn;function nodeWillIndentChild(e,t,r,n,i){var a=r?r.kind:0;switch(t.kind){case 221:case 240:case 209:case 241:case 243:case 242:case 187:case 218:case 245:case 188:case 168:case 181:case 170:case 246:case 272:case 271:case 195:case 189:case 191:case 192:case 219:case 254:case 230:case 205:case 185:case 184:case 262:case 265:case 261:case 270:case 155:case 160:case 161:case 151:case 165:case 166:case 177:case 193:case 201:case 256:case 252:case 257:case 253:case 154:return true;case 237:case 275:if(!e.indentMultiLineObjectLiteralBeginningOnBlankLine&&n&&a===188){return rangeIsOnOneLine(n,r)}return true;case 223:case 224:case 226:case 227:case 225:case 222:case 239:case 196:case 156:case 197:case 157:case 158:case 159:return a!==218;case 255:return a!==256;case 249:return a!==250||!!r.namedBindings&&r.namedBindings.kind!==252;case 260:return a!==263;case 264:return a!==266;case 174:case 173:if(a===168){return false}}return i}r.nodeWillIndentChild=nodeWillIndentChild;function isControlFlowEndingStatement(e,t){switch(e){case 230:case 234:case 228:case 229:return t.kind!==218;default:return false}}function shouldIndentChildNode(e,t,r,n,i){if(i===void 0){i=false}return nodeWillIndentChild(e,t,r,n,false)&&!(i&&r&&isControlFlowEndingStatement(r.kind,t))}r.shouldIndentChildNode=shouldIndentChildNode;function rangeIsOnOneLine(t,r){var n=e.skipTrivia(t.text,r.pos);var i=t.getLineAndCharacterOfPosition(n).line;var a=t.getLineAndCharacterOfPosition(r.end).line;return i===a}})(r=t.SmartIndenter||(t.SmartIndenter={}))})(t=e.formatting||(e.formatting={}))})(s||(s={}));var s;(function(e){var t;(function(t){function getPos(t){var r=t.__pos;e.Debug.assert(typeof r==="number");return r}function setPos(t,r){e.Debug.assert(typeof r==="number");t.__pos=r}function getEnd(t){var r=t.__end;e.Debug.assert(typeof r==="number");return r}function setEnd(t,r){e.Debug.assert(typeof r==="number");t.__end=r}var r;(function(e){e[e["FullStart"]=0]="FullStart";e[e["Start"]=1]="Start"})(r=t.Position||(t.Position={}));function skipWhitespacesAndLineBreaks(t,r){return e.skipTrivia(t,r,false,true)}function hasCommentsBeforeLineBreak(t,r){var n=r;while(n<t.length){var i=t.charCodeAt(n);if(e.isWhiteSpaceSingleLine(i)){n++;continue}return i===47}return false}t.useNonAdjustedPositions={useNonAdjustedStartPosition:true,useNonAdjustedEndPosition:true};var i;(function(e){e[e["Remove"]=0]="Remove";e[e["ReplaceWithSingleNode"]=1]="ReplaceWithSingleNode";e[e["ReplaceWithMultipleNodes"]=2]="ReplaceWithMultipleNodes";e[e["Text"]=3]="Text"})(i||(i={}));function getAdjustedRange(e,t,n,i){return{pos:getAdjustedStartPosition(e,t,i,r.Start),end:getAdjustedEndPosition(e,n,i)}}function getAdjustedStartPosition(t,n,i,a){if(i.useNonAdjustedStartPosition){return n.getStart(t)}var o=n.getFullStart();var s=n.getStart(t);if(o===s){return s}var c=e.getLineStartPositionForPosition(o,t);var u=e.getLineStartPositionForPosition(s,t);if(u===c){return a===r.Start?s:o}var l=o>0?1:0;var f=e.getStartPositionOfLine(e.getLineOfLocalPosition(t,c)+l,t);f=skipWhitespacesAndLineBreaks(t.text,f);return e.getStartPositionOfLine(e.getLineOfLocalPosition(t,f),t)}function getAdjustedEndPosition(t,r,n){var i=r.end;if(n.useNonAdjustedEndPosition||e.isExpression(r)){return i}var a=e.skipTrivia(t.text,i,true);return a!==i&&e.isLineBreak(t.text.charCodeAt(a-1))?a:i}function isSeparator(e,t){return!!t&&!!e.parent&&(t.kind===27||t.kind===26&&e.parent.kind===188)}function spaces(e){var t="";for(var r=0;r<e;r++){t+=" "}return t}var a=function(){function ChangeTracker(t,r){this.newLineCharacter=t;this.formatContext=r;this.changes=[];this.newFiles=[];this.classesWithNodesInsertedAtStart=e.createMap();this.deletedNodes=[]}ChangeTracker.fromContext=function(t){return new ChangeTracker(e.getNewLineOrDefaultFromHost(t.host,t.formatContext.options),t.formatContext)};ChangeTracker.with=function(e,t){var r=ChangeTracker.fromContext(e);t(r);return r.getChanges()};ChangeTracker.prototype.deleteRange=function(e,t){this.changes.push({kind:i.Remove,sourceFile:e,range:t})};ChangeTracker.prototype.delete=function(e,t){this.deletedNodes.push({sourceFile:e,node:t})};ChangeTracker.prototype.deleteModifier=function(t,r){this.deleteRange(t,{pos:r.getStart(t),end:e.skipTrivia(t.text,r.end,true)})};ChangeTracker.prototype.deleteNodeRange=function(e,t,n,i){if(i===void 0){i={}}var a=getAdjustedStartPosition(e,t,i,r.FullStart);var o=getAdjustedEndPosition(e,n,i);this.deleteRange(e,{pos:a,end:o})};ChangeTracker.prototype.deleteNodeRangeExcludingEnd=function(e,t,n,i){if(i===void 0){i={}}var a=getAdjustedStartPosition(e,t,i,r.FullStart);var o=n===undefined?e.text.length:getAdjustedStartPosition(e,n,i,r.FullStart);this.deleteRange(e,{pos:a,end:o})};ChangeTracker.prototype.replaceRange=function(e,t,r,n){if(n===void 0){n={}}this.changes.push({kind:i.ReplaceWithSingleNode,sourceFile:e,range:t,options:n,node:r})};ChangeTracker.prototype.replaceNode=function(e,r,n,i){if(i===void 0){i=t.useNonAdjustedPositions}this.replaceRange(e,getAdjustedRange(e,r,r,i),n,i)};ChangeTracker.prototype.replaceNodeRange=function(e,r,n,i,a){if(a===void 0){a=t.useNonAdjustedPositions}this.replaceRange(e,getAdjustedRange(e,r,n,a),i,a)};ChangeTracker.prototype.replaceRangeWithNodes=function(e,t,r,n){if(n===void 0){n={}}this.changes.push({kind:i.ReplaceWithMultipleNodes,sourceFile:e,range:t,options:n,nodes:r})};ChangeTracker.prototype.replaceNodeWithNodes=function(e,r,n,i){if(i===void 0){i=t.useNonAdjustedPositions}this.replaceRangeWithNodes(e,getAdjustedRange(e,r,r,i),n,i)};ChangeTracker.prototype.replaceNodeWithText=function(e,r,n){this.replaceRangeWithText(e,getAdjustedRange(e,r,r,t.useNonAdjustedPositions),n)};ChangeTracker.prototype.replaceNodeRangeWithNodes=function(e,r,n,i,a){if(a===void 0){a=t.useNonAdjustedPositions}this.replaceRangeWithNodes(e,getAdjustedRange(e,r,n,a),i,a)};ChangeTracker.prototype.nextCommaToken=function(t,r){var n=e.findNextToken(r,r.parent,t);return n&&n.kind===27?n:undefined};ChangeTracker.prototype.replacePropertyAssignment=function(e,t,r){var n=this.nextCommaToken(e,t)?"":","+this.newLineCharacter;this.replaceNode(e,t,r,{suffix:n})};ChangeTracker.prototype.insertNodeAt=function(t,r,n,i){if(i===void 0){i={}}this.replaceRange(t,e.createRange(r),n,i)};ChangeTracker.prototype.insertNodesAt=function(t,r,n,i){if(i===void 0){i={}}this.replaceRangeWithNodes(t,e.createRange(r),n,i)};ChangeTracker.prototype.insertNodeAtTopOfFile=function(t,r,n){var i=getInsertionPositionAtSourceFileTop(t);this.insertNodeAt(t,i,r,{prefix:i===0?undefined:this.newLineCharacter,suffix:(e.isLineBreak(t.text.charCodeAt(i))?"":this.newLineCharacter)+(n?this.newLineCharacter:"")})};ChangeTracker.prototype.insertNodeBefore=function(e,t,n,i){if(i===void 0){i=false}this.insertNodeAt(e,getAdjustedStartPosition(e,t,{},r.Start),n,this.getOptionsForInsertNodeBefore(t,i))};ChangeTracker.prototype.insertModifierBefore=function(t,r,n){var i=n.getStart(t);this.insertNodeAt(t,i,e.createToken(r),{suffix:" "})};ChangeTracker.prototype.insertLastModifierBefore=function(t,r,n){if(!n.modifiers){this.insertModifierBefore(t,r,n);return}var i=n.modifiers.end;this.insertNodeAt(t,i,e.createToken(r),{prefix:" "})};ChangeTracker.prototype.insertCommentBeforeLine=function(t,r,n,i){var a=e.getStartPositionOfLine(r,t);var o=e.getFirstNonSpaceCharacterPosition(t.text,a);var s=isValidLocationToAddComment(t,o);var c=e.getTouchingToken(t,s?o:n);var u=t.text.slice(a,o);var l=(s?"":this.newLineCharacter)+"//"+i+this.newLineCharacter+u;this.insertText(t,c.getStart(t),l)};ChangeTracker.prototype.insertJsdocCommentBefore=function(t,r,n){var i=r.getStart(t);if(r.jsDoc){for(var a=0,o=r.jsDoc;a<o.length;a++){var s=o[a];this.deleteRange(t,{pos:e.getLineStartPositionForPosition(s.getStart(t),t),end:getAdjustedEndPosition(t,s,{})})}}var c=e.getPrecedingNonSpaceCharacterPosition(t.text,i-1);var u=t.text.slice(c,i);this.insertNodeAt(t,i,n,{preserveLeadingWhitespace:false,suffix:this.newLineCharacter+u})};ChangeTracker.prototype.replaceRangeWithText=function(e,t,r){this.changes.push({kind:i.Text,sourceFile:e,range:t,text:r})};ChangeTracker.prototype.insertText=function(t,r,n){this.replaceRangeWithText(t,e.createRange(r),n)};ChangeTracker.prototype.tryInsertTypeAnnotation=function(t,r,n){var i;if(e.isFunctionLike(r)){i=e.findChildOfKind(r,21,t);if(!i){if(!e.isArrowFunction(r))return;i=e.first(r.parameters)}}else{i=r.kind!==237&&r.questionToken?r.questionToken:r.name}this.insertNodeAt(t,i.end,n,{prefix:": "})};ChangeTracker.prototype.insertTypeParameters=function(t,r,n){var i=(e.findChildOfKind(r,20,t)||e.first(r.parameters)).getStart(t);this.insertNodesAt(t,i,n,{prefix:"<",suffix:">"})};ChangeTracker.prototype.getOptionsForInsertNodeBefore=function(t,r){if(e.isStatement(t)||e.isClassElement(t)){return{suffix:r?this.newLineCharacter+this.newLineCharacter:this.newLineCharacter}}else if(e.isVariableDeclaration(t)){return{suffix:", "}}else if(e.isParameter(t)){return{}}else if(e.isStringLiteral(t)&&e.isImportDeclaration(t.parent)||e.isNamedImports(t)){return{suffix:", "}}return e.Debug.failBadSyntaxKind(t)};ChangeTracker.prototype.insertNodeAtConstructorStart=function(t,r,n){var i=e.firstOrUndefined(r.body.statements);if(!i||!r.body.multiLine){this.replaceConstructorBody(t,r,[n].concat(r.body.statements))}else{this.insertNodeBefore(t,i,n)}};ChangeTracker.prototype.insertNodeAtConstructorEnd=function(t,r,n){var i=e.lastOrUndefined(r.body.statements);if(!i||!r.body.multiLine){this.replaceConstructorBody(t,r,r.body.statements.concat([n]))}else{this.insertNodeAfter(t,i,n)}};ChangeTracker.prototype.replaceConstructorBody=function(t,r,n){this.replaceNode(t,r.body,e.createBlock(n,true))};ChangeTracker.prototype.insertNodeAtEndOfScope=function(t,n,i){var a=getAdjustedStartPosition(t,n.getLastToken(),{},r.Start);this.insertNodeAt(t,a,i,{prefix:e.isLineBreak(t.text.charCodeAt(n.getLastToken().pos))?this.newLineCharacter:this.newLineCharacter+this.newLineCharacter,suffix:this.newLineCharacter})};ChangeTracker.prototype.insertNodeAtClassStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)};ChangeTracker.prototype.insertNodeAtObjectStart=function(e,t,r){this.insertNodeAtStartWorker(e,t,r)};ChangeTracker.prototype.insertNodeAtStartWorker=function(t,r,i){var a=r.getStart(t);var o=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(e.getLineStartPositionForPosition(a,t),a,t,this.formatContext.options)+this.formatContext.options.indentSize;this.insertNodeAt(t,getMembersOrProperties(r).pos,i,n({indentation:o},this.getInsertNodeAtStartPrefixSuffix(t,r)))};ChangeTracker.prototype.getInsertNodeAtStartPrefixSuffix=function(t,r){var n=e.isObjectLiteralExpression(r)?",":"";if(getMembersOrProperties(r).length===0){if(e.addToSeen(this.classesWithNodesInsertedAtStart,e.getNodeId(r),{node:r,sourceFile:t})){var i=e.positionsAreOnSameLine.apply(void 0,getClassOrObjectBraceEnds(r,t).concat([t]));return{prefix:this.newLineCharacter,suffix:n+(i?this.newLineCharacter:"")}}else{return{prefix:"",suffix:n+this.newLineCharacter}}}else{return{prefix:this.newLineCharacter,suffix:n}}};ChangeTracker.prototype.insertNodeAfterComma=function(e,t,r){var n=this.insertNodeAfterWorker(e,this.nextCommaToken(e,t)||t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))};ChangeTracker.prototype.insertNodeAfter=function(e,t,r){var n=this.insertNodeAfterWorker(e,t,r);this.insertNodeAt(e,n,r,this.getInsertNodeAfterOptions(e,t))};ChangeTracker.prototype.insertNodeAtEndOfList=function(e,t,r){this.insertNodeAt(e,t.end,r,{prefix:", "})};ChangeTracker.prototype.insertNodesAfter=function(t,r,n){var i=this.insertNodeAfterWorker(t,r,e.first(n));this.insertNodesAt(t,i,n,this.getInsertNodeAfterOptions(t,r))};ChangeTracker.prototype.insertNodeAfterWorker=function(t,r,n){if(needSemicolonBetween(r,n)){if(t.text.charCodeAt(r.end-1)!==59){this.replaceRange(t,e.createRange(r.end),e.createToken(26))}}var i=getAdjustedEndPosition(t,r,{});return i};ChangeTracker.prototype.getInsertNodeAfterOptions=function(t,r){var i=this.getInsertNodeAfterOptionsWorker(r);return n({},i,{prefix:r.end===t.end&&e.isStatement(r)?i.prefix?"\n"+i.prefix:"\n":i.prefix})};ChangeTracker.prototype.getInsertNodeAfterOptionsWorker=function(t){switch(t.kind){case 240:case 244:return{prefix:this.newLineCharacter,suffix:this.newLineCharacter};case 237:case 10:case 72:return{prefix:", "};case 275:return{suffix:","+this.newLineCharacter};case 85:return{prefix:" "};case 151:return{};default:e.Debug.assert(e.isStatement(t)||e.isClassOrTypeElement(t));return{suffix:this.newLineCharacter}}};ChangeTracker.prototype.insertName=function(t,r,n){e.Debug.assert(!r.name);if(r.kind===197){var i=e.findChildOfKind(r,37,t);var a=e.findChildOfKind(r,20,t);if(a){this.insertNodesAt(t,a.getStart(t),[e.createToken(90),e.createIdentifier(n)],{joiner:" "});deleteNode(this,t,i)}else{this.insertText(t,e.first(r.parameters).getStart(t),"function "+n+"(");this.replaceRange(t,i,e.createToken(21))}if(r.body.kind!==218){this.insertNodesAt(t,r.body.getStart(t),[e.createToken(18),e.createToken(97)],{joiner:" ",suffix:" "});this.insertNodesAt(t,r.body.end,[e.createToken(26),e.createToken(19)],{joiner:" "})}}else{var o=e.findChildOfKind(r,r.kind===196?90:76,t).end;this.insertNodeAt(t,o,e.createIdentifier(n),{prefix:" "})}};ChangeTracker.prototype.insertExportModifier=function(e,t){this.insertText(e,t.getStart(e),"export ")};ChangeTracker.prototype.insertNodeInListAfter=function(t,r,n,i){if(i===void 0){i=e.formatting.SmartIndenter.getContainingList(r,t)}if(!i){e.Debug.fail("node is not a list element");return}var a=e.indexOfNode(i,r);if(a<0){return}var o=r.getEnd();if(a!==i.length-1){var s=e.getTokenAtPosition(t,r.end);if(s&&isSeparator(r,s)){var c=e.getLineAndCharacterOfPosition(t,skipWhitespacesAndLineBreaks(t.text,i[a+1].getFullStart()));var u=e.getLineAndCharacterOfPosition(t,s.end);var l=void 0;var f=void 0;if(u.line===c.line){f=s.end;l=spaces(c.character-u.character)}else{f=e.getStartPositionOfLine(c.line,t)}var d=""+e.tokenToString(s.kind)+t.text.substring(s.end,i[a+1].getStart(t));this.replaceRange(t,e.createRange(f,i[a+1].getStart(t)),n,{prefix:l,suffix:d})}}else{var p=r.getStart(t);var g=e.getLineStartPositionForPosition(p,t);var _=void 0;var m=false;if(i.length===1){_=27}else{var y=e.findPrecedingToken(r.pos,t);_=isSeparator(r,y)?y.kind:27;var h=e.getLineStartPositionForPosition(i[a-1].getStart(t),t);m=h!==g}if(hasCommentsBeforeLineBreak(t.text,r.end)){m=true}if(m){this.replaceRange(t,e.createRange(o),e.createToken(_));var v=e.formatting.SmartIndenter.findFirstNonWhitespaceColumn(g,p,t,this.formatContext.options);var T=e.skipTrivia(t.text,o,true,false);if(T!==o&&e.isLineBreak(t.text.charCodeAt(T-1))){T--}this.replaceRange(t,e.createRange(T),n,{indentation:v,prefix:this.newLineCharacter})}else{this.replaceRange(t,e.createRange(o),n,{prefix:e.tokenToString(_)+" "})}}};ChangeTracker.prototype.finishClassesWithNodesInsertedAtStart=function(){var t=this;this.classesWithNodesInsertedAtStart.forEach(function(r){var n=r.node,i=r.sourceFile;var a=getClassOrObjectBraceEnds(n,i),o=a[0],s=a[1];if(e.positionsAreOnSameLine(o,s,i)&&o!==s-1){t.deleteRange(i,e.createRange(o,s-1))}})};ChangeTracker.prototype.finishDeleteDeclarations=function(){var t=this;var r=new e.NodeSet;var n=function(t,n){if(!i.deletedNodes.some(function(r){return r.sourceFile===t&&e.rangeContainsRangeExclusive(r.node,n)})){if(e.isArray(n)){i.deleteRange(t,e.rangeOfTypeParameters(n))}else{c.deleteDeclaration(i,r,t,n)}}};var i=this;for(var a=0,o=this.deletedNodes;a<o.length;a++){var s=o[a],u=s.sourceFile,l=s.node;n(u,l)}r.forEach(function(n){var i=n.getSourceFile();var a=e.formatting.SmartIndenter.getContainingList(n,i);if(n!==e.last(a))return;var o=e.findLastIndex(a,function(e){return!r.has(e)},a.length-2);if(o!==-1){t.deleteRange(i,{pos:a[o].end,end:startPositionToDeleteNodeInList(i,a[o+1])})}})};ChangeTracker.prototype.getChanges=function(e){this.finishDeleteDeclarations();this.finishClassesWithNodesInsertedAtStart();var t=o.getTextChangesFromChanges(this.changes,this.newLineCharacter,this.formatContext,e);for(var r=0,n=this.newFiles;r<n.length;r++){var i=n[r],a=i.oldFile,s=i.fileName,c=i.statements;t.push(o.newFileChanges(a,s,c,this.newLineCharacter,this.formatContext))}return t};ChangeTracker.prototype.createNewFile=function(e,t,r){this.newFiles.push({oldFile:e,fileName:t,statements:r})};return ChangeTracker}();t.ChangeTracker=a;function startPositionToDeleteNodeInList(t,n){return e.skipTrivia(t.text,getAdjustedStartPosition(t,n,{},r.FullStart),false,true)}function getClassOrObjectBraceEnds(t,r){return[e.findChildOfKind(t,18,r).end,e.findChildOfKind(t,19,r).end]}function getMembersOrProperties(t){return e.isObjectLiteralExpression(t)?t.properties:t.members}function getNewFileText(e,t,r,n){return o.newFileChangesWorker(undefined,t,e,r,n)}t.getNewFileText=getNewFileText;var o;(function(t){function getTextChangesFromChanges(t,r,n,i){return e.group(t,function(e){return e.sourceFile.path}).map(function(t){var a=t[0].sourceFile;var o=e.stableSort(t,function(e,t){return e.range.pos-t.range.pos||e.range.end-t.range.end});var s=function(t){e.Debug.assert(o[t].range.end<=o[t+1].range.pos,"Changes overlap",function(){return JSON.stringify(o[t].range)+" and "+JSON.stringify(o[t+1].range)})};for(var c=0;c<o.length-1;c++){s(c)}var u=o.map(function(t){return e.createTextChange(e.createTextSpanFromRange(t.range),computeNewText(t,a,r,n,i))});return{fileName:a.fileName,textChanges:u}})}t.getTextChangesFromChanges=getTextChangesFromChanges;function newFileChanges(t,r,n,i,a){var o=newFileChangesWorker(t,e.getScriptKindFromFileName(r),n,i,a);return{fileName:r,textChanges:[e.createTextChange(e.createTextSpan(0,0),o)],isNewFile:true}}t.newFileChanges=newFileChanges;function newFileChangesWorker(t,r,n,i,a){var o=n.map(function(e){return getNonformattedText(e,t,i).text}).join(i);var s=e.createSourceFile("any file name",o,6,true,r);var c=e.formatting.formatDocument(s,a);return applyChanges(o,c)+i}t.newFileChangesWorker=newFileChangesWorker;function computeNewText(t,r,n,a,o){if(t.kind===i.Remove){return""}if(t.kind===i.Text){return t.text}var s=t.options,c=s===void 0?{}:s,u=t.range.pos;var l=function(e){return getFormattedTextOfNode(e,r,u,c,n,a,o)};var f=t.kind===i.ReplaceWithMultipleNodes?t.nodes.map(function(t){return e.removeSuffix(l(t),n)}).join(t.options.joiner||n):l(t.node);var d=c.preserveLeadingWhitespace||c.indentation!==undefined||e.getLineStartPositionForPosition(u,r)===u?f:f.replace(/^\s+/,"");return(c.prefix||"")+d+(c.suffix||"")}function getFormattedTextOfNode(t,r,n,i,a,o,s){var c=i.indentation,u=i.prefix,l=i.delta;var f=getNonformattedText(t,r,a),d=f.node,p=f.text;if(s)s(d,p);var g=o.options;var _=c!==undefined?c:e.formatting.SmartIndenter.getIndentation(n,r,g,u===a||e.getLineStartPositionForPosition(n,r)===n);if(l===undefined){l=e.formatting.SmartIndenter.shouldIndentChildNode(o.options,t)?g.indentSize||0:0}var m={text:p,getLineAndCharacterOfPosition:function(t){return e.getLineAndCharacterOfPosition(this,t)}};var y=e.formatting.formatNodeGivenIndentation(d,m,r.languageVariant,_,l,o);return applyChanges(p,y)}function getNonformattedText(t,r,n){var i=new s(n);var a=n==="\n"?1:0;e.createPrinter({newLine:a,neverAsciiEscape:true},i).writeNode(4,t,r,i);return{text:i.getText(),node:assignPositionsToNode(t)}}t.getNonformattedText=getNonformattedText})(o||(o={}));function applyChanges(t,r){for(var n=r.length-1;n>=0;n--){var i=r[n],a=i.span,o=i.newText;t=""+t.substring(0,a.start)+o+t.substring(e.textSpanEnd(a))}return t}t.applyChanges=applyChanges;function isTrivia(t){return e.skipTrivia(t,0)===t.length}function assignPositionsToNode(t){var r=e.visitEachChild(t,assignPositionsToNode,e.nullTransformationContext,assignPositionsToNodeArray,assignPositionsToNode);var n=e.nodeIsSynthesized(r)?r:Object.create(r);n.pos=getPos(t);n.end=getEnd(t);return n}function assignPositionsToNodeArray(t,r,n,i,a){var o=e.visitNodes(t,r,n,i,a);if(!o){return o}var s=o===t?e.createNodeArray(o.slice(0)):o;s.pos=getPos(t);s.end=getEnd(t);return s}var s=function(){function Writer(t){var r=this;this.lastNonTriviaPosition=0;this.writer=e.createTextWriter(t);this.onEmitNode=function(e,t,n){if(t){setPos(t,r.lastNonTriviaPosition)}n(e,t);if(t){setEnd(t,r.lastNonTriviaPosition)}};this.onBeforeEmitNodeArray=function(e){if(e){setPos(e,r.lastNonTriviaPosition)}};this.onAfterEmitNodeArray=function(e){if(e){setEnd(e,r.lastNonTriviaPosition)}};this.onBeforeEmitToken=function(e){if(e){setPos(e,r.lastNonTriviaPosition)}};this.onAfterEmitToken=function(e){if(e){setEnd(e,r.lastNonTriviaPosition)}}}Writer.prototype.setLastNonTriviaPosition=function(t,r){if(r||!isTrivia(t)){this.lastNonTriviaPosition=this.writer.getTextPos();var n=0;while(e.isWhiteSpaceLike(t.charCodeAt(t.length-n-1))){n++}this.lastNonTriviaPosition-=n}};Writer.prototype.write=function(e){this.writer.write(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeComment=function(e){this.writer.writeComment(e)};Writer.prototype.writeKeyword=function(e){this.writer.writeKeyword(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeOperator=function(e){this.writer.writeOperator(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writePunctuation=function(e){this.writer.writePunctuation(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeTrailingSemicolon=function(e){this.writer.writeTrailingSemicolon(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeParameter=function(e){this.writer.writeParameter(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeProperty=function(e){this.writer.writeProperty(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeSpace=function(e){this.writer.writeSpace(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeStringLiteral=function(e){this.writer.writeStringLiteral(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeSymbol=function(e,t){this.writer.writeSymbol(e,t);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeLine=function(){this.writer.writeLine()};Writer.prototype.increaseIndent=function(){this.writer.increaseIndent()};Writer.prototype.decreaseIndent=function(){this.writer.decreaseIndent()};Writer.prototype.getText=function(){return this.writer.getText()};Writer.prototype.rawWrite=function(e){this.writer.rawWrite(e);this.setLastNonTriviaPosition(e,false)};Writer.prototype.writeLiteral=function(e){this.writer.writeLiteral(e);this.setLastNonTriviaPosition(e,true)};Writer.prototype.getTextPos=function(){return this.writer.getTextPos()};Writer.prototype.getLine=function(){return this.writer.getLine()};Writer.prototype.getColumn=function(){return this.writer.getColumn()};Writer.prototype.getIndent=function(){return this.writer.getIndent()};Writer.prototype.isAtStartOfLine=function(){return this.writer.isAtStartOfLine()};Writer.prototype.clear=function(){this.writer.clear();this.lastNonTriviaPosition=0};return Writer}();function getInsertionPositionAtSourceFileTop(t){var r;for(var n=0,i=t.statements;n<i.length;n++){var a=i[n];if(e.isPrologueDirective(a)){r=a}else{break}}var o=0;var s=t.text;if(r){o=r.end;advancePastLineBreak();return o}var c=e.getShebang(s);if(c!==undefined){o=c.length;advancePastLineBreak()}var u=e.getLeadingCommentRanges(s,o);if(!u)return o;if(u.length&&u[0].kind===3&&e.isPinnedComment(s,u[0].pos)){o=u[0].end;advancePastLineBreak();u=u.slice(1)}for(var l=0,f=u;l<f.length;l++){var d=f[l];if(d.kind===2&&e.isRecognizedTripleSlashComment(s,d.pos,d.end)){o=d.end;advancePastLineBreak();continue}break}return o;function advancePastLineBreak(){if(o<s.length){var t=s.charCodeAt(o);if(e.isLineBreak(t)){o++;if(o<s.length&&t===13&&s.charCodeAt(o)===10){o++}}}}}function isValidLocationToAddComment(t,r){return!e.isInComment(t,r)&&!e.isInString(t,r)&&!e.isInTemplateString(t,r)&&!e.isInJSXText(t,r)}t.isValidLocationToAddComment=isValidLocationToAddComment;function needSemicolonBetween(t,r){return(e.isPropertySignature(t)||e.isPropertyDeclaration(t))&&e.isClassOrTypeElement(r)&&r.name.kind===149||e.isStatementButNotDeclaration(t)&&e.isStatementButNotDeclaration(r)}var c;(function(t){function deleteDeclaration(t,r,n,i){switch(i.kind){case 151:{var a=i.parent;if(e.isArrowFunction(a)&&a.parameters.length===1&&!e.findChildOfKind(a,20,n)){t.replaceNodeWithText(n,i,"()")}else{deleteNodeInList(t,r,n,i)}break}case 249:deleteNode(t,n,i,i===n.imports[0].parent?{useNonAdjustedStartPosition:true,useNonAdjustedEndPosition:false}:undefined);break;case 186:var o=i.parent;var s=o.kind===185&&i!==e.last(o.elements);if(s){deleteNode(t,n,i)}else{deleteNodeInList(t,r,n,i)}break;case 237:deleteVariableDeclaration(t,r,n,i);break;case 150:deleteNodeInList(t,r,n,i);break;case 253:var c=i.parent;if(c.elements.length===1){deleteImportBinding(t,n,c)}else{deleteNodeInList(t,r,n,i)}break;case 251:deleteImportBinding(t,n,i);break;default:if(e.isImportClause(i.parent)&&i.parent.name===i){deleteDefaultImport(t,n,i.parent)}else if(e.isCallLikeExpression(i.parent)){deleteNodeInList(t,r,n,i)}else{deleteNode(t,n,i,i.kind===26?{useNonAdjustedEndPosition:true}:undefined)}}}t.deleteDeclaration=deleteDeclaration;function deleteDefaultImport(t,r,n){if(!n.namedBindings){deleteNode(t,r,n.parent)}else{var i=n.name.getStart(r);var a=e.getTokenAtPosition(r,n.name.end);if(a&&a.kind===27){var o=e.skipTrivia(r.text,a.end,false,true);t.deleteRange(r,{pos:i,end:o})}else{deleteNode(t,r,n.name)}}}function deleteImportBinding(t,r,n){if(n.parent.name){var i=e.Debug.assertDefined(e.getTokenAtPosition(r,n.pos-1));t.deleteRange(r,{pos:i.getStart(r),end:n.end})}else{var a=e.getAncestor(n,249);deleteNode(t,r,a)}}function deleteVariableDeclaration(t,r,n,i){var a=i.parent;if(a.kind===274){t.deleteNodeRange(n,e.findChildOfKind(a,20,n),e.findChildOfKind(a,21,n));return}if(a.declarations.length!==1){deleteNodeInList(t,r,n,i);return}var o=a.parent;switch(o.kind){case 227:case 226:t.replaceNode(n,i,e.createObjectLiteral());break;case 225:deleteNode(t,n,a);break;case 219:deleteNode(t,n,o);break;default:e.Debug.assertNever(o)}}})(c||(c={}));function deleteNode(e,t,n,i){if(i===void 0){i={}}var a=getAdjustedStartPosition(t,n,i,r.FullStart);var o=getAdjustedEndPosition(t,n,i);e.deleteRange(t,{pos:a,end:o})}t.deleteNode=deleteNode;function deleteNodeInList(t,r,n,i){var a=e.Debug.assertDefined(e.formatting.SmartIndenter.getContainingList(i,n));var o=e.indexOfNode(a,i);e.Debug.assert(o!==-1);if(a.length===1){deleteNode(t,n,i);return}e.Debug.assert(!r.has(i),"Deleting a node twice");r.add(i);t.deleteRange(n,{pos:startPositionToDeleteNodeInList(n,i),end:o===a.length-1?getAdjustedEndPosition(n,i,{}):startPositionToDeleteNodeInList(n,a[o+1])})}})(t=e.textChanges||(e.textChanges={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=e.createMultiMap();var n=e.createMap();function diagnosticToString(t){return e.isArray(t)?e.formatStringFromArgs(e.getLocaleSpecificMessage(t[0]),t.slice(1)):e.getLocaleSpecificMessage(t)}function createCodeFixActionNoFixId(e,t,r){return createCodeFixActionWorker(e,diagnosticToString(r),t,undefined,undefined)}t.createCodeFixActionNoFixId=createCodeFixActionNoFixId;function createCodeFixAction(e,t,r,n,i,a){return createCodeFixActionWorker(e,diagnosticToString(r),t,n,diagnosticToString(i),a)}t.createCodeFixAction=createCodeFixAction;function createCodeFixActionWorker(e,t,r,n,i,a){return{fixName:e,description:t,changes:r,fixId:n,fixAllDescription:i,commands:a?[a]:undefined}}function registerCodeFix(t){for(var i=0,a=t.errorCodes;i<a.length;i++){var o=a[i];r.add(String(o),t)}if(t.fixIds){for(var s=0,c=t.fixIds;s<c.length;s++){var u=c[s];e.Debug.assert(!n.has(u));n.set(u,t)}}}t.registerCodeFix=registerCodeFix;function getSupportedErrorCodes(){return e.arrayFrom(r.keys())}t.getSupportedErrorCodes=getSupportedErrorCodes;function getFixes(t){return e.flatMap(r.get(String(t.errorCode))||e.emptyArray,function(e){return e.getCodeActions(t)})}t.getFixes=getFixes;function getAllFixes(t){return n.get(e.cast(t.fixId,e.isString)).getAllCodeActions(t)}t.getAllFixes=getAllFixes;function createCombinedCodeActions(e,t){return{changes:e,commands:t}}t.createCombinedCodeActions=createCombinedCodeActions;function createFileTextChanges(e,t){return{fileName:e,textChanges:t}}t.createFileTextChanges=createFileTextChanges;function codeFixAll(t,r,n){var i=[];var a=e.textChanges.ChangeTracker.with(t,function(e){return eachDiagnostic(t,r,function(t){return n(e,t,i)})});return createCombinedCodeActions(a,i.length===0?undefined:i)}t.codeFixAll=codeFixAll;function eachDiagnostic(t,r,n){var i=t.program,a=t.sourceFile,o=t.cancellationToken;for(var s=0,c=i.getSemanticDiagnostics(a,o).concat(e.computeSuggestionDiagnostics(a,i,o));s<c.length;s++){var u=c[s];if(e.contains(r,u.code)){n(u)}}}t.eachDiagnostic=eachDiagnostic})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=e.createMap();function registerRefactor(e,t){r.set(e,t)}t.registerRefactor=registerRefactor;function getApplicableRefactors(t){return e.arrayFrom(e.flatMapIterator(r.values(),function(e){return t.cancellationToken&&t.cancellationToken.isCancellationRequested()?undefined:e.getAvailableActions(t)}))}t.getApplicableRefactors=getApplicableRefactors;function getEditsForRefactor(e,t,n){var i=r.get(t);return i&&i.getEditsForAction(e,n)}t.getEditsForRefactor=getEditsForRefactor})(t=e.refactor||(e.refactor={}));function getRefactorContextSpan(t){var r=t.startPosition,n=t.endPosition;return e.createTextSpanFromBounds(r,n===undefined?r:n)}e.getRefactorContextSpan=getRefactorContextSpan})(s||(s={}));var s;(function(e){var t;(function(t){var r="addConvertToUnknownForNonOverlappingTypes";var n=[e.Diagnostics.Conversion_of_type_0_to_type_1_may_be_a_mistake_because_neither_type_sufficiently_overlaps_with_the_other_If_this_was_intentional_convert_the_expression_to_unknown_first.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return makeChange(e,n.sourceFile,n.span.start)});return[t.createCodeFixAction(r,i,e.Diagnostics.Add_unknown_conversion_for_non_overlapping_types,r,e.Diagnostics.Add_unknown_to_all_conversions_of_non_overlapping_types)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){return makeChange(e,t.file,t.start)})}});function makeChange(t,r,n){var i=e.getTokenAtPosition(r,n);var a=e.Debug.assertDefined(e.findAncestor(i,function(t){return e.isAsExpression(t)||e.isTypeAssertion(t)}));var o=e.isAsExpression(a)?e.createAsExpression(a.expression,e.createKeywordTypeNode(143)):e.createTypeAssertion(e.createKeywordTypeNode(143),a.expression);t.replaceNode(r,a.expression,o)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="addMissingInvocationForDecorator";var n=[e.Diagnostics._0_accepts_too_few_arguments_to_be_used_as_a_decorator_here_Did_you_mean_to_call_it_first_and_write_0.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return makeChange(e,n.sourceFile,n.span.start)});return[t.createCodeFixAction(r,i,e.Diagnostics.Call_decorator_expression,r,e.Diagnostics.Add_to_all_uncalled_decorators)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){return makeChange(e,t.file,t.start)})}});function makeChange(t,r,n){var i=e.getTokenAtPosition(r,n);var a=e.findAncestor(i,e.isDecorator);e.Debug.assert(!!a,"Expected position to be owned by a decorator.");var o=e.createCall(a.expression,undefined,undefined);t.replaceNode(r,a.expression,o)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="annotateWithTypeFromJSDoc";var n=[e.Diagnostics.JSDoc_types_may_be_moved_to_TypeScript_types.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=getDeclaration(n.sourceFile,n.span.start);if(!i)return;var a=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,i)});return[t.createCodeFixAction(r,a,e.Diagnostics.Annotate_with_type_from_JSDoc,r,e.Diagnostics.Annotate_everything_with_types_from_JSDoc)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){var r=getDeclaration(t.file,t.start);if(r)doChange(e,t.file,r)})}});function getDeclaration(t,r){var n=e.getTokenAtPosition(t,r);return e.tryCast(e.isParameter(n.parent)?n.parent.parent:n.parent,parameterShouldGetTypeFromJSDoc)}function parameterShouldGetTypeFromJSDoc(e){return isDeclarationWithType(e)&&hasUsableJSDoc(e)}t.parameterShouldGetTypeFromJSDoc=parameterShouldGetTypeFromJSDoc;function hasUsableJSDoc(t){return e.isFunctionLikeDeclaration(t)?t.parameters.some(hasUsableJSDoc)||!t.type&&!!e.getJSDocReturnType(t):!t.type&&!!e.getJSDocType(t)}function doChange(t,r,n){if(e.isFunctionLikeDeclaration(n)&&(e.getJSDocReturnType(n)||n.parameters.some(function(t){return!!e.getJSDocType(t)}))){if(!n.typeParameters){var i=e.getJSDocTypeParameterDeclarations(n);if(i.length)t.insertTypeParameters(r,n,i)}var a=e.isArrowFunction(n)&&!e.findChildOfKind(n,20,r);if(a)t.insertNodeBefore(r,e.first(n.parameters),e.createToken(20));for(var o=0,s=n.parameters;o<s.length;o++){var c=s[o];if(!c.type){var u=e.getJSDocType(c);if(u)t.tryInsertTypeAnnotation(r,c,transformJSDocType(u))}}if(a)t.insertNodeAfter(r,e.last(n.parameters),e.createToken(21));if(!n.type){var l=e.getJSDocReturnType(n);if(l)t.tryInsertTypeAnnotation(r,n,transformJSDocType(l))}}else{var f=e.Debug.assertDefined(e.getJSDocType(n));e.Debug.assert(!n.type);t.tryInsertTypeAnnotation(r,n,transformJSDocType(f))}}function isDeclarationWithType(t){return e.isFunctionLikeDeclaration(t)||t.kind===237||t.kind===153||t.kind===154}function transformJSDocType(t){switch(t.kind){case 284:case 285:return e.createTypeReferenceNode("any",e.emptyArray);case 288:return transformJSDocOptionalType(t);case 287:return transformJSDocType(t.type);case 286:return transformJSDocNullableType(t);case 290:return transformJSDocVariadicType(t);case 289:return transformJSDocFunctionType(t);case 164:return transformJSDocTypeReference(t);default:var r=e.visitEachChild(t,transformJSDocType,undefined);e.setEmitFlags(r,1);return r}}function transformJSDocOptionalType(t){return e.createUnionTypeNode([e.visitNode(t.type,transformJSDocType),e.createTypeReferenceNode("undefined",e.emptyArray)])}function transformJSDocNullableType(t){return e.createUnionTypeNode([e.visitNode(t.type,transformJSDocType),e.createTypeReferenceNode("null",e.emptyArray)])}function transformJSDocVariadicType(t){return e.createArrayTypeNode(e.visitNode(t.type,transformJSDocType))}function transformJSDocFunctionType(t){return e.createFunctionTypeNode(e.emptyArray,t.parameters.map(transformJSDocParameter),t.type)}function transformJSDocParameter(t){var r=t.parent.parameters.indexOf(t);var n=t.type.kind===290&&r===t.parent.parameters.length-1;var i=t.name||(n?"rest":"arg"+r);var a=n?e.createToken(25):t.dotDotDotToken;return e.createParameter(t.decorators,t.modifiers,a,i,t.questionToken,e.visitNode(t.type,transformJSDocType),t.initializer)}function transformJSDocTypeReference(t){var r=t.typeName;var n=t.typeArguments;if(e.isIdentifier(t.typeName)){if(e.isJSDocIndexSignature(t)){return transformJSDocIndexSignature(t)}var i=t.typeName.text;switch(t.typeName.text){case"String":case"Boolean":case"Object":case"Number":i=i.toLowerCase();break;case"array":case"date":case"promise":i=i[0].toUpperCase()+i.slice(1);break}r=e.createIdentifier(i);if((i==="Array"||i==="Promise")&&!t.typeArguments){n=e.createNodeArray([e.createTypeReferenceNode("any",e.emptyArray)])}else{n=e.visitNodes(t.typeArguments,transformJSDocType)}}return e.createTypeReferenceNode(r,n)}function transformJSDocIndexSignature(t){var r=e.createParameter(undefined,undefined,undefined,t.typeArguments[0].kind===135?"n":"s",undefined,e.createTypeReferenceNode(t.typeArguments[0].kind===135?"number":"string",[]),undefined);var n=e.createTypeLiteralNode([e.createIndexSignature(undefined,undefined,[r],t.typeArguments[1])]);e.setEmitFlags(n,1);return n}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="inferFromUsage";var n=[e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code,e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code,e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code,e.Diagnostics.Member_0_implicitly_has_an_1_type.code,e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code,e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code,e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code,e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.program,o=n.span.start,s=n.errorCode,c=n.cancellationToken,u=n.host;var l=e.getTokenAtPosition(i,o);var f;var d=e.textChanges.ChangeTracker.with(n,function(t){f=doChange(t,i,l,s,a,c,e.returnTrue,u)});var p=f&&e.getNameOfDeclaration(f);return!p||d.length===0?undefined:[t.createCodeFixAction(r,d,[getDiagnostic(s,l),p.getText(i)],r,e.Diagnostics.Infer_all_types_from_usage)]},fixIds:[r],getAllCodeActions:function(r){var i=r.sourceFile,a=r.program,o=r.cancellationToken,s=r.host;var c=e.nodeSeenTracker();return t.codeFixAll(r,n,function(t,r){doChange(t,i,e.getTokenAtPosition(r.file,r.start),r.code,a,o,c,s)})}});function getDiagnostic(t,r){switch(t){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.isSetAccessorDeclaration(e.getContainingFunction(r))?e.Diagnostics.Infer_type_of_0_from_usage:e.Diagnostics.Infer_parameter_types_from_usage;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Infer_parameter_types_from_usage;default:return e.Diagnostics.Infer_type_of_0_from_usage}}function mapSuggestionDiagnostic(t){switch(t){case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code;case e.Diagnostics.Variable_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Variable_0_implicitly_has_an_1_type.code;case e.Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code;case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_get_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code;case e.Diagnostics._0_implicitly_has_an_1_return_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code;case e.Diagnostics.Property_0_implicitly_has_type_any_but_a_better_type_for_its_set_accessor_may_be_inferred_from_usage.code:return e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code;case e.Diagnostics.Member_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage.code:return e.Diagnostics.Member_0_implicitly_has_an_1_type.code}return t}function doChange(t,r,n,i,a,o,s,c){if(!e.isParameterPropertyModifier(n.kind)&&n.kind!==72&&n.kind!==25&&n.kind!==100){return undefined}var u=n.parent;i=mapSuggestionDiagnostic(i);switch(i){case e.Diagnostics.Member_0_implicitly_has_an_1_type.code:case e.Diagnostics.Variable_0_implicitly_has_type_1_in_some_locations_where_its_type_cannot_be_determined.code:if(e.isVariableDeclaration(u)&&s(u)||e.isPropertyDeclaration(u)||e.isPropertySignature(u)){annotateVariableDeclaration(t,r,u,a,c,o);return u}if(e.isPropertyAccessExpression(u)){var l=inferTypeForVariableFromUsage(u.name,a,o);var f=getTypeNodeIfAccessible(l,u,a,c);if(f){var d=e.createJSDocTypeTag(e.createJSDocTypeExpression(f),"");addJSDocTags(t,r,e.cast(u.parent.parent,e.isExpressionStatement),[d])}return u}return undefined;case e.Diagnostics.Variable_0_implicitly_has_an_1_type.code:{var p=a.getTypeChecker().getSymbolAtLocation(n);if(p&&p.valueDeclaration&&e.isVariableDeclaration(p.valueDeclaration)&&s(p.valueDeclaration)){annotateVariableDeclaration(t,r,p.valueDeclaration,a,c,o);return p.valueDeclaration}return undefined}}var g=e.getContainingFunction(n);if(g===undefined){return undefined}switch(i){case e.Diagnostics.Parameter_0_implicitly_has_an_1_type.code:if(e.isSetAccessorDeclaration(g)){annotateSetAccessor(t,r,g,a,c,o);return g}case e.Diagnostics.Rest_parameter_0_implicitly_has_an_any_type.code:if(s(g)){var _=e.cast(u,e.isParameter);annotateParameters(t,r,_,g,a,c,o);return _}return undefined;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_get_accessor_lacks_a_return_type_annotation.code:case e.Diagnostics._0_which_lacks_return_type_annotation_implicitly_has_an_1_return_type.code:if(e.isGetAccessorDeclaration(g)&&e.isIdentifier(g.name)){annotate(t,r,g,inferTypeForVariableFromUsage(g.name,a,o),a,c);return g}return undefined;case e.Diagnostics.Property_0_implicitly_has_type_any_because_its_set_accessor_lacks_a_parameter_type_annotation.code:if(e.isSetAccessorDeclaration(g)){annotateSetAccessor(t,r,g,a,c,o);return g}return undefined;default:return e.Debug.fail(String(i))}}function annotateVariableDeclaration(t,r,n,i,a,o){if(e.isIdentifier(n.name)){annotate(t,r,n,inferTypeForVariableFromUsage(n.name,i,o),i,a)}}function annotateParameters(t,r,n,i,a,o,s){if(!e.isIdentifier(n.name)){return}var c=inferTypeForParametersFromUsage(i,r,a,s)||i.parameters.map(function(t){return{declaration:t,type:e.isIdentifier(t.name)?inferTypeForVariableFromUsage(t.name,a,s):a.getTypeChecker().getAnyType()}});e.Debug.assert(i.parameters.length===c.length);if(e.isInJSFile(i)){annotateJSDocParameters(t,r,c,a,o)}else{var u=e.isArrowFunction(i)&&!e.findChildOfKind(i,20,r);if(u)t.insertNodeBefore(r,e.first(i.parameters),e.createToken(20));for(var l=0,f=c;l<f.length;l++){var d=f[l],p=d.declaration,g=d.type;if(p&&!p.type&&!p.initializer){annotate(t,r,p,g,a,o)}}if(u)t.insertNodeAfter(r,e.last(i.parameters),e.createToken(21))}}function annotateSetAccessor(t,r,n,i,a,o){var s=e.firstOrUndefined(n.parameters);if(s&&e.isIdentifier(n.name)&&e.isIdentifier(s.name)){var c=inferTypeForVariableFromUsage(n.name,i,o);if(c===i.getTypeChecker().getAnyType()){c=inferTypeForVariableFromUsage(s.name,i,o)}if(e.isInJSFile(n)){annotateJSDocParameters(t,r,[{declaration:s,type:c}],i,a)}else{annotate(t,r,s,c,i,a)}}}function annotate(t,r,n,i,a,o){var s=getTypeNodeIfAccessible(i,n,a,o);if(s){if(e.isInJSFile(r)&&n.kind!==153){var c=e.isVariableDeclaration(n)?e.tryCast(n.parent.parent,e.isVariableStatement):n;if(!c){return}var u=e.createJSDocTypeExpression(s);var l=e.isGetAccessorDeclaration(n)?e.createJSDocReturnTag(u,""):e.createJSDocTypeTag(u,"");addJSDocTags(t,r,c,[l])}else{t.tryInsertTypeAnnotation(r,n,s)}}}function annotateJSDocParameters(t,r,n,i,a){var o=n.length&&n[0].declaration.parent;if(!o){return}var s=e.mapDefined(n,function(t){var r=t.declaration;if(r.initializer||e.getJSDocType(r)||!e.isIdentifier(r.name))return;var n=t.type&&getTypeNodeIfAccessible(t.type,r,i,a);var o=e.getSynthesizedClone(r.name);e.setEmitFlags(o,1536|2048);return n&&e.createJSDocParamTag(o,!!t.isOptional,e.createJSDocTypeExpression(n),"")});addJSDocTags(t,r,o,s)}function addJSDocTags(t,r,n,i){var a=e.mapDefined(n.jsDoc,function(e){return e.comment});var o=e.flatMapToMutable(n.jsDoc,function(e){return e.tags});var s=i.filter(function(e){return!o||!o.some(function(t,r){var n=tryMergeJsdocTags(t,e);if(n)o[r]=n;return!!n})});var c=e.createJSDocComment(a.join("\n"),e.createNodeArray((o||e.emptyArray).concat(s)));t.insertJsdocCommentBefore(r,n,c)}function tryMergeJsdocTags(t,r){if(t.kind!==r.kind){return undefined}switch(t.kind){case 299:{var n=t;var i=r;return e.isIdentifier(n.name)&&e.isIdentifier(i.name)&&n.name.escapedText===i.name.escapedText?e.createJSDocParamTag(i.name,i.isBracketed,i.typeExpression,n.comment):undefined}case 300:return e.createJSDocReturnTag(r.typeExpression,t.comment)}}function getTypeNodeIfAccessible(e,t,r,n){var i=r.getTypeChecker();var a=true;var o=function(){a=false};var s=i.typeToTypeNode(e,t,undefined,{trackSymbol:function(e,t,r){a=a&&i.isSymbolAccessible(e,t,r,false).accessibility===0},reportInaccessibleThisError:o,reportPrivateInBaseOfClassExpression:o,reportInaccessibleUniqueSymbolError:o,moduleResolverHost:{readFile:n.readFile,fileExists:n.fileExists,directoryExists:n.directoryExists,getSourceFiles:r.getSourceFiles,getCurrentDirectory:r.getCurrentDirectory,getCommonSourceDirectory:r.getCommonSourceDirectory}});return a?s:undefined}function getReferences(t,r,n){return e.mapDefined(e.FindAllReferences.getReferenceEntriesForNode(-1,t,r,r.getSourceFiles(),n),function(t){return t.kind!==0?e.tryCast(t.node,e.isIdentifier):undefined})}function inferTypeForVariableFromUsage(e,t,r){var n=getReferences(e,t,r);var a=t.getTypeChecker();var o=i.inferTypesFromReferences(n,a,r);return i.unifyFromContext(o,a)}function inferTypeForParametersFromUsage(t,r,n,a){var o;switch(t.kind){case 157:o=e.findChildOfKind(t,124,r);break;case 197:case 196:var s=t.parent;o=e.isVariableDeclaration(s)&&e.isIdentifier(s.name)?s.name:t.name;break;case 239:case 156:o=t.name;break}if(o){return i.inferTypeForParametersFromReferences(getReferences(o,n,a),t,n,a)}}var i;(function(t){function inferTypesFromReferences(e,t,r){var n={};for(var i=0,a=e;i<a.length;i++){var o=a[i];r.throwIfCancellationRequested();inferTypeFromContext(o,t,n)}return inferFromContext(n,t)}t.inferTypesFromReferences=inferTypesFromReferences;function inferTypeForParametersFromReferences(t,r,n,i){var a=n.getTypeChecker();if(t.length===0){return undefined}if(!r.parameters){return undefined}var o={};for(var s=0,c=t;s<c.length;s++){var u=c[s];i.throwIfCancellationRequested();inferTypeFromContext(u,a,o)}var l=(o.constructContexts||[]).concat(o.callContexts||[]);return r.parameters.map(function(t,o){var s=[];var c=e.isRestParameter(t);var u=false;for(var f=0,d=l;f<d.length;f++){var p=d[f];if(p.argumentTypes.length<=o){u=e.isInJSFile(r);s.push(a.getUndefinedType())}else if(c){for(var g=o;g<p.argumentTypes.length;g++){s.push(a.getBaseTypeOfLiteralType(p.argumentTypes[g]))}}else{s.push(a.getBaseTypeOfLiteralType(p.argumentTypes[o]))}}if(e.isIdentifier(t.name)){var _=inferTypesFromReferences(getReferences(t.name,n,i),a,i);s.push.apply(s,c?e.mapDefined(_,a.getElementTypeOfArrayType):_)}var m=unifyFromContext(s,a);return{type:c?a.createArrayType(m):m,isOptional:u&&!c,declaration:t}})}t.inferTypeForParametersFromReferences=inferTypeForParametersFromReferences;function inferTypeFromContext(t,r,n){while(e.isRightSideOfQualifiedNameOrPropertyAccess(t)){t=t.parent}switch(t.parent.kind){case 203:n.isNumber=true;break;case 202:inferTypeFromPrefixUnaryExpressionContext(t.parent,n);break;case 204:inferTypeFromBinaryExpressionContext(t,t.parent,r,n);break;case 271:case 272:inferTypeFromSwitchStatementLabelContext(t.parent,r,n);break;case 191:case 192:if(t.parent.expression===t){inferTypeFromCallExpressionContext(t.parent,r,n)}else{inferTypeFromContextualType(t,r,n)}break;case 189:inferTypeFromPropertyAccessExpressionContext(t.parent,r,n);break;case 190:inferTypeFromPropertyElementExpressionContext(t.parent,t,r,n);break;case 237:{var i=t.parent,a=i.name,o=i.initializer;if(t===a){if(o){addCandidateType(n,r.getTypeAtLocation(o))}break}}default:return inferTypeFromContextualType(t,r,n)}}function inferTypeFromContextualType(t,r,n){if(e.isExpressionNode(t)){addCandidateType(n,r.getContextualType(t))}}function inferTypeFromPrefixUnaryExpressionContext(e,t){switch(e.operator){case 44:case 45:case 39:case 53:t.isNumber=true;break;case 38:t.isNumberOrString=true;break}}function inferTypeFromBinaryExpressionContext(t,r,n,i){switch(r.operatorToken.kind){case 41:case 40:case 42:case 43:case 46:case 47:case 48:case 49:case 50:case 51:case 61:case 63:case 62:case 64:case 65:case 69:case 70:case 71:case 66:case 68:case 67:case 39:case 28:case 31:case 30:case 32:var a=n.getTypeAtLocation(r.left===t?r.right:r.left);if(a.flags&1056){addCandidateType(i,a)}else{i.isNumber=true}break;case 60:case 38:var o=n.getTypeAtLocation(r.left===t?r.right:r.left);if(o.flags&1056){addCandidateType(i,o)}else if(o.flags&296){i.isNumber=true}else if(o.flags&132){i.isString=true}else{i.isNumberOrString=true}break;case 59:case 33:case 35:case 36:case 34:addCandidateType(i,n.getTypeAtLocation(r.left===t?r.right:r.left));break;case 93:if(t===r.left){i.isString=true}break;case 55:if(t===r.left&&(t.parent.parent.kind===237||e.isAssignmentExpression(t.parent.parent,true))){addCandidateType(i,n.getTypeAtLocation(r.right))}break;case 54:case 27:case 94:break}}function inferTypeFromSwitchStatementLabelContext(e,t,r){addCandidateType(r,t.getTypeAtLocation(e.parent.parent.expression))}function inferTypeFromCallExpressionContext(e,t,r){var n={argumentTypes:[],returnType:{}};if(e.arguments){for(var i=0,a=e.arguments;i<a.length;i++){var o=a[i];n.argumentTypes.push(t.getTypeAtLocation(o))}}inferTypeFromContext(e,t,n.returnType);if(e.kind===191){(r.callContexts||(r.callContexts=[])).push(n)}else{(r.constructContexts||(r.constructContexts=[])).push(n)}}function inferTypeFromPropertyAccessExpressionContext(t,r,n){var i=e.escapeLeadingUnderscores(t.name.text);if(!n.properties){n.properties=e.createUnderscoreEscapedMap()}var a=n.properties.get(i)||{};inferTypeFromContext(t,r,a);n.properties.set(i,a)}function inferTypeFromPropertyElementExpressionContext(e,t,r,n){if(t===e.argumentExpression){n.isNumberOrString=true;return}else{var i=r.getTypeAtLocation(e.argumentExpression);var a={};inferTypeFromContext(e,r,a);if(i.flags&296){n.numberIndexContext=a}else{n.stringIndexContext=a}}}function removeLowPriorityInferences(t,r){var n=[];for(var i=0,a=t;i<a.length;i++){var o=a[i];for(var s=0,c=r;s<c.length;s++){var u=c[s],l=u.high,f=u.low;if(l(o)){e.Debug.assert(!f(o));n.push(f)}}}return t.filter(function(e){return n.every(function(t){return!t(e)})})}function unifyFromContext(e,t,r){if(r===void 0){r=t.getAnyType()}if(!e.length)return r;var n=t.getUnionType([t.getStringType(),t.getNumberType()]);var i=[{high:function(e){return e===t.getStringType()||e===t.getNumberType()},low:function(e){return e===n}},{high:function(e){return!(e.flags&(1|16384))},low:function(e){return!!(e.flags&(1|16384))}},{high:function(e){return!(e.flags&(98304|1|16384))&&!(t.getObjectFlags(e)&16)},low:function(e){return!!(t.getObjectFlags(e)&16)}}];var a=removeLowPriorityInferences(e,i);var o=a.filter(function(e){return t.getObjectFlags(e)&16});if(o.length){a=a.filter(function(e){return!(t.getObjectFlags(e)&16)});a.push(unifyAnonymousTypes(o,t))}return t.getWidenedType(t.getUnionType(a))}t.unifyFromContext=unifyFromContext;function unifyAnonymousTypes(t,r){if(t.length===1){return t[0]}var n=[];var i=[];var a=[];var o=[];var s=false;var c=false;var u=e.createMultiMap();for(var l=0,f=t;l<f.length;l++){var d=f[l];for(var p=0,g=r.getPropertiesOfType(d);p<g.length;p++){var _=g[p];u.add(_.name,r.getTypeOfSymbolAtLocation(_,_.valueDeclaration))}n.push.apply(n,r.getSignaturesOfType(d,0));i.push.apply(i,r.getSignaturesOfType(d,1));if(d.stringIndexInfo){a.push(d.stringIndexInfo.type);s=s||d.stringIndexInfo.isReadonly}if(d.numberIndexInfo){o.push(d.numberIndexInfo.type);c=c||d.numberIndexInfo.isReadonly}}var m=e.mapEntries(u,function(e,n){var i=n.length<t.length?16777216:0;var a=r.createSymbol(4|i,e);a.type=r.getUnionType(n);return[e,a]});return r.createAnonymousType(t[0].symbol,m,n,i,a.length?r.createIndexInfo(r.getUnionType(a),s):undefined,o.length?r.createIndexInfo(r.getUnionType(o),c):undefined)}function inferFromContext(t,r){var n=[];if(t.isNumber){n.push(r.getNumberType())}if(t.isString){n.push(r.getStringType())}if(t.isNumberOrString){n.push(r.getUnionType([r.getStringType(),r.getNumberType()]))}n.push.apply(n,(t.candidateTypes||[]).map(function(e){return r.getBaseTypeOfLiteralType(e)}));if(t.properties&&hasCallContext(t.properties.get("then"))){var i=getParameterTypeFromCallContexts(0,t.properties.get("then").callContexts,false,r);var a=i.getCallSignatures().map(function(e){return e.getReturnType()});a.push(r.createPromiseType(a.length?r.getUnionType(a,2):r.getAnyType()))}else if(t.properties&&hasCallContext(t.properties.get("push"))){n.push(r.createArrayType(getParameterTypeFromCallContexts(0,t.properties.get("push").callContexts,false,r)))}if(t.numberIndexContext){n.push(r.createArrayType(recur(t.numberIndexContext)))}else if(t.properties||t.callContexts||t.constructContexts||t.stringIndexContext){var o=e.createUnderscoreEscapedMap();var s=[];var c=[];var u=void 0;if(t.properties){t.properties.forEach(function(e,t){var n=r.createSymbol(4,t);n.type=recur(e);o.set(t,n)})}if(t.callContexts){for(var l=0,f=t.callContexts;l<f.length;l++){var d=f[l];s.push(getSignatureFromCallContext(d,r))}}if(t.constructContexts){for(var p=0,g=t.constructContexts;p<g.length;p++){var _=g[p];c.push(getSignatureFromCallContext(_,r))}}if(t.stringIndexContext){u=r.createIndexInfo(recur(t.stringIndexContext),false)}n.push(r.createAnonymousType(undefined,o,s,c,u,undefined))}return n;function recur(e){return unifyFromContext(inferFromContext(e,r),r)}}function getParameterTypeFromCallContexts(t,r,n,i){var a=[];if(r){for(var o=0,s=r;o<s.length;o++){var c=s[o];if(c.argumentTypes.length>t){if(n){a=e.concatenate(a,e.map(c.argumentTypes.slice(t),function(e){return i.getBaseTypeOfLiteralType(e)}))}else{a.push(i.getBaseTypeOfLiteralType(c.argumentTypes[t]))}}}}if(a.length){var u=i.getWidenedType(i.getUnionType(a,2));return n?i.createArrayType(u):u}return undefined}function getSignatureFromCallContext(t,r){var n=[];for(var i=0;i<t.argumentTypes.length;i++){var a=r.createSymbol(1,e.escapeLeadingUnderscores("arg"+i));a.type=r.getWidenedType(r.getBaseTypeOfLiteralType(t.argumentTypes[i]));n.push(a)}var o=unifyFromContext(inferFromContext(t.returnType,r),r,r.getVoidType());return r.createSignature(undefined,undefined,undefined,n,o,undefined,t.argumentTypes.length,false,false)}function addCandidateType(e,t){if(t&&!(t.flags&1)&&!(t.flags&131072)){(e.candidateTypes||(e.candidateTypes=[])).push(t)}}function hasCallContext(e){return!!e&&!!e.callContexts}})(i||(i={}))})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="convertFunctionToEs6Class";var n=[e.Diagnostics.This_constructor_function_may_be_converted_to_a_class_declaration.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,n.span.start,n.program.getTypeChecker())});return[t.createCodeFixAction(r,i,e.Diagnostics.Convert_function_to_an_ES2015_class,r,e.Diagnostics.Convert_all_constructor_functions_to_classes)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){return doChange(t,r.file,r.start,e.program.getTypeChecker())})}});function doChange(t,r,n,i){var a=i.getSymbolAtLocation(e.getTokenAtPosition(r,n));if(!a||!(a.flags&(16|3))){return undefined}var o=a.valueDeclaration;var s;var c;switch(o.kind){case 239:s=o;t.delete(r,o);c=createClassFromFunctionDeclaration(o);break;case 237:s=o.parent.parent;c=createClassFromVariableDeclaration(o);if(o.parent.declarations.length===1){e.copyComments(s,c,r);t.delete(r,s)}else{t.delete(r,o)}break}if(!c){return undefined}e.copyComments(o,c,r);t.insertNodeAfter(r,s,c);function createClassElementsFromSymbol(n){var i=[];if(n.members){n.members.forEach(function(e){var t=createClassElement(e,undefined);if(t){i.push(t)}})}if(n.exports){n.exports.forEach(function(t){var r=createClassElement(t,[e.createToken(116)]);if(r){i.push(r)}})}return i;function shouldConvertDeclaration(t,r){return e.isFunctionLike(r)}function createClassElement(n,i){if(!(n.flags&8192)){return}var a=n.valueDeclaration;var o=a.parent;if(!shouldConvertDeclaration(a,o.right)){return}var s=o.parent&&o.parent.kind===221?o.parent:o;t.delete(r,s);if(!o.right){return e.createProperty([],i,n.name,undefined,undefined,undefined)}switch(o.right.kind){case 196:{var c=o.right;var u=e.concatenate(i,getModifierKindFromSource(c,121));var l=e.createMethod(undefined,u,undefined,a.name,undefined,undefined,c.parameters,undefined,c.body);e.copyComments(o,l,r);return l}case 197:{var f=o.right;var d=f.body;var p=void 0;if(d.kind===218){p=d}else{p=e.createBlock([e.createReturn(d)])}var u=e.concatenate(i,getModifierKindFromSource(f,121));var l=e.createMethod(undefined,u,undefined,a.name,undefined,undefined,f.parameters,undefined,p);e.copyComments(o,l,r);return l}default:{if(e.isSourceFileJS(r)){return}var g=e.createProperty(undefined,i,a.name,undefined,undefined,o.right);e.copyComments(o.parent,g,r);return g}}}}function createClassFromVariableDeclaration(t){var r=t.initializer;if(!r||r.kind!==196){return undefined}if(t.name.kind!==72){return undefined}var n=createClassElementsFromSymbol(t.symbol);if(r.body){n.unshift(e.createConstructor(undefined,undefined,r.parameters,r.body))}var i=getModifierKindFromSource(s,85);var a=e.createClassDeclaration(undefined,i,t.name,undefined,undefined,n);return a}function createClassFromFunctionDeclaration(t){var r=createClassElementsFromSymbol(a);if(t.body){r.unshift(e.createConstructor(undefined,undefined,t.parameters,t.body))}var n=getModifierKindFromSource(t,85);var i=e.createClassDeclaration(undefined,n,t.name,undefined,undefined,r);return i}}function getModifierKindFromSource(t,r){return e.filter(t.modifiers,function(e){return e.kind===r})}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="convertToAsyncFunction";var n=[e.Diagnostics.This_may_be_converted_to_an_async_function.code];var i=true;t.registerCodeFix({errorCodes:n,getCodeActions:function(n){i=true;var a=e.textChanges.ChangeTracker.with(n,function(e){return convertToAsyncFunction(e,n.sourceFile,n.span.start,n.program.getTypeChecker(),n)});return i?[t.createCodeFixAction(r,a,e.Diagnostics.Convert_to_async_function,r,e.Diagnostics.Convert_all_to_async_functions)]:[]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){return convertToAsyncFunction(t,r.file,r.start,e.program.getTypeChecker(),e)})}});function convertToAsyncFunction(t,r,n,i,a){var o=e.getTokenAtPosition(r,n);var s;if(e.isIdentifier(o)&&e.isVariableDeclaration(o.parent)&&o.parent.initializer&&e.isFunctionLikeDeclaration(o.parent.initializer)){s=o.parent.initializer}else{s=e.tryCast(e.getContainingFunction(e.getTokenAtPosition(r,n)),e.isFunctionLikeDeclaration)}if(!s){return}var c=e.createMap();var u=e.createMap();var l=[];var f=e.isInJSFile(s);var d=getAllPromiseExpressionsToReturn(s,i);var p=renameCollidingVarNames(s,i,c,a,d,u,l);var g=getConstIdentifiers(c);var _=p.body&&e.isBlock(p.body)?getReturnStatementsWithPromiseHandlers(p.body):e.emptyArray;var m={checker:i,synthNamesMap:c,allVarNames:l,setOfExpressionsToReturn:d,constIdentifiers:g,originalTypeMap:u,isInJSFile:f};if(!_.length){return}t.insertLastModifierBefore(r,121,s);function startTransformation(e,n){var i=transformExpression(e,m,e);t.replaceNodeWithNodes(r,n,i)}var y=function(t){e.forEachChild(t,function visit(r){if(e.isCallExpression(r)){startTransformation(r,t)}else if(!e.isFunctionLike(r)){e.forEachChild(r,visit)}})};for(var h=0,v=_;h<v.length;h++){var T=v[h];y(T)}}function getReturnStatementsWithPromiseHandlers(t){var r=[];e.forEachReturnStatement(t,function(t){if(e.isReturnStatementWithFixablePromiseHandler(t))r.push(t)});return r}function getConstIdentifiers(e){var t=[];e.forEach(function(e){if(e.numberOfAssignmentsOriginal===0){t.push(e.identifier)}});return t}function getAllPromiseExpressionsToReturn(t,r){if(!t.body){return e.createMap()}var n=e.createMap();e.forEachChild(t.body,function visit(t){if(isPromiseReturningExpression(t,r,"then")){n.set(e.getNodeId(t).toString(),true);e.forEach(t.arguments,visit)}else if(isPromiseReturningExpression(t,r,"catch")){n.set(e.getNodeId(t).toString(),true);e.forEachChild(t,visit)}else if(isPromiseReturningExpression(t,r)){n.set(e.getNodeId(t).toString(),true)}else{e.forEachChild(t,visit)}});return n}function isPromiseReturningExpression(t,r,n){var i=n?e.isCallExpression(t):e.isExpression(t);var a=i&&(!n||e.hasPropertyAccessExpressionWithName(t,n));var o=a&&r.getTypeAtLocation(t);return!!(o&&r.getPromisedTypeOfPromise(o))}function declaredInFile(e,t){return e.valueDeclaration&&e.valueDeclaration.getSourceFile()===t}function renameCollidingVarNames(t,r,n,i,a,o,s){var c=e.createMap();var u=e.createMap();e.forEachChild(t,function visit(t){if(!e.isIdentifier(t)){e.forEachChild(t,visit);return}var a=r.getSymbolAtLocation(t);var o=a&&declaredInFile(a,i.sourceFile);if(a&&o){var l=r.getTypeAtLocation(t);var f=getLastCallSignature(l,r);var d=e.getSymbolId(a).toString();if(f&&!e.isFunctionLikeDeclaration(t.parent)&&!n.has(d)){var p=e.firstOrUndefined(f.parameters);var g=p&&e.isParameter(p.valueDeclaration)&&e.tryCast(p.valueDeclaration.name,e.isIdentifier)||e.createOptimisticUniqueName("result");var _=getNewNameIfConflict(g,u);n.set(d,_);s.push({identifier:_.identifier,symbol:a});addNameToFrequencyMap(u,g.text,a)}else if(t.parent&&(e.isParameter(t.parent)||e.isVariableDeclaration(t.parent))){var m=t.text;var y=u.get(m);if(y&&y.some(function(e){return e!==a})){var h=getNewNameIfConflict(t,u);c.set(d,h.identifier);n.set(d,h);s.push({identifier:h.identifier,symbol:a});addNameToFrequencyMap(u,m,a)}else{var v=e.getSynthesizedDeepClone(t);c.set(d,v);n.set(d,{identifier:v,types:[],numberOfAssignmentsOriginal:s.filter(function(e){return e.identifier.text===t.text}).length});if(e.isParameter(t.parent)&&isExpressionOrCallOnTypePromise(t.parent.parent)||e.isVariableDeclaration(t.parent)){s.push({identifier:v,symbol:a});addNameToFrequencyMap(u,m,a)}}}}});return e.getSynthesizedDeepCloneWithRenames(t,true,c,r,deepCloneCallback);function isExpressionOrCallOnTypePromise(t){var n=t.parent;if(e.isCallExpression(n)||e.isIdentifier(n)&&!a.get(e.getNodeId(n).toString())){var i=r.getTypeAtLocation(n);var o=i&&r.getPromisedTypeOfPromise(i);return!!o}return false}function deepCloneCallback(t,i){if(e.isIdentifier(t)){var s=r.getSymbolAtLocation(t);var c=s&&e.getSymbolId(s).toString();var u=s&&n.get(c);if(u){var l=r.getTypeAtLocation(t);o.set(e.getNodeId(i).toString(),l)}}var f=a.get(e.getNodeId(t).toString());if(f!==undefined){a.delete(e.getNodeId(t).toString());a.set(e.getNodeId(i).toString(),f)}}}function addNameToFrequencyMap(e,t,r){if(e.has(t)){e.get(t).push(r)}else{e.set(t,[r])}}function getNewNameIfConflict(t,r){var n=(r.get(t.text)||e.emptyArray).length;var i=0;var a=n===0?t:e.createIdentifier(t.text+"_"+n);return{identifier:a,types:[],numberOfAssignmentsOriginal:i}}function transformExpression(t,r,n,a){if(!t){return e.emptyArray}var o=e.isIdentifier(t)&&r.originalTypeMap.get(e.getNodeId(t).toString());var s=o||r.checker.getTypeAtLocation(t);if(e.isCallExpression(t)&&e.hasPropertyAccessExpressionWithName(t,"then")&&s&&!!r.checker.getPromisedTypeOfPromise(s)){return transformThen(t,r,n,a)}else if(e.isCallExpression(t)&&e.hasPropertyAccessExpressionWithName(t,"catch")&&s&&!!r.checker.getPromisedTypeOfPromise(s)){return transformCatch(t,r,a)}else if(e.isPropertyAccessExpression(t)){return transformExpression(t.expression,r,n,a)}else if(s&&r.checker.getPromisedTypeOfPromise(s)){return transformPromiseCall(t,r,a)}i=false;return e.emptyArray}function transformCatch(t,r,n){var i=t.arguments[0];var a=getArgName(i,r);var o=r.setOfExpressionsToReturn.get(e.getNodeId(t).toString());if(n&&!o){n.numberOfAssignmentsOriginal=2;r.synthNamesMap.forEach(function(e,t){if(e.identifier.text===n.identifier.text){var i=createUniqueSynthName(n);r.synthNamesMap.set(t,i)}});if(r.constIdentifiers.some(function(e){return e.text===n.identifier.text})){r.constIdentifiers.push(createUniqueSynthName(n).identifier)}}var s=e.createBlock(transformExpression(t.expression,r,t,n));var c=getTransformationBody(i,n,a,t,r);var u=a?a.identifier.text:"e";var l=e.createCatchClause(u,e.createBlock(c));var f;if(n&&!o){var d=n.types;var p=r.checker.getUnionType(d,2);var g=r.isInJSFile?undefined:r.checker.typeToTypeNode(p);var _=[e.createVariableDeclaration(e.getSynthesizedDeepClone(n.identifier),g)];f=e.createVariableStatement(undefined,e.createVariableDeclarationList(_,1))}var m=e.createTry(s,l,undefined);return f?[f,m]:[m]}function createUniqueSynthName(t){var r=e.createOptimisticUniqueName(t.identifier.text);var n={identifier:r,types:[],numberOfAssignmentsOriginal:0};return n}function transformThen(t,r,n,i){var a=t.arguments,o=a[0],s=a[1];if(!o){return transformExpression(t.expression,r,n)}var c=getArgName(o,r);var u=getTransformationBody(o,i,c,t,r);if(s){var l=getArgName(s,r);var f=e.createBlock(transformExpression(t.expression,r,t,c).concat(u));var d=getTransformationBody(s,i,l,t,r);var p=l?l.identifier.text:"e";var g=e.createCatchClause(p,e.createBlock(d));return[e.createTry(f,g,undefined)]}return transformExpression(t.expression,r,t,c).concat(u)}function getFlagOfIdentifier(e,t){var r=t.some(function(t){return t.text===e.text});return r?2:1}function transformPromiseCall(t,r,n){var i=r.setOfExpressionsToReturn.get(e.getNodeId(t).toString());var a=t.original?t.original.parent:t.parent;if(n&&!i&&(!a||e.isPropertyAccessExpression(a))){return createTransformedStatement(n,e.createAwait(t),r)}else if(!n&&!i&&(!a||e.isPropertyAccessExpression(a))){return[e.createStatement(e.createAwait(t))]}return[e.createReturn(e.getSynthesizedDeepClone(t))]}function createTransformedStatement(t,r,n){if(!t||t.identifier.text.length===0){return[e.createStatement(r)]}if(t.types.length<t.numberOfAssignmentsOriginal){return[e.createStatement(e.createAssignment(e.getSynthesizedDeepClone(t.identifier),r))]}return[e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.getSynthesizedDeepClone(t.identifier),undefined,r)],getFlagOfIdentifier(t.identifier,n.constIdentifiers)))]}function getTransformationBody(t,r,n,a,o){var s=o.setOfExpressionsToReturn.get(e.getNodeId(a).toString());switch(t.kind){case 96:break;case 72:if(!n){break}var c=e.createCall(e.getSynthesizedDeepClone(t),undefined,[n.identifier]);if(s){return[e.createReturn(c)]}var u=o.originalTypeMap.get(e.getNodeId(t).toString())||o.checker.getTypeAtLocation(t);var l=o.checker.getSignaturesOfType(u,0);if(!l.length){i=false;break}var f=l[0].getReturnType();var d=createTransformedStatement(r,e.createAwait(c),o);if(r){r.types.push(f)}return d;case 196:case 197:{var p=t.body;if(e.isBlock(p)){var g=[];var _=false;for(var m=0,y=p.statements;m<y.length;m++){var h=y[m];if(e.isReturnStatement(h)){_=true}if(e.isReturnStatementWithFixablePromiseHandler(h)){g=g.concat(getInnerTransformationBody(o,[h],r))}else{g.push(h)}}return s?g.map(function(t){return e.getSynthesizedDeepClone(t)}):removeReturns(g,r===undefined?undefined:r.identifier,o,_)}else{var v=e.isFixablePromiseHandler(p)?[e.createReturn(p)]:e.emptyArray;var T=getInnerTransformationBody(o,v,r);if(T.length>0){return T}var S=o.checker.getTypeAtLocation(t);var b=getLastCallSignature(S,o.checker).getReturnType();var x=e.getSynthesizedDeepClone(p);var C=!!o.checker.getPromisedTypeOfPromise(b)?e.createAwait(x):x;if(!s){var E=createTransformedStatement(r,C,o);if(r){r.types.push(b)}return E}else{return[e.createReturn(C)]}}}default:i=false;break}return e.emptyArray}function getLastCallSignature(t,r){var n=r.getSignaturesOfType(t,0);return e.lastOrUndefined(n)}function removeReturns(t,r,n,i){var a=[];for(var o=0,s=t;o<s.length;o++){var c=s[o];if(e.isReturnStatement(c)){if(c.expression){var u=isPromiseReturningExpression(c.expression,n.checker)?e.createAwait(c.expression):c.expression;if(r===undefined){a.push(e.createExpressionStatement(u))}else{a.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(r,undefined,u)],getFlagOfIdentifier(r,n.constIdentifiers))))}}}else{a.push(e.getSynthesizedDeepClone(c))}}if(!i&&r!==undefined){a.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(r,undefined,e.createIdentifier("undefined"))],getFlagOfIdentifier(r,n.constIdentifiers))))}return a}function getInnerTransformationBody(t,r,n){var i=[];for(var a=0,o=r;a<o.length;a++){var s=o[a];e.forEachChild(s,function visit(r){if(e.isCallExpression(r)){var a=transformExpression(r,t,r,n);i=i.concat(a);if(i.length>0){return}}else if(!e.isFunctionLike(r)){e.forEachChild(r,visit)}})}return i}function getArgName(t,r){var n=0;var i=[];var a;if(e.isFunctionLikeDeclaration(t)){if(t.parameters.length>0){var o=t.parameters[0].name;a=getMapEntryOrDefault(o)}}else if(e.isIdentifier(t)){a=getMapEntryOrDefault(t)}if(!a||a.identifier.text==="undefined"){return undefined}return a;function getMapEntryOrDefault(t){var a=getOriginalNode(t);var o=getSymbol(a);if(!o){return{identifier:t,types:i,numberOfAssignmentsOriginal:n}}var s=r.synthNamesMap.get(e.getSymbolId(o).toString());return s||{identifier:t,types:i,numberOfAssignmentsOriginal:n}}function getSymbol(e){return e.symbol?e.symbol:r.checker.getSymbolAtLocation(e)}function getOriginalNode(e){return e.original?e.original:e}}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){t.registerCodeFix({errorCodes:[e.Diagnostics.File_is_a_CommonJS_module_it_may_be_converted_to_an_ES6_module.code],getCodeActions:function(r){var n=r.sourceFile,i=r.program,a=r.preferences;var o=e.textChanges.ChangeTracker.with(r,function(t){var r=convertFileToEs6Module(n,i.getTypeChecker(),t,i.getCompilerOptions().target,e.getQuotePreference(n,a));if(r){for(var o=0,s=i.getSourceFiles();o<s.length;o++){var c=s[o];fixImportOfModuleExports(c,n,t,e.getQuotePreference(c,a))}}});return[t.createCodeFixActionNoFixId("convertToEs6Module",o,e.Diagnostics.Convert_to_ES6_module)]}});function fixImportOfModuleExports(t,r,n,i){for(var a=0,o=t.imports;a<o.length;a++){var s=o[a];var c=e.getResolvedModule(t,s.text);if(!c||c.resolvedFileName!==r.fileName){continue}var u=e.importFromModuleSpecifier(s);switch(u.kind){case 248:n.replaceNode(t,u,e.makeImport(u.name,undefined,s,i));break;case 191:if(e.isRequireCall(u,false)){n.replaceNode(t,u,e.createPropertyAccess(e.getSynthesizedDeepClone(u),"default"))}break}}}function convertFileToEs6Module(t,r,n,i,a){var o={original:collectFreeIdentifiers(t),additional:e.createMap()};var s=collectExportRenames(t,r,o);convertExportsAccesses(t,s,n);var c=false;for(var u=0,l=t.statements;u<l.length;u++){var f=l[u];var d=convertStatement(t,f,r,n,o,i,s,a);c=c||d}return c}function collectExportRenames(t,r,n){var i=e.createMap();forEachExportReference(t,function(t){var a=t.name,o=a.text,s=a.originalKeywordKind;if(!i.has(o)&&(s!==undefined&&e.isNonContextualKeyword(s)||r.resolveName(t.name.text,t,67220415,true))){i.set(o,makeUniqueName("_"+o,n))}});return i}function convertExportsAccesses(t,r,n){forEachExportReference(t,function(i,a){if(a){return}var o=i.name.text;n.replaceNode(t,i,e.createIdentifier(r.get(o)||o))})}function forEachExportReference(t,r){t.forEachChild(function recur(n){if(e.isPropertyAccessExpression(n)&&e.isExportsOrModuleExportsOrAlias(t,n.expression)){var i=n.parent;r(n,e.isBinaryExpression(i)&&i.left===n&&i.operatorToken.kind===59)}n.forEachChild(recur)})}function convertStatement(t,r,n,i,a,o,s,c){switch(r.kind){case 219:convertVariableStatement(t,r,i,n,a,o,c);return false;case 221:{var u=r.expression;switch(u.kind){case 191:{if(e.isRequireCall(u,true)){i.replaceNode(t,r,e.makeImport(undefined,undefined,u.arguments[0],c))}return false}case 204:{var l=u.operatorToken;return l.kind===59&&convertAssignment(t,n,u,i,s)}}}default:return false}}function convertVariableStatement(t,r,n,i,a,o,s){var c=r.declarationList;var u=false;var l=e.flatMap(c.declarations,function(r){var l=r.name,f=r.initializer;if(f){if(e.isExportsOrModuleExportsOrAlias(t,f)){u=true;return[]}else if(e.isRequireCall(f,true)){u=true;return convertSingleImport(t,l,f.arguments[0],n,i,a,o,s)}else if(e.isPropertyAccessExpression(f)&&e.isRequireCall(f.expression,true)){u=true;return convertPropertyAccessImport(l,f.name.text,f.expression.arguments[0],a,s)}}return e.createVariableStatement(undefined,e.createVariableDeclarationList([r],c.flags))});if(u){n.replaceNodeWithNodes(t,r,l)}}function convertPropertyAccessImport(t,r,n,i,a){switch(t.kind){case 184:case 185:{var o=makeUniqueName(r,i);return[makeSingleImport(o,r,n,a),makeConst(undefined,t,e.createIdentifier(o))]}case 72:return[makeSingleImport(t.text,r,n,a)];default:return e.Debug.assertNever(t)}}function convertAssignment(t,r,n,i,a){var o=n.left,s=n.right;if(!e.isPropertyAccessExpression(o)){return false}if(e.isExportsOrModuleExportsOrAlias(t,o)){if(e.isExportsOrModuleExportsOrAlias(t,s)){i.delete(t,n.parent)}else{var c=e.isObjectLiteralExpression(s)?tryChangeModuleExportsObject(s):e.isRequireCall(s,true)?convertReExportAll(s.arguments[0],r):undefined;if(c){i.replaceNodeWithNodes(t,n.parent,c[0]);return c[1]}else{i.replaceRangeWithText(t,e.createRange(o.getStart(t),s.pos),"export default");return true}}}else if(e.isExportsOrModuleExportsOrAlias(t,o.expression)){convertNamedExport(t,n,i,a)}return false}function tryChangeModuleExportsObject(t){var r=e.mapAllOrFail(t.properties,function(t){switch(t.kind){case 158:case 159:case 276:case 277:return undefined;case 275:return!e.isIdentifier(t.name)?undefined:convertExportsDotXEquals_replaceNode(t.name.text,t.initializer);case 156:return!e.isIdentifier(t.name)?undefined:functionExpressionToDeclaration(t.name.text,[e.createToken(85)],t);default:e.Debug.assertNever(t)}});return r&&[r,false]}function convertNamedExport(t,r,n,i){var a=r.left.name.text;var o=i.get(a);if(o!==undefined){var s=[makeConst(undefined,o,r.right),makeExportDeclaration([e.createExportSpecifier(o,a)])];n.replaceNodeWithNodes(t,r.parent,s)}else{convertExportsPropertyAssignment(r,t,n)}}function convertReExportAll(t,r){var n=t.text;var i=r.getSymbolAtLocation(t);var a=i?i.exports:e.emptyUnderscoreEscapedMap;return a.has("export=")?[[reExportDefault(n)],true]:!a.has("default")?[[reExportStar(n)],false]:a.size>1?[[reExportStar(n),reExportDefault(n)],true]:[[reExportDefault(n)],true]}function reExportStar(e){return makeExportDeclaration(undefined,e)}function reExportDefault(t){return makeExportDeclaration([e.createExportSpecifier(undefined,"default")],t)}function convertExportsPropertyAssignment(t,r,n){var i=t.left,a=t.right,o=t.parent;var s=i.name.text;if((e.isFunctionExpression(a)||e.isArrowFunction(a)||e.isClassExpression(a))&&(!a.name||a.name.text===s)){n.replaceRange(r,{pos:i.getStart(r),end:a.getStart(r)},e.createToken(85),{suffix:" "});if(!a.name)n.insertName(r,a,s);var c=e.findChildOfKind(o,26,r);if(c)n.delete(r,c)}else{n.replaceNodeRangeWithNodes(r,i.expression,e.findChildOfKind(i,24,r),[e.createToken(85),e.createToken(77)],{joiner:" ",suffix:" "})}}function convertExportsDotXEquals_replaceNode(t,r){var n=[e.createToken(85)];switch(r.kind){case 196:{var i=r.name;if(i&&i.text!==t){return exportConst()}}case 197:return functionExpressionToDeclaration(t,n,r);case 209:return classExpressionToDeclaration(t,n,r);default:return exportConst()}function exportConst(){return makeConst(n,e.createIdentifier(t),r)}}function convertSingleImport(r,n,i,a,o,s,c,u){switch(n.kind){case 184:{var l=e.mapAllOrFail(n.elements,function(t){return t.dotDotDotToken||t.initializer||t.propertyName&&!e.isIdentifier(t.propertyName)||!e.isIdentifier(t.name)?undefined:makeImportSpecifier(t.propertyName&&t.propertyName.text,t.name.text)});if(l){return[e.makeImport(undefined,l,i,u)]}}case 185:{var f=makeUniqueName(t.moduleSpecifierToValidIdentifier(i.text,c),s);return[e.makeImport(e.createIdentifier(f),undefined,i,u),makeConst(undefined,e.getSynthesizedDeepClone(n),e.createIdentifier(f))]}case 72:return convertSingleIdentifierImport(r,n,i,a,o,s,u);default:return e.Debug.assertNever(n)}}function convertSingleIdentifierImport(t,r,n,i,a,o,s){var c=a.getSymbolAtLocation(r);var u=e.createMap();var l=false;for(var f=0,d=o.original.get(r.text);f<d.length;f++){var p=d[f];if(a.getSymbolAtLocation(p)!==c||p===r){continue}var g=p.parent;if(e.isPropertyAccessExpression(g)){var _=g.expression,m=g.name.text;e.Debug.assert(_===p);var y=u.get(m);if(y===undefined){y=makeUniqueName(m,o);u.set(m,y)}i.replaceNode(t,g,e.createIdentifier(y))}else{l=true}}var h=u.size===0?undefined:e.arrayFrom(e.mapIterator(u.entries(),function(t){var r=t[0],n=t[1];return e.createImportSpecifier(r===n?undefined:e.createIdentifier(r),e.createIdentifier(n))}));if(!h){l=true}return[e.makeImport(l?e.getSynthesizedDeepClone(r):undefined,h,n,s)]}function makeUniqueName(e,t){while(t.original.has(e)||t.additional.has(e)){e="_"+e}t.additional.set(e,true);return e}function collectFreeIdentifiers(t){var r=e.createMultiMap();forEachFreeIdentifier(t,function(e){return r.add(e.text,e)});return r}function forEachFreeIdentifier(t,r){if(e.isIdentifier(t)&&isFreeIdentifier(t))r(t);t.forEachChild(function(e){return forEachFreeIdentifier(e,r)})}function isFreeIdentifier(e){var t=e.parent;switch(t.kind){case 189:return t.name!==e;case 186:return t.propertyName!==e;case 253:return t.propertyName!==e;default:return true}}function functionExpressionToDeclaration(t,r,n){return e.createFunctionDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),e.getSynthesizedDeepClone(n.asteriskToken),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.parameters),e.getSynthesizedDeepClone(n.type),e.convertToFunctionBody(e.getSynthesizedDeepClone(n.body)))}function classExpressionToDeclaration(t,r,n){return e.createClassDeclaration(e.getSynthesizedDeepClones(n.decorators),e.concatenate(r,e.getSynthesizedDeepClones(n.modifiers)),t,e.getSynthesizedDeepClones(n.typeParameters),e.getSynthesizedDeepClones(n.heritageClauses),e.getSynthesizedDeepClones(n.members))}function makeSingleImport(t,r,n,i){return r==="default"?e.makeImport(e.createIdentifier(t),undefined,n,i):e.makeImport(undefined,[makeImportSpecifier(r,t)],n,i)}function makeImportSpecifier(t,r){return e.createImportSpecifier(t!==undefined&&t!==r?e.createIdentifier(t):undefined,e.createIdentifier(r))}function makeConst(t,r,n){return e.createVariableStatement(t,e.createVariableDeclarationList([e.createVariableDeclaration(r,undefined,n)],2))}function makeExportDeclaration(t,r){return e.createExportDeclaration(undefined,undefined,t&&e.createNamedExports(t),r===undefined?undefined:e.createLiteral(r))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="correctQualifiedNameToIndexedAccessType";var n=[e.Diagnostics.Cannot_access_0_1_because_0_is_a_type_but_not_a_namespace_Did_you_mean_to_retrieve_the_type_of_the_property_1_in_0_with_0_1.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=getQualifiedName(n.sourceFile,n.span.start);if(!i)return undefined;var a=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,i)});var o=i.left.text+'["'+i.right.text+'"]';return[t.createCodeFixAction(r,a,[e.Diagnostics.Rewrite_as_the_indexed_access_type_0,o],r,e.Diagnostics.Rewrite_all_as_indexed_access_types)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){var r=getQualifiedName(t.file,t.start);if(r){doChange(e,t.file,r)}})}});function getQualifiedName(t,r){var n=e.findAncestor(e.getTokenAtPosition(t,r),e.isQualifiedName);e.Debug.assert(!!n,"Expected position to be owned by a qualified name.");return e.isIdentifier(n.left)?n:undefined}function doChange(t,r,n){var i=n.right.text;var a=e.createIndexedAccessTypeNode(e.createTypeReferenceNode(n.left,undefined),e.createLiteralTypeNode(e.createLiteral(i)));t.replaceNode(r,n,a)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=[e.Diagnostics.Class_0_incorrectly_implements_interface_1.code,e.Diagnostics.Class_0_incorrectly_implements_class_1_Did_you_mean_to_extend_1_and_inherit_its_members_as_a_subclass.code];var n="fixClassIncorrectlyImplementsInterface";t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var i=r.program,a=r.sourceFile,o=r.span;var s=getClass(a,o.start);var c=i.getTypeChecker();return e.mapDefined(e.getClassImplementsHeritageClauseElements(s),function(i){var o=e.textChanges.ChangeTracker.with(r,function(e){return addMissingDeclarations(c,i,a,s,e,r.preferences)});return o.length===0?undefined:t.createCodeFixAction(n,o,[e.Diagnostics.Implement_interface_0,i.getText(a)],n,e.Diagnostics.Implement_all_unimplemented_interfaces)})},fixIds:[n],getAllCodeActions:function(n){var i=e.createMap();return t.codeFixAll(n,r,function(t,r){var a=getClass(r.file,r.start);if(e.addToSeen(i,e.getNodeId(a))){for(var o=0,s=e.getClassImplementsHeritageClauseElements(a);o<s.length;o++){var c=s[o];addMissingDeclarations(n.program.getTypeChecker(),c,r.file,a,t,n.preferences)}}})}});function getClass(t,r){return e.Debug.assertDefined(e.getContainingClass(e.getTokenAtPosition(t,r)))}function symbolPointsToNonPrivateMember(t){return!(e.getModifierFlags(t.valueDeclaration)&8)}function addMissingDeclarations(r,n,i,a,o,s){var c=getHeritageClauseSymbolTable(a,r);var u=r.getTypeAtLocation(n);var l=r.getPropertiesOfType(u);var f=l.filter(e.and(symbolPointsToNonPrivateMember,function(e){return!c.has(e.escapedName)}));var d=r.getTypeAtLocation(a);if(!d.getNumberIndexType()){createMissingIndexSignatureDeclaration(u,1)}if(!d.getStringIndexType()){createMissingIndexSignatureDeclaration(u,0)}t.createMissingMemberNodes(a,f,r,s,function(e){return o.insertNodeAtClassStart(i,a,e)});function createMissingIndexSignatureDeclaration(e,t){var n=r.getIndexInfoOfType(e,t);if(n){o.insertNodeAtClassStart(i,a,r.indexInfoToIndexSignatureDeclaration(n,t,a))}}}function getHeritageClauseSymbolTable(t,r){var n=e.getEffectiveBaseTypeNode(t);if(!n)return e.createSymbolTable();var i=r.getTypeAtLocation(n);var a=r.getPropertiesOfType(i);return e.createSymbolTable(a.filter(symbolPointsToNonPrivateMember))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){t.importFixId="fixMissingImport";var r=[e.Diagnostics.Cannot_find_name_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics.Cannot_find_namespace_0.code,e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code,e.Diagnostics._0_only_refers_to_a_type_but_is_being_used_as_a_value_here.code];t.registerCodeFix({errorCodes:r,getCodeActions:function(t){var r=t.errorCode,n=t.preferences,i=t.sourceFile,a=t.span;var o=getFixesInfo(t,r,a.start);if(!o)return undefined;var s=o.fixes,c=o.symbolName;var u=e.getQuotePreference(i,n);return s.map(function(e){return codeActionForFix(t,i,c,e,u)})},fixIds:[t.importFixId],getAllCodeActions:function(n){var i=n.sourceFile,a=n.preferences;var o=[];var s=[];var c=e.createMap();var u=e.createMap();t.eachDiagnostic(n,r,function(t){var r=getFixesInfo(n,t.code,t.start);if(!r||!r.fixes.length)return;var i=r.fixes,a=r.symbolName;var l=e.first(i);switch(l.kind){case 0:o.push(l);break;case 1:s.push(l);break;case 2:{var f=l.importClause,d=l.importKind;var p=String(e.getNodeId(f));var g=c.get(p);if(!g){c.set(p,g={importClause:f,defaultImport:undefined,namedImports:[]})}if(d===0){e.pushIfUnique(g.namedImports,a)}else{e.Debug.assert(g.defaultImport===undefined||g.defaultImport===a);g.defaultImport=a}break}case 3:{var _=l.moduleSpecifier,d=l.importKind;var g=u.get(_);if(!g){u.set(_,g={defaultImport:undefined,namedImports:[],namespaceLikeImport:undefined})}switch(d){case 1:e.Debug.assert(g.defaultImport===undefined||g.defaultImport===a);g.defaultImport=a;break;case 0:e.pushIfUnique(g.namedImports,a);break;case 3:case 2:e.Debug.assert(g.namespaceLikeImport===undefined||g.namespaceLikeImport.name===a);g.namespaceLikeImport={importKind:d,name:a};break}break}default:e.Debug.assertNever(l)}});return t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(n,function(t){var r=e.getQuotePreference(i,a);for(var n=0,l=o;n<l.length;n++){var f=l[n];addNamespaceQualifier(t,i,f)}for(var d=0,p=s;d<p.length;d++){var f=p[d];addImportType(t,i,f,r)}c.forEach(function(e){var r=e.importClause,n=e.defaultImport,a=e.namedImports;doAddExistingFix(t,i,r,n,a)});u.forEach(function(e,n){addNewImports(t,i,n,r,e)})}))}});var i;(function(e){e[e["UseNamespace"]=0]="UseNamespace";e[e["ImportType"]=1]="ImportType";e[e["AddToExisting"]=2]="AddToExisting";e[e["AddNew"]=3]="AddNew"})(i||(i={}));var a;(function(e){e[e["Named"]=0]="Named";e[e["Default"]=1]="Default";e[e["Namespace"]=2]="Namespace";e[e["Equals"]=3]="Equals"})(a||(a={}));function getImportCompletionAction(t,r,n,i,a,o,s,c,u){var l=getAllReExportingModules(t,r,i,n,o.getCompilerOptions(),o.getTypeChecker(),o.getSourceFiles());e.Debug.assert(l.some(function(e){return e.moduleSymbol===r}));var f=e.first(getNewImportInfos(o,n,c,l,a,u)).moduleSpecifier;var d=e.first(getFixForImport(l,i,c,o,n,a,u));return{moduleSpecifier:f,codeAction:codeFixActionToCodeAction(codeActionForFix({host:a,formatContext:s},n,i,d,e.getQuotePreference(n,u)))}}t.getImportCompletionAction=getImportCompletionAction;function codeFixActionToCodeAction(e){var t=e.description,r=e.changes,n=e.commands;return{description:t,changes:r,commands:n}}function getAllReExportingModules(t,r,n,i,a,o,s){var c=[];forEachExternalModule(o,s,function(s,u){if(u&&s!==r&&e.startsWith(i.fileName,e.getDirectoryPath(u.fileName))){return}var l=getDefaultLikeExportInfo(s,o,a);if(l&&l.name===n&&e.skipAlias(l.symbol,o)===t){c.push({moduleSymbol:s,importKind:l.kind,exportedSymbolIsTypeOnly:isTypeOnlySymbol(l.symbol,o)})}for(var f=0,d=o.getExportsOfModule(s);f<d.length;f++){var p=d[f];if(p.name===n&&e.skipAlias(p,o)===t){c.push({moduleSymbol:s,importKind:0,exportedSymbolIsTypeOnly:isTypeOnlySymbol(p,o)})}}});return c}function isTypeOnlySymbol(t,r){return!(e.skipAlias(t,r).flags&67220415)}function getFixForImport(t,r,n,i,a,o,s){var c=i.getTypeChecker();var u=e.flatMap(t,function(e){return getExistingImportDeclarations(e,c,a)});var l=n===undefined?undefined:tryUseExistingNamespaceImport(u,r,n,c);var f=tryAddToExistingImport(u);var d=f?[f]:getFixesForAddImport(t,u,i,a,n,o,s);return(l?[l]:e.emptyArray).concat(d)}function tryUseExistingNamespaceImport(t,r,n,i){return e.firstDefined(t,function(t){var a=t.declaration;var o=getNamespaceImportName(a);if(o){var s=i.getAliasedSymbol(i.getSymbolAtLocation(o));if(s&&s.exports.has(e.escapeLeadingUnderscores(r))){return{kind:0,namespacePrefix:o.text,position:n}}}})}function tryAddToExistingImport(t){return e.firstDefined(t,function(e){var t=e.declaration,r=e.importKind;if(t.kind!==249)return undefined;var n=t.importClause;if(!n)return undefined;var i=n.name,a=n.namedBindings;return r===1&&!i||r===0&&(!a||a.kind===252)?{kind:2,importClause:n,importKind:r}:undefined})}function getNamespaceImportName(t){if(t.kind===249){var r=t.importClause&&e.isImportClause(t.importClause)&&t.importClause.namedBindings;return r&&r.kind===251?r.name:undefined}else{return t.name}}function getExistingImportDeclarations(t,r,n){var i=t.moduleSymbol,a=t.importKind,o=t.exportedSymbolIsTypeOnly;return o&&e.isSourceFileJS(n)?e.emptyArray:e.mapDefined(n.imports,function(t){var n=e.importFromModuleSpecifier(t);return(n.kind===249||n.kind===248)&&r.getSymbolAtLocation(t)===i?{declaration:n,importKind:a}:undefined})}function getNewImportInfos(t,r,n,i,a,o){var s=e.isSourceFileJS(r);var c=e.flatMap(i,function(i){var c=i.moduleSymbol,u=i.importKind,l=i.exportedSymbolIsTypeOnly;return e.moduleSpecifiers.getModuleSpecifiers(c,t.getCompilerOptions(),r,a,t.getSourceFiles(),o,t.redirectTargetsMap).map(function(t){return l&&s?{kind:1,moduleSpecifier:t,position:e.Debug.assertDefined(n)}:{kind:3,moduleSpecifier:t,importKind:u}})});return e.sort(c,function(e,t){return e.moduleSpecifier.length-t.moduleSpecifier.length})}function getFixesForAddImport(t,r,n,i,a,o,s){var c=e.firstDefined(r,newImportInfoFromExistingSpecifier);return c?[c]:getNewImportInfos(n,i,a,t,o,s)}function newImportInfoFromExistingSpecifier(t){var r=t.declaration,n=t.importKind;var i=r.kind===249?r.moduleSpecifier:r.moduleReference.kind===259?r.moduleReference.expression:undefined;return i&&e.isStringLiteral(i)?{kind:3,moduleSpecifier:i.text,importKind:n}:undefined}function getFixesInfo(t,r,i){var a=e.getTokenAtPosition(t.sourceFile,i);var o=r===e.Diagnostics._0_refers_to_a_UMD_global_but_the_current_file_is_a_module_Consider_adding_an_import_instead.code?getFixesInfoForUMDImport(t,a):e.isIdentifier(a)?getFixesInfoForNonUMDImport(t,a):undefined;return o&&n({},o,{fixes:e.sort(o.fixes,function(e,t){return e.kind-t.kind})})}function getFixesInfoForUMDImport(t,r){var n=t.sourceFile,i=t.program,a=t.host,o=t.preferences;var s=i.getTypeChecker();var c=getUmdSymbol(r,s);if(!c)return undefined;var u=s.getAliasedSymbol(c);var l=c.name;var f=[{moduleSymbol:u,importKind:getUmdImportKind(i.getCompilerOptions()),exportedSymbolIsTypeOnly:false}];var d=getFixForImport(f,l,e.isIdentifier(r)?r.getStart(n):undefined,i,n,a,o);return{fixes:d,symbolName:l}}function getUmdSymbol(t,r){var n=e.isIdentifier(t)?r.getSymbolAtLocation(t):undefined;if(e.isUMDExportSymbol(n))return n;var i=t.parent;return e.isJsxOpeningLikeElement(i)&&i.tagName===t||e.isJsxOpeningFragment(i)?e.tryCast(r.resolveName(r.getJsxNamespace(i),e.isJsxOpeningLikeElement(i)?t:i,67220415,false),e.isUMDExportSymbol):undefined}function getUmdImportKind(t){if(e.getAllowSyntheticDefaultImports(t)){return 1}var r=e.getEmitModuleKind(t);switch(r){case e.ModuleKind.AMD:case e.ModuleKind.CommonJS:case e.ModuleKind.UMD:return 3;case e.ModuleKind.System:case e.ModuleKind.ES2015:case e.ModuleKind.ESNext:case e.ModuleKind.None:return 2;default:return e.Debug.assertNever(r)}}function getFixesInfoForNonUMDImport(t,r){var n=t.sourceFile,i=t.program,a=t.cancellationToken,o=t.host,s=t.preferences;var c=i.getTypeChecker();var u=e.isJsxOpeningLikeElement(r.parent)&&r.parent.tagName===r&&(e.isIntrinsicJsxName(r.text)||c.resolveName(r.text,r,67108863,false))?c.getJsxNamespace():r.text;e.Debug.assert(u!=="default");var l=e.arrayFrom(e.flatMapIterator(getExportInfos(u,e.getMeaningFromLocation(r),a,n,c,i).entries(),function(e){var t=e[0],a=e[1];return getFixForImport(a,u,r.getStart(n),i,n,o,s)}));return{fixes:l,symbolName:u}}function getExportInfos(t,r,n,i,a,o){var s=e.createMultiMap();function addSymbol(t,r,n){s.add(e.getUniqueSymbolId(r,a).toString(),{moduleSymbol:t,importKind:n,exportedSymbolIsTypeOnly:isTypeOnlySymbol(r,a)})}forEachExternalModuleToImportFrom(a,i,o.getSourceFiles(),function(e){n.throwIfCancellationRequested();var i=getDefaultLikeExportInfo(e,a,o.getCompilerOptions());if(i&&i.name===t&&symbolHasMeaning(i.symbolForMeaning,r)){addSymbol(e,i.symbol,i.kind)}var s=a.tryGetMemberInModuleExportsAndProperties(t,e);if(s&&symbolHasMeaning(s,r)){addSymbol(e,s,0)}});return s}function getDefaultLikeExportInfo(e,t,r){var i=getDefaultLikeExportWorker(e,t);if(!i)return undefined;var a=i.symbol,o=i.kind;var s=getDefaultExportInfoWorker(a,e,t,r);return s&&n({symbol:a,kind:o},s)}function getDefaultLikeExportWorker(e,t){var r=t.tryGetMemberInModuleExports("default",e);if(r)return{symbol:r,kind:1};var n=t.resolveExternalModuleSymbol(e);return n===e?undefined:{symbol:n,kind:3}}function getDefaultExportInfoWorker(t,r,n,i){var a=e.getLocalSymbolForExportDefault(t);if(a)return{symbolForMeaning:a,name:a.name};var o=getNameForExportDefault(t);if(o!==undefined)return{symbolForMeaning:t,name:o};if(t.flags&2097152){var s=n.getImmediateAliasedSymbol(t);return s&&getDefaultExportInfoWorker(s,e.Debug.assertDefined(s.parent),n,i)}else{return{symbolForMeaning:t,name:moduleSymbolToValidIdentifier(r,i.target)}}}function getNameForExportDefault(t){return t.declarations&&e.firstDefined(t.declarations,function(t){if(e.isExportAssignment(t)){if(e.isIdentifier(t.expression)){return t.expression.text}}else if(e.isExportSpecifier(t)){e.Debug.assert(t.name.text==="default");return t.propertyName&&t.propertyName.text}})}function codeActionForFix(r,n,i,a,o){var s;var c=e.textChanges.ChangeTracker.with(r,function(e){s=codeActionForFixWorker(e,n,i,a,o)});return t.createCodeFixAction("import",c,s,t.importFixId,e.Diagnostics.Add_all_missing_imports)}function codeActionForFixWorker(t,r,n,i,a){switch(i.kind){case 0:addNamespaceQualifier(t,r,i);return[e.Diagnostics.Change_0_to_1,n,i.namespacePrefix+"."+n];case 1:addImportType(t,r,i,a);return[e.Diagnostics.Change_0_to_1,n,getImportTypePrefix(i.moduleSpecifier,a)+n];case 2:{var o=i.importClause,s=i.importKind;doAddExistingFix(t,r,o,s===1?n:undefined,s===0?[n]:e.emptyArray);var c=e.stripQuotes(o.parent.moduleSpecifier.getText());return[s===1?e.Diagnostics.Add_default_import_0_to_existing_import_declaration_from_1:e.Diagnostics.Add_0_to_existing_import_declaration_from_1,n,c]}case 3:{var s=i.importKind,u=i.moduleSpecifier;addNewImports(t,r,u,a,s===1?{defaultImport:n,namedImports:e.emptyArray,namespaceLikeImport:undefined}:s===0?{defaultImport:undefined,namedImports:[n],namespaceLikeImport:undefined}:{defaultImport:undefined,namedImports:e.emptyArray,namespaceLikeImport:{importKind:s,name:n}});return[s===1?e.Diagnostics.Import_default_0_from_module_1:e.Diagnostics.Import_0_from_module_1,n,u]}default:return e.Debug.assertNever(i)}}function doAddExistingFix(t,r,n,i,a){if(i){e.Debug.assert(!n.name);t.insertNodeAt(r,n.getStart(r),e.createIdentifier(i),{suffix:", "})}if(a.length){var o=a.map(function(t){return e.createImportSpecifier(undefined,e.createIdentifier(t))});if(n.namedBindings&&e.cast(n.namedBindings,e.isNamedImports).elements.length){for(var s=0,c=o;s<c.length;s++){var u=c[s];t.insertNodeInListAfter(r,e.last(e.cast(n.namedBindings,e.isNamedImports).elements),u)}}else{if(o.length){var l=e.createNamedImports(o);if(n.namedBindings){t.replaceNode(r,n.namedBindings,l)}else{t.insertNodeAfter(r,e.Debug.assertDefined(n.name),l)}}}}}function addNamespaceQualifier(e,t,r){var n=r.namespacePrefix,i=r.position;e.insertText(t,i,n+".")}function addImportType(e,t,r,n){var i=r.moduleSpecifier,a=r.position;e.insertText(t,a,getImportTypePrefix(i,n))}function getImportTypePrefix(t,r){var n=e.getQuoteFromPreference(r);return"import("+n+t+n+")."}function addNewImports(t,r,n,i,a){var o=a.defaultImport,s=a.namedImports,c=a.namespaceLikeImport;var u=e.makeStringLiteral(n,i);if(o!==undefined||s.length){e.insertImport(t,r,e.makeImport(o===undefined?undefined:e.createIdentifier(o),s.map(function(t){return e.createImportSpecifier(undefined,e.createIdentifier(t))}),n,i))}if(c){e.insertImport(t,r,c.importKind===3?e.createImportEqualsDeclaration(undefined,undefined,e.createIdentifier(c.name),e.createExternalModuleReference(u)):e.createImportDeclaration(undefined,undefined,e.createImportClause(undefined,e.createNamespaceImport(e.createIdentifier(c.name))),u))}}function symbolHasMeaning(t,r){var n=t.declarations;return e.some(n,function(t){return!!(e.getMeaningFromDeclaration(t)&r)})}function forEachExternalModuleToImportFrom(e,t,r,n){forEachExternalModule(e,r,function(e,r){if(r===undefined||r!==t&&isImportablePath(t.fileName,r.fileName)){n(e)}})}t.forEachExternalModuleToImportFrom=forEachExternalModuleToImportFrom;function forEachExternalModule(t,r,n){for(var i=0,a=t.getAmbientModules();i<a.length;i++){var o=a[i];n(o,undefined)}for(var s=0,c=r;s<c.length;s++){var u=c[s];if(e.isExternalOrCommonJsModule(u)){n(t.getMergedSymbol(u.symbol),u)}}}function isImportablePath(t,r){var n=e.forEachAncestorDirectory(r,function(t){return e.getBaseFileName(t)==="node_modules"?t:undefined});return n===undefined||e.startsWith(t,e.getDirectoryPath(n))}function moduleSymbolToValidIdentifier(t,r){return moduleSpecifierToValidIdentifier(e.removeFileExtension(e.stripQuotes(t.name)),r)}t.moduleSymbolToValidIdentifier=moduleSymbolToValidIdentifier;function moduleSpecifierToValidIdentifier(t,r){var n=e.getBaseFileName(e.removeSuffix(t,"/index"));var i="";var a=true;var o=n.charCodeAt(0);if(e.isIdentifierStart(o,r)){i+=String.fromCharCode(o)}else{a=false}for(var s=1;s<n.length;s++){var c=n.charCodeAt(s);var u=e.isIdentifierPart(c,r);if(u){var l=String.fromCharCode(c);if(!a){l=l.toUpperCase()}i+=l}a=u}return!e.isStringANonContextualKeyword(i)?i||"_":"_"+i}t.moduleSpecifierToValidIdentifier=moduleSpecifierToValidIdentifier})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixSpelling";var n=[e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_1.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code,e.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_2.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile;var a=getInfo(i,n.span.start,n);if(!a)return undefined;var o=a.node,s=a.suggestion;var c=n.host.getCompilationSettings().target;var u=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,o,s,c)});return[t.createCodeFixAction("spelling",u,[e.Diagnostics.Change_spelling_to_0,s],r,e.Diagnostics.Fix_all_detected_spelling_errors)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){var n=getInfo(r.file,r.start,e);var i=e.host.getCompilationSettings().target;if(n)doChange(t,e.sourceFile,n.node,n.suggestion,i)})}});function getInfo(t,r,n){var i=e.getTokenAtPosition(t,r);var a=n.program.getTypeChecker();var o;if(e.isPropertyAccessExpression(i.parent)&&i.parent.name===i){e.Debug.assert(i.kind===72);var s=a.getTypeAtLocation(i.parent.expression);o=a.getSuggestionForNonexistentProperty(i,s)}else if(e.isImportSpecifier(i.parent)&&i.parent.name===i){e.Debug.assert(i.kind===72);var c=e.findAncestor(i,e.isImportDeclaration);var u=getResolvedSourceFileFromImportDeclaration(t,n,c);if(u&&u.symbol){o=a.getSuggestionForNonexistentExport(i,u.symbol)}}else{var l=e.getMeaningFromLocation(i);var f=e.getTextOfNode(i);e.Debug.assert(f!==undefined,"name should be defined");o=a.getSuggestionForNonexistentSymbol(i,f,convertSemanticMeaningToSymbolFlags(l))}return o===undefined?undefined:{node:i,suggestion:o}}function doChange(t,r,n,i,a){if(!e.isIdentifierText(i,a)&&e.isPropertyAccessExpression(n.parent)){t.replaceNode(r,n.parent,e.createElementAccess(n.parent.expression,e.createLiteral(i)))}else{t.replaceNode(r,n,e.createIdentifier(i))}}function convertSemanticMeaningToSymbolFlags(e){var t=0;if(e&4){t|=1920}if(e&2){t|=67897832}if(e&1){t|=67220415}return t}function getResolvedSourceFileFromImportDeclaration(t,r,n){if(!n||!e.isStringLiteralLike(n.moduleSpecifier))return undefined;var i=e.getResolvedModule(t,n.moduleSpecifier.text);if(!i)return undefined;return r.program.getSourceFile(i.resolvedFileName)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="addMissingMember";var n=[e.Diagnostics.Property_0_does_not_exist_on_type_1.code,e.Diagnostics.Property_0_does_not_exist_on_type_1_Did_you_mean_2.code,e.Diagnostics.Property_0_is_missing_in_type_1_but_required_in_type_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2.code,e.Diagnostics.Type_0_is_missing_the_following_properties_from_type_1_Colon_2_and_3_more.code];var i="addMissingMember";t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var a=getInfo(n.sourceFile,n.span.start,n.program.getTypeChecker());if(!a)return undefined;if(a.kind===0){var o=a.token,s=a.parentDeclaration;var c=e.textChanges.ChangeTracker.with(n,function(e){return addEnumMemberDeclaration(e,n.program.getTypeChecker(),o,s)});return[t.createCodeFixAction(r,c,[e.Diagnostics.Add_missing_enum_member_0,o.text],i,e.Diagnostics.Add_all_missing_members)]}var u=a.parentDeclaration,l=a.declSourceFile,f=a.inJs,d=a.makeStatic,p=a.token,g=a.call;var _=g&&getActionForMethodDeclaration(n,l,u,p,g,d,f,n.preferences);var m=f&&!e.isInterfaceDeclaration(u)?e.singleElementArray(getActionsForAddMissingMemberInJavascriptFile(n,l,u,p.text,d)):getActionsForAddMissingMemberInTypeScriptFile(n,l,u,p,d);return e.concatenate(e.singleElementArray(_),m)},fixIds:[i],getAllCodeActions:function(r){var i=r.program,a=r.preferences;var o=i.getTypeChecker();var s=e.createMap();var c=new e.NodeMap;return t.createCombinedCodeActions(e.textChanges.ChangeTracker.with(r,function(u){t.eachDiagnostic(r,n,function(t){var r=getInfo(t.file,t.start,o);if(!r||!e.addToSeen(s,e.getNodeId(r.parentDeclaration)+"#"+r.token.text)){return}if(r.kind===0){var n=r.token,i=r.parentDeclaration;addEnumMemberDeclaration(u,o,n,i)}else{var i=r.parentDeclaration,a=r.token;var l=c.getOrUpdate(i,function(){return[]});if(!l.some(function(e){return e.token.text===a.text}))l.push(r)}});c.forEach(function(t,n){var s=getAllSupers(n,o);var l=function(t){if(s.some(function(e){var r=c.get(e);return!!r&&r.some(function(e){var r=e.token;return r.text===t.token.text})}))return"continue";var n=t.parentDeclaration,o=t.declSourceFile,l=t.inJs,f=t.makeStatic,d=t.token,p=t.call;if(p){addMethodDeclaration(r,u,o,n,d,p,f,l,a)}else{if(l&&!e.isInterfaceDeclaration(n)){addMissingMemberInJs(u,o,n,d.text,f)}else{var g=getTypeNode(i.getTypeChecker(),n,d);addPropertyDeclaration(u,o,n,d.text,g,f)}}};for(var f=0,d=t;f<d.length;f++){var p=d[f];l(p)}})}))}});function getAllSupers(t,r){var n=[];while(t){var i=e.getClassExtendsHeritageElement(t);var a=i&&r.getSymbolAtLocation(i.expression);var o=a&&e.find(a.declarations,e.isClassLike);if(o){n.push(o)}t=o}return n}var a;(function(e){e[e["Enum"]=0]="Enum";e[e["ClassOrInterface"]=1]="ClassOrInterface"})(a||(a={}));function getInfo(t,r,n){var i=e.getTokenAtPosition(t,r);if(!e.isIdentifier(i)){return undefined}var a=i.parent;if(!e.isPropertyAccessExpression(a))return undefined;var o=e.skipConstraint(n.getTypeAtLocation(a.expression));var s=o.symbol;if(!s||!s.declarations)return undefined;var c=e.find(s.declarations,e.isClassLike)||e.find(s.declarations,e.isInterfaceDeclaration);if(c){var u=(o.target||o)!==n.getDeclaredTypeOfSymbol(s);var l=c.getSourceFile();var f=e.isSourceFileJS(l);var d=e.tryCast(a.parent,e.isCallExpression);return{kind:1,token:i,parentDeclaration:c,makeStatic:u,declSourceFile:l,inJs:f,call:d}}var p=e.find(s.declarations,e.isEnumDeclaration);if(p){return{kind:0,token:i,parentDeclaration:p}}return undefined}function getActionsForAddMissingMemberInJavascriptFile(n,a,o,s,c){var u=e.textChanges.ChangeTracker.with(n,function(e){return addMissingMemberInJs(e,a,o,s,c)});return u.length===0?undefined:t.createCodeFixAction(r,u,[c?e.Diagnostics.Initialize_static_property_0:e.Diagnostics.Initialize_property_0_in_the_constructor,s],i,e.Diagnostics.Add_all_missing_members)}function addMissingMemberInJs(t,r,n,i,a){if(a){if(n.kind===209){return}var o=n.name.getText();var s=initializePropertyToUndefined(e.createIdentifier(o),i);t.insertNodeAfter(r,n,s)}else{var c=e.getFirstConstructorWithBody(n);if(!c){return}var u=initializePropertyToUndefined(e.createThis(),i);t.insertNodeAtConstructorEnd(r,c,u)}}function initializePropertyToUndefined(t,r){return e.createStatement(e.createAssignment(e.createPropertyAccess(t,r),e.createIdentifier("undefined")))}function getActionsForAddMissingMemberInTypeScriptFile(e,t,r,n,i){var a=getTypeNode(e.program.getTypeChecker(),r,n);var o=createAddPropertyDeclarationAction(e,t,r,i,n.text,a);return i?[o]:[o,createAddIndexSignatureAction(e,t,r,n.text,a)]}function getTypeNode(t,r,n){var i;if(n.parent.parent.kind===204){var a=n.parent.parent;var o=n.parent===a.left?a.right:a.left;var s=t.getWidenedType(t.getBaseTypeOfLiteralType(t.getTypeAtLocation(o)));i=t.typeToTypeNode(s,r)}else{var c=t.getContextualType(n.parent);i=c?t.typeToTypeNode(c):undefined}return i||e.createKeywordTypeNode(120)}function createAddPropertyDeclarationAction(n,a,o,s,c,u){var l=e.textChanges.ChangeTracker.with(n,function(e){return addPropertyDeclaration(e,a,o,c,u,s)});return t.createCodeFixAction(r,l,[s?e.Diagnostics.Declare_static_property_0:e.Diagnostics.Declare_property_0,c],i,e.Diagnostics.Add_all_missing_members)}function addPropertyDeclaration(t,r,n,i,a,o){var s=e.createProperty(undefined,o?[e.createToken(116)]:undefined,i,undefined,a,undefined);var c=getNodeToInsertPropertyAfter(n);if(c){t.insertNodeAfter(r,c,s)}else{t.insertNodeAtClassStart(r,n,s)}}function getNodeToInsertPropertyAfter(t){var r;for(var n=0,i=t.members;n<i.length;n++){var a=i[n];if(!e.isPropertyDeclaration(a))break;r=a}return r}function createAddIndexSignatureAction(n,i,a,o,s){var c=e.createKeywordTypeNode(138);var u=e.createParameter(undefined,undefined,undefined,"x",undefined,c,undefined);var l=e.createIndexSignature(undefined,undefined,[u],s);var f=e.textChanges.ChangeTracker.with(n,function(e){return e.insertNodeAtClassStart(i,a,l)});return t.createCodeFixActionNoFixId(r,f,[e.Diagnostics.Add_index_signature_for_property_0,o])}function getActionForMethodDeclaration(n,a,o,s,c,u,l,f){var d=e.textChanges.ChangeTracker.with(n,function(e){return addMethodDeclaration(n,e,a,o,s,c,u,l,f)});return t.createCodeFixAction(r,d,[u?e.Diagnostics.Declare_static_method_0:e.Diagnostics.Declare_method_0,s.text],i,e.Diagnostics.Add_all_missing_members)}function addMethodDeclaration(r,n,i,a,o,s,c,u,l){var f=t.createMethodFromCallExpression(r,s,o.text,u,c,l,!e.isInterfaceDeclaration(a));var d=e.getAncestor(s,156);if(d&&d.parent===a){n.insertNodeAfter(i,d,f)}else{n.insertNodeAtClassStart(i,a,f)}}function addEnumMemberDeclaration(t,r,n,i){var a=e.some(i.members,function(e){var t=r.getTypeAtLocation(e);return!!(t&&t.flags&132)});var o=e.createEnumMember(n,a?e.createStringLiteral(n.text):undefined);t.replaceNode(i.getSourceFile(),i,e.updateEnumDeclaration(i,i.decorators,i.modifiers,i.name,e.concatenate(i.members,e.singleElementArray(o))))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixCannotFindModule";var n="installTypesPackage";var i="generateTypes";var a=e.Diagnostics.Cannot_find_module_0.code;var o=[a,e.Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(i){var a=i.host,o=i.sourceFile,s=i.span.start;var c=tryGetImportedPackageName(o,s);if(c===undefined)return undefined;var u=getTypesPackageNameToInstall(c,a,i.errorCode);return u===undefined?e.singleElementArray(tryGetGenerateTypesAction(i,c)):[t.createCodeFixAction(r,[],[e.Diagnostics.Install_0,u],n,e.Diagnostics.Install_all_missing_types_packages,getInstallCommand(o.fileName,u))]},fixIds:[n,i],getAllCodeActions:function(r){var a=null;return t.codeFixAll(r,o,function(t,o,s){var c=tryGetImportedPackageName(o.file,o.start);if(c===undefined)return undefined;switch(r.fixId){case n:{var u=getTypesPackageNameToInstall(c,r.host,o.code);if(u){s.push(getInstallCommand(o.file.fileName,u))}break}case i:{var l=a!==null?a:a=getOrCreateTypesDirectory(t,r);var f=l===undefined?undefined:tryGenerateTypes(l,c,r);if(f)s.push(f);break}default:e.Debug.fail("Bad fixId: "+r.fixId)}})}});function tryGetGenerateTypesAction(n,a){var o;var s=e.textChanges.ChangeTracker.with(n,function(e){var t=getOrCreateTypesDirectory(e,n);o=t===undefined?undefined:tryGenerateTypes(t,a,n)});return o&&t.createCodeFixAction(r,s,[e.Diagnostics.Generate_types_for_0,a],i,e.Diagnostics.Generate_types_for_all_packages_without_types,o)}function tryGenerateTypes(t,r,n){var i=n.sourceFile.fileName;var a=e.tryResolveJSModule(r,e.getDirectoryPath(i),n.host);if(a===undefined)return undefined;var o=e.resolvePath(e.getDirectoryPath(n.program.getCompilerOptions().configFile.fileName),t,r+".d.ts");if(n.host.fileExists(o))return undefined;return{type:"generate types",file:i,fileToGenerateTypesFor:a,outputFileName:o}}function getOrCreateTypesDirectory(t,r){var n=r.program.getCompilerOptions().configFile;if(!n)return undefined;var i=e.getTsConfigObjectLiteralExpression(n);if(!i)return undefined;var a=findProperty(i,"compilerOptions");if(!a){var o=e.createObjectLiteral([makeDefaultBaseUrl(),makeDefaultPaths()]);t.insertNodeAtObjectStart(n,i,createJsonPropertyAssignment("compilerOptions",o));return c}var s=a.initializer;if(!e.isObjectLiteralExpression(s))return c;var u=getOrAddBaseUrl(t,n,s);var l=getOrAddPathMapping(t,n,s);return e.combinePaths(u,l)}var s=".";function makeDefaultBaseUrl(){return createJsonPropertyAssignment("baseUrl",e.createStringLiteral(s))}function getOrAddBaseUrl(t,r,n){var i=findProperty(n,"baseUrl");if(i){return e.isStringLiteral(i.initializer)?i.initializer.text:s}else{t.insertNodeAtObjectStart(r,n,makeDefaultBaseUrl());return s}}var c="types";function makeDefaultPathMapping(){return createJsonPropertyAssignment("*",e.createArrayLiteral([e.createStringLiteral(c+"/*")]))}function makeDefaultPaths(){return createJsonPropertyAssignment("paths",e.createObjectLiteral([makeDefaultPathMapping()]))}function getOrAddPathMapping(t,r,n){var i=findProperty(n,"paths");if(!i||!e.isObjectLiteralExpression(i.initializer)){t.insertNodeAtObjectStart(r,n,makeDefaultPaths());return c}var a=e.firstDefined(i.initializer.properties,function(t){return e.isPropertyAssignment(t)&&e.isStringLiteral(t.name)&&t.name.text==="*"&&e.isArrayLiteralExpression(t.initializer)?e.firstDefined(t.initializer.elements,function(t){return e.isStringLiteral(t)?e.tryRemoveSuffix(t.text,"/*"):undefined}):undefined});if(a)return a;t.insertNodeAtObjectStart(r,i.initializer,makeDefaultPathMapping());return c}function createJsonPropertyAssignment(t,r){return e.createPropertyAssignment(e.createStringLiteral(t),r)}function findProperty(t,r){return e.find(t.properties,function(t){return e.isPropertyAssignment(t)&&!!t.name&&e.isStringLiteral(t.name)&&t.name.text===r})}function getInstallCommand(e,t){return{type:"install package",file:e,packageName:t}}function tryGetImportedPackageName(t,r){var n=e.cast(e.getTokenAtPosition(t,r),e.isStringLiteral).text;var i=e.parsePackageName(n).packageName;return e.isExternalModuleNameRelative(i)?undefined:i}function getTypesPackageNameToInstall(t,r,n){return n===a?e.JsTyping.nodeCoreModules.has(t)?"@types/node":undefined:r.isKnownTypesPackageName(t)?e.getTypesPackageName(t):undefined}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r=[e.Diagnostics.Non_abstract_class_0_does_not_implement_inherited_abstract_member_1_from_class_2.code,e.Diagnostics.Non_abstract_class_expression_does_not_implement_inherited_abstract_member_0_from_class_1.code];var n="fixClassDoesntImplementInheritedAbstractMember";t.registerCodeFix({errorCodes:r,getCodeActions:function(r){var i=r.program,a=r.sourceFile,o=r.span;var s=e.textChanges.ChangeTracker.with(r,function(e){return addMissingMembers(getClass(a,o.start),a,i.getTypeChecker(),e,r.preferences)});return s.length===0?undefined:[t.createCodeFixAction(n,s,e.Diagnostics.Implement_inherited_abstract_class,n,e.Diagnostics.Implement_all_inherited_abstract_classes)]},fixIds:[n],getAllCodeActions:function(n){var i=e.createMap();return t.codeFixAll(n,r,function(t,r){var a=getClass(r.file,r.start);if(e.addToSeen(i,e.getNodeId(a))){addMissingMembers(a,n.sourceFile,n.program.getTypeChecker(),t,n.preferences)}})}});function getClass(t,r){var n=e.getTokenAtPosition(t,r);return e.cast(n.parent,e.isClassLike)}function addMissingMembers(r,n,i,a,o){var s=e.getEffectiveBaseTypeNode(r);var c=i.getTypeAtLocation(s);var u=i.getPropertiesOfType(c).filter(symbolPointsToNonPrivateAndAbstractMember);t.createMissingMemberNodes(r,u,i,o,function(e){return a.insertNodeAtClassStart(n,r,e)})}function symbolPointsToNonPrivateAndAbstractMember(t){var r=e.getModifierFlags(e.first(t.getDeclarations()));return!(r&8)&&!!(r&128)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="classSuperMustPrecedeThisAccess";var n=[e.Diagnostics.super_must_be_called_before_accessing_this_in_the_constructor_of_a_derived_class.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span;var o=getNodes(i,a.start);if(!o)return undefined;var s=o.constructor,c=o.superCall;var u=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,s,c)});return[t.createCodeFixAction(r,u,e.Diagnostics.Make_super_call_the_first_statement_in_the_constructor,r,e.Diagnostics.Make_all_super_calls_the_first_statement_in_their_constructor)]},fixIds:[r],getAllCodeActions:function(r){var i=r.sourceFile;var a=e.createMap();return t.codeFixAll(r,n,function(t,r){var n=getNodes(r.file,r.start);if(!n)return;var o=n.constructor,s=n.superCall;if(e.addToSeen(a,e.getNodeId(o.parent))){doChange(t,i,o,s)}})}});function doChange(e,t,r,n){e.insertNodeAtConstructorStart(t,r,n);e.delete(t,n)}function getNodes(t,r){var n=e.getTokenAtPosition(t,r);if(n.kind!==100)return undefined;var i=e.getContainingFunction(n);var a=findSuperCall(i.body);return a&&!a.expression.arguments.some(function(t){return e.isPropertyAccessExpression(t)&&t.expression===n})?{constructor:i,superCall:a}:undefined}function findSuperCall(t){return e.isExpressionStatement(t)&&e.isSuperCall(t.expression)?t:e.isFunctionLike(t)?undefined:e.forEachChild(t,findSuperCall)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="constructorForDerivedNeedSuperCall";var n=[e.Diagnostics.Constructors_for_derived_classes_must_contain_a_super_call.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span;var o=getNode(i,a.start);var s=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,o)});return[t.createCodeFixAction(r,s,e.Diagnostics.Add_missing_super_call,r,e.Diagnostics.Add_all_missing_super_calls)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){return doChange(t,e.sourceFile,getNode(r.file,r.start))})}});function getNode(t,r){var n=e.getTokenAtPosition(t,r);e.Debug.assert(n.kind===124);return n.parent}function doChange(t,r,n){var i=e.createStatement(e.createCall(e.createSuper(),undefined,e.emptyArray));t.insertNodeAtConstructorStart(r,n,i)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="extendsInterfaceBecomesImplements";var n=[e.Diagnostics.Cannot_extend_an_interface_0_Did_you_mean_implements.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile;var a=getNodes(i,n.span.start);if(!a)return undefined;var o=a.extendsToken,s=a.heritageClauses;var c=e.textChanges.ChangeTracker.with(n,function(e){return doChanges(e,i,o,s)});return[t.createCodeFixAction(r,c,e.Diagnostics.Change_extends_to_implements,r,e.Diagnostics.Change_all_extended_interfaces_to_implements)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){var r=getNodes(t.file,t.start);if(r)doChanges(e,t.file,r.extendsToken,r.heritageClauses)})}});function getNodes(t,r){var n=e.getTokenAtPosition(t,r);var i=e.getContainingClass(n).heritageClauses;var a=i[0].getFirstToken();return a.kind===86?{extendsToken:a,heritageClauses:i}:undefined}function doChanges(t,r,n,i){t.replaceNode(r,n,e.createToken(109));if(i.length===2&&i[0].token===86&&i[1].token===109){var a=i[1].getFirstToken();var o=a.getFullStart();t.replaceRange(r,{pos:o,end:o},e.createToken(27));var s=r.text;var c=a.end;while(c<s.length&&e.isWhiteSpaceSingleLine(s.charCodeAt(c))){c++}t.deleteRange(r,{pos:a.getStart(),end:c})}}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="forgottenThisPropertyAccess";var n=e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_static_member_1_0.code;var i=[e.Diagnostics.Cannot_find_name_0_Did_you_mean_the_instance_member_this_0.code,n];t.registerCodeFix({errorCodes:i,getCodeActions:function(n){var i=n.sourceFile;var a=getInfo(i,n.span.start,n.errorCode);if(!a){return undefined}var o=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,a)});return[t.createCodeFixAction(r,o,[e.Diagnostics.Add_0_to_unresolved_variable,a.className||"this"],r,e.Diagnostics.Add_qualifier_to_all_unresolved_variables_matching_a_member_name)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,i,function(t,r){var n=getInfo(r.file,r.start,r.code);if(n)doChange(t,e.sourceFile,n)})}});function getInfo(t,r,i){var a=e.getTokenAtPosition(t,r);if(!e.isIdentifier(a))return undefined;return{node:a,className:i===n?e.getContainingClass(a).name.text:undefined}}function doChange(t,r,n){var i=n.node,a=n.className;e.suppressLeadingAndTrailingTrivia(i);t.replaceNode(r,i,e.createPropertyAccess(a?e.createIdentifier(a):e.createThis(),i))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="unusedIdentifier";var n="unusedIdentifier_prefix";var i="unusedIdentifier_delete";var a="unusedIdentifier_infer";var o=[e.Diagnostics._0_is_declared_but_its_value_is_never_read.code,e.Diagnostics._0_is_declared_but_never_used.code,e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code,e.Diagnostics.All_imports_in_import_declaration_are_unused.code,e.Diagnostics.All_destructured_elements_are_unused.code,e.Diagnostics.All_variables_are_unused.code,e.Diagnostics.All_type_parameters_are_unused.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(i){var o=i.errorCode,s=i.sourceFile,c=i.program;var u=c.getTypeChecker();var l=c.getSourceFiles();var f=e.getTokenAtPosition(s,i.span.start);if(e.isJSDocTemplateTag(f)){return[createDeleteFix(e.textChanges.ChangeTracker.with(i,function(e){return e.delete(s,f)}),e.Diagnostics.Remove_template_tag)]}if(f.kind===28){var d=e.textChanges.ChangeTracker.with(i,function(e){return deleteTypeParameters(e,s,f)});return[createDeleteFix(d,e.Diagnostics.Remove_type_parameters)]}var p=tryGetFullImport(f);if(p){var d=e.textChanges.ChangeTracker.with(i,function(e){return e.delete(s,p)});return[createDeleteFix(d,[e.Diagnostics.Remove_import_from_0,e.showModuleSpecifier(p)])]}var g=e.textChanges.ChangeTracker.with(i,function(e){return tryDeleteFullDestructure(f,e,s,u,l,false)});if(g.length){return[createDeleteFix(g,e.Diagnostics.Remove_destructuring)]}var _=e.textChanges.ChangeTracker.with(i,function(e){return tryDeleteFullVariableStatement(s,f,e)});if(_.length){return[createDeleteFix(_,e.Diagnostics.Remove_variable_statement)]}var m=[];if(f.kind===127){var d=e.textChanges.ChangeTracker.with(i,function(e){return changeInferToUnknown(e,s,f)});var y=e.cast(f.parent,e.isInferTypeNode).typeParameter.name.text;m.push(t.createCodeFixAction(r,d,[e.Diagnostics.Replace_infer_0_with_unknown,y],a,e.Diagnostics.Replace_all_unused_infer_with_unknown))}else{var h=e.textChanges.ChangeTracker.with(i,function(e){return tryDeleteDeclaration(s,f,e,u,l,false)});if(h.length){var y=e.isComputedPropertyName(f.parent)?f.parent:f;m.push(createDeleteFix(h,[e.Diagnostics.Remove_declaration_for_Colon_0,y.getText(s)]))}}var v=e.textChanges.ChangeTracker.with(i,function(e){return tryPrefixDeclaration(e,o,s,f)});if(v.length){m.push(t.createCodeFixAction(r,v,[e.Diagnostics.Prefix_0_with_an_underscore,f.getText(s)],n,e.Diagnostics.Prefix_all_unused_declarations_with_where_possible))}return m},fixIds:[n,i,a],getAllCodeActions:function(r){var s=r.sourceFile,c=r.program;var u=c.getTypeChecker();var l=c.getSourceFiles();return t.codeFixAll(r,o,function(t,o){var c=e.getTokenAtPosition(s,o.start);switch(r.fixId){case n:tryPrefixDeclaration(t,o.code,s,c);break;case i:{if(c.kind===127)break;var f=tryGetFullImport(c);if(f){t.delete(s,f)}else if(e.isJSDocTemplateTag(c)){t.delete(s,c)}else if(c.kind===28){deleteTypeParameters(t,s,c)}else if(!tryDeleteFullDestructure(c,t,s,u,l,true)&&!tryDeleteFullVariableStatement(s,c,t)){tryDeleteDeclaration(s,c,t,u,l,true)}break}case a:if(c.kind===127){changeInferToUnknown(t,s,c)}break;default:e.Debug.fail(JSON.stringify(r.fixId))}})}});function changeInferToUnknown(t,r,n){t.replaceNode(r,n.parent,e.createKeywordTypeNode(143))}function createDeleteFix(n,a){return t.createCodeFixAction(r,n,a,i,e.Diagnostics.Delete_all_unused_declarations)}function deleteTypeParameters(t,r,n){t.delete(r,e.Debug.assertDefined(e.cast(n.parent,e.isDeclarationWithTypeParameterChildren).typeParameters))}function tryGetFullImport(t){return t.kind===92?e.tryCast(t.parent,e.isImportDeclaration):undefined}function tryDeleteFullDestructure(t,r,n,i,a,o){if(t.kind!==18||!e.isObjectBindingPattern(t.parent))return false;var s=t.parent.parent;if(s.kind===151){tryDeleteParameter(r,n,s,i,a,o)}else{r.delete(n,s)}return true}function tryDeleteFullVariableStatement(t,r,n){var i=e.tryCast(r.parent,e.isVariableDeclarationList);if(i&&i.getChildren(t)[0]===r){n.delete(t,i.parent.kind===219?i.parent:i);return true}return false}function tryPrefixDeclaration(t,r,n,i){if(r===e.Diagnostics.Property_0_is_declared_but_its_value_is_never_read.code)return;if(i.kind===127){i=e.cast(i.parent,e.isInferTypeNode).typeParameter.name}if(e.isIdentifier(i)&&canPrefix(i)){t.replaceNode(n,i,e.createIdentifier("_"+i.text))}}function canPrefix(e){switch(e.parent.kind){case 151:case 150:return true;case 237:{var t=e.parent;switch(t.parent.parent.kind){case 227:case 226:return true}}}return false}function tryDeleteDeclaration(t,r,n,i,a,o){tryDeleteDeclarationWorker(r,n,t,i,a,o);if(e.isIdentifier(r))deleteAssignments(n,t,r,i)}function deleteAssignments(t,r,n,i){e.FindAllReferences.Core.eachSymbolReferenceInFile(n,i,r,function(n){if(e.isPropertyAccessExpression(n.parent)&&n.parent.name===n)n=n.parent;if(e.isBinaryExpression(n.parent)&&e.isExpressionStatement(n.parent.parent)&&n.parent.left===n){t.delete(r,n.parent.parent)}})}function tryDeleteDeclarationWorker(t,r,n,i,a,o){var s=t.parent;if(e.isParameter(s)){tryDeleteParameter(r,n,s,i,a,o)}else{r.delete(n,e.isImportClause(s)?t:e.isComputedPropertyName(s)?s.parent:s)}}function tryDeleteParameter(t,r,n,i,a,o){if(mayDeleteParameter(n,i,o)){if(n.modifiers&&n.modifiers.length>0&&(!e.isIdentifier(n.name)||e.FindAllReferences.Core.isSymbolReferencedInFile(n.name,i,r))){n.modifiers.forEach(function(e){t.deleteModifier(r,e)})}else{t.delete(r,n);deleteUnusedArguments(t,r,n,a,i)}}}function mayDeleteParameter(t,r,n){var i=t.parent;switch(i.kind){case 156:var a=r.getSymbolAtLocation(i.name);if(e.isMemberSymbolInBaseType(a,r))return false;case 157:case 239:return true;case 196:case 197:{var o=i.parameters;var s=o.indexOf(t);e.Debug.assert(s!==-1);return n?o.slice(s+1).every(function(e){return e.name.kind===72&&!e.symbol.isReferenced}):s===o.length-1}case 159:return false;default:return e.Debug.failBadSyntaxKind(i)}}function deleteUnusedArguments(t,r,n,i,a){e.FindAllReferences.Core.eachSignatureCall(n.parent,i,a,function(e){var i=n.parent.parameters.indexOf(n);if(e.arguments.length>i){t.delete(r,e.arguments[i])}})}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixUnreachableCode";var n=[e.Diagnostics.Unreachable_code_detected.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,n.span.start,n.span.length)});return[t.createCodeFixAction(r,i,e.Diagnostics.Remove_unreachable_code,r,e.Diagnostics.Remove_all_unreachable_code)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){return doChange(e,t.file,t.start,t.length)})}});function doChange(t,r,n,i){var a=e.getTokenAtPosition(r,n);var o=e.findAncestor(a,e.isStatement);e.Debug.assert(o.getStart(r)===a.getStart(r));var s=(e.isBlock(o.parent)?o.parent:o).parent;if(!e.isBlock(o.parent)||o===e.first(o.parent.statements)){switch(s.kind){case 222:if(s.elseStatement){if(e.isBlock(o.parent)){break}else{t.replaceNode(r,o,e.createBlock(e.emptyArray))}return}case 224:case 225:t.delete(r,s);return}}if(e.isBlock(o.parent)){var c=n+i;var u=e.Debug.assertDefined(lastWhere(e.sliceAfter(o.parent.statements,o),function(e){return e.pos<c}));t.deleteNodeRange(r,o,u)}else{t.delete(r,o)}}function lastWhere(e,t){var r;for(var n=0,i=e;n<i.length;n++){var a=i[n];if(!t(a))break;r=a}return r}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixUnusedLabel";var n=[e.Diagnostics.Unused_label.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,n.span.start)});return[t.createCodeFixAction(r,i,e.Diagnostics.Remove_unused_label,r,e.Diagnostics.Remove_all_unused_labels)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(e,t){return doChange(e,t.file,t.start)})}});function doChange(t,r,n){var i=e.getTokenAtPosition(r,n);var a=e.cast(i.parent,e.isLabeledStatement);var o=i.getStart(r);var s=a.statement.getStart(r);var c=e.positionsAreOnSameLine(o,s,r)?s:e.skipTrivia(r.text,e.findChildOfKind(a,57,r).end,true);t.deleteRange(r,{pos:o,end:c})}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixJSDocTypes_plain";var n="fixJSDocTypes_nullable";var i=[e.Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments.code];t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var a=i.sourceFile;var o=i.program.getTypeChecker();var s=getInfo(a,i.span.start,o);if(!s)return undefined;var c=s.typeNode,u=s.type;var l=c.getText(a);var f=[fix(u,r,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript)];if(c.kind===286){f.push(fix(o.getNullableType(u,32768),n,e.Diagnostics.Change_all_jsdoc_style_types_to_TypeScript_and_add_undefined_to_nullable_types))}return f;function fix(r,n,s){var u=e.textChanges.ChangeTracker.with(i,function(e){return doChange(e,a,c,r,o)});return t.createCodeFixAction("jdocTypes",u,[e.Diagnostics.Change_0_to_1,l,o.typeToString(r)],n,s)}},fixIds:[r,n],getAllCodeActions:function(e){var r=e.fixId,a=e.program,o=e.sourceFile;var s=a.getTypeChecker();return t.codeFixAll(e,i,function(e,t){var i=getInfo(t.file,t.start,s);if(!i)return;var a=i.typeNode,c=i.type;var u=a.kind===286&&r===n?s.getNullableType(c,32768):c;doChange(e,o,a,u,s)})}});function doChange(e,t,r,n,i){e.replaceNode(t,r,i.typeToTypeNode(n,r))}function getInfo(t,r,n){var i=e.findAncestor(e.getTokenAtPosition(t,r),isTypeContainer);var a=i&&i.type;return a&&{typeNode:a,type:n.getTypeFromTypeNode(a)}}function isTypeContainer(e){switch(e.kind){case 212:case 160:case 161:case 239:case 158:case 162:case 181:case 156:case 155:case 151:case 154:case 153:case 159:case 242:case 194:case 237:return true;default:return false}}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixAwaitInSyncFunction";var n=[e.Diagnostics.await_expression_is_only_allowed_within_an_async_function.code,e.Diagnostics.A_for_await_of_statement_is_only_allowed_within_an_async_function_or_async_generator.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span;var o=getNodes(i,a.start);if(!o)return undefined;var s=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,o)});return[t.createCodeFixAction(r,s,e.Diagnostics.Add_async_modifier_to_containing_function,r,e.Diagnostics.Add_all_missing_async_modifiers)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){var n=getNodes(r.file,r.start);if(!n)return;doChange(t,e.sourceFile,n)})}});function getReturnType(t){if(t.type){return t.type}if(e.isVariableDeclaration(t.parent)&&t.parent.type&&e.isFunctionTypeNode(t.parent.type)){return t.parent.type.type}}function getNodes(t,r){var n=e.getTokenAtPosition(t,r);var i=e.getContainingFunction(n);if(!i){return}var a;switch(i.kind){case 156:a=i.name;break;case 239:case 196:a=e.findChildOfKind(i,90,t);break;case 197:a=e.findChildOfKind(i,20,t)||e.first(i.parameters);break;default:return}return a&&{insertBefore:a,returnType:getReturnType(i)}}function doChange(t,r,n){var i=n.insertBefore,a=n.returnType;if(a){var o=e.getEntityNameFromTypeNode(a);if(!o||o.kind!==72||o.text!=="Promise"){t.replaceNode(r,a,e.createTypeReferenceNode("Promise",e.createNodeArray([a])))}}t.insertModifierBefore(r,121,i)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="disableJsDiagnostics";var n="disableJsDiagnostics";var i=e.mapDefined(Object.keys(e.Diagnostics),function(t){var r=e.Diagnostics[t];return r.category===e.DiagnosticCategory.Error?r.code:undefined});t.registerCodeFix({errorCodes:i,getCodeActions:function(i){var a=i.sourceFile,o=i.program,s=i.span,c=i.host,u=i.formatContext;if(!e.isInJSFile(a)||!e.isCheckJsEnabledForFile(a,o.getCompilerOptions())){return undefined}var l=[t.createCodeFixActionNoFixId(r,[t.createFileTextChanges(a.fileName,[e.createTextChange(a.checkJsDirective?e.createTextSpanFromBounds(a.checkJsDirective.pos,a.checkJsDirective.end):e.createTextSpan(0,0),"// @ts-nocheck"+e.getNewLineOrDefaultFromHost(c,u.options))])],e.Diagnostics.Disable_checking_for_this_file)];if(e.textChanges.isValidLocationToAddComment(a,s.start)){l.unshift(t.createCodeFixAction(r,e.textChanges.ChangeTracker.with(i,function(e){return makeChange(e,a,s.start)}),e.Diagnostics.Ignore_this_error_message,n,e.Diagnostics.Add_ts_ignore_to_all_error_messages))}return l},fixIds:[n],getAllCodeActions:function(r){var n=e.createMap();return t.codeFixAll(r,i,function(t,r){if(e.textChanges.isValidLocationToAddComment(r.file,r.start)){makeChange(t,r.file,r.start,n)}})}});function makeChange(t,r,n,i){var a=e.getLineAndCharacterOfPosition(r,n).line;if(!i||e.addToSeen(i,a)){t.insertCommentBeforeLine(r,a,n," @ts-ignore")}}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){function createMissingMemberNodes(e,t,r,n,i){var a=e.symbol.members;for(var o=0,s=t;o<s.length;o++){var c=s[o];if(!a.has(c.escapedName)){addNewNodeForMemberSymbol(c,e,r,n,i)}}}t.createMissingMemberNodes=createMissingMemberNodes;function addNewNodeForMemberSymbol(t,r,n,i,a){var o=t.getDeclarations();if(!(o&&o.length)){return undefined}var s=o[0];var c=e.getSynthesizedDeepClone(e.getNameOfDeclaration(s),false);var u=createVisibilityModifier(e.getModifierFlags(s));var l=u?e.createNodeArray([u]):undefined;var f=n.getWidenedType(n.getTypeOfSymbolAtLocation(t,r));var d=!!(t.flags&16777216);switch(s.kind){case 158:case 159:case 153:case 154:var p=n.typeToTypeNode(f,r);a(e.createProperty(undefined,l,c,d?e.createToken(56):undefined,p,undefined));break;case 155:case 156:var g=n.getSignaturesOfType(f,0);if(!e.some(g)){break}if(o.length===1){e.Debug.assert(g.length===1);var _=g[0];outputMethod(_,l,c,createStubbedMethodBody(i));break}for(var m=0,y=g;m<y.length;m++){var _=y[m];outputMethod(_,e.getSynthesizedDeepClones(l,false),e.getSynthesizedDeepClone(c,false))}if(o.length>g.length){var _=n.getSignatureFromDeclaration(o[o.length-1]);outputMethod(_,l,c,createStubbedMethodBody(i))}else{e.Debug.assert(o.length===g.length);a(createMethodImplementingSignatures(g,c,d,l,i))}break}function outputMethod(e,t,i,o){var s=signatureToMethodDeclaration(n,e,r,t,i,d,o);if(s)a(s)}}function signatureToMethodDeclaration(t,r,n,i,a,o,s){var c=t.signatureToSignatureDeclaration(r,156,n,256);if(!c){return undefined}c.decorators=undefined;c.modifiers=i;c.name=a;c.questionToken=o?e.createToken(56):undefined;c.body=s;return c}function createMethodFromCallExpression(t,r,n,i,a,o,s){var c=r.typeArguments,u=r.arguments,l=r.parent;var f=t.program.getTypeChecker();var d=e.map(u,function(e){return f.typeToTypeNode(f.getBaseTypeOfLiteralType(f.getTypeAtLocation(e)))});var p=e.map(u,function(t){return e.isIdentifier(t)?t.text:e.isPropertyAccessExpression(t)?t.name.text:undefined});var g=f.getContextualType(r);var _=i?undefined:g&&f.typeToTypeNode(g,r)||e.createKeywordTypeNode(120);return e.createMethod(undefined,a?[e.createToken(116)]:undefined,e.isYieldExpression(l)?e.createToken(40):undefined,n,undefined,i?undefined:e.map(c,function(t,r){return e.createTypeParameterDeclaration(84+c.length-1<=90?String.fromCharCode(84+r):"T"+r)}),createDummyParameters(u.length,p,d,undefined,i),_,s?createStubbedMethodBody(o):undefined)}t.createMethodFromCallExpression=createMethodFromCallExpression;function createDummyParameters(t,r,n,i,a){var o=[];for(var s=0;s<t;s++){var c=e.createParameter(undefined,undefined,undefined,r&&r[s]||"arg"+s,i!==undefined&&s>=i?e.createToken(56):undefined,a?undefined:n&&n[s]||e.createKeywordTypeNode(120),undefined);o.push(c)}return o}function createMethodImplementingSignatures(t,r,n,i,a){var o=t[0];var s=t[0].minArgumentCount;var c=false;for(var u=0,l=t;u<l.length;u++){var f=l[u];s=Math.min(f.minArgumentCount,s);if(f.hasRestParameter){c=true}if(f.parameters.length>=o.parameters.length&&(!f.hasRestParameter||o.hasRestParameter)){o=f}}var d=o.parameters.length-(o.hasRestParameter?1:0);var p=o.parameters.map(function(e){return e.name});var g=createDummyParameters(d,p,undefined,s,false);if(c){var _=e.createArrayTypeNode(e.createKeywordTypeNode(120));var m=e.createParameter(undefined,undefined,e.createToken(25),p[d]||"rest",d>=s?e.createToken(56):undefined,_,undefined);g.push(m)}return createStubbedMethod(i,r,n,undefined,g,undefined,a)}function createStubbedMethod(t,r,n,i,a,o,s){return e.createMethod(undefined,t,undefined,r,n?e.createToken(56):undefined,i,a,o,createStubbedMethodBody(s))}function createStubbedMethodBody(t){return e.createBlock([e.createThrow(e.createNew(e.createIdentifier("Error"),undefined,[e.createLiteral("Method not implemented.",t.quotePreference==="single")]))],true)}function createVisibilityModifier(t){if(t&4){return e.createToken(115)}else if(t&16){return e.createToken(114)}return undefined}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="invalidImportSyntax";function getCodeFixesForImportDeclaration(t,r){var n=e.getSourceFileOfNode(r);var i=e.getNamespaceDeclarationNode(r);var a=t.program.getCompilerOptions();var o=[];o.push(createAction(t,n,r,e.makeImport(i.name,undefined,r.moduleSpecifier,e.getQuotePreference(n,t.preferences))));if(e.getEmitModuleKind(a)===e.ModuleKind.CommonJS){o.push(createAction(t,n,r,e.createImportEqualsDeclaration(undefined,undefined,i.name,e.createExternalModuleReference(r.moduleSpecifier))))}return o}function createAction(n,i,a,o){var s=e.textChanges.ChangeTracker.with(n,function(e){return e.replaceNode(i,a,o)});return t.createCodeFixActionNoFixId(r,s,[e.Diagnostics.Replace_import_with_0,s[0].textChanges[0].newText])}t.registerCodeFix({errorCodes:[e.Diagnostics.Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatures.code,e.Diagnostics.Cannot_use_new_with_an_expression_whose_type_lacks_a_call_or_construct_signature.code],getCodeActions:getActionsForUsageOfInvalidImport});function getActionsForUsageOfInvalidImport(t){var r=t.sourceFile;var n=e.Diagnostics.Cannot_invoke_an_expression_whose_type_lacks_a_call_signature_Type_0_has_no_compatible_call_signatures.code===t.errorCode?191:192;var i=e.findAncestor(e.getTokenAtPosition(r,t.span.start),function(e){return e.kind===n&&e.getStart()===t.span.start&&e.getEnd()===t.span.start+t.span.length});if(!i){return[]}var a=i.expression;return getImportCodeFixesForExpression(t,a)}t.registerCodeFix({errorCodes:[e.Diagnostics.Argument_of_type_0_is_not_assignable_to_parameter_of_type_1.code,e.Diagnostics.Type_0_does_not_satisfy_the_constraint_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1.code,e.Diagnostics.Type_0_is_not_assignable_to_type_1_Two_different_types_with_this_name_exist_but_they_are_unrelated.code,e.Diagnostics.Type_predicate_0_is_not_assignable_to_1.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_string_index_type_2.code,e.Diagnostics.Property_0_of_type_1_is_not_assignable_to_numeric_index_type_2.code,e.Diagnostics.Numeric_index_type_0_is_not_assignable_to_string_index_type_1.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_the_same_property_in_base_type_2.code,e.Diagnostics.Property_0_in_type_1_is_not_assignable_to_type_2.code,e.Diagnostics.Property_0_of_JSX_spread_attribute_is_not_assignable_to_target_property.code,e.Diagnostics.The_this_context_of_type_0_is_not_assignable_to_method_s_this_of_type_1.code],getCodeActions:getActionsForInvalidImportLocation});function getActionsForInvalidImportLocation(t){var r=t.sourceFile;var n=e.findAncestor(e.getTokenAtPosition(r,t.span.start),function(e){return e.getStart()===t.span.start&&e.getEnd()===t.span.start+t.span.length});if(!n){return[]}return getImportCodeFixesForExpression(t,n)}function getImportCodeFixesForExpression(n,i){var a=n.program.getTypeChecker().getTypeAtLocation(i);if(!(a.symbol&&a.symbol.originatingImport)){return[]}var o=[];var s=a.symbol.originatingImport;if(!e.isImportCall(s)){e.addRange(o,getCodeFixesForImportDeclaration(n,s))}if(e.isExpression(i)&&!(e.isNamedDeclaration(i.parent)&&i.parent.name===i)){var c=n.sourceFile;var u=e.textChanges.ChangeTracker.with(n,function(t){return t.replaceNode(c,i,e.createPropertyAccess(i,"default"),{})});o.push(t.createCodeFixActionNoFixId(r,u,e.Diagnostics.Use_synthetic_default_member))}return o}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="strictClassInitialization";var n="addMissingPropertyDefiniteAssignmentAssertions";var i="addMissingPropertyUndefinedType";var a="addMissingPropertyInitializer";var o=[e.Diagnostics.Property_0_has_no_initializer_and_is_not_definitely_assigned_in_the_constructor.code];t.registerCodeFix({errorCodes:o,getCodeActions:function(t){var r=getPropertyDeclaration(t.sourceFile,t.span.start);if(!r)return;var n=[getActionForAddMissingUndefinedType(t,r),getActionForAddMissingDefiniteAssignmentAssertion(t,r)];e.append(n,getActionForAddMissingInitializer(t,r));return n},fixIds:[n,i,a],getAllCodeActions:function(r){return t.codeFixAll(r,o,function(t,o){var s=getPropertyDeclaration(o.file,o.start);if(!s)return;switch(r.fixId){case n:addDefiniteAssignmentAssertion(t,o.file,s);break;case i:addUndefinedType(t,o.file,s);break;case a:var c=r.program.getTypeChecker();var u=getInitializer(c,s);if(!u)return;addInitializer(t,o.file,s,u);break;default:e.Debug.fail(JSON.stringify(r.fixId))}})}});function getPropertyDeclaration(t,r){var n=e.getTokenAtPosition(t,r);return e.isIdentifier(n)?e.cast(n.parent,e.isPropertyDeclaration):undefined}function getActionForAddMissingDefiniteAssignmentAssertion(i,a){var o=e.textChanges.ChangeTracker.with(i,function(e){return addDefiniteAssignmentAssertion(e,i.sourceFile,a)});return t.createCodeFixAction(r,o,[e.Diagnostics.Add_definite_assignment_assertion_to_property_0,a.getText()],n,e.Diagnostics.Add_definite_assignment_assertions_to_all_uninitialized_properties)}function addDefiniteAssignmentAssertion(t,r,n){var i=e.updateProperty(n,n.decorators,n.modifiers,n.name,e.createToken(52),n.type,n.initializer);t.replaceNode(r,n,i)}function getActionForAddMissingUndefinedType(n,a){var o=e.textChanges.ChangeTracker.with(n,function(e){return addUndefinedType(e,n.sourceFile,a)});return t.createCodeFixAction(r,o,[e.Diagnostics.Add_undefined_type_to_property_0,a.name.getText()],i,e.Diagnostics.Add_undefined_type_to_all_uninitialized_properties)}function addUndefinedType(t,r,n){var i=e.createKeywordTypeNode(141);var a=n.type;var o=e.isUnionTypeNode(a)?a.types.concat(i):[a,i];t.replaceNode(r,a,e.createUnionTypeNode(o))}function getActionForAddMissingInitializer(n,i){var o=n.program.getTypeChecker();var s=getInitializer(o,i);if(!s)return undefined;var c=e.textChanges.ChangeTracker.with(n,function(e){return addInitializer(e,n.sourceFile,i,s)});return t.createCodeFixAction(r,c,[e.Diagnostics.Add_initializer_to_property_0,i.name.getText()],a,e.Diagnostics.Add_initializers_to_all_uninitialized_properties)}function addInitializer(t,r,n,i){var a=e.updateProperty(n,n.decorators,n.modifiers,n.name,n.questionToken,n.type,i);t.replaceNode(r,n,a)}function getInitializer(e,t){return getDefaultValueFromType(e,e.getTypeFromTypeNode(t.type))}function getDefaultValueFromType(t,r){if(r.flags&512){return r===t.getFalseType()||r===t.getFalseType(true)?e.createFalse():e.createTrue()}else if(r.isLiteral()){return e.createLiteral(r.value)}else if(r.isUnion()){return e.firstDefined(r.types,function(e){return getDefaultValueFromType(t,e)})}else if(r.isClass()){var n=e.getClassLikeDeclarationOfSymbol(r.symbol);if(!n||e.hasModifier(n,128))return undefined;var i=e.getFirstConstructorWithBody(n);if(i&&i.parameters.length)return undefined;return e.createNew(e.createIdentifier(r.symbol.name),undefined,undefined)}else if(t.isArrayLikeType(r)){return e.createArrayLiteral()}return undefined}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){function generateTypesForModule(e,t,r){return generateTypesForModuleOrGlobal(e,t,r,0)}e.generateTypesForModule=generateTypesForModule;function generateTypesForGlobal(e,t,r){return generateTypesForModuleOrGlobal(e,t,r,3)}e.generateTypesForGlobal=generateTypesForGlobal;function generateTypesForModuleOrGlobal(t,r,n,i){return valueInfoToDeclarationFileText(e.inspectValue(t,r),n,i)}function valueInfoToDeclarationFileText(t,r,n){if(n===void 0){n=0}return e.textChanges.getNewFileText(toStatements(t,n),3,r.newLineCharacter||"\n",e.formatting.getFormatContext(r))}e.valueInfoToDeclarationFileText=valueInfoToDeclarationFileText;var t;(function(e){e[e["ExportEquals"]=0]="ExportEquals";e[e["NamedExport"]=1]="NamedExport";e[e["NamespaceMember"]=2]="NamespaceMember";e[e["Global"]=3]="Global"})(t||(t={}));function toNamespaceMemberStatements(e){return toStatements(e,2)}function toStatements(t,r){var n=t.name==="default";var i=n?"_default":t.name;if(!isValidIdentifier(i)||n&&r!==1)return e.emptyArray;var a=n&&t.kind===2?[e.createModifier(85),e.createModifier(80)]:r===3||r===0?[e.createModifier(125)]:r===1?[e.createModifier(85)]:undefined;var o=function(){return r===0?[exportEqualsOrDefault(t.name,true)]:e.emptyArray};var s=function(){return n?[exportEqualsOrDefault("_default",false)]:e.emptyArray};switch(t.kind){case 2:return o().concat(functionOrClassToStatements(a,i,t));case 3:var c=t.members,u=t.hasNontrivialPrototype;if(!u){if(r===0){return e.flatMap(c,function(e){return toStatements(e,1)})}if(c.some(function(e){return e.kind===2})){return s().concat([createNamespace(a,i,e.flatMap(c,toNamespaceMemberStatements))])}}case 0:case 1:{var l=t.kind===0?t.comment:undefined;var f=e.createVariableStatement(a,e.createVariableDeclarationList([e.createVariableDeclaration(i,toType(t))],2));return o().concat(s(),[addComment(f,l)])}default:return e.Debug.assertNever(t)}}function exportEqualsOrDefault(t,r){return e.createExportAssignment(undefined,undefined,r,e.createIdentifier(t))}function functionOrClassToStatements(t,r,n){var i=n.source,a=n.prototypeMembers,o=n.namespaceMembers;var s=parseClassOrFunctionBody(i);var c=s===undefined?{parameters:e.emptyArray,returnType:anyType()}:getParametersAndReturnType(s),u=c.parameters,l=c.returnType;var f=e.createMap();if(typeof s==="object")getConstructorFunctionInstanceProperties(s,f);for(var d=0,p=a;d<p.length;d++){var g=p[d];if(g.kind===2){var _=tryGetMethod(g);if(_){f.set(g.name,_)}}}var m=f.size!==0||s===undefined||typeof s!=="number"&&s.kind===157?[]:undefined;var y=e.flatMap(o,function(t){if(!isValidIdentifier(t.name))return undefined;if(m){switch(t.kind){case 3:if(t.members.some(function(e){return e.kind===2})){break}case 1:case 0:m.push(addComment(e.createProperty(undefined,[e.createModifier(116)],t.name,undefined,toType(t),undefined),t.kind===0?t.comment:undefined));return undefined;case 2:if(!t.namespaceMembers.length){var r=tryGetMethod(t,[e.createModifier(116)]);if(r){m.push(r);return undefined}}break;default:e.Debug.assertNever(t)}}return toStatements(t,2)});var h=m?e.createClassDeclaration(undefined,t,r,undefined,undefined,m.concat(u.length?[e.createConstructor(undefined,undefined,u,undefined)]:e.emptyArray,e.arrayFrom(f.values()))):e.createFunctionDeclaration(undefined,t,undefined,r,undefined,u,l,undefined);return[h].concat(y.length===0?e.emptyArray:[createNamespace(t&&t.map(function(t){return e.getSynthesizedDeepClone(t)}),r,y)])}function tryGetMethod(t,r){var n=t.name,i=t.source;if(!isValidIdentifier(n))return undefined;var a=parseClassOrFunctionBody(i);if(a===undefined||typeof a!=="number"&&a.kind===157)return undefined;var o=getParametersAndReturnType(a);return o&&e.createMethod(undefined,r,undefined,n,undefined,undefined,o.parameters,o.returnType,undefined)}function toType(t){switch(t.kind){case 0:return e.createTypeReferenceNode(t.typeName,undefined);case 1:return e.createArrayTypeNode(toType(t.inner));case 2:return e.createTypeReferenceNode("Function",undefined);case 3:return e.createTypeLiteralNode(t.members.map(function(t){return e.createPropertySignature(undefined,toPropertyName(t.name),undefined,toType(t),undefined)}));default:return e.Debug.assertNever(t)}}function toPropertyName(t){return e.isIdentifierText(t,6)?e.createIdentifier(t):e.createStringLiteral(t)}function getConstructorFunctionInstanceProperties(t,r){forEachOwnNodeOfFunction(t,function(t){if(e.isAssignmentExpression(t,true)&&e.isPropertyAccessExpression(t.left)&&t.left.expression.kind===100){var n=t.left.name.text;if(!e.isJsPrivate(n)){e.getOrUpdate(r,n,function(){return e.createProperty(undefined,undefined,n,undefined,anyType(),undefined)})}}})}function getParametersAndReturnType(t){if(typeof t==="number"){return{parameters:e.fill(t,function(e){return makeParameter("p"+e,anyType())}),returnType:anyType()}}var r=false,n=false;forEachOwnNodeOfFunction(t,function(t){r=r||e.isIdentifier(t)&&t.text==="arguments";n=n||e.isReturnStatement(t)&&!!t.expression&&t.expression.kind!==200});var i=t.parameters.map(function(e){return makeParameter(""+e.name.getText(),inferParameterType(t,e))}).concat(r?[makeRestParameter()]:e.emptyArray);return{parameters:i,returnType:n?anyType():e.createKeywordTypeNode(106)}}function makeParameter(t,r){return e.createParameter(undefined,undefined,undefined,t,undefined,r)}function makeRestParameter(){return e.createParameter(undefined,undefined,e.createToken(25),"args",undefined,e.createArrayTypeNode(anyType()))}function parseClassOrFunctionBody(t){if(typeof t==="number")return t;var r=e.tryCast(parseExpression(t),function(t){return e.isFunctionExpression(t)||e.isArrowFunction(t)||e.isClassExpression(t)});return r?e.isClassExpression(r)?e.find(r.members,e.isConstructorDeclaration):r:e.cast(e.first(e.cast(parseExpression("{ "+t+" }"),e.isObjectLiteralExpression).properties),e.isMethodDeclaration)}function parseExpression(t){var r="const _ = "+t;var n=e.createSourceFile("test.ts",r,6,true);return e.first(e.cast(e.first(n.statements),e.isVariableStatement).declarationList.declarations).initializer}function inferParameterType(e,t){return anyType()}function forEachOwnNodeOfFunction(t,r){t.body.forEachChild(function recur(t){r(t);if(!e.isFunctionLike(t))t.forEachChild(recur)})}function isValidIdentifier(t){var r=e.stringToToken(t);return!(r&&e.isNonContextualKeyword(r))&&e.isIdentifierText(t,6)}function addComment(t,r){if(r!==undefined)e.addSyntheticLeadingComment(t,2,r);return t}function anyType(){return e.createKeywordTypeNode(120)}function createNamespace(t,r,n){return e.createModuleDeclaration(undefined,t,e.createIdentifier(r),e.createModuleBlock(n),16)}})(s||(s={}));var s;(function(e){var t;(function(t){var r="requireInTs";var n=[e.Diagnostics.require_call_may_be_converted_to_an_import.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,n.sourceFile,n.span.start,n.program)});return[t.createCodeFixAction(r,i,e.Diagnostics.Convert_require_to_import,r,e.Diagnostics.Convert_all_require_to_import)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){return doChange(t,r.file,r.start,e.program)})}});function doChange(t,r,n,i){var a=getInfo(r,n),o=a.statement,s=a.name,c=a.required;t.replaceNode(r,o,e.getAllowSyntheticDefaultImports(i.getCompilerOptions())?e.createImportDeclaration(undefined,undefined,e.createImportClause(s,undefined),c):e.createImportEqualsDeclaration(undefined,undefined,s,e.createExternalModuleReference(c)))}function getInfo(t,r){var n=e.getTokenAtPosition(t,r).parent;if(!e.isRequireCall(n,true))throw e.Debug.failBadSyntaxKind(n);var i=e.cast(n.parent,e.isVariableDeclaration);return{statement:e.cast(i.parent.parent,e.isVariableStatement),name:e.cast(i.name,e.isIdentifier),required:n.arguments[0]}}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="useDefaultImport";var n=[e.Diagnostics.Import_may_be_converted_to_a_default_import.code];t.registerCodeFix({errorCodes:n,getCodeActions:function(n){var i=n.sourceFile,a=n.span.start;var o=getInfo(i,a);if(!o)return undefined;var s=e.textChanges.ChangeTracker.with(n,function(e){return doChange(e,i,o,n.preferences)});return[t.createCodeFixAction(r,s,e.Diagnostics.Convert_to_default_import,r,e.Diagnostics.Convert_all_to_default_imports)]},fixIds:[r],getAllCodeActions:function(e){return t.codeFixAll(e,n,function(t,r){var n=getInfo(r.file,r.start);if(n)doChange(t,r.file,n,e.preferences)})}});function getInfo(t,r){var n=e.getTokenAtPosition(t,r);if(!e.isIdentifier(n))return undefined;var i=n.parent;if(e.isImportEqualsDeclaration(i)&&e.isExternalModuleReference(i.moduleReference)){return{importNode:i,name:n,moduleSpecifier:i.moduleReference.expression}}else if(e.isNamespaceImport(i)){var a=i.parent.parent;return{importNode:a,name:n,moduleSpecifier:a.moduleSpecifier}}}function doChange(t,r,n,i){t.replaceNode(r,n.importNode,e.makeImport(n.name,undefined,n.moduleSpecifier,e.getQuotePreference(r,i)))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixAddModuleReferTypeMissingTypeof";var n=r;var i=[e.Diagnostics.Module_0_does_not_refer_to_a_type_but_is_used_as_a_type_here_Did_you_mean_typeof_import_0.code];t.registerCodeFix({errorCodes:i,getCodeActions:function(r){var i=r.sourceFile,a=r.span;var o=getImportTypeNode(i,a.start);var s=e.textChanges.ChangeTracker.with(r,function(e){return doChange(e,i,o)});return[t.createCodeFixAction(n,s,e.Diagnostics.Add_missing_typeof,n,e.Diagnostics.Add_missing_typeof)]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,i,function(t,r){return doChange(t,e.sourceFile,getImportTypeNode(r.file,r.start))})}});function getImportTypeNode(t,r){var n=e.getTokenAtPosition(t,r);e.Debug.assert(n.kind===92);e.Debug.assert(n.parent.kind===183);return n.parent}function doChange(t,r,n){var i=e.updateImportTypeNode(n,n.argument,n.qualifier,n.typeArguments,true);t.replaceNode(r,n,i)}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="fixConvertToMappedObjectType";var n=r;var i=[e.Diagnostics.An_index_signature_parameter_type_cannot_be_a_union_type_Consider_using_a_mapped_object_type_instead.code];t.registerCodeFix({errorCodes:i,getCodeActions:function(r){var i=r.sourceFile,a=r.span;var o=getInfo(i,a.start);if(!o)return undefined;var s=e.textChanges.ChangeTracker.with(r,function(e){return doChange(e,i,o)});var c=e.idText(o.container.name);return[t.createCodeFixAction(n,s,[e.Diagnostics.Convert_0_to_mapped_object_type,c],n,[e.Diagnostics.Convert_0_to_mapped_object_type,c])]},fixIds:[n],getAllCodeActions:function(e){return t.codeFixAll(e,i,function(e,t){var r=getInfo(t.file,t.start);if(r)doChange(e,t.file,r)})}});function getInfo(t,r){var n=e.getTokenAtPosition(t,r);var i=e.cast(n.parent.parent,e.isIndexSignatureDeclaration);if(e.isClassDeclaration(i.parent))return undefined;var a=e.isInterfaceDeclaration(i.parent)?i.parent:e.cast(i.parent.parent,e.isTypeAliasDeclaration);return{indexSignature:i,container:a}}function createTypeAliasFromInterface(t,r){return e.createTypeAliasDeclaration(t.decorators,t.modifiers,t.name,t.typeParameters,r)}function doChange(t,r,n){var i=n.indexSignature,a=n.container;var o=e.isInterfaceDeclaration(a)?a.members:a.type.members;var s=o.filter(function(t){return!e.isIndexSignatureDeclaration(t)});var c=e.first(i.parameters);var u=e.createTypeParameterDeclaration(e.cast(c.name,e.isIdentifier),c.type);var l=e.createMappedTypeNode(e.hasReadonlyModifier(i)?e.createModifier(133):undefined,u,i.questionToken,i.type);var f=e.createIntersectionTypeNode(e.getAllSuperTypeNodes(a).concat([l],s.length?[e.createTypeLiteralNode(s)]:e.emptyArray));t.replaceNode(r,a,createTypeAliasFromInterface(a,f))}})(t=e.codefix||(e.codefix={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="Convert export";var n="Convert default export to named export";var i="Convert named export to default export";t.registerRefactor(r,{getAvailableActions:function(t){var a=getInfo(t);if(!a)return e.emptyArray;var o=a.wasDefault?e.Diagnostics.Convert_default_export_to_named_export.message:e.Diagnostics.Convert_named_export_to_default_export.message;var s=a.wasDefault?n:i;return[{name:r,description:o,actions:[{name:s,description:o}]}]},getEditsForAction:function(t,r){e.Debug.assert(r===n||r===i);var a=e.textChanges.ChangeTracker.with(t,function(r){return doChange(t.file,t.program,e.Debug.assertDefined(getInfo(t)),r,t.cancellationToken)});return{edits:a,renameFilename:undefined,renameLocation:undefined}}});function getInfo(t){var r=t.file;var n=e.getRefactorContextSpan(t);var i=e.getTokenAtPosition(r,n.start);var a=e.getParentNodeInSpan(i,r,n);if(!a||!e.isSourceFile(a.parent)&&!(e.isModuleBlock(a.parent)&&e.isAmbientModule(a.parent.parent))){return undefined}var o=e.isSourceFile(a.parent)?a.parent.symbol:a.parent.parent.symbol;var s=e.getModifierFlags(a);var c=!!(s&512);if(!(s&1)||!c&&o.exports.has("default")){return undefined}switch(a.kind){case 239:case 240:case 241:case 243:case 242:case 244:{var u=a;return u.name&&e.isIdentifier(u.name)?{exportNode:u,exportName:u.name,wasDefault:c,exportingModuleSymbol:o}:undefined}case 219:{var l=a;if(!(l.declarationList.flags&2)||l.declarationList.declarations.length!==1){return undefined}var f=e.first(l.declarationList.declarations);if(!f.initializer)return undefined;e.Debug.assert(!c);return e.isIdentifier(f.name)?{exportNode:l,exportName:f.name,wasDefault:c,exportingModuleSymbol:o}:undefined}default:return undefined}}function doChange(e,t,r,n,i){changeExport(e,r,n,t.getTypeChecker());changeImports(t,r,n,i)}function changeExport(t,r,n,i){var a=r.wasDefault,o=r.exportNode,s=r.exportName;if(a){n.delete(t,e.Debug.assertDefined(e.findModifier(o,80)))}else{var c=e.Debug.assertDefined(e.findModifier(o,85));switch(o.kind){case 239:case 240:case 241:n.insertNodeAfter(t,c,e.createToken(80));break;case 219:if(!e.FindAllReferences.Core.isSymbolReferencedInFile(s,i,t)){n.replaceNode(t,o,e.createExportDefault(e.Debug.assertDefined(e.first(o.declarationList.declarations).initializer)));break}case 243:case 242:case 244:n.deleteModifier(t,c);n.insertNodeAfter(t,o,e.createExportDefault(e.createIdentifier(s.text)));break;default:e.Debug.assertNever(o)}}}function changeImports(t,r,n,i){var a=r.wasDefault,o=r.exportName,s=r.exportingModuleSymbol;var c=t.getTypeChecker();var u=e.Debug.assertDefined(c.getSymbolAtLocation(o));e.FindAllReferences.Core.eachExportReference(t.getSourceFiles(),c,i,u,s,o.text,a,function(e){var t=e.getSourceFile();if(a){changeDefaultToNamedImport(t,e,n,o.text)}else{changeNamedToDefaultImport(t,e,n)}})}function changeDefaultToNamedImport(t,r,n,i){var a=r.parent;switch(a.kind){case 189:n.replaceNode(t,r,e.createIdentifier(i));break;case 253:case 257:{var o=a;n.replaceNode(t,o,makeImportSpecifier(i,o.name.text));break}case 250:{var s=a;e.Debug.assert(s.name===r);var o=makeImportSpecifier(i,r.text);var c=s.namedBindings;if(!c){n.replaceNode(t,r,e.createNamedImports([o]))}else if(c.kind===251){n.deleteRange(t,{pos:r.getStart(t),end:c.getStart(t)});var u=e.isStringLiteral(s.parent.moduleSpecifier)?e.quotePreferenceFromString(s.parent.moduleSpecifier,t):1;var l=e.makeImport(undefined,[makeImportSpecifier(i,r.text)],s.parent.moduleSpecifier,u);n.insertNodeAfter(t,s.parent,l)}else{n.delete(t,r);n.insertNodeAtEndOfList(t,c.elements,o)}break}default:e.Debug.failBadSyntaxKind(a)}}function changeNamedToDefaultImport(t,r,n){var i=r.parent;switch(i.kind){case 189:n.replaceNode(t,r,e.createIdentifier("default"));break;case 253:{var a=e.createIdentifier(i.name.text);if(i.parent.elements.length===1){n.replaceNode(t,i.parent,a)}else{n.delete(t,i);n.insertNodeBefore(t,i.parent,a)}break}case 257:{n.replaceNode(t,i,makeExportSpecifier("default",i.name.text));break}default:e.Debug.assertNever(i)}}function makeImportSpecifier(t,r){return e.createImportSpecifier(t===r?undefined:e.createIdentifier(t),e.createIdentifier(r))}function makeExportSpecifier(t,r){return e.createExportSpecifier(t===r?undefined:e.createIdentifier(t),e.createIdentifier(r))}})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="Convert import";var n="Convert namespace import to named imports";var i="Convert named imports to namespace import";t.registerRefactor(r,{getAvailableActions:function(t){var a=getImportToConvert(t);if(!a)return e.emptyArray;var o=a.kind===251?e.Diagnostics.Convert_namespace_import_to_named_imports.message:e.Diagnostics.Convert_named_imports_to_namespace_import.message;var s=a.kind===251?n:i;return[{name:r,description:o,actions:[{name:s,description:o}]}]},getEditsForAction:function(t,r){e.Debug.assert(r===n||r===i);var a=e.textChanges.ChangeTracker.with(t,function(r){return doChange(t.file,t.program,r,e.Debug.assertDefined(getImportToConvert(t)))});return{edits:a,renameFilename:undefined,renameLocation:undefined}}});function getImportToConvert(t){var r=t.file;var n=e.getRefactorContextSpan(t);var i=e.getTokenAtPosition(r,n.start);var a=e.getParentNodeInSpan(i,r,n);if(!a||!e.isImportDeclaration(a))return undefined;var o=a.importClause;return o&&o.namedBindings}function doChange(t,r,n,i){var a=r.getTypeChecker();if(i.kind===251){doChangeNamespaceToNamed(t,a,n,i,e.getAllowSyntheticDefaultImports(r.getCompilerOptions()))}else{doChangeNamedToNamespace(t,a,n,i)}}function doChangeNamespaceToNamed(t,r,n,i,a){var o=false;var s=[];var c=e.createMap();e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,function(t){if(!e.isPropertyAccessExpression(t.parent)){o=true}else{var n=e.cast(t.parent,e.isPropertyAccessExpression);var i=n.name.text;if(r.resolveName(i,t,67108863,true)){c.set(i,true)}e.Debug.assert(n.expression===t);s.push(n)}});var u=e.createMap();for(var l=0,f=s;l<f.length;l++){var d=f[l];var p=d.name.text;var g=u.get(p);if(g===undefined){u.set(p,g=c.has(p)?e.getUniqueName(p,t):p)}n.replaceNode(t,d,e.createIdentifier(g))}var _=[];u.forEach(function(t,r){_.push(e.createImportSpecifier(t===r?undefined:e.createIdentifier(r),e.createIdentifier(t)))});var m=i.parent.parent;if(o&&!a){n.insertNodeAfter(t,m,updateImport(m,undefined,_))}else{n.replaceNode(t,m,updateImport(m,o?e.createIdentifier(i.name.text):undefined,_))}}function doChangeNamedToNamespace(t,r,n,i){var a=i.parent.parent;var o=a.moduleSpecifier;var s=o&&e.isStringLiteral(o)?e.codefix.moduleSpecifierToValidIdentifier(o.text,6):"module";var c=i.elements.some(function(n){return e.FindAllReferences.Core.eachSymbolReferenceInFile(n.name,r,t,function(e){return!!r.resolveName(s,e,67108863,true)})||false});var u=c?e.getUniqueName(s,t):s;var l=[];var f=function(i){var a=(i.propertyName||i.name).text;e.FindAllReferences.Core.eachSymbolReferenceInFile(i.name,r,t,function(r){var o=e.createPropertyAccess(e.createIdentifier(u),a);if(e.isShorthandPropertyAssignment(r.parent)){n.replaceNode(t,r.parent,e.createPropertyAssignment(r.text,o))}else if(e.isExportSpecifier(r.parent)&&!r.parent.propertyName){if(!l.some(function(e){return e.name===i.name})){l.push(e.createImportSpecifier(i.propertyName&&e.createIdentifier(i.propertyName.text),e.createIdentifier(i.name.text)))}}else{n.replaceNode(t,r,o)}})};for(var d=0,p=i.elements;d<p.length;d++){var g=p[d];f(g)}n.replaceNode(t,i,e.createNamespaceImport(e.createIdentifier(u)));if(l.length){n.insertNodeAfter(t,i.parent.parent,updateImport(a,undefined,l))}}function updateImport(t,r,n){return e.createImportDeclaration(undefined,undefined,e.createImportClause(r,n&&n.length?e.createNamedImports(n):undefined),t.moduleSpecifier)}})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(r){var n="Extract Symbol";t.registerRefactor(n,{getAvailableActions:getAvailableActions,getEditsForAction:getEditsForAction});function getAvailableActions(t){var r=getRangeToExtract(t.file,e.getRefactorContextSpan(t));var i=r.targetRange;if(i===undefined){return e.emptyArray}var a=getPossibleExtractions(i,t);if(a===undefined){return e.emptyArray}var o=[];var s=e.createMap();var c=[];var u=e.createMap();var l=0;for(var f=0,d=a;f<d.length;f++){var p=d[f],g=p.functionExtraction,_=p.constantExtraction;if(g.errors.length===0){var m=g.description;if(!s.has(m)){s.set(m,true);o.push({description:m,name:"function_scope_"+l})}}if(_.errors.length===0){var m=_.description;if(!u.has(m)){u.set(m,true);c.push({description:m,name:"constant_scope_"+l})}}l++}var y=[];if(o.length){y.push({name:n,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_function),actions:o})}if(c.length){y.push({name:n,description:e.getLocaleSpecificMessage(e.Diagnostics.Extract_constant),actions:c})}return y.length?y:e.emptyArray}r.getAvailableActions=getAvailableActions;function getEditsForAction(t,r){var n=getRangeToExtract(t.file,e.getRefactorContextSpan(t));var i=n.targetRange;var a=/^function_scope_(\d+)$/.exec(r);if(a){var o=+a[1];e.Debug.assert(isFinite(o),"Expected to parse a finite number from the function scope index");return getFunctionExtractionAtIndex(i,t,o)}var s=/^constant_scope_(\d+)$/.exec(r);if(s){var o=+s[1];e.Debug.assert(isFinite(o),"Expected to parse a finite number from the constant scope index");return getConstantExtractionAtIndex(i,t,o)}e.Debug.fail("Unrecognized action name")}r.getEditsForAction=getEditsForAction;var i;(function(t){function createMessage(t){return{message:t,code:0,category:e.DiagnosticCategory.Message,key:t}}t.cannotExtractRange=createMessage("Cannot extract range.");t.cannotExtractImport=createMessage("Cannot extract import statement.");t.cannotExtractSuper=createMessage("Cannot extract super call.");t.cannotExtractEmpty=createMessage("Cannot extract empty range.");t.expressionExpected=createMessage("expression expected.");t.uselessConstantType=createMessage("No reason to extract constant of type.");t.statementOrExpressionExpected=createMessage("Statement or expression expected.");t.cannotExtractRangeContainingConditionalBreakOrContinueStatements=createMessage("Cannot extract range containing conditional break or continue statements.");t.cannotExtractRangeContainingConditionalReturnStatement=createMessage("Cannot extract range containing conditional return statement.");t.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange=createMessage("Cannot extract range containing labeled break or continue with target outside of the range.");t.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators=createMessage("Cannot extract range containing writes to references located outside of the target range in generators.");t.typeWillNotBeVisibleInTheNewScope=createMessage("Type will not visible in the new scope.");t.functionWillNotBeVisibleInTheNewScope=createMessage("Function will not visible in the new scope.");t.cannotExtractIdentifier=createMessage("Select more than a single identifier.");t.cannotExtractExportedEntity=createMessage("Cannot extract exported declaration");t.cannotWriteInExpression=createMessage("Cannot write back side-effects when extracting an expression");t.cannotExtractReadonlyPropertyInitializerOutsideConstructor=createMessage("Cannot move initialization of read-only class property outside of the constructor");t.cannotExtractAmbientBlock=createMessage("Cannot extract code from ambient contexts");t.cannotAccessVariablesFromNestedScopes=createMessage("Cannot access variables from nested scopes");t.cannotExtractToOtherFunctionLike=createMessage("Cannot extract method to a function-like scope that is not a function");t.cannotExtractToJSClass=createMessage("Cannot extract constant to a class scope in JS");t.cannotExtractToExpressionArrowFunction=createMessage("Cannot extract constant to an arrow function without a block")})(i=r.Messages||(r.Messages={}));var a;(function(e){e[e["None"]=0]="None";e[e["HasReturn"]=1]="HasReturn";e[e["IsGenerator"]=2]="IsGenerator";e[e["IsAsyncFunction"]=4]="IsAsyncFunction";e[e["UsesThis"]=8]="UsesThis";e[e["InStaticRegion"]=16]="InStaticRegion"})(a||(a={}));function getRangeToExtract(t,r){var n=r.length;if(n===0){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractEmpty)]}}var o=e.getParentNodeInSpan(e.getTokenAtPosition(t,r.start),t,r);var s=e.getParentNodeInSpan(e.findTokenOnLeftOfPosition(t,e.textSpanEnd(r)),t,r);var c=[];var u=a.None;if(!o||!s){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractRange)]}}if(o.parent!==s.parent){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractRange)]}}if(o!==s){if(!isBlockLike(o.parent)){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractRange)]}}var l=[];var f=o;for(var d=0,p=f.parent.statements;d<p.length;d++){var g=p[d];if(g===o||l.length){var _=checkNode(g);if(_){return{errors:_}}l.push(g)}if(g===s){break}}if(!l.length){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractRange)]}}return{targetRange:{range:l,facts:u,declarations:c}}}if(e.isReturnStatement(o)&&!o.expression){return{errors:[e.createFileDiagnostic(t,r.start,n,i.cannotExtractRange)]}}var m=refineNode(o);var y=checkRootNode(m)||checkNode(m);if(y){return{errors:y}}return{targetRange:{range:getStatementOrExpressionRange(m),facts:u,declarations:c}};function refineNode(t){if(e.isReturnStatement(t)){if(t.expression){return t.expression}}else if(e.isVariableStatement(t)){var r=0;var n=void 0;for(var i=0,a=t.declarationList.declarations;i<a.length;i++){var o=a[i];if(o.initializer){r++;n=o.initializer}}if(r===1){return n}}else if(e.isVariableDeclaration(t)){if(t.initializer){return t.initializer}}return t}function checkRootNode(t){if(e.isIdentifier(e.isExpressionStatement(t)?t.expression:t)){return[e.createDiagnosticForNode(t,i.cannotExtractIdentifier)]}return undefined}function checkForStaticContext(t,r){var n=t;while(n!==r){if(n.kind===154){if(e.hasModifier(n,32)){u|=a.InStaticRegion}break}else if(n.kind===151){var i=e.getContainingFunction(n);if(i.kind===157){u|=a.InStaticRegion}break}else if(n.kind===156){if(e.hasModifier(n,32)){u|=a.InStaticRegion}}n=n.parent}}function checkNode(t){var n;(function(e){e[e["None"]=0]="None";e[e["Break"]=1]="Break";e[e["Continue"]=2]="Continue";e[e["Return"]=4]="Return"})(n||(n={}));e.Debug.assert(t.pos<=t.end,"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809");e.Debug.assert(!e.positionIsSynthesized(t.pos),"This failure could trigger https://github.com/Microsoft/TypeScript/issues/20809");if(!e.isStatement(t)&&!(e.isExpressionNode(t)&&isExtractableExpression(t))){return[e.createDiagnosticForNode(t,i.statementOrExpressionExpected)]}if(t.flags&4194304){return[e.createDiagnosticForNode(t,i.cannotExtractAmbientBlock)]}var o=e.getContainingClass(t);if(o){checkForStaticContext(t,o)}var s;var l=4;var f;visit(t);return s;function visit(t){if(s){return true}if(e.isDeclaration(t)){var n=t.kind===237?t.parent.parent:t;if(e.hasModifier(n,1)){(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractExportedEntity));return true}c.push(t.symbol)}switch(t.kind){case 249:(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractImport));return true;case 98:if(t.parent.kind===191){var o=e.getContainingClass(t);if(o.pos<r.start||o.end>=r.start+r.length){(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractSuper));return true}}else{u|=a.UsesThis}break}if(e.isFunctionLikeDeclaration(t)||e.isClassLike(t)){switch(t.kind){case 239:case 240:if(e.isSourceFile(t.parent)&&t.parent.externalModuleIndicator===undefined){(s||(s=[])).push(e.createDiagnosticForNode(t,i.functionWillNotBeVisibleInTheNewScope))}break}return false}var d=l;switch(t.kind){case 222:l=0;break;case 235:l=0;break;case 218:if(t.parent&&t.parent.kind===235&&t.parent.finallyBlock===t){l=4}break;case 271:l|=1;break;default:if(e.isIterationStatement(t,false)){l|=1|2}break}switch(t.kind){case 178:case 100:u|=a.UsesThis;break;case 233:{var p=t.label;(f||(f=[])).push(p.escapedText);e.forEachChild(t,visit);f.pop();break}case 229:case 228:{var p=t.label;if(p){if(!e.contains(f,p.escapedText)){(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractRangeContainingLabeledBreakOrContinueStatementWithTargetOutsideOfTheRange))}}else{if(!(l&(t.kind===229?1:2))){(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractRangeContainingConditionalBreakOrContinueStatements))}}break}case 201:u|=a.IsAsyncFunction;break;case 207:u|=a.IsGenerator;break;case 230:if(l&4){u|=a.HasReturn}else{(s||(s=[])).push(e.createDiagnosticForNode(t,i.cannotExtractRangeContainingConditionalReturnStatement))}break;default:e.forEachChild(t,visit);break}l=d}}}r.getRangeToExtract=getRangeToExtract;function getStatementOrExpressionRange(t){if(e.isStatement(t)){return[t]}else if(e.isExpressionNode(t)){return e.isExpressionStatement(t.parent)?[t.parent]:t}return undefined}function isScope(t){return e.isFunctionLikeDeclaration(t)||e.isSourceFile(t)||e.isModuleBlock(t)||e.isClassLike(t)}function collectEnclosingScopes(t){var r=isReadonlyArray(t.range)?e.first(t.range):t.range;if(t.facts&a.UsesThis){var n=e.getContainingClass(r);if(n){var i=e.findAncestor(r,e.isFunctionLikeDeclaration);return i?[i,n]:[n]}}var o=[];while(true){r=r.parent;if(r.kind===151){r=e.findAncestor(r,function(t){return e.isFunctionLikeDeclaration(t)}).parent}if(isScope(r)){o.push(r);if(r.kind===279){return o}}}}function getFunctionExtractionAtIndex(t,r,n){var i=getPossibleExtractionsWorker(t,r),a=i.scopes,o=i.readsAndWrites,s=o.target,c=o.usagesPerScope,u=o.functionErrorsPerScope,l=o.exposedVariableDeclarations;e.Debug.assert(!u[n].length,"The extraction went missing? How?");r.cancellationToken.throwIfCancellationRequested();return extractFunctionInScope(s,a[n],c[n],l,t,r)}function getConstantExtractionAtIndex(t,r,n){var i=getPossibleExtractionsWorker(t,r),a=i.scopes,o=i.readsAndWrites,s=o.target,c=o.usagesPerScope,u=o.constantErrorsPerScope,l=o.exposedVariableDeclarations;e.Debug.assert(!u[n].length,"The extraction went missing? How?");e.Debug.assert(l.length===0,"Extract constant accepted a range containing a variable declaration?");r.cancellationToken.throwIfCancellationRequested();var f=e.isExpression(s)?s:s.statements[0].expression;return extractConstantInScope(f,a[n],c[n],t.facts,r)}function getPossibleExtractions(t,r){var n=getPossibleExtractionsWorker(t,r),i=n.scopes,a=n.readsAndWrites,o=a.functionErrorsPerScope,s=a.constantErrorsPerScope;var c=i.map(function(t,r){var n=getDescriptionForFunctionInScope(t);var i=getDescriptionForConstantInScope(t);var a=e.isFunctionLikeDeclaration(t)?getDescriptionForFunctionLikeDeclaration(t):e.isClassLike(t)?getDescriptionForClassLikeDeclaration(t):getDescriptionForModuleLikeDeclaration(t);var c;var u;if(a===1){c=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[n,"global"]);u=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[i,"global"])}else if(a===0){c=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[n,"module"]);u=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1_scope),[i,"module"])}else{c=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[n,a]);u=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_1),[i,a])}if(r===0&&!e.isClassLike(t)){u=e.formatStringFromArgs(e.getLocaleSpecificMessage(e.Diagnostics.Extract_to_0_in_enclosing_scope),[i])}return{functionExtraction:{description:c,errors:o[r]},constantExtraction:{description:u,errors:s[r]}}});return c}function getPossibleExtractionsWorker(e,t){var r=t.file;var n=collectEnclosingScopes(e);var i=getEnclosingTextRange(e,r);var a=collectReadsAndWrites(e,n,i,r,t.program.getTypeChecker(),t.cancellationToken);return{scopes:n,readsAndWrites:a}}function getDescriptionForFunctionInScope(t){return e.isFunctionLikeDeclaration(t)?"inner function":e.isClassLike(t)?"method":"function"}function getDescriptionForConstantInScope(t){return e.isClassLike(t)?"readonly field":"constant"}function getDescriptionForFunctionLikeDeclaration(t){switch(t.kind){case 157:return"constructor";case 196:case 239:return t.name?"function '"+t.name.text+"'":"anonymous function";case 197:return"arrow function";case 156:return"method '"+t.name.getText()+"'";case 158:return"'get "+t.name.getText()+"'";case 159:return"'set "+t.name.getText()+"'";default:throw e.Debug.assertNever(t)}}function getDescriptionForClassLikeDeclaration(e){return e.kind===240?e.name?"class '"+e.name.text+"'":"anonymous class declaration":e.name?"class expression '"+e.name.text+"'":"anonymous class expression"}function getDescriptionForModuleLikeDeclaration(e){return e.kind===245?"namespace '"+e.parent.name.getText()+"'":e.externalModuleIndicator?0:1}var o;(function(e){e[e["Module"]=0]="Module";e[e["Global"]=1]="Global"})(o||(o={}));function extractFunctionInScope(t,r,n,i,o,s){var c=n.usages,u=n.typeParameterUsages,l=n.substitutions;var f=s.program.getTypeChecker();var d=r.getSourceFile();var p=e.getUniqueName(e.isClassLike(r)?"newMethod":"newFunction",d);var g=e.isInJSFile(r);var _=e.createIdentifier(p);var m;var y=[];var h=[];var v;c.forEach(function(t,n){var i;if(!g){var a=f.getTypeOfSymbolAtLocation(t.symbol,t.node);a=f.getBaseTypeOfLiteralType(a);i=f.typeToTypeNode(a,r,1)}var o=e.createParameter(undefined,undefined,undefined,n,undefined,i);y.push(o);if(t.usage===2){(v||(v=[])).push(t)}h.push(e.createIdentifier(n))});var T=e.arrayFrom(u.values()).map(function(e){return{type:e,declaration:getFirstDeclaration(e)}});var S=T.sort(compareTypesByDeclarationOrder);var b=S.length===0?undefined:S.map(function(e){return e.declaration});var x=b!==undefined?b.map(function(t){return e.createTypeReferenceNode(t.name,undefined)}):undefined;if(e.isExpression(t)&&!g){var C=f.getContextualType(t);m=f.typeToTypeNode(C,r,1)}var E=transformFunctionBody(t,i,v,l,!!(o.facts&a.HasReturn)),D=E.body,k=E.returnValueProperty;e.suppressLeadingAndTrailingTrivia(D);var N;if(e.isClassLike(r)){var A=g?[]:[e.createToken(113)];if(o.facts&a.InStaticRegion){A.push(e.createToken(116))}if(o.facts&a.IsAsyncFunction){A.push(e.createToken(121))}N=e.createMethod(undefined,A.length?A:undefined,o.facts&a.IsGenerator?e.createToken(40):undefined,_,undefined,b,y,m,D)}else{N=e.createFunctionDeclaration(undefined,o.facts&a.IsAsyncFunction?[e.createToken(121)]:undefined,o.facts&a.IsGenerator?e.createToken(40):undefined,_,b,y,m,D)}var O=e.textChanges.ChangeTracker.fromContext(s);var F=(isReadonlyArray(o.range)?e.last(o.range):o.range).end;var P=getNodeToInsertFunctionBefore(F,r);if(P){O.insertNodeBefore(s.file,P,N,true)}else{O.insertNodeAtEndOfScope(s.file,r,N)}var I=[];var w=getCalledExpression(r,o,p);var M=e.createCall(w,x,h);if(o.facts&a.IsGenerator){M=e.createYield(e.createToken(40),M)}if(o.facts&a.IsAsyncFunction){M=e.createAwait(M)}if(i.length&&!v){e.Debug.assert(!k);e.Debug.assert(!(o.facts&a.HasReturn));if(i.length===1){var L=i[0];I.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.getSynthesizedDeepClone(L.name),e.getSynthesizedDeepClone(L.type),M)],L.parent.flags)))}else{var R=[];var B=[];var j=i[0].parent.flags;var J=false;for(var W=0,U=i;W<U.length;W++){var L=U[W];R.push(e.createBindingElement(undefined,undefined,e.getSynthesizedDeepClone(L.name)));var z=f.typeToTypeNode(f.getBaseTypeOfLiteralType(f.getTypeAtLocation(L)),r,1);B.push(e.createPropertySignature(undefined,L.symbol.name,undefined,z,undefined));J=J||L.type!==undefined;j=j&L.parent.flags}var V=J?e.createTypeLiteralNode(B):undefined;if(V){e.setEmitFlags(V,1)}I.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(e.createObjectBindingPattern(R),V,M)],j)))}}else if(i.length||v){if(i.length){for(var K=0,q=i;K<q.length;K++){var L=q[K];var G=L.parent.flags;if(G&2){G=G&~2|1}I.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(L.symbol.name,getTypeDeepCloneUnionUndefined(L.type))],G)))}}if(k){I.push(e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(k,getTypeDeepCloneUnionUndefined(m))],1)))}var H=getPropertyAssignmentsForWritesAndVariableDeclarations(i,v);if(k){H.unshift(e.createShorthandPropertyAssignment(k))}if(H.length===1){e.Debug.assert(!k);I.push(e.createStatement(e.createAssignment(H[0].name,M)));if(o.facts&a.HasReturn){I.push(e.createReturn())}}else{I.push(e.createStatement(e.createAssignment(e.createObjectLiteral(H),M)));if(k){I.push(e.createReturn(e.createIdentifier(k)))}}}else{if(o.facts&a.HasReturn){I.push(e.createReturn(M))}else if(isReadonlyArray(o.range)){I.push(e.createStatement(M))}else{I.push(M)}}if(isReadonlyArray(o.range)){O.replaceNodeRangeWithNodes(s.file,e.first(o.range),e.last(o.range),I)}else{O.replaceNodeWithNodes(s.file,o.range,I)}var Q=O.getChanges();var $=isReadonlyArray(o.range)?e.first(o.range):o.range;var X=$.getSourceFile().fileName;var Y=e.getRenameLocation(Q,X,p,false);return{renameFilename:X,renameLocation:Y,edits:Q};function getTypeDeepCloneUnionUndefined(t){if(t===undefined){return undefined}var r=e.getSynthesizedDeepClone(t);var n=r;while(e.isParenthesizedTypeNode(n)){n=n.type}return e.isUnionTypeNode(n)&&e.find(n.types,function(e){return e.kind===141})?r:e.createUnionTypeNode([r,e.createKeywordTypeNode(141)])}}function extractConstantInScope(t,r,n,i,o){var s=n.substitutions;var c=o.program.getTypeChecker();var u=r.getSourceFile();var l=e.getUniqueName(e.isClassLike(r)?"newProperty":"newLocal",u);var f=e.isInJSFile(r);var d=f||!c.isContextSensitive(t)?undefined:c.typeToTypeNode(c.getContextualType(t),r,1);var p=transformConstantInitializer(t,s);e.suppressLeadingAndTrailingTrivia(p);var g=e.textChanges.ChangeTracker.fromContext(o);if(e.isClassLike(r)){e.Debug.assert(!f);var _=[];_.push(e.createToken(113));if(i&a.InStaticRegion){_.push(e.createToken(116))}_.push(e.createToken(133));var m=e.createProperty(undefined,_,l,undefined,d,p);var y=e.createPropertyAccess(i&a.InStaticRegion?e.createIdentifier(r.name.getText()):e.createThis(),e.createIdentifier(l));var h=t.pos;var v=getNodeToInsertPropertyBefore(h,r);g.insertNodeBefore(o.file,v,m,true);g.replaceNode(o.file,t,y)}else{var T=e.createVariableDeclaration(l,d,p);var S=getContainingVariableDeclarationIfInList(t,r);if(S){g.insertNodeBefore(o.file,S,T);var y=e.createIdentifier(l);g.replaceNode(o.file,t,y)}else if(t.parent.kind===221&&r===e.findAncestor(t,isScope)){var b=e.createVariableStatement(undefined,e.createVariableDeclarationList([T],2));g.replaceNode(o.file,t.parent,b)}else{var b=e.createVariableStatement(undefined,e.createVariableDeclarationList([T],2));var v=getNodeToInsertConstantBefore(t,r);if(v.pos===0){g.insertNodeAtTopOfFile(o.file,b,false)}else{g.insertNodeBefore(o.file,v,b,false)}if(t.parent.kind===221){g.delete(o.file,t.parent)}else{var y=e.createIdentifier(l);g.replaceNode(o.file,t,y)}}}var x=g.getChanges();var C=t.getSourceFile().fileName;var E=e.getRenameLocation(x,C,l,true);return{renameFilename:C,renameLocation:E,edits:x}}function getContainingVariableDeclarationIfInList(t,r){var n;while(t!==undefined&&t!==r){if(e.isVariableDeclaration(t)&&t.initializer===n&&e.isVariableDeclarationList(t.parent)&&t.parent.declarations.length>1){return t}n=t;t=t.parent}}function getFirstDeclaration(e){var t;var r=e.symbol;if(r&&r.declarations){for(var n=0,i=r.declarations;n<i.length;n++){var a=i[n];if(t===undefined||a.pos<t.pos){t=a}}}return t}function compareTypesByDeclarationOrder(t,r){var n=t.type,i=t.declaration;var a=r.type,o=r.declaration;return e.compareProperties(i,o,"pos",e.compareValues)||e.compareStringsCaseSensitive(n.symbol?n.symbol.getName():"",a.symbol?a.symbol.getName():"")||e.compareValues(n.id,a.id)}function getCalledExpression(t,r,n){var i=e.createIdentifier(n);if(e.isClassLike(t)){var o=r.facts&a.InStaticRegion?e.createIdentifier(t.name.text):e.createThis();return e.createPropertyAccess(o,i)}else{return i}}function transformFunctionBody(t,r,n,i,a){var o=n!==undefined||r.length>0;if(e.isBlock(t)&&!o&&i.size===0){return{body:e.createBlock(t.statements,true),returnValueProperty:undefined}}var s;var c=false;var u=e.createNodeArray(e.isBlock(t)?t.statements.slice(0):[e.isStatement(t)?t:e.createReturn(t)]);if(o||i.size){var l=e.visitNodes(u,visitor).slice();if(o&&!a&&e.isStatement(t)){var f=getPropertyAssignmentsForWritesAndVariableDeclarations(r,n);if(f.length===1){l.push(e.createReturn(f[0].name))}else{l.push(e.createReturn(e.createObjectLiteral(f)))}}return{body:e.createBlock(l,true),returnValueProperty:s}}else{return{body:e.createBlock(u,true),returnValueProperty:undefined}}function visitor(t){if(!c&&t.kind===230&&o){var a=getPropertyAssignmentsForWritesAndVariableDeclarations(r,n);if(t.expression){if(!s){s="__return"}a.unshift(e.createPropertyAssignment(s,e.visitNode(t.expression,visitor)))}if(a.length===1){return e.createReturn(a[0].name)}else{return e.createReturn(e.createObjectLiteral(a))}}else{var u=c;c=c||e.isFunctionLikeDeclaration(t)||e.isClassLike(t);var l=i.get(e.getNodeId(t).toString());var f=l?e.getSynthesizedDeepClone(l):e.visitEachChild(t,visitor,e.nullTransformationContext);c=u;return f}}}function transformConstantInitializer(t,r){return r.size?visitor(t):t;function visitor(t){var n=r.get(e.getNodeId(t).toString());return n?e.getSynthesizedDeepClone(n):e.visitEachChild(t,visitor,e.nullTransformationContext)}}function getStatementsOrClassElements(t){if(e.isFunctionLikeDeclaration(t)){var r=t.body;if(e.isBlock(r)){return r.statements}}else if(e.isModuleBlock(t)||e.isSourceFile(t)){return t.statements}else if(e.isClassLike(t)){return t.members}else{e.assertType(t)}return e.emptyArray}function getNodeToInsertFunctionBefore(t,r){return e.find(getStatementsOrClassElements(r),function(r){return r.pos>=t&&e.isFunctionLikeDeclaration(r)&&!e.isConstructorDeclaration(r)})}function getNodeToInsertPropertyBefore(t,r){var n=r.members;e.Debug.assert(n.length>0);var i;var a=true;for(var o=0,s=n;o<s.length;o++){var c=s[o];if(c.pos>t){return i||n[0]}if(a&&!e.isPropertyDeclaration(c)){if(i!==undefined){return c}a=false}i=c}if(i===undefined)return e.Debug.fail();return i}function getNodeToInsertConstantBefore(t,r){e.Debug.assert(!e.isClassLike(r));var n;for(var i=t;i!==r;i=i.parent){if(isScope(i)){n=i}}for(var i=(n||t).parent;;i=i.parent){if(isBlockLike(i)){var a=void 0;for(var o=0,s=i.statements;o<s.length;o++){var c=s[o];if(c.pos>t.pos){break}a=c}if(!a&&e.isCaseClause(i)){e.Debug.assert(e.isSwitchStatement(i.parent.parent));return i.parent.parent}return e.Debug.assertDefined(a)}e.Debug.assert(i!==r,"Didn't encounter a block-like before encountering scope")}}function getPropertyAssignmentsForWritesAndVariableDeclarations(t,r){var n=e.map(t,function(t){return e.createShorthandPropertyAssignment(t.symbol.name)});var i=e.map(r,function(t){return e.createShorthandPropertyAssignment(t.symbol.name)});return n===undefined?i:i===undefined?n:n.concat(i)}function isReadonlyArray(t){return e.isArray(t)}function getEnclosingTextRange(t,r){return isReadonlyArray(t.range)?{pos:e.first(t.range).getStart(r),end:e.last(t.range).getEnd()}:t.range}var s;(function(e){e[e["Read"]=1]="Read";e[e["Write"]=2]="Write"})(s||(s={}));function collectReadsAndWrites(t,r,n,o,s,c){var u=e.createMap();var l=[];var f=[];var d=[];var p=[];var g=[];var _=e.createMap();var m=[];var y;var h=!isReadonlyArray(t.range)?t.range:t.range.length===1&&e.isExpressionStatement(t.range[0])?t.range[0].expression:undefined;var v;if(h===undefined){var T=t.range;var S=e.first(T).getStart();var b=e.last(T).end;v=e.createFileDiagnostic(o,S,b-S,i.expressionExpected)}else if(s.getTypeAtLocation(h).flags&(16384|131072)){v=e.createDiagnosticForNode(h,i.uselessConstantType)}for(var x=0,C=r;x<C.length;x++){var E=C[x];l.push({usages:e.createMap(),typeParameterUsages:e.createMap(),substitutions:e.createMap()});f.push(e.createMap());d.push(e.isFunctionLikeDeclaration(E)&&E.kind!==239?[e.createDiagnosticForNode(E,i.cannotExtractToOtherFunctionLike)]:[]);var D=[];if(v){D.push(v)}if(e.isClassLike(E)&&e.isInJSFile(E)){D.push(e.createDiagnosticForNode(E,i.cannotExtractToJSClass))}if(e.isArrowFunction(E)&&!e.isBlock(E.body)){D.push(e.createDiagnosticForNode(E,i.cannotExtractToExpressionArrowFunction))}p.push(D)}var k=e.createMap();var N=isReadonlyArray(t.range)?e.createBlock(t.range):t.range;var A=isReadonlyArray(t.range)?e.first(t.range):t.range;var O=isInGenericContext(A);collectUsages(N);if(O&&!isReadonlyArray(t.range)){var F=s.getContextualType(t.range);recordTypeParameterUsages(F)}if(u.size>0){var P=e.createMap();var I=0;for(var w=A;w!==undefined&&I<r.length;w=w.parent){if(w===r[I]){P.forEach(function(e,t){l[I].typeParameterUsages.set(t,e)});I++}if(e.isDeclarationWithTypeParameters(w)){for(var M=0,L=e.getEffectiveTypeParameterDeclarations(w);M<L.length;M++){var R=L[M];var B=s.getTypeAtLocation(R);if(u.has(B.id.toString())){P.set(B.id.toString(),B)}}}}e.Debug.assert(I===r.length)}if(g.length){var j=e.isBlockScope(r[0],r[0].parent)?r[0]:e.getEnclosingBlockScopeContainer(r[0]);e.forEachChild(j,checkForUsedDeclarations)}var J=function(r){var n=l[r];if(r>0&&(n.usages.size>0||n.typeParameterUsages.size>0)){var a=isReadonlyArray(t.range)?t.range[0]:t.range;p[r].push(e.createDiagnosticForNode(a,i.cannotAccessVariablesFromNestedScopes))}var o=false;var s;l[r].usages.forEach(function(t){if(t.usage===2){o=true;if(t.symbol.flags&106500&&t.symbol.valueDeclaration&&e.hasModifier(t.symbol.valueDeclaration,64)){s=t.symbol.valueDeclaration}}});e.Debug.assert(isReadonlyArray(t.range)||m.length===0);if(o&&!isReadonlyArray(t.range)){var c=e.createDiagnosticForNode(t.range,i.cannotWriteInExpression);d[r].push(c);p[r].push(c)}else if(s&&r>0){var c=e.createDiagnosticForNode(s,i.cannotExtractReadonlyPropertyInitializerOutsideConstructor);d[r].push(c);p[r].push(c)}else if(y){var c=e.createDiagnosticForNode(y,i.cannotExtractExportedEntity);d[r].push(c);p[r].push(c)}};for(var W=0;W<r.length;W++){J(W)}return{target:N,usagesPerScope:l,functionErrorsPerScope:d,constantErrorsPerScope:p,exposedVariableDeclarations:m};function isInGenericContext(t){return!!e.findAncestor(t,function(t){return e.isDeclarationWithTypeParameters(t)&&e.getEffectiveTypeParameterDeclarations(t).length!==0})}function recordTypeParameterUsages(e){var t=s.getSymbolWalker(function(){return c.throwIfCancellationRequested(),true});var r=t.walkType(e).visitedTypes;for(var n=0,i=r;n<i.length;n++){var a=i[n];if(a.isTypeParameter()){u.set(a.id.toString(),a)}}}function collectUsages(t,r){if(r===void 0){r=1}if(O){var n=s.getTypeAtLocation(t);recordTypeParameterUsages(n)}if(e.isDeclaration(t)&&t.symbol){g.push(t)}if(e.isAssignmentExpression(t)){collectUsages(t.left,2);collectUsages(t.right)}else if(e.isUnaryExpressionWithWrite(t)){collectUsages(t.operand,2)}else if(e.isPropertyAccessExpression(t)||e.isElementAccessExpression(t)){e.forEachChild(t,collectUsages)}else if(e.isIdentifier(t)){if(!t.parent){return}if(e.isQualifiedName(t.parent)&&t!==t.parent.left){return}if(e.isPropertyAccessExpression(t.parent)&&t!==t.parent.expression){return}recordUsage(t,r,e.isPartOfTypeNode(t))}else{e.forEachChild(t,collectUsages)}}function recordUsage(t,n,i){var a=recordUsagebySymbol(t,n,i);if(a){for(var o=0;o<r.length;o++){var s=f[o].get(a);if(s){l[o].substitutions.set(e.getNodeId(t).toString(),s)}}}}function recordUsagebySymbol(c,u,g){var _=getSymbolReferencedByIdentifier(c);if(!_){return undefined}var m=e.getSymbolId(_).toString();var y=k.get(m);if(y&&y>=u){return m}k.set(m,u);if(y){for(var h=0,v=l;h<v.length;h++){var T=v[h];var S=T.usages.get(c.text);if(S){T.usages.set(c.text,{usage:u,symbol:_,node:c})}}return m}var b=_.getDeclarations();var x=b&&e.find(b,function(e){return e.getSourceFile()===o});if(!x){return undefined}if(e.rangeContainsStartEnd(n,x.getStart(),x.end)){return undefined}if(t.facts&a.IsGenerator&&u===2){var C=e.createDiagnosticForNode(c,i.cannotExtractRangeThatContainsWritesToReferencesLocatedOutsideOfTheTargetRangeInGenerators);for(var E=0,D=d;E<D.length;E++){var N=D[E];N.push(C)}for(var A=0,O=p;A<O.length;A++){var N=O[A];N.push(C)}}for(var F=0;F<r.length;F++){var P=r[F];var I=s.resolveName(_.name,P,_.flags,false);if(I===_){continue}if(!f[F].has(m)){var w=tryReplaceWithQualifiedNameOrPropertyAccess(_.exportSymbol||_,P,g);if(w){f[F].set(m,w)}else if(g){if(!(_.flags&262144)){var C=e.createDiagnosticForNode(c,i.typeWillNotBeVisibleInTheNewScope);d[F].push(C);p[F].push(C)}}else{l[F].usages.set(c.text,{usage:u,symbol:_,node:c})}}}return m}function checkForUsedDeclarations(r){if(r===t.range||isReadonlyArray(t.range)&&t.range.indexOf(r)>=0){return}var n=e.isIdentifier(r)?getSymbolReferencedByIdentifier(r):s.getSymbolAtLocation(r);if(n){var i=e.find(g,function(e){return e.symbol===n});if(i){if(e.isVariableDeclaration(i)){var a=i.symbol.id.toString();if(!_.has(a)){m.push(i);_.set(a,true)}}else{y=y||i}}}e.forEachChild(r,checkForUsedDeclarations)}function getSymbolReferencedByIdentifier(t){return t.parent&&e.isShorthandPropertyAssignment(t.parent)&&t.parent.name===t?s.getShorthandAssignmentValueSymbol(t.parent):s.getSymbolAtLocation(t)}function tryReplaceWithQualifiedNameOrPropertyAccess(t,r,n){if(!t){return undefined}var i=t.getDeclarations();if(i&&i.some(function(e){return e.parent===r})){return e.createIdentifier(t.name)}var a=tryReplaceWithQualifiedNameOrPropertyAccess(t.parent,r,n);if(a===undefined){return undefined}return n?e.createQualifiedName(a,e.createIdentifier(t.name)):e.createPropertyAccess(a,t.name)}}function isExtractableExpression(e){var t=e.parent;switch(t.kind){case 278:return false}switch(e.kind){case 10:return t.kind!==249&&t.kind!==253;case 208:case 184:case 186:return false;case 72:return t.kind!==186&&t.kind!==253&&t.kind!==257}return true}function isBlockLike(e){switch(e.kind){case 218:case 279:case 245:case 271:return true;default:return false}}})(r=t.extractSymbol||(t.extractSymbol={}))})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(r){var n="Generate 'get' and 'set' accessors";var i=e.Diagnostics.Generate_get_and_set_accessors.message;t.registerRefactor(n,{getEditsForAction:getEditsForAction,getAvailableActions:getAvailableActions});function getAvailableActions(t){if(!getConvertibleFieldAtPosition(t))return e.emptyArray;return[{name:n,description:i,actions:[{name:n,description:i}]}]}function getEditsForAction(t,r){var n=t.file;var i=getConvertibleFieldAtPosition(t);if(!i)return undefined;var a=e.isSourceFileJS(n);var o=e.textChanges.ChangeTracker.fromContext(t);var s=i.isStatic,c=i.isReadonly,u=i.fieldName,l=i.accessorName,f=i.originalName,d=i.type,p=i.container,g=i.declaration,_=i.renameAccessor;e.suppressLeadingAndTrailingTrivia(u);e.suppressLeadingAndTrailingTrivia(g);e.suppressLeadingAndTrailingTrivia(p);var m=e.isClassLike(p);var y=e.getModifierFlags(g)&~64;var h=m?!y||y&8?getModifiers(a,s,115):e.createNodeArray(e.createModifiersFromModifierFlags(y)):undefined;var v=m?getModifiers(a,s,113):undefined;updateFieldDeclaration(o,n,g,u,v);var T=generateGetAccessor(u,l,d,h,s,p);e.suppressLeadingAndTrailingTrivia(T);insertAccessor(o,n,T,g,p);if(c){var S=e.getFirstConstructorWithBody(p);if(S){updateReadonlyPropertyInitializerStatementConstructor(o,n,S,u.text,f)}}else{var b=generateSetAccessor(u,l,d,h,s,p);e.suppressLeadingAndTrailingTrivia(b);insertAccessor(o,n,b,g,p)}var x=o.getChanges();var C=n.fileName;var E=_?l:u;var D=e.isIdentifier(E)?0:-1;var k=D+e.getRenameLocation(x,C,E.text,e.isParameter(g));return{renameFilename:C,renameLocation:k,edits:x}}function isConvertibleName(t){return e.isIdentifier(t)||e.isStringLiteral(t)}function isAcceptedDeclaration(t){return e.isParameterPropertyDeclaration(t)||e.isPropertyDeclaration(t)||e.isPropertyAssignment(t)}function createPropertyName(t,r){return e.isIdentifier(r)?e.createIdentifier(t):e.createLiteral(t)}function createAccessorAccessExpression(t,r,n){var i=r?n.name:e.createThis();return e.isIdentifier(t)?e.createPropertyAccess(i,t):e.createElementAccess(i,e.createLiteral(t))}function getModifiers(t,r,n){var i=e.append(!t?[e.createToken(n)]:undefined,r?e.createToken(116):undefined);return i&&e.createNodeArray(i)}function startsWithUnderscore(e){return e.charCodeAt(0)===95}function getConvertibleFieldAtPosition(t){var r=t.file,n=t.startPosition,i=t.endPosition;var a=e.getTokenAtPosition(r,n);var o=e.findAncestor(a.parent,isAcceptedDeclaration);var s=28|32|64;if(!o||!e.nodeOverlapsWithStartEnd(o.name,r,n,i)||!isConvertibleName(o.name)||(e.getModifierFlags(o)|s)!==s)return undefined;var c=o.name.text;var u=startsWithUnderscore(c);var l=createPropertyName(u?c:e.getUniqueName("_"+c,r),o.name);var f=createPropertyName(u?e.getUniqueName(c.substring(1),r):c,o.name);return{isStatic:e.hasStaticModifier(o),isReadonly:e.hasReadonlyModifier(o),type:e.getTypeAnnotationNode(o),container:o.kind===151?o.parent.parent:o.parent,originalName:o.name.text,declaration:o,fieldName:l,accessorName:f,renameAccessor:u}}function generateGetAccessor(t,r,n,i,a,o){return e.createGetAccessor(undefined,i,r,undefined,n,e.createBlock([e.createReturn(createAccessorAccessExpression(t,a,o))],true))}function generateSetAccessor(t,r,n,i,a,o){return e.createSetAccessor(undefined,i,r,[e.createParameter(undefined,undefined,undefined,e.createIdentifier("value"),undefined,n)],e.createBlock([e.createStatement(e.createAssignment(createAccessorAccessExpression(t,a,o),e.createIdentifier("value")))],true))}function updatePropertyDeclaration(t,r,n,i,a){var o=e.updateProperty(n,n.decorators,a,i,n.questionToken||n.exclamationToken,n.type,n.initializer);t.replaceNode(r,n,o)}function updatePropertyAssignmentDeclaration(t,r,n,i){var a=e.updatePropertyAssignment(n,i,n.initializer);t.replacePropertyAssignment(r,n,a)}function updateFieldDeclaration(t,r,n,i,a){if(e.isPropertyDeclaration(n)){updatePropertyDeclaration(t,r,n,i,a)}else if(e.isPropertyAssignment(n)){updatePropertyAssignmentDeclaration(t,r,n,i)}else{t.replaceNode(r,n,e.updateParameter(n,n.decorators,a,n.dotDotDotToken,e.cast(i,e.isIdentifier),n.questionToken,n.type,n.initializer))}}function insertAccessor(t,r,n,i,a){e.isParameterPropertyDeclaration(i)?t.insertNodeAtClassStart(r,a,n):e.isPropertyAssignment(i)?t.insertNodeAfterComma(r,i,n):t.insertNodeAfter(r,i,n)}function updateReadonlyPropertyInitializerStatementConstructor(t,r,n,i,a){if(!n.body)return;n.body.forEachChild(function recur(n){if(e.isElementAccessExpression(n)&&n.expression.kind===100&&e.isStringLiteral(n.argumentExpression)&&n.argumentExpression.text===a&&e.isWriteAccess(n)){t.replaceNode(r,n.argumentExpression,e.createStringLiteral(i))}if(e.isPropertyAccessExpression(n)&&n.expression.kind===100&&n.name.text===a&&e.isWriteAccess(n)){t.replaceNode(r,n.name,e.createIdentifier(i))}if(!e.isFunctionLike(n)&&!e.isClassLike(n)){n.forEachChild(recur)}})}})(r=t.generateGetAccessorAndSetAccessor||(t.generateGetAccessorAndSetAccessor={}))})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r="Move to a new file";t.registerRefactor(r,{getAvailableActions:function(t){if(!t.preferences.allowTextChangesInNewFiles||getStatementsToMove(t)===undefined)return e.emptyArray;var n=e.getLocaleSpecificMessage(e.Diagnostics.Move_to_a_new_file);return[{name:r,description:n,actions:[{name:r,description:n}]}]},getEditsForAction:function(t,n){e.Debug.assert(n===r);var i=e.Debug.assertDefined(getStatementsToMove(t));var a=e.textChanges.ChangeTracker.with(t,function(e){return doChange(t.file,t.program,i,e,t.host,t.preferences)});return{edits:a,renameFilename:undefined,renameLocation:undefined}}});function getRangeToMove(t){var r=t.file;var n=e.createTextRangeFromSpan(e.getRefactorContextSpan(t));var i=r.statements;var a=e.findIndex(i,function(e){return e.end>n.pos});if(a===-1)return undefined;var o=i[a];if(e.isNamedDeclaration(o)&&o.name&&e.rangeContainsRange(o.name,n)){return{toMove:[i[a]],afterLast:i[a+1]}}if(n.pos>o.getStart(r))return undefined;var s=e.findIndex(i,function(e){return e.end>n.end},a);if(s!==-1&&(s===0||i[s].getStart(r)<n.end))return undefined;return{toMove:i.slice(a,s===-1?i.length:s),afterLast:s===-1?undefined:i[s]}}function doChange(t,r,n,i,a,o){var s=r.getTypeChecker();var c=getUsageInfo(t,n.all,s);var u=e.getDirectoryPath(t.fileName);var l=e.extensionFromPath(t.fileName);var f=makeUniqueModuleName(getNewModuleName(c.movedSymbols),l,u,a);var d=f+l;i.createNewFile(t,e.combinePaths(u,d),getNewStatementsAndRemoveFromOldFile(t,c,i,n,r,f,o));addNewFileToTsconfig(r,i,t.fileName,d,e.hostGetCanonicalFileName(a))}function getStatementsToMove(t){var r=getRangeToMove(t);if(r===undefined)return undefined;var n=[];var i=[];var a=r.toMove,o=r.afterLast;e.getRangesWhere(a,function(e){return!isPureImport(e)},function(e,t){for(var r=e;r<t;r++)n.push(a[r]);i.push({first:a[e],afterLast:o})});return n.length===0?undefined:{all:n,ranges:i}}function isPureImport(t){switch(t.kind){case 249:return true;case 248:return!e.hasModifier(t,1);case 219:return t.declarationList.declarations.every(function(t){return!!t.initializer&&e.isRequireCall(t.initializer,true)});default:return false}}function addNewFileToTsconfig(t,r,n,i,a){var o=t.getCompilerOptions().configFile;if(!o)return;var s=e.normalizePath(e.combinePaths(n,"..",i));var c=e.getRelativePathFromFile(o.fileName,s,a);var u=o.statements[0]&&e.tryCast(o.statements[0].expression,e.isObjectLiteralExpression);var l=u&&e.find(u.properties,function(t){return e.isPropertyAssignment(t)&&e.isStringLiteral(t.name)&&t.name.text==="files"});if(l&&e.isArrayLiteralExpression(l.initializer)){r.insertNodeInListAfter(o,e.last(l.initializer.elements),e.createLiteral(c),l.initializer.elements)}}function getNewStatementsAndRemoveFromOldFile(t,r,n,i,a,o,s){var c=a.getTypeChecker();if(!t.externalModuleIndicator&&!t.commonJsModuleIndicator){deleteMovedStatements(t,i.ranges,n);return i.all}var u=!!t.externalModuleIndicator;var l=e.getQuotePreference(t,s);var f=createOldFileImportsFromNewFile(r.oldFileImportsFromNewFile,o,u,l);if(f){e.insertImport(n,t,f)}deleteUnusedOldImports(t,i.all,n,r.unusedImportsFromOldFile,c);deleteMovedStatements(t,i.ranges,n);updateImportsInOtherFiles(n,a,t,r.movedSymbols,o);return getNewFileImportsAndAddExportInOldFile(t,r.oldImportsNeededByNewFile,r.newFileImportsFromOldFile,n,c,u,l).concat(addExports(t,i.all,r.oldFileImportsFromNewFile,u))}function deleteMovedStatements(e,t,r){for(var n=0,i=t;n<i.length;n++){var a=i[n],o=a.first,s=a.afterLast;r.deleteNodeRangeExcludingEnd(e,o,s)}}function deleteUnusedOldImports(t,r,n,i,a){for(var o=0,s=t.statements;o<s.length;o++){var c=s[o];if(e.contains(r,c))continue;forEachImportInStatement(c,function(e){return deleteUnusedImports(t,e,n,function(e){return i.has(a.getSymbolAtLocation(e))})})}}function updateImportsInOtherFiles(t,r,n,i,a){var o=r.getTypeChecker();var s=function(r){if(r===n)return"continue";var s=function(s){forEachImportInStatement(s,function(c){if(o.getSymbolAtLocation(moduleSpecifierFromImport(c))!==n.symbol)return;var u=function(t){var r=e.isBindingElement(t.parent)?e.getPropertySymbolFromBindingElement(o,t.parent):e.skipAlias(o.getSymbolAtLocation(t),o);return!!r&&i.has(r)};deleteUnusedImports(r,c,t,u);var l=e.combinePaths(e.getDirectoryPath(moduleSpecifierFromImport(c).text),a);var f=filterImport(c,e.createLiteral(l),u);if(f)t.insertNodeAfter(r,s,f);var d=getNamespaceLikeImport(c);if(d)updateNamespaceLikeImport(t,r,o,i,a,l,d,c)})};for(var c=0,u=r.statements;c<u.length;c++){var l=u[c];s(l)}};for(var c=0,u=r.getSourceFiles();c<u.length;c++){var l=u[c];s(l)}}function getNamespaceLikeImport(t){switch(t.kind){case 249:return t.importClause&&t.importClause.namedBindings&&t.importClause.namedBindings.kind===251?t.importClause.namedBindings.name:undefined;case 248:return t.name;case 237:return e.tryCast(t.name,e.isIdentifier);default:return e.Debug.assertNever(t)}}function updateNamespaceLikeImport(t,r,n,i,a,o,s,c){var u=e.codefix.moduleSpecifierToValidIdentifier(a,6);var l=false;var f=[];e.FindAllReferences.Core.eachSymbolReferenceInFile(s,n,r,function(t){if(!e.isPropertyAccessExpression(t.parent))return;l=l||!!n.resolveName(u,t,67108863,true);if(i.has(n.getSymbolAtLocation(t.parent.name))){f.push(t)}});if(f.length){var d=l?e.getUniqueName(u,r):u;for(var p=0,g=f;p<g.length;p++){var _=g[p];t.replaceNode(r,_,e.createIdentifier(d))}t.insertNodeAfter(r,c,updateNamespaceLikeImportNode(c,a,o))}}function updateNamespaceLikeImportNode(t,r,n){var i=e.createIdentifier(r);var a=e.createLiteral(n);switch(t.kind){case 249:return e.createImportDeclaration(undefined,undefined,e.createImportClause(undefined,e.createNamespaceImport(i)),a);case 248:return e.createImportEqualsDeclaration(undefined,undefined,i,e.createExternalModuleReference(a));case 237:return e.createVariableDeclaration(i,undefined,createRequireCall(a));default:return e.Debug.assertNever(t)}}function moduleSpecifierFromImport(e){return e.kind===249?e.moduleSpecifier:e.kind===248?e.moduleReference.expression:e.initializer.arguments[0]}function forEachImportInStatement(t,r){if(e.isImportDeclaration(t)){if(e.isStringLiteral(t.moduleSpecifier))r(t)}else if(e.isImportEqualsDeclaration(t)){if(e.isExternalModuleReference(t.moduleReference)&&e.isStringLiteralLike(t.moduleReference.expression)){r(t)}}else if(e.isVariableStatement(t)){for(var n=0,i=t.declarationList.declarations;n<i.length;n++){var a=i[n];if(a.initializer&&e.isRequireCall(a.initializer,true)){r(a)}}}}function createOldFileImportsFromNewFile(t,r,n,i){var a;var o=[];t.forEach(function(t){if(t.escapedName==="default"){a=e.createIdentifier(e.symbolNameNoDefault(t))}else{o.push(t.name)}});return makeImportOrRequire(a,o,r,n,i)}function makeImportOrRequire(t,r,n,i,a){n=e.ensurePathIsNonModuleName(n);if(i){var o=r.map(function(t){return e.createImportSpecifier(undefined,e.createIdentifier(t))});return e.makeImportIfNecessary(t,o,n,a)}else{e.Debug.assert(!t);var s=r.map(function(t){return e.createBindingElement(undefined,undefined,t)});return s.length?makeVariableStatement(e.createObjectBindingPattern(s),undefined,createRequireCall(e.createLiteral(n))):undefined}}function makeVariableStatement(t,r,n,i){if(i===void 0){i=2}return e.createVariableStatement(undefined,e.createVariableDeclarationList([e.createVariableDeclaration(t,r,n)],i))}function createRequireCall(t){return e.createCall(e.createIdentifier("require"),undefined,[t])}function addExports(t,r,n,i){return e.flatMap(r,function(r){if(isTopLevelDeclarationStatement(r)&&!isExported(t,r,i)&&forEachTopLevelDeclaration(r,function(t){return n.has(e.Debug.assertDefined(t.symbol))})){var a=addExport(r,i);if(a)return a}return r})}function deleteUnusedImports(t,r,n,i){switch(r.kind){case 249:deleteUnusedImportsInDeclaration(t,r,n,i);break;case 248:if(i(r.name)){n.delete(t,r)}break;case 237:deleteUnusedImportsInVariableDeclaration(t,r,n,i);break;default:e.Debug.assertNever(r)}}function deleteUnusedImportsInDeclaration(e,t,r,n){if(!t.importClause)return;var i=t.importClause,a=i.name,o=i.namedBindings;var s=!a||n(a);var c=!o||(o.kind===251?n(o.name):o.elements.length!==0&&o.elements.every(function(e){return n(e.name)}));if(s&&c){r.delete(e,t)}else{if(a&&s){r.delete(e,a)}if(o){if(c){r.delete(e,o)}else if(o.kind===252){for(var u=0,l=o.elements;u<l.length;u++){var f=l[u];if(n(f.name))r.delete(e,f)}}}}}function deleteUnusedImportsInVariableDeclaration(t,r,n,i){var a=r.name;switch(a.kind){case 72:if(i(a)){n.delete(t,a)}break;case 185:break;case 184:if(a.elements.every(function(t){return e.isIdentifier(t.name)&&i(t.name)})){n.delete(t,e.isVariableDeclarationList(r.parent)&&r.parent.declarations.length===1?r.parent.parent:r)}else{for(var o=0,s=a.elements;o<s.length;o++){var c=s[o];if(e.isIdentifier(c.name)&&i(c.name)){n.delete(t,c.name)}}}break}}function getNewFileImportsAndAddExportInOldFile(t,r,n,i,a,o,s){var c=[];for(var u=0,l=t.statements;u<l.length;u++){var f=l[u];forEachImportInStatement(f,function(t){e.append(c,filterImport(t,moduleSpecifierFromImport(t),function(e){return r.has(a.getSymbolAtLocation(e))}))})}var d;var p=[];var g=e.nodeSeenTracker();n.forEach(function(r){for(var n=0,a=r.declarations;n<a.length;n++){var s=a[n];if(!isTopLevelDeclaration(s))continue;var c=nameOfTopLevelDeclaration(s);if(!c)continue;var u=getTopLevelDeclarationStatement(s);if(g(u)){addExportToChanges(t,u,i,o)}if(e.hasModifier(s,512)){d=c}else{p.push(c.text)}}});e.append(c,makeImportOrRequire(d,p,e.removeFileExtension(e.getBaseFileName(t.fileName)),o,s));return c}function makeUniqueModuleName(t,r,n,i){var a=t;for(var o=1;;o++){var s=e.combinePaths(n,a+r);if(!i.fileExists(s))return a;a=t+"."+o}}function getNewModuleName(t){return t.forEachEntry(e.symbolNameNoDefault)||"newFile"}function getUsageInfo(t,r,i){var a=new n;var o=new n;var s=new n;for(var c=0,u=r;c<u.length;c++){var l=u[c];forEachTopLevelDeclaration(l,function(t){a.add(e.Debug.assertDefined(e.isExpressionStatement(t)?i.getSymbolAtLocation(t.expression.left):t.symbol))})}for(var f=0,d=r;f<d.length;f++){var l=d[f];forEachReference(l,i,function(e){if(!e.declarations)return;for(var r=0,n=e.declarations;r<n.length;r++){var i=n[r];if(isInImport(i)){o.add(e)}else if(isTopLevelDeclaration(i)&&sourceFileOfTopLevelDeclaration(i)===t&&!a.has(e)){s.add(e)}}})}var p=o.clone();var g=new n;for(var _=0,m=t.statements;_<m.length;_++){var l=m[_];if(e.contains(r,l))continue;forEachReference(l,i,function(e){if(a.has(e))g.add(e);p.delete(e)})}return{movedSymbols:a,newFileImportsFromOldFile:s,oldFileImportsFromNewFile:g,oldImportsNeededByNewFile:o,unusedImportsFromOldFile:p}}function isInImport(t){switch(t.kind){case 248:case 253:case 250:return true;case 237:return isVariableDeclarationInImport(t);case 186:return e.isVariableDeclaration(t.parent.parent)&&isVariableDeclarationInImport(t.parent.parent);default:return false}}function isVariableDeclarationInImport(t){return e.isSourceFile(t.parent.parent.parent)&&t.initializer&&e.isRequireCall(t.initializer,true)}function filterImport(t,r,n){switch(t.kind){case 249:{var i=t.importClause;if(!i)return undefined;var a=i.name&&n(i.name)?i.name:undefined;var o=i.namedBindings&&filterNamedBindings(i.namedBindings,n);return a||o?e.createImportDeclaration(undefined,undefined,e.createImportClause(a,o),r):undefined}case 248:return n(t.name)?t:undefined;case 237:{var s=filterBindingName(t.name,n);return s?makeVariableStatement(s,t.type,createRequireCall(r),t.parent.flags):undefined}default:return e.Debug.assertNever(t)}}function filterNamedBindings(t,r){if(t.kind===251){return r(t.name)?t:undefined}else{var n=t.elements.filter(function(e){return r(e.name)});return n.length?e.createNamedImports(n):undefined}}function filterBindingName(t,r){switch(t.kind){case 72:return r(t)?t:undefined;case 185:return t;case 184:{var n=t.elements.filter(function(t){return t.propertyName||!e.isIdentifier(t.name)||r(t.name)});return n.length?e.createObjectBindingPattern(n):undefined}}}function forEachReference(t,r,n){t.forEachChild(function cb(t){if(e.isIdentifier(t)&&!e.isDeclarationName(t)){var i=r.getSymbolAtLocation(t);if(i)n(i)}else{t.forEachChild(cb)}})}var n=function(){function SymbolSet(){this.map=e.createMap()}SymbolSet.prototype.add=function(t){this.map.set(String(e.getSymbolId(t)),t)};SymbolSet.prototype.has=function(t){return this.map.has(String(e.getSymbolId(t)))};SymbolSet.prototype.delete=function(t){this.map.delete(String(e.getSymbolId(t)))};SymbolSet.prototype.forEach=function(e){this.map.forEach(e)};SymbolSet.prototype.forEachEntry=function(t){return e.forEachEntry(this.map,t)};SymbolSet.prototype.clone=function(){var t=new SymbolSet;e.copyEntries(this.map,t.map);return t};return SymbolSet}();function isTopLevelDeclaration(t){return isNonVariableTopLevelDeclaration(t)&&e.isSourceFile(t.parent)||e.isVariableDeclaration(t)&&e.isSourceFile(t.parent.parent.parent)}function sourceFileOfTopLevelDeclaration(t){return e.isVariableDeclaration(t)?t.parent.parent.parent:t.parent}function isTopLevelDeclarationStatement(t){e.Debug.assert(e.isSourceFile(t.parent));return isNonVariableTopLevelDeclaration(t)||e.isVariableStatement(t)}function isNonVariableTopLevelDeclaration(e){switch(e.kind){case 239:case 240:case 244:case 243:case 242:case 241:case 248:return true;default:return false}}function forEachTopLevelDeclaration(t,r){switch(t.kind){case 239:case 240:case 244:case 243:case 242:case 241:case 248:return r(t);case 219:return e.firstDefined(t.declarationList.declarations,function(e){return forEachTopLevelDeclarationInBindingName(e.name,r)});case 221:{var n=t.expression;return e.isBinaryExpression(n)&&e.getAssignmentDeclarationKind(n)===1?r(t):undefined}}}function forEachTopLevelDeclarationInBindingName(t,r){switch(t.kind){case 72:return r(e.cast(t.parent,function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)}));case 185:case 184:return e.firstDefined(t.elements,function(t){return e.isOmittedExpression(t)?undefined:forEachTopLevelDeclarationInBindingName(t.name,r)});default:return e.Debug.assertNever(t)}}function nameOfTopLevelDeclaration(t){return e.isExpressionStatement(t)?t.expression.left.name:e.tryCast(t.name,e.isIdentifier)}function getTopLevelDeclarationStatement(t){switch(t.kind){case 237:return t.parent.parent;case 186:return getTopLevelDeclarationStatement(e.cast(t.parent.parent,function(t){return e.isVariableDeclaration(t)||e.isBindingElement(t)}));default:return t}}function addExportToChanges(t,r,n,i){if(isExported(t,r,i))return;if(i){if(!e.isExpressionStatement(r))n.insertExportModifier(t,r)}else{var a=getNamesToExportInCommonJS(r);if(a.length!==0)n.insertNodesAfter(t,r,a.map(createExportAssignment))}}function isExported(t,r,n){if(n){return!e.isExpressionStatement(r)&&e.hasModifier(r,1)}else{return getNamesToExportInCommonJS(r).some(function(r){return t.symbol.exports.has(e.escapeLeadingUnderscores(r))})}}function addExport(e,t){return t?[addEs6Export(e)]:addCommonjsExport(e)}function addEs6Export(t){var r=e.concatenate([e.createModifier(85)],t.modifiers);switch(t.kind){case 239:return e.updateFunctionDeclaration(t,t.decorators,r,t.asteriskToken,t.name,t.typeParameters,t.parameters,t.type,t.body);case 240:return e.updateClassDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 219:return e.updateVariableStatement(t,r,t.declarationList);case 244:return e.updateModuleDeclaration(t,t.decorators,r,t.name,t.body);case 243:return e.updateEnumDeclaration(t,t.decorators,r,t.name,t.members);case 242:return e.updateTypeAliasDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.type);case 241:return e.updateInterfaceDeclaration(t,t.decorators,r,t.name,t.typeParameters,t.heritageClauses,t.members);case 248:return e.updateImportEqualsDeclaration(t,t.decorators,r,t.name,t.moduleReference);case 221:return e.Debug.fail();default:return e.Debug.assertNever(t)}}function addCommonjsExport(e){return[e].concat(getNamesToExportInCommonJS(e).map(createExportAssignment))}function getNamesToExportInCommonJS(t){switch(t.kind){case 239:case 240:return[t.name.text];case 219:return e.mapDefined(t.declarationList.declarations,function(t){return e.isIdentifier(t.name)?t.name.text:undefined});case 244:case 243:case 242:case 241:case 248:return e.emptyArray;case 221:return e.Debug.fail();default:return e.Debug.assertNever(t)}}function createExportAssignment(t){return e.createExpressionStatement(e.createBinary(e.createPropertyAccess(e.createIdentifier("exports"),e.createIdentifier(t)),59,e.createIdentifier(t)))}})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){var t;(function(t){var r;(function(r){var n="Add or remove braces in an arrow function";var i=e.Diagnostics.Add_or_remove_braces_in_an_arrow_function.message;var a="Add braces to arrow function";var o="Remove braces from arrow function";var s=e.Diagnostics.Add_braces_to_arrow_function.message;var c=e.Diagnostics.Remove_braces_from_arrow_function.message;t.registerRefactor(n,{getEditsForAction:getEditsForAction,getAvailableActions:getAvailableActions});function getAvailableActions(t){var r=t.file,u=t.startPosition;var l=getConvertibleArrowFunctionAtPosition(r,u);if(!l)return e.emptyArray;return[{name:n,description:i,actions:[l.addBraces?{name:a,description:s}:{name:o,description:c}]}]}function getEditsForAction(t,r){var n=t.file,i=t.startPosition;var s=getConvertibleArrowFunctionAtPosition(n,i);if(!s)return undefined;var c=s.expression,u=s.returnStatement,l=s.func;var f;if(r===a){var d=e.createReturn(c);f=e.createBlock([d],true);e.suppressLeadingAndTrailingTrivia(f);e.copyComments(c,d,n,3,true)}else if(r===o&&u){var p=c||e.createVoidZero();f=needsParentheses(p)?e.createParen(p):p;e.suppressLeadingAndTrailingTrivia(f);e.copyComments(u,f,n,3,false)}else{e.Debug.fail("invalid action")}var g=e.textChanges.ChangeTracker.with(t,function(e){return e.replaceNode(n,l.body,f)});return{renameFilename:undefined,renameLocation:undefined,edits:g}}function needsParentheses(t){return e.isBinaryExpression(t)&&t.operatorToken.kind===27||e.isObjectLiteralExpression(t)}function getConvertibleArrowFunctionAtPosition(t,r){var n=e.getTokenAtPosition(t,r);var i=e.getContainingFunction(n);if(!i||!e.isArrowFunction(i)||(!e.rangeContainsRange(i,n)||e.rangeContainsRange(i.body,n)))return undefined;if(e.isExpression(i.body)){return{func:i,addBraces:true,expression:i.body}}else if(i.body.statements.length===1){var a=e.first(i.body.statements);if(e.isReturnStatement(a)){return{func:i,addBraces:false,expression:a.expression,returnStatement:a}}}return undefined}})(r=t.addOrRemoveBracesToArrowFunction||(t.addOrRemoveBracesToArrowFunction={}))})(t=e.refactor||(e.refactor={}))})(s||(s={}));var s;(function(e){e.servicesVersion="0.8";function createNode(r,n,i,a){var o=e.isNodeKind(r)?new t(r,n,i):r===72?new c(72,n,i):new s(r,n,i);o.parent=a;o.flags=a.flags&12679168;return o}var t=function(){function NodeObject(e,t,r){this.pos=t;this.end=r;this.flags=0;this.transformFlags=undefined;this.parent=undefined;this.kind=e}NodeObject.prototype.assertHasRealPosition=function(t){e.Debug.assert(!e.positionIsSynthesized(this.pos)&&!e.positionIsSynthesized(this.end),t||"Node must have a real position for this operation")};NodeObject.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)};NodeObject.prototype.getStart=function(t,r){this.assertHasRealPosition();return e.getTokenPosOfNode(this,t,r)};NodeObject.prototype.getFullStart=function(){this.assertHasRealPosition();return this.pos};NodeObject.prototype.getEnd=function(){this.assertHasRealPosition();return this.end};NodeObject.prototype.getWidth=function(e){this.assertHasRealPosition();return this.getEnd()-this.getStart(e)};NodeObject.prototype.getFullWidth=function(){this.assertHasRealPosition();return this.end-this.pos};NodeObject.prototype.getLeadingTriviaWidth=function(e){this.assertHasRealPosition();return this.getStart(e)-this.pos};NodeObject.prototype.getFullText=function(e){this.assertHasRealPosition();return(e||this.getSourceFile()).text.substring(this.pos,this.end)};NodeObject.prototype.getText=function(e){this.assertHasRealPosition();if(!e){e=this.getSourceFile()}return e.text.substring(this.getStart(e),this.getEnd())};NodeObject.prototype.getChildCount=function(e){return this.getChildren(e).length};NodeObject.prototype.getChildAt=function(e,t){return this.getChildren(t)[e]};NodeObject.prototype.getChildren=function(e){this.assertHasRealPosition("Node without a real position cannot be scanned and thus has no token nodes - use forEachChild and collect the result if that's fine");return this._children||(this._children=createChildren(this,e))};NodeObject.prototype.getFirstToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t);if(!r.length){return undefined}var n=e.find(r,function(e){return e.kind<283||e.kind>305});return n.kind<148?n:n.getFirstToken(t)};NodeObject.prototype.getLastToken=function(t){this.assertHasRealPosition();var r=this.getChildren(t);var n=e.lastOrUndefined(r);if(!n){return undefined}return n.kind<148?n:n.getLastToken(t)};NodeObject.prototype.forEachChild=function(t,r){return e.forEachChild(this,t,r)};return NodeObject}();function createChildren(t,r){if(!e.isNodeKind(t.kind)){return e.emptyArray}var n=[];if(e.isJSDocCommentContainingNode(t)){t.forEachChild(function(e){n.push(e)});return n}e.scanner.setText((r||t.getSourceFile()).text);var i=t.pos;var a=function(e){addSyntheticNodes(n,i,e.pos,t);n.push(e);i=e.end};var o=function(e){addSyntheticNodes(n,i,e.pos,t);n.push(createSyntaxList(e,t));i=e.end};e.forEach(t.jsDoc,a);i=t.pos;t.forEachChild(a,o);addSyntheticNodes(n,i,t.end,t);e.scanner.setText(undefined);return n}function addSyntheticNodes(t,r,n,i){e.scanner.setTextPos(r);while(r<n){var a=e.scanner.scan();var o=e.scanner.getTextPos();if(o<=n){if(a===72){e.Debug.fail("Did not expect "+e.Debug.showSyntaxKind(i)+" to have an Identifier in its trivia")}t.push(createNode(a,r,o,i))}r=o;if(a===1){break}}}function createSyntaxList(e,t){var r=createNode(306,e.pos,e.end,t);r._children=[];var n=e.pos;for(var i=0,a=e;i<a.length;i++){var o=a[i];addSyntheticNodes(r._children,n,o.pos,t);r._children.push(o);n=o.end}addSyntheticNodes(r._children,n,e.end,t);return r}var i=function(){function TokenOrIdentifierObject(e,t){this.pos=e;this.end=t;this.flags=0;this.parent=undefined}TokenOrIdentifierObject.prototype.getSourceFile=function(){return e.getSourceFileOfNode(this)};TokenOrIdentifierObject.prototype.getStart=function(t,r){return e.getTokenPosOfNode(this,t,r)};TokenOrIdentifierObject.prototype.getFullStart=function(){return this.pos};TokenOrIdentifierObject.prototype.getEnd=function(){return this.end};TokenOrIdentifierObject.prototype.getWidth=function(e){return this.getEnd()-this.getStart(e)};TokenOrIdentifierObject.prototype.getFullWidth=function(){return this.end-this.pos};TokenOrIdentifierObject.prototype.getLeadingTriviaWidth=function(e){return this.getStart(e)-this.pos};TokenOrIdentifierObject.prototype.getFullText=function(e){return(e||this.getSourceFile()).text.substring(this.pos,this.end)};TokenOrIdentifierObject.prototype.getText=function(e){if(!e){e=this.getSourceFile()}return e.text.substring(this.getStart(e),this.getEnd())};TokenOrIdentifierObject.prototype.getChildCount=function(){return 0};TokenOrIdentifierObject.prototype.getChildAt=function(){return undefined};TokenOrIdentifierObject.prototype.getChildren=function(){return this.kind===1?this.jsDoc||e.emptyArray:e.emptyArray};TokenOrIdentifierObject.prototype.getFirstToken=function(){return undefined};TokenOrIdentifierObject.prototype.getLastToken=function(){return undefined};TokenOrIdentifierObject.prototype.forEachChild=function(){return undefined};return TokenOrIdentifierObject}();var a=function(){function SymbolObject(e,t){this.flags=e;this.escapedName=t}SymbolObject.prototype.getFlags=function(){return this.flags};Object.defineProperty(SymbolObject.prototype,"name",{get:function(){return e.symbolName(this)},enumerable:true,configurable:true});SymbolObject.prototype.getEscapedName=function(){return this.escapedName};SymbolObject.prototype.getName=function(){return this.name};SymbolObject.prototype.getDeclarations=function(){return this.declarations};SymbolObject.prototype.getDocumentationComment=function(t){if(!this.documentationComment){this.documentationComment=e.emptyArray;this.documentationComment=getDocumentationComment(this.declarations,t)}return this.documentationComment};SymbolObject.prototype.getJsDocTags=function(){if(this.tags===undefined){this.tags=e.JsDoc.getJsDocTagsFromDeclarations(this.declarations)}return this.tags};return SymbolObject}();var s=function(e){o(TokenObject,e);function TokenObject(t,r,n){var i=e.call(this,r,n)||this;i.kind=t;return i}return TokenObject}(i);var c=function(t){o(IdentifierObject,t);function IdentifierObject(e,r,n){return t.call(this,r,n)||this}Object.defineProperty(IdentifierObject.prototype,"text",{get:function(){return e.idText(this)},enumerable:true,configurable:true});return IdentifierObject}(i);c.prototype.kind=72;var u=function(){function TypeObject(e,t){this.checker=e;this.flags=t}TypeObject.prototype.getFlags=function(){return this.flags};TypeObject.prototype.getSymbol=function(){return this.symbol};TypeObject.prototype.getProperties=function(){return this.checker.getPropertiesOfType(this)};TypeObject.prototype.getProperty=function(e){return this.checker.getPropertyOfType(this,e)};TypeObject.prototype.getApparentProperties=function(){return this.checker.getAugmentedPropertiesOfType(this)};TypeObject.prototype.getCallSignatures=function(){return this.checker.getSignaturesOfType(this,0)};TypeObject.prototype.getConstructSignatures=function(){return this.checker.getSignaturesOfType(this,1)};TypeObject.prototype.getStringIndexType=function(){return this.checker.getIndexTypeOfType(this,0)};TypeObject.prototype.getNumberIndexType=function(){return this.checker.getIndexTypeOfType(this,1)};TypeObject.prototype.getBaseTypes=function(){return this.isClassOrInterface()?this.checker.getBaseTypes(this):undefined};TypeObject.prototype.getNonNullableType=function(){return this.checker.getNonNullableType(this)};TypeObject.prototype.getConstraint=function(){return this.checker.getBaseConstraintOfType(this)};TypeObject.prototype.getDefault=function(){return this.checker.getDefaultFromTypeParameter(this)};TypeObject.prototype.isUnion=function(){return!!(this.flags&1048576)};TypeObject.prototype.isIntersection=function(){return!!(this.flags&2097152)};TypeObject.prototype.isUnionOrIntersection=function(){return!!(this.flags&3145728)};TypeObject.prototype.isLiteral=function(){return!!(this.flags&384)};TypeObject.prototype.isStringLiteral=function(){return!!(this.flags&128)};TypeObject.prototype.isNumberLiteral=function(){return!!(this.flags&256)};TypeObject.prototype.isTypeParameter=function(){return!!(this.flags&262144)};TypeObject.prototype.isClassOrInterface=function(){return!!(e.getObjectFlags(this)&3)};TypeObject.prototype.isClass=function(){return!!(e.getObjectFlags(this)&1)};return TypeObject}();var l=function(){function SignatureObject(e){this.checker=e}SignatureObject.prototype.getDeclaration=function(){return this.declaration};SignatureObject.prototype.getTypeParameters=function(){return this.typeParameters};SignatureObject.prototype.getParameters=function(){return this.parameters};SignatureObject.prototype.getReturnType=function(){return this.checker.getReturnTypeOfSignature(this)};SignatureObject.prototype.getDocumentationComment=function(){return this.documentationComment||(this.documentationComment=getDocumentationComment(e.singleElementArray(this.declaration),this.checker))};SignatureObject.prototype.getJsDocTags=function(){if(this.jsDocTags===undefined){this.jsDocTags=this.declaration?e.JsDoc.getJsDocTagsFromDeclarations([this.declaration]):[]}return this.jsDocTags};return SignatureObject}();function hasJSDocInheritDocTag(t){return e.getJSDocTags(t).some(function(e){return e.tagName.text==="inheritDoc"})}function getDocumentationComment(t,r){if(!t)return e.emptyArray;var n=e.JsDoc.getJsDocCommentsFromDeclarations(t);if(n.length===0||t.some(hasJSDocInheritDocTag)){for(var i=0,a=t;i<a.length;i++){var o=a[i];var s=findInheritedJSDocComments(o,o.symbol.name,r);if(s)n=n.length===0?s.slice():s.concat(e.lineBreakPart(),n)}}return n}function findInheritedJSDocComments(t,r,n){return e.firstDefined(t.parent?e.getAllSuperTypeNodes(t.parent):e.emptyArray,function(e){var t=n.getTypeAtLocation(e);var i=t&&n.getPropertyOfType(t,r);var a=i&&i.getDocumentationComment(n);return a&&a.length?a:undefined})}var f=function(t){o(SourceFileObject,t);function SourceFileObject(e,r,n){return t.call(this,e,r,n)||this}SourceFileObject.prototype.update=function(t,r){return e.updateSourceFile(this,t,r)};SourceFileObject.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)};SourceFileObject.prototype.getLineStarts=function(){return e.getLineStarts(this)};SourceFileObject.prototype.getPositionOfLineAndCharacter=function(t,r){return e.getPositionOfLineAndCharacter(this,t,r)};SourceFileObject.prototype.getLineEndOfPosition=function(e){var t=this.getLineAndCharacterOfPosition(e).line;var r=this.getLineStarts();var n;if(t+1>=r.length){n=this.getEnd()}if(!n){n=r[t+1]-1}var i=this.getFullText();return i[n]==="\n"&&i[n-1]==="\r"?n-1:n};SourceFileObject.prototype.getNamedDeclarations=function(){if(!this.namedDeclarations){this.namedDeclarations=this.computeNamedDeclarations()}return this.namedDeclarations};SourceFileObject.prototype.computeNamedDeclarations=function(){var t=e.createMultiMap();this.forEachChild(visit);return t;function addDeclaration(e){var r=getDeclarationName(e);if(r){t.add(r,e)}}function getDeclarations(e){var r=t.get(e);if(!r){t.set(e,r=[])}return r}function getDeclarationName(t){var r=e.getNonAssignedNameOfDeclaration(t);return r&&(e.isComputedPropertyName(r)&&e.isPropertyAccessExpression(r.expression)?r.expression.name.text:e.isPropertyName(r)?e.getNameFromPropertyName(r):undefined)}function visit(t){switch(t.kind){case 239:case 196:case 156:case 155:var r=t;var n=getDeclarationName(r);if(n){var i=getDeclarations(n);var a=e.lastOrUndefined(i);if(a&&r.parent===a.parent&&r.symbol===a.symbol){if(r.body&&!a.body){i[i.length-1]=r}}else{i.push(r)}}e.forEachChild(t,visit);break;case 240:case 209:case 241:case 242:case 243:case 244:case 248:case 257:case 253:case 250:case 251:case 158:case 159:case 168:addDeclaration(t);e.forEachChild(t,visit);break;case 151:if(!e.hasModifier(t,92)){break}case 237:case 186:{var o=t;if(e.isBindingPattern(o.name)){e.forEachChild(o.name,visit);break}if(o.initializer){visit(o.initializer)}}case 278:case 154:case 153:addDeclaration(t);break;case 255:if(t.exportClause){e.forEach(t.exportClause.elements,visit)}break;case 249:var s=t.importClause;if(s){if(s.name){addDeclaration(s.name)}if(s.namedBindings){if(s.namedBindings.kind===251){addDeclaration(s.namedBindings)}else{e.forEach(s.namedBindings.elements,visit)}}}break;case 204:if(e.getAssignmentDeclarationKind(t)!==0){addDeclaration(t)}default:e.forEachChild(t,visit)}}};return SourceFileObject}(t);var d=function(){function SourceMapSourceObject(e,t,r){this.fileName=e;this.text=t;this.skipTrivia=r}SourceMapSourceObject.prototype.getLineAndCharacterOfPosition=function(t){return e.getLineAndCharacterOfPosition(this,t)};return SourceMapSourceObject}();function getServicesObjectAllocator(){return{getNodeConstructor:function(){return t},getTokenConstructor:function(){return s},getIdentifierConstructor:function(){return c},getSourceFileConstructor:function(){return f},getSymbolConstructor:function(){return a},getTypeConstructor:function(){return u},getSignatureConstructor:function(){return l},getSourceMapSourceConstructor:function(){return d}}}function toEditorSettings(t){var r=true;for(var n in t){if(e.hasProperty(t,n)&&!isCamelCase(n)){r=false;break}}if(r){return t}var i={};for(var n in t){if(e.hasProperty(t,n)){var a=isCamelCase(n)?n:n.charAt(0).toLowerCase()+n.substr(1);i[a]=t[n]}}return i}e.toEditorSettings=toEditorSettings;function isCamelCase(e){return!e.length||e.charAt(0)===e.charAt(0).toLowerCase()}function displayPartsToString(t){if(t){return e.map(t,function(e){return e.text}).join("")}return""}e.displayPartsToString=displayPartsToString;function getDefaultCompilerOptions(){return{target:1,jsx:1}}e.getDefaultCompilerOptions=getDefaultCompilerOptions;function getSupportedCodeFixes(){return e.codefix.getSupportedErrorCodes()}e.getSupportedCodeFixes=getSupportedCodeFixes;var p=function(){function HostCache(t,r){this.host=t;this.currentDirectory=t.getCurrentDirectory();this.fileNameToEntry=e.createMap();var n=t.getScriptFileNames();for(var i=0,a=n;i<a.length;i++){var o=a[i];this.createEntry(o,e.toPath(o,this.currentDirectory,r))}this._compilationSettings=t.getCompilationSettings()||getDefaultCompilerOptions()}HostCache.prototype.compilationSettings=function(){return this._compilationSettings};HostCache.prototype.getProjectReferences=function(){return this.host.getProjectReferences&&this.host.getProjectReferences()};HostCache.prototype.createEntry=function(t,r){var n;var i=this.host.getScriptSnapshot(t);if(i){n={hostFileName:t,version:this.host.getScriptVersion(t),scriptSnapshot:i,scriptKind:e.getScriptKind(t,this.host)}}else{n=t}this.fileNameToEntry.set(r,n);return n};HostCache.prototype.getEntryByPath=function(e){return this.fileNameToEntry.get(e)};HostCache.prototype.getHostFileInformation=function(t){var r=this.fileNameToEntry.get(t);return!e.isString(r)?r:undefined};HostCache.prototype.getOrCreateEntryByPath=function(t,r){var n=this.getEntryByPath(r)||this.createEntry(t,r);return e.isString(n)?undefined:n};HostCache.prototype.getRootFileNames=function(){var t=[];this.fileNameToEntry.forEach(function(r){if(e.isString(r)){t.push(r)}else{if(r.scriptKind!==6){t.push(r.hostFileName)}}});return t};HostCache.prototype.getVersion=function(e){var t=this.getHostFileInformation(e);return t&&t.version};HostCache.prototype.getScriptSnapshot=function(e){var t=this.getHostFileInformation(e);return t&&t.scriptSnapshot};return HostCache}();var g=function(){function SyntaxTreeCache(e){this.host=e}SyntaxTreeCache.prototype.getCurrentSourceFile=function(t){var r=this.host.getScriptSnapshot(t);if(!r){throw new Error("Could not find file: '"+t+"'.")}var n=e.getScriptKind(t,this.host);var i=this.host.getScriptVersion(t);var a;if(this.currentFileName!==t){a=createLanguageServiceSourceFile(t,r,6,i,true,n)}else if(this.currentFileVersion!==i){var o=r.getChangeRange(this.currentFileScriptSnapshot);a=updateLanguageServiceSourceFile(this.currentSourceFile,r,i,o)}if(a){this.currentFileVersion=i;this.currentFileName=t;this.currentFileScriptSnapshot=r;this.currentSourceFile=a}return this.currentSourceFile};return SyntaxTreeCache}();function setSourceFileFields(e,t,r){e.version=r;e.scriptSnapshot=t}function createLanguageServiceSourceFile(t,r,n,i,a,o){var s=e.createSourceFile(t,e.getSnapshotText(r),n,a,o);setSourceFileFields(s,r,i);return s}e.createLanguageServiceSourceFile=createLanguageServiceSourceFile;e.disableIncrementalParsing=false;function updateLanguageServiceSourceFile(t,r,n,i,a){if(i){if(n!==t.version){if(!e.disableIncrementalParsing){var o=void 0;var s=i.span.start!==0?t.text.substr(0,i.span.start):"";var c=e.textSpanEnd(i.span)!==t.text.length?t.text.substr(e.textSpanEnd(i.span)):"";if(i.newLength===0){o=s&&c?s+c:s||c}else{var u=r.getText(i.span.start,i.span.start+i.newLength);o=s&&c?s+u+c:s?s+u:u+c}var l=e.updateSourceFile(t,o,i,a);setSourceFileFields(l,r,n);l.nameTable=undefined;if(t!==l&&t.scriptSnapshot){if(t.scriptSnapshot.dispose){t.scriptSnapshot.dispose()}t.scriptSnapshot=undefined}return l}}}return createLanguageServiceSourceFile(t.fileName,r,t.languageVersion,n,true,t.scriptKind)}e.updateLanguageServiceSourceFile=updateLanguageServiceSourceFile;var _=function(){function CancellationTokenObject(e){this.cancellationToken=e}CancellationTokenObject.prototype.isCancellationRequested=function(){return!!this.cancellationToken&&this.cancellationToken.isCancellationRequested()};CancellationTokenObject.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested()){throw new e.OperationCanceledException}};return CancellationTokenObject}();var m=function(){function ThrottledCancellationToken(e,t){if(t===void 0){t=20}this.hostCancellationToken=e;this.throttleWaitMilliseconds=t;this.lastCancellationCheckTime=0}ThrottledCancellationToken.prototype.isCancellationRequested=function(){var t=e.timestamp();var r=Math.abs(t-this.lastCancellationCheckTime);if(r>=this.throttleWaitMilliseconds){this.lastCancellationCheckTime=t;return this.hostCancellationToken.isCancellationRequested()}return false};ThrottledCancellationToken.prototype.throwIfCancellationRequested=function(){if(this.isCancellationRequested()){throw new e.OperationCanceledException}};return ThrottledCancellationToken}();e.ThrottledCancellationToken=m;function createLanguageService(t,r,i){if(r===void 0){r=e.createDocumentRegistry(t.useCaseSensitiveFileNames&&t.useCaseSensitiveFileNames(),t.getCurrentDirectory())}if(i===void 0){i=false}var a;var o=new g(t);var s;var c;var u=0;var l=new _(t.getCancellationToken&&t.getCancellationToken());var f=t.getCurrentDirectory();if(!e.localizedDiagnosticMessages&&t.getLocalizedDiagnosticMessages){e.localizedDiagnosticMessages=t.getLocalizedDiagnosticMessages()}function log(e){if(t.log){t.log(e)}}var d=e.hostUsesCaseSensitiveFileNames(t);var m=e.createGetCanonicalFileName(d);var y=e.getSourceMapper(d,f,log,t,function(){return s});function getValidSourceFile(e){var t=s.getSourceFile(e);if(!t){throw new Error("Could not find file: '"+e+"'.")}return t}function synchronizeHostData(){e.Debug.assert(!i);if(t.getProjectVersion){var n=t.getProjectVersion();if(n){if(c===n&&!t.hasChangedAutomaticTypeDirectiveNames){return}c=n}}var a=t.getTypeRootsVersion?t.getTypeRootsVersion():0;if(u!==a){log("TypeRoots version has changed; provide new program");s=undefined;u=a}var o=new p(t,m);var g=o.getRootFileNames();var _=t.hasInvalidatedResolution||e.returnFalse;var h=o.getProjectReferences();if(e.isProgramUptoDate(s,g,o.compilationSettings(),function(e){return o.getVersion(e)},fileExists,_,!!t.hasChangedAutomaticTypeDirectiveNames,h)){return}var v=o.compilationSettings();var T={getSourceFile:getOrCreateSourceFile,getSourceFileByPath:getOrCreateSourceFileByPath,getCancellationToken:function(){return l},getCanonicalFileName:m,useCaseSensitiveFileNames:function(){return d},getNewLine:function(){return e.getNewLineCharacter(v,function(){return e.getNewLineOrDefaultFromHost(t)})},getDefaultLibFileName:function(e){return t.getDefaultLibFileName(e)},writeFile:e.noop,getCurrentDirectory:function(){return f},fileExists:fileExists,readFile:function(r){var n=e.toPath(r,f,m);var i=o&&o.getEntryByPath(n);if(i){return e.isString(i)?undefined:e.getSnapshotText(i.scriptSnapshot)}return t.readFile&&t.readFile(r)},realpath:t.realpath&&function(e){return t.realpath(e)},directoryExists:function(r){return e.directoryProbablyExists(r,t)},getDirectories:function(e){return t.getDirectories?t.getDirectories(e):[]},readDirectory:function(r,n,i,a,o){e.Debug.assertDefined(t.readDirectory,"'LanguageServiceHost.readDirectory' must be implemented to correctly process 'projectReferences'");return t.readDirectory(r,n,i,a,o)},onReleaseOldSourceFile:onReleaseOldSourceFile,hasInvalidatedResolution:_,hasChangedAutomaticTypeDirectiveNames:t.hasChangedAutomaticTypeDirectiveNames};if(t.trace){T.trace=function(e){return t.trace(e)}}if(t.resolveModuleNames){T.resolveModuleNames=function(e,r,n,i){return t.resolveModuleNames(e,r,n,i)}}if(t.resolveTypeReferenceDirectives){T.resolveTypeReferenceDirectives=function(e,r,n){return t.resolveTypeReferenceDirectives(e,r,n)}}var S=r.getKeyForCompilationSettings(v);var b={rootNames:g,options:v,host:T,oldProgram:s,projectReferences:h};s=e.createProgram(b);o=undefined;y.clearCache();s.getTypeChecker();return;function fileExists(r){var n=e.toPath(r,f,m);var i=o&&o.getEntryByPath(n);return i?!e.isString(i):!!t.fileExists&&t.fileExists(r)}function onReleaseOldSourceFile(e,t){var n=r.getKeyForCompilationSettings(t);r.releaseDocumentWithKey(e.resolvedPath,n)}function getOrCreateSourceFile(t,r,n,i){return getOrCreateSourceFileByPath(t,e.toPath(t,f,m),r,n,i)}function getOrCreateSourceFileByPath(t,n,i,a,c){e.Debug.assert(o!==undefined,"getOrCreateSourceFileByPath called after typical CompilerHost lifetime, check the callstack something with a reference to an old host.");var u=o&&o.getOrCreateEntryByPath(t,n);if(!u){return undefined}if(!c){var l=s&&s.getSourceFileByPath(n);if(l){e.Debug.assertEqual(u.scriptKind,l.scriptKind,"Registered script kind should match new script kind.",n);return r.updateDocumentWithKey(t,n,v,S,u.scriptSnapshot,u.version,u.scriptKind)}}return r.acquireDocumentWithKey(t,n,v,S,u.scriptSnapshot,u.version,u.scriptKind)}}function getProgram(){if(i){e.Debug.assert(s===undefined);return undefined}synchronizeHostData();return s}function cleanupSemanticCache(){s=undefined}function dispose(){if(s){e.forEach(s.getSourceFiles(),function(e){return r.releaseDocument(e.fileName,s.getCompilerOptions())});s=undefined}t=undefined}function getSyntacticDiagnostics(e){synchronizeHostData();return s.getSyntacticDiagnostics(getValidSourceFile(e),l).slice()}function getSemanticDiagnostics(t){synchronizeHostData();var r=getValidSourceFile(t);var n=s.getSemanticDiagnostics(r,l);if(!e.getEmitDeclarations(s.getCompilerOptions())){return n.slice()}var i=s.getDeclarationDiagnostics(r,l);return n.concat(i)}function getSuggestionDiagnostics(t){synchronizeHostData();return e.computeSuggestionDiagnostics(getValidSourceFile(t),s,l)}function getCompilerOptionsDiagnostics(){synchronizeHostData();return s.getOptionsDiagnostics(l).concat(s.getGlobalDiagnostics(l))}function getCompletionsAtPosition(r,i,a){if(a===void 0){a=e.emptyOptions}var o=n({},e.identity(a),{includeCompletionsForModuleExports:a.includeCompletionsForModuleExports||a.includeExternalModuleExports,includeCompletionsWithInsertText:a.includeCompletionsWithInsertText||a.includeInsertTextCompletions});synchronizeHostData();return e.Completions.getCompletionsAtPosition(t,s,log,getValidSourceFile(r),i,o,a.triggerCharacter)}function getCompletionEntryDetails(r,n,i,a,o,c){if(c===void 0){c=e.emptyOptions}synchronizeHostData();return e.Completions.getCompletionEntryDetails(s,log,getValidSourceFile(r),n,{name:i,source:o},t,a&&e.formatting.getFormatContext(a),c,l)}function getCompletionEntrySymbol(t,r,n,i){synchronizeHostData();return e.Completions.getCompletionEntrySymbol(s,log,getValidSourceFile(t),r,{name:n,source:i})}function getQuickInfoAtPosition(t,r){synchronizeHostData();var n=getValidSourceFile(t);var i=e.getTouchingPropertyName(n,r);if(i===n){return undefined}var a=s.getTypeChecker();var o=getSymbolAtLocationForQuickInfo(i,a);if(!o||a.isUnknownSymbol(o)){var c=shouldGetType(n,i,r)?a.getTypeAtLocation(i):undefined;return c&&{kind:"",kindModifiers:"",textSpan:e.createTextSpanFromNode(i,n),displayParts:a.runWithCancellationToken(l,function(t){return e.typeToDisplayParts(t,c,e.getContainerNode(i))}),documentation:c.symbol?c.symbol.getDocumentationComment(a):undefined,tags:c.symbol?c.symbol.getJsDocTags():undefined}}var u=a.runWithCancellationToken(l,function(t){return e.SymbolDisplay.getSymbolDisplayPartsDocumentationAndSymbolKind(t,o,n,e.getContainerNode(i),i)}),f=u.symbolKind,d=u.displayParts,p=u.documentation,g=u.tags;return{kind:f,kindModifiers:e.SymbolDisplay.getSymbolModifiers(o),textSpan:e.createTextSpanFromNode(i,n),displayParts:d,documentation:p,tags:g}}function shouldGetType(t,r,n){switch(r.kind){case 72:return!e.isLabelName(r)&&!e.isTagName(r);case 189:case 148:return!e.isInComment(t,n);case 100:case 178:case 98:return true;default:return false}}function getDefinitionAtPosition(t,r){synchronizeHostData();return e.GoToDefinition.getDefinitionAtPosition(s,getValidSourceFile(t),r)}function getDefinitionAndBoundSpan(t,r){synchronizeHostData();return e.GoToDefinition.getDefinitionAndBoundSpan(s,getValidSourceFile(t),r)}function getTypeDefinitionAtPosition(t,r){synchronizeHostData();return e.GoToDefinition.getTypeDefinitionAtPosition(s.getTypeChecker(),getValidSourceFile(t),r)}function getImplementationAtPosition(t,r){synchronizeHostData();return e.FindAllReferences.getImplementationsAtPosition(s,l,s.getSourceFiles(),getValidSourceFile(t),r)}function getOccurrencesAtPosition(t,r){return e.flatMap(getDocumentHighlights(t,r,[t]),function(e){return e.highlightSpans.map(function(t){return{fileName:e.fileName,textSpan:t.textSpan,isWriteAccess:t.kind==="writtenReference",isDefinition:false,isInString:t.isInString}})})}function getDocumentHighlights(t,r,n){var i=e.normalizePath(t);e.Debug.assert(n.some(function(t){return e.normalizePath(t)===i}));synchronizeHostData();var a=n.map(getValidSourceFile);var o=getValidSourceFile(t);return e.DocumentHighlights.getDocumentHighlights(s,l,o,r,a)}function findRenameLocations(t,r,n,i){synchronizeHostData();var a=getValidSourceFile(t);var o=e.getTouchingPropertyName(a,r);if(e.isIdentifier(o)&&(e.isJsxOpeningElement(o.parent)||e.isJsxClosingElement(o.parent))&&e.isIntrinsicJsxName(o.escapedText)){var s=o.parent.parent,c=s.openingElement,u=s.closingElement;return[c,u].map(function(t){return{fileName:a.fileName,textSpan:e.createTextSpanFromNode(t.tagName,a)}})}else{return getReferencesWorker(o,r,{findInStrings:n,findInComments:i,isForRename:true},e.FindAllReferences.toRenameLocation)}}function getReferencesAtPosition(t,r){synchronizeHostData();return getReferencesWorker(e.getTouchingPropertyName(getValidSourceFile(t),r),r,{},e.FindAllReferences.toReferenceEntry)}function getReferencesWorker(t,r,n,i){synchronizeHostData();var a=n&&n.isForRename?s.getSourceFiles().filter(function(e){return!s.isSourceFileDefaultLibrary(e)}):s.getSourceFiles();return e.FindAllReferences.findReferenceOrRenameEntries(s,l,a,t,r,n,i)}function findReferences(t,r){synchronizeHostData();return e.FindAllReferences.findReferencedSymbols(s,l,s.getSourceFiles(),getValidSourceFile(t),r)}function getNavigateToItems(t,r,n,i){if(i===void 0){i=false}synchronizeHostData();var a=n?[getValidSourceFile(n)]:s.getSourceFiles();return e.NavigateTo.getNavigateToItems(a,s.getTypeChecker(),l,t,r,i)}function getEmitOutput(r,n){if(n===void 0){n=false}synchronizeHostData();var i=getValidSourceFile(r);var a=t.getCustomTransformers&&t.getCustomTransformers();return e.getFileEmitOutput(s,i,n,l,a)}function getSignatureHelpItems(t,r,n){var i=(n===void 0?e.emptyOptions:n).triggerReason;synchronizeHostData();var a=getValidSourceFile(t);return e.SignatureHelp.getSignatureHelpItems(s,a,r,i,l)}function getNonBoundSourceFile(e){return o.getCurrentSourceFile(e)}function getNameOrDottedNameSpan(t,r,n){var i=o.getCurrentSourceFile(t);var a=e.getTouchingPropertyName(i,r);if(a===i){return undefined}switch(a.kind){case 189:case 148:case 10:case 87:case 102:case 96:case 98:case 100:case 178:case 72:break;default:return undefined}var s=a;while(true){if(e.isRightSideOfPropertyAccess(s)||e.isRightSideOfQualifiedName(s)){s=s.parent}else if(e.isNameOfModuleDeclaration(s)){if(s.parent.parent.kind===244&&s.parent.parent.body===s.parent){s=s.parent.parent.name}else{break}}else{break}}return e.createTextSpanFromBounds(s.getStart(),a.getEnd())}function getBreakpointStatementAtPosition(t,r){var n=o.getCurrentSourceFile(t);return e.BreakpointResolver.spanInSourceFileAtLocation(n,r)}function getNavigationBarItems(t){return e.NavigationBar.getNavigationBarItems(o.getCurrentSourceFile(t),l)}function getNavigationTree(t){return e.NavigationBar.getNavigationTree(o.getCurrentSourceFile(t),l)}function isTsOrTsxFile(r){var n=e.getScriptKind(r,t);return n===3||n===4}function getSemanticClassifications(t,r){if(!isTsOrTsxFile(t)){return[]}synchronizeHostData();return e.getSemanticClassifications(s.getTypeChecker(),l,getValidSourceFile(t),s.getClassifiableNames(),r)}function getEncodedSemanticClassifications(t,r){if(!isTsOrTsxFile(t)){return{spans:[],endOfLineState:0}}synchronizeHostData();return e.getEncodedSemanticClassifications(s.getTypeChecker(),l,getValidSourceFile(t),s.getClassifiableNames(),r)}function getSyntacticClassifications(t,r){return e.getSyntacticClassifications(l,o.getCurrentSourceFile(t),r)}function getEncodedSyntacticClassifications(t,r){return e.getEncodedSyntacticClassifications(l,o.getCurrentSourceFile(t),r)}function getOutliningSpans(t){var r=o.getCurrentSourceFile(t);return e.OutliningElementsCollector.collectElements(r,l)}var h=e.createMapFromTemplate((a={},a[18]=19,a[20]=21,a[22]=23,a[30]=28,a));h.forEach(function(e,t){return h.set(e.toString(),Number(t))});function getBraceMatchingAtPosition(t,r){var n=o.getCurrentSourceFile(t);var i=e.getTouchingToken(n,r);var a=i.getStart(n)===r?h.get(i.kind.toString()):undefined;var s=a&&e.findChildOfKind(i.parent,a,n);return s?[e.createTextSpanFromNode(i,n),e.createTextSpanFromNode(s,n)].sort(function(e,t){return e.start-t.start}):e.emptyArray}function getIndentationAtPosition(t,r,n){var i=e.timestamp();var a=toEditorSettings(n);var s=o.getCurrentSourceFile(t);log("getIndentationAtPosition: getCurrentSourceFile: "+(e.timestamp()-i));i=e.timestamp();var c=e.formatting.SmartIndenter.getIndentation(r,s,a);log("getIndentationAtPosition: computeIndentation : "+(e.timestamp()-i));return c}function getFormattingEditsForRange(t,r,n,i){var a=o.getCurrentSourceFile(t);return e.formatting.formatSelection(r,n,a,e.formatting.getFormatContext(toEditorSettings(i)))}function getFormattingEditsForDocument(t,r){return e.formatting.formatDocument(o.getCurrentSourceFile(t),e.formatting.getFormatContext(toEditorSettings(r)))}function getFormattingEditsAfterKeystroke(t,r,n,i){var a=o.getCurrentSourceFile(t);var s=e.formatting.getFormatContext(toEditorSettings(i));if(!e.isInComment(a,r)){switch(n){case"{":return e.formatting.formatOnOpeningCurly(r,a,s);case"}":return e.formatting.formatOnClosingCurly(r,a,s);case";":return e.formatting.formatOnSemicolon(r,a,s);case"\n":return e.formatting.formatOnEnter(r,a,s)}}return[]}function getCodeFixesAtPosition(r,n,i,a,o,c){if(c===void 0){c=e.emptyOptions}synchronizeHostData();var u=getValidSourceFile(r);var f=e.createTextSpanFromBounds(n,i);var d=e.formatting.getFormatContext(o);return e.flatMap(e.deduplicate(a,e.equateValues,e.compareValues),function(r){l.throwIfCancellationRequested();return e.codefix.getFixes({errorCode:r,sourceFile:u,span:f,program:s,host:t,cancellationToken:l,formatContext:d,preferences:c})})}function getCombinedCodeFix(r,n,i,a){if(a===void 0){a=e.emptyOptions}synchronizeHostData();e.Debug.assert(r.type==="file");var o=getValidSourceFile(r.fileName);var c=e.formatting.getFormatContext(i);return e.codefix.getAllFixes({fixId:n,sourceFile:o,program:s,host:t,cancellationToken:l,formatContext:c,preferences:a})}function organizeImports(r,n,i){if(i===void 0){i=e.emptyOptions}synchronizeHostData();e.Debug.assert(r.type==="file");var a=getValidSourceFile(r.fileName);var o=e.formatting.getFormatContext(n);return e.OrganizeImports.organizeImports(a,o,t,s,i)}function getEditsForFileRename(r,n,i,a){if(a===void 0){a=e.emptyOptions}return e.getEditsForFileRename(getProgram(),r,n,t,e.formatting.getFormatContext(i),a,y)}function applyCodeActionCommand(t,r){var n=typeof t==="string"?r:t;var i=typeof t!=="string"?r:undefined;return e.isArray(n)?Promise.all(n.map(function(e){return applySingleCodeActionCommand(e,i)})):applySingleCodeActionCommand(n,i)}function applySingleCodeActionCommand(r,n){var i=function(t){return e.toPath(t,f,m)};switch(r.type){case"install package":return t.installPackage?t.installPackage({fileName:i(r.file),packageName:r.packageName}):Promise.reject("Host does not implement `installPackage`");case"generate types":{var a=r.fileToGenerateTypesFor,o=r.outputFileName;if(!t.inspectValue)return Promise.reject("Host does not implement `installPackage`");var s=t.inspectValue({fileNameToRequire:a});return s.then(function(r){var a=i(o);t.writeFile(a,e.valueInfoToDeclarationFileText(r,n||e.testFormatSettings));return{successMessage:"Wrote types to '"+a+"'"}})}default:return e.Debug.assertNever(r)}}function getDocCommentTemplateAtPosition(r,n){return e.JsDoc.getDocCommentTemplateAtPosition(e.getNewLineOrDefaultFromHost(t),o.getCurrentSourceFile(r),n)}function isValidBraceCompletionAtPosition(t,r,n){if(n===60){return false}var i=o.getCurrentSourceFile(t);if(e.isInString(i,r)){return false}if(e.isInsideJsxElementOrAttribute(i,r)){return n===123}if(e.isInTemplateString(i,r)){return false}switch(n){case 39:case 34:case 96:return!e.isInComment(i,r)}return true}function getJsxClosingTagAtPosition(t,r){var n=o.getCurrentSourceFile(t);var i=e.findPrecedingToken(r,n);if(!i)return undefined;var a=i.kind===30&&e.isJsxOpeningElement(i.parent)?i.parent.parent:e.isJsxText(i)?i.parent:undefined;if(a&&isUnclosedTag(a)){return{newText:"</"+a.openingElement.tagName.getText(n)+">"}}}function isUnclosedTag(t){var r=t.openingElement,n=t.closingElement,i=t.parent;return!e.tagNamesAreEquivalent(r.tagName,n.tagName)||e.isJsxElement(i)&&e.tagNamesAreEquivalent(r.tagName,i.openingElement.tagName)&&isUnclosedTag(i)}function getSpanOfEnclosingComment(t,r,n){var i=o.getCurrentSourceFile(t);var a=e.formatting.getRangeOfEnclosingComment(i,r);return a&&(!n||a.kind===3)?e.createTextSpanFromRange(a):undefined}function getTodoComments(t,r){synchronizeHostData();var n=getValidSourceFile(t);l.throwIfCancellationRequested();var i=n.text;var a=[];if(r.length>0&&!isNodeModulesFile(n.fileName)){var o=getTodoCommentsRegExp();var s=void 0;while(s=o.exec(i)){l.throwIfCancellationRequested();var c=3;e.Debug.assert(s.length===r.length+c);var u=s[1];var f=s.index+u.length;if(!e.isInComment(n,f)){continue}var d=void 0;for(var p=0;p<r.length;p++){if(s[p+c]){d=r[p]}}if(d===undefined)return e.Debug.fail();if(isLetterOrDigit(i.charCodeAt(f+d.text.length))){continue}var g=s[2];a.push({descriptor:d,message:g,position:f})}}return a;function escapeRegExp(e){return e.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")}function getTodoCommentsRegExp(){var t=/(?:\/\/+\s*)/.source;var n=/(?:\/\*+\s*)/.source;var i=/(?:^(?:\s|\*)*)/.source;var a="("+i+"|"+t+"|"+n+")";var o="(?:"+e.map(r,function(e){return"("+escapeRegExp(e.text)+")"}).join("|")+")";var s=/(?:$|\*\/)/.source;var c=/(?:.*?)/.source;var u="("+o+c+")";var l=a+u+s;return new RegExp(l,"gim")}function isLetterOrDigit(e){return e>=97&&e<=122||e>=65&&e<=90||e>=48&&e<=57}function isNodeModulesFile(t){return e.stringContains(t,"/node_modules/")}}function getRenameInfo(t,r){synchronizeHostData();return e.Rename.getRenameInfo(s,getValidSourceFile(t),r)}function getRefactorContext(r,n,i,a){var o=typeof n==="number"?[n,undefined]:[n.pos,n.end],s=o[0],c=o[1];return{file:r,startPosition:s,endPosition:c,program:getProgram(),host:t,formatContext:e.formatting.getFormatContext(a),cancellationToken:l,preferences:i}}function getApplicableRefactors(t,r,n){if(n===void 0){n=e.emptyOptions}synchronizeHostData();var i=getValidSourceFile(t);return e.refactor.getApplicableRefactors(getRefactorContext(i,r,n))}function getEditsForRefactor(t,r,n,i,a,o){if(o===void 0){o=e.emptyOptions}synchronizeHostData();var s=getValidSourceFile(t);return e.refactor.getEditsForRefactor(getRefactorContext(s,n,o,r),i,a)}return{dispose:dispose,cleanupSemanticCache:cleanupSemanticCache,getSyntacticDiagnostics:getSyntacticDiagnostics,getSemanticDiagnostics:getSemanticDiagnostics,getSuggestionDiagnostics:getSuggestionDiagnostics,getCompilerOptionsDiagnostics:getCompilerOptionsDiagnostics,getSyntacticClassifications:getSyntacticClassifications,getSemanticClassifications:getSemanticClassifications,getEncodedSyntacticClassifications:getEncodedSyntacticClassifications,getEncodedSemanticClassifications:getEncodedSemanticClassifications,getCompletionsAtPosition:getCompletionsAtPosition,getCompletionEntryDetails:getCompletionEntryDetails,getCompletionEntrySymbol:getCompletionEntrySymbol,getSignatureHelpItems:getSignatureHelpItems,getQuickInfoAtPosition:getQuickInfoAtPosition,getDefinitionAtPosition:getDefinitionAtPosition,getDefinitionAndBoundSpan:getDefinitionAndBoundSpan,getImplementationAtPosition:getImplementationAtPosition,getTypeDefinitionAtPosition:getTypeDefinitionAtPosition,getReferencesAtPosition:getReferencesAtPosition,findReferences:findReferences,getOccurrencesAtPosition:getOccurrencesAtPosition,getDocumentHighlights:getDocumentHighlights,getNameOrDottedNameSpan:getNameOrDottedNameSpan,getBreakpointStatementAtPosition:getBreakpointStatementAtPosition,getNavigateToItems:getNavigateToItems,getRenameInfo:getRenameInfo,findRenameLocations:findRenameLocations,getNavigationBarItems:getNavigationBarItems,getNavigationTree:getNavigationTree,getOutliningSpans:getOutliningSpans,getTodoComments:getTodoComments,getBraceMatchingAtPosition:getBraceMatchingAtPosition,getIndentationAtPosition:getIndentationAtPosition,getFormattingEditsForRange:getFormattingEditsForRange,getFormattingEditsForDocument:getFormattingEditsForDocument,getFormattingEditsAfterKeystroke:getFormattingEditsAfterKeystroke,getDocCommentTemplateAtPosition:getDocCommentTemplateAtPosition,isValidBraceCompletionAtPosition:isValidBraceCompletionAtPosition,getJsxClosingTagAtPosition:getJsxClosingTagAtPosition,getSpanOfEnclosingComment:getSpanOfEnclosingComment,getCodeFixesAtPosition:getCodeFixesAtPosition,getCombinedCodeFix:getCombinedCodeFix,applyCodeActionCommand:applyCodeActionCommand,organizeImports:organizeImports,getEditsForFileRename:getEditsForFileRename,getEmitOutput:getEmitOutput,getNonBoundSourceFile:getNonBoundSourceFile,getProgram:getProgram,getApplicableRefactors:getApplicableRefactors,getEditsForRefactor:getEditsForRefactor,toLineColumnOffset:y.toLineColumnOffset,getSourceMapper:function(){return y}}}e.createLanguageService=createLanguageService;function getNameTable(e){if(!e.nameTable){initializeNameTable(e)}return e.nameTable}e.getNameTable=getNameTable;function initializeNameTable(t){var r=t.nameTable=e.createUnderscoreEscapedMap();t.forEachChild(function walk(t){if(e.isIdentifier(t)&&!e.isTagName(t)&&t.escapedText||e.isStringOrNumericLiteralLike(t)&&literalIsName(t)){var n=e.getEscapedTextOfIdentifierOrLiteral(t);r.set(n,r.get(n)===undefined?t.pos:-1)}e.forEachChild(t,walk);if(e.hasJSDocNodes(t)){for(var i=0,a=t.jsDoc;i<a.length;i++){var o=a[i];e.forEachChild(o,walk)}}})}function literalIsName(t){return e.isDeclarationName(t)||t.parent.kind===259||isArgumentOfElementAccessExpression(t)||e.isLiteralComputedPropertyDeclarationName(t)}function getContainingObjectLiteralElement(t){var r=getContainingObjectLiteralElementWorker(t);return r&&(e.isObjectLiteralExpression(r.parent)||e.isJsxAttributes(r.parent))?r:undefined}e.getContainingObjectLiteralElement=getContainingObjectLiteralElement;function getContainingObjectLiteralElementWorker(t){switch(t.kind){case 10:case 8:if(t.parent.kind===149){return e.isObjectLiteralElement(t.parent.parent)?t.parent.parent:undefined}case 72:return e.isObjectLiteralElement(t.parent)&&(t.parent.parent.kind===188||t.parent.parent.kind===268)&&t.parent.name===t?t.parent:undefined}return undefined}function getSymbolAtLocationForQuickInfo(t,r){var n=getContainingObjectLiteralElement(t);if(n){var i=r.getContextualType(n.parent);var a=i&&getPropertySymbolsFromContextualType(n,r,i,false);if(a&&a.length===1){return e.first(a)}}return r.getSymbolAtLocation(t)}function getPropertySymbolsFromContextualType(t,r,n,i){var a=e.getNameFromPropertyName(t.name);if(!a)return e.emptyArray;if(!n.isUnion()){var o=n.getProperty(a);return o?[o]:e.emptyArray}var s=e.mapDefined(n.types,function(n){return e.isObjectLiteralExpression(t.parent)&&r.isTypeInvalidDueToUnionDiscriminant(n,t.parent)?undefined:n.getProperty(a)});if(i&&(s.length===0||s.length===n.types.length)){var o=n.getProperty(a);if(o)return[o]}if(s.length===0){return e.mapDefined(n.types,function(e){return e.getProperty(a)})}return s}e.getPropertySymbolsFromContextualType=getPropertySymbolsFromContextualType;function isArgumentOfElementAccessExpression(e){return e&&e.parent&&e.parent.kind===190&&e.parent.argumentExpression===e}function getDefaultLibFilePath(t){if(typeof __dirname!=="undefined"){return r.ab+"typescript/lib"+e.directorySeparator+""+e.getDefaultLibFileName(t)}throw new Error("getDefaultLibFilePath is only supported when consumed as a node module. ")}e.getDefaultLibFilePath=getDefaultLibFilePath;e.objectAllocator=getServicesObjectAllocator()})(s||(s={}));var s;(function(e){var t;(function(t){function spanInSourceFileAtLocation(t,r){if(t.isDeclarationFile){return undefined}var n=e.getTokenAtPosition(t,r);var i=t.getLineAndCharacterOfPosition(r).line;if(t.getLineAndCharacterOfPosition(n.getStart(t)).line>i){var a=e.findPrecedingToken(n.pos,t);if(!a||t.getLineAndCharacterOfPosition(a.getEnd()).line!==i){return undefined}n=a}if(n.flags&4194304){return undefined}return spanInNode(n);function textSpan(r,n){var i=r.decorators?e.skipTrivia(t.text,r.decorators.end):r.getStart(t);return e.createTextSpanFromBounds(i,(n||r).getEnd())}function textSpanEndingAtNextToken(r,n){return textSpan(r,e.findNextToken(n,n.parent,t))}function spanInNodeIfStartsOnSameLine(e,r){if(e&&i===t.getLineAndCharacterOfPosition(e.getStart(t)).line){return spanInNode(e)}return spanInNode(r)}function spanInNodeArray(r){return e.createTextSpanFromBounds(e.skipTrivia(t.text,r.pos),r.end)}function spanInPreviousNode(r){return spanInNode(e.findPrecedingToken(r.pos,t))}function spanInNextNode(r){return spanInNode(e.findNextToken(r,r.parent,t))}function spanInNode(r){if(r){var n=r.parent;switch(r.kind){case 219:return spanInVariableDeclaration(r.declarationList.declarations[0]);case 237:case 154:case 153:return spanInVariableDeclaration(r);case 151:return spanInParameterDeclaration(r);case 239:case 156:case 155:case 158:case 159:case 157:case 196:case 197:return spanInFunctionDeclaration(r);case 218:if(e.isFunctionBlock(r)){return spanInFunctionBlock(r)}case 245:return spanInBlock(r);case 274:return spanInBlock(r.block);case 221:return textSpan(r.expression);case 230:return textSpan(r.getChildAt(0),r.expression);case 224:return textSpanEndingAtNextToken(r,r.expression);case 223:return spanInNode(r.statement);case 236:return textSpan(r.getChildAt(0));case 222:return textSpanEndingAtNextToken(r,r.expression);case 233:return spanInNode(r.statement);case 229:case 228:return textSpan(r.getChildAt(0),r.label);case 225:return spanInForStatement(r);case 226:return textSpanEndingAtNextToken(r,r.expression);case 227:return spanInInitializerOfForLike(r);case 232:return textSpanEndingAtNextToken(r,r.expression);case 271:case 272:return spanInNode(r.statements[0]);case 235:return spanInBlock(r.tryBlock);case 234:return textSpan(r,r.expression);case 254:return textSpan(r,r.expression);case 248:return textSpan(r,r.moduleReference);case 249:return textSpan(r,r.moduleSpecifier);case 255:return textSpan(r,r.moduleSpecifier);case 244:if(e.getModuleInstanceState(r)!==1){return undefined}case 240:case 243:case 278:case 186:return textSpan(r);case 231:return spanInNode(r.statement);case 152:return spanInNodeArray(n.decorators);case 184:case 185:return spanInBindingPattern(r);case 241:case 242:return undefined;case 26:case 1:return spanInNodeIfStartsOnSameLine(e.findPrecedingToken(r.pos,t));case 27:return spanInPreviousNode(r);case 18:return spanInOpenBraceToken(r);case 19:return spanInCloseBraceToken(r);case 23:return spanInCloseBracketToken(r);case 20:return spanInOpenParenToken(r);case 21:return spanInCloseParenToken(r);case 57:return spanInColonToken(r);case 30:case 28:return spanInGreaterThanOrLessThanToken(r);case 107:return spanInWhileKeyword(r);case 83:case 75:case 88:return spanInNextNode(r);case 147:return spanInOfKeyword(r);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(r)){return spanInArrayLiteralOrObjectLiteralDestructuringPattern(r)}if((r.kind===72||r.kind===208||r.kind===275||r.kind===276)&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(n)){return textSpan(r)}if(r.kind===204){var i=r,a=i.left,o=i.operatorToken;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a)){return spanInArrayLiteralOrObjectLiteralDestructuringPattern(a)}if(o.kind===59&&e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent)){return textSpan(r)}if(o.kind===27){return spanInNode(a)}}if(e.isExpressionNode(r)){switch(n.kind){case 223:return spanInPreviousNode(r);case 152:return spanInNode(r.parent);case 225:case 227:return textSpan(r);case 204:if(r.parent.operatorToken.kind===27){return textSpan(r)}break;case 197:if(r.parent.body===r){return textSpan(r)}break}}switch(r.parent.kind){case 275:if(r.parent.name===r&&!e.isArrayLiteralOrObjectLiteralDestructuringPattern(r.parent.parent)){return spanInNode(r.parent.initializer)}break;case 194:if(r.parent.type===r){return spanInNextNode(r.parent.type)}break;case 237:case 151:{var s=r.parent,c=s.initializer,u=s.type;if(c===r||u===r||e.isAssignmentOperator(r.kind)){return spanInPreviousNode(r)}break}case 204:{var a=r.parent.left;if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(a)&&r!==a){return spanInPreviousNode(r)}break}default:if(e.isFunctionLike(r.parent)&&r.parent.type===r){return spanInPreviousNode(r)}}return spanInNode(r.parent)}}function textSpanFromVariableDeclaration(r){if(e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]===r){return textSpan(e.findPrecedingToken(r.pos,t,r.parent),r)}else{return textSpan(r)}}function spanInVariableDeclaration(r){if(r.parent.parent.kind===226){return spanInNode(r.parent.parent)}var n=r.parent;if(e.isBindingPattern(r.name)){return spanInBindingPattern(r.name)}if(r.initializer||e.hasModifier(r,1)||n.parent.kind===227){return textSpanFromVariableDeclaration(r)}if(e.isVariableDeclarationList(r.parent)&&r.parent.declarations[0]!==r){return spanInNode(e.findPrecedingToken(r.pos,t,r.parent))}}function canHaveSpanInParameterDeclaration(t){return!!t.initializer||t.dotDotDotToken!==undefined||e.hasModifier(t,4|8)}function spanInParameterDeclaration(t){if(e.isBindingPattern(t.name)){return spanInBindingPattern(t.name)}else if(canHaveSpanInParameterDeclaration(t)){return textSpan(t)}else{var r=t.parent;var n=r.parameters.indexOf(t);e.Debug.assert(n!==-1);if(n!==0){return spanInParameterDeclaration(r.parameters[n-1])}else{return spanInNode(r.body)}}}function canFunctionHaveSpanInWholeDeclaration(t){return e.hasModifier(t,1)||t.parent.kind===240&&t.kind!==157}function spanInFunctionDeclaration(e){if(!e.body){return undefined}if(canFunctionHaveSpanInWholeDeclaration(e)){return textSpan(e)}return spanInNode(e.body)}function spanInFunctionBlock(e){var t=e.statements.length?e.statements[0]:e.getLastToken();if(canFunctionHaveSpanInWholeDeclaration(e.parent)){return spanInNodeIfStartsOnSameLine(e.parent,t)}return spanInNode(t)}function spanInBlock(r){switch(r.parent.kind){case 244:if(e.getModuleInstanceState(r.parent)!==1){return undefined}case 224:case 222:case 226:return spanInNodeIfStartsOnSameLine(r.parent,r.statements[0]);case 225:case 227:return spanInNodeIfStartsOnSameLine(e.findPrecedingToken(r.pos,t,r.parent),r.statements[0])}return spanInNode(r.statements[0])}function spanInInitializerOfForLike(e){if(e.initializer.kind===238){var t=e.initializer;if(t.declarations.length>0){return spanInNode(t.declarations[0])}}else{return spanInNode(e.initializer)}}function spanInForStatement(e){if(e.initializer){return spanInInitializerOfForLike(e)}if(e.condition){return textSpan(e.condition)}if(e.incrementor){return textSpan(e.incrementor)}}function spanInBindingPattern(t){var r=e.forEach(t.elements,function(e){return e.kind!==210?e:undefined});if(r){return spanInNode(r)}if(t.parent.kind===186){return textSpan(t.parent)}return textSpanFromVariableDeclaration(t.parent)}function spanInArrayLiteralOrObjectLiteralDestructuringPattern(t){e.Debug.assert(t.kind!==185&&t.kind!==184);var r=t.kind===187?t.elements:t.properties;var n=e.forEach(r,function(e){return e.kind!==210?e:undefined});if(n){return spanInNode(n)}return textSpan(t.parent.kind===204?t.parent:t)}function spanInOpenBraceToken(r){switch(r.parent.kind){case 243:var n=r.parent;return spanInNodeIfStartsOnSameLine(e.findPrecedingToken(r.pos,t,r.parent),n.members.length?n.members[0]:n.getLastToken(t));case 240:var i=r.parent;return spanInNodeIfStartsOnSameLine(e.findPrecedingToken(r.pos,t,r.parent),i.members.length?i.members[0]:i.getLastToken(t));case 246:return spanInNodeIfStartsOnSameLine(r.parent.parent,r.parent.clauses[0])}return spanInNode(r.parent)}function spanInCloseBraceToken(t){switch(t.parent.kind){case 245:if(e.getModuleInstanceState(t.parent.parent)!==1){return undefined}case 243:case 240:return textSpan(t);case 218:if(e.isFunctionBlock(t.parent)){return textSpan(t)}case 274:return spanInNode(e.lastOrUndefined(t.parent.statements));case 246:var r=t.parent;var n=e.lastOrUndefined(r.clauses);if(n){return spanInNode(e.lastOrUndefined(n.statements))}return undefined;case 184:var i=t.parent;return spanInNode(e.lastOrUndefined(i.elements)||i);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var a=t.parent;return textSpan(e.lastOrUndefined(a.properties)||a)}return spanInNode(t.parent)}}function spanInCloseBracketToken(t){switch(t.parent.kind){case 185:var r=t.parent;return textSpan(e.lastOrUndefined(r.elements)||r);default:if(e.isArrayLiteralOrObjectLiteralDestructuringPattern(t.parent)){var n=t.parent;return textSpan(e.lastOrUndefined(n.elements)||n)}return spanInNode(t.parent)}}function spanInOpenParenToken(e){if(e.parent.kind===223||e.parent.kind===191||e.parent.kind===192){return spanInPreviousNode(e)}if(e.parent.kind===195){return spanInNextNode(e)}return spanInNode(e.parent)}function spanInCloseParenToken(e){switch(e.parent.kind){case 196:case 239:case 197:case 156:case 155:case 158:case 159:case 157:case 224:case 223:case 225:case 227:case 191:case 192:case 195:return spanInPreviousNode(e);default:return spanInNode(e.parent)}}function spanInColonToken(t){if(e.isFunctionLike(t.parent)||t.parent.kind===275||t.parent.kind===151){return spanInPreviousNode(t)}return spanInNode(t.parent)}function spanInGreaterThanOrLessThanToken(e){if(e.parent.kind===194){return spanInNextNode(e)}return spanInNode(e.parent)}function spanInWhileKeyword(e){if(e.parent.kind===223){return textSpanEndingAtNextToken(e,e.parent.expression)}return spanInNode(e.parent)}function spanInOfKeyword(e){if(e.parent.kind===227){return spanInNextNode(e)}return spanInNode(e.parent)}}}t.spanInSourceFileAtLocation=spanInSourceFileAtLocation})(t=e.BreakpointResolver||(e.BreakpointResolver={}))})(s||(s={}));var s;(function(e){function transform(t,r,n){var i=[];n=e.fixupCompilerOptions(n,i);var a=e.isArray(t)?t:[t];var o=e.transformNodes(undefined,undefined,n,a,r,true);o.diagnostics=e.concatenate(o.diagnostics,i);return o}e.transform=transform})(s||(s={}));var c=function(){return this}();var s;(function(t){function logInternalError(e,t){if(e){e.log("*INTERNAL ERROR* - Exception in typescript services: "+t.message)}}var r=function(){function ScriptSnapshotShimAdapter(e){this.scriptSnapshotShim=e}ScriptSnapshotShimAdapter.prototype.getText=function(e,t){return this.scriptSnapshotShim.getText(e,t)};ScriptSnapshotShimAdapter.prototype.getLength=function(){return this.scriptSnapshotShim.getLength()};ScriptSnapshotShimAdapter.prototype.getChangeRange=function(e){var r=e;var n=this.scriptSnapshotShim.getChangeRange(r.scriptSnapshotShim);if(n===null){return null}var i=JSON.parse(n);return t.createTextChangeRange(t.createTextSpan(i.span.start,i.span.length),i.newLength)};ScriptSnapshotShimAdapter.prototype.dispose=function(){if("dispose"in this.scriptSnapshotShim){this.scriptSnapshotShim.dispose()}};return ScriptSnapshotShimAdapter}();var n=function(){function LanguageServiceShimHostAdapter(e){var r=this;this.shimHost=e;this.loggingEnabled=false;this.tracingEnabled=false;if("getModuleResolutionsForFile"in this.shimHost){this.resolveModuleNames=function(e,n){var i=JSON.parse(r.shimHost.getModuleResolutionsForFile(n));return t.map(e,function(e){var r=t.getProperty(i,e);return r?{resolvedFileName:r,extension:t.extensionFromPath(r),isExternalLibraryImport:false}:undefined})}}if("directoryExists"in this.shimHost){this.directoryExists=function(e){return r.shimHost.directoryExists(e)}}if("getTypeReferenceDirectiveResolutionsForFile"in this.shimHost){this.resolveTypeReferenceDirectives=function(e,n){var i=JSON.parse(r.shimHost.getTypeReferenceDirectiveResolutionsForFile(n));return t.map(e,function(e){return t.getProperty(i,e)})}}}LanguageServiceShimHostAdapter.prototype.log=function(e){if(this.loggingEnabled){this.shimHost.log(e)}};LanguageServiceShimHostAdapter.prototype.trace=function(e){if(this.tracingEnabled){this.shimHost.trace(e)}};LanguageServiceShimHostAdapter.prototype.error=function(e){this.shimHost.error(e)};LanguageServiceShimHostAdapter.prototype.getProjectVersion=function(){if(!this.shimHost.getProjectVersion){return undefined}return this.shimHost.getProjectVersion()};LanguageServiceShimHostAdapter.prototype.getTypeRootsVersion=function(){if(!this.shimHost.getTypeRootsVersion){return 0}return this.shimHost.getTypeRootsVersion()};LanguageServiceShimHostAdapter.prototype.useCaseSensitiveFileNames=function(){return this.shimHost.useCaseSensitiveFileNames?this.shimHost.useCaseSensitiveFileNames():false};LanguageServiceShimHostAdapter.prototype.getCompilationSettings=function(){var e=this.shimHost.getCompilationSettings();if(e===null||e===""){throw Error("LanguageServiceShimHostAdapter.getCompilationSettings: empty compilationSettings")}var t=JSON.parse(e);t.allowNonTsExtensions=true;return t};LanguageServiceShimHostAdapter.prototype.getScriptFileNames=function(){var e=this.shimHost.getScriptFileNames();return JSON.parse(e)};LanguageServiceShimHostAdapter.prototype.getScriptSnapshot=function(e){var t=this.shimHost.getScriptSnapshot(e);return t&&new r(t)};LanguageServiceShimHostAdapter.prototype.getScriptKind=function(e){if("getScriptKind"in this.shimHost){return this.shimHost.getScriptKind(e)}else{return 0}};LanguageServiceShimHostAdapter.prototype.getScriptVersion=function(e){return this.shimHost.getScriptVersion(e)};LanguageServiceShimHostAdapter.prototype.getLocalizedDiagnosticMessages=function(){var e=this.shimHost.getLocalizedDiagnosticMessages();if(e===null||e===""){return null}try{return JSON.parse(e)}catch(e){this.log(e.description||"diagnosticMessages.generated.json has invalid JSON format");return null}};LanguageServiceShimHostAdapter.prototype.getCancellationToken=function(){var e=this.shimHost.getCancellationToken();return new t.ThrottledCancellationToken(e)};LanguageServiceShimHostAdapter.prototype.getCurrentDirectory=function(){return this.shimHost.getCurrentDirectory()};LanguageServiceShimHostAdapter.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))};LanguageServiceShimHostAdapter.prototype.getDefaultLibFileName=function(e){return this.shimHost.getDefaultLibFileName(JSON.stringify(e))};LanguageServiceShimHostAdapter.prototype.readDirectory=function(e,r,n,i,a){var o=t.getFileMatcherPatterns(e,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(e,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))};LanguageServiceShimHostAdapter.prototype.readFile=function(e,t){return this.shimHost.readFile(e,t)};LanguageServiceShimHostAdapter.prototype.fileExists=function(e){return this.shimHost.fileExists(e)};return LanguageServiceShimHostAdapter}();t.LanguageServiceShimHostAdapter=n;var i=function(){function CoreServicesShimHostAdapter(e){var t=this;this.shimHost=e;this.useCaseSensitiveFileNames=this.shimHost.useCaseSensitiveFileNames?this.shimHost.useCaseSensitiveFileNames():false;if("directoryExists"in this.shimHost){this.directoryExists=function(e){return t.shimHost.directoryExists(e)}}else{this.directoryExists=undefined}if("realpath"in this.shimHost){this.realpath=function(e){return t.shimHost.realpath(e)}}else{this.realpath=undefined}}CoreServicesShimHostAdapter.prototype.readDirectory=function(e,r,n,i,a){var o=t.getFileMatcherPatterns(e,n,i,this.shimHost.useCaseSensitiveFileNames(),this.shimHost.getCurrentDirectory());return JSON.parse(this.shimHost.readDirectory(e,JSON.stringify(r),JSON.stringify(o.basePaths),o.excludePattern,o.includeFilePattern,o.includeDirectoryPattern,a))};CoreServicesShimHostAdapter.prototype.fileExists=function(e){return this.shimHost.fileExists(e)};CoreServicesShimHostAdapter.prototype.readFile=function(e){return this.shimHost.readFile(e)};CoreServicesShimHostAdapter.prototype.getDirectories=function(e){return JSON.parse(this.shimHost.getDirectories(e))};return CoreServicesShimHostAdapter}();t.CoreServicesShimHostAdapter=i;function simpleForwardCall(e,r,n,i){var a;if(i){e.log(r);a=t.timestamp()}var o=n();if(i){var s=t.timestamp();e.log(r+" completed in "+(s-a)+" msec");if(t.isString(o)){var c=o;if(c.length>128){c=c.substring(0,128)+"..."}e.log(" result.length="+c.length+", result='"+JSON.stringify(c)+"'")}}return o}function forwardJSONCall(e,t,r,n){return forwardCall(e,t,true,r,n)}function forwardCall(e,r,n,i,a){try{var o=simpleForwardCall(e,r,i,a);return n?JSON.stringify({result:o}):o}catch(n){if(n instanceof t.OperationCanceledException){return JSON.stringify({canceled:true})}logInternalError(e,n);n.description=r;return JSON.stringify({error:n})}}var a=function(){function ShimBase(e){this.factory=e;e.registerShim(this)}ShimBase.prototype.dispose=function(e){this.factory.unregisterShim(this)};return ShimBase}();function realizeDiagnostics(e,t){return e.map(function(e){return realizeDiagnostic(e,t)})}t.realizeDiagnostics=realizeDiagnostics;function realizeDiagnostic(e,r){return{message:t.flattenDiagnosticMessageText(e.messageText,r),start:e.start,length:e.length,category:t.diagnosticCategoryName(e),code:e.code,reportsUnnecessary:e.reportsUnnecessary}}var s=function(e){o(LanguageServiceShimObject,e);function LanguageServiceShimObject(t,r,n){var i=e.call(this,t)||this;i.host=r;i.languageService=n;i.logPerformance=false;i.logger=i.host;return i}LanguageServiceShimObject.prototype.forwardJSONCall=function(e,t){return forwardJSONCall(this.logger,e,t,this.logPerformance)};LanguageServiceShimObject.prototype.dispose=function(t){this.logger.log("dispose()");this.languageService.dispose();this.languageService=null;if(c&&c.CollectGarbage){c.CollectGarbage();this.logger.log("CollectGarbage()")}this.logger=null;e.prototype.dispose.call(this,t)};LanguageServiceShimObject.prototype.refresh=function(e){this.forwardJSONCall("refresh("+e+")",function(){return null})};LanguageServiceShimObject.prototype.cleanupSemanticCache=function(){var e=this;this.forwardJSONCall("cleanupSemanticCache()",function(){e.languageService.cleanupSemanticCache();return null})};LanguageServiceShimObject.prototype.realizeDiagnostics=function(e){var r=t.getNewLineOrDefaultFromHost(this.host);return realizeDiagnostics(e,r)};LanguageServiceShimObject.prototype.getSyntacticClassifications=function(e,r,n){var i=this;return this.forwardJSONCall("getSyntacticClassifications('"+e+"', "+r+", "+n+")",function(){return i.languageService.getSyntacticClassifications(e,t.createTextSpan(r,n))})};LanguageServiceShimObject.prototype.getSemanticClassifications=function(e,r,n){var i=this;return this.forwardJSONCall("getSemanticClassifications('"+e+"', "+r+", "+n+")",function(){return i.languageService.getSemanticClassifications(e,t.createTextSpan(r,n))})};LanguageServiceShimObject.prototype.getEncodedSyntacticClassifications=function(e,r,n){var i=this;return this.forwardJSONCall("getEncodedSyntacticClassifications('"+e+"', "+r+", "+n+")",function(){return convertClassifications(i.languageService.getEncodedSyntacticClassifications(e,t.createTextSpan(r,n)))})};LanguageServiceShimObject.prototype.getEncodedSemanticClassifications=function(e,r,n){var i=this;return this.forwardJSONCall("getEncodedSemanticClassifications('"+e+"', "+r+", "+n+")",function(){return convertClassifications(i.languageService.getEncodedSemanticClassifications(e,t.createTextSpan(r,n)))})};LanguageServiceShimObject.prototype.getSyntacticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSyntacticDiagnostics('"+e+"')",function(){var r=t.languageService.getSyntacticDiagnostics(e);return t.realizeDiagnostics(r)})};LanguageServiceShimObject.prototype.getSemanticDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSemanticDiagnostics('"+e+"')",function(){var r=t.languageService.getSemanticDiagnostics(e);return t.realizeDiagnostics(r)})};LanguageServiceShimObject.prototype.getSuggestionDiagnostics=function(e){var t=this;return this.forwardJSONCall("getSuggestionDiagnostics('"+e+"')",function(){return t.realizeDiagnostics(t.languageService.getSuggestionDiagnostics(e))})};LanguageServiceShimObject.prototype.getCompilerOptionsDiagnostics=function(){var e=this;return this.forwardJSONCall("getCompilerOptionsDiagnostics()",function(){var t=e.languageService.getCompilerOptionsDiagnostics();return e.realizeDiagnostics(t)})};LanguageServiceShimObject.prototype.getQuickInfoAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getQuickInfoAtPosition('"+e+"', "+t+")",function(){return r.languageService.getQuickInfoAtPosition(e,t)})};LanguageServiceShimObject.prototype.getNameOrDottedNameSpan=function(e,t,r){var n=this;return this.forwardJSONCall("getNameOrDottedNameSpan('"+e+"', "+t+", "+r+")",function(){return n.languageService.getNameOrDottedNameSpan(e,t,r)})};LanguageServiceShimObject.prototype.getBreakpointStatementAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBreakpointStatementAtPosition('"+e+"', "+t+")",function(){return r.languageService.getBreakpointStatementAtPosition(e,t)})};LanguageServiceShimObject.prototype.getSignatureHelpItems=function(e,t,r){var n=this;return this.forwardJSONCall("getSignatureHelpItems('"+e+"', "+t+")",function(){return n.languageService.getSignatureHelpItems(e,t,r)})};LanguageServiceShimObject.prototype.getDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAtPosition('"+e+"', "+t+")",function(){return r.languageService.getDefinitionAtPosition(e,t)})};LanguageServiceShimObject.prototype.getDefinitionAndBoundSpan=function(e,t){var r=this;return this.forwardJSONCall("getDefinitionAndBoundSpan('"+e+"', "+t+")",function(){return r.languageService.getDefinitionAndBoundSpan(e,t)})};LanguageServiceShimObject.prototype.getTypeDefinitionAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getTypeDefinitionAtPosition('"+e+"', "+t+")",function(){return r.languageService.getTypeDefinitionAtPosition(e,t)})};LanguageServiceShimObject.prototype.getImplementationAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getImplementationAtPosition('"+e+"', "+t+")",function(){return r.languageService.getImplementationAtPosition(e,t)})};LanguageServiceShimObject.prototype.getRenameInfo=function(e,t){var r=this;return this.forwardJSONCall("getRenameInfo('"+e+"', "+t+")",function(){return r.languageService.getRenameInfo(e,t)})};LanguageServiceShimObject.prototype.findRenameLocations=function(e,t,r,n){var i=this;return this.forwardJSONCall("findRenameLocations('"+e+"', "+t+", "+r+", "+n+")",function(){return i.languageService.findRenameLocations(e,t,r,n)})};LanguageServiceShimObject.prototype.getBraceMatchingAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getBraceMatchingAtPosition('"+e+"', "+t+")",function(){return r.languageService.getBraceMatchingAtPosition(e,t)})};LanguageServiceShimObject.prototype.isValidBraceCompletionAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("isValidBraceCompletionAtPosition('"+e+"', "+t+", "+r+")",function(){return n.languageService.isValidBraceCompletionAtPosition(e,t,r)})};LanguageServiceShimObject.prototype.getSpanOfEnclosingComment=function(e,t,r){var n=this;return this.forwardJSONCall("getSpanOfEnclosingComment('"+e+"', "+t+")",function(){return n.languageService.getSpanOfEnclosingComment(e,t,r)})};LanguageServiceShimObject.prototype.getIndentationAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getIndentationAtPosition('"+e+"', "+t+")",function(){var i=JSON.parse(r);return n.languageService.getIndentationAtPosition(e,t,i)})};LanguageServiceShimObject.prototype.getReferencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getReferencesAtPosition('"+e+"', "+t+")",function(){return r.languageService.getReferencesAtPosition(e,t)})};LanguageServiceShimObject.prototype.findReferences=function(e,t){var r=this;return this.forwardJSONCall("findReferences('"+e+"', "+t+")",function(){return r.languageService.findReferences(e,t)})};LanguageServiceShimObject.prototype.getOccurrencesAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getOccurrencesAtPosition('"+e+"', "+t+")",function(){return r.languageService.getOccurrencesAtPosition(e,t)})};LanguageServiceShimObject.prototype.getDocumentHighlights=function(e,r,n){var i=this;return this.forwardJSONCall("getDocumentHighlights('"+e+"', "+r+")",function(){var a=i.languageService.getDocumentHighlights(e,r,JSON.parse(n));var o=t.normalizeSlashes(e).toLowerCase();return t.filter(a,function(e){return t.normalizeSlashes(e.fileName).toLowerCase()===o})})};LanguageServiceShimObject.prototype.getCompletionsAtPosition=function(e,t,r){var n=this;return this.forwardJSONCall("getCompletionsAtPosition('"+e+"', "+t+", "+r+")",function(){return n.languageService.getCompletionsAtPosition(e,t,r)})};LanguageServiceShimObject.prototype.getCompletionEntryDetails=function(e,t,r,n,i,a){var o=this;return this.forwardJSONCall("getCompletionEntryDetails('"+e+"', "+t+", '"+r+"')",function(){var s=n===undefined?undefined:JSON.parse(n);return o.languageService.getCompletionEntryDetails(e,t,r,s,i,a)})};LanguageServiceShimObject.prototype.getFormattingEditsForRange=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsForRange('"+e+"', "+t+", "+r+")",function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsForRange(e,t,r,a)})};LanguageServiceShimObject.prototype.getFormattingEditsForDocument=function(e,t){var r=this;return this.forwardJSONCall("getFormattingEditsForDocument('"+e+"')",function(){var n=JSON.parse(t);return r.languageService.getFormattingEditsForDocument(e,n)})};LanguageServiceShimObject.prototype.getFormattingEditsAfterKeystroke=function(e,t,r,n){var i=this;return this.forwardJSONCall("getFormattingEditsAfterKeystroke('"+e+"', "+t+", '"+r+"')",function(){var a=JSON.parse(n);return i.languageService.getFormattingEditsAfterKeystroke(e,t,r,a)})};LanguageServiceShimObject.prototype.getDocCommentTemplateAtPosition=function(e,t){var r=this;return this.forwardJSONCall("getDocCommentTemplateAtPosition('"+e+"', "+t+")",function(){return r.languageService.getDocCommentTemplateAtPosition(e,t)})};LanguageServiceShimObject.prototype.getNavigateToItems=function(e,t,r){var n=this;return this.forwardJSONCall("getNavigateToItems('"+e+"', "+t+", "+r+")",function(){return n.languageService.getNavigateToItems(e,t,r)})};LanguageServiceShimObject.prototype.getNavigationBarItems=function(e){var t=this;return this.forwardJSONCall("getNavigationBarItems('"+e+"')",function(){return t.languageService.getNavigationBarItems(e)})};LanguageServiceShimObject.prototype.getNavigationTree=function(e){var t=this;return this.forwardJSONCall("getNavigationTree('"+e+"')",function(){return t.languageService.getNavigationTree(e)})};LanguageServiceShimObject.prototype.getOutliningSpans=function(e){var t=this;return this.forwardJSONCall("getOutliningSpans('"+e+"')",function(){return t.languageService.getOutliningSpans(e)})};LanguageServiceShimObject.prototype.getTodoComments=function(e,t){var r=this;return this.forwardJSONCall("getTodoComments('"+e+"')",function(){return r.languageService.getTodoComments(e,JSON.parse(t))})};LanguageServiceShimObject.prototype.getEmitOutput=function(e){var t=this;return this.forwardJSONCall("getEmitOutput('"+e+"')",function(){return t.languageService.getEmitOutput(e)})};LanguageServiceShimObject.prototype.getEmitOutputObject=function(e){var t=this;return forwardCall(this.logger,"getEmitOutput('"+e+"')",false,function(){return t.languageService.getEmitOutput(e)},this.logPerformance)};return LanguageServiceShimObject}(a);function convertClassifications(e){return{spans:e.spans.join(","),endOfLineState:e.endOfLineState}}var u=function(e){o(ClassifierShimObject,e);function ClassifierShimObject(r,n){var i=e.call(this,r)||this;i.logger=n;i.logPerformance=false;i.classifier=t.createClassifier();return i}ClassifierShimObject.prototype.getEncodedLexicalClassifications=function(e,t,r){var n=this;if(r===void 0){r=false}return forwardJSONCall(this.logger,"getEncodedLexicalClassifications",function(){return convertClassifications(n.classifier.getEncodedLexicalClassifications(e,t,r))},this.logPerformance)};ClassifierShimObject.prototype.getClassificationsForLine=function(e,t,r){if(r===void 0){r=false}var n=this.classifier.getClassificationsForLine(e,t,r);var i="";for(var a=0,o=n.entries;a<o.length;a++){var s=o[a];i+=s.length+"\n";i+=s.classification+"\n"}i+=n.finalLexState;return i};return ClassifierShimObject}(a);var l=function(e){o(CoreServicesShimObject,e);function CoreServicesShimObject(t,r,n){var i=e.call(this,t)||this;i.logger=r;i.host=n;i.logPerformance=false;return i}CoreServicesShimObject.prototype.forwardJSONCall=function(e,t){return forwardJSONCall(this.logger,e,t,this.logPerformance)};CoreServicesShimObject.prototype.resolveModuleName=function(e,r,n){var i=this;return this.forwardJSONCall("resolveModuleName('"+e+"')",function(){var a=JSON.parse(n);var o=t.resolveModuleName(r,t.normalizeSlashes(e),a,i.host);var s=o.resolvedModule?o.resolvedModule.resolvedFileName:undefined;if(o.resolvedModule&&o.resolvedModule.extension!==".ts"&&o.resolvedModule.extension!==".tsx"&&o.resolvedModule.extension!==".d.ts"){s=undefined}return{resolvedFileName:s,failedLookupLocations:o.failedLookupLocations}})};CoreServicesShimObject.prototype.resolveTypeReferenceDirective=function(e,r,n){var i=this;return this.forwardJSONCall("resolveTypeReferenceDirective("+e+")",function(){var a=JSON.parse(n);var o=t.resolveTypeReferenceDirective(r,t.normalizeSlashes(e),a,i.host);return{resolvedFileName:o.resolvedTypeReferenceDirective?o.resolvedTypeReferenceDirective.resolvedFileName:undefined,primary:o.resolvedTypeReferenceDirective?o.resolvedTypeReferenceDirective.primary:true,failedLookupLocations:o.failedLookupLocations}})};CoreServicesShimObject.prototype.getPreProcessedFileInfo=function(e,r){var n=this;return this.forwardJSONCall("getPreProcessedFileInfo('"+e+"')",function(){var e=t.preProcessFile(t.getSnapshotText(r),true,true);return{referencedFiles:n.convertFileReferences(e.referencedFiles),importedFiles:n.convertFileReferences(e.importedFiles),ambientExternalModules:e.ambientExternalModules,isLibFile:e.isLibFile,typeReferenceDirectives:n.convertFileReferences(e.typeReferenceDirectives),libReferenceDirectives:n.convertFileReferences(e.libReferenceDirectives)}})};CoreServicesShimObject.prototype.getAutomaticTypeDirectiveNames=function(e){var r=this;return this.forwardJSONCall("getAutomaticTypeDirectiveNames('"+e+"')",function(){var n=JSON.parse(e);return t.getAutomaticTypeDirectiveNames(n,r.host)})};CoreServicesShimObject.prototype.convertFileReferences=function(e){if(!e){return undefined}var r=[];for(var n=0,i=e;n<i.length;n++){var a=i[n];r.push({path:t.normalizeSlashes(a.fileName),position:a.pos,length:a.end-a.pos})}return r};CoreServicesShimObject.prototype.getTSConfigFileInfo=function(e,r){var n=this;return this.forwardJSONCall("getTSConfigFileInfo('"+e+"')",function(){var i=t.parseJsonText(e,t.getSnapshotText(r));var a=t.normalizeSlashes(e);var o=t.parseJsonSourceFileConfigFileContent(i,n.host,t.getDirectoryPath(a),{},a);return{options:o.options,typeAcquisition:o.typeAcquisition,files:o.fileNames,raw:o.raw,errors:realizeDiagnostics(i.parseDiagnostics.concat(o.errors),"\r\n")}})};CoreServicesShimObject.prototype.getDefaultCompilationSettings=function(){return this.forwardJSONCall("getDefaultCompilationSettings()",function(){return t.getDefaultCompilerOptions()})};CoreServicesShimObject.prototype.discoverTypings=function(e){var r=this;var n=t.createGetCanonicalFileName(false);return this.forwardJSONCall("discoverTypings()",function(){var i=JSON.parse(e);if(r.safeList===undefined){r.safeList=t.JsTyping.loadSafeList(r.host,t.toPath(i.safeListPath,i.safeListPath,n))}return t.JsTyping.discoverTypings(r.host,function(e){return r.logger.log(e)},i.fileNames,t.toPath(i.projectRootPath,i.projectRootPath,n),r.safeList,i.packageNameToTypingLocation,i.typeAcquisition,i.unresolvedImports,i.typesRegistry)})};return CoreServicesShimObject}(a);var f=function(){function TypeScriptServicesFactory(){this._shims=[]}TypeScriptServicesFactory.prototype.getServicesVersion=function(){return t.servicesVersion};TypeScriptServicesFactory.prototype.createLanguageServiceShim=function(e){try{if(this.documentRegistry===undefined){this.documentRegistry=t.createDocumentRegistry(e.useCaseSensitiveFileNames&&e.useCaseSensitiveFileNames(),e.getCurrentDirectory())}var r=new n(e);var i=t.createLanguageService(r,this.documentRegistry,false);return new s(this,e,i)}catch(t){logInternalError(e,t);throw t}};TypeScriptServicesFactory.prototype.createClassifierShim=function(e){try{return new u(this,e)}catch(t){logInternalError(e,t);throw t}};TypeScriptServicesFactory.prototype.createCoreServicesShim=function(e){try{var t=new i(e);return new l(this,e,t)}catch(t){logInternalError(e,t);throw t}};TypeScriptServicesFactory.prototype.close=function(){t.clear(this._shims);this.documentRegistry=undefined};TypeScriptServicesFactory.prototype.registerShim=function(e){this._shims.push(e)};TypeScriptServicesFactory.prototype.unregisterShim=function(e){for(var t=0;t<this._shims.length;t++){if(this._shims[t]===e){delete this._shims[t];return}}throw new Error("Invalid operation")};return TypeScriptServicesFactory}();t.TypeScriptServicesFactory=f;if(true&&e.exports){e.exports=t}})(s||(s={}));var u;(function(e){var t;(function(e){e.TypeScriptServicesFactory=s.TypeScriptServicesFactory})(t=e.Services||(e.Services={}))})(u||(u={}));var l=s.versionMajorMinor},5770:(e,t,r)=>{"use strict";var n=r(485);var i=r(8441);var a=r(3826);var o=r(3712);e.exports=function unionValue(e,t,r){if(!n(e)){throw new TypeError("union-value expects the first argument to be an object.")}if(typeof t!=="string"){throw new TypeError("union-value expects `prop` to be a string.")}var s=arrayify(a(e,t));o(e,t,i(s,arrayify(r)));return e};function arrayify(e){if(e===null||typeof e==="undefined"){return[]}if(Array.isArray(e)){return e}return[e]}},3712:(e,t,r)=>{"use strict";var n=r(3919);var i=r(8333);var a=r(1221);var o=r(485);e.exports=function(e,t,r){if(!o(e)){return e}if(Array.isArray(t)){t=n(t)}if(typeof t!=="string"){return e}var s=t.split(".");var c=s.length,u=-1;var l=e;var f;while(++u<c){var d=s[u];while(d[d.length-1]==="\\"){d=d.slice(0,-1)+"."+s[++u]}if(u===c-1){f=d;break}if(!o(e[d])){e[d]={}}e=e[d]}if(e.hasOwnProperty(f)&&o(e[f])){if(a(r)){i(e[f],r)}else{e[f]=r}}else{e[f]=r}return l}},2093:(e,t,r)=>{"use strict";var n=r(977);var i=r(5147);e.exports=function unset(e,t){if(!n(e)){throw new TypeError("expected an object.")}if(e.hasOwnProperty(t)){delete e[t];return true}if(i(e,t)){var r=t.split(".");var a=r.pop();while(r.length&&r[r.length-1].slice(-1)==="\\"){a=r.pop().slice(0,-1)+"."+a}while(r.length)e=e[t=r.shift()];return delete e[a]}return true}},5147:(e,t,r)=>{"use strict";var n=r(5940);var i=r(6166);var a=r(3826);e.exports=function(e,t,r){if(n(e)){return i(a(e,t),r)}return i(e,t)}},5940:(e,t,r)=>{"use strict";var n=r(7523);e.exports=function isObject(e){return e!=null&&typeof e==="object"&&n(e)===false}},6166:e=>{"use strict";e.exports=function hasValue(e,t){if(e===null||e===undefined){return false}if(typeof e==="boolean"){return true}if(typeof e==="number"){if(e===0&&t===true){return false}return true}if(e.length!==undefined){return e.length!==0}for(var r in e){if(e.hasOwnProperty(r)){return true}}return false}},6002:(e,t,r)=>{var n=r(5622);"use strict";function urix(e){if(n.sep==="\\"){return e.replace(/\\/g,"/").replace(/^[a-z]:\/?/i,"/")}return e}e.exports=urix},1967:e=>{"use strict";e.exports=function base(e,t){if(!isObject(e)&&typeof e!=="function"){throw new TypeError("expected an object or function")}var r=isObject(t)?t:{};var n=typeof r.prop==="string"?r.prop:"fns";if(!Array.isArray(e[n])){define(e,n,[])}define(e,"use",use);define(e,"run",function(t){if(!isObject(t))return;if(!t.use||!t.run){define(t,n,t[n]||[]);define(t,"use",use)}if(!t[n]||t[n].indexOf(base)===-1){t.use(base)}var r=this||e;var i=r[n];var a=i.length;var o=-1;while(++o<a){t.use(i[o])}return t});function use(t,i,a){var o=1;if(typeof t==="string"||Array.isArray(t)){i=wrap(t,i);o++}else{a=i;i=t}if(typeof i!=="function"){throw new TypeError("expected a function")}var s=this||e;var c=s[n];var u=[].slice.call(arguments,o);u.unshift(s);if(typeof r.hook==="function"){r.hook.apply(s,u)}var l=i.apply(s,u);if(typeof l==="function"&&c.indexOf(l)===-1){c.push(l)}return s}function wrap(e,t){return function plugin(){return this.type===e?t.apply(this,arguments):plugin}}return e};function isObject(e){return e&&typeof e==="object"&&!Array.isArray(e)}function define(e,t,r){Object.defineProperty(e,t,{configurable:true,writable:true,value:r})}},2090:(e,t,r)=>{const n=r(3686);const i=n.makeLogger;n.makeLogger=function(e,t){const r=i(e,t);const n=r.logWarning;r.logWarning=function(e){if(e.indexOf("This version may or may not be compatible with ts-loader")!==-1)return;return n(e)};return r};e.exports=r(2070);e.exports.typescript=r(3779)},2357:e=>{"use strict";e.exports=require("assert")},4293:e=>{"use strict";e.exports=require("buffer")},7082:e=>{"use strict";e.exports=require("console")},7619:e=>{"use strict";e.exports=require("constants")},6417:e=>{"use strict";e.exports=require("crypto")},5747:e=>{"use strict";e.exports=require("fs")},2282:e=>{"use strict";e.exports=require("module")},1631:e=>{"use strict";e.exports=require("net")},2087:e=>{"use strict";e.exports=require("os")},5622:e=>{"use strict";e.exports=require("path")},2413:e=>{"use strict";e.exports=require("stream")},8993:e=>{"use strict";e.exports=require("tty")},8835:e=>{"use strict";e.exports=require("url")},1669:e=>{"use strict";e.exports=require("util")}};var t={};function __webpack_require__(r){if(t[r]){return t[r].exports}var n=t[r]={id:r,loaded:false,exports:{}};var i=true;try{e[r].call(n.exports,n,n.exports,__webpack_require__);i=false}finally{if(i)delete t[r]}n.loaded=true;return n.exports}(()=>{__webpack_require__.nmd=(e=>{e.paths=[];if(!e.children)e.children=[];return e})})();__webpack_require__.ab=__dirname+"/";return __webpack_require__(2090)})();