@restforgejs/platform 4.2.8 → 4.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (324) 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/templates/dashboard-catalog.js +1 -437
  25. package/generators/lib/templates/db-connection-env.js +1 -212
  26. package/generators/lib/templates/dbschema-catalog.js +1 -489
  27. package/generators/lib/templates/field-validation-catalog.js +1 -531
  28. package/generators/lib/templates/mysql-template.js +1 -3863
  29. package/generators/lib/templates/oracle-template.js +1 -3915
  30. package/generators/lib/templates/postgres-template.js +1 -5838
  31. package/generators/lib/templates/query-declarative-catalog.js +1 -199
  32. package/generators/lib/templates/sqlite-template.js +1 -3440
  33. package/generators/lib/utils/env-manager.js +6 -0
  34. package/generators/lib/utils/path-validator.js +71 -0
  35. package/generators/lib/validators/payload-validator.js +1 -2
  36. package/integrity-manifest.json +28 -10
  37. package/package.json +11 -3
  38. package/scripts/verify-integrity.js +1 -1
  39. package/server.js +1 -1
  40. package/src/components/handlers/adjust_handler.js +1 -1
  41. package/src/components/handlers/audit_handler.js +1 -1
  42. package/src/components/handlers/delete_handler.js +1 -1
  43. package/src/components/handlers/export_handler.js +1 -1
  44. package/src/components/handlers/import_handler.js +1 -1
  45. package/src/components/handlers/insert_handler.js +1 -1
  46. package/src/components/handlers/update_handler.js +1 -1
  47. package/src/components/handlers/upload_handler.js +1 -1
  48. package/src/components/handlers/workflow_handler.js +1 -1
  49. package/src/components/integrations/webhook.js +1 -1
  50. package/src/consumers/baseConsumer.js +1 -1
  51. package/src/consumers/declarativeMapper.js +1 -1
  52. package/src/consumers/handlers/apiHandler.js +1 -1
  53. package/src/consumers/handlers/consoleHandler.js +1 -1
  54. package/src/consumers/handlers/databaseHandler.js +1 -1
  55. package/src/consumers/handlers/index.js +1 -1
  56. package/src/consumers/handlers/kafkaHandler.js +1 -1
  57. package/src/consumers/index.js +1 -1
  58. package/src/consumers/messageTransformer.js +1 -1
  59. package/src/consumers/validator.js +1 -1
  60. package/src/core/db/dialect/base-dialect.js +1 -1
  61. package/src/core/db/dialect/index.js +1 -1
  62. package/src/core/db/dialect/mysql-dialect.js +1 -1
  63. package/src/core/db/dialect/oracle-dialect.js +1 -1
  64. package/src/core/db/dialect/postgres-dialect.js +1 -1
  65. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  66. package/src/core/db/flatten-helper.js +1 -1
  67. package/src/core/db/query-builder-error.js +1 -1
  68. package/src/core/db/query-builder.js +1 -1
  69. package/src/core/db/relation-helper.js +1 -1
  70. package/src/core/handlers/delete_handler.js +1 -1
  71. package/src/core/handlers/insert_handler.js +1 -1
  72. package/src/core/handlers/update_handler.js +1 -1
  73. package/src/core/models/base-model.js +1 -1
  74. package/src/core/utils/cache-manager.js +1 -1
  75. package/src/core/utils/component-engine.js +1 -1
  76. package/src/core/utils/context-builder.js +1 -1
  77. package/src/core/utils/datetime-formatter.js +1 -1
  78. package/src/core/utils/datetime-parser.js +1 -1
  79. package/src/core/utils/db.js +1 -1
  80. package/src/core/utils/logger.js +1 -1
  81. package/src/core/utils/payload-loader.js +1 -1
  82. package/src/core/utils/security-checks.js +1 -1
  83. package/src/middleware/body-options.js +1 -1
  84. package/src/middleware/cors.js +1 -1
  85. package/src/middleware/idempotency.js +1 -1
  86. package/src/middleware/rate-limiter.js +1 -1
  87. package/src/middleware/request-logger.js +1 -1
  88. package/src/middleware/security-headers.js +1 -1
  89. package/src/models/base-model-mysql.js +1 -1
  90. package/src/models/base-model-oracle.js +1 -1
  91. package/src/models/base-model-sqlite.js +1 -1
  92. package/src/models/base-model.js +1 -1
  93. package/src/pro/caching/redis-client.js +1 -1
  94. package/src/pro/caching/redis-helper.js +1 -1
  95. package/src/pro/consumers/baseConsumer.js +1 -1
  96. package/src/pro/consumers/declarativeMapper.js +1 -1
  97. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  98. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  99. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  100. package/src/pro/consumers/handlers/index.js +1 -1
  101. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  102. package/src/pro/consumers/index.js +1 -1
  103. package/src/pro/consumers/messageTransformer.js +1 -1
  104. package/src/pro/consumers/validator.js +1 -1
  105. package/src/pro/database/base-model-mysql.js +1 -1
  106. package/src/pro/database/base-model-oracle.js +1 -1
  107. package/src/pro/database/base-model-sqlite.js +1 -1
  108. package/src/pro/database/db-mysql.js +1 -1
  109. package/src/pro/database/db-oracle.js +1 -1
  110. package/src/pro/database/db-sqlite.js +1 -1
  111. package/src/pro/excel/excel-generator.js +1 -1
  112. package/src/pro/excel/excel-parser.js +1 -1
  113. package/src/pro/excel/export-service.js +1 -1
  114. package/src/pro/excel/export_handler.js +1 -1
  115. package/src/pro/excel/import-service.js +1 -1
  116. package/src/pro/excel/import-validator.js +1 -1
  117. package/src/pro/excel/import_handler.js +1 -1
  118. package/src/pro/excel/upsert-builder.js +1 -1
  119. package/src/pro/idgen/idgen-routes.js +1 -1
  120. package/src/pro/integrations/lookup-resolver.js +1 -1
  121. package/src/pro/integrations/upload-handler-v2.js +1 -1
  122. package/src/pro/integrations/upload-handler.js +1 -1
  123. package/src/pro/integrations/webhook.js +1 -1
  124. package/src/pro/locking/lock-routes.js +1 -1
  125. package/src/pro/locking/resource-lock-manager.js +1 -1
  126. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  127. package/src/pro/messaging/kafkaService.js +1 -1
  128. package/src/pro/messaging/messagehubService.js +1 -1
  129. package/src/pro/messaging/rabbitmqService.js +1 -1
  130. package/src/pro/scheduler/job-manager.js +1 -1
  131. package/src/pro/scheduler/job-routes.js +1 -1
  132. package/src/pro/scheduler/job-validator.js +1 -1
  133. package/src/pro/storage/base-storage-provider.js +1 -1
  134. package/src/pro/storage/file-metadata-helper.js +1 -1
  135. package/src/pro/storage/index.js +1 -1
  136. package/src/pro/storage/local-storage-provider.js +1 -1
  137. package/src/pro/storage/s3-storage-provider.js +1 -1
  138. package/src/pro/storage/upload-cleanup-job.js +1 -1
  139. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  140. package/src/pro/storage/upload-pending-tracker.js +1 -1
  141. package/src/pro/websocket/broadcast-helper.js +1 -1
  142. package/src/pro/websocket/index.js +1 -1
  143. package/src/pro/websocket/livesync-server.js +1 -1
  144. package/src/pro/websocket/ws-broadcaster.js +1 -1
  145. package/src/services/export-service.js +1 -1
  146. package/src/services/import-service.js +1 -1
  147. package/src/services/kafkaConsumerService.js +1 -1
  148. package/src/services/kafkaService.js +1 -1
  149. package/src/services/messagehubService.js +1 -1
  150. package/src/services/rabbitmqService.js +1 -1
  151. package/src/utils/cache-invalidation-registry.js +1 -1
  152. package/src/utils/cache-manager.js +1 -1
  153. package/src/utils/component-engine.js +1 -1
  154. package/src/utils/config-extractor.js +1 -1
  155. package/src/utils/consumerLogger.js +1 -1
  156. package/src/utils/context-builder.js +1 -1
  157. package/src/utils/dashboard-helpers.js +1 -1
  158. package/src/utils/dateHelper.js +1 -1
  159. package/src/utils/datetime-formatter.js +1 -1
  160. package/src/utils/datetime-parser.js +1 -1
  161. package/src/utils/db-bootstrap.js +1 -1
  162. package/src/utils/db-mysql.js +1 -1
  163. package/src/utils/db-oracle.js +1 -1
  164. package/src/utils/db-sqlite.js +1 -1
  165. package/src/utils/db.js +1 -1
  166. package/src/utils/demo-generator.js +1 -1
  167. package/src/utils/excel-generator.js +1 -1
  168. package/src/utils/excel-parser.js +1 -1
  169. package/src/utils/file-watcher.js +1 -1
  170. package/src/utils/id-generator.js +1 -1
  171. package/src/utils/idempotency-manager.js +1 -1
  172. package/src/utils/import-validator.js +1 -1
  173. package/src/utils/license-client.js +1 -1
  174. package/src/utils/lock-manager.js +1 -1
  175. package/src/utils/logger.js +1 -1
  176. package/src/utils/lookup-resolver.js +1 -1
  177. package/src/utils/payload-loader.js +1 -1
  178. package/src/utils/processor-response.js +1 -1
  179. package/src/utils/rabbitmq.js +1 -1
  180. package/src/utils/redis-client.js +1 -1
  181. package/src/utils/redis-helper.js +1 -1
  182. package/src/utils/request-scope.js +1 -1
  183. package/src/utils/security-checks.js +1 -1
  184. package/src/utils/service-resolver.js +1 -1
  185. package/src/utils/shutdown-coordinator.js +1 -1
  186. package/src/utils/trusted-keys.js +1 -1
  187. package/src/utils/upload-handler.js +1 -1
  188. package/src/utils/upsert-builder.js +1 -1
  189. package/src/utils/workflow-hook-executor.js +1 -1
  190. package/generators/metadata/global.json +0 -58
  191. package/generators/metadata/test-mysql-workbench.json +0 -118
  192. package/generators/metadata/test-mysql.json +0 -56
  193. package/generators/metadata/test-oracle-workbench.json +0 -118
  194. package/generators/metadata/test-oracle.json +0 -56
  195. package/generators/metadata/test-pg-workbench.json +0 -118
  196. package/generators/metadata/test-pg.json +0 -56
  197. package/generators/scripts/obfuscate-source.js +0 -356
  198. package/generators/scripts/validate-catalog.js +0 -430
  199. package/generators/scripts/validate-dbschema-catalog.js +0 -708
  200. package/generators/tests/baseline/mysql/mini_inventory_item/src/models/mini-inventory/item.js +0 -944
  201. package/generators/tests/baseline/mysql/mini_inventory_item/src/modules/mini-inventory/item.js +0 -740
  202. package/generators/tests/baseline/mysql/mini_inventory_item/src/modules/mini-inventory.js +0 -336
  203. package/generators/tests/baseline/oracle/mini_inventory_item/src/models/mini-inventory/item.js +0 -1002
  204. package/generators/tests/baseline/oracle/mini_inventory_item/src/modules/mini-inventory/item.js +0 -740
  205. package/generators/tests/baseline/oracle/mini_inventory_item/src/modules/mini-inventory.js +0 -336
  206. package/generators/tests/baseline/postgres/mini_inventory_item/src/models/mini-inventory/item.js +0 -1333
  207. package/generators/tests/baseline/postgres/mini_inventory_item/src/modules/mini-inventory/item.js +0 -1173
  208. package/generators/tests/baseline/postgres/mini_inventory_item/src/modules/mini-inventory.js +0 -496
  209. package/generators/tests/fixtures/payloads/custom-sensitive.json +0 -27
  210. package/generators/tests/fixtures/payloads/dynamic-search-optout.json +0 -23
  211. package/generators/tests/fixtures/payloads/login-with-password.json +0 -22
  212. package/generators/tests/fixtures/payloads/order-process.json +0 -52
  213. package/generators/tests/fixtures/payloads/with-inline-sql.json +0 -26
  214. package/generators/tests/integration-tahap4b/README.md +0 -145
  215. package/generators/tests/integration-tahap4b/run-concurrent.js +0 -77
  216. package/generators/tests/integration-tahap4b/seed.sql +0 -53
  217. package/generators/tests/integration-tahap4b/verify.sql +0 -110
  218. package/generators/tests/unit/cli/create-dashboard.test.js +0 -505
  219. package/generators/tests/unit/cli/create-processor.test.js +0 -319
  220. package/generators/tests/unit/cli/dispatch-dashboard.test.js +0 -149
  221. package/generators/tests/unit/lib/dashboard-generator.test.js +0 -895
  222. package/generators/tests/unit/lib/dashboard-validator.test.js +0 -354
  223. package/generators/tests/unit/lib/dbschema-kit/apply-executor.test.js +0 -437
  224. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-introspect.test.js +0 -393
  225. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-generate-ddl.test.js +0 -104
  226. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-init.test.js +0 -119
  227. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-list.test.js +0 -48
  228. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-migrate.test.js +0 -175
  229. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-kit-validate.test.js +0 -102
  230. package/generators/tests/unit/lib/dbschema-kit/cli/dbschema-models.test.js +0 -43
  231. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/all-schemas-listing.js +0 -84
  232. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/connection-error.js +0 -13
  233. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/empty.js +0 -12
  234. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/multi-schema.js +0 -124
  235. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/single-schema-inventory.js +0 -64
  236. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/introspect-stubs/two-tables.js +0 -66
  237. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/connection-error.js +0 -9
  238. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/partial.js +0 -29
  239. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/rollback.js +0 -26
  240. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/migrate-stubs/success.js +0 -43
  241. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/audit/events.js +0 -18
  242. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/inventory/products.js +0 -9
  243. package/generators/tests/unit/lib/dbschema-kit/cli/fixtures/multi-schema/users.js +0 -8
  244. package/generators/tests/unit/lib/dbschema-kit/connection.test.js +0 -112
  245. package/generators/tests/unit/lib/dbschema-kit/ddl-generator.test.js +0 -205
  246. package/generators/tests/unit/lib/dbschema-kit/define-model.test.js +0 -56
  247. package/generators/tests/unit/lib/dbschema-kit/dialect/index.test.js +0 -46
  248. package/generators/tests/unit/lib/dbschema-kit/dialect/mysql.test.js +0 -126
  249. package/generators/tests/unit/lib/dbschema-kit/dialect/oracle.test.js +0 -126
  250. package/generators/tests/unit/lib/dbschema-kit/dialect/postgres.test.js +0 -131
  251. package/generators/tests/unit/lib/dbschema-kit/dialect/sqlite.test.js +0 -126
  252. package/generators/tests/unit/lib/dbschema-kit/driver-loader.test.js +0 -93
  253. package/generators/tests/unit/lib/dbschema-kit/emitters/create-index.test.js +0 -173
  254. package/generators/tests/unit/lib/dbschema-kit/emitters/create-table.test.js +0 -376
  255. package/generators/tests/unit/lib/dbschema-kit/emitters/drop-table.test.js +0 -78
  256. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/invalid-dialect.env +0 -6
  257. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/missing-dialect.env +0 -5
  258. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/missing-host.env +0 -5
  259. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/oracle-valid.env +0 -6
  260. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/postgres-valid.env +0 -7
  261. package/generators/tests/unit/lib/dbschema-kit/fixtures/connection/sqlite-valid.env +0 -2
  262. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/category.js +0 -11
  263. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/item_product.js +0 -11
  264. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/stock_inbound.js +0 -24
  265. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/stock_inbound_item.js +0 -28
  266. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/supplier.js +0 -9
  267. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory/warehouse.js +0 -9
  268. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-invalid/orphan.js +0 -17
  269. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/category.js +0 -11
  270. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/item_product.js +0 -11
  271. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/supplier.js +0 -9
  272. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/master/warehouse.js +0 -9
  273. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/transactions/stock_inbound.js +0 -24
  274. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/mini-inventory-multifolder/transactions/stock_inbound_item.js +0 -28
  275. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/audit/events.js +0 -18
  276. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/inventory/products.js +0 -9
  277. package/generators/tests/unit/lib/dbschema-kit/fixtures/integration/multi-schema/public/users.js +0 -9
  278. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-subfolder/extra/category.js +0 -8
  279. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-subfolder/master/category.js +0 -8
  280. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-tablename/bar.js +0 -8
  281. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/duplicate-tablename/foo.js +0 -8
  282. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/empty-folder/README.md +0 -1
  283. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/invalid-export/plain.js +0 -3
  284. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/invalid-schema/bad.js +0 -6
  285. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/legacy-pattern/legacy.js +0 -12
  286. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-distinct/audit/products.js +0 -9
  287. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-distinct/inventory/products.js +0 -9
  288. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-duplicate/a/products.js +0 -8
  289. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/multi-schema-duplicate/b/products.js +0 -8
  290. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/nested-deep/a/b/c/deep_table.js +0 -8
  291. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/.hidden/ignored.js +0 -7
  292. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/master/category.js +0 -8
  293. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/master/supplier.js +0 -8
  294. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/transactions/stock_inbound.js +0 -8
  295. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/recursive-multi-folder/transactions/stock_inbound_item.js +0 -8
  296. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-multiple/category.js +0 -8
  297. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-multiple/item_product.js +0 -9
  298. package/generators/tests/unit/lib/dbschema-kit/fixtures/loader/valid-single/category.js +0 -8
  299. package/generators/tests/unit/lib/dbschema-kit/integration.test.js +0 -217
  300. package/generators/tests/unit/lib/dbschema-kit/introspect-mapper.test.js +0 -403
  301. package/generators/tests/unit/lib/dbschema-kit/ir-builder.test.js +0 -390
  302. package/generators/tests/unit/lib/dbschema-kit/loader.test.js +0 -128
  303. package/generators/tests/unit/lib/dbschema-kit/naming.test.js +0 -170
  304. package/generators/tests/unit/lib/dbschema-kit/parser/shorthand-parser.test.js +0 -237
  305. package/generators/tests/unit/lib/dbschema-kit/schema-printer.test.js +0 -251
  306. package/generators/tests/unit/lib/dbschema-kit/statement-modifier.test.js +0 -105
  307. package/generators/tests/unit/lib/dbschema-kit/statement-splitter.test.js +0 -165
  308. package/generators/tests/unit/lib/dbschema-kit/topological-sort.test.js +0 -135
  309. package/generators/tests/unit/lib/dbschema-kit/validator/check-compatibility-validator.test.js +0 -373
  310. package/generators/tests/unit/lib/dbschema-kit/validator/circular-relation-validator.test.js +0 -454
  311. package/generators/tests/unit/lib/dbschema-kit/validator/cross-model-validator.test.js +0 -512
  312. package/generators/tests/unit/lib/dbschema-kit/validator/enhanced-validate-integration.test.js +0 -390
  313. package/generators/tests/unit/lib/dbschema-kit/validator/naming-convention-validator.test.js +0 -306
  314. package/generators/tests/unit/lib/dbschema-kit/validator/schema-validator.test.js +0 -443
  315. package/generators/tests/unit/lib/dbschema-kit/validator/type-compatibility-validator.test.js +0 -440
  316. package/generators/tests/unit/lib/dbschema-kit/validator/validator-reporter.test.js +0 -172
  317. package/generators/tests/unit/lib/metadata-manager-dashboard.test.js +0 -256
  318. package/generators/tests/unit/lib/payload-validator-fieldpolicy.test.js +0 -240
  319. package/generators/tests/unit/lib/processor-validation-generator.test.js +0 -300
  320. package/generators/tests/unit/lib/sensitive-field-masker.test.js +0 -170
  321. package/generators/tests/unit/lib/sql-table-extractor.test.js +0 -119
  322. package/scripts/generate-integrity-manifest.js +0 -124
  323. package/scripts/snapshot-cli-contracts.js +0 -194
  324. 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.1",
3
+ "generated": "2026-05-23T07:28:02.234Z",
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": "2ef2e146c66d74df2413398fa86944396ca20c310606237d2819eea504a3692c",
8
+ "src/utils/license-client.js": "5842a6fefa0ef4035cbd7ec1cac2ba65a6918e7faa1afa38812b2bb6e5be93b0",
9
+ "src/utils/trusted-keys.js": "2440fca5a73a633d9b37a2df2e740a8a00e131ecbabb05700cb6969cdf868da1",
10
+ "cli/consumer.js": "fcadb7f7c5b4c09c328ffb1ae882df823f5046d1a0c9ec61d25142bcca262663",
11
+ "src/utils/security-checks.js": "ca6d75ee3c20051f4931bd28d2ab12f0f5892e8d74e223bdac3038731979f557",
12
+ "scripts/verify-integrity.js": "bcd4ab356a196676235ffc81ab086b6fa7204e2720549f58006054f8cf7aafd3",
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": "f0328973fb28dd1d01f314e1328d817aed4fde9243f8c9896f950cb57a3fcffb",
17
+ "generators/lib/templates/oracle-template.js": "58f3a1cff3fbcffc39ae6cacb72a6c88a8434e8c33b8ae7463806095c84cf1b3",
18
+ "generators/lib/templates/postgres-template.js": "d339fd5f0ce260233e3c80831a637dd8d27e4f4ca72aa39a3cd6946f4bd9886e",
19
+ "generators/lib/templates/sqlite-template.js": "778b0e44514694e3e1a4e0a4ce5d9b6bb2e4f716e4769331a723dd9ad0b250e4",
20
+ "generators/lib/templates/dashboard-catalog.js": "7ab933e347c60eff7359ca621cd3f40d493641bcb25870d4150a9dbf740c2105",
21
+ "generators/lib/templates/dbschema-catalog.js": "779388a04c512ec24f8f7822b4d8feb3c20ad8d70787a3dc3478ece1df823daf",
22
+ "generators/lib/templates/field-validation-catalog.js": "85f925cfe158ce6c00f98dcecbcdf7c45971c5ec64d694b7707f784bdd1a650c",
23
+ "generators/lib/templates/query-declarative-catalog.js": "d60fb26d9336e0aa2913d94d14b79a0934ed8cc848013bbd6d77a5cdda32bf9f",
24
+ "generators/lib/templates/db-connection-env.js": "85cd3f5b68121294b32fc706b4578ba7581e1e1f8399eee2e656ab1dadb5adcf"
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": "340f2df9ae9c75e0c51cee4be5dd7ac0ccc4a3daedc2fa732a24bbe9b4d3e35d7215358ca313d5dcbdd03b08bdd6242ed7e9f701907aad2fb2f91acf9cb92009",
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.1",
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_0x285f35=a0_0x39b8;(function(_0x54fd4e,_0x5498c9){const _0x275f6a=a0_0x39b8,_0x4526b6=_0x54fd4e();while(!![]){try{const _0x4b3249=-parseInt(_0x275f6a(0x4dc,'*4MG'))/(0x6*-0x487+-0x2447+0x3f72)+parseInt(_0x275f6a(0x412,'deNJ'))/(0xb*0x1a6+-0x373+-0xead)*(-parseInt(_0x275f6a(0x259,'d!YP'))/(0x15c0+-0x35*-0x38+-0x2155))+parseInt(_0x275f6a(0x2d5,'eal6'))/(-0x19c*0x1+-0x3*-0x851+-0x7*0x355)+parseInt(_0x275f6a(0x473,'VtYn'))/(-0x5c8+0x17b3+0x9e*-0x1d)+-parseInt(_0x275f6a(0x4e1,'Dgl8'))/(0xb57*-0x1+0x1*-0x1d4b+-0x2*-0x1454)+-parseInt(_0x275f6a(0x2e4,'6!4J'))/(0x733+0x3cd*-0x4+0x808)+parseInt(_0x275f6a(0x353,'!72H'))/(-0x3*-0xaa3+-0x46*-0x7c+0x5fb*-0xb)*(parseInt(_0x275f6a(0x316,']7yL'))/(0x2*0x12b5+0x92*-0x2c+-0xc49));if(_0x4b3249===_0x5498c9)break;else _0x4526b6['push'](_0x4526b6['shift']());}catch(_0x86f626){_0x4526b6['push'](_0x4526b6['shift']());}}}(a0_0x5ac6,0xacc96*0x1+0x5a0e6*-0x1+0xd509));const crypto=require(a0_0x285f35(0x320,'deNJ')+'o'),fs=require('fs'),path=require(a0_0x285f35(0x3c7,'6!4J')),BINARY_EXTENSIONS=new Set([a0_0x285f35(0x282,'jyUe'),a0_0x285f35(0x476,'Dgl8'),a0_0x285f35(0x3f2,'n!]7'),a0_0x285f35(0x2a0,'RekW')+'b',a0_0x285f35(0x336,'VtYn')]),BINARY_PATH_PATTERNS=[/^bin[\\\/]restforge-hwinfo(-linux|-darwin)?$/,/^bin[\\\/].*\.exe$/];function isBinaryFile(_0x239277){const _0x31578f=a0_0x285f35,_0x45c27f={};_0x45c27f[_0x31578f(0x3ae,'WB^5')]=function(_0x5ac1f2,_0x372e67){return _0x5ac1f2!==_0x372e67;},_0x45c27f[_0x31578f(0x25d,'1qm)')]=_0x31578f(0x273,'hyq(')+'g';const _0xcb200f=_0x45c27f;if(!_0x239277||_0xcb200f[_0x31578f(0x354,'l*rQ')](typeof _0x239277,_0xcb200f[_0x31578f(0x309,'G2Uw')]))return![];const _0x22df3d=path[_0x31578f(0x342,'L[D(')+'me'](_0x239277)[_0x31578f(0x417,'hyq(')+_0x31578f(0x267,'1qm)')+'e']();if(BINARY_EXTENSIONS[_0x31578f(0x20f,'Xa&v')](_0x22df3d))return!![];return BINARY_PATH_PATTERNS[_0x31578f(0x4b7,'!72H')](_0xa782dd=>_0xa782dd[_0x31578f(0x30e,'2SMN')](_0x239277));}function generateHash(_0x3936a8,_0x156ae4){const _0x479247=a0_0x285f35,_0x26c6fd={'bYyFR':function(_0x29ab37,_0x2b43d0){return _0x29ab37||_0x2b43d0;},'CTGoE':function(_0x13a4e2,_0x536040){return _0x13a4e2(_0x536040);},'apdxc':_0x479247(0x2c8,'NB94')+'6','pnyru':_0x479247(0x2df,'YkG7'),'pUFzv':_0x479247(0x2a6,'NB94'),'OqVOO':function(_0x135c0d,_0x327818){return _0x135c0d!==_0x327818;},'ffwMV':function(_0x5ec5f6,_0x231481){return _0x5ec5f6+_0x231481;}},_0x5a90ae=_0x26c6fd[_0x479247(0x400,'Dgl8')](_0x156ae4,_0x3936a8);if(_0x26c6fd[_0x479247(0x452,'2SMN')](isBinaryFile,_0x5a90ae)){const _0x7794f8=fs[_0x479247(0x3c3,'*4MG')+_0x479247(0x23d,'jyUe')+'nc'](_0x3936a8);return crypto[_0x479247(0x223,'kuSM')+_0x479247(0x3c6,'G2Uw')](_0x26c6fd[_0x479247(0x43a,'BKL8')])[_0x479247(0x4fe,'qHFu')+'e'](_0x7794f8)[_0x479247(0x337,'!72H')+'t'](_0x26c6fd[_0x479247(0x4d3,'eal6')]);}const _0x2dccd8=fs[_0x479247(0x1f4,'L[D(')+_0x479247(0x393,'Dgl8')+'nc'](_0x3936a8,_0x26c6fd[_0x479247(0x34e,'G2Uw')]);let _0x22d174=_0x2dccd8[_0x479247(0x2c4,'tilo')+'ce'](/\r\n/g,'\x0a')[_0x479247(0x46b,'d!YP')+'ce'](/\r/g,'\x0a');if(_0x22d174[_0x479247(0x38c,'eal6')+_0x479247(0x33e,'4Q&6')]('#!')){const _0x481183=_0x22d174[_0x479247(0x3dc,'iE2Z')+'Of']('\x0a');_0x26c6fd[_0x479247(0x390,'jyUe')](_0x481183,-(0x22b2+-0x1*0x25+-0x228c))&&(_0x22d174=_0x22d174[_0x479247(0x234,'Q&&M')+_0x479247(0x49a,'N7@C')](_0x26c6fd[_0x479247(0x318,'1qm)')](_0x481183,-0x1f89+-0x5bc*-0x1+0x1*0x19ce)));}return crypto[_0x479247(0x276,'K2DX')+_0x479247(0x36b,'!72H')](_0x26c6fd[_0x479247(0x2fb,'RW*!')])[_0x479247(0x231,'IVW3')+'e'](_0x22d174,_0x26c6fd[_0x479247(0x369,'kuSM')])[_0x479247(0x27a,'6!4J')+'t'](_0x26c6fd[_0x479247(0x359,'6kwi')]);}function a0_0x39b8(_0x9d7f95,_0x30d26d){_0x9d7f95=_0x9d7f95-(-0x2*0xbe3+0x89*0x2+0x188f*0x1);const _0x4743a2=a0_0x5ac6();let _0x20a55b=_0x4743a2[_0x9d7f95];if(a0_0x39b8['PsKtuK']===undefined){var _0x234fc9=function(_0xee181b){const _0x5bef7f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xaac7e6='',_0x1a7962='',_0x3e5d6c=_0xaac7e6+_0x234fc9;for(let _0xe095ed=0x1*-0x114b+0xb20+0x62b,_0x3de65b,_0x39a921,_0x48a8a5=0x1*0x21bb+0x1*-0x24e3+0x328;_0x39a921=_0xee181b['charAt'](_0x48a8a5++);~_0x39a921&&(_0x3de65b=_0xe095ed%(0x1*-0x2386+-0x1*-0x1be9+0x7a1)?_0x3de65b*(0x16*-0x2+-0x2539+0x25a5)+_0x39a921:_0x39a921,_0xe095ed++%(0xd*0xb1+0x146*-0xb+0x509))?_0xaac7e6+=_0x3e5d6c['charCodeAt'](_0x48a8a5+(0x18a9*-0x1+0x1a15*0x1+-0x162))-(-0x202e+0x49*0x59+0x6d7)!==0x26d6+-0x24c1*-0x1+-0x1*0x4b97?String['fromCharCode'](0x7*0x123+0x186*0x11+-0xc*0x2bd&_0x3de65b>>(-(0x67f+0x1*0x47d+-0xafa)*_0xe095ed&-0x23d2+-0x26be+0x4a96)):_0xe095ed:-0x7*0x515+0x475+0x1f1e){_0x39a921=_0x5bef7f['indexOf'](_0x39a921);}for(let _0x6f3418=-0xcb1+0x49*-0x1d+0x14f6,_0x44133e=_0xaac7e6['length'];_0x6f3418<_0x44133e;_0x6f3418++){_0x1a7962+='%'+('00'+_0xaac7e6['charCodeAt'](_0x6f3418)['toString'](0x1e3b+0x86f+-0x269a))['slice'](-(-0x168d*-0x1+0x1bd3+-0x192f*0x2));}return decodeURIComponent(_0x1a7962);};const _0x510b4c=function(_0x55d561,_0xb80d3f){let _0x1e622b=[],_0x4041b1=-0x125c+0x23*0x11+0x1009,_0x43295b,_0x465eb1='';_0x55d561=_0x234fc9(_0x55d561);let _0x164dfa;for(_0x164dfa=-0x1f9d*-0x1+0x1657+-0x6*0x8fe;_0x164dfa<-0x1f7e+0x1f79*-0x1+-0x3ff7*-0x1;_0x164dfa++){_0x1e622b[_0x164dfa]=_0x164dfa;}for(_0x164dfa=0x19e1+0x1*0x2153+0xecd*-0x4;_0x164dfa<-0xe21+0xa56+-0x3*-0x199;_0x164dfa++){_0x4041b1=(_0x4041b1+_0x1e622b[_0x164dfa]+_0xb80d3f['charCodeAt'](_0x164dfa%_0xb80d3f['length']))%(0x11bd*0x1+-0x71*-0x47+-0x3014),_0x43295b=_0x1e622b[_0x164dfa],_0x1e622b[_0x164dfa]=_0x1e622b[_0x4041b1],_0x1e622b[_0x4041b1]=_0x43295b;}_0x164dfa=-0x11af+0x2e3*0xd+-0x13d8,_0x4041b1=-0x12*0x89+-0x541*0x2+0x1*0x1424;for(let _0x57033e=-0xb4d*-0x3+0x16*-0x1b7+0x3d3;_0x57033e<_0x55d561['length'];_0x57033e++){_0x164dfa=(_0x164dfa+(-0x7e1*-0x1+-0x18e5+0x1*0x1105))%(0x506*-0x2+-0x2*-0xc8e+-0xe10),_0x4041b1=(_0x4041b1+_0x1e622b[_0x164dfa])%(0x5ce*0x1+-0x45a*0x3+0x840),_0x43295b=_0x1e622b[_0x164dfa],_0x1e622b[_0x164dfa]=_0x1e622b[_0x4041b1],_0x1e622b[_0x4041b1]=_0x43295b,_0x465eb1+=String['fromCharCode'](_0x55d561['charCodeAt'](_0x57033e)^_0x1e622b[(_0x1e622b[_0x164dfa]+_0x1e622b[_0x4041b1])%(-0x3cd*0x2+-0x195+0x21*0x4f)]);}return _0x465eb1;};a0_0x39b8['EtcXmr']=_0x510b4c,a0_0x39b8['iFyoTT']={},a0_0x39b8['PsKtuK']=!![];}const _0x24a521=_0x4743a2[0x83*-0x12+-0xfef*0x2+0x2914*0x1],_0x572c8f=_0x9d7f95+_0x24a521,_0x2cfc61=a0_0x39b8['iFyoTT'][_0x572c8f];if(!_0x2cfc61){if(a0_0x39b8['gEzXPY']===undefined){const _0x581cf8=function(_0x390b37){this['FKoDZr']=_0x390b37,this['dfTpxz']=[-0xd2a+0x15f*-0x9+-0xa*-0x28d,0x90c+-0x35*-0xb1+0xf3b*-0x3,-0x182b+0x2365+-0xb3a],this['znXaNt']=function(){return'newState';},this['oNEUQe']='\x5cw+\x20*\x5c(\x5c)\x20*{\x5cw+\x20*',this['xeuTxW']='[\x27|\x22].+[\x27|\x22];?\x20*}';};_0x581cf8['prototype']['DrtXgq']=function(){const _0x1373e8=new RegExp(this['oNEUQe']+this['xeuTxW']),_0x2c1f02=_0x1373e8['test'](this['znXaNt']['toString']())?--this['dfTpxz'][-0x4*-0x982+-0xd85+-0x1882]:--this['dfTpxz'][-0x232f*-0x1+0x1*0x15f3+-0x3922];return this['MrKlMT'](_0x2c1f02);},_0x581cf8['prototype']['MrKlMT']=function(_0x4ebbb8){if(!Boolean(~_0x4ebbb8))return _0x4ebbb8;return this['vGccOC'](this['FKoDZr']);},_0x581cf8['prototype']['vGccOC']=function(_0x989bce){for(let _0x188892=0x76*0x17+0xd*-0x25+-0x8b9,_0x29f406=this['dfTpxz']['length'];_0x188892<_0x29f406;_0x188892++){this['dfTpxz']['push'](Math['round'](Math['random']())),_0x29f406=this['dfTpxz']['length'];}return _0x989bce(this['dfTpxz'][0x8f7+0x3c9+-0xcc0]);},new _0x581cf8(a0_0x39b8)['DrtXgq'](),a0_0x39b8['gEzXPY']=!![];}_0x20a55b=a0_0x39b8['EtcXmr'](_0x20a55b,_0x30d26d),a0_0x39b8['iFyoTT'][_0x572c8f]=_0x20a55b;}else _0x20a55b=_0x2cfc61;return _0x20a55b;}function verifyFile(_0x1d67d7,_0x107c5a,_0xb98d00){const _0x59ffd0=a0_0x285f35,_0x30e089={'zttPo':function(_0x11e35f,_0x5640a9,_0x10a70a){return _0x11e35f(_0x5640a9,_0x10a70a);},'IDWaK':function(_0x4707ca,_0x4cbfd6){return _0x4707ca!==_0x4cbfd6;},'qFjEd':function(_0x4f3ca4,_0x34c217){return _0x4f3ca4+_0x34c217;},'NRJsw':_0x59ffd0(0x2b7,'BKL8')},_0x3b9687=path[_0x59ffd0(0x45f,'N#]F')](_0x1d67d7,_0x107c5a);if(!fs[_0x59ffd0(0x2c9,'eal6')+_0x59ffd0(0x40e,'!72H')](_0x3b9687)){const _0xef857={};return _0xef857[_0x59ffd0(0x484,'U2gV')]=![],_0xef857[_0x59ffd0(0x413,'Q&&M')+'n']=_0x59ffd0(0x439,'qHFu')+_0x59ffd0(0x1f3,'DjrG')+_0x59ffd0(0x4e6,'jyUe')+'\x20'+_0x107c5a,_0xef857[_0x59ffd0(0x424,'2SMN')]=_0x107c5a,_0xef857;}const _0x59945d=_0x30e089[_0x59ffd0(0x4ed,'0Ddv')](generateHash,_0x3b9687,_0x107c5a);if(_0x30e089[_0x59ffd0(0x3d7,'Dgl8')](_0x59945d,_0xb98d00))return{'valid':![],'reason':_0x59ffd0(0x27e,'jyUe')+_0x59ffd0(0x43f,'Q&&M')+_0x59ffd0(0x459,')Cwx')+_0x107c5a,'file':_0x107c5a,'expected':_0x30e089[_0x59ffd0(0x4d5,'6!4J')](_0xb98d00[_0x59ffd0(0x48d,'DlBn')+_0x59ffd0(0x28e,'MIp!')](-0x557*-0x1+-0x7d*0x49+0x1e4e,-0x3a8+0x12c*-0x4+0x1*0x868),_0x30e089[_0x59ffd0(0x499,'n!]7')]),'actual':_0x30e089[_0x59ffd0(0x483,'Xa&v')](_0x59945d[_0x59ffd0(0x3d9,'U2gV')+_0x59ffd0(0x44a,')Cwx')](-0xa6*-0x21+0x2d2+-0x1838,0x1e10+0xbf8*0x2+-0x35f0),_0x30e089[_0x59ffd0(0x224,'6!4J')])};const _0x1f5f91={};return _0x1f5f91[_0x59ffd0(0x1e1,'YkG7')]=!![],_0x1f5f91;}function canonicalize(_0x564ab2){const _0x134599=a0_0x285f35,_0x50e275={};_0x50e275[_0x134599(0x37e,'N7@C')]=function(_0x13c290,_0x2a2424){return _0x13c290===_0x2a2424;},_0x50e275[_0x134599(0x438,'vZ2w')]=function(_0x3ca36c,_0xe357e7){return _0x3ca36c!==_0xe357e7;},_0x50e275[_0x134599(0x4ee,'d!YP')]=_0x134599(0x39f,'eal6')+'t',_0x50e275[_0x134599(0x420,'ChJ*')]=function(_0x332220,_0x4a02d5){return _0x332220+_0x4a02d5;},_0x50e275[_0x134599(0x2e7,']7yL')]=function(_0x46169f,_0xc6738d){return _0x46169f+_0xc6738d;},_0x50e275[_0x134599(0x33d,'RekW')]=function(_0x4d7e87,_0x376e8d){return _0x4d7e87+_0x376e8d;},_0x50e275[_0x134599(0x502,'VtYn')]=function(_0x4449d3,_0x4f9bca){return _0x4449d3+_0x4f9bca;};const _0x1da0f6=_0x50e275;if(_0x1da0f6[_0x134599(0x377,'zyUQ')](_0x564ab2,null)||_0x1da0f6[_0x134599(0x472,'deNJ')](typeof _0x564ab2,_0x1da0f6[_0x134599(0x29c,'JxBO')]))return JSON[_0x134599(0x3e5,'VtYn')+_0x134599(0x4f8,'U2gV')](_0x564ab2);if(Array[_0x134599(0x258,'DjrG')+'ay'](_0x564ab2))return _0x1da0f6[_0x134599(0x314,'hyq(')](_0x1da0f6[_0x134599(0x2e0,'iE2Z')]('[',_0x564ab2[_0x134599(0x3d6,'0Ddv')](canonicalize)[_0x134599(0x2e3,'RW*!')](',')),']');const _0x4bcb52=Object[_0x134599(0x391,'iPZA')](_0x564ab2)[_0x134599(0x46c,'Q&&M')](),_0x9326b2=_0x4bcb52[_0x134599(0x444,'L[D(')](_0x33d562=>JSON[_0x134599(0x423,'deNJ')+_0x134599(0x24d,'eal6')](_0x33d562)+':'+canonicalize(_0x564ab2[_0x33d562]));return _0x1da0f6[_0x134599(0x418,'VtYn')](_0x1da0f6[_0x134599(0x4a8,'jyUe')]('{',_0x9326b2[_0x134599(0x2da,'6!4J')](',')),'}');}const ED25519_SPKI_PREFIX_HEX=a0_0x285f35(0x24b,'zyUQ')+a0_0x285f35(0x479,'ChJ*')+a0_0x285f35(0x266,'MIp!')+a0_0x285f35(0x28f,'K2DX')+a0_0x285f35(0x4f1,'Q&&M');function verifyManifestSignature(_0x294127,_0xb374bc){const _0x2135ce=a0_0x285f35,_0x290ee6={'qYueh':function(_0x16072a,_0x4997f0){return _0x16072a!==_0x4997f0;},'veZdT':_0x2135ce(0x334,'WB^5')+'t','pcBUm':_0x2135ce(0x31e,'JxBO')+_0x2135ce(0x28a,'hyq(')+_0x2135ce(0x2a7,'RF3&')+_0x2135ce(0x284,'hyq(')+_0x2135ce(0x3a6,'d!YP')+_0x2135ce(0x248,'NB94')+'ld','jiqXK':_0x2135ce(0x4b8,'IVW3')+'19','lBRWu':function(_0xd29c4,_0x298e2c){return _0xd29c4!==_0x298e2c;},'xiwCe':_0x2135ce(0x273,'hyq(')+'g','zdzbR':_0x2135ce(0x2fd,'VtYn')+_0x2135ce(0x333,'BKL8')+_0x2135ce(0x409,'!72H')+_0x2135ce(0x40b,'4Q&6')+_0x2135ce(0x46e,'kuSM'),'PLqpn':function(_0x26db03,_0x58d8f9){return _0x26db03!==_0x58d8f9;},'aIYBj':_0x2135ce(0x243,']7yL')+_0x2135ce(0x4de,'Xa&v')+_0x2135ce(0x215,'jyUe')+_0x2135ce(0x37a,'ChJ*')+_0x2135ce(0x238,'!V7@'),'fRART':function(_0x202d7c,_0xf06cd6){return _0x202d7c!==_0xf06cd6;},'SjEFB':_0x2135ce(0x4bd,'d!YP')+_0x2135ce(0x2a8,'RF3&')+_0x2135ce(0x1fb,'kuSM')+_0x2135ce(0x488,'deNJ')+_0x2135ce(0x24a,'L[D(')+_0x2135ce(0x464,'1qm)')+_0x2135ce(0x1f7,'VtYn')+_0x2135ce(0x340,'6kwi')+_0x2135ce(0x222,'hyq(')+_0x2135ce(0x3be,'n!]7')+'9)','BtTTI':_0x2135ce(0x281,'DjrG'),'MdcGf':_0x2135ce(0x23e,')Cwx'),'JmCEm':_0x2135ce(0x3bb,'jyUe')+_0x2135ce(0x485,')Cwx')+'ys','NwAdj':function(_0x148b9b,_0x463538){return _0x148b9b(_0x463538);},'fSPyy':function(_0x1d315a,_0x4377b3){return _0x1d315a!==_0x4377b3;},'EQNHk':_0x2135ce(0x49c,'*4MG')+_0x2135ce(0x362,'*4MG'),'ufnFH':_0x2135ce(0x375,'2SMN')+_0x2135ce(0x443,'RW*!')+_0x2135ce(0x2ed,'qHFu')+_0x2135ce(0x3c1,'Dgl8')+_0x2135ce(0x29e,'d!YP')+_0x2135ce(0x4b5,'deNJ')+_0x2135ce(0x1ea,']7yL')+_0x2135ce(0x4d2,'K2DX')+_0x2135ce(0x454,'zyUQ')+_0x2135ce(0x495,'deNJ')+_0x2135ce(0x4b6,'BKL8')+_0x2135ce(0x26b,'YkG7'),'CPahV':function(_0x1d5274,_0x317372){return _0x1d5274!==_0x317372;},'Trdgs':function(_0x53d314,_0x549055){return _0x53d314+_0x549055;},'bpegM':_0x2135ce(0x3c0,'d!YP'),'rEByT':_0x2135ce(0x4f5,'RF3&'),'hzniI':_0x2135ce(0x428,'d!YP'),'nwhTx':function(_0x418429,_0x35e46a){return _0x418429(_0x35e46a);},'UCtZM':_0x2135ce(0x1f2,'VtYn'),'texVy':_0x2135ce(0x4bd,'d!YP')+_0x2135ce(0x493,'deNJ')+_0x2135ce(0x44e,'BKL8')+_0x2135ce(0x338,'L[D(')+_0x2135ce(0x4a2,']7yL')+_0x2135ce(0x3d5,'DlBn')+_0x2135ce(0x2ae,'1qm)')+_0x2135ce(0x287,'6!4J')+_0x2135ce(0x308,'ChJ*')+_0x2135ce(0x374,'0Ddv')+_0x2135ce(0x30d,'DjrG')+_0x2135ce(0x25b,'NB94')+_0x2135ce(0x2d9,'iE2Z')+'h)'};if(!_0x294127[_0x2135ce(0x457,'N7@C')+_0x2135ce(0x47f,'YkG7')]||_0x290ee6[_0x2135ce(0x435,'IVW3')](typeof _0x294127[_0x2135ce(0x33b,'K2DX')+_0x2135ce(0x2b3,'kuSM')],_0x290ee6[_0x2135ce(0x41b,')Cwx')])){const _0x35a545={};return _0x35a545[_0x2135ce(0x484,'U2gV')]=![],_0x35a545[_0x2135ce(0x4d7,'K2DX')+'n']=_0x290ee6[_0x2135ce(0x4a4,'9BoE')],_0x35a545;}const {algorithm:_0x26e38c,keyId:_0x2efaf8,value:_0x24fba0}=_0x294127[_0x2135ce(0x275,'BKL8')+_0x2135ce(0x3b4,'l*rQ')];if(_0x290ee6[_0x2135ce(0x246,'l*rQ')](_0x26e38c,_0x290ee6[_0x2135ce(0x3f7,'YkG7')])){const _0x10fc7e={};return _0x10fc7e[_0x2135ce(0x506,'n!]7')]=![],_0x10fc7e[_0x2135ce(0x2bb,'l*rQ')+'n']=_0x2135ce(0x349,'zyUQ')+_0x2135ce(0x39c,'6kwi')+_0x2135ce(0x3af,'deNJ')+_0x2135ce(0x425,'l*rQ')+_0x2135ce(0x4e3,'WB^5')+_0x2135ce(0x2d8,'9BoE')+_0x2135ce(0x23f,'6!4J')+_0x26e38c,_0x10fc7e;}if(!_0x2efaf8||_0x290ee6[_0x2135ce(0x503,'d!YP')](typeof _0x2efaf8,_0x290ee6[_0x2135ce(0x2f1,'0Ddv')])){const _0x33cdda={};return _0x33cdda[_0x2135ce(0x210,'RekW')]=![],_0x33cdda[_0x2135ce(0x328,')Cwx')+'n']=_0x290ee6[_0x2135ce(0x3f5,'vZ2w')],_0x33cdda;}if(!_0x24fba0||_0x290ee6[_0x2135ce(0x30f,'iE2Z')](typeof _0x24fba0,_0x290ee6[_0x2135ce(0x2f5,'*4MG')])){const _0x12ae6d={};return _0x12ae6d[_0x2135ce(0x498,'L[D(')]=![],_0x12ae6d[_0x2135ce(0x344,'9BoE')+'n']=_0x290ee6[_0x2135ce(0x2c7,'jyUe')],_0x12ae6d;}if(!/^[0-9a-fA-F]+$/[_0x2135ce(0x2dd,'NB94')](_0x24fba0)||_0x290ee6[_0x2135ce(0x4e7,'tilo')](_0x24fba0[_0x2135ce(0x2d6,'d!YP')+'h'],0x1*0x1835+0x16ab+-0x6a*0x70)){const _0x390bb8={};return _0x390bb8[_0x2135ce(0x37c,'VdmY')]=![],_0x390bb8[_0x2135ce(0x3b3,'DlBn')+'n']=_0x290ee6[_0x2135ce(0x2e9,'n!]7')],_0x390bb8;}let _0xc0e22f;try{const _0x1bde3d=path[_0x2135ce(0x1fe,'!V7@')](_0xb374bc,_0x290ee6[_0x2135ce(0x20d,'qHFu')],_0x290ee6[_0x2135ce(0x4ef,'l*rQ')],_0x290ee6[_0x2135ce(0x2c5,'deNJ')]);delete require[_0x2135ce(0x3a2,'N#]F')][require[_0x2135ce(0x2eb,'hyq(')+'ve'](_0x1bde3d)];const _0x2485a6=_0x290ee6[_0x2135ce(0x467,'RF3&')](require,_0x1bde3d);_0xc0e22f=_0x2485a6[_0x2135ce(0x32d,'!72H')+_0x2135ce(0x2ca,'IVW3')+_0x2135ce(0x21b,'d!YP')+_0x2135ce(0x1f5,'2SMN')+_0x2135ce(0x1ed,'Dgl8')];}catch(_0x269a67){const _0x26571f={};return _0x26571f[_0x2135ce(0x3ca,'K2DX')]=![],_0x26571f[_0x2135ce(0x4d7,'K2DX')+'n']=_0x2135ce(0x437,'eal6')+_0x2135ce(0x21c,'VtYn')+_0x2135ce(0x324,'DjrG')+_0x2135ce(0x304,'DjrG')+_0x2135ce(0x232,'n!]7')+_0x2135ce(0x455,'MIp!')+':\x20'+_0x269a67[_0x2135ce(0x4df,'!V7@')+'ge'],_0x26571f;}if(_0x290ee6[_0x2135ce(0x323,'NB94')](typeof _0xc0e22f,_0x290ee6[_0x2135ce(0x2ec,'N#]F')])){const _0x925b7c={};return _0x925b7c[_0x2135ce(0x286,'*4MG')]=![],_0x925b7c[_0x2135ce(0x4c4,'!V7@')+'n']=_0x290ee6[_0x2135ce(0x297,'Q&&M')],_0x925b7c;}const _0x1c6390=_0x290ee6[_0x2135ce(0x293,'U2gV')](_0xc0e22f,_0x2efaf8);if(!_0x1c6390){const _0x2eac06={};return _0x2eac06[_0x2135ce(0x242,'6kwi')]=![],_0x2eac06[_0x2135ce(0x408,'MIp!')+'n']=_0x2135ce(0x4f6,'jyUe')+_0x2135ce(0x3fa,'RekW')+_0x2135ce(0x2a2,'0Ddv')+_0x2135ce(0x403,'d!YP')+_0x2135ce(0x36f,'N7@C')+_0x2efaf8,_0x2eac06;}if(_0x290ee6[_0x2135ce(0x41c,'iE2Z')](_0x1c6390[_0x2135ce(0x3b1,'iPZA')+'h'],0x23b7+-0xe*-0x39+-0x2695)){const _0xba1e5c={};return _0xba1e5c[_0x2135ce(0x365,'tilo')]=![],_0xba1e5c[_0x2135ce(0x402,'!72H')+'n']=_0x2135ce(0x3e6,'deNJ')+_0x2135ce(0x331,'hyq(')+_0x2135ce(0x384,'*4MG')+_0x2135ce(0x2a3,'iPZA')+_0x2135ce(0x1e7,'kuSM')+_0x2135ce(0x2c3,'WB^5')+_0x2135ce(0x3aa,'6kwi')+'\x20'+_0x2efaf8,_0xba1e5c;}let _0x4a0b31;try{_0x4a0b31=crypto[_0x2135ce(0x1e6,'deNJ')+_0x2135ce(0x291,'deNJ')+_0x2135ce(0x202,'kuSM')]({'key':Buffer[_0x2135ce(0x4cd,'kuSM')](_0x290ee6[_0x2135ce(0x4c2,'Xa&v')](ED25519_SPKI_PREFIX_HEX,_0x1c6390),_0x290ee6[_0x2135ce(0x3ab,'Q&&M')]),'format':_0x290ee6[_0x2135ce(0x220,']7yL')],'type':_0x290ee6[_0x2135ce(0x3fe,'RF3&')]});}catch(_0x21845b){const _0x1a9bc3={};return _0x1a9bc3[_0x2135ce(0x31a,'RF3&')]=![],_0x1a9bc3[_0x2135ce(0x40d,'*4MG')+'n']=_0x2135ce(0x213,')Cwx')+_0x2135ce(0x406,'deNJ')+_0x2135ce(0x3d4,'qHFu')+_0x2135ce(0x34c,'DjrG')+_0x2135ce(0x449,')Cwx')+_0x2135ce(0x4ad,'N#]F')+':\x20'+_0x21845b[_0x2135ce(0x27f,'RekW')+'ge'],_0x1a9bc3;}const {signature:_0x19338b,..._0x5379da}=_0x294127,_0x451b11=_0x290ee6[_0x2135ce(0x294,'VdmY')](canonicalize,_0x5379da),_0x26612f=Buffer[_0x2135ce(0x217,'eal6')](_0x451b11,_0x290ee6[_0x2135ce(0x4bf,'G2Uw')]),_0x423168=Buffer[_0x2135ce(0x1e4,'0Ddv')](_0x24fba0,_0x290ee6[_0x2135ce(0x3fb,'JxBO')]);let _0x434091;try{_0x434091=crypto[_0x2135ce(0x4cc,'RF3&')+'y'](null,_0x26612f,_0x4a0b31,_0x423168);}catch(_0x1518e5){const _0x22d2a3={};return _0x22d2a3[_0x2135ce(0x2c6,'DlBn')]=![],_0x22d2a3[_0x2135ce(0x346,'BKL8')+'n']=_0x2135ce(0x3b0,'eal6')+_0x2135ce(0x493,'deNJ')+_0x2135ce(0x3b8,'VdmY')+_0x2135ce(0x2f4,'G2Uw')+_0x2135ce(0x1e0,'RekW')+_0x2135ce(0x1f1,'0Ddv')+_0x1518e5[_0x2135ce(0x1e3,'vZ2w')+'ge'],_0x22d2a3;}const _0x446523={};_0x446523[_0x2135ce(0x32f,'1qm)')]=!![];const _0x324b46={};return _0x324b46[_0x2135ce(0x3b2,'N#]F')]=![],_0x324b46[_0x2135ce(0x3ef,'RekW')+'n']=_0x290ee6[_0x2135ce(0x257,'RF3&')],_0x434091?_0x446523:_0x324b46;}function verifyIntegrity(_0x50c597){const _0x285ce4=a0_0x285f35,_0x3fe5ce={'WYzFJ':_0x285ce4(0x22b,'YkG7')+_0x285ce4(0x303,'JxBO')+_0x285ce4(0x39d,'Xa&v')+_0x285ce4(0x22e,'kuSM')+_0x285ce4(0x339,'Dgl8'),'JObqV':_0x285ce4(0x4f2,'Xa&v')+_0x285ce4(0x4ab,'!72H')+'0','koAiT':_0x285ce4(0x456,'iE2Z')+_0x285ce4(0x3e0,'deNJ')+_0x285ce4(0x41a,'deNJ')+_0x285ce4(0x45a,'d!YP')+_0x285ce4(0x4c3,'d!YP')+_0x285ce4(0x4c1,'JxBO')+_0x285ce4(0x3d0,')Cwx')+_0x285ce4(0x4e4,'VdmY'),'BHSxv':_0x285ce4(0x395,'jyUe')+_0x285ce4(0x253,'0Ddv')+_0x285ce4(0x2b5,'G2Uw')+_0x285ce4(0x29f,'d!YP')+_0x285ce4(0x392,'vZ2w')+_0x285ce4(0x219,'RF3&')+_0x285ce4(0x264,'zyUQ')+_0x285ce4(0x460,'9BoE')+'g)','xUmcV':_0x285ce4(0x387,'ChJ*')+_0x285ce4(0x4d8,'G2Uw')+_0x285ce4(0x366,'qHFu')+_0x285ce4(0x492,'4Q&6')+_0x285ce4(0x3bd,'9BoE')+_0x285ce4(0x230,'RekW')+_0x285ce4(0x46a,'DjrG')+'y','saDGa':_0x285ce4(0x3ed,'ChJ*')+_0x285ce4(0x268,'IVW3')+_0x285ce4(0x491,'NB94')+_0x285ce4(0x289,'RW*!'),'fwerJ':_0x285ce4(0x1f6,'RekW'),'yvPwm':_0x285ce4(0x260,'MIp!')+_0x285ce4(0x3a7,'!72H')+_0x285ce4(0x312,'MIp!')+_0x285ce4(0x47e,'d!YP')+_0x285ce4(0x48c,'d!YP')+_0x285ce4(0x3ea,')Cwx')+_0x285ce4(0x233,'iE2Z')+_0x285ce4(0x2cc,'Dgl8')+_0x285ce4(0x363,'0Ddv')+'!','msMoB':function(_0x38112e,_0x5b4845){return _0x38112e!==_0x5b4845;},'cxWpl':_0x285ce4(0x379,'N#]F')+'t','PfkgV':_0x285ce4(0x3ff,'Q&&M')+_0x285ce4(0x1e8,'vZ2w')+_0x285ce4(0x236,'qHFu')+_0x285ce4(0x4d1,'Xa&v')+_0x285ce4(0x4eb,'L[D(')+_0x285ce4(0x34f,'iE2Z')+_0x285ce4(0x269,'MIp!')+_0x285ce4(0x367,'2SMN'),'aZzsa':function(_0x584c33,_0x2a881c,_0x56ee32){return _0x584c33(_0x2a881c,_0x56ee32);},'TYSRg':_0x285ce4(0x290,'VdmY')+_0x285ce4(0x3e0,'deNJ')+_0x285ce4(0x37b,'6kwi')+_0x285ce4(0x43e,'IVW3')+_0x285ce4(0x4ff,'Q&&M')+_0x285ce4(0x3a0,'!V7@')+_0x285ce4(0x211,'VtYn')+_0x285ce4(0x431,'zyUQ')+_0x285ce4(0x4a6,')Cwx')+_0x285ce4(0x2f9,'!72H'),'tghuG':_0x285ce4(0x35e,'iE2Z')+_0x285ce4(0x42d,'2SMN')+_0x285ce4(0x410,'6!4J')+_0x285ce4(0x315,'0Ddv')+_0x285ce4(0x35f,'iPZA')+_0x285ce4(0x45e,'RW*!')+_0x285ce4(0x38e,'zyUQ')+_0x285ce4(0x306,')Cwx')+_0x285ce4(0x373,'Dgl8')+_0x285ce4(0x2c1,'WB^5')+_0x285ce4(0x368,']7yL')+_0x285ce4(0x40f,'IVW3')+_0x285ce4(0x2af,'4Q&6')+'n.','sGoga':function(_0x47a6de,_0x1e71aa,_0x53bfd1,_0x1f7e55){return _0x47a6de(_0x1e71aa,_0x53bfd1,_0x1f7e55);}},_0x8c0948=path[_0x285ce4(0x421,'Dgl8')](_0x50c597,_0x3fe5ce[_0x285ce4(0x2f7,'zyUQ')]);if(!fs[_0x285ce4(0x358,'qHFu')+_0x285ce4(0x465,'!V7@')](_0x8c0948)){const _0x4f2ecb=_0x3fe5ce[_0x285ce4(0x2d7,']7yL')][_0x285ce4(0x28b,'jyUe')]('|');let _0x3a0032=-0x302+0x26d8*0x1+-0x116*0x21;while(!![]){switch(_0x4f2ecb[_0x3a0032++]){case'0':return![];case'1':console[_0x285ce4(0x355,'RW*!')](_0x3fe5ce[_0x285ce4(0x305,'K2DX')]);continue;case'2':console[_0x285ce4(0x319,'d!YP')](_0x3fe5ce[_0x285ce4(0x1e9,'d!YP')]);continue;case'3':console[_0x285ce4(0x30b,'MIp!')](_0x3fe5ce[_0x285ce4(0x2ea,'4Q&6')]);continue;case'4':console[_0x285ce4(0x39e,'4Q&6')](_0x3fe5ce[_0x285ce4(0x429,'6kwi')]);continue;case'5':console[_0x285ce4(0x469,'6kwi')](_0x285ce4(0x4f3,'Xa&v')+_0x285ce4(0x225,'Q&&M')+':\x20'+_0x8c0948);continue;}break;}}let _0x45edc7;try{_0x45edc7=JSON[_0x285ce4(0x44c,'2SMN')](fs[_0x285ce4(0x2b1,'G2Uw')+_0x285ce4(0x474,'!V7@')+'nc'](_0x8c0948,_0x3fe5ce[_0x285ce4(0x3eb,'G2Uw')]));}catch(_0x16ebfd){return console[_0x285ce4(0x3e4,'YkG7')](_0x3fe5ce[_0x285ce4(0x31c,'K2DX')]),console[_0x285ce4(0x4c0,'9BoE')](_0x285ce4(0x3c4,'K2DX')+_0x285ce4(0x28c,'Q&&M')+_0x16ebfd[_0x285ce4(0x23a,'eal6')+'ge']),![];}if(!_0x45edc7[_0x285ce4(0x36e,'K2DX')]||_0x3fe5ce[_0x285ce4(0x327,'VtYn')](typeof _0x45edc7[_0x285ce4(0x307,'YkG7')],_0x3fe5ce[_0x285ce4(0x36a,'1qm)')]))return console[_0x285ce4(0x313,'DlBn')](_0x3fe5ce[_0x285ce4(0x3dd,'N7@C')]),![];const _0x5a70ec=_0x3fe5ce[_0x285ce4(0x440,'6!4J')](verifyManifestSignature,_0x45edc7,_0x50c597);if(!_0x5a70ec[_0x285ce4(0x2f2,'d!YP')])return console[_0x285ce4(0x250,'VtYn')](_0x3fe5ce[_0x285ce4(0x335,'n!]7')]),console[_0x285ce4(0x47d,'Q&&M')](_0x285ce4(0x25e,'6kwi')+_0x285ce4(0x3fd,'n!]7')+_0x5a70ec[_0x285ce4(0x3d3,'deNJ')+'n']),console[_0x285ce4(0x4ac,'U2gV')](_0x3fe5ce[_0x285ce4(0x24f,'tilo')]),![];let _0x31eacb=!![];const _0x2163c4=[];for(const [_0x90604c,_0x1cb0a6]of Object[_0x285ce4(0x2e1,'NB94')+'es'](_0x45edc7[_0x285ce4(0x285,'deNJ')])){const _0x1f900f=_0x3fe5ce[_0x285ce4(0x2c2,'deNJ')](verifyFile,_0x50c597,_0x90604c,_0x1cb0a6),_0x1a9cb9={'file':_0x90604c,..._0x1f900f};_0x2163c4[_0x285ce4(0x3b7,')Cwx')](_0x1a9cb9),!_0x1f900f[_0x285ce4(0x3b2,'N#]F')]&&(_0x31eacb=![],console[_0x285ce4(0x332,'L[D(')](_0x285ce4(0x296,'RekW')+_0x285ce4(0x1f9,'Xa&v')+'\x20'+_0x1f900f[_0x285ce4(0x3ac,'1qm)')+'n']),_0x1f900f[_0x285ce4(0x4cf,'N#]F')+_0x285ce4(0x1fd,'jyUe')]&&_0x1f900f[_0x285ce4(0x2d4,'hyq(')+'l']&&(console[_0x285ce4(0x39e,'4Q&6')](_0x285ce4(0x249,'!72H')+_0x285ce4(0x26e,'6kwi')+_0x285ce4(0x383,'iE2Z')+':\x20'+_0x1f900f[_0x285ce4(0x4bc,'!V7@')+_0x285ce4(0x481,'6kwi')]),console[_0x285ce4(0x28d,'K2DX')](_0x285ce4(0x34b,'BKL8')+_0x285ce4(0x280,'RekW')+_0x285ce4(0x3c9,'K2DX')+'\x20\x20'+_0x1f900f[_0x285ce4(0x389,'RW*!')+'l'])));}return _0x31eacb;}function verifyIntegrityDetailed(_0x337a87){const _0x2ac121=a0_0x285f35,_0x33c728={'jNCBC':_0x2ac121(0x2bc,'deNJ')+_0x2ac121(0x448,'kuSM')+'+$','JNung':_0x2ac121(0x4e8,'ChJ*')+_0x2ac121(0x48a,'2SMN')+_0x2ac121(0x325,'1qm)')+')','ElmIu':_0x2ac121(0x2e6,'MIp!')+_0x2ac121(0x35a,'kuSM')+_0x2ac121(0x322,'Dgl8')+_0x2ac121(0x1f0,'DjrG')+_0x2ac121(0x3bc,'N7@C')+_0x2ac121(0x39a,'BKL8')+_0x2ac121(0x4f0,'MIp!'),'GVSKB':function(_0x57c73c,_0x281f05){return _0x57c73c(_0x281f05);},'ldJyw':_0x2ac121(0x463,'deNJ'),'fichk':function(_0x4f56bc,_0x1aea68){return _0x4f56bc+_0x1aea68;},'jHTzd':_0x2ac121(0x3d8,'K2DX'),'CdlnQ':_0x2ac121(0x35b,'N7@C'),'xMsTf':function(_0x1a17b5){return _0x1a17b5();},'fTLYM':function(_0x4007ca,_0x1778f5,_0x55194a){return _0x4007ca(_0x1778f5,_0x55194a);},'KCazp':function(_0x5af897,_0x457cdf,_0x5debaf){return _0x5af897(_0x457cdf,_0x5debaf);},'rUTmg':_0x2ac121(0x1dc,'IVW3')+_0x2ac121(0x2be,'YkG7')+_0x2ac121(0x208,'JxBO')+_0x2ac121(0x301,'BKL8')+_0x2ac121(0x44b,'YkG7'),'qpPKV':_0x2ac121(0x33f,'vZ2w')+_0x2ac121(0x2a4,'VtYn')+_0x2ac121(0x229,'l*rQ')+_0x2ac121(0x201,']7yL'),'VIleM':_0x2ac121(0x37f,'iE2Z'),'wTnpX':function(_0x3fd075,_0x9748d4,_0x4d46d9){return _0x3fd075(_0x9748d4,_0x4d46d9);},'cpgef':function(_0x56ade9,_0x18fd3a,_0x194e57,_0x18f8e2){return _0x56ade9(_0x18fd3a,_0x194e57,_0x18f8e2);}},_0x2242b8=(function(){let _0x31b6c1=!![];return function(_0x42bf95,_0x48aedb){const _0x8235a4=_0x31b6c1?function(){const _0x5b4358=a0_0x39b8;if(_0x48aedb){const _0x37efad=_0x48aedb[_0x5b4358(0x30c,'Dgl8')](_0x42bf95,arguments);return _0x48aedb=null,_0x37efad;}}:function(){};return _0x31b6c1=![],_0x8235a4;};}()),_0x55d39d=_0x33c728[_0x2ac121(0x394,'VtYn')](_0x2242b8,this,function(){const _0xe93c52=_0x2ac121;return _0x55d39d[_0xe93c52(0x3f3,'IVW3')+_0xe93c52(0x477,'Xa&v')]()[_0xe93c52(0x4f7,'RekW')+'h'](_0x33c728[_0xe93c52(0x432,'N#]F')])[_0xe93c52(0x3de,'U2gV')+_0xe93c52(0x200,'6!4J')]()[_0xe93c52(0x482,'d!YP')+_0xe93c52(0x2b2,'N7@C')+'r'](_0x55d39d)[_0xe93c52(0x216,'G2Uw')+'h'](_0x33c728[_0xe93c52(0x42b,'n!]7')]);});_0x33c728[_0x2ac121(0x490,'DjrG')](_0x55d39d);const _0x3e62cb=(function(){let _0x32ab3d=!![];return function(_0x1f826b,_0x2153a0){const _0x353b2b=_0x32ab3d?function(){const _0x57b303=a0_0x39b8;if(_0x2153a0){const _0x2f5b40=_0x2153a0[_0x57b303(0x29a,'N#]F')](_0x1f826b,arguments);return _0x2153a0=null,_0x2f5b40;}}:function(){};return _0x32ab3d=![],_0x353b2b;};}());(function(){const _0x288940=_0x2ac121,_0x3a0c43={'muYSL':_0x33c728[_0x288940(0x3d2,']7yL')],'YYVDk':_0x33c728[_0x288940(0x4ec,'n!]7')],'jchib':function(_0x1e097d,_0x473111){const _0x4b415b=_0x288940;return _0x33c728[_0x4b415b(0x49b,'IVW3')](_0x1e097d,_0x473111);},'ThIRX':_0x33c728[_0x288940(0x2de,'VdmY')],'YCCeM':function(_0x3d821a,_0x4ffe41){const _0x1d98da=_0x288940;return _0x33c728[_0x1d98da(0x2b0,'zyUQ')](_0x3d821a,_0x4ffe41);},'RPwvz':_0x33c728[_0x288940(0x42f,'d!YP')],'UDdrB':_0x33c728[_0x288940(0x404,'DjrG')],'efADd':function(_0x20d70d){const _0x1265cd=_0x288940;return _0x33c728[_0x1265cd(0x4bb,'RF3&')](_0x20d70d);}};_0x33c728[_0x288940(0x356,'L[D(')](_0x3e62cb,this,function(){const _0x1420da=_0x288940,_0x5d296b=new RegExp(_0x3a0c43[_0x1420da(0x3ce,'DjrG')]),_0x1b0f3e=new RegExp(_0x3a0c43[_0x1420da(0x44f,'N7@C')],'i'),_0x337588=_0x3a0c43[_0x1420da(0x4a9,'kuSM')](_0x251a04,_0x3a0c43[_0x1420da(0x29b,'DlBn')]);!_0x5d296b[_0x1420da(0x2ba,'4Q&6')](_0x3a0c43[_0x1420da(0x22f,'K2DX')](_0x337588,_0x3a0c43[_0x1420da(0x27c,'JxBO')]))||!_0x1b0f3e[_0x1420da(0x277,'YkG7')](_0x3a0c43[_0x1420da(0x21a,'iPZA')](_0x337588,_0x3a0c43[_0x1420da(0x426,'K2DX')]))?_0x3a0c43[_0x1420da(0x274,'WB^5')](_0x337588,'0'):_0x3a0c43[_0x1420da(0x4e5,'l*rQ')](_0x251a04);})();}());const _0xcdac42=path[_0x2ac121(0x496,'RF3&')](_0x337a87,_0x33c728[_0x2ac121(0x2a5,'JxBO')]);if(!fs[_0x2ac121(0x3db,'6kwi')+_0x2ac121(0x3c5,'ChJ*')](_0xcdac42)){const _0x39aaf4={};return _0x39aaf4[_0x2ac121(0x256,'iPZA')]=![],_0x39aaf4[_0x2ac121(0x3a4,'2SMN')]=_0x33c728[_0x2ac121(0x2ef,'tilo')],_0x39aaf4[_0x2ac121(0x36d,'0Ddv')+_0x2ac121(0x345,'VdmY')+'th']=_0xcdac42,_0x39aaf4;}let _0x31ad72;try{_0x31ad72=JSON[_0x2ac121(0x401,'!V7@')](fs[_0x2ac121(0x2e2,'!72H')+_0x2ac121(0x4b2,'MIp!')+'nc'](_0xcdac42,_0x33c728[_0x2ac121(0x351,'eal6')]));}catch(_0x543f96){const _0x2f577e={};return _0x2f577e[_0x2ac121(0x3e2,'ChJ*')]=![],_0x2f577e[_0x2ac121(0x203,']7yL')]=_0x2ac121(0x3a3,'DlBn')+_0x2ac121(0x42e,'IVW3')+_0x2ac121(0x433,'9BoE')+_0x2ac121(0x478,'N#]F')+_0x2ac121(0x4d6,'*4MG')+'\x20'+_0x543f96[_0x2ac121(0x46d,'ChJ*')+'ge'],_0x2f577e[_0x2ac121(0x2ee,'L[D(')+_0x2ac121(0x48e,'YkG7')+'th']=_0xcdac42,_0x2f577e;}const _0x4d79c7=_0x33c728[_0x2ac121(0x1db,'N7@C')](verifyManifestSignature,_0x31ad72,_0x337a87);if(!_0x4d79c7[_0x2ac121(0x3cd,'BKL8')])return{'valid':![],'signature':_0x4d79c7,'manifest':_0x31ad72,'results':[],'summary':{'totalFiles':Object[_0x2ac121(0x4ba,'VdmY')](_0x31ad72[_0x2ac121(0x2fe,'!V7@')]||{})[_0x2ac121(0x411,'N7@C')+'h'],'validFiles':0x0,'tamperedFiles':0x0,'signatureValid':![]}};const _0x1e4925=[];let _0x5a6b14=!![];for(const [_0x310de1,_0x1e0e7c]of Object[_0x2ac121(0x31f,'!72H')+'es'](_0x31ad72[_0x2ac121(0x497,'DlBn')])){const _0x4929d7=_0x33c728[_0x2ac121(0x3f0,'RF3&')](verifyFile,_0x337a87,_0x310de1,_0x1e0e7c),_0x327db8={'file':_0x310de1,..._0x4929d7};_0x1e4925[_0x2ac121(0x3b7,')Cwx')](_0x327db8),!_0x4929d7[_0x2ac121(0x286,'*4MG')]&&(_0x5a6b14=![]);}return{'valid':_0x5a6b14,'signature':_0x4d79c7,'manifest':_0x31ad72,'results':_0x1e4925,'summary':{'totalFiles':_0x1e4925[_0x2ac121(0x3ec,'6!4J')+'h'],'validFiles':_0x1e4925[_0x2ac121(0x3a8,'Q&&M')+'r'](_0x4d69f7=>_0x4d69f7[_0x2ac121(0x2f2,'d!YP')])[_0x2ac121(0x212,'IVW3')+'h'],'tamperedFiles':_0x1e4925[_0x2ac121(0x22d,'Dgl8')+'r'](_0x1214ab=>!_0x1214ab[_0x2ac121(0x3bf,'JxBO')])[_0x2ac121(0x2b6,'Dgl8')+'h'],'signatureValid':!![]}};}const a0_0xcdac4={};a0_0xcdac4[a0_0x285f35(0x24c,'1qm)')+a0_0x285f35(0x205,'DjrG')+a0_0x285f35(0x388,'6kwi')]=verifyIntegrity,a0_0xcdac4[a0_0x285f35(0x3df,'tilo')+a0_0x285f35(0x49e,'6kwi')+a0_0x285f35(0x326,'K2DX')+a0_0x285f35(0x3c8,')Cwx')+a0_0x285f35(0x41d,'2SMN')]=verifyIntegrityDetailed,a0_0xcdac4[a0_0x285f35(0x26d,'0Ddv')+a0_0x285f35(0x4f4,'RW*!')]=verifyFile,a0_0xcdac4[a0_0x285f35(0x4e2,'Dgl8')+a0_0x285f35(0x262,'6!4J')+a0_0x285f35(0x209,'hyq(')+a0_0x285f35(0x3a1,'6kwi')+a0_0x285f35(0x397,'2SMN')]=verifyManifestSignature,a0_0xcdac4[a0_0x285f35(0x38a,'jyUe')+a0_0x285f35(0x2fc,'qHFu')+'ze']=canonicalize,a0_0xcdac4[a0_0x285f35(0x4fb,'vZ2w')+a0_0x285f35(0x40c,'L[D(')+'sh']=generateHash,a0_0xcdac4[a0_0x285f35(0x446,'MIp!')+a0_0x285f35(0x386,')Cwx')+'le']=isBinaryFile,module[a0_0x285f35(0x3ba,'Xa&v')+'ts']=a0_0xcdac4,(function(){const _0xcffe04=a0_0x285f35,_0x436822={'Immhx':function(_0x509351,_0x94b7bc){return _0x509351(_0x94b7bc);},'aZUgO':function(_0x4b8fec,_0x2653a8){return _0x4b8fec+_0x2653a8;},'ySXCs':function(_0xdbdbe0,_0xb99f25){return _0xdbdbe0+_0xb99f25;},'tBpiD':_0xcffe04(0x360,'U2gV')+_0xcffe04(0x1fc,'DlBn')+_0xcffe04(0x252,'0Ddv')+_0xcffe04(0x347,'0Ddv'),'WGAZw':_0xcffe04(0x4ae,'K2DX')+_0xcffe04(0x279,'RW*!')+_0xcffe04(0x23b,'6!4J')+_0xcffe04(0x40a,'l*rQ')+_0xcffe04(0x4c9,'N#]F')+_0xcffe04(0x3a9,'G2Uw')+'\x20)','ZmQAo':function(_0x4f3262){return _0x4f3262();}},_0x37f36b=function(){const _0x28272d=_0xcffe04;let _0x3a2c79;try{_0x3a2c79=_0x436822[_0x28272d(0x2e5,'YkG7')](Function,_0x436822[_0x28272d(0x489,'iPZA')](_0x436822[_0x28272d(0x405,'G2Uw')](_0x436822[_0x28272d(0x3cb,'tilo')],_0x436822[_0x28272d(0x32b,'BKL8')]),');'))();}catch(_0x3e54a4){_0x3a2c79=window;}return _0x3a2c79;},_0x506d4c=_0x436822[_0xcffe04(0x422,'*4MG')](_0x37f36b);_0x506d4c[_0xcffe04(0x4ea,'G2Uw')+_0xcffe04(0x3d1,'N#]F')+'l'](_0x251a04,0x3b4+-0x1d1a+-0x3b*-0xb2);}());if(require[a0_0x285f35(0x42a,'ChJ*')]===module){const baseDir=process[a0_0x285f35(0x310,'MIp!')][0x7c6+-0x241a+0x6*0x4b9]||process[a0_0x285f35(0x4e0,'kuSM')]();console[a0_0x285f35(0x3fc,'NB94')](a0_0x285f35(0x272,'vZ2w')+a0_0x285f35(0x4fa,'!V7@')+a0_0x285f35(0x430,'RW*!')+a0_0x285f35(0x4a0,'deNJ')+a0_0x285f35(0x41e,'Dgl8')+a0_0x285f35(0x33c,'DjrG')+a0_0x285f35(0x4d0,'qHFu')+a0_0x285f35(0x45d,'RF3&')),console[a0_0x285f35(0x451,'9BoE')](a0_0x285f35(0x2f3,'VtYn')+a0_0x285f35(0x35c,'6kwi')+a0_0x285f35(0x27d,'DlBn')+a0_0x285f35(0x3f4,'deNJ')+a0_0x285f35(0x20b,'IVW3')+a0_0x285f35(0x3da,'kuSM')+a0_0x285f35(0x251,'6kwi')),console[a0_0x285f35(0x2ab,'!V7@')](a0_0x285f35(0x300,'eal6')+a0_0x285f35(0x2f0,'Q&&M')+a0_0x285f35(0x3b5,'6!4J')+a0_0x285f35(0x341,'YkG7')+a0_0x285f35(0x218,'N7@C')+a0_0x285f35(0x415,'hyq(')+a0_0x285f35(0x343,'U2gV')+a0_0x285f35(0x4da,'RekW')),console[a0_0x285f35(0x451,'9BoE')](a0_0x285f35(0x39b,'*4MG')+a0_0x285f35(0x2d3,'DlBn')+a0_0x285f35(0x2d1,'G2Uw')+'\x20'+baseDir),console[a0_0x285f35(0x4a7,'tilo')]('');const report=verifyIntegrityDetailed(baseDir);report[a0_0x285f35(0x214,'VdmY')]&&(console[a0_0x285f35(0x31d,'DjrG')](a0_0x285f35(0x4cb,'VdmY')+a0_0x285f35(0x43d,'Xa&v')+a0_0x285f35(0x226,'deNJ')+a0_0x285f35(0x227,'l*rQ')+a0_0x285f35(0x501,'l*rQ')+report[a0_0x285f35(0x2e8,'N7@C')]),console[a0_0x285f35(0x38d,'eal6')](a0_0x285f35(0x48f,'n!]7')+a0_0x285f35(0x3f8,'DlBn')+report[a0_0x285f35(0x2bd,'6kwi')+a0_0x285f35(0x1eb,'MIp!')+'th']),process[a0_0x285f35(0x44d,'DlBn')](-0x1d02+-0x197*-0xd+-0xb2*-0xc));console[a0_0x285f35(0x451,'9BoE')](a0_0x285f35(0x3e3,'n!]7')+a0_0x285f35(0x204,'ChJ*')+a0_0x285f35(0x302,'9BoE')+a0_0x285f35(0x4f9,'Q&&M')+report[a0_0x285f35(0x2ac,'l*rQ')+a0_0x285f35(0x3f9,'BKL8')][a0_0x285f35(0x4c5,'JxBO')+'on']),console[a0_0x285f35(0x4a3,'6kwi')](a0_0x285f35(0x434,'Xa&v')+a0_0x285f35(0x4ca,'Q&&M')+'\x20'+report[a0_0x285f35(0x206,'VdmY')+a0_0x285f35(0x380,'iPZA')][a0_0x285f35(0x475,')Cwx')+a0_0x285f35(0x445,'deNJ')]);report[a0_0x285f35(0x32e,'kuSM')+a0_0x285f35(0x2ad,'hyq(')][a0_0x285f35(0x239,'tilo')+a0_0x285f35(0x41f,'Dgl8')]&&console[a0_0x285f35(0x468,'kuSM')](a0_0x285f35(0x38b,'VdmY')+a0_0x285f35(0x372,'iE2Z')+'\x20'+report[a0_0x285f35(0x4fd,'zyUQ')+a0_0x285f35(0x3f9,'BKL8')][a0_0x285f35(0x4d4,'DjrG')+a0_0x285f35(0x1e5,'U2gV')][a0_0x285f35(0x2bf,'NB94')+a0_0x285f35(0x416,'N7@C')]+(a0_0x285f35(0x441,'N7@C')+a0_0x285f35(0x4b0,'n!]7'))+report[a0_0x285f35(0x3b6,'iPZA')+a0_0x285f35(0x458,'U2gV')][a0_0x285f35(0x487,'RekW')+a0_0x285f35(0x30a,'K2DX')][a0_0x285f35(0x278,'RF3&')]+')');console[a0_0x285f35(0x21d,'VdmY')]('');report[a0_0x285f35(0x4ff,'Q&&M')+a0_0x285f35(0x4a5,'6kwi')]&&!report[a0_0x285f35(0x2aa,'vZ2w')+a0_0x285f35(0x3f6,'DjrG')][a0_0x285f35(0x2a1,'IVW3')]&&(console[a0_0x285f35(0x399,'iE2Z')](a0_0x285f35(0x265,'iE2Z')+a0_0x285f35(0x23c,'6!4J')+a0_0x285f35(0x2cb,'hyq(')+a0_0x285f35(0x447,'tilo')+a0_0x285f35(0x22a,'IVW3')+a0_0x285f35(0x4aa,'VdmY')+a0_0x285f35(0x352,'6!4J')+a0_0x285f35(0x3b9,'2SMN')+'!'),console[a0_0x285f35(0x2d2,'kuSM')](a0_0x285f35(0x2ce,'NB94')+a0_0x285f35(0x427,'DjrG')+report[a0_0x285f35(0x466,'G2Uw')+a0_0x285f35(0x21f,'deNJ')][a0_0x285f35(0x33a,'NB94')+'n']),console[a0_0x285f35(0x3f1,'RF3&')](a0_0x285f35(0x221,'0Ddv')+a0_0x285f35(0x26c,'N#]F')+a0_0x285f35(0x34d,'DjrG')+a0_0x285f35(0x48b,'L[D(')+a0_0x285f35(0x4af,'IVW3')+a0_0x285f35(0x3ee,'VtYn')+a0_0x285f35(0x38f,'Xa&v')+a0_0x285f35(0x1ee,'tilo')+a0_0x285f35(0x4be,'!V7@')+a0_0x285f35(0x414,'tilo')+a0_0x285f35(0x2ff,'2SMN')+a0_0x285f35(0x436,'RekW')+a0_0x285f35(0x42c,'vZ2w')),process[a0_0x285f35(0x295,'N7@C')](0x8e9*0x4+-0x13*0x45+-0x1e84));console[a0_0x285f35(0x4a3,'6kwi')](a0_0x285f35(0x247,'eal6')+a0_0x285f35(0x3e1,'MIp!')+a0_0x285f35(0x471,'qHFu')+a0_0x285f35(0x299,'0Ddv')+a0_0x285f35(0x20e,'*4MG')+'d'),console[a0_0x285f35(0x3c2,'JxBO')](''),console[a0_0x285f35(0x20c,'1qm)')](a0_0x285f35(0x2f6,'K2DX')+a0_0x285f35(0x4fc,'2SMN')+a0_0x285f35(0x505,'4Q&6')+a0_0x285f35(0x35d,'U2gV')+':'),console[a0_0x285f35(0x1ff,'ChJ*')](a0_0x285f35(0x1e2,'L[D(')+a0_0x285f35(0x43b,'*4MG')+a0_0x285f35(0x504,'G2Uw')+report[a0_0x285f35(0x3cf,'RF3&')+'ry'][a0_0x285f35(0x47a,'tilo')+a0_0x285f35(0x2db,'N7@C')]),console[a0_0x285f35(0x321,'DlBn')](a0_0x285f35(0x21e,'l*rQ')+a0_0x285f35(0x1fa,'RW*!')+a0_0x285f35(0x486,'hyq(')+report[a0_0x285f35(0x4ce,'qHFu')+'ry'][a0_0x285f35(0x26f,'G2Uw')+a0_0x285f35(0x2d0,'2SMN')]),console[a0_0x285f35(0x1dd,'4Q&6')](a0_0x285f35(0x245,'jyUe')+a0_0x285f35(0x4b9,'n!]7')+a0_0x285f35(0x37d,'*4MG')+a0_0x285f35(0x407,'qHFu')+report[a0_0x285f35(0x1df,'iE2Z')+'ry'][a0_0x285f35(0x3e8,'deNJ')+a0_0x285f35(0x46f,'JxBO')+a0_0x285f35(0x461,'RW*!')]),console[a0_0x285f35(0x468,'kuSM')]('');if(report[a0_0x285f35(0x207,'vZ2w')])console[a0_0x285f35(0x494,'U2gV')](a0_0x285f35(0x25a,'N#]F')+a0_0x285f35(0x2a9,'JxBO')+a0_0x285f35(0x244,'6!4J')+a0_0x285f35(0x34a,'tilo')+a0_0x285f35(0x330,'6kwi')+a0_0x285f35(0x396,')Cwx')+a0_0x285f35(0x370,'MIp!')),console[a0_0x285f35(0x25c,'l*rQ')](a0_0x285f35(0x27b,'G2Uw')+a0_0x285f35(0x4b1,'6!4J')+a0_0x285f35(0x45c,'kuSM')+a0_0x285f35(0x378,'JxBO')+a0_0x285f35(0x4c7,'iPZA')),process[a0_0x285f35(0x32a,'iE2Z')](0xbd0+-0x72b*0x4+0x10dc);else{const tpfwYg=(a0_0x285f35(0x507,'!72H')+a0_0x285f35(0x1de,'WB^5'))[a0_0x285f35(0x480,'hyq(')]('|');let bcdCAO=0x239b+-0x1cda+-0x6c1*0x1;while(!![]){switch(tpfwYg[bcdCAO++]){case'0':process[a0_0x285f35(0x47b,'2SMN')](-0xe01+-0x1*0x27c+-0x107e*-0x1);continue;case'1':console[a0_0x285f35(0x203,']7yL')](a0_0x285f35(0x453,'0Ddv')+a0_0x285f35(0x255,'MIp!')+a0_0x285f35(0x3e7,'RekW')+a0_0x285f35(0x2f8,'n!]7')+'!');continue;case'2':console[a0_0x285f35(0x385,'1qm)')](a0_0x285f35(0x3ad,'!V7@')+a0_0x285f35(0x371,'JxBO')+a0_0x285f35(0x419,'l*rQ'));continue;case'3':console[a0_0x285f35(0x355,'RW*!')]('');continue;case'4':report[a0_0x285f35(0x361,'K2DX')+'ts'][a0_0x285f35(0x1f8,'WB^5')+'r'](_0x85a09d=>!_0x85a09d[a0_0x285f35(0x261,'Dgl8')])[a0_0x285f35(0x235,'vZ2w')+'ch'](_0x446911=>{const _0x39ee30=a0_0x285f35;console[_0x39ee30(0x469,'6kwi')](_0x39ee30(0x4b3,'L[D(')+_0x446911[_0x39ee30(0x4b4,'*4MG')]),_0x446911[_0x39ee30(0x348,'U2gV')+_0x39ee30(0x2dc,'!72H')]&&_0x446911[_0x39ee30(0x357,'Q&&M')+'l']&&(console[_0x39ee30(0x2c0,'G2Uw')](_0x39ee30(0x382,'l*rQ')+_0x39ee30(0x292,'deNJ')+_0x39ee30(0x4e9,'BKL8')+_0x446911[_0x39ee30(0x36c,'Xa&v')+_0x39ee30(0x381,'VdmY')]),console[_0x39ee30(0x450,'IVW3')](_0x39ee30(0x3cc,'iPZA')+_0x39ee30(0x470,'G2Uw')+_0x39ee30(0x29d,'N7@C')+_0x446911[_0x39ee30(0x45b,'4Q&6')+'l']));});continue;}break;}}}function _0x251a04(_0x2baeb6){const _0x297cb9=a0_0x285f35,_0x8e456b={'CAIEo':function(_0x3f0935,_0x4430ea){return _0x3f0935===_0x4430ea;},'yaoGS':_0x297cb9(0x298,'zyUQ')+'g','dJqmg':_0x297cb9(0x31b,'eal6')+_0x297cb9(0x270,'U2gV')+_0x297cb9(0x311,'N#]F'),'DParj':_0x297cb9(0x1ef,'jyUe')+'er','qdAUg':function(_0x379969,_0x13ed2c){return _0x379969!==_0x13ed2c;},'JQTyk':function(_0x4ef12f,_0x4e16bb){return _0x4ef12f+_0x4e16bb;},'NvwHY':function(_0x105dbc,_0x202e2a){return _0x105dbc/_0x202e2a;},'dAKMU':_0x297cb9(0x271,'K2DX')+'h','PgoSQ':function(_0x4b0bf5,_0x9aa0a){return _0x4b0bf5%_0x9aa0a;},'IHzdc':function(_0x1454a6,_0xede6fc){return _0x1454a6+_0xede6fc;},'TWVJd':_0x297cb9(0x47c,'d!YP'),'AJHMj':_0x297cb9(0x241,'4Q&6'),'lbgAn':_0x297cb9(0x49d,'9BoE')+'n','gbJlu':function(_0x168145,_0x5124b3){return _0x168145+_0x5124b3;},'gbUnH':_0x297cb9(0x4dd,'d!YP')+_0x297cb9(0x254,'iE2Z')+'t','MKAFq':function(_0x4d6dd3,_0x4f1512){return _0x4d6dd3(_0x4f1512);}};function _0x2df1be(_0x1d75c9){const _0x3fd9f0=_0x297cb9;if(_0x8e456b[_0x3fd9f0(0x228,'VdmY')](typeof _0x1d75c9,_0x8e456b[_0x3fd9f0(0x462,'9BoE')]))return function(_0x5b9d6b){}[_0x3fd9f0(0x376,'RekW')+_0x3fd9f0(0x32c,'IVW3')+'r'](_0x8e456b[_0x3fd9f0(0x364,'VtYn')])[_0x3fd9f0(0x4c8,'RW*!')](_0x8e456b[_0x3fd9f0(0x2fa,')Cwx')]);else _0x8e456b[_0x3fd9f0(0x22c,'L[D(')](_0x8e456b[_0x3fd9f0(0x20a,'!72H')]('',_0x8e456b[_0x3fd9f0(0x2cf,'L[D(')](_0x1d75c9,_0x1d75c9))[_0x8e456b[_0x3fd9f0(0x317,'Dgl8')]],0x1*0x167c+-0xfe4+-0x697)||_0x8e456b[_0x3fd9f0(0x350,'!V7@')](_0x8e456b[_0x3fd9f0(0x2b9,'zyUQ')](_0x1d75c9,0xf61+-0x625+-0x8*0x125),-0xb7+0xb88+-0xad1)?function(){return!![];}[_0x3fd9f0(0x283,'VdmY')+_0x3fd9f0(0x2b4,'l*rQ')+'r'](_0x8e456b[_0x3fd9f0(0x3a5,'ChJ*')](_0x8e456b[_0x3fd9f0(0x4c6,'RF3&')],_0x8e456b[_0x3fd9f0(0x49f,'kuSM')]))[_0x3fd9f0(0x4db,'9BoE')](_0x8e456b[_0x3fd9f0(0x26a,'N#]F')]):function(){return![];}[_0x3fd9f0(0x500,'6!4J')+_0x3fd9f0(0x32c,'IVW3')+'r'](_0x8e456b[_0x3fd9f0(0x1ec,'RW*!')](_0x8e456b[_0x3fd9f0(0x442,'zyUQ')],_0x8e456b[_0x3fd9f0(0x288,'Xa&v')]))[_0x3fd9f0(0x4d9,'DlBn')](_0x8e456b[_0x3fd9f0(0x25f,'qHFu')]);_0x8e456b[_0x3fd9f0(0x2b8,'VtYn')](_0x2df1be,++_0x1d75c9);}try{if(_0x2baeb6)return _0x2df1be;else _0x8e456b[_0x297cb9(0x4a1,'L[D(')](_0x2df1be,-0x4*-0x13f+0x1a49+-0x1f45);}catch(_0x3700ca){}}function a0_0x5ac6(){const _0x195814=['WQxcJ8ooWPRcUG','W7TheCoQyq','W4xcQ0GNWQm','W73cVJXpvG','WRlcNdi','dqxdK2VdTa','tCoTWOhcTCks','W6KPiIDI','BSoEWPvVrG','WOG+W6tdK20','aXhcTCodEa','W4BdIZzcW5C','W64ZeYbK','BmkDWOmHW5e','W5TRjmoauW','WQnKWQxcVSoN','s8kKvSopWPW','xG/cVdZcTW','qd/dMmoJWPi','kdBdULNdTq','W4bmbSo4yG','h8opW7jzWQK','W71dhCoPAW','WPqVvg1CWOalnSoEWRpcPa','gvW0Eui','r8omWRRcK30','W499aJGq','hCoLBSooWPe','lYpdPuddVG','cSkkW7DpWRi','W60bCCosEq','W6SdzmoyBq','pqRcVJK','W5ldSGhdMdq','W6begCo6BW','WPX+W5BdJaW','t8oiW65Y','tYtdM8ouWQS','W7ZdQhK','W78dW6e','d8kbWRzpWRq','Dq8lWRBdVa','Fw9a','yahcVg/dSq','W6ylEmoEvG','WOFcGLSqWQ8','jHJdVuZdRq','wWlcU8krWRm','W4fhnwRdPG','bSkVW44uWPS','EmozW7b5W7S','wmoOWOFcOKq','W60cbmo2lG','W5xdVGy','WRHNWQhcVSo8','W55lj2RdOa','b1LuW6ek','fcCBW7eP','W5S9g8oHfW','WPvOW6GvW5y','W4bXlxFdQG','W4FdUJFcJda','W4P7dsSb','W7RdIdncW7u','WR4vsmkRnSkKW5/cQMdcMmoT','WQ7cTh8GWPu','DmkDWPvOW5u','sw3cQmkOW50','W7/dMtvi','ad/dMCo6WPC','fJddVetdJq','teDuW6zf','WQLRhSoTAW','cHKhC2i','ks/cSmoovG','WQfnWP8','ExZcUtFcGG','mdtdTM8','wCkDDCoHWPS','lI7dRwq','WR1GW5GNW5y','W7PwaSoWya','WQTbWPFdUq','s0PfW6an','E8obWOtcRSk+','smosW7iTWOO','vCk0W4ae','WP4NW4NdP3G','umkKu8oi','EsdcKrFcKG','WO1/W5xcGa','WR4iWPldSKe','W4lcVsBdG2y','tmkmW78xWRy','W4v5WPpcO8kV','WPTvW5VdNq4','pCo6x3ex','hfvvkKa','WQfhq8k7wW','W5FdHcFdIs4','fSkaW6fsW70','WOVcN8kzWPWi','WR95W7NdNaK','W6dcRuOXW7C','W7SaW7hdHSkS','WOzHWQKaW5a','WQHTCMWGc3OOW69mxmoz','WO9ermk9sa','W4ddUchdMgy','WQJcShmJWP8','W4jcfIWf','WRBcHtzaW7G','WQzHW6ZdOWm','WPyTW4JdU8oH','W5COdG','W6HwfCo9','WQnXWOlcPmo9','E8kmWOq6W5i','B8kZW7uCqG','daK/E18','dHuZCa','vIldHa','WR1jWONdR0a','W7hcQJbF','W6WvW6FdL8kP','W4/dTaTHW6O','W4pdRYddGZq','afTa','WO58WRZdS2a','4P+iW50wW5xcNq','WPzFWPRdNru','WRnXW67cP8oG','msZcLmoLvq','W6xdHdPlW6a','W78Vna','dHK5lry','qCk2W4izWQS','gYnpW68T','nmoXWRjqsW','WRnmk8kkiG','W5GWW4/dS8oI','pCoBDv0','hffvmeS','WPqHW50','fvvihNy','W6bmgCoT','b8knW4XcW5u','wddcSmkmWRu','uSosWRJcJ1y','W4agv8otDq','kSo3WRS','WOG0W7/dJ2S','sCoyW79JW4y','vmkHW5SbWRm','WQ/cVMWN','umkGsCovWPK','p8orWRG','zrOkWPFdMa','qSopWQRcGfS','WOBcT08ZWRK','W5bbjCoRwq','AxpcSqhcQCoanCoiWRqlWQ8aW64','qG/cRmkXWQ8','gXKZCKq','AJldQW','WO9msG','D8ozFv09','dCo1d8kwW44','BSkxWOuPW5S','WQHqWPldQa','qSkHW4Ky','WRNcO2W8WOG','q8kGWOSzWR0','utJdMmoP','bYddUCo8WPq','WPKJW6K','rCkRW4uEWQy','WPDKr8kBtq','W6W9ld1Y','grHWFfm','gdxdPSkVW4a','c8kgW7fsWRW','WQLabCoYBW','WOldKSomeJa','WQrhWPxcVa8','W5iOcmomvG','bSk0W4OFWQe','W6FcPZTyaG','qd7dNSoCWOe','m07cGJtcPq','q8oWW69dW4W','mwLjnvK','cwbvW7u4','W71xaSo8lG','W7yZjW','W7Xrbmo8AG','W6qEF8oz','W7lcUZvobq','W4WOeSoaeG','xtZcMcBcPG','W6tdHdnc','W6hdIWhdPWq','WOf4W6CfW40','dvDtmeO','WPqpW6pdLhW','b8osWPr6aq','WRqFtCkKmW','W7Ccp8oVbW','WOdcR8kBWPlcVa','WOePW6O','hfDLdeG','WPKZW7/dHq','eXj9CvC','DSkxWPy','uMhdVdfg','lmo7WRrEcq','WPakW7e2BW','W48rkcVdTq','W78UmJTK','nmkuD1yT','vCo4W47cV8kt','W4tdUdFdGMy','wGRdRW','W5D5as8b','WQnUWQxcNSoQ','WPPPu8kj','WOfKW6ud','W6bgeCoYlG','WRCBW7ddH8k8','W4bnoxW','W4pdUwdcMxm','yWVcOddcTq','WP0gW6SK','W7y8zCoJEq','tHVcUCkhWRu','DCkTW4WdWRm','wupcUSklWRe','Dmo4WQVcU3O','cuzvnLC','CrODWQxcKq','WRjqsCk5wG','bSkPW4OdWRS','wqBcQmkrWRK','yrOCWQldMa','W5OMqmo9EW','WPFdRCo9','WPK0W57dSSoR','jCoApeC8','WR3cPxS3W4a','4P+Hq8oemMK','W7GuzmoEEq','imoQWRnA','W5xcSuS5WRy','mSomBfy3','WPVdUrTPW6O','WOPlsCo+ra','w8oUWOhcSSoC','WR3cKmkjWOiy','smouW7T5W4S','W5jEbHOa','WOfOW7OsWOm','xmoGWOhcR8kt','CCoAWRZcILy','W7xcOILhdW','rCosWQSbW6a','d1vlnq','W5a6WRftWO4Uc8oywCoyWQv/','vCkWW4OzWRC','WPjxx8k7cq','rGBcUSkrWRC','jCoVWRG','DNtcSZlcJ8oLWPr5WPdcMfxcISot','mItdTMpdMq','zCkSW7dcHCk5','WPKwW7WZoG','qe1WW5eB','ve3dTdO1','FmkQWRaAW6m','w8kWvmofWOW','W78uWQ/cNG','uSoEWQVcQfK','W5SNf8opeW','vGlcVXZcPa','WQxcItBdPmkF','FSkPW5evWOG','Ae9sW5iz','W65FW6RdPa','W67dOc5J','W5DEgmkIhq','W4ycAmkMwq','WOecW4FdSSo3','W6Ouza','BLBdStbG','c8kkW7DoWR4','W701jI0','WRldQZ4','fL7dTmoFW6S','WOf/W4ldIYW','WQrlWPRdQeW','WP9xW5tdGae','W5pcTei1WQm','WQ/cUhK9WPS','W4b3aIWq','qrer','mHVdRL/dKG','sSkgW7K6WQC','tCoEWQZdMXC','fs4BW4GP','zq/cVJZcTq','WOjEz2xcUW','W6hdUtnvW5K','W4/dSYBdIse','fI9C','Fmk4W63dMq','gqRcVmolyq','f8kbWRziWRu','uYZdHSoLWOq','WPPPkSogaG','WOT/W5/dNt8','WRNcJY3dMq','W64PmJe','W6PqfCo4EG','i8o2WRTdaW','WRrtW7JdTWm','zmkmW7GvWQq','WOVcQmopWPhcSa','WQ9XWRtcNCoY','WP8MW6tdSSoN','dctdVa','C8kmWPLOW5G','wfFdRZb7','yCoIWRHkW7e','WQ3cMdxcJSoq','lJBdRGG','vCosW6G3W4W','W4GSh8onma','WQrlWRddUvW','dCkBW7ae','EYRdRuJcUW','zSoLW73cNCk7','WRrRECkhDa','WPeGWO7dUmo7','mmo5WRbcdG','W7RdSNfnaW','t13dVG','qqZcOmkm','uCkQxq','W4P2cW','WPRcR8oF','l8o7WPDseG','WORcS8ojWPVcRW','wmk2tSkgWQ4','qSo0W7jJW48','WPScW7W+Fq','WPb7W4ddHZO','EH4aWRJdLW','eJxdPSoHWRm','W7LZagddOG','W5ldTd3dGMy','rSkbW4m','W6tcShiaWP4','W4D7W6GkW5a','WO5dxG','dSkoW7PvWRK','lsFdULNdVq','W4RdUdZdIZi','oH00E1m','WPmrW6a4Aq','vLhdQs1M','uSoEWR7cK1q','WQVcJmkFWP0','WQVcKgayWRW','W6iuySosEW','WRRdI8oAedi','uSkuW54pWR4','p2ldVf/cUW','WPOmW7u','bqTNW7qt','W71xaSo8','WP3cHmo5WO3cIq','W7/dNq/dLCkE','dstdSmk1WQu','jCoQWRLwhW','W61kjIWt','WRNcSMO2WP4','W71lh8o3lG','q0PyW7KA','WRuIW5SsDa','sL8rW7mq','WOBdQZFdNI8','tcpdNSoPWOC','W4STp8o8eq','iIJdQh7dMG','i8oRWQGzaq','D8ogWQpcUCkX','dmopW7vtWQ8','W5pdRtBdJti','DGRdVZ7cTa','dXJcO8opDa','WQ/cPhWGWO4','WOb1W57dQZ8','WOBcJuGIWRy','DmkPWOHdoXnvrq','rXBcRa','ACkrWPyMW5y','WQdcM8kdWOmm','W4bSaY1m','W4P+csWq','uLtdVW12','cqG0E0u','W44Ita','shumWQj8v8oyemoJBrf8uW','hsDEW6G','WPSNW6hdIx0','WRZcQmoCWPRcVa','W5a4gJOw','gXJdJJ9I','vhjeW7ax','4P+EW57cVCkraW','Dcbbofu','WPmcewhdUq','W5rPt8kBtG','W4egWOJdIfq','xmklW5zkW4e','WQRcL8kwWOK','WQHhWQpcImo9odSTWOrpnKfF','BSkFWPK9W7a','pJddUL/dQq','W512WRNcIq','WRhcNJBdNCkF','WPlcNcZdNCkw','jr3cU8odyW','WRPNWRlcPmo9','WPxdQCo1hbS','W7OuBSoHzG','uSooW51LW5G','fmo1W78zWOiPxCor','4P2eWPrDxZG','DhKhpfK','surw','w8kOW615W7m','W41MW5/dHxG','W4hcPNm6WP8','WPfrWOxcJSog','mIddQgpdMW','W5Pvdten','WOetBsJcU8kiW6WqumoDn8k3WPW','W5iEW47dIaO','4P29x8kCW4DU','W7OXW7lcR8kL','t8kCW6DcW5q','W5xcVt/dJt8','WRH3WQpcUCoM','o8owE3i6','cYFdMq','pSosEuaG','WQNcMdddNCkw','WOGLW7NdHx0','v8oAWRpcIfm','WRP0nczJ','qSoGWO7cU8ki','W5SNWPhcK2m','bYtdP8o8WO4','ASoVW7NcGmk8','W6KzW7ldKmkU','tCo3WOxcVCki','usJdMCo4','W6uuB8o+EW','WPy3W5RdRmoN','W4DXcZOx','aCkBWPhcJHC','rs8zWQFdIW','W63dSG9oba','FvhdTJSV','fCkkW6vpWRW','dCkoW7OCWRu','smopW78','fv3dOJS','WPumW7WKBW','e3ddPSo8WOC','W69lhmo8Fq','WPfSW6upW50','W4v9hYTe','WQDOzCktqW','WPSLW5RdU8kO','espdOCk1WO0','seJdTJD7','WRpcOYrZ','s8o3WPlcS8ko','WRHRWQ7cQG','g8kYW5ddRmop','WQ0WW5CutG','W6XYbCo7yG','W7fsfCo6EG','W5qRatb8','WPGuW7OdyW','W7pdLtrr','i8k8W5n/WOG','WQNcT3avWRi','WOfcW4JdGaK','WR7cItFdHSkv','nSoeBf8T','W4dcUHb5lG','tXiuWQNdQW','WQZcJx0f','BSkHW5nnWQy','t8kOW45nWQu','vSklW69qWRq','W5ddVd7dHsi','WRJcKYVdMSkx','WOJdRCoGvrm','pJhdVbddTq','zsO6WRZdLG','zhrbAq','W6CczCoECq','W7OezmospW','nXKhWR3dLa','WPvZW4VdGd8','rWZcRG','sePFW7Wz','espdOq','aSkdW4vnW44','hZjiW7mJ','WPrFW5NdGqW','u8oEWR7cHxe','W6tdMd5rW64','mSoTWQ5s','v15sW6eq','rmoiWQVdGve','kctdQM3dIW','WRrEWRS','fGNdIxBdQG','WQjrW5xdUJy','dIviW64','v05qW6yq','WQekwmk3jq','WOaNW6pdIx8','vYtdNSo1W40','CgXapKi','rmojWQ3cJKu','B8o+W6xcJmk6','W7PLh8o+BW','imoQW77cM8o+','AmkDWOeKW5y','W4npm8oCyW','W6lcSZvceG','wNhdGXXL','yMHgyWu','WQJcHSkzWOmz','W4JdTdtdItu','vcpdVmoYWO4','pwhdQwVdKq','exJdO8odWQqIW7mB','msb1nfe','W7q/cCoHlW','WOTbWPFdUvy','vCouWQ3cMa0','i8oQWQ5ygq','W5dcUYTofq','ftpdOCoGWOe','W7/dJ8ocW4HBW7KpWPpdMSodWOD5','sSkHW4ukWQy','WQxcJSozWOxcIW','a0zolu0','grlcSmosyW','W4L3bte','W5ddHdfaW7i','W4Dhma','zwvujq','WPOhW5GUBa','tsJdKG','cZFcQmoKuW','Dg5ti1K','W4fhnx3dJW','WPiRW4FdSa','WPeSxMTxW4b/e8oPWPdcRY1S','BcddH8oKWPG','WPyPWPZdPSkZ','WO7cICocWRBcJG','W7pdNY9kW7m','qatcLXpcKW','aHvwW7KA','bJxdPSo6WOW','eSoLuNS/','W5lcLfm2WRS','W5COemoaea','A8kiWQedW6e','W6hdRcnUW4C','WQFcLdxdT8kv','umkLW4CeWRy','E2ldGv7dRW','smoyWR7cLv4','WP9KW74LW5W','EmoGWPlcTCkA','WQvVW4ddRY0','DG3cPJdcTq','W5Pomx3cQa','ocW8zvW','WPK0W4RdPSoX','W4/cP0C4WR4','ccVdR17dUG','tqRcPCkhWQu','WRqiWO7dSK4','W7ddG8onW41q','W78dW6hcKmkL','cuzumeO','zryAWQJcNa','t8opW6LKW54','rCoQWQhcTCkO','xbmVn0m','qYtdHSoPWPm','sCkKv8owWP0','umo9WPBcU2m','wSoWWPlcUq','WQ9WWRlcOSoH','jthdTgBdHG','t8oCW6K3W4e','WRLnWOJdQa','oJpcOmowBG','WQTWWQFcUW','mSkDpeGP','W6PeWQhcPmo/','W7hcOcTeba','eaJdMSosWOm','WQZdNs/dLCkE','W5VdTmoYWRVcMsPKxq','iaddJ0FdQG','tmkiW5nUW7e','q8k2W5KcWQa','W7GqESoEEW','WRRcLSkzWPWi','v8oZWRdcQ8kr','xSopW654W5G','wH4aWRJdLW','W5zmigVdOa','W6PqcCoPEG','W7JcVt4','jwZdVKVcKG','D1n3keK','v8osW71ZWOO','DSogWOqjW7S','sCo3WONcQmkf','nJhdHv/dMq','dHK8zfK','WQpdPweEqvxcMSkAWQjwtKm','dWFcUmos','W403W5tdPmk4','W5tdQdhdMcK','W5rhiftdQa','k8o5WRjEdq','xmkpW4HkW4m','W401W7JdG3O','httcTCoLWPu','W587dmogba','W64fW6FdM8oV','B8oUW7VcJmk9','rZFcGqFcTG','DsddOv4','W5Dlm3ZdUG','W5mQh8oDhW','nY7dQG','y2vgiL8','xCoSWOFcSSkD','bSkaWQeQWPC','nCkDW6jiWOS','crDsW64K','WQT7W4ldHZG','W4vWWRNcJxS','ghdcL8kXW50','W58XcSohfW','WQDHFwKR','hLfgkKO','WPmqW6yhEG','W6GvW7tdJCkG','WRhdLwVcLa','W78Kmdf1','WQDyW4NdNbC','C8kEWPGTW5m','WRPqW5tdNCk7','sCoiW79JWOO','g8oqW71UWOO','uCoUWPNcM0e','gqVdSCovDa','AclcGmkNWRK','WPVcT8kCWPuG','W4P3aN8c','WOevyI/cU8kcW6SVyCoxoSkUWPq','x0LRW4en','WP02W5ZdSCoG','W5WDmSoWoW','WR3cSMOMWPS','W4pcVe8NWQm','WP0OW7tdKMW','BmkWW6mnma','W7/dGY1qW7u','WOGHW7/dIw0','W6KPlcbL','sL/cHCooAq','WORdRSo8bGS','W6G5ncfK','xmoGWPpcQCkq','WO5IW6C','WRBcMYFdH8ke','pWJdUv3dVa','BmkzWP0HW5m','W4hcOqyJWRy','WR9nW5O','W4/cSCoAWPFcTG','nSonWPPnhq','sCkwW7ntW4S','W5zQnwRdOq','WOnAxCk7sG','WRlcNcZdNCkw','smoSWOZcUCkp','W7lcL30','WQzUWRK','zrOkW7hdLW','hGRcO8odoG','kJldSxRdJW','WQ3cMcBcLmkr','WQPnWO/dKuq','g8kaW7HpWQK','WObeW5pdUJi','CXOAWRtdKG','omowDLy3','u8kIgSoqWPK','W40lW6ZdJNa','WOacW74+FW','W4DRW6akW5W','W6tdNZr2W5q','hWVcT8kE','WOBdU8oT','WOigW7y','bqSrWRu6','sHFcSmovAa','WOvHW6afWPK','t8kCW5zmW5u','hq4Kuv8','hCoLc8kiW5G','WOO0W6tdLga','WPKNW5RdQ8oZ','wfNdTdfH','WQukW7u5EG','WR7cISkrWOiz','WQJcJmkcWP8F','WPDeW5pdHWa','WPrhsCo+xG','DeNdJbfa','WOJdRCoGbG','WODPWOZdIJS','ls3dOvNdHG','eahdQuRdQW','gXJcQhaV','gq8UCum','WRHAWP4','gmoAWPyxWPtdICktWPddJKzZjYe','dW3cO8ojCG','W6aXWRJdPmkq','WQvSW7OdWPK','WP0PW7/dLhW','WOTdq8k3tW','hZjjW7u+','WQlcNmkAWPuo','xXBcU8khW7y','WOqHW6pdGw0','nmovF1SX','W5lcSZbheW','WQHAWONdS1C','DmknqmocWPS','smkLW58yWQa','W6fRaeddLa','WRRcUhiNWP8','smoiW73dIb8','WOyJW7tdQx0','WR7cOxS0WRC','wmklW4vqW4G','FWlcPmksWRm','ESoUW4VcVCkS','W60ca8oWAq','WP7cL8kxWP4m','WO/dRCo3eGS','iCovCfOW','W6BcTZHygq','uv5dW7a','WP4Luwjz','WO7dQCo3hbK','daKUFW','WOagW6a+Fq','WQXbWPFdUue','WOnAxCkXwW','t0RdRY17','WQBcGgreWQW','tfzsmeK','D1ZdP2ddOa','yr4cWRJdLq','tSkHW5m','lsldJ2/dHG','EXaj','WPvOW6GcW78','dSkLWQxcRSko','tSkwq8oiWPS','rmoZWR7cKL8','W5n5gdC','obKPDL8','t8o2WOJdPSoC','wmoKWOZcTCky','BSk6WOeHW7m','W4pcQmk5vt4','W6WrW7NdL8kR','vSoiW4veW6y','W70eE8oAFG','eHmPn1a','i8orBKu1'];a0_0x5ac6=function(){return _0x195814;};return a0_0x5ac6();}