@prosopo/provider 5.14.0 → 5.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. package/.turbo/turbo-build$colon$cjs.log +62 -46
  2. package/.turbo/turbo-build$colon$tsc.log +37 -34
  3. package/.turbo/turbo-build.log +63 -50
  4. package/CHANGELOG.md +193 -0
  5. package/LICENSE +201 -0
  6. package/dist/api/admin/apiToggleMaintenanceModeEndpoint.d.ts +4 -0
  7. package/dist/api/admin/apiToggleMaintenanceModeEndpoint.d.ts.map +1 -1
  8. package/dist/api/admin/apiToggleMaintenanceModeEndpoint.js +63 -3
  9. package/dist/api/admin/apiToggleMaintenanceModeEndpoint.js.map +1 -1
  10. package/dist/api/blacklistRequestInspector.js +2 -2
  11. package/dist/api/captcha/getAudioCaptchaChallenge.d.ts +5 -0
  12. package/dist/api/captcha/getAudioCaptchaChallenge.d.ts.map +1 -0
  13. package/dist/api/captcha/getAudioCaptchaChallenge.js +37 -0
  14. package/dist/api/captcha/getAudioCaptchaChallenge.js.map +1 -0
  15. package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts +2 -1
  16. package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.d.ts.map +1 -1
  17. package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.js +11 -2
  18. package/dist/api/captcha/getFrictionlessCaptchaChallenge/constants.js.map +1 -1
  19. package/dist/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.js +1 -1
  20. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.d.ts.map +1 -1
  21. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js +26 -15
  22. package/dist/api/captcha/getFrictionlessCaptchaChallenge/handler.js.map +1 -1
  23. package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.d.ts +5 -0
  24. package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.d.ts.map +1 -0
  25. package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.js +20 -0
  26. package/dist/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.js.map +1 -0
  27. package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.d.ts.map +1 -1
  28. package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js +1 -0
  29. package/dist/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.js.map +1 -1
  30. package/dist/api/captcha/getIconOrderCaptchaChallenge.d.ts +5 -0
  31. package/dist/api/captcha/getIconOrderCaptchaChallenge.d.ts.map +1 -0
  32. package/dist/api/captcha/getIconOrderCaptchaChallenge.js +37 -0
  33. package/dist/api/captcha/getIconOrderCaptchaChallenge.js.map +1 -0
  34. package/dist/api/captcha/getImageCaptchaChallenge.js +2 -2
  35. package/dist/api/captcha/getPoWCaptchaChallenge.js +4 -4
  36. package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts +1 -3
  37. package/dist/api/captcha/getPuzzleCaptchaChallenge.d.ts.map +1 -1
  38. package/dist/api/captcha/getPuzzleCaptchaChallenge.js +53 -146
  39. package/dist/api/captcha/getPuzzleCaptchaChallenge.js.map +1 -1
  40. package/dist/api/captcha/interactiveCaptchaChallenge.d.ts +42 -0
  41. package/dist/api/captcha/interactiveCaptchaChallenge.d.ts.map +1 -0
  42. package/dist/api/captcha/interactiveCaptchaChallenge.js +154 -0
  43. package/dist/api/captcha/interactiveCaptchaChallenge.js.map +1 -0
  44. package/dist/api/captcha/interactiveCaptchaSolution.d.ts +14 -0
  45. package/dist/api/captcha/interactiveCaptchaSolution.d.ts.map +1 -0
  46. package/dist/api/captcha/interactiveCaptchaSolution.js +77 -0
  47. package/dist/api/captcha/interactiveCaptchaSolution.js.map +1 -0
  48. package/dist/api/captcha/maintenanceModeResponses.d.ts +4 -2
  49. package/dist/api/captcha/maintenanceModeResponses.d.ts.map +1 -1
  50. package/dist/api/captcha/maintenanceModeResponses.js +28 -1
  51. package/dist/api/captcha/maintenanceModeResponses.js.map +1 -1
  52. package/dist/api/captcha/submitAudioCaptchaSolution.d.ts +4 -0
  53. package/dist/api/captcha/submitAudioCaptchaSolution.d.ts.map +1 -0
  54. package/dist/api/captcha/submitAudioCaptchaSolution.js +11 -0
  55. package/dist/api/captcha/submitAudioCaptchaSolution.js.map +1 -0
  56. package/dist/api/captcha/submitIconOrderCaptchaSolution.d.ts +4 -0
  57. package/dist/api/captcha/submitIconOrderCaptchaSolution.d.ts.map +1 -0
  58. package/dist/api/captcha/submitIconOrderCaptchaSolution.js +11 -0
  59. package/dist/api/captcha/submitIconOrderCaptchaSolution.js.map +1 -0
  60. package/dist/api/captcha/submitPoWCaptchaSolution.d.ts +4 -11
  61. package/dist/api/captcha/submitPoWCaptchaSolution.d.ts.map +1 -1
  62. package/dist/api/captcha/submitPoWCaptchaSolution.js +13 -18
  63. package/dist/api/captcha/submitPoWCaptchaSolution.js.map +1 -1
  64. package/dist/api/captcha/submitPuzzleCaptchaSolution.d.ts +1 -3
  65. package/dist/api/captcha/submitPuzzleCaptchaSolution.d.ts.map +1 -1
  66. package/dist/api/captcha/submitPuzzleCaptchaSolution.js +6 -73
  67. package/dist/api/captcha/submitPuzzleCaptchaSolution.js.map +1 -1
  68. package/dist/api/captcha/trafficFilterRequestTime.d.ts +4 -1
  69. package/dist/api/captcha/trafficFilterRequestTime.d.ts.map +1 -1
  70. package/dist/api/captcha/trafficFilterRequestTime.js +3 -0
  71. package/dist/api/captcha/trafficFilterRequestTime.js.map +1 -1
  72. package/dist/api/captcha.d.ts.map +1 -1
  73. package/dist/api/captcha.js +8 -0
  74. package/dist/api/captcha.js.map +1 -1
  75. package/dist/api/domainMiddleware.js +1 -1
  76. package/dist/api/ja4Middleware.js +1 -1
  77. package/dist/api/rawTlsSignalsMiddleware.d.ts +14 -1
  78. package/dist/api/rawTlsSignalsMiddleware.d.ts.map +1 -1
  79. package/dist/api/rawTlsSignalsMiddleware.js +111 -23
  80. package/dist/api/rawTlsSignalsMiddleware.js.map +1 -1
  81. package/dist/api/startProviderApi.js +2 -2
  82. package/dist/api/verify.d.ts.map +1 -1
  83. package/dist/api/verify.js +153 -96
  84. package/dist/api/verify.js.map +1 -1
  85. package/dist/cjs/api/admin/apiToggleMaintenanceModeEndpoint.cjs +65 -2
  86. package/dist/cjs/api/blacklistRequestInspector.cjs +2 -2
  87. package/dist/cjs/api/captcha/getAudioCaptchaChallenge.cjs +37 -0
  88. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/constants.cjs +10 -0
  89. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/decisionMachine.cjs +1 -1
  90. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/handler.cjs +25 -14
  91. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.cjs +20 -0
  92. package/dist/cjs/api/captcha/getFrictionlessCaptchaChallenge/shortCircuit.cjs +1 -0
  93. package/dist/cjs/api/captcha/getIconOrderCaptchaChallenge.cjs +37 -0
  94. package/dist/cjs/api/captcha/getImageCaptchaChallenge.cjs +2 -2
  95. package/dist/cjs/api/captcha/getPoWCaptchaChallenge.cjs +4 -4
  96. package/dist/cjs/api/captcha/getPuzzleCaptchaChallenge.cjs +52 -145
  97. package/dist/cjs/api/captcha/interactiveCaptchaChallenge.cjs +154 -0
  98. package/dist/cjs/api/captcha/interactiveCaptchaSolution.cjs +77 -0
  99. package/dist/cjs/api/captcha/maintenanceModeResponses.cjs +29 -0
  100. package/dist/cjs/api/captcha/submitAudioCaptchaSolution.cjs +11 -0
  101. package/dist/cjs/api/captcha/submitIconOrderCaptchaSolution.cjs +11 -0
  102. package/dist/cjs/api/captcha/submitPoWCaptchaSolution.cjs +11 -16
  103. package/dist/cjs/api/captcha/submitPuzzleCaptchaSolution.cjs +6 -73
  104. package/dist/cjs/api/captcha/trafficFilterRequestTime.cjs +3 -0
  105. package/dist/cjs/api/captcha.cjs +8 -0
  106. package/dist/cjs/api/domainMiddleware.cjs +1 -1
  107. package/dist/cjs/api/ja4Middleware.cjs +1 -1
  108. package/dist/cjs/api/rawTlsSignalsMiddleware.cjs +111 -22
  109. package/dist/cjs/api/startProviderApi.cjs +2 -2
  110. package/dist/cjs/api/verify.cjs +152 -95
  111. package/dist/cjs/compositeIpAddress.cjs +21 -7
  112. package/dist/cjs/index.cjs +1 -1
  113. package/dist/cjs/tasks/audio/audioBuffer.cjs +72 -0
  114. package/dist/cjs/tasks/audio/audioRenderer.cjs +32 -0
  115. package/dist/cjs/tasks/audioAlternative.cjs +23 -0
  116. package/dist/cjs/tasks/audioCaptcha/audioTasks.cjs +65 -0
  117. package/dist/cjs/tasks/audioCaptcha/audioTasksUtils.cjs +19 -0
  118. package/dist/cjs/tasks/captchaManager.cjs +28 -1
  119. package/dist/cjs/tasks/captchaTypeSelection.cjs +31 -3
  120. package/dist/cjs/tasks/client/clientTasks.cjs +2 -2
  121. package/dist/cjs/tasks/frictionless/frictionlessTasks.cjs +49 -26
  122. package/dist/cjs/tasks/iconOrder/iconOrderRenderer.cjs +42 -0
  123. package/dist/cjs/tasks/iconOrderCaptcha/iconOrderTasks.cjs +69 -0
  124. package/dist/cjs/tasks/imgCaptcha/imgCaptchaTasks.cjs +10 -17
  125. package/dist/cjs/tasks/interactiveCaptcha/interactiveCaptchaManager.cjs +423 -0
  126. package/dist/cjs/tasks/powCaptcha/powTasks.cjs +15 -19
  127. package/dist/cjs/tasks/powCaptcha/powTasksUtils.cjs +3 -1
  128. package/dist/cjs/tasks/puzzle/backgroundBuffer.cjs +3 -3
  129. package/dist/cjs/tasks/puzzle/nativeBackground.cjs +12 -5
  130. package/dist/cjs/tasks/puzzle/puzzleRenderer.cjs +4 -3
  131. package/dist/cjs/tasks/puzzleCaptcha/puzzleTasks.cjs +40 -493
  132. package/dist/cjs/tasks/spam/checkTrafficFilter.cjs +18 -1
  133. package/dist/cjs/tasks/tasks.cjs +6 -0
  134. package/dist/cjs/util.cjs +1 -1
  135. package/dist/compositeIpAddress.d.ts.map +1 -1
  136. package/dist/compositeIpAddress.js +21 -7
  137. package/dist/compositeIpAddress.js.map +1 -1
  138. package/dist/index.js +2 -2
  139. package/dist/tasks/audio/audioBuffer.d.ts +23 -0
  140. package/dist/tasks/audio/audioBuffer.d.ts.map +1 -0
  141. package/dist/tasks/audio/audioBuffer.js +70 -0
  142. package/dist/tasks/audio/audioBuffer.js.map +1 -0
  143. package/dist/tasks/audio/audioRenderer.d.ts +11 -0
  144. package/dist/tasks/audio/audioRenderer.d.ts.map +1 -0
  145. package/dist/tasks/audio/audioRenderer.js +31 -0
  146. package/dist/tasks/audio/audioRenderer.js.map +1 -0
  147. package/dist/tasks/audioAlternative.d.ts +8 -0
  148. package/dist/tasks/audioAlternative.d.ts.map +1 -0
  149. package/dist/tasks/audioAlternative.js +20 -0
  150. package/dist/tasks/audioAlternative.js.map +1 -0
  151. package/dist/tasks/audioCaptcha/audioTasks.d.ts +19 -0
  152. package/dist/tasks/audioCaptcha/audioTasks.d.ts.map +1 -0
  153. package/dist/tasks/audioCaptcha/audioTasks.js +65 -0
  154. package/dist/tasks/audioCaptcha/audioTasks.js.map +1 -0
  155. package/dist/tasks/audioCaptcha/audioTasksUtils.d.ts +3 -0
  156. package/dist/tasks/audioCaptcha/audioTasksUtils.d.ts.map +1 -0
  157. package/dist/tasks/audioCaptcha/audioTasksUtils.js +18 -0
  158. package/dist/tasks/audioCaptcha/audioTasksUtils.js.map +1 -0
  159. package/dist/tasks/captchaManager.d.ts +9 -3
  160. package/dist/tasks/captchaManager.d.ts.map +1 -1
  161. package/dist/tasks/captchaManager.js +29 -2
  162. package/dist/tasks/captchaManager.js.map +1 -1
  163. package/dist/tasks/captchaTypeSelection.d.ts +4 -2
  164. package/dist/tasks/captchaTypeSelection.d.ts.map +1 -1
  165. package/dist/tasks/captchaTypeSelection.js +32 -5
  166. package/dist/tasks/captchaTypeSelection.js.map +1 -1
  167. package/dist/tasks/client/clientTasks.js +2 -2
  168. package/dist/tasks/frictionless/frictionlessTasks.d.ts +6 -1
  169. package/dist/tasks/frictionless/frictionlessTasks.d.ts.map +1 -1
  170. package/dist/tasks/frictionless/frictionlessTasks.js +51 -28
  171. package/dist/tasks/frictionless/frictionlessTasks.js.map +1 -1
  172. package/dist/tasks/frictionless/routingMachine.d.ts +1 -2
  173. package/dist/tasks/frictionless/routingMachine.d.ts.map +1 -1
  174. package/dist/tasks/frictionless/routingMachine.js.map +1 -1
  175. package/dist/tasks/iconOrder/iconOrderRenderer.d.ts +12 -0
  176. package/dist/tasks/iconOrder/iconOrderRenderer.d.ts.map +1 -0
  177. package/dist/tasks/iconOrder/iconOrderRenderer.js +40 -0
  178. package/dist/tasks/iconOrder/iconOrderRenderer.js.map +1 -0
  179. package/dist/tasks/iconOrderCaptcha/iconOrderTasks.d.ts +22 -0
  180. package/dist/tasks/iconOrderCaptcha/iconOrderTasks.d.ts.map +1 -0
  181. package/dist/tasks/iconOrderCaptcha/iconOrderTasks.js +69 -0
  182. package/dist/tasks/iconOrderCaptcha/iconOrderTasks.js.map +1 -0
  183. package/dist/tasks/imgCaptcha/imgCaptchaTasks.d.ts.map +1 -1
  184. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js +10 -17
  185. package/dist/tasks/imgCaptcha/imgCaptchaTasks.js.map +1 -1
  186. package/dist/tasks/interactiveCaptcha/interactiveCaptchaManager.d.ts +52 -0
  187. package/dist/tasks/interactiveCaptcha/interactiveCaptchaManager.d.ts.map +1 -0
  188. package/dist/tasks/interactiveCaptcha/interactiveCaptchaManager.js +423 -0
  189. package/dist/tasks/interactiveCaptcha/interactiveCaptchaManager.js.map +1 -0
  190. package/dist/tasks/powCaptcha/powTasks.d.ts.map +1 -1
  191. package/dist/tasks/powCaptcha/powTasks.js +15 -19
  192. package/dist/tasks/powCaptcha/powTasks.js.map +1 -1
  193. package/dist/tasks/powCaptcha/powTasksUtils.d.ts +1 -0
  194. package/dist/tasks/powCaptcha/powTasksUtils.d.ts.map +1 -1
  195. package/dist/tasks/powCaptcha/powTasksUtils.js +3 -2
  196. package/dist/tasks/powCaptcha/powTasksUtils.js.map +1 -1
  197. package/dist/tasks/puzzle/backgroundBuffer.d.ts +3 -2
  198. package/dist/tasks/puzzle/backgroundBuffer.d.ts.map +1 -1
  199. package/dist/tasks/puzzle/backgroundBuffer.js +3 -3
  200. package/dist/tasks/puzzle/backgroundBuffer.js.map +1 -1
  201. package/dist/tasks/puzzle/nativeBackground.d.ts +5 -1
  202. package/dist/tasks/puzzle/nativeBackground.d.ts.map +1 -1
  203. package/dist/tasks/puzzle/nativeBackground.js +12 -5
  204. package/dist/tasks/puzzle/nativeBackground.js.map +1 -1
  205. package/dist/tasks/puzzle/puzzleRenderer.d.ts +2 -0
  206. package/dist/tasks/puzzle/puzzleRenderer.d.ts.map +1 -1
  207. package/dist/tasks/puzzle/puzzleRenderer.js +4 -3
  208. package/dist/tasks/puzzle/puzzleRenderer.js.map +1 -1
  209. package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts +14 -16
  210. package/dist/tasks/puzzleCaptcha/puzzleTasks.d.ts.map +1 -1
  211. package/dist/tasks/puzzleCaptcha/puzzleTasks.js +41 -494
  212. package/dist/tasks/puzzleCaptcha/puzzleTasks.js.map +1 -1
  213. package/dist/tasks/spam/checkTrafficFilter.d.ts +4 -1
  214. package/dist/tasks/spam/checkTrafficFilter.d.ts.map +1 -1
  215. package/dist/tasks/spam/checkTrafficFilter.js +18 -1
  216. package/dist/tasks/spam/checkTrafficFilter.js.map +1 -1
  217. package/dist/tasks/tasks.d.ts +4 -0
  218. package/dist/tasks/tasks.d.ts.map +1 -1
  219. package/dist/tasks/tasks.js +6 -0
  220. package/dist/tasks/tasks.js.map +1 -1
  221. package/dist/tests/integration/api/admin/apiRegisterSiteKeyEndpoint.integration.test.js +7 -3
  222. package/dist/tests/integration/api/admin/apiRegisterSiteKeyEndpoint.integration.test.js.map +1 -1
  223. package/dist/tests/integration/clientSettingsPersistence.integration.test.js +44 -2
  224. package/dist/tests/integration/clientSettingsPersistence.integration.test.js.map +1 -1
  225. package/dist/tests/unit/api/admin/apiRegisterSiteKeyEndpoint.unit.test.js +4 -2
  226. package/dist/tests/unit/api/admin/apiRegisterSiteKeyEndpoint.unit.test.js.map +1 -1
  227. package/dist/tests/unit/api/admin/apiToggleMaintenanceModeEndpoint.unit.test.js +76 -1
  228. package/dist/tests/unit/api/admin/apiToggleMaintenanceModeEndpoint.unit.test.js.map +1 -1
  229. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/constants.unit.test.js +54 -2
  230. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/constants.unit.test.js.map +1 -1
  231. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.d.ts +2 -0
  232. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.d.ts.map +1 -0
  233. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.js +45 -0
  234. package/dist/tests/unit/api/captcha/getFrictionlessCaptchaChallenge/refreshLineage.unit.test.js.map +1 -0
  235. package/dist/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.js +20 -0
  236. package/dist/tests/unit/api/captcha/maintenanceModeShortCircuit.unit.test.js.map +1 -1
  237. package/dist/tests/unit/api/captcha/submitPoWCaptchaSolution.escalation.unit.test.js +15 -1
  238. package/dist/tests/unit/api/captcha/submitPoWCaptchaSolution.escalation.unit.test.js.map +1 -1
  239. package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js +174 -0
  240. package/dist/tests/unit/api/getFrictionlessCaptchaChallenge.unit.test.js.map +1 -1
  241. package/dist/tests/unit/api/rawTlsSignalsMiddleware.unit.test.js +96 -1
  242. package/dist/tests/unit/api/rawTlsSignalsMiddleware.unit.test.js.map +1 -1
  243. package/dist/tests/unit/compositeIpAddress.unit.test.js +12 -3
  244. package/dist/tests/unit/compositeIpAddress.unit.test.js.map +1 -1
  245. package/dist/tests/unit/tasks/audio/audioBuffer.unit.test.d.ts +2 -0
  246. package/dist/tests/unit/tasks/audio/audioBuffer.unit.test.d.ts.map +1 -0
  247. package/dist/tests/unit/tasks/audio/audioBuffer.unit.test.js +105 -0
  248. package/dist/tests/unit/tasks/audio/audioBuffer.unit.test.js.map +1 -0
  249. package/dist/tests/unit/tasks/audioAlternative.unit.test.d.ts +2 -0
  250. package/dist/tests/unit/tasks/audioAlternative.unit.test.d.ts.map +1 -0
  251. package/dist/tests/unit/tasks/audioAlternative.unit.test.js +76 -0
  252. package/dist/tests/unit/tasks/audioAlternative.unit.test.js.map +1 -0
  253. package/dist/tests/unit/tasks/audioCaptcha/audioTasks.unit.test.d.ts +2 -0
  254. package/dist/tests/unit/tasks/audioCaptcha/audioTasks.unit.test.d.ts.map +1 -0
  255. package/dist/tests/unit/tasks/audioCaptcha/audioTasks.unit.test.js +259 -0
  256. package/dist/tests/unit/tasks/audioCaptcha/audioTasks.unit.test.js.map +1 -0
  257. package/dist/tests/unit/tasks/audioCaptcha/audioTasksUtils.unit.test.d.ts +2 -0
  258. package/dist/tests/unit/tasks/audioCaptcha/audioTasksUtils.unit.test.d.ts.map +1 -0
  259. package/dist/tests/unit/tasks/audioCaptcha/audioTasksUtils.unit.test.js +52 -0
  260. package/dist/tests/unit/tasks/audioCaptcha/audioTasksUtils.unit.test.js.map +1 -0
  261. package/dist/tests/unit/tasks/captchaManager.unit.test.js +171 -2
  262. package/dist/tests/unit/tasks/captchaManager.unit.test.js.map +1 -1
  263. package/dist/tests/unit/tasks/captchaTypeSelection.unit.test.js +68 -6
  264. package/dist/tests/unit/tasks/captchaTypeSelection.unit.test.js.map +1 -1
  265. package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.d.ts +2 -0
  266. package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.d.ts.map +1 -0
  267. package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.js +123 -0
  268. package/dist/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.js.map +1 -0
  269. package/dist/tests/unit/tasks/frictionless/frictionlessTasks.unit.test.js +31 -0
  270. package/dist/tests/unit/tasks/frictionless/frictionlessTasks.unit.test.js.map +1 -1
  271. package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.d.ts +2 -0
  272. package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.d.ts.map +1 -0
  273. package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.js +103 -0
  274. package/dist/tests/unit/tasks/frictionless/refreshSwitch.unit.test.js.map +1 -0
  275. package/dist/tests/unit/tasks/frictionless/routerPuzzleOverrides.unit.test.js +28 -0
  276. package/dist/tests/unit/tasks/frictionless/routerPuzzleOverrides.unit.test.js.map +1 -1
  277. package/dist/tests/unit/tasks/iconOrder/iconOrderRenderer.unit.test.d.ts +2 -0
  278. package/dist/tests/unit/tasks/iconOrder/iconOrderRenderer.unit.test.d.ts.map +1 -0
  279. package/dist/tests/unit/tasks/iconOrder/iconOrderRenderer.unit.test.js +60 -0
  280. package/dist/tests/unit/tasks/iconOrder/iconOrderRenderer.unit.test.js.map +1 -0
  281. package/dist/tests/unit/tasks/iconOrderCaptcha/iconOrderTasks.unit.test.d.ts +2 -0
  282. package/dist/tests/unit/tasks/iconOrderCaptcha/iconOrderTasks.unit.test.d.ts.map +1 -0
  283. package/dist/tests/unit/tasks/iconOrderCaptcha/iconOrderTasks.unit.test.js +225 -0
  284. package/dist/tests/unit/tasks/iconOrderCaptcha/iconOrderTasks.unit.test.js.map +1 -0
  285. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js +23 -1
  286. package/dist/tests/unit/tasks/powCaptcha/powTasksUtils.unit.test.js.map +1 -1
  287. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js +1 -4
  288. package/dist/tests/unit/tasks/puzzle/backgroundBuffer.unit.test.js.map +1 -1
  289. package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js +10 -3
  290. package/dist/tests/unit/tasks/puzzle/nativeBackground.unit.test.js.map +1 -1
  291. package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.d.ts +2 -0
  292. package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.d.ts.map +1 -0
  293. package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.js +35 -0
  294. package/dist/tests/unit/tasks/puzzle/puzzleRenderer.unit.test.js.map +1 -0
  295. package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.d.ts +2 -0
  296. package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.d.ts.map +1 -0
  297. package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.js +49 -0
  298. package/dist/tests/unit/tasks/puzzleDifficultyDeviceCap.unit.test.js.map +1 -0
  299. package/dist/tests/unit/testUtils/mockProviderEnv.d.ts +17 -14
  300. package/dist/tests/unit/testUtils/mockProviderEnv.d.ts.map +1 -1
  301. package/dist/tests/unit/testUtils/mockProviderEnv.js.map +1 -1
  302. package/dist/util.js +1 -1
  303. package/package.json +107 -103
@@ -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,EACN,aAAa,EAGb,yBAAyB,GACzB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACN,WAAW,EAGX,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,SAAS,EAAE,IAAI,EAAE;IACjE,OAAO,EAAE,EAAE;IACX,WAAW,EAAE,WAAW,CAAC,YAAY;IACrC,yBAAyB,EAAE,KAAK;IAChC,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,kBAAkB,EAAE,yBAAyB;IAC7C,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,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAC3C,MAAM,iBAAiB,GAAG,CACzB,WAAwB,EAC8B,EAAE,CAAC,CAAC;gBAC1D,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE;oBACT,GAAG,mBAAmB;oBACtB,WAAW;oBACX,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;iBAC1C;aACD,CAAC,CAAC;YAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;gBACvF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,iBAAiB,CAAC,WAAW,CAAC,MAAM,CAAC,EACrC,WAAW,CAAC,MAAM,EAClB,OAAO,CACP,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACtB,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;oBAC3C,IAAI,EAAE,WAAW,CAAC,MAAM;iBACxB,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;gBACrG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CAAC;oBACrD,SAAS,EAAE,WAAW;oBACtB,WAAW,EAAE,WAAW,CAAC,MAAM;iBACpB,CAAC,CAAC;gBAEd,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,iBAAiB,CAAC,WAAW,CAAC,YAAY,CAAC,EAC3C,WAAW,CAAC,MAAM,EAClB,OAAO,EACP,WAAW,CACX,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;oBACtB,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;oBAC3C,IAAI,EAAE,WAAW,CAAC,MAAM;iBACxB,CAAC,CAAC;gBACH,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YACzD,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;gBAC7C,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CAAC;oBACrD,SAAS,EAAE,WAAW;oBACtB,WAAW,EAAE,WAAW,CAAC,KAAK;iBACnB,CAAC,CAAC;gBAEd,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,iBAAiB,CAAC,WAAW,CAAC,YAAY,CAAC,EAC3C,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,CACX,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjC,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;gBACtD,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,MAAM;qBAC/B;iBACD,EACD,WAAW,CAAC,MAAM,EAClB,OAAO,CACP,CAAC;gBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;YACnE,CAAC,CAAC,CAAC;YAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;gBAC3B,MAAM,aAAa,GAAG,CACrB,uBAAkD,EACI,EAAE,CAAC,CAAC;oBAC1D,OAAO,EAAE,SAAS;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,QAAQ,EAAE;wBACT,GAAG,mBAAmB;wBACtB,WAAW,EAAE,WAAW,CAAC,SAAS;wBAClC,GAAG,CAAC,uBAAuB,IAAI,EAAE,uBAAuB,EAAE,CAAC;qBAC3D;iBACD,CAAC,CAAC;gBAEH,EAAE,CAAC,qEAAqE,EAAE,KAAK,IAAI,EAAE;oBACpF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,aAAa,EAAE,EACf,WAAW,CAAC,SAAS,EACrB,OAAO,CACP,CAAC;oBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;wBACtB,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;wBAC3C,IAAI,EAAE,WAAW,CAAC,SAAS;qBAC3B,CAAC,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,gFAAgF,EAAE,KAAK,IAAI,EAAE;oBAC/F,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CAAC;wBACrD,SAAS,EAAE,WAAW;wBACtB,WAAW,EAAE,WAAW,CAAC,SAAS;qBACvB,CAAC,CAAC;oBAEd,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,aAAa,EAAE,EACf,WAAW,CAAC,SAAS,EACrB,OAAO,EACP,WAAW,CACX,CAAC;oBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;wBACtB,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE,YAAY,CAAC,sBAAsB;wBAC3C,IAAI,EAAE,WAAW,CAAC,SAAS;qBAC3B,CAAC,CAAC;oBACH,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;gBACzD,CAAC,CAAC,CAAC;gBAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;oBACjE,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAClC,WAAW,CAAC,SAAS,EACrB,OAAO,CACP,CAAC;oBAEF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;wBACtB,KAAK,EAAE,IAAI;wBACX,IAAI,EAAE,WAAW,CAAC,SAAS;qBAC3B,CAAC,CAAC;gBACJ,CAAC,CAAC,CAAC;YACJ,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,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,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAG3E,MAAM,OAAO,GAA2D;gBACvE,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,OAAO,EAAE,iBAAiB;aAC1B,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CAAC,OAAkB,CAAC,CAAC;YAE1E,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,eAAe;gBACxB,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;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,OAAO,GAA2D;gBACvE,SAAS,EAAE,WAAW;gBACtB,WAAW,EAAE,WAAW,CAAC,GAAG;gBAC5B,OAAO,EAAE,SAAS;aAClB,CAAC;YACF,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CAAC,OAAkB,CAAC,CAAC;YAE1E,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,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,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,kDAAkD,EAAE,GAAG,EAAE;QACjE,MAAM,YAAY,GAAG,CACpB,yBAAkC,EAClC,gBAAgB,GAAG,IAAI,EACI,EAAE,CAAC,CAAC;YAC/B,GAAG,mBAAmB;YACtB,WAAW,EAAE,WAAW,CAAC,YAAY;YACrC,yBAAyB;YACzB,uBAAuB,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE;SACpD,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,CAAC,WAAwB,EAAW,EAAE,CACvD,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,WAAW,EAAE,CAAY,CAAC;QAEtD,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC3F,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EACrE,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,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,gDAAgD,EAAE,KAAK,IAAI,EAAE;YAC/D,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,SAAS,CAAC,CAChC,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EACrE,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oFAAoF,EAAE,KAAK,IAAI,EAAE;YACnG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,EAAE,EACtE,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,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;YACH,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uFAAuF,EAAE,KAAK,IAAI,EAAE;YACtG,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;aACnC,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,YAAY,CAAC,sBAAsB;gBAC3C,IAAI,EAAE,WAAW,CAAC,KAAK;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACxF,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD;gBACC,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,QAAQ,EAAE,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC;aACnC,EACD,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YACjF,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAC1B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EACrE,WAAW,CAAC,KAAK,EACjB,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC3E,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,iBAAiB,CACpD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAC5B,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EACrE,WAAW,CAAC,MAAM,EAClB,OAAO,EACP,WAAW,CACX,CAAC;YAEF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,cAAc,CACjD,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,EACrE,WAAW,CAAC,KAAK,EACjB,OAAO,CACP,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;YACH,MAAM,CAAC,EAAE,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,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,wDAAwD,EAAE,GAAG,EAAE;YAKjE,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,CAAC,CACD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACtB,MAAM,EAAE,YAAY;gBACpB,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,CAAC;aACR,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,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,SAAS,CACT,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACtD,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,CAAC,CACD,CAAC;YACF,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,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,mBAAmB,EAAE,GAAG,EAAE;QAClC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAI5D,MAAM,CACL,OAAO,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAC7D,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAClB,MAAM,CACL,OAAO,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CACrE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC9C,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC9D,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACnE,MAAM,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACtE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;YACzD,MAAM,CACL,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAC9D,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACf,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"}
@@ -1,16 +1,48 @@
1
- import { CaptchaType } from "@prosopo/types";
1
+ import { CaptchaType, resolveAllowedCaptchaTypes, } from "@prosopo/types";
2
2
  import { describe, expect, it } from "vitest";
3
- import { coerceToEnabledCaptchaType, } from "../../../tasks/captchaTypeSelection.js";
4
- const BOTH = { image: true, puzzle: true };
5
- const NO_IMAGE = { image: false, puzzle: true };
6
- const NO_PUZZLE = { image: true, puzzle: false };
7
- const NEITHER = { image: false, puzzle: false };
3
+ import { PUZZLE_REFRESHES_BEFORE_IMAGE, coerceToEnabledCaptchaType, switchTypeAfterRefreshes, } from "../../../tasks/captchaTypeSelection.js";
4
+ const BOTH = { image: true, puzzle: true, iconOrder: true };
5
+ const NO_IMAGE = {
6
+ image: false,
7
+ puzzle: true,
8
+ iconOrder: true,
9
+ };
10
+ const NO_PUZZLE = {
11
+ image: true,
12
+ puzzle: false,
13
+ iconOrder: false,
14
+ };
15
+ const NEITHER = {
16
+ image: false,
17
+ puzzle: false,
18
+ iconOrder: false,
19
+ };
8
20
  const ALL_TYPES = [
9
21
  CaptchaType.pow,
10
22
  CaptchaType.image,
11
23
  CaptchaType.puzzle,
12
24
  ];
13
25
  describe("coerceToEnabledCaptchaType", () => {
26
+ it("never serves icon-order to a site without the icon-order feature flag", () => {
27
+ const everyPreferenceOn = {
28
+ frictionlessTypes: { image: true, puzzle: true, iconOrder: true },
29
+ };
30
+ expect(coerceToEnabledCaptchaType(CaptchaType.iconOrder, resolveAllowedCaptchaTypes(everyPreferenceOn))).toBe(CaptchaType.puzzle);
31
+ expect(coerceToEnabledCaptchaType(CaptchaType.iconOrder, resolveAllowedCaptchaTypes({
32
+ ...everyPreferenceOn,
33
+ captchaTypeFeatureFlags: { iconOrder: false },
34
+ }))).toBe(CaptchaType.puzzle);
35
+ expect(coerceToEnabledCaptchaType(CaptchaType.iconOrder, undefined)).toBe(CaptchaType.puzzle);
36
+ });
37
+ it("serves icon-order once the feature flag is on and the owner has not turned it off", () => {
38
+ expect(coerceToEnabledCaptchaType(CaptchaType.iconOrder, resolveAllowedCaptchaTypes({
39
+ captchaTypeFeatureFlags: { iconOrder: true },
40
+ }))).toBe(CaptchaType.iconOrder);
41
+ expect(coerceToEnabledCaptchaType(CaptchaType.iconOrder, resolveAllowedCaptchaTypes({
42
+ frictionlessTypes: { iconOrder: false },
43
+ captchaTypeFeatureFlags: { iconOrder: true },
44
+ }))).toBe(CaptchaType.puzzle);
45
+ });
14
46
  it("passes every type through untouched when both are enabled", () => {
15
47
  for (const type of ALL_TYPES) {
16
48
  expect(coerceToEnabledCaptchaType(type, BOTH)).toBe(type);
@@ -45,10 +77,40 @@ describe("coerceToEnabledCaptchaType", () => {
45
77
  expect(coerceToEnabledCaptchaType(CaptchaType.image, { puzzle: false })).toBe(CaptchaType.image);
46
78
  expect(coerceToEnabledCaptchaType(CaptchaType.puzzle, { image: false })).toBe(CaptchaType.puzzle);
47
79
  });
80
+ it("never hands out audio, which is only reachable as the accessibility alternative", () => {
81
+ const requested = [
82
+ ...ALL_TYPES,
83
+ CaptchaType.iconOrder,
84
+ ];
85
+ for (const settings of [BOTH, NO_IMAGE, NO_PUZZLE, NEITHER, undefined]) {
86
+ for (const type of requested) {
87
+ expect(coerceToEnabledCaptchaType(type, settings)).not.toBe(CaptchaType.audio);
88
+ }
89
+ }
90
+ });
48
91
  it("only ever narrows — coercion cannot introduce an interactive type", () => {
49
92
  for (const types of [BOTH, NO_IMAGE, NO_PUZZLE, NEITHER]) {
50
93
  expect(coerceToEnabledCaptchaType(CaptchaType.pow, types)).toBe(CaptchaType.pow);
51
94
  }
52
95
  });
53
96
  });
97
+ describe("switchTypeAfterRefreshes", () => {
98
+ it("keeps the puzzle below the refresh limit", () => {
99
+ expect(switchTypeAfterRefreshes(CaptchaType.puzzle, PUZZLE_REFRESHES_BEFORE_IMAGE - 1, BOTH)).toBe(CaptchaType.puzzle);
100
+ });
101
+ it("keeps the puzzle when nothing was refreshed", () => {
102
+ expect(switchTypeAfterRefreshes(CaptchaType.puzzle, undefined, BOTH)).toBe(CaptchaType.puzzle);
103
+ });
104
+ it("serves image once the refresh limit is reached", () => {
105
+ expect(switchTypeAfterRefreshes(CaptchaType.puzzle, PUZZLE_REFRESHES_BEFORE_IMAGE, BOTH)).toBe(CaptchaType.image);
106
+ });
107
+ it("keeps the puzzle on a site with image disabled", () => {
108
+ expect(switchTypeAfterRefreshes(CaptchaType.puzzle, PUZZLE_REFRESHES_BEFORE_IMAGE + 5, NO_IMAGE)).toBe(CaptchaType.puzzle);
109
+ });
110
+ it("never moves image or pow, however many refreshes", () => {
111
+ for (const type of [CaptchaType.image, CaptchaType.pow]) {
112
+ expect(switchTypeAfterRefreshes(type, 100, BOTH)).toBe(type);
113
+ }
114
+ });
115
+ });
54
116
  //# sourceMappingURL=captchaTypeSelection.unit.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"captchaTypeSelection.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/tasks/captchaTypeSelection.unit.test.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,WAAW,EAA2B,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAEN,0BAA0B,GAC1B,MAAM,wCAAwC,CAAC;AAEhD,MAAM,IAAI,GAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AAC/D,MAAM,QAAQ,GAAuB,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;AACpE,MAAM,SAAS,GAAuB,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AACrE,MAAM,OAAO,GAAuB,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAEpE,MAAM,SAAS,GAA0B;IACxC,WAAW,CAAC,GAAG;IACf,WAAW,CAAC,KAAK;IACjB,WAAW,CAAC,MAAM;CAClB,CAAC;AAEF,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;IAC3C,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACpE,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,0BAA0B,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC3D,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;QAC3D,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,0BAA0B,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAC1D,WAAW,CAAC,KAAK,CACjB,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC9D,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CACnE,WAAW,CAAC,MAAM,CAClB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;QAC/D,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CACrE,WAAW,CAAC,KAAK,CACjB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACrE,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAClE,WAAW,CAAC,GAAG,CACf,CAAC;QACF,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CACnE,WAAW,CAAC,GAAG,CACf,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACpE,KAAK,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAC9D,WAAW,CAAC,GAAG,CACf,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QAGtE,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;YAC9B,MAAM,CAAC,0BAA0B,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChE,CAAC;IACF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;QACvE,MAAM,CACL,0BAA0B,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAChE,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC1B,MAAM,CACL,0BAA0B,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAChE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAI5E,KAAK,MAAM,KAAK,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;YAC1D,MAAM,CAAC,0BAA0B,CAAC,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAC9D,WAAW,CAAC,GAAG,CACf,CAAC;QACH,CAAC;IACF,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"captchaTypeSelection.unit.test.js","sourceRoot":"","sources":["../../../../src/tests/unit/tasks/captchaTypeSelection.unit.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=allowedCaptchaTypes.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allowedCaptchaTypes.unit.test.d.ts","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,123 @@
1
+ import { CaptchaType, FrictionlessPenalties, resolveAllowedCaptchaTypes, } from "@prosopo/types";
2
+ import { beforeEach, describe, expect, it, vi } from "vitest";
3
+ const { applyRouterMock } = vi.hoisted(() => ({
4
+ applyRouterMock: vi.fn(),
5
+ }));
6
+ vi.mock("../../../../tasks/frictionless/routingMachine.js", () => ({
7
+ applyRouter: applyRouterMock,
8
+ }));
9
+ import { getCompositeIpAddress } from "../../../../compositeIpAddress.js";
10
+ import { FrictionlessManager } from "../../../../tasks/frictionless/frictionlessTasks.js";
11
+ const SITE_KEY = "5EjTA28bKSbFPPyMbUjNtArxyqjwq38r1BapVmLZShaqEedV";
12
+ const PUZZLE_SWITCHED_OFF = resolveAllowedCaptchaTypes({
13
+ captchaTypeFeatureFlags: { puzzle: false },
14
+ });
15
+ describe("FrictionlessManager allowed captcha types", () => {
16
+ let storeSessionRecord;
17
+ const storedCaptchaType = () => {
18
+ const call = storeSessionRecord.mock.calls[0];
19
+ if (!call)
20
+ throw new Error("no session was stored");
21
+ return call[0].captchaType;
22
+ };
23
+ const buildManager = () => {
24
+ const db = { storeSessionRecord };
25
+ const pair = {
26
+ sign: vi.fn(),
27
+ address: "testAddress",
28
+ };
29
+ const config = {
30
+ penalties: FrictionlessPenalties.parse({}),
31
+ captchas: { solved: { count: 2 }, unsolved: { count: 0 } },
32
+ lRules: { en: 1 },
33
+ };
34
+ const manager = new FrictionlessManager(db, pair, config);
35
+ manager.setSessionParams({
36
+ token: "tok",
37
+ score: 0,
38
+ threshold: 0.5,
39
+ scoreComponents: { baseScore: 0 },
40
+ ipAddress: getCompositeIpAddress("1.2.3.4"),
41
+ siteKey: SITE_KEY,
42
+ webView: false,
43
+ iFrame: false,
44
+ decryptedHeadHash: "",
45
+ });
46
+ return manager;
47
+ };
48
+ const routingContext = {
49
+ dappAccount: SITE_KEY,
50
+ userAccount: "user",
51
+ ip: "1.2.3.4",
52
+ score: 0.6,
53
+ platform: { isMobile: false, isApple: false, isWebView: false },
54
+ raw: { headers: {}, userAgent: "ua" },
55
+ };
56
+ beforeEach(() => {
57
+ vi.clearAllMocks();
58
+ storeSessionRecord = vi.fn();
59
+ });
60
+ it("serves image instead of puzzle on a puzzle-pinned site with puzzle switched off", async () => {
61
+ const manager = buildManager();
62
+ manager.setAllowedCaptchaTypes(PUZZLE_SWITCHED_OFF);
63
+ const response = await manager.sendPuzzleCaptcha();
64
+ expect(applyRouterMock).not.toHaveBeenCalled();
65
+ expect(storedCaptchaType()).toBe(CaptchaType.image);
66
+ expect(response.captchaType).toBe(CaptchaType.image);
67
+ });
68
+ it("overrides a routing machine that picks puzzle", async () => {
69
+ const routed = { captchaType: CaptchaType.puzzle };
70
+ applyRouterMock.mockResolvedValue(routed);
71
+ const manager = buildManager();
72
+ manager.setRoutingContext(routingContext);
73
+ manager.setAllowedCaptchaTypes(PUZZLE_SWITCHED_OFF);
74
+ await manager.sendPowCaptcha();
75
+ expect(applyRouterMock).toHaveBeenCalled();
76
+ expect(storedCaptchaType()).toBe(CaptchaType.image);
77
+ });
78
+ it("falls back to pow when image is also unavailable", async () => {
79
+ const manager = buildManager();
80
+ manager.setAllowedCaptchaTypes(resolveAllowedCaptchaTypes({
81
+ frictionlessTypes: { image: false, puzzle: true },
82
+ captchaTypeFeatureFlags: { puzzle: false },
83
+ }));
84
+ await manager.sendPuzzleCaptcha();
85
+ expect(storedCaptchaType()).toBe(CaptchaType.pow);
86
+ });
87
+ it("serves puzzle when nothing has switched it off", async () => {
88
+ const manager = buildManager();
89
+ manager.setAllowedCaptchaTypes(resolveAllowedCaptchaTypes({}));
90
+ await manager.sendPuzzleCaptcha();
91
+ expect(storedCaptchaType()).toBe(CaptchaType.puzzle);
92
+ });
93
+ describe("icon-order", () => {
94
+ it("serves puzzle on an icon-order-pinned site without the flag", async () => {
95
+ const manager = buildManager();
96
+ manager.setAllowedCaptchaTypes(resolveAllowedCaptchaTypes({}));
97
+ await manager.sendIconOrderCaptcha();
98
+ expect(storedCaptchaType()).toBe(CaptchaType.puzzle);
99
+ });
100
+ it("overrides a routing machine that picks icon-order on a site without the flag", async () => {
101
+ const routed = {
102
+ captchaType: CaptchaType.iconOrder,
103
+ };
104
+ applyRouterMock.mockResolvedValue(routed);
105
+ const manager = buildManager();
106
+ manager.setRoutingContext(routingContext);
107
+ manager.setAllowedCaptchaTypes(resolveAllowedCaptchaTypes({
108
+ frictionlessTypes: { image: true, puzzle: true, iconOrder: true },
109
+ }));
110
+ await manager.sendPowCaptcha();
111
+ expect(storedCaptchaType()).toBe(CaptchaType.puzzle);
112
+ });
113
+ it("serves icon-order once Prosopo turns the flag on", async () => {
114
+ const manager = buildManager();
115
+ manager.setAllowedCaptchaTypes(resolveAllowedCaptchaTypes({
116
+ captchaTypeFeatureFlags: { iconOrder: true },
117
+ }));
118
+ await manager.sendIconOrderCaptcha();
119
+ expect(storedCaptchaType()).toBe(CaptchaType.iconOrder);
120
+ });
121
+ });
122
+ });
123
+ //# sourceMappingURL=allowedCaptchaTypes.unit.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allowedCaptchaTypes.unit.test.js","sourceRoot":"","sources":["../../../../../src/tests/unit/tasks/frictionless/allowedCaptchaTypes.unit.test.ts"],"names":[],"mappings":"AAcA,OAAO,EACN,WAAW,EACX,qBAAqB,EAKrB,0BAA0B,GAC1B,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAE9D,MAAM,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7C,eAAe,EAAE,EAAE,CAAC,EAAE,EAAE;CACxB,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,kDAAkD,EAAE,GAAG,EAAE,CAAC,CAAC;IAClE,WAAW,EAAE,eAAe;CAC5B,CAAC,CAAC,CAAC;AAEJ,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EAAE,mBAAmB,EAAE,MAAM,qDAAqD,CAAC;AAG1F,MAAM,QAAQ,GAAG,kDAAkD,CAAC;AAEpE,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;IACtD,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;CAC1C,CAAC,CAAC;AAEH,QAAQ,CAAC,2CAA2C,EAAE,GAAG,EAAE;IAC1D,IAAI,kBAA4C,CAAC;IAEjD,MAAM,iBAAiB,GAAG,GAAgB,EAAE;QAC3C,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9C,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACpD,OAAQ,IAAI,CAAC,CAAC,CAAa,CAAC,WAAW,CAAC;IACzC,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,GAAwB,EAAE;QAC9C,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAkC,CAAC;QAClE,MAAM,IAAI,GAAG;YACZ,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE;YACb,OAAO,EAAE,aAAa;SACI,CAAC;QAC5B,MAAM,MAAM,GAAG;YACd,SAAS,EAAE,qBAAqB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1C,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC1D,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE;SACiB,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,mBAAmB,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAC1D,OAAO,CAAC,gBAAgB,CAAC;YACxB,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,CAAC;YACR,SAAS,EAAE,GAAG;YACd,eAAe,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;YACjC,SAAS,EAAE,qBAAqB,CAAC,SAAS,CAAC;YAC3C,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,KAAK;YACb,iBAAiB,EAAE,EAAE;SACrB,CAAC,CAAC;QACH,OAAO,OAAO,CAAC;IAChB,CAAC,CAAC;IAEF,MAAM,cAAc,GAAmB;QACtC,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,MAAM;QACnB,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,GAAG;QACV,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE;QAC/D,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;KACrC,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACf,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,kBAAkB,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;QAChG,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;QAC/B,OAAO,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;QAEpD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAEnD,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC/C,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACpD,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC9D,MAAM,MAAM,GAAyB,EAAE,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE,CAAC;QACzE,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;QAC/B,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAC1C,OAAO,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;QAEpD,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;QAE/B,MAAM,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAC;QAC3C,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;QAC/B,OAAO,CAAC,sBAAsB,CAC7B,0BAA0B,CAAC;YAC1B,iBAAiB,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;YACjD,uBAAuB,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;SAC1C,CAAC,CACF,CAAC;QAEF,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAElC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,KAAK,IAAI,EAAE;QAC/D,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;QAC/B,OAAO,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC,CAAC;QAE/D,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAElC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;YAC/B,OAAO,CAAC,sBAAsB,CAAC,0BAA0B,CAAC,EAAE,CAAC,CAAC,CAAC;YAE/D,MAAM,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAErC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;YAC7F,MAAM,MAAM,GAAyB;gBACpC,WAAW,EAAE,WAAW,CAAC,SAAS;aAClC,CAAC;YACF,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;YAC/B,OAAO,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;YAC1C,OAAO,CAAC,sBAAsB,CAC7B,0BAA0B,CAAC;gBAC1B,iBAAiB,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;aACjE,CAAC,CACF,CAAC;YAEF,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC;YAE/B,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,OAAO,GAAG,YAAY,EAAE,CAAC;YAC/B,OAAO,CAAC,sBAAsB,CAC7B,0BAA0B,CAAC;gBAC1B,uBAAuB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;aAC5C,CAAC,CACF,CAAC;YAEF,MAAM,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAErC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;IACJ,CAAC,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -328,6 +328,37 @@ describe("Frictionless Task Manager", () => {
328
328
  expect(response).toHaveProperty("sessionId");
329
329
  expect(response).toHaveProperty("status", "ok");
330
330
  });
331
+ it("offers the audio alternative only on a visual challenge of an opted-in site", async () => {
332
+ vi.mocked(db.storeSessionRecord).mockResolvedValue(undefined);
333
+ const sessionParams = {
334
+ token: "mockToken123",
335
+ score: 0.5,
336
+ threshold: 0.7,
337
+ scoreComponents: { baseScore: 0.5 },
338
+ ipAddress: getCompositeIpAddress("127.0.0.1"),
339
+ webView: false,
340
+ iFrame: false,
341
+ decryptedHeadHash: "",
342
+ siteKey: "mockSiteKey",
343
+ };
344
+ frictionlessTaskManager.setSessionParams(sessionParams);
345
+ frictionlessTaskManager.setAudioAlternativeEnabled(true);
346
+ const image = await frictionlessTaskManager.sendImageCaptcha({
347
+ solvedImagesCount: 0,
348
+ });
349
+ frictionlessTaskManager.setSessionParams(sessionParams);
350
+ const pow = await frictionlessTaskManager.sendPowCaptcha({
351
+ powDifficulty: undefined,
352
+ });
353
+ frictionlessTaskManager.setSessionParams(sessionParams);
354
+ frictionlessTaskManager.setAudioAlternativeEnabled(false);
355
+ const imageOff = await frictionlessTaskManager.sendImageCaptcha({
356
+ solvedImagesCount: 0,
357
+ });
358
+ expect(image).toHaveProperty("audioAlternativeAvailable", true);
359
+ expect(pow).not.toHaveProperty("audioAlternativeAvailable");
360
+ expect(imageOff).not.toHaveProperty("audioAlternativeAvailable");
361
+ });
331
362
  it("should throw when sendPuzzleCaptcha is called without session params", async () => {
332
363
  await expect(frictionlessTaskManager.sendPuzzleCaptcha()).rejects.toThrow(/Session parameters must be set/);
333
364
  });