@restforgejs/platform 4.1.0 → 4.1.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 (160) hide show
  1. package/LICENSE.md +5 -1
  2. package/README.md +30 -14
  3. package/build-info.json +2 -2
  4. package/cli/consumer-deploy.js +1 -1
  5. package/cli/consumer.js +1 -1
  6. package/integrity-manifest.json +8 -8
  7. package/package.json +4 -4
  8. package/scripts/check-install.js +45 -45
  9. package/scripts/verify-integrity.js +1 -1
  10. package/server.js +1 -1
  11. package/src/components/handlers/adjust_handler.js +1 -1
  12. package/src/components/handlers/audit_handler.js +1 -1
  13. package/src/components/handlers/delete_handler.js +1 -1
  14. package/src/components/handlers/export_handler.js +1 -1
  15. package/src/components/handlers/import_handler.js +1 -1
  16. package/src/components/handlers/insert_handler.js +1 -1
  17. package/src/components/handlers/update_handler.js +1 -1
  18. package/src/components/handlers/upload_handler.js +1 -1
  19. package/src/components/handlers/workflow_handler.js +1 -1
  20. package/src/components/integrations/webhook.js +1 -1
  21. package/src/consumers/baseConsumer.js +1 -1
  22. package/src/consumers/declarativeMapper.js +1 -1
  23. package/src/consumers/handlers/apiHandler.js +1 -1
  24. package/src/consumers/handlers/consoleHandler.js +1 -1
  25. package/src/consumers/handlers/databaseHandler.js +1 -1
  26. package/src/consumers/handlers/index.js +1 -1
  27. package/src/consumers/handlers/kafkaHandler.js +1 -1
  28. package/src/consumers/index.js +1 -1
  29. package/src/consumers/messageTransformer.js +1 -1
  30. package/src/consumers/validator.js +1 -1
  31. package/src/core/db/dialect/base-dialect.js +1 -1
  32. package/src/core/db/dialect/index.js +1 -1
  33. package/src/core/db/dialect/mysql-dialect.js +1 -1
  34. package/src/core/db/dialect/oracle-dialect.js +1 -1
  35. package/src/core/db/dialect/postgres-dialect.js +1 -1
  36. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  37. package/src/core/db/flatten-helper.js +1 -1
  38. package/src/core/db/query-builder-error.js +1 -1
  39. package/src/core/db/query-builder.js +1 -1
  40. package/src/core/db/relation-helper.js +1 -1
  41. package/src/core/handlers/delete_handler.js +1 -1
  42. package/src/core/handlers/insert_handler.js +1 -1
  43. package/src/core/handlers/update_handler.js +1 -1
  44. package/src/core/models/base-model.js +1 -1
  45. package/src/core/utils/cache-manager.js +1 -1
  46. package/src/core/utils/component-engine.js +1 -1
  47. package/src/core/utils/context-builder.js +1 -1
  48. package/src/core/utils/datetime-formatter.js +1 -1
  49. package/src/core/utils/datetime-parser.js +1 -1
  50. package/src/core/utils/db.js +1 -1
  51. package/src/core/utils/logger.js +1 -1
  52. package/src/core/utils/payload-loader.js +1 -1
  53. package/src/core/utils/security-checks.js +1 -1
  54. package/src/middleware/body-options.js +1 -1
  55. package/src/middleware/cors.js +1 -1
  56. package/src/middleware/idempotency.js +1 -1
  57. package/src/middleware/rate-limiter.js +1 -1
  58. package/src/middleware/request-logger.js +1 -1
  59. package/src/middleware/security-headers.js +1 -1
  60. package/src/models/base-model-mysql.js +1 -1
  61. package/src/models/base-model-oracle.js +1 -1
  62. package/src/models/base-model-sqlite.js +1 -1
  63. package/src/models/base-model.js +1 -1
  64. package/src/pro/caching/redis-client.js +1 -1
  65. package/src/pro/caching/redis-helper.js +1 -1
  66. package/src/pro/consumers/baseConsumer.js +1 -1
  67. package/src/pro/consumers/declarativeMapper.js +1 -1
  68. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  69. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  70. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  71. package/src/pro/consumers/handlers/index.js +1 -1
  72. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  73. package/src/pro/consumers/index.js +1 -1
  74. package/src/pro/consumers/messageTransformer.js +1 -1
  75. package/src/pro/consumers/validator.js +1 -1
  76. package/src/pro/database/base-model-mysql.js +1 -1
  77. package/src/pro/database/base-model-oracle.js +1 -1
  78. package/src/pro/database/base-model-sqlite.js +1 -1
  79. package/src/pro/database/db-mysql.js +1 -1
  80. package/src/pro/database/db-oracle.js +1 -1
  81. package/src/pro/database/db-sqlite.js +1 -1
  82. package/src/pro/excel/excel-generator.js +1 -1
  83. package/src/pro/excel/excel-parser.js +1 -1
  84. package/src/pro/excel/export-service.js +1 -1
  85. package/src/pro/excel/export_handler.js +1 -1
  86. package/src/pro/excel/import-service.js +1 -1
  87. package/src/pro/excel/import-validator.js +1 -1
  88. package/src/pro/excel/import_handler.js +1 -1
  89. package/src/pro/excel/upsert-builder.js +1 -1
  90. package/src/pro/idgen/idgen-routes.js +1 -1
  91. package/src/pro/integrations/lookup-resolver.js +1 -1
  92. package/src/pro/integrations/upload-handler-v2.js +1 -1
  93. package/src/pro/integrations/upload-handler.js +1 -1
  94. package/src/pro/integrations/webhook.js +1 -1
  95. package/src/pro/locking/lock-routes.js +1 -1
  96. package/src/pro/locking/resource-lock-manager.js +1 -1
  97. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  98. package/src/pro/messaging/kafkaService.js +1 -1
  99. package/src/pro/messaging/messagehubService.js +1 -1
  100. package/src/pro/messaging/rabbitmqService.js +1 -1
  101. package/src/pro/scheduler/job-manager.js +1 -1
  102. package/src/pro/scheduler/job-routes.js +1 -1
  103. package/src/pro/scheduler/job-validator.js +1 -1
  104. package/src/pro/storage/base-storage-provider.js +1 -1
  105. package/src/pro/storage/file-metadata-helper.js +1 -1
  106. package/src/pro/storage/index.js +1 -1
  107. package/src/pro/storage/local-storage-provider.js +1 -1
  108. package/src/pro/storage/s3-storage-provider.js +1 -1
  109. package/src/pro/storage/upload-cleanup-job.js +1 -1
  110. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  111. package/src/pro/storage/upload-pending-tracker.js +1 -1
  112. package/src/pro/websocket/broadcast-helper.js +1 -1
  113. package/src/pro/websocket/index.js +1 -1
  114. package/src/pro/websocket/livesync-server.js +1 -1
  115. package/src/pro/websocket/ws-broadcaster.js +1 -1
  116. package/src/services/export-service.js +1 -1
  117. package/src/services/import-service.js +1 -1
  118. package/src/services/kafkaConsumerService.js +1 -1
  119. package/src/services/kafkaService.js +1 -1
  120. package/src/services/messagehubService.js +1 -1
  121. package/src/services/rabbitmqService.js +1 -1
  122. package/src/utils/cache-invalidation-registry.js +1 -1
  123. package/src/utils/cache-manager.js +1 -1
  124. package/src/utils/component-engine.js +1 -1
  125. package/src/utils/config-extractor.js +1 -1
  126. package/src/utils/consumerLogger.js +1 -1
  127. package/src/utils/context-builder.js +1 -1
  128. package/src/utils/dashboard-helpers.js +1 -1
  129. package/src/utils/dateHelper.js +1 -1
  130. package/src/utils/datetime-formatter.js +1 -1
  131. package/src/utils/datetime-parser.js +1 -1
  132. package/src/utils/db-bootstrap.js +1 -1
  133. package/src/utils/db-mysql.js +1 -1
  134. package/src/utils/db-oracle.js +1 -1
  135. package/src/utils/db-sqlite.js +1 -1
  136. package/src/utils/db.js +1 -1
  137. package/src/utils/demo-generator.js +1 -1
  138. package/src/utils/excel-generator.js +1 -1
  139. package/src/utils/excel-parser.js +1 -1
  140. package/src/utils/file-watcher.js +1 -1
  141. package/src/utils/id-generator.js +1 -1
  142. package/src/utils/idempotency-manager.js +1 -1
  143. package/src/utils/import-validator.js +1 -1
  144. package/src/utils/license-client.js +1 -1
  145. package/src/utils/lock-manager.js +1 -1
  146. package/src/utils/logger.js +1 -1
  147. package/src/utils/lookup-resolver.js +1 -1
  148. package/src/utils/payload-loader.js +1 -1
  149. package/src/utils/processor-response.js +1 -1
  150. package/src/utils/rabbitmq.js +1 -1
  151. package/src/utils/redis-client.js +1 -1
  152. package/src/utils/redis-helper.js +1 -1
  153. package/src/utils/request-scope.js +1 -1
  154. package/src/utils/security-checks.js +1 -1
  155. package/src/utils/service-resolver.js +1 -1
  156. package/src/utils/shutdown-coordinator.js +1 -1
  157. package/src/utils/trusted-keys.js +1 -1
  158. package/src/utils/upload-handler.js +1 -1
  159. package/src/utils/upsert-builder.js +1 -1
  160. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x166a1c=a0_0x2538;function a0_0xc95b(){const _0x8783ce=['swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','x2vUywjSzwq','zgf0zvbYzwzPEa','zw5ZDxjLvw5PCxvL','DgPhEgK','reTPDuW','lcbNB3qG','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','EwvtBfm','y2vQzMW','C2vWyxjHDg9Y','x2zVCM1HDe51BwjLCG','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','rgHNq3G','surhru5Fsurftv9uveW','AwrNzw4','icHNB3q6ia','B2rjq3y','mte5nJu4mvnKuff3CG','z2vUzxjHDgvKqxq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','r0Pguuy','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','sw52ywXPzcbMB3jTyxq6ia','twv0ysb1CgrHDguGzxjYB3i','zwz5suu','CNn2swr4s2v5','ENjHBMDL','C3rYAw5N','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','x2j1AwXKuMv1C2vlzxK','mtiZmJmZmJjLBu5YD3G','wejLsKq','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','Du9XEK0','CvzxtgC','igrPz2L0CYaOz290oIa','x3jLC2vYDMvezwzHDwX0vfrm','DhrStxm','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','lI9SB2DNzxi','zxH0zw5KuMvZzxj2yxrPB24','r0LNDu4','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','Eezut2S','surhru5Fsu5wquXjrf9nt0rf','icH0B2TLBJ0','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','sw52ywXPzcbMB3jTyxq6ig11C3qGyMuGB25Lig9Mia','y3jLyxrLzef0','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','BM93','A2v5uhjLzML4','x3zHBgLKyxrLuMvZB3vYy2u','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','BgH0rKy','x2LUAxrPywXPEMvK','yM9VBgvHBG','Bwf0y2G','C3rVCMvK','x2j1AwXKrM9YBwf0s2v5','x3L5ExLF','lcbLEhbLy3rLzca','sNbsvM0','wKrTweq','D2fYBG','x2j1AwXKu2vXs2v5','CgvLAW','AwrNzw5FCMvZzxq','zgvS','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','zLLgzhe','ywXS','DhrS','x3jLDhjPzxzLswrLBunHy2HL','surhru5Fq09vtLrfuL9pvKvsrKXpvW','x3L5ExLTBv8','tND4EKG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','wfHywc1ywfHylvHywfGTwfHywa','vw9Urum','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','q1PkveW','z2v0q2XPzw50','zxnvzKS','r09XyNK','Bwf4uMv0CNK','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','nKXNDe5VBq','x2TLEvbYzwzPEa','mJi3ntG2mefwsg9rzG','ihnLy29UzhmGkgDVDdOG','surhru5Fsu5wquXjrf9ut0TftG','AwrLBvruta','CMvZB3vYy2u','yM5Wte0','CMflz3y','x3jLC2vYDMvnyxHuveW','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','mdeYmZq1nJC4owfIy2rLzG','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','AgfZ','AwrLBxbVDgvUy3LlzxK','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','A2v5CW','rKLdzxK','surhru5Fsu5wquXjrf9gt1jnqvq','m2XerMjQwa','uNPQu0G','zw52','u2TvAhO','u016u0y','y29UC3vTzq','Bw55Buq','BwvZC2fNzq','rK13uxC','uhnTr2G','zxHWB3j0CW','C3rYAw5NAwz5','x2j1AwXKsxnZDwvKs2v5','DKz5rNK','AxnszxvZzwq','EhrMs24','CMvZzxj2zq','AwrLBuTLEq','x3n0B3jLswrLBunHy2HLtLG','r1fsBxi','ExL5Eq','CMv1C2u','CMy6AwrNzw46','BhPwwwq','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x3zHBgLKyxrLvfrm','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','y291BNrLCKLUDa','AxnjBNrLz2vY','swrhzw5LCMf0B3jfCNjVCG','Ag1Nzxq','CMvZzxq','x2j1AwXKswrLBuTLEq','r1jdC1K','AxnZDwvK','Aw5MBW','mtf8mNW3Fdv8ohW5Fdz8nhWXmhWXFdn8mhWXmG','ALnxENu','x2vUC3vYzuLUAxrPywXPEMvK','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','y3j5ChrV','ignOyxjZ','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','ChvZAa','C2vX','z2v0sw5MBW','zM9YBwf0','s2Tnv1K','x3zHBgLKyxrLuMvZzxj2zvruta','AgDLDgfSBa','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','Afz3A28','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','Dhj1zq','BgvUz3rO','vNfjD0i','zKPwt2O','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','ExL5Ew1T','surhru5FquXmt1DFuKvtrvq','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','DMfSDwu','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','Aenyv3K','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','D2LUBMvYuMvZDwX0','CNn2x2LKEdO','CNn2oG','surhru5Frevgqvvmvf9nqvHFuKvuuLK','x2fSBg93uMvZzxq','Cg93','zxzHBa','x2DLDenVDw50zxjuveW','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','CMfUzg9T','BNvTyMvY','x2j1AwXKuMvZzxj2yxrPB25lzxK','x3vUzg9syw5KB21szxnLCNzHDgLVBG','surhru5Fsu5wquXjrf9srvnpvvjdrq','CMvZzxj2zv9JB25MAxjT','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','thfZAvC','ExL5Ew1Tzgq','x3zHBgLKyxrLugf0DgvYBG','odq1mdqXngjKEfzfyW','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','x2LKzw1uveW','AxnZDwvKoG','surhru5Fsu5wquXjrf9quKvgsvG','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','z2v0','u0LQDMq','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','ENbntem','mdeYmZq1nJC4oufcq0rfrG','ChjLzML4','r1PJy1G','Dg9ju09tDhjPBMC','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','AhH3quK','y29Kzq','q3v6y3y','x3bHCNnLtNvTyMvY','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','CMfUzg9Tsw50','BKDIr20','Dgv4Da','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','sKHWtxi','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','BxvrCwW','surhru5Fsu5wquXjrf9trvbbuKfut1i','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','mZqWnJi5nufryvfqCW','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CgLU','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','x2j1AwXKqwn0AxzLs2v5','AeHIuKG','x3n0B3jLswrLBunHy2HL','sg9Lyve','surhru5Fq09vtLrfuL9uveXFrefjtfK','DLLnEwO','zw5HyMXLza','x3vWzgf0zu1LDge','x2nVDw50zxjuveXnyxa','yNvPBgrezxrLCM1PBMLZDgLJs2v5','CMvZzxj2zu1HEfruta','A3z2EuS','DgvZDa','Bw9Kzq','mtK1otK2mLHbqw11Bq','zgvMyxvSDfbPBKrPz2L0CW','wxP3sfi','zxHWAxjLC0f0','BKTVyNu','surhru5FreLtqujmruq','y291BNrLCG','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','x2rLzMf1BhrnyxHszxrYEq','BNvTrgLNAxrZ','CgfYC2u','q1PLv2q','AhnLDa','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','mZa0mZG0mfrhBe9qvq','x2rLzMf1BhrqAw5eAwDPDhm','CMvZzxj2zu51BwjLCG','q1H4y1G','C2vXoG','Chr0Ba','x2LUAxrdB25MAwC','DvnNvhm','x2rLzMf1BhrdB2rLugf0DgvYBG','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','x2j1AwXKtwv0yuTLEq','C3jLBq','surhru5Fsu5wquXjrf9ovu1crvi','zM9YBwf0s2v5','z2v0uMvZzxj2yxrPB24'];a0_0xc95b=function(){return _0x8783ce;};return a0_0xc95b();}(function(_0x38d79f,_0x607b5){const _0xf02763=a0_0x2538,_0x181bc8=_0x38d79f();while(!![]){try{const _0x3c3758=parseInt(_0xf02763(0x16b))/0x1+parseInt(_0xf02763(0x13c))/0x2+-parseInt(_0xf02763(0x1c7))/0x3*(parseInt(_0xf02763(0x1b5))/0x4)+-parseInt(_0xf02763(0x12a))/0x5*(parseInt(_0xf02763(0x1b3))/0x6)+-parseInt(_0xf02763(0x21d))/0x7+-parseInt(_0xf02763(0x14a))/0x8+parseInt(_0xf02763(0x179))/0x9;if(_0x3c3758===_0x607b5)break;else _0x181bc8['push'](_0x181bc8['shift']());}catch(_0x543871){_0x181bc8['push'](_0x181bc8['shift']());}}}(a0_0xc95b,0xacd4a));function a0_0x2538(_0x15b003,_0xb4c5bf){_0x15b003=_0x15b003-0x127;const _0xc95b2=a0_0xc95b();let _0x25385d=_0xc95b2[_0x15b003];if(a0_0x2538['JGdRUH']===undefined){var _0x18dbeb=function(_0x14be04){const _0x41ad73='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3583aa='',_0x1d08f4='';for(let _0x9a30c2=0x0,_0x525a78,_0x1ce0bc,_0x1e25ea=0x0;_0x1ce0bc=_0x14be04['charAt'](_0x1e25ea++);~_0x1ce0bc&&(_0x525a78=_0x9a30c2%0x4?_0x525a78*0x40+_0x1ce0bc:_0x1ce0bc,_0x9a30c2++%0x4)?_0x3583aa+=String['fromCharCode'](0xff&_0x525a78>>(-0x2*_0x9a30c2&0x6)):0x0){_0x1ce0bc=_0x41ad73['indexOf'](_0x1ce0bc);}for(let _0x129bf1=0x0,_0x403ee3=_0x3583aa['length'];_0x129bf1<_0x403ee3;_0x129bf1++){_0x1d08f4+='%'+('00'+_0x3583aa['charCodeAt'](_0x129bf1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d08f4);};a0_0x2538['lzZwjb']=_0x18dbeb,a0_0x2538['CqtoiQ']={},a0_0x2538['JGdRUH']=!![];}const _0x13e53f=_0xc95b2[0x0],_0x11c34a=_0x15b003+_0x13e53f,_0x8157b2=a0_0x2538['CqtoiQ'][_0x11c34a];return!_0x8157b2?(_0x25385d=a0_0x2538['lzZwjb'](_0x25385d),a0_0x2538['CqtoiQ'][_0x11c34a]=_0x25385d):_0x25385d=_0x8157b2,_0x25385d;}const crypto=require(a0_0x166a1c(0x1ef)),redisClient=require('./redis-client'),{logger}=require(a0_0x166a1c(0x183)),idempotencyManager=require(a0_0x166a1c(0x186)),ALLOWED_FORMATS=new Set([a0_0x166a1c(0x233),'yyyy',a0_0x166a1c(0x202),a0_0x166a1c(0x21b)]),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER=a0_0x166a1c(0x225),CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x166a1c(0x227),CHARSET_HEX_LOWER=a0_0x166a1c(0x1be),PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20reused\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#reused\x20>\x200\x20then\x0a\x20\x20\x20\x20return\x20{tonumber(reused[1]),\x201}\x0a\x20\x20end\x0aend\x0alocal\x20n\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20and\x20n\x20==\x201\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x20{n,\x200}\x0a',LUA_RELEASE_NUMBER='\x0aredis.call(\x27ZADD\x27,\x20KEYS[1],\x20ARGV[1],\x20ARGV[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x201\x0a',LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27)\x0alocal\x20prevExpiresAt\x20=\x20h[1]\x0alocal\x20newTtlMs\x20=\x20tonumber(ARGV[2])\x0alocal\x20newExpMs\x20=\x20tonumber(ARGV[3])\x0aredis.call(\x27PEXPIRE\x27,\x20KEYS[1],\x20newTtlMs)\x0aredis.call(\x27HSET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20ARGV[4])\x0aredis.call(\x27ZADD\x27,\x20KEYS[2],\x20newExpMs,\x20ARGV[1])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[2],\x20math.floor(newTtlMs\x20/\x201000)\x20+\x2060)\x0areturn\x20{\x201,\x20prevExpiresAt,\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a';class IdGeneratorError extends Error{constructor(_0x5c4ebe,_0x42dfb5,_0x517839=null){const _0x159037=a0_0x166a1c,_0x51e654={'uSgTs':_0x159037(0x1e4)};super(_0x42dfb5||_0x5c4ebe),this['name']=_0x51e654[_0x159037(0x151)],this[_0x159037(0x22d)]=_0x5c4ebe,this['details']=_0x517839;}}class IdGenerator{constructor(){const _0x1b17da=a0_0x166a1c;this[_0x1b17da(0x193)]=![],this[_0x1b17da(0x15a)]=null,this[_0x1b17da(0x1b4)]=null,this['_idemTTL']=null,this[_0x1b17da(0x20d)]=null,this['_defaultMaxRetry']=null,this['_defaultPinDigits']=null,this[_0x1b17da(0x12b)]=null,this[_0x1b17da(0x152)]=null,this['_counterTTLMap']=null,this[_0x1b17da(0x180)]=null,this[_0x1b17da(0x1bc)]=null;}[a0_0x166a1c(0x150)](){const _0x9ed178=a0_0x166a1c,_0x2b48f2={'esUfK':function(_0x2c685e,_0x3a56df){return _0x2c685e===_0x3a56df;},'yeSlS':_0x9ed178(0x1fd),'YSkAx':function(_0x258a67,_0x756af5,_0xb141c){return _0x258a67(_0x756af5,_0xb141c);},'DKiuL':function(_0x32c22e,_0xcf6222,_0x52f25d){return _0x32c22e(_0xcf6222,_0x52f25d);},'nvBZA':function(_0x2c85f7,_0x45faa3,_0x1e3200){return _0x2c85f7(_0x45faa3,_0x1e3200);}},_0x542782=_0x9ed178(0x1eb)['split']('|');let _0x21a3c4=0x0;while(!![]){switch(_0x542782[_0x21a3c4++]){case'0':this[_0x9ed178(0x193)]=!![];continue;case'1':this['_reserveDefaultTTL']=parseInt(process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'2':this[_0x9ed178(0x15a)]=_0x2b48f2[_0x9ed178(0x1af)](process['env']['IDGEN_ENABLED'],_0x2b48f2[_0x9ed178(0x161)]);continue;case'3':this[_0x9ed178(0x1bc)]=_0x2b48f2['YSkAx'](parseInt,process[_0x9ed178(0x1c9)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'4':this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||'9999-9999';continue;case'5':this[_0x9ed178(0x20d)]=process['env'][_0x9ed178(0x203)]===_0x9ed178(0x1fd);continue;case'6':this['_defaultSerialPattern']=process['env'][_0x9ed178(0x1ee)]||_0x9ed178(0x1aa);continue;case'7':this[_0x9ed178(0x21f)]=parseInt(process[_0x9ed178(0x1c9)][_0x9ed178(0x167)],0xa)||0x258;continue;case'8':this['_defaultMaxRetry']=_0x2b48f2[_0x9ed178(0x15e)](parseInt,process['env'][_0x9ed178(0x20c)],0xa)||0xa;continue;case'9':this[_0x9ed178(0x14b)]=parseInt(process[_0x9ed178(0x1c9)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'10':this[_0x9ed178(0x136)]={'yyyymm':parseInt(process['env'][_0x9ed178(0x1fb)],0xa)||0x2a3000,'yyyymmdd':_0x2b48f2['nvBZA'](parseInt,process[_0x9ed178(0x1c9)][_0x9ed178(0x132)],0xa)||0x2a300};continue;case'11':this['_keyPrefix']=_0x9ed178(0x1dd);continue;case'12':logger[_0x9ed178(0x1ea)]({'event':'idgen_config_init','enabled':this['_enabled'],'idemTTL':this[_0x9ed178(0x21f)],'allowReset':this[_0x9ed178(0x20d)],'defaultMaxRetry':this[_0x9ed178(0x144)],'defaultPinDigits':this[_0x9ed178(0x14b)],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this[_0x9ed178(0x1bc)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);continue;}break;}}['_ensureInitialized'](){const _0x186ae6=a0_0x166a1c;if(!this[_0x186ae6(0x193)])this[_0x186ae6(0x150)]();}get[a0_0x166a1c(0x134)](){const _0x36dc27=a0_0x166a1c;return this[_0x36dc27(0x1ed)](),this[_0x36dc27(0x15a)];}get[a0_0x166a1c(0x18f)](){const _0x2311ed=a0_0x166a1c;return this['_ensureInitialized'](),this[_0x2311ed(0x1b4)];}get[a0_0x166a1c(0x1b8)](){const _0x389647=a0_0x166a1c;return this[_0x389647(0x1ed)](),this['_idemTTL'];}get['allowReset'](){return this['_ensureInitialized'](),this['_allowReset'];}get['defaultMaxRetry'](){const _0x186b04=a0_0x166a1c;return this['_ensureInitialized'](),this[_0x186b04(0x144)];}get['defaultPinDigits'](){const _0x4b80d1=a0_0x166a1c;return this['_ensureInitialized'](),this[_0x4b80d1(0x14b)];}get['defaultSerialPattern'](){const _0x236d5c=a0_0x166a1c;return this[_0x236d5c(0x1ed)](),this[_0x236d5c(0x12b)];}get['defaultCodePattern'](){const _0x25422e=a0_0x166a1c;return this[_0x25422e(0x1ed)](),this[_0x25422e(0x152)];}get['reserveDefaultTTL'](){const _0x322ebd=a0_0x166a1c;return this[_0x322ebd(0x1ed)](),this[_0x322ebd(0x180)];}get[a0_0x166a1c(0x138)](){const _0x126668=a0_0x166a1c;return this[_0x126668(0x1ed)](),this[_0x126668(0x1bc)];}['isEnabled'](){const _0x501578=a0_0x166a1c;return this[_0x501578(0x134)];}[a0_0x166a1c(0x190)](_0x31fa78){const _0x106040=a0_0x166a1c,_0x188af0={'CZeWd':function(_0x5628d2,_0x33a66d){return _0x5628d2!==_0x33a66d;}};if(_0x188af0[_0x106040(0x147)](typeof _0x31fa78,_0x106040(0x175))||!RESOURCE_REGEX['test'](_0x31fa78))throw new IdGeneratorError(_0x106040(0x216),'Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+_0x106040(0x169)+JSON['stringify'](_0x31fa78)+')');}[a0_0x166a1c(0x222)](_0x4df87a){const _0x21420a=a0_0x166a1c,_0x1b42b9={'FMwQw':'IDGEN_INVALID_FORMAT','KkMWY':function(_0x47812e,_0x369a16){return _0x47812e>_0x369a16;},'GOqby':function(_0x193b0e,_0x1c722a){return _0x193b0e!==_0x1c722a;},'fbkCm':_0x21420a(0x175),'odICv':_0x21420a(0x221),'EYRvQ':function(_0x178426,_0x1fe2a2){return _0x178426==_0x1fe2a2;},'rZUUT':function(_0x1ce4f2,_0xeb5193){return _0x1ce4f2!=_0xeb5193;},'Woqii':function(_0x3818dd,_0x47d63c){return _0x3818dd!==_0x47d63c;},'SMzSF':function(_0x7f8267,_0x204fed){return _0x7f8267===_0x204fed;}},{resource:_0x593f47,format:_0x2175a4,prefix:_0xc38b9a,separator:_0x54aa79,numDigits:_0x2cbf59,reuseDelete:_0x1f1a27}=_0x4df87a;this['_validateResource'](_0x593f47);const _0x5102da=typeof _0x2175a4==='string'?_0x2175a4['toLowerCase']():'';if(!ALLOWED_FORMATS[_0x21420a(0x1c0)](_0x5102da))throw new IdGeneratorError(_0x1b42b9[_0x21420a(0x1cf)],_0x21420a(0x18b)+[...ALLOWED_FORMATS]['join'](',\x20')+_0x21420a(0x169)+_0x2175a4+')');if(!Number[_0x21420a(0x1e3)](_0x2cbf59)||_0x2cbf59<MIN_NUM_DIGITS||_0x1b42b9[_0x21420a(0x1f6)](_0x2cbf59,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x21420a(0x160),'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x2cbf59+')');const _0x39a116=_0xc38b9a==null?'':_0xc38b9a;if(_0x1b42b9[_0x21420a(0x1b0)](typeof _0x39a116,_0x1b42b9['fbkCm'])||!PREFIX_REGEX[_0x21420a(0x13a)](_0x39a116))throw new IdGeneratorError(_0x1b42b9[_0x21420a(0x16a)],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON['stringify'](_0xc38b9a)+')');const _0x1921a6=_0x1b42b9['EYRvQ'](_0x54aa79,null)?'':_0x54aa79;if(typeof _0x1921a6!==_0x1b42b9['fbkCm']||_0x1921a6['length']>0x3||SEPARATOR_FORBIDDEN[_0x21420a(0x13a)](_0x1921a6))throw new IdGeneratorError(_0x21420a(0x128),'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x21420a(0x1d2)](_0x54aa79)+')');if(_0x1b42b9['rZUUT'](_0x1f1a27,null)&&_0x1b42b9['Woqii'](typeof _0x1f1a27,_0x21420a(0x194)))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x1f1a27+')');return{'resource':_0x593f47,'format':_0x5102da,'prefix':_0x39a116,'separator':_0x1921a6,'numDigits':_0x2cbf59,'reuseDelete':_0x1b42b9[_0x21420a(0x1cb)](_0x1f1a27,!![])};}['_validatePattern'](_0x471725){const _0x3a26ed=a0_0x166a1c,_0x4ce2db={'uOqzM':'IDGEN_INVALID_PATTERN'};if(typeof _0x471725!=='string'||_0x471725[_0x3a26ed(0x1fe)]===0x0||_0x471725[_0x3a26ed(0x1fe)]>MAX_PATTERN_LENGTH)throw new IdGeneratorError('IDGEN_INVALID_PATTERN','Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x471725&&_0x471725['length'])+')');let _0x465368=![];for(const _0x404ee8 of _0x471725){if(PLACEHOLDER_MAP[_0x404ee8]){_0x465368=!![];break;}}if(!_0x465368)throw new IdGeneratorError(_0x4ce2db[_0x3a26ed(0x17d)],_0x3a26ed(0x1e1));}[a0_0x166a1c(0x1e0)](_0x54b338){const _0x42aff0=a0_0x166a1c,_0xf69d8f={'TlUtc':function(_0x2922c9,_0x1a867b){return _0x2922c9<_0x1a867b;},'xFTOk':'IDGEN_INVALID_TTL'};if(_0x54b338==null)return undefined;if(!Number[_0x42aff0(0x1e3)](_0x54b338)||_0xf69d8f['TlUtc'](_0x54b338,0x1)||_0x54b338>MAX_TTL)throw new IdGeneratorError(_0xf69d8f[_0x42aff0(0x187)],'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x54b338+')');return _0x54b338;}['_validateMaxRetry'](_0x38362c){const _0x2aacbc=a0_0x166a1c,_0x1fcd8a={'VhGjY':function(_0x1fa520,_0x2b9629){return _0x1fa520==_0x2b9629;},'crhJb':function(_0x2677ad,_0x272288){return _0x2677ad>_0x272288;}};if(_0x1fcd8a['VhGjY'](_0x38362c,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x38362c)||_0x38362c<0x1||_0x1fcd8a['crhJb'](_0x38362c,MAX_RETRY_LIMIT))throw new IdGeneratorError(_0x2aacbc(0x211),'Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x2aacbc(0x169)+_0x38362c+')');return _0x38362c;}[a0_0x166a1c(0x165)](_0x53b604){const _0x1f2207=a0_0x166a1c,_0x536b2f={'YzwHR':_0x1f2207(0x175),'lhtFF':function(_0x4788a1,_0x4802dc){return _0x4788a1>_0x4802dc;}};if(_0x53b604==null)return undefined;if(typeof _0x53b604!==_0x536b2f[_0x1f2207(0x13e)]||_0x53b604[_0x1f2207(0x1fe)]===0x0||_0x536b2f[_0x1f2207(0x192)](_0x53b604[_0x1f2207(0x1fe)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x1f2207(0x216),_0x1f2207(0x1b2)+MAX_IDEMPOTENCY_KEY_LENGTH+_0x1f2207(0x1f0));return _0x53b604;}['_validateReserveTTL'](_0x2f5710){const _0x4dc6e6=a0_0x166a1c,_0x5b31c8={'ZDmXD':function(_0x509834,_0x8f8a70){return _0x509834==_0x8f8a70;},'PlzlC':function(_0x3a1b58,_0x4e1ff9){return _0x3a1b58<_0x4e1ff9;}};if(_0x5b31c8[_0x4dc6e6(0x19b)](_0x2f5710,null))return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x2f5710)||_0x5b31c8['PlzlC'](_0x2f5710,MIN_RESERVE_TTL)||_0x2f5710>this[_0x4dc6e6(0x138)])throw new IdGeneratorError(_0x4dc6e6(0x143),'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0x4dc6e6(0x1b6)+_0x2f5710+')');return _0x2f5710;}[a0_0x166a1c(0x17b)](_0x516bbc){const _0x4daae4=a0_0x166a1c,_0x2f2e79={'QyrdI':function(_0x4b5a7b,_0x2d173b){return _0x4b5a7b!==_0x2d173b;},'efyIE':_0x4daae4(0x1b7)};if(_0x2f2e79['QyrdI'](typeof _0x516bbc,'string')||!RESERVATION_TOKEN_REGEX['test'](_0x516bbc))throw new IdGeneratorError(_0x2f2e79[_0x4daae4(0x172)],'Invalid\x20reservation\x20token:\x20must\x20be\x20UUID\x20v4\x20format\x20(got:\x20'+JSON['stringify'](_0x516bbc)+')');return _0x516bbc;}['_pad2'](_0x6c1de4){return String(_0x6c1de4)['padStart'](0x2,'0');}[a0_0x166a1c(0x197)](_0x2a4fd2,_0x16d546,_0x427411=new Date()){const _0x45f436=a0_0x166a1c,_0x41f7a9={'IYwUA':function(_0x3d4c09,_0x3dde4d){return _0x3d4c09||_0x3dde4d;},'isORS':'text','IFRqU':_0x45f436(0x1db),'NwxzH':_0x45f436(0x21b)},_0xa2e5a9=_0x427411['getFullYear'](),_0x3961c6=this['_pad2'](_0x427411['getMonth']()+0x1),_0x19f774=this['_pad2'](_0x427411['getDate']()),_0xcc1eea=_0x41f7a9['IYwUA'](_0x16d546,'_');let _0x3fb179,_0x2190a3='';switch(_0x2a4fd2){case _0x41f7a9['isORS']:_0x3fb179=_0xcc1eea+'_text';break;case _0x41f7a9['IFRqU']:_0x2190a3=''+_0xa2e5a9,_0x3fb179=_0xcc1eea+_0x45f436(0x198)+_0x2190a3;break;case _0x45f436(0x202):_0x2190a3=''+_0xa2e5a9+_0x3961c6,_0x3fb179=_0xcc1eea+_0x45f436(0x1a7)+_0x2190a3;break;case _0x41f7a9[_0x45f436(0x1a8)]:_0x2190a3=''+_0xa2e5a9+_0x3961c6+_0x19f774,_0x3fb179=_0xcc1eea+'_yyyymmdd_'+_0x2190a3;break;default:throw new IdGeneratorError(_0x45f436(0x1c6),'Unknown\x20format:\x20'+_0x2a4fd2);}return{'formatKey':_0x3fb179,'datePrefix':_0x2190a3};}[a0_0x166a1c(0x19d)](_0x2f055f,_0x58c89a){const _0x57fb6e=a0_0x166a1c;return this[_0x57fb6e(0x18f)]+_0x57fb6e(0x14e)+_0x2f055f+':'+_0x58c89a;}[a0_0x166a1c(0x178)](_0x402dd7,_0x1edfb1){return this['keyPrefix']+'reuse:'+_0x402dd7+':'+_0x1edfb1;}[a0_0x166a1c(0x154)](_0x1304e0,_0x36a3c2){return this['keyPrefix']+'meta:'+_0x1304e0+':'+_0x36a3c2;}[a0_0x166a1c(0x1d3)](_0x21096c){const _0x3ce991=a0_0x166a1c;return this[_0x3ce991(0x18f)]+_0x3ce991(0x220)+_0x21096c;}['_buildActiveKey'](_0x4f3058,_0x36618b){const _0x479315=a0_0x166a1c;return this[_0x479315(0x18f)]+'active:'+_0x4f3058+':'+_0x36618b;}[a0_0x166a1c(0x214)](_0x5241fa){const _0x17d9b9=a0_0x166a1c;return this[_0x17d9b9(0x18f)]+_0x17d9b9(0x20b)+_0x5241fa;}[a0_0x166a1c(0x1c3)](_0x423789,_0x111de7){const _0x203822=a0_0x166a1c;return this['keyPrefix']+_0x203822(0x20a)+_0x423789+':'+_0x111de7;}[a0_0x166a1c(0x149)](){return this['keyPrefix']+'rsv:';}[a0_0x166a1c(0x1e7)](_0x24afaa,_0x1c42a8,_0x26f4c6,_0x16adf6){const _0xfbd630={'sOhbD':'idgen'};if(_0x26f4c6)return idempotencyManager['buildDeterministicKey'](_0xfbd630['sOhbD'],_0x24afaa,_0x1c42a8+':'+_0x26f4c6+':'+_0x16adf6);return idempotencyManager['buildDeterministicKey'](_0xfbd630['sOhbD'],_0x24afaa,_0x1c42a8+':'+_0x16adf6);}['_getCounterTTL'](_0xedbbdf){const _0x3b9ed3=a0_0x166a1c;return this[_0x3b9ed3(0x136)][_0xedbbdf]||0x0;}[a0_0x166a1c(0x164)]({format:_0x560d55,prefix:_0x4cee62,datePrefix:_0x2bf28b,separator:_0x5d4b11,numDigits:_0x17f1c6,counterInt:_0x4c4cd9}){const _0x28b40e=a0_0x166a1c,_0x1e6ffa={'vYMyj':function(_0x3f1e6b,_0x46fd33){return _0x3f1e6b-_0x46fd33;},'SkUhz':function(_0x2428d6,_0x5f4ebf){return _0x2428d6(_0x5f4ebf);},'UonXn':function(_0x2e8a6d,_0x4134f0){return _0x2e8a6d===_0x4134f0;},'hVwko':_0x28b40e(0x233)},_0x19c5d7=_0x1e6ffa[_0x28b40e(0x133)](Math[_0x28b40e(0x20e)](0xa,_0x17f1c6),0x1);if(_0x4c4cd9>_0x19c5d7)throw new IdGeneratorError(_0x28b40e(0x1a6),'Counter\x20overflow:\x20'+_0x4c4cd9+'\x20exceeds\x20'+_0x17f1c6+'-digit\x20capacity\x20('+_0x19c5d7+').\x20Increase\x20numDigits.',{'counterInt':_0x4c4cd9,'numDigits':_0x17f1c6,'max':_0x19c5d7});const _0x56a326=_0x1e6ffa[_0x28b40e(0x1ca)](String,_0x4c4cd9)['padStart'](_0x17f1c6,'0');if(_0x1e6ffa['UonXn'](_0x560d55,_0x1e6ffa[_0x28b40e(0x1fa)]))return _0x4cee62?''+_0x4cee62+_0x5d4b11+_0x56a326:_0x56a326;return _0x4cee62?''+_0x4cee62+_0x5d4b11+_0x2bf28b+_0x5d4b11+_0x56a326:''+_0x2bf28b+_0x5d4b11+_0x56a326;}[a0_0x166a1c(0x22f)]({format:_0x64a885,prefix:_0x27339a,separator:_0x2749b2,numDigits:_0x53cf9e,number:_0x1b4f41}){const _0x2526d1=a0_0x166a1c,_0x52dc38={'qVWLg':'string','CZJTL':function(_0x1a2bc7,_0x287ec2){return _0x1a2bc7===_0x287ec2;},'hxwAI':'text','dtKgn':function(_0xa1b9d4,_0x4b4725){return _0xa1b9d4!==_0x4b4725;},'hCXWy':'IDGEN_INVALID_NUMBER','xtfKn':function(_0x4af760,_0x5b47c3){return _0x4af760!==_0x5b47c3;},'VwiWo':_0x2526d1(0x1db),'KYeOJ':_0x2526d1(0x202),'sSFse':function(_0x5c2aec,_0x3cad3d,_0x5340be){return _0x5c2aec(_0x3cad3d,_0x5340be);}};if(typeof _0x1b4f41!==_0x52dc38[_0x2526d1(0x17e)]||_0x1b4f41['length']===0x0)throw new IdGeneratorError(_0x2526d1(0x156),'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x310e69=_0x2749b2||'',_0xc606e7=_0x310e69===''?[_0x1b4f41]:_0x1b4f41['split'](_0x310e69);let _0x1da101='',_0x180398;if(_0x52dc38[_0x2526d1(0x1ad)](_0x64a885,_0x52dc38[_0x2526d1(0x22c)])){if(_0x27339a){if(_0xc606e7[_0x2526d1(0x1fe)]!==0x2||_0x52dc38['dtKgn'](_0xc606e7[0x0],_0x27339a))throw new IdGeneratorError(_0x2526d1(0x156),'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x310e69+'padded\x20(got:\x20'+_0x1b4f41+')');_0x180398=_0xc606e7[0x1];}else{if(_0xc606e7['length']!==0x1)throw new IdGeneratorError(_0x2526d1(0x156),_0x2526d1(0x219)+_0x1b4f41+')');_0x180398=_0xc606e7[0x0];}}else{const _0x1c69f5=_0x27339a?0x3:0x2;if(_0xc606e7['length']!==_0x1c69f5)throw new IdGeneratorError(_0x52dc38[_0x2526d1(0x207)],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x1b4f41+_0x2526d1(0x199)+_0x1c69f5+'\x20parts)');let _0x83e9fe=0x0;if(_0x27339a){if(_0x52dc38[_0x2526d1(0x1d6)](_0xc606e7[_0x83e9fe],_0x27339a))throw new IdGeneratorError(_0x52dc38['hCXWy'],_0x2526d1(0x21e)+_0x27339a+_0x2526d1(0x15f)+_0xc606e7[_0x83e9fe]);_0x83e9fe++;}_0x1da101=_0xc606e7[_0x83e9fe++];const _0xf8a665=_0x52dc38['CZJTL'](_0x64a885,_0x52dc38['VwiWo'])?/^\d{4}$/:_0x64a885===_0x52dc38['KYeOJ']?/^\d{6}$/:/^\d{8}$/;if(!_0xf8a665['test'](_0x1da101))throw new IdGeneratorError(_0x52dc38[_0x2526d1(0x207)],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x64a885+':\x20'+_0x1da101);_0x180398=_0xc606e7[_0x83e9fe];}if(!new RegExp('^\x5cd{'+_0x53cf9e+'}$')['test'](_0x180398))throw new IdGeneratorError(_0x2526d1(0x156),_0x2526d1(0x1bd)+_0x53cf9e+_0x2526d1(0x17f)+_0x180398+')');const _0x141b9a=_0x52dc38['sSFse'](parseInt,_0x180398,0xa),_0xe39327=_0x27339a||'_';let _0xc53f8b;return _0x64a885===_0x52dc38['hxwAI']?_0xc53f8b=_0xe39327+'_text':_0xc53f8b=_0xe39327+'_'+_0x64a885+'_'+_0x1da101,{'formatKey':_0xc53f8b,'counterInt':_0x141b9a,'datePrefix':_0x1da101};}['_generateFromPattern'](_0x5922e4){const _0x2b6f72=a0_0x166a1c;let _0x64bc3d='';for(const _0x3c04b6 of _0x5922e4){const _0x546dd9=PLACEHOLDER_MAP[_0x3c04b6];if(_0x546dd9){const _0x4b40f2=crypto[_0x2b6f72(0x231)](0x0,_0x546dd9['length']);_0x64bc3d+=_0x546dd9[_0x4b40f2];}else _0x64bc3d+=_0x3c04b6;}return _0x64bc3d;}async['_retrieveIdemCache'](_0x11ad1b){const _0x3c7d91=a0_0x166a1c,_0x1d5bf1={'Hnmmj':'idgen_idem_hit','nKobu':'Idempotency\x20cache\x20HIT','tfNEc':_0x3c7d91(0x16f)};if(!_0x11ad1b)return null;try{const _0x52b826=redisClient['getClient'](),_0x5d6f5a=await _0x52b826['get'](_0x11ad1b);if(_0x5d6f5a)return logger['info']({'event':_0x1d5bf1['Hnmmj'],'key':_0x11ad1b},_0x1d5bf1[_0x3c7d91(0x140)]),JSON['parse'](_0x5d6f5a);return null;}catch(_0x236304){return logger[_0x3c7d91(0x19c)]({'event':_0x1d5bf1['tfNEc'],'error':_0x236304[_0x3c7d91(0x1ce)]},'Idempotency\x20retrieve\x20error'),null;}}async[a0_0x166a1c(0x130)](_0x55efee,_0x9ffb71){const _0x56c904=a0_0x166a1c,_0x576e7b={'SDVyP':_0x56c904(0x208),'LmbGP':_0x56c904(0x1bf)};if(!_0x55efee)return;try{const _0x250f9b=redisClient['getClient']();await _0x250f9b['setex'](_0x55efee,this[_0x56c904(0x1b8)],JSON[_0x56c904(0x1d2)](_0x9ffb71));}catch(_0x6156ac){logger['warn']({'event':_0x576e7b['SDVyP'],'error':_0x6156ac['message']},_0x576e7b['LmbGP']);}}async[a0_0x166a1c(0x1d9)](_0x4bd7fc,_0x179891){const _0x261d79=a0_0x166a1c,_0x148160={'lwHqd':'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result','DhgCx':_0x261d79(0x18a)};if(!_0x4bd7fc)return{'stored':!![],'winnerResult':null};try{const _0x380703=redisClient[_0x261d79(0x1ae)](),_0x3279a9=JSON['stringify'](_0x179891),_0x70f989=await _0x380703['set'](_0x4bd7fc,_0x3279a9,'EX',this[_0x261d79(0x1b8)],'NX');if(_0x70f989==='OK')return{'stored':!![],'winnerResult':null};const _0x2f6825=await _0x380703['get'](_0x4bd7fc);if(_0x2f6825)return{'stored':![],'winnerResult':JSON[_0x261d79(0x146)](_0x2f6825)};return logger[_0x261d79(0x19c)]({'event':_0x261d79(0x1c2),'key':_0x4bd7fc},_0x148160['lwHqd']),{'stored':!![],'winnerResult':null};}catch(_0x509263){return logger['warn']({'event':_0x148160[_0x261d79(0x166)],'error':_0x509263[_0x261d79(0x1ce)]},_0x261d79(0x159)),{'stored':!![],'winnerResult':null};}}async[a0_0x166a1c(0x215)](_0x245432,_0x3790ef,_0x29e387){const _0xf5b80d=a0_0x166a1c,_0x78ad19={'mXKmj':_0xf5b80d(0x22b)};try{const _0x485847=redisClient['getClient']();if(_0x29e387){const _0x5cff7b=this[_0xf5b80d(0x12e)](_0x245432,_0x3790ef);await _0x485847['del'](_0x5cff7b);}else{const _0x5366e2=this[_0xf5b80d(0x1d3)](_0x245432);await _0x485847[_0xf5b80d(0x155)](_0x5366e2,_0x3790ef);}}catch(_0x275913){logger['warn']({'event':'idgen_random_undo_error','error':_0x275913['message']},_0x78ad19['mXKmj']);}}async['_updateMeta'](_0x1c835e,_0x11e39b,_0x40b2b4,_0x533f00=0x0){const _0x5edeee=a0_0x166a1c,_0x154182={'aqgiP':function(_0x3b5b13,_0x42fda1){return _0x3b5b13>_0x42fda1;},'GIguN':_0x5edeee(0x171)};try{const _0x271580=redisClient[_0x5edeee(0x1ae)](),_0x30ad4e=this[_0x5edeee(0x154)](_0x1c835e,_0x11e39b),_0xdac605=[];for(const [_0x1725d2,_0xda08f3]of Object['entries'](_0x40b2b4)){_0xdac605['push'](_0x1725d2,String(_0xda08f3));}if(_0x154182['aqgiP'](_0xdac605[_0x5edeee(0x1fe)],0x0)){await _0x271580[_0x5edeee(0x148)](_0x30ad4e,..._0xdac605);if(_0x154182['aqgiP'](_0x533f00,0x0))await _0x271580['expire'](_0x30ad4e,_0x533f00);}}catch(_0x107ab3){logger[_0x5edeee(0x19c)]({'event':'idgen_meta_update_error','error':_0x107ab3['message']},_0x154182[_0x5edeee(0x185)]);}}async[a0_0x166a1c(0x213)](_0x645ee0){const _0x81fad=a0_0x166a1c,_0x2fff27={'GvaAU':function(_0x1a1bb6,_0x49362d){return _0x1a1bb6(_0x49362d);},'GkWVd':function(_0x4a350d,_0x2d49c3){return _0x4a350d===_0x2d49c3;},'fYFdq':'idgen_idem_loser_release_error','DXLQd':'idgen_number_idem_loser','QjluQ':_0x81fad(0x17c)};if(!this[_0x81fad(0x134)])throw new IdGeneratorError(_0x81fad(0x141),_0x81fad(0x18d));const _0x311162=this['_validateNumberParams'](_0x645ee0),_0x5bd520=this[_0x81fad(0x165)](_0x645ee0[_0x81fad(0x1c1)]),{resource:_0x31e35a,format:_0x4936e3,prefix:_0x6cfe00,separator:_0xd41554,numDigits:_0x24ff45,reuseDelete:_0x7941a6}=_0x311162,{formatKey:_0x2ca911,datePrefix:_0x48c7de}=this['_buildFormatKey'](_0x4936e3,_0x6cfe00),_0x22a992=this['_buildSeqKey'](_0x31e35a,_0x2ca911),_0x234597=this[_0x81fad(0x178)](_0x31e35a,_0x2ca911),_0x575c72=this[_0x81fad(0x210)](_0x4936e3);let _0x301a41=null;if(_0x5bd520){_0x301a41=this[_0x81fad(0x1e7)]('number',_0x31e35a,_0x2ca911,_0x5bd520);const _0x56ba38=await this['_retrieveIdemCache'](_0x301a41);if(_0x56ba38)return _0x56ba38;}const _0x4480af=redisClient['getClient'](),_0x1c37ed=await _0x4480af['eval'](LUA_GENERATE_NUMBER,0x2,_0x22a992,_0x234597,_0x7941a6?'1':'0',_0x2fff27['GvaAU'](String,_0x575c72)),_0x1a0787=_0x1c37ed[0x0],_0x4be76b=_0x2fff27['GkWVd'](_0x1c37ed[0x1],0x1),_0x5133ce=this[_0x81fad(0x164)]({'format':_0x4936e3,'prefix':_0x6cfe00,'datePrefix':_0x48c7de,'separator':_0xd41554,'numDigits':_0x24ff45,'counterInt':_0x1a0787}),_0x5eaefd={'value':_0x5133ce,'counter':_0x1a0787,'resource':_0x31e35a,'formatKey':_0x2ca911,'isReused':_0x4be76b,'generatedAt':new Date()[_0x81fad(0x22a)]()},_0x5e6b54=await this[_0x81fad(0x1d9)](_0x301a41,_0x5eaefd);if(!_0x5e6b54['stored']){try{await _0x4480af[_0x81fad(0x20f)](LUA_RELEASE_NUMBER,0x1,_0x234597,String(_0x1a0787),String(_0x575c72));}catch(_0x47261f){logger['warn']({'event':_0x2fff27[_0x81fad(0x1a2)],'error':_0x47261f[_0x81fad(0x1ce)],'resource':_0x31e35a,'formatKey':_0x2ca911,'counterInt':_0x1a0787},_0x81fad(0x1fc));}return logger[_0x81fad(0x1ea)]({'event':_0x2fff27['DXLQd'],'resource':_0x31e35a,'formatKey':_0x2ca911,'counter':_0x1a0787},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x5e6b54['winnerResult'];}return this['_updateMeta'](_0x31e35a,_0x2ca911,{'lastValue':_0x5133ce,'lastCounter':_0x1a0787,'lastIsReused':_0x4be76b,'lastGeneratedAt':_0x5eaefd[_0x81fad(0x16c)]},_0x575c72),logger['info']({'event':_0x2fff27['QjluQ'],'resource':_0x31e35a,'formatKey':_0x2ca911,'counter':_0x1a0787,'isReused':_0x4be76b},'ID\x20Generator\x20number:\x20'+_0x5133ce),_0x5eaefd;}async['releaseNumber'](_0x4125f2){const _0x4acb11=a0_0x166a1c,_0x17f39f={'nGbGm':function(_0x20c0b9,_0x540cd0){return _0x20c0b9!==_0x540cd0;},'Cuzcv':_0x4acb11(0x175),'AjzqR':function(_0x3e1947,_0x55438f){return _0x3e1947===_0x55438f;},'NDLCj':_0x4acb11(0x156),'uGOFB':'release','OtSYz':function(_0x13cdba,_0x121ade){return _0x13cdba(_0x121ade);}};if(!this[_0x4acb11(0x134)])throw new IdGeneratorError('IDGEN_DISABLED',_0x4acb11(0x1a9));let _0x1f027f,_0x36b059,_0x39455d,_0x49b70c;const _0x58bbec=this[_0x4acb11(0x165)](_0x4125f2[_0x4acb11(0x1c1)]);if(_0x17f39f[_0x4acb11(0x232)](_0x4125f2['counterInt'],undefined)&&_0x4125f2[_0x4acb11(0x1e2)]!==null){this[_0x4acb11(0x190)](_0x4125f2['resource']),_0x1f027f=_0x4125f2['resource'];if(_0x17f39f['nGbGm'](typeof _0x4125f2['formatKey'],_0x17f39f[_0x4acb11(0x22e)])||_0x17f39f['AjzqR'](_0x4125f2[_0x4acb11(0x157)]['length'],0x0))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x4acb11(0x177));_0x36b059=_0x4125f2['formatKey'];if(!Number['isInteger'](_0x4125f2[_0x4acb11(0x1e2)])||_0x4125f2[_0x4acb11(0x1e2)]<0x1)throw new IdGeneratorError(_0x17f39f['NDLCj'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x4125f2['counterInt']+')');_0x39455d=_0x4125f2[_0x4acb11(0x1e2)];const _0x165ef4=_0x36b059[_0x4acb11(0x195)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x49b70c=_0x165ef4?_0x165ef4[0x1]:'text';}else{const _0x120f5a=this['_validateNumberParams'](_0x4125f2),_0x316b3f=this[_0x4acb11(0x22f)]({'format':_0x120f5a[_0x4acb11(0x1f5)],'prefix':_0x120f5a['prefix'],'separator':_0x120f5a['separator'],'numDigits':_0x120f5a[_0x4acb11(0x145)],'number':_0x4125f2[_0x4acb11(0x213)]});_0x1f027f=_0x120f5a['resource'],_0x36b059=_0x316b3f['formatKey'],_0x39455d=_0x316b3f['counterInt'],_0x49b70c=_0x120f5a[_0x4acb11(0x1f5)];}const _0x25cfb1=this['_buildReuseKey'](_0x1f027f,_0x36b059),_0x55ea8c=this['_getCounterTTL'](_0x49b70c);let _0x470676=null;if(_0x58bbec){_0x470676=this[_0x4acb11(0x1e7)](_0x17f39f['uGOFB'],_0x1f027f,_0x36b059,_0x58bbec);const _0x1cc2a2=await this['_retrieveIdemCache'](_0x470676);if(_0x1cc2a2)return _0x1cc2a2;}const _0x44c1c6=redisClient[_0x4acb11(0x1ae)]();await _0x44c1c6['eval'](LUA_RELEASE_NUMBER,0x1,_0x25cfb1,String(_0x39455d),_0x17f39f['OtSYz'](String,_0x55ea8c));const _0xdc7c3f={'released':!![],'resource':_0x1f027f,'formatKey':_0x36b059,'counter':_0x39455d,'releasedAt':new Date()['toISOString']()};return await this['_storeIdemCache'](_0x470676,_0xdc7c3f),this['_updateMeta'](_0x1f027f,_0x36b059,{'lastReleasedCounter':_0x39455d,'lastReleasedAt':_0xdc7c3f['releasedAt']},_0x55ea8c),logger[_0x4acb11(0x1ea)]({'event':_0x4acb11(0x1f9),'resource':_0x1f027f,'formatKey':_0x36b059,'counter':_0x39455d},_0x4acb11(0x206)+_0x39455d),_0xdc7c3f;}async[a0_0x166a1c(0x14c)](_0x570fd5){const _0x5e8289=a0_0x166a1c,_0x104294={'UlkFE':'IDGEN_DISABLED','jSWzu':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','hHbRH':_0x5e8289(0x1d7),'SIjvd':function(_0x5305be,_0x1fedd7){return _0x5305be*_0x1fedd7;},'NVrXL':'resource','qHjSK':_0x5e8289(0x228),'mfgCE':'separator','HoeaQ':_0x5e8289(0x15b),'fJVOj':_0x5e8289(0x18c),'cejfl':_0x5e8289(0x1d8),'JHpMr':function(_0x3e0c91,_0x38147a){return _0x3e0c91(_0x38147a);},'QbqLI':_0x5e8289(0x1f1),'NFuQx':function(_0x39c3c4,_0x496782){return _0x39c3c4(_0x496782);},'fwjIY':_0x5e8289(0x1a1),'LqsiW':'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser','FNhcd':_0x5e8289(0x1df),'gukSG':'idgen_number_reserved'};if(!this[_0x5e8289(0x134)])throw new IdGeneratorError(_0x104294['UlkFE'],_0x104294[_0x5e8289(0x1ec)]);const _0x5cd68e=this['_validateNumberParams'](_0x570fd5),_0x2954bc=this[_0x5e8289(0x1f7)](_0x570fd5['ttl']),_0xc14cb8=this[_0x5e8289(0x165)](_0x570fd5[_0x5e8289(0x1c1)]),{resource:_0x500943,format:_0x6347f2,prefix:_0x1b251c,separator:_0xaa24f7,numDigits:_0x4b7cb3,reuseDelete:_0x486975}=_0x5cd68e,{formatKey:_0x17b512,datePrefix:_0x4d5b1c}=this['_buildFormatKey'](_0x6347f2,_0x1b251c),_0x2270f3=this['_buildSeqKey'](_0x500943,_0x17b512),_0x24bea2=this[_0x5e8289(0x178)](_0x500943,_0x17b512),_0xad8768=this[_0x5e8289(0x1c3)](_0x500943,_0x17b512),_0x4606a2=this['_getCounterTTL'](_0x6347f2);let _0x4017c5=null;if(_0xc14cb8){_0x4017c5=this[_0x5e8289(0x1e7)](_0x104294[_0x5e8289(0x12f)],_0x500943,_0x17b512,_0xc14cb8);const _0x199409=await this[_0x5e8289(0x1a5)](_0x4017c5);if(_0x199409)return _0x199409;}const _0x29804f=crypto['randomUUID'](),_0x3c4e61=this[_0x5e8289(0x214)](_0x29804f),_0x5a4300=this['_buildReservationKeyPrefix'](),_0x560835=Date['now'](),_0x252749=_0x560835+_0x104294[_0x5e8289(0x224)](_0x2954bc,0x3e8),_0x41682b=_0x104294['SIjvd'](_0x2954bc,0x3e8),_0x161498=new Date(_0x560835)[_0x5e8289(0x22a)](),_0x4a32bd=new Date(_0x252749)[_0x5e8289(0x22a)](),_0x74cfff=[_0x104294['NVrXL'],_0x500943,_0x5e8289(0x157),_0x17b512,_0x5e8289(0x1f5),_0x6347f2,_0x104294['qHjSK'],_0x1b251c,_0x104294['mfgCE'],_0xaa24f7,'numDigits',String(_0x4b7cb3),_0x104294[_0x5e8289(0x131)],_0x4d5b1c||'',_0x104294[_0x5e8289(0x200)],_0x161498,_0x5e8289(0x13f),_0x4a32bd,_0x5e8289(0x181),String(_0x41682b)];_0xc14cb8&&_0x74cfff[_0x5e8289(0x1f2)](_0x104294[_0x5e8289(0x162)],_0xc14cb8);const _0x59508a=redisClient[_0x5e8289(0x1ae)](),_0x54d00f=await _0x59508a['eval'](LUA_RESERVE_NUMBER,0x3,_0x2270f3,_0x24bea2,_0xad8768,_0x486975?'1':'0',String(_0x4606a2),_0x29804f,_0x3c4e61,_0x104294[_0x5e8289(0x236)](String,_0x41682b),_0x104294[_0x5e8289(0x236)](String,_0x252749),_0x104294[_0x5e8289(0x236)](String,_0x560835),_0x5a4300,..._0x74cfff),_0x269835=_0x54d00f[0x0],_0x1c1407=_0x54d00f[0x1]===0x1,_0x3700d8=_0x54d00f[0x2]||0x0;let _0x4fd951;try{_0x4fd951=this[_0x5e8289(0x164)]({'format':_0x6347f2,'prefix':_0x1b251c,'datePrefix':_0x4d5b1c,'separator':_0xaa24f7,'numDigits':_0x4b7cb3,'counterInt':_0x269835});}catch(_0x207dd7){try{await _0x59508a['eval'](LUA_CANCEL_RESERVATION,0x3,_0x3c4e61,_0xad8768,_0x24bea2,_0x29804f,_0x104294['JHpMr'](String,_0x4606a2));}catch(_0x484afe){logger[_0x5e8289(0x19c)]({'event':_0x5e8289(0x204),'error':_0x484afe['message'],'resource':_0x500943,'formatKey':_0x17b512,'counterInt':_0x269835,'token':_0x29804f},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x207dd7;}try{await _0x59508a['hset'](_0x3c4e61,_0x5e8289(0x205),_0x4fd951);}catch(_0x3d84b8){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x3d84b8[_0x5e8289(0x1ce)],'resource':_0x500943,'formatKey':_0x17b512,'counterInt':_0x269835,'token':_0x29804f},_0x104294['QbqLI']);}const _0x1e38c0={'token':_0x29804f,'value':_0x4fd951,'counter':_0x269835,'resource':_0x500943,'formatKey':_0x17b512,'isReused':_0x1c1407,'createdAt':_0x161498,'expiresAt':_0x4a32bd,'reapedCount':_0x3700d8},_0x441ad7=await this[_0x5e8289(0x1d9)](_0x4017c5,_0x1e38c0);if(!_0x441ad7[_0x5e8289(0x196)]){try{await _0x59508a['eval'](LUA_CANCEL_RESERVATION,0x3,_0x3c4e61,_0xad8768,_0x24bea2,_0x29804f,_0x104294['NFuQx'](String,_0x4606a2));}catch(_0x484b36){logger['warn']({'event':_0x104294['fwjIY'],'error':_0x484b36['message'],'resource':_0x500943,'formatKey':_0x17b512,'counterInt':_0x269835,'token':_0x29804f},_0x104294[_0x5e8289(0x21a)]);}return logger[_0x5e8289(0x1ea)]({'event':_0x104294['FNhcd'],'resource':_0x500943,'formatKey':_0x17b512,'counter':_0x269835,'token':_0x29804f},_0x5e8289(0x218)),_0x441ad7[_0x5e8289(0x209)];}return this['_updateMeta'](_0x500943,_0x17b512,{'lastReservedCounter':_0x269835,'lastReservedAt':_0x161498,'lastReapedCount':_0x3700d8},_0x4606a2),logger['info']({'event':_0x104294['gukSG'],'resource':_0x500943,'formatKey':_0x17b512,'counter':_0x269835,'isReused':_0x1c1407,'token':_0x29804f,'ttl':_0x2954bc,'reapedCount':_0x3700d8},'ID\x20Generator\x20number\x20reserved:\x20'+_0x4fd951+_0x5e8289(0x189)+_0x29804f+')'),_0x1e38c0;}async['confirmReservation'](_0x527768){const _0x185419=a0_0x166a1c,_0x3ab25f={'XBeJD':_0x185419(0x141),'PsmGh':'ID\x20Generator\x20is\x20disabled','wVdBC':_0x185419(0x217),'muQql':function(_0x549924,_0x2c7268){return _0x549924!==_0x2c7268;},'bnpLM':_0x185419(0x12d),'VqIwB':function(_0x122c88,_0x433496,_0x404c5b){return _0x122c88(_0x433496,_0x404c5b);},'QzCiK':_0x185419(0x233)};if(!this[_0x185419(0x134)])throw new IdGeneratorError(_0x3ab25f[_0x185419(0x17a)],_0x3ab25f[_0x185419(0x1d0)]);const _0x89996e=this['_validateReservationToken'](_0x527768&&_0x527768['token']),_0x58e56a=this['_validateIdempotencyKey'](_0x527768&&_0x527768[_0x185419(0x1c1)]);let _0x6bc258=null;if(_0x58e56a){_0x6bc258=idempotencyManager['buildDeterministicKey'](_0x185419(0x168),_0x3ab25f['wVdBC'],_0x89996e+':'+_0x58e56a);const _0x63b8a6=await this['_retrieveIdemCache'](_0x6bc258);if(_0x63b8a6)return _0x63b8a6;}const _0x47431a=await this['_getReservationContext'](_0x89996e),_0x1ae749=redisClient['getClient'](),_0x32531c=await _0x1ae749[_0x185419(0x20f)](LUA_CONFIRM_RESERVATION,0x2,_0x47431a['rsvKey'],_0x47431a[_0x185419(0x173)],_0x89996e);if(!_0x32531c||_0x3ab25f[_0x185419(0x127)](_0x32531c[0x0],0x1))throw new IdGeneratorError(_0x3ab25f[_0x185419(0x1ba)],_0x185419(0x16d)+_0x89996e,{'token':_0x89996e});const _0x451c2d=_0x3ab25f[_0x185419(0x1ff)](parseInt,_0x32531c[0x1],0xa),_0x307cea=_0x32531c[0x2],_0x172928=_0x32531c[0x3],_0x1dd73e=new Date()[_0x185419(0x22a)](),_0x5b2a38={'confirmed':!![],'token':_0x89996e,'value':_0x307cea,'counter':_0x451c2d,'resource':_0x47431a['resource'],'formatKey':_0x172928,'confirmedAt':_0x1dd73e};await this['_storeIdemCache'](_0x6bc258,_0x5b2a38);const _0x4382b4=_0x172928['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x2c187c=_0x4382b4?_0x4382b4[0x1]:_0x3ab25f['QzCiK'],_0x30f6f4=this['_getCounterTTL'](_0x2c187c);return this['_updateMeta'](_0x47431a['resource'],_0x172928,{'lastConfirmedCounter':_0x451c2d,'lastConfirmedAt':_0x1dd73e},_0x30f6f4),logger[_0x185419(0x1ea)]({'event':'idgen_reservation_confirmed','resource':_0x47431a['resource'],'formatKey':_0x172928,'counter':_0x451c2d,'token':_0x89996e},_0x185419(0x153)+_0x307cea+_0x185419(0x189)+_0x89996e+')'),_0x5b2a38;}async['cancelReservation'](_0x267c47){const _0x57322e=a0_0x166a1c,_0x2ae3ff={'YYkQx':'idgen','eTbpa':'reserve_cancel','QSXBF':'text','EpEBA':function(_0x5ae534,_0x3b55be){return _0x5ae534(_0x3b55be);},'sCEjI':function(_0x333230,_0x37feba){return _0x333230!==_0x37feba;}};if(!this[_0x57322e(0x134)])throw new IdGeneratorError(_0x57322e(0x141),'ID\x20Generator\x20is\x20disabled');const _0x542e50=this[_0x57322e(0x17b)](_0x267c47&&_0x267c47['token']),_0x20c6fe=this[_0x57322e(0x165)](_0x267c47&&_0x267c47[_0x57322e(0x1c1)]);let _0x5e2cee=null;if(_0x20c6fe){_0x5e2cee=idempotencyManager['buildDeterministicKey'](_0x2ae3ff['YYkQx'],_0x2ae3ff['eTbpa'],_0x542e50+':'+_0x20c6fe);const _0x69d07d=await this['_retrieveIdemCache'](_0x5e2cee);if(_0x69d07d)return _0x69d07d;}const _0xc4809e=await this['_getReservationContext'](_0x542e50),_0x5f8120=this['_buildReuseKey'](_0xc4809e['resource'],_0xc4809e[_0x57322e(0x157)]),_0x34e2a3=_0xc4809e[_0x57322e(0x157)][_0x57322e(0x195)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3cf55a=_0x34e2a3?_0x34e2a3[0x1]:_0x2ae3ff['QSXBF'],_0x416a7d=this[_0x57322e(0x210)](_0x3cf55a),_0x36a2e8=redisClient['getClient'](),_0x484d37=await _0x36a2e8[_0x57322e(0x20f)](LUA_CANCEL_RESERVATION,0x3,_0xc4809e['rsvKey'],_0xc4809e[_0x57322e(0x173)],_0x5f8120,_0x542e50,_0x2ae3ff['EpEBA'](String,_0x416a7d));if(!_0x484d37||_0x2ae3ff['sCEjI'](_0x484d37[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x542e50,{'token':_0x542e50});const _0x361cc6=parseInt(_0x484d37[0x1],0xa),_0x3948d2=_0x484d37[0x2],_0x477597=_0x484d37[0x3],_0x3f754=new Date()[_0x57322e(0x22a)](),_0x3e31d4={'cancelled':!![],'token':_0x542e50,'value':_0x3948d2,'counter':_0x361cc6,'resource':_0xc4809e[_0x57322e(0x1b9)],'formatKey':_0x477597,'releasedToReuse':!![],'cancelledAt':_0x3f754};return await this[_0x57322e(0x130)](_0x5e2cee,_0x3e31d4),this[_0x57322e(0x135)](_0xc4809e['resource'],_0x477597,{'lastCancelledCounter':_0x361cc6,'lastCancelledAt':_0x3f754},_0x416a7d),logger[_0x57322e(0x1ea)]({'event':_0x57322e(0x235),'resource':_0xc4809e['resource'],'formatKey':_0x477597,'counter':_0x361cc6,'token':_0x542e50},_0x57322e(0x234)+_0x3948d2+_0x57322e(0x189)+_0x542e50+')'),_0x3e31d4;}async[a0_0x166a1c(0x184)](_0x253357){const _0x44ea47=a0_0x166a1c,_0x3ceeec={'sdWbi':function(_0x4e3cde,_0x33bbe4){return _0x4e3cde+_0x33bbe4;},'GZccX':function(_0x47b72a,_0x34ee39){return _0x47b72a*_0x34ee39;},'lzVYd':function(_0x1a5738,_0x62daef){return _0x1a5738*_0x62daef;}};if(!this[_0x44ea47(0x134)])throw new IdGeneratorError(_0x44ea47(0x141),'ID\x20Generator\x20is\x20disabled');const _0x490978=this[_0x44ea47(0x17b)](_0x253357&&_0x253357['token']),_0x2ccad2=this['_validateReserveTTL'](_0x253357&&_0x253357['ttl']),_0x65f87e=this['_validateIdempotencyKey'](_0x253357&&_0x253357[_0x44ea47(0x1c1)]);let _0x42e3e4=null;if(_0x65f87e){_0x42e3e4=idempotencyManager[_0x44ea47(0x137)]('idgen','reserve_extend',_0x490978+':'+_0x65f87e);const _0x26d688=await this['_retrieveIdemCache'](_0x42e3e4);if(_0x26d688)return _0x26d688;}const _0x24a575=await this[_0x44ea47(0x201)](_0x490978),_0x738b53=Date[_0x44ea47(0x18e)](),_0x5d913b=_0x3ceeec['sdWbi'](_0x738b53,_0x3ceeec[_0x44ea47(0x229)](_0x2ccad2,0x3e8)),_0x21ee5d=_0x3ceeec[_0x44ea47(0x1de)](_0x2ccad2,0x3e8),_0x672a1=new Date(_0x5d913b)[_0x44ea47(0x22a)](),_0x551fb5=redisClient['getClient'](),_0x555063=await _0x551fb5[_0x44ea47(0x20f)](LUA_EXTEND_RESERVATION,0x2,_0x24a575['rsvKey'],_0x24a575[_0x44ea47(0x173)],_0x490978,String(_0x21ee5d),String(_0x5d913b),_0x672a1);if(!_0x555063||_0x555063[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x44ea47(0x16d)+_0x490978,{'token':_0x490978});const _0xd9477a=_0x555063[0x1],_0xa6e735=parseInt(_0x555063[0x2],0xa),_0x4e382c=_0x555063[0x3],_0x33a21a=_0x555063[0x4],_0x162b1c=new Date(_0x738b53)[_0x44ea47(0x22a)](),_0x4341da={'extended':!![],'token':_0x490978,'previousExpiresAt':_0xd9477a,'expiresAt':_0x672a1,'ttlMs':_0x21ee5d,'resource':_0x24a575['resource'],'formatKey':_0x33a21a,'counter':_0xa6e735,'value':_0x4e382c,'extendedAt':_0x162b1c};await this['_storeIdemCache'](_0x42e3e4,_0x4341da);const _0xbdce90=_0x33a21a[_0x44ea47(0x195)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x13d51f=_0xbdce90?_0xbdce90[0x1]:'text',_0x9fc548=this[_0x44ea47(0x210)](_0x13d51f);return this[_0x44ea47(0x135)](_0x24a575['resource'],_0x33a21a,{'lastExtendedCounter':_0xa6e735,'lastExtendedAt':_0x162b1c},_0x9fc548),logger['info']({'event':'idgen_reservation_extended','resource':_0x24a575['resource'],'formatKey':_0x33a21a,'counter':_0xa6e735,'token':_0x490978,'ttl':_0x2ccad2},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x4e382c+'\x20(token='+_0x490978+',\x20+'+_0x2ccad2+'s)'),_0x4341da;}async[a0_0x166a1c(0x158)](_0x956bc4){const _0x3e4c93=a0_0x166a1c,_0x3ee388={'Nkijy':'IDGEN_RESERVATION_NOT_FOUND','GQRmr':function(_0x335034,_0x1a91e4,_0x319ec5){return _0x335034(_0x1a91e4,_0x319ec5);},'JpRVm':function(_0x3df1e6,_0x4b58cd){return _0x3df1e6===_0x4b58cd;},'UPMxr':function(_0x45eea2,_0x352ea3){return _0x45eea2===_0x352ea3;},'WDgJw':'number'};if(!this[_0x3e4c93(0x134)])throw new IdGeneratorError('IDGEN_DISABLED',_0x3e4c93(0x1a9));const _0x1567e1=this['_validateReservationToken'](_0x956bc4&&_0x956bc4['token']),_0x11c481=this['_buildReservationKey'](_0x1567e1),_0x5dc177=redisClient['getClient'](),_0x50e36d=_0x5dc177['pipeline']();_0x50e36d[_0x3e4c93(0x1f8)](_0x11c481),_0x50e36d[_0x3e4c93(0x14f)](_0x11c481);const _0x24e1b8=await _0x50e36d['exec'](),_0x2f0db0=_0x24e1b8&&_0x24e1b8[0x0]&&_0x24e1b8[0x0][0x1],_0x2f80cc=_0x24e1b8&&_0x24e1b8[0x1]&&_0x24e1b8[0x1][0x1];if(!_0x2f0db0||Object['keys'](_0x2f0db0)[_0x3e4c93(0x1fe)]===0x0)throw new IdGeneratorError(_0x3ee388['Nkijy'],_0x3e4c93(0x16d)+_0x1567e1,{'token':_0x1567e1});return{'token':_0x1567e1,'resource':_0x2f0db0[_0x3e4c93(0x1b9)]||null,'formatKey':_0x2f0db0[_0x3e4c93(0x157)]||null,'format':_0x2f0db0[_0x3e4c93(0x1f5)]||null,'prefix':_0x2f0db0[_0x3e4c93(0x228)]||'','separator':_0x2f0db0[_0x3e4c93(0x163)]||'','numDigits':_0x2f0db0['numDigits']?_0x3ee388[_0x3e4c93(0x1da)](parseInt,_0x2f0db0[_0x3e4c93(0x145)],0xa):null,'datePrefix':_0x2f0db0[_0x3e4c93(0x15b)]||'','counter':_0x2f0db0[_0x3e4c93(0x142)]?parseInt(_0x2f0db0[_0x3e4c93(0x142)],0xa):null,'value':_0x2f0db0[_0x3e4c93(0x205)]||null,'isReused':_0x3ee388[_0x3e4c93(0x19a)](_0x2f0db0[_0x3e4c93(0x1d5)],'1')||_0x2f0db0[_0x3e4c93(0x1d5)]===0x1,'createdAt':_0x2f0db0[_0x3e4c93(0x18c)]||null,'expiresAt':_0x2f0db0['expiresAt']||null,'ttlRemainingMs':_0x3ee388['UPMxr'](typeof _0x2f80cc,_0x3ee388['WDgJw'])&&_0x2f80cc>=0x0?_0x2f80cc:null};}async[a0_0x166a1c(0x201)](_0x146ed5){const _0x1c694c=a0_0x166a1c,_0x1d5d60={'ulkLR':'resource'},_0x580820=this[_0x1c694c(0x214)](_0x146ed5),_0x11f98b=redisClient[_0x1c694c(0x1ae)](),_0x4f82c0=await _0x11f98b[_0x1c694c(0x1e5)](_0x580820,_0x1d5d60['ulkLR'],'formatKey'),_0x5b99aa=_0x4f82c0&&_0x4f82c0[0x0],_0xbd221d=_0x4f82c0&&_0x4f82c0[0x1];if(!_0x5b99aa||!_0xbd221d)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x146ed5,{'token':_0x146ed5});return{'resource':_0x5b99aa,'formatKey':_0xbd221d,'rsvKey':_0x580820,'rsvIdxKey':this['_buildReservationIndexKey'](_0x5b99aa,_0xbd221d)};}async[a0_0x166a1c(0x212)](_0x1772c6){const _0x4f8d70=a0_0x166a1c,_0xa14383={'fliQI':_0x4f8d70(0x1a9),'tjGxi':function(_0x3b112c,_0x370e38){return _0x3b112c===_0x370e38;},'adYXw':function(_0xb3f65c,_0x429d42){return _0xb3f65c<_0x429d42;},'hgmoG':function(_0x274762,_0x4930b5){return _0x274762===_0x4930b5;},'mnymD':function(_0x5ce967,_0x43eaf6){return _0x5ce967===_0x43eaf6;},'FICey':_0x4f8d70(0x176),'UonEC':function(_0x3bef8e,_0x355e86){return _0x3bef8e+_0x355e86;},'ulbwq':function(_0x2b673b,_0x2a2c9){return _0x2b673b*_0x2a2c9;},'RzjSH':function(_0xc2e860,_0x32bfea){return _0xc2e860||_0x32bfea;}};if(!this[_0x4f8d70(0x134)])throw new IdGeneratorError('IDGEN_DISABLED',_0xa14383['fliQI']);this['_validateResource'](_0x1772c6[_0x4f8d70(0x1b9)]),this[_0x4f8d70(0x21c)](_0x1772c6['pattern']);const _0x526397=this[_0x4f8d70(0x1e0)](_0x1772c6[_0x4f8d70(0x1a4)]),_0x125eab=this['_validateMaxRetry'](_0x1772c6[_0x4f8d70(0x1b1)]),_0x395b76=this[_0x4f8d70(0x165)](_0x1772c6[_0x4f8d70(0x1c1)]),_0x392229=_0xa14383[_0x4f8d70(0x15d)](_0x1772c6['ensureUnique'],!![]),{resource:_0x3ce527,pattern:_0x3f71a3}=_0x1772c6;let _0x4bbdd2=null;if(_0x395b76){_0x4bbdd2=this[_0x4f8d70(0x1e7)](_0x4f8d70(0x212),_0x3ce527,null,_0x395b76);const _0x40681f=await this['_retrieveIdemCache'](_0x4bbdd2);if(_0x40681f)return _0x40681f;}const _0x45cb62=redisClient['getClient']();let _0xfef76=null,_0x14cd53=0x0;if(!_0x392229)_0xfef76=this['_generateFromPattern'](_0x3f71a3),_0x14cd53=0x1;else{for(let _0x39e8b4=0x0;_0xa14383['adYXw'](_0x39e8b4,_0x125eab);_0x39e8b4++){_0x14cd53++;const _0x466f71=this['_generateFromPattern'](_0x3f71a3);if(_0x526397){const _0x3e63cf=this['_buildActiveKey'](_0x3ce527,_0x466f71),_0x2034c6=await _0x45cb62['set'](_0x3e63cf,'1','EX',_0x526397,'NX');if(_0xa14383['hgmoG'](_0x2034c6,'OK')){_0xfef76=_0x466f71;break;}}else{const _0x29fdc0=this['_buildIssuedKey'](_0x3ce527),_0x5243a4=await _0x45cb62['sadd'](_0x29fdc0,_0x466f71);if(_0xa14383[_0x4f8d70(0x1cd)](_0x5243a4,0x1)){_0xfef76=_0x466f71;break;}}}if(_0xa14383['tjGxi'](_0xfef76,null))throw new IdGeneratorError(_0xa14383[_0x4f8d70(0x1c5)],_0x4f8d70(0x191)+_0x125eab+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x3ce527,'pattern':_0x3f71a3,'maxRetry':_0x125eab});}const _0x50de25={'value':_0xfef76,'resource':_0x3ce527,'pattern':_0x3f71a3,'attemptCount':_0x14cd53,'generatedAt':new Date()[_0x4f8d70(0x22a)]()};_0x526397&&_0x392229&&(_0x50de25['expiresAt']=new Date(_0xa14383[_0x4f8d70(0x1ab)](Date['now'](),_0xa14383['ulbwq'](_0x526397,0x3e8)))['toISOString']());const _0x1239ac=await this[_0x4f8d70(0x1d9)](_0x4bbdd2,_0x50de25);if(!_0x1239ac['stored'])return _0x392229&&await this[_0x4f8d70(0x215)](_0x3ce527,_0xfef76,_0x526397),logger[_0x4f8d70(0x1ea)]({'event':_0x4f8d70(0x230),'resource':_0x3ce527,'pattern':_0x3f71a3,'value':_0xfef76},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x1239ac['winnerResult'];return logger[_0x4f8d70(0x1ea)]({'event':_0x4f8d70(0x237),'resource':_0x3ce527,'pattern':_0x3f71a3,'attemptCount':_0x14cd53,'ensureUnique':_0x392229,'ttl':_0xa14383[_0x4f8d70(0x1c8)](_0x526397,0x0)},'ID\x20Generator\x20random:\x20'+_0xfef76),_0x50de25;}async[a0_0x166a1c(0x12c)](_0x59df17){const _0x3f0a4b=a0_0x166a1c,_0x537e87={'PshmX':function(_0x2944bd,_0x5a7842){return _0x2944bd==_0x5a7842;},'zpMLC':function(_0x2bc55b,_0x4c9261){return _0x2bc55b===_0x4c9261;}},_0x4d0f2c=_0x537e87['PshmX'](_0x59df17['digits'],null)?this[_0x3f0a4b(0x13d)]:_0x59df17['digits'];if(!Number[_0x3f0a4b(0x1e3)](_0x4d0f2c)||_0x4d0f2c<MIN_PIN_DIGITS||_0x4d0f2c>MAX_PIN_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_DIGITS','Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x4d0f2c+')');const _0x21ad0c='9'['repeat'](_0x4d0f2c);return this['random']({'resource':_0x59df17['resource'],'pattern':_0x21ad0c,'ensureUnique':_0x537e87[_0x3f0a4b(0x226)](_0x59df17[_0x3f0a4b(0x15c)],!![]),'ttl':_0x59df17['ttl'],'maxRetry':_0x59df17[_0x3f0a4b(0x1b1)],'idempotencyKey':_0x59df17[_0x3f0a4b(0x1c1)]});}async['serial'](_0x1c44f6){const _0x10a04d=a0_0x166a1c,_0x331d89=_0x1c44f6['pattern']||this['defaultSerialPattern'];return this['random']({'resource':_0x1c44f6[_0x10a04d(0x1b9)],'pattern':_0x331d89,'ensureUnique':_0x1c44f6['ensureUnique']!==![],'ttl':_0x1c44f6[_0x10a04d(0x1a4)],'maxRetry':_0x1c44f6['maxRetry'],'idempotencyKey':_0x1c44f6['idempotencyKey']});}async[a0_0x166a1c(0x22d)](_0x3cb54b){const _0x4053a1=a0_0x166a1c,_0x58cfdf=_0x3cb54b['pattern']||this['defaultCodePattern'];return this['random']({'resource':_0x3cb54b['resource'],'pattern':_0x58cfdf,'ensureUnique':_0x3cb54b['ensureUnique']!==![],'ttl':_0x3cb54b[_0x4053a1(0x1a4)],'maxRetry':_0x3cb54b['maxRetry'],'idempotencyKey':_0x3cb54b[_0x4053a1(0x1c1)]});}async[a0_0x166a1c(0x1cc)](_0x3adbcc){const _0x9ea826=a0_0x166a1c,_0x1dd598={'QmFZV':'IDGEN_DISABLED','yZDWF':_0x9ea826(0x1a9),'CXxcX':_0x9ea826(0x175),'vFyFy':'value\x20is\x20required','raKgv':function(_0x4cb080,_0x4f73d9){return _0x4cb080>_0x4f73d9;},'fxJhV':function(_0x1d8193,_0x2fe830){return _0x1d8193+_0x2fe830;}};if(!this['enabled'])throw new IdGeneratorError(_0x1dd598['QmFZV'],_0x1dd598['yZDWF']);this[_0x9ea826(0x190)](_0x3adbcc[_0x9ea826(0x1b9)]);if(typeof _0x3adbcc['value']!==_0x1dd598[_0x9ea826(0x14d)]||_0x3adbcc[_0x9ea826(0x205)]['length']===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x1dd598[_0x9ea826(0x1d4)]);const {resource:_0xe8bfee,value:_0xf8675c}=_0x3adbcc,_0x156e6b=redisClient[_0x9ea826(0x1ae)](),_0x20e8b1=this['_buildActiveKey'](_0xe8bfee,_0xf8675c),_0x42a54d=this[_0x9ea826(0x1d3)](_0xe8bfee),[_0x53fc70,_0x55d104]=await Promise['all']([_0x156e6b[_0x9ea826(0x1a0)](_0x20e8b1),_0x156e6b[_0x9ea826(0x155)](_0x42a54d,_0xf8675c)]),_0x583c38=_0x1dd598[_0x9ea826(0x1bb)](_0x1dd598['fxJhV'](_0x53fc70,_0x55d104),0x0);return logger['info']({'event':'idgen_consumed','resource':_0xe8bfee,'value':_0xf8675c,'consumed':_0x583c38},_0x9ea826(0x129)+_0xf8675c),{'consumed':_0x583c38,'resource':_0xe8bfee,'value':_0xf8675c,'consumedAt':new Date()[_0x9ea826(0x22a)]()};}async[a0_0x166a1c(0x19e)](_0x280476){const _0x326c07=a0_0x166a1c,_0x3f8c0f={'JJZeR':function(_0x3cc5ff,_0x12b8b2){return _0x3cc5ff===_0x12b8b2;},'IfznR':_0x326c07(0x212),'UsqPB':_0x326c07(0x188)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x280476[_0x326c07(0x1b9)]);const _0x429469=_0x280476['mode']||'number',_0x5f01b6=redisClient[_0x326c07(0x1ae)]();if(_0x429469===_0x326c07(0x213)){const _0x5a02b7=(_0x280476[_0x326c07(0x1f5)]||'text')['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x5a02b7))throw new IdGeneratorError(_0x326c07(0x1c6),'Invalid\x20format:\x20'+_0x280476[_0x326c07(0x1f5)]);const {formatKey:_0x83e5cd}=this['_buildFormatKey'](_0x5a02b7,_0x280476[_0x326c07(0x228)]||''),_0xa645e0=this['_buildSeqKey'](_0x280476['resource'],_0x83e5cd),_0x61a643=this[_0x326c07(0x178)](_0x280476[_0x326c07(0x1b9)],_0x83e5cd),[_0x2dd487,_0xd52549]=await Promise[_0x326c07(0x1a3)]([_0x5f01b6[_0x326c07(0x223)](_0xa645e0),_0x5f01b6['zcard'](_0x61a643)]);return{'resource':_0x280476['resource'],'mode':'number','formatKey':_0x83e5cd,'currentCounter':parseInt(_0x2dd487,0xa)||0x0,'reusePoolSize':_0xd52549||0x0};}if(_0x3f8c0f['JJZeR'](_0x429469,_0x3f8c0f['IfznR'])){const _0xa835ec=this[_0x326c07(0x1d3)](_0x280476[_0x326c07(0x1b9)]),_0x4e00e9=await _0x5f01b6['scard'](_0xa835ec);return{'resource':_0x280476[_0x326c07(0x1b9)],'mode':'random','issuedCount':_0x4e00e9||0x0};}throw new IdGeneratorError(_0x3f8c0f['UsqPB'],'Unknown\x20mode:\x20'+_0x429469);}async[a0_0x166a1c(0x1f4)](_0x4e67c8){const _0x3ec81a=a0_0x166a1c,_0x283691={'GRCsY':'number'},_0x2a7b19=await this[_0x3ec81a(0x19e)](_0x4e67c8);if(_0x2a7b19[_0x3ec81a(0x13b)]===_0x283691[_0x3ec81a(0x1e8)]){const _0x411adb=redisClient[_0x3ec81a(0x1ae)](),_0x1c5bf3=this['_buildMetaKey'](_0x4e67c8['resource'],_0x2a7b19['formatKey']),_0x191450=this['_buildReuseKey'](_0x4e67c8[_0x3ec81a(0x1b9)],_0x2a7b19[_0x3ec81a(0x157)]),[_0x1b3af1,_0x2f3f96]=await Promise[_0x3ec81a(0x1a3)]([_0x411adb['hgetall'](_0x1c5bf3),_0x411adb[_0x3ec81a(0x174)](_0x191450,0x0,-0x1)]);return{..._0x2a7b19,'reusePoolValues':_0x2f3f96['map'](_0x37979d=>parseInt(_0x37979d,0xa)),'meta':_0x1b3af1&&Object[_0x3ec81a(0x1c4)](_0x1b3af1)['length']>0x0?_0x1b3af1:null};}return _0x2a7b19;}async[a0_0x166a1c(0x1e6)](_0x533414){const _0x4d1f0a=a0_0x166a1c,_0x568078={'Euqve':'IDGEN_DISABLED','QJBGl':_0x4d1f0a(0x1a9),'yfQeh':_0x4d1f0a(0x1ac),'EpYCH':_0x4d1f0a(0x213),'xGvkb':'IDGEN_INVALID_FORMAT','KpInn':_0x4d1f0a(0x1f3),'zUcMu':_0x4d1f0a(0x1dc),'ezuCx':'meta','GJFQF':'random','kvvyK':_0x4d1f0a(0x1e9)};if(!this['enabled'])throw new IdGeneratorError(_0x568078['Euqve'],_0x568078['QJBGl']);if(!this['allowReset'])throw new IdGeneratorError('IDGEN_RESET_NOT_ALLOWED',_0x568078['yfQeh']);this[_0x4d1f0a(0x190)](_0x533414[_0x4d1f0a(0x1b9)]);const _0x3968f6=_0x533414[_0x4d1f0a(0x13b)]||_0x568078['EpYCH'],_0xabee1d=redisClient['getClient']();if(_0x3968f6==='number'){const _0x577c9a=(_0x533414[_0x4d1f0a(0x1f5)]||_0x4d1f0a(0x233))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x577c9a))throw new IdGeneratorError(_0x568078['xGvkb'],_0x4d1f0a(0x170)+_0x533414['format']);const {formatKey:_0x49ba4c}=this[_0x4d1f0a(0x197)](_0x577c9a,_0x533414['prefix']||''),_0x28900d=this['_buildSeqKey'](_0x533414['resource'],_0x49ba4c),_0x28984c=this[_0x4d1f0a(0x178)](_0x533414[_0x4d1f0a(0x1b9)],_0x49ba4c),_0x226bd1=this[_0x4d1f0a(0x154)](_0x533414[_0x4d1f0a(0x1b9)],_0x49ba4c);return await _0xabee1d['del'](_0x28900d,_0x28984c,_0x226bd1),logger[_0x4d1f0a(0x19c)]({'event':_0x4d1f0a(0x19f),'resource':_0x533414[_0x4d1f0a(0x1b9)],'mode':_0x4d1f0a(0x213),'formatKey':_0x49ba4c},'ID\x20Generator\x20reset:\x20'+_0x533414['resource']+':'+_0x49ba4c),{'reset':!![],'resource':_0x533414['resource'],'mode':_0x4d1f0a(0x213),'formatKey':_0x49ba4c,'deletedKeys':[_0x568078['KpInn'],_0x568078['zUcMu'],_0x568078['ezuCx']]};}if(_0x3968f6===_0x568078[_0x4d1f0a(0x16e)]){const _0x409afd=this[_0x4d1f0a(0x1d3)](_0x533414['resource']);return await _0xabee1d[_0x4d1f0a(0x1a0)](_0x409afd),logger['warn']({'event':'idgen_reset','resource':_0x533414['resource'],'mode':_0x568078['GJFQF']},_0x4d1f0a(0x182)+_0x533414[_0x4d1f0a(0x1b9)]),{'reset':!![],'resource':_0x533414[_0x4d1f0a(0x1b9)],'mode':'random','deletedKeys':[_0x568078[_0x4d1f0a(0x139)]]};}throw new IdGeneratorError(_0x4d1f0a(0x188),'Unknown\x20mode:\x20'+_0x3968f6);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module[a0_0x166a1c(0x1d1)]=instance,module['exports']['IdGeneratorError']=IdGeneratorError;
1
+ 'use strict';const a0_0x4b7b0d=a0_0x5e0c;function a0_0x5e0c(_0x5ec0b1,_0x24222a){_0x5ec0b1=_0x5ec0b1-0xd1;const _0x3b0d3e=a0_0x3b0d();let _0x5e0ca9=_0x3b0d3e[_0x5ec0b1];if(a0_0x5e0c['nzQCUF']===undefined){var _0x4dadf5=function(_0x477a0c){const _0x32f2d0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x185232='',_0x227654='';for(let _0x52d9fd=0x0,_0x2f6980,_0x3be788,_0x3eb8e0=0x0;_0x3be788=_0x477a0c['charAt'](_0x3eb8e0++);~_0x3be788&&(_0x2f6980=_0x52d9fd%0x4?_0x2f6980*0x40+_0x3be788:_0x3be788,_0x52d9fd++%0x4)?_0x185232+=String['fromCharCode'](0xff&_0x2f6980>>(-0x2*_0x52d9fd&0x6)):0x0){_0x3be788=_0x32f2d0['indexOf'](_0x3be788);}for(let _0x461c27=0x0,_0x5a21ea=_0x185232['length'];_0x461c27<_0x5a21ea;_0x461c27++){_0x227654+='%'+('00'+_0x185232['charCodeAt'](_0x461c27)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x227654);};a0_0x5e0c['arZTex']=_0x4dadf5,a0_0x5e0c['evLtar']={},a0_0x5e0c['nzQCUF']=!![];}const _0x31ac54=_0x3b0d3e[0x0],_0x699d36=_0x5ec0b1+_0x31ac54,_0x1323da=a0_0x5e0c['evLtar'][_0x699d36];return!_0x1323da?(_0x5e0ca9=a0_0x5e0c['arZTex'](_0x5e0ca9),a0_0x5e0c['evLtar'][_0x699d36]=_0x5e0ca9):_0x5e0ca9=_0x1323da,_0x5e0ca9;}(function(_0x564cba,_0x1ba8f7){const _0x4415ae=a0_0x5e0c,_0x17276c=_0x564cba();while(!![]){try{const _0x5ce8b5=-parseInt(_0x4415ae(0x1dc))/0x1*(-parseInt(_0x4415ae(0x127))/0x2)+-parseInt(_0x4415ae(0x1d4))/0x3*(-parseInt(_0x4415ae(0x158))/0x4)+parseInt(_0x4415ae(0x1e5))/0x5+-parseInt(_0x4415ae(0x140))/0x6+parseInt(_0x4415ae(0xe8))/0x7*(-parseInt(_0x4415ae(0x19d))/0x8)+-parseInt(_0x4415ae(0xfc))/0x9+parseInt(_0x4415ae(0x155))/0xa*(parseInt(_0x4415ae(0x10f))/0xb);if(_0x5ce8b5===_0x1ba8f7)break;else _0x17276c['push'](_0x17276c['shift']());}catch(_0x5a51fe){_0x17276c['push'](_0x17276c['shift']());}}}(a0_0x3b0d,0xab4f8));const crypto=require(a0_0x4b7b0d(0x100)),redisClient=require('./redis-client'),{logger}=require(a0_0x4b7b0d(0x1fd)),idempotencyManager=require(a0_0x4b7b0d(0x149)),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x4b7b0d(0x166),'yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x4b7b0d(0xf1),CHARSET_HEX_LOWER=a0_0x4b7b0d(0x17d),PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20reused\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#reused\x20>\x200\x20then\x0a\x20\x20\x20\x20return\x20{tonumber(reused[1]),\x201}\x0a\x20\x20end\x0aend\x0alocal\x20n\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20and\x20n\x20==\x201\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x20{n,\x200}\x0a',LUA_RELEASE_NUMBER='\x0aredis.call(\x27ZADD\x27,\x20KEYS[1],\x20ARGV[1],\x20ARGV[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x201\x0a',LUA_RESERVE_NUMBER=a0_0x4b7b0d(0x197),LUA_CONFIRM_RESERVATION=a0_0x4b7b0d(0x17b),LUA_CANCEL_RESERVATION=a0_0x4b7b0d(0x12f),LUA_EXTEND_RESERVATION=a0_0x4b7b0d(0x188);class IdGeneratorError extends Error{constructor(_0x2e5767,_0x2f02a9,_0x50ea65=null){const _0x5be1b2=a0_0x4b7b0d,_0x190bf7={'SzWqX':'IdGeneratorError'};super(_0x2f02a9||_0x2e5767),this[_0x5be1b2(0x19e)]=_0x190bf7['SzWqX'],this[_0x5be1b2(0x107)]=_0x2e5767,this[_0x5be1b2(0x121)]=_0x50ea65;}}function a0_0x3b0d(){const _0x3bcba0=['tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','ovjrD0zWwG','zw5HyMXLza','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','q291BNrLCIbVDMvYzMXVDZOG','AwrNzw4','zgvMyxvSDenVzgvqyxr0zxjU','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','vw5RBM93BIbTB2rLoIa','mwHJveHZra','Bw9Kzq','x2rLzMf1BhrqAw5eAwDPDhm','zgf0zvbYzwzPEa','surhru5Fsu5wquXjrf9srvnpvvjdrq','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','x2j1AwXKuMvZzxj2yxrPB25lzxK','qMzmvwW','x2DLDenVDw50zxjuveW','otu2ndeWC2Ttu1fO','s2LgvNi','BMH1ENq','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','t3P0AfC','zgvS','CMvZzxj2zu51BwjLCG','swrLBxbVDgvUy3KGy2fJAguGseLu','y2fcBKq','Bwf4uMv0CNK','y3jLyxrLzef0','wenizhy','CgfKzgvKicHNB3q6ia','rxzcqKK','x2j1AwXKuMv1C2vlzxK','surhru5Fsu5wquXjrf9esuDjvfm','x3zHBgLKyxrLtwf4uMv0CNK','C2vYAwfS','x2j1AwXKtwv0yuTLEq','v1LNsKi','ChvZAa','AxnfBMfIBgvK','zfzLywG','D2fYBG','lI9SB2DNzxi','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','zw52','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','A2v5uhjLzML4','vwvtvNq','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','AwrLBvruta','ugH5Eu4','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','x3jLDhjPzxzLswrLBunHy2HL','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','D2LUBMvYuMvZDwX0','Cg93','Dg9mB3DLCKnHC2u','DxHZtLm','qwniCeG','CMfUzg9Tsw50','ihnLy29UzhmGkgDVDdOG','yM9VBgvHBG','x3jLC2vYDMvezwzHDwX0vfrm','surhru5Frevgqvvmvf9nqvHFuKvuuLK','zxzHBa','x2TLEvbYzwzPEa','mJyYmJq4z01nEev2','otK5os05otK5','zxHWAxjLC0f0','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','icHNB3q6ia','C2v0zxG','EMH5Du0','ChjLzML4','AhP2svq','mdeYmZq1nJC4oufcq0rfrG','qLDRDuC','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','x3bHCNnLtNvTyMvY','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','x2DLBMvYyxrLrNjVBvbHDhrLCM4','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','AwrLBuTLEq','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','nduWmtK5ohHXAvfQzG','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','lcbNB3qG','CMvZzxj2zu1HEfruta','y3j5ChrV','AgDLDgfSBa','AxnjBNrLz2vY','z1LssgS','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','twT2r3G','u0Hxz3K','y29Kzq','zgLNAxrZ','sNvqrui','surhru5FreLtqujmruq','suqGr2vUzxjHDg9YihjLC2v0oIa','CgXnvfy','CMvZzxj2zurLzMf1BhruveW','y291BNrLCKLUDa','mJaZmJC0odnxq2Hes28','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','v3zsyuC','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','CfPiyuK','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','rgvqAhC','x3rLEhq','DMfSDwuGAxmGCMvXDwLYzwq','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','shn1q0y','zgvMyxvSDfbPBKrPz2L0CW','sw52ywXPzcbMB3jTyxq6ia','ywXSB3DszxnLDa','surhru5Fq09vtLrfuL9pvKvsrKXpvW','Dgv4Da','surhru5Fsu5wquXjrf9gt1jnqvq','v1z4rge','zgv0ywLSCW','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','Dg9Rzw4','qMf0CMy','x2j1AwXKswrLBuTLEq','z2v0','mta2nJG5nNPLCgvhDW','DgvZDa','veDqzvO','x2rLzMf1BhrdB2rLugf0DgvYBG','AwrNzw5FCMvZzxq','suqGr2vUzxjHDg9YihjHBMrVBtOG','C3rYAw5N','AwrNzw5Fy29UC3vTzwq','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','ywXS','x3zHBgLKyxrLugf0DgvYBG','Chr0Ba','CNn2s2v5','CMv1C2u','surhru5Fq09vtLrfuL9uveXFrefjtfK','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','AxnZDwvKoG','lcbLEhbLy3rLzca','ENjHBMDL','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','Aw5MBW','D3vkwhq','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','x2j1AwXKu2vXs2v5','ntK5ntyYnKf4svzVuG','BgvUz3rO','x3zHBgLKyxrLuMvZB3vYy2u','x2rLzMf1BhrnyxHszxrYEq','CMvZzxj2zv9Jyw5JzwW','ruXdthe','CMvSzwfZzu51BwjLCG','vePwy0C','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','CMfUzg9T','zM9YBwf0','vvHrAK4','x3vWzgf0zu1LDge','x3jLC2vYDMvnyxHuveW','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','wKThsMi','AwrLBxbVDgvUy3LlzxK','C3rYAw5NAwz5','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','rMfPBgvKihrVignVBxbLBNnHDguGCMvZzxj2yxrPB24Gywz0zxiGy291BNrLCIbVDMvYzMXVDW','mtbSrKLkDNm','CNn2swr4s2v5','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','nde4ne5vAgPvtW','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','EMnHCMq','AgfZ','Chr3BwW','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','z0zks00','Dhj1zq','EKnXCMS','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','y21OCfi','CgfYC2u','x2j1AwXKrM9YBwf0s2v5','ExL5Ew1T','q2fjAMq','uhnWyNy','surhru5Fsu5wquXjrf9ut0TftG','x3L5ExLF','surhru5FuKvtrvrFtK9ux0fmte9xruq','x3n0B3jLswrLBunHy2HLtLG','C1LuCMe','sLr1A00','x2vUC3vYzuLUAxrPywXPEMvK','surhru5FuKvtrvjwrv9nqvHFvfrm','wwj1tKq','u3jRy1G','C3jLBq','DwjbAMW','zxHWAxjL','rwniAuK','surhru5FquXmt1DFuKvtrvq','BNvTyMvY','wxPvv0K','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','BwvZC2fNzq','mdeYmZq1nJC4owfIy2rLzG','icH0B2TLBJ0','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x3vUzg9syw5KB21szxnLCNzHDgLVBG','A2v5CW','zgvMyxvSDe1HEfjLDhj5','DhrS','C3rVCMvK','tLbpBwK','Dg9ju09tDhjPBMC','AxnszxvZzwq','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','twv0ysb1CgrHDguGzxjYB3i','zgvMyxvSDfnLCMLHBfbHDhrLCM4','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','BwfW','AwrNzw5FAwrLBv9OAxq','C2vWyxjHDg9Y','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','x2rLzMf1BhrtzxjPywXqyxr0zxjU','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','lcaR','suqGr2vUzxjHDg9Yig51BwjLCJOG','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','vurpwem','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','ExL5Eq','zxHLyW','x3zHBgLKyxrLuMvZzxj2zvruta','DxfUD0K','uePHtfm','odbsA2rKu0K','BMfTzq','zwvvAK4','D2XZC3G','x2fSBg93uMvZzxq','x3n0B3jLswrLBunHy2HL','uM52qNK','z2v0q2XPzw50','x2nVDw50zxjuveXnyxa','BvvSDLu','CMvZzxj2zq','x3bHzdi','CgfKu3rHCNq','tefOEhy','x2j1AwXKqwn0AxzLs2v5','igv4y2vLzhmG','BNvTrgLNAxrZ','wwnhEgS','BKv1uum','ru5vt1G','AvHYB1a','AxnZDwvK','y3v3vLG','sw5it0q','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','AwjTEKu','surhru5Fsu5wquXjrf9ovu1crvi','y291BNrLCG','zw5ZDxjLvw5PCxvL','CMvWzwf0','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','x2LUAxrPywXPEMvK','CMvZzxj2zv9JB25MAxjT','CMvZzxq','A1LhzM4','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','x2LKzw1uveW','x2vUywjSzwq','B3LtEhu','zxHWB3j0CW','x3zHBgLKyxrLvfrm','rLLPEMO','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','CMvZB3vYy2u','x2LUAxrdB25MAwC','Bwf0y2G','BM93','mxW4Fdb8nxWYFdD8m3W5FdeXFdz8mtb8na','zM9YBwf0s2v5','CgvLAW','vevrBgq','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','vw5RBM93BIbMB3jTyxq6ia'];a0_0x3b0d=function(){return _0x3bcba0;};return a0_0x3b0d();}class IdGenerator{constructor(){const _0x2cff35=a0_0x4b7b0d,_0x4382e6={'plMTV':_0x2cff35(0x1cd)},_0x45cfb2=_0x4382e6[_0x2cff35(0x10c)]['split']('|');let _0x495b69=0x0;while(!![]){switch(_0x45cfb2[_0x495b69++]){case'0':this[_0x2cff35(0xe7)]=null;continue;case'1':this[_0x2cff35(0x1bc)]=![];continue;case'2':this[_0x2cff35(0x1a1)]=null;continue;case'3':this['_defaultPinDigits']=null;continue;case'4':this[_0x2cff35(0x14e)]=null;continue;case'5':this['_idemTTL']=null;continue;case'6':this[_0x2cff35(0x1a5)]=null;continue;case'7':this[_0x2cff35(0x143)]=null;continue;case'8':this[_0x2cff35(0x1c3)]=null;continue;case'9':this['_defaultSerialPattern']=null;continue;case'10':this['_reserveDefaultTTL']=null;continue;case'11':this[_0x2cff35(0x12a)]=null;continue;}break;}}[a0_0x4b7b0d(0x1ca)](){const _0x9d740a=a0_0x4b7b0d,_0x2b8c7a={'ELCLq':'rf:idgen:','PJaLS':function(_0x4ba755,_0xf40671){return _0x4ba755===_0xf40671;},'dLXFI':'true','iXroP':_0x9d740a(0xe9),'cvfwM':function(_0xd8868e,_0x4d7f91,_0x513666){return _0xd8868e(_0x4d7f91,_0x513666);},'yZpHY':function(_0x3cd51f,_0x560f05,_0x1fa025){return _0x3cd51f(_0x560f05,_0x1fa025);},'sXRsS':'idgen_config_init'};this[_0x9d740a(0xe7)]=_0x2b8c7a[_0x9d740a(0x145)],this[_0x9d740a(0x1c3)]=process['env']['IDGEN_ENABLED']===_0x9d740a(0x160),this[_0x9d740a(0x1c2)]=parseInt(process[_0x9d740a(0xd1)]['IDGEN_IDEM_TTL'],0xa)||0x258,this[_0x9d740a(0x1a1)]=_0x2b8c7a[_0x9d740a(0x19c)](process[_0x9d740a(0xd1)][_0x9d740a(0x177)],_0x2b8c7a['dLXFI']),this[_0x9d740a(0x143)]=parseInt(process['env'][_0x9d740a(0xe5)],0xa)||0xa,this['_defaultPinDigits']=parseInt(process['env']['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6,this[_0x9d740a(0x191)]=process[_0x9d740a(0xd1)][_0x9d740a(0x13b)]||'XXXX-XXXX-XXXX-XXXX',this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x2b8c7a[_0x9d740a(0x1b1)],this[_0x9d740a(0x1a5)]={'yyyymm':parseInt(process['env'][_0x9d740a(0x1c1)],0xa)||0x2a3000,'yyyymmdd':_0x2b8c7a['cvfwM'](parseInt,process[_0x9d740a(0xd1)][_0x9d740a(0x136)],0xa)||0x2a300},this['_reserveDefaultTTL']=_0x2b8c7a['yZpHY'](parseInt,process['env'][_0x9d740a(0xf8)],0xa)||DEFAULT_RESERVE_TTL,this[_0x9d740a(0x14e)]=_0x2b8c7a['cvfwM'](parseInt,process['env'][_0x9d740a(0x170)],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger[_0x9d740a(0x13c)]({'event':_0x2b8c7a['sXRsS'],'enabled':this['_enabled'],'idemTTL':this['_idemTTL'],'allowReset':this[_0x9d740a(0x1a1)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x9d740a(0xe4)],'reserveMaxTTL':this['_reserveMaxTTL']},_0x9d740a(0x1bb)+this[_0x9d740a(0x1c3)]);}['_ensureInitialized'](){const _0x17916c=a0_0x4b7b0d;if(!this['_initialized'])this[_0x17916c(0x1ca)]();}get['enabled'](){const _0x5a3724=a0_0x4b7b0d;return this['_ensureInitialized'](),this[_0x5a3724(0x1c3)];}get['keyPrefix'](){const _0x1b013d=a0_0x4b7b0d;return this['_ensureInitialized'](),this[_0x1b013d(0xe7)];}get['idemTTL'](){const _0x3df99f=a0_0x4b7b0d;return this[_0x3df99f(0x16f)](),this[_0x3df99f(0x1c2)];}get[a0_0x4b7b0d(0x11c)](){const _0x3dd850=a0_0x4b7b0d;return this['_ensureInitialized'](),this[_0x3dd850(0x1a1)];}get['defaultMaxRetry'](){const _0x5b353f=a0_0x4b7b0d;return this[_0x5b353f(0x16f)](),this['_defaultMaxRetry'];}get[a0_0x4b7b0d(0x11a)](){const _0xf70ba6=a0_0x4b7b0d;return this[_0xf70ba6(0x16f)](),this[_0xf70ba6(0x1de)];}get[a0_0x4b7b0d(0x18a)](){return this['_ensureInitialized'](),this['_defaultSerialPattern'];}get[a0_0x4b7b0d(0x1d9)](){const _0x5e0a2a=a0_0x4b7b0d;return this[_0x5e0a2a(0x16f)](),this[_0x5e0a2a(0x12a)];}get[a0_0x4b7b0d(0x10d)](){return this['_ensureInitialized'](),this['_reserveDefaultTTL'];}get[a0_0x4b7b0d(0xff)](){const _0x2b3d2d=a0_0x4b7b0d;return this['_ensureInitialized'](),this[_0x2b3d2d(0x14e)];}[a0_0x4b7b0d(0x1fa)](){return this['enabled'];}[a0_0x4b7b0d(0x142)](_0x4ea8fe){const _0x5bd700=a0_0x4b7b0d,_0x1624b8={'TGPeZ':function(_0x407762,_0x20af07){return _0x407762!==_0x20af07;},'wzjDM':_0x5bd700(0x12d),'OzthW':'IDGEN_INVALID_RESOURCE'};if(_0x1624b8[_0x5bd700(0x129)](typeof _0x4ea8fe,_0x1624b8['wzjDM'])||!RESOURCE_REGEX['test'](_0x4ea8fe))throw new IdGeneratorError(_0x1624b8[_0x5bd700(0x1e9)],_0x5bd700(0xd2)+RESOURCE_REGEX+_0x5bd700(0xec)+JSON[_0x5bd700(0x152)](_0x4ea8fe)+')');}[a0_0x4b7b0d(0xf5)](_0xb5faca){const _0x5083de=a0_0x4b7b0d,_0x4d4608={'HsuCF':function(_0x52002f,_0x5ebfee){return _0x52002f===_0x5ebfee;},'BmsaP':'string','eAXxZ':function(_0x3c4e14,_0x44af2c){return _0x3c4e14<_0x44af2c;},'NZNVS':function(_0x4f02c3,_0x524a06){return _0x4f02c3>_0x524a06;},'DePhw':_0x5083de(0x1d1),'CudmP':function(_0x493c89,_0x474764){return _0x493c89==_0x474764;},'dXciP':function(_0x599b41,_0x4a06b9){return _0x599b41!==_0x4a06b9;},'PhyyN':function(_0x3148b4,_0x3d1455){return _0x3148b4>_0x3d1455;},'WYgJB':function(_0x23753f,_0x23ebbb){return _0x23753f!=_0x23ebbb;},'ZKGJb':_0x5083de(0xe3),'YbuND':_0x5083de(0x1e0),'FYizj':function(_0x2487bc,_0x32f2cc){return _0x2487bc===_0x32f2cc;}},{resource:_0x1bdc64,format:_0x440494,prefix:_0x2b7c9f,separator:_0xe1d126,numDigits:_0x4c6a50,reuseDelete:_0xbddd83}=_0xb5faca;this['_validateResource'](_0x1bdc64);const _0x49729f=_0x4d4608[_0x5083de(0x119)](typeof _0x440494,_0x4d4608['BmsaP'])?_0x440494[_0x5083de(0xde)]():'';if(!ALLOWED_FORMATS[_0x5083de(0x15b)](_0x49729f))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+'\x20(got:\x20'+_0x440494+')');if(!Number[_0x5083de(0x102)](_0x4c6a50)||_0x4d4608['eAXxZ'](_0x4c6a50,MIN_NUM_DIGITS)||_0x4d4608['NZNVS'](_0x4c6a50,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x4d4608[_0x5083de(0x115)],'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x4c6a50+')');const _0x482ae7=_0x2b7c9f==null?'':_0x2b7c9f;if(typeof _0x482ae7!==_0x5083de(0x12d)||!PREFIX_REGEX['test'](_0x482ae7))throw new IdGeneratorError('IDGEN_INVALID_PREFIX',_0x5083de(0x110)+PREFIX_REGEX+_0x5083de(0xec)+JSON['stringify'](_0x2b7c9f)+')');const _0x480565=_0x4d4608['CudmP'](_0xe1d126,null)?'':_0xe1d126;if(_0x4d4608['dXciP'](typeof _0x480565,'string')||_0x4d4608[_0x5083de(0xd8)](_0x480565['length'],0x3)||SEPARATOR_FORBIDDEN[_0x5083de(0x128)](_0x480565))throw new IdGeneratorError('IDGEN_INVALID_SEPARATOR','Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON['stringify'](_0xe1d126)+')');if(_0x4d4608[_0x5083de(0x1f8)](_0xbddd83,null)&&typeof _0xbddd83!==_0x4d4608[_0x5083de(0x150)])throw new IdGeneratorError(_0x4d4608[_0x5083de(0x171)],_0x5083de(0x1da)+typeof _0xbddd83+')');return{'resource':_0x1bdc64,'format':_0x49729f,'prefix':_0x482ae7,'separator':_0x480565,'numDigits':_0x4c6a50,'reuseDelete':_0x4d4608[_0x5083de(0x1c7)](_0xbddd83,!![])};}[a0_0x4b7b0d(0x132)](_0x5821b5){const _0x143d7b=a0_0x4b7b0d,_0xf1d154={'UDOXC':'IDGEN_INVALID_PATTERN'};if(typeof _0x5821b5!=='string'||_0x5821b5['length']===0x0||_0x5821b5['length']>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0xf1d154[_0x143d7b(0x196)],'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x5821b5&&_0x5821b5['length'])+')');let _0x13491c=![];for(const _0x4632c7 of _0x5821b5){if(PLACEHOLDER_MAP[_0x4632c7]){_0x13491c=!![];break;}}if(!_0x13491c)throw new IdGeneratorError('IDGEN_INVALID_PATTERN',_0x143d7b(0x1b5));}[a0_0x4b7b0d(0x1c6)](_0x411a68){const _0x16c703=a0_0x4b7b0d,_0x4feaab={'bAtJr':function(_0x181eb9,_0x5eab21){return _0x181eb9==_0x5eab21;},'EcHiI':function(_0x1a353d,_0x310470){return _0x1a353d>_0x310470;}};if(_0x4feaab['bAtJr'](_0x411a68,null))return undefined;if(!Number['isInteger'](_0x411a68)||_0x411a68<0x1||_0x4feaab[_0x16c703(0x176)](_0x411a68,MAX_TTL))throw new IdGeneratorError('IDGEN_INVALID_TTL','Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x411a68+')');return _0x411a68;}['_validateMaxRetry'](_0x44ab34){const _0xd559c8=a0_0x4b7b0d,_0x48ee64={'MptfY':function(_0x1e3dbc,_0x2c6d91){return _0x1e3dbc<_0x2c6d91;},'UszWY':_0xd559c8(0x114)};if(_0x44ab34==null)return this[_0xd559c8(0x182)];if(!Number[_0xd559c8(0x102)](_0x44ab34)||_0x48ee64['MptfY'](_0x44ab34,0x1)||_0x44ab34>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x48ee64['UszWY'],_0xd559c8(0x18f)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x44ab34+')');return _0x44ab34;}['_validateIdempotencyKey'](_0x30beef){const _0x4dc41b=a0_0x4b7b0d,_0x3d2433={'ibmzE':function(_0x5e0d97,_0x28686f){return _0x5e0d97>_0x28686f;},'KiFVr':_0x4dc41b(0x1e0)};if(_0x30beef==null)return undefined;if(typeof _0x30beef!==_0x4dc41b(0x12d)||_0x30beef[_0x4dc41b(0x141)]===0x0||_0x3d2433[_0x4dc41b(0x1b6)](_0x30beef['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x3d2433[_0x4dc41b(0x1e6)],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x30beef;}[a0_0x4b7b0d(0x19a)](_0x31450f){const _0x166077=a0_0x4b7b0d,_0x439e72={'RRQkp':function(_0x5e4543,_0x1351f5){return _0x5e4543==_0x1351f5;},'ptwml':function(_0x49ed6f,_0x43243b){return _0x49ed6f<_0x43243b;},'TEQld':'IDGEN_INVALID_RESERVE_TTL'};if(_0x439e72['RRQkp'](_0x31450f,null))return this['reserveDefaultTTL'];if(!Number[_0x166077(0x102)](_0x31450f)||_0x439e72[_0x166077(0x15c)](_0x31450f,MIN_RESERVE_TTL)||_0x31450f>this['reserveMaxTTL'])throw new IdGeneratorError(_0x439e72[_0x166077(0x1d0)],_0x166077(0x13e)+MIN_RESERVE_TTL+'-'+this[_0x166077(0xff)]+_0x166077(0xe2)+_0x31450f+')');return _0x31450f;}['_validateReservationToken'](_0x123a0d){const _0x2d14df=a0_0x4b7b0d,_0x48e609={'bQkuK':function(_0x5dcfea,_0x1d4f57){return _0x5dcfea!==_0x1d4f57;},'UeSVt':_0x2d14df(0x169)};if(_0x48e609['bQkuK'](typeof _0x123a0d,'string')||!RESERVATION_TOKEN_REGEX['test'](_0x123a0d))throw new IdGeneratorError(_0x48e609[_0x2d14df(0xd5)],'Invalid\x20reservation\x20token:\x20must\x20be\x20UUID\x20v4\x20format\x20(got:\x20'+JSON['stringify'](_0x123a0d)+')');return _0x123a0d;}['_pad2'](_0x365484){const _0xa0102b=a0_0x4b7b0d,_0x336ff5={'CaIjd':function(_0x4a2db0,_0x2c21bb){return _0x4a2db0(_0x2c21bb);}};return _0x336ff5[_0xa0102b(0x167)](String,_0x365484)[_0xa0102b(0x1a9)](0x2,'0');}['_buildFormatKey'](_0xde8cc2,_0x1c3799,_0x3f92c5=new Date()){const _0x577418=a0_0x4b7b0d,_0x5165af={'aBTiY':_0x577418(0x198),'uxsNS':_0x577418(0x166),'oavnV':'yyyymmdd'},_0x14e451=_0x3f92c5['getFullYear'](),_0x1ebccf=this[_0x577418(0x1a8)](_0x3f92c5['getMonth']()+0x1),_0x2ee918=this['_pad2'](_0x3f92c5['getDate']()),_0x37d175=_0x1c3799||'_';let _0x5e9ece,_0x45c1f6='';switch(_0xde8cc2){case'text':_0x5e9ece=_0x37d175+'_text';break;case _0x5165af['aBTiY']:_0x45c1f6=''+_0x14e451,_0x5e9ece=_0x37d175+_0x577418(0x16a)+_0x45c1f6;break;case _0x5165af[_0x577418(0xdf)]:_0x45c1f6=''+_0x14e451+_0x1ebccf,_0x5e9ece=_0x37d175+'_yyyymm_'+_0x45c1f6;break;case _0x5165af['oavnV']:_0x45c1f6=''+_0x14e451+_0x1ebccf+_0x2ee918,_0x5e9ece=_0x37d175+'_yyyymmdd_'+_0x45c1f6;break;default:throw new IdGeneratorError(_0x577418(0x11f),_0x577418(0x1d2)+_0xde8cc2);}return{'formatKey':_0x5e9ece,'datePrefix':_0x45c1f6};}['_buildSeqKey'](_0x1da552,_0x47a98c){const _0x2396c0=a0_0x4b7b0d;return this[_0x2396c0(0xd4)]+'seq:'+_0x1da552+':'+_0x47a98c;}[a0_0x4b7b0d(0x1f3)](_0xdec4ee,_0x1d3be7){const _0x4af884=a0_0x4b7b0d;return this[_0x4af884(0xd4)]+'reuse:'+_0xdec4ee+':'+_0x1d3be7;}['_buildMetaKey'](_0x71c201,_0x1e2bb8){return this['keyPrefix']+'meta:'+_0x71c201+':'+_0x1e2bb8;}['_buildIssuedKey'](_0x5980b3){const _0x53ddaa=a0_0x4b7b0d;return this['keyPrefix']+_0x53ddaa(0x138)+_0x5980b3;}[a0_0x4b7b0d(0x1ab)](_0x301473,_0x547ba6){return this['keyPrefix']+'active:'+_0x301473+':'+_0x547ba6;}[a0_0x4b7b0d(0x1e2)](_0x4f824a){const _0x4b0558=a0_0x4b7b0d;return this[_0x4b0558(0xd4)]+'rsv:'+_0x4f824a;}['_buildReservationIndexKey'](_0x1a8c8a,_0x4d5784){return this['keyPrefix']+'rsv_idx:'+_0x1a8c8a+':'+_0x4d5784;}[a0_0x4b7b0d(0x1e1)](){return this['keyPrefix']+'rsv:';}['_buildIdemKey'](_0x53b968,_0x4f55c2,_0x535f0a,_0x4ddc9e){const _0x20c7dc=a0_0x4b7b0d,_0x299fc9={'JuPEB':'idgen'};if(_0x535f0a)return idempotencyManager['buildDeterministicKey'](_0x299fc9[_0x20c7dc(0x109)],_0x53b968,_0x4f55c2+':'+_0x535f0a+':'+_0x4ddc9e);return idempotencyManager[_0x20c7dc(0x17f)](_0x20c7dc(0x1d8),_0x53b968,_0x4f55c2+':'+_0x4ddc9e);}[a0_0x4b7b0d(0x1e4)](_0x1fca04){const _0x4304a2=a0_0x4b7b0d;return this[_0x4304a2(0x1a5)][_0x1fca04]||0x0;}['_formatNumber']({format:_0x220187,prefix:_0x1f3647,datePrefix:_0x47e7c6,separator:_0xb53f5c,numDigits:_0x9ce051,counterInt:_0x444556}){const _0x4717a8=a0_0x4b7b0d,_0x32b31d={'gFJKM':function(_0x3f1b68,_0x5d0dcd){return _0x3f1b68>_0x5d0dcd;},'BSMXJ':function(_0x2a629f,_0x2a1fd4){return _0x2a629f(_0x2a1fd4);},'uqnwI':_0x4717a8(0x11e)},_0x2054e3=Math[_0x4717a8(0xdd)](0xa,_0x9ce051)-0x1;if(_0x32b31d[_0x4717a8(0x15f)](_0x444556,_0x2054e3))throw new IdGeneratorError(_0x4717a8(0x11d),_0x4717a8(0x1d7)+_0x444556+_0x4717a8(0x1ac)+_0x9ce051+'-digit\x20capacity\x20('+_0x2054e3+').\x20Increase\x20numDigits.',{'counterInt':_0x444556,'numDigits':_0x9ce051,'max':_0x2054e3});const _0x58fba5=_0x32b31d['BSMXJ'](String,_0x444556)['padStart'](_0x9ce051,'0');if(_0x220187===_0x32b31d[_0x4717a8(0x19b)])return _0x1f3647?''+_0x1f3647+_0xb53f5c+_0x58fba5:_0x58fba5;return _0x1f3647?''+_0x1f3647+_0xb53f5c+_0x47e7c6+_0xb53f5c+_0x58fba5:''+_0x47e7c6+_0xb53f5c+_0x58fba5;}[a0_0x4b7b0d(0xf4)]({format:_0x3edfd0,prefix:_0x5a9e1d,separator:_0x501c56,numDigits:_0x3f28cc,number:_0xfe5676}){const _0x2cd82c=a0_0x4b7b0d,_0x1c990b={'SAmIp':function(_0x392aeb,_0x91562b){return _0x392aeb===_0x91562b;},'BmNxx':function(_0x574164,_0x515749){return _0x574164!==_0x515749;},'ScSpl':_0x2cd82c(0x1b7),'mjbeF':function(_0x5e2766,_0x1f119e){return _0x5e2766===_0x1f119e;},'IcWGE':function(_0x4b68b3,_0x44863c,_0x1e9e85){return _0x4b68b3(_0x44863c,_0x1e9e85);},'zCqrk':'text'};if(typeof _0xfe5676!=='string'||_0x1c990b['SAmIp'](_0xfe5676[_0x2cd82c(0x141)],0x0))throw new IdGeneratorError(_0x2cd82c(0x1b7),_0x2cd82c(0x162));const _0x52a3d6=_0x501c56||'',_0x31fba9=_0x52a3d6===''?[_0xfe5676]:_0xfe5676['split'](_0x52a3d6);let _0x221733='',_0x1a16e3;if(_0x3edfd0===_0x2cd82c(0x11e)){if(_0x5a9e1d){if(_0x1c990b['BmNxx'](_0x31fba9['length'],0x2)||_0x31fba9[0x0]!==_0x5a9e1d)throw new IdGeneratorError(_0x1c990b['ScSpl'],'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x52a3d6+_0x2cd82c(0x1f1)+_0xfe5676+')');_0x1a16e3=_0x31fba9[0x1];}else{if(_0x31fba9[_0x2cd82c(0x141)]!==0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0xfe5676+')');_0x1a16e3=_0x31fba9[0x0];}}else{const _0x2dc6e8=_0x5a9e1d?0x3:0x2;if(_0x31fba9['length']!==_0x2dc6e8)throw new IdGeneratorError(_0x2cd82c(0x1b7),_0x2cd82c(0x157)+_0xfe5676+_0x2cd82c(0x139)+_0x2dc6e8+'\x20parts)');let _0x3dddd5=0x0;if(_0x5a9e1d){if(_0x31fba9[_0x3dddd5]!==_0x5a9e1d)throw new IdGeneratorError(_0x2cd82c(0x1b7),_0x2cd82c(0xd3)+_0x5a9e1d+_0x2cd82c(0xfe)+_0x31fba9[_0x3dddd5]);_0x3dddd5++;}_0x221733=_0x31fba9[_0x3dddd5++];const _0x18998f=_0x1c990b['mjbeF'](_0x3edfd0,'yyyy')?/^\d{4}$/:_0x3edfd0===_0x2cd82c(0x166)?/^\d{6}$/:/^\d{8}$/;if(!_0x18998f['test'](_0x221733))throw new IdGeneratorError(_0x1c990b['ScSpl'],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x3edfd0+':\x20'+_0x221733);_0x1a16e3=_0x31fba9[_0x3dddd5];}if(!new RegExp('^\x5cd{'+_0x3f28cc+'}$')['test'](_0x1a16e3))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x2cd82c(0x1d3)+_0x3f28cc+'\x20digits\x20(got:\x20'+_0x1a16e3+')');const _0x447f6=_0x1c990b['IcWGE'](parseInt,_0x1a16e3,0xa),_0x1f22aa=_0x5a9e1d||'_';let _0x49968c;return _0x3edfd0===_0x1c990b[_0x2cd82c(0x161)]?_0x49968c=_0x1f22aa+_0x2cd82c(0x116):_0x49968c=_0x1f22aa+'_'+_0x3edfd0+'_'+_0x221733,{'formatKey':_0x49968c,'counterInt':_0x447f6,'datePrefix':_0x221733};}[a0_0x4b7b0d(0xf7)](_0x13a99c){const _0x34cb38=a0_0x4b7b0d;let _0xec97ff='';for(const _0x24e638 of _0x13a99c){const _0x28e560=PLACEHOLDER_MAP[_0x24e638];if(_0x28e560){const _0x222d34=crypto[_0x34cb38(0xe1)](0x0,_0x28e560[_0x34cb38(0x141)]);_0xec97ff+=_0x28e560[_0x222d34];}else _0xec97ff+=_0x24e638;}return _0xec97ff;}async['_retrieveIdemCache'](_0x5a3cee){const _0x15ea38=a0_0x4b7b0d,_0x4b68dd={'cdSWK':_0x15ea38(0x18d),'qRpMN':_0x15ea38(0x1ec)};if(!_0x5a3cee)return null;try{const _0x312d28=redisClient['getClient'](),_0x525d63=await _0x312d28[_0x15ea38(0x126)](_0x5a3cee);if(_0x525d63)return logger[_0x15ea38(0x13c)]({'event':_0x4b68dd['cdSWK'],'key':_0x5a3cee},_0x4b68dd['qRpMN']),JSON[_0x15ea38(0x164)](_0x525d63);return null;}catch(_0x1b3afd){return logger['warn']({'event':_0x15ea38(0xf6),'error':_0x1b3afd['message']},_0x15ea38(0xd6)),null;}}async[a0_0x4b7b0d(0x1a2)](_0x2ac866,_0x5c85cc){const _0x30eee3=a0_0x4b7b0d,_0x46d2fd={'pZHaI':'Idempotency\x20store\x20error'};if(!_0x2ac866)return;try{const _0x2be55c=redisClient[_0x30eee3(0x1a4)]();await _0x2be55c[_0x30eee3(0xed)](_0x2ac866,this[_0x30eee3(0xd7)],JSON[_0x30eee3(0x152)](_0x5c85cc));}catch(_0x52ea82){logger[_0x30eee3(0x1fc)]({'event':'idgen_idem_store_error','error':_0x52ea82['message']},_0x46d2fd[_0x30eee3(0x113)]);}}async['_storeIdemCacheNX'](_0x5aff1d,_0x366f92){const _0x2f1c29=a0_0x4b7b0d,_0x5c959d={'eeUjN':'idgen_idem_nx_race_lost_but_empty','YzUWI':_0x2f1c29(0xfd)};if(!_0x5aff1d)return{'stored':!![],'winnerResult':null};try{const _0x3917db=redisClient[_0x2f1c29(0x1a4)](),_0x57c88b=JSON['stringify'](_0x366f92),_0x2ca6eb=await _0x3917db['set'](_0x5aff1d,_0x57c88b,'EX',this[_0x2f1c29(0xd7)],'NX');if(_0x2ca6eb==='OK')return{'stored':!![],'winnerResult':null};const _0x593b1f=await _0x3917db[_0x2f1c29(0x126)](_0x5aff1d);if(_0x593b1f)return{'stored':![],'winnerResult':JSON['parse'](_0x593b1f)};return logger[_0x2f1c29(0x1fc)]({'event':_0x5c959d[_0x2f1c29(0x19f)],'key':_0x5aff1d},'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result'),{'stored':!![],'winnerResult':null};}catch(_0xd48c92){return logger['warn']({'event':_0x5c959d[_0x2f1c29(0x179)],'error':_0xd48c92[_0x2f1c29(0x17c)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x4b7b0d(0x180)](_0x25f40c,_0x38750c,_0x194ad9){const _0x3b304e=a0_0x4b7b0d,_0xe41bc5={'pinjW':'idgen_random_undo_error'};try{const _0x46710f=redisClient[_0x3b304e(0x1a4)]();if(_0x194ad9){const _0x56d02d=this['_buildActiveKey'](_0x25f40c,_0x38750c);await _0x46710f[_0x3b304e(0x1ea)](_0x56d02d);}else{const _0x1c22dc=this['_buildIssuedKey'](_0x25f40c);await _0x46710f['srem'](_0x1c22dc,_0x38750c);}}catch(_0xf839ee){logger[_0x3b304e(0x1fc)]({'event':_0xe41bc5['pinjW'],'error':_0xf839ee[_0x3b304e(0x17c)]},'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)');}}async[a0_0x4b7b0d(0x14d)](_0x311c3b,_0x806487,_0x178e53,_0x5a3887=0x0){const _0x36fcc2=a0_0x4b7b0d,_0x3a5a53={'WVxDa':function(_0x12a3d6,_0x518a28){return _0x12a3d6(_0x518a28);},'JpdbE':function(_0x462ca3,_0x4df8ce){return _0x462ca3>_0x4df8ce;}};try{const _0xdfc99e=redisClient[_0x36fcc2(0x1a4)](),_0xfbb424=this[_0x36fcc2(0x1f7)](_0x311c3b,_0x806487),_0x5ee9d6=[];for(const [_0x399d07,_0x4d0d56]of Object['entries'](_0x178e53)){_0x5ee9d6[_0x36fcc2(0x1f9)](_0x399d07,_0x3a5a53[_0x36fcc2(0x120)](String,_0x4d0d56));}if(_0x3a5a53['JpdbE'](_0x5ee9d6[_0x36fcc2(0x141)],0x0)){await _0xdfc99e['hset'](_0xfbb424,..._0x5ee9d6);if(_0x5a3887>0x0)await _0xdfc99e[_0x36fcc2(0x175)](_0xfbb424,_0x5a3887);}}catch(_0x3e8dd8){logger['warn']({'event':'idgen_meta_update_error','error':_0x3e8dd8['message']},_0x36fcc2(0x189));}}async[a0_0x4b7b0d(0x178)](_0x8515c4){const _0x4bd982=a0_0x4b7b0d,_0x71f45f={'ENtju':function(_0x5884f7,_0xf4a368){return _0x5884f7(_0xf4a368);},'RaAMY':_0x4bd982(0xd9),'JBSro':_0x4bd982(0x153)};if(!this[_0x4bd982(0x1d5)])throw new IdGeneratorError(_0x4bd982(0x10a),_0x4bd982(0xf3));const _0x5be168=this[_0x4bd982(0xf5)](_0x8515c4),_0x45c0d3=this['_validateIdempotencyKey'](_0x8515c4['idempotencyKey']),{resource:_0x45deee,format:_0x2775d7,prefix:_0x52d9ba,separator:_0x3d103d,numDigits:_0x62d68a,reuseDelete:_0x719690}=_0x5be168,{formatKey:_0x1c8ee8,datePrefix:_0xbbb0a7}=this[_0x4bd982(0x165)](_0x2775d7,_0x52d9ba),_0x4421c1=this[_0x4bd982(0x13f)](_0x45deee,_0x1c8ee8),_0x32a821=this[_0x4bd982(0x1f3)](_0x45deee,_0x1c8ee8),_0x431541=this['_getCounterTTL'](_0x2775d7);let _0x154fd9=null;if(_0x45c0d3){_0x154fd9=this[_0x4bd982(0x125)]('number',_0x45deee,_0x1c8ee8,_0x45c0d3);const _0x2f78be=await this[_0x4bd982(0xda)](_0x154fd9);if(_0x2f78be)return _0x2f78be;}const _0x118055=redisClient[_0x4bd982(0x1a4)](),_0x66572=await _0x118055['eval'](LUA_GENERATE_NUMBER,0x2,_0x4421c1,_0x32a821,_0x719690?'1':'0',_0x71f45f['ENtju'](String,_0x431541)),_0x33fdb9=_0x66572[0x0],_0x4c6cec=_0x66572[0x1]===0x1,_0x13dcee=this['_formatNumber']({'format':_0x2775d7,'prefix':_0x52d9ba,'datePrefix':_0xbbb0a7,'separator':_0x3d103d,'numDigits':_0x62d68a,'counterInt':_0x33fdb9}),_0x13ec47={'value':_0x13dcee,'counter':_0x33fdb9,'resource':_0x45deee,'formatKey':_0x1c8ee8,'isReused':_0x4c6cec,'generatedAt':new Date()['toISOString']()},_0x4f44f3=await this[_0x4bd982(0x16c)](_0x154fd9,_0x13ec47);if(!_0x4f44f3[_0x4bd982(0x184)]){try{await _0x118055[_0x4bd982(0xe6)](LUA_RELEASE_NUMBER,0x1,_0x32a821,_0x71f45f['ENtju'](String,_0x33fdb9),String(_0x431541));}catch(_0x3e9d2a){logger[_0x4bd982(0x1fc)]({'event':_0x4bd982(0x130),'error':_0x3e9d2a[_0x4bd982(0x17c)],'resource':_0x45deee,'formatKey':_0x1c8ee8,'counterInt':_0x33fdb9},_0x71f45f['RaAMY']);}return logger['info']({'event':_0x71f45f['JBSro'],'resource':_0x45deee,'formatKey':_0x1c8ee8,'counter':_0x33fdb9},_0x4bd982(0xf9)),_0x4f44f3['winnerResult'];}return this[_0x4bd982(0x14d)](_0x45deee,_0x1c8ee8,{'lastValue':_0x13dcee,'lastCounter':_0x33fdb9,'lastIsReused':_0x4c6cec,'lastGeneratedAt':_0x13ec47['generatedAt']},_0x431541),logger[_0x4bd982(0x13c)]({'event':_0x4bd982(0x192),'resource':_0x45deee,'formatKey':_0x1c8ee8,'counter':_0x33fdb9,'isReused':_0x4c6cec},_0x4bd982(0x194)+_0x13dcee),_0x13ec47;}async[a0_0x4b7b0d(0x146)](_0x5c3834){const _0x175dc0=a0_0x4b7b0d,_0x47f74d={'gjvHV':function(_0x336279,_0x3643f3){return _0x336279!==_0x3643f3;},'xMlAd':function(_0x722782,_0x5e7dbd){return _0x722782!==_0x5e7dbd;},'icYkl':function(_0x51550d,_0x16bbb0){return _0x51550d!==_0x16bbb0;},'kYGfn':_0x175dc0(0x12d),'VdPfi':function(_0x466849,_0x411c2c){return _0x466849===_0x411c2c;},'Pspbv':'IDGEN_INVALID_NUMBER','JTukM':'text','nhuzt':function(_0x32602b,_0x36bab0){return _0x32602b(_0x36bab0);}};if(!this[_0x175dc0(0x1d5)])throw new IdGeneratorError(_0x175dc0(0x10a),_0x175dc0(0x112));let _0x190abf,_0x1490bc,_0xf262ee,_0x3c207b;const _0x1a4b33=this[_0x175dc0(0x1d6)](_0x5c3834['idempotencyKey']);if(_0x47f74d['gjvHV'](_0x5c3834[_0x175dc0(0x10e)],undefined)&&_0x47f74d['xMlAd'](_0x5c3834[_0x175dc0(0x10e)],null)){this[_0x175dc0(0x142)](_0x5c3834[_0x175dc0(0x1c9)]),_0x190abf=_0x5c3834[_0x175dc0(0x1c9)];if(_0x47f74d['icYkl'](typeof _0x5c3834[_0x175dc0(0x1ce)],_0x47f74d[_0x175dc0(0x1bf)])||_0x47f74d['VdPfi'](_0x5c3834['formatKey']['length'],0x0))throw new IdGeneratorError(_0x47f74d[_0x175dc0(0x168)],_0x175dc0(0x1c0));_0x1490bc=_0x5c3834['formatKey'];if(!Number[_0x175dc0(0x102)](_0x5c3834[_0x175dc0(0x10e)])||_0x5c3834['counterInt']<0x1)throw new IdGeneratorError(_0x47f74d['Pspbv'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x5c3834['counterInt']+')');_0xf262ee=_0x5c3834[_0x175dc0(0x10e)];const _0x155f1e=_0x1490bc['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x3c207b=_0x155f1e?_0x155f1e[0x1]:_0x47f74d[_0x175dc0(0x16e)];}else{const _0x59d4d2=this['_validateNumberParams'](_0x5c3834),_0x16cb38=this[_0x175dc0(0xf4)]({'format':_0x59d4d2[_0x175dc0(0x14b)],'prefix':_0x59d4d2['prefix'],'separator':_0x59d4d2[_0x175dc0(0x18e)],'numDigits':_0x59d4d2[_0x175dc0(0x1ad)],'number':_0x5c3834['number']});_0x190abf=_0x59d4d2[_0x175dc0(0x1c9)],_0x1490bc=_0x16cb38[_0x175dc0(0x1ce)],_0xf262ee=_0x16cb38['counterInt'],_0x3c207b=_0x59d4d2[_0x175dc0(0x14b)];}const _0x450806=this[_0x175dc0(0x1f3)](_0x190abf,_0x1490bc),_0x141ffd=this['_getCounterTTL'](_0x3c207b);let _0x41403b=null;if(_0x1a4b33){_0x41403b=this[_0x175dc0(0x125)]('release',_0x190abf,_0x1490bc,_0x1a4b33);const _0x12a33=await this['_retrieveIdemCache'](_0x41403b);if(_0x12a33)return _0x12a33;}const _0x49ef85=redisClient[_0x175dc0(0x1a4)]();await _0x49ef85[_0x175dc0(0xe6)](LUA_RELEASE_NUMBER,0x1,_0x450806,String(_0xf262ee),_0x47f74d[_0x175dc0(0x1e7)](String,_0x141ffd));const _0x5b26c0={'released':!![],'resource':_0x190abf,'formatKey':_0x1490bc,'counter':_0xf262ee,'releasedAt':new Date()[_0x175dc0(0x186)]()};return await this['_storeIdemCache'](_0x41403b,_0x5b26c0),this['_updateMeta'](_0x190abf,_0x1490bc,{'lastReleasedCounter':_0xf262ee,'lastReleasedAt':_0x5b26c0['releasedAt']},_0x141ffd),logger['info']({'event':_0x175dc0(0x148),'resource':_0x190abf,'formatKey':_0x1490bc,'counter':_0xf262ee},_0x175dc0(0x1fe)+_0xf262ee),_0x5b26c0;}async[a0_0x4b7b0d(0x1eb)](_0x51276f){const _0x2b6f62=a0_0x4b7b0d,_0x3988f6={'EALkP':'IDGEN_DISABLED','AHkjX':function(_0xcabd,_0xeba9f3){return _0xcabd*_0xeba9f3;},'sYTra':'resource','Zjrnq':_0x2b6f62(0x1ce),'kvpHO':'separator','wuJXt':'numDigits','AcHpH':function(_0x33117f,_0x425951){return _0x33117f(_0x425951);},'GnkNa':_0x2b6f62(0x1ef),'irjtX':_0x2b6f62(0xea),'InHOD':'ttlMs','FZSjy':'idgen_reserve_overflow_compensation_error','cmhpR':'idgen_reserve_value_persist_error','IFMOL':_0x2b6f62(0xdb)};if(!this[_0x2b6f62(0x1d5)])throw new IdGeneratorError(_0x3988f6['EALkP'],'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0xbdeed=this['_validateNumberParams'](_0x51276f),_0x512df4=this[_0x2b6f62(0x19a)](_0x51276f[_0x2b6f62(0x183)]),_0x206e31=this[_0x2b6f62(0x1d6)](_0x51276f[_0x2b6f62(0x151)]),{resource:_0x499d2b,format:_0x2e4264,prefix:_0x20ae3e,separator:_0x553864,numDigits:_0x4df7b4,reuseDelete:_0x1930bc}=_0xbdeed,{formatKey:_0x128636,datePrefix:_0x4a8769}=this['_buildFormatKey'](_0x2e4264,_0x20ae3e),_0x411430=this[_0x2b6f62(0x13f)](_0x499d2b,_0x128636),_0xc0f806=this['_buildReuseKey'](_0x499d2b,_0x128636),_0x430b22=this['_buildReservationIndexKey'](_0x499d2b,_0x128636),_0xf8bfe0=this[_0x2b6f62(0x1e4)](_0x2e4264);let _0x4abf1=null;if(_0x206e31){_0x4abf1=this['_buildIdemKey'](_0x2b6f62(0x1a7),_0x499d2b,_0x128636,_0x206e31);const _0x436fc2=await this[_0x2b6f62(0xda)](_0x4abf1);if(_0x436fc2)return _0x436fc2;}const _0x38c5e8=crypto['randomUUID'](),_0xef7b26=this[_0x2b6f62(0x1e2)](_0x38c5e8),_0x568021=this['_buildReservationKeyPrefix'](),_0x16dc76=Date[_0x2b6f62(0x1cc)](),_0x18e670=_0x16dc76+_0x3988f6['AHkjX'](_0x512df4,0x3e8),_0x34c974=_0x512df4*0x3e8,_0x22ad0f=new Date(_0x16dc76)['toISOString'](),_0x1c9515=new Date(_0x18e670)['toISOString'](),_0x214308=[_0x3988f6[_0x2b6f62(0x16d)],_0x499d2b,_0x3988f6['Zjrnq'],_0x128636,_0x2b6f62(0x14b),_0x2e4264,'prefix',_0x20ae3e,_0x3988f6['kvpHO'],_0x553864,_0x3988f6[_0x2b6f62(0x13d)],_0x3988f6[_0x2b6f62(0xe0)](String,_0x4df7b4),'datePrefix',_0x4a8769||'',_0x3988f6['GnkNa'],_0x22ad0f,_0x3988f6['irjtX'],_0x1c9515,_0x3988f6[_0x2b6f62(0x1b4)],String(_0x34c974)];_0x206e31&&_0x214308[_0x2b6f62(0x1f9)](_0x2b6f62(0xfa),_0x206e31);const _0x1d7260=redisClient['getClient'](),_0x555633=await _0x1d7260['eval'](LUA_RESERVE_NUMBER,0x3,_0x411430,_0xc0f806,_0x430b22,_0x1930bc?'1':'0',String(_0xf8bfe0),_0x38c5e8,_0xef7b26,String(_0x34c974),_0x3988f6[_0x2b6f62(0xe0)](String,_0x18e670),_0x3988f6[_0x2b6f62(0xe0)](String,_0x16dc76),_0x568021,..._0x214308),_0x262dc7=_0x555633[0x0],_0x19c2f9=_0x555633[0x1]===0x1,_0x338f78=_0x555633[0x2]||0x0;let _0x25a75b;try{_0x25a75b=this['_formatNumber']({'format':_0x2e4264,'prefix':_0x20ae3e,'datePrefix':_0x4a8769,'separator':_0x553864,'numDigits':_0x4df7b4,'counterInt':_0x262dc7});}catch(_0x496094){try{await _0x1d7260[_0x2b6f62(0xe6)](LUA_CANCEL_RESERVATION,0x3,_0xef7b26,_0x430b22,_0xc0f806,_0x38c5e8,String(_0xf8bfe0));}catch(_0x3cd8bb){logger[_0x2b6f62(0x1fc)]({'event':_0x3988f6['FZSjy'],'error':_0x3cd8bb[_0x2b6f62(0x17c)],'resource':_0x499d2b,'formatKey':_0x128636,'counterInt':_0x262dc7,'token':_0x38c5e8},_0x2b6f62(0x154));}throw _0x496094;}try{await _0x1d7260['hset'](_0xef7b26,'value',_0x25a75b);}catch(_0x2b1e30){logger[_0x2b6f62(0x1fc)]({'event':_0x3988f6[_0x2b6f62(0x163)],'error':_0x2b1e30[_0x2b6f62(0x17c)],'resource':_0x499d2b,'formatKey':_0x128636,'counterInt':_0x262dc7,'token':_0x38c5e8},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0x36e726={'token':_0x38c5e8,'value':_0x25a75b,'counter':_0x262dc7,'resource':_0x499d2b,'formatKey':_0x128636,'isReused':_0x19c2f9,'createdAt':_0x22ad0f,'expiresAt':_0x1c9515,'reapedCount':_0x338f78},_0x46ba5f=await this[_0x2b6f62(0x16c)](_0x4abf1,_0x36e726);if(!_0x46ba5f[_0x2b6f62(0x184)]){try{await _0x1d7260[_0x2b6f62(0xe6)](LUA_CANCEL_RESERVATION,0x3,_0xef7b26,_0x430b22,_0xc0f806,_0x38c5e8,String(_0xf8bfe0));}catch(_0x563d14){logger['warn']({'event':_0x2b6f62(0x118),'error':_0x563d14[_0x2b6f62(0x17c)],'resource':_0x499d2b,'formatKey':_0x128636,'counterInt':_0x262dc7,'token':_0x38c5e8},_0x2b6f62(0x17a));}return logger[_0x2b6f62(0x13c)]({'event':_0x2b6f62(0x1e8),'resource':_0x499d2b,'formatKey':_0x128636,'counter':_0x262dc7,'token':_0x38c5e8},_0x2b6f62(0x137)),_0x46ba5f[_0x2b6f62(0xdc)];}return this[_0x2b6f62(0x14d)](_0x499d2b,_0x128636,{'lastReservedCounter':_0x262dc7,'lastReservedAt':_0x22ad0f,'lastReapedCount':_0x338f78},_0xf8bfe0),logger[_0x2b6f62(0x13c)]({'event':_0x3988f6['IFMOL'],'resource':_0x499d2b,'formatKey':_0x128636,'counter':_0x262dc7,'isReused':_0x19c2f9,'token':_0x38c5e8,'ttl':_0x512df4,'reapedCount':_0x338f78},'ID\x20Generator\x20number\x20reserved:\x20'+_0x25a75b+'\x20(token='+_0x38c5e8+')'),_0x36e726;}async['confirmReservation'](_0xc9794b){const _0x3630ae=a0_0x4b7b0d,_0x393755={'dVeah':_0x3630ae(0x10a),'mUlvU':_0x3630ae(0x112),'XCHdv':_0x3630ae(0x1bd),'vBPIu':'text'};if(!this['enabled'])throw new IdGeneratorError(_0x393755[_0x3630ae(0x1fb)],_0x393755[_0x3630ae(0x1a6)]);const _0x158d68=this[_0x3630ae(0x104)](_0xc9794b&&_0xc9794b['token']),_0x21accc=this[_0x3630ae(0x1d6)](_0xc9794b&&_0xc9794b[_0x3630ae(0x151)]);let _0x3f6328=null;if(_0x21accc){_0x3f6328=idempotencyManager['buildDeterministicKey'](_0x3630ae(0x1d8),_0x393755[_0x3630ae(0x1f0)],_0x158d68+':'+_0x21accc);const _0x4c62e3=await this[_0x3630ae(0xda)](_0x3f6328);if(_0x4c62e3)return _0x4c62e3;}const _0x438e3c=await this['_getReservationContext'](_0x158d68),_0x51a28d=redisClient[_0x3630ae(0x1a4)](),_0x128861=await _0x51a28d[_0x3630ae(0xe6)](LUA_CONFIRM_RESERVATION,0x2,_0x438e3c['rsvKey'],_0x438e3c[_0x3630ae(0x156)],_0x158d68);if(!_0x128861||_0x128861[0x0]!==0x1)throw new IdGeneratorError(_0x3630ae(0x18b),_0x3630ae(0x15d)+_0x158d68,{'token':_0x158d68});const _0x7c8d52=parseInt(_0x128861[0x1],0xa),_0x166a07=_0x128861[0x2],_0x448027=_0x128861[0x3],_0x159c91=new Date()[_0x3630ae(0x186)](),_0x5c451b={'confirmed':!![],'token':_0x158d68,'value':_0x166a07,'counter':_0x7c8d52,'resource':_0x438e3c[_0x3630ae(0x1c9)],'formatKey':_0x448027,'confirmedAt':_0x159c91};await this['_storeIdemCache'](_0x3f6328,_0x5c451b);const _0x5e5cba=_0x448027[_0x3630ae(0x1cb)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1cc0b2=_0x5e5cba?_0x5e5cba[0x1]:_0x393755['vBPIu'],_0x12fe3c=this[_0x3630ae(0x1e4)](_0x1cc0b2);return this['_updateMeta'](_0x438e3c['resource'],_0x448027,{'lastConfirmedCounter':_0x7c8d52,'lastConfirmedAt':_0x159c91},_0x12fe3c),logger['info']({'event':_0x3630ae(0x190),'resource':_0x438e3c[_0x3630ae(0x1c9)],'formatKey':_0x448027,'counter':_0x7c8d52,'token':_0x158d68},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0x166a07+_0x3630ae(0x17e)+_0x158d68+')'),_0x5c451b;}async['cancelReservation'](_0x428cb1){const _0x2f3307=a0_0x4b7b0d,_0x8f378c={'PAIqL':'ID\x20Generator\x20is\x20disabled','QTkne':_0x2f3307(0x144),'lRGXh':'IDGEN_RESERVATION_NOT_FOUND'};if(!this[_0x2f3307(0x1d5)])throw new IdGeneratorError('IDGEN_DISABLED',_0x8f378c['PAIqL']);const _0x764b8=this['_validateReservationToken'](_0x428cb1&&_0x428cb1[_0x2f3307(0x123)]),_0x5666d2=this[_0x2f3307(0x1d6)](_0x428cb1&&_0x428cb1[_0x2f3307(0x151)]);let _0x5e6e59=null;if(_0x5666d2){_0x5e6e59=idempotencyManager['buildDeterministicKey']('idgen',_0x8f378c['QTkne'],_0x764b8+':'+_0x5666d2);const _0x228f8e=await this[_0x2f3307(0xda)](_0x5e6e59);if(_0x228f8e)return _0x228f8e;}const _0x2709ce=await this[_0x2f3307(0xfb)](_0x764b8),_0x4de895=this[_0x2f3307(0x1f3)](_0x2709ce['resource'],_0x2709ce['formatKey']),_0x20c332=_0x2709ce['formatKey']['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3a2d99=_0x20c332?_0x20c332[0x1]:'text',_0x5fde04=this[_0x2f3307(0x1e4)](_0x3a2d99),_0x3561be=redisClient['getClient'](),_0x3872e4=await _0x3561be[_0x2f3307(0xe6)](LUA_CANCEL_RESERVATION,0x3,_0x2709ce[_0x2f3307(0x134)],_0x2709ce['rsvIdxKey'],_0x4de895,_0x764b8,String(_0x5fde04));if(!_0x3872e4||_0x3872e4[0x0]!==0x1)throw new IdGeneratorError(_0x8f378c['lRGXh'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x764b8,{'token':_0x764b8});const _0x31c888=parseInt(_0x3872e4[0x1],0xa),_0x4d1002=_0x3872e4[0x2],_0x144a53=_0x3872e4[0x3],_0x22ca53=new Date()[_0x2f3307(0x186)](),_0x22c5e0={'cancelled':!![],'token':_0x764b8,'value':_0x4d1002,'counter':_0x31c888,'resource':_0x2709ce['resource'],'formatKey':_0x144a53,'releasedToReuse':!![],'cancelledAt':_0x22ca53};return await this['_storeIdemCache'](_0x5e6e59,_0x22c5e0),this[_0x2f3307(0x14d)](_0x2709ce['resource'],_0x144a53,{'lastCancelledCounter':_0x31c888,'lastCancelledAt':_0x22ca53},_0x5fde04),logger['info']({'event':_0x2f3307(0x14f),'resource':_0x2709ce[_0x2f3307(0x1c9)],'formatKey':_0x144a53,'counter':_0x31c888,'token':_0x764b8},_0x2f3307(0x159)+_0x4d1002+_0x2f3307(0x17e)+_0x764b8+')'),_0x22c5e0;}async['extendReservation'](_0x2452e0){const _0x31e93a=a0_0x4b7b0d,_0xa7c246={'dzWIm':'idgen','EvBBI':'reserve_extend','BWkuG':function(_0x175c84,_0x5224d2){return _0x175c84!==_0x5224d2;},'tBBXK':function(_0x46894d,_0x28de7d,_0x40c2ff){return _0x46894d(_0x28de7d,_0x40c2ff);}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x31e93a(0x112));const _0x3bbcc7=this[_0x31e93a(0x104)](_0x2452e0&&_0x2452e0[_0x31e93a(0x123)]),_0x3bf2f5=this['_validateReserveTTL'](_0x2452e0&&_0x2452e0['ttl']),_0x2daac6=this['_validateIdempotencyKey'](_0x2452e0&&_0x2452e0[_0x31e93a(0x151)]);let _0x3f7939=null;if(_0x2daac6){_0x3f7939=idempotencyManager['buildDeterministicKey'](_0xa7c246['dzWIm'],_0xa7c246[_0x31e93a(0x1f2)],_0x3bbcc7+':'+_0x2daac6);const _0xbb53b0=await this['_retrieveIdemCache'](_0x3f7939);if(_0xbb53b0)return _0xbb53b0;}const _0x5ccff0=await this[_0x31e93a(0xfb)](_0x3bbcc7),_0x111f04=Date[_0x31e93a(0x1cc)](),_0x56dab7=_0x111f04+_0x3bf2f5*0x3e8,_0x2b6fa7=_0x3bf2f5*0x3e8,_0x585897=new Date(_0x56dab7)[_0x31e93a(0x186)](),_0x514b8f=redisClient[_0x31e93a(0x1a4)](),_0xb64dee=await _0x514b8f[_0x31e93a(0xe6)](LUA_EXTEND_RESERVATION,0x2,_0x5ccff0['rsvKey'],_0x5ccff0[_0x31e93a(0x156)],_0x3bbcc7,String(_0x2b6fa7),String(_0x56dab7),_0x585897);if(!_0xb64dee||_0xa7c246[_0x31e93a(0xf2)](_0xb64dee[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x3bbcc7,{'token':_0x3bbcc7});const _0x29a626=_0xb64dee[0x1],_0x1a2233=_0xa7c246['tBBXK'](parseInt,_0xb64dee[0x2],0xa),_0x284dc3=_0xb64dee[0x3],_0x9d25d2=_0xb64dee[0x4],_0x4f7961=new Date(_0x111f04)[_0x31e93a(0x186)](),_0x2f14da={'extended':!![],'token':_0x3bbcc7,'previousExpiresAt':_0x29a626,'expiresAt':_0x585897,'ttlMs':_0x2b6fa7,'resource':_0x5ccff0[_0x31e93a(0x1c9)],'formatKey':_0x9d25d2,'counter':_0x1a2233,'value':_0x284dc3,'extendedAt':_0x4f7961};await this['_storeIdemCache'](_0x3f7939,_0x2f14da);const _0x581ad0=_0x9d25d2['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x493655=_0x581ad0?_0x581ad0[0x1]:'text',_0x310b58=this['_getCounterTTL'](_0x493655);return this[_0x31e93a(0x14d)](_0x5ccff0['resource'],_0x9d25d2,{'lastExtendedCounter':_0x1a2233,'lastExtendedAt':_0x4f7961},_0x310b58),logger['info']({'event':'idgen_reservation_extended','resource':_0x5ccff0[_0x31e93a(0x1c9)],'formatKey':_0x9d25d2,'counter':_0x1a2233,'token':_0x3bbcc7,'ttl':_0x3bf2f5},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x284dc3+_0x31e93a(0x17e)+_0x3bbcc7+_0x31e93a(0x193)+_0x3bf2f5+'s)'),_0x2f14da;}async['getReservation'](_0x45b032){const _0x459dd9=a0_0x4b7b0d,_0x4c9ef1={'yHzyH':_0x459dd9(0x10a),'NPOmi':function(_0x26446b,_0x27e392){return _0x26446b===_0x27e392;},'cuwVX':function(_0x1c2cb2,_0x10a5eb,_0x171830){return _0x1c2cb2(_0x10a5eb,_0x171830);},'ENUOX':function(_0x2979e7,_0x527a49){return _0x2979e7===_0x527a49;}};if(!this[_0x459dd9(0x1d5)])throw new IdGeneratorError(_0x4c9ef1['yHzyH'],_0x459dd9(0x112));const _0x4bb8af=this['_validateReservationToken'](_0x45b032&&_0x45b032['token']),_0x3cbebb=this['_buildReservationKey'](_0x4bb8af),_0x3f2f98=redisClient[_0x459dd9(0x1a4)](),_0x8cd106=_0x3f2f98['pipeline']();_0x8cd106[_0x459dd9(0x101)](_0x3cbebb),_0x8cd106[_0x459dd9(0x133)](_0x3cbebb);const _0x447398=await _0x8cd106[_0x459dd9(0x199)](),_0x477e8f=_0x447398&&_0x447398[0x0]&&_0x447398[0x0][0x1],_0x535aa9=_0x447398&&_0x447398[0x1]&&_0x447398[0x1][0x1];if(!_0x477e8f||_0x4c9ef1[_0x459dd9(0x185)](Object[_0x459dd9(0x181)](_0x477e8f)['length'],0x0))throw new IdGeneratorError(_0x459dd9(0x18b),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x4bb8af,{'token':_0x4bb8af});return{'token':_0x4bb8af,'resource':_0x477e8f[_0x459dd9(0x1c9)]||null,'formatKey':_0x477e8f['formatKey']||null,'format':_0x477e8f['format']||null,'prefix':_0x477e8f[_0x459dd9(0xef)]||'','separator':_0x477e8f[_0x459dd9(0x18e)]||'','numDigits':_0x477e8f['numDigits']?parseInt(_0x477e8f['numDigits'],0xa):null,'datePrefix':_0x477e8f[_0x459dd9(0x1df)]||'','counter':_0x477e8f[_0x459dd9(0x1b8)]?_0x4c9ef1[_0x459dd9(0x1b3)](parseInt,_0x477e8f['counter'],0xa):null,'value':_0x477e8f['value']||null,'isReused':_0x4c9ef1[_0x459dd9(0x1b0)](_0x477e8f[_0x459dd9(0x187)],'1')||_0x477e8f[_0x459dd9(0x187)]===0x1,'createdAt':_0x477e8f['createdAt']||null,'expiresAt':_0x477e8f['expiresAt']||null,'ttlRemainingMs':typeof _0x535aa9==='number'&&_0x535aa9>=0x0?_0x535aa9:null};}async['_getReservationContext'](_0x501caf){const _0x543725=a0_0x4b7b0d,_0xd3ce17={'caBnD':'resource','URjDr':'formatKey','mrsPP':'IDGEN_RESERVATION_NOT_FOUND'},_0x580015=this[_0x543725(0x1e2)](_0x501caf),_0x265895=redisClient[_0x543725(0x1a4)](),_0x2697a1=await _0x265895['hmget'](_0x580015,_0xd3ce17[_0x543725(0x1ed)],_0xd3ce17['URjDr']),_0x25d6af=_0x2697a1&&_0x2697a1[0x0],_0x248284=_0x2697a1&&_0x2697a1[0x1];if(!_0x25d6af||!_0x248284)throw new IdGeneratorError(_0xd3ce17['mrsPP'],_0x543725(0x15d)+_0x501caf,{'token':_0x501caf});return{'resource':_0x25d6af,'formatKey':_0x248284,'rsvKey':_0x580015,'rsvIdxKey':this['_buildReservationIndexKey'](_0x25d6af,_0x248284)};}async[a0_0x4b7b0d(0x14a)](_0x436386){const _0xdc5bda=a0_0x4b7b0d,_0x2115e7={'YcGxk':'ID\x20Generator\x20is\x20disabled','ubAjl':function(_0x8584fb,_0x30ed6c){return _0x8584fb===_0x30ed6c;},'wlssx':function(_0x259e3d,_0x5905f4){return _0x259e3d===_0x5905f4;},'Tuxhx':_0xdc5bda(0x195),'RnvBy':function(_0x118c04,_0x5dfa6a){return _0x118c04&&_0x5dfa6a;},'KwUiz':function(_0x19df4a,_0x5a625d){return _0x19df4a+_0x5a625d;},'BfLUl':'idgen_random_generated','gYRHk':function(_0x46af48,_0x45edb8){return _0x46af48||_0x45edb8;}};if(!this[_0xdc5bda(0x1d5)])throw new IdGeneratorError('IDGEN_DISABLED',_0x2115e7[_0xdc5bda(0x1ae)]);this['_validateResource'](_0x436386[_0xdc5bda(0x1c9)]),this['_validatePattern'](_0x436386['pattern']);const _0x5b537f=this['_validateTTL'](_0x436386[_0xdc5bda(0x183)]),_0x429c7c=this[_0xdc5bda(0x1f5)](_0x436386[_0xdc5bda(0x1ee)]),_0x24f8e2=this['_validateIdempotencyKey'](_0x436386[_0xdc5bda(0x151)]),_0x5c4c63=_0x2115e7[_0xdc5bda(0x174)](_0x436386[_0xdc5bda(0x1b9)],!![]),{resource:_0x3d6f32,pattern:_0x261da4}=_0x436386;let _0x44c3cc=null;if(_0x24f8e2){_0x44c3cc=this['_buildIdemKey']('random',_0x3d6f32,null,_0x24f8e2);const _0xd2a730=await this[_0xdc5bda(0xda)](_0x44c3cc);if(_0xd2a730)return _0xd2a730;}const _0x5278ba=redisClient['getClient']();let _0x162aeb=null,_0x9e6659=0x0;if(!_0x5c4c63)_0x162aeb=this[_0xdc5bda(0xf7)](_0x261da4),_0x9e6659=0x1;else{for(let _0x579f79=0x0;_0x579f79<_0x429c7c;_0x579f79++){_0x9e6659++;const _0x4c83a3=this['_generateFromPattern'](_0x261da4);if(_0x5b537f){const _0x4b64e4=this[_0xdc5bda(0x1ab)](_0x3d6f32,_0x4c83a3),_0x19b101=await _0x5278ba['set'](_0x4b64e4,'1','EX',_0x5b537f,'NX');if(_0x2115e7[_0xdc5bda(0x1a0)](_0x19b101,'OK')){_0x162aeb=_0x4c83a3;break;}}else{const _0x452863=this['_buildIssuedKey'](_0x3d6f32),_0x5d4269=await _0x5278ba['sadd'](_0x452863,_0x4c83a3);if(_0x5d4269===0x1){_0x162aeb=_0x4c83a3;break;}}}if(_0x162aeb===null)throw new IdGeneratorError(_0x2115e7['Tuxhx'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x429c7c+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x3d6f32,'pattern':_0x261da4,'maxRetry':_0x429c7c});}const _0x37d33a={'value':_0x162aeb,'resource':_0x3d6f32,'pattern':_0x261da4,'attemptCount':_0x9e6659,'generatedAt':new Date()[_0xdc5bda(0x186)]()};_0x2115e7[_0xdc5bda(0x1a3)](_0x5b537f,_0x5c4c63)&&(_0x37d33a['expiresAt']=new Date(_0x2115e7['KwUiz'](Date['now'](),_0x5b537f*0x3e8))[_0xdc5bda(0x186)]());const _0x1be2d8=await this['_storeIdemCacheNX'](_0x44c3cc,_0x37d33a);if(!_0x1be2d8[_0xdc5bda(0x184)])return _0x5c4c63&&await this['_undoRandomReservation'](_0x3d6f32,_0x162aeb,_0x5b537f),logger[_0xdc5bda(0x13c)]({'event':'idgen_random_idem_loser','resource':_0x3d6f32,'pattern':_0x261da4,'value':_0x162aeb},_0xdc5bda(0xeb)),_0x1be2d8[_0xdc5bda(0xdc)];return logger['info']({'event':_0x2115e7[_0xdc5bda(0x1e3)],'resource':_0x3d6f32,'pattern':_0x261da4,'attemptCount':_0x9e6659,'ensureUnique':_0x5c4c63,'ttl':_0x2115e7[_0xdc5bda(0x103)](_0x5b537f,0x0)},_0xdc5bda(0x12c)+_0x162aeb),_0x37d33a;}async['pin'](_0x33662b){const _0x53b361=a0_0x4b7b0d,_0x34d665=_0x33662b[_0x53b361(0x108)]==null?this['defaultPinDigits']:_0x33662b[_0x53b361(0x108)];if(!Number[_0x53b361(0x102)](_0x34d665)||_0x34d665<MIN_PIN_DIGITS||_0x34d665>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x53b361(0x1f4),_0x53b361(0x1c8)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x34d665+')');const _0x280206='9'[_0x53b361(0x1ba)](_0x34d665);return this['random']({'resource':_0x33662b[_0x53b361(0x1c9)],'pattern':_0x280206,'ensureUnique':_0x33662b[_0x53b361(0x1b9)]===!![],'ttl':_0x33662b[_0x53b361(0x183)],'maxRetry':_0x33662b[_0x53b361(0x1ee)],'idempotencyKey':_0x33662b['idempotencyKey']});}async[a0_0x4b7b0d(0x1f6)](_0x45fd2f){const _0x199e77=a0_0x4b7b0d,_0x556c9c={'CcpJT':function(_0xcc5b1,_0x5b0603){return _0xcc5b1!==_0x5b0603;}},_0x47cdad=_0x45fd2f['pattern']||this[_0x199e77(0x18a)];return this['random']({'resource':_0x45fd2f['resource'],'pattern':_0x47cdad,'ensureUnique':_0x556c9c['CcpJT'](_0x45fd2f['ensureUnique'],![]),'ttl':_0x45fd2f[_0x199e77(0x183)],'maxRetry':_0x45fd2f['maxRetry'],'idempotencyKey':_0x45fd2f[_0x199e77(0x151)]});}async[a0_0x4b7b0d(0x107)](_0x5645a3){const _0x16a88b=a0_0x4b7b0d,_0x5616fc=_0x5645a3['pattern']||this['defaultCodePattern'];return this[_0x16a88b(0x14a)]({'resource':_0x5645a3[_0x16a88b(0x1c9)],'pattern':_0x5616fc,'ensureUnique':_0x5645a3['ensureUnique']!==![],'ttl':_0x5645a3['ttl'],'maxRetry':_0x5645a3['maxRetry'],'idempotencyKey':_0x5645a3['idempotencyKey']});}async['consume'](_0x1d1790){const _0x3748fa=a0_0x4b7b0d,_0x5ebb0c={'XDhQT':'string','wmbgU':function(_0xf9707c,_0x14f8ad){return _0xf9707c===_0x14f8ad;},'SrkcX':function(_0x578337,_0x15d755){return _0x578337>_0x15d755;},'gFFHg':_0x3748fa(0x12e)};if(!this[_0x3748fa(0x1d5)])throw new IdGeneratorError(_0x3748fa(0x10a),_0x3748fa(0x112));this['_validateResource'](_0x1d1790['resource']);if(typeof _0x1d1790['value']!==_0x5ebb0c['XDhQT']||_0x5ebb0c['wmbgU'](_0x1d1790['value'][_0x3748fa(0x141)],0x0))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x3748fa(0x117));const {resource:_0x4a94ec,value:_0x3c1b3e}=_0x1d1790,_0x34933e=redisClient[_0x3748fa(0x1a4)](),_0x25728d=this[_0x3748fa(0x1ab)](_0x4a94ec,_0x3c1b3e),_0x568f22=this['_buildIssuedKey'](_0x4a94ec),[_0x503ea5,_0x38f278]=await Promise['all']([_0x34933e['del'](_0x25728d),_0x34933e[_0x3748fa(0x173)](_0x568f22,_0x3c1b3e)]),_0x14ac71=_0x5ebb0c[_0x3748fa(0x172)](_0x503ea5+_0x38f278,0x0);return logger['info']({'event':_0x5ebb0c['gFFHg'],'resource':_0x4a94ec,'value':_0x3c1b3e,'consumed':_0x14ac71},_0x3748fa(0x15e)+_0x3c1b3e),{'consumed':_0x14ac71,'resource':_0x4a94ec,'value':_0x3c1b3e,'consumedAt':new Date()['toISOString']()};}async[a0_0x4b7b0d(0x1cf)](_0x5e3dd7){const _0x4a3b03=a0_0x4b7b0d,_0x3af6bf={'zqTCe':_0x4a3b03(0x10a),'pPvSu':function(_0x10c869,_0x5aa0b){return _0x10c869===_0x5aa0b;},'Batrf':'number','hzvIT':'text','OxvdI':'IDGEN_INVALID_FORMAT','EiYAW':function(_0x2e89c7,_0x288a5a,_0x3edd8e){return _0x2e89c7(_0x288a5a,_0x3edd8e);},'zhyuM':function(_0x3a25b4,_0x7a15f4){return _0x3a25b4||_0x7a15f4;},'SHWgy':function(_0x4e0f10,_0x346727){return _0x4e0f10===_0x346727;},'omGef':function(_0xd5cca0,_0x4d272b){return _0xd5cca0||_0x4d272b;},'IgMPI':'IDGEN_INVALID_MODE'};if(!this[_0x4a3b03(0x1d5)])throw new IdGeneratorError(_0x3af6bf['zqTCe'],_0x4a3b03(0x112));this[_0x4a3b03(0x142)](_0x5e3dd7[_0x4a3b03(0x1c9)]);const _0x15857c=_0x5e3dd7[_0x4a3b03(0x1dd)]||'number',_0x31cfc2=redisClient['getClient']();if(_0x3af6bf['pPvSu'](_0x15857c,_0x3af6bf[_0x4a3b03(0x124)])){const _0x35bd75=(_0x5e3dd7[_0x4a3b03(0x14b)]||_0x3af6bf[_0x4a3b03(0xf0)])[_0x4a3b03(0xde)]();if(!ALLOWED_FORMATS[_0x4a3b03(0x15b)](_0x35bd75))throw new IdGeneratorError(_0x3af6bf['OxvdI'],_0x4a3b03(0x11b)+_0x5e3dd7['format']);const {formatKey:_0x48d2ec}=this[_0x4a3b03(0x165)](_0x35bd75,_0x5e3dd7['prefix']||''),_0x3a7a90=this[_0x4a3b03(0x13f)](_0x5e3dd7['resource'],_0x48d2ec),_0x230e2c=this['_buildReuseKey'](_0x5e3dd7[_0x4a3b03(0x1c9)],_0x48d2ec),[_0x924463,_0x17ca12]=await Promise['all']([_0x31cfc2[_0x4a3b03(0x126)](_0x3a7a90),_0x31cfc2[_0x4a3b03(0x15a)](_0x230e2c)]);return{'resource':_0x5e3dd7['resource'],'mode':_0x3af6bf['Batrf'],'formatKey':_0x48d2ec,'currentCounter':_0x3af6bf['EiYAW'](parseInt,_0x924463,0xa)||0x0,'reusePoolSize':_0x3af6bf[_0x4a3b03(0xee)](_0x17ca12,0x0)};}if(_0x3af6bf[_0x4a3b03(0x106)](_0x15857c,_0x4a3b03(0x14a))){const _0x333cf6=this['_buildIssuedKey'](_0x5e3dd7[_0x4a3b03(0x1c9)]),_0x4fc17c=await _0x31cfc2['scard'](_0x333cf6);return{'resource':_0x5e3dd7[_0x4a3b03(0x1c9)],'mode':_0x4a3b03(0x14a),'issuedCount':_0x3af6bf['omGef'](_0x4fc17c,0x0)};}throw new IdGeneratorError(_0x3af6bf['IgMPI'],'Unknown\x20mode:\x20'+_0x15857c);}async['getInfo'](_0x3bb77b){const _0x43b63b=a0_0x4b7b0d,_0x103383={'LAhxv':function(_0x4e448d,_0x30a8c9){return _0x4e448d===_0x30a8c9;}},_0x2cab73=await this[_0x43b63b(0x1cf)](_0x3bb77b);if(_0x103383[_0x43b63b(0x1aa)](_0x2cab73[_0x43b63b(0x1dd)],_0x43b63b(0x178))){const _0x4ec96e=redisClient[_0x43b63b(0x1a4)](),_0x4eaa90=this[_0x43b63b(0x1f7)](_0x3bb77b[_0x43b63b(0x1c9)],_0x2cab73['formatKey']),_0x511910=this['_buildReuseKey'](_0x3bb77b[_0x43b63b(0x1c9)],_0x2cab73[_0x43b63b(0x1ce)]),[_0xbb580a,_0x326783]=await Promise[_0x43b63b(0x131)]([_0x4ec96e['hgetall'](_0x4eaa90),_0x4ec96e[_0x43b63b(0x13a)](_0x511910,0x0,-0x1)]);return{..._0x2cab73,'reusePoolValues':_0x326783[_0x43b63b(0x18c)](_0x7df1ae=>parseInt(_0x7df1ae,0xa)),'meta':_0xbb580a&&Object[_0x43b63b(0x181)](_0xbb580a)[_0x43b63b(0x141)]>0x0?_0xbb580a:null};}return _0x2cab73;}async[a0_0x4b7b0d(0x1be)](_0x3c9feb){const _0x5defdf=a0_0x4b7b0d,_0x26937d={'nEuQC':_0x5defdf(0x16b),'gUsap':'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)','WvRaG':_0x5defdf(0x178),'UXQjN':'text','WZmfK':'IDGEN_INVALID_FORMAT','MkvGx':'idgen_reset','koHao':_0x5defdf(0x135),'fMuJY':'meta','oySxu':_0x5defdf(0x14a),'TJVcG':_0x5defdf(0x1b2)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');if(!this['allowReset'])throw new IdGeneratorError(_0x26937d[_0x5defdf(0x1af)],_0x26937d['gUsap']);this['_validateResource'](_0x3c9feb['resource']);const _0xc5e5cb=_0x3c9feb['mode']||_0x26937d['WvRaG'],_0x52ccbf=redisClient[_0x5defdf(0x1a4)]();if(_0xc5e5cb===_0x26937d[_0x5defdf(0x111)]){const _0x268de1=(_0x3c9feb['format']||_0x26937d[_0x5defdf(0x14c)])[_0x5defdf(0xde)]();if(!ALLOWED_FORMATS['has'](_0x268de1))throw new IdGeneratorError(_0x26937d['WZmfK'],_0x5defdf(0x11b)+_0x3c9feb['format']);const {formatKey:_0x115b21}=this[_0x5defdf(0x165)](_0x268de1,_0x3c9feb[_0x5defdf(0xef)]||''),_0x483a61=this['_buildSeqKey'](_0x3c9feb[_0x5defdf(0x1c9)],_0x115b21),_0xda14d2=this[_0x5defdf(0x1f3)](_0x3c9feb[_0x5defdf(0x1c9)],_0x115b21),_0x53f98b=this[_0x5defdf(0x1f7)](_0x3c9feb[_0x5defdf(0x1c9)],_0x115b21);return await _0x52ccbf['del'](_0x483a61,_0xda14d2,_0x53f98b),logger['warn']({'event':_0x26937d[_0x5defdf(0x105)],'resource':_0x3c9feb['resource'],'mode':_0x5defdf(0x178),'formatKey':_0x115b21},_0x5defdf(0x10b)+_0x3c9feb['resource']+':'+_0x115b21),{'reset':!![],'resource':_0x3c9feb[_0x5defdf(0x1c9)],'mode':_0x26937d['WvRaG'],'formatKey':_0x115b21,'deletedKeys':['seq',_0x26937d['koHao'],_0x26937d['fMuJY']]};}if(_0xc5e5cb===_0x26937d[_0x5defdf(0x1c4)]){const _0x5be825=this['_buildIssuedKey'](_0x3c9feb[_0x5defdf(0x1c9)]);return await _0x52ccbf[_0x5defdf(0x1ea)](_0x5be825),logger[_0x5defdf(0x1fc)]({'event':_0x5defdf(0x12b),'resource':_0x3c9feb['resource'],'mode':_0x5defdf(0x14a)},_0x5defdf(0x122)+_0x3c9feb['resource']),{'reset':!![],'resource':_0x3c9feb[_0x5defdf(0x1c9)],'mode':_0x26937d['oySxu'],'deletedKeys':[_0x26937d[_0x5defdf(0x147)]]};}throw new IdGeneratorError('IDGEN_INVALID_MODE',_0x5defdf(0x1db)+_0xc5e5cb);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module['exports']=instance,module[a0_0x4b7b0d(0x1c5)]['IdGeneratorError']=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x589616=a0_0x2a64;(function(_0x1b7a5a,_0x509ee7){const _0x7f6c22=a0_0x2a64,_0x490272=_0x1b7a5a();while(!![]){try{const _0x1d79f0=-parseInt(_0x7f6c22(0x1f3))/0x1*(-parseInt(_0x7f6c22(0x1fc))/0x2)+parseInt(_0x7f6c22(0x21d))/0x3*(-parseInt(_0x7f6c22(0x21b))/0x4)+parseInt(_0x7f6c22(0x207))/0x5+-parseInt(_0x7f6c22(0x213))/0x6*(parseInt(_0x7f6c22(0x20f))/0x7)+-parseInt(_0x7f6c22(0x214))/0x8*(parseInt(_0x7f6c22(0x1fa))/0x9)+parseInt(_0x7f6c22(0x206))/0xa+parseInt(_0x7f6c22(0x21c))/0xb;if(_0x1d79f0===_0x509ee7)break;else _0x490272['push'](_0x490272['shift']());}catch(_0x51b6d2){_0x490272['push'](_0x490272['shift']());}}}(a0_0x5af8,0x3496f));function a0_0x2a64(_0x42d3c8,_0x324d55){_0x42d3c8=_0x42d3c8-0x1f2;const _0x5af8d8=a0_0x5af8();let _0x2a648a=_0x5af8d8[_0x42d3c8];if(a0_0x2a64['pLsqLK']===undefined){var _0x3f93d3=function(_0x1ea814){const _0x8d9373='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x66bda5='',_0x5c2d56='';for(let _0x32e818=0x0,_0x4a6cd5,_0x4ddfc9,_0x38ed7d=0x0;_0x4ddfc9=_0x1ea814['charAt'](_0x38ed7d++);~_0x4ddfc9&&(_0x4a6cd5=_0x32e818%0x4?_0x4a6cd5*0x40+_0x4ddfc9:_0x4ddfc9,_0x32e818++%0x4)?_0x66bda5+=String['fromCharCode'](0xff&_0x4a6cd5>>(-0x2*_0x32e818&0x6)):0x0){_0x4ddfc9=_0x8d9373['indexOf'](_0x4ddfc9);}for(let _0x20e613=0x0,_0x45a395=_0x66bda5['length'];_0x20e613<_0x45a395;_0x20e613++){_0x5c2d56+='%'+('00'+_0x66bda5['charCodeAt'](_0x20e613)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5c2d56);};a0_0x2a64['tAxeYu']=_0x3f93d3,a0_0x2a64['MQJcdS']={},a0_0x2a64['pLsqLK']=!![];}const _0xcf864e=_0x5af8d8[0x0],_0x41a3e6=_0x42d3c8+_0xcf864e,_0x2b09b0=a0_0x2a64['MQJcdS'][_0x41a3e6];return!_0x2b09b0?(_0x2a648a=a0_0x2a64['tAxeYu'](_0x2a648a),a0_0x2a64['MQJcdS'][_0x41a3e6]=_0x2a648a):_0x2a648a=_0x2b09b0,_0x2a648a;}const redisClient=require(a0_0x589616(0x1fb)),{logger}=require(a0_0x589616(0x1f8)),crypto=require(a0_0x589616(0x216));class IdempotencyManager{constructor(){const _0x54f2d1=a0_0x589616;this[_0x54f2d1(0x20a)]=null,this[_0x54f2d1(0x1f7)]=null,this['_initialized']=![];}[a0_0x589616(0x217)](){const _0x506c59=a0_0x589616,_0x9dd541={'pNNwA':function(_0x20f1dc,_0x2d3409){return _0x20f1dc===_0x2d3409;},'lWGAM':_0x506c59(0x20b),'BpzDQ':function(_0x3d5766,_0x3167f8,_0xce47e2){return _0x3d5766(_0x3167f8,_0xce47e2);},'NdhWw':'idempotency_config_init'};this[_0x506c59(0x20a)]=_0x9dd541[_0x506c59(0x211)](process['env']['IDEMPOTENCY_ENABLED'],_0x9dd541['lWGAM']),this[_0x506c59(0x1f7)]=_0x9dd541['BpzDQ'](parseInt,process[_0x506c59(0x200)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x9dd541['NdhWw'],'enabled':this['_enabled'],'ttl':this[_0x506c59(0x1f7)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x506c59(0x20a)]+',\x20TTL:\x20'+this[_0x506c59(0x1f7)]+'s');}[a0_0x589616(0x209)](){const _0x37df66=a0_0x589616;!this[_0x37df66(0x1f4)]&&this['_initConfig']();}get[a0_0x589616(0x205)](){const _0x33471f=a0_0x589616;return this[_0x33471f(0x209)](),this['_enabled'];}get['ttl'](){const _0x65f3f0=a0_0x589616;return this[_0x65f3f0(0x209)](),this[_0x65f3f0(0x1f7)];}['isEnabled'](){return this['enabled'];}[a0_0x589616(0x20c)](_0x506558,_0x164b63){const _0x1876ce=a0_0x589616,_0x57ec12={'VlcFo':'unknown'},_0x32ae63=_0x164b63[_0x1876ce(0x1fe)][_0x1876ce(0x1f6)]('/')['filter'](Boolean),_0x440e83=_0x32ae63[0x0]||'default',_0x15e8a3=_0x32ae63[0x1]||_0x1876ce(0x215),_0x54bf12=_0x32ae63[0x2]||_0x57ec12[_0x1876ce(0x203)];return _0x1876ce(0x21e)+_0x440e83+':'+_0x15e8a3+':'+_0x54bf12+':'+_0x506558;}async[a0_0x589616(0x20e)](_0x46ec46,_0x398d38){const _0x21b92c=a0_0x589616,_0x3046c4={'FnzrO':_0x21b92c(0x1f5),'TUUGF':_0x21b92c(0x20d)};if(!this['enabled'])return![];try{const _0x2bfce2=redisClient['getClient']();return await _0x2bfce2['setex'](_0x46ec46,this[_0x21b92c(0x218)],JSON['stringify'](_0x398d38)),logger['debug']({'event':_0x3046c4['FnzrO'],'key':_0x46ec46,'ttl':this['ttl'],'statusCode':_0x398d38['statusCode']},_0x3046c4[_0x21b92c(0x202)]),!![];}catch(_0x2f6838){return logger['error']({'event':'idempotency_store_error','key':_0x46ec46,'error':_0x2f6838[_0x21b92c(0x1ff)]},'Idempotency\x20store\x20error:\x20'+_0x2f6838['message']),![];}}async[a0_0x589616(0x210)](_0x117523){const _0x26bd91=a0_0x589616,_0x28de04={'LvMUr':'idempotency_hit','uzwEs':_0x26bd91(0x21a),'eRcGn':_0x26bd91(0x201),'toFqe':_0x26bd91(0x212)};if(!this['enabled'])return null;try{const _0x296f35=redisClient[_0x26bd91(0x219)](),_0x451582=await _0x296f35['get'](_0x117523);if(_0x451582)return logger[_0x26bd91(0x1f2)]({'event':_0x28de04['LvMUr'],'key':_0x117523},_0x28de04['uzwEs']),JSON[_0x26bd91(0x1fd)](_0x451582);return logger[_0x26bd91(0x1f9)]({'event':_0x28de04['eRcGn'],'key':_0x117523},_0x28de04['toFqe']),null;}catch(_0x15dc59){return logger['error']({'event':'idempotency_retrieve_error','key':_0x117523,'error':_0x15dc59[_0x26bd91(0x1ff)]},'Idempotency\x20retrieve\x20error:\x20'+_0x15dc59['message']),null;}}['generateKey'](_0x4d3564=a0_0x589616(0x204)){return _0x4d3564+'_'+crypto['randomUUID']();}[a0_0x589616(0x208)](_0x555a09,_0x51e2f4,_0xe3da82){return _0x555a09+':'+_0x51e2f4+':'+_0xe3da82;}}module['exports']=new IdempotencyManager();function a0_0x5af8(){const _0x2c1e1d=['ndK3otu4wvLmD1j4','mZa2nfHZtMfnDq','Dw5RBM93BG','y3j5ChrV','x2LUAxrdB25MAwC','DhrS','z2v0q2XPzw50','swrLBxbVDgvUy3KGy2fJAguGseLu','ndG4nJKYrKj5vLzj','nte3mtiZmKfIzvrsDG','m3PvBvnpBG','CMy6AwrLBtO','Aw5MBW','mZeZnJGZDKffvNLd','x2LUAxrPywXPEMvK','AwrLBxbVDgvUy3LFC3rVCMu','C3bSAxq','x3r0Ba','lI9SB2DNzxi','zgvIDwC','ntq2m1Hqy1PhsW','lI9YzwrPCY1JBgLLBNq','mLHRtvDAza','CgfYC2u','Cgf0Aa','BwvZC2fNzq','zw52','AwrLBxbVDgvUy3LFBwLZCW','vfvvr0y','vMXJrM8','CMvX','zw5HyMXLza','mty4mJKZmgHAwwXuDG','mty0nJKWB1fQru1O','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2vUC3vYzuLUAxrPywXPEMvK','x2vUywjSzwq','Dhj1zq','yNvPBgrlzxK','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','C3rVCMu','mZvYwKTUD0m','CMv0CMLLDMu','Ce5oD0e','swrLBxbVDgvUy3KGy2fJAguGtuLtuW'];a0_0x5af8=function(){return _0x2c1e1d;};return a0_0x5af8();}
1
+ 'use strict';function a0_0x5ec6(){const _0x5d5c59=['mtuWotK5nJrszxPTv0C','zMLSDgvY','ugHjA2m','x2LUAxrPywXPEMvK','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','AwrLBxbVDgvUy3LFC3rVCMu','Cgf0Aa','z2v0','mteZntjyteHWA3O','mZq1oeLXuu53rq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','DhrVC0q','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','ntyZnhzuyurfBq','zxjYB3i','zgvMyxvSDa','lI9SB2DNzxi','qwHnyxa','x2LUAxrdB25MAwC','x2vUC3vYzuLUAxrPywXPEMvK','ndK0u0rJCMDR','yNvPBgrezxrLCM1PBMLZDgLJs2v5','BwvZC2fNzq','mtaYnwvYrxjkvW','mZKWmtaYmgLPu3bcvW','x2vUywjSzwq','zw5HyMXLza','y3j5ChrV','mtCZmdbRDvvSELK','yNvPBgrlzxK','mtqXodCWm1LZq3Hjyq','CMvX','wxfly0C','C2v0zxG','DhrS','mZuYow1jr01qyq','mtaXotrcEvvyBgu','Aw5MBW','x3r0Ba','CMv0CMLLDMu','z2v0q2XPzw50','swrLBxbVDgvUy3KGy2fJAguGseLu','surftvbpvevoq1LFvfrm','Dw5RBM93BG','AwrLBxbVDgvUy3LFBwLZCW'];a0_0x5ec6=function(){return _0x5d5c59;};return a0_0x5ec6();}const a0_0x5ad004=a0_0x1718;(function(_0x156bcc,_0x1c52bd){const _0x5c0910=a0_0x1718,_0x5c31f5=_0x156bcc();while(!![]){try{const _0x2a2d7a=-parseInt(_0x5c0910(0xe8))/0x1*(-parseInt(_0x5c0910(0x106))/0x2)+-parseInt(_0x5c0910(0xe3))/0x3+parseInt(_0x5c0910(0x10e))/0x4*(-parseInt(_0x5c0910(0x109))/0x5)+parseInt(_0x5c0910(0xe9))/0x6*(-parseInt(_0x5c0910(0xfb))/0x7)+parseInt(_0x5c0910(0xfa))/0x8*(parseInt(_0x5c0910(0xff))/0x9)+-parseInt(_0x5c0910(0x10a))/0xa+parseInt(_0x5c0910(0xf2))/0xb;if(_0x2a2d7a===_0x1c52bd)break;else _0x5c31f5['push'](_0x5c31f5['shift']());}catch(_0x15cce1){_0x5c31f5['push'](_0x5c31f5['shift']());}}}(a0_0x5ec6,0x84c03));function a0_0x1718(_0x3a5952,_0x13e245){_0x3a5952=_0x3a5952-0xe2;const _0x5ec621=a0_0x5ec6();let _0x17185a=_0x5ec621[_0x3a5952];if(a0_0x1718['kmoMfI']===undefined){var _0x2a1aa7=function(_0x52021f){const _0x5853d8='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2ee9ec='',_0x5572d5='';for(let _0x42c338=0x0,_0x5c78e5,_0x542d34,_0x3f4658=0x0;_0x542d34=_0x52021f['charAt'](_0x3f4658++);~_0x542d34&&(_0x5c78e5=_0x42c338%0x4?_0x5c78e5*0x40+_0x542d34:_0x542d34,_0x42c338++%0x4)?_0x2ee9ec+=String['fromCharCode'](0xff&_0x5c78e5>>(-0x2*_0x42c338&0x6)):0x0){_0x542d34=_0x5853d8['indexOf'](_0x542d34);}for(let _0x521f24=0x0,_0x1ece7c=_0x2ee9ec['length'];_0x521f24<_0x1ece7c;_0x521f24++){_0x5572d5+='%'+('00'+_0x2ee9ec['charCodeAt'](_0x521f24)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5572d5);};a0_0x1718['RCwHVi']=_0x2a1aa7,a0_0x1718['nxYbam']={},a0_0x1718['kmoMfI']=!![];}const _0x450e30=_0x5ec621[0x0],_0x6e3d03=_0x3a5952+_0x450e30,_0x6fc75f=a0_0x1718['nxYbam'][_0x6e3d03];return!_0x6fc75f?(_0x17185a=a0_0x1718['RCwHVi'](_0x17185a),a0_0x1718['nxYbam'][_0x6e3d03]=_0x17185a):_0x17185a=_0x6fc75f,_0x17185a;}const redisClient=require('./redis-client'),{logger}=require(a0_0x5ad004(0x102)),crypto=require(a0_0x5ad004(0x10d));class IdempotencyManager{constructor(){const _0x7be3ec=a0_0x5ad004;this['_enabled']=null,this['_ttl']=null,this[_0x7be3ec(0xf5)]=![];}[a0_0x5ad004(0x104)](){const _0x23d138=a0_0x5ad004,_0x280ee0={'VpcEj':'true','YqKcG':function(_0x374ec7,_0x4d5fa0,_0x28881b){return _0x374ec7(_0x4d5fa0,_0x28881b);},'CCBdT':'idempotency_config_init'};this['_enabled']=process['env']['IDEMPOTENCY_ENABLED']===_0x280ee0['VpcEj'],this[_0x23d138(0xeb)]=_0x280ee0[_0x23d138(0xe5)](parseInt,process['env'][_0x23d138(0xef)],0xa)||0x12c,this['_initialized']=!![],logger[_0x23d138(0xea)]({'event':_0x280ee0['CCBdT'],'enabled':this[_0x23d138(0x10b)],'ttl':this[_0x23d138(0xeb)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20TTL:\x20'+this['_ttl']+'s');}[a0_0x5ad004(0x105)](){const _0x41d1e3=a0_0x5ad004;!this[_0x41d1e3(0xf5)]&&this['_initConfig']();}get['enabled'](){const _0x186b1b=a0_0x5ad004;return this[_0x186b1b(0x105)](),this[_0x186b1b(0x10b)];}get[a0_0x5ad004(0xe7)](){const _0x2bfd2c=a0_0x5ad004;return this[_0x2bfd2c(0x105)](),this['_ttl'];}['isEnabled'](){const _0x151119=a0_0x5ad004;return this[_0x151119(0x10c)];}[a0_0x5ad004(0xe2)](_0x461581,_0x30b4b8){const _0x2d428b=a0_0x5ad004,_0xa337a8=_0x30b4b8[_0x2d428b(0xf8)]['split']('/')[_0x2d428b(0xf3)](Boolean),_0x1d748e=_0xa337a8[0x0]||_0x2d428b(0x101),_0x147d4a=_0xa337a8[0x1]||'unknown',_0x5565a6=_0xa337a8[0x2]||_0x2d428b(0xf0);return'rf:idem:'+_0x1d748e+':'+_0x147d4a+':'+_0x5565a6+':'+_0x461581;}async['store'](_0x329d15,_0x23afb4){const _0x5f2c3c=a0_0x5ad004,_0x1975b1={'PhIkc':_0x5f2c3c(0xf7),'eaofu':_0x5f2c3c(0xf6),'ttosD':'idempotency_store_error'};if(!this[_0x5f2c3c(0x10c)])return![];try{const _0x5e3203=redisClient[_0x5f2c3c(0xed)]();return await _0x5e3203[_0x5f2c3c(0xe6)](_0x329d15,this[_0x5f2c3c(0xe7)],JSON['stringify'](_0x23afb4)),logger['debug']({'event':_0x1975b1[_0x5f2c3c(0xf4)],'key':_0x329d15,'ttl':this[_0x5f2c3c(0xe7)],'statusCode':_0x23afb4['statusCode']},_0x1975b1['eaofu']),!![];}catch(_0x4da715){return logger['error']({'event':_0x1975b1[_0x5f2c3c(0xfd)],'key':_0x329d15,'error':_0x4da715['message']},_0x5f2c3c(0xfc)+_0x4da715['message']),![];}}async[a0_0x5ad004(0xec)](_0x3a75cd){const _0x1fa23d=a0_0x5ad004,_0x5b2595={'AhMap':'idempotency_hit','qhoHz':_0x1fa23d(0xee)};if(!this['enabled'])return null;try{const _0xa9a6bd=redisClient[_0x1fa23d(0xed)](),_0x2f15af=await _0xa9a6bd[_0x1fa23d(0xf9)](_0x3a75cd);if(_0x2f15af)return logger[_0x1fa23d(0xea)]({'event':_0x5b2595[_0x1fa23d(0x103)],'key':_0x3a75cd},_0x5b2595['qhoHz']),JSON['parse'](_0x2f15af);return logger['debug']({'event':_0x1fa23d(0xf1),'key':_0x3a75cd},'Idempotency\x20cache\x20MISS'),null;}catch(_0x443f87){return logger[_0x1fa23d(0x100)]({'event':_0x1fa23d(0xfe),'key':_0x3a75cd,'error':_0x443f87['message']},'Idempotency\x20retrieve\x20error:\x20'+_0x443f87[_0x1fa23d(0x108)]),null;}}['generateKey'](_0x1885af=a0_0x5ad004(0xe4)){return _0x1885af+'_'+crypto['randomUUID']();}[a0_0x5ad004(0x107)](_0x2f8dce,_0x3c2b3e,_0x2373d8){return _0x2f8dce+':'+_0x3c2b3e+':'+_0x2373d8;}}module['exports']=new IdempotencyManager();
@@ -1 +1 @@
1
- function a0_0xc318(_0x3621b7,_0x148d63){_0x3621b7=_0x3621b7-0x8f;const _0x1b4956=a0_0x1b49();let _0xc31844=_0x1b4956[_0x3621b7];if(a0_0xc318['eyMAuW']===undefined){var _0x38ff2a=function(_0x462ed0){const _0x43d5d0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x287088='',_0xd07f8e='';for(let _0x27414e=0x0,_0x32a1be,_0x3b51cd,_0x2e83f3=0x0;_0x3b51cd=_0x462ed0['charAt'](_0x2e83f3++);~_0x3b51cd&&(_0x32a1be=_0x27414e%0x4?_0x32a1be*0x40+_0x3b51cd:_0x3b51cd,_0x27414e++%0x4)?_0x287088+=String['fromCharCode'](0xff&_0x32a1be>>(-0x2*_0x27414e&0x6)):0x0){_0x3b51cd=_0x43d5d0['indexOf'](_0x3b51cd);}for(let _0x9585a7=0x0,_0x16a739=_0x287088['length'];_0x9585a7<_0x16a739;_0x9585a7++){_0xd07f8e+='%'+('00'+_0x287088['charCodeAt'](_0x9585a7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xd07f8e);};a0_0xc318['ybrQsX']=_0x38ff2a,a0_0xc318['FaklbD']={},a0_0xc318['eyMAuW']=!![];}const _0x844ba=_0x1b4956[0x0],_0x304a2d=_0x3621b7+_0x844ba,_0x111cd1=a0_0xc318['FaklbD'][_0x304a2d];return!_0x111cd1?(_0xc31844=a0_0xc318['ybrQsX'](_0xc31844),a0_0xc318['FaklbD'][_0x304a2d]=_0xc31844):_0xc31844=_0x111cd1,_0xc31844;}const a0_0x497e38=a0_0xc318;(function(_0x156dc7,_0x2ec943){const _0x366ef9=a0_0xc318,_0x547355=_0x156dc7();while(!![]){try{const _0x5f5c9f=parseInt(_0x366ef9(0xa4))/0x1+parseInt(_0x366ef9(0x97))/0x2*(-parseInt(_0x366ef9(0xa5))/0x3)+-parseInt(_0x366ef9(0xb4))/0x4+parseInt(_0x366ef9(0x9b))/0x5*(parseInt(_0x366ef9(0xae))/0x6)+parseInt(_0x366ef9(0xa8))/0x7*(-parseInt(_0x366ef9(0xb1))/0x8)+parseInt(_0x366ef9(0x91))/0x9*(-parseInt(_0x366ef9(0xab))/0xa)+parseInt(_0x366ef9(0x9c))/0xb;if(_0x5f5c9f===_0x2ec943)break;else _0x547355['push'](_0x547355['shift']());}catch(_0x5d5307){_0x547355['push'](_0x547355['shift']());}}}(a0_0x1b49,0xd45e8));const {logger}=require('./logger');class ImportValidator{['validateRow'](_0xd7ac31,_0x1dd9a6=[],_0x44623d={}){const _0x5293bc=a0_0xc318,_0x12adfb={'VhzLQ':function(_0xfa8619,_0x53c4c8){return _0xfa8619===_0x53c4c8;},'gSTOZ':_0x5293bc(0x92)},_0x1bcea=[];return _0x1dd9a6['forEach'](_0x9899e4=>{const _0x4b4e3b=_0x5293bc,_0x497bac=_0xd7ac31[_0x9899e4];(_0x12adfb[_0x4b4e3b(0x90)](_0x497bac,null)||_0x497bac===undefined||_0x497bac==='')&&_0x1bcea['push']({'field':_0x9899e4,'type':_0x12adfb[_0x4b4e3b(0x94)],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x5293bc(0x9d)](_0x44623d)['forEach'](_0x2bb68c=>{const _0x222178=_0x5293bc,_0x332858=_0xd7ac31[_0x2bb68c],_0x9870cd=_0x44623d[_0x2bb68c];if(_0x12adfb['VhzLQ'](_0x332858,null)||_0x332858===undefined||_0x12adfb[_0x222178(0x90)](_0x332858,''))return;const _0xe052f2=this['validateFieldFormat'](_0x2bb68c,_0x332858,_0x9870cd);_0xe052f2&&_0x1bcea['push'](_0xe052f2);}),_0x1bcea;}[a0_0x497e38(0xb2)](_0x319101,_0x3012db,_0x28e5bf){const _0x237c42=a0_0x497e38,_0x48f81a={'TFfWC':'phone'};switch(_0x28e5bf){case'email':return this[_0x237c42(0x93)](_0x319101,_0x3012db);case _0x48f81a[_0x237c42(0xac)]:return this[_0x237c42(0xa9)](_0x319101,_0x3012db);case'url':return this['validateUrl'](_0x319101,_0x3012db);case _0x237c42(0x99):return this[_0x237c42(0xaa)](_0x319101,_0x3012db);default:return null;}}[a0_0x497e38(0x93)](_0x3e70c5,_0x172aab){const _0x1f5e85=a0_0x497e38,_0xf7fa75={'iBjcA':function(_0x515e09,_0x252fa2){return _0x515e09(_0x252fa2);},'lpXym':'format'},_0xc9a1a4=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0xc9a1a4['test'](_0xf7fa75[_0x1f5e85(0xa3)](String,_0x172aab)))return{'field':_0x3e70c5,'type':_0xf7fa75[_0x1f5e85(0x96)],'message':'Invalid\x20email\x20format'};return null;}[a0_0x497e38(0xa9)](_0x4d7a4a,_0x29eb68){const _0x253b97=a0_0x497e38,_0x1f5d20={'ZaTAu':function(_0x2621bd,_0x510e29){return _0x2621bd(_0x510e29);},'GuCcb':_0x253b97(0x9e)},_0x985878=_0x1f5d20['ZaTAu'](String,_0x29eb68)[_0x253b97(0x95)](/\s+/g,''),_0x14bc0e=/^[\d\+\-\(\)]+$/;if(!_0x14bc0e['test'](_0x985878)||_0x985878['length']<0x8)return{'field':_0x4d7a4a,'type':'format','message':_0x1f5d20[_0x253b97(0xaf)]};return null;}[a0_0x497e38(0xa6)](_0x899822,_0x4782ef){const _0x52d035=a0_0x497e38,_0xd5156b={'PrHSl':function(_0x5be50d,_0x8fc9c8){return _0x5be50d(_0x8fc9c8);},'znLIL':'Invalid\x20URL\x20format'};try{return new URL(_0xd5156b[_0x52d035(0xa1)](String,_0x4782ef)),null;}catch(_0x27711c){return{'field':_0x899822,'type':_0x52d035(0x9a),'message':_0xd5156b['znLIL']};}}[a0_0x497e38(0xaa)](_0x4d8094,_0x1bec9d){const _0xe72bbe={'yEOBk':function(_0x1f0cba,_0x2cc8f2){return _0x1f0cba(_0x2cc8f2);},'GOlQs':'format','Ceizc':'Invalid\x20number\x20format'};if(_0xe72bbe['yEOBk'](isNaN,_0x1bec9d))return{'field':_0x4d8094,'type':_0xe72bbe['GOlQs'],'message':_0xe72bbe['Ceizc']};return null;}[a0_0x497e38(0x8f)](_0x1c8a57,_0x3eb084){const _0x18df07=a0_0x497e38,_0x163aa4=new Map(),_0x14c22f=[];return _0x1c8a57[_0x18df07(0xa2)]((_0x2b8250,_0xe7b345)=>{const _0xb7ffa7=_0x18df07,_0x5128a5=_0x3eb084['map'](_0x23edfa=>_0x2b8250[_0x23edfa])['join']('|');_0x163aa4[_0xb7ffa7(0xa0)](_0x5128a5)?_0x14c22f[_0xb7ffa7(0xb0)]({'rowIndex':_0xe7b345,'duplicateOf':_0x163aa4['get'](_0x5128a5),'key':_0x5128a5}):_0x163aa4[_0xb7ffa7(0xa7)](_0x5128a5,_0xe7b345);}),_0x14c22f;}['batchValidateRows'](_0x359394,_0x17e77b,_0x20e2bf){const _0x22cf3b=a0_0x497e38,_0x3f4f10={'FcDJi':function(_0x433315,_0x34e80f){return _0x433315>_0x34e80f;},'bxaHQ':_0x22cf3b(0x9f)},_0xf75a17=[];return _0x359394[_0x22cf3b(0xa2)]((_0x1d54f0,_0x195cec)=>{const _0x158b35=_0x22cf3b,_0x3f97f1=this['validateRow'](_0x1d54f0,_0x17e77b,_0x20e2bf);_0x3f4f10[_0x158b35(0xad)](_0x3f97f1['length'],0x0)&&_0xf75a17[_0x158b35(0xb0)]({'rowIndex':_0x195cec,'rowData':_0x1d54f0,'errors':_0x3f97f1});}),logger['info']({'event':_0x3f4f10['bxaHQ'],'totalRows':_0x359394[_0x22cf3b(0xb3)],'errorCount':_0xf75a17['length']},_0x22cf3b(0x98)),_0xf75a17;}}module['exports']=new ImportValidator();function a0_0x1b49(){const _0x3bec1c=['odiXmdeXrvPJyuHW','nZKXmvrOCuDAtW','DMfSAwrHDgvvCMW','C2v0','mtCXnZeWt21jEu1X','DMfSAwrHDgvqAg9Uzq','DMfSAwrHDgvoDw1Izxi','mtb1uxzkAMu','vezMv0m','rMnesMK','mZaYmJC2neDbyuDUyW','r3vdy2i','ChvZAa','ogjcswrsqG','DMfSAwrHDgvgAwvSzezVCM1HDa','BgvUz3rO','ntGXnty0mhPorLnQAa','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','vMH6tfe','mte5odK5mJzewg9lv1K','CMvXDwLYzwq','DMfSAwrHDgvfBwfPBa','z1nut1O','CMvWBgfJzq','BhbyEw0','nZu0DhLnvu9c','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','BNvTyMvY','zM9YBwf0','mtbtqMPXqMO','mZeZmdy3ndHPEKzdCvO','A2v5CW','sw52ywXPzcbWAg9UzsbMB3jTyxq','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','AgfZ','uhjiu2W','zM9YrwfJAa','AujQy0e'];a0_0x1b49=function(){return _0x3bec1c;};return a0_0x1b49();}
1
+ const a0_0x2f99eb=a0_0x4570;function a0_0x4570(_0x4a6855,_0x1da218){_0x4a6855=_0x4a6855-0x1c3;const _0x1c91bc=a0_0x1c91();let _0x45701e=_0x1c91bc[_0x4a6855];if(a0_0x4570['uVnqVj']===undefined){var _0xd32781=function(_0x20e65a){const _0x4f9104='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21c996='',_0xeb6bd1='';for(let _0x8bcf76=0x0,_0x495c8c,_0x32898b,_0x22d9c6=0x0;_0x32898b=_0x20e65a['charAt'](_0x22d9c6++);~_0x32898b&&(_0x495c8c=_0x8bcf76%0x4?_0x495c8c*0x40+_0x32898b:_0x32898b,_0x8bcf76++%0x4)?_0x21c996+=String['fromCharCode'](0xff&_0x495c8c>>(-0x2*_0x8bcf76&0x6)):0x0){_0x32898b=_0x4f9104['indexOf'](_0x32898b);}for(let _0x396207=0x0,_0x20a1e4=_0x21c996['length'];_0x396207<_0x20a1e4;_0x396207++){_0xeb6bd1+='%'+('00'+_0x21c996['charCodeAt'](_0x396207)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xeb6bd1);};a0_0x4570['pkljfy']=_0xd32781,a0_0x4570['tiiJlA']={},a0_0x4570['uVnqVj']=!![];}const _0x2feebb=_0x1c91bc[0x0],_0x58141c=_0x4a6855+_0x2feebb,_0x1c8c53=a0_0x4570['tiiJlA'][_0x58141c];return!_0x1c8c53?(_0x45701e=a0_0x4570['pkljfy'](_0x45701e),a0_0x4570['tiiJlA'][_0x58141c]=_0x45701e):_0x45701e=_0x1c8c53,_0x45701e;}(function(_0x3f0d94,_0x41803b){const _0xe462d0=a0_0x4570,_0x5baaf3=_0x3f0d94();while(!![]){try{const _0x522981=-parseInt(_0xe462d0(0x1de))/0x1+-parseInt(_0xe462d0(0x1cc))/0x2*(parseInt(_0xe462d0(0x1ca))/0x3)+-parseInt(_0xe462d0(0x1d5))/0x4+parseInt(_0xe462d0(0x1d6))/0x5+parseInt(_0xe462d0(0x1c6))/0x6*(-parseInt(_0xe462d0(0x1d2))/0x7)+-parseInt(_0xe462d0(0x1cf))/0x8*(-parseInt(_0xe462d0(0x1df))/0x9)+parseInt(_0xe462d0(0x1e0))/0xa*(parseInt(_0xe462d0(0x1e2))/0xb);if(_0x522981===_0x41803b)break;else _0x5baaf3['push'](_0x5baaf3['shift']());}catch(_0x25639b){_0x5baaf3['push'](_0x5baaf3['shift']());}}}(a0_0x1c91,0xbdb6f));function a0_0x1c91(){const _0x291875=['zM9YBwf0','DMfSAwrHDgvsB3C','sw52ywXPzcbvuKWGzM9YBwf0','nJa2yMDvt0fr','BNHwwxq','CMvWBgfJzq','DMfSAwrHDgvqAg9Uzq','mJrPvw1gDMO','DxjS','mJa0otiYC2zQuKvK','DMfSAwrHDgvgAwvSzezVCM1HDa','zxHWB3j0CW','odi1mJmYmfvrt0jKrG','BgvUz3rO','s2fVrgW','nZqZnhrxC3DtCq','zM9YrwfJAa','EuPQDNO','nte2odu2s0nJEgrO','mZeZmZiZmfbTveLMtW','z0TkvNC','DMfSAwrHDgvvCMW','DMfSAwrHDgvfBwfPBa','AM9PBG','lI9SB2DNzxi','CgHVBMu','CLPUrhO','mJaYntuXruDWA0Hd','ounLqvjizG','mZiWC2DhtxDw','ChvZAa','mti5odaWCNPuwxf4','DgvZDa','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','BNvTyMvY'];a0_0x1c91=function(){return _0x291875;};return a0_0x1c91();}const {logger}=require(a0_0x2f99eb(0x1db));class ImportValidator{[a0_0x2f99eb(0x1c4)](_0x10ffe0,_0x19a26a=[],_0x1d9cca={}){const _0x2eada6={'KaoDl':function(_0x30b5bd,_0x43814b){return _0x30b5bd===_0x43814b;},'WiJax':function(_0x37b11d,_0x16a812){return _0x37b11d===_0x16a812;},'OqoGo':function(_0x2b5d20,_0x55dbcf){return _0x2b5d20===_0x55dbcf;}},_0x5dd193=[];return _0x19a26a['forEach'](_0x546ab4=>{const _0x323a92=a0_0x4570,_0x37c583=_0x10ffe0[_0x546ab4];(_0x2eada6[_0x323a92(0x1d1)](_0x37c583,null)||_0x37c583===undefined||_0x2eada6['WiJax'](_0x37c583,''))&&_0x5dd193['push']({'field':_0x546ab4,'type':'required','message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0x1d9cca)['forEach'](_0x422318=>{const _0x46e3c1=a0_0x4570,_0x21e7ca=_0x10ffe0[_0x422318],_0x368e39=_0x1d9cca[_0x422318];if(_0x21e7ca===null||_0x2eada6['OqoGo'](_0x21e7ca,undefined)||_0x21e7ca==='')return;const _0x4f0927=this[_0x46e3c1(0x1cd)](_0x422318,_0x21e7ca,_0x368e39);_0x4f0927&&_0x5dd193[_0x46e3c1(0x1e1)](_0x4f0927);}),_0x5dd193;}['validateFieldFormat'](_0x22ca40,_0x948de2,_0x378951){const _0x1f5b23=a0_0x2f99eb,_0x49ed55={'fGOyJ':'email','ruZOF':_0x1f5b23(0x1e5)};switch(_0x378951){case _0x49ed55['fGOyJ']:return this['validateEmail'](_0x22ca40,_0x948de2);case _0x1f5b23(0x1dc):return this[_0x1f5b23(0x1c9)](_0x22ca40,_0x948de2);case _0x1f5b23(0x1cb):return this[_0x1f5b23(0x1d8)](_0x22ca40,_0x948de2);case _0x49ed55['ruZOF']:return this['validateNumber'](_0x22ca40,_0x948de2);default:return null;}}[a0_0x2f99eb(0x1d9)](_0x254acc,_0x2bd3c0){const _0x5ca6b5=a0_0x2f99eb,_0x485abb={'mpTFM':function(_0x30d07b,_0x3fb5d6){return _0x30d07b(_0x3fb5d6);},'nxVYt':'Invalid\x20email\x20format'},_0x9325f=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x9325f['test'](_0x485abb['mpTFM'](String,_0x2bd3c0)))return{'field':_0x254acc,'type':'format','message':_0x485abb[_0x5ca6b5(0x1c7)]};return null;}[a0_0x2f99eb(0x1c9)](_0x184557,_0x4169ff){const _0x4bdb07=a0_0x2f99eb,_0x3cc236={'MwgGo':function(_0x389131,_0x1764f9){return _0x389131(_0x1764f9);},'gKJVw':function(_0x22fcf5,_0x28b209){return _0x22fcf5<_0x28b209;}},_0x211eec=_0x3cc236['MwgGo'](String,_0x4169ff)[_0x4bdb07(0x1c8)](/\s+/g,''),_0x167724=/^[\d\+\-\(\)]+$/;if(!_0x167724[_0x4bdb07(0x1e3)](_0x211eec)||_0x3cc236[_0x4bdb07(0x1d7)](_0x211eec[_0x4bdb07(0x1d0)],0x8))return{'field':_0x184557,'type':_0x4bdb07(0x1c3),'message':'Invalid\x20phone\x20format'};return null;}[a0_0x2f99eb(0x1d8)](_0x36fb6b,_0x5d8bdd){const _0x5f45b3=a0_0x2f99eb,_0x55d5db={'rZnDz':function(_0x31a189,_0x3a102f){return _0x31a189(_0x3a102f);},'IySqc':_0x5f45b3(0x1c5)};try{return new URL(_0x55d5db[_0x5f45b3(0x1dd)](String,_0x5d8bdd)),null;}catch(_0x24d3ab){return{'field':_0x36fb6b,'type':'format','message':_0x55d5db['IySqc']};}}['validateNumber'](_0x4da372,_0x4bb92f){const _0x3ccabe={'ABGeT':'format'};if(isNaN(_0x4bb92f))return{'field':_0x4da372,'type':_0x3ccabe['ABGeT'],'message':'Invalid\x20number\x20format'};return null;}['detectDuplicatesInFile'](_0x395b51,_0x2a9f15){const _0x4d9749=new Map(),_0x1a5a7f=[];return _0x395b51['forEach']((_0x180e3a,_0x5e278e)=>{const _0x50e8ac=a0_0x4570,_0x120a37=_0x2a9f15['map'](_0x5ab432=>_0x180e3a[_0x5ab432])[_0x50e8ac(0x1da)]('|');_0x4d9749['has'](_0x120a37)?_0x1a5a7f[_0x50e8ac(0x1e1)]({'rowIndex':_0x5e278e,'duplicateOf':_0x4d9749['get'](_0x120a37),'key':_0x120a37}):_0x4d9749['set'](_0x120a37,_0x5e278e);}),_0x1a5a7f;}['batchValidateRows'](_0x5ef5d1,_0x251e64,_0x19c726){const _0x426f2e=a0_0x2f99eb,_0x1fd88b={'yJjvz':function(_0x225b89,_0x310cc3){return _0x225b89>_0x310cc3;},'DDaXH':'batch_validation_complete'},_0x614cfc=[];return _0x5ef5d1[_0x426f2e(0x1d3)]((_0x206846,_0x341b58)=>{const _0x37a238=_0x426f2e,_0x24af53=this[_0x37a238(0x1c4)](_0x206846,_0x251e64,_0x19c726);_0x1fd88b[_0x37a238(0x1d4)](_0x24af53['length'],0x0)&&_0x614cfc[_0x37a238(0x1e1)]({'rowIndex':_0x341b58,'rowData':_0x206846,'errors':_0x24af53});}),logger['info']({'event':_0x1fd88b['DDaXH'],'totalRows':_0x5ef5d1['length'],'errorCount':_0x614cfc['length']},_0x426f2e(0x1e4)),_0x614cfc;}}module[a0_0x2f99eb(0x1ce)]=new ImportValidator();