@source-repo/rpc-cli 4.3.1 → 4.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/broker.d.ts +6 -1
- package/dist/broker.d.ts.map +1 -1
- package/dist/broker.js +1 -1
- package/dist/broker.js.map +1 -1
- package/dist/console.d.ts +9 -0
- package/dist/console.d.ts.map +1 -1
- package/dist/console.js +19 -0
- package/dist/console.js.map +1 -1
- package/dist/extract.d.ts.map +1 -1
- package/dist/extract.js +25 -1
- package/dist/extract.js.map +1 -1
- package/dist/index.js +74 -10
- package/dist/index.js.map +1 -1
- package/dist/mcp.d.ts +18 -0
- package/dist/mcp.d.ts.map +1 -1
- package/dist/mcp.js +193 -37
- package/dist/mcp.js.map +1 -1
- package/dist/packages.d.ts +12 -0
- package/dist/packages.d.ts.map +1 -1
- package/dist/packages.js +37 -0
- package/dist/packages.js.map +1 -1
- package/dist/verbs.d.ts.map +1 -1
- package/dist/verbs.js +6 -5
- package/dist/verbs.js.map +1 -1
- package/dist/web/app.js +10 -10
- package/dist/web/app.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EACH,gBAAgB,EAChB,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,0BAA0B,EAC1B,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,eAAe,EAKlB,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAc,aAAa,EAAE,MAAM,cAAc,CAAA;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAA;AACnC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAA;AACrC,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/C,OAAO,EAAE,aAAa,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAC7F,OAAO,EAAE,SAAS,EAAmB,MAAM,WAAW,CAAA;AACtD,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,aAAa,CAAA;AAC3D,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAElD;;;;;;;GAOG;AAEH,MAAM,KAAK,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoKb,CAAA;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,GAAG,CAAC,IAAc,EAAE,IAAY,EAAE,KAAa,EAAE,EAAE;IAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;IAC7B,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,wCAAwC,CAAC,CAAA;IACzG,IAAI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,wBAAwB,KAAK,mBAAmB,CAAC,CAAA;IACpG,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAED,MAAM,QAAQ,GAAG,CAAC,IAAc,EAAE,IAAY,EAAE,QAAgB,EAAE,EAAE;IAChE,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;AAClE,CAAC,CAAA;AAED,wFAAwF;AACxF,MAAM,YAAY,GAAG,CAAC,IAAc,EAAE,IAAY,EAAE,EAAE,CAClD,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;AAE3F,MAAM,gBAAgB,GAAG,EAAE,CAAA;AAE3B,MAAM,iBAAiB,GAAG,CAAC,WAAyB,EAAE,EAAE;IACpD,KAAK,MAAM,UAAU,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAC9D,MAAM,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAA;QAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,UAAU,CAAC,KAAK,IAAI,UAAU,CAAC,MAAM,GAAG,EAAE,IAAI,CAAC,CAAA;IAC7E,CAAC;IACD,2FAA2F;IAC3F,IAAI,WAAW,CAAC,MAAM,GAAG,gBAAgB;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,WAAW,CAAC,MAAM,GAAG,gBAAgB,SAAS,CAAC,CAAA;AAC9H,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAa,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAc,CAAA;AAEnG,0FAA0F;AAC1F,MAAM,WAAW,GAAG,CAAC,IAAe,EAAE,QAA+B,EAAa,EAAE;IAChF,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAA;IAC1B,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAC9D,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACxC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO;YAAE,SAAQ;QACtE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAA;QACjD,SAAS,CAAC,OAAO,GAAG,EAAE,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAA;IACvG,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAiBD,MAAM,eAAe,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE;IACtD,IAAI,IAAiB,CAAA;IACrB,IAAI,CAAC;QACD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAgB,CAAA;IAChE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,2BAA2B,IAAI,KAAM,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;QACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAClD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,KAAK,IAAI,oBAAoB,CAAC,CAAA;QACxE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,CAAC;QACD,6EAA6E;QAC7E,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,KAAK,IAAI,+BAA+B,CAAC,CAAA;IACxH,CAAC;IAAC,MAAM,CAAC;QACL,qDAAqD;IACzD,CAAC;IACD,MAAM,IAAI,GAAkB,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzD,MAAM,MAAM,GAAgC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACrH,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAA;AACjC,CAAC,CAAA;AAqBD;;;;;;;;GAQG;AACH,MAAM,OAAO,GAAG,CAAC,IAAc,EAAE,OAAe,EAAE,EAAE;IAChD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IACvC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAA;IACnC,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,4CAA4C,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAA;QACpH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAA;IAC/D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,yCAA0C,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;QAC5G,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;AACL,CAAC,CAAA;AAED;;;;;;GAMG;AACH,MAAM,aAAa,GAAG,CAAC,IAAc,EAAE,MAAe,EAAE,KAAa,EAAE,SAAiB,EAAE,EAAE,CACxF,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;AAExE,MAAM,QAAQ,GAAG,CAAC,IAAc,EAAE,OAAe,EAAY,EAAE;IAC3D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,MAAM,iBAAiB,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;QACvD,IAAI,MAA0B,CAAA;QAC9B,IAAI,iBAAiB,EAAE,CAAC;YACpB,IAAI,CAAC;gBACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAuB,CAAA;YAChE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,oCAAqC,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;gBACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACnB,CAAC;QACL,CAAC;QACD,OAAO;YACH,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChC,CAAA;IACL,CAAC;IAED,IAAI,IAAc,CAAA;IAClB,IAAI,CAAC;QACD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAa,CAAA;IAC7D,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,6BAA6B,IAAI,KAAM,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;QACzG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QAC9B,2FAA2F;QAC3F,kFAAkF;QAClF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,KAAK,IAAI,qCAAqC,CAAC,CAAA;QACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,CAAC;QACD,wEAAwE;QACxE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,GAAG,KAAK;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,KAAK,IAAI,+BAA+B,CAAC,CAAA;IACxH,CAAC;IAAC,MAAM,CAAC;QACL,qDAAqD;IACzD,CAAC;IACD,OAAO,IAAI,CAAA;AACf,CAAC,CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,mBAAmB,GAAG,CAAC,IAAc,EAAE,OAAe,EAAE,iBAAyB,EAAE,EAAE;IACvF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;IAC7C,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IACvC,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,sCAAsC,CAAC,CAAA;QACjF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;IAC7C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC5C,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACvE,MAAM,aAAa,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IAClD,IAAI,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QAC7E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,YAAY,aAAa,oBAAoB,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,OAAO,IAAI,CAAC,CAAA;QAC5H,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,2FAA2F;IAC3F,yEAAyE;IACzE,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACzC,OAAO;QACH,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,IAAI,EAAE,aAAa,IAAI,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,eAAe,CAAC,iBAAiB,CAAC;QAC/E,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACzD,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,OAAO;KACV,CAAA;AACL,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC;IACxB,UAAU;IACV,OAAO;IACP,UAAU;IACV,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,WAAW;IACX,OAAO;IACP,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,aAAa;IACb,OAAO;IACP,WAAW;IACX,SAAS;IACT,aAAa;IACb,WAAW;IACX,QAAQ;IACR,eAAe;IACf,mBAAmB;IACnB,QAAQ;IACR,OAAO;IACP,iBAAiB;IACjB,YAAY;CACf,CAAC,CAAA;AAEF,MAAM,WAAW,GAAG,CAAC,IAAc,EAAE,EAAE;IACnC,MAAM,KAAK,GAAa,EAAE,CAAA;IAC1B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAA;QACxB,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC;gBAAE,KAAK,EAAE,CAAA;YAClC,SAAQ;QACZ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACpB,CAAC;IACD,OAAO,KAAK,CAAA;AAChB,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,OAAO,GAAG,KAAK,EAAE,OAAe,EAAE,IAAc,EAAE,EAAE;IACtD,MAAM,KAAK,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IACvD,MAAM,OAAO,GAAG;QACZ,GAAG,KAAK;QACR,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7B,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC9C,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,QAAQ,CAAC,IAAI,EAAE,mBAAmB,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAClH,CAAA;IACD,uFAAuF;IACvF,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAE1C,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAA;IAEvD,2FAA2F;IAC3F,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mGAAmG,CAAC,CAAA;YACzH,OAAO,CAAC,CAAA;QACZ,CAAC;QACD,OAAO,MAAM,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACvC,CAAC;IAED,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,6DAA6D,CAAC,CAAA;QACxG,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,IAAI,OAAO,KAAK,UAAU;QAAE,OAAO,MAAM,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAEnE,IAAI,CAAC,MAAM,EAAE,CAAC;QACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,0BAA0B,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,iBAAiB,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAA;QACjL,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,0FAA0F;QAC1F,mCAAmC;QACnC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YAC1C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;YACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC,CAAA;QAC1C,CAAC,CAAC,CAAA;QACF,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;IACxE,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IACpF,OAAO,MAAM,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;AACjI,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,OAAO,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACrC,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAA;IACrD,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,IAAI,MAAiB,CAAA;IACrB,IAAI,CAAC;QACD,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAA;IAC9C,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,YAAY,KAAM,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;QAChG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAA;IACjD,IAAI,MAAM,GAAe,EAAE,CAAA;IAC3B,IAAI,UAAU,EAAE,CAAC;QACb,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAe,CAAA;QAChF,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,UAAU,KAAM,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;YAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;IACD,8FAA8F;IAC9F,kBAAkB;IAClB,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAChC,IAAI,MAAM,IAAI,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oEAAoE,IAAI,KAAK,CAAC,CAAA;YACnG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;QACD,MAAM,GAAG,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,CAAA;IACvG,CAAC;IAED,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACjF,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;IAC/C,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC/I,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,OAAO,CAAC,IAAI,cAAc,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,YAAY,IAAI,CAAC,CAAA;IAC3H,gGAAgG;IAChG,+CAA+C;IAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sFAAsF,CAAC,CAAA;IAC5G,gGAAgG;IAChG,oGAAoG;IACpG,IAAI,SAAS;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gHAAgH,CAAC,CAAA;IAErJ,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC3B,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,oGAAoG;AACpG,MAAM,SAAS,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACvC,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,CAAA;IACvC,IAAI,CAAC,GAAG,EAAE,CAAC;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAA;QACjE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;IACtF,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAA;IAC/C,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;IACzD,4FAA4F;IAC5F,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;IAChD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC;QACjC,GAAG,OAAO;QACV,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;QACjB,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE;KAC3I,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uGAAuG,CAAC,CAAA;QAC7H,MAAM,OAAO,CAAC,KAAK,EAAE,CAAA;QACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,kBAAkB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACvG,IAAI,QAAQ;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gHAAgH,CAAC,CAAA;IAEpJ,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE;QACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC;SACD,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;IAClD,IAAI,KAAK,GAAG,CAAC;QAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IACtC,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,qGAAqG;AACrG,MAAM,SAAS,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACvC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAA;QAC7D,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAA;IACtF,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;IAE/C,IAAI,OAAO,CAAA;IACX,IAAI,CAAC;QACD,OAAO,GAAG,MAAM,aAAa,CACzB,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EACnH,IAAI;YACA,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE;gBACL,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;oBAAE,OAAM;gBACtC,MAAM,KAAK,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE,CAAA;gBAC/D,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,KAAK,IAAI,CAAC,CAAA;qBAC/E,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM;oBAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,uCAAuC,CAAC,CAAA;;oBACtG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YAC3H,CAAC,CACV,CAAA;IACL,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC1F,OAAO,CAAC,CAAA;IACZ,CAAC;IAED,IAAI,IAAI;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;;QAEnE,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,sBAAsB,OAAO,CAAC,KAAK,CAAC,MAAM,QAAQ,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI;YACvF,GAAG,OAAO,CAAC,OAAO,aAAa,OAAO,CAAC,QAAQ,cAAc,OAAO,CAAC,MAAM,YAAY,OAAO,CAAC,IAAI,eAAe,CACzH,CAAA;IACL,0FAA0F;IAC1F,OAAO,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACrD,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,YAAY,GAAG,KAAK,EAAE,IAAc,EAAE,IAAY,EAAE,EAAE;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAA;IACzE,IAAI,MAAiB,CAAA;IACrB,IAAI,CAAC;QACD,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,OAAO,IAAI,CAAC,CAAA;QAClE,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAA;IAChF,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACD,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;IAC1G,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzF,OAAO,CAAC,CAAA;IACZ,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QAC5D,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAClE,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,qBAAqB,IAAI,IAAI,CAAC,CAAA;IAC/F,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;IAC1H,0FAA0F;IAC1F,6FAA6F;IAC7F,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,WAAW;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,kEAAkE,CAAC,CAAA;IAExI,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAA;IAC5D,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,KAAK,mBAAmB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,QAAQ,IAAI,IAAI,CAAC,CAAA;QACtH,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,IAAI,WAAW,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,oBAAoB,OAAO,IAAI,CAAC,CAAA;IAChJ,OAAO,CAAC,CAAA;AACZ,CAAC,CAAA;AAED,wFAAwF;AACxF,MAAM,OAAO,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACrC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IACzC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAA;QAC5D,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC/E,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACD,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAA;IACzG,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACxF,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QAC5D,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,QAAQ,KAAK,0BAA0B,CAAC,CAAA;QACrF,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,SAAS,KAAK,IAAI,CAAC,CAAA;IAC/C,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QAC1C,sFAAsF;QACtF,mCAAmC;QACnC,MAAM,UAAU,GAAG,UAAU,CAAC,MAAM,IAAI,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAA;QACpF,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,SAAS,CAAA;QAC9H,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,SAAS,IAAI,KAAK,UAAU,CAAC,IAAI,IAAI,GAAG,SAAS,KAAK,KAAK,UAAU,CAAC,KAAK,IAAI,GAAG,IAAI,CAAC,CAAA;IAC3H,CAAC;IACD,6FAA6F;IAC7F,+BAA+B;IAC/B,OAAO,CAAC,CAAA;AACZ,CAAC,CAAA;AAED,+FAA+F;AAC/F,MAAM,QAAQ,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACtC,MAAM,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,CAAA;IAC/B,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACrB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;IACvB,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6DAA6D,CAAC,CAAA;QACnF,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACnC,IAAI,GAAG,IAAI,CAAC,IAAI,GAAG,KAAK,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,MAAM,oCAAoC,CAAC,CAAA;QACtF,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACtC,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAA;IACpC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAElF,IAAI,IAAe,CAAA;IACnB,IAAI,CAAC;QACD,IAAI,GAAG,MAAM,cAAc,CAAC,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IAC/F,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzF,OAAO,CAAC,CAAA;IACZ,CAAC;IAED,IAAI,MAAM,CAAA;IACV,IAAI,CAAC;QACD,MAAM,GAAG,MAAM,KAAK,CAAC;YACjB,GAAG,OAAO;YACV,IAAI;YACJ,SAAS;YACT,MAAM;YACN,IAAI;YACJ,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;YAC5C,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;YAC/C,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;YAC1D,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;SACjD,CAAC,CAAA;IACN,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzF,OAAO,CAAC,CAAA;IACZ,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;SACpF,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,KAAK,aAAa,CAAC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,MAAM,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,CAAA;QACxJ,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,cAAc,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,GAAG,SAAS,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,CAChJ,CAAA;QACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,CAAC,EAAE,aAAa,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;QAChI,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,KAAK,IAAI,CAAC,CAAA;IAChH,CAAC;IACD,+DAA+D;IAC/D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAChC,CAAC,CAAA;AAED,MAAM,SAAS,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACvC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACnC,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,oBAAoB,EAAE,0BAA0B,CAAC,CAAA;IACzF,8FAA8F;IAC9F,+FAA+F;IAC/F,sFAAsF;IACtF,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;IAClD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC,CAAA;IACjD,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAA;IAChE,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IACrC,IAAI,YAAY,CAAA;IAChB,IAAI,CAAC;QACD,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAClF,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACT,wFAAwF;QACxF,8EAA8E;QAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAuB,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;QACpE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;QAC9B,IAAI;QACJ,IAAI;QACJ,IAAI;QACJ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,KAAK,KAAK,KAAK,CAAC,EAAE,CAAC;KACzI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;QAClB,mFAAmF;QACnF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,IAAI,KAAK,CAAC,CAAC,OAAO,IAAI,CAAC,CAAA;QACvF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,qBAAqB,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,CAChL,CAAA;IACD,+FAA+F;IAC/F,yEAAyE;IACzE,MAAM,KAAK,GAAG,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,CAAA;IAC1D,IAAI,KAAK;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0HAA0H,CAAC,CAAA;;QACtJ,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,IAAI,8CAA8C,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gDAAgD,IAAI,CAAC,CAAA;IACpL,IAAI,CAAC,YAAY,EAAE,CAAC;QAChB,wFAAwF;QACxF,wCAAwC;QACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,wIAAwI,CAAC,CAAA;QAC9J,4FAA4F;QAC5F,0FAA0F;QAC1F,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yHAAyH,CAAC,CAAA;IACnJ,CAAC;IAED,8FAA8F;IAC9F,sFAAsF;IACtF,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACV,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC3B,4DAA4D;IAC5D,MAAM,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,MAAM,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACpC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC9E,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;IACnD,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAC1D,4FAA4F;IAC5F,+FAA+F;IAC/F,gCAAgC;IAChC,IAAI,YAAY,CAAC,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QACrC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sHAAsH,CAAC,CAAA;QAC5I,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,0FAA0F;IAC1F,mEAAmE;IACnE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,SAAS,CAAA;IACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;IACtD,MAAM,SAAS,GAAG,QAAQ,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,CAAC,CAAA;IAClD,IAAI,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,SAAS,CAAA;IAC7D,IAAI,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;QAC1B,IAAI,CAAC;YACD,SAAS,GAAG,YAAY,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAA;QACnE,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,0CAA0C,SAAS,KAAM,CAAW,CAAC,OAAO,IAAI,CAAC,CAAA;YACtG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACnB,CAAC;IACL,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/J,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvD,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChD,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;QACnH,wFAAwF;QACxF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,OAAO,IAAI,CAAC,CAAA;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACF,0EAA0E;IAC1E,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACrC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;IAC3B,6DAA6D;IAC7D,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AACjC,CAAC,CAAA;AAED,MAAM,OAAO,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACrC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,EAAE,CAAC,CAAA;IAClD,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAA;IAC1D,8FAA8F;IAC9F,iGAAiG;IACjG,IAAI,CAAC,UAAU,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;QACtC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,mHAAmH,CAAC,CAAA;QACzI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE;QAC3G,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAA;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,mBAAmB,OAAO,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,mBAAmB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CACzL,CAAA;IACD,CAAC;QACG,0FAA0F;QAC1F,2FAA2F;QAC3F,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAA;QACzD,IAAI,IAAI;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IACD,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM;QAC1B,0FAA0F;QAC1F,0FAA0F;QAC1F,kCAAkC;QAClC,OAAO,CAAC,MAAM,CAAC,KAAK,CAChB,gJAAgJ,CACnJ,CAAA;IACL,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qCAAqC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACzG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACV,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,UAAU,GAAG,KAAK,EAAE,IAAc,EAAE,EAAE;IACxC,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;IAC/E,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;IAElD,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,EAAE,CAAC,CAAA;IAClD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC;QAC/B,GAAG,OAAO;QACV,IAAI,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,cAAc,EAAE,oBAAoB,CAAC;QACtE,IAAI;QACJ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvB,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC,CAAA;IACF,MAAM,QAAQ,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC5E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,yBAAyB,OAAO,CAAC,GAAG,cAAc,QAAQ,OAAO,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAA;IAC3I,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW;QAC5C,oFAAoF;QACpF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,IAAI,mFAAmF,CAAC,CAAA;IACjJ,8FAA8F;IAC9F,sFAAsF;IACtF,MAAM,IAAI,GAAG,GAAG,EAAE,CACd,KAAK,OAAO;SACP,KAAK,EAAE;SACP,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SAC3B,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,gCAAgC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACpG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAC,CAAA;IACV,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;IAC1B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AAC/B,CAAC,CAAA;AAED,MAAM,IAAI,GAAG,GAAG,EAAE;IACd,2FAA2F;IAC3F,4FAA4F;IAC5F,6FAA6F;IAC7F,+EAA+E;IAC/E,KAAK,MAAM,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC;QACjD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAwB,EAAE,EAAE;YAC5C,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACvC,MAAM,CAAC,CAAA;QACX,CAAC,CAAC,CAAA;IAEN,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAClC,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;IAEvB,0FAA0F;IAC1F,qFAAqF;IACrF,oEAAoE;IACpE,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACvE,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAA;QAC9C,MAAM,GAAG,GAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,iBAAiB,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAAyB,CAAC,OAAO,CAAA;QAC1H,MAAM,OAAO,GAAI,OAAO,CAAC,+BAA+B,CAAyB,CAAC,OAAO,CAAA;QACzF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,GAAG,sBAAsB,OAAO,KAAK,CAAC,CAAA;QACzE,OAAM;IACV,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC,CAAA;IAErE,+FAA+F;IAC/F,kEAAkE;IAClE,MAAM,IAAI,GAAG,CAAC,CAAU,EAAE,EAAE;QACxB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,OAAO,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC9F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC,CAAA;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvB,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChC,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACrB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACjC,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC7B,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9B,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACtB,KAAK,QAAQ,CAAC,IAAI,CAAC;aACd,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACrB,KAAK,OAAO,CAAC,IAAI,CAAC;aACb,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC;QACtD,KAAK,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;aAChD,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvB,KAAK,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChC,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvB,KAAK,SAAS,CAAC,IAAI,CAAC;aACf,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,MAAM,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACnH,yFAAyF;QACzF,iEAAiE;QACjE,KAAK,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;aACtB,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAClC,KAAK,CAAC,IAAI,CAAC,CAAA;QAChB,OAAM;IACV,CAAC;IACD,IAAI,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QAC/C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3B,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACjC,CAAC;IAED,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;IACtD,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;QACrB,uFAAuF;QACvF,8EAA8E;QAC9E,sFAAsF;QACtF,8EAA8E;QAC9E,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,WAAW,CAAC,MAAM,WAAW,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,kBAAkB,CAAC,CAAA;QACvH,iBAAiB,CAAC,WAAW,CAAC,CAAA;QAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IAED,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC,CAAA;QACjE,IAAI,QAA+B,CAAA;QACnC,IAAI,CAAC;YACD,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,CAAC;QAAC,MAAM,CAAC;YACL,QAAQ,GAAG,SAAS,CAAA;QACxB,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;QACxF,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,CAAA;QAC3D,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CAAA;QACnD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,qBAAqB,KAAK,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC,CAAA;QACjG,OAAM;IACV,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,mBAAmB,CAAC,CAAC,CAAA;IACzE,IAAI,MAAiB,CAAA;IACrB,IAAI,CAAC;QACD,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,CAAA;IAChC,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,OAAO,IAAI,CAAC,CAAA;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACf,OAAM;IACV,CAAC;IAED,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,KAAK,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QAC7D,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;QACnC,IAAI,CAAC,GAAG,EAAE,CAAC;YACP,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,wBAAwB,CAAC,CAAA;YACvD,QAAQ,EAAE,CAAA;YACV,SAAQ;QACZ,CAAC;QACD,iFAAiF;QACjF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;QACrF,KAAK,MAAM,OAAO,IAAI,QAAQ;YAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,CAAA;QACtG,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAA;IAC/B,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACX,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,QAAQ,mBAAmB,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,IAAI,CAAC,CAAA;QAChH,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACnB,CAAC;IACD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2CAA2C,OAAO,IAAI,CAAC,CAAA;AAChF,CAAC,CAAA;AAED,IAAI,CAAC;IACD,IAAI,EAAE,CAAA;AACV,CAAC;AAAC,OAAO,CAAC,EAAE,CAAC;IACT,+FAA+F;IAC/F,4FAA4F;IAC5F,sDAAsD;IACtD,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IAClI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACnB,CAAC"}
|
package/dist/mcp.d.ts
CHANGED
|
@@ -34,6 +34,24 @@ export interface McpOptions extends NetworkOptions {
|
|
|
34
34
|
* it out of band. A bus able to hand over that key is a bus able to script the node.
|
|
35
35
|
*/
|
|
36
36
|
scriptableBy?: string[];
|
|
37
|
+
/**
|
|
38
|
+
* Serve streamable HTTP on this port as a second door beside stdio. Absent means stdio only,
|
|
39
|
+
* which is where this server has always lived. The door exists because stdio means exactly one
|
|
40
|
+
* client: the field trial found a node already attached to another session, and the second
|
|
41
|
+
* agent's fallback - driving the CLI by hand - forked the scripts state the node was custodian
|
|
42
|
+
* of. Over the door, every client shares one view: one scripts directory, one set of fakes, one
|
|
43
|
+
* memory of watch cursors, because there is only one of everything here.
|
|
44
|
+
*/
|
|
45
|
+
port?: number;
|
|
46
|
+
/** The interface for the door. Default 127.0.0.1; see the warnings startMcp prints. */
|
|
47
|
+
host?: string;
|
|
48
|
+
/**
|
|
49
|
+
* Bearer token the door requires. An HTTP door is a new surface where stdio's authorization was
|
|
50
|
+
* implicit in process ownership, so the rule is fail-closed where it matters: a door widened
|
|
51
|
+
* past loopback without a token refuses to start, and a loopback door without one says plainly
|
|
52
|
+
* that any process on this machine can drive the node.
|
|
53
|
+
*/
|
|
54
|
+
doorToken?: string;
|
|
37
55
|
}
|
|
38
56
|
/**
|
|
39
57
|
* A failure as one line of text.
|
package/dist/mcp.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,cAAc,EAAE,MAAM,cAAc,CAAA;AAqClE,MAAM,WAAW,UAAW,SAAQ,cAAc;IAC9C;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;;;;OAOG;IACH,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB;;;;;;;;OAQG;IACH,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uFAAuF;IACvF,IAAI,CAAC,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB;AAoZD;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,MAAO,OAAO,WAMrC,CAAA;AAED,eAAO,MAAM,QAAQ,YAAmB,UAAU;;;;EA8mBjD,CAAA"}
|
package/dist/mcp.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { createServer as createHttpServer } from 'node:http';
|
|
2
3
|
import { join, resolve, sep } from 'node:path';
|
|
3
4
|
import { readableNameFor, validateValue } from '@source-repo/rpc';
|
|
4
5
|
import { connectNetwork } from './network.js';
|
|
5
6
|
import { looksLikeSchema, startFake } from './fake.js';
|
|
6
7
|
import { environmentFor } from './scripts.js';
|
|
8
|
+
import { versionSkewLine } from './packages.js';
|
|
7
9
|
import { ScriptingService, scriptingAuthorizer } from './scripting.js';
|
|
8
10
|
import { checkPeerOn, diffPeersOn } from './conform.js';
|
|
9
11
|
import { openTap } from './tapping.js';
|
|
@@ -24,6 +26,15 @@ import { openTap } from './tapping.js';
|
|
|
24
26
|
*/
|
|
25
27
|
/** What we answer initialize with when the client asks for something we do not recognise. */
|
|
26
28
|
const FALLBACK_PROTOCOL_VERSION = '2025-06-18';
|
|
29
|
+
/** This package's own version, for serverInfo. From the manifest, so it cannot go stale. */
|
|
30
|
+
const ownVersion = () => {
|
|
31
|
+
try {
|
|
32
|
+
return JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8')).version ?? '0.0.0';
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
return '0.0.0';
|
|
36
|
+
}
|
|
37
|
+
};
|
|
27
38
|
/**
|
|
28
39
|
* How long a watching tool may hold the client waiting. A model asking for an hour would get one,
|
|
29
40
|
* and the conversation would look like it had hung.
|
|
@@ -183,7 +194,9 @@ const toolsFor = (contracts, allowExec = false, scripts) => [
|
|
|
183
194
|
{
|
|
184
195
|
name: 'watch_events',
|
|
185
196
|
description: "Subscribe to one of a peer's events for a few seconds and return what it emitted. The subscription is dropped again afterwards, " +
|
|
186
|
-
'so looking does not leave a listener behind on the device.'
|
|
197
|
+
'so looking does not leave a listener behind on the device. The answer also says whether anything was missed since your previous ' +
|
|
198
|
+
'watch of the same stream: "saw nothing" and "saw nothing and missed nothing" are different answers, and `loss` states which one ' +
|
|
199
|
+
'this was - or that the server restarted between watches, which makes the question unanswerable, or that the peer is too old to say.',
|
|
187
200
|
inputSchema: {
|
|
188
201
|
type: 'object',
|
|
189
202
|
properties: {
|
|
@@ -415,6 +428,14 @@ export const startMcp = async (options) => {
|
|
|
415
428
|
// itself while the bigger one stayed quiet was the wrong way round.
|
|
416
429
|
if (options.scripts)
|
|
417
430
|
process.stderr.write(`source-rpc mcp: --scripts is on, so this server will write and run programs in ${options.scripts} with your privileges, and may install packages there. Development machines only.\n`);
|
|
431
|
+
if (options.scripts) {
|
|
432
|
+
// A statement, not a refusal: an old script against its own pinned library is legitimate.
|
|
433
|
+
// What the line prevents is new code quietly written against the API the directory happens
|
|
434
|
+
// to hold, which is what the first field trial did for an afternoon without noticing.
|
|
435
|
+
const skew = versionSkewLine(options.scripts, 'mcp');
|
|
436
|
+
if (skew)
|
|
437
|
+
process.stderr.write(skew);
|
|
438
|
+
}
|
|
418
439
|
// Louder than the rest, because this is the one that puts it on the network rather than under
|
|
419
440
|
// the person at the keyboard.
|
|
420
441
|
if (options.scriptableBy?.length)
|
|
@@ -517,16 +538,31 @@ export const startMcp = async (options) => {
|
|
|
517
538
|
* The discovery cache: find_capability fills it sweeping the network, call_method validates
|
|
518
539
|
* from it. Short-lived, because a contract can change with a redeploy and a stale cache would
|
|
519
540
|
* refuse arguments the peer now takes - thirty seconds keeps a conversation's worth of calls
|
|
520
|
-
* cheap without remembering last week's shape.
|
|
541
|
+
* cheap without remembering last week's shape. The description hash presence carries cuts the
|
|
542
|
+
* other way too: a peer announcing a hash other than the one this entry was described under is
|
|
543
|
+
* refetched at once rather than trusted out the rest of its thirty seconds, and an unchanged
|
|
544
|
+
* peer costs nothing extra. A peer announcing no hash - anything from before the field
|
|
545
|
+
* existed - keeps the age-based bargain it always had.
|
|
521
546
|
*/
|
|
522
547
|
const described = new Map();
|
|
523
548
|
const DESCRIBE_CACHE_MS = 30_000;
|
|
549
|
+
/**
|
|
550
|
+
* Where each watched event stream stood when its last watch window closed, so the next window
|
|
551
|
+
* can say whether anything fell between them. Held here for the life of this server - the
|
|
552
|
+
* windows are the model's, but the memory of them is one process's, which is exactly the
|
|
553
|
+
* lifetime the answer is honest for: a restarted MCP server starts over at "first watch".
|
|
554
|
+
*/
|
|
555
|
+
const watchCursors = new Map();
|
|
524
556
|
const describedOf = async (peer) => {
|
|
525
557
|
const held = described.get(peer);
|
|
526
|
-
|
|
558
|
+
const announced = network.peers.shapeOf(peer);
|
|
559
|
+
if (held && Date.now() - held.at < DESCRIBE_CACHE_MS && (announced === undefined || held.shape === announced))
|
|
527
560
|
return held.description;
|
|
561
|
+
// Read before the describe, not after: a shape that changes mid-flight then differs from
|
|
562
|
+
// the stored one, and the next lookup refetches rather than trusting a torn pair.
|
|
563
|
+
const shape = announced;
|
|
528
564
|
const description = await describe(peer);
|
|
529
|
-
described.set(peer, { description, at: Date.now() });
|
|
565
|
+
described.set(peer, { description, at: Date.now(), ...(shape !== undefined ? { shape } : {}) });
|
|
530
566
|
return description;
|
|
531
567
|
};
|
|
532
568
|
const callTool = async (name, args) => {
|
|
@@ -792,14 +828,58 @@ export const startMcp = async (options) => {
|
|
|
792
828
|
return { text: 'watch_events needs peer, namespace and event.', isError: true };
|
|
793
829
|
const seconds = Math.min(Math.max(Number(args.seconds ?? 5), 1), MAX_WATCH_SECONDS);
|
|
794
830
|
const heard = [];
|
|
795
|
-
const
|
|
831
|
+
const caller = network.caller;
|
|
832
|
+
const handler = (...emitted) => {
|
|
833
|
+
// Read on the handler's first line, which is the one moment the stamp is this
|
|
834
|
+
// delivery's - see lastDeliveredStamp. Absent means the server does not track it.
|
|
835
|
+
const stamp = caller?.lastDeliveredStamp;
|
|
836
|
+
heard.push({ at: Date.now(), args: emitted, ...(stamp && stamp.event === event ? { seq: stamp.seq } : {}) });
|
|
837
|
+
};
|
|
838
|
+
// The counter's stand at the emitting server, this incarnation. Undefined for a peer
|
|
839
|
+
// that predates cursors or serves no introspection - the loss answer says so rather
|
|
840
|
+
// than pretending. Asking also starts the counter for an ad-hoc event, so even when
|
|
841
|
+
// this watch cannot say, the next one can.
|
|
842
|
+
const cursorOf = async () => {
|
|
843
|
+
try {
|
|
844
|
+
const msgrpc = await network.proxy('msgrpc', peer);
|
|
845
|
+
return await msgrpc.eventCursor(namespace, event);
|
|
846
|
+
}
|
|
847
|
+
catch {
|
|
848
|
+
return undefined;
|
|
849
|
+
}
|
|
850
|
+
};
|
|
796
851
|
try {
|
|
797
852
|
const proxy = await network.proxy(namespace, peer);
|
|
798
853
|
await proxy.on(event, handler);
|
|
799
854
|
await new Promise((resolve) => setTimeout(resolve, seconds * 1000));
|
|
800
855
|
// Dropped again, so a look does not leave a subscription behind on the device.
|
|
801
856
|
await proxy.off(event, handler).catch(() => undefined);
|
|
802
|
-
|
|
857
|
+
const streamKey = `${peer}\u0000${namespace}\u0000${event}`;
|
|
858
|
+
const previous = watchCursors.get(streamKey);
|
|
859
|
+
const cursor = await cursorOf();
|
|
860
|
+
let loss;
|
|
861
|
+
if (!cursor || cursor.seq === null)
|
|
862
|
+
loss = 'unknown - the peer reports no cursor for this event, so nothing can be said about what fell between watches';
|
|
863
|
+
else {
|
|
864
|
+
watchCursors.set(streamKey, { epoch: cursor.epoch, seq: cursor.seq });
|
|
865
|
+
if (!previous)
|
|
866
|
+
loss = 'first watch of this stream here - the next one can say whether anything fell between them';
|
|
867
|
+
else if (previous.epoch !== cursor.epoch)
|
|
868
|
+
loss = 'unknowable - the server restarted between watches, and a fresh incarnation cannot say what happened before it';
|
|
869
|
+
else {
|
|
870
|
+
// Everything that fired since the last watch ended, minus what this one
|
|
871
|
+
// heard, is what fell between them - or was lost mid-watch, which the
|
|
872
|
+
// per-event seq stamps in `heard` distinguish.
|
|
873
|
+
const missed = cursor.seq - previous.seq - heard.length;
|
|
874
|
+
loss =
|
|
875
|
+
missed <= 0
|
|
876
|
+
? `gapless - nothing fired between this watch and the previous one that was not heard (${cursor.seq - previous.seq} fired, ${heard.length} heard)`
|
|
877
|
+
: `missed ${missed} - ${cursor.seq - previous.seq} fired since the previous watch and only ${heard.length} were heard here`;
|
|
878
|
+
}
|
|
879
|
+
}
|
|
880
|
+
return {
|
|
881
|
+
text: JSON.stringify({ watchedFor: seconds, event: `${peer}.${namespace}.${event}`, heard, loss, ...(cursor && cursor.seq !== null ? { cursor } : {}) }, null, 2)
|
|
882
|
+
};
|
|
803
883
|
}
|
|
804
884
|
catch (e) {
|
|
805
885
|
return { text: `cannot watch ${peer}.${namespace}.${event}: ${failureText(e)}`, isError: true };
|
|
@@ -807,11 +887,13 @@ export const startMcp = async (options) => {
|
|
|
807
887
|
}
|
|
808
888
|
return { text: `Unknown tool '${name}'.`, isError: true };
|
|
809
889
|
};
|
|
810
|
-
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
890
|
+
/**
|
|
891
|
+
* One answer for one JSON-RPC message, whichever door it arrived through - the same dispatch
|
|
892
|
+
* serves stdio and the streamable HTTP door, which is precisely what makes two clients share
|
|
893
|
+
* one view of the scripts, fakes, watches and cursors: there is only one of everything here.
|
|
894
|
+
* Returns undefined for a notification, which must not be answered at all.
|
|
895
|
+
*/
|
|
896
|
+
const answerTo = async (request) => {
|
|
815
897
|
const isNotification = request.id === undefined || request.id === null;
|
|
816
898
|
switch (request.method) {
|
|
817
899
|
case 'initialize': {
|
|
@@ -819,45 +901,49 @@ export const startMcp = async (options) => {
|
|
|
819
901
|
// any revision that still calls tools the same way, and refusing a version we have
|
|
820
902
|
// simply never heard of would be worse than answering it.
|
|
821
903
|
const asked = request.params?.protocolVersion;
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
'
|
|
832
|
-
|
|
833
|
-
|
|
904
|
+
return {
|
|
905
|
+
result: {
|
|
906
|
+
protocolVersion: typeof asked === 'string' && asked ? asked : FALLBACK_PROTOCOL_VERSION,
|
|
907
|
+
capabilities: { tools: {} },
|
|
908
|
+
// Read from the manifest rather than repeated here: a hardcoded copy sat
|
|
909
|
+
// at 3.0.0 for two majors, and clients show this when reporting which
|
|
910
|
+
// server said what - a wrong number here misdirects exactly the person
|
|
911
|
+
// reading a bug report.
|
|
912
|
+
serverInfo: { name: 'source-rpc', version: ownVersion() },
|
|
913
|
+
instructions: 'This is a live Source RPC network. Start with list_peers, then describe_peer to learn a peer' +
|
|
914
|
+
' contract before calling it. Calls reach real devices, so treat anything that writes as consequential.' +
|
|
915
|
+
' start_fake puts a peer of your own on the same network, built from a contract you supply - use it to try something' +
|
|
916
|
+
' against a device that does not exist yet, rather than against one that does. watch_traffic shows what other peers' +
|
|
917
|
+
' are saying to each other, which is most of what is happening.'
|
|
918
|
+
}
|
|
919
|
+
};
|
|
834
920
|
}
|
|
835
921
|
case 'notifications/initialized':
|
|
836
922
|
case 'notifications/cancelled':
|
|
837
|
-
return;
|
|
923
|
+
return undefined;
|
|
838
924
|
case 'ping':
|
|
839
|
-
|
|
840
|
-
respond(request.id, {});
|
|
841
|
-
return;
|
|
925
|
+
return isNotification ? undefined : { result: {} };
|
|
842
926
|
case 'tools/list':
|
|
843
|
-
|
|
844
|
-
return;
|
|
927
|
+
return { result: { tools: toolsFor(options.contracts, options.allowExec, options.scripts) } };
|
|
845
928
|
case 'tools/call': {
|
|
846
929
|
const name = String(request.params?.name ?? '');
|
|
847
930
|
const args = (request.params?.arguments ?? {});
|
|
848
|
-
if (!name)
|
|
849
|
-
|
|
850
|
-
return;
|
|
851
|
-
}
|
|
931
|
+
if (!name)
|
|
932
|
+
return { error: { code: INVALID_PARAMS, message: 'tools/call needs a tool name' } };
|
|
852
933
|
const { text, isError } = await callTool(name, args);
|
|
853
|
-
|
|
854
|
-
return;
|
|
934
|
+
return { result: { content: [{ type: 'text', text }], ...(isError ? { isError: true } : {}) } };
|
|
855
935
|
}
|
|
856
936
|
default:
|
|
857
|
-
|
|
858
|
-
fail(request.id, METHOD_NOT_FOUND, `unknown method '${request.method}'`);
|
|
937
|
+
return isNotification ? undefined : { error: { code: METHOD_NOT_FOUND, message: `unknown method '${request.method}'` } };
|
|
859
938
|
}
|
|
860
939
|
};
|
|
940
|
+
const write = (message) => process.stdout.write(JSON.stringify(message) + '\n');
|
|
941
|
+
const fail = (id, code, message) => write({ jsonrpc: '2.0', id, error: { code, message } });
|
|
942
|
+
const handle = async (request) => {
|
|
943
|
+
const answer = await answerTo(request);
|
|
944
|
+
if (answer)
|
|
945
|
+
write({ jsonrpc: '2.0', id: request.id, ...answer });
|
|
946
|
+
};
|
|
861
947
|
let buffered = '';
|
|
862
948
|
process.stdin.setEncoding('utf8');
|
|
863
949
|
process.stdin.on('data', (chunk) => {
|
|
@@ -889,8 +975,78 @@ export const startMcp = async (options) => {
|
|
|
889
975
|
});
|
|
890
976
|
}
|
|
891
977
|
});
|
|
978
|
+
/**
|
|
979
|
+
* The second door: streamable HTTP, spoken directly for the same reason stdio is - the
|
|
980
|
+
* protocol is a POST carrying one JSON-RPC message and a JSON answer, which is little enough
|
|
981
|
+
* that an SDK would be the bigger dependency. Two deliberate simplifications the spec allows:
|
|
982
|
+
* no session ids are assigned, because the door exists to *share* one process-wide state and
|
|
983
|
+
* a session would only pretend otherwise; and GET's server-initiated stream is declined with
|
|
984
|
+
* 405, because this server has no server-initiated messages to send.
|
|
985
|
+
*/
|
|
986
|
+
let door;
|
|
987
|
+
if (options.port) {
|
|
988
|
+
const doorHost = options.host ?? '127.0.0.1';
|
|
989
|
+
const local = doorHost === '127.0.0.1' || doorHost === 'localhost';
|
|
990
|
+
// Fail closed before the port opens: a wide door with no lock is not started, warned about
|
|
991
|
+
// and left open - it is refused, and the sentence says what would make it acceptable.
|
|
992
|
+
if (!local && !options.doorToken)
|
|
993
|
+
throw new Error(`mcp: refusing to serve HTTP on ${doorHost} without a token - the network could drive this node. Set SOURCE_RPC_MCP_TOKEN, or bind 127.0.0.1.`);
|
|
994
|
+
const MAX_BODY = 4 * 1024 * 1024;
|
|
995
|
+
door = createHttpServer((request, response) => {
|
|
996
|
+
if (request.method !== 'POST') {
|
|
997
|
+
response.writeHead(405, { Allow: 'POST' }).end();
|
|
998
|
+
return;
|
|
999
|
+
}
|
|
1000
|
+
if (options.doorToken && request.headers.authorization !== `Bearer ${options.doorToken}`) {
|
|
1001
|
+
response.writeHead(401, { 'WWW-Authenticate': 'Bearer' }).end();
|
|
1002
|
+
return;
|
|
1003
|
+
}
|
|
1004
|
+
let body = '';
|
|
1005
|
+
request.setEncoding('utf8');
|
|
1006
|
+
request.on('data', (chunk) => {
|
|
1007
|
+
body += chunk;
|
|
1008
|
+
if (body.length > MAX_BODY)
|
|
1009
|
+
request.destroy();
|
|
1010
|
+
});
|
|
1011
|
+
request.on('end', () => {
|
|
1012
|
+
let message;
|
|
1013
|
+
try {
|
|
1014
|
+
message = JSON.parse(body);
|
|
1015
|
+
}
|
|
1016
|
+
catch {
|
|
1017
|
+
response.writeHead(400, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: null, error: { code: INVALID_PARAMS, message: 'the body is not a JSON-RPC message' } }));
|
|
1018
|
+
return;
|
|
1019
|
+
}
|
|
1020
|
+
if (Array.isArray(message)) {
|
|
1021
|
+
response.writeHead(400, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: null, error: { code: INVALID_PARAMS, message: 'batches are not accepted here - send one message per POST' } }));
|
|
1022
|
+
return;
|
|
1023
|
+
}
|
|
1024
|
+
// A notification is taken and not answered, which over HTTP is 202.
|
|
1025
|
+
if (message.id === undefined || message.id === null) {
|
|
1026
|
+
void answerTo(message).catch((e) => process.stderr.write(`source-rpc mcp: ${failureText(e)}\n`));
|
|
1027
|
+
response.writeHead(202).end();
|
|
1028
|
+
return;
|
|
1029
|
+
}
|
|
1030
|
+
void answerTo(message)
|
|
1031
|
+
.then((answer) => response.writeHead(200, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: message.id, ...answer })))
|
|
1032
|
+
.catch((e) => response.writeHead(200, { 'Content-Type': 'application/json' }).end(JSON.stringify({ jsonrpc: '2.0', id: message.id, error: { code: INTERNAL_ERROR, message: failureText(e) } })));
|
|
1033
|
+
});
|
|
1034
|
+
});
|
|
1035
|
+
await new Promise((resolvePromise, rejectPromise) => {
|
|
1036
|
+
door.on('error', rejectPromise);
|
|
1037
|
+
door.listen(options.port, doorHost, () => resolvePromise());
|
|
1038
|
+
});
|
|
1039
|
+
process.stderr.write(`source-rpc mcp: streamable HTTP on ${doorHost}:${options.port} - a second client can attach here and sees the same scripts, fakes and watches as stdio.\n`);
|
|
1040
|
+
if (local && !options.doorToken)
|
|
1041
|
+
process.stderr.write('source-rpc mcp: the HTTP door has no token, so any process on this machine can drive this node. SOURCE_RPC_MCP_TOKEN is what gates it.\n');
|
|
1042
|
+
if (!local)
|
|
1043
|
+
// The console's warning, for the same widening.
|
|
1044
|
+
process.stderr.write(`source-rpc mcp: bound to ${doorHost}, so these tools are reachable from the network. Anyone with the token can call, script and fake through this node.\n`);
|
|
1045
|
+
}
|
|
892
1046
|
const close = async () => {
|
|
893
1047
|
process.stdin.removeAllListeners('data');
|
|
1048
|
+
if (door)
|
|
1049
|
+
await new Promise((resolvePromise) => door.close(() => resolvePromise()));
|
|
894
1050
|
// Before the network goes: a fake left running would hold a link this is about to drop.
|
|
895
1051
|
for (const fake of fakes.values())
|
|
896
1052
|
await fake.close().catch(() => undefined);
|