@glbgpt/cli 0.2.10 → 0.2.12

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.
@@ -1 +1 @@
1
- {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/tui/App.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrE,OAAO,QAAQ,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAErD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAM1D,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGlE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAGjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAoB,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQ/D;;;;;;GAMG;AACH,MAAM,UAAU,GAAG,CAAC,EAClB,UAAU,EACV,kBAAkB,EAClB,cAAc,EACd,cAAc,EACd,WAAW,EACX,aAAa,EACb,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,aAAa,GAkBd;IACC,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAC;IAC/B,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,EAAE,CAAC;IACtC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAY,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACxE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5C,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAqB,kBAAkB,EAAE,OAAO,EAAE,IAAI,IAAI,CAAC,CAAC;IAClG,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,cAAc,EAAE,OAAO,EAAE,IAAI,IAAI,CAClC,CAAC;IACF,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CACpD,cAAc,EAAE,OAAO,EAAE,IAAI,IAAI,CAClC,CAAC;IACF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAEpE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,gBAAgB;YAAE,OAAO;QAC9B,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,gBAAgB,EAAE;aACf,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,CAAC;aACrD,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACnB,OAAO,GAAG,EAAE;YACV,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,iFAAiF;IACjF,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,4BAA4B;IAC5E,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvC,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,YAAY;YAAE,OAAO;QAC1B,KAAK,YAAY;aACd,IAAI,EAAE;aACN,IAAI,CAAC,UAAU,CAAC;aAChB,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACnB,2FAA2F;IAC3F,2FAA2F;IAC3F,mFAAmF;IACnF,MAAM,YAAY,GAAG,SAAS,KAAK,CAAC,CAAC,IAAI,KAAK,KAAK,OAAO,CAAC,SAAS,CAAC,CAAC;IAEtE,wFAAwF;IACxF,mFAAmF;IACnF,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,WAAW,GACf,UAAU,KAAK,SAAS;QACxB,CAAC,OAAO;QACR,CAAC,eAAe;QAChB,CAAC,eAAe;QAChB,CAAC,SAAS;QACV,CAAC,QAAQ;QACT,CAAC,YAAY;QACX,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC;QAC5B,CAAC,CAAC,EAAE,CAAC;IACT,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/C,MAAM,kBAAkB,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAEnF,sFAAsF;IACtF,uFAAuF;IACvF,0FAA0F;IAC1F,MAAM,OAAO,GACX,CAAC,eAAe;QAChB,CAAC,OAAO;QACR,CAAC,eAAe;QAChB,CAAC,eAAe;QAChB,CAAC,SAAS;QACV,CAAC,QAAQ;QACT,CAAC,YAAY;QACX,CAAC,CAAC,mCAAmC,CAAC,IAAI,CAAC,KAAK,CAAC;QACjD,CAAC,CAAC,IAAI,CAAC;IACX,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;IAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAgB,EAAE,CAAC,CAAC;IAC1D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC1C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,UAAU,CAAC,EAAE,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QACD,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,YAAY,CAAC,SAAS,EAAE;YAC3B,YAAY,EAAE,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC,KAAK,SAAS;SACrE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACZ,IAAI,KAAK,EAAE,CAAC;gBACV,UAAU,CAAC,CAAC,CAAC,CAAC;gBACd,UAAU,CAAC,CAAC,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE;YACV,KAAK,GAAG,KAAK,CAAC;QAChB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,MAAM,MAAM,GAAG,SAAS,KAAK,SAAS,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACnC,IAAI,CAAC,UAAU,IAAI,SAAS,KAAK,SAAS;YAAE,OAAO;QACnD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClF,oFAAoF;QACpF,6EAA6E;QAC7E,MAAM,KAAK,GAAG,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,KAAK;YACrB,CAAC,CAAC,UAAU,CAAC,KAAK;gBAChB,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,EAAE;gBACzB,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG;YAC5B,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;QACtB,yFAAyF;QACzF,QAAQ,CAAC,GAAG,IAAI,GAAG,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAChE,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnD,OAAO,WAAW,CAAC;IACrB,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;IAEjB,yFAAyF;IACzF,0FAA0F;IAC1F,sFAAsF;IACtF,sFAAsF;IACtF,uFAAuF;IACvF,MAAM,SAAS,GAAG,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;IAC7C,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACxC,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC1D,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,KAAK,WAAW,EAAE,CAAC;YAC9B,cAAc,CAAC,SAAS,CAAC,CAAC;YAC1B,SAAS,CAAC,CAAC,CAAC,CAAC;YACb,OAAO;QACT,CAAC;QACD,sFAAsF;QACtF,yFAAyF;QACzF,qFAAqF;QACrF,4CAA4C;QAC5C,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC;QACxG,IAAI,MAAM,GAAG,MAAM;YAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;IACpF,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5C,0FAA0F;IAC1F,2FAA2F;IAC3F,iCAAiC;IACjC,MAAM,CAAC,YAAY,CAAC,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,mBAAmB,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC;IACjE,MAAM,WAAW,GACf,WAAW,KAAK,YAAY,IAAI,mBAAmB,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;IAElG,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,kBAAkB;YAAE,OAAO;QAChC,OAAO,kBAAkB,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,kBAAkB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,OAAO,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,kBAAkB,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,cAAc;YAAE,OAAO;QAC5B,OAAO,cAAc,CAAC,SAAS,CAAC,GAAG,EAAE;YACnC,kBAAkB,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC;YAC7C,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IAErB,kFAAkF;IAClF,kFAAkF;IAClF,QAAQ,CACN,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACT,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc;YAAE,OAAO;QAChD,MAAM,CAAC,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,CAAC;QACzC,IAAI,GAAG,CAAC,OAAO;YAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;aACrD,IAAI,GAAG,CAAC,SAAS;YAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;aACxD,IAAI,GAAG,CAAC,MAAM;YAAE,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;aACnG,IAAI,GAAG,CAAC,MAAM;YAAE,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;aAC7C,CAAC;YACJ,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,cAAc,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACnG,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,CAAC,eAAe,EAAE,CAChC,CAAC;IAEF,oFAAoF;IACpF,0DAA0D;IAC1D,QAAQ,CACN,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACT,IAAI,CAAC,eAAe,IAAI,CAAC,cAAc;YAAE,OAAO;QAChD,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,GAAG;YAAE,cAAc,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;aAC7D,IAAI,CAAC,KAAK,GAAG,IAAI,eAAe,CAAC,YAAY;YAAE,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;aACvF,IAAI,CAAC,KAAK,GAAG,IAAI,eAAe,CAAC,YAAY;YAAE,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;aACvF,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,GAAG;YAAE,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnE,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,CAAC,eAAe,IAAI,CAAC,OAAO,IAAI,CAAC,eAAe,EAAE,CAChE,CAAC;IAEF,6FAA6F;IAC7F,0FAA0F;IAC1F,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1D,QAAQ,CACN,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACT,IAAI,CAAC,OAAO,IAAI,CAAC,kBAAkB;YAAE,OAAO;QAC5C,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;YAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;aACxF,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,GAAG;YAAE,kBAAkB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;aAC3F,IAAI,CAAC,KAAK,GAAG;YAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC7C,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,aAAa,IAAI,CAAC,eAAe,EAAE,CAC9D,CAAC;IACF,0FAA0F;IAC1F,qBAAqB;IACrB,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,uEAAuE;IACvE,QAAQ,CACN,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,CAAC,MAAM;YAAE,UAAU,CAAC,SAAS,EAAE,CAAC;IACzC,CAAC,EACD,EAAE,QAAQ,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CACxG,CAAC;IAEF,0FAA0F;IAC1F,qFAAqF;IACrF,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAClD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;QACtD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QAClB,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;YAAE,OAAO;QACrC,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,KAAK,CAAC,IAAI;YAAE,UAAU,CAAC,SAAS,EAAE,CAAC;QACvC,IAAI,KAAK;YAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QACxB,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,wFAAwF;IACxF,yFAAyF;IACzF,sCAAsC;IACtC,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,MAAM,IAAI,GAAG,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,CAAC;QAChF,IAAI,SAAS,KAAK,CAAC,CAAC;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,6BAA6B;QACpE,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,GAAS,EAAE;QAC/B,IAAI,SAAS,KAAK,CAAC,CAAC;YAAE,OAAO;QAC7B,MAAM,IAAI,GAAG,SAAS,GAAG,CAAC,CAAC;QAC3B,IAAI,IAAI,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YAC3B,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACjB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,2DAA2D;QAC9E,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,IAAI,CAAC,CAAC;YACnB,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC,CAAC;IAEF,0FAA0F;IAC1F,0FAA0F;IAC1F,+EAA+E;IAC/E,kEAAkE;IAClE,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,GAAG,EAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,QAAQ,CACN,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;QACT,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC;YAAE,OAAO;QACrC,KAAK,CAAC,aAAa,IAAI,kBAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;YACzD,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,WAAW,GAAG,WAAW,YAAY,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC;gBACxD,YAAY,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBACpC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,WAAW,GAAG,CAAC,CAAC;YACpF,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAClD,CAAC;IACF,yEAAyE;IACzE,MAAM,kBAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CAClD,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC,EAAE,EAAE;QACpC,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACjC,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEL,yFAAyF;IACzF,QAAQ,CACN,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,CAAC,OAAO;YAAE,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;aACzE,IAAI,GAAG,CAAC,SAAS;YAAE,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;aAC/D,IAAI,GAAG,CAAC,GAAG;YAAE,iBAAiB,EAAE,CAAC;IACxC,CAAC,EACD,EAAE,QAAQ,EAAE,MAAM,EAAE,CACrB,CAAC;IAEF,oGAAoG;IACpG,QAAQ,CACN,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,GAAG,CAAC,OAAO;YAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;aAClF,IAAI,GAAG,CAAC,SAAS;YAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;aACpE,IAAI,GAAG,CAAC,GAAG,IAAI,kBAAkB;YAAE,QAAQ,CAAC,IAAI,kBAAkB,CAAC,IAAI,GAAG,CAAC,CAAC;IACnF,CAAC,EACD,EAAE,QAAQ,EAAE,eAAe,EAAE,CAC9B,CAAC;IAEF,6BAA6B;IAC7B,QAAQ,CACN,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QACnC,IAAI,GAAG,CAAC,OAAO;YAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;aAChF,IAAI,GAAG,CAAC,SAAS;YAAE,WAAW,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;aACnE,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACpB,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACjF,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;aAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACtB,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,SAAS,EAAE,CACxB,CAAC;IAEF,uCAAuC;IACvC,QAAQ,CACN,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE;QACV,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,GAAG,CAAC,OAAO;YAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;aAC7E,IAAI,GAAG,CAAC,SAAS;YAAE,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;aAClE,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnC,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,KAAK,aAAa;gBAChB,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;iBACvB,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACV,CAAC;gBACC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC;gBAClD,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,mCAAmC,CAAC,CACzD,CAAC;QACN,CAAC;aAAM,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACtB,WAAW,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAChD,CAAC;IAEF,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAQ,EAAE;QACvC,IAAI,MAAM,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC5D,qFAAqF;YACrF,iFAAiF;YACjF,iBAAiB,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,qFAAqF;QACrF,qDAAqD;QACrD,MAAM,IAAI,GAAG,eAAe,IAAI,kBAAkB,CAAC,CAAC,CAAC,IAAI,kBAAkB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAClG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,WAAW,CAAC,CAAC,CAAC,CAAC;QACf,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QACjB,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,uFAAuF;QACvF,oFAAoF;QACpF,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACxE,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;QAClE,KAAK,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;QACT,CAAC;QACD,KAAK,UAAU,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,KAAa,EAAQ,EAAE;QAC5C,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,oDAAoD;QACpE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,uCAAuC;IAC3D,CAAC,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,IAAY,EAAQ,EAAE;QACzC,MAAM,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACxC,QAAQ,GAAG,EAAE,CAAC;YACZ,KAAK,OAAO;gBACV,WAAW,CACT,IAAI,CAAC,GAAG,CACN,CAAC,EACD,aAAa,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,CAAC,CACvD,CACF,CAAC;gBACF,YAAY,CAAC,IAAI,CAAC,CAAC;gBACnB,MAAM;YACR,KAAK,OAAO,CAAC;YACb,KAAK,OAAO;gBACV,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,UAAU,CAAC,IAAI,CAAC,WAAW,GAAG,2DAA2D,CAAC,CAAC;oBAC3F,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;gBACpC,MAAM;YACR,KAAK,QAAQ;gBACX,UAAU,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,UAAU,CAAC,SAAS,EAAE,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ;gBACX,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC7B,MAAM;YACR,KAAK,SAAS;gBACZ,KAAK,UAAU,CAAC,WAAW,EAAE,CAAC;gBAC9B,MAAM;YACR,KAAK,cAAc;gBACjB,KAAK,UAAU,CAAC,gBAAgB,EAAE,CAAC;gBACnC,MAAM;YACR,KAAK,OAAO;gBACV,KAAK,UAAU,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAClF,MAAM;YACR,KAAK,QAAQ;gBACX,KAAK,UAAU,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM;YACR,KAAK,MAAM;gBACT,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACtB,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,UAAU,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;oBAClD,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;oBAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;oBACvE,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACxB,UAAU,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;wBACpD,OAAO;oBACT,CAAC;oBACD,YAAY,CAAC,CAAC,CAAC,CAAC;oBAChB,WAAW,CAAC,MAAM,CAAC,CAAC;gBACtB,CAAC,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,SAAS;gBACZ,KAAK,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,MAAM;gBACT,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC;gBAC3B,MAAM;YACR,KAAK,QAAQ;gBACX,KAAK,UAAU,CAAC,kBAAkB,EAAE,CAAC;gBACrC,MAAM;YACR,KAAK,KAAK;gBACR,UAAU,CAAC,KAAK,EAAE,CAAC;gBACnB,MAAM;YACR,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM;gBACT,IAAI,EAAE,CAAC;gBACP,MAAM;YACR,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,UAAU,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;oBACvD,MAAM;gBACR,CAAC;gBACD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAoB,CAAC;gBAC1C,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;oBAClE,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACrB,UAAU,CAAC,IAAI,CACb,oBAAoB,GAAG,EAAE;wBACvB,CAAC,GAAG,KAAK,MAAM,CAAC,CAAC,CAAC,sDAAsD,CAAC,CAAC,CAAC,EAAE,CAAC,CACjF,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,UAAU,CAAC,IAAI,CACb,oBAAoB,WAAW,CAAC,GAAG,EAAE,IAAI;wBACvC,mDAAmD;wBACnD,2DAA2D;wBAC3D,sEAAsE;wBACtE,0CAA0C,CAC7C,CAAC;gBACJ,CAAC;gBACD,MAAM;YACR,CAAC;YACD,KAAK,MAAM;gBACT,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACtB,MAAM;YACR;gBACE,UAAU,CAAC,IAAI,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,MAAM,IAAmB,KAAK,EAAE,WAAW,YACzC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CACX,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,CACnB,KAAC,YAAY,IAEX,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,IAAI,KAAK,EAC3B,OAAO,UAJH,SAAS,CAKb,CACH,CAAC,CAAC,CAAC,CACF,KAAC,WAAW,IAAS,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,IAA/B,CAAC,CAAkC,CACtD,IAZQ,WAAW,CAcf,EACR,CAAC,mBAAmB,IAAI,CACvB,KAAC,YAAY,IAAC,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,IAAI,KAAK,GAAI,CAC5F,EACA,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1B,KAAC,WAAW,IAEV,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,eAAe,EAC/C,aAAa,EAAE,KAAK,CAAC,IAAI,IAAI,MAAM,GAAG,CAAC,KAAK,KAAK,CAAC,cAAc,IAJ3D,MAAM,GAAG,CAAC,CAKf,CACH,CAAC,EAID,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,SAAS,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,GAAI,EACvE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,eAAe,IAAI,CAAC,eAAe,IAAI,KAAC,WAAW,KAAG,EAEjF,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,CAAC,YAAY,GAAI,EAE9E,OAAO,IAAI,aAAa,CAAC,CAAC,CAAC,CAC1B,KAAC,WAAW,IACV,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,kBAAkB,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,EAC1F,QAAQ,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,EACvC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAC7C,CACH,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CACZ,KAAC,iBAAiB,IAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAI,CACpF,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CACpB,KAAC,aAAa,IAAC,QAAQ,EAAE,eAAe,EAAE,QAAQ,EAAE,aAAa,GAAI,CACtE,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CACpB,KAAC,aAAa,IAAC,OAAO,EAAE,eAAe,GAAI,CAC5C,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACb,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,uFAAoE,EACrF,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACtB,MAAC,IAAI,IAAY,KAAK,EAAE,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aACzD,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAC7B,CAAC,CAAC,OAAO,EAAE,GAAG,EACf,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBACb,CAAC,CAAC,KAAK,cAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,IAC9B,KALE,CAAC,CAAC,EAAE,CAMR,CACR,CAAC,IACE,CACP,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CACd,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,gFAA6D,EAC9E,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC7B,MAAC,IAAI,IAAY,KAAK,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aACxD,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAC5B,YAAY,CAAC,CAAC,CAAC,KAFP,CAAC,CAAC,EAAE,CAGR,CACR,CAAC,IACE,CACP,CAAC,CAAC,CAAC,CACF,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACrC,eAAe,IAAI,CAClB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACzB,MAAC,IAAI,IAAc,KAAK,EAAE,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aACpE,CAAC,KAAK,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,OAAG,CAAC,CAAC,IAAI,EAChD,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,cAAK,CAAC,CAAC,WAAW,IACxC,KAJE,CAAC,CAAC,IAAI,CAKV,CACR,CAAC,EACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,gFAEpB,IACH,CACP,EACA,MAAM,IAAI,CACT,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACxB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAClB,MAAC,IAAI,IAAe,KAAK,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aAC7D,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAC9B,CAAC,CAAC,KAAK,EACR,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,yBAAK,CAAC,CAAC,IAAI,IAAQ,KAH5B,CAAC,CAAC,KAAK,CAIX,CACR,CAAC,EACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,qEAEpB,IACH,CACP,EACA,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1B,MAAC,IAAI,IAAS,KAAK,EAAC,MAAM,EAAC,QAAQ,mBAChC,cAAc,EACd,CAAC,CAAC,OAAO,KAFD,CAAC,CAGL,CACR,CAAC,EAEF,MAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,UAAU,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,EAAC,MAAM,EAAC,WAAW,EAAE,CAAC,aAC/F,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,IAAI,GAAQ,EAChC,KAAC,cAAc,IACb,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,CAAC,CAAC,EAClC,WAAW,EAAE,CAAC,MAAM,IAAI,CAAC,eAAe,EACxC,WAAW,EAAE,mEAAmE,GAChF,IACE,EAEN,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,SAAS,YAC7D,SAAS;oCACR,CAAC,CAAC,4BAA4B;oCAC9B,CAAC,CAAC,KAAK,CAAC,IAAI;wCACV,CAAC,CAAC,iDAAiD;wCACnD,CAAC,CAAC,6BAA6B,GAC9B,EACP,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,mBACxB,WAAW,IAAI,WAAW,CAAC,GAAG,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,CAChD,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,CAAC,GAAG,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,aAAG,WAAW,CAAC,GAAG,EAAE,gBAAW,CAC5F,CAAC,CAAC,CAAC,IAAI,EACP,KAAK,CAAC,KAAK,EACX,KAAK,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAC/E,KAAK,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,gBAAgB,GAAG,CAAC;wCACxE,CAAC,CAAC,MAAM,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC,gBAAgB,CAAC,iBAAiB;wCAC5G,CAAC,CAAC,EAAE,EACL,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAC3K,KAAK,CAAC,YAAY,CAAC,qBAAqB,GAAG,CAAC;wCAC3C,CAAC,CAAC,OAAO,KAAK,CAAC,YAAY,CAAC,qBAAqB,KAAK;wCACtD,CAAC,CAAC,EAAE,EACL,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC;wCAC5B,CAAC,CAAC,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,QAAQ,KAAK,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU;wCAC3F,CAAC,CAAC,EAAE,EACL,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,CACvC,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,GAAG,0BACO,KAAK,CAAC,aAAa,OAAG,KAAK,CAAC,cAAc,IAChD,CACR,CAAC,CAAC,CAAC,IAAI,IACH,IACH,IACF,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,EACpB,KAAK,EACL,WAAW,EACX,QAAQ,EACR,OAAO,GAAG,KAAK,GAOhB;IACC,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACjC,yFAAyF;IACzF,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACzE,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,OAAO,IAAI,CAAC,IAAI,IAAI,KAAK,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO;QAChE,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACvD,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IAE3B,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,aACzC,MAAC,GAAG,eACD,IAAI,IAAI,CACP,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,YAClD,WAAW,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CACnC,KAAC,IAAI,cAAU,IAAI,IAAI,GAAG,IAAf,CAAC,CAAsB,CACnC,CAAC,GACE,CACP,EACD,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,cAAc,EAAC,QAAQ,aACjD,KAAC,IAAI,cAAE,UAAU,EAAE,GAAQ,EAC3B,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,OAAO,GAAQ,EACnC,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAS,KAAK,IAAQ,EACvC,WAAW,IAAI,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,WAAW,GAAQ,IACnD,IACF,EACL,QAAQ,IAAI,CACX,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,iCAAwB,EACzC,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACrC,MAAC,IAAI,IAAc,KAAK,EAAC,MAAM,aAC5B,IAAI,OAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAG,CAAC,CAAC,WAAW,KAD/B,CAAC,CAAC,IAAI,CAEV,CACR,CAAC,EACF,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,IAAI,WAAM,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAS,sDACjC,IACH,CACP,IACG,CACP,CAAC;AACJ,CAAC;AAED,+FAA+F;AAC/F,SAAS,cAAc,CAAC,EAAE,KAAK,EAAwC;IACrE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,QAAQ,CAAC;IACtE,OAAO,CACL,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,wBACf,KAAK,sBAAa,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,mCACnD,GACH,CACP,CAAC;AACJ,CAAC;AAED,oDAAoD;AACpD,SAAS,OAAO,CAAC,EAAU;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,CAAC;QAAE,OAAO,UAAU,CAAC;IAChC,IAAI,IAAI,GAAG,EAAE;QAAE,OAAO,GAAG,IAAI,OAAO,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IACpC,IAAI,KAAK,GAAG,EAAE;QAAE,OAAO,GAAG,KAAK,OAAO,CAAC;IACvC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC;AAC1C,CAAC;AAED;;;;;GAKG;AACH,SAAS,iBAAiB,CACxB,IAAiB,EACjB,OAA6C;IAE7C,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAU,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACxE,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC;IACtC,MAAM,IAAI,GAA4B,EAAE,CAAC;IAEzC,IAAI,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,WAAW,IAAI,eAAe,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,CAAC,UAAU;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;SACrD,IAAI,CAAC,EAAE,iBAAiB;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,GAAG,CAAC,CAAC,iBAAiB,YAAY,CAAC,CAAC,CAAC;;QACxF,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC,CAAC;IAChD,IAAI,CAAC,CAAC,OAAO;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAEjD,IAAI,OAAO,EAAE,CAAC;QACZ,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;aACnE,IAAI,CAAC,EAAE,eAAe,KAAK,SAAS;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,eAAe,aAAa,CAAC,CAAC,CAAC;QACtG,4FAA4F;QAC5F,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACxG,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,0CAA0C,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;SAAM,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9D,IAAI,CAAC,CAAC,cAAc;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;IAC7D,8FAA8F;IAC9F,IAAI,CAAC,CAAC,UAAU;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrE,IAAI,CAAC,CAAC,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC/D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC;IACxG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB,CAAC,EACzB,IAAI,EACJ,OAAO,GAIR;IACC,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACpE,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,MAAC,IAAI,IAAC,KAAK,EAAC,QAAQ,0BACR,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,YAAQ,IAAI,CAAC,WAAW,SAC3E,EACP,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAI,IAAI,CAAC,MAAM,CAAC,MAAM,cAAS,EACjD,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,GAAG,WACE,IAAI,EACT,IAAI,CAAC,KAAK,IACN,EACN,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAC5B,MAAC,IAAI,IAAa,KAAK,EAAC,MAAM,aAC3B,IAAI,EACJ,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,OAAG,KAAK,KAFxB,KAAK,CAGT,CACR,CAAC,EACF,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,mBAAI,IAAI,CAAC,OAAO,gBAAgB,EAClD,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,yDAAgD,IAC9D,CACP,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,uEAAuE;AACvE,SAAS,aAAa,CAAC,EACrB,QAAQ,EACR,QAAQ,GAIT;IACC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,QAAQ,CAAC,QAAQ,GAAQ,EAC5C,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAChC,MAAC,IAAI,IAAiB,KAAK,EAAE,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aAC7D,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAC5B,CAAC,GAAG,CAAC,QAAI,GAAG,CAAC,KAAK,EAClB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,yBAAK,GAAG,CAAC,WAAW,IAAQ,CAAC,CAAC,CAAC,IAAI,KAH/D,GAAG,CAAC,KAAK,CAIb,CACR,CAAC,EACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,6EAAqD,IACnE,CACP,CAAC;AACJ,CAAC;AAED,uCAAuC;AACvC,SAAS,SAAS,CAAC,EAAE,KAAK,EAAyB;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;IAClE,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,6BACR,IAAI,OAAG,KAAK,CAAC,MAAM,IACtB,EACN,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAChB,MAAC,IAAI,IAEH,KAAK,EAAE,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,aAEzF,IAAI,EACJ,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,OAAG,CAAC,CAAC,IAAI,KAJ5E,CAAC,CAAC,IAAI,CAKN,CACR,CAAC,IACE,CACP,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,EAAE,OAAO,EAAgC;IAC9D,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC;SACzC,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC;IAC9C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,MAAC,IAAI,IAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,aAAG,OAAO,CAAC,KAAK,wBAAmB,EAC5E,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,aACnC,IAAI,EACJ,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAClB,OAAO,CAAC,MAAM,IACV,EACN,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,CAC1B,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,aACtC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CACvC,KAAC,IAAI,IAAS,KAAK,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,YAClF,CAAC,IADO,CAAC,CAEL,CACR,CAAC,EACD,YAAY,CAAC,MAAM,GAAG,EAAE,IAAI,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,0BAAM,YAAY,CAAC,MAAM,GAAG,EAAE,oBAAoB,IAC7F,CACP,EACA,OAAO,CAAC,eAAe,IAAI,CAC1B,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,IAAI,iBAAa,OAAO,CAAC,eAAe,CAAC,IAAI,KAAK,eAAe;wBAChE,CAAC,CAAC,8DAA8D;wBAChE,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,KAAK,gBAAgB;4BACjD,CAAC,CAAC,0BAA0B,OAAO,CAAC,eAAe,CAAC,KAAK,GAAG;4BAC5D,CAAC,CAAC,2BAA2B,OAAO,CAAC,eAAe,CAAC,KAAK,6CAA6C,IACtG,CACR,EACD,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aACf,IAAI,oBACJ,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,wDAAwD,CAAC,CAAC,CAAC,EAAE,iBAChF,IACH,CACP,CAAC;AACJ,CAAC;AAED,sFAAsF;AACtF,SAAS,WAAW;IAClB,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAClE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC/C,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QACxD,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IAChC,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;IACzD,OAAO,CACL,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,MAAM,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,gBAAgB,EAChE,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,gCAA2B,IACtE,CACP,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,GAAG,GAAG,GAAG,CAAC;AAChB,sFAAsF;AACtF,MAAM,SAAS,GAAG,iBAAiB,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;AAE9D;;;;GAIG;AACH,MAAM,iBAAiB,GAAqE;IAC1F,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,MAAM;IACd,GAAG,EAAE,MAAM;IACX,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF;;;;;GAKG;AACH,SAAS,KAAK,CAAC,IAAY,EAAE,OAAe,EAAE,MAAc;IAC1D,sFAAsF;IACtF,oFAAoF;IACpF,oFAAoF;IACpF,yFAAyF;IACzF,8EAA8E;IAC9E,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,WAAW,CAAC,EACnB,IAAI,EACJ,OAAO,EACP,eAAe,EACf,aAAa,GAQd;IACC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,MAAM;YACT,qFAAqF;YACrF,OAAO,CACL,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,aACf,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAC1B,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBAAU,GACxB,EACN,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,GAAQ,GACpD,IACF,CACP,CAAC;QACJ,KAAK,WAAW;YACd,OAAO,CACL,MAAC,GAAG,IAAC,SAAS,EAAE,CAAC,aACf,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAC1B,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,GAAG,GAAQ,GAChC,EACN,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,cACF,aAAa;gCACZ,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;gCACxD,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,GAC1C,GACH,IACF,CACP,CAAC;QACJ,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,8EAA8E;YAC9E,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC;YACpC,MAAM,MAAM,GAAG,IAAI,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,KAAK,KAAK,QAAQ,CAAC;YAC9D,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;YACrE,uFAAuF;YACvF,qFAAqF;YACrF,MAAM,OAAO,GACX,CAAC,IAAI;gBACL,CAAC,CAAC,eAAe;gBACjB,CAAC,IAAI,CAAC,IAAI,KAAK,gBAAgB;oBAC7B,IAAI,CAAC,IAAI,KAAK,gBAAgB;oBAC9B,IAAI,CAAC,IAAI,KAAK,MAAM;oBACpB,IAAI,CAAC,IAAI,KAAK,YAAY;oBAC1B,IAAI,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YACjF,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5C,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,aACtC,MAAC,GAAG,eACF,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAC1B,KAAC,IAAI,IAAC,KAAK,EAAE,QAAQ,YAAG,GAAG,GAAQ,GAC/B,EACN,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,MAAC,IAAI,eACF,IAAI,CAAC,IAAI,EACT,UAAU,CAAC,CAAC,CAAC,CACZ,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,kBAAG,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAC/E,CAAC,CAAC,CAAC,IAAI,IACH,GACH,IACF,EACN,MAAC,GAAG,eACF,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,YAC1B,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,MAAM,GAAQ,GAC9B,EACN,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YACf,KAAK,CACJ,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,CAAC,UAAU,EAC1F,OAAO,EACP,CAAC,CACF,GACI,GACH,IACF,IACF,CACP,CAAC;QACJ,CAAC;QACD,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,OAAO,GAAG,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;YAChE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC;YACzC,OAAO,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,CAC9B,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAC,OAAO,aAAE,GAAG,SAAS,EACjC,MAAC,IAAI,eACF,IAAI,YAAQ,GAAG,EAChB,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,wBACb,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAC1E,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,6BAA6B,IACxC,IACF,IACH,CACP,CAAC,CAAC,CAAC,CACF,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,aAAE,GAAG,SAAS,EAC/B,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,oCAAqB,IAAI,CAAC,MAAM,IAAQ,IACrD,CACP,CAAC;QACJ,CAAC;QACD,KAAK,MAAM;YACT,OAAO,CACL,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YAAE,IAAI,CAAC,IAAI,GAAQ,GACjC,CACP,CAAC;QACJ,KAAK,MAAM;YACT,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC3B,KAAC,IAAI,cACF,IAAI,CAAC,MAAM,KAAK,CAAC;wBAChB,CAAC,CAAC,GAAG;wBACL,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;wBACpB,sEAAsE;wBACtE,sCAAsC;wBACtC,KAAC,IAAI,IAEH,IAAI,EAAE,IAAI,CAAC,KAAK,KAAK,QAAQ,EAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,YAE5D,IAAI,CAAC,IAAI,IAJL,CAAC,CAKD,CACR,CAAC,IAbG,CAAC,CAcL,CACR,CAAC,GACE,CACP,CAAC;QACJ,KAAK,OAAO;YACV,OAAO,CACL,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAC,KAAK,wBAAS,IAAI,CAAC,IAAI,IAAQ,GACvC,CACP,CAAC;IACN,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,MAA2C;IAClE,IAAI,CAAC,MAAM;QAAE,OAAO,MAAM,CAAC;IAC3B,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,WAAW,MAAM,CAAC,KAAK,EAAE,CAAC;IACvE,IAAI,MAAM,CAAC,SAAS,KAAK,IAAI;QAAE,OAAO,WAAW,CAAC;IAClD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC;IAC9D,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACrD,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,OAAO,GACX,OAAO,MAAM,CAAC,iBAAiB,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,iBAAiB,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,OAAO,QAAQ,MAAM,CAAC,OAAO,aAAa,OAAO,iCAAiC,CAAC;IACrF,CAAC;IACD,uFAAuF;IACvF,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QAChC,OAAO,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IAC5C,CAAC;IACD,IAAI,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ;QAAE,OAAO,gBAAgB,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;IACrG,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC;QACpC,MAAM,IAAI,GAAG,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7E,OAAO,GAAG,IAAI,SAAS,MAAM,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAC3E,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,SAAS,CAAC,GAAW;IAC5B,IAAI,CAAC;QACH,OAAO,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC;AAED,kDAAkD;AAClD,uFAAuF;AACvF,SAAS,QAAQ,CAAC,gBAAwB,EAAE,KAAa;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,gBAAgB,CAAC,KAAK,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IACtG,OAAO,GAAG,IAAI,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC7B,OAAO,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC7D,CAAC;AAED,4FAA4F;AAC5F,SAAS,aAAa,CAAC,IAAyC;IAC9D,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IACrB,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACrD,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QACnD,MAAM,CAAC,GAAG,IAAI,CAAC,MAAgB,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,IAAI,CAAC,KAAe,CAAC;QAC/B,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,KAAK,MAAM,GAAG,IAAI;QAChB,OAAO;QACP,cAAc;QACd,YAAY;QACZ,UAAU;QACV,MAAM;QACN,SAAS;QACT,SAAS;QACT,KAAK;KACG,EAAE,CAAC;QACX,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrG,CAAC;IACD,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"App.js","sourceRoot":"","sources":["../../../src/tui/App.tsx"],"names":[],"mappings":"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"}
@@ -1,14 +1,11 @@
1
- /**
2
- * Candidates for the `@` attachment popup (Claude Code's file-mention popup, scoped to our
3
- * needs: keywords + image files/directories browsed from the typed prefix — no repo-wide
4
- * index, we only ever attach images).
5
- */
6
1
  export interface AtCandidate {
7
2
  /** Text that replaces the partial after `@` when chosen. */
8
3
  insert: string;
9
4
  label: string;
10
5
  hint: string;
11
6
  isDir?: boolean;
7
+ /** Matched only as scattered letters: the user likely wasn't naming this file, so Enter won't pick it. */
8
+ scattered?: boolean;
12
9
  }
13
10
  export interface AtPopupDeps {
14
11
  readDir?: (dir: string) => Promise<Array<{
@@ -24,6 +21,10 @@ export interface AtPopupDeps {
24
21
  * on every keystroke, and selecting it with no image gives a friendly notice.
25
22
  */
26
23
  hasLastImage?: boolean;
24
+ /** Files to search, relative to the working directory. */
25
+ listFiles?: () => Promise<string[]>;
27
26
  }
27
+ /** Project files without dotfiles: git's view (honors .gitignore), else a bounded directory walk. */
28
+ export declare function listProjectFiles(cwd?: string): Promise<string[]>;
28
29
  /** Compute candidates for the text typed after `@` ('' | 'im' | './fo' | '~/Pic' ...). */
29
30
  export declare function atCandidates(partial: string, deps?: AtPopupDeps): Promise<AtCandidate[]>;
@@ -1,7 +1,14 @@
1
+ import { execFile } from 'node:child_process';
1
2
  import { promises as fs } from 'node:fs';
2
3
  import os from 'node:os';
3
4
  import path from 'node:path';
5
+ import { promisify } from 'node:util';
4
6
  import { IMAGE_EXT } from '../util/imageRef.js';
7
+ /**
8
+ * Candidates for the `@` popup (Claude Code's file-mention popup): keywords, files and
9
+ * directories browsed from the typed prefix, and a fuzzy search over the project's files.
10
+ */
11
+ const execFileP = promisify(execFile);
5
12
  const KEYWORDS = [
6
13
  { insert: 'image', label: '@image', hint: 'the last generated image' },
7
14
  { insert: 'clipboard', label: '@clipboard', hint: 'image on the clipboard' },
@@ -22,6 +29,99 @@ async function defaultReadDir(dir) {
22
29
  dirCache.set(dir, { at: Date.now(), entries });
23
30
  return entries;
24
31
  }
32
+ const MAX_PROJECT_FILES = 50_000;
33
+ const MAX_WALKED_ENTRIES = 5_000;
34
+ const SKIPPED_DIRS = new Set(['node_modules', 'dist', 'build', 'target', 'vendor', '__pycache__']);
35
+ const FILE_LIST_TTL_MS = 30_000;
36
+ const hasHiddenSegment = (file) => file.split('/').some((part) => part.startsWith('.'));
37
+ /** Project files without dotfiles: git's view (honors .gitignore), else a bounded directory walk. */
38
+ export async function listProjectFiles(cwd = process.cwd()) {
39
+ try {
40
+ const { stdout } = await execFileP('git', ['ls-files', '--cached', '--others', '--exclude-standard', '-z'], {
41
+ cwd,
42
+ timeout: 3000,
43
+ maxBuffer: 32 * 1024 * 1024,
44
+ });
45
+ return stdout
46
+ .split('\0')
47
+ .filter((file) => file && !hasHiddenSegment(file))
48
+ .slice(0, MAX_PROJECT_FILES);
49
+ }
50
+ catch {
51
+ return walkFiles(cwd);
52
+ }
53
+ }
54
+ // Bounded because the working directory may be something as large as the home folder.
55
+ async function walkFiles(root) {
56
+ const files = [];
57
+ const queue = [''];
58
+ let seen = 0;
59
+ while (queue.length > 0 && seen < MAX_WALKED_ENTRIES) {
60
+ const dir = queue.shift();
61
+ const entries = await fs.readdir(path.join(root, dir), { withFileTypes: true }).catch(() => []);
62
+ for (const entry of entries) {
63
+ seen++;
64
+ if (entry.name.startsWith('.'))
65
+ continue;
66
+ const rel = dir ? `${dir}/${entry.name}` : entry.name;
67
+ if (entry.isDirectory()) {
68
+ if (!SKIPPED_DIRS.has(entry.name))
69
+ queue.push(rel);
70
+ }
71
+ else if (entry.isFile()) {
72
+ files.push(rel);
73
+ }
74
+ }
75
+ }
76
+ return files.sort();
77
+ }
78
+ let fileListCache = null;
79
+ function cachedProjectFiles() {
80
+ const cwd = process.cwd();
81
+ if (fileListCache?.cwd !== cwd || Date.now() - fileListCache.at >= FILE_LIST_TTL_MS) {
82
+ fileListCache = { cwd, at: Date.now(), files: listProjectFiles(cwd) };
83
+ }
84
+ return fileListCache.files;
85
+ }
86
+ /** Higher is better, negative for scattered letters; null when `query` is not a subsequence. Both are lowercase. */
87
+ function fuzzyScore(query, file) {
88
+ const base = file.slice(file.lastIndexOf('/') + 1);
89
+ if (base.startsWith(query))
90
+ return 3000;
91
+ if (base.includes(query))
92
+ return 2000;
93
+ if (file.includes(query))
94
+ return 1000;
95
+ let at = -1;
96
+ let start = -1;
97
+ for (const ch of query) {
98
+ at = file.indexOf(ch, at + 1);
99
+ if (at < 0)
100
+ return null;
101
+ if (start < 0)
102
+ start = at;
103
+ }
104
+ return -1 - (at - start); // the tighter the match, the better
105
+ }
106
+ function searchFiles(query, files) {
107
+ const q = query.toLowerCase();
108
+ const scored = [];
109
+ for (const file of files) {
110
+ const score = fuzzyScore(q, file.toLowerCase());
111
+ if (score !== null)
112
+ scored.push({ file, score });
113
+ }
114
+ return scored
115
+ .sort((a, b) => b.score - a.score || a.file.length - b.file.length || a.file.localeCompare(b.file))
116
+ .slice(0, MAX)
117
+ .map(({ file, score }) => ({
118
+ insert: file,
119
+ label: file,
120
+ hint: fileHint(file),
121
+ ...(score < 0 ? { scattered: true } : {}),
122
+ }));
123
+ }
124
+ const fileHint = (name) => (IMAGE_EXT.test(name) ? 'image file' : 'file');
25
125
  /** Compute candidates for the text typed after `@` ('' | 'im' | './fo' | '~/Pic' ...). */
26
126
  export async function atCandidates(partial, deps = {}) {
27
127
  const readDir = deps.readDir ?? defaultReadDir;
@@ -36,20 +136,33 @@ export async function atCandidates(partial, deps = {}) {
36
136
  try {
37
137
  const entries = await readDir(dirForFs);
38
138
  files = entries
39
- .filter((e) => !e.name.startsWith('.') && (e.isDirectory || IMAGE_EXT.test(e.name)))
139
+ .filter((e) => !e.name.startsWith('.'))
40
140
  .filter((e) => e.name.toLowerCase().startsWith(prefix))
41
141
  .sort((a, b) => Number(b.isDirectory) - Number(a.isDirectory) || a.name.localeCompare(b.name))
42
142
  .slice(0, MAX)
43
143
  .map((e) => ({
44
144
  insert: `${dirPart}${e.name}${e.isDirectory ? '/' : ''}`,
45
145
  label: `${dirPart}${e.name}${e.isDirectory ? '/' : ''}`,
46
- hint: e.isDirectory ? 'directory' : 'image file',
146
+ hint: e.isDirectory ? 'directory' : fileHint(e.name),
47
147
  isDir: e.isDirectory,
48
148
  }));
49
149
  }
50
150
  catch {
51
151
  files = []; // unreadable dir → keywords only
52
152
  }
53
- return [...keywords, ...files].slice(0, MAX);
153
+ // Bare names search the project; ./ ../ / ~/ mean the user is navigating to an exact place.
154
+ const explicitPath = /^(\.{1,2}\/|\/|~\/)/.test(partial);
155
+ const searchable = partial !== '' && !explicitPath && (slash < 0 || files.length === 0);
156
+ let found = [];
157
+ if (searchable) {
158
+ try {
159
+ found = searchFiles(partial, await (deps.listFiles ?? cachedProjectFiles)());
160
+ }
161
+ catch {
162
+ found = []; // no file list → keywords and browsing still work
163
+ }
164
+ }
165
+ const listed = new Set(files.map((f) => f.insert));
166
+ return [...keywords, ...files, ...found.filter((f) => !listed.has(f.insert))].slice(0, MAX);
54
167
  }
55
168
  //# sourceMappingURL=atPopup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"atPopup.js","sourceRoot":"","sources":["../../../src/tui/atPopup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"atPopup.js","sourceRoot":"","sources":["../../../src/tui/atPopup.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,17 @@
1
1
  import type { ContentPart } from '../core/types.js';
2
+ /**
3
+ * `@` attachment references in TUI input (contract §6): turn a message like
4
+ * "how does @image look?" into multimodal content parts so the model can SEE the image.
5
+ *
6
+ * Recognized forms — anything else stays plain text (so emails/@handles are untouched):
7
+ * - `@image` / `@last`: the most recently completed generation (its hosted output URL).
8
+ * - `@clipboard`: the image currently on the system clipboard (screenshot → ask).
9
+ * - `@<path>` where the token ends in an image extension: the local file, inlined as a data
10
+ * URL (≤ 8MB).
11
+ *
12
+ * Other `@<path>` references stay in the text and the model reads them with read_file. That way
13
+ * the content lands in a tool result, which pruning can clear; a user message never leaves context.
14
+ */
2
15
  export interface AttachmentContext {
3
16
  /** Output URL of the most recently completed generation (for `@image`). */
4
17
  lastMediaUrl?: string;
@@ -1,22 +1,10 @@
1
1
  import { resolveImageRef, ImageRefError, IMAGE_EXT } from '../util/imageRef.js';
2
2
  import { readClipboardImage } from '../util/clipboardImage.js';
3
- /**
4
- * `@` attachment references in TUI input (contract §6): turn a message like
5
- * "how does @image look?" into multimodal content parts so the model can SEE the image.
6
- *
7
- * Recognized forms — anything else stays plain text (so emails/@handles are untouched):
8
- * - `@image` / `@last`: the most recently completed generation (its hosted output URL).
9
- * - `@clipboard`: the image currently on the system clipboard (screenshot → ask).
10
- * - `@<path>` where the token looks like an image file (starts with ./ ../ / ~ or ends in an
11
- * image extension): the local file, inlined as a data URL (≤ 8MB).
12
- */
13
- const PATHISH = /^(\.{1,2}\/|\/|~\/)/;
14
3
  /**
15
4
  * Extract attachment tokens from the input:
16
5
  * - `@image` / `@last` match as keywords even when CJK text follows immediately
17
6
  * ("看看@image这个图" — users don't add a space before Chinese text);
18
- * - path-ish tokens (`@./a.png`, `@/abs/b.jpg`, `@~/c.webp`, `@shot.png`) match up to
19
- * whitespace, requiring a path prefix or an image extension.
7
+ * - image paths (`@./a.png`, `@/abs/b.jpg`, `@~/c.webp`, `@shot.png`) match up to whitespace.
20
8
  * Everything else (emails, @handles) stays plain text.
21
9
  */
22
10
  function extractTokens(input) {
@@ -27,7 +15,7 @@ function extractTokens(input) {
27
15
  let rest = input;
28
16
  for (const m of input.matchAll(/@"([^"\n]+)"/g)) {
29
17
  const token = m[1];
30
- if (PATHISH.test(token) || IMAGE_EXT.test(token))
18
+ if (IMAGE_EXT.test(token))
31
19
  tokens.push(token);
32
20
  rest = rest.replace(m[0], ' '); // don't re-match fragments of it below
33
21
  }
@@ -35,7 +23,7 @@ function extractTokens(input) {
35
23
  const token = m[1];
36
24
  if (token === 'image' || token === 'last')
37
25
  continue; // already handled above
38
- if (PATHISH.test(token) || IMAGE_EXT.test(token))
26
+ if (IMAGE_EXT.test(token))
39
27
  tokens.push(token);
40
28
  }
41
29
  return tokens;
@@ -1 +1 @@
1
- {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../../src/tui/attachments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../../src/tui/attachments.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Terminal bell when the CLI needs the user: most terminals turn it into a badge or attention
3
+ * bounce when unfocused, so someone who switched away during a long turn doesn't wait for nothing.
4
+ */
5
+ /** A turn shorter than this ended while the user was most likely still watching. */
6
+ export declare const LONG_TURN_MS = 30000;
7
+ export declare const ringTerminalBell: () => void;
8
+ /** Ring when a bridge (approval, paid-media confirmation, question) starts waiting on the user. */
9
+ export declare function ringOnNewRequest(source: {
10
+ current: () => unknown;
11
+ subscribe: (cb: () => void) => () => void;
12
+ }, ring: () => void): () => void;
13
+ /** Ring when a long turn ends on its own; an interrupted one means the user is already here. */
14
+ export declare function ringOnLongTurnEnd(controller: {
15
+ subscribe: (cb: (state: {
16
+ busy: boolean;
17
+ }) => void) => () => void;
18
+ lastTurnInterrupted: () => boolean;
19
+ }, ring: () => void, now?: () => number): () => void;
@@ -0,0 +1,32 @@
1
+ /**
2
+ * Terminal bell when the CLI needs the user: most terminals turn it into a badge or attention
3
+ * bounce when unfocused, so someone who switched away during a long turn doesn't wait for nothing.
4
+ */
5
+ /** A turn shorter than this ended while the user was most likely still watching. */
6
+ export const LONG_TURN_MS = 30_000;
7
+ export const ringTerminalBell = () => void process.stdout.write('\x07');
8
+ /** Ring when a bridge (approval, paid-media confirmation, question) starts waiting on the user. */
9
+ export function ringOnNewRequest(source, ring) {
10
+ let last = source.current();
11
+ return source.subscribe(() => {
12
+ const current = source.current();
13
+ if (current && current !== last)
14
+ ring();
15
+ last = current;
16
+ });
17
+ }
18
+ /** Ring when a long turn ends on its own; an interrupted one means the user is already here. */
19
+ export function ringOnLongTurnEnd(controller, ring, now = Date.now) {
20
+ let startedAt = null;
21
+ return controller.subscribe(({ busy }) => {
22
+ if (busy) {
23
+ startedAt ??= now();
24
+ }
25
+ else if (startedAt !== null) {
26
+ if (now() - startedAt >= LONG_TURN_MS && !controller.lastTurnInterrupted())
27
+ ring();
28
+ startedAt = null;
29
+ }
30
+ });
31
+ }
32
+ //# sourceMappingURL=attentionBell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attentionBell.js","sourceRoot":"","sources":["../../../src/tui/attentionBell.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,oFAAoF;AACpF,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;AAEnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAS,EAAE,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAE9E,mGAAmG;AACnG,MAAM,UAAU,gBAAgB,CAC9B,MAA6E,EAC7E,IAAgB;IAEhB,IAAI,IAAI,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;IAC5B,OAAO,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE;QAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,OAAO,IAAI,OAAO,KAAK,IAAI;YAAE,IAAI,EAAE,CAAC;QACxC,IAAI,GAAG,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,gGAAgG;AAChG,MAAM,UAAU,iBAAiB,CAC/B,UAGC,EACD,IAAgB,EAChB,MAAoB,IAAI,CAAC,GAAG;IAE5B,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE;QACvC,IAAI,IAAI,EAAE,CAAC;YACT,SAAS,KAAK,GAAG,EAAE,CAAC;QACtB,CAAC;aAAM,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YAC9B,IAAI,GAAG,EAAE,GAAG,SAAS,IAAI,YAAY,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE;gBAAE,IAAI,EAAE,CAAC;YACnF,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -154,6 +154,7 @@ export declare class ChatController {
154
154
  private lastPromptTokens;
155
155
  /** Abort controller for the in-flight turn (null when idle). */
156
156
  private turnAbort;
157
+ private turnInterrupted;
157
158
  /** Serializes busy-time enqueues so rapid submits keep keystroke order. */
158
159
  private enqueueChain;
159
160
  /** Output URL of the most recently completed generation (for `@image` attachments). */
@@ -294,6 +295,8 @@ export declare class ChatController {
294
295
  showCost(): void;
295
296
  /** Interrupt the in-flight turn (Esc). Partial output is kept; no-op when idle. */
296
297
  interrupt(): void;
298
+ /** Whether the most recently finished turn was stopped by the user. */
299
+ lastTurnInterrupted(): boolean;
297
300
  private onEvent;
298
301
  private addItem;
299
302
  private replaceItem;
@@ -43,7 +43,7 @@ const HELP_LINES = [
43
43
  [],
44
44
  [
45
45
  {
46
- text: 'Attach images: @image (last generated) · @clipboard or Ctrl+V (clipboard) · @<path>.',
46
+ text: 'Reference a file: @<path>. Attach images: @image (last generated) · @clipboard or Ctrl+V (clipboard) · @<image path>.',
47
47
  style: 'dim',
48
48
  },
49
49
  ],
@@ -69,6 +69,7 @@ export class ChatController {
69
69
  lastPromptTokens = 0;
70
70
  /** Abort controller for the in-flight turn (null when idle). */
71
71
  turnAbort = null;
72
+ turnInterrupted = false;
72
73
  /** Serializes busy-time enqueues so rapid submits keep keystroke order. */
73
74
  enqueueChain = Promise.resolve();
74
75
  /** Output URL of the most recently completed generation (for `@image` attachments). */
@@ -774,7 +775,7 @@ export class ChatController {
774
775
  }
775
776
  this.addItem({ kind: 'user', text: msg.display });
776
777
  this.openAssistant = -1;
777
- this.state = { ...this.state, toolCallsUsed: 0, toolCallsLimit: maxToolCalls, turnTokens: tokenBudget.snapshot() };
778
+ this.setState({ toolCallsUsed: 0, toolCallsLimit: maxToolCalls, turnTokens: tokenBudget.snapshot() });
778
779
  const checkpoint = this.session.messageCount();
779
780
  const deliveryCheck = this.extras.workspaceRoot ? createDeliveryCheck(this.extras.workspaceRoot, msg.content) : undefined;
780
781
  let receivedSteering = false;
@@ -813,6 +814,7 @@ export class ChatController {
813
814
  this.addItem({ kind: 'error', text: err instanceof Error ? err.message : String(err) });
814
815
  }
815
816
  finally {
817
+ this.turnInterrupted = this.turnAbort?.signal.aborted ?? false;
816
818
  this.turnAbort = null;
817
819
  this.openAssistant = -1;
818
820
  this.pendingReferenceImages = [];
@@ -886,6 +888,10 @@ export class ChatController {
886
888
  interrupt() {
887
889
  this.turnAbort?.abort();
888
890
  }
891
+ /** Whether the most recently finished turn was stopped by the user. */
892
+ lastTurnInterrupted() {
893
+ return this.turnInterrupted;
894
+ }
889
895
  onEvent(event) {
890
896
  switch (event.type) {
891
897
  case 'assistant_delta': {