@restforgejs/platform 4.2.8 → 4.3.2

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 (325) hide show
  1. package/SECURITY.md +83 -4
  2. package/bin/sdf-tools.exe +0 -0
  3. package/build-info.json +2 -2
  4. package/cli/consumer-deploy.js +1 -1
  5. package/cli/consumer.js +1 -1
  6. package/generators/cli/dashboard/create.js +4 -1
  7. package/generators/cli/endpoint/create.js +1 -1
  8. package/generators/cli/key/generate.js +2 -1
  9. package/generators/cli/key/revoke.js +2 -1
  10. package/generators/cli/payload/diff.js +3 -2
  11. package/generators/cli/payload/generate.js +3 -2
  12. package/generators/cli/payload/sync.js +3 -2
  13. package/generators/cli/payload/validate.js +3 -2
  14. package/generators/cli/processor/create.js +14 -3
  15. package/generators/cli/project/delete.js +2 -1
  16. package/generators/cli/query/validate.js +3 -2
  17. package/generators/cli/schema/apply.js +3 -2
  18. package/generators/cli/schema/describe.js +3 -2
  19. package/generators/cli/schema/diff.js +3 -2
  20. package/generators/cli/schema/introspect.js +3 -2
  21. package/generators/cli/schema/list.js +3 -2
  22. package/generators/cli/schema/migrate.js +3 -2
  23. package/generators/lib/migration/audit-table-runner.js +213 -215
  24. package/generators/lib/payload/payload-runner.js +1 -1
  25. package/generators/lib/templates/dashboard-catalog.js +1 -437
  26. package/generators/lib/templates/db-connection-env.js +1 -212
  27. package/generators/lib/templates/dbschema-catalog.js +1 -489
  28. package/generators/lib/templates/field-validation-catalog.js +1 -531
  29. package/generators/lib/templates/mysql-template.js +1 -3863
  30. package/generators/lib/templates/oracle-template.js +1 -3915
  31. package/generators/lib/templates/postgres-template.js +1 -5838
  32. package/generators/lib/templates/query-declarative-catalog.js +1 -199
  33. package/generators/lib/templates/sqlite-template.js +1 -3440
  34. package/generators/lib/utils/env-manager.js +6 -0
  35. package/generators/lib/utils/path-validator.js +71 -0
  36. package/generators/lib/validators/payload-validator.js +1 -2
  37. package/integrity-manifest.json +28 -10
  38. package/package.json +11 -3
  39. package/scripts/verify-integrity.js +1 -1
  40. package/server.js +1 -1
  41. package/src/components/handlers/adjust_handler.js +1 -1
  42. package/src/components/handlers/audit_handler.js +1 -1
  43. package/src/components/handlers/delete_handler.js +1 -1
  44. package/src/components/handlers/export_handler.js +1 -1
  45. package/src/components/handlers/import_handler.js +1 -1
  46. package/src/components/handlers/insert_handler.js +1 -1
  47. package/src/components/handlers/update_handler.js +1 -1
  48. package/src/components/handlers/upload_handler.js +1 -1
  49. package/src/components/handlers/workflow_handler.js +1 -1
  50. package/src/components/integrations/webhook.js +1 -1
  51. package/src/consumers/baseConsumer.js +1 -1
  52. package/src/consumers/declarativeMapper.js +1 -1
  53. package/src/consumers/handlers/apiHandler.js +1 -1
  54. package/src/consumers/handlers/consoleHandler.js +1 -1
  55. package/src/consumers/handlers/databaseHandler.js +1 -1
  56. package/src/consumers/handlers/index.js +1 -1
  57. package/src/consumers/handlers/kafkaHandler.js +1 -1
  58. package/src/consumers/index.js +1 -1
  59. package/src/consumers/messageTransformer.js +1 -1
  60. package/src/consumers/validator.js +1 -1
  61. package/src/core/db/dialect/base-dialect.js +1 -1
  62. package/src/core/db/dialect/index.js +1 -1
  63. package/src/core/db/dialect/mysql-dialect.js +1 -1
  64. package/src/core/db/dialect/oracle-dialect.js +1 -1
  65. package/src/core/db/dialect/postgres-dialect.js +1 -1
  66. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  67. package/src/core/db/flatten-helper.js +1 -1
  68. package/src/core/db/query-builder-error.js +1 -1
  69. package/src/core/db/query-builder.js +1 -1
  70. package/src/core/db/relation-helper.js +1 -1
  71. package/src/core/handlers/delete_handler.js +1 -1
  72. package/src/core/handlers/insert_handler.js +1 -1
  73. package/src/core/handlers/update_handler.js +1 -1
  74. package/src/core/models/base-model.js +1 -1
  75. package/src/core/utils/cache-manager.js +1 -1
  76. package/src/core/utils/component-engine.js +1 -1
  77. package/src/core/utils/context-builder.js +1 -1
  78. package/src/core/utils/datetime-formatter.js +1 -1
  79. package/src/core/utils/datetime-parser.js +1 -1
  80. package/src/core/utils/db.js +1 -1
  81. package/src/core/utils/logger.js +1 -1
  82. package/src/core/utils/payload-loader.js +1 -1
  83. package/src/core/utils/security-checks.js +1 -1
  84. package/src/middleware/body-options.js +1 -1
  85. package/src/middleware/cors.js +1 -1
  86. package/src/middleware/idempotency.js +1 -1
  87. package/src/middleware/rate-limiter.js +1 -1
  88. package/src/middleware/request-logger.js +1 -1
  89. package/src/middleware/security-headers.js +1 -1
  90. package/src/models/base-model-mysql.js +1 -1
  91. package/src/models/base-model-oracle.js +1 -1
  92. package/src/models/base-model-sqlite.js +1 -1
  93. package/src/models/base-model.js +1 -1
  94. package/src/pro/caching/redis-client.js +1 -1
  95. package/src/pro/caching/redis-helper.js +1 -1
  96. package/src/pro/consumers/baseConsumer.js +1 -1
  97. package/src/pro/consumers/declarativeMapper.js +1 -1
  98. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  99. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  100. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  101. package/src/pro/consumers/handlers/index.js +1 -1
  102. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  103. package/src/pro/consumers/index.js +1 -1
  104. package/src/pro/consumers/messageTransformer.js +1 -1
  105. package/src/pro/consumers/validator.js +1 -1
  106. package/src/pro/database/base-model-mysql.js +1 -1
  107. package/src/pro/database/base-model-oracle.js +1 -1
  108. package/src/pro/database/base-model-sqlite.js +1 -1
  109. package/src/pro/database/db-mysql.js +1 -1
  110. package/src/pro/database/db-oracle.js +1 -1
  111. package/src/pro/database/db-sqlite.js +1 -1
  112. package/src/pro/excel/excel-generator.js +1 -1
  113. package/src/pro/excel/excel-parser.js +1 -1
  114. package/src/pro/excel/export-service.js +1 -1
  115. package/src/pro/excel/export_handler.js +1 -1
  116. package/src/pro/excel/import-service.js +1 -1
  117. package/src/pro/excel/import-validator.js +1 -1
  118. package/src/pro/excel/import_handler.js +1 -1
  119. package/src/pro/excel/upsert-builder.js +1 -1
  120. package/src/pro/idgen/idgen-routes.js +1 -1
  121. package/src/pro/integrations/lookup-resolver.js +1 -1
  122. package/src/pro/integrations/upload-handler-v2.js +1 -1
  123. package/src/pro/integrations/upload-handler.js +1 -1
  124. package/src/pro/integrations/webhook.js +1 -1
  125. package/src/pro/locking/lock-routes.js +1 -1
  126. package/src/pro/locking/resource-lock-manager.js +1 -1
  127. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  128. package/src/pro/messaging/kafkaService.js +1 -1
  129. package/src/pro/messaging/messagehubService.js +1 -1
  130. package/src/pro/messaging/rabbitmqService.js +1 -1
  131. package/src/pro/scheduler/job-manager.js +1 -1
  132. package/src/pro/scheduler/job-routes.js +1 -1
  133. package/src/pro/scheduler/job-validator.js +1 -1
  134. package/src/pro/storage/base-storage-provider.js +1 -1
  135. package/src/pro/storage/file-metadata-helper.js +1 -1
  136. package/src/pro/storage/index.js +1 -1
  137. package/src/pro/storage/local-storage-provider.js +1 -1
  138. package/src/pro/storage/s3-storage-provider.js +1 -1
  139. package/src/pro/storage/upload-cleanup-job.js +1 -1
  140. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  141. package/src/pro/storage/upload-pending-tracker.js +1 -1
  142. package/src/pro/websocket/broadcast-helper.js +1 -1
  143. package/src/pro/websocket/index.js +1 -1
  144. package/src/pro/websocket/livesync-server.js +1 -1
  145. package/src/pro/websocket/ws-broadcaster.js +1 -1
  146. package/src/services/export-service.js +1 -1
  147. package/src/services/import-service.js +1 -1
  148. package/src/services/kafkaConsumerService.js +1 -1
  149. package/src/services/kafkaService.js +1 -1
  150. package/src/services/messagehubService.js +1 -1
  151. package/src/services/rabbitmqService.js +1 -1
  152. package/src/utils/cache-invalidation-registry.js +1 -1
  153. package/src/utils/cache-manager.js +1 -1
  154. package/src/utils/component-engine.js +1 -1
  155. package/src/utils/config-extractor.js +1 -1
  156. package/src/utils/consumerLogger.js +1 -1
  157. package/src/utils/context-builder.js +1 -1
  158. package/src/utils/dashboard-helpers.js +1 -1
  159. package/src/utils/dateHelper.js +1 -1
  160. package/src/utils/datetime-formatter.js +1 -1
  161. package/src/utils/datetime-parser.js +1 -1
  162. package/src/utils/db-bootstrap.js +1 -1
  163. package/src/utils/db-mysql.js +1 -1
  164. package/src/utils/db-oracle.js +1 -1
  165. package/src/utils/db-sqlite.js +1 -1
  166. package/src/utils/db.js +1 -1
  167. package/src/utils/demo-generator.js +1 -1
  168. package/src/utils/excel-generator.js +1 -1
  169. package/src/utils/excel-parser.js +1 -1
  170. package/src/utils/file-watcher.js +1 -1
  171. package/src/utils/id-generator.js +1 -1
  172. package/src/utils/idempotency-manager.js +1 -1
  173. package/src/utils/import-validator.js +1 -1
  174. package/src/utils/license-client.js +1 -1
  175. package/src/utils/lock-manager.js +1 -1
  176. package/src/utils/logger.js +1 -1
  177. package/src/utils/lookup-resolver.js +1 -1
  178. package/src/utils/payload-loader.js +1 -1
  179. package/src/utils/processor-response.js +1 -1
  180. package/src/utils/rabbitmq.js +1 -1
  181. package/src/utils/redis-client.js +1 -1
  182. package/src/utils/redis-helper.js +1 -1
  183. package/src/utils/request-scope.js +1 -1
  184. package/src/utils/security-checks.js +1 -1
  185. package/src/utils/service-resolver.js +1 -1
  186. package/src/utils/shutdown-coordinator.js +1 -1
  187. package/src/utils/trusted-keys.js +1 -1
  188. package/src/utils/upload-handler.js +1 -1
  189. package/src/utils/upsert-builder.js +1 -1
  190. package/src/utils/workflow-hook-executor.js +1 -1
  191. package/generators/metadata/global.json +0 -58
  192. package/generators/metadata/test-mysql-workbench.json +0 -118
  193. package/generators/metadata/test-mysql.json +0 -56
  194. package/generators/metadata/test-oracle-workbench.json +0 -118
  195. package/generators/metadata/test-oracle.json +0 -56
  196. package/generators/metadata/test-pg-workbench.json +0 -118
  197. package/generators/metadata/test-pg.json +0 -56
  198. package/generators/scripts/obfuscate-source.js +0 -356
  199. package/generators/scripts/validate-catalog.js +0 -430
  200. package/generators/scripts/validate-dbschema-catalog.js +0 -708
  201. package/generators/tests/baseline/mysql/mini_inventory_item/src/models/mini-inventory/item.js +0 -944
  202. package/generators/tests/baseline/mysql/mini_inventory_item/src/modules/mini-inventory/item.js +0 -740
  203. package/generators/tests/baseline/mysql/mini_inventory_item/src/modules/mini-inventory.js +0 -336
  204. package/generators/tests/baseline/oracle/mini_inventory_item/src/models/mini-inventory/item.js +0 -1002
  205. package/generators/tests/baseline/oracle/mini_inventory_item/src/modules/mini-inventory/item.js +0 -740
  206. package/generators/tests/baseline/oracle/mini_inventory_item/src/modules/mini-inventory.js +0 -336
  207. package/generators/tests/baseline/postgres/mini_inventory_item/src/models/mini-inventory/item.js +0 -1333
  208. package/generators/tests/baseline/postgres/mini_inventory_item/src/modules/mini-inventory/item.js +0 -1173
  209. package/generators/tests/baseline/postgres/mini_inventory_item/src/modules/mini-inventory.js +0 -496
  210. package/generators/tests/fixtures/payloads/custom-sensitive.json +0 -27
  211. package/generators/tests/fixtures/payloads/dynamic-search-optout.json +0 -23
  212. package/generators/tests/fixtures/payloads/login-with-password.json +0 -22
  213. package/generators/tests/fixtures/payloads/order-process.json +0 -52
  214. package/generators/tests/fixtures/payloads/with-inline-sql.json +0 -26
  215. package/generators/tests/integration-tahap4b/README.md +0 -145
  216. package/generators/tests/integration-tahap4b/run-concurrent.js +0 -77
  217. package/generators/tests/integration-tahap4b/seed.sql +0 -53
  218. package/generators/tests/integration-tahap4b/verify.sql +0 -110
  219. package/generators/tests/unit/cli/create-dashboard.test.js +0 -505
  220. package/generators/tests/unit/cli/create-processor.test.js +0 -319
  221. package/generators/tests/unit/cli/dispatch-dashboard.test.js +0 -149
  222. package/generators/tests/unit/lib/dashboard-generator.test.js +0 -895
  223. package/generators/tests/unit/lib/dashboard-validator.test.js +0 -354
  224. package/generators/tests/unit/lib/dbschema-kit/apply-executor.test.js +0 -437
  225. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-introspect.test.js +0 -393
  226. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-generate-ddl.test.js +0 -104
  227. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-init.test.js +0 -119
  228. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-list.test.js +0 -48
  229. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-migrate.test.js +0 -175
  230. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-validate.test.js +0 -102
  231. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-models.test.js +0 -43
  232. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/all-schemas-listing.js +0 -84
  233. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/connection-error.js +0 -13
  234. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/empty.js +0 -12
  235. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/multi-schema.js +0 -124
  236. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/single-schema-inventory.js +0 -64
  237. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/two-tables.js +0 -66
  238. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/connection-error.js +0 -9
  239. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/partial.js +0 -29
  240. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/rollback.js +0 -26
  241. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/success.js +0 -43
  242. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/audit/events.js +0 -18
  243. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/inventory/products.js +0 -9
  244. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/users.js +0 -8
  245. package/generators/tests/unit/lib/dbschema-kit/connection.test.js +0 -112
  246. package/generators/tests/unit/lib/dbschema-kit/ddl-generator.test.js +0 -205
  247. package/generators/tests/unit/lib/dbschema-kit/define-model.test.js +0 -56
  248. package/generators/tests/unit/lib/dbschema-kit/dialect/index.test.js +0 -46
  249. package/generators/tests/unit/lib/dbschema-kit/dialect/mysql.test.js +0 -126
  250. package/generators/tests/unit/lib/dbschema-kit/dialect/oracle.test.js +0 -126
  251. package/generators/tests/unit/lib/dbschema-kit/dialect/postgres.test.js +0 -131
  252. package/generators/tests/unit/lib/dbschema-kit/dialect/sqlite.test.js +0 -126
  253. package/generators/tests/unit/lib/dbschema-kit/driver-loader.test.js +0 -93
  254. package/generators/tests/unit/lib/dbschema-kit/emitters/create-index.test.js +0 -173
  255. package/generators/tests/unit/lib/dbschema-kit/emitters/create-table.test.js +0 -376
  256. package/generators/tests/unit/lib/dbschema-kit/emitters/drop-table.test.js +0 -78
  257. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/invalid-dialect.env +0 -6
  258. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/missing-dialect.env +0 -5
  259. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/missing-host.env +0 -5
  260. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/oracle-valid.env +0 -6
  261. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/postgres-valid.env +0 -7
  262. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/sqlite-valid.env +0 -2
  263. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/category.js +0 -11
  264. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/item_product.js +0 -11
  265. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/stock_inbound.js +0 -24
  266. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/stock_inbound_item.js +0 -28
  267. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/supplier.js +0 -9
  268. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/warehouse.js +0 -9
  269. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-invalid/orphan.js +0 -17
  270. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/category.js +0 -11
  271. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/item_product.js +0 -11
  272. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/supplier.js +0 -9
  273. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/warehouse.js +0 -9
  274. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/transactions/stock_inbound.js +0 -24
  275. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/transactions/stock_inbound_item.js +0 -28
  276. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/audit/events.js +0 -18
  277. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/inventory/products.js +0 -9
  278. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/public/users.js +0 -9
  279. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-subfolder/extra/category.js +0 -8
  280. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-subfolder/master/category.js +0 -8
  281. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-tablename/bar.js +0 -8
  282. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-tablename/foo.js +0 -8
  283. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/empty-folder/README.md +0 -1
  284. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/invalid-export/plain.js +0 -3
  285. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/invalid-schema/bad.js +0 -6
  286. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/legacy-pattern/legacy.js +0 -12
  287. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-distinct/audit/products.js +0 -9
  288. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-distinct/inventory/products.js +0 -9
  289. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-duplicate/a/products.js +0 -8
  290. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-duplicate/b/products.js +0 -8
  291. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/nested-deep/a/b/c/deep_table.js +0 -8
  292. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/.hidden/ignored.js +0 -7
  293. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/master/category.js +0 -8
  294. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/master/supplier.js +0 -8
  295. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/transactions/stock_inbound.js +0 -8
  296. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/transactions/stock_inbound_item.js +0 -8
  297. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-multiple/category.js +0 -8
  298. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-multiple/item_product.js +0 -9
  299. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-single/category.js +0 -8
  300. package/generators/tests/unit/lib/dbschema-kit/integration.test.js +0 -217
  301. package/generators/tests/unit/lib/dbschema-kit/introspect-mapper.test.js +0 -403
  302. package/generators/tests/unit/lib/dbschema-kit/ir-builder.test.js +0 -390
  303. package/generators/tests/unit/lib/dbschema-kit/loader.test.js +0 -128
  304. package/generators/tests/unit/lib/dbschema-kit/naming.test.js +0 -170
  305. package/generators/tests/unit/lib/dbschema-kit/parser/shorthand-parser.test.js +0 -237
  306. package/generators/tests/unit/lib/dbschema-kit/schema-printer.test.js +0 -251
  307. package/generators/tests/unit/lib/dbschema-kit/statement-modifier.test.js +0 -105
  308. package/generators/tests/unit/lib/dbschema-kit/statement-splitter.test.js +0 -165
  309. package/generators/tests/unit/lib/dbschema-kit/topological-sort.test.js +0 -135
  310. package/generators/tests/unit/lib/dbschema-kit/validator/check-compatibility-validator.test.js +0 -373
  311. package/generators/tests/unit/lib/dbschema-kit/validator/circular-relation-validator.test.js +0 -454
  312. package/generators/tests/unit/lib/dbschema-kit/validator/cross-model-validator.test.js +0 -512
  313. package/generators/tests/unit/lib/dbschema-kit/validator/enhanced-validate-integration.test.js +0 -390
  314. package/generators/tests/unit/lib/dbschema-kit/validator/naming-convention-validator.test.js +0 -306
  315. package/generators/tests/unit/lib/dbschema-kit/validator/schema-validator.test.js +0 -443
  316. package/generators/tests/unit/lib/dbschema-kit/validator/type-compatibility-validator.test.js +0 -440
  317. package/generators/tests/unit/lib/dbschema-kit/validator/validator-reporter.test.js +0 -172
  318. package/generators/tests/unit/lib/metadata-manager-dashboard.test.js +0 -256
  319. package/generators/tests/unit/lib/payload-validator-fieldpolicy.test.js +0 -240
  320. package/generators/tests/unit/lib/processor-validation-generator.test.js +0 -300
  321. package/generators/tests/unit/lib/sensitive-field-masker.test.js +0 -170
  322. package/generators/tests/unit/lib/sql-table-extractor.test.js +0 -119
  323. package/scripts/generate-integrity-manifest.js +0 -124
  324. package/scripts/snapshot-cli-contracts.js +0 -194
  325. package/scripts/verify-publish.js +0 -56
@@ -302,6 +302,12 @@ function backupEnvFile(filePath) {
302
302
 
303
303
  fs.copyFileSync(filePath, backupPath);
304
304
 
305
+ // Restrict permission ke owner-only karena .env mengandung credentials
306
+ // (LICENSE, KEY, DB_PASSWORD). No-op pada Windows yang pakai ACL.
307
+ if (process.platform !== 'win32') {
308
+ fs.chmodSync(backupPath, 0o600);
309
+ }
310
+
305
311
  return backupPath;
306
312
  }
307
313
 
@@ -0,0 +1,71 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Path Validator Utility
5
+ *
6
+ * Utility validasi path-aware untuk CLI handler yang menerima input path-like.
7
+ * Mencegah path traversal via `..` atau absolute path keluar dari working directory.
8
+ *
9
+ * Phase 02 dari Security Hardening v1 (Temuan B3).
10
+ *
11
+ * @module lib/utils/path-validator
12
+ */
13
+
14
+ const path = require('node:path');
15
+
16
+ const SAFE_NAME_REGEX = /^[a-zA-Z0-9_-]+$/;
17
+
18
+ /**
19
+ * Validate nama folder/file/module yang aman digunakan sebagai path component.
20
+ * Hanya memperbolehkan alphanumeric, dash, dan underscore.
21
+ *
22
+ * @param {string} value - Input value dari CLI argument
23
+ * @param {string} fieldName - Nama field untuk konteks error message
24
+ * @returns {string} value yang sudah divalidasi (untuk chaining)
25
+ * @throws {Error} jika value tidak valid (non-string, kosong, atau mengandung
26
+ * karakter di luar whitelist)
27
+ */
28
+ function validateSafeName(value, fieldName) {
29
+ if (typeof value !== 'string' || value.length === 0) {
30
+ throw new Error(`${fieldName} must be a non-empty string`);
31
+ }
32
+ if (!SAFE_NAME_REGEX.test(value)) {
33
+ throw new Error(
34
+ `${fieldName} must contain only alphanumeric, dash, or underscore characters. ` +
35
+ `Got: ${JSON.stringify(value)}`
36
+ );
37
+ }
38
+ return value;
39
+ }
40
+
41
+ /**
42
+ * Validate bahwa resolved targetPath berada di dalam baseDir.
43
+ * Mencegah path traversal via `..` atau absolute path keluar.
44
+ *
45
+ * @param {string} targetPath - Path target (boleh relative atau absolute)
46
+ * @param {string} baseDir - Base directory yang harus mengandung targetPath
47
+ * @returns {string} resolved absolute path
48
+ * @throws {Error} jika resolved path escape dari baseDir
49
+ */
50
+ function validatePathWithinBase(targetPath, baseDir) {
51
+ if (typeof targetPath !== 'string' || targetPath.length === 0) {
52
+ throw new Error('targetPath must be a non-empty string');
53
+ }
54
+ if (typeof baseDir !== 'string' || baseDir.length === 0) {
55
+ throw new Error('baseDir must be a non-empty string');
56
+ }
57
+
58
+ const baseResolved = path.resolve(baseDir);
59
+ const resolved = path.isAbsolute(targetPath)
60
+ ? path.resolve(targetPath)
61
+ : path.resolve(baseResolved, targetPath);
62
+
63
+ if (resolved !== baseResolved && !resolved.startsWith(baseResolved + path.sep)) {
64
+ throw new Error(
65
+ `Path "${targetPath}" escapes from base directory ${baseDir}`
66
+ );
67
+ }
68
+ return resolved;
69
+ }
70
+
71
+ module.exports = { validateSafeName, validatePathWithinBase };
@@ -263,7 +263,6 @@ class PayloadValidator {
263
263
  if (payload.fieldProtection !== undefined) {
264
264
  throw new Error(
265
265
  `'fieldProtection' in ${fileName} has been replaced by 'fieldPolicy'. ` +
266
- `See docs/todo/todo-fieldpolicy-extension.md for migration. ` +
267
266
  `Example: { "fieldPolicy": { "${Object.keys(payload.fieldProtection)[0] || 'columnName'}": { "strategies": ["lock", "audit"] } } }`
268
267
  );
269
268
  }
@@ -468,7 +467,7 @@ class PayloadValidator {
468
467
 
469
468
  if (PHASE2_STRATEGIES.includes(strategy)) {
470
469
  throw new Error(
471
- `fieldPolicy.${columnName}.strategies includes '${strategy}' which is planned for Phase 2 of fieldPolicy roadmap (docs/todo/todo-fieldpolicy-extension.md). Currently only 'lock' and 'audit' are supported.`
470
+ `fieldPolicy.${columnName}.strategies includes '${strategy}' which is planned for Phase 2 of fieldPolicy roadmap. Currently only 'lock' and 'audit' are supported.`
472
471
  );
473
472
  }
474
473
 
@@ -1,19 +1,37 @@
1
1
  {
2
- "version": "4.2.8",
3
- "generated": "2026-05-21T01:20:53.402Z",
2
+ "version": "4.3.2",
3
+ "generated": "2026-05-23T21:09:34.161Z",
4
4
  "generator": "restforge-build-system",
5
5
  "algorithm": "sha256",
6
6
  "files": {
7
- "server.js": "91f5255aacad771c0ff9370c6c76be4a081fa6f264adf1fb5bc77a1f585ddce9",
8
- "src/utils/license-client.js": "2f9cfbc101e87c9e179a36d7c7e1b8dc2fd78999331efb3752bcb66dafb2364e",
9
- "src/utils/trusted-keys.js": "2a02c10de6ca639ace51417ac93c74feb00db51a55ebf98f18a831eefef60516",
10
- "cli/consumer.js": "2815eeba5613515349853107034f3763347a218d1a0ec3f484456a5fb4674143",
11
- "src/utils/security-checks.js": "04aca0bfcb331befd114e454e0fdeff37a201874394afe0cdba79c9969aed776",
12
- "scripts/verify-integrity.js": "2f4d06552da2d9204565c3473cde414c24ed6aef326f177acf30ba0ee7d243b8"
7
+ "server.js": "564a1d0a6e971c88332ad1e8b36c3005b1b976bf87427271c23975c2145c4ecb",
8
+ "src/utils/license-client.js": "575707049020c468017b5a67416d443f4e9240975e7ccfda756f98747db6da12",
9
+ "src/utils/trusted-keys.js": "4818e3c0c7307726fc8b7705c7ffc8fb6f7f00418cd16112a8bca30899606644",
10
+ "cli/consumer.js": "b3e397608c2ab0a63b4bfb97e55106721c57b2adca574b194d735a1ace98db45",
11
+ "src/utils/security-checks.js": "c0e6352424d50284bb8ea03663e73e6bfa791b4fc7df24dc70fe6be4a6caae35",
12
+ "scripts/verify-integrity.js": "de3a9ed4302dc32f46d6a1d52c172404cce7ec1e47e810d492ad0ec787aa45b0",
13
+ "bin/restforge-hwinfo-linux": "d9a0071b0acf58a020e738a29837de356f531a5a84d363a2adc50563e3874b8f",
14
+ "bin/restforge-hwinfo-darwin": "d35b15d4e6d7bbdd8317490335ba9602ce5c218519898fa3eabe18cc9c5bb1b6",
15
+ "bin/restforge-hwinfo.exe": "351fa4d33459d30de804ee78deb5eb977b77b688fe1b7b461cdaa214a82f145e",
16
+ "generators/lib/templates/mysql-template.js": "c7207a9b3d10c288d28b46c753c57d3c53308e2fed41894ac458a915585916c1",
17
+ "generators/lib/templates/oracle-template.js": "171a16928a6399a933e550105f7e9d555677f0b15282d97f3cf556d241d08945",
18
+ "generators/lib/templates/postgres-template.js": "1f33bf6bc37e28b445057a0284bafcce35ea061e73f4c2fc86ecccb1de03a8ff",
19
+ "generators/lib/templates/sqlite-template.js": "05938cdc0cc94a940b59e801a33d1eb0392bd5ebca0e6c041b1ccb3e16b29ace",
20
+ "generators/lib/templates/dashboard-catalog.js": "1123f375d6569441638494e597f21f4f1db41cdef0d51a05479dd7eb31a718f1",
21
+ "generators/lib/templates/dbschema-catalog.js": "f33c38bee608c76b4f6524315d6cc8db2d3e2eeba755aaff5604824ff0b0187b",
22
+ "generators/lib/templates/field-validation-catalog.js": "61028f2daa7d980405dbb829345c517c5b90252bc50624b3a6b3e50eae948434",
23
+ "generators/lib/templates/query-declarative-catalog.js": "8a8aa2ad416d10ea35e97335a125510654ec7bdb9445e6f39c545aedbb895d1c",
24
+ "generators/lib/templates/db-connection-env.js": "a9bff331806b00d3f08a51ad4588ae62c0a93d97239adc8f975af01d866a2de0"
13
25
  },
14
26
  "stats": {
15
- "totalFiles": 6,
16
- "protectedFiles": 6,
27
+ "totalFiles": 18,
28
+ "protectedFiles": 18,
17
29
  "missingFiles": 0
30
+ },
31
+ "signature": {
32
+ "algorithm": "ed25519",
33
+ "keyId": "rfs-manifest-2026-05",
34
+ "value": "07b2289e2c5ba4f34e2d0a7fdb71a241c028ffdba3d552a5a697943e1fee5a1d55ad8d1f1f889ba3e9a8bfbc06bd8338af51ff57487d5f4b12d49e04ab8bc502",
35
+ "scope": "canonical-json(manifest-without-signature)"
18
36
  }
19
37
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@restforgejs/platform",
3
- "version": "4.2.8",
3
+ "version": "4.3.2",
4
4
  "description": "RESTForge Platform — Schema-driven backend framework and code generator for full-stack Node.js applications. Generates production backend APIs with multi-database support (PostgreSQL, MySQL, Oracle). A platform builder and backend runtime, not an API testing or client tool.",
5
5
  "main": "server.js",
6
6
  "bin": {
@@ -34,10 +34,18 @@
34
34
  "server.js",
35
35
  "cli/",
36
36
  "src/",
37
- "scripts/",
37
+ "scripts/check-install.js",
38
+ "scripts/verify-integrity.js",
38
39
  "config/",
39
40
  "bin/",
40
- "generators/",
41
+ "generators/cli-entry.js",
42
+ "generators/cli/",
43
+ "generators/lib/",
44
+ "generators/assets/",
45
+ "generators/payload/",
46
+ "generators/sync-version.js",
47
+ "generators/src/",
48
+ "generators/examples/",
41
49
  "integrity-manifest.json",
42
50
  "README.md",
43
51
  "LICENSE.md",
@@ -1 +1 @@
1
- const a0_0x47c621=a0_0x5b2f;(function(_0x1e3605,_0x583d77){const _0x2eca74=a0_0x5b2f,_0x55486c=_0x1e3605();while(!![]){try{const _0x24f52b=parseInt(_0x2eca74(0x2b1,'iII#'))/(-0x121b+0x1980+-0x764)+-parseInt(_0x2eca74(0x1c7,'3ZPc'))/(-0x4*-0x169+0x6dc+-0xc7e)+-parseInt(_0x2eca74(0x176,'4Crz'))/(-0x1fb2+0x17e7+0x7ce)*(parseInt(_0x2eca74(0x1a1,'G[Nq'))/(-0xf03+-0x1903+0x280a))+-parseInt(_0x2eca74(0x192,'lHX5'))/(0x18e6+0x18fd+-0x31de)+parseInt(_0x2eca74(0x302,'R]Pv'))/(0x12b8+0x1*0x859+-0x3dd*0x7)+parseInt(_0x2eca74(0x173,'$O(k'))/(-0x1*0x6cb+0x1fb0+-0x425*0x6)+-parseInt(_0x2eca74(0x161,'G[Nq'))/(0x29*0xd+-0x1*-0x20ab+-0x22b8);if(_0x24f52b===_0x583d77)break;else _0x55486c['push'](_0x55486c['shift']());}catch(_0x3b7684){_0x55486c['push'](_0x55486c['shift']());}}}(a0_0x515f,-0x53*0x1bfd+-0x4*-0x1b0e5+0x9700c));const crypto=require(a0_0x47c621(0x20e,'jCk*')+'o'),fs=require('fs'),path=require(a0_0x47c621(0x1e9,'R]Pv'));function generateHash(_0x474169){const _0x208d5e=a0_0x47c621,_0x4d4836={};_0x4d4836[_0x208d5e(0x169,'l4JL')]=_0x208d5e(0x19a,'[aH9'),_0x4d4836[_0x208d5e(0x24a,'Uuz0')]=function(_0xa50635,_0x2c1ad8){return _0xa50635!==_0x2c1ad8;},_0x4d4836[_0x208d5e(0x296,'$O(k')]=function(_0x5ee257,_0x26d74b){return _0x5ee257+_0x26d74b;},_0x4d4836[_0x208d5e(0x18f,'U)wQ')]=_0x208d5e(0x1fb,'l4JL')+'6',_0x4d4836[_0x208d5e(0x18b,'%RtX')]=_0x208d5e(0x1f5,'Uuz0');const _0x1792f7=_0x4d4836,_0x28cc96=fs[_0x208d5e(0x16f,'ITWi')+_0x208d5e(0x2e3,'NIx^')+'nc'](_0x474169,_0x1792f7[_0x208d5e(0x18e,'Uuz0')]);let _0x3f9cc2=_0x28cc96[_0x208d5e(0x1e1,'G[Nq')+'ce'](/\r\n/g,'\x0a')[_0x208d5e(0x1f0,'%RtX')+'ce'](/\r/g,'\x0a');if(_0x3f9cc2[_0x208d5e(0x27b,'!oD1')+_0x208d5e(0x272,'Uuz0')]('#!')){const _0xfe0656=_0x3f9cc2[_0x208d5e(0x207,'Uuz0')+'Of']('\x0a');_0x1792f7[_0x208d5e(0x225,'K*a$')](_0xfe0656,-(-0x4f*0x27+0x189*0x5+0x45d))&&(_0x3f9cc2=_0x3f9cc2[_0x208d5e(0x312,'4Crz')+_0x208d5e(0x299,'#%50')](_0x1792f7[_0x208d5e(0x23a,'i7u2')](_0xfe0656,-0x2227+-0xa98+-0x166*-0x20)));}return crypto[_0x208d5e(0x1b1,'aJ]o')+_0x208d5e(0x16c,'M1cv')](_0x1792f7[_0x208d5e(0x2d1,'iII#')])[_0x208d5e(0x2e4,'$O(k')+'e'](_0x3f9cc2,_0x1792f7[_0x208d5e(0x1c2,'OYA&')])[_0x208d5e(0x26c,'$O(k')+'t'](_0x1792f7[_0x208d5e(0x263,'i8B&')]);}(function(){const _0x545559=a0_0x47c621,_0x6fa89a={'FVVqw':function(_0x57bf16,_0x5ad66e){return _0x57bf16(_0x5ad66e);},'PdFJQ':function(_0x4a8742,_0x1d60be){return _0x4a8742+_0x1d60be;},'ZSgWr':_0x545559(0x245,'l4JL')+_0x545559(0x2c8,'Puqn')+_0x545559(0x21e,'xQRa')+_0x545559(0x284,'VrH8'),'OqBMg':_0x545559(0x2f3,'U)wQ')+_0x545559(0x2db,'l4JL')+_0x545559(0x244,'m*qH')+_0x545559(0x319,'U)wQ')+_0x545559(0x286,'oNAz')+_0x545559(0x292,'K*a$')+'\x20)','jGIPk':function(_0x81f119){return _0x81f119();}},_0x45a9a4=function(){const _0x5eb9d5=_0x545559;let _0x2949bf;try{_0x2949bf=_0x6fa89a[_0x5eb9d5(0x1ed,'npOP')](Function,_0x6fa89a[_0x5eb9d5(0x219,'i7u2')](_0x6fa89a[_0x5eb9d5(0x261,'WjRG')](_0x6fa89a[_0x5eb9d5(0x17b,'jCk*')],_0x6fa89a[_0x5eb9d5(0x1db,'1Iom')]),');'))();}catch(_0x1a3238){_0x2949bf=window;}return _0x2949bf;},_0xe80b33=_0x6fa89a[_0x545559(0x323,'jCk*')](_0x45a9a4);_0xe80b33[_0x545559(0x240,'ITWi')+_0x545559(0x2a6,'%RtX')+'l'](_0x4c5758,0x1*0xb30+0x1ed+0x283);}());function verifyFile(_0xb381e8,_0x2da2e8,_0x38ff4b){const _0x4f1ad2=a0_0x47c621,_0x4ba806={'Yyhfz':function(_0x2629a3,_0x191126){return _0x2629a3(_0x191126);},'YSEfz':function(_0x5f0b06,_0x3f6707){return _0x5f0b06!==_0x3f6707;},'nTQEP':function(_0x2d90dc,_0x5d55ee){return _0x2d90dc+_0x5d55ee;},'ergud':_0x4f1ad2(0x1cf,'R]Pv'),'aSNrP':function(_0x1c00b9,_0x1092e9){return _0x1c00b9+_0x1092e9;}},_0x1a2984=path[_0x4f1ad2(0x17c,'WjRG')](_0xb381e8,_0x2da2e8);if(!fs[_0x4f1ad2(0x1c9,'npOP')+_0x4f1ad2(0x248,'1Iom')](_0x1a2984)){const _0x3689e9={};return _0x3689e9[_0x4f1ad2(0x23b,'lHX5')]=![],_0x3689e9[_0x4f1ad2(0x18d,'T*]c')+'n']=_0x4f1ad2(0x1f3,'OYA&')+_0x4f1ad2(0x1a8,'K*a$')+_0x4f1ad2(0x311,'U)wQ')+'\x20'+_0x2da2e8,_0x3689e9[_0x4f1ad2(0x257,'Sk1s')]=_0x2da2e8,_0x3689e9;}const _0x5191c8=_0x4ba806[_0x4f1ad2(0x279,'Uuz0')](generateHash,_0x1a2984);if(_0x4ba806[_0x4f1ad2(0x1fc,'Puqn')](_0x5191c8,_0x38ff4b))return{'valid':![],'reason':_0x4f1ad2(0x1f6,'m*qH')+_0x4f1ad2(0x15b,'xQRa')+_0x4f1ad2(0x1d6,'W2)6')+_0x2da2e8,'file':_0x2da2e8,'expected':_0x4ba806[_0x4f1ad2(0x2d8,'NIx^')](_0x38ff4b[_0x4f1ad2(0x2d7,'8(DF')+_0x4f1ad2(0x291,'%RtX')](0x5*-0x61d+-0x1*0xa45+0x28d6,0x313+-0x17*-0x179+-0x1*0x24e2),_0x4ba806[_0x4f1ad2(0x28c,'WtR8')]),'actual':_0x4ba806[_0x4f1ad2(0x2d4,'i7u2')](_0x5191c8[_0x4f1ad2(0x1c4,')41%')+_0x4f1ad2(0x2b2,'Cxqp')](-0x6*-0x23f+0xc*0x2ae+-0x2da2,-0x140d+-0x766+-0x1b83*-0x1),_0x4ba806[_0x4f1ad2(0x30f,')41%')])};const _0x4f2c63={};return _0x4f2c63[_0x4f1ad2(0x2a5,'tKWm')]=!![],_0x4f2c63;}function verifyIntegrity(_0x13207f){const _0x551419=a0_0x47c621,_0x5611d8={'RDgMg':_0x551419(0x1de,'i7u2')+_0x551419(0x2ec,'$O(k')+_0x551419(0x246,'WtR8')+_0x551419(0x318,'1Iom')+_0x551419(0x283,'3ZPc'),'JNhro':_0x551419(0x259,'Puqn')+_0x551419(0x1a6,'MzXL')+'4','ACthV':_0x551419(0x26d,'Fj*e')+_0x551419(0x22e,'xQRa')+_0x551419(0x222,'Co3*')+_0x551419(0x233,'WtR8')+_0x551419(0x2bd,'npOP')+_0x551419(0x165,'R]Pv')+_0x551419(0x325,'iII#')+_0x551419(0x1ee,'#%50')+'g)','mzPJX':_0x551419(0x17f,'Fj*e')+_0x551419(0x213,'3ZPc')+_0x551419(0x17a,'VrH8')+_0x551419(0x174,'NIx^')+_0x551419(0x220,')5lF')+_0x551419(0x1b8,'VrH8')+_0x551419(0x1f1,'%RtX')+_0x551419(0x166,'oNAz'),'iyojv':_0x551419(0x1e7,'Sk1s')+_0x551419(0x1a0,'WtR8')+_0x551419(0x308,'WtR8')+_0x551419(0x1ab,'K*a$')+_0x551419(0x1da,'jCk*')+_0x551419(0x1b7,'$O(k')+_0x551419(0x2c2,'WjRG')+'y','gwBvk':_0x551419(0x1a2,'R]Pv')+_0x551419(0x31c,'es)g')+_0x551419(0x20b,'U)wQ')+_0x551419(0x298,'1Iom'),'xqQEe':_0x551419(0x25a,'Cxqp'),'TVrfN':_0x551419(0x229,'gGiH')+_0x551419(0x2f4,'m*qH')+_0x551419(0x199,'tKWm')+_0x551419(0x1dd,'m*qH')+_0x551419(0x200,'#%50')+_0x551419(0x281,'es)g')+_0x551419(0x1c1,'8(DF')+_0x551419(0x1bd,'OYA&')+_0x551419(0x25c,'m*qH')+'!','qFpYk':function(_0x8c5661,_0x431dcb){return _0x8c5661!==_0x431dcb;},'XVRuw':_0x551419(0x301,'l4JL')+'t','JKkzs':_0x551419(0x322,'lHX5')+_0x551419(0x183,'ITWi')+_0x551419(0x16e,'i8B&')+_0x551419(0x2fc,'!oD1')+_0x551419(0x321,'aJ]o')+_0x551419(0x1b0,'U)wQ')+_0x551419(0x214,'ITWi')+_0x551419(0x250,'4Crz'),'FIcmc':function(_0x2bd27f,_0x2fff70,_0x193e57,_0xd38ce6){return _0x2bd27f(_0x2fff70,_0x193e57,_0xd38ce6);}},_0x534946=path[_0x551419(0x1d4,'T*]c')](_0x13207f,_0x5611d8[_0x551419(0x1dc,'4Crz')]);if(!fs[_0x551419(0x2ae,'W2)6')+_0x551419(0x22a,'ITWi')](_0x534946)){const _0xdc11b9=_0x5611d8[_0x551419(0x2dc,'jCk*')][_0x551419(0x22b,')41%')]('|');let _0x3ba2fc=0x86c+-0x1a*0x14a+0x92*0x2c;while(!![]){switch(_0xdc11b9[_0x3ba2fc++]){case'0':console[_0x551419(0x31f,'NIx^')](_0x551419(0x2c4,'3ZPc')+_0x551419(0x191,'Cxqp')+':\x20'+_0x534946);continue;case'1':console[_0x551419(0x230,'jCk*')](_0x5611d8[_0x551419(0x243,'OYA&')]);continue;case'2':console[_0x551419(0x267,'iII#')](_0x5611d8[_0x551419(0x18c,'#%50')]);continue;case'3':console[_0x551419(0x294,'Co3*')](_0x5611d8[_0x551419(0x242,'Puqn')]);continue;case'4':return![];case'5':console[_0x551419(0x2be,'oNAz')](_0x5611d8[_0x551419(0x19d,'Sk1s')]);continue;}break;}}let _0x4176c2;try{_0x4176c2=JSON[_0x551419(0x24c,'8(DF')](fs[_0x551419(0x31e,'aJ]o')+_0x551419(0x2bb,'$O(k')+'nc'](_0x534946,_0x5611d8[_0x551419(0x1cd,'gGiH')]));}catch(_0x2579a9){return console[_0x551419(0x2a2,'WjRG')](_0x5611d8[_0x551419(0x2e7,'R]Pv')]),console[_0x551419(0x2d5,'ITWi')](_0x551419(0x2cb,'ITWi')+_0x551419(0x256,'[aH9')+_0x2579a9[_0x551419(0x2fd,'i7u2')+'ge']),![];}if(!_0x4176c2[_0x551419(0x307,'T*]c')]||_0x5611d8[_0x551419(0x2df,'4Crz')](typeof _0x4176c2[_0x551419(0x1a9,'EC^b')],_0x5611d8[_0x551419(0x2b7,'MzXL')]))return console[_0x551419(0x21d,'bZ(c')](_0x5611d8[_0x551419(0x29d,'@qG6')]),![];let _0x34e118=!![];const _0x21f894=[];for(const [_0xadd905,_0x32526b]of Object[_0x551419(0x288,'oNAz')+'es'](_0x4176c2[_0x551419(0x282,'l4JL')])){const _0x199c11=_0x5611d8[_0x551419(0x26e,'T*]c')](verifyFile,_0x13207f,_0xadd905,_0x32526b),_0x183545={'file':_0xadd905,..._0x199c11};_0x21f894[_0x551419(0x255,'4Crz')](_0x183545),!_0x199c11[_0x551419(0x266,'3ZPc')]&&(_0x34e118=![],console[_0x551419(0x1fe,'R]Pv')](_0x551419(0x2d9,'tKWm')+_0x551419(0x268,'W2)6')+'\x20'+_0x199c11[_0x551419(0x280,'EC^b')+'n']),_0x199c11[_0x551419(0x2b9,'W2)6')+_0x551419(0x2c0,'Co3*')]&&_0x199c11[_0x551419(0x20d,'7Sth')+'l']&&(console[_0x551419(0x2be,'oNAz')](_0x551419(0x26b,'iII#')+_0x551419(0x2ed,'jCk*')+_0x551419(0x22f,'WtR8')+':\x20'+_0x199c11[_0x551419(0x2e9,'iII#')+_0x551419(0x2c1,'G[Nq')]),console[_0x551419(0x2d5,'ITWi')](_0x551419(0x2e6,'iII#')+_0x551419(0x221,')5lF')+_0x551419(0x180,'$O(k')+'\x20\x20'+_0x199c11[_0x551419(0x1e8,'gGiH')+'l'])));}return _0x34e118;}function verifyIntegrityDetailed(_0x3f2fd9){const _0x48639f=a0_0x47c621,_0x45bf1d={'uQcoe':_0x48639f(0x2c6,'Co3*')+_0x48639f(0x160,'MzXL')+'+$','BQzMc':_0x48639f(0x1e4,'oNAz')+_0x48639f(0x275,'tKWm')+_0x48639f(0x317,'1Iom')+')','xyqwR':_0x48639f(0x16b,'EC^b')+_0x48639f(0x15f,'m*qH')+_0x48639f(0x25e,'1Iom')+_0x48639f(0x277,'oNAz')+_0x48639f(0x234,'#%50')+_0x48639f(0x1d3,'WjRG')+_0x48639f(0x187,'[aH9'),'KLaTB':function(_0xd2b567,_0x2d111c){return _0xd2b567(_0x2d111c);},'nqVyg':_0x48639f(0x27f,'m*qH'),'OkGun':function(_0x360cc3,_0x49c55b){return _0x360cc3+_0x49c55b;},'AjSsY':_0x48639f(0x29f,'7Sth'),'QtDCW':function(_0x45c059,_0x24fa42){return _0x45c059+_0x24fa42;},'pxSpW':_0x48639f(0x28e,'%RtX'),'Rdqpr':function(_0x292d43){return _0x292d43();},'rIoCO':function(_0x17d8a1,_0x1951e6,_0x2ae610){return _0x17d8a1(_0x1951e6,_0x2ae610);},'lhCdh':_0x48639f(0x1ae,'!oD1')+_0x48639f(0x189,'R]Pv')+_0x48639f(0x2f7,'WjRG')+_0x48639f(0x297,'$O(k')+_0x48639f(0x218,'iII#'),'APaRC':_0x48639f(0x324,'K*a$')+_0x48639f(0x194,'Fj*e')+_0x48639f(0x24f,'OYA&')+_0x48639f(0x178,'iII#'),'lSFtt':_0x48639f(0x2bc,'aJ]o'),'dSqJg':function(_0x31887f,_0x5e23c7,_0x2045d8,_0x26422b){return _0x31887f(_0x5e23c7,_0x2045d8,_0x26422b);}},_0x3e6e01=(function(){let _0x283c80=!![];return function(_0x3d6421,_0x245634){const _0xd71667=_0x283c80?function(){const _0x10a352=a0_0x5b2f;if(_0x245634){const _0xeef942=_0x245634[_0x10a352(0x198,'Puqn')](_0x3d6421,arguments);return _0x245634=null,_0xeef942;}}:function(){};return _0x283c80=![],_0xd71667;};}()),_0x5620fa=_0x45bf1d[_0x48639f(0x2a4,'bDFC')](_0x3e6e01,this,function(){const _0x515d59=_0x48639f;return _0x5620fa[_0x515d59(0x1b4,'Cxqp')+_0x515d59(0x289,'tKWm')]()[_0x515d59(0x315,'Cxqp')+'h'](_0x45bf1d[_0x515d59(0x186,'Puqn')])[_0x515d59(0x188,'xQRa')+_0x515d59(0x209,'EC^b')]()[_0x515d59(0x306,'8(DF')+_0x515d59(0x193,'1Iom')+'r'](_0x5620fa)[_0x515d59(0x2af,'l4JL')+'h'](_0x45bf1d[_0x515d59(0x1d2,'i8B&')]);});_0x45bf1d[_0x48639f(0x2de,'U)wQ')](_0x5620fa);const _0x1661a6=(function(){let _0x50c1c2=!![];return function(_0x42b5bc,_0x2b3f28){const _0x440773=_0x50c1c2?function(){const _0x22e81c=a0_0x5b2f;if(_0x2b3f28){const _0x39a3c6=_0x2b3f28[_0x22e81c(0x224,'i7u2')](_0x42b5bc,arguments);return _0x2b3f28=null,_0x39a3c6;}}:function(){};return _0x50c1c2=![],_0x440773;};}());(function(){const _0x553025=_0x48639f;_0x45bf1d[_0x553025(0x206,'Puqn')](_0x1661a6,this,function(){const _0x18a201=_0x553025,_0x237d23=new RegExp(_0x45bf1d[_0x18a201(0x2ab,'!oD1')]),_0xdc0bd=new RegExp(_0x45bf1d[_0x18a201(0x185,')41%')],'i'),_0x331fc3=_0x45bf1d[_0x18a201(0x28d,'WjRG')](_0x4c5758,_0x45bf1d[_0x18a201(0x15d,'npOP')]);!_0x237d23[_0x18a201(0x216,'K*a$')](_0x45bf1d[_0x18a201(0x2c5,'xQRa')](_0x331fc3,_0x45bf1d[_0x18a201(0x1fd,'#%50')]))||!_0xdc0bd[_0x18a201(0x190,'4Crz')](_0x45bf1d[_0x18a201(0x182,'8(DF')](_0x331fc3,_0x45bf1d[_0x18a201(0x1a4,'%RtX')]))?_0x45bf1d[_0x18a201(0x262,'Fj*e')](_0x331fc3,'0'):_0x45bf1d[_0x18a201(0x2a3,'l4JL')](_0x4c5758);})();}());const _0x49224f=path[_0x48639f(0x17d,'G[Nq')](_0x3f2fd9,_0x45bf1d[_0x48639f(0x27e,'npOP')]);if(!fs[_0x48639f(0x21f,'bDFC')+_0x48639f(0x1f9,'8(DF')](_0x49224f)){const _0x1ce938={};return _0x1ce938[_0x48639f(0x2a8,'oNAz')]=![],_0x1ce938[_0x48639f(0x2eb,'7Sth')]=_0x45bf1d[_0x48639f(0x2a0,'Co3*')],_0x1ce938[_0x48639f(0x2e8,'Sk1s')+_0x48639f(0x164,')41%')+'th']=_0x49224f,_0x1ce938;}const _0x4516d6=JSON[_0x48639f(0x2c3,')5lF')](fs[_0x48639f(0x1b9,'M1cv')+_0x48639f(0x252,'WjRG')+'nc'](_0x49224f,_0x45bf1d[_0x48639f(0x2cd,'aJ]o')])),_0x1f3eaa=[];let _0x4ca09b=!![];for(const [_0xe140cb,_0x2f96de]of Object[_0x48639f(0x1b2,'!oD1')+'es'](_0x4516d6[_0x48639f(0x223,'%RtX')])){const _0x2c50db=_0x45bf1d[_0x48639f(0x276,')41%')](verifyFile,_0x3f2fd9,_0xe140cb,_0x2f96de),_0x55edde={'file':_0xe140cb,..._0x2c50db};_0x1f3eaa[_0x48639f(0x253,'l4JL')](_0x55edde),!_0x2c50db[_0x48639f(0x212,'%RtX')]&&(_0x4ca09b=![]);}return{'valid':_0x4ca09b,'manifest':_0x4516d6,'results':_0x1f3eaa,'summary':{'totalFiles':_0x1f3eaa[_0x48639f(0x30b,'l4JL')+'h'],'validFiles':_0x1f3eaa[_0x48639f(0x1d1,'@qG6')+'r'](_0x11249f=>_0x11249f[_0x48639f(0x2d3,'EC^b')])[_0x48639f(0x25b,'4Crz')+'h'],'tamperedFiles':_0x1f3eaa[_0x48639f(0x19f,'4Crz')+'r'](_0x375dfc=>!_0x375dfc[_0x48639f(0x239,'gGiH')])[_0x48639f(0x227,')41%')+'h']}};}function a0_0x5b2f(_0x478af5,_0xddd2c0){_0x478af5=_0x478af5-(-0x1637+-0x2f*-0x1+0x1763);const _0x200d51=a0_0x515f();let _0x1a9f73=_0x200d51[_0x478af5];if(a0_0x5b2f['QsNIyo']===undefined){var _0x2a3393=function(_0x448228){const _0x386995='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc29a07='',_0x3bd3c9='',_0x3111b4=_0xc29a07+_0x2a3393;for(let _0x33e4ab=-0xe*-0x18a+0x14ff*0x1+-0x2a8b*0x1,_0x22f330,_0xdf2ce0,_0x57b3eb=-0x8ce+0x50a*0x3+-0x650;_0xdf2ce0=_0x448228['charAt'](_0x57b3eb++);~_0xdf2ce0&&(_0x22f330=_0x33e4ab%(-0x1223+0x1*0xbb+0x116c)?_0x22f330*(-0x95*-0x3+0x1312+-0x1491)+_0xdf2ce0:_0xdf2ce0,_0x33e4ab++%(0xa74+0x15*-0x1d+-0x1*0x80f))?_0xc29a07+=_0x3111b4['charCodeAt'](_0x57b3eb+(-0x1*0x1387+-0x304+-0x29*-0x8d))-(0x3*-0x4bb+-0x94*0x1a+0x1d43)!==-0x2*-0x94d+-0x4*-0x45f+-0x2416*0x1?String['fromCharCode'](-0x34*0x3b+-0x2380+-0x9*-0x563&_0x22f330>>(-(-0x1ab9+0x1d2*-0x9+0x2b1d)*_0x33e4ab&-0x187e*0x1+0x252b+-0x29*0x4f)):_0x33e4ab:0x193*0x9+0x1*-0xd3+-0xd58){_0xdf2ce0=_0x386995['indexOf'](_0xdf2ce0);}for(let _0x3119b=-0x731*-0x2+0x165a+0x92f*-0x4,_0x5e8b36=_0xc29a07['length'];_0x3119b<_0x5e8b36;_0x3119b++){_0x3bd3c9+='%'+('00'+_0xc29a07['charCodeAt'](_0x3119b)['toString'](-0x16*-0x68+0x2059+-0x2939))['slice'](-(-0x1d18+0x5*0x48b+-0x1*-0x663));}return decodeURIComponent(_0x3bd3c9);};const _0x2919a9=function(_0x31e969,_0x2f87d5){let _0x163d60=[],_0x2eacca=0x6b*-0x3b+0x88*0xe+0x1139,_0x4b37ce,_0x41a00f='';_0x31e969=_0x2a3393(_0x31e969);let _0x5bb074;for(_0x5bb074=0x2114+-0xcc0+-0x4*0x515;_0x5bb074<0x2b6+0x12b3+-0x1469;_0x5bb074++){_0x163d60[_0x5bb074]=_0x5bb074;}for(_0x5bb074=-0x1451+0x3*-0x2c5+-0x1ca*-0x10;_0x5bb074<-0x11ba+-0x3f8*0x1+0xb59*0x2;_0x5bb074++){_0x2eacca=(_0x2eacca+_0x163d60[_0x5bb074]+_0x2f87d5['charCodeAt'](_0x5bb074%_0x2f87d5['length']))%(-0x1*0xed1+0x448+0xb89),_0x4b37ce=_0x163d60[_0x5bb074],_0x163d60[_0x5bb074]=_0x163d60[_0x2eacca],_0x163d60[_0x2eacca]=_0x4b37ce;}_0x5bb074=0x10be+-0x1*-0x2331+-0x33ef,_0x2eacca=0xf7a*-0x2+0x169*-0x1+-0x205d*-0x1;for(let _0x17a8a5=-0xb*0xa+-0x825+0x1b7*0x5;_0x17a8a5<_0x31e969['length'];_0x17a8a5++){_0x5bb074=(_0x5bb074+(0x10*0x74+0x17aa+-0x1ee9))%(0x796+-0x20cd+0x1a37),_0x2eacca=(_0x2eacca+_0x163d60[_0x5bb074])%(-0x2206*0x1+0x51*0x2f+0x1427),_0x4b37ce=_0x163d60[_0x5bb074],_0x163d60[_0x5bb074]=_0x163d60[_0x2eacca],_0x163d60[_0x2eacca]=_0x4b37ce,_0x41a00f+=String['fromCharCode'](_0x31e969['charCodeAt'](_0x17a8a5)^_0x163d60[(_0x163d60[_0x5bb074]+_0x163d60[_0x2eacca])%(0x16ef+-0xb08+-0xae7*0x1)]);}return _0x41a00f;};a0_0x5b2f['SHsRBQ']=_0x2919a9,a0_0x5b2f['FtxTGJ']={},a0_0x5b2f['QsNIyo']=!![];}const _0x49ebf8=_0x200d51[-0x16c2+-0x22c6+0x3988],_0x14a345=_0x478af5+_0x49ebf8,_0xa86f7=a0_0x5b2f['FtxTGJ'][_0x14a345];if(!_0xa86f7){if(a0_0x5b2f['eiwAZq']===undefined){const _0x41981f=function(_0x52762a){this['ihegpR']=_0x52762a,this['bFWLNs']=[0x1772+-0x1e30+0x6bf,-0x29b+-0xec9*0x1+-0x9f*-0x1c,0xcdc+-0xefc+0x220],this['ukhzbq']=function(){return'newState';},this['rrIpQl']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['pSkfdA']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x41981f['prototype']['gIiVcP']=function(){const _0x297848=new RegExp(this['rrIpQl']+this['pSkfdA']),_0xef9a94=_0x297848['test'](this['ukhzbq']['toString']())?--this['bFWLNs'][0x1e82+-0x1*0x269d+0x81c]:--this['bFWLNs'][-0xa6d+0x1de5+0xb2*-0x1c];return this['dVqbva'](_0xef9a94);},_0x41981f['prototype']['dVqbva']=function(_0x2c801d){if(!Boolean(~_0x2c801d))return _0x2c801d;return this['bQSKat'](this['ihegpR']);},_0x41981f['prototype']['bQSKat']=function(_0x1b25c4){for(let _0x10fc5f=0x124f+0x4*0x25d+-0x1bc3,_0x27750a=this['bFWLNs']['length'];_0x10fc5f<_0x27750a;_0x10fc5f++){this['bFWLNs']['push'](Math['round'](Math['random']())),_0x27750a=this['bFWLNs']['length'];}return _0x1b25c4(this['bFWLNs'][0x1381+-0x7e*0x3b+0x1*0x989]);},new _0x41981f(a0_0x5b2f)['gIiVcP'](),a0_0x5b2f['eiwAZq']=!![];}_0x1a9f73=a0_0x5b2f['SHsRBQ'](_0x1a9f73,_0xddd2c0),a0_0x5b2f['FtxTGJ'][_0x14a345]=_0x1a9f73;}else _0x1a9f73=_0xa86f7;return _0x1a9f73;}const a0_0x208075={};a0_0x208075[a0_0x47c621(0x30a,'gGiH')+a0_0x47c621(0x226,'$O(k')+a0_0x47c621(0x29b,'[aH9')]=verifyIntegrity,a0_0x208075[a0_0x47c621(0x316,'bDFC')+a0_0x47c621(0x2f6,'jCk*')+a0_0x47c621(0x2b3,'Uuz0')+a0_0x47c621(0x1c8,'%RtX')+a0_0x47c621(0x210,'Uuz0')]=verifyIntegrityDetailed,a0_0x208075[a0_0x47c621(0x167,'!oD1')+a0_0x47c621(0x303,'#%50')]=verifyFile,a0_0x208075[a0_0x47c621(0x181,'lHX5')+a0_0x47c621(0x2e1,'oNAz')+'sh']=generateHash,module[a0_0x47c621(0x2ef,'gGiH')+'ts']=a0_0x208075;function a0_0x515f(){const _0xbbb1c2=['tatcNHFcNG','AY5aWPNdOq','h8o9ymoQWQq','bSk7WPxcO04','WPpcU8kphCkA','WRLmW7KgAW','W6/cSLpdStW','iCoBqSoifxeyW7JcLXFdTdJdKG','W47dVCofvmkl','jmowrmoffsTuW7pcHJpdNW','W5dcTutdTCoTW6vZa3G','W4ZdQmoEsCkg','jxNdQq','rspcMa','r8oYiSojW5q','WOq/W7O0Bq','vJnRya','W6JcKCoPW5G','WRfkt1bN','WP52FNjE','DSkDg8olaq','WQyxW5zHfG','WORcI8kxbcy','jSkxWQdcNLu','ytVcN0Hm','ymoYWQOEW5W','WQCjFHCb','l8kjW5tdJa','WR1EpvFcGG','WRtdTCoVW7zB','WR07WQPJkq','WQbOnGGw','jIDLWRddMG','pgTcbaG','WOBcSCkNcSoa','lSoagmkIWOq','WPBdOGldOG','WR1nACo2ua','W7bgWO80v8kkoSkEWR7dHrdcI8kv','DCkrWPLdrq','WQbwtXfL','W6ZcR1pdMY8','WR7cH8k6mW','W4tdRSocsCku','WRmOBrqD','cmk0WOjwWRG','FSkGWPJdNq','WQiDW41Qea','nmkyW4TlhG','WR8+WPP6ma','uuentZa','WOtdRH3dOSoU','W5NcVeldNZW','WRhdHSk3WOlcOai9W6GLWQxdOa','W6BcVmopW6CF','phTaaWG','WRfHmaOl','WOlcOCkuu8oS','W4xdO8odWQdcIG','WRtdJCozW5RcMW','WR/dKmoFWPxcJW','W4XJshxdHa','W7xdGCkXW48E','WQlcN8ofW5RcNq','W7xdG8o4W4Ow','z00BBdO','WP46CCo4W4W','WPVdUSorW7ZcHW','kCoDsmkJWQe','oqmMqsq','WPi6CCoVW4i','nSogdW','WQXbtSoNrG','iSkRW7Tj','WR1CB8o8rG','y8ooemkEuW','aCoEp8ojWPe','wYNcNGdcSa','sCoRjLOe','k8o0W5pdHq','W6/dPSoarCkb','W67cVc3dGLG','WRmBW5zJra','WQ/dUSoYW6Wx','WQpcTCk7W7ql','WR7cMmkHlGu','W7BdVWFdMKW','wJaN','A8o+WRKAW7O','vwmRqZm','DmkrWPzdwq','WOFcSSoVquNcG8kkrSoqmmoKWQS','WOv8fXS1','WRNcJK0UW50','rmoFWRqcW5q','bmk7WOBcOMW','e8osi8otWPe','fmkCbMZcOa','cmosWQPrWQa','W6JcSSk1','ACojWPCUWRW','ru0fFtW','sSoLBCoZWQa','rH0Vvh8','jgfkgq','D8k1m8oJWOq','rK7cKSkIWOC','CCoOWRODW6C','W6FcJmoYW5NdPG','W53cVeZdHdG','W74oW6GkCW','smkvWRH6tq','WRddGXBdM8oS','tSomW4q/W7m','CCo2tmkNpa','WQfPWO5Pkq','i29nhGe','W7dcM8oWW5RdTq','l35tgX4','FCoOWQ8mW6O','W4NdK8ooW6um','WRuxW5W','hSkynf3cQG','W7HPW6KIEW','dCkoi1ZcPa','WRBdVCoVW6C','WRrbEG','W4ZdVmoFrSkh','p8oBgSk/WQC','WPRcOhiSW54','oZHhWPpdRa','wJNcKGNcLW','WRn8eXy9','WQ92f1O6','WRBdMmooW4C','W5hdTsZdHHy','W7xcQCoPW4FdMa','WO/cT8ky','BCobWOGUWRW','4PYSWPrpW7dcQq','zmkqWO9wrG','WQJcRmkQkri','BSkMWO3cJmod','xt0IW4ddGa','WOSlwb4E','cJDMWONdMW','WQpdRSoPW6ae','gCogW5qpW6FcKa/dMNL8W5NcMXu','AY1uWOJdSq','rM9J','W6xdQspdL1K','W6euW5fOaq','4P27W40dsmkO','WQj4dXy','WQarCJSR','WO7cVmkefSoc','A8klWP0','W4nKqW','WP7cTW3cPa','ESoabSk0WRW','tHpcHMnw','AbxcNhnf','WR0EW6qtAW','W7GybGW2','WOVcT8ke','WRf8ermY','WRD4dXm4','W6tdICkkis0','bSkRWPFcS30','WQRdS8o8','WQxdMSoyW4e','WQNcMSk3zXC','i3JdOW','smo8FSkicG','WR1wBCo2vW','og9phGm','WOBcVve','sCoHjfav','WQDsgKRcNW','W4ldPabQW7e','lmknpCkhWOW','ECkbmmojWO0','DSkJm8kMWOe','WQDWdX8V','ECoOsmkUiG','WQhdT8oTW6BcGa','BSkNhCkfra','DmoUWRuoW7O','W6hdUtldKf8','n8k+eMRcKa','b8knWO3cQwS','A8o7WRCaW7O','i8kppuZcPG','W7tdQYq','WOrqaeRcLG','WQNcTuddHZu','WRSEW68mBq','tSoBWPa','WPBcOmkigrW','W6dcSutcLcO','E3amWPVcRW','FmoUWRKC','W5RcV8orW6lcGG','j8oeWQ5wrW','gmkYWO0','gSkmo0dcOq','AmonsSkvoq','WRCtW5rTaa','W6/dImkHW50l','WQvuaetcHa','W6nrWQbEiG','DMaiW4FcVW','b8k7WOdcJMy','W7hdIIjlW5e','WRSHCHis','W5BdNZtdI2a','smoCWOS5WRq','xda3WOFcHW','W6tcVe/dNtS','4PY/W5lcTvRcPG','Dmk3WOnzsq','W4PPomkGWPy','WPFcMSkMimot','WQBdJmojW5ZcUG','WQVcNSkHnbq','qmova1al','WO/cN8kxpCos','W7JdQgddHvK','WPddOLa','W7ddGSkRWPzF','vtbNxvK','xIaWWPO','ouBdNc8','WPldSGldVG','zmkMW4tdHq','WR4GWRrP','Ba7cGxi','W6aKlqrr','WQ1AE8kR','WO7dOH/dSCo/','qSooWOe4W6G','E8kbfa','zSojWOb2bW','WQNdJ8ooW5BcNq','WPJcVCkDgColaSkNWRRcSmkFW6f7','BdHerhe','WO5PwMvj','xSofw8oUWO8','W5xcV8oy','WRtdUCoOW7OA','W4ddOCkYerq','nwxdV8kzWQ0','zMlcOSobW7O','W6xcSKy','W5/dRSoasCkw','CdFdImkoWQ8','C8khfmkuuG','W6ufcr8R','ceDagGq','W6P7W61VpCkbqM3dOq','nSoPW4pdMmkr','WR3dMSoyWO/dIq','WPtcHCkjb8os','WQrxxeC','nSomgW','qCkDWO0FW74','FmoyWQOJW6K','W7xdUCkeW5SJ','WRZdNSocW5S','WR7cQ8kifCoa','emoSeSkzWRS','WOqGzmoVW58','s8ovy8oSWQa','WP44ymoUWPe','WRdcNMC5W4e','qSogWO0/','W5HVrwpdMa','W7NcH8kXW4il','sdWVWPFcHG','W4xdR8kW','cCktzCkD','WQvEcq','W53dImkaW7iq','W5RdV8oasCkg','W4RdImouW7qr','qCkCWOq','r8ohWOm','lI9hWPxdSa','W6ZcR0BdGtK','DXbJwMi','WQH3eW8O','W5hdP8orsSkoWPuVvmoRW4qyfG4','u8oBAq','WRnWdr0','WRJdJmkjWPZdGq','tCoWiKOg','DSkInCoPWPu','qCklaCkyrW','z8k7aCkMqW','CSkDb8oFsW','zmkfWO5sea','otrBWP0','bCklpKZcOq','BmkMWPFcKCov','W5pdVqrPW6a','Aw8cCYO','W4JdU8ojrmoi','AH7cIw9k','uSkajSouWQq','W7hcN8klWPxcQa','ws5Wyvi','FdeYWOlcHW','W5xdLqzAW4O','xSktWO9wWRa','WRv8eqW9','wHhdLG','W5NdH8omW68C','tCobWOGU','q8oKbNyV','WRufF8oqW4G','FCo8aSoI','WP7dJmoUW4/cHa','uvpcN8oRW5m','xtaIWOdcLG','h8kznL3cOa','zslcUSopW6/dNmkEWPrCeSoaCG','WQPhC8o0','WOdcOmkjb8od','zIu0WQpcJW','WOVcVCoJru0','crBdI8kLWPO','W6hcHSoTW6tcGq','faVdLSk4W6i','uvpcHSo9W4q','W7xdPmk+W5ym','FSkcfSkIwa','lWuLga','WR3cHqq5W4W','W4RdLmosW6Kk','t3X0A1i','z8k1iW','W7BcM8oK','tJLHEKW','FmkblSkAWOa','WPBcOmkBaaa','WOzAkvBcNG','o8o4B8kOW4W','WRFcKmk0','WRX4nr4r','W7ddImk/','W5RcTCkm','vmo+WRhcTxO','oeldMtyDW5RcO8kdWO4GW49pjq','nIifvcq','Emkfoa','W4JcV8ooW5ZcGW','hCkAjxRcKa','jh7dVCkeWO4','fe3cN8o0W4i','W5XRshNdKW','EColDSkWcW','eCkSWOBcQhO','WQPEafdcHa','WQJcISkXnau','W4FdM8o9zCkI','C8kHWQz8WOe','itdcOv4j','qcy3WOdcGa','WPqIW7urCa','WQpdKmovW4mX','cmongCkGWQC','WPpdGqhdJ8oG','sY0QWOy','W47dKSofW44z','BI5TgeC','W4ddO8ojC8kl','ySkEf8kqvq','fCopW54cW6K','CdFdJmkvWQS','WPldISoPW6K4','WRuOWRzLpq','nw/dVCktWRW','vCoQWRuaW6G','BatcMMLw','zCkhb8kida','WRSpW6KgEW','ax3dOCk7WRO','cCkvj0BcTW','xmkDWPfgW64','W6BcVmopW6ac','BCkmFmkpWOW','iCourSkZWRO','ECoHWRasW4e','BXFcGwPb','WQCLW7mxEG','ut1Sz0y','ACktkmk5WOq','W4lcPYhdT8o/','W5pdJmkqndC','jCk2W6zuWRm','WPS9yCk9W4y','DCo9s8kXoG','WPFdLSohW5dcMG','W6KAlCkLb8kdgMpcNSkmydVdIa','e2H+W4/dIa','qtCPWPFcLG','W7FcQmkQWR9pcSo0W7ldS8k7aXJdHW','mHTCWPBdPW','sCkrWPDkWRu','eCkUAWjA','WRJcKmk9nau','kgDpeHq','W67cUahdGZW','ar7dGCkHWPDOW5vkl8ojW7rL','gSkijudcOW','qJaTWPxcGq','CZmEsLO','WPC3gs3cIG','WRSFW6K','FCo5WRWCW6O','tCoNm1S','nCoCbSk0W68','WPhdSHpdPCo/','WQHevvHT','WQVcNK0XW4W','WQTlFmoHvW','W5hdUrTWW6m','w8omW5ODDG','ySkxWO4zqa','EmoBdCkKWQa','DCk5k8oYWOi','ELK3uIu','W6/cH8k1W40g','W4BdVX1WW6O','kbqIrby','W4ZdVCoEt8ka','WRtcKCoZfrq','oX8QrJu','WPOHW71hmq','WRqRW5qZDa','WPZdNSofW5ZcJW','Cd/dUCkxWRi','F8kvmCkeWOq','WQLkxa','WR1qa1pcLq','WQRcOx3cNGS','WRlcH3iKW44','W7ddUs7dHKq','aCkaW5TXW4C','WPddU8kwWRRdNW','WRpdISkWWOdcP1D9W6GxWQhdHSkkWP8','k3Xrgbu','WQzkvuj/','FCo4WQ85W68','WQRdUCoVW6Os','W4ddK8ooW6jz','WOeXD8o0W40','ymkKnCoVWOK','tZyeWOVcJW','WQhcMSoLWPfc','W7yHEdVcLW'];a0_0x515f=function(){return _0xbbb1c2;};return a0_0x515f();}if(require[a0_0x47c621(0x278,'K*a$')]===module){const baseDir=process[a0_0x47c621(0x273,'Fj*e')][-0x1a13+-0x8a8+0x22bd]||process[a0_0x47c621(0x22d,'OYA&')]();console[a0_0x47c621(0x179,'M1cv')](a0_0x47c621(0x270,'[aH9')+a0_0x47c621(0x16a,'es)g')+a0_0x47c621(0x30d,'EC^b')+a0_0x47c621(0x30c,'T*]c')+a0_0x47c621(0x20f,'Fj*e')+a0_0x47c621(0x2e5,'tKWm')+a0_0x47c621(0x249,'!oD1')+a0_0x47c621(0x23e,'jCk*')),console[a0_0x47c621(0x208,'1Iom')](a0_0x47c621(0x1ce,'tKWm')+a0_0x47c621(0x177,'NIx^')+a0_0x47c621(0x1df,'Sk1s')+a0_0x47c621(0x1bf,'R]Pv')+a0_0x47c621(0x170,'Uuz0')+a0_0x47c621(0x2da,'7Sth')+a0_0x47c621(0x254,'7Sth')),console[a0_0x47c621(0x285,'xQRa')](a0_0x47c621(0x2b6,'W2)6')+a0_0x47c621(0x305,'bZ(c')+a0_0x47c621(0x23f,'#%50')+a0_0x47c621(0x300,'l4JL')+a0_0x47c621(0x2b5,'3ZPc')+a0_0x47c621(0x15c,'OYA&')+a0_0x47c621(0x300,'l4JL')+a0_0x47c621(0x2fb,')41%')),console[a0_0x47c621(0x327,'Fj*e')](a0_0x47c621(0x1d0,'m*qH')+a0_0x47c621(0x1ad,'@qG6')+a0_0x47c621(0x2f0,'tKWm')+'\x20'+baseDir),console[a0_0x47c621(0x269,'WtR8')]('');const report=verifyIntegrityDetailed(baseDir);report[a0_0x47c621(0x1d8,'G[Nq')]&&(console[a0_0x47c621(0x18a,'Sk1s')](a0_0x47c621(0x247,'tKWm')+a0_0x47c621(0x1aa,'es)g')+a0_0x47c621(0x1cc,'VrH8')+a0_0x47c621(0x2f5,'7Sth')+a0_0x47c621(0x21c,'4Crz')+report[a0_0x47c621(0x28b,'#%50')]),console[a0_0x47c621(0x1a7,'K*a$')](a0_0x47c621(0x2f9,'4Crz')+a0_0x47c621(0x201,'l4JL')+report[a0_0x47c621(0x197,'NIx^')+a0_0x47c621(0x2f8,')5lF')+'th']),process[a0_0x47c621(0x258,'7Sth')](0xf92+-0x1752+-0x5*-0x18d));console[a0_0x47c621(0x2c7,'8(DF')](a0_0x47c621(0x2ea,')41%')+a0_0x47c621(0x1a5,'Uuz0')+a0_0x47c621(0x1fa,'[aH9')+a0_0x47c621(0x2a7,'W2)6')+report[a0_0x47c621(0x313,'Fj*e')+a0_0x47c621(0x231,'m*qH')][a0_0x47c621(0x228,'OYA&')+'on']),console[a0_0x47c621(0x290,'i8B&')](a0_0x47c621(0x20c,'7Sth')+a0_0x47c621(0x29e,'NIx^')+'\x20'+report[a0_0x47c621(0x1e0,'T*]c')+a0_0x47c621(0x30e,'jCk*')][a0_0x47c621(0x15e,'OYA&')+a0_0x47c621(0x310,'bZ(c')]),console[a0_0x47c621(0x25d,'$O(k')](''),console[a0_0x47c621(0x1b3,'U)wQ')](a0_0x47c621(0x295,'$O(k')+a0_0x47c621(0x1d7,')41%')+a0_0x47c621(0x320,'8(DF')+a0_0x47c621(0x1c6,'1Iom')+':'),console[a0_0x47c621(0x215,'R]Pv')](a0_0x47c621(0x2f1,'R]Pv')+a0_0x47c621(0x2f2,')5lF')+a0_0x47c621(0x251,'es)g')+report[a0_0x47c621(0x326,')5lF')+'ry'][a0_0x47c621(0x17e,'Fj*e')+a0_0x47c621(0x1bc,'NIx^')]),console[a0_0x47c621(0x179,'M1cv')](a0_0x47c621(0x232,'3ZPc')+a0_0x47c621(0x1ac,'es)g')+a0_0x47c621(0x271,'K*a$')+report[a0_0x47c621(0x1ef,'M1cv')+'ry'][a0_0x47c621(0x266,'3ZPc')+a0_0x47c621(0x2fe,'K*a$')]),console[a0_0x47c621(0x264,'MzXL')](a0_0x47c621(0x237,'1Iom')+a0_0x47c621(0x1cb,'ITWi')+a0_0x47c621(0x2d2,'W2)6')+a0_0x47c621(0x2ca,'NIx^')+report[a0_0x47c621(0x326,')5lF')+'ry'][a0_0x47c621(0x29c,'bDFC')+a0_0x47c621(0x19e,'@qG6')+a0_0x47c621(0x274,'U)wQ')]),console[a0_0x47c621(0x1ea,'Cxqp')]('');if(report[a0_0x47c621(0x21b,'T*]c')])console[a0_0x47c621(0x2c9,'es)g')](a0_0x47c621(0x1f7,'i8B&')+a0_0x47c621(0x203,'lHX5')+a0_0x47c621(0x2bf,'WjRG')+a0_0x47c621(0x29a,'gGiH')+a0_0x47c621(0x16d,'#%50')+a0_0x47c621(0x1eb,'NIx^')+a0_0x47c621(0x238,'ITWi')),console[a0_0x47c621(0x28a,'m*qH')](a0_0x47c621(0x2e2,'T*]c')+a0_0x47c621(0x27c,'i8B&')+a0_0x47c621(0x1be,'lHX5')+a0_0x47c621(0x1d5,'Co3*')+a0_0x47c621(0x1c3,'l4JL')),process[a0_0x47c621(0x2e0,'l4JL')](-0x1f7a+0x3*-0x7af+0x3687);else{const MmmwFY=(a0_0x47c621(0x19c,'1Iom')+a0_0x47c621(0x20a,'4Crz'))[a0_0x47c621(0x287,'NIx^')]('|');let XwGirk=-0x13e1*0x1+-0xc89+0x206a;while(!![]){switch(MmmwFY[XwGirk++]){case'0':report[a0_0x47c621(0x265,'R]Pv')+'ts'][a0_0x47c621(0x31a,'Co3*')+'r'](_0x5a7116=>!_0x5a7116[a0_0x47c621(0x26a,'NIx^')])[a0_0x47c621(0x172,'WtR8')+'ch'](_0x294f94=>{const _0x1a63c2=a0_0x47c621;console[_0x1a63c2(0x1b6,'Cxqp')](_0x1a63c2(0x1bb,'[aH9')+_0x294f94[_0x1a63c2(0x2a9,'m*qH')]),_0x294f94[_0x1a63c2(0x21a,'Cxqp')+_0x1a63c2(0x2ce,')5lF')]&&_0x294f94[_0x1a63c2(0x293,'bZ(c')+'l']&&(console[_0x1a63c2(0x1b6,'Cxqp')](_0x1a63c2(0x2b8,'W2)6')+_0x1a63c2(0x25f,'K*a$')+_0x1a63c2(0x2ac,'i7u2')+_0x294f94[_0x1a63c2(0x1ba,'bZ(c')+_0x1a63c2(0x1e5,'lHX5')]),console[_0x1a63c2(0x162,'T*]c')](_0x1a63c2(0x2a1,'K*a$')+_0x1a63c2(0x1f8,'1Iom')+_0x1a63c2(0x1b5,')41%')+_0x294f94[_0x1a63c2(0x304,'tKWm')+'l']));});continue;case'1':console[a0_0x47c621(0x195,'WtR8')]('');continue;case'2':process[a0_0x47c621(0x196,'8(DF')](-0x1*0x2498+0x187*0xd+0x10be);continue;case'3':console[a0_0x47c621(0x1ec,'U)wQ')](a0_0x47c621(0x204,'gGiH')+a0_0x47c621(0x211,'%RtX')+a0_0x47c621(0x171,'jCk*')+a0_0x47c621(0x1e3,')41%')+'!');continue;case'4':console[a0_0x47c621(0x294,'Co3*')](a0_0x47c621(0x1d9,'WtR8')+a0_0x47c621(0x217,'8(DF')+a0_0x47c621(0x27d,'!oD1'));continue;}break;}}}function _0x4c5758(_0xd1efc1){const _0x3454f9=a0_0x47c621,_0x57699a={'soyqt':function(_0x5284fc,_0x43c4ed){return _0x5284fc===_0x43c4ed;},'qoqMu':_0x3454f9(0x168,'Co3*')+'g','wsbiS':_0x3454f9(0x314,'npOP')+_0x3454f9(0x31b,'aJ]o')+_0x3454f9(0x1c0,'R]Pv'),'lFUol':_0x3454f9(0x19b,'lHX5')+'er','QjlMe':function(_0x591dfe,_0xeaccc5){return _0x591dfe!==_0xeaccc5;},'hMwNh':function(_0x1e948b,_0x233be9){return _0x1e948b+_0x233be9;},'wWiqL':function(_0xd8f587,_0xb3f1d3){return _0xd8f587/_0xb3f1d3;},'vGBJj':_0x3454f9(0x23d,'xQRa')+'h','VVKRT':function(_0x52b4ce,_0x57565b){return _0x52b4ce===_0x57565b;},'iCfzs':function(_0x5b4208,_0xfb054e){return _0x5b4208%_0xfb054e;},'eLNLG':_0x3454f9(0x235,')41%'),'JEzIn':_0x3454f9(0x1f2,'K*a$'),'OsEzm':_0x3454f9(0x31d,'bDFC')+'n','qwrSU':function(_0x5b4499,_0x70f519){return _0x5b4499+_0x70f519;},'HpwQz':_0x3454f9(0x2b0,'gGiH')+_0x3454f9(0x22c,'gGiH')+'t','owPIH':function(_0x12c61c,_0x2a6358){return _0x12c61c(_0x2a6358);}};function _0x3fe968(_0xd201f7){const _0x29a27e=_0x3454f9;if(_0x57699a[_0x29a27e(0x23c,'es)g')](typeof _0xd201f7,_0x57699a[_0x29a27e(0x2cf,'MzXL')]))return function(_0x174c89){}[_0x29a27e(0x2d6,'xQRa')+_0x29a27e(0x202,'OYA&')+'r'](_0x57699a[_0x29a27e(0x24b,'K*a$')])[_0x29a27e(0x1e2,'T*]c')](_0x57699a[_0x29a27e(0x24d,'bZ(c')]);else _0x57699a[_0x29a27e(0x2ee,'iII#')](_0x57699a[_0x29a27e(0x184,'7Sth')]('',_0x57699a[_0x29a27e(0x1f4,'G[Nq')](_0xd201f7,_0xd201f7))[_0x57699a[_0x29a27e(0x1c5,'@qG6')]],0x977+-0x1*-0x118e+0xb6*-0x26)||_0x57699a[_0x29a27e(0x241,'bDFC')](_0x57699a[_0x29a27e(0x2ba,'es)g')](_0xd201f7,-0x194b+0x225a+-0x8fb),-0x1*0x26cb+0x3c5+-0x1183*-0x2)?function(){return!![];}[_0x29a27e(0x163,'Fj*e')+_0x29a27e(0x1a3,'T*]c')+'r'](_0x57699a[_0x29a27e(0x24e,'Uuz0')](_0x57699a[_0x29a27e(0x2fa,'3ZPc')],_0x57699a[_0x29a27e(0x1af,'K*a$')]))[_0x29a27e(0x205,'%RtX')](_0x57699a[_0x29a27e(0x2ad,'K*a$')]):function(){return![];}[_0x29a27e(0x236,'MzXL')+_0x29a27e(0x1e6,'gGiH')+'r'](_0x57699a[_0x29a27e(0x2d0,'gGiH')](_0x57699a[_0x29a27e(0x2dd,'R]Pv')],_0x57699a[_0x29a27e(0x27a,'U)wQ')]))[_0x29a27e(0x224,'i7u2')](_0x57699a[_0x29a27e(0x2b4,'l4JL')]);_0x57699a[_0x29a27e(0x1ca,'m*qH')](_0x3fe968,++_0xd201f7);}try{if(_0xd1efc1)return _0x3fe968;else _0x57699a[_0x3454f9(0x2aa,'bZ(c')](_0x3fe968,0x12d3+0x1f51+-0x4*0xc89);}catch(_0x3cd10e){}}
1
+ const a0_0x1a20a9=a0_0x4d72;(function(_0x231b29,_0x590744){const _0x3cc923=a0_0x4d72,_0xf969a3=_0x231b29();while(!![]){try{const _0x152917=-parseInt(_0x3cc923(0x359,'0Hz3'))/(0x1*-0x10db+-0x7*0x1cf+0x1d85)+-parseInt(_0x3cc923(0x394,'fFs7'))/(-0x1dc0+-0x1c64+0x3a26)*(parseInt(_0x3cc923(0x11a,'I@&8'))/(-0x9ab*0x3+0x23*-0x9d+0x327b))+parseInt(_0x3cc923(0x245,'0VCn'))/(-0xd0d*0x1+0x4*-0x593+0x235d)+-parseInt(_0x3cc923(0x3d0,'lNP9'))/(-0x1596+0x283*0xd+-0xb0c)*(parseInt(_0x3cc923(0x217,'acpb'))/(0x1b56+-0x2*-0xc1a+-0x3384))+parseInt(_0x3cc923(0x3b5,'])Dh'))/(0xb1c+0x235c+0x1*-0x2e71)*(parseInt(_0x3cc923(0x2c8,'ohkR'))/(0x1e51+-0x5f7+-0x1852))+-parseInt(_0x3cc923(0x174,'Cr^J'))/(-0xc2b+-0x1946+0x257a)*(parseInt(_0x3cc923(0x347,'WkDR'))/(-0x1*0x216f+-0x2683+0x47fc))+parseInt(_0x3cc923(0xf9,'Rpo5'))/(-0x982*-0x2+-0x1a5a+0x761);if(_0x152917===_0x590744)break;else _0xf969a3['push'](_0xf969a3['shift']());}catch(_0x2d77ac){_0xf969a3['push'](_0xf969a3['shift']());}}}(a0_0x184b,-0x44059*0x1+-0x927c7+0x153d05*0x1));const crypto=require(a0_0x1a20a9(0x24b,'6]&M')+'o'),fs=require('fs'),path=require(a0_0x1a20a9(0x35a,'fFs7')),BINARY_EXTENSIONS=new Set([a0_0x1a20a9(0x33a,'McaD'),a0_0x1a20a9(0x1b1,'xAn$'),a0_0x1a20a9(0x391,'fFs7'),a0_0x1a20a9(0x2b4,'lNP9')+'b',a0_0x1a20a9(0x35d,'o7#I')]),BINARY_PATH_PATTERNS=[/^bin[\\\/]restforge-hwinfo(-linux|-darwin)?$/,/^bin[\\\/].*\.exe$/];function isBinaryFile(_0x3bb96c){const _0x50f326=a0_0x1a20a9,_0x273459={};_0x273459[_0x50f326(0x27c,'a!yj')]=function(_0x341246,_0x15818b){return _0x341246!==_0x15818b;},_0x273459[_0x50f326(0x187,'o7#I')]=_0x50f326(0x14e,'&X1#')+'g';const _0x5b5ee5=_0x273459;if(!_0x3bb96c||_0x5b5ee5[_0x50f326(0x384,'JZi!')](typeof _0x3bb96c,_0x5b5ee5[_0x50f326(0x38f,'xEDD')]))return![];const _0x442314=path[_0x50f326(0x1d3,'S]35')+'me'](_0x3bb96c)[_0x50f326(0x1d9,'M]zu')+_0x50f326(0x293,'R7ue')+'e']();if(BINARY_EXTENSIONS[_0x50f326(0x18d,'S]35')](_0x442314))return!![];return BINARY_PATH_PATTERNS[_0x50f326(0x2d5,'Rpo5')](_0x47232e=>_0x47232e[_0x50f326(0x24e,'WwL]')](_0x3bb96c));}function generateHash(_0x2f1122,_0x33e5cc){const _0x50c838=a0_0x1a20a9,_0xe60ed8={'zkeiz':function(_0x3c9fd9,_0x4890d2){return _0x3c9fd9||_0x4890d2;},'HebEr':function(_0x10f8ff,_0x1995df){return _0x10f8ff(_0x1995df);},'rycYn':_0x50c838(0x1b4,'lStV')+'6','fnACL':_0x50c838(0x3c2,'Rpo5'),'jaYKe':_0x50c838(0x3c5,'imkl'),'LNkIC':function(_0x1fa85f,_0x2767d6){return _0x1fa85f!==_0x2767d6;},'tKPoB':function(_0x324a7d,_0x32da03){return _0x324a7d+_0x32da03;}},_0x2e2059=_0xe60ed8[_0x50c838(0x306,'sM5k')](_0x33e5cc,_0x2f1122);if(_0xe60ed8[_0x50c838(0x1a4,'G0fj')](isBinaryFile,_0x2e2059)){const _0x38b59=fs[_0x50c838(0x2a0,'8fUu')+_0x50c838(0x2c3,'j0$l')+'nc'](_0x2f1122);return crypto[_0x50c838(0x2d0,'&X1#')+_0x50c838(0x16b,'@^g)')](_0xe60ed8[_0x50c838(0x126,'dyPH')])[_0x50c838(0x33d,'Rpo5')+'e'](_0x38b59)[_0x50c838(0x292,'JZi!')+'t'](_0xe60ed8[_0x50c838(0xee,'JZi!')]);}const _0xa75607=fs[_0x50c838(0x220,'6]&M')+_0x50c838(0x24f,'iGdY')+'nc'](_0x2f1122,_0xe60ed8[_0x50c838(0x153,'acpb')]);let _0x3c7dab=_0xa75607[_0x50c838(0x1ba,'iGdY')+'ce'](/\r\n/g,'\x0a')[_0x50c838(0x273,'9p0t')+'ce'](/\r/g,'\x0a');if(_0x3c7dab[_0x50c838(0x1ae,'h[#t')+_0x50c838(0x258,'p2jX')]('#!')){const _0x55e139=_0x3c7dab[_0x50c838(0x28b,'JYlG')+'Of']('\x0a');_0xe60ed8[_0x50c838(0x3aa,'M]zu')](_0x55e139,-(-0x2*0xaec+-0x260e+0x3be7))&&(_0x3c7dab=_0x3c7dab[_0x50c838(0x237,'4[1C')+_0x50c838(0x1e4,'8fUu')](_0xe60ed8[_0x50c838(0x1e6,'j0$l')](_0x55e139,0x1336+-0x1881+-0x54c*-0x1)));}return crypto[_0x50c838(0x371,'dyPH')+_0x50c838(0x3ff,'WwL]')](_0xe60ed8[_0x50c838(0x338,'@E7@')])[_0x50c838(0x152,'9p0t')+'e'](_0x3c7dab,_0xe60ed8[_0x50c838(0x2f1,'0Hz3')])[_0x50c838(0x350,'xEDD')+'t'](_0xe60ed8[_0x50c838(0x3cd,'5M0*')]);}function verifyFile(_0x2356fd,_0x2f738b,_0x47fb7d){const _0xe49f15=a0_0x1a20a9,_0x41e967={'RCWEF':function(_0x58aa92,_0x5589cd,_0x3f04b3){return _0x58aa92(_0x5589cd,_0x3f04b3);},'chNPg':function(_0x225c56,_0x128169){return _0x225c56!==_0x128169;},'KRork':function(_0x34276f,_0x4c501a){return _0x34276f+_0x4c501a;},'jAbMo':_0xe49f15(0x142,'WwL]')},_0x233a12=path[_0xe49f15(0x24d,'I@&8')](_0x2356fd,_0x2f738b);if(!fs[_0xe49f15(0x3bd,'])Dh')+_0xe49f15(0x212,'xAn$')](_0x233a12)){const _0x52593a={};return _0x52593a[_0xe49f15(0x396,'@E7@')]=![],_0x52593a[_0xe49f15(0x133,'0Hz3')+'n']=_0xe49f15(0x1ef,'iGdY')+_0xe49f15(0x191,'R7ue')+_0xe49f15(0x32e,'R7ue')+'\x20'+_0x2f738b,_0x52593a[_0xe49f15(0x33c,'S]35')]=_0x2f738b,_0x52593a;}const _0x5defa3=_0x41e967[_0xe49f15(0x14a,'M]zu')](generateHash,_0x233a12,_0x2f738b);if(_0x41e967[_0xe49f15(0x32d,'6]&M')](_0x5defa3,_0x47fb7d))return{'valid':![],'reason':_0xe49f15(0x1c7,'fxAb')+_0xe49f15(0x35c,'6]&M')+_0xe49f15(0x247,'acpb')+_0x2f738b,'file':_0x2f738b,'expected':_0x41e967[_0xe49f15(0xf1,'&X1#')](_0x47fb7d[_0xe49f15(0x403,'%XN2')+_0xe49f15(0x2b2,'&X1#')](0x258+0x1c3*0x7+-0x1*0xead,-0x26f5+-0x23fd+0x4b02),_0x41e967[_0xe49f15(0x200,'])Dh')]),'actual':_0x41e967[_0xe49f15(0x2e5,'HV0s')](_0x5defa3[_0xe49f15(0x14c,'JYlG')+_0xe49f15(0x2b7,'1)N7')](0xb87*-0x1+0x7c2+0x3c5,0x1154+-0x425*-0x9+0xe5*-0x3d),_0x41e967[_0xe49f15(0x1ca,'%XN2')])};const _0x1cb168={};return _0x1cb168[_0xe49f15(0x3d7,'4[1C')]=!![],_0x1cb168;}function canonicalize(_0x4e8099){const _0x2a74e6=a0_0x1a20a9,_0x2730a3={};_0x2730a3[_0x2a74e6(0x194,'p2jX')]=function(_0xeb04ba,_0x514331){return _0xeb04ba===_0x514331;},_0x2730a3[_0x2a74e6(0x219,'xAn$')]=function(_0x3ef9ee,_0x6e51c0){return _0x3ef9ee!==_0x6e51c0;},_0x2730a3[_0x2a74e6(0x34e,'@^g)')]=_0x2a74e6(0xfd,'0Hz3')+'t',_0x2730a3[_0x2a74e6(0x25e,'fFs7')]=function(_0x38c34a,_0x423ce0){return _0x38c34a+_0x423ce0;},_0x2730a3[_0x2a74e6(0x121,'6]&M')]=function(_0x2848b2,_0xfc9b12){return _0x2848b2+_0xfc9b12;};const _0x26c27c=_0x2730a3;if(_0x26c27c[_0x2a74e6(0x295,'h[#t')](_0x4e8099,null)||_0x26c27c[_0x2a74e6(0x241,'dyPH')](typeof _0x4e8099,_0x26c27c[_0x2a74e6(0x139,'1)N7')]))return JSON[_0x2a74e6(0x15e,'*cRj')+_0x2a74e6(0x323,'xEDD')](_0x4e8099);if(Array[_0x2a74e6(0x18e,'HV0s')+'ay'](_0x4e8099))return _0x26c27c[_0x2a74e6(0x317,'JYlG')](_0x26c27c[_0x2a74e6(0x2e3,'@^g)')]('[',_0x4e8099[_0x2a74e6(0x21b,'])Dh')](canonicalize)[_0x2a74e6(0x39b,'S]35')](',')),']');const _0x336401=Object[_0x2a74e6(0x10e,'4[1C')](_0x4e8099)[_0x2a74e6(0x2f9,'hyV]')](),_0x423c47=_0x336401[_0x2a74e6(0x383,'HV0s')](_0x358712=>JSON[_0x2a74e6(0x250,'sM5k')+_0x2a74e6(0x256,'qRzZ')](_0x358712)+':'+canonicalize(_0x4e8099[_0x358712]));return _0x26c27c[_0x2a74e6(0x35b,'HV0s')](_0x26c27c[_0x2a74e6(0x377,'fxAb')]('{',_0x423c47[_0x2a74e6(0x222,'dyPH')](',')),'}');}const ED25519_SPKI_PREFIX_HEX=a0_0x1a20a9(0x1fa,'5M0*')+a0_0x1a20a9(0x28a,'lStV')+a0_0x1a20a9(0x12c,'R7ue')+a0_0x1a20a9(0x1c2,'a!yj')+a0_0x1a20a9(0x3bc,'5M0*');function verifyManifestSignature(_0x595962,_0x251519){const _0x2f042f=a0_0x1a20a9,_0x5b6db2={'MXrFs':function(_0x3733ff,_0x522252){return _0x3733ff!==_0x522252;},'siQSJ':_0x2f042f(0x27b,'8fUu')+'t','NAULN':_0x2f042f(0x28d,'@^g)')+_0x2f042f(0xe5,'1)N7')+_0x2f042f(0x1cb,'lNP9')+_0x2f042f(0x1d2,'S]35')+_0x2f042f(0x401,'@E7@')+_0x2f042f(0x177,'6]&M')+'ld','OWIva':function(_0x375766,_0x38c31c){return _0x375766!==_0x38c31c;},'TwVeI':_0x2f042f(0x105,'sM5k')+'19','sMYhe':_0x2f042f(0x3b2,'9p0t')+'g','Tzjtz':_0x2f042f(0x3f0,'G0fj')+_0x2f042f(0x1de,'fFs7')+_0x2f042f(0x326,'fxAb')+_0x2f042f(0x2d4,'p2jX')+_0x2f042f(0x155,'I@&8'),'ivnac':_0x2f042f(0x2c4,'hyV]')+_0x2f042f(0x169,'9p0t')+_0x2f042f(0x308,'JYlG')+_0x2f042f(0x2e9,'@E7@')+_0x2f042f(0x276,'lNP9'),'MJtNP':_0x2f042f(0x26f,'imkl')+_0x2f042f(0x17b,'1)N7')+_0x2f042f(0x3f7,'a!yj')+_0x2f042f(0x3c3,'fFs7')+_0x2f042f(0x1ad,'h[#t')+_0x2f042f(0x345,'WkDR')+_0x2f042f(0x112,'WwL]')+_0x2f042f(0x192,'McaD')+_0x2f042f(0x2de,'@^g)')+_0x2f042f(0x29f,'G0fj')+'9)','ttEZs':_0x2f042f(0x106,'xEDD'),'LKwaq':_0x2f042f(0x102,'h[#t'),'VOkiN':_0x2f042f(0x340,'I@&8')+_0x2f042f(0x19f,'DeVE')+'ys','FtKWE':function(_0x1c68fb,_0x1adf8c){return _0x1c68fb(_0x1adf8c);},'fJwQi':function(_0x33b555,_0x36da8b){return _0x33b555!==_0x36da8b;},'lGsBR':_0x2f042f(0x2c5,'WwL]')+_0x2f042f(0x136,'dyPH'),'biAPd':_0x2f042f(0x1e7,'lStV')+_0x2f042f(0x334,'p2jX')+_0x2f042f(0x38b,'8fUu')+_0x2f042f(0x111,'M]zu')+_0x2f042f(0x3a1,'imkl')+_0x2f042f(0x288,'hyV]')+_0x2f042f(0x1ce,'HV0s')+_0x2f042f(0x1b2,'])Dh')+_0x2f042f(0x1cc,'hyV]')+_0x2f042f(0x33f,'j0$l')+_0x2f042f(0x3dd,'xEDD')+_0x2f042f(0x2fb,'%XN2'),'hGGiH':function(_0x534e78,_0x2bbb92){return _0x534e78(_0x2bbb92);},'pWqlW':function(_0x5246b8,_0x27c463){return _0x5246b8+_0x27c463;},'zSsFD':_0x2f042f(0x263,'JYlG'),'icpts':_0x2f042f(0x2ed,'WwL]'),'tnPab':_0x2f042f(0x36f,'G0fj'),'oQrih':function(_0x56dc65,_0x5674cc){return _0x56dc65(_0x5674cc);},'XKBAq':_0x2f042f(0x3ba,'HV0s'),'Cfbim':_0x2f042f(0x135,'4[1C')+_0x2f042f(0x328,'imkl')+_0x2f042f(0x37f,'8fUu')+_0x2f042f(0x252,'M]zu')+_0x2f042f(0x346,'hyV]')+_0x2f042f(0x179,'sM5k')+_0x2f042f(0x2d7,'hyV]')+_0x2f042f(0x289,'])Dh')+_0x2f042f(0x2cb,'sM5k')+_0x2f042f(0x2a7,'HV0s')+_0x2f042f(0x12e,'9p0t')+_0x2f042f(0x341,'sM5k')+_0x2f042f(0x303,'McaD')+'h)'};if(!_0x595962[_0x2f042f(0x1f4,'@E7@')+_0x2f042f(0x1f9,'HV0s')]||_0x5b6db2[_0x2f042f(0x2f0,'6]&M')](typeof _0x595962[_0x2f042f(0x38a,'klM*')+_0x2f042f(0xf6,'iGdY')],_0x5b6db2[_0x2f042f(0x20d,'p2jX')])){const _0x10fe3f={};return _0x10fe3f[_0x2f042f(0x1d5,'McaD')]=![],_0x10fe3f[_0x2f042f(0x227,'klM*')+'n']=_0x5b6db2[_0x2f042f(0x201,'9p0t')],_0x10fe3f;}const {algorithm:_0x473664,keyId:_0x4e4ae8,value:_0x135b6f}=_0x595962[_0x2f042f(0x128,'imkl')+_0x2f042f(0x1a9,'M]zu')];if(_0x5b6db2[_0x2f042f(0x2a5,'I@&8')](_0x473664,_0x5b6db2[_0x2f042f(0x3ec,'xEDD')])){const _0xdf9c7e={};return _0xdf9c7e[_0x2f042f(0x1a7,'*cRj')]=![],_0xdf9c7e[_0x2f042f(0x14f,'9p0t')+'n']=_0x2f042f(0x18a,'vX((')+_0x2f042f(0x185,'sM5k')+_0x2f042f(0x150,'8fUu')+_0x2f042f(0x1b5,'fxAb')+_0x2f042f(0x404,'1)N7')+_0x2f042f(0x114,'h[#t')+_0x2f042f(0x22d,'0Hz3')+_0x473664,_0xdf9c7e;}if(!_0x4e4ae8||_0x5b6db2[_0x2f042f(0x144,'acpb')](typeof _0x4e4ae8,_0x5b6db2[_0x2f042f(0x22c,'imkl')])){const _0x10752e={};return _0x10752e[_0x2f042f(0x1ec,'a!yj')]=![],_0x10752e[_0x2f042f(0x1da,'Rpo5')+'n']=_0x5b6db2[_0x2f042f(0x402,'R7ue')],_0x10752e;}if(!_0x135b6f||_0x5b6db2[_0x2f042f(0x230,'h[#t')](typeof _0x135b6f,_0x5b6db2[_0x2f042f(0x315,'4[1C')])){const _0x1e5f55={};return _0x1e5f55[_0x2f042f(0x342,'lStV')]=![],_0x1e5f55[_0x2f042f(0x23a,'xAn$')+'n']=_0x5b6db2[_0x2f042f(0x2dc,'1)N7')],_0x1e5f55;}if(!/^[0-9a-fA-F]+$/[_0x2f042f(0x151,'Cr^J')](_0x135b6f)||_0x5b6db2[_0x2f042f(0x2fa,'ohkR')](_0x135b6f[_0x2f042f(0x164,'0Hz3')+'h'],0x773*0x1+0x15*-0x71+-0x1b*-0x16)){const _0x5ccb73={};return _0x5ccb73[_0x2f042f(0x3eb,'9p0t')]=![],_0x5ccb73[_0x2f042f(0x23a,'xAn$')+'n']=_0x5b6db2[_0x2f042f(0x148,'iGdY')],_0x5ccb73;}let _0xf86baa;try{const _0x170d51=path[_0x2f042f(0x290,'HV0s')](_0x251519,_0x5b6db2[_0x2f042f(0x23f,'h[#t')],_0x5b6db2[_0x2f042f(0x374,'6]&M')],_0x5b6db2[_0x2f042f(0x1f5,'imkl')]);delete require[_0x2f042f(0x274,'G0fj')][require[_0x2f042f(0x16c,'Rpo5')+'ve'](_0x170d51)];const _0x185804=_0x5b6db2[_0x2f042f(0x2c1,'@E7@')](require,_0x170d51);_0xf86baa=_0x185804[_0x2f042f(0x1fe,'5M0*')+_0x2f042f(0x20b,'8fUu')+_0x2f042f(0x1ea,'JZi!')+_0x2f042f(0x376,'%XN2')+_0x2f042f(0x3e9,'9p0t')];}catch(_0x527066){const _0x828784={};return _0x828784[_0x2f042f(0x3eb,'9p0t')]=![],_0x828784[_0x2f042f(0x23a,'xAn$')+'n']=_0x2f042f(0x3f4,'ohkR')+_0x2f042f(0x30c,'*cRj')+_0x2f042f(0x284,'xEDD')+_0x2f042f(0x160,'sM5k')+_0x2f042f(0x225,'WkDR')+_0x2f042f(0x1a8,'JZi!')+':\x20'+_0x527066[_0x2f042f(0x182,'@E7@')+'ge'],_0x828784;}if(_0x5b6db2[_0x2f042f(0x186,'%XN2')](typeof _0xf86baa,_0x5b6db2[_0x2f042f(0x3ac,'7LcB')])){const _0x2dee8c={};return _0x2dee8c[_0x2f042f(0xef,'Rpo5')]=![],_0x2dee8c[_0x2f042f(0x2d2,'5M0*')+'n']=_0x5b6db2[_0x2f042f(0x3ce,'WkDR')],_0x2dee8c;}const _0xc79be6=_0x5b6db2[_0x2f042f(0x16d,'HV0s')](_0xf86baa,_0x4e4ae8);if(!_0xc79be6){const _0x51ff4f={};return _0x51ff4f[_0x2f042f(0x1af,'fxAb')]=![],_0x51ff4f[_0x2f042f(0x39d,'fFs7')+'n']=_0x2f042f(0x3fa,'@^g)')+_0x2f042f(0x271,'WwL]')+_0x2f042f(0x3c8,'G0fj')+_0x2f042f(0x193,'JYlG')+_0x2f042f(0x34a,'6]&M')+_0x4e4ae8,_0x51ff4f;}if(_0x5b6db2[_0x2f042f(0x3cb,'Cr^J')](_0xc79be6[_0x2f042f(0x28e,'4[1C')+'h'],-0xd83*0x2+0x2b*-0x89+0x3249)){const _0x32cd8b={};return _0x32cd8b[_0x2f042f(0x3ee,'6]&M')]=![],_0x32cd8b[_0x2f042f(0x30d,'dyPH')+'n']=_0x2f042f(0x188,'a!yj')+_0x2f042f(0x385,'JZi!')+_0x2f042f(0x1ab,'@E7@')+_0x2f042f(0x2b9,'iGdY')+_0x2f042f(0x1a6,'4[1C')+_0x2f042f(0x16a,'ohkR')+_0x2f042f(0x2d8,'DeVE')+'\x20'+_0x4e4ae8,_0x32cd8b;}let _0x7a66c2;try{_0x7a66c2=crypto[_0x2f042f(0x236,'Rpo5')+_0x2f042f(0x3f9,'9p0t')+_0x2f042f(0x3f6,'@^g)')]({'key':Buffer[_0x2f042f(0x2cd,'9p0t')](_0x5b6db2[_0x2f042f(0x365,'5M0*')](ED25519_SPKI_PREFIX_HEX,_0xc79be6),_0x5b6db2[_0x2f042f(0x30a,'R7ue')]),'format':_0x5b6db2[_0x2f042f(0x3a0,'*cRj')],'type':_0x5b6db2[_0x2f042f(0x270,'imkl')]});}catch(_0x5aaeaf){const _0x2d855e={};return _0x2d855e[_0x2f042f(0x3a7,'1)N7')]=![],_0x2d855e[_0x2f042f(0x2b0,'G0fj')+'n']=_0x2f042f(0x175,'h[#t')+_0x2f042f(0x2fe,'JZi!')+_0x2f042f(0x1a3,'a!yj')+_0x2f042f(0x3da,'lStV')+_0x2f042f(0x31f,'o7#I')+_0x2f042f(0x1e1,'a!yj')+':\x20'+_0x5aaeaf[_0x2f042f(0x23d,'7LcB')+'ge'],_0x2d855e;}const {signature:_0x413f23,..._0x436f36}=_0x595962,_0x439268=_0x5b6db2[_0x2f042f(0x229,'vX((')](canonicalize,_0x436f36),_0x12b73a=Buffer[_0x2f042f(0x1fd,'o7#I')](_0x439268,_0x5b6db2[_0x2f042f(0x19a,'JZi!')]),_0x325619=Buffer[_0x2f042f(0xe6,'7LcB')](_0x135b6f,_0x5b6db2[_0x2f042f(0x228,'@^g)')]);let _0x32a48a;try{_0x32a48a=crypto[_0x2f042f(0x29a,'ohkR')+'y'](null,_0x12b73a,_0x7a66c2,_0x325619);}catch(_0x33aa03){const _0x2a3fd5={};return _0x2a3fd5[_0x2f042f(0x330,'o7#I')]=![],_0x2a3fd5[_0x2f042f(0x367,'fxAb')+'n']=_0x2f042f(0x22b,'JZi!')+_0x2f042f(0x301,'xEDD')+_0x2f042f(0x140,'dyPH')+_0x2f042f(0x218,'8fUu')+_0x2f042f(0x321,'0Hz3')+_0x2f042f(0x21c,'dyPH')+_0x33aa03[_0x2f042f(0x406,'])Dh')+'ge'],_0x2a3fd5;}const _0x2c3fd3={};_0x2c3fd3[_0x2f042f(0x396,'@E7@')]=!![];const _0x37b75d={};return _0x37b75d[_0x2f042f(0x1b3,'HV0s')]=![],_0x37b75d[_0x2f042f(0xf8,'vX((')+'n']=_0x5b6db2[_0x2f042f(0x2e1,'*cRj')],_0x32a48a?_0x2c3fd3:_0x37b75d;}function verifyIntegrity(_0x2d2272){const _0x468fdc=a0_0x1a20a9,_0x436613={'qsRuC':_0x468fdc(0x115,'fFs7')+_0x468fdc(0x353,'&X1#')+_0x468fdc(0x235,'McaD')+_0x468fdc(0x124,'WwL]')+_0x468fdc(0x3b9,'JZi!'),'eyRIG':_0x468fdc(0x3ad,'xAn$')+_0x468fdc(0x3e3,'xAn$')+'2','XDIiz':_0x468fdc(0x336,'%XN2')+_0x468fdc(0x392,'9p0t')+_0x468fdc(0x262,'a!yj')+_0x468fdc(0x3b0,'xEDD'),'AmuPw':_0x468fdc(0x278,'5M0*')+_0x468fdc(0x3b4,'WwL]')+_0x468fdc(0x2c7,'klM*')+_0x468fdc(0x304,'fxAb')+_0x468fdc(0x1df,'hyV]')+_0x468fdc(0x2f5,'*cRj')+_0x468fdc(0x2aa,'R7ue')+'y','ghrFN':_0x468fdc(0x360,'1)N7')+_0x468fdc(0x20f,'qRzZ')+_0x468fdc(0x15f,'DeVE')+_0x468fdc(0xfb,'WkDR')+_0x468fdc(0x11b,'xAn$')+_0x468fdc(0x265,'5M0*')+_0x468fdc(0xed,'a!yj')+_0x468fdc(0x1db,'o7#I')+'g)','QyAVi':_0x468fdc(0x3d3,'xAn$')+_0x468fdc(0x189,'Cr^J')+_0x468fdc(0x100,'1)N7')+_0x468fdc(0x156,'WkDR')+_0x468fdc(0x232,'WwL]')+_0x468fdc(0x2e0,'iGdY')+_0x468fdc(0x3f1,'fxAb')+_0x468fdc(0x1c5,'HV0s'),'FRuml':_0x468fdc(0x113,'8fUu'),'gyREc':_0x468fdc(0x389,'DeVE')+_0x468fdc(0x2ef,'7LcB')+_0x468fdc(0x243,'McaD')+_0x468fdc(0x171,'JZi!')+_0x468fdc(0x2b5,'lNP9')+_0x468fdc(0x1e9,'M]zu')+_0x468fdc(0x26b,'4[1C')+_0x468fdc(0x1b6,'0VCn')+_0x468fdc(0x37b,'5M0*')+'!','ZCJpx':function(_0xb2c052,_0x4f1db9){return _0xb2c052!==_0x4f1db9;},'NZNew':_0x468fdc(0x1e3,'6]&M')+'t','eZIpM':_0x468fdc(0x21e,'G0fj')+_0x468fdc(0x368,'@^g)')+_0x468fdc(0x2a8,'I@&8')+_0x468fdc(0x157,'@^g)')+_0x468fdc(0x407,'acpb')+_0x468fdc(0x2a3,'WwL]')+_0x468fdc(0x145,'acpb')+_0x468fdc(0x2b6,'xAn$'),'PXHBo':function(_0x1d51c1,_0x1ce1c7,_0x5dd719){return _0x1d51c1(_0x1ce1c7,_0x5dd719);},'WETMp':_0x468fdc(0x3fe,'lStV')+_0x468fdc(0x382,'lStV')+_0x468fdc(0x3b3,'qRzZ')+_0x468fdc(0x26d,'I@&8')+_0x468fdc(0x1b7,'fxAb')+_0x468fdc(0x1f1,'HV0s')+_0x468fdc(0x331,'a!yj')+_0x468fdc(0x310,'j0$l')+_0x468fdc(0x279,'S]35')+_0x468fdc(0x320,'vX(('),'VLwmv':_0x468fdc(0x163,'lNP9')+_0x468fdc(0x1cd,'iGdY')+_0x468fdc(0x249,'JZi!')+_0x468fdc(0x361,'@^g)')+_0x468fdc(0x297,'fxAb')+_0x468fdc(0x1f8,'JZi!')+_0x468fdc(0x180,'a!yj')+_0x468fdc(0x3cf,'Cr^J')+_0x468fdc(0x2fc,'hyV]')+_0x468fdc(0x2bf,'G0fj')+_0x468fdc(0x3b8,'a!yj')+_0x468fdc(0x1fb,'DeVE')+_0x468fdc(0x134,'j0$l')+'n.','rMPrG':function(_0x1b4f45,_0x57d35a,_0x24f84d,_0x1dc9f7){return _0x1b4f45(_0x57d35a,_0x24f84d,_0x1dc9f7);}},_0x3b2014=path[_0x468fdc(0x3ca,'p2jX')](_0x2d2272,_0x436613[_0x468fdc(0x275,'a!yj')]);if(!fs[_0x468fdc(0x13c,'a!yj')+_0x468fdc(0x3c4,'8fUu')](_0x3b2014)){const _0x715a36=_0x436613[_0x468fdc(0x184,'h[#t')][_0x468fdc(0x364,'vX((')]('|');let _0x4bd4fe=-0x1eda+-0x12b9*0x2+0x444c;while(!![]){switch(_0x715a36[_0x4bd4fe++]){case'0':console[_0x468fdc(0x3b6,'0Hz3')](_0x436613[_0x468fdc(0x27f,'o7#I')]);continue;case'1':console[_0x468fdc(0x3b7,'j0$l')](_0x468fdc(0x1a0,'9p0t')+_0x468fdc(0x386,'S]35')+':\x20'+_0x3b2014);continue;case'2':return![];case'3':console[_0x468fdc(0x329,'G0fj')](_0x436613[_0x468fdc(0x1e8,'Cr^J')]);continue;case'4':console[_0x468fdc(0x3b1,'xEDD')](_0x436613[_0x468fdc(0x26e,'@E7@')]);continue;case'5':console[_0x468fdc(0x332,'lNP9')](_0x436613[_0x468fdc(0x399,'8fUu')]);continue;}break;}}let _0x2d5eb6;try{_0x2d5eb6=JSON[_0x468fdc(0xfe,'o7#I')](fs[_0x468fdc(0x30e,'fFs7')+_0x468fdc(0x2a9,'4[1C')+'nc'](_0x3b2014,_0x436613[_0x468fdc(0x23c,'qRzZ')]));}catch(_0x2b2de3){return console[_0x468fdc(0x3e0,'acpb')](_0x436613[_0x468fdc(0x3be,'dyPH')]),console[_0x468fdc(0x39e,'6]&M')](_0x468fdc(0x1eb,'R7ue')+_0x468fdc(0x240,'JZi!')+_0x2b2de3[_0x468fdc(0x313,'j0$l')+'ge']),![];}if(!_0x2d5eb6[_0x468fdc(0x2e4,'xEDD')]||_0x436613[_0x468fdc(0x34c,'S]35')](typeof _0x2d5eb6[_0x468fdc(0x1c6,'1)N7')],_0x436613[_0x468fdc(0xea,'Rpo5')]))return console[_0x468fdc(0x22f,'lStV')](_0x436613[_0x468fdc(0x202,'8fUu')]),![];const _0x31183e=_0x436613[_0x468fdc(0x1bc,'Cr^J')](verifyManifestSignature,_0x2d5eb6,_0x2d2272);if(!_0x31183e[_0x468fdc(0x1d5,'McaD')])return console[_0x468fdc(0x10a,'@^g)')](_0x436613[_0x468fdc(0x154,'WwL]')]),console[_0x468fdc(0x13b,'fxAb')](_0x468fdc(0x12b,'%XN2')+_0x468fdc(0x287,'1)N7')+_0x31183e[_0x468fdc(0x215,'McaD')+'n']),console[_0x468fdc(0x21f,'a!yj')](_0x436613[_0x468fdc(0x282,'9p0t')]),![];let _0x48dd85=!![];const _0xa99f01=[];for(const [_0x4eff82,_0x512a01]of Object[_0x468fdc(0x206,'hyV]')+'es'](_0x2d5eb6[_0x468fdc(0x1be,'I@&8')])){const _0x233da4=_0x436613[_0x468fdc(0x116,'WkDR')](verifyFile,_0x2d2272,_0x4eff82,_0x512a01),_0x48d466={'file':_0x4eff82,..._0x233da4};_0xa99f01[_0x468fdc(0x3f2,'G0fj')](_0x48d466),!_0x233da4[_0x468fdc(0x311,'qRzZ')]&&(_0x48dd85=![],console[_0x468fdc(0x22f,'lStV')](_0x468fdc(0x294,'@^g)')+_0x468fdc(0x29b,'I@&8')+'\x20'+_0x233da4[_0x468fdc(0x119,'%XN2')+'n']),_0x233da4[_0x468fdc(0x11c,'@^g)')+_0x468fdc(0x387,'qRzZ')]&&_0x233da4[_0x468fdc(0x31e,'JYlG')+'l']&&(console[_0x468fdc(0x305,'M]zu')](_0x468fdc(0x3ea,'fxAb')+_0x468fdc(0x29e,'p2jX')+_0x468fdc(0x2d1,'j0$l')+':\x20'+_0x233da4[_0x468fdc(0xeb,'o7#I')+_0x468fdc(0x223,'ohkR')]),console[_0x468fdc(0x3cc,'S]35')](_0x468fdc(0x130,'*cRj')+_0x468fdc(0x251,'R7ue')+_0x468fdc(0x37e,'8fUu')+'\x20\x20'+_0x233da4[_0x468fdc(0x19d,'])Dh')+'l'])));}return _0x48dd85;}function a0_0x4d72(_0x2bbccd,_0x33ced2){_0x2bbccd=_0x2bbccd-(-0x1012+-0x57+0x376*0x5);const _0x4ecbfa=a0_0x184b();let _0x224d9c=_0x4ecbfa[_0x2bbccd];if(a0_0x4d72['ZIMFRR']===undefined){var _0x5d9519=function(_0x1d5d94){const _0x1ada88='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x55951f='',_0x3fa3f7='',_0x55f1b7=_0x55951f+_0x5d9519;for(let _0x1d8d1e=-0xb*-0x220+-0x113c+0x624*-0x1,_0x26d70f,_0xb504de,_0x102508=-0x4*-0x673+0xbcf+0x3*-0xc89;_0xb504de=_0x1d5d94['charAt'](_0x102508++);~_0xb504de&&(_0x26d70f=_0x1d8d1e%(0x71*0x14+0xf4e+-0x181e)?_0x26d70f*(0x225d*-0x1+0x16ba+0xb3*0x11)+_0xb504de:_0xb504de,_0x1d8d1e++%(0x33*0x8f+-0x2696+-0x3*-0x35f))?_0x55951f+=_0x55f1b7['charCodeAt'](_0x102508+(0x1*0x329+0xd20+-0x103f*0x1))-(0x2af*0x9+0x1eaa+-0x36c7)!==-0xabe*-0x1+-0x184c+0xd8e?String['fromCharCode'](-0x1757+-0x2076+0x38cc*0x1&_0x26d70f>>(-(0xb13+-0x9*0x3ab+-0x35*-0x6a)*_0x1d8d1e&-0x261a+-0x160c+0x3c2c)):_0x1d8d1e:-0x8*0x3d+-0x1*0x22a3+0x248b){_0xb504de=_0x1ada88['indexOf'](_0xb504de);}for(let _0x561ebf=0x3f*-0x4f+-0xd*-0x18+-0x3a5*-0x5,_0x286b1b=_0x55951f['length'];_0x561ebf<_0x286b1b;_0x561ebf++){_0x3fa3f7+='%'+('00'+_0x55951f['charCodeAt'](_0x561ebf)['toString'](-0x2689*0x1+0x2565+0x134))['slice'](-(0x895+-0x20c5+0x1832));}return decodeURIComponent(_0x3fa3f7);};const _0x459d68=function(_0x590b0c,_0xa91717){let _0x48da9c=[],_0x11aca3=-0x2*-0x44d+-0x5e3+0x8b*-0x5,_0x34370b,_0x529588='';_0x590b0c=_0x5d9519(_0x590b0c);let _0x51f4a8;for(_0x51f4a8=-0x13*0x143+0xc23+0xbd6;_0x51f4a8<0x757*0x2+-0x952+0x12*-0x3e;_0x51f4a8++){_0x48da9c[_0x51f4a8]=_0x51f4a8;}for(_0x51f4a8=-0x2f*0x1a+0xe99*0x1+-0x5*0x1f7;_0x51f4a8<0xc56+-0x11c1+0x66b;_0x51f4a8++){_0x11aca3=(_0x11aca3+_0x48da9c[_0x51f4a8]+_0xa91717['charCodeAt'](_0x51f4a8%_0xa91717['length']))%(0x1*-0x112d+-0x7a*-0x14+-0x8a5*-0x1),_0x34370b=_0x48da9c[_0x51f4a8],_0x48da9c[_0x51f4a8]=_0x48da9c[_0x11aca3],_0x48da9c[_0x11aca3]=_0x34370b;}_0x51f4a8=0x4*0x73d+0x159b*-0x1+0x273*-0x3,_0x11aca3=-0x5*-0x145+0x7f1+-0xe4a;for(let _0x2a4dfc=0x14ef+0x16e0+0x5*-0x8c3;_0x2a4dfc<_0x590b0c['length'];_0x2a4dfc++){_0x51f4a8=(_0x51f4a8+(0xf2d+0x1a51+-0x297d))%(-0xb16+0x23*-0x119+0x3281),_0x11aca3=(_0x11aca3+_0x48da9c[_0x51f4a8])%(-0x9*-0x1d+-0x2554*0x1+0x254f),_0x34370b=_0x48da9c[_0x51f4a8],_0x48da9c[_0x51f4a8]=_0x48da9c[_0x11aca3],_0x48da9c[_0x11aca3]=_0x34370b,_0x529588+=String['fromCharCode'](_0x590b0c['charCodeAt'](_0x2a4dfc)^_0x48da9c[(_0x48da9c[_0x51f4a8]+_0x48da9c[_0x11aca3])%(-0x110a+-0x8*0x31a+-0x2ada*-0x1)]);}return _0x529588;};a0_0x4d72['aYDkIi']=_0x459d68,a0_0x4d72['aJlEcJ']={},a0_0x4d72['ZIMFRR']=!![];}const _0xf6468d=_0x4ecbfa[-0xd3b+0x1f1a+-0x11df],_0x11dddd=_0x2bbccd+_0xf6468d,_0x521fa2=a0_0x4d72['aJlEcJ'][_0x11dddd];if(!_0x521fa2){if(a0_0x4d72['VoOkuR']===undefined){const _0x1f2eea=function(_0x4e6d31){this['FOXqqn']=_0x4e6d31,this['fdMNRw']=[0x1630+0x5f7*-0x6+0xd9b,0x1b1a+-0x1211*0x2+0x908,0x120*-0xf+0x1*-0x212e+0x320e],this['IXzeMG']=function(){return'newState';},this['BPWNHf']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['slWjtB']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x1f2eea['prototype']['TjtVdM']=function(){const _0x2973c2=new RegExp(this['BPWNHf']+this['slWjtB']),_0xd8fc37=_0x2973c2['test'](this['IXzeMG']['toString']())?--this['fdMNRw'][0x185f+0x1585*-0x1+-0x1*0x2d9]:--this['fdMNRw'][0x4*-0xcc+-0xa2e*0x1+0xd5e];return this['vUyMpD'](_0xd8fc37);},_0x1f2eea['prototype']['vUyMpD']=function(_0x26d1f4){if(!Boolean(~_0x26d1f4))return _0x26d1f4;return this['exRoeP'](this['FOXqqn']);},_0x1f2eea['prototype']['exRoeP']=function(_0x48ae3a){for(let _0x1b4328=-0xab2*0x2+-0x1335+0x13*0x223,_0x3f986b=this['fdMNRw']['length'];_0x1b4328<_0x3f986b;_0x1b4328++){this['fdMNRw']['push'](Math['round'](Math['random']())),_0x3f986b=this['fdMNRw']['length'];}return _0x48ae3a(this['fdMNRw'][-0x183a+-0xa85+-0xf*-0x251]);},new _0x1f2eea(a0_0x4d72)['TjtVdM'](),a0_0x4d72['VoOkuR']=!![];}_0x224d9c=a0_0x4d72['aYDkIi'](_0x224d9c,_0x33ced2),a0_0x4d72['aJlEcJ'][_0x11dddd]=_0x224d9c;}else _0x224d9c=_0x521fa2;return _0x224d9c;}function verifyIntegrityDetailed(_0x5b01a8){const _0x1664df=a0_0x1a20a9,_0x1ce911={'sgSns':_0x1664df(0x168,'ohkR')+_0x1664df(0x2da,'imkl')+'+$','neAUl':_0x1664df(0x2c9,'G0fj')+_0x1664df(0x2eb,'vX((')+_0x1664df(0x11f,'imkl')+')','CFlTd':_0x1664df(0x3bb,'@^g)')+_0x1664df(0x1e0,'I@&8')+_0x1664df(0x108,'R7ue')+_0x1664df(0x15a,'4[1C')+_0x1664df(0xf3,'0VCn')+_0x1664df(0x2b3,'j0$l')+_0x1664df(0x312,'8fUu'),'anVqK':function(_0x216c5d,_0x39ead3){return _0x216c5d(_0x39ead3);},'kecZP':_0x1664df(0x207,'])Dh'),'tirhk':function(_0x3d6f6b,_0x10666b){return _0x3d6f6b+_0x10666b;},'BIRHU':_0x1664df(0x37d,'qRzZ'),'LrkGg':_0x1664df(0x2f3,'xEDD'),'fdnrU':function(_0x54c9ce){return _0x54c9ce();},'WssEf':function(_0x18e4b1,_0x4df5bd,_0x48fd4a){return _0x18e4b1(_0x4df5bd,_0x48fd4a);},'fXePZ':function(_0x3a6496){return _0x3a6496();},'gxCNR':_0x1664df(0x3f5,'1)N7')+_0x1664df(0x18c,'McaD')+_0x1664df(0x2b8,'HV0s')+_0x1664df(0x2ec,'xEDD')+_0x1664df(0x370,'McaD'),'yLcJl':_0x1664df(0x3d2,'S]35')+_0x1664df(0x3d5,'1)N7')+_0x1664df(0x1d7,'xEDD')+_0x1664df(0x25f,'G0fj'),'oLIYq':_0x1664df(0x281,'Rpo5'),'fxYoq':function(_0x1ad44b,_0x35b326,_0x1eadd7){return _0x1ad44b(_0x35b326,_0x1eadd7);},'yHHor':function(_0x333813,_0x371160,_0x45c9e9,_0x4d8842){return _0x333813(_0x371160,_0x45c9e9,_0x4d8842);}},_0x442df2=(function(){let _0x334823=!![];return function(_0x4c7d08,_0x19fd9d){const _0x5c4971=_0x334823?function(){const _0x34028e=a0_0x4d72;if(_0x19fd9d){const _0x2b0c44=_0x19fd9d[_0x34028e(0x25c,'9p0t')](_0x4c7d08,arguments);return _0x19fd9d=null,_0x2b0c44;}}:function(){};return _0x334823=![],_0x5c4971;};}()),_0x4a133e=_0x1ce911[_0x1664df(0x198,'iGdY')](_0x442df2,this,function(){const _0x258ff5=_0x1664df;return _0x4a133e[_0x258ff5(0x31b,'dyPH')+_0x258ff5(0x34f,'M]zu')]()[_0x258ff5(0x3a4,'Rpo5')+'h'](_0x1ce911[_0x258ff5(0x231,'ohkR')])[_0x258ff5(0xf0,'%XN2')+_0x258ff5(0x337,'j0$l')]()[_0x258ff5(0x2ff,'DeVE')+_0x258ff5(0x2cc,'0VCn')+'r'](_0x4a133e)[_0x258ff5(0x2f2,'dyPH')+'h'](_0x1ce911[_0x258ff5(0x101,'6]&M')]);});_0x1ce911[_0x1664df(0x2ae,'1)N7')](_0x4a133e);const _0x2d4963=(function(){let _0x197730=!![];return function(_0x286b5a,_0x3b1518){const _0x4c5aa5=_0x197730?function(){const _0x503f5d=a0_0x4d72;if(_0x3b1518){const _0x363133=_0x3b1518[_0x503f5d(0x25d,'j0$l')](_0x286b5a,arguments);return _0x3b1518=null,_0x363133;}}:function(){};return _0x197730=![],_0x4c5aa5;};}());(function(){const _0x5a58ba=_0x1664df;_0x1ce911[_0x5a58ba(0x309,'h[#t')](_0x2d4963,this,function(){const _0x6498ed=_0x5a58ba,_0x372a40=new RegExp(_0x1ce911[_0x6498ed(0x344,'0Hz3')]),_0x1ef30a=new RegExp(_0x1ce911[_0x6498ed(0x1f0,'h[#t')],'i'),_0x43a28a=_0x1ce911[_0x6498ed(0x3fd,'@E7@')](_0x12c03b,_0x1ce911[_0x6498ed(0x123,'5M0*')]);!_0x372a40[_0x6498ed(0x166,'4[1C')](_0x1ce911[_0x6498ed(0x17c,'h[#t')](_0x43a28a,_0x1ce911[_0x6498ed(0x2ba,'o7#I')]))||!_0x1ef30a[_0x6498ed(0x3e1,'lNP9')](_0x1ce911[_0x6498ed(0x2fd,'5M0*')](_0x43a28a,_0x1ce911[_0x6498ed(0x2c6,'G0fj')]))?_0x1ce911[_0x6498ed(0x3dc,'@^g)')](_0x43a28a,'0'):_0x1ce911[_0x6498ed(0x21d,'&X1#')](_0x12c03b);})();}());const _0x115f72=path[_0x1664df(0x16e,'iGdY')](_0x5b01a8,_0x1ce911[_0x1664df(0x318,'fFs7')]);if(!fs[_0x1664df(0x280,'6]&M')+_0x1664df(0x146,'S]35')](_0x115f72)){const _0x238a48={};return _0x238a48[_0x1664df(0x10f,'DeVE')]=![],_0x238a48[_0x1664df(0x138,'h[#t')]=_0x1ce911[_0x1664df(0x381,'dyPH')],_0x238a48[_0x1664df(0x19c,'vX((')+_0x1664df(0x291,'iGdY')+'th']=_0x115f72,_0x238a48;}let _0x2f20bb;try{_0x2f20bb=JSON[_0x1664df(0x244,'WkDR')](fs[_0x1664df(0x30e,'fFs7')+_0x1664df(0x398,'p2jX')+'nc'](_0x115f72,_0x1ce911[_0x1664df(0x2e6,'HV0s')]));}catch(_0x1c2e85){const _0x2e6c19={};return _0x2e6c19[_0x1664df(0x122,'WwL]')]=![],_0x2e6c19[_0x1664df(0x165,'qRzZ')]=_0x1664df(0x12a,'HV0s')+_0x1664df(0x2fe,'JZi!')+_0x1664df(0x210,'7LcB')+_0x1664df(0x203,'1)N7')+_0x1664df(0x1d1,'McaD')+'\x20'+_0x1c2e85[_0x1664df(0x176,'lStV')+'ge'],_0x2e6c19[_0x1664df(0x2a1,'Rpo5')+_0x1664df(0x170,'@E7@')+'th']=_0x115f72,_0x2e6c19;}const _0x550e47=_0x1ce911[_0x1664df(0x358,'xAn$')](verifyManifestSignature,_0x2f20bb,_0x5b01a8);if(!_0x550e47[_0x1664df(0x238,'xEDD')])return{'valid':![],'signature':_0x550e47,'manifest':_0x2f20bb,'results':[],'summary':{'totalFiles':Object[_0x1664df(0x400,'])Dh')](_0x2f20bb[_0x1664df(0x3a9,'JZi!')]||{})[_0x1664df(0x132,'S]35')+'h'],'validFiles':0x0,'tamperedFiles':0x0,'signatureValid':![]}};const _0x4671d0=[];let _0x2e0249=!![];for(const [_0x11a995,_0xd24eeb]of Object[_0x1664df(0x129,'Cr^J')+'es'](_0x2f20bb[_0x1664df(0x110,'@^g)')])){const _0x53771d=_0x1ce911[_0x1664df(0x2ad,'7LcB')](verifyFile,_0x5b01a8,_0x11a995,_0xd24eeb),_0x58c9ca={'file':_0x11a995,..._0x53771d};_0x4671d0[_0x1664df(0x28f,'sM5k')](_0x58c9ca),!_0x53771d[_0x1664df(0x1af,'fxAb')]&&(_0x2e0249=![]);}return{'valid':_0x2e0249,'signature':_0x550e47,'manifest':_0x2f20bb,'results':_0x4671d0,'summary':{'totalFiles':_0x4671d0[_0x1664df(0x1b9,'JZi!')+'h'],'validFiles':_0x4671d0[_0x1664df(0x408,'8fUu')+'r'](_0x3e9387=>_0x3e9387[_0x1664df(0x167,'@^g)')])[_0x1664df(0x2bd,'G0fj')+'h'],'tamperedFiles':_0x4671d0[_0x1664df(0x378,'hyV]')+'r'](_0x3e20fc=>!_0x3e20fc[_0x1664df(0x396,'@E7@')])[_0x1664df(0x1e5,'Rpo5')+'h'],'signatureValid':!![]}};}(function(){const _0x196ec9=a0_0x1a20a9,_0x111417={'jpoYc':function(_0x1f97d1,_0x1b01f9){return _0x1f97d1(_0x1b01f9);},'Mjygo':function(_0x355ac9,_0x4a3a76){return _0x355ac9+_0x4a3a76;},'uPmeJ':function(_0x1310e9,_0x3a1d3a){return _0x1310e9+_0x3a1d3a;},'wWmdH':_0x196ec9(0x10d,'fxAb')+_0x196ec9(0x3e5,'HV0s')+_0x196ec9(0x2f4,'h[#t')+_0x196ec9(0x214,'fFs7'),'ULseA':_0x196ec9(0x2a2,'8fUu')+_0x196ec9(0x3a3,'j0$l')+_0x196ec9(0x26a,'fxAb')+_0x196ec9(0x1cf,'o7#I')+_0x196ec9(0x159,'G0fj')+_0x196ec9(0x158,'G0fj')+'\x20)','zjYcM':function(_0x7f9ea4){return _0x7f9ea4();}},_0x545bb7=function(){const _0xcd276b=_0x196ec9;let _0xd2345c;try{_0xd2345c=_0x111417[_0xcd276b(0x14b,'WkDR')](Function,_0x111417[_0xcd276b(0x34d,'@^g)')](_0x111417[_0xcd276b(0x355,'0Hz3')](_0x111417[_0xcd276b(0x38e,'a!yj')],_0x111417[_0xcd276b(0x37c,'lStV')]),');'))();}catch(_0x224a0e){_0xd2345c=window;}return _0xd2345c;},_0x17b86c=_0x111417[_0x196ec9(0x397,'JZi!')](_0x545bb7);_0x17b86c[_0x196ec9(0x22a,'xAn$')+_0x196ec9(0x307,'1)N7')+'l'](_0x12c03b,0x10b0+-0xb2*0x1+-0x5e);}());function a0_0x184b(){const _0x12f35c=['WOKdWPhcSZnoWOldPCkTqvXiWPy','W6b1WQaryq','fmoxt8oCWRa','e8owWPbipq','h8oqWOOhia','Fw8ee8o8','jmk8tb7dUqVdQmoJzq','zq/cV8kFkG','mMRcISkrza','bCobW47cSq0','WO0vWR3dKbK','ECoNWRxcP8kP','CmkvWQBcUmoU','dehcHCo4qq','WPZcRCoSvmkH','WPRcVSoQxSoP','WOCAnJjk','Ba8LcmkZ','qgddHSkVnq','W6ejEJpcMYFdJtHg','F0BcKH/cTG','W6T0WQymzG','wHpdIHTv','CaNcVq','gwNcLSkK','W7/cI3hdM8o/','BKFcULu','WRzajdhcHG','utzEWP3dSG','WPKYW583W5m','xYLLWR3dTq','o8kKkmocWRG','d8oxvG','m8oUdbNdNa','EYDlu8kz','yWiQfa','W4hdJSoOWPHC','nZ9u','F1JdR8kaW5u','WOZdHd0mWRO','WOpdKYqh','WPRcUCkIW7qi','oCkJW7zgba','oHJdIYyU','tXBdK8oSnq','W5ZcNmkNWOuu','WOSJWRWCW5WwW4pcOJi','W7mybcZcHG','eCkWW6Paea','f8oiW4hcMmom','dGRdHbyE','BN0CwSo2','k3SzpeC','WQPCWRtdMr0','rSkzWRJcUmo5','b3C/W6ZcP8oaW5alWOdcSvldOq','k8kSW6/dGSkE','mchdQmkLoG','W4ldJNVcGCku','W5lcP8o9smoO','W6eaW6xcJuq','oSo9kZNcGG','cSoeW6JcHM0','W413W7OI','Aqbxwq','mmkOW7JdR8oL','WQayoYFcGa','aJ3dMmo6pG','w8oIW7xcGey','EMlcPmkgWPG','W5LgW53dS24','WRWlpa','W70wW7jvWQS','WOipkdja','WQVcU8oovmos','W5qyisLn','W5/dH8kLW7iM','pHpdRWTc','s1/dOCkaW5m','WRnzW4mnWR0','AepdTCkg','EgCpfmo5','sgBdU8kkFG','yMaCh8o/','W4RdG2BcLCkM','daldHW1B','W4LJWROgzG','WPe+mtLi','W7BdJKBcNSkW','BvZdSW','jCoRW7dcHG','tSo2s8k5eq','aSkkW4NdTCoR','DuNdHmk3pa','WRHDnde','qCo5ACk9ka','W6XiW4ldTxe','W7qrW7hdKMq','BI4jfSo/','n8kKfSobW50','WR5DpJhcKW','dSoyW7pcJ3O','BH1EsCkF','zweFfmk4','BN0CwSo1','WOCGWQhdVW','pZCOeSkP','mbNdRq','EIdcUSkwpa','kCoOymolWQq','gYmzW47cSW','W4ZdIxNcICkn','wKVdNXLt','zqJcKSk5fq','eCotqSohWRC','W7mlW4ddLwi','gSokpqlcJq','W4qOW7tdTfi','W7HhWPtdPSo3','WRPtW5LiWQK','j28oiee','W5ZcI8oXW64','W4RdH0pcKCkR','yxtcH8kCWPK','vSkdf8kCW6VcJHRcNXFdNCk+iZi','BLhcHa','rbpdT8kCjG','dSoxWOOn','DvBcIHxcPW','dJOBW5JcTq','ycP+WRhdTW','k0CgdSo9','W5RdGCkAW7uX','dmkXmSolW6S','kSkTW77dN8oq','WPJdRmo8vmoV','W7hcReCNW5a','WOZcVSo7','h8orWOW','W5KFW5ldGcy','b3JcICkY','W4BdKL/cN8kT','q2zuWPBdRq','W71VWRmnDq','WQ9tW4nyWQK','WRDyWQhdGW','WRhcVmo1W6dcNa','W4xdIuhcLCkS','f0FcQSk9xG','mgNdGmk8Da','Fqbubq','fSk3mSotW7a','ESoIdrFdMG','xZldGSoofG','lwVcH8o7lG','oKFcLrpcPW','W7ubW7ldKN8','tCksW40efMzThSoa','lCoOWQtcV8o8','W4BdMf3cLCk8','DxpdL8kRjG','kY46h8o5','sL5SbSkm','AuhcJr3cPq','W4VdVmkGW7er','zMddICkTma','nXpdQt8Y','DxldKCoQpG','W57cM8oXW6ldNq','rdzVWOhdVW','iIJdNSozW4a0WOutW7WjbW','zr8RqSkX','WPNcNCkHW5Ci','kNZcMCoWlG','WQDeW4hdHhe','WOGbWPRdOZ0','d8oUFmkKmW','WOapmxTp','lGpdQren','yJ09leC','qSkjWRJcUa','mmk0W6PoaG','AfhcGqpcQW','W6T0WQCkEW','WO9uWR/dNHG','xYbI','gWRdHX1A','hmk3kCoiW6O','tLGRa8oG','ymoJf0JcNq','WRHeW4vcWQK','hXVdGGTk','u3KFa8oc','WPCpkdC','4P6rW4etkh0','qcP+WRhdTW','fCkQpa','pI/cIW','bLtcHmk7uW','iSoUW6JcR2W','hCodW7NcNwO','l8kcW71hfq','F8oPcKJcNq','W6xcTmo3W4xdQW','gYGD','lgFcTSkDyq','rW/dVCoLmG','amorW57cQX8','nCk2W6S','iSoSibNcIa','WOyljsHl','BfrbvmkD','WOJcLSkMW5e','WOeEidPq','bCoxW4pcONO','r0tdSCkjja','a8oRWPW','sG3dU8oika','W4/dIuNdKmkY','CuxcPmohWPO','ALJcPSkAW5O','WOzIW7ZdRsi','yCoPhvldIG','htqhW5JcPa','p8kWW6ddKW','mwKojL0','WQlcRSoTWQNcNG','W6dcUGbHWPe','EXCIrCk2','xmkIpq','WPKYW50+W5y','DLhcJHFcSa','kta2cCkO','WQHyWQVdHa','W5xdGuhcMCk7','jI/cUSoima','WOaBnJ4e','lMhdVCkuoW','W4BdQeZcG8k3','fCoxxCobWR8','bfRcT8o1aW','W4lcKCoQW6u','W4JdKSkSW794','sSoRACkyoW','zGldS8konG','WRzloq','W6L0WR0xBq','W43dHCoTWPrtwmoSWPJdQsJcOa','p8kKmSolW70','nmk8W7/dHCoF','W4ZcHSkVW7iN','W63cHrr8WOW','W73cPbb2W4u','W6PrW4aLW4G','F3SAh8k4','dCkSkCopW7m','de3cJ8k/bW','WP3dIt8m','fGZdJa','hXhdGHzz','tHKfW4pcOG','qSo9BSk7oW','WQBdGreSyG','hmk8cCoUW58','W6tcPWDMWOa','W6eUW6tdShK','jXyrW6JcPa','mW3dNrLs','WQ7cUSkbW7W8','rN/cLCkAWOy','WPZcUmoTumo3','rmkvWR7cPmkW','nmkWW7C','bw7cSCoUoq','kJGAW6JcTa','fZCmW5JdQG','W5zDW5ZcOw0','hSokW77dSmo/','u8opW5NcOsi','WOVdLq8kWQ4','W51aW5RdRNK','BH1rxmko','lWpdPWGd','W7/cJCoWW47dNq','gupcHmkQ','wY3cKCk7ka','zrvBuW','FNdcImkgWPa','WRjBotFcKW','WRPEkdhcHG','WQlcUCk0W6lcNq','W5roasnu','DMpcLmkaWOq','W6tdH8kNW7iK','gqZdHqTk','ufpdPmkRW4a','WPK6W70KW4O','WRLtWR/dHbe','nhWqjLC','EHxdVCkqkG','cLhcK8k9','WPi7WQNdVcO','tCo0DmkREG','WRGpW5/dRSk0','f8oLASkvWQa','cSkXoSovW6W','WQTxW5TeWR8','BXBcL8knkG','ySoOW6S','WQztlcZdKG','gNZcNmo1lW','kSkXW63cHmkl','WRnxW4nyWQK','WRfkW4ddPSk0','WQ5FW5bdWRO','jWNdNu3dUq','BWpcVCkDlq','W5RcM8oZW6FdMG','W4xcICoUW7hdOG','WQZcQ8kDW6Co','rCkvWQ3cS8o8','hmolWPqniq','ksz+rG','W5rDW48','q8o3EG','t1tcM0Gn','W4ZdLmk6W7iT','o8oxW7FcMxO','a2JcNSo4AG','BwCeh8oR','WPTFW5TiW7S','WOGKWRfNWO0TW5hcJqZcNCos','WOqQWQFdPG','W60LW7hdRh8','W5bHW7O/W5e','W6lcIgu5Fq','W5VdNSoQW6xdNW','chtcHmo5jG','xcKmW5/cPq','dSkTmSolW70','umkzWRNcQCkN','o8oXW7Daeq','oCkPW7bhfW','ot9Fc8oXWPBdJ8obDa','qmkDWQBcTmo5','W6pcKZCIFq','WPdcUmk4v8o0','BHfbsCkP','cKVcRCk3ua','fCoxt8oDWRW','dJ4BW4lcVG','gCovWPW','xWSCWPpcKq','z8o5cXFcNq','WQBcGZaKyW','umkkW4Dscq','gupdGb1h','4P2/pCk9W70L','W4BdHmkJW74H','EH1CwG','c8oxqmojWQC','W7PnWOqmvG','pSk8W7JdU8oF','WR3cNSkGW7uw','gWtcImk2uW','DZBcPSkynq','WPGsW63dS3K','daldHXfA','zrvCvmkC','W6ixW6ddH2u','W67cL8oVW67cMW','oSkdn8oZW7W','ggJcGSo5AW','DHtcTG','W4XxW4W','xmoXESkMoW','qdKNrCkE','sCo1B8ko','BqzauSki','iXlcSSkxkq','ggJcGSo5','B0BcUarr','WQBcUSo8WQNcJG','B2tdPSkpDa','gcKgW4y','oXpdVIGd','oIC2d8k8','WRL5lW/cNq','WROVerDQ','Bs57tCk3','k2mjfmoX','yMtdLSkXoa','WQHsWQRdIum','W6pcJZe/zG','WRPwjdy','mZRcR8oBjG','jqVcU8otWO8','DCk0WPZcJCov','zH1uwmkj','W5XHW70gW54','WPRdLrW6WPm','i0BdS8oAha','asmQd8k8','WPeZWRZdOs4','CN3cGCkaWOq','p8oiW73cTCo6','sa3dOmotiW','FCkKufi','rmkzWQVcRSoY','wSkcWRyhCG','xSkpWQldNYKIW4ldHCkKWRzz','yrDtsCkt','gCocW4xcUCoi','yNtdHSkWoW','WR5zpq','rcP7W6lcSq','n8o8palcSW','q2xdG8kTW6C','hXhdMrDm','W5VdG8kOW78e','WPZcO8o2qSoV','xcbLWRy','EMldTG','eWddIGXx','sbVcV8oxna','tG0dWORcGa','wq8qWPdcMW','W5NdS17cTSkB','FedcLmkgWP4','p8o+W7dcKSo3','ua/cTmkuoa','ztSvrmk1','DW7dGa','imo0W6m','pmkRW77dMCom','nmkDkCoHW6S','FwddGCkiAa','mgZdHmkQpq','WRfOWQ/dKWm','dg8SW7G','w8kDWQtcTmo7','bmoas8opWQC','WQ9iWRRdGW0','WONcRCo0wmo/','gdqBW67cSq','pSo+W6xcQmo2','WQuDWQ3dNHi','cHaXc8k2','WOW3WR3dOsO','icCQaCkU','dCkXhSo9W6S','BbtdQCoA','yXznWRRdGa','W6HkW73dPSkU','fSk6WQVcTmoX','xr7dOmopna','W7TDWPRcTCoTWOFdRqfzhtNdON4','f0VcJ8o4qq','hCotW77dKZ8','W4/dJ0O','AGxcSSkopa','W4/cM8oTW67dIq','W4RdLmkWW6S2','h1tcKCk0xG','emonWPeg','zgtdLSkW','W4hcKSoMW5JdGG','W6FcVaD7WOS','W41tW4tcOwm','f0FcGmkStG','WO/cMSkYW4Sa','WRzajdy','BWNcTa','kYSIhW','cexcJCkXqW','WPRdQYqDWRe','WQBcVSoGW4JcQW','WOJdIdGBWRW','WPGlnW','WPuEndDD','W692WQqpBq','CSoNfrZdVW','BvJdOG','gqldHrDq','WQHCWRxdGbW','wGRdHrXx','g8obW4q','hYKqW63cUq','mbpdVGag','W6GmW4tdQ8k/','dHBdMr0','WRzaps3cGa','lNiB','WR5cW5HFW7m','WRLAWQRdMq0','WObrkIZcKW','hmohWOSCCG','smoWB8kofa','rr8RqSkX','yHGCtCkY','z2/cHCk3pq','ECkEWQdcUmo+','WOylndDf','E1FdPCkgW5C','cXddUq19','W5vNW6W','rSo+DmkRoW','FfBcU0Tc','m8k/WQrpfW','y8kQyGJcLCoVWOFdISoh','zXzywmkz','ptVdNJ9X','xNTjWOVcKq','WQVcUmoQWRpdMa','jH8GW4lcQG','W4ZdNSkGW6G2','eSogsmkw','WQiImZzs','ot1Csmo8WRddMmo+ytW','WPpcO8o5vCk7','WOZdJJ8gWQS','FbVdQXXc','Egegqmk4','W6/cHsqMlW','WRvDpJBdKG','ACoPWRNcHSki','gSokW5JcVrm','BNWAfCoQ','W67dGupcMCk5','WRbyWRBdLW0','W6tcVqz6','bNlcMCoY','W43cJCo3W5VdMG','zW/cTmkFkG','W51aW6VdOhG','W7JdS2JcS8kk','g8kSgCoeW68','W4PMW6GIW5O','WRrqW5jEWQ8','W6SlW7q','WQpcUmo7W7W','EgldOmkpFq','kmoRWQWXdW','WR7cLmo3W73cNq','W4ZcJ8oPW6a/','WOZdNZKmWR0','FatcS8oBWOm','EHftwCk8','cSotqmohWRu','CWKCxSkv','y3xcHCk3ia','h23cNmo1pW','nCo1WReEmW','W4ZdLCk9','hNJcLmk8kG','wSoRWPyEmW','WRvrWR3dOWa','W4PxW4VdTwC','m8kKeHFdHa','imoRW4dcRmoQ','WPGAWOBdVtK','BvynkSoc','hJ3cG8o1la','ALpdP8kDW50','r8kFW4vvBW','i8oXpbC','W7rhW7K5sW','WPD2W7a6W5y','WPLIW6GKW4W','pSo+WQu','EwCghq','axZcNSo1lq','W4pcM8o6WQVdLW','pbi7W6pcHq','qb7dVmovnW','erNdUICf','DfpdQmkjW4y','wSkpe8ktW64','D0tdSSklW5y','kCoJW63cRW','ACoSvSkFhW','cbBdIaXr','W6DQWReWBq','W5xcIciJBG','DNtdI8kNia','vetdRCkPW5u','ta9rWPtcLq','pZ/cOCoslCkRmhBdQWnUWPK','FKpdQmknW4y','qGfPWO7dKG','W6dcQrHIWOa','WROFW47dS8k1','WPiCkZy','cmoeW7pcNwy','wq8vWQxcNq','mSoQnXhcKG','WQ5UWRuqFa','lHpdQXyn','WPC3WRZdOsi','WOFdM20cWRW','fmoDq8ol','W4tdH8kNW7iK','WQ7cJcqJzG','WQZcUmoGW4dcNa','W6VcSSoKW57dUq','p11Lb8o5','W7RdOmkKWRtdHq','yNGgg8o7','tSkzWOhdPvy','W5RdLeJdKmkA','WPCZWQldUY8','W47cM8oWW7/cMW','axSEjL4','WRHvW4niWR8','W4ldI0hcNSkD','WPNcPCo0vmoO','j0/cN8oUia','a1hcUCofoG','WQBcSCk5W6/cKq','4PY4WRHjWQK3','qCo/pCk+oW','B2tdPSktEG','EN7cImopW5W','WPRcV8oSh8oX','DgtdLW','W7mygs3cHG','WRmBWPRdIXy','W6tdVSk7W50X','CfxcUtVcOq','rsPTWQRdSG','WPBcOSoOrmoV','f8kMl8ooW7C','nJ0Fiee','W4xdISkW','W6DLWRupFq','AXBdVSoziG','W7xcJJC5','q1/dOmkGAa','WQKoW6a','W6JcKJa9FW','kb/dUa0j','z0BcP8kvEq','WQtcSSo3W7RcJa','WRWFW5/dOSoG','WOVcUCoQvmk7','WOhcHM0','rCkrWQVcQCo+','WQ4wW5LcWQ8','g1BcK8k3vq','W67cOXb7WP8','F2SAdmo5','hSonW4/cQWi','lSk2kmoIW74','W4jHW5VdH08','pCo3nq','jJ0iibm','rcPTWQVdVG','yCoPgbBdUW','W6ejEaJcKrhdHIne','W6DLWRuxFq','oImOd8k+','lcKyfa','W6nJWQCqDq','W6FcU8oWW6xcNq','WQ9WWOhdMbW','nCk7W5lcVSoR','eSopW5dcTIK','Dmo0oJZdRW','W7JcPXi','pqldRY0d','qIbFWQZdOW','fCofW5xcTa4','k30bhCo2','eSohW4JcRqO','dI4lW4FcUq','EN3cG8klW5C','DvRdGatcRa','W4mbW6FdGhK','WPJcPCo+sa','kNWkkHm','DLVcHW','WRbFW4rEWRi','F3SAhW','yGm+sCoW','FutdTmkbW4a','emkXm8ok','FuxdSG','WRftW5m','W4RdJSkhW4SL','W5DhW4BdPte','W43dG8k9W74H','cdOfW4lcTa','daBdMrfy','W5XGW7S5W40','4P2WWPjJW4/cVq','WOFdLsSmWQO','xYSSWR7dUa','WQDeW4FdIxK','W6DOWRm','xCoHFSkrna','W4LtEwyz','gmkzWRlcUa','WOddMIGAWQ0','oSk4W6Hm','eSocsSopWQC','xYRdH8kUFfjFW4NcItBcOq1V','W7T1WQagCa','dSoqWO0BjG','W7hcSvv/WOW','l8k4W6ddN8oA','W5ZcGmk8W4ip','DfhcOsxcQa','abZdUSoDiW','W6NcJ2uRBG','h03cOSoeiJT0F1e','gYKBW4tcOG','WPNcGSk3W7FcIa','W43cNmoP','WQNdTuGVW5G','bSksW45zdG','W67dILtcL8kW','W6BdTM7cICkN','f0RcHG','WPVcPCo/vmoO','dvhcJmk1rG','i34ioLi','i8oXjGNdIW','FaZcPG','B2tcJrxcJG','W47dGupcMCk5','z3JcICkbW5y','kSoJW53cTmoO','lq3dKeBdSmkbW6BdVqCYWPVcNG','y8oTdrO','dKFcMCo2ga','W53dH8kKW6SN','udKaW4u','Ch7cImkCWOi','W7PZWQyg','kY5Avmk4','W5dcGedcKCkX','WP/dNseaWR0','W53dICk9W7OU','yghcISkgWOi','lchdUWK1','EMBdV8kwFG','WQ9tW5zEWRq','W7hdQxNcQCkc','t8k1WQtcQCo4','WO83WQRcSIK','g1ZcImkS','W4NcNgbj','aCoBqSoAWRy','WOJdJIOF','A0BdRCkh','rCktWQq','vt1PWRNdPq','sGKiWQlcPW','W43cHSoZW67dMa','W6xdRCk+W7OZ','tb1awmkz','W64hW5JdHgK','WRXDW5TdWPK','W6dcIcK5AG','rmo4zSkAWQu','FmoIwsddMa','nrddRXyw','dmkvW7/dK8o/','lYOLd8k0','AqDAb8oA','FHfavmkC','p8oUW73cPu4','tWnVWPldVq','c8kqW5JdR8oJ','axZcGa','rd7cPSk9fG','AGldS8kkla','oCkYW7bmeG','ocCG','pIRdItn3','WPZcJSoCW4RcRq','wamwWO3cLq','Fcrhx8kw','mSo3jX7cKG','ic0J','dttdHHX2','WQBcGCoGCSoV','wX7dVSovnq','pCoOfr4','WODoktPD','4P6urmosW418','iCk/tuddMrtdVSo6FJO','bSoqW7pcIN4','wCo5CCkHpG','EqZcISkzfa','WOddKcG6WQa','wq1ZA8kt','DWy8qmkP','nSk+W61h','dGBdJW','yCoPgahdKG','W4ZdLmk7W7qW','r8kOWRRcJSoj','k34mo0a','xHm0dmkK'];a0_0x184b=function(){return _0x12f35c;};return a0_0x184b();}const a0_0x15b362={};a0_0x15b362[a0_0x1a20a9(0x125,'iGdY')+a0_0x1a20a9(0x29c,'DeVE')+a0_0x1a20a9(0x173,'j0$l')]=verifyIntegrity,a0_0x15b362[a0_0x1a20a9(0x140,'dyPH')+a0_0x1a20a9(0x369,'McaD')+a0_0x1a20a9(0x2ce,'acpb')+a0_0x1a20a9(0x322,'%XN2')+a0_0x1a20a9(0x32c,'fxAb')]=verifyIntegrityDetailed,a0_0x15b362[a0_0x1a20a9(0x3ab,'JYlG')+a0_0x1a20a9(0xe9,'JZi!')]=verifyFile,a0_0x15b362[a0_0x1a20a9(0x1ff,'qRzZ')+a0_0x1a20a9(0x178,'sM5k')+a0_0x1a20a9(0x1d8,'8fUu')+a0_0x1a20a9(0xf7,'@^g)')+a0_0x1a20a9(0x1f2,'JZi!')]=verifyManifestSignature,a0_0x15b362[a0_0x1a20a9(0x260,'a!yj')+a0_0x1a20a9(0x2f7,'j0$l')+'ze']=canonicalize,a0_0x15b362[a0_0x1a20a9(0x24a,'iGdY')+a0_0x1a20a9(0x31a,'5M0*')+'sh']=generateHash,a0_0x15b362[a0_0x1a20a9(0x3e7,'vX((')+a0_0x1a20a9(0x264,'o7#I')+'le']=isBinaryFile,module[a0_0x1a20a9(0x268,'])Dh')+'ts']=a0_0x15b362;if(require[a0_0x1a20a9(0x19b,'8fUu')]===module){const baseDir=process[a0_0x1a20a9(0x36e,'p2jX')][0xc1*-0x7+-0x2321+0x286a]||process[a0_0x1a20a9(0x1dc,'I@&8')]();console[a0_0x1a20a9(0x22e,'xAn$')](a0_0x1a20a9(0x2be,'Rpo5')+a0_0x1a20a9(0x10b,'o7#I')+a0_0x1a20a9(0x2be,'Rpo5')+a0_0x1a20a9(0x2b1,'I@&8')+a0_0x1a20a9(0x379,'h[#t')+a0_0x1a20a9(0x208,'ohkR')+a0_0x1a20a9(0x2dd,'JYlG')+a0_0x1a20a9(0x10b,'o7#I')),console[a0_0x1a20a9(0x22e,'xAn$')](a0_0x1a20a9(0x3d1,'])Dh')+a0_0x1a20a9(0x226,'klM*')+a0_0x1a20a9(0x316,'xAn$')+a0_0x1a20a9(0x277,'@E7@')+a0_0x1a20a9(0x3d4,'a!yj')+a0_0x1a20a9(0x3e6,'JYlG')+a0_0x1a20a9(0x1f6,'h[#t')),console[a0_0x1a20a9(0x30b,'&X1#')](a0_0x1a20a9(0x1b8,'0Hz3')+a0_0x1a20a9(0x3c6,'Cr^J')+a0_0x1a20a9(0x339,'9p0t')+a0_0x1a20a9(0x34b,'sM5k')+a0_0x1a20a9(0x10b,'o7#I')+a0_0x1a20a9(0x3de,'4[1C')+a0_0x1a20a9(0x209,'G0fj')+a0_0x1a20a9(0x2db,'DeVE')),console[a0_0x1a20a9(0x14d,'lStV')](a0_0x1a20a9(0x3c1,'h[#t')+a0_0x1a20a9(0x375,'8fUu')+a0_0x1a20a9(0x205,'4[1C')+'\x20'+baseDir),console[a0_0x1a20a9(0x1c1,'@E7@')]('');const report=verifyIntegrityDetailed(baseDir);report[a0_0x1a20a9(0x11d,'WwL]')]&&(console[a0_0x1a20a9(0x3a6,'I@&8')](a0_0x1a20a9(0x13f,'hyV]')+a0_0x1a20a9(0x395,'acpb')+a0_0x1a20a9(0x357,'vX((')+a0_0x1a20a9(0x31c,'JYlG')+a0_0x1a20a9(0x354,'G0fj')+report[a0_0x1a20a9(0x1d6,'hyV]')]),console[a0_0x1a20a9(0x3a6,'I@&8')](a0_0x1a20a9(0x242,'0VCn')+a0_0x1a20a9(0x302,'p2jX')+report[a0_0x1a20a9(0x1ed,'8fUu')+a0_0x1a20a9(0x20c,'lNP9')+'th']),process[a0_0x1a20a9(0x2c0,'xAn$')](-0x1966+-0x1094+0x29fb));console[a0_0x1a20a9(0x325,'0Hz3')](a0_0x1a20a9(0x1a2,'6]&M')+a0_0x1a20a9(0x181,'klM*')+a0_0x1a20a9(0x1c3,'6]&M')+a0_0x1a20a9(0x3fb,'JZi!')+report[a0_0x1a20a9(0x2bb,'WkDR')+a0_0x1a20a9(0x149,'o7#I')][a0_0x1a20a9(0x2d3,'7LcB')+'on']),console[a0_0x1a20a9(0x141,'h[#t')](a0_0x1a20a9(0x3f8,'j0$l')+a0_0x1a20a9(0x16f,'6]&M')+'\x20'+report[a0_0x1a20a9(0x161,'imkl')+a0_0x1a20a9(0x172,'])Dh')][a0_0x1a20a9(0xf4,'fxAb')+a0_0x1a20a9(0x3e2,'8fUu')]);report[a0_0x1a20a9(0x2d6,'6]&M')+a0_0x1a20a9(0x107,'I@&8')][a0_0x1a20a9(0x1aa,'7LcB')+a0_0x1a20a9(0xfc,'I@&8')]&&console[a0_0x1a20a9(0x269,'*cRj')](a0_0x1a20a9(0x26c,'])Dh')+a0_0x1a20a9(0x300,'0VCn')+'\x20'+report[a0_0x1a20a9(0x2d6,'6]&M')+a0_0x1a20a9(0x2a6,'6]&M')][a0_0x1a20a9(0x1b7,'fxAb')+a0_0x1a20a9(0x35f,'j0$l')][a0_0x1a20a9(0x211,'vX((')+a0_0x1a20a9(0x32a,'h[#t')]+(a0_0x1a20a9(0x2ab,'fFs7')+a0_0x1a20a9(0x3c7,'o7#I'))+report[a0_0x1a20a9(0x356,'@^g)')+a0_0x1a20a9(0x32b,'G0fj')][a0_0x1a20a9(0x10c,'j0$l')+a0_0x1a20a9(0x327,'1)N7')][a0_0x1a20a9(0x3df,'&X1#')]+')');console[a0_0x1a20a9(0x255,'JZi!')]('');report[a0_0x1a20a9(0x3f3,'1)N7')+a0_0x1a20a9(0x131,'McaD')]&&!report[a0_0x1a20a9(0x253,'Cr^J')+a0_0x1a20a9(0x17e,'p2jX')][a0_0x1a20a9(0x362,'p2jX')]&&(console[a0_0x1a20a9(0x348,'o7#I')](a0_0x1a20a9(0x333,'Rpo5')+a0_0x1a20a9(0x19e,'])Dh')+a0_0x1a20a9(0x343,'Cr^J')+a0_0x1a20a9(0x25a,'p2jX')+a0_0x1a20a9(0x3ed,'9p0t')+a0_0x1a20a9(0x196,'8fUu')+a0_0x1a20a9(0x246,'M]zu')+a0_0x1a20a9(0x137,'a!yj')+'!'),console[a0_0x1a20a9(0x285,'p2jX')](a0_0x1a20a9(0x11e,'1)N7')+a0_0x1a20a9(0x13a,'fFs7')+report[a0_0x1a20a9(0x1bd,'McaD')+a0_0x1a20a9(0x267,'a!yj')][a0_0x1a20a9(0x1da,'Rpo5')+'n']),console[a0_0x1a20a9(0xf5,'*cRj')](a0_0x1a20a9(0x3db,'WwL]')+a0_0x1a20a9(0x33b,'p2jX')+a0_0x1a20a9(0x286,'5M0*')+a0_0x1a20a9(0x324,'*cRj')+a0_0x1a20a9(0x3ef,'5M0*')+a0_0x1a20a9(0x261,'4[1C')+a0_0x1a20a9(0x15b,'fFs7')+a0_0x1a20a9(0x3a5,'I@&8')+a0_0x1a20a9(0x2af,'HV0s')+a0_0x1a20a9(0x36a,'7LcB')+a0_0x1a20a9(0x23b,'4[1C')+a0_0x1a20a9(0x409,'1)N7')+a0_0x1a20a9(0x109,'HV0s')),process[a0_0x1a20a9(0x36b,'M]zu')](-0xa46+0x7*-0x6a+0xd2d));console[a0_0x1a20a9(0xe8,'5M0*')](a0_0x1a20a9(0x1e2,'HV0s')+a0_0x1a20a9(0x3d6,'*cRj')+a0_0x1a20a9(0x31d,'1)N7')+a0_0x1a20a9(0x3e8,'R7ue')+a0_0x1a20a9(0x12d,'@E7@')+'d'),console[a0_0x1a20a9(0x298,'%XN2')](''),console[a0_0x1a20a9(0x17f,'a!yj')](a0_0x1a20a9(0xff,'dyPH')+a0_0x1a20a9(0x224,'a!yj')+a0_0x1a20a9(0x37a,'fFs7')+a0_0x1a20a9(0xe7,'qRzZ')+':'),console[a0_0x1a20a9(0x1c0,'R7ue')](a0_0x1a20a9(0x2ee,'])Dh')+a0_0x1a20a9(0x2e7,'DeVE')+a0_0x1a20a9(0x27e,'DeVE')+report[a0_0x1a20a9(0x120,'0Hz3')+'ry'][a0_0x1a20a9(0x363,'6]&M')+a0_0x1a20a9(0x3ae,'McaD')]),console[a0_0x1a20a9(0x319,'sM5k')](a0_0x1a20a9(0x3bf,'lNP9')+a0_0x1a20a9(0x335,'dyPH')+a0_0x1a20a9(0x147,'fFs7')+report[a0_0x1a20a9(0x351,'M]zu')+'ry'][a0_0x1a20a9(0x2df,'7LcB')+a0_0x1a20a9(0x2f8,'WkDR')]),console[a0_0x1a20a9(0x248,'@^g)')](a0_0x1a20a9(0x183,'hyV]')+a0_0x1a20a9(0x3d8,'McaD')+a0_0x1a20a9(0x266,'0VCn')+a0_0x1a20a9(0x162,'@E7@')+report[a0_0x1a20a9(0x197,'5M0*')+'ry'][a0_0x1a20a9(0x1dd,'klM*')+a0_0x1a20a9(0x2cf,'klM*')+a0_0x1a20a9(0x25b,'9p0t')]),console[a0_0x1a20a9(0x298,'%XN2')]('');if(report[a0_0x1a20a9(0x257,'M]zu')])console[a0_0x1a20a9(0x38d,'qRzZ')](a0_0x1a20a9(0x393,'%XN2')+a0_0x1a20a9(0x314,'DeVE')+a0_0x1a20a9(0x3e4,'])Dh')+a0_0x1a20a9(0x3c0,'dyPH')+a0_0x1a20a9(0x118,'0Hz3')+a0_0x1a20a9(0x1ee,'%XN2')+a0_0x1a20a9(0x2f6,'6]&M')),console[a0_0x1a20a9(0x38d,'qRzZ')](a0_0x1a20a9(0x216,'I@&8')+a0_0x1a20a9(0x366,'ohkR')+a0_0x1a20a9(0x17d,'M]zu')+a0_0x1a20a9(0x32f,'6]&M')+a0_0x1a20a9(0x39c,'a!yj')),process[a0_0x1a20a9(0x254,'])Dh')](0x87f*0x4+0x2*-0x136d+0x1*0x4de);else{const auKIWk=(a0_0x1a20a9(0x349,'iGdY')+a0_0x1a20a9(0x3fc,'lStV'))[a0_0x1a20a9(0x2a4,'HV0s')]('|');let kSBcah=0x1*-0xfcd+0x2*-0x1288+0x34dd;while(!![]){switch(auKIWk[kSBcah++]){case'0':process[a0_0x1a20a9(0x1c9,'7LcB')](-0x2659*0x1+0x26f6+-0x9c);continue;case'1':console[a0_0x1a20a9(0x195,'R7ue')](a0_0x1a20a9(0x2e8,'@E7@')+a0_0x1a20a9(0x1ac,'0VCn')+a0_0x1a20a9(0x104,'xEDD')+a0_0x1a20a9(0x2e2,'fxAb')+'!');continue;case'2':report[a0_0x1a20a9(0x204,'WwL]')+'ts'][a0_0x1a20a9(0x36d,'Rpo5')+'r'](_0x37c1c9=>!_0x37c1c9[a0_0x1a20a9(0x390,'WkDR')])[a0_0x1a20a9(0x239,'o7#I')+'ch'](_0x4456cb=>{const _0x5ef0ec=a0_0x1a20a9;console[_0x5ef0ec(0x3b1,'xEDD')](_0x5ef0ec(0x36c,'p2jX')+_0x4456cb[_0x5ef0ec(0x15d,'lStV')]),_0x4456cb[_0x5ef0ec(0x3c9,'p2jX')+_0x5ef0ec(0xfa,'0Hz3')]&&_0x4456cb[_0x5ef0ec(0x2ea,'ohkR')+'l']&&(console[_0x5ef0ec(0x1f7,'8fUu')](_0x5ef0ec(0x20e,'JZi!')+_0x5ef0ec(0x143,'M]zu')+_0x5ef0ec(0x1bf,'qRzZ')+_0x4456cb[_0x5ef0ec(0x373,'iGdY')+_0x5ef0ec(0x1f3,'R7ue')]),console[_0x5ef0ec(0x28c,'1)N7')](_0x5ef0ec(0x27d,'o7#I')+_0x5ef0ec(0x18b,'xEDD')+_0x5ef0ec(0x234,'dyPH')+_0x4456cb[_0x5ef0ec(0x352,'*cRj')+'l']));});continue;case'3':console[a0_0x1a20a9(0x1a1,'vX((')](a0_0x1a20a9(0x1c4,'acpb')+a0_0x1a20a9(0x3af,'M]zu')+a0_0x1a20a9(0x190,'o7#I'));continue;case'4':console[a0_0x1a20a9(0x213,'WkDR')]('');continue;}break;}}}function _0x12c03b(_0x105f7f){const _0x493d67=a0_0x1a20a9,_0x312ec6={'qTpST':function(_0x304174,_0x2c6420){return _0x304174===_0x2c6420;},'oiTyR':_0x493d67(0x103,'lStV')+'g','tNeVC':_0x493d67(0x1d0,'h[#t')+_0x493d67(0x1a5,'lNP9')+_0x493d67(0x29d,'6]&M'),'SCIsw':_0x493d67(0x38c,'&X1#')+'er','mwmzY':function(_0x2e64b9,_0x395d73){return _0x2e64b9!==_0x395d73;},'DIbKI':function(_0x24ee44,_0x13e07a){return _0x24ee44+_0x13e07a;},'Avwge':function(_0x3aa3e5,_0x5b0f44){return _0x3aa3e5/_0x5b0f44;},'NaMfE':_0x493d67(0x23e,'qRzZ')+'h','PXgLQ':function(_0xef13ff,_0x4fb5c4){return _0xef13ff===_0x4fb5c4;},'XwwyZ':function(_0x523a00,_0x1be9df){return _0x523a00%_0x1be9df;},'CLgUB':function(_0x4056e1,_0x55c554){return _0x4056e1+_0x55c554;},'lpDws':_0x493d67(0x299,'DeVE'),'acyAS':_0x493d67(0x199,'M]zu'),'CHVPH':_0x493d67(0x1fc,'ohkR')+'n','TcsCd':_0x493d67(0x296,'lNP9')+_0x493d67(0x272,'McaD')+'t','mUwcz':function(_0x13da00,_0x14101d){return _0x13da00(_0x14101d);},'MopBg':function(_0x221198,_0x35ba92){return _0x221198(_0x35ba92);}};function _0x3b5a57(_0x992558){const _0x124a87=_0x493d67;if(_0x312ec6[_0x124a87(0x39f,'McaD')](typeof _0x992558,_0x312ec6[_0x124a87(0xec,'@^g)')]))return function(_0x26c18b){}[_0x124a87(0x15c,'o7#I')+_0x124a87(0x12f,'5M0*')+'r'](_0x312ec6[_0x124a87(0x2ca,'dyPH')])[_0x124a87(0x24c,'M]zu')](_0x312ec6[_0x124a87(0x17a,'lNP9')]);else _0x312ec6[_0x124a87(0x1bb,'iGdY')](_0x312ec6[_0x124a87(0x388,'a!yj')]('',_0x312ec6[_0x124a87(0x117,'HV0s')](_0x992558,_0x992558))[_0x312ec6[_0x124a87(0x405,'h[#t')]],0x2b*0x63+0x6*-0x4aa+0xb5c*0x1)||_0x312ec6[_0x124a87(0x380,'acpb')](_0x312ec6[_0x124a87(0x13d,'1)N7')](_0x992558,0x1*-0x8ad+-0x43d+0xcfe),0x670+-0x11a1+-0x1*-0xb31)?function(){return!![];}[_0x124a87(0x35e,'vX((')+_0x124a87(0x21a,'WwL]')+'r'](_0x312ec6[_0x124a87(0x2d9,'iGdY')](_0x312ec6[_0x124a87(0x2ac,'xAn$')],_0x312ec6[_0x124a87(0x259,'DeVE')]))[_0x124a87(0x13e,'9p0t')](_0x312ec6[_0x124a87(0x20a,'McaD')]):function(){return![];}[_0x124a87(0x221,'xEDD')+_0x124a87(0x2c2,'a!yj')+'r'](_0x312ec6[_0x124a87(0xf2,'%XN2')](_0x312ec6[_0x124a87(0x1b0,'JZi!')],_0x312ec6[_0x124a87(0x372,'klM*')]))[_0x124a87(0x39a,'imkl')](_0x312ec6[_0x124a87(0x18f,'o7#I')]);_0x312ec6[_0x124a87(0x233,'4[1C')](_0x3b5a57,++_0x992558);}try{if(_0x105f7f)return _0x3b5a57;else _0x312ec6[_0x493d67(0x2bc,'5M0*')](_0x3b5a57,0x11d2+-0xcc5*0x1+-0x50d);}catch(_0x5dfefc){}}