@prosopo/provider 5.11.1 → 5.12.1
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/.turbo/turbo-build$colon$cjs.log +116 -115
- package/.turbo/turbo-build$colon$tsc.log +27 -27
- package/.turbo/turbo-build.log +117 -116
- package/CHANGELOG.md +75 -0
- package/dist/api/blacklistRequestInspector.d.ts +5 -2
- package/dist/api/blacklistRequestInspector.d.ts.map +1 -1
- package/dist/api/blacklistRequestInspector.js +10 -5
- package/dist/api/blacklistRequestInspector.js.map +1 -1
- package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js +1 -1
- package/dist/api/captcha/getPoWCaptchaChallenge.js +1 -1
- package/dist/api/captcha/getPuzzleCaptchaChallenge.js +1 -1
- package/dist/api/cpuProfiler.d.ts +32 -0
- package/dist/api/cpuProfiler.d.ts.map +1 -0
- package/dist/api/cpuProfiler.js +128 -0
- package/dist/api/cpuProfiler.js.map +1 -0
- package/dist/api/metrics.d.ts +9 -0
- package/dist/api/metrics.d.ts.map +1 -1
- package/dist/api/metrics.js +107 -1
- package/dist/api/metrics.js.map +1 -1
- package/dist/api/startProviderApi.d.ts.map +1 -1
- package/dist/api/startProviderApi.js +2 -0
- package/dist/api/startProviderApi.js.map +1 -1
- package/dist/cjs/api/blacklistRequestInspector.cjs +10 -5
- package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs +1 -1
- package/dist/cjs/api/captcha/getPoWCaptchaChallenge.cjs +1 -1
- package/dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs +1 -1
- package/dist/cjs/api/cpuProfiler.cjs +129 -0
- package/dist/cjs/api/metrics.cjs +108 -0
- package/dist/cjs/api/startProviderApi.cjs +2 -0
- package/dist/cjs/tasks/captchaManager.cjs +61 -4
- package/dist/cjs/tasks/decisionMachine/decisionMachineRunner.cjs +2 -1
- package/dist/cjs/tasks/detection/decoderModules.cjs +14 -0
- package/dist/cjs/tasks/detection/decoderPool.cjs +183 -0
- package/dist/cjs/tasks/detection/getBotScore.cjs +9 -2
- package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +6 -3
- package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasksUtils.cjs +5 -2
- package/dist/cjs/tasks/powCaptcha/powTasks.cjs +6 -3
- package/dist/cjs/tasks/puzzle/backgroundBuffer.cjs +3 -2
- package/dist/cjs/tasks/puzzle/nativeBackground.cjs +30 -0
- package/dist/cjs/tasks/puzzle/puzzleRenderer.cjs +3 -2
- package/dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs +6 -3
- package/dist/tasks/captchaManager.d.ts +7 -0
- package/dist/tasks/captchaManager.d.ts.map +1 -1
- package/dist/tasks/captchaManager.js +61 -4
- package/dist/tasks/captchaManager.js.map +1 -1
- package/dist/tasks/decisionMachine/decisionMachineRunner.d.ts.map +1 -1
- package/dist/tasks/decisionMachine/decisionMachineRunner.js +2 -1
- package/dist/tasks/decisionMachine/decisionMachineRunner.js.map +1 -1
- package/dist/tasks/detection/decoderModules.d.ts +5 -0
- package/dist/tasks/detection/decoderModules.d.ts.map +1 -0
- package/dist/tasks/detection/decoderModules.js +13 -0
- package/dist/tasks/detection/decoderModules.js.map +1 -0
- package/dist/tasks/detection/decoderPool.d.ts +4 -0
- package/dist/tasks/detection/decoderPool.d.ts.map +1 -0
- package/dist/tasks/detection/decoderPool.js +183 -0
- package/dist/tasks/detection/decoderPool.js.map +1 -0
- package/dist/tasks/detection/getBotScore.js +9 -2
- package/dist/tasks/detection/getBotScore.js.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +6 -3
- package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.d.ts.map +1 -1
- package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js +5 -2
- package/dist/tasks/imgCaptcha/imgCaptchaTasksUtils.js.map +1 -1
- package/dist/tasks/powCaptcha/powTasks.d.ts.map +1 -1
- package/dist/tasks/powCaptcha/powTasks.js +6 -3
- package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
- package/dist/tasks/puzzle/backgroundBuffer.d.ts.map +1 -1
- package/dist/tasks/puzzle/backgroundBuffer.js +4 -3
- package/dist/tasks/puzzle/backgroundBuffer.js.map +1 -1
- package/dist/tasks/puzzle/nativeBackground.d.ts +3 -0
- package/dist/tasks/puzzle/nativeBackground.d.ts.map +1 -0
- package/dist/tasks/puzzle/nativeBackground.js +31 -0
- package/dist/tasks/puzzle/nativeBackground.js.map +1 -0
- package/dist/tasks/puzzle/puzzleRenderer.d.ts.map +1 -1
- package/dist/tasks/puzzle/puzzleRenderer.js +3 -2
- package/dist/tasks/puzzle/puzzleRenderer.js.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts.map +1 -1
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js +6 -3
- package/dist/tasks/puzzleCaptcha/puzzleTasks.js.map +1 -1
- package/dist/tests/unit/api/blacklistRequestInspector.unit.test.js +42 -1
- package/dist/tests/unit/api/blacklistRequestInspector.unit.test.js.map +1 -1
- package/dist/tests/unit/api/cpuProfiler.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/cpuProfiler.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/cpuProfiler.unit.test.js +47 -0
- package/dist/tests/unit/api/cpuProfiler.unit.test.js.map +1 -0
- package/dist/tests/unit/api/cpuSpans.unit.test.d.ts +2 -0
- package/dist/tests/unit/api/cpuSpans.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/api/cpuSpans.unit.test.js +37 -0
- package/dist/tests/unit/api/cpuSpans.unit.test.js.map +1 -0
- package/dist/tests/unit/tasks/captchaManager.unit.test.js +83 -5
- package/dist/tests/unit/tasks/captchaManager.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/detection/decoderPool.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/detection/decoderPool.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/detection/decoderPool.unit.test.js +59 -0
- package/dist/tests/unit/tasks/detection/decoderPool.unit.test.js.map +1 -0
- package/dist/tests/unit/tasks/detection/getBotScore.unit.test.js +39 -18
- package/dist/tests/unit/tasks/detection/getBotScore.unit.test.js.map +1 -1
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.d.ts +2 -0
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.d.ts.map +1 -0
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js +50 -0
- package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js.map +1 -0
- package/package.json +18 -17
- package/dist/cjs/tasks/detection/decodeBehavior.cjs +0 -721
- package/dist/cjs/tasks/detection/decodePayload.cjs +0 -1325
- package/dist/cjs/tasks/detection/decodeSimd.cjs +0 -805
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"captchaManager.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/tasks/captchaManager.unit.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"captchaManager.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/tasks/captchaManager.unit.test.ts"],"names":[],"mappings":"AAeA,OAAO,EAAe,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAkC,MAAM,gBAAgB,CAAC;AAC/E,OAAO,EACN,WAAW,EAEX,YAAY,EACZ,IAAI,EACJ,mBAAmB,EACnB,0BAA0B,GAC1B,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAEN,gBAAgB,GAEhB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGlE,EAAE,CAAC,IAAI,CAAC,yCAAyC,EAAE,GAAG,EAAE,CAAC,CAAC;IACzD,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE;CACf,CAAC,CAAC,CAAC;AAEJ,MAAM,WAAW,GAAG,SAAS,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;AAE9D,MAAM,mBAAmB,GAAkB;IAC1C,qBAAqB,EAAE;QACtB,2BAA2B,EAAE,GAAG;QAChC,0BAA0B,EAAE,CAAC;KAC7B;IACD,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;IAChD,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,WAAW,CAAC,YAAY;IACrC,aAAa,EAAE,CAAC;IAChB,cAAc,EAAE,GAAG;IACnB,cAAc,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC;IACjB,eAAe,EAAE,MAAM;IACvB,eAAe,EAAE,KAAK;IACtB,eAAe,EAAE,EAAE;IACnB,mBAAmB,EAAE,0BAA0B;IAC/C,eAAe,EAAE,KAAK;CACtB,CAAC;AAEF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;IAC/B,IAAI,EAAqB,CAAC;IAC1B,IAAI,IAAiB,CAAC;IACtB,IAAI,MAAc,CAAC;IACnB,IAAI,cAA8B,CAAC;IACnC,IAAI,OAA4B,CAAC;IACjC,IAAI,cAA+B,CAAC;IAEpC,UAAU,CAAC,GAAG,EAAE;QACf,EAAE,GAAG;YACJ,qBAAqB,EAAE,EAAE,CAAC,EAAE,EAAE;YAC9B,2BAA2B,EAAE,EAAE,CAAC,EAAE,EAAE;SACJ,CAAC;QAElC,IAAI,GAAG;YACN,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;YACb,OAAO,EAAE,aAAa;SACI,CAAC;QAE5B,MAAM,UAAU,GAAG;YAClB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAClE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACpE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC/C,CAAC;QACvB,MAAM,GAAG,UAAU,CAAC;QAEpB,OAAO,GAAG;YACT,MAAM,EAAE;gBACP,KAAK,EAAE;oBACN,MAAM,EAAE,SAAS;oBACjB,OAAO,EAAE,sBAAsB;iBAC/B;aACD;SACiC,CAAC;QAEpC,cAAc,GAAG;YAChB,uBAAuB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;YAC7D,6BAA6B,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACnE,gBAAgB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;YACjD,sBAAsB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;YACvD,0BAA0B,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;YAC3D,iCAAiC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;YACvE,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC;SACpB,CAAC;QAEhC,cAAc,GAAG,IAAI,cAAc,CAClC,EAAE,EACF,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,MAAM,EACN,cAAc,CACd,CAAC;QAEF,EAAE,CAAC,aAAa,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAOH,QAAQ,CAAC,oCAAoC,EAAE,GAAG,EAAE;QACnD,MAAM,KAAK,GAAG,GAAG,EAAE,CAClB,EAAE,CAAC,2BAAkE,CAAC;QAEvE,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC3F,MAAM,OAAO,GAAG;gBACf,SAAS,EAAE,MAAM;gBACjB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,YAAY,EAAE,SAAS;aACD,CAAC;YACxB,KAAK,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAEnC,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;YAEjE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC/D,KAAK,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAChC,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;YACjE,MAAM,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,CAAC;QAC7B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yFAAyF,EAAE,KAAK,IAAI,EAAE;YACxG,MAAM,OAAO,GAAG;gBACf,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;gBAC/B,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;gBAC9C,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE;gBACpC,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE;aACJ,CAAC;YACxB,KAAK,EAAE,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;YAEnC,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE1B,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;gBACrD,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE;aACd,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;aAIT,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC;gBACjC,SAAS,EAAE,IAAI;gBACf,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aAClB,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;YAGpC,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE;aACJ,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;aACT,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACtB,EAAE,EAAE,IAAI;gBAGR,EAAE,EAAE,KAAK;aACT,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,CAAC,EAAE,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,EAAE;aACV,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;gBAG/B,CAAC,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE;aACP,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;gBACtB,EAAE,EAAE,kBAAkB;gBACtB,EAAE,EAAE,CAAC;aACL,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;gBAC/B,CAAC,EAAE,EAAE,EAAE,EAAE,kBAAkB,EAAE;gBAC7B,YAAY,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE;gBACjD,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,EAAE;aACd,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC;YAE1C,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;YACnD,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACzE,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,YAAY,EAAE,SAAS;gBACvB,QAAQ,EAAE,SAAS;aACG,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;aACT,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,aAAa,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,aAAa;gBAC9B,WAAW,EAAE,WAAW,CAAC,MAAM;aACT,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAEtE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+FAA+F,EAAE,KAAK,IAAI,EAAE;YAC9G,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,KAAK,EAAE,GAAG;gBACV,YAAY,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;aACX,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;gBAC/B,KAAK,EAAE,GAAG;aACY,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAGhE,MAAM,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAEvD,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAClD,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QASH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE;aACf,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,KAAK;aACR,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3D,MAAM,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE;aACf,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,MAAM;aACT,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;YAC3D,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAKH,EAAE,CAAC,2LAA2L,EAAE,KAAK,IAAI,EAAE;YAC1M,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,iBAAiB,EAAE,sBAAsB;aACnB,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,KAAK;aAER,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,aAAa,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mKAAmK,EAAE,KAAK,IAAI,EAAE;YAIlL,MAAM,MAAM,GAAG;gBACd,SAAS,EAAE,QAAQ;gBACnB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,oBAAoB,EAAE;oBACrB,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC1B,EAAE,EAAE,EAAE;oBACN,EAAE,EAAE,EAAE;iBACN;aACqB,CAAC;YACxB,MAAM,UAAU,GAAG;gBAClB,SAAS,EAAE,KAAK;gBAChB,eAAe,EAAE,QAAQ;gBACzB,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,YAAY,EAAE,SAAS;aACD,CAAC;YACxB,KAAK,EAAE,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAExE,MAAM,GAAG,GACR,MAAM,cAAc,CAAC,kCAAkC,CAAC,KAAK,CAAC,CAAC;YAEhE,MAAM,CACJ,GAAqD;iBACpD,oBAAoB,CACtB,CAAC,aAAa,EAAE,CAAC;QACnB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,sHAAsH,EAAE,KAAK,IAAI,EAAE;YACrI,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBAC9B;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,CACP,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,kHAAkH,EAAE,KAAK,IAAI,EAAE;YACjI,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;iBAC5B;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,CACP,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,0JAA0J,EAAE,KAAK,IAAI,EAAE;YAExK,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;aACkB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,GAAG;gBACrB,SAAS,EAAE,WAAW;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YAK1F,MAAM,UAAU,GAAG;gBAClB,EAAE,EAAE,SAAS;gBACb,OAAO,EAAE,IAAa;gBACtB,KAAK,EAAE,IAAI;gBACX,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,KAAK;gBACd,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,KAAK;gBACf,WAAW,EAAE,KAAK;gBAClB,SAAS,EAAE,KAAK;gBAChB,WAAW,EAAE,IAAI;aACjB,CAAC;YAED,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,MAAM,EAAE,UAAU;aACuC,CAAC,CAAC;YAE5D,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;YAEpG,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,iBAAiB,EAAE,UAAU;aACuC,CAAC,CAAC;YAEvE,MAAM,cAAc,CAAC,cAAc,CAClC;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAClE,WAAW,CACX,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC,oBAAoB,CACxE,UAAU,CACV,CAAC;QACH,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;YAEtG,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,UAAU;aACuC,CAAC,CAAC;YAEvE,MAAM,cAAc,CAAC,cAAc,CAClC;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAClE,WAAW,CACX,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC,oBAAoB,CACxE,UAAU,CACV,CAAC;QACH,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;YAEnG,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAO9D,cAAc,CAAC,gBAAwB,CAAC,qBAAqB,CAAC;gBAC9D,SAAS,EAAE,WAAW;gBACtB,iBAAiB,EAAE,UAAU;aAC7B,CAAC,CAAC;YAEH,MAAM,cAAc,CAAC,cAAc,CAClC;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,CACX,CAAC;YAOF,MAAM,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAClE,WAAW,CACX,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC,oBAAoB,CACxE,UAAU,CACV,CAAC;QACH,CAAC,CAAC,CAAC;QAgBH,EAAE,CAAC,2GAA2G,EAAE,KAAK,IAAI,EAAE;YAM1H,MAAM,cAAc,GAAG,EAAE,CAAC,qBAEzB,CAAC;YACF,cAAc,CAAC,kBAAkB,CAAC,KAAK,EAAE,SAAiB,EAAE,EAAE;gBAC7D,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;oBACnC,OAAO;wBACN,SAAS,EAAE,eAAe;wBAC1B,WAAW,EAAE,WAAW,CAAC,KAAK;wBAC9B,iBAAiB,EAAE,UAAU;qBACuC,CAAC;gBACvE,CAAC;gBACD,OAAO,SAAS,CAAC;YAClB,CAAC,CAAC,CAAC;YAEF,EAAE,CAAC,2BACH,CAAC,qBAAqB,CAAC;gBACvB,SAAS,EAAE,eAAe;gBAC1B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,UAAU;aACuC,CAAC,CAAC;YAEtE,cAAc,CAAC,0BAGf,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,SAAS,EAAE,eAAe;aAC1B,CAAC,CAAC;YAIH,MAAM,CACL,cAAc,CAAC,iCAAiC,CAChD,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;YAGpC,MAAM,CAAC,cAAc,CAAC,uBAAuB,CAAC,CAAC,oBAAoB,CAClE,eAAe,CACf,CAAC;YACF,MAAM,CAAC,cAAc,CAAC,6BAA6B,CAAC,CAAC,oBAAoB,CACxE,UAAU,CACV,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;YAQpG,EAAE,CAAC,qBACH,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE9B,EAAE,CAAC,2BACH,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;YAElC,cAAc,CAAC,0BAGf,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,YAAY,CAAC,wBAAwB;gBAC7C,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;YAIH,MAAM,CACL,cAAc,CAAC,iCAAiC,CAChD,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sGAAsG,EAAE,KAAK,IAAI,EAAE;YAOrH,MAAM,cAAc,GAAG,EAAE,CAAC,qBAEzB,CAAC;YACF,cAAc,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE3C,EAAE,CAAC,2BACH,CAAC,qBAAqB,CAAC;gBACvB,SAAS,EAAE,eAAe;gBAC1B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,UAAU;aACuC,CAAC,CAAC;YAEtE,cAAc,CAAC,0BAGf,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;gBAC3C,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;YAKH,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAChE,MAAM,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAEpD,MAAM,CACL,cAAc,CAAC,iCAAiC,CAChD,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YAIzF,EAAE,CAAC,qBACH,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE9B,cAAc,CAAC,0BAGf,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC;YAE9B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,YAAY,CAAC,wBAAwB;gBAC7C,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;YAGH,MAAM,CACL,cAAc,CAAC,iCAAiC,CAChD,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YAOzF,EAAE,CAAC,qBACH,CAAC,iBAAiB,CAAC;gBACnB,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;aACkB,CAAC,CAAC;YAEjD,MAAM,cAAc,CAAC,cAAc,CAClC;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,cAAc,CAAC,0BAA0B,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACzE,MAAM,CACL,cAAc,CAAC,iCAAiC,CAChD,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,mBAAmB,GAAG,IAAI,cAAc,CAC7C,EAAE,EACF,IAAI,EACJ,OAAO,CAAC,MAAM,EACd,MAAM,EACN,IAAI,CACJ,CAAC;YAGD,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;aACkB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,cAAc,CACtD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,GAAG;gBACrB,SAAS,EAAE,WAAW;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,8JAA8J,EAAE,KAAK,IAAI,EAAE;YAE5K,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;aACgB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,SAAS,EAAE,WAAW;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gKAAgK,EAAE,KAAK,IAAI,EAAE;YAE9K,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;aACkB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+JAA+J,EAAE,KAAK,IAAI,EAAE;YAE7K,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;aACgB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8IAA8I,EAAE,KAAK,IAAI,EAAE;YAE5J,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE/D,MAAM,SAAS,GAAG,WAAW,CAAC;YAE9B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,CACT,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,0BAA0B;gBAClC,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,2IAA2I,EAAE,KAAK,IAAI,EAAE;YAEzJ,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE/D,MAAM,SAAS,GAAG,WAAW,CAAC;YAE9B,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,SAAS,CACT,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,0BAA0B;gBAClC,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,iIAAiI,EAAE,KAAK,IAAI,EAAE;YAChJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,SAAS,CACT,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,oIAAoI,EAAE,KAAK,IAAI,EAAE;YACnJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,CACT,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2FAA2F,EAAE,KAAK,IAAI,EAAE;YAC1G,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBAC9B;aACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,CACP,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,GAAG;aACrB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,4FAA4F,EAAE,KAAK,IAAI,EAAE;YAC3G,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;iBAC5B;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,CACP,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAaH,EAAE,CAAC,+HAA+H,EAAE,KAAK,IAAI,EAAE;YAC9I,MAAM,aAAa,GAAiB;gBACnC,IAAI,EAAE,gBAAgB,CAAC,KAAK;aAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBAC9B;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,EACT,aAAa,CACb,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;YACjH,MAAM,aAAa,GAAiB;gBACnC,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,aAAa,EAAE,IAAI;aACnB,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBAC9B;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,EACT,aAAa,CACb,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAMH,EAAE,CAAC,4FAA4F,EAAE,KAAK,IAAI,EAAE;YAC3G,MAAM,WAAW,GAAiB;gBACjC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;gBAC/B,WAAW,EAAE,WAAW,CAAC,GAAG;aAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,EACT,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;gBAC3C,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QA0CH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YAEpF,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;aACgB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,eAAe,CACf,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,SAAS,EAAE,WAAW;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;YAEpG,EAAE,CAAC,qBAA6B,CAAC,iBAAiB,CAAC;gBACnD,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;aACgB,CAAC,CAAC;YAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;iBACrC;aACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,EACX,SAAS,EACT,SAAS,CACT,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,SAAS,EAAE,WAAW;aACtB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAcH,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;YAC3D,EAAE,CAAC,0HAA0H,EAAE,KAAK,IAAI,EAAE;gBAGxI,EAAE,CAAC,qBACH,CAAC,iBAAiB,CAAC;oBACnB,SAAS,EAAE,WAAW;oBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;iBACkB,CAAC,CAAC;gBAGjD,MAAM,mBAAmB,GAAiB;oBACzC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;iBACd,CAAC;gBAElB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;oBACC,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE;wBACT,GAAG,mBAAmB;wBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;qBACrC;iBACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,WAAW,CACX,CAAC;gBAMF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACtB,KAAK,EAAE,IAAI;oBACX,IAAI,EAAE,WAAW,CAAC,GAAG;oBACrB,SAAS,EAAE,WAAW;iBACtB,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;gBAK/F,EAAE,CAAC,qBACH,CAAC,iBAAiB,CAAC;oBACnB,SAAS,EAAE,WAAW;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBACgB,CAAC,CAAC;gBAEjD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;oBACC,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE;wBACT,GAAG,mBAAmB;wBACtB,WAAW,EAAE,WAAW,CAAC,YAAY;qBACrC;iBACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,WAAW,EACX,SAAS,EACT,WAAW,CACX,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,mHAAmH,EAAE,KAAK,IAAI,EAAE;gBAKlI,MAAM,mBAAmB,GAAiB;oBACzC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;iBACd,CAAC;gBAElB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;oBACC,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE;wBACT,GAAG,mBAAmB;wBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;qBAC5B;iBACD,EACD,WAAW,CAAC,GAAG,EACf,OAAO,EACP,SAAS,EACT,mBAAmB,CACnB,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;gBAChF,MAAM,mBAAmB,GAAiB;oBACzC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;oBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;iBACd,CAAC;gBAElB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;oBACC,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE;wBACT,GAAG,mBAAmB;wBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;qBAC9B;iBACD,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,SAAS,EACT,mBAAmB,CACnB,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACxC,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC3F,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,IAAI,EACJ;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY;aACI,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,GAAG;aACV,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,IAAI,EACJ;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;aACY,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,IAAI;aACd,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;YACjF,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,KAAK,EACL;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY;aACI,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,EACH,uBAAuB,CACvB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,GAAG;gBACV,MAAM,EAAE,uBAAuB;aAC/B,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,wEAAwE,EAAE,GAAG,EAAE;YACjF,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,KAAK,EACL;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;aACY,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,SAAS,EACT,uBAAuB,CACvB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,KAAK;aACf,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC3D,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,IAAI,EACJ;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY;aACI,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,EACH,uBAAuB,CACvB,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,GAAG;aACV,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC9D,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,KAAK,EACL;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY;aACI,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,CACH,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,KAAK;gBACf,KAAK,EAAE,GAAG;aACV,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,0EAA0E,EAAE,GAAG,EAAE;YACnF,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,IAAI,EACJ;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;aACY,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,EACH,SAAS,EACT,aAAa,CACb,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,aAAa;aACxB,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACzD,MAAM,MAAM,GAAG,cAAc,CAAC,uBAAuB,CACpD,IAAI,EACJ;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,YAAY;aACI,EAC5B,GAAG,EAAE,CAAC,YAAY,EAClB,GAAG,EACH,SAAS,EACT,SAAS,CACT,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QACzC,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAEjD,UAAU,CAAC,GAAG,EAAE;YACf,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,iBAAiB,CACrE,MAAM,CACN,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YACnE,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1E,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAE/B,MAAM,cAAc,CAAC,wBAAwB,CAAC,WAAW,EAAE;gBAC1D,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,GAAG;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;QAKH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;YAClD,IAAI,kBAAkB,GAAG,KAAK,CAAC;YAC/B,IAAI,mCAAmC,GAAG,KAAK,CAAC;YAChD,IAAI,kBAAkB,GAAe,GAAG,EAAE,CAAC,SAAS,CAAC;YACrD,MAAM,eAAe,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;gBACrD,kBAAkB,GAAG,OAAO,CAAC;YAC9B,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,kBAAkB,CACnE,KAAK,IAAI,EAAE;gBACV,kBAAkB,GAAG,IAAI,CAAC;gBAC1B,MAAM,eAAe,CAAC;gBACtB,OAAO,IAAI,CAAC;YACb,CAAC,CACD,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,kBAAkB,CAAC,KAAK,IAAI,EAAE;gBAC/B,mCAAmC,GAAG,kBAAkB,CAAC;gBACzD,kBAAkB,EAAE,CAAC;gBACrB,OAAO,SAAS,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,MAAM,cAAc,CAAC,wBAAwB,CAAC,WAAW,EAAE;gBAC1D,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,GAAG;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,mCAAmC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC9C,MAAM,iBAAiB,GAAG;gBACzB,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gBAChC,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE,EAAE;gBACd,gBAAgB,EAAE,SAAS;gBAC3B,SAAS,EAAE,IAAI;aACS,CAAC;YAC1B,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,iBAAiB,CAClE,iBAAiB,CACjB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAW,CAAC,CAAC;YAE9C,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,wBAAwB,CAAC,IAAI,EAAE;gBACnE,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,GAAG;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YACvD,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC/D,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC,iBAAiB,CAClE,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAC5B,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAW,CAAC,CAAC;YAE3C,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,wBAAwB,CAAC,IAAI,EAAE;gBACnE,WAAW,EAAE,GAAG;gBAChB,IAAI,EAAE,GAAG;aACT,CAAC,CAAC;YAEH,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,aAAa,EAAE,CAAC;YAC5C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,wBAAwB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAC5B,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACxE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC7D,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC,iBAAiB,CACrE,IAAI,KAAK,CAAC,YAAY,CAAC,CACvB,CAAC;YACF,MAAM,MAAM,CACX,cAAc,CAAC,wBAAwB,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CACnE,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QAEtC,IAAI,SAAc,CAAC;QAEnB,UAAU,CAAC,KAAK,IAAI,EAAE;YACrB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,yCAAyC,CAAC,CAAC;YACpE,SAAS,GAAG,GAAG,CAAC,MAAM,CAAC;YACvB,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC9D,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,qBAAqB,CACxD,eAAe,EACf,SAAS,CACT,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,UAAU,GAAyB;gBACxC,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;gBAChC,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE,EAAE;gBACd,gBAAgB,EAAE,SAAS;gBAC3B,SAAS,EAAE,IAAI;aACf,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAEnD,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,qBAAqB,CACxD,eAAe,EACf;gBACC,GAAG,EAAE,IAAI;gBACT,WAAW,EAAE,KAAK;aAClB,CACD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACnC,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,SAAS,CAAC,CAAC,oBAAoB,CAAC,WAAW,EAAE;gBACnD,eAAe;gBACf,IAAI;gBACJ,KAAK;aACL,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;YACpE,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAEpE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,qBAAqB,CACxD,eAAe,EACf;gBACC,GAAG,EAAE,IAAI;gBACT,WAAW,EAAE,KAAK;aAClB,CACD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;YAC1B,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QAClC,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC;QACnE,MAAM,WAAW,GAAG,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;QAEnD,MAAM,mBAAmB,GAAQ;YAChC,SAAS,EAAE,SAAS;YACpB,SAAS,EAAE,WAAW;YACtB,GAAG,EAAE,UAAU;YACf,WAAW,EAAE,aAAa;SAC1B,CAAC;QAEF,UAAU,CAAC,GAAG,EAAE;YAEd,EAAU,CAAC,2BAA2B,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC5E,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAExB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2GAA2G,EAAE,KAAK,IAAI,EAAE;YAC1H,MAAM,oBAAoB,GAAiB;gBAC1C,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,WAAW,EAAE,WAAW,CAAC,KAAK;aAC9B,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAE5C,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;YAC/F,MAAM,eAAe,GAAiB;gBACrC,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,WAAW,EAAE,YAAY;aACzB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;YAEvC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;YACvG,MAAM,cAAc,GAAiB;gBACpC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;aAC/B,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC;YAEtC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;QASH,EAAE,CAAC,8GAA8G,EAAE,KAAK,IAAI,EAAE;YAC7H,MAAM,UAAU,GAAiB;gBAChC,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,aAAa,EAAE,IAAI;aACnB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAElC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpC,CAAC,CAAC,CAAC;QAOH,EAAE,CAAC,wFAAwF,EAAE,KAAK,IAAI,EAAE;YACvG,MAAM,gBAAgB,GAAiB;gBACtC,IAAI,EAAE,gBAAgB,CAAC,KAAK;gBAC5B,aAAa,EAAE,IAAI;aACnB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;YAExC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QASH,EAAE,CAAC,2GAA2G,EAAE,KAAK,IAAI,EAAE;YAC1H,MAAM,aAAa,GAAiB;gBACnC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;gBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,CAAC;gBACpB,aAAa,EAAE,IAAI;aACnB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YAErC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QAMH,EAAE,CAAC,gGAAgG,EAAE,KAAK,IAAI,EAAE;YAC/G,MAAM,aAAa,GAAiB;gBACnC,IAAI,EAAE,gBAAgB,CAAC,QAAQ;gBAC/B,WAAW,EAAE,WAAW,CAAC,KAAK;gBAC9B,iBAAiB,EAAE,CAAC;aACpB,CAAC;YACF,EAAE,CAAC,KAAK,CACP,cAAc,EACd,8BAA8B,CAC9B,CAAC,iBAAiB,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC;YAErC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,iBAAiB,CACpD,EAAwB,EACxB,mBAAmB,EACnB,aAAa,EACb,WAAW,CACX,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IASH,QAAQ,CAAC,qDAAqD,EAAE,GAAG,EAAE;QACpE,MAAM,cAAc,GAAG,CACtB,YAUK,EAAE,EACN,EAAE,CAAC,CAAC;YACL,EAAE,EAAE,SAAS;YACb,OAAO,EAAE,IAAa;YACtB,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,KAAK;YACZ,YAAY,EAAE,KAAK;YACnB,QAAQ,EAAE,KAAK;YACf,QAAQ,EAAE,KAAK;YACf,WAAW,EAAE,KAAK;YAClB,SAAS,EAAE,KAAK;YAChB,GAAG,SAAS;SACZ,CAAC,CAAC;QAEH,MAAM,iBAAiB,GAAG,CAEzB,QAA4B,EACN,EAAE,CACxB,CAAC;YACA,MAAM,EAAE,EAAE;YACV,aAAa,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE;SACnC,CAAmC,CAAC;QAEtC,EAAE,CAAC,0FAA0F,EAAE,KAAK,IAAI,EAAE;YACzG,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAC3D,iBAAiB,CAAC,GAAG,EAAE,CACtB,OAAO,CAAC,OAAO,CACd,cAAc,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAC/D,CACD,EACD,SAAS,EACT,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,mBAAmB,CAAC,KAAK,EAAE,EAAE,EACrD,SAAS,CACT,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;YAC5D,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gIAAgI,EAAE,KAAK,IAAI,EAAE;YAK/I,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAC3D,iBAAiB,CAAC,GAAG,EAAE,CACtB,OAAO,CAAC,OAAO,CACd,cAAc,CAAC,EAAE,YAAY,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC,CAC/D,CACD,EACD,SAAS,EACT;gBACC,UAAU,EAAE;oBACX,MAAM,EAAE,mBAAmB,CAAC,SAAS;oBACrC,WAAW,EAAE,WAAW,CAAC,KAAK;iBAC9B;aACD,EACD,SAAS,CACT,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qHAAqH,EAAE,KAAK,IAAI,EAAE;YAKpI,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAC3D,iBAAiB,CAAC,GAAG,EAAE,CACtB,OAAO,CAAC,OAAO,CACd,cAAc,CAAC;gBACd,QAAQ,EAAE,IAAI;gBACd,WAAW,EAAE,GAAG;gBAChB,kBAAkB,EAAE,GAAG;aACvB,CAAC,CACF,CACD,EACD,SAAS,EACT,EAAE,EACF,SAAS,CACT,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,KAAK,CAAC,SAAS,EAAE,CAAC;gBACrB,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,CAAC;YACxD,CAAC;QACF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YAClG,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,yBAAyB,CAC3D,iBAAiB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,EAC1D,SAAS,EACT,EAAE,EACF,SAAS,CACT,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAKH,QAAQ,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAE/C,MAAM,OAAO,GAAG,GAAuB,EAAE;YACxC,MAAM,KAAK,GAAI,MAAM,CAAC,IAAiC,CAAC,IAAI;iBAC1D,KAA6C,CAAC;YAChD,KAAK,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC;gBAC7B,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;gBACxB,IAAI,OAAO,CAAC,GAAG,KAAK,8BAA8B,EAAE,CAAC;oBACpD,OAAO,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC;gBAC5B,CAAC;YACF,CAAC;YACD,OAAO,SAAS,CAAC;QAClB,CAAC,CAAC;QAEF,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YACnF,MAAM,MAAM,GACX,MAAM,cAAc,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC;YAChE,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAE7E,cAAc,CAAC,iBACf,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC1B,MAAM,MAAM,GACX,MAAM,cAAc,CAAC,8BAA8B,CAAC,YAAY,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;YAE3F,cAAc,CAAC,iBACf,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAChC,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YACzE,MAAM,MAAM,GACX,MAAM,cAAc,CAAC,8BAA8B,CAAC,YAAY,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAC;YAC/B,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YAExE,cAAc,CAAC,iBACf,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAChC,EAAE,CAAC,KAAK,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC,eAAe,CAAC;gBAC7D,GAAG,EAAE,aAAa;gBAClB,WAAW,EAAE,cAAc;aAC3B,CAAC,CAAC;YACH,MAAM,MAAM,GACX,MAAM,cAAc,CAAC,8BAA8B,CAAC,YAAY,CAAC,CAAC;YACnE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,GAAG,EAAE,aAAa;gBAClB,WAAW,EAAE,cAAc;gBAC3B,QAAQ,EAAE,UAAU;aACpB,CAAC,CAAC;YACH,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decoderPool.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/detection/decoderPool.unit.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { afterEach, describe, expect, it } from "vitest";
|
|
2
|
+
import { DECODERS, decoderModuleUrl, } from "../../../../tasks/detection/decoderModules.js";
|
|
3
|
+
import { decode, shutdownDecoderPool, } from "../../../../tasks/detection/decoderPool.js";
|
|
4
|
+
const UNDECODABLE = [
|
|
5
|
+
"not-a-real-payload",
|
|
6
|
+
"headhash",
|
|
7
|
+
"key",
|
|
8
|
+
"innerConfig",
|
|
9
|
+
"payloadLayout",
|
|
10
|
+
"keyMap",
|
|
11
|
+
];
|
|
12
|
+
const inline = async (decoder) => {
|
|
13
|
+
const mod = (await import(decoderModuleUrl(decoder)));
|
|
14
|
+
try {
|
|
15
|
+
return `resolved:${JSON.stringify(await mod.default(...UNDECODABLE))}`;
|
|
16
|
+
}
|
|
17
|
+
catch (err) {
|
|
18
|
+
return `threw:${err instanceof Error ? err.message : String(err)}`;
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
const viaPool = async (decoder) => {
|
|
22
|
+
try {
|
|
23
|
+
return `resolved:${JSON.stringify(await decode(decoder, UNDECODABLE))}`;
|
|
24
|
+
}
|
|
25
|
+
catch (err) {
|
|
26
|
+
return `threw:${err instanceof Error ? err.message : String(err)}`;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
describe("decoder pool", () => {
|
|
30
|
+
afterEach(async () => {
|
|
31
|
+
await shutdownDecoderPool();
|
|
32
|
+
delete process.env.PROSOPO_DECODER_WORKERS;
|
|
33
|
+
delete process.env.PROSOPO_DECODER_TIMEOUT_MS;
|
|
34
|
+
});
|
|
35
|
+
it.each(DECODERS)("gives the same answer as decoding inline (%s)", async (decoder) => {
|
|
36
|
+
expect(await viaPool(decoder)).toBe(await inline(decoder));
|
|
37
|
+
});
|
|
38
|
+
it("loads every decoder it claims to support", async () => {
|
|
39
|
+
for (const decoder of DECODERS) {
|
|
40
|
+
const outcome = await viaPool(decoder);
|
|
41
|
+
expect(outcome).not.toMatch(/Cannot find module|ERR_MODULE_NOT_FOUND/);
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
it("decodes inline when the pool is switched off", async () => {
|
|
45
|
+
process.env.PROSOPO_DECODER_WORKERS = "0";
|
|
46
|
+
expect(await viaPool("payload")).toBe(await inline("payload"));
|
|
47
|
+
});
|
|
48
|
+
it("survives concurrent calls across the pool", async () => {
|
|
49
|
+
const expected = await inline("simd");
|
|
50
|
+
const results = await Promise.all(Array.from({ length: 24 }, () => viaPool("simd")));
|
|
51
|
+
expect(results.every((r) => r === expected)).toBe(true);
|
|
52
|
+
});
|
|
53
|
+
it("rejects rather than hanging when a decode overruns", async () => {
|
|
54
|
+
process.env.PROSOPO_DECODER_TIMEOUT_MS = "1";
|
|
55
|
+
const outcome = await viaPool("behaviour");
|
|
56
|
+
expect(outcome).toMatch(/threw:/);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
//# sourceMappingURL=decoderPool.unit.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"decoderPool.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/detection/decoderPool.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { beforeEach, describe, expect, it, vi } from "vitest";
|
|
2
|
-
import * as
|
|
2
|
+
import * as decoderPool from "../../../../tasks/detection/decoderPool.js";
|
|
3
3
|
import { getBotScore, sanitiseDetectorData, } from "../../../../tasks/detection/getBotScore.js";
|
|
4
|
-
vi.mock("../../../../tasks/detection/
|
|
5
|
-
|
|
4
|
+
vi.mock("../../../../tasks/detection/decoderPool.js", () => ({
|
|
5
|
+
decode: vi.fn(),
|
|
6
6
|
}));
|
|
7
7
|
describe("getBotScore", () => {
|
|
8
8
|
beforeEach(() => {
|
|
9
9
|
vi.clearAllMocks();
|
|
10
10
|
});
|
|
11
|
-
it("returns bot score with all fields when
|
|
11
|
+
it("returns bot score with all fields when the decoder succeeds", async () => {
|
|
12
12
|
const mockResult = {
|
|
13
13
|
score: 0.85,
|
|
14
14
|
timestamp: 1234567890,
|
|
@@ -18,7 +18,7 @@ describe("getBotScore", () => {
|
|
|
18
18
|
isIframe: true,
|
|
19
19
|
decryptedHeadHash: "hash123",
|
|
20
20
|
};
|
|
21
|
-
vi.mocked(
|
|
21
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
22
22
|
const result = await getBotScore("payload", "headHash", "privateKey");
|
|
23
23
|
expect(result).toEqual({
|
|
24
24
|
baseBotScore: 0.85,
|
|
@@ -32,14 +32,21 @@ describe("getBotScore", () => {
|
|
|
32
32
|
shadowDomPenalty: undefined,
|
|
33
33
|
d: undefined,
|
|
34
34
|
});
|
|
35
|
-
expect(
|
|
35
|
+
expect(decoderPool.decode).toHaveBeenCalledWith("payload", [
|
|
36
|
+
"payload",
|
|
37
|
+
"headHash",
|
|
38
|
+
"privateKey",
|
|
39
|
+
undefined,
|
|
40
|
+
undefined,
|
|
41
|
+
undefined,
|
|
42
|
+
]);
|
|
36
43
|
});
|
|
37
44
|
it("returns default values when baseBotScore is undefined", async () => {
|
|
38
45
|
const mockResult = {
|
|
39
46
|
score: undefined,
|
|
40
47
|
timestamp: 1234567890,
|
|
41
48
|
};
|
|
42
|
-
vi.mocked(
|
|
49
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
43
50
|
const result = await getBotScore("payload", "headHash");
|
|
44
51
|
expect(result).toEqual({
|
|
45
52
|
baseBotScore: 1,
|
|
@@ -54,7 +61,7 @@ describe("getBotScore", () => {
|
|
|
54
61
|
score: 0.5,
|
|
55
62
|
timestamp: 1234567890,
|
|
56
63
|
};
|
|
57
|
-
vi.mocked(
|
|
64
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
58
65
|
const result = await getBotScore("payload", "headHash");
|
|
59
66
|
expect(result).toEqual({
|
|
60
67
|
baseBotScore: 0.5,
|
|
@@ -78,7 +85,7 @@ describe("getBotScore", () => {
|
|
|
78
85
|
nested: { k1: 3, k2: [true, false] },
|
|
79
86
|
},
|
|
80
87
|
};
|
|
81
|
-
vi.mocked(
|
|
88
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
82
89
|
const result = await getBotScore("payload", "headHash");
|
|
83
90
|
expect(result.d).toEqual({
|
|
84
91
|
aKeyThisRepoDoesNotKnow: "yes",
|
|
@@ -91,7 +98,7 @@ describe("getBotScore", () => {
|
|
|
91
98
|
timestamp: 1234567890,
|
|
92
99
|
d: {},
|
|
93
100
|
};
|
|
94
|
-
vi.mocked(
|
|
101
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
95
102
|
const result = await getBotScore("payload", "headHash");
|
|
96
103
|
expect(result.d).toBeUndefined();
|
|
97
104
|
});
|
|
@@ -101,7 +108,7 @@ describe("getBotScore", () => {
|
|
|
101
108
|
timestamp: 1234567890,
|
|
102
109
|
d: { ok: 1, "has.dot": 2 },
|
|
103
110
|
};
|
|
104
|
-
vi.mocked(
|
|
111
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
105
112
|
const result = await getBotScore("payload", "headHash");
|
|
106
113
|
expect(result.d).toEqual({ ok: 1 });
|
|
107
114
|
});
|
|
@@ -111,7 +118,7 @@ describe("getBotScore", () => {
|
|
|
111
118
|
timestamp: 1234567890,
|
|
112
119
|
isWebView: undefined,
|
|
113
120
|
};
|
|
114
|
-
vi.mocked(
|
|
121
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
115
122
|
const result = await getBotScore("payload", "headHash");
|
|
116
123
|
expect(result.isWebView).toBe(false);
|
|
117
124
|
});
|
|
@@ -121,7 +128,7 @@ describe("getBotScore", () => {
|
|
|
121
128
|
timestamp: 1234567890,
|
|
122
129
|
isIframe: undefined,
|
|
123
130
|
};
|
|
124
|
-
vi.mocked(
|
|
131
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
125
132
|
const result = await getBotScore("payload", "headHash");
|
|
126
133
|
expect(result.isIframe).toBe(false);
|
|
127
134
|
});
|
|
@@ -130,11 +137,18 @@ describe("getBotScore", () => {
|
|
|
130
137
|
score: 0.5,
|
|
131
138
|
timestamp: 1234567890,
|
|
132
139
|
};
|
|
133
|
-
vi.mocked(
|
|
140
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
134
141
|
await getBotScore("testPayload", "testHeadHash", "testPrivateKey", "innerConfig", "layout", "keyMap");
|
|
135
|
-
expect(
|
|
142
|
+
expect(decoderPool.decode).toHaveBeenCalledWith("payload", [
|
|
143
|
+
"testPayload",
|
|
144
|
+
"testHeadHash",
|
|
145
|
+
"testPrivateKey",
|
|
146
|
+
"innerConfig",
|
|
147
|
+
"layout",
|
|
148
|
+
"keyMap",
|
|
149
|
+
]);
|
|
136
150
|
});
|
|
137
|
-
it("calls
|
|
151
|
+
it("calls the decoder without privateKey when not provided", async () => {
|
|
138
152
|
const mockResult = {
|
|
139
153
|
score: 0.5,
|
|
140
154
|
timestamp: 1234567890,
|
|
@@ -142,9 +156,16 @@ describe("getBotScore", () => {
|
|
|
142
156
|
userAgent: "",
|
|
143
157
|
decryptedHeadHash: "",
|
|
144
158
|
};
|
|
145
|
-
vi.mocked(
|
|
159
|
+
vi.mocked(decoderPool.decode).mockResolvedValue(mockResult);
|
|
146
160
|
await getBotScore("testPayload", "testHeadHash");
|
|
147
|
-
expect(
|
|
161
|
+
expect(decoderPool.decode).toHaveBeenCalledWith("payload", [
|
|
162
|
+
"testPayload",
|
|
163
|
+
"testHeadHash",
|
|
164
|
+
undefined,
|
|
165
|
+
undefined,
|
|
166
|
+
undefined,
|
|
167
|
+
undefined,
|
|
168
|
+
]);
|
|
148
169
|
});
|
|
149
170
|
});
|
|
150
171
|
describe("sanitiseDetectorData", () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBotScore.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/detection/getBotScore.unit.test.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9D,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"getBotScore.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/detection/getBotScore.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nativeBackground.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/puzzle/nativeBackground.unit.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { createRequire } from "node:module";
|
|
2
|
+
import { DEFAULT_GEOMETRY, createPrng, generateBackground, } from "@prosopo/puzzle-assets";
|
|
3
|
+
import { describe, expect, it } from "vitest";
|
|
4
|
+
import { createBackgroundNative } from "../../../../tasks/puzzle/nativeBackground.js";
|
|
5
|
+
const require = createRequire(import.meta.url);
|
|
6
|
+
const native = require("@prosopo/native-puzzle");
|
|
7
|
+
const { width, height } = DEFAULT_GEOMETRY;
|
|
8
|
+
const SEEDS = [
|
|
9
|
+
"00000000000000000000000000000000",
|
|
10
|
+
"ffffffffffffffffffffffffffffffff",
|
|
11
|
+
"0123456789abcdef0123456789abcdef",
|
|
12
|
+
"fedcba9876543210fedcba9876543210",
|
|
13
|
+
"a3f1c07e9b2d48561f0e7c3a9d5b2648",
|
|
14
|
+
"7d4e2a19c8b30f5629ae41d7b06c8f35",
|
|
15
|
+
].map((hex) => Buffer.from(hex, "hex"));
|
|
16
|
+
describe("native puzzle background", () => {
|
|
17
|
+
it("matches the JS reference implementation byte for byte", () => {
|
|
18
|
+
for (const seed of SEEDS) {
|
|
19
|
+
const reference = generateBackground(createPrng(seed), width, height);
|
|
20
|
+
const actual = native.generateBackground(seed, width, height);
|
|
21
|
+
expect(actual.equals(reference.data), `seed ${seed.toString("hex")} diverged from @prosopo/puzzle-assets`).toBe(true);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
it("produces a fresh image per call", () => {
|
|
25
|
+
const first = createBackgroundNative(DEFAULT_GEOMETRY);
|
|
26
|
+
const second = createBackgroundNative(DEFAULT_GEOMETRY);
|
|
27
|
+
expect(first.data.equals(second.data)).toBe(false);
|
|
28
|
+
});
|
|
29
|
+
it("returns a correctly shaped RGBA buffer", () => {
|
|
30
|
+
const image = createBackgroundNative(DEFAULT_GEOMETRY);
|
|
31
|
+
expect(image.width).toBe(width);
|
|
32
|
+
expect(image.height).toBe(height);
|
|
33
|
+
expect(image.data.length).toBe(width * height * 4);
|
|
34
|
+
for (let i = 3; i < image.data.length; i += 4) {
|
|
35
|
+
expect(image.data[i]).toBe(255);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
it("honours a non-default geometry", () => {
|
|
39
|
+
const image = createBackgroundNative({
|
|
40
|
+
width: 64,
|
|
41
|
+
height: 32,
|
|
42
|
+
notchSize: 8,
|
|
43
|
+
});
|
|
44
|
+
expect(image.data.length).toBe(64 * 32 * 4);
|
|
45
|
+
});
|
|
46
|
+
it("rejects a seed shorter than the generator needs", () => {
|
|
47
|
+
expect(() => native.generateBackground(Buffer.alloc(8), width, height)).toThrow(/seed must be at least 16 bytes/);
|
|
48
|
+
});
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=nativeBackground.unit.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"nativeBackground.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/puzzle/nativeBackground.unit.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@prosopo/provider",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.12.1",
|
|
4
4
|
"author": "PROSOPO LIMITED <info@prosopo.io>",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -23,30 +23,31 @@
|
|
|
23
23
|
"dependencies": {
|
|
24
24
|
"@noble/hashes": "1.8.0",
|
|
25
25
|
"@polkadot/util": "14.0.3",
|
|
26
|
-
"@prosopo/api": "4.3.
|
|
27
|
-
"@prosopo/api-express-router": "3.1.
|
|
26
|
+
"@prosopo/api": "4.3.2",
|
|
27
|
+
"@prosopo/api-express-router": "3.1.92",
|
|
28
28
|
"@prosopo/api-route": "2.6.59",
|
|
29
29
|
"@prosopo/captcha-severity": "1.1.1",
|
|
30
|
-
"@prosopo/common": "3.1.
|
|
31
|
-
"@prosopo/database": "4.0.
|
|
32
|
-
"@prosopo/datasets": "3.1.
|
|
33
|
-
"@prosopo/env": "3.6.
|
|
34
|
-
"@prosopo/ipinfo": "0.4.
|
|
35
|
-
"@prosopo/keyring": "2.9.
|
|
36
|
-
"@prosopo/load-balancer": "2.10.
|
|
37
|
-
"@prosopo/locale": "3.
|
|
30
|
+
"@prosopo/common": "3.1.58",
|
|
31
|
+
"@prosopo/database": "4.0.38",
|
|
32
|
+
"@prosopo/datasets": "3.1.87",
|
|
33
|
+
"@prosopo/env": "3.6.61",
|
|
34
|
+
"@prosopo/ipinfo": "0.4.7",
|
|
35
|
+
"@prosopo/keyring": "2.9.94",
|
|
36
|
+
"@prosopo/load-balancer": "2.10.49",
|
|
37
|
+
"@prosopo/locale": "3.5.0",
|
|
38
38
|
"@prosopo/logger": "2.0.10",
|
|
39
39
|
"@prosopo/native-ja4": "0.0.6",
|
|
40
40
|
"@prosopo/native-merkle": "0.0.6",
|
|
41
|
+
"@prosopo/native-puzzle": "0.1.0",
|
|
41
42
|
"@prosopo/puzzle-assets": "0.1.4",
|
|
42
43
|
"@prosopo/redis-client": "1.0.36",
|
|
43
|
-
"@prosopo/types": "5.9.
|
|
44
|
-
"@prosopo/types-database": "5.6.
|
|
45
|
-
"@prosopo/types-env": "2.11.
|
|
46
|
-
"@prosopo/user-access-policy": "3.14.
|
|
44
|
+
"@prosopo/types": "5.9.2",
|
|
45
|
+
"@prosopo/types-database": "5.6.2",
|
|
46
|
+
"@prosopo/types-env": "2.11.7",
|
|
47
|
+
"@prosopo/user-access-policy": "3.14.8",
|
|
47
48
|
"@prosopo/util": "3.3.10",
|
|
48
|
-
"@prosopo/web-bot-auth": "0.1.1",
|
|
49
49
|
"@prosopo/util-crypto": "13.5.32",
|
|
50
|
+
"@prosopo/web-bot-auth": "0.1.1",
|
|
50
51
|
"cron": "3.1.7",
|
|
51
52
|
"express": "4.22.2",
|
|
52
53
|
"express-rate-limit": "7.4.0",
|
|
@@ -60,7 +61,7 @@
|
|
|
60
61
|
},
|
|
61
62
|
"devDependencies": {
|
|
62
63
|
"@noble/curves": "1.9.2",
|
|
63
|
-
"@prosopo/config": "3.
|
|
64
|
+
"@prosopo/config": "3.4.0",
|
|
64
65
|
"@types/node": "22.5.5",
|
|
65
66
|
"@types/pg": "8.23.1",
|
|
66
67
|
"@types/uuid": "11.0.0",
|