@harperfast/harper-pro 5.0.0-beta.5 → 5.0.0-beta.7
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/core/bin/harper.js +1 -1
- package/core/bin/run.js +2 -2
- package/core/components/Application.ts +9 -5
- package/core/components/ApplicationScope.ts +3 -3
- package/core/components/componentLoader.ts +28 -15
- package/core/components/operations.js +13 -13
- package/core/components/operationsValidation.js +3 -3
- package/core/config/configUtils.js +20 -4
- package/core/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +3 -2
- package/core/resources/Resource.ts +17 -6
- package/core/resources/RocksTransactionLogStore.ts +8 -1
- package/core/resources/analytics/metadata.ts +1 -0
- package/core/resources/analytics/read.ts +1 -1
- package/core/resources/analytics/write.ts +43 -2
- package/core/resources/databases.ts +24 -15
- package/core/security/jsLoader.ts +182 -91
- package/core/server/REST.ts +20 -11
- package/core/server/http.ts +3 -3
- package/core/server/itc/serverHandlers.js +1 -1
- package/core/static/defaultConfig.yaml +1 -1
- package/core/utility/hdbTerms.ts +1 -0
- package/core/utility/logging/harper_logger.js +44 -11
- package/core/utility/logging/readLog.js +2 -2
- package/core/utility/npmUtilities.js +2 -2
- package/core/validation/configValidator.js +16 -8
- package/core/validation/readLogValidator.js +2 -2
- package/dist/core/bin/harper.js +1 -1
- package/dist/core/bin/run.js +2 -2
- package/dist/core/bin/run.js.map +1 -1
- package/dist/core/components/Application.js +9 -4
- package/dist/core/components/Application.js.map +1 -1
- package/dist/core/components/ApplicationScope.js +2 -2
- package/dist/core/components/ApplicationScope.js.map +1 -1
- package/dist/core/components/componentLoader.js +30 -16
- package/dist/core/components/componentLoader.js.map +1 -1
- package/dist/core/components/operations.js +13 -13
- package/dist/core/components/operations.js.map +1 -1
- package/dist/core/components/operationsValidation.js +3 -3
- package/dist/core/components/operationsValidation.js.map +1 -1
- package/dist/core/config/configUtils.js +23 -3
- package/dist/core/config/configUtils.js.map +1 -1
- package/dist/core/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js +3 -2
- package/dist/core/dataLayer/harperBridge/lmdbBridge/lmdbUtility/initializePaths.js.map +1 -1
- package/dist/core/resources/Resource.js +11 -4
- package/dist/core/resources/Resource.js.map +1 -1
- package/dist/core/resources/RocksTransactionLogStore.js +8 -1
- package/dist/core/resources/RocksTransactionLogStore.js.map +1 -1
- package/dist/core/resources/analytics/metadata.js +1 -0
- package/dist/core/resources/analytics/metadata.js.map +1 -1
- package/dist/core/resources/analytics/read.js +1 -1
- package/dist/core/resources/analytics/read.js.map +1 -1
- package/dist/core/resources/analytics/write.js +42 -0
- package/dist/core/resources/analytics/write.js.map +1 -1
- package/dist/core/resources/databases.js +19 -13
- package/dist/core/resources/databases.js.map +1 -1
- package/dist/core/security/jsLoader.js +167 -81
- package/dist/core/security/jsLoader.js.map +1 -1
- package/dist/core/server/REST.js +17 -10
- package/dist/core/server/REST.js.map +1 -1
- package/dist/core/server/http.js +2 -2
- package/dist/core/server/http.js.map +1 -1
- package/dist/core/server/itc/serverHandlers.js +1 -1
- package/dist/core/server/itc/serverHandlers.js.map +1 -1
- package/dist/core/utility/hdbTerms.js +1 -0
- package/dist/core/utility/hdbTerms.js.map +1 -1
- package/dist/core/utility/logging/harper_logger.js +47 -11
- package/dist/core/utility/logging/harper_logger.js.map +1 -1
- package/dist/core/utility/logging/readLog.js +2 -2
- package/dist/core/utility/logging/readLog.js.map +1 -1
- package/dist/core/utility/npmUtilities.js +2 -2
- package/dist/core/utility/npmUtilities.js.map +1 -1
- package/dist/core/validation/configValidator.js +18 -8
- package/dist/core/validation/configValidator.js.map +1 -1
- package/dist/core/validation/readLogValidator.js +2 -2
- package/dist/core/validation/readLogValidator.js.map +1 -1
- package/dist/replication/nodeIdMapping.js +1 -1
- package/dist/replication/nodeIdMapping.js.map +1 -1
- package/dist/replication/replicationConnection.js +1 -4
- package/dist/replication/replicationConnection.js.map +1 -1
- package/npm-shrinkwrap.json +506 -501
- package/package.json +7 -4
- package/replication/nodeIdMapping.ts +1 -1
- package/replication/replicationConnection.ts +9 -4
- package/static/defaultConfig.yaml +3 -0
- package/studio/web/assets/{index-ZhLX9iRh.js → index-ClD_q6ya.js} +5 -5
- package/studio/web/assets/{index-ZhLX9iRh.js.map → index-ClD_q6ya.js.map} +1 -1
- package/studio/web/assets/{index.lazy-DzgnppiN.js → index.lazy-CXzU1gVu.js} +2 -2
- package/studio/web/assets/{index.lazy-DzgnppiN.js.map → index.lazy-CXzU1gVu.js.map} +1 -1
- package/studio/web/assets/{profile-DJ9V18dX.js → profile-DCNVg5yY.js} +2 -2
- package/studio/web/assets/{profile-DJ9V18dX.js.map → profile-DCNVg5yY.js.map} +1 -1
- package/studio/web/assets/{status-DKZUoEUd.js → status-CoGlcjSB.js} +2 -2
- package/studio/web/assets/{status-DKZUoEUd.js.map → status-CoGlcjSB.js.map} +1 -1
- package/studio/web/index.html +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"databases.js","sourceRoot":"","sources":["../../../core/resources/databases.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmJA,8BAKC;AAWD,oCA0JC;AASD,gCAsBC;AAoPD,wCAsBC;AA8DD,4BAmDC;AAKD,oCAwCC;AA6CD,sBAuTC;AAmHD,sCASC;AAED,wCAOC;AACD,wCAOC;AACD,kCAOC;AAED,sDAUC;AAzwCD,6CAA2C;AAC3C,wFAAuG;AACvG,uDAA8D;AAC9D,+BAA2E;AAC3E,+BAA+C;AAC/C,qCAA2E;AAC3E,+CAA0C;AAC1C,4GAG6E;AAC7E,yCAAuC;AACvC,wGAA6E;AAC7E,wDAAsG;AACtG,8CAAqD;AACrD,uEAAoE;AACpE,qEAAuD;AACvD,qDAA0D;AAC1D,mDAA4C;AAC5C,2FAA+D;AAC/D,MAAM,EAAE,YAAY,EAAE,GAAG,0BAAY,CAAC;AACtC,kFAAoE;AACpE,mDAAqG;AACrG,yDAA4D;AAC5D,uCAAqD;AACrD,iEAA4D;AAC5D,uEAAiE;AACjE,uDAAkF;AAClF,mDAA6C;AAC7C,qCAAmC;AACnC,6DAAuD;AACvD,gDAA0C;AAC1C,4FAAqF;AAErF,SAAS,mBAAmB,CAAC,OAAO,GAAG,KAAK,EAAE,SAAS,GAAG,KAAK;IAC9D,OAAO,IAAI,gCAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;AAC9C,CAAC;AACD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;AAEvC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AACrC,MAAM,cAAc,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAChD,MAAM,6BAA6B,GAAG,CAAC,IAAA,2BAAM,EAAC,2BAAa,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,2CAA2C;AACxI,IAAA,gCAAQ,GAAE,CAAC;AACX,iGAAiG;AACjG,wBAAwB;AACX,QAAA,6BAA6B,GAAG;IAC5C,UAAU;IACV,iBAAiB;IACjB,mBAAmB;IACnB,kBAAkB;IAClB,SAAS;IACT,UAAU;CACV,CAAC;AAsDW,QAAA,qBAAqB,GAAG,IAAI,0BAAY,EAA2B,CAAC;AAEpE,QAAA,MAAM,GAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AACrC,QAAA,SAAS,GAAc,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;AAExD,MAAM,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,IAAI,QAAQ,EAAE,IAAA,kBAAQ,GAAE,CAAC,GAAG,IAAI,CAAC,CAAC,0BAA0B;AAE9H,SAAS,iBAAiB,CAAC,IAAY,EAAE,OAAqD;IAC7F,OAAO,CAAC,UAAU,KAAK,IAAI,CAAC;IAC5B,0BAAa,CAAC,MAAM,CAAC,EAAE,cAAc,EAAE,mBAAmB,EAAE,CAAC,CAAC;IAC9D,IAAI,CAAC,IAAA,oBAAU,EAAC,IAAI,CAAC,EAAE,CAAC;QACvB,IAAA,mBAAS,EAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IACD,IAAI,EAAqB,CAAC;IAC1B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACrB,EAAE,GAAG,0BAAa,CAAC,IAAI,CAAC,IAAI,oCAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAoB,CAAC;IAChF,CAAC;SAAM,CAAC;QACP,EAAE,GAAG,0BAAa,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAoB,CAAC;QAC1D,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAChC,CAAC;IACD,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;IACZ,OAAO,EAAE,CAAC;AACX,CAAC;AAED,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAA4B,CAAC;AAC7D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA2B,CAAC;AAE/D,+CAA+C;AAC/C,IAAA,iCAAoB,EAAC,WAAW,EAAE,iBAAS,CAAC,CAAC;AAC7C,IAAA,iCAAoB,EAAC,QAAQ,EAAE,cAAM,CAAC,CAAC;AAEvC,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;AAClD,IAAI,eAAe,CAAC,CAAC,iEAAiE;AAEtF,iIAAiI;AACjI,kBAAkB;AAClB,IAAI,gBAA0C,CAAC;AAE/C;;GAEG;AACH,SAAgB,SAAS;IACxB,IAAI,CAAC,eAAe,EAAE,CAAC;QACtB,YAAY,EAAE,CAAC;IAChB,CAAC;IACD,OAAO,cAAM,IAAI,EAAE,CAAC;AACrB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAgB,YAAY;IAC3B,IAAI,eAAe,EAAE,CAAC;QACrB,OAAO,iBAAS,CAAC;IAClB,CAAC;IACD,eAAe,GAAG,IAAI,CAAC;IAEvB,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,IAAA,sCAAc,GAAE,CAAC;IACrC,IAAI,YAAY,GAAG,WAAW,IAAI,IAAA,WAAI,EAAC,WAAW,EAAE,gCAAkB,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,IAAA,2BAAM,EAAC,2BAAa,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAE5D,8DAA8D;IAC9D,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB;QAAE,aAAa,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;IAChG,YAAY;QACX,OAAO,CAAC,GAAG,CAAC,YAAY;YACxB,IAAA,2BAAM,EAAC,2BAAa,CAAC,YAAY,CAAC;YAClC,CAAC,YAAY,IAAI,CAAC,IAAA,oBAAU,EAAC,YAAY,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAA,WAAI,EAAC,IAAA,sCAAc,GAAE,EAAE,uCAAyB,CAAC,CAAC,CAAC,CAAC;IACjH,IAAI,CAAC,YAAY;QAAE,OAAO;IAE1B,IAAI,IAAA,oBAAU,EAAC,YAAY,CAAC,EAAE,CAAC;QAC9B,6DAA6D;QAC7D,+EAA+E;QAC/E,KAAK,MAAM,aAAa,IAAI,IAAA,qBAAW,EAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,MAAM,MAAM,GAAG,IAAA,eAAQ,EAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;YAEtD,IACC,aAAa,CAAC,MAAM,EAAE;gBACtB,IAAA,cAAO,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM;gBACpD,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,IAAI,EAC3B,CAAC;gBACF,MAAM,CAAC,KAAK,CAAC,0BAA0B,MAAM,EAAE,CAAC,CAAC;gBACjD,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gBACjC,SAAS;YACV,CAAC;YACD,IAAI,CAAC;gBACJ,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC3D,IACC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,MAAM,EAAE;oBACvD,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;oBACvD,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,IAAI,EAC3B,CAAC;oBACF,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;oBACtC,SAAS;gBACV,CAAC;YACF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACd,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC;oBAC3E,MAAM,GAAG,CAAC;gBACX,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,4EAA4E;IAC5E,MAAM,cAAc,GAAG,IAAA,sCAAiB,GAAE,CAAC;IAC3C,IAAI,IAAA,oBAAU,EAAC,cAAc,CAAC,EAAE,CAAC;QAChC,KAAK,MAAM,WAAW,IAAI,IAAA,qBAAW,EAAC,cAAc,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAChF,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC3B,MAAM,UAAU,GAAG,IAAA,WAAI,EAAC,cAAc,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC1D,MAAM,eAAe,GAAG,IAAA,WAAI,EAAC,IAAA,qDAAgC,GAAE,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;gBACnF,KAAK,MAAM,UAAU,IAAI,IAAA,qBAAW,EAAC,UAAU,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAC3E,IAAI,UAAU,CAAC,MAAM,EAAE,IAAI,IAAA,cAAO,EAAC,UAAU,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;wBAC9E,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC;wBACzD,UAAU,CACT,IAAA,WAAI,EAAC,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,EACjC,IAAA,eAAQ,EAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,EACjC,WAAW,CAAC,IAAI,EAChB,SAAS,EACT,IAAI,CACJ,CAAC;oBACH,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,IAAI,aAAa,EAAE,CAAC;QACnB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACpC,MAAM,YAAY,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;YAC3C,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC;YACvC,IAAI,IAAA,oBAAU,EAAC,YAAY,CAAC,EAAE,CAAC;gBAC9B,KAAK,MAAM,aAAa,IAAI,IAAA,qBAAW,EAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;oBAChF,IAAI,aAAa,CAAC,MAAM,EAAE,IAAI,IAAA,cAAO,EAAC,aAAa,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;wBACpF,UAAU,CAAC,IAAA,WAAI,EAAC,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,EAAE,IAAA,eAAQ,EAAC,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;oBAClG,CAAC;yBAAM,CAAC;wBACP,IAAI,CAAC;4BACJ,MAAM,MAAM,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,aAAa,CAAC,IAAI,CAAC,CAAC;4BACtD,MAAM,KAAK,GAAG,IAAA,qBAAW,EAAC,MAAM,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC3D,IACC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,MAAM,EAAE;gCACvD,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,EACtD,CAAC;gCACF,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;gCACtC,SAAS;4BACV,CAAC;wBACF,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACd,IAAI,CAAC,CAAC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,EAAE,CAAC;gCAC3E,MAAM,GAAG,CAAC;4BACX,CAAC;wBACF,CAAC;oBACF,CAAC;gBACF,CAAC;YACF,CAAC;YACD,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAC;YACzC,IAAI,YAAY,EAAE,CAAC;gBAClB,KAAK,MAAM,SAAS,IAAI,YAAY,EAAE,CAAC;oBACtC,MAAM,WAAW,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;oBAC5C,MAAM,SAAS,GAAG,IAAA,WAAI,EAAC,WAAW,CAAC,IAAI,EAAE,IAAA,eAAQ,EAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC;oBACvE,IAAI,IAAA,oBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;wBAC3B,UAAU,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;oBACtD,CAAC;gBACF,CAAC;YACF,CAAC;YACD,sCAAsC;QACvC,CAAC;IACF,CAAC;IACD,4DAA4D;IAC5D,KAAK,MAAM,MAAM,IAAI,iBAAS,EAAE,CAAC;QAChC,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,aAAa,EAAE,CAAC;YACnB,MAAM,MAAM,GAAG,iBAAS,CAAC,MAAM,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAAE,MAAM,CAAC,KAAK,CAAC,kBAAkB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAElG,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE,CAAC;gBAChC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;oBACnC,MAAM,CAAC,KAAK,CAAC,sBAAsB,SAAS,EAAE,CAAC,CAAC;oBAChD,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC1B,CAAC;YACF,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,iBAAS,CAAC,MAAM,CAAC,CAAC;YACzB,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;gBACvB,KAAK,MAAM,SAAS,IAAI,cAAM,EAAE,CAAC;oBAChC,OAAO,cAAM,CAAC,SAAS,CAAC,CAAC;gBAC1B,CAAC;gBACD,OAAO,cAAM,CAAC,cAAc,CAAC,CAAC;YAC/B,CAAC;QACF,CAAC;IACF,CAAC;IACD,IAAI,IAAA,2BAAM,EAAC,2BAAa,CAAC,mBAAmB,CAAC,KAAK,KAAK,EAAE,CAAC;QACzD,IAAI,CAAC,qCAA6B,CAAC,QAAQ,CAAC,eAAe,CAAC;YAAE,qCAA6B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACnH,CAAC;SAAM,CAAC;QACP,2CAA2C;QAC3C,iBAAS,CAAC,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,CAAC;QAClD,iBAAS,CAAC,MAAM,EAAE,sBAAsB,EAAE,cAAc,EAAE,CAAC;IAC5D,CAAC;IACD,IAAI,iBAAS,CAAC,MAAM,EAAE,CAAC;QACtB,KAAK,MAAM,SAAS,IAAI,qCAA6B,EAAE,CAAC;YACvD,IAAI,iBAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,iBAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC;YAC/C,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,iBAAS,CAAC;AAClB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,UAAU,CACzB,IAAY,EACZ,YAAqB,EACrB,eAAuB,qBAAqB,EAC5C,SAAkB,EAClB,QAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,kCAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvD,IAAI,CAAC;QACJ,IAAI,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,aAAa,GAAG,KAAK,CAAC;QACjC,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,CAAC;YAC1B,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvC,CAAC;QAED,OAAO,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACrF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,KAAK,CAAC,OAAO,IAAI,qBAAqB,IAAI,EAAE,CAAC;QAC7C,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,YAAqB,EAAE,eAAuB,qBAAqB;IACzG,IAAI,CAAC;QACJ,MAAM,CAAC,KAAK,CAAC,6BAA6B,IAAI,EAAE,CAAC,CAAC;QAElD,IAAI,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,CAAC;YAC3C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;YACzE,IAAI,IAAA,uCAAgB,EAAC,gBAAgB,CAAC,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,kBAAkB,gBAAgB,oBAAoB,CAAC,CAAC;YACrE,CAAC;QACF,CAAC;QAED,IAAI,SAAS,GAAgC,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3E,IAAI,SAAS,EAAE,CAAC;YACf,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAoB,CAAC;YAC9E,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACzC,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC;YACxD,IAAA,0BAAU,EAAC,SAAS,EAAE,iBAAS,CAAC,YAAY,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,KAAK,CAAC,OAAO,IAAI,qBAAqB,IAAI,EAAE,CAAC;QAC7C,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,SAAS,UAAU,CAClB,IAAY,EACZ,SAA2B,EAC3B,YAAoB,EACpB,YAAqB,EACrB,SAAkB,EAClB,QAAkB;IAElB,MAAM,OAAO,GAAG,IAAI,kCAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IACnD,IAAI,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC;IACjC,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE;gBAC7C,GAAG,eAAe;gBAClB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,6BAAkB;aACxB,CAAoB,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,SAAS,GAAG,SAAS,CAAC,MAAM,CAAC,6BAAkB,EAAE,eAAe,CAAC,CAAC;QACnE,CAAC;QACD,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC;IAC9B,CAAC;IAED,IAAI,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IACtC,IAAI,CAAC,UAAU,EAAE,CAAC;QACjB,IAAI,SAAS,EAAE,CAAC;YACf,IAAI,IAAA,oBAAU,EAAC,SAAS,CAAC,EAAE,CAAC;gBAC3B,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;gBACzB,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;oBACxC,UAAU,GAAG,IAAA,8BAAc,EAAC,SAAS,CAAC,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACP,UAAU,GAAG,IAAA,WAAI,EAAC;wBACjB,GAAG,OAAO;wBACV,OAAO,EAAE;4BACR,MAAM,EAAE,CAAC,WAAwB,EAAE,EAAE,CAAC,IAAA,gCAAgB,EAAC,WAAW,CAAC;4BACnE,MAAM,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAA,8BAAc,EAAC,QAAQ,CAAC;yBACtD;qBACD,CAAC,CAAC;gBACJ,CAAC;gBACD,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC;YAC5B,CAAC;QACF,CAAC;aAAM,CAAC;YACP,UAAU,GAAG,IAAA,8BAAc,EAAC,SAAS,CAAC,CAAC;QACxC,CAAC;IACF,CAAC;IAED,MAAM,MAAM,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IACtC,MAAM,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAC7C,aAAa,CAAC,SAAS,GAAG,SAAS,CAAC;IACpC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAe,CAAC;IAE5C,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC3D,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAqC,CAAC;QAC7D,IAAI,CAAC,SAAS,EAAE,cAAc,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5D,IAAI,cAAc,KAAK,EAAE,EAAE,CAAC;YAC3B,cAAc;YACd,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC;QAC7B,CAAC;aAAM,IAAI,CAAC,cAAc,EAAE,CAAC;YAC5B,cAAc,GAAG,SAAS,CAAC;YAC3B,SAAS,GAAG,YAAY,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;gBACjB,mBAAmB;gBACnB,KAAK,CAAC,IAAI,GAAG,cAAc,CAAC;gBAC5B,KAAK,CAAC,OAAO,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC;YACrC,CAAC;QACF,CAAC;QACD,aAAa,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,QAAQ,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,QAAQ;YAAE,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,QAAQ,GAAG,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC5E,IAAI,cAAc,IAAI,IAAI,IAAI,KAAK,CAAC,YAAY;YAAE,QAAQ,CAAC,OAAO,GAAG,KAAK,CAAC;QAC3E,IAAI,cAAc,IAAI,IAAI;YAAE,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC5D,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,KAAK,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,IAAI,YAAY,EAAE,CAAC;QAClD,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,GAAG,QAAQ,CAAC;QACzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACvB,gDAAgD;YAChD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;oBAC5B,gBAAgB,GAAG,SAAS,CAAC;oBAC7B,MAAM;gBACP,CAAC;YACF,CAAC;YACD,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACvB,MAAM,CAAC,IAAI,CACV,mDAAmD,SAAS,sBAAsB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,CAC9G,CAAC;gBACF,SAAS;YACV,CAAC;QACF,CAAC;QACD,gFAAgF;QAChF,IAAI,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAC9B,IAAI,OAAO,GAAG,EAAE,EACf,kBAAkB,GAAG,EAAE,CAAC;QACzB,IAAI,OAAO,CAAC;QACZ,IAAI,YAAY,CAAC;QACjB,MAAM,KAAK,GACV,OAAO,gBAAgB,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,2BAAM,EAAC,2BAAa,CAAC,gBAAgB,CAAC,CAAC;QAC/G,MAAM,YAAY,GAAG,gBAAgB,CAAC,YAAY,CAAC;QACnD,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAC;QAC/C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,QAAQ,CAAC;QAC3C,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;QACvC,MAAM,aAAa,GAAG,gBAAgB,CAAC,aAAa,CAAC;QACrD,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAC7C,IAAI,KAAK,EAAE,CAAC;YACX,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;YACxB,kBAAkB,GAAG,KAAK,CAAC,UAAU,CAAC;YACtC,KAAK,CAAC,aAAa,EAAE,CAAC;QACvB,CAAC;aAAM,CAAC;YACP,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;YACnC,IAAI,OAAO,EAAE,CAAC;gBACb,IAAI,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBACxD,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;oBAC9C,MAAM,CAAC,IAAI,CAAC,kDAAkD,OAAO,GAAG,CAAC,QAAQ,SAAS,EAAE,CAAC,CAAC;gBAC/F,CAAC;YACF,CAAC;iBAAM,CAAC;gBACP,gBAAgB,CAAC,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;gBACtE,IAAI,CAAC,OAAO;oBAAE,OAAO,GAAG,CAAC,CAAC;gBAC1B,MAAM,CAAC,KAAK,CAAC,sDAAsD,CAAC,CAAC;gBACrE,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,GAAG,CAAC,CAAC,CAAC;gBAC9C,SAAS,CAAC,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,CAAC,gBAAgB,CAAC,YAAY,EAAE,gBAAgB,CAAC,YAAY,CAAC,CAAC;YACnG,OAAO,CAAC,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC;YACnD,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACzB,MAAM,oBAAoB,GACzB,IAAA,2BAAM,EAAC,2BAAa,CAAC,6BAA6B,CAAC,IAAI,6BAA6B,CAAC,CAAC,0CAA0C;gBACjI,OAAO,CAAC,WAAW,CAAC,SAAS,GAAG,oBAAoB,CAAC;YACtD,CAAC;YACD,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;gBACxC,YAAY,GAAG,IAAA,yCAAsB,EACpC,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,GAAG,EAAE,CAAC,EAC7E,SAAS,CACT,CAAC;YACH,CAAC;iBAAM,CAAC;gBACP,YAAY,GAAG,IAAA,yCAAsB,EAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,SAAS,CAAC,CAAC;YACnG,CAAC;YACD,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;YACtC,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;QAChC,CAAC;QACD,IAAI,iBAA0B,CAAC;QAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;YACrC,IAAI,CAAC;gBACJ,0EAA0E;gBAC1E,IAAI,CAAC,SAAS,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;oBAChG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC9B,MAAM,GAAG,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;wBAC3D,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;wBAC9B,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;oBAC3D,CAAC;oBACD,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAChD,CAAC,iBAAiB,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI,CAChE,CAAC;oBACF,IAAI,iBAAiB;wBAAE,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;;wBACzG,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACxC,iBAAiB,GAAG,IAAI,CAAC;gBAC1B,CAAC;YACF,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,MAAM,CAAC,KAAK,CAAC,kCAAkC,EAAE,SAAS,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YACjG,CAAC;QACF,CAAC;QACD,KAAK,MAAM,iBAAiB,IAAI,kBAAkB,EAAE,CAAC;YACpD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC5F,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,IAAI,iBAAiB,CAAC,YAAY,EAAE,CAAC;oBACpC,MAAM,CAAC,KAAK,CAAC,iDAAiD,EAAE,iBAAiB,CAAC,CAAC;oBACnF,SAAS;gBACV,CAAC;gBACD,IAAI,iBAAiB,CAAC,OAAO,EAAE,CAAC;oBAC/B,4HAA4H;oBAC5H,kBAAkB,CAAC,MAAM,CAAC,kBAAkB,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC5E,iBAAiB,GAAG,IAAI,CAAC;gBAC1B,CAAC;YACF,CAAC;QACF,CAAC;QACD,IAAI,KAAK,EAAE,CAAC;YACX,IAAI,iBAAiB,EAAE,CAAC;gBACvB,KAAK,CAAC,aAAa,EAAE,CAAC;gBACtB,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC3B,CAAC;QACF,CAAC;aAAM,CAAC;YACP,KAAK,GAAG,QAAQ,CACf,MAAM,EACN,SAAS,EACT,IAAA,oBAAS,EAAC;gBACT,YAAY;gBACZ,UAAU;gBACV,KAAK;gBACL,MAAM;gBACN,aAAa;gBACb,SAAS;gBACT,YAAY,EAAE,UAAU,IAAI,UAAU,GAAG,IAAI;gBAC7C,UAAU,EAAE,QAAQ,IAAI,QAAQ,GAAG,IAAI;gBACvC,YAAY;gBACZ,SAAS;gBACT,OAAO;gBACP,UAAU,EAAE,gBAAgB,CAAC,IAAI;gBACjC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,YAAY,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC,YAAY;gBACtE,YAAY;gBACZ,OAAO;gBACP,UAAU;gBACV,aAAa,EAAE,gBAAgB,CAAC,aAAa;gBAC7C,MAAM,EAAE,SAAS;aACjB,CAAC,CACF,CAAC;YACF,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;YACxB,6BAAqB,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAClD,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED,SAAgB,cAAc;IAC7B,eAAe,GAAG,KAAK,CAAC;IACxB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACrD,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC;IAC5B,CAAC;IACD,YAAY,EAAE,CAAC;IACf,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,gBAAgB,EAAE,CAAC;QAC9C,IAAI,KAAK,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;YACzD,KAAK,CAAC,KAAK,EAAE,CAAC;YACd,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,MAAM,EAAE,GAAG,iBAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACzC,KAAK,MAAM,SAAS,IAAI,EAAE,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;gBAC5B,IAAI,KAAK,CAAC,YAAY,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;oBACtC,OAAO,iBAAS,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;oBACrC,6BAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;oBAC/D,MAAM;gBACP,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IACD,OAAO,iBAAS,CAAC;AAClB,CAAC;AAkBD;;;;GAIG;AACH,SAAS,QAAQ,CAAC,YAAY;IAC7B,IAAI,QAAQ,GAAG,iBAAS,CAAC,YAAY,CAAC,CAAC;IACvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACf,IAAI,YAAY,KAAK,MAAM;YAC1B,iCAAiC;YACjC,QAAQ,GAAG,iBAAS,CAAC,YAAY,CAAC,GAAG,cAAM,CAAC;aACxC,IAAI,YAAY,KAAK,QAAQ;YACjC,6BAA6B;YAC7B,MAAM,CAAC,cAAc,CAAC,iBAAS,EAAE,QAAQ,EAAE;gBAC1C,KAAK,EAAE,CAAC,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvC,YAAY,EAAE,IAAI,EAAE,UAAU;aAC9B,CAAC,CAAC;aACC,CAAC;YACL,QAAQ,GAAG,iBAAS,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;IACF,CAAC;IACD,IAAI,gBAAgB,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;QAC7D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC,CAAC,iGAAiG;QAC1I,QAAQ,CAAC,cAAc,CAAC,GAAG,aAAa,CAAC;QACzC,gBAAgB,CAAC,GAAG,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,QAAQ,CAAC;AACjB,CAAC;AACD;;;;;;GAMG;AACH,SAAS,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK;IACzC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC;IAC1B,OAAO,KAAK,CAAC;AACd,CAAC;AACD;;;;GAIG;AACH,SAAgB,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE;IACpE,IAAI,CAAC,YAAY;QAAE,YAAY,GAAG,qBAAqB,CAAC;IACxD,YAAY,EAAE,CAAC;IACf,QAAQ,CAAC,YAAY,CAAC,CAAC;IACvB,MAAM,eAAe,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAC3D,IAAI,eAAe,EAAE,SAAS,EAAE,CAAC;QAChC,OAAO,eAAe,CAAC,SAAS,CAAC;IAClC,CAAC;IACD,MAAM,cAAc,GAAG,IAAA,2BAAM,EAAC,2BAAa,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IAC7D,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;QACnC,cAAc,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;IAC/D,CAAC;IAED,MAAM,SAAS,GAAG,SAAS,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC;IAEvF,MAAM,WAAW,GAAG,IAAA,sCAAc,GAAE,CAAC;IACrC,MAAM,YAAY,GACjB,SAAS;QACT,cAAc,CAAC,YAAY,CAAC,EAAE,IAAI;QAClC,OAAO,CAAC,GAAG,CAAC,YAAY;QACxB,IAAA,2BAAM,EAAC,2BAAa,CAAC,YAAY,CAAC;QAClC,CAAC,IAAA,oBAAU,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,gCAAkB,CAAC,CAAC;YACjD,CAAC,CAAC,IAAA,WAAI,EAAC,WAAW,EAAE,gCAAkB,CAAC;YACvC,CAAC,CAAC,IAAA,WAAI,EAAC,WAAW,EAAE,uCAAyB,CAAC,CAAC,CAAC;IAElD,IAAI,SAA2B,CAAC;IAChC,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,IAAA,2BAAM,EAAC,2BAAa,CAAC,cAAc,CAAC,CAAC,KAAK,MAAM,CAAC;IAC1G,IAAI,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;QACtE,SAAS,GAAG,mBAAmB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACjD,SAAS,GAAG,iBAAiB,CAAC,IAAI,EAAE;gBACnC,UAAU,EAAE,KAAK;aACjB,CAAC,CAAC;YACH,mBAAmB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAC1C,CAAC;IACF,CAAC;SAAM,CAAC;QACP,MAAM,IAAI,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,CAAC;QAC/E,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACjD,+BAA+B;YAC/B,MAAM,OAAO,GAAG,IAAI,kCAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACvD,SAAS,GAAG,IAAA,WAAI,EAAC,OAAO,CAAC,CAAC;YAC1B,gBAAgB,CAAC,GAAG,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvC,CAAC;IACF,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;QAC3B,SAAS,CAAC,UAAU,GAAG,IAAA,8BAAc,EAAC,SAAS,CAAC,CAAC;IAClD,CAAC;IACD,IAAI,eAAe;QAAE,eAAe,CAAC,SAAS,GAAG,SAAS,CAAC;IAC3D,OAAO,SAAS,CAAC;AAClB,CAAC;AACD;;;GAGG;AACI,KAAK,UAAU,YAAY,CAAC,YAAY;IAC9C,IAAI,CAAC,iBAAS,CAAC,YAAY,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,iBAAS,CAAC,YAAY,CAAC,CAAC;IACzC,IAAI,SAAS,CAAC;IACd,KAAK,MAAM,SAAS,IAAI,QAAQ,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QAClC,SAAS,GAAG,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC;QAEzC,gBAAgB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACxC,mBAAmB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE3C,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACjC,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;gBACxC,SAAS,CAAC,KAAK,EAAE,CAAC;gBAClB,SAAS,CAAC,OAAO,EAAE,CAAC;YACrB,CAAC;iBAAM,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;gBACxB,MAAM,IAAA,iBAAM,EAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;QACF,CAAC;QACD,6BAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QAChB,SAAS,GAAG,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,SAAS,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;aAAM,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YACxC,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,IAAA,iBAAM,EAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;IACF,CAAC;IACD,IAAI,YAAY,KAAK,MAAM,EAAE,CAAC;QAC7B,KAAK,MAAM,SAAS,IAAI,cAAM,EAAE,CAAC;YAChC,OAAO,cAAM,CAAC,SAAS,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,cAAM,CAAC,cAAc,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,iBAAS,CAAC,YAAY,CAAC,CAAC;IAC/B,6BAAqB,CAAC,IAAI,CAAC,cAAc,EAAE,YAAY,CAAC,CAAC;IACzD,MAAM,IAAA,kCAAwB,EAAC,SAAS,CAAC,CAAC;AAC3C,CAAC;AACD,4FAA4F;AAC5F,SAAS,SAAS,CAAC,MAAc,EAAE,SAA2B,EAAE,SAAc;IAC7E,MAAM,aAAa,GAClB,SAAS,CAAC,YAAY,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,iCAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,cAAc,CAAC,CAAC;IAC9G,MAAM,OAAO,GAAG,mBAAmB,CAAC,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IACnE,IAAI,GAOC,CAAC;IACN,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;QACxC,GAAG,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACtE,GAAG,CAAC,SAAS,GAAG,SAAS,CAAC;IAC3B,CAAC;SAAM,CAAC;QACP,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IACD,IAAI,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAG,iCAAc,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3D,IAAI,WAAW,EAAE,CAAC;YACjB,GAAG,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACP,MAAM,CAAC,KAAK,CAAC,sBAAsB,SAAS,CAAC,OAAO,CAAC,IAAI,cAAc,CAAC,CAAC;QAC1E,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,KAAK,CAAoB,eAAgC;IACxE,IAAI,EACH,KAAK,EAAE,SAAS,EAChB,QAAQ,EAAE,YAAY,EACtB,UAAU,EACV,QAAQ,EACR,YAAY,EACZ,UAAU,EACV,KAAK,EACL,MAAM,EACN,aAAa,EACb,SAAS,EACT,YAAY,EACZ,aAAa,EACb,MAAM,GACN,GAAG,eAAe,CAAC;IACpB,IAAI,CAAC,YAAY;QAAE,YAAY,GAAG,qBAAqB,CAAC;IACxD,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,iBAAS,CAAC,YAAY,CAAC,CAAC;IACvC,MAAM,CAAC,KAAK,CAAC,YAAY,SAAS,OAAO,YAAY,EAAE,CAAC,CAAC;IACzD,IAAI,KAAK,GAAG,MAAM,EAAE,CAAC,SAAS,CAAC,CAAC;IAChC,IAAI,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,uCAAuC,SAAS,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,UAAU,CAAC;IACf,IAAI,mBAAmB,CAAC;IACxB,IAAI,aAAa,CAAC;IAClB,IAAI,aAAa,IAAI,SAAS;QAAE,aAAa,GAAG,IAAI,CAAC;IACrD,MAAM,eAAe,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAEnD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACpC,IAAI,SAAS,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YAC5C,sFAAsF;YACtF,SAAS,CAAC,IAAI,GAAG,SAAS,CAAC,SAAS,CAAC;YACrC,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;QAC1B,CAAC;;YAAM,SAAS,CAAC,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC;QAC5C,IAAI,SAAS,CAAC,SAAS;YAAE,SAAS,CAAC,OAAO,GAAG,IAAI,CAAC;IACnD,CAAC;IACD,IAAI,UAAU,CAAC;IACf,IAAI,oBAAgC,CAAC;IACrC,IAAI,KAAK,EAAE,CAAC;QACX,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAC9B,IAAI,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,wCAAwC,SAAS,QAAQ,CAAC,CAAC;QAC5E,CAAC;QACD,0DAA0D;QAC1D,IAAI,aAAa,IAAI,SAAS;YAAE,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;QACpE,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACP,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;QACxC,mBAAmB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QACnF,UAAU,GAAG,mBAAmB,CAAC,IAAI,CAAC;QACtC,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC;QACxC,mBAAmB,CAAC,aAAa,GAAG,aAAa,CAAC;QAClD,oGAAoG;QACpG,mBAAmB,CAAC,WAAW,GAAG,qBAAqB,EAAE,CAAC;QAC1D,IAAI,YAAY;YAAE,mBAAmB,CAAC,YAAY,GAAG,IAAI,CAAC;QAC1D,KAAK,GAAG,mBAAmB,CAAC,KAAK,GAAG,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAA,2BAAM,EAAC,2BAAa,CAAC,gBAAgB,CAAC,CAAC;QAChH,IAAI,UAAU;YAAE,mBAAmB,CAAC,UAAU,GAAG,UAAU,CAAC;QAC5D,IAAI,QAAQ;YAAE,mBAAmB,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACtD,aAAa,KAAK,KAAK,CAAC;QACxB,mBAAmB,CAAC,aAAa,GAAG,aAAa,CAAC,CAAC,yDAAyD;QAC5G,IAAI,OAAO,MAAM,KAAK,SAAS;YAAE,mBAAmB,CAAC,MAAM,GAAG,MAAM,CAAC;QACrE,IAAI,OAAO,SAAS,KAAK,SAAS;YAAE,mBAAmB,CAAC,SAAS,GAAG,SAAS,CAAC;QAC9E,IAAI,MAAM,EAAE,CAAC;YACZ,IAAI,CAAC,mBAAmB,CAAC,OAAO;gBAAE,mBAAmB,CAAC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC;iBACpE,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,uCAAuC,CAAC,CAAC;QAClE,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACjD,OAAO,CAAC,WAAW,GAAG,mBAAmB,CAAC,WAAW,CAAC;QACtD,MAAM,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC;QAEhC,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,aAAa,GAAG,SAAS,CAAC,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE;gBACpE,GAAG,eAAe;gBAClB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,6BAAkB;aACxB,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,aAAa,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,6BAAkB,EAAE,eAAe,CAAC,CAAC;QAC1F,CAAC;QAED,aAAa,EAAE,CAAC,CAAC,qIAAqI;QACtJ,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACpC,6CAA6C;YAC7C,IAAI,oBAAoB;gBAAE,oBAAoB,EAAE,CAAC;YACjD,cAAc,EAAE,CAAC;YACjB,OAAO,KAAK,CAAC,eAAe,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,YAAY,CAAC;QACjB,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,YAAY,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACjF,CAAC;aAAM,CAAC;YACP,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,GAAG,IAAA,yCAAsB,EAAC,YAAY,EAAE,SAAS,CAAC,CAAC;QAC/D,SAAS,CAAC,YAAY,GAAG,YAAY,CAAC;QACtC,YAAY,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,0BAA0B,YAAY,CAAC,OAAO,QAAQ,SAAS,EAAE,CAAC,CAAC;QAChF,IAAI,CAAC,YAAY,CAAC,OAAO;YAAE,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC;QACpD,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;QAE3D,mBAAmB,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC;QACnD,KAAK,GAAG,QAAQ,CACf,MAAM,EACN,SAAS,EACT,IAAA,oBAAS,EAAC;YACT,YAAY;YACZ,UAAU;YACV,KAAK;YACL,MAAM;YACN,aAAa;YACb,SAAS;YACT,YAAY;YACZ,YAAY,EAAE,UAAU,IAAI,UAAU,GAAG,IAAI;YAC7C,UAAU,EAAE,QAAQ,IAAI,QAAQ,GAAG,IAAI;YACvC,UAAU;YACV,SAAS;YACT,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,YAAY,EAAE,YAAY;YAC1B,YAAY;YACZ,OAAO,EAAE,EAAE;YACX,UAAU;YACV,aAAa;YACb,MAAM,EAAE,aAAa;SACrB,CAAC,CACF,CAAC;QACF,KAAK,CAAC,aAAa,GAAG,CAAC,CAAC;QACxB,UAAU,GAAG,IAAI,CAAC;QAElB,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IACjD,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;IAC9B,IAAI,CAAC,aAAa,EAAE,CAAC;QACpB,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,SAAS,CAAC,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,IAAI,EAAE;gBACpD,GAAG,eAAe;gBAClB,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,6BAAkB;aACxB,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,6BAAkB,EAAE,eAAe,CAAC,CAAC;QAC1E,CAAC;QACD,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;IAClC,CAAC;IACD,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC;IAC7B,MAAM,eAAe,GAAG,EAAE,CAAC;IAC3B,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACtE,IAAI,CAAC,kBAAkB,EAAE,cAAc,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,cAAc,KAAK,EAAE;YAAE,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,cAAc;QACtE,IAAI,cAAc,EAAE,CAAC;YACpB,IAAI,kBAAkB,KAAK,SAAS;gBAAE,SAAS;QAChD,CAAC;aAAM,CAAC;YACP,gGAAgG;YAChG,SAAS;QACV,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;QACpF,MAAM,WAAW,GAAG,CAAC,SAAS,EAAE,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;QAChF,IAAI,CAAC,SAAS,IAAI,WAAW,EAAE,CAAC;YAC/B,aAAa,EAAE,CAAC;YAChB,UAAU,GAAG,IAAI,CAAC;YAClB,IAAI,CAAC,SAAS;gBAAE,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC1C,IAAI,WAAW,EAAE,CAAC;gBACjB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;gBACnD,IAAI,QAAQ;oBAAE,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC;QACF,CAAC;IACF,CAAC;IACD,MAAM,iBAAiB,GAAG,EAAE,CAAC;IAC7B,IAAI,CAAC;QACJ,gFAAgF;QAChF,yFAAyF;QACzF,KAAK,MAAM,SAAS,IAAI,UAAU,IAAI,EAAE,EAAE,CAAC;YAC1C,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBAClD,UAAU,GAAG,IAAI,CAAC,CAAC,2FAA2F;gBAC9G,IAAI,SAAS,CAAC,YAAY;oBAAE,SAAS;YACtC,CAAC;YACD,IAAI,MAAM,GAAG,SAAS,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;YACtD,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/E,IAAI,mBAAmB,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC5B,mBAAmB,GAAG,mBAAmB,IAAI,aAAa,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,SAAS,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;gBACrG,6DAA6D;gBAC7D,IACC,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC;oBAC9C,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,CAAC;oBACjD,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;oBAC1D,CAAC,CAAC,UAAU,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,UAAU,IAAI,SAAS,CAAC;oBAC7E,CAAC,CAAC,QAAQ,IAAI,SAAS,CAAC,KAAK,CAAC,CAAC,mBAAmB,CAAC,QAAQ,IAAI,SAAS,CAAC;oBACzE,SAAS,CAAC,IAAI,KAAK,mBAAmB,CAAC,IAAI,EAC1C,CAAC;oBACF,MAAM,uBAAuB,GAAG,EAAE,GAAG,mBAAmB,EAAE,CAAC;oBAC3D,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;wBAChC,IAAI,KAAK;4BAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;wBACvC,uBAAuB,CAAC,KAAK,GAAG,KAAK,CAAC;oBACvC,CAAC;oBACD,IAAI,UAAU;wBAAE,uBAAuB,CAAC,UAAU,GAAG,CAAC,UAAU,CAAC;oBACjE,IAAI,QAAQ;wBAAE,uBAAuB,CAAC,QAAQ,GAAG,CAAC,QAAQ,CAAC;oBAC3D,IAAI,MAAM,KAAK,SAAS;wBAAE,uBAAuB,CAAC,MAAM,GAAG,MAAM,CAAC;oBAClE,IAAI,SAAS,KAAK,SAAS;wBAAE,uBAAuB,CAAC,SAAS,GAAG,SAAS,CAAC;oBAC3E,IAAI,SAAS,CAAC,IAAI;wBAAE,uBAAuB,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC;oBAClE,UAAU,GAAG,IAAI,CAAC,CAAC,sCAAsC;oBACzD,aAAa,EAAE,CAAC;oBAChB,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAC;gBACpD,CAAC;gBAED,SAAS;YACV,CAAC;YAED,qDAAqD;YACrD,IAAI,mBAAmB,EAAE,SAAS,IAAI,CAAC,mBAAmB,CAAC,IAAI;gBAAE,mBAAmB,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC,oBAAoB;YACzH,MAAM,OAAO,GACZ,CAAC,mBAAmB;gBACpB,mBAAmB,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;gBAC3C,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,OAAO,CAAC;gBACjF,mBAAmB,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ;gBACnD,mBAAmB,CAAC,OAAO,KAAK,SAAS,CAAC,OAAO;gBACjD,mBAAmB,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU;gBACvD,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC;gBACvF,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACrF,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;gBACpD,IACC,OAAO;oBACP,CAAC,mBAAmB,CAAC,WAAW,IAAI,mBAAmB,CAAC,WAAW,KAAK,OAAO,CAAC,GAAG,CAAC;oBACpF,mBAAmB,CAAC,aAAa,GAAG,2BAAU,EAAE,aAAa,EAC5D,CAAC;oBACF,UAAU,GAAG,IAAI,CAAC;oBAClB,aAAa,EAAE,CAAC;oBAChB,mBAAmB,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACpD,IACC,OAAO;wBACP,CAAC,mBAAmB,CAAC,WAAW,IAAI,mBAAmB,CAAC,WAAW,KAAK,OAAO,CAAC,GAAG,CAAC;wBACpF,mBAAmB,CAAC,aAAa,GAAG,2BAAU,EAAE,aAAa,EAC5D,CAAC;wBACF,UAAU,GAAG,IAAI,CAAC;wBAClB,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS;4BAAE,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;wBACpE,IAAI,eAAe,GAAG,KAAK,CAAC;wBAC5B,KAAK,IAAI,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;4BACjE,eAAe,GAAG,IAAI,CAAC;4BACvB,MAAM;wBACP,CAAC;wBACD,IAAI,eAAe,EAAE,CAAC;4BACrB,SAAS,CAAC,cAAc,GAAG,mBAAmB,EAAE,cAAc,IAAI,SAAS,CAAC;4BAC5E,SAAS,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC;4BACpC,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC;4BACtB,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;4BACxD,kGAAkG;4BAClG,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;wBACnC,CAAC;oBACF,CAAC;oBACD,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;gBACtC,CAAC;gBACD,IAAI,mBAAmB,EAAE,UAAU,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS;oBAAE,SAAS,CAAC,UAAU,GAAG,IAAI,CAAC;gBACvG,GAAG,CAAC,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;gBACtC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;YAC/B,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACpB,UAAU,GAAG,IAAI,CAAC;gBAClB,aAAa,EAAE,CAAC;gBAChB,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;YACtC,CAAC;QACF,CAAC;IACF,CAAC;YAAS,CAAC;QACV,IAAI,oBAAoB;YAAE,oBAAoB,EAAE,CAAC;IAClD,CAAC;IACD,IAAI,UAAU,EAAE,CAAC;QAChB,KAAK,CAAC,aAAa,EAAE,CAAC;QACtB,KAAK,CAAC,iBAAiB,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,+BAA+B,CAAC,CAAC;IAC1D,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChE,KAAK,CAAC,iBAAiB,GAAG,WAAW,CAAC,KAAK,EAAE,iBAAiB,EAAE,eAAe,CAAC,CAAC;IAClF,CAAC;SAAM,IAAI,UAAU;QACpB,UAAU,CAAC,kBAAkB,CAC5B,IAAI,uBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CACrF,CAAC;IAEH,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACtB,IAAI,UAAU,EAAE,CAAC;QAChB,6BAAqB,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,UAAU,IAAI,QAAQ,IAAI,YAAY;QACzC,KAAK,CAAC,gBAAgB,CAAC;YACtB,UAAU;YACV,QAAQ;YACR,YAAY;SACZ,CAAC,CAAC;IACJ,MAAM,CAAC,KAAK,CAAC,GAAG,SAAS,eAAe,CAAC,CAAC;IAE1C,OAAO,KAA0B,CAAC;IAClC,kDAAkD;IAClD,SAAS,aAAa;QACrB,IAAI,oBAAoB;YAAE,OAAO;QACjC,IAAI,SAAS,YAAY,0BAAa,EAAE,CAAC;YACxC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC,qEAAqE;YACxH,oBAAoB,GAAG,GAAG,EAAE;gBAC3B,SAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;YACvC,CAAC,CAAC;QACH,CAAC;aAAM,CAAC;YACP,qDAAqD;YACrD,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE;gBAC9B,OAAO;oBACN,IAAI,CAAC,QAAQ;wBACZ,oBAAoB,GAAG,QAAQ,CAAC;oBACjC,CAAC;iBACD,CAAC;YACH,CAAC,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;AACF,CAAC;AACD,MAAM,wBAAwB,GAAG,IAAI,CAAC;AACtC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AACpC,KAAK,UAAU,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,eAAe;IAC5D,IAAI,CAAC;QACJ,MAAM,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,SAAS,aAAa,EAAE,UAAU,CAAC,CAAC;QAClE,MAAM,UAAU,CAAC,kBAAkB,CAClC,IAAI,uBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CACrF,CAAC;QACF,IAAI,cAAc,CAAC;QACnB,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACrC,cAAc,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,CAAC;QACD,IAAI,WAAW,CAAC;QAChB,MAAM,sBAAsB,GAAG,EAAE,CAAC;QAClC,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,8EAA8E;QACrI,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,KAAU,CAAC;YACf,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,sFAAsF;gBACtF,IAAI,IAAA,kBAAW,EAAC,SAAS,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,CAAC;oBAAE,KAAK,GAAG,SAAS,CAAC,cAAc,CAAC;gBACvF,IAAI,SAAS,CAAC,cAAc,IAAI,SAAS,EAAE,CAAC;oBAC3C,qGAAqG;oBACrG,IAAI,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;wBAC9B,8GAA8G;wBAC9G,SAAS,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;oBAC5B,CAAC;yBAAM,CAAC;wBACP,MAAM,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;oBAC7B,CAAC;gBACF,CAAC;YACF,CAAC;YACD,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,+EAA+E;YAC/E,KAAK,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC;gBAChE,KAAK;gBACL,IAAI,EAAE,gBAAgB,GAAG,CAAC;gBAC1B,QAAQ,EAAE,IAAI;gBACd,QAAQ,EAAE,KAAK,EAAE,gDAAgD;aACjE,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,MAAM;oBAAE,SAAS,CAAC,iBAAiB;gBACxC,oFAAoF;gBACpF,iIAAiI;gBACjI,WAAW,EAAE,CAAC;gBACd,+GAA+G;gBAC/G,6GAA6G;gBAC7G,kHAAkH;gBAClH,8DAA8D;gBAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC3C,MAAM,SAAS,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAChC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC;oBAChC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC;oBAC5B,IAAI,CAAC;wBACJ,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC;wBACnC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;wBACzE,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;4BACvB,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;4BACpC,SAAS;wBACV,CAAC;wBACD,MAAM,MAAM,GAAG,IAAA,mCAAgB,EAAC,KAAK,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;wBACzD,IAAI,MAAM,EAAE,CAAC;4BACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gCAC/C,cAAc,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;4BAC5C,CAAC;wBACF,CAAC;oBACF,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAChB,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACvC,6EAA6E;4BAC7E,sBAAsB,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;4BACxC,MAAM,CAAC,KAAK,CAAC,4BAA4B,QAAQ,EAAE,EAAE,KAAK,CAAC,CAAC;wBAC7D,CAAC;oBACF,CAAC;gBACF,CAAC;gBACD,IAAA,cAAI,EACH,cAAc,EACd,GAAG,EAAE,CAAC,WAAW,EAAE,EACnB,CAAC,KAAK,EAAE,EAAE;oBACT,WAAW,EAAE,CAAC;oBACd,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC,CACD,CAAC;gBACF,IAAI,2BAAU,IAAI,2BAAU,CAAC,aAAa,KAAK,aAAa,CAAC,aAAa,EAAE,CAAC;oBAC5E,WAAW,GAAG,IAAI,CAAC;gBACpB,CAAC;gBACD,IAAI,EAAE,OAAO,GAAG,GAAG,KAAK,CAAC,IAAI,WAAW,EAAE,CAAC;oBAC1C,iEAAiE;oBACjE,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;wBACpC,SAAS,CAAC,cAAc,GAAG,GAAG,CAAC;wBAC/B,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;oBAC5C,CAAC;oBACD,IAAI,WAAW;wBAAE,OAAO;gBACzB,CAAC;gBACD,IAAI,WAAW,GAAG,wBAAwB;oBAAE,MAAM,cAAc,CAAC;qBAC5D,IAAI,WAAW,GAAG,wBAAwB;oBAAE,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,sDAAsD;YAC/J,CAAC;YACD,yDAAyD;YACzD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,OAAO,SAAS,CAAC,cAAc,CAAC;gBAChC,OAAO,SAAS,CAAC,WAAW,CAAC;gBAC7B,SAAS,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC;gBACjC,cAAc,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAC7D,CAAC;QACF,CAAC;QACD,MAAM,cAAc,CAAC;QACrB,4EAA4E;QAC5E,MAAM,UAAU,CAAC,kBAAkB,CAClC,IAAI,uBAAc,CAAC,OAAO,CAAC,GAAG,EAAE,mBAAmB,EAAE,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,CAAC,CACzF,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,qBAAqB,KAAK,CAAC,SAAS,aAAa,EAAE,UAAU,CAAC,CAAC;IAC5E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;AACF,CAAC;AAED,SAAgB,aAAa,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE;IACzE,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IACzE,MAAM,QAAQ,GAAG,EAAE,CAAC;IACpB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;IAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,GAAG,GAAG,EAAE,GAAG,EAAE,SAAS,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC;QACpF,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,6BAAqB,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;AAC9B,CAAC;AAED,SAAgB,cAAc,CAAC,QAAgC;IAC9D,6BAAqB,CAAC,EAAE,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAClD,OAAO;QACN,MAAM;YACL,6BAAqB,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;QACpD,CAAC;KACD,CAAC;AACH,CAAC;AACD,SAAgB,cAAc,CAAC,QAA2D;IACzF,6BAAqB,CAAC,EAAE,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;IAChD,OAAO;QACN,MAAM;YACL,6BAAqB,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;KACD,CAAC;AACH,CAAC;AACD,SAAgB,WAAW,CAAC,QAAwC;IACnE,6BAAqB,CAAC,EAAE,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;IACnD,OAAO;QACN,MAAM;YACL,6BAAqB,CAAC,GAAG,CAAC,cAAc,EAAE,QAAQ,CAAC,CAAC;QACrD,CAAC;KACD,CAAC;AACH,CAAC;AAED,SAAgB,qBAAqB;IACpC,MAAM,gBAAgB,GAAG,IAAA,2BAAM,EAAC,2BAAa,CAAC,mBAAmB,CAAC,CAAC;IACnE,MAAM,8BAA8B,GAAG,IAAA,2BAAM,EAAC,2BAAa,CAAC,8BAA8B,CAAC,CAAC;IAC5F,MAAM,6BAA6B,GAClC,IAAA,2BAAM,EAAC,2BAAa,CAAC,6BAA6B,CAAC,IAAI,6BAA6B,CAAC;IACtF,MAAM,qBAAqB,GAAG,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;IACrD,IAAI,8BAA8B;QACjC,qBAAqB,CAAC,YAAY,CAAC,GAAG,IAAA,sBAAY,EAAC,8BAA8B,CAAC,CAAC;IACpF,IAAI,6BAA6B;QAAE,qBAAqB,CAAC,WAAW,CAAC,GAAG,6BAA6B,CAAC;IACtG,OAAO,gBAAgB,IAAI,qBAAqB,CAAC;AAClD,CAAC"}
|
|
1
|
+
{"version":3,"file":"databases.js","sourceRoot":"","sources":["../../../core/resources/databases.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,6 +64,14 @@ const node_fs_1 = require("node:fs");
|
|
|
64
64
|
const node_path_2 = require("node:path");
|
|
65
65
|
const node_events_1 = require("node:events");
|
|
66
66
|
const APPLICATIONS_LOCKDOWN = env.get(hdbTerms_ts_1.CONFIG_PARAMS.APPLICATIONS_LOCKDOWN);
|
|
67
|
+
const HARPER_MODULE_IDS = new Set([
|
|
68
|
+
'harper',
|
|
69
|
+
'harperdb',
|
|
70
|
+
'harperdb/v1',
|
|
71
|
+
'harperdb/v2',
|
|
72
|
+
'@harperfast/harper',
|
|
73
|
+
'@harperfast/harper-pro',
|
|
74
|
+
]);
|
|
67
75
|
let lockedDown = false;
|
|
68
76
|
/**
|
|
69
77
|
* This is the main entry point for loading plugin and application modules that may be executed in a
|
|
@@ -187,6 +195,7 @@ function parseJsonModule(source, url) {
|
|
|
187
195
|
async function loadModuleWithVM(moduleUrl, scope) {
|
|
188
196
|
const moduleCache = new Map();
|
|
189
197
|
const linkingPromises = new Map();
|
|
198
|
+
const cjsCache = new Map();
|
|
190
199
|
// Create a secure context with limited globals
|
|
191
200
|
const contextObject = getGlobalObject(scope);
|
|
192
201
|
const context = (0, node_vm_1.createContext)(contextObject);
|
|
@@ -194,30 +203,35 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
194
203
|
* Resolve module specifier to absolute URL
|
|
195
204
|
*/
|
|
196
205
|
function resolveModule(specifier, referrer) {
|
|
197
|
-
if (specifier
|
|
198
|
-
return 'harper';
|
|
199
|
-
|
|
206
|
+
if (HARPER_MODULE_IDS.has(specifier)) {
|
|
207
|
+
return 'harper'; // resolve any harper package as an alias to a single synthetic module
|
|
208
|
+
}
|
|
209
|
+
const parts = specifier.split('/');
|
|
210
|
+
if (parts[0] === 'harper') {
|
|
211
|
+
// block harper/* for now (reserving for potential future use)
|
|
200
212
|
throw new Error(`Module ${specifier} is not allowed, may only access the 'harper' module`);
|
|
201
213
|
}
|
|
202
|
-
if (
|
|
214
|
+
if (parts[0] === 'file:') {
|
|
203
215
|
return specifier;
|
|
204
216
|
}
|
|
205
|
-
|
|
206
|
-
if (
|
|
207
|
-
|
|
208
|
-
if ((0, node_path_1.isAbsolute)(resolved)) {
|
|
209
|
-
return (0, node_url_1.pathToFileURL)(resolved).toString();
|
|
210
|
-
}
|
|
211
|
-
return resolved;
|
|
217
|
+
const resolved = (0, node_module_1.createRequire)(referrer).resolve(specifier);
|
|
218
|
+
if ((0, node_path_1.isAbsolute)(resolved)) {
|
|
219
|
+
return (0, node_url_1.pathToFileURL)(resolved).toString();
|
|
212
220
|
}
|
|
213
|
-
|
|
214
|
-
return specifier;
|
|
221
|
+
return resolved;
|
|
215
222
|
}
|
|
216
223
|
/**
|
|
217
224
|
* Load a CommonJS module in our private context
|
|
218
225
|
*/
|
|
219
226
|
function loadCJS(url, source) {
|
|
227
|
+
// Check cache first to handle circular dependencies
|
|
228
|
+
if (cjsCache.has(url)) {
|
|
229
|
+
return cjsCache.get(url);
|
|
230
|
+
}
|
|
231
|
+
// Create module object and cache it immediately (before execution)
|
|
232
|
+
// This allows circular dependencies to get a reference to the incomplete module
|
|
220
233
|
const cjsModule = { exports: {} };
|
|
234
|
+
cjsCache.set(url, cjsModule);
|
|
221
235
|
if (url.endsWith('.json')) {
|
|
222
236
|
cjsModule.exports = parseJsonModule(source, url);
|
|
223
237
|
return cjsModule;
|
|
@@ -243,7 +257,7 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
243
257
|
filename: url,
|
|
244
258
|
async importModuleDynamically(specifier, script) {
|
|
245
259
|
const resolvedUrl = resolveModule(specifier, script.sourceURL);
|
|
246
|
-
const useContainment = specifier.startsWith('.') || scope.dependencyContainment;
|
|
260
|
+
const useContainment = specifier.startsWith('.') || scope.dependencyContainment !== false;
|
|
247
261
|
const dynamicModule = await loadModuleWithCache(resolvedUrl, useContainment);
|
|
248
262
|
return dynamicModule;
|
|
249
263
|
},
|
|
@@ -253,26 +267,75 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
253
267
|
}
|
|
254
268
|
function loadCJSModule(url, source, usePrivateGlobal) {
|
|
255
269
|
const cjsModule = usePrivateGlobal ? loadCJS(url, source) : { exports: require(url) };
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
this.setExport(
|
|
270
|
+
let exports = cjsModule.exports;
|
|
271
|
+
if (exports.default === undefined) {
|
|
272
|
+
// provide the default export for compatibility
|
|
273
|
+
exports = { default: exports, ...exports };
|
|
274
|
+
}
|
|
275
|
+
const exportNames = Object.keys(exports);
|
|
276
|
+
const synModule = new node_vm_1.SyntheticModule(exportNames, function () {
|
|
277
|
+
for (const key of exportNames) {
|
|
278
|
+
this.setExport(key, exports[key]);
|
|
265
279
|
}
|
|
266
280
|
}, { identifier: url, context });
|
|
267
|
-
|
|
281
|
+
// Don't cache here - let getOrCreateModule handle caching
|
|
268
282
|
return synModule;
|
|
269
283
|
}
|
|
284
|
+
/**
|
|
285
|
+
* Check if a package (or any of its dependencies) depends on harper
|
|
286
|
+
* Expects a file URL like: file:///path/to/node_modules/package-name/dist/index.js
|
|
287
|
+
*/
|
|
288
|
+
function packageDependsOnHarper(fileUrl) {
|
|
289
|
+
try {
|
|
290
|
+
// Convert file:// URL to path
|
|
291
|
+
const filePath = (0, node_url_1.fileURLToPath)(fileUrl);
|
|
292
|
+
// Find the node_modules directory and package name
|
|
293
|
+
// Example: /path/to/node_modules/package-name/dist/index.js
|
|
294
|
+
// or: /path/to/node_modules/@scope/package-name/dist/index.js
|
|
295
|
+
const nodeModulesMarker = '/node_modules/';
|
|
296
|
+
const nodeModulesIndex = filePath.lastIndexOf(nodeModulesMarker);
|
|
297
|
+
if (nodeModulesIndex === -1)
|
|
298
|
+
return false;
|
|
299
|
+
// Get the part after /node_modules/
|
|
300
|
+
const afterNodeModules = filePath.substring(nodeModulesIndex + nodeModulesMarker.length);
|
|
301
|
+
const parts = afterNodeModules.split('/');
|
|
302
|
+
// Handle scoped packages (@scope/package-name) vs regular packages (package-name)
|
|
303
|
+
const beforeNodeModules = filePath.substring(0, nodeModulesIndex);
|
|
304
|
+
const packageRoot = parts[0].startsWith('@')
|
|
305
|
+
? (0, node_path_2.join)(beforeNodeModules, 'node_modules', parts[0], parts[1])
|
|
306
|
+
: (0, node_path_2.join)(beforeNodeModules, 'node_modules', parts[0]);
|
|
307
|
+
// Read package.json from the package root
|
|
308
|
+
const packageJsonPath = (0, node_path_2.join)(packageRoot, 'package.json');
|
|
309
|
+
const packageJson = JSON.parse((0, node_fs_1.readFileSync)(packageJsonPath, 'utf-8'));
|
|
310
|
+
const deps = {
|
|
311
|
+
...packageJson.dependencies,
|
|
312
|
+
...packageJson.devDependencies,
|
|
313
|
+
...packageJson.peerDependencies,
|
|
314
|
+
};
|
|
315
|
+
// Check if harper is a direct dependency
|
|
316
|
+
return Object.keys(deps).some((dep) => HARPER_MODULE_IDS.has(dep));
|
|
317
|
+
}
|
|
318
|
+
catch {
|
|
319
|
+
return false;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
270
322
|
/**
|
|
271
323
|
* Linker function for module resolution during instantiation
|
|
272
324
|
*/
|
|
273
325
|
async function linker(specifier, referencingModule) {
|
|
274
326
|
const resolvedUrl = resolveModule(specifier, referencingModule.identifier);
|
|
275
|
-
|
|
327
|
+
// Determine if we should use VM containment for this module
|
|
328
|
+
let useContainment = specifier.startsWith('.'); // Always contain relative imports
|
|
329
|
+
if (!useContainment && scope.dependencyContainment !== false) {
|
|
330
|
+
// For npm packages, check if they depend on harper
|
|
331
|
+
if (resolvedUrl.startsWith('file://') && resolvedUrl.includes('node_modules')) {
|
|
332
|
+
useContainment = packageDependsOnHarper(resolvedUrl);
|
|
333
|
+
}
|
|
334
|
+
else {
|
|
335
|
+
// Non-file URLs (bare specifiers) - use default behavior
|
|
336
|
+
useContainment = scope.dependencyContainment === true;
|
|
337
|
+
}
|
|
338
|
+
}
|
|
276
339
|
// Return the module immediately (even if not yet linked) to support circular dependencies
|
|
277
340
|
return await getOrCreateModule(resolvedUrl, useContainment);
|
|
278
341
|
}
|
|
@@ -282,7 +345,7 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
282
345
|
return moduleCache.get(url);
|
|
283
346
|
}
|
|
284
347
|
// Create the module and cache it immediately (before linking)
|
|
285
|
-
const module =
|
|
348
|
+
const module = createModule(url, usePrivateGlobal);
|
|
286
349
|
moduleCache.set(url, module);
|
|
287
350
|
return module;
|
|
288
351
|
}
|
|
@@ -290,7 +353,11 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
290
353
|
const module = await getOrCreateModule(url, usePrivateGlobal);
|
|
291
354
|
// Only link/evaluate once per module
|
|
292
355
|
if (!linkingPromises.has(url)) {
|
|
293
|
-
|
|
356
|
+
const linkingPromise = (async () => {
|
|
357
|
+
await module.link(linker);
|
|
358
|
+
await module.evaluate();
|
|
359
|
+
})();
|
|
360
|
+
linkingPromises.set(url, linkingPromise);
|
|
294
361
|
}
|
|
295
362
|
// Wait for linking to complete
|
|
296
363
|
await linkingPromises.get(url);
|
|
@@ -302,7 +369,7 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
302
369
|
async function createModule(url, usePrivateGlobal) {
|
|
303
370
|
let module;
|
|
304
371
|
// Handle special built-in modules
|
|
305
|
-
if (url === 'harper'
|
|
372
|
+
if (url === 'harper') {
|
|
306
373
|
let harperExports = getHarperExports(scope);
|
|
307
374
|
module = new node_vm_1.SyntheticModule(Object.keys(harperExports), function () {
|
|
308
375
|
for (let key in harperExports) {
|
|
@@ -310,7 +377,7 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
310
377
|
}
|
|
311
378
|
}, { identifier: url, context });
|
|
312
379
|
}
|
|
313
|
-
else if (url.startsWith('file://')) {
|
|
380
|
+
else if (url.startsWith('file://') && usePrivateGlobal) {
|
|
314
381
|
checkAllowedModulePath(url, scope.verifyPath);
|
|
315
382
|
let source = await (0, promises_1.readFile)(new URL(url), { encoding: 'utf-8' });
|
|
316
383
|
// Handle JSON modules as a SyntheticModule with a default export.
|
|
@@ -326,61 +393,50 @@ async function loadModuleWithVM(moduleUrl, scope) {
|
|
|
326
393
|
if (url.endsWith('.ts') || url.endsWith('.tsx')) {
|
|
327
394
|
source = await stripTypeScriptTypes(source);
|
|
328
395
|
}
|
|
329
|
-
// Try
|
|
396
|
+
// Try CJS first since it will fail fast with clear syntax errors on ESM syntax
|
|
330
397
|
try {
|
|
331
|
-
module =
|
|
332
|
-
identifier: url,
|
|
333
|
-
context,
|
|
334
|
-
initializeImportMeta(meta) {
|
|
335
|
-
meta.url = url;
|
|
336
|
-
},
|
|
337
|
-
async importModuleDynamically(specifier) {
|
|
338
|
-
const resolvedUrl = resolveModule(specifier, url);
|
|
339
|
-
const dynamicModule = await loadModuleWithCache(resolvedUrl, true);
|
|
340
|
-
return dynamicModule;
|
|
341
|
-
},
|
|
342
|
-
});
|
|
398
|
+
module = loadCJSModule(url, source, usePrivateGlobal);
|
|
343
399
|
}
|
|
344
|
-
catch
|
|
345
|
-
// If
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
400
|
+
catch {
|
|
401
|
+
// If CJS loading fails (likely due to ESM syntax like import/export), try ESM
|
|
402
|
+
try {
|
|
403
|
+
module = new node_vm_1.SourceTextModule(source, {
|
|
404
|
+
identifier: url,
|
|
405
|
+
context,
|
|
406
|
+
initializeImportMeta(meta) {
|
|
407
|
+
meta.url = url;
|
|
408
|
+
},
|
|
409
|
+
async importModuleDynamically(specifier) {
|
|
410
|
+
const resolvedUrl = resolveModule(specifier, url);
|
|
411
|
+
const dynamicModule = await loadModuleWithCache(resolvedUrl, true);
|
|
412
|
+
return dynamicModule;
|
|
413
|
+
},
|
|
414
|
+
});
|
|
350
415
|
}
|
|
351
|
-
|
|
352
|
-
throw
|
|
416
|
+
catch (esmErr) {
|
|
417
|
+
// Both failed - throw the ESM error as it's likely more relevant
|
|
418
|
+
throw esmErr;
|
|
353
419
|
}
|
|
354
420
|
}
|
|
355
421
|
}
|
|
356
422
|
}
|
|
357
423
|
else {
|
|
358
424
|
const replacedModule = checkAllowedModulePath(url, scope.verifyPath);
|
|
359
|
-
// For Node.js built-in modules (node:) and npm packages
|
|
425
|
+
// For Node.js built-in modules (node:) and npm packages without dependency containment
|
|
360
426
|
// Always try require first to properly handle CJS modules with named exports
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
for (const key of exportNames) {
|
|
368
|
-
this.setExport(key, cjsExports[key]);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
this.setExport('default', cjsExports);
|
|
372
|
-
}, { identifier: url, context });
|
|
373
|
-
}
|
|
374
|
-
catch {
|
|
375
|
-
// Fall back to dynamic import for ESM packages
|
|
376
|
-
const importedModule = await import(__rewriteRelativeImportExtension(url));
|
|
377
|
-
const exportNames = Object.keys(importedModule);
|
|
378
|
-
module = new node_vm_1.SyntheticModule(exportNames, function () {
|
|
379
|
-
for (const key of exportNames) {
|
|
380
|
-
this.setExport(key, importedModule[key]);
|
|
381
|
-
}
|
|
382
|
-
}, { identifier: url, context });
|
|
427
|
+
// Fall back to dynamic import for ESM packages
|
|
428
|
+
let importedModule = replacedModule ?? (await import(__rewriteRelativeImportExtension(url)));
|
|
429
|
+
const cjsModule = importedModule['module.exports'];
|
|
430
|
+
if (cjsModule) {
|
|
431
|
+
// back-compat import
|
|
432
|
+
importedModule = importedModule.default ? { default: importedModule.default, ...cjsModule } : cjsModule;
|
|
383
433
|
}
|
|
434
|
+
const exportNames = Object.keys(importedModule);
|
|
435
|
+
module = new node_vm_1.SyntheticModule(exportNames, function () {
|
|
436
|
+
for (const key of exportNames) {
|
|
437
|
+
this.setExport(key, importedModule[key]);
|
|
438
|
+
}
|
|
439
|
+
}, { identifier: url, context });
|
|
384
440
|
}
|
|
385
441
|
return module;
|
|
386
442
|
}
|
|
@@ -397,8 +453,14 @@ async function getCompartment(scope, globals) {
|
|
|
397
453
|
}, {
|
|
398
454
|
name: 'harper-app',
|
|
399
455
|
resolveHook(moduleSpecifier, moduleReferrer) {
|
|
400
|
-
if (moduleSpecifier
|
|
401
|
-
return 'harper';
|
|
456
|
+
if (HARPER_MODULE_IDS.has(moduleSpecifier)) {
|
|
457
|
+
return 'harper'; // resolve any harper package as an alias to a single synthetic module
|
|
458
|
+
}
|
|
459
|
+
const parts = moduleSpecifier.split('/');
|
|
460
|
+
if (parts[0] === 'harper') {
|
|
461
|
+
// block harper/* for now (reserving for potential future use)
|
|
462
|
+
throw new Error(`Module ${moduleSpecifier} is not allowed, may only access the 'harper' module`);
|
|
463
|
+
}
|
|
402
464
|
const resolved = (0, node_module_1.createRequire)(moduleReferrer).resolve(moduleSpecifier);
|
|
403
465
|
if ((0, node_path_1.isAbsolute)(resolved)) {
|
|
404
466
|
const resolvedURL = (0, node_url_1.pathToFileURL)(resolved).toString();
|
|
@@ -514,6 +576,25 @@ function getHarperExports(scope) {
|
|
|
514
576
|
authenticateUser: server.authenticateUser,
|
|
515
577
|
operation: server.operation,
|
|
516
578
|
contentTypes: contentTypes_ts_1.contentTypes,
|
|
579
|
+
Attribute: undefined,
|
|
580
|
+
Config: undefined,
|
|
581
|
+
ConfigValue: undefined,
|
|
582
|
+
Context: undefined,
|
|
583
|
+
FileAndURLPathConfig: undefined,
|
|
584
|
+
FilesOption: undefined,
|
|
585
|
+
FilesOptionObject: undefined,
|
|
586
|
+
IterableEventQueue: undefined,
|
|
587
|
+
Logger: undefined,
|
|
588
|
+
Query: undefined,
|
|
589
|
+
RecordObject: undefined,
|
|
590
|
+
RequestTargetOrId: undefined,
|
|
591
|
+
ResourceInterface: undefined,
|
|
592
|
+
Scope: undefined,
|
|
593
|
+
Session: undefined,
|
|
594
|
+
SourceContext: undefined,
|
|
595
|
+
SubscriptionRequest: undefined,
|
|
596
|
+
Table: undefined,
|
|
597
|
+
User: undefined,
|
|
517
598
|
};
|
|
518
599
|
}
|
|
519
600
|
const ALLOWED_NODE_BUILTIN_MODULES = env.get(hdbTerms_ts_1.CONFIG_PARAMS.APPLICATIONS_ALLOWEDBUILTINMODULES)
|
|
@@ -525,14 +606,19 @@ const ALLOWED_NODE_BUILTIN_MODULES = env.get(hdbTerms_ts_1.CONFIG_PARAMS.APPLICA
|
|
|
525
606
|
},
|
|
526
607
|
};
|
|
527
608
|
const ALLOWED_COMMANDS = new Set(env.get(hdbTerms_ts_1.CONFIG_PARAMS.APPLICATIONS_ALLOWEDSPAWNCOMMANDS) ?? []);
|
|
528
|
-
const
|
|
529
|
-
|
|
530
|
-
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
609
|
+
const child_processConstrained = {
|
|
610
|
+
exec: createSpawn(child_process.exec),
|
|
611
|
+
execFile: createSpawn(child_process.execFile),
|
|
612
|
+
fork: createSpawn(child_process.fork, true), // this is launching node, so deemed safe
|
|
613
|
+
spawn: createSpawn(child_process.spawn),
|
|
614
|
+
execSync: function () {
|
|
615
|
+
throw new Error('execSync is not allowed');
|
|
534
616
|
},
|
|
535
617
|
};
|
|
618
|
+
child_processConstrained.default = child_processConstrained;
|
|
619
|
+
const REPLACED_BUILTIN_MODULES = {
|
|
620
|
+
child_process: child_processConstrained,
|
|
621
|
+
};
|
|
536
622
|
/**
|
|
537
623
|
* Creates a ChildProcess-like object for an existing process
|
|
538
624
|
*/
|