@restforgejs/platform 5.0.3 → 5.0.9

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 (182) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/connection.js +17 -2
  9. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  11. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  12. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  13. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  14. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  15. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  16. package/generators/lib/payload/payload-runner.js +44 -2
  17. package/generators/lib/payload/schema-diff.js +31 -1
  18. package/generators/lib/templates/dashboard-catalog.js +1 -1
  19. package/generators/lib/templates/db-connection-env.js +1 -1
  20. package/generators/lib/templates/dbschema-catalog.js +1 -1
  21. package/generators/lib/templates/field-validation-catalog.js +1 -1
  22. package/generators/lib/templates/mysql-template.js +1 -1
  23. package/generators/lib/templates/oracle-template.js +1 -1
  24. package/generators/lib/templates/postgres-template.js +1 -1
  25. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  26. package/generators/lib/templates/sqlite-template.js +1 -1
  27. package/generators/lib/utils/database-introspector.js +421 -7
  28. package/generators/lib/validators/argument-validator.js +2 -2
  29. package/integrity-manifest.json +18 -18
  30. package/package.json +4 -2
  31. package/scripts/verify-integrity.js +1 -1
  32. package/server.js +1 -1
  33. package/src/components/handlers/adjust_handler.js +1 -1
  34. package/src/components/handlers/audit_handler.js +1 -1
  35. package/src/components/handlers/delete_handler.js +1 -1
  36. package/src/components/handlers/export_handler.js +1 -1
  37. package/src/components/handlers/import_handler.js +1 -1
  38. package/src/components/handlers/insert_handler.js +1 -1
  39. package/src/components/handlers/update_handler.js +1 -1
  40. package/src/components/handlers/upload_handler.js +1 -1
  41. package/src/components/handlers/workflow_handler.js +1 -1
  42. package/src/components/integrations/webhook.js +1 -1
  43. package/src/consumers/baseConsumer.js +1 -1
  44. package/src/consumers/declarativeMapper.js +1 -1
  45. package/src/consumers/handlers/apiHandler.js +1 -1
  46. package/src/consumers/handlers/consoleHandler.js +1 -1
  47. package/src/consumers/handlers/databaseHandler.js +1 -1
  48. package/src/consumers/handlers/index.js +1 -1
  49. package/src/consumers/handlers/kafkaHandler.js +1 -1
  50. package/src/consumers/index.js +1 -1
  51. package/src/consumers/messageTransformer.js +1 -1
  52. package/src/consumers/validator.js +1 -1
  53. package/src/core/db/dialect/base-dialect.js +1 -1
  54. package/src/core/db/dialect/index.js +1 -1
  55. package/src/core/db/dialect/mysql-dialect.js +1 -1
  56. package/src/core/db/dialect/oracle-dialect.js +1 -1
  57. package/src/core/db/dialect/postgres-dialect.js +1 -1
  58. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  59. package/src/core/db/flatten-helper.js +1 -1
  60. package/src/core/db/query-builder-error.js +1 -1
  61. package/src/core/db/query-builder.js +1 -1
  62. package/src/core/db/relation-helper.js +1 -1
  63. package/src/core/handlers/delete_handler.js +1 -1
  64. package/src/core/handlers/insert_handler.js +1 -1
  65. package/src/core/handlers/update_handler.js +1 -1
  66. package/src/core/models/base-model.js +1 -1
  67. package/src/core/utils/cache-manager.js +1 -1
  68. package/src/core/utils/component-engine.js +1 -1
  69. package/src/core/utils/context-builder.js +1 -1
  70. package/src/core/utils/datetime-formatter.js +1 -1
  71. package/src/core/utils/datetime-parser.js +1 -1
  72. package/src/core/utils/db.js +1 -1
  73. package/src/core/utils/logger.js +1 -1
  74. package/src/core/utils/payload-loader.js +1 -1
  75. package/src/core/utils/security-checks.js +1 -1
  76. package/src/middleware/body-options.js +1 -1
  77. package/src/middleware/cors.js +1 -1
  78. package/src/middleware/idempotency.js +1 -1
  79. package/src/middleware/rate-limiter.js +1 -1
  80. package/src/middleware/request-logger.js +1 -1
  81. package/src/middleware/security-headers.js +1 -1
  82. package/src/models/base-model-mysql.js +1 -1
  83. package/src/models/base-model-oracle.js +1 -1
  84. package/src/models/base-model-sqlite.js +1 -1
  85. package/src/models/base-model.js +1 -1
  86. package/src/pro/caching/redis-client.js +1 -1
  87. package/src/pro/caching/redis-helper.js +1 -1
  88. package/src/pro/consumers/baseConsumer.js +1 -1
  89. package/src/pro/consumers/declarativeMapper.js +1 -1
  90. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  91. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  92. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  93. package/src/pro/consumers/handlers/index.js +1 -1
  94. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  95. package/src/pro/consumers/index.js +1 -1
  96. package/src/pro/consumers/messageTransformer.js +1 -1
  97. package/src/pro/consumers/validator.js +1 -1
  98. package/src/pro/database/base-model-mysql.js +1 -1
  99. package/src/pro/database/base-model-oracle.js +1 -1
  100. package/src/pro/database/base-model-sqlite.js +1 -1
  101. package/src/pro/database/db-mysql.js +1 -1
  102. package/src/pro/database/db-oracle.js +1 -1
  103. package/src/pro/database/db-sqlite.js +1 -1
  104. package/src/pro/excel/excel-generator.js +1 -1
  105. package/src/pro/excel/excel-parser.js +1 -1
  106. package/src/pro/excel/export-service.js +1 -1
  107. package/src/pro/excel/export_handler.js +1 -1
  108. package/src/pro/excel/import-service.js +1 -1
  109. package/src/pro/excel/import-validator.js +1 -1
  110. package/src/pro/excel/import_handler.js +1 -1
  111. package/src/pro/excel/upsert-builder.js +1 -1
  112. package/src/pro/idgen/idgen-routes.js +1 -1
  113. package/src/pro/integrations/lookup-resolver.js +1 -1
  114. package/src/pro/integrations/upload-handler-v2.js +1 -1
  115. package/src/pro/integrations/upload-handler.js +1 -1
  116. package/src/pro/integrations/webhook.js +1 -1
  117. package/src/pro/locking/lock-routes.js +1 -1
  118. package/src/pro/locking/resource-lock-manager.js +1 -1
  119. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  120. package/src/pro/messaging/kafkaService.js +1 -1
  121. package/src/pro/messaging/messagehubService.js +1 -1
  122. package/src/pro/messaging/rabbitmqService.js +1 -1
  123. package/src/pro/scheduler/job-manager.js +1 -1
  124. package/src/pro/scheduler/job-routes.js +1 -1
  125. package/src/pro/scheduler/job-validator.js +1 -1
  126. package/src/pro/storage/base-storage-provider.js +1 -1
  127. package/src/pro/storage/file-metadata-helper.js +1 -1
  128. package/src/pro/storage/index.js +1 -1
  129. package/src/pro/storage/local-storage-provider.js +1 -1
  130. package/src/pro/storage/s3-storage-provider.js +1 -1
  131. package/src/pro/storage/upload-cleanup-job.js +1 -1
  132. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  133. package/src/pro/storage/upload-pending-tracker.js +1 -1
  134. package/src/pro/websocket/broadcast-helper.js +1 -1
  135. package/src/pro/websocket/index.js +1 -1
  136. package/src/pro/websocket/livesync-server.js +1 -1
  137. package/src/pro/websocket/ws-broadcaster.js +1 -1
  138. package/src/services/export-service.js +1 -1
  139. package/src/services/import-service.js +1 -1
  140. package/src/services/kafkaConsumerService.js +1 -1
  141. package/src/services/kafkaService.js +1 -1
  142. package/src/services/messagehubService.js +1 -1
  143. package/src/services/rabbitmqService.js +1 -1
  144. package/src/utils/cache-invalidation-registry.js +1 -1
  145. package/src/utils/cache-manager.js +1 -1
  146. package/src/utils/component-engine.js +1 -1
  147. package/src/utils/config-extractor.js +1 -1
  148. package/src/utils/consumerLogger.js +1 -1
  149. package/src/utils/context-builder.js +1 -1
  150. package/src/utils/dashboard-helpers.js +1 -1
  151. package/src/utils/dateHelper.js +1 -1
  152. package/src/utils/datetime-formatter.js +1 -1
  153. package/src/utils/datetime-parser.js +1 -1
  154. package/src/utils/db-bootstrap.js +1 -1
  155. package/src/utils/db-mysql.js +1 -1
  156. package/src/utils/db-oracle.js +1 -1
  157. package/src/utils/db-sqlite.js +1 -1
  158. package/src/utils/db.js +1 -1
  159. package/src/utils/demo-generator.js +1 -1
  160. package/src/utils/excel-generator.js +1 -1
  161. package/src/utils/excel-parser.js +1 -1
  162. package/src/utils/file-watcher.js +1 -1
  163. package/src/utils/id-generator.js +1 -1
  164. package/src/utils/idempotency-manager.js +1 -1
  165. package/src/utils/import-validator.js +1 -1
  166. package/src/utils/license-client.js +1 -1
  167. package/src/utils/lock-manager.js +1 -1
  168. package/src/utils/logger.js +1 -1
  169. package/src/utils/lookup-resolver.js +1 -1
  170. package/src/utils/payload-loader.js +1 -1
  171. package/src/utils/processor-response.js +1 -1
  172. package/src/utils/rabbitmq.js +1 -1
  173. package/src/utils/redis-client.js +1 -1
  174. package/src/utils/redis-helper.js +1 -1
  175. package/src/utils/request-scope.js +1 -1
  176. package/src/utils/security-checks.js +1 -1
  177. package/src/utils/service-resolver.js +1 -1
  178. package/src/utils/shutdown-coordinator.js +1 -1
  179. package/src/utils/trusted-keys.js +1 -1
  180. package/src/utils/upload-handler.js +1 -1
  181. package/src/utils/upsert-builder.js +1 -1
  182. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x7e059b=a0_0x31fc;(function(_0xc521f6,_0x56b0a8){const _0x2c6b15=a0_0x31fc,_0x414aa7=_0xc521f6();while(!![]){try{const _0x37d0db=parseInt(_0x2c6b15(0x289))/0x1+parseInt(_0x2c6b15(0x258))/0x2*(-parseInt(_0x2c6b15(0x206))/0x3)+parseInt(_0x2c6b15(0x257))/0x4*(-parseInt(_0x2c6b15(0x242))/0x5)+-parseInt(_0x2c6b15(0x308))/0x6*(-parseInt(_0x2c6b15(0x2e2))/0x7)+-parseInt(_0x2c6b15(0x278))/0x8+parseInt(_0x2c6b15(0x2c1))/0x9+parseInt(_0x2c6b15(0x2eb))/0xa;if(_0x37d0db===_0x56b0a8)break;else _0x414aa7['push'](_0x414aa7['shift']());}catch(_0x53ff3f){_0x414aa7['push'](_0x414aa7['shift']());}}}(a0_0x494d,0x83773));const crypto=require('crypto'),redisClient=require(a0_0x7e059b(0x262)),{logger}=require(a0_0x7e059b(0x2a5)),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy','yyyymm','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=a0_0x7e059b(0x2b1),CHARSET_UPPER=a0_0x7e059b(0x227),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='0123456789ABCDEF',CHARSET_HEX_LOWER=a0_0x7e059b(0x2ff),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=a0_0x7e059b(0x207),LUA_RELEASE_NUMBER=a0_0x7e059b(0x30e),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=a0_0x7e059b(0x303),LUA_CANCEL_RESERVATION=a0_0x7e059b(0x20c),LUA_EXTEND_RESERVATION=a0_0x7e059b(0x1fe);function a0_0x31fc(_0xbf8b41,_0x476936){_0xbf8b41=_0xbf8b41-0x1f0;const _0x494de7=a0_0x494d();let _0x31fce3=_0x494de7[_0xbf8b41];if(a0_0x31fc['isdZSu']===undefined){var _0x51bdfa=function(_0x525a39){const _0x25686c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59dc1b='',_0x13afce='';for(let _0x31faa4=0x0,_0xeeef8e,_0x51cb16,_0x459085=0x0;_0x51cb16=_0x525a39['charAt'](_0x459085++);~_0x51cb16&&(_0xeeef8e=_0x31faa4%0x4?_0xeeef8e*0x40+_0x51cb16:_0x51cb16,_0x31faa4++%0x4)?_0x59dc1b+=String['fromCharCode'](0xff&_0xeeef8e>>(-0x2*_0x31faa4&0x6)):0x0){_0x51cb16=_0x25686c['indexOf'](_0x51cb16);}for(let _0x592b45=0x0,_0xf90409=_0x59dc1b['length'];_0x592b45<_0xf90409;_0x592b45++){_0x13afce+='%'+('00'+_0x59dc1b['charCodeAt'](_0x592b45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13afce);};a0_0x31fc['AViuGf']=_0x51bdfa,a0_0x31fc['EZprMg']={},a0_0x31fc['isdZSu']=!![];}const _0x4e9030=_0x494de7[0x0],_0x238a37=_0xbf8b41+_0x4e9030,_0x48c7c0=a0_0x31fc['EZprMg'][_0x238a37];return!_0x48c7c0?(_0x31fce3=a0_0x31fc['AViuGf'](_0x31fce3),a0_0x31fc['EZprMg'][_0x238a37]=_0x31fce3):_0x31fce3=_0x48c7c0,_0x31fce3;}function a0_0x494d(){const _0x43f0fb=['A3bhu0q','y2fUy2vSuMvZzxj2yxrPB24','wfHywc1ywfHylvHywfGTwfHywa','nJm5mtu5t25xq3nf','x3zHBgLKyxrLuMvZB3vYy2u','x2j1AwXKswrLBuTLEq','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','C3v0De8','yM9VBgvHBG','x2DLBMvYyxrLrNjVBvbHDhrLCM4','x2LKzw1uveW','CMvZB3vYy2u','vw5RBM93BIbTB2rLoIa','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','ruTbEhG','whv3C2O','z0LHBLC','x2j1AwXKuMv1C2vlzxK','AMjcze0','DMfSDwuGAxmGCMvXDwLYzwq','CMvZzxj2zv9LEhrLBMq','EKHhAwm','AwrNzw5Fy29UzMLNx2LUAxq','t21pBLC','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','x3zHBgLKyxrLvfrm','ExL5Ew1T','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','lI9SB2DNzxi','BMTyAK0','x2j1AwXKuMvZzxj2yxrPB25lzxK','Chr0Ba','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','surhru5Fsu5wquXjrf9ut0TftG','AxnfBMfIBgvK','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','AwrNzw4','C3rYAw5N','surhru5Fsu5wquXjrf9gt1jnqvq','zgvMyxvSDfbPBKrPz2L0CW','mdeYmZq1nJC4oq','x3vWzgf0zu1LDge','x2nVDw50zxjuveXnyxa','D2fYBG','x2j1AwXKsxnZDwvKs2v5','zM9YBwf0s2v5','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','Dg9ju09tDhjPBMC','ihbHCNrZkq','C3rYAw5NAwz5','A2v5CW','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','vuzHv3i','ywXSB3DszxnLDa','CMvZzxj2zv9Jyw5JzwW','q25jALe','ntG4mtC3owXlCM1HAW','zxHWB3j0CW','surhru5Frevgqvvmvf9qsu5FreLhsvrt','CMvSzwfZzu51BwjLCG','icHNB3q6ia','zw52','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','Ag1Nzxq','surhru5Fsu5wquXjrf9quKvgsvG','AwrLBxbVDgvUy3LlzxK','Dgv4Da','x2j1AwXKtwv0yuTLEq','Dgfkwfq','r2LZufy','ALD3BK0','Cgf0DgvYBG','surhru5Fsu5wquXjrf9ovu1crvi','ChzhDeq','CMfUzg9Tvvvjra','ywXS','tKrnzwy','C2fKza','AwrNzw5Fy29UC3vTzwq','surhru5Fsu5wquXjrf9srvnpvvjdrq','shrnyKe','ufLOCuy','D2PqDMy','suqGr2vUzxjHDg9Yig51BwjLCJOG','zw50CMLLCW','zxzHBa','z2v0q2XPzw50','AhnLDa','surhru5Fsu5wquXjrf9nt0rf','n01ICwHZuW','s3f1r0y','AwrLBuTLEq','zvj0vfe','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','CMvSzwfZzq','CNjmEwy','x3n0B3jLswrLBunHy2HLtLG','ntG4nJeZmgLOvLP5Ba','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','zw5ZDxjLvw5PCxvL','BgvUz3rO','rwfLDNe','z2v0sw5MBW','z2v0tw9UDgG','zw5HyMXLza','CgLU','ENjHBMDL','BM93','igrPz2L0CYaOz290oIa','yuXQy3i','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','surhru5Fq09vtLrfuL9uveXFrefjtfK','surhru5FquXmt1DFuKvtrvq','CNn2s2v5','Dg9mB3DLCKnHC2u','Du1eBgO','AxnZDwvKoG','mdeYmZq1nJC4owfIy2rLzG','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','CfHRDNa','tvvkA0y','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','BNvTrgLNAxrZ','r2frq0e','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','sLHyEva','nJeXnZqYAvjZue1Y','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','CNn2oG','C2vX','BMfTzq','BwfW','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','CgfKzgvKicHNB3q6ia','sNveBum','vKLuwfO','C2vWyxjHDg9Y','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','D2vvsNy','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','CK5Ks1K','C2r5tvy','zxHWAxjLC0f0','AhPKqMW','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','DMfSDwu','q291BNrLCIbVDMvYzMXVDZOG','zgvS','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','BwTYtg8','zgvMyxvSDenVzgvqyxr0zxjU','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','zgzwtxa','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','DLHUy2u','Bw9Kzq','ELPmt2m','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','Bwf0y2G','mJy3u2jksevT','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','Aw5MBW','surhru5FreLtqujmruq','sw52ywXPzcbMB3jTyxq6ia','BwnjwMW','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','swrhzw5LCMf0B3jfCNjVCG','A1nqCwW','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','CgfYC2u','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','ANjqBxi','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','surhru5Fsurftv9uveW','x2DLDenVDw50zxjuveW','wwH6q2K','AwrNzw5FCMvZzxq','x3zHBgLKyxrLtwf4uMv0CNK','x3rLEhq','x2j1AwXKqwn0AxzLs2v5','x2rLzMf1BhrnyxHszxrYEq','C2v0','DhrS','uuXeAKm','C2vYAwfS','txD3v2y','ihnLy29UzhmGkgDVDdOG','Dg9Rzw4','CgvLAW','AxnszxvZzwq','qwrMEM8','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','lwrPz2L0ignHCgfJAxr5icG','surhru5Fsu5wquXjrf9uveW','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','x3vUzg9syw5KB21szxnLCNzHDgLVBG','ChvZAa','D2LUBMvYuMvZDwX0','zgvMyxvSDfnLCMLHBfbHDhrLCM4','surhru5Fsu5wquXjrf9qqvrurvjo','zM9Qyue','BwvZC2fNzq','AxnjBNrLz2vY','zuPJqKu','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','x2j1AwXKrM9YBwf0s2v5','uNzVC3C','vwHmBgO','zgf0zvbYzwzPEa','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','CMvWzwf0','otK5os05otK5','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','x2LUAxrPywXPEMvK','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','x3zHBgLKyxrLugf0DgvYBG','nvngsNPWEG','CMv1C2u','CgfKu3rHCNq','C3rVCMvK','sgjjCK8','A2v5uhjLzML4','wvzWs3i','q3bRr0O','x3n0B3jLswrLBunHy2HL','Cg93','CMvZzxj2zurLzMf1BhruveW','x2zVCM1HDe51BwjLCG','x3jLDhjPzxzLswrLBunHy2HL','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','x2j1AwXKu2vXs2v5','uxbeEKC','CMvZzxj2zu51BwjLCG','x2rLzMf1BhrtzxjPywXqyxr0zxjU','DwDNy3C','CMy6AwrNzw46','DgvZDa','mZi5nZa0reLNA2r0','mJi1otrPDu9ezxa','CMvZzxj2zu1HEfruta','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','DMr6yNa','sLbqwMu','ENfVC0K','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','CMfUzg9T','zxL2BfC','lI9YzwrPCY1JBgLLBNq','uLnxAMe','tMXTs2q','y29Kzq','x2vUC3vYzuLUAxrPywXPEMvK','y291BNrLCG','icH0B2TLBJ0','BNvTyMvY','zM9YBwf0','uhj3BvC','x2rLzMf1BhrqAw5eAwDPDhm','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','sNPuqxe','y291BNrLCKLUDa','r0rJvfO','EeXMBeW','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','C3jLBq','AgfZ','x2fSBg93uMvZzxq','CMv1C2u6','ChjLzML4','mJG1ntm0nefWzNPqEa','sgjIBuG','EMnHCMq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','vvjVzum','y05SEw4','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','Bwf4uMv0CNK','z1nqALO','vNPdy0G','x3zHBgLKyxrLuMvZzxj2zvruta','suzAyLK','vvfMCfe','swnPCxa'];a0_0x494d=function(){return _0x43f0fb;};return a0_0x494d();}class IdGeneratorError extends Error{constructor(_0x2992ac,_0x5f0723,_0x150dc1=null){const _0x98fd97=a0_0x7e059b,_0x59252f={'GisPV':function(_0x4d0081,_0xf83e2){return _0x4d0081||_0xf83e2;}};super(_0x59252f[_0x98fd97(0x2ce)](_0x5f0723,_0x2992ac)),this[_0x98fd97(0x30c)]='IdGeneratorError',this['code']=_0x2992ac,this['details']=_0x150dc1;}}class IdGenerator{constructor(){const _0x37f585=a0_0x7e059b;this[_0x37f585(0x23f)]=![],this['_enabled']=null,this['_keyPrefix']=null,this['_idemTTL']=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this['_defaultPinDigits']=null,this[_0x37f585(0x253)]=null,this['_defaultCodePattern']=null,this[_0x37f585(0x2b3)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x549310=a0_0x7e059b,_0x1b006e={'eJcBE':'9|0|11|4|6|5|2|7|10|1|12|3|8','OmOnW':'true','IxkXu':function(_0x1ea49c,_0x564d95,_0x17d30a){return _0x1ea49c(_0x564d95,_0x17d30a);},'KanmB':_0x549310(0x288),'gMPbT':function(_0x5e633e,_0x2fd49f){return _0x5e633e===_0x2fd49f;},'uMDlj':function(_0x4d34d8,_0x18b469,_0x18916a){return _0x4d34d8(_0x18b469,_0x18916a);},'gEfWo':_0x549310(0x23d),'fjIHi':_0x549310(0x29d),'oasNJ':function(_0x59bec5,_0x2f6bcf,_0x233668){return _0x59bec5(_0x2f6bcf,_0x233668);}},_0x1a534f=_0x1b006e[_0x549310(0x234)]['split']('|');let _0x3b7bf8=0x0;while(!![]){switch(_0x1a534f[_0x3b7bf8++]){case'0':this['_enabled']=process[_0x549310(0x2c6)]['IDGEN_ENABLED']===_0x1b006e[_0x549310(0x29e)];continue;case'1':this['_reserveDefaultTTL']=_0x1b006e['IxkXu'](parseInt,process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'2':this[_0x549310(0x253)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x1b006e['KanmB'];continue;case'3':this['_initialized']=!![];continue;case'4':this[_0x549310(0x275)]=_0x1b006e['gMPbT'](process[_0x549310(0x2c6)][_0x549310(0x2fa)],'true');continue;case'5':this[_0x549310(0x26c)]=parseInt(process['env'][_0x549310(0x2c3)],0xa)||0x6;continue;case'6':this[_0x549310(0x21c)]=_0x1b006e[_0x549310(0x2fd)](parseInt,process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa;continue;case'7':this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x1b006e['gEfWo'];continue;case'8':logger[_0x549310(0x208)]({'event':_0x1b006e['fjIHi'],'enabled':this['_enabled'],'idemTTL':this['_idemTTL'],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x549310(0x21c)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x549310(0x294)+this['_enabled']);continue;case'9':this['_keyPrefix']=_0x549310(0x255);continue;case'10':this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x549310(0x2f9)],0xa)||0x2a300};continue;case'11':this[_0x549310(0x290)]=_0x1b006e['oasNJ'](parseInt,process[_0x549310(0x2c6)][_0x549310(0x215)],0xa)||0x258;continue;case'12':this['_reserveMaxTTL']=parseInt(process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;}break;}}['_ensureInitialized'](){if(!this['_initialized'])this['_initConfig']();}get[a0_0x7e059b(0x2f2)](){return this['_ensureInitialized'](),this['_enabled'];}get['keyPrefix'](){return this['_ensureInitialized'](),this['_keyPrefix'];}get['idemTTL'](){return this['_ensureInitialized'](),this['_idemTTL'];}get['allowReset'](){const _0x5f2aaf=a0_0x7e059b;return this[_0x5f2aaf(0x266)](),this[_0x5f2aaf(0x275)];}get['defaultMaxRetry'](){const _0x365f67=a0_0x7e059b;return this[_0x365f67(0x266)](),this['_defaultMaxRetry'];}get[a0_0x7e059b(0x2b0)](){const _0x2ebd90=a0_0x7e059b;return this['_ensureInitialized'](),this[_0x2ebd90(0x26c)];}get['defaultSerialPattern'](){const _0x92239f=a0_0x7e059b;return this[_0x92239f(0x266)](),this[_0x92239f(0x253)];}get[a0_0x7e059b(0x1fd)](){const _0x5d3248=a0_0x7e059b;return this[_0x5d3248(0x266)](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x37fec0=a0_0x7e059b;return this[_0x37fec0(0x266)](),this['_reserveDefaultTTL'];}get[a0_0x7e059b(0x259)](){return this['_ensureInitialized'](),this['_reserveMaxTTL'];}[a0_0x7e059b(0x2ab)](){return this['enabled'];}['_validateResource'](_0x198f21){const _0x14260d=a0_0x7e059b,_0x10d2e8={'dFkto':function(_0x487909,_0x1adb83){return _0x487909!==_0x1adb83;},'URoeC':'string','JzTAq':_0x14260d(0x2d8)};if(_0x10d2e8['dFkto'](typeof _0x198f21,_0x10d2e8[_0x14260d(0x27c)])||!RESOURCE_REGEX['test'](_0x198f21))throw new IdGeneratorError(_0x10d2e8[_0x14260d(0x26e)],_0x14260d(0x25a)+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x14260d(0x2ba)](_0x198f21)+')');}[a0_0x7e059b(0x204)](_0x381db7){const _0x275ee9=a0_0x7e059b,_0xf00ff5={'AeqfY':function(_0x4a88f4,_0x2a346e){return _0x4a88f4===_0x2a346e;},'xLflL':'string','UhLlj':function(_0x17a7ec,_0x9fa731){return _0x17a7ec==_0x9fa731;},'yIqey':_0x275ee9(0x2c9),'mmbqk':function(_0x58c871,_0x413930){return _0x58c871>_0x413930;},'HbbmH':'IDGEN_INVALID_SEPARATOR','ZYWJV':_0x275ee9(0x28e)},{resource:_0x2f274a,format:_0x380fdd,prefix:_0x5d35ee,separator:_0x58e648,numDigits:_0x535b90,reuseDelete:_0x2a80c3}=_0x381db7;this[_0x275ee9(0x28a)](_0x2f274a);const _0x3d5caa=_0xf00ff5['AeqfY'](typeof _0x380fdd,_0xf00ff5[_0x275ee9(0x271)])?_0x380fdd[_0x275ee9(0x2fc)]():'';if(!ALLOWED_FORMATS[_0x275ee9(0x274)](_0x3d5caa))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+_0x275ee9(0x2c5)+_0x380fdd+')');if(!Number[_0x275ee9(0x233)](_0x535b90)||_0x535b90<MIN_NUM_DIGITS||_0x535b90>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x275ee9(0x293),'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x275ee9(0x2c5)+_0x535b90+')');const _0x39bb37=_0xf00ff5[_0x275ee9(0x239)](_0x5d35ee,null)?'':_0x5d35ee;if(typeof _0x39bb37!==_0x275ee9(0x2ae)||!PREFIX_REGEX['test'](_0x39bb37))throw new IdGeneratorError(_0xf00ff5['yIqey'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x5d35ee)+')');const _0x18791d=_0x58e648==null?'':_0x58e648;if(typeof _0x18791d!==_0xf00ff5[_0x275ee9(0x271)]||_0xf00ff5['mmbqk'](_0x18791d[_0x275ee9(0x2ee)],0x3)||SEPARATOR_FORBIDDEN['test'](_0x18791d))throw new IdGeneratorError(_0xf00ff5[_0x275ee9(0x279)],_0x275ee9(0x2bc)+JSON['stringify'](_0x58e648)+')');if(_0x2a80c3!=null&&typeof _0x2a80c3!==_0xf00ff5['ZYWJV'])throw new IdGeneratorError(_0x275ee9(0x2d8),_0x275ee9(0x240)+typeof _0x2a80c3+')');return{'resource':_0x2f274a,'format':_0x3d5caa,'prefix':_0x39bb37,'separator':_0x18791d,'numDigits':_0x535b90,'reuseDelete':_0x2a80c3===!![]};}[a0_0x7e059b(0x241)](_0x549247){const _0x53dfcb=a0_0x7e059b,_0x561512={'daxSY':function(_0x50b26b,_0x5e2dc0){return _0x50b26b!==_0x5e2dc0;},'vXnce':_0x53dfcb(0x2ae),'Rvosw':function(_0x5a6165,_0x214776){return _0x5a6165===_0x214776;},'cNlyn':function(_0x3a2fac,_0x253686){return _0x3a2fac>_0x253686;},'iJfNE':_0x53dfcb(0x230)};if(_0x561512['daxSY'](typeof _0x549247,_0x561512[_0x53dfcb(0x201)])||_0x561512[_0x53dfcb(0x238)](_0x549247['length'],0x0)||_0x561512[_0x53dfcb(0x27d)](_0x549247[_0x53dfcb(0x2ee)],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x561512['iJfNE'],_0x53dfcb(0x2ec)+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x549247&&_0x549247[_0x53dfcb(0x2ee)])+')');let _0x596ba7=![];for(const _0x2dd053 of _0x549247){if(PLACEHOLDER_MAP[_0x2dd053]){_0x596ba7=!![];break;}}if(!_0x596ba7)throw new IdGeneratorError('IDGEN_INVALID_PATTERN','Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}[a0_0x7e059b(0x2a1)](_0x176fa5){const _0x532d0a=a0_0x7e059b,_0x351f0d={'GCqQz':function(_0x3ef7e5,_0x1df203){return _0x3ef7e5==_0x1df203;}};if(_0x351f0d['GCqQz'](_0x176fa5,null))return undefined;if(!Number[_0x532d0a(0x233)](_0x176fa5)||_0x176fa5<0x1||_0x176fa5>MAX_TTL)throw new IdGeneratorError(_0x532d0a(0x229),'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x176fa5+')');return _0x176fa5;}[a0_0x7e059b(0x219)](_0x534ae5){const _0x2b8443=a0_0x7e059b,_0x1a79ed={'pXkvp':'IDGEN_INVALID_MAX_RETRY'};if(_0x534ae5==null)return this['defaultMaxRetry'];if(!Number[_0x2b8443(0x233)](_0x534ae5)||_0x534ae5<0x1||_0x534ae5>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x1a79ed[_0x2b8443(0x301)],_0x2b8443(0x2c7)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x534ae5+')');return _0x534ae5;}[a0_0x7e059b(0x236)](_0x5cdcc3){const _0x53427f=a0_0x7e059b,_0x14a7fc={'prYqB':function(_0x337211,_0x1fa88d){return _0x337211==_0x1fa88d;},'weUJv':function(_0x5c3740,_0x5bfe8d){return _0x5c3740!==_0x5bfe8d;},'IFZbY':'string','GDcTZ':function(_0x2c732d,_0xbd1c0a){return _0x2c732d===_0xbd1c0a;},'suttO':function(_0x1e84d4,_0x53d0a4){return _0x1e84d4>_0x53d0a4;}};if(_0x14a7fc['prYqB'](_0x5cdcc3,null))return undefined;if(_0x14a7fc[_0x53427f(0x1f1)](typeof _0x5cdcc3,_0x14a7fc[_0x53427f(0x283)])||_0x14a7fc[_0x53427f(0x270)](_0x5cdcc3['length'],0x0)||_0x14a7fc[_0x53427f(0x28d)](_0x5cdcc3[_0x53427f(0x2ee)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x5cdcc3;}['_validateReserveTTL'](_0x26a487){const _0x3522ec=a0_0x7e059b,_0x36d28b={'GhGHM':function(_0x93b712,_0x1a1922){return _0x93b712==_0x1a1922;},'UFaWr':function(_0x418a28,_0x1ceda8){return _0x418a28<_0x1ceda8;},'rNdKY':function(_0x3beb30,_0x30b638){return _0x3beb30>_0x30b638;},'EIVow':'IDGEN_INVALID_RESERVE_TTL'};if(_0x36d28b['GhGHM'](_0x26a487,null))return this[_0x3522ec(0x24c)];if(!Number['isInteger'](_0x26a487)||_0x36d28b[_0x3522ec(0x2bd)](_0x26a487,MIN_RESERVE_TTL)||_0x36d28b[_0x3522ec(0x1f3)](_0x26a487,this[_0x3522ec(0x259)]))throw new IdGeneratorError(_0x36d28b['EIVow'],'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this[_0x3522ec(0x259)]+_0x3522ec(0x222)+_0x26a487+')');return _0x26a487;}[a0_0x7e059b(0x309)](_0x32297e){const _0x210d3b=a0_0x7e059b,_0x141763={'QpDzG':function(_0x21a31a,_0x41e51d){return _0x21a31a!==_0x41e51d;},'UHavF':_0x210d3b(0x2aa)};if(_0x141763[_0x210d3b(0x251)](typeof _0x32297e,'string')||!RESERVATION_TOKEN_REGEX[_0x210d3b(0x256)](_0x32297e))throw new IdGeneratorError(_0x141763['UHavF'],_0x210d3b(0x2b7)+JSON[_0x210d3b(0x2ba)](_0x32297e)+')');return _0x32297e;}['_pad2'](_0x37ff3d){const _0x5cc7ee=a0_0x7e059b,_0x9166c5={'JXXyP':function(_0x1240c8,_0x3f9454){return _0x1240c8(_0x3f9454);}};return _0x9166c5[_0x5cc7ee(0x307)](String,_0x37ff3d)[_0x5cc7ee(0x244)](0x2,'0');}[a0_0x7e059b(0x237)](_0x72669e,_0x5847f8,_0x25f095=new Date()){const _0x5e2499=a0_0x7e059b,_0x106c48={'zHGic':function(_0x268ff9,_0x4b9542){return _0x268ff9||_0x4b9542;},'qKnWG':'yyyy','CnIjQ':_0x5e2499(0x2a2),'Moazt':'IDGEN_INVALID_FORMAT'},_0x464f95=_0x25f095['getFullYear'](),_0x1ce562=this['_pad2'](_0x25f095[_0x5e2499(0x2f1)]()+0x1),_0x4a3b2c=this['_pad2'](_0x25f095['getDate']()),_0x2189a8=_0x106c48[_0x5e2499(0x29c)](_0x5847f8,'_');let _0x1843a0,_0x2fddc8='';switch(_0x72669e){case _0x5e2499(0x2cb):_0x1843a0=_0x2189a8+'_text';break;case _0x106c48['qKnWG']:_0x2fddc8=''+_0x464f95,_0x1843a0=_0x2189a8+'_yyyy_'+_0x2fddc8;break;case _0x106c48[_0x5e2499(0x2c0)]:_0x2fddc8=''+_0x464f95+_0x1ce562,_0x1843a0=_0x2189a8+'_yyyymm_'+_0x2fddc8;break;case'yyyymmdd':_0x2fddc8=''+_0x464f95+_0x1ce562+_0x4a3b2c,_0x1843a0=_0x2189a8+'_yyyymmdd_'+_0x2fddc8;break;default:throw new IdGeneratorError(_0x106c48['Moazt'],'Unknown\x20format:\x20'+_0x72669e);}return{'formatKey':_0x1843a0,'datePrefix':_0x2fddc8};}['_buildSeqKey'](_0x1bd65e,_0x297210){const _0x415271=a0_0x7e059b;return this[_0x415271(0x247)]+'seq:'+_0x1bd65e+':'+_0x297210;}[a0_0x7e059b(0x298)](_0x3f7176,_0x439e30){const _0xbccbc7=a0_0x7e059b;return this[_0xbccbc7(0x247)]+_0xbccbc7(0x276)+_0x3f7176+':'+_0x439e30;}[a0_0x7e059b(0x2cc)](_0x3b25ea,_0x2923db){return this['keyPrefix']+'meta:'+_0x3b25ea+':'+_0x2923db;}['_buildIssuedKey'](_0x54d07a){const _0x511a2a=a0_0x7e059b;return this['keyPrefix']+_0x511a2a(0x2fe)+_0x54d07a;}[a0_0x7e059b(0x21b)](_0x1f24a7,_0x2c981e){const _0x2c1489=a0_0x7e059b;return this[_0x2c1489(0x247)]+'active:'+_0x1f24a7+':'+_0x2c981e;}['_buildReservationKey'](_0x29b0b3){const _0x5ed9e2=a0_0x7e059b;return this[_0x5ed9e2(0x247)]+_0x5ed9e2(0x30a)+_0x29b0b3;}[a0_0x7e059b(0x27e)](_0x1c530b,_0x2d4fc2){return this['keyPrefix']+'rsv_idx:'+_0x1c530b+':'+_0x2d4fc2;}[a0_0x7e059b(0x26d)](){const _0x11e75d=a0_0x7e059b;return this['keyPrefix']+_0x11e75d(0x30a);}[a0_0x7e059b(0x28b)](_0x5345f3,_0x4eb622,_0x75cfb2,_0x56040e){const _0x45d9e1=a0_0x7e059b,_0x4b3fc6={'PYhqF':'idgen'};if(_0x75cfb2)return idempotencyManager['buildDeterministicKey'](_0x4b3fc6[_0x45d9e1(0x2da)],_0x5345f3,_0x4eb622+':'+_0x75cfb2+':'+_0x56040e);return idempotencyManager[_0x45d9e1(0x27b)](_0x45d9e1(0x2ad),_0x5345f3,_0x4eb622+':'+_0x56040e);}[a0_0x7e059b(0x216)](_0x5e94c7){return this['_counterTTLMap'][_0x5e94c7]||0x0;}['_formatNumber']({format:_0x589c57,prefix:_0x250735,datePrefix:_0x28a8b1,separator:_0x20b7f9,numDigits:_0x566758,counterInt:_0x5c117f}){const _0x39dde9=a0_0x7e059b,_0xcbd62e={'JqOlP':function(_0x494d60,_0xf3aba0){return _0x494d60>_0xf3aba0;},'jjTiq':function(_0x4595f2,_0x58e5d2){return _0x4595f2(_0x58e5d2);},'Nllnl':function(_0x5b69da,_0x2ce4be){return _0x5b69da===_0x2ce4be;},'pvGtD':_0x39dde9(0x2cb)},_0x1bda94=Math[_0x39dde9(0x24b)](0xa,_0x566758)-0x1;if(_0xcbd62e['JqOlP'](_0x5c117f,_0x1bda94))throw new IdGeneratorError('IDGEN_COUNTER_OVERFLOW',_0x39dde9(0x1f9)+_0x5c117f+'\x20exceeds\x20'+_0x566758+_0x39dde9(0x228)+_0x1bda94+_0x39dde9(0x2a0),{'counterInt':_0x5c117f,'numDigits':_0x566758,'max':_0x1bda94});const _0x1140f9=_0xcbd62e['jjTiq'](String,_0x5c117f)[_0x39dde9(0x244)](_0x566758,'0');if(_0xcbd62e['Nllnl'](_0x589c57,_0xcbd62e[_0x39dde9(0x2d2)]))return _0x250735?''+_0x250735+_0x20b7f9+_0x1140f9:_0x1140f9;return _0x250735?''+_0x250735+_0x20b7f9+_0x28a8b1+_0x20b7f9+_0x1140f9:''+_0x28a8b1+_0x20b7f9+_0x1140f9;}['_parseNumber']({format:_0x261226,prefix:_0x58bbe2,separator:_0x583435,numDigits:_0x42bd12,number:_0x51f202}){const _0x58b85a=a0_0x7e059b,_0x21ae27={'uggcw':'string','sdyMV':function(_0x2b8485,_0x50fd2e){return _0x2b8485===_0x50fd2e;},'nkXjM':_0x58b85a(0x2d1),'vJcGR':function(_0x1fcef6,_0x46f076){return _0x1fcef6!==_0x46f076;},'cFfjD':function(_0x394a65,_0x1db15e){return _0x394a65===_0x1db15e;},'eRtTQ':_0x58b85a(0x2a2),'vEHcU':function(_0x51a1e8,_0x2ee092,_0x3473ff){return _0x51a1e8(_0x2ee092,_0x3473ff);},'nQyzt':function(_0x5bc6ec,_0x3268b0){return _0x5bc6ec||_0x3268b0;},'gSPjZ':_0x58b85a(0x2cb)};if(typeof _0x51f202!==_0x21ae27[_0x58b85a(0x254)]||_0x21ae27['sdyMV'](_0x51f202['length'],0x0))throw new IdGeneratorError(_0x21ae27['nkXjM'],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x4ca53a=_0x583435||'',_0x39acc4=_0x21ae27['sdyMV'](_0x4ca53a,'')?[_0x51f202]:_0x51f202['split'](_0x4ca53a);let _0x2fd371='',_0xc2823c;if(_0x21ae27[_0x58b85a(0x1f4)](_0x261226,_0x58b85a(0x2cb))){if(_0x58bbe2){if(_0x39acc4[_0x58b85a(0x2ee)]!==0x2||_0x39acc4[0x0]!==_0x58bbe2)throw new IdGeneratorError(_0x58b85a(0x2d1),_0x58b85a(0x1f7)+_0x4ca53a+_0x58b85a(0x30f)+_0x51f202+')');_0xc2823c=_0x39acc4[0x1];}else{if(_0x21ae27['vJcGR'](_0x39acc4['length'],0x1))throw new IdGeneratorError(_0x21ae27['nkXjM'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x51f202+')');_0xc2823c=_0x39acc4[0x0];}}else{const _0x443a88=_0x58bbe2?0x3:0x2;if(_0x39acc4[_0x58b85a(0x2ee)]!==_0x443a88)throw new IdGeneratorError(_0x21ae27[_0x58b85a(0x2a6)],_0x58b85a(0x22b)+_0x51f202+',\x20expected\x20'+_0x443a88+_0x58b85a(0x2b9));let _0x452240=0x0;if(_0x58bbe2){if(_0x21ae27['vJcGR'](_0x39acc4[_0x452240],_0x58bbe2))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20prefix\x20mismatch:\x20expected\x20'+_0x58bbe2+',\x20got\x20'+_0x39acc4[_0x452240]);_0x452240++;}_0x2fd371=_0x39acc4[_0x452240++];const _0x490f9b=_0x21ae27['cFfjD'](_0x261226,'yyyy')?/^\d{4}$/:_0x261226===_0x21ae27[_0x58b85a(0x2e5)]?/^\d{6}$/:/^\d{8}$/;if(!_0x490f9b['test'](_0x2fd371))throw new IdGeneratorError(_0x21ae27['nkXjM'],_0x58b85a(0x211)+_0x261226+':\x20'+_0x2fd371);_0xc2823c=_0x39acc4[_0x452240];}if(!new RegExp('^\x5cd{'+_0x42bd12+'}$')[_0x58b85a(0x256)](_0xc2823c))throw new IdGeneratorError(_0x21ae27[_0x58b85a(0x2a6)],_0x58b85a(0x214)+_0x42bd12+_0x58b85a(0x2f6)+_0xc2823c+')');const _0x5daf14=_0x21ae27['vEHcU'](parseInt,_0xc2823c,0xa),_0x4af79b=_0x21ae27['nQyzt'](_0x58bbe2,'_');let _0x3f90d0;return _0x261226===_0x21ae27[_0x58b85a(0x280)]?_0x3f90d0=_0x4af79b+_0x58b85a(0x21a):_0x3f90d0=_0x4af79b+'_'+_0x261226+'_'+_0x2fd371,{'formatKey':_0x3f90d0,'counterInt':_0x5daf14,'datePrefix':_0x2fd371};}[a0_0x7e059b(0x28f)](_0x5b77e6){let _0x4282a8='';for(const _0x5dacbc of _0x5b77e6){const _0x259586=PLACEHOLDER_MAP[_0x5dacbc];if(_0x259586){const _0xafeaa7=crypto['randomInt'](0x0,_0x259586['length']);_0x4282a8+=_0x259586[_0xafeaa7];}else _0x4282a8+=_0x5dacbc;}return _0x4282a8;}async[a0_0x7e059b(0x24e)](_0x361da9){const _0x9d02f5=a0_0x7e059b,_0x28d7f5={'HbIrO':_0x9d02f5(0x25e),'oLQvI':_0x9d02f5(0x2e7)};if(!_0x361da9)return null;try{const _0x1c7fec=redisClient[_0x9d02f5(0x2df)](),_0x27a93d=await _0x1c7fec['get'](_0x361da9);if(_0x27a93d)return logger[_0x9d02f5(0x208)]({'event':'idgen_idem_hit','key':_0x361da9},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x27a93d);return null;}catch(_0x22acc6){return logger['warn']({'event':_0x28d7f5[_0x9d02f5(0x246)],'error':_0x22acc6[_0x9d02f5(0x232)]},_0x28d7f5['oLQvI']),null;}}async[a0_0x7e059b(0x24a)](_0x46e672,_0x22cfdd){const _0x34b405=a0_0x7e059b,_0x21046f={'wcnTD':_0x34b405(0x1f0)};if(!_0x46e672)return;try{const _0x389773=redisClient[_0x34b405(0x2df)]();await _0x389773['setex'](_0x46e672,this['idemTTL'],JSON['stringify'](_0x22cfdd));}catch(_0x50dcc0){logger[_0x34b405(0x2b4)]({'event':'idgen_idem_store_error','error':_0x50dcc0[_0x34b405(0x232)]},_0x21046f['wcnTD']);}}async['_storeIdemCacheNX'](_0x2d99a8,_0xbfbe62){const _0x23152a=a0_0x7e059b,_0x2816de={'nZNoQ':function(_0x3eee16,_0x1f1f33){return _0x3eee16===_0x1f1f33;},'szXpm':'idgen_idem_nx_race_lost_but_empty','IrmcC':'idgen_idem_storenx_error'};if(!_0x2d99a8)return{'stored':!![],'winnerResult':null};try{const _0x21132e=redisClient[_0x23152a(0x2df)](),_0x54d547=JSON[_0x23152a(0x2ba)](_0xbfbe62),_0x381a6f=await _0x21132e[_0x23152a(0x21d)](_0x2d99a8,_0x54d547,'EX',this['idemTTL'],'NX');if(_0x2816de['nZNoQ'](_0x381a6f,'OK'))return{'stored':!![],'winnerResult':null};const _0x26ec73=await _0x21132e['get'](_0x2d99a8);if(_0x26ec73)return{'stored':![],'winnerResult':JSON[_0x23152a(0x210)](_0x26ec73)};return logger[_0x23152a(0x2b4)]({'event':_0x2816de['szXpm'],'key':_0x2d99a8},'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result'),{'stored':!![],'winnerResult':null};}catch(_0x80dc82){return logger['warn']({'event':_0x2816de['IrmcC'],'error':_0x80dc82[_0x23152a(0x232)]},_0x23152a(0x24f)),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x833119,_0x4b767d,_0x42bc27){const _0x4c882a=a0_0x7e059b,_0x5a4132={'WHvFp':'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)'};try{const _0x2d056d=redisClient[_0x4c882a(0x2df)]();if(_0x42bc27){const _0x47a809=this[_0x4c882a(0x21b)](_0x833119,_0x4b767d);await _0x2d056d['del'](_0x47a809);}else{const _0x1b50b3=this['_buildIssuedKey'](_0x833119);await _0x2d056d[_0x4c882a(0x273)](_0x1b50b3,_0x4b767d);}}catch(_0x57cea3){logger[_0x4c882a(0x2b4)]({'event':'idgen_random_undo_error','error':_0x57cea3[_0x4c882a(0x232)]},_0x5a4132['WHvFp']);}}async['_updateMeta'](_0x318165,_0x104381,_0x15a263,_0x39e4af=0x0){const _0x4c583e=a0_0x7e059b,_0x33d70f={'zJZzJ':function(_0x2d0edc,_0x403246){return _0x2d0edc(_0x403246);},'KcaiM':function(_0x25066d,_0x24ec44){return _0x25066d>_0x24ec44;},'MUJkF':'Meta\x20update\x20error'};try{const _0x27570a=redisClient['getClient'](),_0x3a319b=this['_buildMetaKey'](_0x318165,_0x104381),_0x3321fb=[];for(const [_0x4a0096,_0x3971cd]of Object[_0x4c583e(0x2dd)](_0x15a263)){_0x3321fb[_0x4c583e(0x22d)](_0x4a0096,_0x33d70f['zJZzJ'](String,_0x3971cd));}if(_0x3321fb[_0x4c583e(0x2ee)]>0x0){await _0x27570a[_0x4c583e(0x2e0)](_0x3a319b,..._0x3321fb);if(_0x33d70f['KcaiM'](_0x39e4af,0x0))await _0x27570a['expire'](_0x3a319b,_0x39e4af);}}catch(_0x9626ef){logger[_0x4c583e(0x2b4)]({'event':'idgen_meta_update_error','error':_0x9626ef[_0x4c583e(0x232)]},_0x33d70f[_0x4c583e(0x302)]);}}async['number'](_0x1ca86c){const _0x2c7def=a0_0x7e059b,_0x214442={'yHEsU':'IDGEN_DISABLED','zZLOc':'number','YVpKr':function(_0x2c6d89,_0x150d30){return _0x2c6d89(_0x150d30);},'rrLyf':function(_0x1f5855,_0xed200c){return _0x1f5855===_0xed200c;},'UNVSe':function(_0x29f2ec,_0x36200e){return _0x29f2ec(_0x36200e);},'zelXT':'idgen_idem_loser_release_error','PrwmW':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError(_0x214442['yHEsU'],_0x2c7def(0x1fb));const _0x5402db=this[_0x2c7def(0x204)](_0x1ca86c),_0xb08927=this[_0x2c7def(0x236)](_0x1ca86c[_0x2c7def(0x2ca)]),{resource:_0x6c54ea,format:_0x13529e,prefix:_0x4b7024,separator:_0x1bfab7,numDigits:_0x443afb,reuseDelete:_0x475607}=_0x5402db,{formatKey:_0x742550,datePrefix:_0x22ad84}=this[_0x2c7def(0x237)](_0x13529e,_0x4b7024),_0x523f0d=this['_buildSeqKey'](_0x6c54ea,_0x742550),_0x5bf014=this[_0x2c7def(0x298)](_0x6c54ea,_0x742550),_0x4342a6=this['_getCounterTTL'](_0x13529e);let _0xc1b347=null;if(_0xb08927){_0xc1b347=this[_0x2c7def(0x28b)](_0x214442[_0x2c7def(0x203)],_0x6c54ea,_0x742550,_0xb08927);const _0x58ff44=await this[_0x2c7def(0x24e)](_0xc1b347);if(_0x58ff44)return _0x58ff44;}const _0xe80d14=redisClient['getClient'](),_0x5df8af=await _0xe80d14['eval'](LUA_GENERATE_NUMBER,0x2,_0x523f0d,_0x5bf014,_0x475607?'1':'0',_0x214442[_0x2c7def(0x248)](String,_0x4342a6)),_0x20b707=_0x5df8af[0x0],_0x480c8f=_0x214442[_0x2c7def(0x2e9)](_0x5df8af[0x1],0x1),_0x21125e=this[_0x2c7def(0x24d)]({'format':_0x13529e,'prefix':_0x4b7024,'datePrefix':_0x22ad84,'separator':_0x1bfab7,'numDigits':_0x443afb,'counterInt':_0x20b707}),_0x451cde={'value':_0x21125e,'counter':_0x20b707,'resource':_0x6c54ea,'formatKey':_0x742550,'isReused':_0x480c8f,'generatedAt':new Date()[_0x2c7def(0x2b8)]()},_0x19f99d=await this[_0x2c7def(0x2ea)](_0xc1b347,_0x451cde);if(!_0x19f99d['stored']){try{await _0xe80d14['eval'](LUA_RELEASE_NUMBER,0x1,_0x5bf014,_0x214442['UNVSe'](String,_0x20b707),String(_0x4342a6));}catch(_0x11e2dd){logger[_0x2c7def(0x2b4)]({'event':_0x214442['zelXT'],'error':_0x11e2dd['message'],'resource':_0x6c54ea,'formatKey':_0x742550,'counterInt':_0x20b707},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger['info']({'event':_0x214442[_0x2c7def(0x26b)],'resource':_0x6c54ea,'formatKey':_0x742550,'counter':_0x20b707},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x19f99d[_0x2c7def(0x22e)];}return this['_updateMeta'](_0x6c54ea,_0x742550,{'lastValue':_0x21125e,'lastCounter':_0x20b707,'lastIsReused':_0x480c8f,'lastGeneratedAt':_0x451cde['generatedAt']},_0x4342a6),logger[_0x2c7def(0x208)]({'event':'idgen_number_generated','resource':_0x6c54ea,'formatKey':_0x742550,'counter':_0x20b707,'isReused':_0x480c8f},_0x2c7def(0x2dc)+_0x21125e),_0x451cde;}async[a0_0x7e059b(0x2c4)](_0x4ebfd2){const _0x5c2fc9=a0_0x7e059b,_0x227c79={'OPZaJ':_0x5c2fc9(0x200),'Iciqp':function(_0x2fc5cd,_0x3de2d7){return _0x2fc5cd!==_0x3de2d7;},'fkcGj':_0x5c2fc9(0x2ae),'auOYH':function(_0x1eaa9f,_0x3f0e66){return _0x1eaa9f===_0x3f0e66;},'WJnPu':'IDGEN_INVALID_NUMBER','NDMef':_0x5c2fc9(0x2cb),'Zlems':_0x5c2fc9(0x2e8),'ORjEt':function(_0x10fcaf,_0x19b180){return _0x10fcaf(_0x19b180);}};if(!this['enabled'])throw new IdGeneratorError(_0x5c2fc9(0x209),_0x227c79['OPZaJ']);let _0xa3d64b,_0xa45a32,_0x38e0da,_0x2e448d;const _0x2f92f1=this[_0x5c2fc9(0x236)](_0x4ebfd2['idempotencyKey']);if(_0x227c79['Iciqp'](_0x4ebfd2[_0x5c2fc9(0x26f)],undefined)&&_0x227c79['Iciqp'](_0x4ebfd2['counterInt'],null)){this[_0x5c2fc9(0x28a)](_0x4ebfd2[_0x5c2fc9(0x291)]),_0xa3d64b=_0x4ebfd2['resource'];if(_0x227c79[_0x5c2fc9(0x285)](typeof _0x4ebfd2['formatKey'],_0x227c79['fkcGj'])||_0x227c79['auOYH'](_0x4ebfd2['formatKey'][_0x5c2fc9(0x2ee)],0x0))throw new IdGeneratorError(_0x227c79['WJnPu'],'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0xa45a32=_0x4ebfd2['formatKey'];if(!Number['isInteger'](_0x4ebfd2[_0x5c2fc9(0x26f)])||_0x4ebfd2['counterInt']<0x1)throw new IdGeneratorError(_0x227c79['WJnPu'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x4ebfd2[_0x5c2fc9(0x26f)]+')');_0x38e0da=_0x4ebfd2[_0x5c2fc9(0x26f)];const _0x2dfba3=_0xa45a32['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x2e448d=_0x2dfba3?_0x2dfba3[0x1]:_0x227c79[_0x5c2fc9(0x2d5)];}else{const _0x469822=this['_validateNumberParams'](_0x4ebfd2),_0x10c6c1=this['_parseNumber']({'format':_0x469822['format'],'prefix':_0x469822[_0x5c2fc9(0x277)],'separator':_0x469822[_0x5c2fc9(0x312)],'numDigits':_0x469822['numDigits'],'number':_0x4ebfd2['number']});_0xa3d64b=_0x469822[_0x5c2fc9(0x291)],_0xa45a32=_0x10c6c1[_0x5c2fc9(0x2b6)],_0x38e0da=_0x10c6c1['counterInt'],_0x2e448d=_0x469822['format'];}const _0x1b0b43=this[_0x5c2fc9(0x298)](_0xa3d64b,_0xa45a32),_0xaf3a02=this[_0x5c2fc9(0x216)](_0x2e448d);let _0x30a6ef=null;if(_0x2f92f1){_0x30a6ef=this['_buildIdemKey'](_0x227c79['Zlems'],_0xa3d64b,_0xa45a32,_0x2f92f1);const _0x1d87ef=await this['_retrieveIdemCache'](_0x30a6ef);if(_0x1d87ef)return _0x1d87ef;}const _0x4f9816=redisClient[_0x5c2fc9(0x2df)]();await _0x4f9816[_0x5c2fc9(0x2de)](LUA_RELEASE_NUMBER,0x1,_0x1b0b43,_0x227c79['ORjEt'](String,_0x38e0da),_0x227c79['ORjEt'](String,_0xaf3a02));const _0x12d1c9={'released':!![],'resource':_0xa3d64b,'formatKey':_0xa45a32,'counter':_0x38e0da,'releasedAt':new Date()[_0x5c2fc9(0x2b8)]()};return await this['_storeIdemCache'](_0x30a6ef,_0x12d1c9),this[_0x5c2fc9(0x2b2)](_0xa3d64b,_0xa45a32,{'lastReleasedCounter':_0x38e0da,'lastReleasedAt':_0x12d1c9['releasedAt']},_0xaf3a02),logger['info']({'event':_0x5c2fc9(0x28c),'resource':_0xa3d64b,'formatKey':_0xa45a32,'counter':_0x38e0da},'ID\x20Generator\x20number\x20released:\x20'+_0x38e0da),_0x12d1c9;}async[a0_0x7e059b(0x252)](_0x104c68){const _0x5cc2b8=a0_0x7e059b,_0x18ef3b={'PqrNH':_0x5cc2b8(0x209),'IBPqE':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','HIyGl':'reserve','fkBpS':function(_0x461483,_0x1f7b5b){return _0x461483*_0x1f7b5b;},'FztoH':'format','IpbKV':'prefix','vdzbp':_0x5cc2b8(0x312),'VYYhe':function(_0x406e55,_0x1e2fe6){return _0x406e55(_0x1e2fe6);},'beDAG':_0x5cc2b8(0x23a),'QLDjC':'createdAt','UQfpQ':'ttlMs','iqyIa':_0x5cc2b8(0x2e4),'wjPvf':function(_0x2609cc,_0x47c0cb){return _0x2609cc(_0x47c0cb);},'GXXRJ':function(_0x1ffc70,_0x53f6b9){return _0x1ffc70===_0x53f6b9;},'iyDzW':_0x5cc2b8(0x2e6),'USyhl':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','gTiCG':'idgen_reserve_value_persist_error','KATti':_0x5cc2b8(0x2f8),'jWwnM':_0x5cc2b8(0x20f),'YcCYL':_0x5cc2b8(0x235)};if(!this[_0x5cc2b8(0x2f2)])throw new IdGeneratorError(_0x18ef3b['PqrNH'],_0x18ef3b['IBPqE']);const _0xbe233d=this[_0x5cc2b8(0x204)](_0x104c68),_0x38215e=this[_0x5cc2b8(0x282)](_0x104c68[_0x5cc2b8(0x21e)]),_0x34f1f5=this['_validateIdempotencyKey'](_0x104c68[_0x5cc2b8(0x2ca)]),{resource:_0xb614f,format:_0x736de4,prefix:_0x5c2b4a,separator:_0x4480e7,numDigits:_0x301944,reuseDelete:_0x5b1ef4}=_0xbe233d,{formatKey:_0x559365,datePrefix:_0x1c9a9e}=this[_0x5cc2b8(0x237)](_0x736de4,_0x5c2b4a),_0x3b71b7=this['_buildSeqKey'](_0xb614f,_0x559365),_0x5282cd=this[_0x5cc2b8(0x298)](_0xb614f,_0x559365),_0x2aa20a=this[_0x5cc2b8(0x27e)](_0xb614f,_0x559365),_0x8eb921=this[_0x5cc2b8(0x216)](_0x736de4);let _0x1e3d76=null;if(_0x34f1f5){_0x1e3d76=this[_0x5cc2b8(0x28b)](_0x18ef3b['HIyGl'],_0xb614f,_0x559365,_0x34f1f5);const _0x2fedd0=await this[_0x5cc2b8(0x24e)](_0x1e3d76);if(_0x2fedd0)return _0x2fedd0;}const _0x3c33f2=crypto[_0x5cc2b8(0x2d3)](),_0x3e4fef=this['_buildReservationKey'](_0x3c33f2),_0xfb5b4b=this[_0x5cc2b8(0x26d)](),_0x35520e=Date['now'](),_0x552dca=_0x35520e+_0x18ef3b['fkBpS'](_0x38215e,0x3e8),_0x5c9ce2=_0x38215e*0x3e8,_0x2311eb=new Date(_0x35520e)['toISOString'](),_0x1249fd=new Date(_0x552dca)['toISOString'](),_0x434c23=[_0x5cc2b8(0x291),_0xb614f,_0x5cc2b8(0x2b6),_0x559365,_0x18ef3b['FztoH'],_0x736de4,_0x18ef3b['IpbKV'],_0x5c2b4a,_0x18ef3b[_0x5cc2b8(0x25b)],_0x4480e7,_0x5cc2b8(0x304),_0x18ef3b['VYYhe'](String,_0x301944),_0x18ef3b['beDAG'],_0x1c9a9e||'',_0x18ef3b[_0x5cc2b8(0x21f)],_0x2311eb,_0x5cc2b8(0x1f5),_0x1249fd,_0x18ef3b[_0x5cc2b8(0x284)],String(_0x5c9ce2)];_0x34f1f5&&_0x434c23[_0x5cc2b8(0x22d)](_0x18ef3b['iqyIa'],_0x34f1f5);const _0x475258=redisClient[_0x5cc2b8(0x2df)](),_0x1590d3=await _0x475258['eval'](LUA_RESERVE_NUMBER,0x3,_0x3b71b7,_0x5282cd,_0x2aa20a,_0x5b1ef4?'1':'0',String(_0x8eb921),_0x3c33f2,_0x3e4fef,_0x18ef3b['VYYhe'](String,_0x5c9ce2),String(_0x552dca),_0x18ef3b[_0x5cc2b8(0x2db)](String,_0x35520e),_0xfb5b4b,..._0x434c23),_0x553a6a=_0x1590d3[0x0],_0x27d70e=_0x18ef3b['GXXRJ'](_0x1590d3[0x1],0x1),_0x338d52=_0x1590d3[0x2]||0x0;let _0x1cb31d;try{_0x1cb31d=this['_formatNumber']({'format':_0x736de4,'prefix':_0x5c2b4a,'datePrefix':_0x1c9a9e,'separator':_0x4480e7,'numDigits':_0x301944,'counterInt':_0x553a6a});}catch(_0x288af8){try{await _0x475258[_0x5cc2b8(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x3e4fef,_0x2aa20a,_0x5282cd,_0x3c33f2,String(_0x8eb921));}catch(_0x17fa73){logger['warn']({'event':_0x18ef3b['iyDzW'],'error':_0x17fa73[_0x5cc2b8(0x232)],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b['USyhl']);}throw _0x288af8;}try{await _0x475258['hset'](_0x3e4fef,'value',_0x1cb31d);}catch(_0x4db90f){logger['warn']({'event':_0x18ef3b['gTiCG'],'error':_0x4db90f['message'],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b['KATti']);}const _0x47ca32={'token':_0x3c33f2,'value':_0x1cb31d,'counter':_0x553a6a,'resource':_0xb614f,'formatKey':_0x559365,'isReused':_0x27d70e,'createdAt':_0x2311eb,'expiresAt':_0x1249fd,'reapedCount':_0x338d52},_0x5f55f1=await this['_storeIdemCacheNX'](_0x1e3d76,_0x47ca32);if(!_0x5f55f1[_0x5cc2b8(0x245)]){try{await _0x475258[_0x5cc2b8(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x3e4fef,_0x2aa20a,_0x5282cd,_0x3c33f2,_0x18ef3b[_0x5cc2b8(0x2db)](String,_0x8eb921));}catch(_0x11e458){logger[_0x5cc2b8(0x2b4)]({'event':_0x5cc2b8(0x23b),'error':_0x11e458['message'],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b[_0x5cc2b8(0x2cf)]);}return logger[_0x5cc2b8(0x208)]({'event':_0x18ef3b['YcCYL'],'resource':_0xb614f,'formatKey':_0x559365,'counter':_0x553a6a,'token':_0x3c33f2},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x5f55f1['winnerResult'];}return this[_0x5cc2b8(0x2b2)](_0xb614f,_0x559365,{'lastReservedCounter':_0x553a6a,'lastReservedAt':_0x2311eb,'lastReapedCount':_0x338d52},_0x8eb921),logger[_0x5cc2b8(0x208)]({'event':'idgen_number_reserved','resource':_0xb614f,'formatKey':_0x559365,'counter':_0x553a6a,'isReused':_0x27d70e,'token':_0x3c33f2,'ttl':_0x38215e,'reapedCount':_0x338d52},_0x5cc2b8(0x29f)+_0x1cb31d+_0x5cc2b8(0x268)+_0x3c33f2+')'),_0x47ca32;}async['confirmReservation'](_0x27e5c5){const _0x477f86=a0_0x7e059b,_0x15c293={'SNWMP':_0x477f86(0x2ad),'HtMbA':'reserve_confirm','uwLvY':'IDGEN_RESERVATION_NOT_FOUND','Eaevq':'idgen_reservation_confirmed'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x477f86(0x200));const _0x1ddd8d=this['_validateReservationToken'](_0x27e5c5&&_0x27e5c5[_0x477f86(0x223)]),_0xeb394e=this['_validateIdempotencyKey'](_0x27e5c5&&_0x27e5c5['idempotencyKey']);let _0x9515dd=null;if(_0xeb394e){_0x9515dd=idempotencyManager['buildDeterministicKey'](_0x15c293['SNWMP'],_0x15c293[_0x477f86(0x2d9)],_0x1ddd8d+':'+_0xeb394e);const _0x6aa00f=await this['_retrieveIdemCache'](_0x9515dd);if(_0x6aa00f)return _0x6aa00f;}const _0x386971=await this[_0x477f86(0x1f2)](_0x1ddd8d),_0x2a4fdc=redisClient[_0x477f86(0x2df)](),_0x5197a9=await _0x2a4fdc['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x386971[_0x477f86(0x2fb)],_0x386971['rsvIdxKey'],_0x1ddd8d);if(!_0x5197a9||_0x5197a9[0x0]!==0x1)throw new IdGeneratorError(_0x15c293['uwLvY'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x1ddd8d,{'token':_0x1ddd8d});const _0xd1910c=parseInt(_0x5197a9[0x1],0xa),_0x14388b=_0x5197a9[0x2],_0x201c16=_0x5197a9[0x3],_0x2360fa=new Date()['toISOString'](),_0x29372d={'confirmed':!![],'token':_0x1ddd8d,'value':_0x14388b,'counter':_0xd1910c,'resource':_0x386971[_0x477f86(0x291)],'formatKey':_0x201c16,'confirmedAt':_0x2360fa};await this['_storeIdemCache'](_0x9515dd,_0x29372d);const _0x47bfe2=_0x201c16['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x56cdfe=_0x47bfe2?_0x47bfe2[0x1]:_0x477f86(0x2cb),_0x4203f4=this[_0x477f86(0x216)](_0x56cdfe);return this['_updateMeta'](_0x386971['resource'],_0x201c16,{'lastConfirmedCounter':_0xd1910c,'lastConfirmedAt':_0x2360fa},_0x4203f4),logger['info']({'event':_0x15c293[_0x477f86(0x2ef)],'resource':_0x386971['resource'],'formatKey':_0x201c16,'counter':_0xd1910c,'token':_0x1ddd8d},_0x477f86(0x2ac)+_0x14388b+'\x20(token='+_0x1ddd8d+')'),_0x29372d;}async[a0_0x7e059b(0x287)](_0x230c21){const _0x546c2e=a0_0x7e059b,_0x28277d={'WBsAv':_0x546c2e(0x209),'mkzEd':'ID\x20Generator\x20is\x20disabled','taJXT':_0x546c2e(0x2ad),'rBDUJ':function(_0x66ad23,_0x46ab25){return _0x66ad23!==_0x46ab25;},'EKAxx':'idgen_reservation_cancelled'};if(!this[_0x546c2e(0x2f2)])throw new IdGeneratorError(_0x28277d['WBsAv'],_0x28277d['mkzEd']);const _0x1c1577=this[_0x546c2e(0x309)](_0x230c21&&_0x230c21['token']),_0x61e313=this['_validateIdempotencyKey'](_0x230c21&&_0x230c21[_0x546c2e(0x2ca)]);let _0x19ebba=null;if(_0x61e313){_0x19ebba=idempotencyManager[_0x546c2e(0x27b)](_0x28277d[_0x546c2e(0x2cd)],_0x546c2e(0x2bf),_0x1c1577+':'+_0x61e313);const _0x4fd02e=await this[_0x546c2e(0x24e)](_0x19ebba);if(_0x4fd02e)return _0x4fd02e;}const _0x1ab91f=await this[_0x546c2e(0x1f2)](_0x1c1577),_0xb4593e=this['_buildReuseKey'](_0x1ab91f['resource'],_0x1ab91f['formatKey']),_0x2c081d=_0x1ab91f['formatKey']['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x171ea7=_0x2c081d?_0x2c081d[0x1]:_0x546c2e(0x2cb),_0x485b4c=this[_0x546c2e(0x216)](_0x171ea7),_0x2fc756=redisClient[_0x546c2e(0x2df)](),_0x32dfff=await _0x2fc756[_0x546c2e(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x1ab91f[_0x546c2e(0x2fb)],_0x1ab91f['rsvIdxKey'],_0xb4593e,_0x1c1577,String(_0x485b4c));if(!_0x32dfff||_0x28277d['rBDUJ'](_0x32dfff[0x0],0x1))throw new IdGeneratorError(_0x546c2e(0x22a),_0x546c2e(0x300)+_0x1c1577,{'token':_0x1c1577});const _0x244f39=parseInt(_0x32dfff[0x1],0xa),_0x3fd2a7=_0x32dfff[0x2],_0x299c6c=_0x32dfff[0x3],_0x474557=new Date()['toISOString'](),_0x1394f3={'cancelled':!![],'token':_0x1c1577,'value':_0x3fd2a7,'counter':_0x244f39,'resource':_0x1ab91f[_0x546c2e(0x291)],'formatKey':_0x299c6c,'releasedToReuse':!![],'cancelledAt':_0x474557};return await this[_0x546c2e(0x24a)](_0x19ebba,_0x1394f3),this['_updateMeta'](_0x1ab91f['resource'],_0x299c6c,{'lastCancelledCounter':_0x244f39,'lastCancelledAt':_0x474557},_0x485b4c),logger['info']({'event':_0x28277d[_0x546c2e(0x295)],'resource':_0x1ab91f[_0x546c2e(0x291)],'formatKey':_0x299c6c,'counter':_0x244f39,'token':_0x1c1577},_0x546c2e(0x272)+_0x3fd2a7+'\x20(token='+_0x1c1577+')'),_0x1394f3;}async['extendReservation'](_0x2b5c6f){const _0x4bd62d=a0_0x7e059b,_0x30849f={'imlDJ':'IDGEN_DISABLED','Iodxv':_0x4bd62d(0x2ad),'aLjcr':function(_0x59e48a,_0x42a5bb){return _0x59e48a*_0x42a5bb;},'RdWpt':function(_0x599046,_0x444052){return _0x599046(_0x444052);},'hbZnN':function(_0x4bef79,_0x35c208){return _0x4bef79!==_0x35c208;},'OZkJK':function(_0x2b9a20,_0xab5e,_0x3de7a9){return _0x2b9a20(_0xab5e,_0x3de7a9);},'VzCcH':'text','mcIZl':_0x4bd62d(0x306)};if(!this[_0x4bd62d(0x2f2)])throw new IdGeneratorError(_0x30849f['imlDJ'],'ID\x20Generator\x20is\x20disabled');const _0xdf0a0d=this['_validateReservationToken'](_0x2b5c6f&&_0x2b5c6f['token']),_0x3ca1d1=this[_0x4bd62d(0x282)](_0x2b5c6f&&_0x2b5c6f[_0x4bd62d(0x21e)]),_0x22404b=this['_validateIdempotencyKey'](_0x2b5c6f&&_0x2b5c6f['idempotencyKey']);let _0x1a43d5=null;if(_0x22404b){_0x1a43d5=idempotencyManager[_0x4bd62d(0x27b)](_0x30849f['Iodxv'],_0x4bd62d(0x29b),_0xdf0a0d+':'+_0x22404b);const _0x1bbcc8=await this[_0x4bd62d(0x24e)](_0x1a43d5);if(_0x1bbcc8)return _0x1bbcc8;}const _0x34c563=await this['_getReservationContext'](_0xdf0a0d),_0x51d4f=Date[_0x4bd62d(0x2f5)](),_0x1b924c=_0x51d4f+_0x30849f[_0x4bd62d(0x2f7)](_0x3ca1d1,0x3e8),_0x484a93=_0x30849f[_0x4bd62d(0x2f7)](_0x3ca1d1,0x3e8),_0x5f3cb2=new Date(_0x1b924c)[_0x4bd62d(0x2b8)](),_0x2b86c4=redisClient[_0x4bd62d(0x2df)](),_0x5cb159=await _0x2b86c4['eval'](LUA_EXTEND_RESERVATION,0x2,_0x34c563[_0x4bd62d(0x2fb)],_0x34c563['rsvIdxKey'],_0xdf0a0d,_0x30849f['RdWpt'](String,_0x484a93),String(_0x1b924c),_0x5f3cb2);if(!_0x5cb159||_0x30849f['hbZnN'](_0x5cb159[0x0],0x1))throw new IdGeneratorError(_0x4bd62d(0x22a),_0x4bd62d(0x300)+_0xdf0a0d,{'token':_0xdf0a0d});const _0x16b61c=_0x5cb159[0x1],_0x34589f=_0x30849f['OZkJK'](parseInt,_0x5cb159[0x2],0xa),_0x1309f1=_0x5cb159[0x3],_0x5ab5f3=_0x5cb159[0x4],_0x5c4fec=new Date(_0x51d4f)['toISOString'](),_0x16212f={'extended':!![],'token':_0xdf0a0d,'previousExpiresAt':_0x16b61c,'expiresAt':_0x5f3cb2,'ttlMs':_0x484a93,'resource':_0x34c563[_0x4bd62d(0x291)],'formatKey':_0x5ab5f3,'counter':_0x34589f,'value':_0x1309f1,'extendedAt':_0x5c4fec};await this[_0x4bd62d(0x24a)](_0x1a43d5,_0x16212f);const _0x190f54=_0x5ab5f3[_0x4bd62d(0x205)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e1131=_0x190f54?_0x190f54[0x1]:_0x30849f[_0x4bd62d(0x281)],_0x2bf66d=this['_getCounterTTL'](_0x3e1131);return this[_0x4bd62d(0x2b2)](_0x34c563[_0x4bd62d(0x291)],_0x5ab5f3,{'lastExtendedCounter':_0x34589f,'lastExtendedAt':_0x5c4fec},_0x2bf66d),logger['info']({'event':_0x30849f[_0x4bd62d(0x20b)],'resource':_0x34c563[_0x4bd62d(0x291)],'formatKey':_0x5ab5f3,'counter':_0x34589f,'token':_0xdf0a0d,'ttl':_0x3ca1d1},_0x4bd62d(0x23e)+_0x1309f1+_0x4bd62d(0x268)+_0xdf0a0d+',\x20+'+_0x3ca1d1+'s)'),_0x16212f;}async['getReservation'](_0x42a613){const _0x39c5e3=a0_0x7e059b,_0x58f1d3={'hZgeQ':'IDGEN_DISABLED','huTyi':'ID\x20Generator\x20is\x20disabled','JPPZe':function(_0x49c2db,_0x48a93c,_0x25cad){return _0x49c2db(_0x48a93c,_0x25cad);},'RcBsw':function(_0x3da25d,_0x4b4350){return _0x3da25d===_0x4b4350;},'zqosI':function(_0x2291a0,_0x42df08){return _0x2291a0>=_0x42df08;}};if(!this[_0x39c5e3(0x2f2)])throw new IdGeneratorError(_0x58f1d3['hZgeQ'],_0x58f1d3['huTyi']);const _0x45461e=this['_validateReservationToken'](_0x42a613&&_0x42a613['token']),_0x374a1b=this[_0x39c5e3(0x2a7)](_0x45461e),_0x35edda=redisClient['getClient'](),_0x18c59f=_0x35edda['pipeline']();_0x18c59f['hgetall'](_0x374a1b),_0x18c59f[_0x39c5e3(0x2a8)](_0x374a1b);const _0x5a18db=await _0x18c59f['exec'](),_0x572f9a=_0x5a18db&&_0x5a18db[0x0]&&_0x5a18db[0x0][0x1],_0x3b88d3=_0x5a18db&&_0x5a18db[0x1]&&_0x5a18db[0x1][0x1];if(!_0x572f9a||Object[_0x39c5e3(0x2bb)](_0x572f9a)['length']===0x0)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x39c5e3(0x300)+_0x45461e,{'token':_0x45461e});return{'token':_0x45461e,'resource':_0x572f9a[_0x39c5e3(0x291)]||null,'formatKey':_0x572f9a['formatKey']||null,'format':_0x572f9a['format']||null,'prefix':_0x572f9a['prefix']||'','separator':_0x572f9a['separator']||'','numDigits':_0x572f9a['numDigits']?parseInt(_0x572f9a[_0x39c5e3(0x304)],0xa):null,'datePrefix':_0x572f9a['datePrefix']||'','counter':_0x572f9a['counter']?_0x58f1d3[_0x39c5e3(0x25c)](parseInt,_0x572f9a[_0x39c5e3(0x267)],0xa):null,'value':_0x572f9a[_0x39c5e3(0x1f8)]||null,'isReused':_0x572f9a[_0x39c5e3(0x225)]==='1'||_0x58f1d3['RcBsw'](_0x572f9a[_0x39c5e3(0x225)],0x1),'createdAt':_0x572f9a['createdAt']||null,'expiresAt':_0x572f9a[_0x39c5e3(0x1f5)]||null,'ttlRemainingMs':_0x58f1d3['RcBsw'](typeof _0x3b88d3,'number')&&_0x58f1d3[_0x39c5e3(0x25d)](_0x3b88d3,0x0)?_0x3b88d3:null};}async['_getReservationContext'](_0x1f5229){const _0x5ed354=a0_0x7e059b,_0x2d40e7={'VITXZ':function(_0x4a619c,_0x80fef4){return _0x4a619c||_0x80fef4;}},_0x16d43d=this['_buildReservationKey'](_0x1f5229),_0xceec6a=redisClient[_0x5ed354(0x2df)](),_0x4b44bd=await _0xceec6a[_0x5ed354(0x2c8)](_0x16d43d,'resource','formatKey'),_0x1630ad=_0x4b44bd&&_0x4b44bd[0x0],_0x130dc2=_0x4b44bd&&_0x4b44bd[0x1];if(_0x2d40e7[_0x5ed354(0x311)](!_0x1630ad,!_0x130dc2))throw new IdGeneratorError(_0x5ed354(0x22a),_0x5ed354(0x300)+_0x1f5229,{'token':_0x1f5229});return{'resource':_0x1630ad,'formatKey':_0x130dc2,'rsvKey':_0x16d43d,'rsvIdxKey':this['_buildReservationIndexKey'](_0x1630ad,_0x130dc2)};}async['random'](_0x10b9c3){const _0x11cb85=a0_0x7e059b,_0xac4aef={'YhzCi':_0x11cb85(0x200),'fojaA':'random','hzdBl':function(_0x4bcaa1,_0x4dff67){return _0x4bcaa1<_0x4dff67;},'AFyKH':function(_0x2bc9f8,_0x5137b0){return _0x2bc9f8===_0x5137b0;},'Xuwsj':function(_0xe0b095,_0x56fdb1){return _0xe0b095===_0x56fdb1;},'RSWja':function(_0x4eed5,_0x1eb7e7){return _0x4eed5===_0x1eb7e7;},'IaGMf':_0x11cb85(0x2a4),'FGRCQ':'idgen_random_idem_loser'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xac4aef[_0x11cb85(0x217)]);this[_0x11cb85(0x28a)](_0x10b9c3[_0x11cb85(0x291)]),this['_validatePattern'](_0x10b9c3['pattern']);const _0x82d334=this[_0x11cb85(0x2a1)](_0x10b9c3['ttl']),_0xb53895=this['_validateMaxRetry'](_0x10b9c3['maxRetry']),_0x74cca5=this['_validateIdempotencyKey'](_0x10b9c3[_0x11cb85(0x2ca)]),_0x2ff152=_0x10b9c3['ensureUnique']===!![],{resource:_0x487b51,pattern:_0x1a7b55}=_0x10b9c3;let _0xdaf23=null;if(_0x74cca5){_0xdaf23=this[_0x11cb85(0x28b)](_0xac4aef[_0x11cb85(0x231)],_0x487b51,null,_0x74cca5);const _0x395fe4=await this[_0x11cb85(0x24e)](_0xdaf23);if(_0x395fe4)return _0x395fe4;}const _0x3f682c=redisClient['getClient']();let _0x3f3075=null,_0x302f1a=0x0;if(!_0x2ff152)_0x3f3075=this[_0x11cb85(0x28f)](_0x1a7b55),_0x302f1a=0x1;else{for(let _0x8d87b7=0x0;_0xac4aef[_0x11cb85(0x1f6)](_0x8d87b7,_0xb53895);_0x8d87b7++){_0x302f1a++;const _0x2ca230=this[_0x11cb85(0x28f)](_0x1a7b55);if(_0x82d334){const _0x2f97fe=this['_buildActiveKey'](_0x487b51,_0x2ca230),_0x2b7292=await _0x3f682c[_0x11cb85(0x21d)](_0x2f97fe,'1','EX',_0x82d334,'NX');if(_0xac4aef['AFyKH'](_0x2b7292,'OK')){_0x3f3075=_0x2ca230;break;}}else{const _0x952c66=this['_buildIssuedKey'](_0x487b51),_0x2da352=await _0x3f682c[_0x11cb85(0x2d6)](_0x952c66,_0x2ca230);if(_0xac4aef[_0x11cb85(0x296)](_0x2da352,0x1)){_0x3f3075=_0x2ca230;break;}}}if(_0xac4aef[_0x11cb85(0x263)](_0x3f3075,null))throw new IdGeneratorError(_0xac4aef['IaGMf'],_0x11cb85(0x2a9)+_0xb53895+_0x11cb85(0x2a3),{'resource':_0x487b51,'pattern':_0x1a7b55,'maxRetry':_0xb53895});}const _0x38f2be={'value':_0x3f3075,'resource':_0x487b51,'pattern':_0x1a7b55,'attemptCount':_0x302f1a,'generatedAt':new Date()['toISOString']()};_0x82d334&&_0x2ff152&&(_0x38f2be['expiresAt']=new Date(Date[_0x11cb85(0x2f5)]()+_0x82d334*0x3e8)[_0x11cb85(0x2b8)]());const _0x2e1494=await this['_storeIdemCacheNX'](_0xdaf23,_0x38f2be);if(!_0x2e1494[_0x11cb85(0x245)])return _0x2ff152&&await this[_0x11cb85(0x22c)](_0x487b51,_0x3f3075,_0x82d334),logger[_0x11cb85(0x208)]({'event':_0xac4aef['FGRCQ'],'resource':_0x487b51,'pattern':_0x1a7b55,'value':_0x3f3075},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x2e1494[_0x11cb85(0x22e)];return logger['info']({'event':_0x11cb85(0x213),'resource':_0x487b51,'pattern':_0x1a7b55,'attemptCount':_0x302f1a,'ensureUnique':_0x2ff152,'ttl':_0x82d334||0x0},'ID\x20Generator\x20random:\x20'+_0x3f3075),_0x38f2be;}async[a0_0x7e059b(0x2f3)](_0x4e6f7f){const _0x5a57dc=a0_0x7e059b,_0x4c90c4={'mfixU':function(_0x5d5605,_0x2063e9){return _0x5d5605==_0x2063e9;},'atVZS':function(_0x2d254d,_0x5e82b3){return _0x2d254d<_0x5e82b3;}},_0x1bd2e2=_0x4c90c4['mfixU'](_0x4e6f7f['digits'],null)?this[_0x5a57dc(0x2b0)]:_0x4e6f7f['digits'];if(!Number['isInteger'](_0x1bd2e2)||_0x4c90c4['atVZS'](_0x1bd2e2,MIN_PIN_DIGITS)||_0x1bd2e2>MAX_PIN_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_DIGITS','Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x1bd2e2+')');const _0x1cfc07='9'[_0x5a57dc(0x23c)](_0x1bd2e2);return this['random']({'resource':_0x4e6f7f[_0x5a57dc(0x291)],'pattern':_0x1cfc07,'ensureUnique':_0x4e6f7f[_0x5a57dc(0x2ed)]===!![],'ttl':_0x4e6f7f[_0x5a57dc(0x21e)],'maxRetry':_0x4e6f7f[_0x5a57dc(0x27f)],'idempotencyKey':_0x4e6f7f['idempotencyKey']});}async[a0_0x7e059b(0x220)](_0x21181a){const _0x2ce38c=a0_0x7e059b,_0x3e0bd6=_0x21181a['pattern']||this[_0x2ce38c(0x22f)];return this['random']({'resource':_0x21181a[_0x2ce38c(0x291)],'pattern':_0x3e0bd6,'ensureUnique':_0x21181a['ensureUnique']!==![],'ttl':_0x21181a['ttl'],'maxRetry':_0x21181a[_0x2ce38c(0x27f)],'idempotencyKey':_0x21181a[_0x2ce38c(0x2ca)]});}async[a0_0x7e059b(0x265)](_0x37003b){const _0x45c297=a0_0x7e059b,_0x3fdb71={'gIanW':function(_0x3c80d0,_0x42cd16){return _0x3c80d0!==_0x42cd16;}},_0x3d71e5=_0x37003b[_0x45c297(0x2d0)]||this[_0x45c297(0x1fd)];return this['random']({'resource':_0x37003b[_0x45c297(0x291)],'pattern':_0x3d71e5,'ensureUnique':_0x3fdb71[_0x45c297(0x297)](_0x37003b['ensureUnique'],![]),'ttl':_0x37003b['ttl'],'maxRetry':_0x37003b['maxRetry'],'idempotencyKey':_0x37003b['idempotencyKey']});}async['consume'](_0x272d88){const _0x47460a=a0_0x7e059b,_0x12539e={'kpGSD':_0x47460a(0x209),'jbBdM':'ID\x20Generator\x20is\x20disabled','pmfvr':function(_0x2124c6,_0x32e891){return _0x2124c6!==_0x32e891;},'kSPql':function(_0x5db071,_0x1920a0){return _0x5db071===_0x1920a0;},'jrPmr':'IDGEN_INVALID_NUMBER','JuDmC':_0x47460a(0x2d7)};if(!this[_0x47460a(0x2f2)])throw new IdGeneratorError(_0x12539e[_0x47460a(0x286)],_0x12539e[_0x47460a(0x299)]);this[_0x47460a(0x28a)](_0x272d88[_0x47460a(0x291)]);if(_0x12539e['pmfvr'](typeof _0x272d88[_0x47460a(0x1f8)],_0x47460a(0x2ae))||_0x12539e[_0x47460a(0x20e)](_0x272d88['value'][_0x47460a(0x2ee)],0x0))throw new IdGeneratorError(_0x12539e[_0x47460a(0x212)],_0x47460a(0x29a));const {resource:_0x377a69,value:_0x267650}=_0x272d88,_0x5d5d12=redisClient[_0x47460a(0x2df)](),_0x5a1002=this[_0x47460a(0x21b)](_0x377a69,_0x267650),_0xb119=this[_0x47460a(0x2b5)](_0x377a69),[_0x57fe99,_0xdcc0f2]=await Promise['all']([_0x5d5d12[_0x47460a(0x1fa)](_0x5a1002),_0x5d5d12[_0x47460a(0x273)](_0xb119,_0x267650)]),_0x4ac04a=_0x57fe99+_0xdcc0f2>0x0;return logger['info']({'event':_0x12539e[_0x47460a(0x310)],'resource':_0x377a69,'value':_0x267650,'consumed':_0x4ac04a},_0x47460a(0x25f)+_0x267650),{'consumed':_0x4ac04a,'resource':_0x377a69,'value':_0x267650,'consumedAt':new Date()[_0x47460a(0x2b8)]()};}async['peek'](_0x370951){const _0xf319f6=a0_0x7e059b,_0xc2ec1a={'Adfzo':'ID\x20Generator\x20is\x20disabled','NlmKd':'number','mkrLo':_0xf319f6(0x2cb),'NHbCH':function(_0x2bdfbd,_0x2ae94a){return _0x2bdfbd||_0x2ae94a;},'nZKQl':'random'};if(!this[_0xf319f6(0x2f2)])throw new IdGeneratorError(_0xf319f6(0x209),_0xc2ec1a[_0xf319f6(0x226)]);this['_validateResource'](_0x370951[_0xf319f6(0x291)]);const _0x17b723=_0x370951[_0xf319f6(0x202)]||_0xc2ec1a[_0xf319f6(0x264)],_0x347f67=redisClient['getClient']();if(_0x17b723===_0xc2ec1a['NlmKd']){const _0x1c1275=(_0x370951[_0xf319f6(0x26a)]||_0xc2ec1a[_0xf319f6(0x1fc)])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x1c1275))throw new IdGeneratorError(_0xf319f6(0x2af),'Invalid\x20format:\x20'+_0x370951['format']);const {formatKey:_0x33e5ad}=this[_0xf319f6(0x237)](_0x1c1275,_0x370951[_0xf319f6(0x277)]||''),_0x5f3ced=this['_buildSeqKey'](_0x370951[_0xf319f6(0x291)],_0x33e5ad),_0x2c0c2f=this['_buildReuseKey'](_0x370951['resource'],_0x33e5ad),[_0x5963ce,_0x32d55a]=await Promise[_0xf319f6(0x2d4)]([_0x347f67['get'](_0x5f3ced),_0x347f67[_0xf319f6(0x27a)](_0x2c0c2f)]);return{'resource':_0x370951['resource'],'mode':_0xf319f6(0x269),'formatKey':_0x33e5ad,'currentCounter':parseInt(_0x5963ce,0xa)||0x0,'reusePoolSize':_0xc2ec1a['NHbCH'](_0x32d55a,0x0)};}if(_0x17b723===_0xc2ec1a['nZKQl']){const _0x111db0=this['_buildIssuedKey'](_0x370951['resource']),_0x32dac9=await _0x347f67['scard'](_0x111db0);return{'resource':_0x370951['resource'],'mode':_0xc2ec1a['nZKQl'],'issuedCount':_0x32dac9||0x0};}throw new IdGeneratorError('IDGEN_INVALID_MODE',_0xf319f6(0x292)+_0x17b723);}async[a0_0x7e059b(0x2f0)](_0x2bfa73){const _0x4aef1a=a0_0x7e059b,_0x24ed24={'PBdRQ':function(_0x44b66a,_0x4d85ab){return _0x44b66a>_0x4d85ab;}},_0x3be34d=await this[_0x4aef1a(0x224)](_0x2bfa73);if(_0x3be34d[_0x4aef1a(0x202)]===_0x4aef1a(0x269)){const _0x52d8a6=redisClient[_0x4aef1a(0x2df)](),_0xf53978=this[_0x4aef1a(0x2cc)](_0x2bfa73[_0x4aef1a(0x291)],_0x3be34d['formatKey']),_0x74dff8=this[_0x4aef1a(0x298)](_0x2bfa73[_0x4aef1a(0x291)],_0x3be34d['formatKey']),[_0x518dc1,_0x1ac1ba]=await Promise[_0x4aef1a(0x2d4)]([_0x52d8a6['hgetall'](_0xf53978),_0x52d8a6[_0x4aef1a(0x2f4)](_0x74dff8,0x0,-0x1)]);return{..._0x3be34d,'reusePoolValues':_0x1ac1ba[_0x4aef1a(0x30d)](_0x937ca1=>parseInt(_0x937ca1,0xa)),'meta':_0x518dc1&&_0x24ed24['PBdRQ'](Object[_0x4aef1a(0x2bb)](_0x518dc1)['length'],0x0)?_0x518dc1:null};}return _0x3be34d;}async['reset'](_0x37db0c){const _0x27255a=a0_0x7e059b,_0x5101d2={'CpkGJ':_0x27255a(0x209),'BbyDQ':_0x27255a(0x200),'NUmYc':'IDGEN_RESET_NOT_ALLOWED','MwwWf':'number','KquGF':function(_0x299a57,_0x117804){return _0x299a57===_0x117804;},'OdstZ':_0x27255a(0x2cb),'Umrgy':_0x27255a(0x243),'eyvlW':'meta','GaQCA':_0x27255a(0x260),'dfVMp':_0x27255a(0x218),'TQiYM':'issued'};if(!this[_0x27255a(0x2f2)])throw new IdGeneratorError(_0x5101d2[_0x27255a(0x249)],_0x5101d2['BbyDQ']);if(!this[_0x27255a(0x2be)])throw new IdGeneratorError(_0x5101d2['NUmYc'],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this['_validateResource'](_0x37db0c[_0x27255a(0x291)]);const _0x3f9bf6=_0x37db0c[_0x27255a(0x202)]||_0x5101d2[_0x27255a(0x221)],_0x1e76dd=redisClient[_0x27255a(0x2df)]();if(_0x5101d2[_0x27255a(0x2e3)](_0x3f9bf6,_0x27255a(0x269))){const _0x315cc9=(_0x37db0c[_0x27255a(0x26a)]||_0x5101d2['OdstZ'])[_0x27255a(0x2fc)]();if(!ALLOWED_FORMATS['has'](_0x315cc9))throw new IdGeneratorError(_0x27255a(0x2af),_0x27255a(0x20a)+_0x37db0c[_0x27255a(0x26a)]);const {formatKey:_0x272867}=this[_0x27255a(0x237)](_0x315cc9,_0x37db0c['prefix']||''),_0x44500b=this[_0x27255a(0x250)](_0x37db0c['resource'],_0x272867),_0x16b80b=this[_0x27255a(0x298)](_0x37db0c['resource'],_0x272867),_0x1b673e=this['_buildMetaKey'](_0x37db0c['resource'],_0x272867);return await _0x1e76dd['del'](_0x44500b,_0x16b80b,_0x1b673e),logger[_0x27255a(0x2b4)]({'event':_0x27255a(0x218),'resource':_0x37db0c['resource'],'mode':_0x5101d2[_0x27255a(0x221)],'formatKey':_0x272867},'ID\x20Generator\x20reset:\x20'+_0x37db0c['resource']+':'+_0x272867),{'reset':!![],'resource':_0x37db0c[_0x27255a(0x291)],'mode':_0x27255a(0x269),'formatKey':_0x272867,'deletedKeys':[_0x27255a(0x30b),_0x5101d2['Umrgy'],_0x5101d2[_0x27255a(0x261)]]};}if(_0x3f9bf6===_0x5101d2[_0x27255a(0x305)]){const _0x43ebf6=this['_buildIssuedKey'](_0x37db0c['resource']);return await _0x1e76dd[_0x27255a(0x1fa)](_0x43ebf6),logger[_0x27255a(0x2b4)]({'event':_0x5101d2[_0x27255a(0x1ff)],'resource':_0x37db0c[_0x27255a(0x291)],'mode':'random'},'ID\x20Generator\x20reset:\x20random:'+_0x37db0c[_0x27255a(0x291)]),{'reset':!![],'resource':_0x37db0c[_0x27255a(0x291)],'mode':_0x27255a(0x260),'deletedKeys':[_0x5101d2['TQiYM']]};}throw new IdGeneratorError(_0x27255a(0x2e1),'Unknown\x20mode:\x20'+_0x3f9bf6);}}const instance=new IdGenerator();instance[a0_0x7e059b(0x20d)]=IdGeneratorError,module[a0_0x7e059b(0x2c2)]=instance,module['exports'][a0_0x7e059b(0x20d)]=IdGeneratorError;
1
+ 'use strict';const a0_0x13a74b=a0_0x1366;(function(_0x187aa7,_0x22c540){const _0x2c4802=a0_0x1366,_0x3d25a1=_0x187aa7();while(!![]){try{const _0x5d98c2=-parseInt(_0x2c4802(0x169))/0x1*(parseInt(_0x2c4802(0x150))/0x2)+-parseInt(_0x2c4802(0x1db))/0x3+parseInt(_0x2c4802(0x15d))/0x4*(-parseInt(_0x2c4802(0x1f2))/0x5)+-parseInt(_0x2c4802(0x1eb))/0x6*(parseInt(_0x2c4802(0x187))/0x7)+parseInt(_0x2c4802(0x12e))/0x8+parseInt(_0x2c4802(0x1bf))/0x9+parseInt(_0x2c4802(0x151))/0xa;if(_0x5d98c2===_0x22c540)break;else _0x3d25a1['push'](_0x3d25a1['shift']());}catch(_0x1f7ee0){_0x3d25a1['push'](_0x3d25a1['shift']());}}}(a0_0x3093,0x8bce0));const crypto=require('crypto'),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set([a0_0x13a74b(0xfd),'yyyy',a0_0x13a74b(0x211),a0_0x13a74b(0x200)]),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='0123456789ABCDEF',CHARSET_HEX_LOWER=a0_0x13a74b(0x157),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=a0_0x13a74b(0x1a4),LUA_RESERVE_NUMBER=a0_0x13a74b(0x177),LUA_CONFIRM_RESERVATION=a0_0x13a74b(0x19a),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';function a0_0x3093(){const _0x2ba423=['zwDwy0m','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','s2rsEMO','CgnhCKO','y3HXqNi','surhru5FreLtqujmruq','y29vvMW','Eu9TzLK','x2j1AwXKrM9YBwf0s2v5','zw5ZDxjLvw5PCxvL','BgvUz3rO','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','C3vfEKW','CMvZzxj2zv9JB25MAxjT','A2v5CW','C3rVCMvK','DMfSDwu','surhru5Fsu5wquXjrf9ut0TftG','EvzQq2m','surhru5Frevgqvvmvf9qsu5FreLhsvrt','AwrNzw4','x2j1AwXKswrLBuTLEq','vgLIBuu','x2nVDw50zxjuveXnyxa','uNzPAhO','x2LUAxrdB25MAwC','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','x3jLC2vYDMvezwzHDwX0vfrm','z2vUzxjHDgvKqxq','suqGr2vUzxjHDg9YihjHBMrVBtOG','q291BNrLCIbVDMvYzMXVDZOG','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','BwvZC2fNzq','sw52ywXPzcbMB3jTyxq6ig11C3qGyMuGB25Lig9Mia','rK5cDNi','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','x2vUywjSzwq','mJi4mta3n1jgy1jcwq','z2v0uMvZzxj2yxrPB24','Cg93','uMrAywm','x2TLEvbYzwzPEa','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','BNvTyMvY','C3rYAw5N','Aenyz1K','s3Lozge','CMvSzwfZzq','AwrNzw5Fy29UC3vTzwq','vvfoENK','x3zHBgLKyxrLuMvZB3vYy2u','ugjqrKS','ywXS','yM9VBgvHBG','AgHnDue','x2j1AwXKtwv0yuTLEq','x2j1AwXKu2vXs2v5','z2v0sw5MBW','whPgzuK','C2vX','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','Ag1Nzxq','zw5HyMXLza','ChvZAa','mte0mZyZourJDKPTza','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','DuLtDLu','wKDwt2S','yNvPBgrezxrLCM1PBMLZDgLJs2v5','A2v5uhjLzML4','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','sNPYwuy','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','zezNyMu','zw52','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','uhjRy3G','u0zQD00','lcbNB3qG','CgvLAW','mtm1mJy0tfn6EwXi','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','C2vWyxjHDg9Y','C2fKza','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','t3rnEM8','x2LKzw1uveW','nxPMA3jmwG','x2rLzMf1BhrnyxHszxrYEq','AfvAtuu','x2rLzMf1BhrdB2rLugf0DgvYBG','CMvSzwfZzu51BwjLCG','igv4y2vLzhmG','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','x2DLBMvYyxrLrNjVBvbHDhrLCM4','v3DOD3u','twv0ysb1CgrHDguGzxjYB3i','swrLBxbVDgvUy3KGy2fJAguGseLu','sw52ywXPzcbMB3jTyxq6ia','zfDrtw0','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','ExL5Ew1Tzgq','zxHWAxjL','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','surhru5Fsu5wquXjrf9uveW','Dg9ju09tDhjPBMC','x2j1AwXKsxnZDwvKs2v5','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','CMfUzg9Tvvvjra','x3bHzdi','DhrStxm','x3L5ExLTBwrKxW','txzZrLu','v3fPuLq','AxnszxvZzwq','Eu56uxG','otK5os05otK5','ChjLzML4','ExL5Ew1T','q3z2ueq','u2DrCgu','suqGr2vUzxjHDg9Yig51BwjLCJOG','x3n0B3jLswrLBunHy2HL','z2v0q2XPzw50','CMvZzxj2zurLzMf1BhruveW','txbszwm','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','Bwf0y2G','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','CMv1C2u','yNvxwKu','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','BwfW','DKvMqwu','BMfTzq','surhru5Fsu5wquXjrf9ovu1crvi','AwrLBxbVDgvUy3LlzxK','AhnLDa','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','Dgv4Da','icH0B2TLBJ0','x3zHBgLKyxrLtwf4uMv0CNK','Bwf4uMv0CNK','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','x3jLC2vYDMvnyxHuveW','DuTPvKS','CgLU','zxHLyW','C3rYAw5NAwz5','AxnjBNrLz2vY','DhrS','x3vUzg9syw5KB21szxnLCNzHDgLVBG','zM9YBwf0','z2v0rNvSBfLLyxi','Aw5MBW','CMvSzwfZzwrbDa','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','surhru5Fsurftv9uveW','x2vUC3vYzuLUAxrPywXPEMvK','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','z2D2sxu','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','CuHQt1i','CxftEfK','surhru5Fq09vtLrfuL9pvKvsrKXpvW','x2j1AwXKuMv1C2vlzxK','surhru5FquXmt1DFuKvtrvq','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','yuXtDvO','ze1hA0W','suqGr2vUzxjHDg9YihjLC2v0oIa','EKjNDgm','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','C3jLBq','AgfZ','CurivKi','ignOyxjZicHNB3qGBgvUz3rOoIa','x3L5ExLF','BeLwB2W','vvLMCKe','CMfUzg9T','x2LUAxrPywXPEMvK','reXgCLi','sNPly0m','EhzfsMK','Bwv0ytO','yvvZvfi','BM93','mZuWnJq0mgLQtgjxrW','surhru5Fsu5wquXjrf9quKvgsvG','zezUtLm','swrhzw5LCMf0B3jfCNjVCG','AwvKtKi','D2fYBG','vw5RBM93BIbTB2rLoIa','Dg9mB3DLCKnHC2u','vKDiC3i','AwrNzw5FCMvZzxq','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','CMvZzxq','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','v25lr04','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','BNvTrgLNAxrZ','C2vYAwfS','CgfKzgvKicHNB3q6ia','AwrLBuTLEq','CgfKu3rHCNq','igrPz2L0CYaOz290oIa','D2LUBMvYuMvZDwX0','zxHWAxjLC0f0','x2zVCM1HDe51BwjLCG','surhru5Fsu5wquXjrf9gt1jnqvq','AM9PBG','surhru5Fru5bqKXfra','AxnZDwvKoG','lcbLEhbLy3rLzca','x3jLDhjPzxzLswrLBunHy2HL','CMvZzxj2zu1HEfruta','A3j4Au8','x3zHBgLKyxrLvfrm','nty0ntuWq0Lsvgfo','mJa5ndiWodbkCuvcvLm','z2v0','zxzHBa','AwrLBvruta','CNn2swr4s2v5','sfP2uey','mdeYmZq1nJC4owfIy2rLzG','CMy6AwrNzw46','Bwv0yq','Dg9Rzw4','CMvWzwf0','x2rLzMf1BhrtzxjPywXqyxr0zxjU','mtm3mZaZnNrMBu5euq','BwPSDw4','C2nHCMq','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','zgvMyxvSDfnLCMLHBfbHDhrLCM4','Bw9Kzq','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','zM9YBwf0s2v5','x2j1AwXKqwn0AxzLs2v5','DgvZDa','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','surhru5Frevgqvvmvf9nqvHFuKvuuLK','mK9Iq0fZta','Bwn6zwy','x3rLEhq','ChHjDwy','x3vWzgf0zu1LDge','y29Kzq','y291BNrLCKLUDa','C2v0','icHNB3q6ia','x3zHBgLKyxrLugf0DgvYBG','vMXYzxu','CgfYC2u','x3zHBgLKyxrLuMvZzxj2zvruta','thvbELK','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','z3Dyz3a','x2DLDenVDw50zxjuveW','CgLWzwXPBMu','zxfsz0u','ENjHBMDL','zgvMyxvSDfbPBKrPz2L0CW','AwrNzw5FAwrLBv9OAxq','zgvMyxvSDe1HEfjLDhj5','zxHWB3j0CW','Chr0Ba','surhru5Fsu5wquXjrf9nt0rf','tKvvvKO','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','lcaR','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','mJG3rKjuAgnK','x2fSBg93uMvZzxq','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','C0nfshy','zgLNAxrZ','CMvZB3vYy2u','vw5RBM93BIbMB3jTyxq6ia','AMHXqwm','uxvAyMm','x2rLzMf1BhrqAw5eAwDPDhm','u3nJtwW','x2j1AwXKuMvZzxj2yxrPB25lzxK','ihbHCNrZkq','AxnZDwvK','CMvZzxj2zq','CNHfwvK','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa'];a0_0x3093=function(){return _0x2ba423;};return a0_0x3093();}class IdGeneratorError extends Error{constructor(_0x56ed11,_0x281b86,_0x39330b=null){const _0x31c568=a0_0x13a74b,_0xa14c3f={'DvppF':function(_0x19f903,_0x2f3664){return _0x19f903||_0x2f3664;},'RqKsJ':_0x31c568(0x131)};super(_0xa14c3f['DvppF'](_0x281b86,_0x56ed11)),this[_0x31c568(0x221)]=_0xa14c3f['RqKsJ'],this['code']=_0x56ed11,this['details']=_0x39330b;}}class IdGenerator{constructor(){const _0x5d5ab6=a0_0x13a74b;this['_initialized']=![],this['_enabled']=null,this[_0x5d5ab6(0x1c3)]=null,this['_idemTTL']=null,this['_allowReset']=null,this[_0x5d5ab6(0x1f3)]=null,this['_defaultPinDigits']=null,this[_0x5d5ab6(0x15c)]=null,this[_0x5d5ab6(0x1f5)]=null,this['_counterTTLMap']=null,this[_0x5d5ab6(0x1b4)]=null,this['_reserveMaxTTL']=null;}[a0_0x13a74b(0x1b2)](){const _0x3c993d=a0_0x13a74b,_0x1e0de0={'XzFeI':function(_0x4cc532,_0x9a0081){return _0x4cc532===_0x9a0081;},'BQqBP':'true','egVcC':function(_0x40038b,_0x4c5e61,_0x302f51){return _0x40038b(_0x4c5e61,_0x302f51);},'mjlun':'XXXX-XXXX-XXXX-XXXX','coUVl':_0x3c993d(0x20f),'XbSDh':function(_0x41fead,_0x164e53,_0x3c7016){return _0x41fead(_0x164e53,_0x3c7016);},'Rvihz':'idgen_config_init'};this['_keyPrefix']=_0x3c993d(0x158),this['_enabled']=_0x1e0de0[_0x3c993d(0x1d4)](process[_0x3c993d(0x1e5)][_0x3c993d(0x149)],'true'),this['_idemTTL']=parseInt(process[_0x3c993d(0x1e5)][_0x3c993d(0x10f)],0xa)||0x258,this[_0x3c993d(0x188)]=_0x1e0de0['XzFeI'](process[_0x3c993d(0x1e5)][_0x3c993d(0x118)],_0x1e0de0['BQqBP']),this['_defaultMaxRetry']=_0x1e0de0[_0x3c993d(0x198)](parseInt,process[_0x3c993d(0x1e5)][_0x3c993d(0x168)],0xa)||0xa,this[_0x3c993d(0x190)]=parseInt(process[_0x3c993d(0x1e5)][_0x3c993d(0x1ac)],0xa)||0x6,this['_defaultSerialPattern']=process[_0x3c993d(0x1e5)]['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x1e0de0[_0x3c993d(0x15e)],this['_defaultCodePattern']=process[_0x3c993d(0x1e5)]['IDGEN_DEFAULT_CODE_PATTERN']||_0x1e0de0[_0x3c993d(0x19f)],this[_0x3c993d(0x1b0)]={'yyyymm':_0x1e0de0['egVcC'](parseInt,process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env']['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300},this[_0x3c993d(0x1b4)]=_0x1e0de0['XbSDh'](parseInt,process[_0x3c993d(0x1e5)]['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL,this['_reserveMaxTTL']=parseInt(process[_0x3c993d(0x1e5)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this[_0x3c993d(0x127)]=!![],logger[_0x3c993d(0x10c)]({'event':_0x1e0de0[_0x3c993d(0x1b1)],'enabled':this[_0x3c993d(0x1be)],'idemTTL':this[_0x3c993d(0x1f1)],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x3c993d(0x1f3)],'defaultPinDigits':this[_0x3c993d(0x190)],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this[_0x3c993d(0x102)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this[_0x3c993d(0x1be)]);}[a0_0x13a74b(0x110)](){if(!this['_initialized'])this['_initConfig']();}get[a0_0x13a74b(0x1d9)](){return this['_ensureInitialized'](),this['_enabled'];}get['keyPrefix'](){return this['_ensureInitialized'](),this['_keyPrefix'];}get['idemTTL'](){const _0x62f9b4=a0_0x13a74b;return this['_ensureInitialized'](),this[_0x62f9b4(0x1f1)];}get['allowReset'](){const _0x45a142=a0_0x13a74b;return this['_ensureInitialized'](),this[_0x45a142(0x188)];}get['defaultMaxRetry'](){const _0x2b123e=a0_0x13a74b;return this['_ensureInitialized'](),this[_0x2b123e(0x1f3)];}get['defaultPinDigits'](){const _0x539df9=a0_0x13a74b;return this['_ensureInitialized'](),this[_0x539df9(0x190)];}get[a0_0x13a74b(0x161)](){const _0x4c38d0=a0_0x13a74b;return this[_0x4c38d0(0x110)](),this['_defaultSerialPattern'];}get['defaultCodePattern'](){return this['_ensureInitialized'](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){return this['_ensureInitialized'](),this['_reserveDefaultTTL'];}get['reserveMaxTTL'](){const _0x58228b=a0_0x13a74b;return this[_0x58228b(0x110)](),this['_reserveMaxTTL'];}['isEnabled'](){return this['enabled'];}[a0_0x13a74b(0x1cc)](_0x1efdb){const _0x2461da=a0_0x13a74b,_0x50e9ec={'rUtFy':'string','uKiVK':'IDGEN_INVALID_RESOURCE'};if(typeof _0x1efdb!==_0x50e9ec['rUtFy']||!RESOURCE_REGEX[_0x2461da(0x166)](_0x1efdb))throw new IdGeneratorError(_0x50e9ec[_0x2461da(0x103)],_0x2461da(0x10e)+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x1efdb)+')');}['_validateNumberParams'](_0x14fcfd){const _0x2f6d9a=a0_0x13a74b,_0xd157e2={'qDHVB':'string','SQiQm':'IDGEN_INVALID_FORMAT','jSGro':_0x2f6d9a(0x160),'Knjhg':function(_0x11e604,_0x5b63ce){return _0x11e604==_0x5b63ce;},'ozAyG':function(_0x6393d5,_0x4772c3){return _0x6393d5!==_0x4772c3;},'mczef':function(_0x6a586f,_0x4a3c7f){return _0x6a586f>_0x4a3c7f;},'JVmIk':'IDGEN_INVALID_SEPARATOR','QuZbc':function(_0x46304c,_0x4640d9){return _0x46304c!==_0x4640d9;},'esKSl':_0x2f6d9a(0x1cf),'AYPkS':'IDGEN_INVALID_RESOURCE','jhqAc':function(_0x4d791f,_0x1189e5){return _0x4d791f===_0x1189e5;}},{resource:_0x175a05,format:_0x24630f,prefix:_0x1bfb12,separator:_0x10e772,numDigits:_0x272b2a,reuseDelete:_0xd00f2d}=_0x14fcfd;this[_0x2f6d9a(0x1cc)](_0x175a05);const _0x357fd7=typeof _0x24630f===_0xd157e2[_0x2f6d9a(0x121)]?_0x24630f[_0x2f6d9a(0x135)]():'';if(!ALLOWED_FORMATS['has'](_0x357fd7))throw new IdGeneratorError(_0xd157e2['SQiQm'],_0x2f6d9a(0x1ba)+[...ALLOWED_FORMATS][_0x2f6d9a(0x148)](',\x20')+_0x2f6d9a(0x171)+_0x24630f+')');if(!Number[_0x2f6d9a(0x107)](_0x272b2a)||_0x272b2a<MIN_NUM_DIGITS||_0x272b2a>MAX_NUM_DIGITS)throw new IdGeneratorError(_0xd157e2['jSGro'],'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x272b2a+')');const _0x6cc464=_0xd157e2['Knjhg'](_0x1bfb12,null)?'':_0x1bfb12;if(typeof _0x6cc464!==_0x2f6d9a(0x1c6)||!PREFIX_REGEX[_0x2f6d9a(0x166)](_0x6cc464))throw new IdGeneratorError(_0x2f6d9a(0x12f),_0x2f6d9a(0x21e)+PREFIX_REGEX+_0x2f6d9a(0x171)+JSON[_0x2f6d9a(0x106)](_0x1bfb12)+')');const _0x15152c=_0x10e772==null?'':_0x10e772;if(_0xd157e2['ozAyG'](typeof _0x15152c,_0xd157e2[_0x2f6d9a(0x121)])||_0xd157e2[_0x2f6d9a(0x16a)](_0x15152c['length'],0x3)||SEPARATOR_FORBIDDEN['test'](_0x15152c))throw new IdGeneratorError(_0xd157e2['JVmIk'],_0x2f6d9a(0x219)+JSON[_0x2f6d9a(0x106)](_0x10e772)+')');if(_0xd00f2d!=null&&_0xd157e2[_0x2f6d9a(0x18f)](typeof _0xd00f2d,_0xd157e2['esKSl']))throw new IdGeneratorError(_0xd157e2['AYPkS'],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0xd00f2d+')');return{'resource':_0x175a05,'format':_0x357fd7,'prefix':_0x6cc464,'separator':_0x15152c,'numDigits':_0x272b2a,'reuseDelete':_0xd157e2[_0x2f6d9a(0x18e)](_0xd00f2d,!![])};}[a0_0x13a74b(0x172)](_0x4a5f4e){const _0x1e7aeb=a0_0x13a74b,_0x364dec={'xGsiE':function(_0x44531a,_0x192133){return _0x44531a===_0x192133;},'lIVol':function(_0x32ae60,_0x1fe858){return _0x32ae60>_0x1fe858;},'CvvPD':'IDGEN_INVALID_PATTERN'};if(typeof _0x4a5f4e!==_0x1e7aeb(0x1c6)||_0x364dec['xGsiE'](_0x4a5f4e['length'],0x0)||_0x364dec[_0x1e7aeb(0x124)](_0x4a5f4e['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x364dec[_0x1e7aeb(0x212)],_0x1e7aeb(0x1f8)+MAX_PATTERN_LENGTH+_0x1e7aeb(0x122)+(_0x4a5f4e&&_0x4a5f4e['length'])+')');let _0x2430bd=![];for(const _0x2abc2f of _0x4a5f4e){if(PLACEHOLDER_MAP[_0x2abc2f]){_0x2430bd=!![];break;}}if(!_0x2430bd)throw new IdGeneratorError(_0x364dec[_0x1e7aeb(0x212)],_0x1e7aeb(0x113));}[a0_0x13a74b(0x14f)](_0x4652e7){const _0x5f51b6=a0_0x13a74b,_0x42cb6d={'opHow':_0x5f51b6(0x203)};if(_0x4652e7==null)return undefined;if(!Number['isInteger'](_0x4652e7)||_0x4652e7<0x1||_0x4652e7>MAX_TTL)throw new IdGeneratorError(_0x42cb6d['opHow'],'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x4652e7+')');return _0x4652e7;}[a0_0x13a74b(0xff)](_0x13fea8){const _0x3181ea=a0_0x13a74b,_0x43688a={'wTOJD':function(_0x35f57e,_0x4b7b34){return _0x35f57e==_0x4b7b34;},'JAScy':function(_0x233c64,_0xec0e65){return _0x233c64<_0xec0e65;}};if(_0x43688a['wTOJD'](_0x13fea8,null))return this[_0x3181ea(0x17f)];if(!Number['isInteger'](_0x13fea8)||_0x43688a['JAScy'](_0x13fea8,0x1)||_0x13fea8>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x3181ea(0x1ef),'Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x13fea8+')');return _0x13fea8;}[a0_0x13a74b(0x184)](_0x2020db){const _0x1144d6=a0_0x13a74b,_0x4a1fa9={'WnKGN':function(_0x1f2414,_0x5374f2){return _0x1f2414==_0x5374f2;},'ysJze':function(_0x2bde16,_0x367013){return _0x2bde16!==_0x367013;},'ydKDs':function(_0x467c7c,_0x33f0c1){return _0x467c7c>_0x33f0c1;},'taukg':'IDGEN_INVALID_RESOURCE'};if(_0x4a1fa9[_0x1144d6(0x13c)](_0x2020db,null))return undefined;if(_0x4a1fa9['ysJze'](typeof _0x2020db,'string')||_0x2020db['length']===0x0||_0x4a1fa9['ydKDs'](_0x2020db['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x4a1fa9['taukg'],_0x1144d6(0x206)+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x2020db;}[a0_0x13a74b(0x175)](_0x2d3b4b){const _0x148f82=a0_0x13a74b,_0x33a95a={'FIeSL':function(_0x5588e0,_0x35a610){return _0x5588e0==_0x35a610;},'UQNzy':function(_0x3dcc44,_0x343929){return _0x3dcc44<_0x343929;},'KyNda':'IDGEN_INVALID_RESERVE_TTL'};if(_0x33a95a['FIeSL'](_0x2d3b4b,null))return this[_0x148f82(0x217)];if(!Number['isInteger'](_0x2d3b4b)||_0x33a95a[_0x148f82(0x1cb)](_0x2d3b4b,MIN_RESERVE_TTL)||_0x2d3b4b>this[_0x148f82(0x14d)])throw new IdGeneratorError(_0x33a95a[_0x148f82(0x1c8)],'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this[_0x148f82(0x14d)]+'\x20seconds\x20(got:\x20'+_0x2d3b4b+')');return _0x2d3b4b;}['_validateReservationToken'](_0x253f88){const _0x59d8e7=a0_0x13a74b,_0x3cf3bd={'LuAzY':_0x59d8e7(0x1c6),'iHxgl':_0x59d8e7(0x1aa)};if(typeof _0x253f88!==_0x3cf3bd[_0x59d8e7(0x176)]||!RESERVATION_TOKEN_REGEX[_0x59d8e7(0x166)](_0x253f88))throw new IdGeneratorError(_0x3cf3bd['iHxgl'],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x59d8e7(0x106)](_0x253f88)+')');return _0x253f88;}[a0_0x13a74b(0x208)](_0x3b0dbe){const _0x1affb8=a0_0x13a74b,_0x668e3a={'NEUVJ':function(_0x276547,_0x3b026d){return _0x276547(_0x3b026d);}};return _0x668e3a[_0x1affb8(0x183)](String,_0x3b0dbe)['padStart'](0x2,'0');}[a0_0x13a74b(0x1a1)](_0x52b883,_0xf12814,_0x1d4f2f=new Date()){const _0x59170a=a0_0x13a74b,_0x18d982={'qnlHE':function(_0x21be64,_0x21cd64){return _0x21be64+_0x21cd64;},'pYOch':_0x59170a(0xfd),'kCKoF':'yyyy','wreXC':_0x59170a(0x211)},_0x45f3ce=_0x1d4f2f[_0x59170a(0x10b)](),_0x43d4f9=this['_pad2'](_0x18d982['qnlHE'](_0x1d4f2f['getMonth'](),0x1)),_0x5ed245=this[_0x59170a(0x208)](_0x1d4f2f['getDate']()),_0x4fea90=_0xf12814||'_';let _0x3476a,_0x775ca0='';switch(_0x52b883){case _0x18d982['pYOch']:_0x3476a=_0x4fea90+_0x59170a(0x16b);break;case _0x18d982['kCKoF']:_0x775ca0=''+_0x45f3ce,_0x3476a=_0x4fea90+_0x59170a(0x123)+_0x775ca0;break;case _0x18d982['wreXC']:_0x775ca0=''+_0x45f3ce+_0x43d4f9,_0x3476a=_0x4fea90+'_yyyymm_'+_0x775ca0;break;case'yyyymmdd':_0x775ca0=''+_0x45f3ce+_0x43d4f9+_0x5ed245,_0x3476a=_0x4fea90+_0x59170a(0x20a)+_0x775ca0;break;default:throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x59170a(0x18d)+_0x52b883);}return{'formatKey':_0x3476a,'datePrefix':_0x775ca0};}[a0_0x13a74b(0x1d2)](_0x8d96f2,_0x43674d){return this['keyPrefix']+'seq:'+_0x8d96f2+':'+_0x43674d;}['_buildReuseKey'](_0x24a1ff,_0xabb96b){return this['keyPrefix']+'reuse:'+_0x24a1ff+':'+_0xabb96b;}['_buildMetaKey'](_0x1acb41,_0x2f7bb1){const _0x535dc3=a0_0x13a74b;return this[_0x535dc3(0x1e0)]+_0x535dc3(0x12b)+_0x1acb41+':'+_0x2f7bb1;}[a0_0x13a74b(0x205)](_0xa52dee){const _0x47a04f=a0_0x13a74b;return this[_0x47a04f(0x1e0)]+_0x47a04f(0x14a)+_0xa52dee;}['_buildActiveKey'](_0x12fd4a,_0x426e72){return this['keyPrefix']+'active:'+_0x12fd4a+':'+_0x426e72;}['_buildReservationKey'](_0x305d61){const _0x34db2d=a0_0x13a74b;return this[_0x34db2d(0x1e0)]+'rsv:'+_0x305d61;}['_buildReservationIndexKey'](_0x3c2a08,_0x3186d8){const _0x18c473=a0_0x13a74b;return this[_0x18c473(0x1e0)]+'rsv_idx:'+_0x3c2a08+':'+_0x3186d8;}['_buildReservationKeyPrefix'](){const _0x12e73e=a0_0x13a74b;return this[_0x12e73e(0x1e0)]+'rsv:';}[a0_0x13a74b(0x1ae)](_0x2b62e0,_0x5b0556,_0x576d2f,_0x21c5ce){const _0x2707cb=a0_0x13a74b,_0x4e2f38={'ySErY':_0x2707cb(0x1ad)};if(_0x576d2f)return idempotencyManager[_0x2707cb(0x1df)](_0x2707cb(0x1ad),_0x2b62e0,_0x5b0556+':'+_0x576d2f+':'+_0x21c5ce);return idempotencyManager[_0x2707cb(0x1df)](_0x4e2f38['ySErY'],_0x2b62e0,_0x5b0556+':'+_0x21c5ce);}['_getCounterTTL'](_0x49e573){const _0x4071a0=a0_0x13a74b;return this[_0x4071a0(0x1b0)][_0x49e573]||0x0;}['_formatNumber']({format:_0x33907f,prefix:_0x36fd74,datePrefix:_0x501c6c,separator:_0x5ebd51,numDigits:_0x33bd7c,counterInt:_0x44bac1}){const _0x3e7871=a0_0x13a74b,_0x5b74ff={'JzKcC':function(_0x628750,_0x599554){return _0x628750-_0x599554;},'WjMtZ':function(_0x5518a0,_0x547b09){return _0x5518a0>_0x547b09;},'XHtZk':function(_0x1a5a80,_0x5339cc){return _0x1a5a80===_0x5339cc;},'qqSxY':_0x3e7871(0xfd)},_0x4d08d8=_0x5b74ff[_0x3e7871(0x129)](Math[_0x3e7871(0x1c1)](0xa,_0x33bd7c),0x1);if(_0x5b74ff['WjMtZ'](_0x44bac1,_0x4d08d8))throw new IdGeneratorError(_0x3e7871(0x116),_0x3e7871(0x1b7)+_0x44bac1+_0x3e7871(0x1f7)+_0x33bd7c+'-digit\x20capacity\x20('+_0x4d08d8+').\x20Increase\x20numDigits.',{'counterInt':_0x44bac1,'numDigits':_0x33bd7c,'max':_0x4d08d8});const _0x39f10a=String(_0x44bac1)[_0x3e7871(0x142)](_0x33bd7c,'0');if(_0x5b74ff['XHtZk'](_0x33907f,_0x5b74ff[_0x3e7871(0x115)]))return _0x36fd74?''+_0x36fd74+_0x5ebd51+_0x39f10a:_0x39f10a;return _0x36fd74?''+_0x36fd74+_0x5ebd51+_0x501c6c+_0x5ebd51+_0x39f10a:''+_0x501c6c+_0x5ebd51+_0x39f10a;}['_parseNumber']({format:_0x33e260,prefix:_0x14d009,separator:_0x1ddc41,numDigits:_0x51926f,number:_0x3d3a17}){const _0x303df4=a0_0x13a74b,_0x2f28b8={'hVBDV':'string','dFnNS':function(_0x3c687b,_0x2e1db8){return _0x3c687b===_0x2e1db8;},'LyYJw':function(_0x2977ca,_0x6a5362){return _0x2977ca!==_0x6a5362;},'hCXgY':_0x303df4(0x222),'krxiO':_0x303df4(0xfd)};if(typeof _0x3d3a17!==_0x2f28b8['hVBDV']||_0x2f28b8[_0x303df4(0x130)](_0x3d3a17['length'],0x0))throw new IdGeneratorError(_0x303df4(0x222),_0x303df4(0x1bd));const _0x9196fe=_0x1ddc41||'',_0x1b873c=_0x2f28b8['dFnNS'](_0x9196fe,'')?[_0x3d3a17]:_0x3d3a17['split'](_0x9196fe);let _0x4af256='',_0x3c12ba;if(_0x33e260==='text'){if(_0x14d009){if(_0x2f28b8['LyYJw'](_0x1b873c['length'],0x2)||_0x2f28b8['LyYJw'](_0x1b873c[0x0],_0x14d009))throw new IdGeneratorError(_0x2f28b8[_0x303df4(0x1c7)],_0x303df4(0x1dc)+_0x9196fe+_0x303df4(0x140)+_0x3d3a17+')');_0x3c12ba=_0x1b873c[0x1];}else{if(_0x1b873c['length']!==0x1)throw new IdGeneratorError(_0x2f28b8['hCXgY'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x3d3a17+')');_0x3c12ba=_0x1b873c[0x0];}}else{const _0x5e6bd9=_0x14d009?0x3:0x2;if(_0x1b873c['length']!==_0x5e6bd9)throw new IdGeneratorError(_0x303df4(0x222),'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x3d3a17+_0x303df4(0x14b)+_0x5e6bd9+_0x303df4(0x193));let _0x421423=0x0;if(_0x14d009){if(_0x1b873c[_0x421423]!==_0x14d009)throw new IdGeneratorError(_0x2f28b8[_0x303df4(0x1c7)],_0x303df4(0x1c4)+_0x14d009+_0x303df4(0x1e9)+_0x1b873c[_0x421423]);_0x421423++;}_0x4af256=_0x1b873c[_0x421423++];const _0x186d26=_0x2f28b8['dFnNS'](_0x33e260,'yyyy')?/^\d{4}$/:_0x2f28b8[_0x303df4(0x130)](_0x33e260,_0x303df4(0x211))?/^\d{6}$/:/^\d{8}$/;if(!_0x186d26['test'](_0x4af256))throw new IdGeneratorError(_0x2f28b8['hCXgY'],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x33e260+':\x20'+_0x4af256);_0x3c12ba=_0x1b873c[_0x421423];}if(!new RegExp('^\x5cd{'+_0x51926f+'}$')[_0x303df4(0x166)](_0x3c12ba))throw new IdGeneratorError(_0x2f28b8[_0x303df4(0x1c7)],_0x303df4(0x1e1)+_0x51926f+_0x303df4(0x143)+_0x3c12ba+')');const _0x4c008f=parseInt(_0x3c12ba,0xa),_0x258d4c=_0x14d009||'_';let _0x15f5ba;return _0x2f28b8[_0x303df4(0x130)](_0x33e260,_0x2f28b8[_0x303df4(0x14e)])?_0x15f5ba=_0x258d4c+_0x303df4(0x16b):_0x15f5ba=_0x258d4c+'_'+_0x33e260+'_'+_0x4af256,{'formatKey':_0x15f5ba,'counterInt':_0x4c008f,'datePrefix':_0x4af256};}[a0_0x13a74b(0x1f9)](_0x2a9f25){const _0x34f625=a0_0x13a74b;let _0x32d42a='';for(const _0x29f653 of _0x2a9f25){const _0xcf60dd=PLACEHOLDER_MAP[_0x29f653];if(_0xcf60dd){const _0x2464ae=crypto['randomInt'](0x0,_0xcf60dd[_0x34f625(0x1a3)]);_0x32d42a+=_0xcf60dd[_0x2464ae];}else _0x32d42a+=_0x29f653;}return _0x32d42a;}async[a0_0x13a74b(0x14c)](_0x58fd6d){const _0x5af10e=a0_0x13a74b,_0x197c1b={'vLqTd':_0x5af10e(0x17e),'WlFWp':_0x5af10e(0x1fc),'IBVAN':_0x5af10e(0x167)};if(!_0x58fd6d)return null;try{const _0x485e9b=redisClient['getClient'](),_0x1a3a5=await _0x485e9b[_0x5af10e(0x152)](_0x58fd6d);if(_0x1a3a5)return logger['info']({'event':_0x197c1b['vLqTd'],'key':_0x58fd6d},_0x197c1b['WlFWp']),JSON['parse'](_0x1a3a5);return null;}catch(_0x46e650){return logger['warn']({'event':_0x197c1b['IBVAN'],'error':_0x46e650[_0x5af10e(0x1b9)]},'Idempotency\x20retrieve\x20error'),null;}}async[a0_0x13a74b(0x215)](_0x43935b,_0x414ad7){const _0x4df741=a0_0x13a74b,_0x37cb1d={'XVlLO':'idgen_idem_store_error'};if(!_0x43935b)return;try{const _0x48ede1=redisClient[_0x4df741(0x216)]();await _0x48ede1['setex'](_0x43935b,this[_0x4df741(0x154)],JSON['stringify'](_0x414ad7));}catch(_0x39e979){logger[_0x4df741(0x133)]({'event':_0x37cb1d['XVlLO'],'error':_0x39e979['message']},_0x4df741(0x13b));}}async['_storeIdemCacheNX'](_0xa7d363,_0x522f59){const _0x24c587=a0_0x13a74b,_0x4a420e={'SgQpe':function(_0x4e4b8a,_0x5cea9f){return _0x4e4b8a===_0x5cea9f;},'dFgbe':'idgen_idem_nx_race_lost_but_empty','NGbNH':'idgen_idem_storenx_error'};if(!_0xa7d363)return{'stored':!![],'winnerResult':null};try{const _0x56a87e=redisClient['getClient'](),_0x1c8318=JSON[_0x24c587(0x106)](_0x522f59),_0xe9e932=await _0x56a87e['set'](_0xa7d363,_0x1c8318,'EX',this[_0x24c587(0x154)],'NX');if(_0x4a420e[_0x24c587(0x213)](_0xe9e932,'OK'))return{'stored':!![],'winnerResult':null};const _0x266ea9=await _0x56a87e['get'](_0xa7d363);if(_0x266ea9)return{'stored':![],'winnerResult':JSON[_0x24c587(0x174)](_0x266ea9)};return logger['warn']({'event':_0x4a420e[_0x24c587(0x1e4)],'key':_0xa7d363},_0x24c587(0x197)),{'stored':!![],'winnerResult':null};}catch(_0x30d05d){return logger['warn']({'event':_0x4a420e['NGbNH'],'error':_0x30d05d[_0x24c587(0x1b9)]},_0x24c587(0x138)),{'stored':!![],'winnerResult':null};}}async[a0_0x13a74b(0x109)](_0xb2e7ff,_0x4897c2,_0x16895e){const _0x22860e=a0_0x13a74b,_0x539143={'OLyqu':'idgen_random_undo_error'};try{const _0x8c4e01=redisClient['getClient']();if(_0x16895e){const _0x43491d=this['_buildActiveKey'](_0xb2e7ff,_0x4897c2);await _0x8c4e01['del'](_0x43491d);}else{const _0x199616=this['_buildIssuedKey'](_0xb2e7ff);await _0x8c4e01[_0x22860e(0x11f)](_0x199616,_0x4897c2);}}catch(_0xd346ca){logger['warn']({'event':_0x539143['OLyqu'],'error':_0xd346ca[_0x22860e(0x1b9)]},_0x22860e(0x119));}}async['_updateMeta'](_0x22e2a0,_0x50c3b4,_0x58be0a,_0xd5f20d=0x0){const _0x191108=a0_0x13a74b,_0x4e2232={'GyRLV':function(_0x5e338a,_0x32372d){return _0x5e338a(_0x32372d);},'JoUjj':function(_0xf49289,_0x6e25a){return _0xf49289>_0x6e25a;},'SscMl':_0x191108(0x1fb)};try{const _0x51fa30=redisClient[_0x191108(0x216)](),_0x2b4422=this[_0x191108(0x1d1)](_0x22e2a0,_0x50c3b4),_0x5c5fa4=[];for(const [_0x3fde9b,_0x47345e]of Object['entries'](_0x58be0a)){_0x5c5fa4[_0x191108(0x1da)](_0x3fde9b,_0x4e2232['GyRLV'](String,_0x47345e));}if(_0x5c5fa4['length']>0x0){await _0x51fa30[_0x191108(0x224)](_0x2b4422,..._0x5c5fa4);if(_0x4e2232['JoUjj'](_0xd5f20d,0x0))await _0x51fa30[_0x191108(0x201)](_0x2b4422,_0xd5f20d);}}catch(_0x1e1841){logger[_0x191108(0x133)]({'event':_0x191108(0x199),'error':_0x1e1841[_0x191108(0x1b9)]},_0x4e2232[_0x191108(0x191)]);}}async['number'](_0x2ec1dd){const _0x580f46=a0_0x13a74b,_0x54ef94={'NwIPP':'number','CzPjw':function(_0x12e60c,_0x529806){return _0x12e60c(_0x529806);},'pcGrJ':function(_0x6e2307,_0x9c104f){return _0x6e2307===_0x9c104f;},'JzrYF':function(_0x418fb0,_0x2c23d1){return _0x418fb0(_0x2c23d1);},'WBCmG':_0x580f46(0x111),'xDrqY':_0x580f46(0x1b8)};if(!this[_0x580f46(0x1d9)])throw new IdGeneratorError(_0x580f46(0x19e),_0x580f46(0x1e3));const _0xfbac9=this[_0x580f46(0x1ec)](_0x2ec1dd),_0x270d74=this[_0x580f46(0x184)](_0x2ec1dd['idempotencyKey']),{resource:_0x5ef202,format:_0x3f0870,prefix:_0x263f09,separator:_0x2ad6a8,numDigits:_0x25e2c2,reuseDelete:_0x4e9224}=_0xfbac9,{formatKey:_0x3914ec,datePrefix:_0x1ed7b8}=this[_0x580f46(0x1a1)](_0x3f0870,_0x263f09),_0x459f56=this[_0x580f46(0x1d2)](_0x5ef202,_0x3914ec),_0x3cbff3=this[_0x580f46(0x117)](_0x5ef202,_0x3914ec),_0x1d92f7=this[_0x580f46(0x179)](_0x3f0870);let _0x362060=null;if(_0x270d74){_0x362060=this['_buildIdemKey'](_0x54ef94['NwIPP'],_0x5ef202,_0x3914ec,_0x270d74);const _0x18d8e3=await this['_retrieveIdemCache'](_0x362060);if(_0x18d8e3)return _0x18d8e3;}const _0x2ca6f0=redisClient['getClient'](),_0x258863=await _0x2ca6f0['eval'](LUA_GENERATE_NUMBER,0x2,_0x459f56,_0x3cbff3,_0x4e9224?'1':'0',_0x54ef94['CzPjw'](String,_0x1d92f7)),_0x4301e0=_0x258863[0x0],_0x2d568f=_0x54ef94[_0x580f46(0x19c)](_0x258863[0x1],0x1),_0x305a28=this[_0x580f46(0x146)]({'format':_0x3f0870,'prefix':_0x263f09,'datePrefix':_0x1ed7b8,'separator':_0x2ad6a8,'numDigits':_0x25e2c2,'counterInt':_0x4301e0}),_0x3220cc={'value':_0x305a28,'counter':_0x4301e0,'resource':_0x5ef202,'formatKey':_0x3914ec,'isReused':_0x2d568f,'generatedAt':new Date()['toISOString']()},_0x3f01e1=await this['_storeIdemCacheNX'](_0x362060,_0x3220cc);if(!_0x3f01e1[_0x580f46(0x1a8)]){try{await _0x2ca6f0[_0x580f46(0x153)](LUA_RELEASE_NUMBER,0x1,_0x3cbff3,_0x54ef94[_0x580f46(0x1e2)](String,_0x4301e0),_0x54ef94[_0x580f46(0x1e2)](String,_0x1d92f7));}catch(_0x520558){logger['warn']({'event':_0x54ef94['WBCmG'],'error':_0x520558['message'],'resource':_0x5ef202,'formatKey':_0x3914ec,'counterInt':_0x4301e0},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger[_0x580f46(0x10c)]({'event':_0x54ef94['xDrqY'],'resource':_0x5ef202,'formatKey':_0x3914ec,'counter':_0x4301e0},_0x580f46(0x13d)),_0x3f01e1[_0x580f46(0x144)];}return this['_updateMeta'](_0x5ef202,_0x3914ec,{'lastValue':_0x305a28,'lastCounter':_0x4301e0,'lastIsReused':_0x2d568f,'lastGeneratedAt':_0x3220cc[_0x580f46(0x1b5)]},_0x1d92f7),logger['info']({'event':'idgen_number_generated','resource':_0x5ef202,'formatKey':_0x3914ec,'counter':_0x4301e0,'isReused':_0x2d568f},_0x580f46(0x214)+_0x305a28),_0x3220cc;}async[a0_0x13a74b(0x1f6)](_0x56a760){const _0x5e0b6c=a0_0x13a74b,_0x96adcb={'OtMzo':function(_0x31797f,_0x561429){return _0x31797f!==_0x561429;},'gORHS':'string','sdfua':_0x5e0b6c(0x21b),'zBgtc':_0x5e0b6c(0xfd),'dWQMm':_0x5e0b6c(0x1c9),'cxqBr':function(_0x719206,_0x5ab298){return _0x719206(_0x5ab298);},'ZGVOk':'idgen_number_released'};if(!this['enabled'])throw new IdGeneratorError(_0x5e0b6c(0x19e),_0x5e0b6c(0x186));let _0xe4eb0f,_0x34b0bc,_0x1a3e7f,_0x29c4a4;const _0x3c5611=this['_validateIdempotencyKey'](_0x56a760[_0x5e0b6c(0x223)]);if(_0x96adcb[_0x5e0b6c(0x1f0)](_0x56a760['counterInt'],undefined)&&_0x56a760[_0x5e0b6c(0x16f)]!==null){this[_0x5e0b6c(0x1cc)](_0x56a760[_0x5e0b6c(0x18c)]),_0xe4eb0f=_0x56a760['resource'];if(_0x96adcb['OtMzo'](typeof _0x56a760[_0x5e0b6c(0x164)],_0x96adcb['gORHS'])||_0x56a760[_0x5e0b6c(0x164)][_0x5e0b6c(0x1a3)]===0x0)throw new IdGeneratorError(_0x5e0b6c(0x222),_0x96adcb['sdfua']);_0x34b0bc=_0x56a760['formatKey'];if(!Number[_0x5e0b6c(0x107)](_0x56a760['counterInt'])||_0x56a760['counterInt']<0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x5e0b6c(0x101)+_0x56a760['counterInt']+')');_0x1a3e7f=_0x56a760[_0x5e0b6c(0x16f)];const _0x5aa854=_0x34b0bc[_0x5e0b6c(0x21a)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x29c4a4=_0x5aa854?_0x5aa854[0x1]:_0x96adcb[_0x5e0b6c(0x11d)];}else{const _0x404599=this['_validateNumberParams'](_0x56a760),_0x4cd5f9=this['_parseNumber']({'format':_0x404599['format'],'prefix':_0x404599['prefix'],'separator':_0x404599['separator'],'numDigits':_0x404599['numDigits'],'number':_0x56a760['number']});_0xe4eb0f=_0x404599['resource'],_0x34b0bc=_0x4cd5f9[_0x5e0b6c(0x164)],_0x1a3e7f=_0x4cd5f9[_0x5e0b6c(0x16f)],_0x29c4a4=_0x404599['format'];}const _0x5cd43d=this['_buildReuseKey'](_0xe4eb0f,_0x34b0bc),_0x54203b=this['_getCounterTTL'](_0x29c4a4);let _0x141886=null;if(_0x3c5611){_0x141886=this['_buildIdemKey'](_0x96adcb[_0x5e0b6c(0x1fe)],_0xe4eb0f,_0x34b0bc,_0x3c5611);const _0x240495=await this[_0x5e0b6c(0x14c)](_0x141886);if(_0x240495)return _0x240495;}const _0x113731=redisClient[_0x5e0b6c(0x216)]();await _0x113731['eval'](LUA_RELEASE_NUMBER,0x1,_0x5cd43d,_0x96adcb[_0x5e0b6c(0x19d)](String,_0x1a3e7f),_0x96adcb['cxqBr'](String,_0x54203b));const _0x50e900={'released':!![],'resource':_0xe4eb0f,'formatKey':_0x34b0bc,'counter':_0x1a3e7f,'releasedAt':new Date()[_0x5e0b6c(0x204)]()};return await this[_0x5e0b6c(0x215)](_0x141886,_0x50e900),this[_0x5e0b6c(0x16d)](_0xe4eb0f,_0x34b0bc,{'lastReleasedCounter':_0x1a3e7f,'lastReleasedAt':_0x50e900[_0x5e0b6c(0x10d)]},_0x54203b),logger[_0x5e0b6c(0x10c)]({'event':_0x96adcb[_0x5e0b6c(0x1de)],'resource':_0xe4eb0f,'formatKey':_0x34b0bc,'counter':_0x1a3e7f},'ID\x20Generator\x20number\x20released:\x20'+_0x1a3e7f),_0x50e900;}async['reserveNumber'](_0x45f236){const _0x4fe627=a0_0x13a74b,_0x165a70={'UYfrA':_0x4fe627(0x1e3),'xuMWN':_0x4fe627(0x195),'Vlreu':function(_0x32ee15,_0x5a08b1){return _0x32ee15*_0x5a08b1;},'iJEWY':'resource','aUsTR':_0x4fe627(0x164),'uqPuU':'format','EnHcW':_0x4fe627(0x210),'HOegP':_0x4fe627(0x13e),'SFjwM':function(_0x656261,_0x17f024){return _0x656261||_0x17f024;},'AjiqE':_0x4fe627(0x145),'RdZac':_0x4fe627(0x209),'dMGkL':function(_0x82c441,_0x2cc845){return _0x82c441(_0x2cc845);},'vEYgU':_0x4fe627(0x141),'qHjOR':function(_0x142a85,_0x45c8b){return _0x142a85(_0x45c8b);},'KdRzj':function(_0x3b49dd,_0x14dd5c){return _0x3b49dd===_0x14dd5c;},'fgNic':_0x4fe627(0x1a9),'joRzP':'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash','Wwhwu':function(_0x8b087,_0x5bc20d){return _0x8b087(_0x5bc20d);},'eqRgE':_0x4fe627(0x13a),'PoxmC':'idgen_number_reserved'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x165a70[_0x4fe627(0x125)]);const _0x150158=this['_validateNumberParams'](_0x45f236),_0x4dfe23=this[_0x4fe627(0x175)](_0x45f236['ttl']),_0x508d30=this['_validateIdempotencyKey'](_0x45f236[_0x4fe627(0x223)]),{resource:_0xef5cd1,format:_0x11b7df,prefix:_0x14fe42,separator:_0xd2e74a,numDigits:_0x49b69e,reuseDelete:_0x34c7a5}=_0x150158,{formatKey:_0x1ba166,datePrefix:_0x3e148c}=this['_buildFormatKey'](_0x11b7df,_0x14fe42),_0x41cb0f=this['_buildSeqKey'](_0xef5cd1,_0x1ba166),_0x46d550=this[_0x4fe627(0x117)](_0xef5cd1,_0x1ba166),_0x1524fb=this['_buildReservationIndexKey'](_0xef5cd1,_0x1ba166),_0x34941a=this['_getCounterTTL'](_0x11b7df);let _0x1b5aac=null;if(_0x508d30){_0x1b5aac=this['_buildIdemKey'](_0x165a70['xuMWN'],_0xef5cd1,_0x1ba166,_0x508d30);const _0x10512e=await this['_retrieveIdemCache'](_0x1b5aac);if(_0x10512e)return _0x10512e;}const _0x21ccbc=crypto[_0x4fe627(0x207)](),_0x278777=this[_0x4fe627(0x192)](_0x21ccbc),_0x22ff42=this[_0x4fe627(0x1d7)](),_0x318ddd=Date['now'](),_0x38e55d=_0x318ddd+_0x165a70[_0x4fe627(0x173)](_0x4dfe23,0x3e8),_0x16fc1e=_0x4dfe23*0x3e8,_0x31d790=new Date(_0x318ddd)[_0x4fe627(0x204)](),_0x12849a=new Date(_0x38e55d)['toISOString'](),_0x1d00b7=[_0x165a70['iJEWY'],_0xef5cd1,_0x165a70[_0x4fe627(0x12c)],_0x1ba166,_0x165a70['uqPuU'],_0x11b7df,_0x165a70['EnHcW'],_0x14fe42,_0x4fe627(0x1ed),_0xd2e74a,_0x165a70['HOegP'],String(_0x49b69e),'datePrefix',_0x165a70[_0x4fe627(0x1e8)](_0x3e148c,''),'createdAt',_0x31d790,_0x165a70['AjiqE'],_0x12849a,_0x165a70[_0x4fe627(0x1c2)],_0x165a70[_0x4fe627(0x11b)](String,_0x16fc1e)];_0x508d30&&_0x1d00b7['push'](_0x165a70['vEYgU'],_0x508d30);const _0x5a1ad3=redisClient['getClient'](),_0x2db136=await _0x5a1ad3['eval'](LUA_RESERVE_NUMBER,0x3,_0x41cb0f,_0x46d550,_0x1524fb,_0x34c7a5?'1':'0',_0x165a70[_0x4fe627(0x11b)](String,_0x34941a),_0x21ccbc,_0x278777,_0x165a70['qHjOR'](String,_0x16fc1e),String(_0x38e55d),String(_0x318ddd),_0x22ff42,..._0x1d00b7),_0xbd664f=_0x2db136[0x0],_0x409b1e=_0x165a70[_0x4fe627(0x19b)](_0x2db136[0x1],0x1),_0x36bddc=_0x2db136[0x2]||0x0;let _0x2e49aa;try{_0x2e49aa=this['_formatNumber']({'format':_0x11b7df,'prefix':_0x14fe42,'datePrefix':_0x3e148c,'separator':_0xd2e74a,'numDigits':_0x49b69e,'counterInt':_0xbd664f});}catch(_0x1214e6){try{await _0x5a1ad3[_0x4fe627(0x153)](LUA_CANCEL_RESERVATION,0x3,_0x278777,_0x1524fb,_0x46d550,_0x21ccbc,_0x165a70[_0x4fe627(0x114)](String,_0x34941a));}catch(_0x4e3b61){logger[_0x4fe627(0x133)]({'event':'idgen_reserve_overflow_compensation_error','error':_0x4e3b61['message'],'resource':_0xef5cd1,'formatKey':_0x1ba166,'counterInt':_0xbd664f,'token':_0x21ccbc},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x1214e6;}try{await _0x5a1ad3[_0x4fe627(0x224)](_0x278777,_0x165a70['fgNic'],_0x2e49aa);}catch(_0x2d026c){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x2d026c[_0x4fe627(0x1b9)],'resource':_0xef5cd1,'formatKey':_0x1ba166,'counterInt':_0xbd664f,'token':_0x21ccbc},_0x165a70['joRzP']);}const _0x24cddb={'token':_0x21ccbc,'value':_0x2e49aa,'counter':_0xbd664f,'resource':_0xef5cd1,'formatKey':_0x1ba166,'isReused':_0x409b1e,'createdAt':_0x31d790,'expiresAt':_0x12849a,'reapedCount':_0x36bddc},_0xe93dd7=await this['_storeIdemCacheNX'](_0x1b5aac,_0x24cddb);if(!_0xe93dd7[_0x4fe627(0x1a8)]){try{await _0x5a1ad3['eval'](LUA_CANCEL_RESERVATION,0x3,_0x278777,_0x1524fb,_0x46d550,_0x21ccbc,_0x165a70[_0x4fe627(0x1fa)](String,_0x34941a));}catch(_0xb49bd5){logger['warn']({'event':_0x4fe627(0x1b3),'error':_0xb49bd5['message'],'resource':_0xef5cd1,'formatKey':_0x1ba166,'counterInt':_0xbd664f,'token':_0x21ccbc},_0x165a70[_0x4fe627(0x17b)]);}return logger['info']({'event':'idgen_reserve_idem_loser','resource':_0xef5cd1,'formatKey':_0x1ba166,'counter':_0xbd664f,'token':_0x21ccbc},_0x4fe627(0x1e6)),_0xe93dd7[_0x4fe627(0x144)];}return this['_updateMeta'](_0xef5cd1,_0x1ba166,{'lastReservedCounter':_0xbd664f,'lastReservedAt':_0x31d790,'lastReapedCount':_0x36bddc},_0x34941a),logger[_0x4fe627(0x10c)]({'event':_0x165a70['PoxmC'],'resource':_0xef5cd1,'formatKey':_0x1ba166,'counter':_0xbd664f,'isReused':_0x409b1e,'token':_0x21ccbc,'ttl':_0x4dfe23,'reapedCount':_0x36bddc},'ID\x20Generator\x20number\x20reserved:\x20'+_0x2e49aa+_0x4fe627(0xfe)+_0x21ccbc+')'),_0x24cddb;}async['confirmReservation'](_0x300257){const _0x92d3a0=a0_0x13a74b,_0x461712={'fbwYh':'ID\x20Generator\x20is\x20disabled','rLcCI':'idgen','yvAhX':function(_0x1fff1b,_0x317db9,_0x27b6d4){return _0x1fff1b(_0x317db9,_0x27b6d4);},'UoHzg':_0x92d3a0(0xfd),'rxEYY':'idgen_reservation_confirmed'};if(!this['enabled'])throw new IdGeneratorError(_0x92d3a0(0x19e),_0x461712['fbwYh']);const _0x2fdecf=this[_0x92d3a0(0x1ff)](_0x300257&&_0x300257['token']),_0x5a3d60=this[_0x92d3a0(0x184)](_0x300257&&_0x300257[_0x92d3a0(0x223)]);let _0x4d5456=null;if(_0x5a3d60){_0x4d5456=idempotencyManager[_0x92d3a0(0x1df)](_0x461712['rLcCI'],_0x92d3a0(0x1a6),_0x2fdecf+':'+_0x5a3d60);const _0xcbe60e=await this[_0x92d3a0(0x14c)](_0x4d5456);if(_0xcbe60e)return _0xcbe60e;}const _0x5c0988=await this['_getReservationContext'](_0x2fdecf),_0x49b404=redisClient['getClient'](),_0x129e33=await _0x49b404['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x5c0988['rsvKey'],_0x5c0988[_0x92d3a0(0x155)],_0x2fdecf);if(!_0x129e33||_0x129e33[0x0]!==0x1)throw new IdGeneratorError(_0x92d3a0(0x189),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x2fdecf,{'token':_0x2fdecf});const _0x303b53=_0x461712['yvAhX'](parseInt,_0x129e33[0x1],0xa),_0x2587e3=_0x129e33[0x2],_0x2fbff2=_0x129e33[0x3],_0x21ea27=new Date()['toISOString'](),_0x4a6503={'confirmed':!![],'token':_0x2fdecf,'value':_0x2587e3,'counter':_0x303b53,'resource':_0x5c0988['resource'],'formatKey':_0x2fbff2,'confirmedAt':_0x21ea27};await this[_0x92d3a0(0x215)](_0x4d5456,_0x4a6503);const _0xd80be=_0x2fbff2[_0x92d3a0(0x21a)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x566eb7=_0xd80be?_0xd80be[0x1]:_0x461712['UoHzg'],_0x1312d4=this[_0x92d3a0(0x179)](_0x566eb7);return this['_updateMeta'](_0x5c0988[_0x92d3a0(0x18c)],_0x2fbff2,{'lastConfirmedCounter':_0x303b53,'lastConfirmedAt':_0x21ea27},_0x1312d4),logger[_0x92d3a0(0x10c)]({'event':_0x461712[_0x92d3a0(0x196)],'resource':_0x5c0988[_0x92d3a0(0x18c)],'formatKey':_0x2fbff2,'counter':_0x303b53,'token':_0x2fdecf},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0x2587e3+_0x92d3a0(0xfe)+_0x2fdecf+')'),_0x4a6503;}async['cancelReservation'](_0x17c0f8){const _0x2be201=a0_0x13a74b,_0x11ede1={'tQVoI':_0x2be201(0x186),'suEzL':'reserve_cancel','PbPFK':_0x2be201(0xfd),'fztuT':'IDGEN_RESERVATION_NOT_FOUND','MpRec':function(_0x2b4113,_0x219377,_0x26f86e){return _0x2b4113(_0x219377,_0x26f86e);},'EHCHf':_0x2be201(0x11e)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x11ede1['tQVoI']);const _0x5800cf=this[_0x2be201(0x1ff)](_0x17c0f8&&_0x17c0f8[_0x2be201(0x15a)]),_0x2dc8dc=this[_0x2be201(0x184)](_0x17c0f8&&_0x17c0f8['idempotencyKey']);let _0x28e566=null;if(_0x2dc8dc){_0x28e566=idempotencyManager[_0x2be201(0x1df)]('idgen',_0x11ede1[_0x2be201(0x1a5)],_0x5800cf+':'+_0x2dc8dc);const _0x4ce8bc=await this['_retrieveIdemCache'](_0x28e566);if(_0x4ce8bc)return _0x4ce8bc;}const _0x41d0c2=await this['_getReservationContext'](_0x5800cf),_0x10c543=this['_buildReuseKey'](_0x41d0c2[_0x2be201(0x18c)],_0x41d0c2['formatKey']),_0x42a71f=_0x41d0c2['formatKey'][_0x2be201(0x21a)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e8502=_0x42a71f?_0x42a71f[0x1]:_0x11ede1[_0x2be201(0x1cd)],_0x29fc57=this['_getCounterTTL'](_0x3e8502),_0x861c4=redisClient[_0x2be201(0x216)](),_0x567f09=await _0x861c4['eval'](LUA_CANCEL_RESERVATION,0x3,_0x41d0c2['rsvKey'],_0x41d0c2['rsvIdxKey'],_0x10c543,_0x5800cf,String(_0x29fc57));if(!_0x567f09||_0x567f09[0x0]!==0x1)throw new IdGeneratorError(_0x11ede1['fztuT'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5800cf,{'token':_0x5800cf});const _0x4190b2=_0x11ede1[_0x2be201(0x218)](parseInt,_0x567f09[0x1],0xa),_0x58e534=_0x567f09[0x2],_0x1089b7=_0x567f09[0x3],_0x222c67=new Date()['toISOString'](),_0x5bc73b={'cancelled':!![],'token':_0x5800cf,'value':_0x58e534,'counter':_0x4190b2,'resource':_0x41d0c2[_0x2be201(0x18c)],'formatKey':_0x1089b7,'releasedToReuse':!![],'cancelledAt':_0x222c67};return await this[_0x2be201(0x215)](_0x28e566,_0x5bc73b),this['_updateMeta'](_0x41d0c2['resource'],_0x1089b7,{'lastCancelledCounter':_0x4190b2,'lastCancelledAt':_0x222c67},_0x29fc57),logger['info']({'event':_0x11ede1['EHCHf'],'resource':_0x41d0c2['resource'],'formatKey':_0x1089b7,'counter':_0x4190b2,'token':_0x5800cf},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x58e534+_0x2be201(0xfe)+_0x5800cf+')'),_0x5bc73b;}async['extendReservation'](_0x344561){const _0x5b38a2=a0_0x13a74b,_0x3b3f5e={'buWZE':'IDGEN_DISABLED','cqtLi':function(_0x554aaf,_0x441ca5){return _0x554aaf+_0x441ca5;},'bbTwT':function(_0xe242b5,_0x1caa60){return _0xe242b5(_0x1caa60);},'vbXZw':_0x5b38a2(0x189),'hhMuA':function(_0x1cab08,_0x2e9c0f,_0x1258da){return _0x1cab08(_0x2e9c0f,_0x1258da);},'uISvU':_0x5b38a2(0xfd)};if(!this[_0x5b38a2(0x1d9)])throw new IdGeneratorError(_0x3b3f5e[_0x5b38a2(0x21d)],'ID\x20Generator\x20is\x20disabled');const _0x1a0fe2=this[_0x5b38a2(0x1ff)](_0x344561&&_0x344561[_0x5b38a2(0x15a)]),_0x5ec73b=this['_validateReserveTTL'](_0x344561&&_0x344561['ttl']),_0x4123a5=this['_validateIdempotencyKey'](_0x344561&&_0x344561[_0x5b38a2(0x223)]);let _0x368de1=null;if(_0x4123a5){_0x368de1=idempotencyManager['buildDeterministicKey'](_0x5b38a2(0x1ad),'reserve_extend',_0x1a0fe2+':'+_0x4123a5);const _0x531ec5=await this['_retrieveIdemCache'](_0x368de1);if(_0x531ec5)return _0x531ec5;}const _0x2c60fd=await this['_getReservationContext'](_0x1a0fe2),_0x4e4c06=Date[_0x5b38a2(0x12d)](),_0x4fb573=_0x3b3f5e['cqtLi'](_0x4e4c06,_0x5ec73b*0x3e8),_0x12a99d=_0x5ec73b*0x3e8,_0x34067a=new Date(_0x4fb573)[_0x5b38a2(0x204)](),_0x2615b0=redisClient['getClient'](),_0x3bf782=await _0x2615b0[_0x5b38a2(0x153)](LUA_EXTEND_RESERVATION,0x2,_0x2c60fd['rsvKey'],_0x2c60fd['rsvIdxKey'],_0x1a0fe2,_0x3b3f5e['bbTwT'](String,_0x12a99d),String(_0x4fb573),_0x34067a);if(!_0x3bf782||_0x3bf782[0x0]!==0x1)throw new IdGeneratorError(_0x3b3f5e['vbXZw'],_0x5b38a2(0x1bc)+_0x1a0fe2,{'token':_0x1a0fe2});const _0x738913=_0x3bf782[0x1],_0x96f93=_0x3b3f5e[_0x5b38a2(0x1d0)](parseInt,_0x3bf782[0x2],0xa),_0x4ca01a=_0x3bf782[0x3],_0x4e4127=_0x3bf782[0x4],_0x504777=new Date(_0x4e4c06)[_0x5b38a2(0x204)](),_0x2decd3={'extended':!![],'token':_0x1a0fe2,'previousExpiresAt':_0x738913,'expiresAt':_0x34067a,'ttlMs':_0x12a99d,'resource':_0x2c60fd['resource'],'formatKey':_0x4e4127,'counter':_0x96f93,'value':_0x4ca01a,'extendedAt':_0x504777};await this['_storeIdemCache'](_0x368de1,_0x2decd3);const _0x2283a0=_0x4e4127['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x5da091=_0x2283a0?_0x2283a0[0x1]:_0x3b3f5e[_0x5b38a2(0x1dd)],_0x79a479=this['_getCounterTTL'](_0x5da091);return this['_updateMeta'](_0x2c60fd[_0x5b38a2(0x18c)],_0x4e4127,{'lastExtendedCounter':_0x96f93,'lastExtendedAt':_0x504777},_0x79a479),logger['info']({'event':'idgen_reservation_extended','resource':_0x2c60fd['resource'],'formatKey':_0x4e4127,'counter':_0x96f93,'token':_0x1a0fe2,'ttl':_0x5ec73b},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x4ca01a+_0x5b38a2(0xfe)+_0x1a0fe2+_0x5b38a2(0x185)+_0x5ec73b+'s)'),_0x2decd3;}async[a0_0x13a74b(0x1c0)](_0x3a62e1){const _0x5f154f=a0_0x13a74b,_0x16cd81={'gwXgp':function(_0x310077,_0x374aa5){return _0x310077===_0x374aa5;},'aOHtx':function(_0x4dab19,_0xa35e64,_0x2de4ca){return _0x4dab19(_0xa35e64,_0x2de4ca);},'DLFrR':function(_0x2d5460,_0x229e78,_0x2e7094){return _0x2d5460(_0x229e78,_0x2e7094);},'vEfAe':function(_0x4963b3,_0x52cf25){return _0x4963b3===_0x52cf25;},'FNBvr':'number'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');const _0x522af3=this['_validateReservationToken'](_0x3a62e1&&_0x3a62e1[_0x5f154f(0x15a)]),_0x4bc720=this['_buildReservationKey'](_0x522af3),_0x1d3b1a=redisClient['getClient'](),_0x283cda=_0x1d3b1a[_0x5f154f(0x17a)]();_0x283cda['hgetall'](_0x4bc720),_0x283cda[_0x5f154f(0x181)](_0x4bc720);const _0x1512b9=await _0x283cda[_0x5f154f(0x105)](),_0x139857=_0x1512b9&&_0x1512b9[0x0]&&_0x1512b9[0x0][0x1],_0xe2dc1f=_0x1512b9&&_0x1512b9[0x1]&&_0x1512b9[0x1][0x1];if(!_0x139857||_0x16cd81[_0x5f154f(0x178)](Object['keys'](_0x139857)[_0x5f154f(0x1a3)],0x0))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x5f154f(0x1bc)+_0x522af3,{'token':_0x522af3});return{'token':_0x522af3,'resource':_0x139857['resource']||null,'formatKey':_0x139857[_0x5f154f(0x164)]||null,'format':_0x139857['format']||null,'prefix':_0x139857['prefix']||'','separator':_0x139857[_0x5f154f(0x1ed)]||'','numDigits':_0x139857[_0x5f154f(0x13e)]?_0x16cd81['aOHtx'](parseInt,_0x139857[_0x5f154f(0x13e)],0xa):null,'datePrefix':_0x139857['datePrefix']||'','counter':_0x139857['counter']?_0x16cd81[_0x5f154f(0x128)](parseInt,_0x139857['counter'],0xa):null,'value':_0x139857[_0x5f154f(0x1a9)]||null,'isReused':_0x16cd81[_0x5f154f(0x220)](_0x139857[_0x5f154f(0x20d)],'1')||_0x16cd81['gwXgp'](_0x139857[_0x5f154f(0x20d)],0x1),'createdAt':_0x139857['createdAt']||null,'expiresAt':_0x139857['expiresAt']||null,'ttlRemainingMs':_0x16cd81['vEfAe'](typeof _0xe2dc1f,_0x16cd81[_0x5f154f(0x1bb)])&&_0xe2dc1f>=0x0?_0xe2dc1f:null};}async['_getReservationContext'](_0x2ee6a1){const _0x24ec74=a0_0x13a74b,_0x50cd23={'VGHsr':function(_0x234600,_0x3252ab){return _0x234600||_0x3252ab;}},_0x1b6061=this[_0x24ec74(0x192)](_0x2ee6a1),_0x34af63=redisClient['getClient'](),_0x23b8ce=await _0x34af63[_0x24ec74(0x1d8)](_0x1b6061,_0x24ec74(0x18c),_0x24ec74(0x164)),_0x18cddf=_0x23b8ce&&_0x23b8ce[0x0],_0x562f2e=_0x23b8ce&&_0x23b8ce[0x1];if(_0x50cd23[_0x24ec74(0x136)](!_0x18cddf,!_0x562f2e))throw new IdGeneratorError(_0x24ec74(0x189),_0x24ec74(0x1bc)+_0x2ee6a1,{'token':_0x2ee6a1});return{'resource':_0x18cddf,'formatKey':_0x562f2e,'rsvKey':_0x1b6061,'rsvIdxKey':this['_buildReservationIndexKey'](_0x18cddf,_0x562f2e)};}async['random'](_0x1e1a4d){const _0x5b4215=a0_0x13a74b,_0x3d02c8={'MvsFU':'IDGEN_DISABLED','iedNB':function(_0x58a948,_0x4379e6){return _0x58a948===_0x4379e6;},'TibmE':function(_0x1695e6,_0x19df71){return _0x1695e6===_0x19df71;},'aLSuZ':_0x5b4215(0x1d6),'sCEHv':'idgen_random_generated'};if(!this['enabled'])throw new IdGeneratorError(_0x3d02c8[_0x5b4215(0x20b)],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x1e1a4d['resource']),this[_0x5b4215(0x172)](_0x1e1a4d['pattern']);const _0x5e0c7d=this[_0x5b4215(0x14f)](_0x1e1a4d['ttl']),_0x174267=this[_0x5b4215(0xff)](_0x1e1a4d[_0x5b4215(0x100)]),_0xf960d5=this['_validateIdempotencyKey'](_0x1e1a4d[_0x5b4215(0x223)]),_0x29e900=_0x3d02c8[_0x5b4215(0x132)](_0x1e1a4d[_0x5b4215(0x1a2)],!![]),{resource:_0x2963be,pattern:_0x243bf0}=_0x1e1a4d;let _0x578bb1=null;if(_0xf960d5){_0x578bb1=this['_buildIdemKey'](_0x5b4215(0x126),_0x2963be,null,_0xf960d5);const _0x7b0108=await this['_retrieveIdemCache'](_0x578bb1);if(_0x7b0108)return _0x7b0108;}const _0x4ff835=redisClient[_0x5b4215(0x216)]();let _0x5a0f7c=null,_0x5797f5=0x0;if(!_0x29e900)_0x5a0f7c=this['_generateFromPattern'](_0x243bf0),_0x5797f5=0x1;else{for(let _0x426e7f=0x0;_0x426e7f<_0x174267;_0x426e7f++){_0x5797f5++;const _0xb67354=this['_generateFromPattern'](_0x243bf0);if(_0x5e0c7d){const _0x118f0a=this[_0x5b4215(0x165)](_0x2963be,_0xb67354),_0x17596b=await _0x4ff835[_0x5b4215(0x170)](_0x118f0a,'1','EX',_0x5e0c7d,'NX');if(_0x17596b==='OK'){_0x5a0f7c=_0xb67354;break;}}else{const _0x4a828c=this['_buildIssuedKey'](_0x2963be),_0x4e09ad=await _0x4ff835[_0x5b4215(0x1ee)](_0x4a828c,_0xb67354);if(_0x3d02c8[_0x5b4215(0x132)](_0x4e09ad,0x1)){_0x5a0f7c=_0xb67354;break;}}}if(_0x3d02c8[_0x5b4215(0x1af)](_0x5a0f7c,null))throw new IdGeneratorError('IDGEN_UNIQUE_RETRY_EXHAUSTED','Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x174267+_0x5b4215(0xfc),{'resource':_0x2963be,'pattern':_0x243bf0,'maxRetry':_0x174267});}const _0x443826={'value':_0x5a0f7c,'resource':_0x2963be,'pattern':_0x243bf0,'attemptCount':_0x5797f5,'generatedAt':new Date()[_0x5b4215(0x204)]()};_0x5e0c7d&&_0x29e900&&(_0x443826['expiresAt']=new Date(Date[_0x5b4215(0x12d)]()+_0x5e0c7d*0x3e8)['toISOString']());const _0x5e6742=await this['_storeIdemCacheNX'](_0x578bb1,_0x443826);if(!_0x5e6742[_0x5b4215(0x1a8)])return _0x29e900&&await this['_undoRandomReservation'](_0x2963be,_0x5a0f7c,_0x5e0c7d),logger['info']({'event':_0x3d02c8[_0x5b4215(0x11a)],'resource':_0x2963be,'pattern':_0x243bf0,'value':_0x5a0f7c},_0x5b4215(0x163)),_0x5e6742[_0x5b4215(0x144)];return logger[_0x5b4215(0x10c)]({'event':_0x3d02c8[_0x5b4215(0x18a)],'resource':_0x2963be,'pattern':_0x243bf0,'attemptCount':_0x5797f5,'ensureUnique':_0x29e900,'ttl':_0x5e0c7d||0x0},_0x5b4215(0x1b6)+_0x5a0f7c),_0x443826;}async[a0_0x13a74b(0x104)](_0x2869df){const _0x438abf=a0_0x13a74b,_0x499fa6={'jKsEM':function(_0x1d210e,_0x1d155c){return _0x1d210e===_0x1d155c;}},_0x422eac=_0x2869df[_0x438abf(0x18b)]==null?this[_0x438abf(0x17d)]:_0x2869df[_0x438abf(0x18b)];if(!Number[_0x438abf(0x107)](_0x422eac)||_0x422eac<MIN_PIN_DIGITS||_0x422eac>MAX_PIN_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_DIGITS','Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x422eac+')');const _0x1a768e='9'[_0x438abf(0x15b)](_0x422eac);return this['random']({'resource':_0x2869df[_0x438abf(0x18c)],'pattern':_0x1a768e,'ensureUnique':_0x499fa6['jKsEM'](_0x2869df[_0x438abf(0x1a2)],!![]),'ttl':_0x2869df['ttl'],'maxRetry':_0x2869df[_0x438abf(0x100)],'idempotencyKey':_0x2869df['idempotencyKey']});}async[a0_0x13a74b(0x13f)](_0x4da21e){const _0x306870=a0_0x13a74b,_0x5bf93d=_0x4da21e['pattern']||this[_0x306870(0x161)];return this['random']({'resource':_0x4da21e['resource'],'pattern':_0x5bf93d,'ensureUnique':_0x4da21e[_0x306870(0x1a2)]!==![],'ttl':_0x4da21e['ttl'],'maxRetry':_0x4da21e['maxRetry'],'idempotencyKey':_0x4da21e['idempotencyKey']});}async[a0_0x13a74b(0x16e)](_0xd72cb7){const _0x56c548=a0_0x13a74b,_0xc45780={'JkLvT':function(_0x237537,_0x4191f3){return _0x237537!==_0x4191f3;}},_0x4d9e02=_0xd72cb7['pattern']||this['defaultCodePattern'];return this['random']({'resource':_0xd72cb7['resource'],'pattern':_0x4d9e02,'ensureUnique':_0xc45780['JkLvT'](_0xd72cb7[_0x56c548(0x1a2)],![]),'ttl':_0xd72cb7[_0x56c548(0x108)],'maxRetry':_0xd72cb7[_0x56c548(0x100)],'idempotencyKey':_0xd72cb7[_0x56c548(0x223)]});}async['consume'](_0x545133){const _0x6e10d6=a0_0x13a74b,_0xe042b1={'hUZME':_0x6e10d6(0x222),'xvEJi':'value\x20is\x20required','Prkcx':function(_0x41fea6,_0x25fa98){return _0x41fea6+_0x25fa98;},'bzaRI':_0x6e10d6(0x1ca)};if(!this['enabled'])throw new IdGeneratorError(_0x6e10d6(0x19e),'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x545133['resource']);if(typeof _0x545133['value']!==_0x6e10d6(0x1c6)||_0x545133[_0x6e10d6(0x1a9)]['length']===0x0)throw new IdGeneratorError(_0xe042b1[_0x6e10d6(0x1f4)],_0xe042b1[_0x6e10d6(0x12a)]);const {resource:_0x10b38e,value:_0x428e46}=_0x545133,_0x493483=redisClient['getClient'](),_0x4416d7=this[_0x6e10d6(0x165)](_0x10b38e,_0x428e46),_0x23450b=this[_0x6e10d6(0x205)](_0x10b38e),[_0x45b918,_0x5bdec6]=await Promise['all']([_0x493483['del'](_0x4416d7),_0x493483[_0x6e10d6(0x11f)](_0x23450b,_0x428e46)]),_0x5120a0=_0xe042b1[_0x6e10d6(0x1e7)](_0x45b918,_0x5bdec6)>0x0;return logger['info']({'event':_0xe042b1['bzaRI'],'resource':_0x10b38e,'value':_0x428e46,'consumed':_0x5120a0},'ID\x20Generator\x20consumed:\x20'+_0x428e46),{'consumed':_0x5120a0,'resource':_0x10b38e,'value':_0x428e46,'consumedAt':new Date()[_0x6e10d6(0x204)]()};}async[a0_0x13a74b(0x1ea)](_0x141f88){const _0xbf1fa1=a0_0x13a74b,_0x566016={'KThJn':function(_0x548d14,_0x5d7c4d){return _0x548d14===_0x5d7c4d;},'yVjCc':_0xbf1fa1(0x1c5),'yOmfY':_0xbf1fa1(0x147),'HCtps':function(_0x8caf57,_0x45c589,_0xb4f311){return _0x8caf57(_0x45c589,_0xb4f311);},'ggvIu':function(_0x400dd9,_0x16421c){return _0x400dd9||_0x16421c;},'LGBOS':'random','KldIi':function(_0x5aa509,_0x29cda3){return _0x5aa509||_0x29cda3;},'BWTVZ':_0xbf1fa1(0x182)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x141f88['resource']);const _0x52db90=_0x141f88['mode']||'number',_0x1bb200=redisClient['getClient']();if(_0x566016['KThJn'](_0x52db90,_0x566016['yVjCc'])){const _0x2e78e5=(_0x141f88['format']||_0xbf1fa1(0xfd))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x2e78e5))throw new IdGeneratorError(_0x566016[_0xbf1fa1(0x1a0)],'Invalid\x20format:\x20'+_0x141f88[_0xbf1fa1(0x10a)]);const {formatKey:_0x111397}=this[_0xbf1fa1(0x1a1)](_0x2e78e5,_0x141f88[_0xbf1fa1(0x210)]||''),_0x416780=this[_0xbf1fa1(0x1d2)](_0x141f88['resource'],_0x111397),_0x1066f0=this['_buildReuseKey'](_0x141f88[_0xbf1fa1(0x18c)],_0x111397),[_0x175ec0,_0x18d5bd]=await Promise[_0xbf1fa1(0x1ce)]([_0x1bb200['get'](_0x416780),_0x1bb200['zcard'](_0x1066f0)]);return{'resource':_0x141f88['resource'],'mode':_0x566016[_0xbf1fa1(0x1ab)],'formatKey':_0x111397,'currentCounter':_0x566016['HCtps'](parseInt,_0x175ec0,0xa)||0x0,'reusePoolSize':_0x566016[_0xbf1fa1(0x112)](_0x18d5bd,0x0)};}if(_0x52db90===_0x566016['LGBOS']){const _0x52f10f=this[_0xbf1fa1(0x205)](_0x141f88[_0xbf1fa1(0x18c)]),_0x519ba3=await _0x1bb200[_0xbf1fa1(0x15f)](_0x52f10f);return{'resource':_0x141f88[_0xbf1fa1(0x18c)],'mode':_0x566016['LGBOS'],'issuedCount':_0x566016['KldIi'](_0x519ba3,0x0)};}throw new IdGeneratorError(_0x566016['BWTVZ'],_0xbf1fa1(0x134)+_0x52db90);}async[a0_0x13a74b(0x1d3)](_0x3c13c7){const _0x55c8ac=a0_0x13a74b,_0x52688b={'dcicw':function(_0x494c15,_0x390808){return _0x494c15>_0x390808;}},_0xd2bdb2=await this['peek'](_0x3c13c7);if(_0xd2bdb2['mode']===_0x55c8ac(0x1c5)){const _0x4c1ed5=redisClient[_0x55c8ac(0x216)](),_0x5c0dec=this[_0x55c8ac(0x1d1)](_0x3c13c7['resource'],_0xd2bdb2['formatKey']),_0x5235bc=this[_0x55c8ac(0x117)](_0x3c13c7['resource'],_0xd2bdb2['formatKey']),[_0x2adb94,_0x34922f]=await Promise[_0x55c8ac(0x1ce)]([_0x4c1ed5['hgetall'](_0x5c0dec),_0x4c1ed5[_0x55c8ac(0x17c)](_0x5235bc,0x0,-0x1)]);return{..._0xd2bdb2,'reusePoolValues':_0x34922f[_0x55c8ac(0x21f)](_0x555774=>parseInt(_0x555774,0xa)),'meta':_0x2adb94&&_0x52688b['dcicw'](Object[_0x55c8ac(0x1a7)](_0x2adb94)['length'],0x0)?_0x2adb94:null};}return _0xd2bdb2;}async[a0_0x13a74b(0x139)](_0x2baaf1){const _0x1829bf=a0_0x13a74b,_0x2eceba={'HZvPF':'IDGEN_RESET_NOT_ALLOWED','yNzQx':_0x1829bf(0x147),'WqiRT':'number','IRTfQ':_0x1829bf(0x21c),'krxme':_0x1829bf(0x159),'DNtbU':function(_0x503306,_0x53860e){return _0x503306===_0x53860e;},'gWPdi':_0x1829bf(0x194),'pxIuf':'IDGEN_INVALID_MODE'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x1829bf(0x186));if(!this['allowReset'])throw new IdGeneratorError(_0x2eceba[_0x1829bf(0x156)],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this['_validateResource'](_0x2baaf1['resource']);const _0x175473=_0x2baaf1[_0x1829bf(0x162)]||_0x1829bf(0x1c5),_0x2593a5=redisClient[_0x1829bf(0x216)]();if(_0x175473==='number'){const _0x4a0afd=(_0x2baaf1[_0x1829bf(0x10a)]||_0x1829bf(0xfd))[_0x1829bf(0x135)]();if(!ALLOWED_FORMATS[_0x1829bf(0x120)](_0x4a0afd))throw new IdGeneratorError(_0x2eceba[_0x1829bf(0x20e)],_0x1829bf(0x1fd)+_0x2baaf1['format']);const {formatKey:_0x3e68f7}=this[_0x1829bf(0x1a1)](_0x4a0afd,_0x2baaf1['prefix']||''),_0x5f0cc4=this['_buildSeqKey'](_0x2baaf1['resource'],_0x3e68f7),_0xb6d8c9=this[_0x1829bf(0x117)](_0x2baaf1['resource'],_0x3e68f7),_0x5549b1=this['_buildMetaKey'](_0x2baaf1['resource'],_0x3e68f7);return await _0x2593a5['del'](_0x5f0cc4,_0xb6d8c9,_0x5549b1),logger[_0x1829bf(0x133)]({'event':'idgen_reset','resource':_0x2baaf1[_0x1829bf(0x18c)],'mode':_0x1829bf(0x1c5),'formatKey':_0x3e68f7},_0x1829bf(0x11c)+_0x2baaf1['resource']+':'+_0x3e68f7),{'reset':!![],'resource':_0x2baaf1[_0x1829bf(0x18c)],'mode':_0x2eceba[_0x1829bf(0x20c)],'formatKey':_0x3e68f7,'deletedKeys':[_0x1829bf(0x1d5),_0x2eceba['IRTfQ'],_0x2eceba['krxme']]};}if(_0x2eceba['DNtbU'](_0x175473,_0x1829bf(0x126))){const _0x1e4060=this[_0x1829bf(0x205)](_0x2baaf1[_0x1829bf(0x18c)]);return await _0x2593a5['del'](_0x1e4060),logger[_0x1829bf(0x133)]({'event':_0x1829bf(0x137),'resource':_0x2baaf1['resource'],'mode':'random'},_0x1829bf(0x202)+_0x2baaf1[_0x1829bf(0x18c)]),{'reset':!![],'resource':_0x2baaf1[_0x1829bf(0x18c)],'mode':'random','deletedKeys':[_0x2eceba['gWPdi']]};}throw new IdGeneratorError(_0x2eceba[_0x1829bf(0x16c)],_0x1829bf(0x134)+_0x175473);}}const instance=new IdGenerator();function a0_0x1366(_0x5e5183,_0x4e5465){_0x5e5183=_0x5e5183-0xfc;const _0x309348=a0_0x3093();let _0x136648=_0x309348[_0x5e5183];if(a0_0x1366['TvFYXK']===undefined){var _0x338707=function(_0x4e6b52){const _0xdf647e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x14c57f='',_0x3ae3f3='';for(let _0x5801d9=0x0,_0x39a0aa,_0x2c6bbf,_0x68eea3=0x0;_0x2c6bbf=_0x4e6b52['charAt'](_0x68eea3++);~_0x2c6bbf&&(_0x39a0aa=_0x5801d9%0x4?_0x39a0aa*0x40+_0x2c6bbf:_0x2c6bbf,_0x5801d9++%0x4)?_0x14c57f+=String['fromCharCode'](0xff&_0x39a0aa>>(-0x2*_0x5801d9&0x6)):0x0){_0x2c6bbf=_0xdf647e['indexOf'](_0x2c6bbf);}for(let _0x387554=0x0,_0x3843dd=_0x14c57f['length'];_0x387554<_0x3843dd;_0x387554++){_0x3ae3f3+='%'+('00'+_0x14c57f['charCodeAt'](_0x387554)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ae3f3);};a0_0x1366['qBvEjO']=_0x338707,a0_0x1366['kUabPE']={},a0_0x1366['TvFYXK']=!![];}const _0x1905a8=_0x309348[0x0],_0x147ae0=_0x5e5183+_0x1905a8,_0x265da7=a0_0x1366['kUabPE'][_0x147ae0];return!_0x265da7?(_0x136648=a0_0x1366['qBvEjO'](_0x136648),a0_0x1366['kUabPE'][_0x147ae0]=_0x136648):_0x136648=_0x265da7,_0x136648;}instance['IdGeneratorError']=IdGeneratorError,module[a0_0x13a74b(0x180)]=instance,module[a0_0x13a74b(0x180)][a0_0x13a74b(0x131)]=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x41c7d9=a0_0x5a84;function a0_0x5a84(_0x2d0f64,_0x36100b){_0x2d0f64=_0x2d0f64-0x1e1;const _0x1bd4eb=a0_0x1bd4();let _0x5a846a=_0x1bd4eb[_0x2d0f64];if(a0_0x5a84['NebfQU']===undefined){var _0x2aa61b=function(_0xe5db45){const _0x3baba9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5897d3='',_0x42407f='';for(let _0x5b079e=0x0,_0x49f15d,_0x20e643,_0x54c444=0x0;_0x20e643=_0xe5db45['charAt'](_0x54c444++);~_0x20e643&&(_0x49f15d=_0x5b079e%0x4?_0x49f15d*0x40+_0x20e643:_0x20e643,_0x5b079e++%0x4)?_0x5897d3+=String['fromCharCode'](0xff&_0x49f15d>>(-0x2*_0x5b079e&0x6)):0x0){_0x20e643=_0x3baba9['indexOf'](_0x20e643);}for(let _0x4faf66=0x0,_0x254b4e=_0x5897d3['length'];_0x4faf66<_0x254b4e;_0x4faf66++){_0x42407f+='%'+('00'+_0x5897d3['charCodeAt'](_0x4faf66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x42407f);};a0_0x5a84['zXsXyP']=_0x2aa61b,a0_0x5a84['qjuxkI']={},a0_0x5a84['NebfQU']=!![];}const _0x5a5816=_0x1bd4eb[0x0],_0x524b62=_0x2d0f64+_0x5a5816,_0x528cd4=a0_0x5a84['qjuxkI'][_0x524b62];return!_0x528cd4?(_0x5a846a=a0_0x5a84['zXsXyP'](_0x5a846a),a0_0x5a84['qjuxkI'][_0x524b62]=_0x5a846a):_0x5a846a=_0x528cd4,_0x5a846a;}function a0_0x1bd4(){const _0x525672=['C3bSAxq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','mJu1nte0ohzADwDQvW','C3rVCMu','yNvPBgrezxrLCM1PBMLZDgLJs2v5','lI9SB2DNzxi','surftvbpvevoq1LFvfrm','uKvpCwy','z2v0q2XPzw50','x2vUywjSzwq','swrLBxbVDgvUy3KGy2fJAguGseLu','C2v0zxG','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','x2vUC3vYzuLUAxrPywXPEMvK','Dhj1zq','nJu1mdqYmMHHz0rzBG','x2LUAxrdB25MAwC','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','n1rAs3fesq','AwrLBxbVDgvUy3LFAgL0','x2LUAxrPywXPEMvK','zw52','AwrLBxbVDgvUy3LFC3rVCMu','x3r0Ba','uw9qvg8','Dw5RBM93BG','zgvIDwC','surftvbpvevoq1LFru5bqKXfra','DvzXtei','zw5HyMXLza','zxHWB3j0CW','nJeWnJG4DfvTzvHR','C3rHDhvZq29Kzq','y3j5ChrV','ntKZmtqWC2DYruTS','DhrS','zMLSDgvY','mZi5mJqZnu1AA09jrq','Cgf0Aa','CMy6AwrLBtO','mJiZmtaXnNbZAxfTBq','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','z2v0','yKnVrhe','zxjYB3i','mtCWnZu2mdb0AeXKDMy','zgvMyxvSDa','swrLBxbVDgvUy3KGy2fJAguGtuLtuW'];a0_0x1bd4=function(){return _0x525672;};return a0_0x1bd4();}(function(_0x673201,_0x2f588d){const _0x21c68e=a0_0x5a84,_0xbeb5c1=_0x673201();while(!![]){try{const _0x1d9c74=parseInt(_0x21c68e(0x20d))/0x1+parseInt(_0x21c68e(0x210))/0x2+parseInt(_0x21c68e(0x1e6))/0x3+-parseInt(_0x21c68e(0x1f0))/0x4+parseInt(_0x21c68e(0x1e3))/0x5+-parseInt(_0x21c68e(0x1fd))/0x6*(-parseInt(_0x21c68e(0x200))/0x7)+-parseInt(_0x21c68e(0x1eb))/0x8;if(_0x1d9c74===_0x2f588d)break;else _0xbeb5c1['push'](_0xbeb5c1['shift']());}catch(_0x4cf312){_0xbeb5c1['push'](_0xbeb5c1['shift']());}}}(a0_0x1bd4,0x994cd));const redisClient=require('./redis-client'),{logger}=require(a0_0x41c7d9(0x1f3)),crypto=require(a0_0x41c7d9(0x20f));class IdempotencyManager{constructor(){const _0x41ebd7=a0_0x41c7d9;this['_enabled']=null,this['_ttl']=null,this[_0x41ebd7(0x202)]=![];}[a0_0x41c7d9(0x1fe)](){const _0x479253=a0_0x41c7d9,_0x47d68a={'duTVz':function(_0x36fb75,_0x3b17fb){return _0x36fb75===_0x3b17fb;},'bCoDq':_0x479253(0x1fc),'KGmXf':function(_0x33eafa,_0x4d2e25,_0x37d53b){return _0x33eafa(_0x4d2e25,_0x37d53b);},'NHDWn':'idempotency_config_init'};this['_enabled']=_0x47d68a['duTVz'](process[_0x479253(0x203)][_0x479253(0x209)],_0x47d68a[_0x479253(0x1e9)]),this[_0x479253(0x205)]=_0x47d68a['KGmXf'](parseInt,process[_0x479253(0x203)][_0x479253(0x1f4)],0xa)||0x12c,this[_0x479253(0x202)]=!![],logger['info']({'event':_0x47d68a['NHDWn'],'enabled':this['_enabled'],'ttl':this['_ttl']},_0x479253(0x1fa)+this['_enabled']+',\x20TTL:\x20'+this[_0x479253(0x205)]+'s');}[a0_0x41c7d9(0x1fb)](){const _0x5afdbc=a0_0x41c7d9;!this[_0x5afdbc(0x202)]&&this[_0x5afdbc(0x1fe)]();}get[a0_0x41c7d9(0x20b)](){const _0x21a334=a0_0x41c7d9;return this['_ensureInitialized'](),this[_0x21a334(0x1f7)];}get['ttl'](){return this['_ensureInitialized'](),this['_ttl'];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x3bb043,_0x21fef8){const _0x3fe694=a0_0x41c7d9,_0x4bc254={'uVqLB':_0x3fe694(0x1ec),'UrFQo':_0x3fe694(0x207)},_0xe1becd=_0x21fef8[_0x3fe694(0x1e4)][_0x3fe694(0x1ee)]('/')[_0x3fe694(0x1e2)](Boolean),_0x5491aa=_0xe1becd[0x0]||_0x4bc254[_0x3fe694(0x20a)],_0x2a577c=_0xe1becd[0x1]||_0x4bc254['UrFQo'],_0x28948b=_0xe1becd[0x2]||_0x4bc254['UrFQo'];return _0x3fe694(0x1e5)+_0x5491aa+':'+_0x2a577c+':'+_0x28948b+':'+_0x3bb043;}async[a0_0x41c7d9(0x1f1)](_0x1f315d,_0x4cb053){const _0xd8ecc0=a0_0x41c7d9,_0x2cbd54={'PhGME':_0xd8ecc0(0x1ff)};if(!this[_0xd8ecc0(0x20b)])return![];try{const _0x3613ac=redisClient[_0xd8ecc0(0x1f6)]();return await _0x3613ac[_0xd8ecc0(0x1f9)](_0x1f315d,this[_0xd8ecc0(0x1e1)],JSON['stringify'](_0x4cb053)),logger[_0xd8ecc0(0x208)]({'event':_0xd8ecc0(0x204),'key':_0x1f315d,'ttl':this['ttl'],'statusCode':_0x4cb053[_0xd8ecc0(0x20e)]},_0x2cbd54['PhGME']),!![];}catch(_0x4df0e6){return logger['error']({'event':'idempotency_store_error','key':_0x1f315d,'error':_0x4df0e6['message']},_0xd8ecc0(0x1ef)+_0x4df0e6['message']),![];}}async['retrieve'](_0xf9e4e5){const _0x43dcb3=a0_0x41c7d9,_0x4431e6={'uSaCN':'idempotency_miss','QoPTo':_0x43dcb3(0x1ed),'REOqf':'idempotency_retrieve_error'};if(!this['enabled'])return null;try{const _0x13a8d4=redisClient['getClient'](),_0x40ac49=await _0x13a8d4[_0x43dcb3(0x1e8)](_0xf9e4e5);if(_0x40ac49)return logger['info']({'event':_0x43dcb3(0x201),'key':_0xf9e4e5},_0x43dcb3(0x1f8)),JSON['parse'](_0x40ac49);return logger[_0x43dcb3(0x208)]({'event':_0x4431e6['uSaCN'],'key':_0xf9e4e5},_0x4431e6[_0x43dcb3(0x206)]),null;}catch(_0x237aff){return logger[_0x43dcb3(0x1ea)]({'event':_0x4431e6[_0x43dcb3(0x1f5)],'key':_0xf9e4e5,'error':_0x237aff['message']},_0x43dcb3(0x1e7)+_0x237aff['message']),null;}}['generateKey'](_0x1c7700='req'){return _0x1c7700+'_'+crypto['randomUUID']();}[a0_0x41c7d9(0x1f2)](_0x533978,_0xa66756,_0x49e9b6){return _0x533978+':'+_0xa66756+':'+_0x49e9b6;}}module[a0_0x41c7d9(0x20c)]=new IdempotencyManager();
1
+ 'use strict';const a0_0x5370e6=a0_0x5c0b;(function(_0x50e4cc,_0x190a61){const _0x1de05a=a0_0x5c0b,_0x2b3b58=_0x50e4cc();while(!![]){try{const _0x4d47d9=-parseInt(_0x1de05a(0x1be))/0x1*(parseInt(_0x1de05a(0x1d6))/0x2)+parseInt(_0x1de05a(0x1c4))/0x3+parseInt(_0x1de05a(0x1cd))/0x4+parseInt(_0x1de05a(0x1d1))/0x5+-parseInt(_0x1de05a(0x1d5))/0x6*(parseInt(_0x1de05a(0x1bf))/0x7)+parseInt(_0x1de05a(0x1a9))/0x8+-parseInt(_0x1de05a(0x1c7))/0x9*(parseInt(_0x1de05a(0x1d4))/0xa);if(_0x4d47d9===_0x190a61)break;else _0x2b3b58['push'](_0x2b3b58['shift']());}catch(_0x324d85){_0x2b3b58['push'](_0x2b3b58['shift']());}}}(a0_0x2104,0x27a2a));function a0_0x5c0b(_0x47aa38,_0x27d5e3){_0x47aa38=_0x47aa38-0x1a8;const _0x210426=a0_0x2104();let _0x5c0baa=_0x210426[_0x47aa38];if(a0_0x5c0b['mDiUPF']===undefined){var _0x4723d2=function(_0xbd2137){const _0x180559='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x84441='',_0x5457c2='';for(let _0x50f3d3=0x0,_0xdccbbb,_0x28df3d,_0x1e9c8e=0x0;_0x28df3d=_0xbd2137['charAt'](_0x1e9c8e++);~_0x28df3d&&(_0xdccbbb=_0x50f3d3%0x4?_0xdccbbb*0x40+_0x28df3d:_0x28df3d,_0x50f3d3++%0x4)?_0x84441+=String['fromCharCode'](0xff&_0xdccbbb>>(-0x2*_0x50f3d3&0x6)):0x0){_0x28df3d=_0x180559['indexOf'](_0x28df3d);}for(let _0x27a854=0x0,_0x4908c0=_0x84441['length'];_0x27a854<_0x4908c0;_0x27a854++){_0x5457c2+='%'+('00'+_0x84441['charCodeAt'](_0x27a854)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5457c2);};a0_0x5c0b['xWrYyN']=_0x4723d2,a0_0x5c0b['xmhQvO']={},a0_0x5c0b['mDiUPF']=!![];}const _0x393e75=_0x210426[0x0],_0x277932=_0x47aa38+_0x393e75,_0x2bb5ea=a0_0x5c0b['xmhQvO'][_0x277932];return!_0x2bb5ea?(_0x5c0baa=a0_0x5c0b['xWrYyN'](_0x5c0baa),a0_0x5c0b['xmhQvO'][_0x277932]=_0x5c0baa):_0x5c0baa=_0x2bb5ea,_0x5c0baa;}const redisClient=require(a0_0x5370e6(0x1c2)),{logger}=require(a0_0x5370e6(0x1b7)),crypto=require(a0_0x5370e6(0x1b1));class IdempotencyManager{constructor(){const _0x42a10b=a0_0x5370e6;this['_enabled']=null,this[_0x42a10b(0x1aa)]=null,this[_0x42a10b(0x1af)]=![];}[a0_0x5370e6(0x1d3)](){const _0x3a65f9=a0_0x5370e6,_0x391cf4={'CHCQL':_0x3a65f9(0x1ca),'bfNre':function(_0x489b40,_0xc5097a,_0x1dad84){return _0x489b40(_0xc5097a,_0x1dad84);},'QPOzq':_0x3a65f9(0x1c1)};this[_0x3a65f9(0x1c3)]=process['env'][_0x3a65f9(0x1cc)]===_0x391cf4['CHCQL'],this[_0x3a65f9(0x1aa)]=_0x391cf4[_0x3a65f9(0x1b9)](parseInt,process[_0x3a65f9(0x1ab)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x391cf4[_0x3a65f9(0x1ac)],'enabled':this['_enabled'],'ttl':this[_0x3a65f9(0x1aa)]},_0x3a65f9(0x1cf)+this[_0x3a65f9(0x1c3)]+',\x20TTL:\x20'+this[_0x3a65f9(0x1aa)]+'s');}[a0_0x5370e6(0x1cb)](){const _0x17a462=a0_0x5370e6;!this['_initialized']&&this[_0x17a462(0x1d3)]();}get[a0_0x5370e6(0x1b0)](){const _0x455a27=a0_0x5370e6;return this[_0x455a27(0x1cb)](),this[_0x455a27(0x1c3)];}get['ttl'](){const _0x3c6e6d=a0_0x5370e6;return this[_0x3c6e6d(0x1cb)](),this['_ttl'];}[a0_0x5370e6(0x1c8)](){return this['enabled'];}[a0_0x5370e6(0x1c5)](_0x4f03c4,_0x55145f){const _0x29e512=a0_0x5370e6,_0xd11456={'Bcdhe':'unknown'},_0x34f25a=_0x55145f[_0x29e512(0x1ad)]['split']('/')['filter'](Boolean),_0x3fac1a=_0x34f25a[0x0]||'default',_0x1f5675=_0x34f25a[0x1]||_0xd11456['Bcdhe'],_0x2b0f89=_0x34f25a[0x2]||'unknown';return'rf:idem:'+_0x3fac1a+':'+_0x1f5675+':'+_0x2b0f89+':'+_0x4f03c4;}async[a0_0x5370e6(0x1b3)](_0x24982a,_0x1cd933){const _0x94c0c4=a0_0x5370e6,_0x466726={'WKCxy':_0x94c0c4(0x1d2)};if(!this[_0x94c0c4(0x1b0)])return![];try{const _0x2d73e8=redisClient[_0x94c0c4(0x1bc)]();return await _0x2d73e8['setex'](_0x24982a,this['ttl'],JSON['stringify'](_0x1cd933)),logger[_0x94c0c4(0x1d0)]({'event':'idempotency_store','key':_0x24982a,'ttl':this[_0x94c0c4(0x1b4)],'statusCode':_0x1cd933['statusCode']},'Idempotency\x20response\x20stored'),!![];}catch(_0x1245a7){return logger[_0x94c0c4(0x1bb)]({'event':_0x466726['WKCxy'],'key':_0x24982a,'error':_0x1245a7['message']},_0x94c0c4(0x1a8)+_0x1245a7[_0x94c0c4(0x1bd)]),![];}}async['retrieve'](_0x2d41c3){const _0x55387d=a0_0x5370e6,_0x1261b={'Lclam':_0x55387d(0x1b2),'jZHCz':_0x55387d(0x1c6)};if(!this[_0x55387d(0x1b0)])return null;try{const _0x13b64d=redisClient['getClient'](),_0xc779ee=await _0x13b64d['get'](_0x2d41c3);if(_0xc779ee)return logger[_0x55387d(0x1b8)]({'event':_0x55387d(0x1b5),'key':_0x2d41c3},_0x1261b[_0x55387d(0x1ce)]),JSON[_0x55387d(0x1b6)](_0xc779ee);return logger[_0x55387d(0x1d0)]({'event':'idempotency_miss','key':_0x2d41c3},_0x55387d(0x1ae)),null;}catch(_0x3762d7){return logger['error']({'event':_0x1261b['jZHCz'],'key':_0x2d41c3,'error':_0x3762d7[_0x55387d(0x1bd)]},_0x55387d(0x1ba)+_0x3762d7[_0x55387d(0x1bd)]),null;}}[a0_0x5370e6(0x1c0)](_0x2bb59f=a0_0x5370e6(0x1c9)){return _0x2bb59f+'_'+crypto['randomUUID']();}['buildDeterministicKey'](_0x35cd8c,_0x44090f,_0x2381e5){return _0x35cd8c+':'+_0x44090f+':'+_0x2381e5;}}module['exports']=new IdempotencyManager();function a0_0x2104(){const _0x427499=['uvbpENe','Cgf0Aa','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','x2LUAxrPywXPEMvK','zw5HyMXLza','y3j5ChrV','swrLBxbVDgvUy3KGy2fJAguGseLu','C3rVCMu','DhrS','AwrLBxbVDgvUy3LFAgL0','CgfYC2u','lI9SB2DNzxi','Aw5MBW','yMzoCMu','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','zxjYB3i','z2v0q2XPzw50','BwvZC2fNzq','mvnyugzdDG','odC0ntHjuuf3ueu','z2vUzxjHDgvlzxK','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','lI9YzwrPCY1JBgLLBNq','x2vUywjSzwq','mtGYodyYz0D2A25n','yNvPBgrlzxK','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','mJaXntfjr0vsBhO','AxnfBMfIBgvK','CMvX','Dhj1zq','x2vUC3vYzuLUAxrPywXPEMvK','surftvbpvevoq1LFru5bqKXfra','nJu1mZqWzLD5z2Xw','tgnSyw0','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','zgvIDwC','mti5odqWmgPcBgDWrW','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','x2LUAxrdB25MAwC','mti0mfvUrvLquq','mtj6ufH4CNe','mZm1otu0vLPUCNzm','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','mte4nZGYnfHqAw5yuG','x3r0Ba','zw52'];a0_0x2104=function(){return _0x427499;};return a0_0x2104();}
@@ -1 +1 @@
1
- const a0_0x2d1c74=a0_0x5ee0;(function(_0x88a9b1,_0x541a53){const _0x15a582=a0_0x5ee0,_0x5aec2c=_0x88a9b1();while(!![]){try{const _0x2b20dd=parseInt(_0x15a582(0xcb))/0x1*(-parseInt(_0x15a582(0xc2))/0x2)+parseInt(_0x15a582(0xc5))/0x3+-parseInt(_0x15a582(0xc9))/0x4+-parseInt(_0x15a582(0xd6))/0x5*(parseInt(_0x15a582(0xd3))/0x6)+-parseInt(_0x15a582(0xba))/0x7*(-parseInt(_0x15a582(0xc3))/0x8)+parseInt(_0x15a582(0xd0))/0x9*(parseInt(_0x15a582(0xca))/0xa)+parseInt(_0x15a582(0xb5))/0xb;if(_0x2b20dd===_0x541a53)break;else _0x5aec2c['push'](_0x5aec2c['shift']());}catch(_0x54c493){_0x5aec2c['push'](_0x5aec2c['shift']());}}}(a0_0x14bf,0xb6349));function a0_0x14bf(){const _0x7d257e=['mJi3ndG0mejos05yzW','DMfSAwrHDgvsB3C','vMPUCLK','DMfSAwrHDgvqAg9Uzq','mtK1mtK3mMPXuvrXrq','mteWwxHguLji','mti3t3bmqvjh','q1buquy','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','ChvZAa','AM9PBG','ndK4odm0tfHLrKXu','AgfZ','zM9YrwfJAa','mtG4ndeYnKL4y0fRDW','A2v5CW','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','mtbbrvPgsgW','wwDfB2u','BNvTyMvY','yvHusNK','s3f0qMW','lI9SB2DNzxi','mteYmtG0mZHdAvz2rwi','DMfSAwrHDgvfBwfPBa','z2v0','sw52ywXPzcbvuKWGzM9YBwf0','sw52ywXPzcbUDw1IzxiGzM9YBwf0','ndm1nZmZoxzowM9Hwq','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','DgvZDa','zM9YBwf0','yMf0y2HwywXPzgf0zvjVD3m','Benxu1e','BgvUz3rO','CgrVzuW','mtGWnZH6tvzjruu','ogTNz2ngDq','Aw5MBW'];a0_0x14bf=function(){return _0x7d257e;};return a0_0x14bf();}const {logger}=require(a0_0x2d1c74(0xb4));class ImportValidator{[a0_0x2d1c74(0xc6)](_0x3ac0b2,_0x235114=[],_0x2d11ac={}){const _0x1b276a=a0_0x2d1c74,_0x6e6df7={'YgEoe':function(_0x2ed105,_0x4c39cb){return _0x2ed105===_0x4c39cb;},'gYIAC':'required','pdoeL':function(_0x1fbc24,_0x32263f){return _0x1fbc24===_0x32263f;},'xNdKn':function(_0x1e0db9,_0x4e4468){return _0x1e0db9===_0x4e4468;}},_0x6f797c=[];return _0x235114['forEach'](_0x53cca3=>{const _0x529c16=a0_0x5ee0,_0x316aba=_0x3ac0b2[_0x53cca3];(_0x6e6df7[_0x529c16(0xd7)](_0x316aba,null)||_0x316aba===undefined||_0x316aba==='')&&_0x6f797c[_0x529c16(0xce)]({'field':_0x53cca3,'type':_0x6e6df7['gYIAC'],'message':_0x529c16(0xbb)});}),Object[_0x1b276a(0xd4)](_0x2d11ac)[_0x1b276a(0xd2)](_0x820099=>{const _0x4147c6=_0x1b276a,_0x29ccd5=_0x3ac0b2[_0x820099],_0xf077ee=_0x2d11ac[_0x820099];if(_0x29ccd5===null||_0x6e6df7[_0x4147c6(0xc1)](_0x29ccd5,undefined)||_0x6e6df7['xNdKn'](_0x29ccd5,''))return;const _0xcfe085=this['validateFieldFormat'](_0x820099,_0x29ccd5,_0xf077ee);_0xcfe085&&_0x6f797c['push'](_0xcfe085);}),_0x6f797c;}['validateFieldFormat'](_0xf786c4,_0x1e0e1b,_0x31052a){const _0x2651e0=a0_0x2d1c74,_0x49c9ef={'lCWSQ':'email','MEbGo':'url','VXtGr':_0x2651e0(0xd8)};switch(_0x31052a){case _0x49c9ef[_0x2651e0(0xbf)]:return this[_0x2651e0(0xb6)](_0xf786c4,_0x1e0e1b);case'phone':return this[_0x2651e0(0xc8)](_0xf786c4,_0x1e0e1b);case _0x49c9ef['MEbGo']:return this['validateUrl'](_0xf786c4,_0x1e0e1b);case _0x49c9ef['VXtGr']:return this['validateNumber'](_0xf786c4,_0x1e0e1b);default:return null;}}['validateEmail'](_0x14c8b5,_0x14df0f){const _0x103103=a0_0x2d1c74,_0x1d1e2c={'aXTJy':'Invalid\x20email\x20format'},_0x581964=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x581964['test'](String(_0x14df0f)))return{'field':_0x14c8b5,'type':'format','message':_0x1d1e2c[_0x103103(0xd9)]};return null;}['validatePhone'](_0x494cee,_0x438c5f){const _0x217a5a=a0_0x2d1c74,_0x171f28={'KqtBl':function(_0x41e68d,_0x2d80c6){return _0x41e68d<_0x2d80c6;},'CpwXi':_0x217a5a(0xbd)},_0x5a74ed=String(_0x438c5f)['replace'](/\s+/g,''),_0x26e4f9=/^[\d\+\-\(\)]+$/;if(!_0x26e4f9[_0x217a5a(0xbc)](_0x5a74ed)||_0x171f28[_0x217a5a(0xda)](_0x5a74ed[_0x217a5a(0xc0)],0x8))return{'field':_0x494cee,'type':_0x171f28['CpwXi'],'message':'Invalid\x20phone\x20format'};return null;}['validateUrl'](_0x332494,_0x24fd34){const _0x9a80ca=a0_0x2d1c74,_0x101c51={'CPTAF':function(_0x2bf573,_0x23d581){return _0x2bf573(_0x23d581);},'zrJYh':_0x9a80ca(0xbd),'VjnrY':_0x9a80ca(0xb8)};try{return new URL(_0x101c51[_0x9a80ca(0xcc)](String,_0x24fd34)),null;}catch(_0x47d8d9){return{'field':_0x332494,'type':_0x101c51['zrJYh'],'message':_0x101c51[_0x9a80ca(0xc7)]};}}['validateNumber'](_0x2a3e1f,_0x181a7d){const _0x5c9a7b=a0_0x2d1c74,_0x48f07e={'nDenu':_0x5c9a7b(0xb9)};if(isNaN(_0x181a7d))return{'field':_0x2a3e1f,'type':_0x5c9a7b(0xbd),'message':_0x48f07e['nDenu']};return null;}['detectDuplicatesInFile'](_0xce20e1,_0x4e4754){const _0x353b6d=a0_0x2d1c74,_0x32e2be=new Map(),_0x400707=[];return _0xce20e1[_0x353b6d(0xd2)]((_0x496b9b,_0x5887ce)=>{const _0x5166a8=_0x353b6d,_0x544cf8=_0x4e4754['map'](_0x4169e2=>_0x496b9b[_0x4169e2])[_0x5166a8(0xcf)]('|');_0x32e2be[_0x5166a8(0xd1)](_0x544cf8)?_0x400707['push']({'rowIndex':_0x5887ce,'duplicateOf':_0x32e2be[_0x5166a8(0xb7)](_0x544cf8),'key':_0x544cf8}):_0x32e2be['set'](_0x544cf8,_0x5887ce);}),_0x400707;}[a0_0x2d1c74(0xbe)](_0x17bed0,_0x51e57c,_0xeed2fa){const _0x5b2495=a0_0x2d1c74,_0x430e22={'yxqoh':function(_0x53a13f,_0x359616){return _0x53a13f>_0x359616;},'ahDdm':_0x5b2495(0xcd)},_0x1987b0=[];return _0x17bed0['forEach']((_0x567591,_0x5b8f46)=>{const _0xe96e1e=this['validateRow'](_0x567591,_0x51e57c,_0xeed2fa);_0x430e22['yxqoh'](_0xe96e1e['length'],0x0)&&_0x1987b0['push']({'rowIndex':_0x5b8f46,'rowData':_0x567591,'errors':_0xe96e1e});}),logger[_0x5b2495(0xc4)]({'event':_0x5b2495(0xd5),'totalRows':_0x17bed0['length'],'errorCount':_0x1987b0['length']},_0x430e22['ahDdm']),_0x1987b0;}}function a0_0x5ee0(_0x31f014,_0x5bdccb){_0x31f014=_0x31f014-0xb4;const _0x14bfa1=a0_0x14bf();let _0x5ee0c2=_0x14bfa1[_0x31f014];if(a0_0x5ee0['pyDiIw']===undefined){var _0x786213=function(_0x1d7dd6){const _0x5d910a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5191f9='',_0x4252af='';for(let _0x4d04fd=0x0,_0x512b54,_0x4d7725,_0x1908ac=0x0;_0x4d7725=_0x1d7dd6['charAt'](_0x1908ac++);~_0x4d7725&&(_0x512b54=_0x4d04fd%0x4?_0x512b54*0x40+_0x4d7725:_0x4d7725,_0x4d04fd++%0x4)?_0x5191f9+=String['fromCharCode'](0xff&_0x512b54>>(-0x2*_0x4d04fd&0x6)):0x0){_0x4d7725=_0x5d910a['indexOf'](_0x4d7725);}for(let _0x2b03a2=0x0,_0x368cf2=_0x5191f9['length'];_0x2b03a2<_0x368cf2;_0x2b03a2++){_0x4252af+='%'+('00'+_0x5191f9['charCodeAt'](_0x2b03a2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4252af);};a0_0x5ee0['WWWSTF']=_0x786213,a0_0x5ee0['oeIQtq']={},a0_0x5ee0['pyDiIw']=!![];}const _0x9e06cf=_0x14bfa1[0x0],_0x48edbd=_0x31f014+_0x9e06cf,_0x481825=a0_0x5ee0['oeIQtq'][_0x48edbd];return!_0x481825?(_0x5ee0c2=a0_0x5ee0['WWWSTF'](_0x5ee0c2),a0_0x5ee0['oeIQtq'][_0x48edbd]=_0x5ee0c2):_0x5ee0c2=_0x481825,_0x5ee0c2;}module['exports']=new ImportValidator();
1
+ const a0_0x2338c2=a0_0x40dd;(function(_0x1d54ef,_0x4e9ae3){const _0xdf930c=a0_0x40dd,_0x1a1cef=_0x1d54ef();while(!![]){try{const _0x54f560=-parseInt(_0xdf930c(0xce))/0x1+parseInt(_0xdf930c(0xd1))/0x2*(parseInt(_0xdf930c(0xde))/0x3)+-parseInt(_0xdf930c(0xd4))/0x4+-parseInt(_0xdf930c(0xbf))/0x5*(parseInt(_0xdf930c(0xd6))/0x6)+parseInt(_0xdf930c(0xc8))/0x7+-parseInt(_0xdf930c(0xe5))/0x8+parseInt(_0xdf930c(0xbe))/0x9*(parseInt(_0xdf930c(0xdf))/0xa);if(_0x54f560===_0x4e9ae3)break;else _0x1a1cef['push'](_0x1a1cef['shift']());}catch(_0x3e8c9c){_0x1a1cef['push'](_0x1a1cef['shift']());}}}(a0_0x3445,0x1c3f9));const {logger}=require(a0_0x2338c2(0xc9));function a0_0x40dd(_0x3e7c6a,_0x4bc57e){_0x3e7c6a=_0x3e7c6a-0xbe;const _0x3445f8=a0_0x3445();let _0x40ddcb=_0x3445f8[_0x3e7c6a];if(a0_0x40dd['zWVDUM']===undefined){var _0x4f0145=function(_0x507bf7){const _0x36cdbb='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x340b6f='',_0x5073d0='';for(let _0x154ed9=0x0,_0x174b2b,_0xb28e64,_0x98126a=0x0;_0xb28e64=_0x507bf7['charAt'](_0x98126a++);~_0xb28e64&&(_0x174b2b=_0x154ed9%0x4?_0x174b2b*0x40+_0xb28e64:_0xb28e64,_0x154ed9++%0x4)?_0x340b6f+=String['fromCharCode'](0xff&_0x174b2b>>(-0x2*_0x154ed9&0x6)):0x0){_0xb28e64=_0x36cdbb['indexOf'](_0xb28e64);}for(let _0x1d4922=0x0,_0x31c93c=_0x340b6f['length'];_0x1d4922<_0x31c93c;_0x1d4922++){_0x5073d0+='%'+('00'+_0x340b6f['charCodeAt'](_0x1d4922)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x5073d0);};a0_0x40dd['pOmtuq']=_0x4f0145,a0_0x40dd['OgurzJ']={},a0_0x40dd['zWVDUM']=!![];}const _0x46499c=_0x3445f8[0x0],_0x5c2886=_0x3e7c6a+_0x46499c,_0x33de22=a0_0x40dd['OgurzJ'][_0x5c2886];return!_0x33de22?(_0x40ddcb=a0_0x40dd['pOmtuq'](_0x40ddcb),a0_0x40dd['OgurzJ'][_0x5c2886]=_0x40ddcb):_0x40ddcb=_0x33de22,_0x40ddcb;}class ImportValidator{[a0_0x2338c2(0xd8)](_0x5ecfaf,_0x4462dc=[],_0x1fb483={}){const _0x36c8d7=a0_0x2338c2,_0x5706c7={'YTUYK':function(_0x5a5a38,_0x12f2be){return _0x5a5a38===_0x12f2be;},'sTgqA':_0x36c8d7(0xcd)},_0x414855=[];return _0x4462dc['forEach'](_0x573a68=>{const _0x4f26e5=_0x36c8d7,_0x5c9788=_0x5ecfaf[_0x573a68];(_0x5c9788===null||_0x5706c7['YTUYK'](_0x5c9788,undefined)||_0x5706c7['YTUYK'](_0x5c9788,''))&&_0x414855['push']({'field':_0x573a68,'type':_0x5706c7['sTgqA'],'message':_0x4f26e5(0xc5)});}),Object['keys'](_0x1fb483)['forEach'](_0x84f0cf=>{const _0x3c96b0=_0x36c8d7,_0x4c1781=_0x5ecfaf[_0x84f0cf],_0x5d4035=_0x1fb483[_0x84f0cf];if(_0x4c1781===null||_0x5706c7['YTUYK'](_0x4c1781,undefined)||_0x5706c7[_0x3c96b0(0xcb)](_0x4c1781,''))return;const _0xb46da7=this['validateFieldFormat'](_0x84f0cf,_0x4c1781,_0x5d4035);_0xb46da7&&_0x414855[_0x3c96b0(0xd3)](_0xb46da7);}),_0x414855;}[a0_0x2338c2(0xdb)](_0x151151,_0x1d671b,_0x1c4fdc){const _0x2ddeed=a0_0x2338c2,_0xc748a3={'wbyun':_0x2ddeed(0xc3),'GOmiw':_0x2ddeed(0xe1)};switch(_0x1c4fdc){case'email':return this['validateEmail'](_0x151151,_0x1d671b);case'phone':return this['validatePhone'](_0x151151,_0x1d671b);case _0xc748a3[_0x2ddeed(0xc0)]:return this['validateUrl'](_0x151151,_0x1d671b);case _0xc748a3[_0x2ddeed(0xcf)]:return this['validateNumber'](_0x151151,_0x1d671b);default:return null;}}['validateEmail'](_0x24a18,_0x4db337){const _0x3bbeb7=a0_0x2338c2,_0x3d6a04={'NfFMH':'Invalid\x20email\x20format'},_0x1205b6=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x1205b6[_0x3bbeb7(0xc4)](String(_0x4db337)))return{'field':_0x24a18,'type':'format','message':_0x3d6a04[_0x3bbeb7(0xc1)]};return null;}['validatePhone'](_0x58b0fc,_0x539aac){const _0x564b0d=a0_0x2338c2,_0xc5be7a={'CzKog':_0x564b0d(0xe4)},_0x29ad4d=String(_0x539aac)['replace'](/\s+/g,''),_0x56544c=/^[\d\+\-\(\)]+$/;if(!_0x56544c[_0x564b0d(0xc4)](_0x29ad4d)||_0x29ad4d['length']<0x8)return{'field':_0x58b0fc,'type':_0xc5be7a[_0x564b0d(0xda)],'message':'Invalid\x20phone\x20format'};return null;}[a0_0x2338c2(0xc2)](_0x15d4a7,_0x2d551c){const _0x112a8a=a0_0x2338c2,_0x3660fe={'CBALW':'format','MbdSt':'Invalid\x20URL\x20format'};try{return new URL(String(_0x2d551c)),null;}catch(_0x31f7cd){return{'field':_0x15d4a7,'type':_0x3660fe['CBALW'],'message':_0x3660fe[_0x112a8a(0xd2)]};}}['validateNumber'](_0x480877,_0x492664){const _0x41f6e8=a0_0x2338c2,_0x3fc5af={'GVrWu':function(_0x1a0aa6,_0x3c4fec){return _0x1a0aa6(_0x3c4fec);},'dBtcO':_0x41f6e8(0xcc)};if(_0x3fc5af[_0x41f6e8(0xca)](isNaN,_0x492664))return{'field':_0x480877,'type':'format','message':_0x3fc5af[_0x41f6e8(0xdd)]};return null;}[a0_0x2338c2(0xd5)](_0x381462,_0x4a3eb9){const _0x4de766=a0_0x2338c2,_0x1da7f1=new Map(),_0x423eda=[];return _0x381462[_0x4de766(0xc7)]((_0x5a1c0d,_0x5502b4)=>{const _0x111f46=_0x4de766,_0x229f33=_0x4a3eb9[_0x111f46(0xe3)](_0xd804cd=>_0x5a1c0d[_0xd804cd])['join']('|');_0x1da7f1[_0x111f46(0xe2)](_0x229f33)?_0x423eda[_0x111f46(0xd3)]({'rowIndex':_0x5502b4,'duplicateOf':_0x1da7f1[_0x111f46(0xd7)](_0x229f33),'key':_0x229f33}):_0x1da7f1[_0x111f46(0xc6)](_0x229f33,_0x5502b4);}),_0x423eda;}['batchValidateRows'](_0x2dba1b,_0x406e0f,_0x3dd840){const _0x3ea316=a0_0x2338c2,_0x2dfd76={'vuWBu':_0x3ea316(0xd9)},_0x4fad79=[];return _0x2dba1b[_0x3ea316(0xc7)]((_0x1391e9,_0x548b91)=>{const _0x178568=_0x3ea316,_0x517337=this[_0x178568(0xd8)](_0x1391e9,_0x406e0f,_0x3dd840);_0x517337[_0x178568(0xdc)]>0x0&&_0x4fad79[_0x178568(0xd3)]({'rowIndex':_0x548b91,'rowData':_0x1391e9,'errors':_0x517337});}),logger[_0x3ea316(0xe0)]({'event':'batch_validation_complete','totalRows':_0x2dba1b['length'],'errorCount':_0x4fad79[_0x3ea316(0xdc)]},_0x2dfd76['vuWBu']),_0x4fad79;}}function a0_0x3445(){const _0x40b746=['wvrvwuS','sw52ywXPzcbUDw1IzxiGzM9YBwf0','CMvXDwLYzwq','mtqZntu3uvD6qMzu','r09TAxC','zxHWB3j0CW','mtq5nZb4CK14zNy','twjKu3q','ChvZAa','nZqZmZq4D1rQz296','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','mJe2nJz0uvvgvKy','z2v0','DMfSAwrHDgvsB3C','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','q3PlB2C','DMfSAwrHDgvgAwvSzezVCM1HDa','BgvUz3rO','zej0y08','mZzlBuDLCxK','mtbTr1jTy2m','Aw5MBW','BNvTyMvY','AgfZ','BwfW','zM9YBwf0','mtC3nJy5nK1YrgXqyG','nte1otK0m01RDNfQzW','ntvoDMrIrfm','D2j5Dw4','tMzgtuG','DMfSAwrHDgvvCMW','DxjS','DgvZDa','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','C2v0','zM9YrwfJAa','mZa2mZiWAxjAsvjP','lI9SB2DNzxi','r1zYv3u'];a0_0x3445=function(){return _0x40b746;};return a0_0x3445();}module[a0_0x2338c2(0xd0)]=new ImportValidator();