UNPKG

coc-pyright

Version:
1 lines 614 kB
!function(e){var t={};function n(s){if(t[s])return t[s].exports;var r=t[s]={i:s,l:!1,exports:{}};return e[s].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,s){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:s})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var s=Object.create(null);if(n.r(s),Object.defineProperty(s,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(s,r,function(t){return e[t]}.bind(null,r));return s},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=62)}([function(e,t){e.exports=require("assert")},function(e,t){e.exports=require("path")},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.cleanNodeAnalysisInfo=function(e){const t=e;delete t.scope,delete t.declaration,delete t.flowNode,delete t.afterFlowNode,delete t.fileInfo,delete t.typeCache},t.getImportInfo=function(e){return e.importInfo},t.setImportInfo=function(e,t){e.importInfo=t},t.getScope=function(e){return e.scope},t.setScope=function(e,t){e.scope=t},t.getFunctionDeclaration=function(e){return e.declaration},t.setFunctionDeclaration=function(e,t){e.declaration=t},t.getFlowNode=function(e){return e.flowNode},t.setFlowNode=function(e,t){e.flowNode=t},t.getAfterFlowNode=function(e){return e.afterFlowNode},t.setAfterFlowNode=function(e,t){e.afterFlowNode=t},t.getFileInfo=function(e){return e.fileInfo},t.setFileInfo=function(e,t){e.fileInfo=t},t.getExpressionType=function(e){const t=e;if(t.typeCache)return t.typeCache.type},t.setExpressionType=function(e,t){const n=e;n.typeCache?n.typeCache.type=t:n.typeCache={type:t}},t.getExpressionTypeWriteVersion=function(e){const t=e;if(t.typeCache)return t.typeCache.writeVersion},t.setExpressionTypeWriteVersion=function(e,t){const n=e;n.typeCache?n.typeCache.writeVersion=t:n.typeCache={writeVersion:t}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){function t(e){return e.start+e.length}e.create=function(e,t){if(e<0)throw new Error("start must be non-negative");if(t<0)throw new Error("length must be non-negative");return{start:e,length:t}},e.getEnd=t,e.contains=function(e,n){return n>=e.start&&n<t(e)},e.extend=function e(n,s){s&&(Array.isArray(s)?s.forEach(t=>{e(n,t)}):(s.start<n.start&&(n.length+=n.start-s.start,n.start=s.start),t(s)>t(n)&&(n.length+=t(s)-t(n))))}}(t.TextRange||(t.TextRange={}))},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(0);function r(e,t){if(0===t.end)return{line:0,column:0};e>=t.end&&(e=t.end-1);const n=t.getItemContaining(e);s(n>=0&&n<=t.length);const r=t.getItemAt(n);return s(void 0!==r),{line:n,column:e-r.start}}t.convertOffsetToPosition=r,t.convertOffsetsToRange=function(e,t,n){return{start:r(e,n),end:r(t,n)}},t.convertPositionToOffset=function(e,t){if(!(e.line>=t.count))return t.getItemAt(e.line).start+e.column}},function(e,t,n){"use strict";function s(e){for(var n in e)t.hasOwnProperty(n)||(t[n]=e[n])}Object.defineProperty(t,"__esModule",{value:!0});const r=n(18),i=n(63);t.RequestType=i.RequestType,t.RequestType0=i.RequestType0,t.RequestType1=i.RequestType1,t.RequestType2=i.RequestType2,t.RequestType3=i.RequestType3,t.RequestType4=i.RequestType4,t.RequestType5=i.RequestType5,t.RequestType6=i.RequestType6,t.RequestType7=i.RequestType7,t.RequestType8=i.RequestType8,t.RequestType9=i.RequestType9,t.ResponseError=i.ResponseError,t.ErrorCodes=i.ErrorCodes,t.NotificationType=i.NotificationType,t.NotificationType0=i.NotificationType0,t.NotificationType1=i.NotificationType1,t.NotificationType2=i.NotificationType2,t.NotificationType3=i.NotificationType3,t.NotificationType4=i.NotificationType4,t.NotificationType5=i.NotificationType5,t.NotificationType6=i.NotificationType6,t.NotificationType7=i.NotificationType7,t.NotificationType8=i.NotificationType8,t.NotificationType9=i.NotificationType9;const o=n(29);t.MessageReader=o.MessageReader,t.StreamMessageReader=o.StreamMessageReader,t.IPCMessageReader=o.IPCMessageReader,t.SocketMessageReader=o.SocketMessageReader;const a=n(30);t.MessageWriter=a.MessageWriter,t.StreamMessageWriter=a.StreamMessageWriter,t.IPCMessageWriter=a.IPCMessageWriter,t.SocketMessageWriter=a.SocketMessageWriter;const c=n(23);t.Disposable=c.Disposable,t.Event=c.Event,t.Emitter=c.Emitter;const l=n(64);t.CancellationTokenSource=l.CancellationTokenSource,t.CancellationToken=l.CancellationToken;const u=n(65);var p,d,h,f,g,m,y,_;s(n(66)),s(n(68)),function(e){e.type=new i.NotificationType("$/cancelRequest")}(p||(p={})),function(e){e.type=new i.NotificationType("$/progress")}(d||(d={}));t.ProgressType=class{constructor(){this._=void 0}},t.NullLogger=Object.freeze({error:()=>{},warn:()=>{},info:()=>{},log:()=>{}}),function(e){e[e.Off=0]="Off",e[e.Messages=1]="Messages",e[e.Verbose=2]="Verbose"}(h=t.Trace||(t.Trace={})),function(e){e.fromString=function(t){switch(t=t.toLowerCase()){case"off":return e.Off;case"messages":return e.Messages;case"verbose":return e.Verbose;default:return e.Off}},e.toString=function(t){switch(t){case e.Off:return"off";case e.Messages:return"messages";case e.Verbose:return"verbose";default:return"off"}}}(h=t.Trace||(t.Trace={})),function(e){e.Text="text",e.JSON="json"}(f=t.TraceFormat||(t.TraceFormat={})),function(e){e.fromString=function(t){return"json"===(t=t.toLowerCase())?e.JSON:e.Text}}(f=t.TraceFormat||(t.TraceFormat={})),function(e){e.type=new i.NotificationType("$/setTraceNotification")}(g=t.SetTraceNotification||(t.SetTraceNotification={})),function(e){e.type=new i.NotificationType("$/logTraceNotification")}(m=t.LogTraceNotification||(t.LogTraceNotification={})),function(e){e[e.Closed=1]="Closed",e[e.Disposed=2]="Disposed",e[e.AlreadyListening=3]="AlreadyListening"}(y=t.ConnectionErrors||(t.ConnectionErrors={}));class T extends Error{constructor(e,t){super(t),this.code=e,Object.setPrototypeOf(this,T.prototype)}}function b(e,t,n,s){let o=0,a=0,b=0;const v="2.0";let E,C,x=void 0,S=Object.create(null),k=void 0,w=Object.create(null),F=new Map,I=new u.LinkedMap,N=Object.create(null),R=Object.create(null),P=h.Off,A=f.Text,O=_.New,D=new c.Emitter,L=new c.Emitter,M=new c.Emitter,U=new c.Emitter,$=new c.Emitter;function B(e){return"req-"+e.toString()}function q(e,t){var n;i.isRequestMessage(t)?e.set(B(t.id),t):i.isResponseMessage(t)?e.set(null===(n=t.id)?"res-unknown-"+(++b).toString():"res-"+n.toString(),t):e.set("not-"+(++a).toString(),t)}function W(e){}function V(){return O===_.Listening}function j(){return O===_.Closed}function z(){return O===_.Disposed}function H(){O!==_.New&&O!==_.Listening||(O=_.Closed,L.fire(void 0))}function K(){E||0===I.size||(E=setImmediate(()=>{E=void 0,function(){if(0===I.size)return;let e=I.shift();try{i.isRequestMessage(e)?function(e){if(z())return;function n(n,s,r){let o={jsonrpc:v,id:e.id};n instanceof i.ResponseError?o.error=n.toJson():o.result=void 0===n?null:n,Y(o,s,r),t.write(o)}function s(n,s,r){let i={jsonrpc:v,id:e.id,error:n.toJson()};Y(i,s,r),t.write(i)}!function(e){if(P===h.Off||!C)return;if(A===f.Text){let t=void 0;P===h.Verbose&&e.params&&(t=`Params: ${JSON.stringify(e.params,null,4)}\n\n`),C.log(`Received request '${e.method} - (${e.id})'.`,t)}else Q("receive-request",e)}(e);let o,a,c=S[e.method];c&&(o=c.type,a=c.handler);let u=Date.now();if(a||x){let c=new l.CancellationTokenSource,p=String(e.id);R[p]=c;try{let l,d=l=void 0===e.params||void 0!==o&&0===o.numberOfParams?a?a(c.token):x(e.method,c.token):r.array(e.params)&&(void 0===o||o.numberOfParams>1)?a?a(...e.params,c.token):x(e.method,...e.params,c.token):a?a(e.params,c.token):x(e.method,e.params,c.token);l?d.then?d.then(t=>{delete R[p],n(t,e.method,u)},t=>{delete R[p],t instanceof i.ResponseError?s(t,e.method,u):t&&r.string(t.message)?s(new i.ResponseError(i.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,u):s(new i.ResponseError(i.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,u)}):(delete R[p],n(l,e.method,u)):(delete R[p],function(n,s,r){void 0===n&&(n=null);let i={jsonrpc:v,id:e.id,result:n};Y(i,s,r),t.write(i)}(l,e.method,u))}catch(t){delete R[p],t instanceof i.ResponseError?n(t,e.method,u):t&&r.string(t.message)?s(new i.ResponseError(i.ErrorCodes.InternalError,`Request ${e.method} failed with message: ${t.message}`),e.method,u):s(new i.ResponseError(i.ErrorCodes.InternalError,`Request ${e.method} failed unexpectedly without providing any details.`),e.method,u)}}else s(new i.ResponseError(i.ErrorCodes.MethodNotFound,`Unhandled method ${e.method}`),e.method,u)}(e):i.isNotificationMessage(e)?function(e){if(z())return;let t,s=void 0;if(e.method===p.type.method)t=e=>{let t=e.id,n=R[String(t)];n&&n.cancel()};else{let n=w[e.method];n&&(t=n.handler,s=n.type)}if(t||k)try{!function(e){if(P===h.Off||!C||e.method===m.type.method)return;if(A===f.Text){let t=void 0;P===h.Verbose&&(t=e.params?`Params: ${JSON.stringify(e.params,null,4)}\n\n`:"No parameters provided.\n\n"),C.log(`Received notification '${e.method}'.`,t)}else Q("receive-notification",e)}(e),void 0===e.params||void 0!==s&&0===s.numberOfParams?t?t():k(e.method):r.array(e.params)&&(void 0===s||s.numberOfParams>1)?t?t(...e.params):k(e.method,...e.params):t?t(e.params):k(e.method,e.params)}catch(t){t.message?n.error(`Notification handler '${e.method}' failed with message: ${t.message}`):n.error(`Notification handler '${e.method}' failed unexpectedly.`)}else M.fire(e)}(e):i.isResponseMessage(e)?function(e){if(z())return;if(null===e.id)e.error?n.error(`Received response message without id: Error is: \n${JSON.stringify(e.error,void 0,4)}`):n.error("Received response message without id. No further error information provided.");else{let t=String(e.id),s=N[t];if(function(e,t){if(P===h.Off||!C)return;if(A===f.Text){let n=void 0;if(P===h.Verbose&&(e.error&&e.error.data?n=`Error data: ${JSON.stringify(e.error.data,null,4)}\n\n`:e.result?n=`Result: ${JSON.stringify(e.result,null,4)}\n\n`:void 0===e.error&&(n="No result returned.\n\n")),t){let s=e.error?` Request failed: ${e.error.message} (${e.error.code}).`:"";C.log(`Received response '${t.method} - (${e.id})' in ${Date.now()-t.timerStart}ms.${s}`,n)}else C.log(`Received response ${e.id} without active response promise.`,n)}else Q("receive-response",e)}(e,s),s){delete N[t];try{if(e.error){let t=e.error;s.reject(new i.ResponseError(t.code,t.message,t.data))}else{if(void 0===e.result)throw new Error("Should never happen.");s.resolve(e.result)}}catch(e){e.message?n.error(`Response handler '${s.method}' failed with message: ${e.message}`):n.error(`Response handler '${s.method}' failed unexpectedly.`)}}}}(e):function(e){if(!e)return void n.error("Received empty message.");n.error(`Received message which is neither a response nor a notification message:\n${JSON.stringify(e,null,4)}`);let t=e;if(r.string(t.id)||r.number(t.id)){let e=String(t.id),n=N[e];n&&n.reject(new Error("The received response has neither a result nor an error property."))}}(e)}finally{K()}}()}))}e.onClose(H),e.onError((function(e){D.fire([e,void 0,void 0])})),t.onClose(H),t.onError((function(e){D.fire(e)}));let G=e=>{try{if(i.isNotificationMessage(e)&&e.method===p.type.method){let n=B(e.params.id),r=I.get(n);if(i.isRequestMessage(r)){let i=s&&s.cancelUndispatched?s.cancelUndispatched(r,W):void 0;if(i&&(void 0!==i.error||void 0!==i.result))return I.delete(n),i.id=r.id,Y(i,e.method,Date.now()),void t.write(i)}}q(I,e)}finally{K()}};function Y(e,t,n){if(P!==h.Off&&C)if(A===f.Text){let s=void 0;P===h.Verbose&&(e.error&&e.error.data?s=`Error data: ${JSON.stringify(e.error.data,null,4)}\n\n`:e.result?s=`Result: ${JSON.stringify(e.result,null,4)}\n\n`:void 0===e.error&&(s="No result returned.\n\n")),C.log(`Sending response '${t} - (${e.id})'. Processing request took ${Date.now()-n}ms`,s)}else Q("send-response",e)}function Q(e,t){if(!C||P===h.Off)return;const n={isLSPMessage:!0,type:e,message:t,timestamp:Date.now()};C.log(n)}function J(){if(j())throw new T(y.Closed,"Connection is closed.");if(z())throw new T(y.Disposed,"Connection is disposed.")}function X(e){return void 0===e?null:e}function Z(e,t){let n,s=e.numberOfParams;switch(s){case 0:n=null;break;case 1:n=X(t[0]);break;default:n=[];for(let e=0;e<t.length&&e<s;e++)n.push(X(t[e]));if(t.length<s)for(let e=t.length;e<s;e++)n.push(null)}return n}let ee={sendNotification:(e,...n)=>{let s,i;if(J(),r.string(e))switch(s=e,n.length){case 0:i=null;break;case 1:i=n[0];break;default:i=n}else s=e.method,i=Z(e,n);let o={jsonrpc:v,method:s,params:i};!function(e){if(P!==h.Off&&C)if(A===f.Text){let t=void 0;P===h.Verbose&&(t=e.params?`Params: ${JSON.stringify(e.params,null,4)}\n\n`:"No parameters provided.\n\n"),C.log(`Sending notification '${e.method}'.`,t)}else Q("send-notification",e)}(o),t.write(o)},onNotification:(e,t)=>{J(),r.func(e)?k=e:t&&(r.string(e)?w[e]={type:void 0,handler:t}:w[e.method]={type:e,handler:t})},onProgress:(e,t,n)=>{if(F.has(t))throw new Error(`Progress handler for token ${t} already registered`);return F.set(t,n),{dispose:()=>{F.delete(t)}}},sendProgress:(e,t,n)=>{ee.sendNotification(d.type,{token:t,value:n})},onUnhandledProgress:U.event,sendRequest:(e,...n)=>{let s,a;J(),function(){if(!V())throw new Error("Call listen() first.")}();let c=void 0;if(r.string(e))switch(s=e,n.length){case 0:a=null;break;case 1:l.CancellationToken.is(n[0])?(a=null,c=n[0]):a=X(n[0]);break;default:const e=n.length-1;l.CancellationToken.is(n[e])?(c=n[e],a=2===n.length?X(n[0]):n.slice(0,e).map(e=>X(e))):a=n.map(e=>X(e))}else{s=e.method,a=Z(e,n);let t=e.numberOfParams;c=l.CancellationToken.is(n[t])?n[t]:void 0}let u=o++,d=new Promise((e,n)=>{let r={jsonrpc:v,id:u,method:s,params:a},o={method:s,timerStart:Date.now(),resolve:e,reject:n};!function(e){if(P!==h.Off&&C)if(A===f.Text){let t=void 0;P===h.Verbose&&e.params&&(t=`Params: ${JSON.stringify(e.params,null,4)}\n\n`),C.log(`Sending request '${e.method} - (${e.id})'.`,t)}else Q("send-request",e)}(r);try{t.write(r)}catch(e){o.reject(new i.ResponseError(i.ErrorCodes.MessageWriteError,e.message?e.message:"Unknown reason")),o=null}o&&(N[String(u)]=o)});return c&&c.onCancellationRequested(()=>{ee.sendNotification(p.type,{id:u})}),d},onRequest:(e,t)=>{J(),r.func(e)?x=e:t&&(r.string(e)?S[e]={type:void 0,handler:t}:S[e.method]={type:e,handler:t})},trace:(e,t,n)=>{let s=!1,i=f.Text;void 0!==n&&(r.boolean(n)?s=n:(s=n.sendNotification||!1,i=n.traceFormat||f.Text)),A=i,C=(P=e)===h.Off?void 0:t,!s||j()||z()||ee.sendNotification(g.type,{value:h.toString(e)})},onError:D.event,onClose:L.event,onUnhandledNotification:M.event,onDispose:$.event,dispose:()=>{if(z())return;O=_.Disposed,$.fire(void 0);let n=new Error("Connection got disposed.");Object.keys(N).forEach(e=>{N[e].reject(n)}),N=Object.create(null),R=Object.create(null),I=new u.LinkedMap,r.func(t.dispose)&&t.dispose(),r.func(e.dispose)&&e.dispose()},listen:()=>{J(),function(){if(V())throw new T(y.AlreadyListening,"Connection is already listening")}(),O=_.Listening,e.listen(G)},inspect:()=>{console.log("inspect")}};return ee.onNotification(m.type,e=>{P!==h.Off&&C&&C.log(e.message,P===h.Verbose?e.verbose:void 0)}),ee.onNotification(d.type,e=>{const t=F.get(e.token);t?t(e.value):U.fire(e)}),ee}t.ConnectionError=T,function(e){e.is=function(e){let t=e;return t&&r.func(t.cancelUndispatched)}}(t.ConnectionStrategy||(t.ConnectionStrategy={})),function(e){e[e.New=1]="New",e[e.Listening=2]="Listening",e[e.Closed=3]="Closed",e[e.Disposed=4]="Disposed"}(_||(_={})),t.createMessageConnection=function(e,n,s,r){var i;return s||(s=t.NullLogger),b(void 0!==(i=e).listen&&void 0===i.read?e:new o.StreamMessageReader(e),function(e){return void 0!==e.write&&void 0===e.end}(n)?n:new a.StreamMessageWriter(n),s,r)}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),r=n(4),i=n(3),o=n(21),a=n(13);function c(e,t){if(t<e.start||t>i.TextRange.getEnd(e))return;const n=(new a.ParseTreeWalker).visitNode(e);for(const e of n)if(e){const n=c(e,t);if(n)return n}return e}function l(e){const t={0:"+",1:"+=",2:"=",3:"&",4:"&=",5:"~",6:"|",7:"|=",8:"^",9:"^=",10:"/",11:"/=",12:"==",13:"//",14:"//=",15:">",16:">=",17:"<<",18:"<<=",19:"<",20:"<=",21:"@",22:"@=",23:"%",24:"%=",25:"*",26:"*=",27:"!=",28:"**",29:"**=",30:">>",31:">>=",32:"-",33:"-=",35:"and",36:"or",37:"not",38:"is",39:"is not",40:"in",41:"not in"};return t[e]?t[e]:"unknown"}t.getNodeDepth=function(e){let t=0,n=e;for(;n;)t++,n=n.parent;return t},t.findNodeByPosition=function(e,t,n){const s=r.convertPositionToOffset(t,n);if(void 0!==s)return c(e,s)},t.findNodeByOffset=c,t.printExpression=function e(t,n=0){if(39===t.nodeType)return t.nameToken.value;if(36===t.nodeType)return e(t.leftExpression,n)+"."+t.memberName.nameToken.value;if(9===t.nodeType)return e(t.leftExpression,n)+"("+t.arguments.map(t=>{let s="";return 1===t.argumentCategory?s="*":2===t.argumentCategory&&(s="**"),t.name&&(s+=t.name.nameToken.value+"="),s+=e(t.valueExpression,n)}).join(", ")+")";if(24===t.nodeType)return e(t.baseExpression,n)+"["+t.items.items.map(t=>e(t,n)).join(", ")+"]";if(56===t.nodeType)return l(t.operator)+" "+e(t.expression,n);if(7===t.nodeType)return e(t.leftExpression,n)+" "+l(t.operator)+" "+e(t.rightExpression,n);if(41===t.nodeType)return t.token.value.toString();if(49===t.nodeType)return 1&n&&t.typeAnnotation?e(t.typeAnnotation,n):t.strings.map(t=>e(t,n)).join(" ");if(50===t.nodeType){let e="";return 8&t.token.flags&&(e+="r"),16&t.token.flags&&(e+="u"),32&t.token.flags&&(e+="b"),64&t.token.flags&&(e+="f"),4&t.token.flags?1&t.token.flags?e+=`'''${t.token.escapedValue}'''`:e+=`"""${t.token.escapedValue}"""`:1&t.token.flags?e+=`'${t.token.escapedValue}'`:e+=`"${t.token.escapedValue}"`,e}if(3===t.nodeType)return e(t.leftExpression,n)+" = "+e(t.rightExpression,n);if(4===t.nodeType)return e(t.name,n)+" := "+e(t.rightExpression,n);if(55===t.nodeType)return e(t.valueExpression,n)+": "+e(t.typeAnnotation,n);if(5===t.nodeType)return e(t.leftExpression,n)+" "+l(t.operator)+" "+e(t.rightExpression,n);if(6===t.nodeType)return"await "+e(t.expression,n);if(52===t.nodeType)return e(t.ifExpression,n)+" if "+e(t.testExpression,n)+" else "+e(t.elseExpression,n);if(32===t.nodeType){return`[${t.entries.map(t=>e(t,n)).join(", ")}]`}if(57===t.nodeType)return"*"+e(t.expression,n);if(53===t.nodeType){const s=t.expressions.map(t=>e(t,n));return 1===s.length?`(${s[0]}, )`:`(${s.join(", ")})`}if(61===t.nodeType)return t.expression?"yield "+e(t.expression,n):"yield";if(62===t.nodeType)return"yield from "+e(t.expression,n);if(18===t.nodeType)return"...";if(33===t.nodeType){let s="<ListExpression>";if(o.isExpressionNode(t.expression))s=e(t.expression,n);else if(17===t.expression.nodeType){s=`${e(t.expression.keyExpression,n)}: ${e(t.expression.valueExpression,n)}`}return s+" "+t.comprehensions.map(t=>34===t.nodeType?`${t.isAsync?"async ":""}for `+e(t.targetExpression,n)+` in ${e(t.iterableExpression,n)}`:`if ${e(t.testExpression,n)}`).join(" ")}if(47===t.nodeType){let s="";return t.startValue&&(s+=e(t.startValue,n)),t.endValue&&(s+=": "+e(t.endValue,n)),t.stepValue&&(s+=": "+e(t.stepValue,n)),s}if(31===t.nodeType)return"lambda "+t.parameters.map(t=>{let s="";return 1===t.category?s+="*":2===t.category&&(s+="**"),t.name&&(s+=t.name.nameToken.value),t.defaultValue&&(s+=" = "+e(t.defaultValue,n)),s}).join(", ")+": "+e(t.expression,n);if(11===t.nodeType){if(31===t.token.keywordType)return"True";if(14===t.token.keywordType)return"False";if(8===t.token.keywordType)return"__debug__";if(24===t.token.keywordType)return"None"}else{if(15===t.nodeType)return`{ ${t.entries.map(t=>17===t.nodeType?`${e(t.keyExpression,n)}: `+`${e(t.valueExpression,n)}`:e(t,n))} }`;if(16===t.nodeType)return`**${e(t.expandExpression,n)}`;if(46===t.nodeType)return t.entries.map(t=>e(t,n)).join(", ")}return"<Expression>"},t.printOperator=l,t.getEnclosingClass=function(e,t=!1){let n=e.parent;for(;n;){if(10===n.nodeType)return n;if(37===n.nodeType)return;if(29===n.nodeType&&t)return;n=n.parent}},t.getEnclosingModule=function(e){let t=e.parent;for(;t;){if(37===t.nodeType)return t;t=t.parent}s.fail("Module node not found")},t.getEnclosingClassOrModule=function(e,t=!1){let n=e.parent;for(;n;){if(10===n.nodeType)return n;if(37===n.nodeType)return n;if(29===n.nodeType&&t)return;n=n.parent}},t.getEnclosingFunction=function(e){let t=e.parent;for(;t;){if(29===t.nodeType)return t;if(10===t.nodeType)return;t=t.parent}},t.isNodeContainedWithin=function(e,t){let n=e.parent;for(;n;){if(n===t)return!0;n=n.parent}return!1},t.isSuiteEmpty=function(e){for(const t of e.statements){if(48!==t.nodeType)return!1;for(const e of t.statements)if(18===e.nodeType);else if(49!==e.nodeType)return!1}return!0},t.isMatchingExpression=function e(t,n){return 39===t.nodeType&&39===n.nodeType?t.nameToken.value===n.nameToken.value:36===t.nodeType&&36===n.nodeType&&(e(t.leftExpression,n.leftExpression)&&t.memberName.nameToken.value===n.memberName.nameToken.value)},t.isWithinDefaultParamInitializer=function(e){let t,n=e;for(;n;){if(42===n.nodeType&&t===n.defaultValue)return!0;if(31===n.nodeType||29===n.nodeType||10===n.nodeType||37===n.nodeType)return!1;t=n,n=n.parent}return!1}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),r=n(10),i=n(14);t.maxTypeRecursionCount=16;class o extends r.default{}var a,c,l,u,p,d,h;function f(e){return 2===e.category||1===e.category||11===e.category&&void 0===e.subtypes.find(e=>!f(e))}function g(e,n,s=0){if(e.category!==n.category)return!1;if(s>t.maxTypeRecursionCount)return!0;switch(e.category){case 8:{const t=n;if(!c.isSameGenericClass(e,t))return!1;const r=c.getTypeArguments(e),i=c.getTypeArguments(t);if(!r&&!i)return!0;if(!r||!i)return!1;const o=Math.max(r.length,i.length);for(let e=0;e<o;e++){if(!g(e<r.length?r[e]:d.create(),e<i.length?i[e]:d.create(),s+1))return!1}return!0}case 9:{const t=n;return e.literalValue===t.literalValue&&g(e.classType,t.classType,s+1)}case 5:{const t=n,r=u.getParameters(e),i=u.getParameters(t);if(r.length!==i.length)return!1;for(let n=0;n<r.length;n++){const o=r[n],a=i[n];if(o.category!==a.category)return!1;if(o.name!==a.name)return!1;if(!g(u.getEffectiveParameterType(e,n),u.getEffectiveParameterType(t,n),s+1))return!1}return!!g(u.getEffectiveReturnType(e),u.getEffectiveReturnType(t),s+1)}case 6:{const t=n;if(e.overloads.length!==t.overloads.length)return!1;for(let n=0;n<e.overloads.length;n++)if(!g(e.overloads[n].type,t.overloads[n].type))return!1;return!0}case 11:{const t=n,r=e.subtypes,i=t.subtypes;return r.length===i.length&&void 0===r.find(e=>!h.containsType(t,e,s+1))}case 12:{const t=n;if(e.name!==t.name)return!1;const r=e.boundType,i=t.boundType;if(r){if(!i||!g(r,i,s+1))return!1}else if(i)return!1;if(e.isContravariant!==t.isContravariant)return!1;if(e.isCovariant!==t.isCovariant)return!1;const o=e.constraints,a=t.constraints;if(o.length!==a.length)return!1;for(let e=0;e<o.length;e++)if(!g(o[e],a[e],s+1))return!1;return!0}case 10:{const t=n;return e.fields===t.fields||!(!e.fields.isEmpty()||!t.fields.isEmpty())}}return!0}function m(e,t=0){let n=c.getClassName(e);const s=c.getTypeArguments(e);if(s)s.length>0&&(n+="["+s.map(e=>T(e,t+1)).join(", ")+"]");else{const s=c.getTypeParameters(e);s.length>0&&(n+="["+s.map(e=>T(e,t+1)).join(", ")+"]")}return n}function y(e){const t=e.literalValue;if(void 0===t)return"";let n;if("string"==typeof t){n=`${"bytes"===e.classType.details.name?"b":""}'${t.toString()}'`}else n="boolean"==typeof t?t?"True":"False":t.toString();return`Literal[${n}]`}function _(e,n=0){const s=u.getParameters(e).map((s,r)=>{let i="";if(1===s.category?i+="*":2===s.category&&(i+="**"),s.name&&(i+=s.name),0===s.category){const s=u.getEffectiveParameterType(e,r);i+=": "+(n<t.maxTypeRecursionCount?T(s,n+1):"")}return i}),r=u.getEffectiveReturnType(e);return[s,n<t.maxTypeRecursionCount?T(r,n+1):""]}function T(e,n=0){switch(e.category){case 0:return"Unbound";case 1:return"Unknown";case 10:return"Module";case 8:return"Type["+m(e,n+1)+"]";case 9:{const t=e;return void 0!==t.literalValue?y(t):m(t.classType,n+1)}case 5:{const t=_(e,n);return`(${t[0].join(", ")}) -> ${t[1]}`}case 6:return`Overload[${e.overloads.map(e=>T(e.type,n+1)).join(", ")}]`;case 7:{const s=e,r=u.getEffectiveReturnType(s.getter);return n<t.maxTypeRecursionCount?T(r,n+1):""}case 11:{const s=e,r=s.subtypes;if(void 0!==r.find(e=>3===e.category)){return"Optional["+(n<t.maxTypeRecursionCount?T(b(s),n+1):"")+"]"}return"Union["+(n<t.maxTypeRecursionCount?r.map(e=>T(e,n+1)).join(", "):"")+"]"}case 12:{const s=e,r=s.name;if(n>0)return r;const i=[`'${r}'`];if(n<t.maxTypeRecursionCount)for(const e of s.constraints)i.push(T(e,n+1));return"TypeVar["+i.join(", ")+"]"}case 3:return"None";case 4:return"Never";case 2:return e.isEllipsis?"...":"Any"}return""}function b(e){return v(e,e=>3===e.category)}function v(e,t){if(11===e.category){const n=e.subtypes.filter(e=>!t(e));if(n.length<e.subtypes.length)return E(n)}return e}function E(e){if(0===(e=e.filter(e=>4!==e.category)).length)return p.create();if(1===e.length)return e[0];let t=[];for(const n of e)11===n.category?t=t.concat(n.subtypes):t.push(n);const n=[(t=t.sort((e,t)=>9===e.category&&void 0!==e.literalValue?1:9===t.category&&void 0!==t.literalValue?-1:0))[0]];if(t.forEach((e,t)=>{t>0&&function(e,t){for(let n=0;n<e.length;n++){const s=e[n];if(g(s,t))return;if(9===s.category&&9===t.category){if(C(s,t)&&void 0===s.literalValue)return;if(c.isBuiltIn(s.classType,"bool")&&void 0!==t.literalValue&&!t.literalValue===s.literalValue)return void(e[n]=l.create(s.classType))}}e.push(t)}(n,e)}),1===n.length)return n[0];const s=h.create();return h.addTypes(s,n),s}function C(e,t){return!!g(e,t)||9===t.category&&void 0!==t.literalValue&&g(e,t=l.create(t.classType))}t.TypeVarMap=o,function(e){const t={category:0};e.create=function(){return t}}(t.UnboundType||(t.UnboundType={})),function(e){const t={category:1};e.create=function(){return t}}(a=t.UnknownType||(t.UnknownType={})),function(e){e.create=function(e){return{category:10,fields:e||new i.SymbolTable,loaderFields:new i.SymbolTable}},e.getField=function(e,t){let n=e.fields.get(t);return!n&&e.loaderFields&&(n=e.loaderFields.get(t)),n}}(t.ModuleType||(t.ModuleType={})),function(e){function t(e,t,n,s){return{category:8,details:{name:e,flags:t,typeSourceId:n,baseClasses:[],fields:new i.SymbolTable,typeParameters:[],isAbstractClass:!1,docString:s},skipAbstractClassTest:!1}}function n(e,t){return!!(2&e.details.flags)&&(void 0===t||r(e)===t)}function s(e,t){return!!(1&e.details.flags)&&(void 0===t||r(e)===t)}function r(e){return e.details.name}function o(e){return e.details.baseClasses}function c(e){return e.details.aliasClass?e.details.aliasClass.details.typeParameters:e.details.typeParameters}function l(e,t){return e.details===t.details||(n(e)&&n(t)&&r(e)===r(t)?e.details.typeSourceId===t.details.typeSourceId:!(!u(e,t)&&!u(t,e)))}function u(e,t){return void 0!==t.details.aliasClass&&t.details.aliasClass.details===e.details}e.create=t,e.cloneForSpecialization=function(e,n,s=!1){const r=t(e.details.name,e.details.flags,e.details.typeSourceId);return r.details=e.details,r.typeArguments=n,s&&(r.skipAbstractClassTest=!0),r},e.isGeneric=function(e){return e.details.typeParameters.length>0&&void 0===e.typeArguments},e.isSpecialBuiltIn=n,e.isBuiltIn=s,e.isProtocol=function(e){return void 0!==e.details.baseClasses.find(e=>!(8!==e.type.category||!s(e.type,"Protocol")))},e.setIsAbstractClass=function(e){e.details.isAbstractClass=!0},e.isAbstractClass=function(e){return e.details.isAbstractClass&&!e.skipAbstractClassTest},e.getClassName=r,e.setIsDataClass=function(e,t){e.details.flags|=4,t&&(e.details.flags|=8)},e.isDataClass=function(e){return!!(4&e.details.flags)},e.isSkipSynthesizedInit=function(e){return!!(8&e.details.flags)},e.setIsTypedDict=function(e){e.details.flags|=16},e.isTypedDictClass=function(e){return!!(16&e.details.flags)},e.setCanOmitDictValues=function(e){e.details.flags|=32},e.isCanOmitDictValues=function(e){return!!(32&e.details.flags)},e.getBaseClasses=o,e.setAliasClass=function(e,t){e.details.aliasClass=t},e.getAliasClass=function(e){return e.details.aliasClass},e.getDocString=function(e){return e.details.docString},e.getTypeSourceId=function(e){return e.details.typeSourceId},e.addBaseClass=function(e,t,n){e.details.baseClasses.push({isMetaclass:n,type:t})},e.updateBaseClassType=function(e,t,n){const s=!g(n,e.details.baseClasses[t].type);return e.details.baseClasses[t].type=n,s},e.updateDataClassParameters=function(e,t){let n=!1;const s=e.details.dataClassParameters;return n=!s||(s.length!==t.length||t.some((e,n)=>e.name!==t[n].name||!g(e.type,t[n].type))),e.details.dataClassParameters=t,n},e.getDataClassParameters=function(e){return e.details.dataClassParameters||[]},e.getFields=function(e){return e.details.fields},e.setFields=function(e,t){e.details.fields=t},e.setTypeArguments=function(e,t){if(!n(e)&&t.length<c(e).length)for(;t.length<c(e).length;)t.push(d.create());e.typeArguments=t},e.getTypeArguments=function(e){return e.typeArguments},e.getTypeParameters=c,e.setTypeParameters=function(e,t){let n=!1;if(e.details.typeParameters.length!==t.length)n=!0;else for(let s=0;s<t.length;s++)g(t[s],e.details.typeParameters[s])||(n=!0);return e.details.typeParameters=t,n},e.isSameGenericClass=l,e.isAliasOf=u,e.isDerivedFrom=function e(t,n,r){if(l(t,n))return r&&r.push(t),!0;if(s(t)&&s(n,"object"))return r&&r.push(n),!0;for(const s of o(t))if(8===s.type.category){if(e(s.type,n,r))return r&&r.push(t),!0}else if(f(s.type))return r&&r.push(a.create()),!0;return!1}}(c=t.ClassType||(t.ClassType={})),function(e){function t(e){return{category:9,classType:e}}e.create=t,e.cloneWithLiteral=function(e,n){const s=t(e.classType);return s.literalValue=n,s}}(l=t.ObjectType||(t.ObjectType={})),function(e){function t(e,t){return{category:5,details:{flags:e,parameters:[],docString:t}}}function n(e){return 0!=(32&e.details.flags)}function r(e){return e.specializedTypes?e.specializedTypes.returnType:e.details.declaredReturnType}e.create=t,e.clone=function(e,n=!1){const s=t(e.details.flags,e.details.docString),r=n?1:0;return s.details={flags:e.details.flags,parameters:e.details.parameters.slice(r),declaredReturnType:e.details.declaredReturnType,inferredReturnType:e.details.inferredReturnType,inferredYieldType:e.details.inferredYieldType,builtInName:e.details.builtInName,docString:e.details.docString},n&&(s.details.flags&=-6),e.specializedTypes&&(s.specializedTypes={parameterTypes:e.specializedTypes.parameterTypes.slice(r),returnType:e.specializedTypes.returnType}),s},e.cloneForSpecialization=function(e,n){const r=t(e.details.flags,e.details.docString);return r.details=e.details,s(n.parameterTypes.length===e.details.parameters.length),r.specializedTypes=n,r},e.isInstanceMethod=function(e){return 0!=(1&e.details.flags)},e.setIsInstanceMethod=function(e){e.details.flags|=1},e.isConstructorMethod=function(e){return 0!=(2&e.details.flags)},e.isStaticMethod=function(e){return 0!=(8&e.details.flags)},e.setIsStaticMethod=function(e){e.details.flags|=8},e.isClassMethod=function(e){return 0!=(4&e.details.flags)},e.setIsClassMethod=function(e){e.details.flags|=4},e.isAbstractMethod=function(e){return 0!=(16&e.details.flags)},e.setIsAbstractMethod=function(e){e.details.flags|=16},e.isGenerator=n,e.setIsGenerator=function(e){e.details.flags|=32},e.isSynthesizedMethod=function(e){return 0!=(128&e.details.flags)},e.setIsOverloaded=function(e){e.details.flags|=256},e.isOverloaded=function(e){return 0!=(256&e.details.flags)},e.getBuiltInName=function(e){return e.details.builtInName},e.setBuiltInName=function(e,t){e.details.builtInName=t},e.getDocString=function(e){return e.details.docString},e.getParameters=function(e){return e.details.parameters},e.getParameterCount=function(e){return e.details.parameters.length},e.isDefaultParameterCheckDisabled=function(e){return 0!=(64&e.details.flags)},e.setDefaultParameterCheckDisabled=function(e){e.details.flags|=64},e.setParameterType=function(e,t,n){s(t<e.details.parameters.length);const r=!g(n,e.details.parameters[t].type);return e.details.parameters[t].type=n,r},e.getEffectiveParameterType=function(e,t){return s(t<e.details.parameters.length),e.specializedTypes?e.specializedTypes.parameterTypes[t]:e.details.parameters[t].type},e.addParameter=function(e,t){e.details.parameters.push(t)},e.getDeclaredReturnType=function(e){return e.details.declaredReturnType},e.getSpecializedReturnType=r,e.setDeclaredReturnType=function(e,t){const n=!e.details.declaredReturnType||!t||!g(e.details.declaredReturnType,t);return e.details.declaredReturnType=t,n},e.getEffectiveReturnType=function(e){const t=r(e);return t||(n(e)?e.details.inferredYieldType||a.create():e.details.inferredReturnType||a.create())}}(u=t.FunctionType||(t.FunctionType={})),function(e){e.create=function(){return{category:6,overloads:[]}},e.addOverload=function(e,t,n){const s=e.overloads.findIndex(e=>e.typeSourceId===t);s>=0?e.overloads[s].type=n:e.overloads.push({typeSourceId:t,type:n})}}(t.OverloadedFunctionType||(t.OverloadedFunctionType={})),function(e){e.create=function(e){return{category:7,getter:e}}}(t.PropertyType||(t.PropertyType={})),function(e){const t={category:3};e.create=function(){return t}}(t.NoneType||(t.NoneType={})),function(e){const t={category:4};e.create=function(){return t}}(p=t.NeverType||(t.NeverType={})),function(e){const t={category:2,isEllipsis:!1},n={category:2,isEllipsis:!0};e.create=function(e=!1){return e?n:t}}(d=t.AnyType||(t.AnyType={})),function(e){e.create=function(){return{category:11,subtypes:[]}},e.addTypes=function(e,t){for(const n of t)s(11!==n.category),s(4!==n.category),e.subtypes.push(n)},e.containsType=function(e,t,n=0){return void 0!==e.subtypes.find(e=>g(e,t,n+1))}}(h=t.UnionType||(t.UnionType={})),function(e){e.create=function(e){return{category:12,name:e,constraints:[],isCovariant:!1,isContravariant:!1}},e.addConstraint=function(e,t){e.constraints.push(t)}}(t.TypeVarType||(t.TypeVarType={})),t.isNoneOrNever=function(e){return 3===e.category||4===e.category},t.isAnyOrUnknown=f,t.isUnbound=function(e){return 0===e.category},t.isPossiblyUnbound=function e(t){return 0===t.category||11===t.category&&void 0!==t.subtypes.find(t=>e(t))},t.requiresSpecialization=function e(n,s=0){switch(n.category){case 8:{const r=c.getTypeArguments(n);return r?!(s>t.maxTypeRecursionCount)&&void 0!==r.find(t=>e(t,s+1)):0!==c.getTypeParameters(n).length}case 9:return!(s>t.maxTypeRecursionCount)&&e(n.classType,s+1);case 5:if(s>t.maxTypeRecursionCount)return!1;for(let t=0;t<u.getParameters(n).length;t++)if(e(u.getEffectiveParameterType(n,t),s+1))return!0;return!!e(u.getEffectiveReturnType(n),s+1);case 6:return void 0!==n.overloads.find(t=>e(t.type,s+1));case 7:return!!e(n.getter,s+1)||(!(!n.setter||!e(n.setter,s+1))||!(!n.deleter||!e(n.deleter,s+1)));case 11:return void 0!==n.subtypes.find(t=>e(t,s+1));case 12:return!0}return!1},t.isTypeSame=g,t.printObjectTypeForClass=m,t.printLiteralValue=y,t.printFunctionParts=_,t.printType=T,t.removeAnyFromUnion=function(e){return v(e,e=>f(e))},t.removeUnknownFromUnion=function(e){return v(e,e=>1===e.category)},t.removeUnboundFromUnion=function(e){return v(e,e=>0===e.category)},t.removeNoneFromUnion=b,t.removeFromUnion=v,t.combineTypes=E,t.isSameWithoutLiteralValue=C},function(e,t){e.exports=require("fs")},function(e,t,n){"use strict";function s(e,t){return e.line<t.line?-1:e.line>t.line?1:e.column<t.column?-1:e.column>t.column?1:0}function r(){return{line:0,column:0}}Object.defineProperty(t,"__esModule",{value:!0}),t.comparePositions=s,t.getEmptyPosition=r,t.doRangesOverlap=function(e,t){return!(s(t.start,e.end)>=0)&&!(s(e.start,t.end)>=0)},t.getEmptyRange=function(){return{start:{line:0,column:0},end:{line:0,column:0}}};t.Diagnostic=class{constructor(e,t,n){this.category=e,this.message=t,this.range=n}addAction(e){void 0===this._actions?this._actions=[e]:this._actions.push(e)}getActions(){return this._actions}setRule(e){this._rule=e}getRule(){return this._rule}};class i{constructor(){this._messages=[],this._childAddenda=[]}addMessage(e){this._messages.push(e)}createAddendum(){const e=new i;return this.addAddendum(e),e}getString(e=5,t=5){let n=this._getLinesRecursive(e);n.length>t&&(n=n.slice(0,t)).push("...");const s=n.join("\n");return s.length>0?"\n"+s:""}getMessageCount(){return this._messages.length}addAddendum(e){this._childAddenda.push(e)}_getLinesRecursive(e){if(e<=0)return[];const t=[];for(const n of this._childAddenda)t.push(...n._getLinesRecursive(e-1));const n=this._messages.length>0?" ":"";return this._messages.concat(t).map(e=>n+e)}}t.DiagnosticAddendum=i},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});t.default=class{constructor(){this._map=new Map}set(e,t){const n=this._map.has(e);return this._map.set(e,t),!n}setIfUnique(e,t){return!this._map.has(e)&&(this._map.set(e,t),!0)}get(e){return this._map.get(e)}delete(e){this._map.delete(e)}getKeys(){return Array.from(this._map.keys())}forEach(e){this._map.forEach((t,n)=>{e(t,n)})}isEmpty(){return 0===this._map.size}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(0),r=n(9),i=n(2),o=n(6),a=n(22),c=n(7),l=n(15);function u(e,t){const n=function(e){const t=o.getEnclosingClass(e,!0);if(t){const e=i.getExpressionType(t);if(s(8===e.category),c.ClassType.isBuiltIn(e)){const t=c.ClassType.getClassName(e);if(["Enum","IntEnum","Flag","IntFlag"].find(e=>e===t))return}if(l.isEnumClass(e))return e}return}(e);return n?c.ObjectType.create(n):t}t.getDeclarationsForNameNode=function(e){const t=[],n=e.nameToken.value;if(!e.parent||23!==e.parent.nodeType||!e.parent.alias||e!==e.parent.name){if(e.parent&&36===e.parent.nodeType&&e===e.parent.memberName){const n=i.getExpressionType(e.parent.leftExpression);if(n){const s=e.parent.memberName.nameToken.value;l.doForSubtypes(n,e=>{let n;if(8===e.category){let t=l.lookUpClassMember(e,s,16);t||(t=l.lookUpClassMember(e,s)),t&&(n=t.symbol)}else if(9===e.category){let t=l.lookUpObjectMember(e,s,16);t||(t=l.lookUpObjectMember(e,s)),t&&(n=t.symbol)}else 10===e.category&&(n=c.ModuleType.getField(e,s));if(n){const e=n.getTypedDeclarations();e.length>0?t.push(...e):t.push(...n.getDeclarations())}return e})}}else if(e.parent&&38===e.parent.nodeType){const n=e.parent.nameParts.findIndex(t=>t===e),s=i.getImportInfo(e.parent);if(n>=0&&s&&n<s.resolvedPaths.length&&s.resolvedPaths[n]){const e={type:6,node:void 0,path:s.resolvedPaths[n],range:r.getEmptyRange(),implicitImports:new Map};t.push(e)}}else{const s=a.getScopeForNode(e);if(s){const e=s.lookUpSymbolRecursive(n);if(!e)return;t.push(...e.symbol.getDeclarations())}}return t}},t.isFunctionOrMethodDeclaration=function(e){return 4===e.type||3===e.type},t.resolveAliasDeclaration=function e(t,n){let s=t;const r=[];for(;;){if(6!==s.type)return s;if(!s.symbolName)return s;let i;if(s.path&&!(i=n(s.path)))return;const o=i?i.symbolTable.get(s.symbolName):void 0;if(!o)return s.submoduleFallback?e(s.submoduleFallback,n):void 0;const a=o.getDeclarations();if(0===a.length)return;if(s=a[0],r.find(e=>e===s))return t;r.push(s)}},t.getTypeForDeclaration=function(e){switch(e.type){case 0:return e.declaredType;case 5:return i.getExpressionType(e.node.name);case 3:case 4:return i.getExpressionType(e.node.name);case 2:{let t=e.node.typeAnnotation;if(t&&49===t.nodeType&&(t=t.typeAnnotation),t){const e=i.getExpressionType(t);if(e)return l.convertClassToObject(e)}return}case 1:{let t=e.typeAnnotationNode;if(t&&49===t.nodeType&&(t=t.typeAnnotation),t){let e=i.getExpressionType(t);if(e)return e=u(t,e),l.convertClassToObject(e)}return}case 6:return}},t.hasTypeForDeclaration=function(e){switch(e.type){case 0:case 5:case 3:case 4:return!0;case 2:return!!e.node.typeAnnotation;case 1:return!!e.typeAnnotationNode;case 6:return!1}},t.areDeclarationsSame=function(e,t){return e.type===t.type&&(e.path===t.path&&(e.range.start.line===t.range.start.line&&e.range.start.column===t.range.start.column))},t.transformTypeForPossibleEnumClass=u,t.getFunctionDeclaredReturnType=function(e){const t=i.getExpressionType(e);if(t){if(s(5===t.category),c.FunctionType.isAbstractMethod(t))return;return c.FunctionType.isGenerator(t)?l.getDeclaredGeneratorReturnType(t):c.FunctionType.getDeclaredReturnType(t)}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(8),r=n(1);function i(e){return e.substr(0,Math.max(o(e),e.lastIndexOf(r.sep)))}function o(e){if(e.charAt(0)===r.sep){if(e.charAt(1)!==r.sep)return 1;const t=e.indexOf(r.sep,2);if(t<0)return 2;const n=e.indexOf(r.sep,t+1);return n<0?t+1:n+1}return":"===e.charAt(1)&&e.charAt(2)===r.sep?3:0}function a(e){const t=c(e),n=o(t),s=t.substring(0,n),i=t.substring(n).split(r.sep);i.length>0&&!i[i.length-1]&&i.pop();const a=[s,...i],l=[a[0]];for(let e=1;e<a.length;e++){const t=a[e];if(t&&"."!==t){if(".."===t)if(l.length>1){if(".."!==l[l.length-1]){l.pop();continue}}else if(l[0])continue;l.push(t)}}return l}function c(e){return e.replace(/[\\\/]/g,r.sep)}function l(e,...t){e&&(e=c(e));for(let n of t)n&&(n=c(n),e=e&&0===o(n)?u(e)+n:n);return e}function u(e){return p(e)?e:e+r.sep}function p(e){if(0===e.length)return!1;const t=e.charCodeAt(e.length-1);return 47===t||92===t}function d(e){return p(e)?e.substr(0,e.length-1):e}function h(e){return c(r.normalize(e))}function f(e,t){let n=h(l(e,t));n.endsWith(".py")||n.endsWith(".pyi")||(n=u(n));const s=a(n),i=/[^\w\s\/]/g;s.length>0&&(s[0]=d(s[0]));let o="",c=!0;for(let e of s)"**"===e?o+="(/[^/.][^/]*)*?":(c||(e=r.sep+e),o+=e.replace(i,e=>"*"===e?"[^/]*":"?"===e?"[^/]":"\\"+e),c=!1);return o}function g(e,t){let n=h(l(e,t));n.endsWith(".py")||n.endsWith(".pyi")||(n=u(n));const s=a(n);s.length>0&&(s[0]=d(s[0]));let i="",o=!0;for(let e of s){if("**"===e)break;if(e.match(/[\*\?]/))break;o||(e=r.sep+e),i+=e,o=!1}return i}t.forEachAncestorDirectory=function(e,t){for(;;){const n=t(e);if(void 0!==n)return n;const s=i(e);if(s===e)return;e=s}},t.getDirectoryPath=i,t.getRootLength=o,t.getPathComponents=a,t.getRelativePath=function(e,t){if(!e.startsWith(u(t)))return;const n=a(e);let s=".";for(let e=a(t).length;e<n.length;e++)s+=r.sep+n[e];return s},t.makeDirectories=function(e,t){if(!e.startsWith(t))return;const n=a(e);let r=t;for(let e=a(t).length;e<n.length;e++)r=l(r,n[e]),s.existsSync(r)||s.mkdirSync(r)},t.normalizeSlashes=c,t.combinePaths=l,t.ensureTrailingDirectorySeparator=u,t.hasTrailingDirectorySeparator=p,t.stripTrailingDirectorySeparator=d,t.getFileExtension=function(e){return r.extname(e)},t.getFileName=function(e){return r.basename(e)},t.stripFileExtension=function(e){const t=r.extname(e);return e.substr(0,e.length-t.length)},t.normalizePath=h,t.isDirectory=function(e){let t;try{t=s.statSync(e)}catch(e){return!1}return t.isDirectory()},t.isFile=function(e){let t;try{t=s.statSync(e)}catch(e){return!1}return t.isFile()},t.getFileSystemEntries=function(e){try{const t=s.readdirSync(e||".").sort(),n=[],r=[];for(const i of t){if("."===i||".."===i)continue;const t=l(e,i);let o;try{o=s.statSync(t)}catch(e){continue}o.isFile()?n.push(i):o.isDirectory()&&r.push(i)}return{files:n,directories:r}}catch(e){return{files:[],directories:[]}}},t.getWildcardRegexPattern=f,t.getWildcardRoot=g,t.getFileSpec=function(e,t){let n=f(e,t);n=`^(${n})($|${"/"===r.sep?"/":"\\\\"})`;const s=new RegExp(n);return{wildcardRoot:g(e,t),regExp:s}}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const s=n(0);t.ParseTreeWalker=class{walk(e){const t=this.visitNode(e);t.length>0&&this.walkMultiple(t)}walkMultiple(e){e.forEach(e=>{e&&this.walk(e)})}visitNode(e){switch(e.nodeType){case 1:if(this.visitArgument(e))return[e.valueExpression];break;case 2:if(this.visitAssert(e))return[e.testExpression,e.exceptionExpression];break;case 3:if(this.visitAssignment(e))return[e.leftExpression,e.rightExpression,e.typeAnnotationComment];break;case 4:if(this.visitAssignmentExpression(e))return[e.name,e.rightExpression];break;case 5:if(this.visitAugmentedAssignment(e))return[e.leftExpression,e.rightExpression];break;case 6:if(this.visitAwait(e))return[e.expression];break;case 7:if(this.visitBinaryOperation(e))return[e.leftExpression,e.rightExpression];break;case 8:if(this.visitBreak(e))return[];break;case 9:if(this.visitCall(e))return[e.leftExpression,...e.arguments];break;case 10:if(this.visitClass(e))return[...e.decorators,e.name,...e.arguments,e.suite];break;case 52:if(this.visitTernary(e))return[e.ifExpression,e.testExpression,e.elseExpression];break;case 11:if(this.visitConstant(e))return[];break;case 12:if(this.visitContinue(e))return[];break;case 13:if(this.visitDecorator(e))return[e.leftExpression,...e.arguments||[]];break;case 14:if(this.visitDel(e))return e.expressions;break;case 15:if(this.visitDictionary(e))return e.entries;break;case 17:if(this.visitDictionaryKeyEntry(e))return[e.keyExpression,e.valueExpression];break;case 16:if(this.visitDictionaryExpandEntry(e))return[e.expandExpression];break;case 0:if(this.visitError(e))return[e.child];break;case 19:if(this.visitIf(e))return[e.testExpression,e.ifSuite,e.elseSuite];break;case 20:if(this.visitImport(e))return e.list;break;case 21:if(this.visitImportAs(e))return[e.module,e.alias];break;case 22:if(this.visitImportFrom(e))return[e.module,...e.imports];break;case 23:if(this.visitImportFromAs(e))return[e.name,e.alias];break;case 24:if(this.visitIndex(e))return[e.baseExpression,e.items];break;case 25:if(this.visitIndexItems(e))return e.items;break;case 18:if(this.visitEllipsis(e))return[];break;case 26:if(this.visitExcept(e))return[e.typeExpression,e.name,e.exceptSuite];break;case 27:if(this.visitFor(e))return[e.targetExpression,e.iterableExpression,e.forSuite,e.elseSuite];break;case 28:if(this.visitFormatString(e))return e.expressions;break;case 29:if(this.visitFunction(e))return[...e.decorators,e.name,...e.parameters,e.returnTypeAnnotation,e.suite];break;case 30:if(this.visitGlobal(e))return e.nameList;break;case 31:if(this.visitLambda(e))return[...e.parameters,e.expression];break;case 32:if(this.visitList(e))return e.entries;break;case 33:if(this.visitListComprehension(e))return[e.expression,...e.comprehensions];break;case 34:if(this.visitListComprehensionFor(e))return[e.targetExpression,e.iterableExpression];break;case 35:if(this.visitListComprehensionIf(e))return[e.testExpression];break;case 36:if(this.visitMemberAccess(e))return[e.leftExpression,e.memberName];break;case 37:if(this.visitModule(e))return[...e.statements];break;case 38:if(this.visitModuleName(e))return e.nameParts;break;case 39:if(this.visitName(e))return[];break;case 40:if(this.visitNonlocal(e))return e.nameList;break;case 41:if(this.visitNumber(e))return[];break;case 42:if(this.visitParameter(e))return[e.name,e.typeAnnotation,e.defaultValue];break;case 43:if(this.visitPass(e))return[];break;case 44:if(this.visitRaise(e))return[e.typeExpression,e.valueExpression,e.tracebackExpression];break;case 45:if(this.visitReturn(e))return[e.returnExpression];break;case 46:if(this.visitSet(e))return e.entries;break;case 47:if(this.visitSlice(e))return[e.startValue,e.endValue,e.stepValue];break;case 48:if(this.visitStatementList(e))return e.statements;break;case 50:if(this.visitString(e))return[];break;case 49:if(this.visitStringList(e))return[e.typeAnnotation,...e.strings];break;case 51:if(this.visitSuite(e))return[...e.statements];break;case 53:if(this.visitTuple(e))return e.expressions;break;case 54:if(this.visitTry(e))return[e.trySuite,...e.exceptClauses,e.elseSuite,e.finallySuite];break;case 55:if(this.visitTypeAnnotation(e))return[e.valueExpression,e.typeAnnotation];break;case 56:if(this.visitUnaryOperation(e))return[e.expression];break;case 57:if(this.visitUnpack(e))return[e.expression];break;case 58:if(this.visitWhile(e))return[e.testExpression,e.whileSuite,e.elseSuite];break;case 59:if(this.visitWith(e))return[...e.withItems,e.suite];break;case 60:if(this.visitWithItem(e))return[e.expression,e.target];break;case 61:if(this.visitYield(e))return[e.expression];break;case 62:if(this.visitYieldFrom(e))return[e.expression];break;default:s.fail("Unexpected node type")}return[]}visitArgument(e){return!0}visitAssert(e){return!0}visitAssignment(e){return!0}visitAssignmentExpression(e){return!0}visitAugmentedAssignment(e){return!0}visitAwait(e){return!0}visitBinaryOperation(e){return!0}visitBreak(e){return!0}visitCall(e){return!0}visitClass(e){return!0}visitTernary(e){return!0}visitContinue(e){return!0}visitConstant(e){return!0}visitDecorator(e){return!0}visitDel(e){return!0}visitDictionary(e){return!0}visitDictionaryKeyEntry(e){return!0}visitDictionaryExpandEntry(e){return!0}visitError(e){return!0}visitEllipsis(e){return!0}visitIf(e){return!0}visitImport(e){return!0}visitImportAs(e){return!0}visitImportFrom(e){return!0}visitImportFromAs(e){return!0}visitIndex(e){return!0}visitIndexItems(e){return!0}visitExcept(e){return!0}visitFor(e){return!0}visitFormatString(e){return!0}visitFunction(e){return!0}visitGlobal(e){return!0}visitLambda(e){return!0}visitList(e){return!0}visitListComprehension(e){return!0}visitListComprehensionFor(e){return!0}visitListComprehensionIf(e){return!0}visitMemberAccess(e){return!0}visitModule(e){return!0}visitModuleName(e){return!0}visitName(e){return!0}visitNonlocal(e){return!0}visitNumber(e){return!0}visitParameter(e){return!0}visitPass(e){return!0}visitRaise(e){return!0}visitReturn(e){return!0}visitSet(e){return!0}visitSlice(e){return!0}visitStatementList(e){return!0}visitString(e){return!0}visitStringList(e){return!0}visitSuite(e){return!0}visitTuple(e){return!0}visitTry(e){return!0}visitTypeAnnotation(e){return!0}visitUnaryOperation(e){return!0}visitUnpack(e){ret