@restforgejs/platform 5.0.0 → 5.0.3

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 (175) 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/init.js +4 -104
  5. package/generators/cli/payload/migrate.js +1 -1
  6. package/generators/cli/schema/list.js +82 -18
  7. package/generators/cli/schema/migrate.js +23 -3
  8. package/generators/lib/dbschema-kit/diff-engine.js +715 -715
  9. package/generators/lib/migrate/field-type-resolver.js +9 -3
  10. package/generators/lib/migrate/migrate-runner.js +244 -38
  11. package/generators/lib/migrate/naming.js +9 -0
  12. package/generators/lib/payload/payload-runner.js +20 -0
  13. package/generators/lib/templates/dashboard-catalog.js +1 -1
  14. package/generators/lib/templates/db-connection-env.js +1 -1
  15. package/generators/lib/templates/dbschema-catalog.js +1 -1
  16. package/generators/lib/templates/field-validation-catalog.js +1 -1
  17. package/generators/lib/templates/mysql-template.js +1 -1
  18. package/generators/lib/templates/oracle-template.js +1 -1
  19. package/generators/lib/templates/postgres-template.js +1 -1
  20. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  21. package/generators/lib/templates/sqlite-template.js +1 -1
  22. package/integrity-manifest.json +18 -18
  23. package/package.json +1 -1
  24. package/scripts/verify-integrity.js +1 -1
  25. package/server.js +1 -1
  26. package/src/components/handlers/adjust_handler.js +1 -1
  27. package/src/components/handlers/audit_handler.js +1 -1
  28. package/src/components/handlers/delete_handler.js +1 -1
  29. package/src/components/handlers/export_handler.js +1 -1
  30. package/src/components/handlers/import_handler.js +1 -1
  31. package/src/components/handlers/insert_handler.js +1 -1
  32. package/src/components/handlers/update_handler.js +1 -1
  33. package/src/components/handlers/upload_handler.js +1 -1
  34. package/src/components/handlers/workflow_handler.js +1 -1
  35. package/src/components/integrations/webhook.js +1 -1
  36. package/src/consumers/baseConsumer.js +1 -1
  37. package/src/consumers/declarativeMapper.js +1 -1
  38. package/src/consumers/handlers/apiHandler.js +1 -1
  39. package/src/consumers/handlers/consoleHandler.js +1 -1
  40. package/src/consumers/handlers/databaseHandler.js +1 -1
  41. package/src/consumers/handlers/index.js +1 -1
  42. package/src/consumers/handlers/kafkaHandler.js +1 -1
  43. package/src/consumers/index.js +1 -1
  44. package/src/consumers/messageTransformer.js +1 -1
  45. package/src/consumers/validator.js +1 -1
  46. package/src/core/db/dialect/base-dialect.js +1 -1
  47. package/src/core/db/dialect/index.js +1 -1
  48. package/src/core/db/dialect/mysql-dialect.js +1 -1
  49. package/src/core/db/dialect/oracle-dialect.js +1 -1
  50. package/src/core/db/dialect/postgres-dialect.js +1 -1
  51. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  52. package/src/core/db/flatten-helper.js +1 -1
  53. package/src/core/db/query-builder-error.js +1 -1
  54. package/src/core/db/query-builder.js +1 -1
  55. package/src/core/db/relation-helper.js +1 -1
  56. package/src/core/handlers/delete_handler.js +1 -1
  57. package/src/core/handlers/insert_handler.js +1 -1
  58. package/src/core/handlers/update_handler.js +1 -1
  59. package/src/core/models/base-model.js +1 -1
  60. package/src/core/utils/cache-manager.js +1 -1
  61. package/src/core/utils/component-engine.js +1 -1
  62. package/src/core/utils/context-builder.js +1 -1
  63. package/src/core/utils/datetime-formatter.js +1 -1
  64. package/src/core/utils/datetime-parser.js +1 -1
  65. package/src/core/utils/db.js +1 -1
  66. package/src/core/utils/logger.js +1 -1
  67. package/src/core/utils/payload-loader.js +1 -1
  68. package/src/core/utils/security-checks.js +1 -1
  69. package/src/middleware/body-options.js +1 -1
  70. package/src/middleware/cors.js +1 -1
  71. package/src/middleware/idempotency.js +1 -1
  72. package/src/middleware/rate-limiter.js +1 -1
  73. package/src/middleware/request-logger.js +1 -1
  74. package/src/middleware/security-headers.js +1 -1
  75. package/src/models/base-model-mysql.js +1 -1
  76. package/src/models/base-model-oracle.js +1 -1
  77. package/src/models/base-model-sqlite.js +1 -1
  78. package/src/models/base-model.js +1 -1
  79. package/src/pro/caching/redis-client.js +1 -1
  80. package/src/pro/caching/redis-helper.js +1 -1
  81. package/src/pro/consumers/baseConsumer.js +1 -1
  82. package/src/pro/consumers/declarativeMapper.js +1 -1
  83. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  84. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  85. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  86. package/src/pro/consumers/handlers/index.js +1 -1
  87. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  88. package/src/pro/consumers/index.js +1 -1
  89. package/src/pro/consumers/messageTransformer.js +1 -1
  90. package/src/pro/consumers/validator.js +1 -1
  91. package/src/pro/database/base-model-mysql.js +1 -1
  92. package/src/pro/database/base-model-oracle.js +1 -1
  93. package/src/pro/database/base-model-sqlite.js +1 -1
  94. package/src/pro/database/db-mysql.js +1 -1
  95. package/src/pro/database/db-oracle.js +1 -1
  96. package/src/pro/database/db-sqlite.js +1 -1
  97. package/src/pro/excel/excel-generator.js +1 -1
  98. package/src/pro/excel/excel-parser.js +1 -1
  99. package/src/pro/excel/export-service.js +1 -1
  100. package/src/pro/excel/export_handler.js +1 -1
  101. package/src/pro/excel/import-service.js +1 -1
  102. package/src/pro/excel/import-validator.js +1 -1
  103. package/src/pro/excel/import_handler.js +1 -1
  104. package/src/pro/excel/upsert-builder.js +1 -1
  105. package/src/pro/idgen/idgen-routes.js +1 -1
  106. package/src/pro/integrations/lookup-resolver.js +1 -1
  107. package/src/pro/integrations/upload-handler-v2.js +1 -1
  108. package/src/pro/integrations/upload-handler.js +1 -1
  109. package/src/pro/integrations/webhook.js +1 -1
  110. package/src/pro/locking/lock-routes.js +1 -1
  111. package/src/pro/locking/resource-lock-manager.js +1 -1
  112. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  113. package/src/pro/messaging/kafkaService.js +1 -1
  114. package/src/pro/messaging/messagehubService.js +1 -1
  115. package/src/pro/messaging/rabbitmqService.js +1 -1
  116. package/src/pro/scheduler/job-manager.js +1 -1
  117. package/src/pro/scheduler/job-routes.js +1 -1
  118. package/src/pro/scheduler/job-validator.js +1 -1
  119. package/src/pro/storage/base-storage-provider.js +1 -1
  120. package/src/pro/storage/file-metadata-helper.js +1 -1
  121. package/src/pro/storage/index.js +1 -1
  122. package/src/pro/storage/local-storage-provider.js +1 -1
  123. package/src/pro/storage/s3-storage-provider.js +1 -1
  124. package/src/pro/storage/upload-cleanup-job.js +1 -1
  125. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  126. package/src/pro/storage/upload-pending-tracker.js +1 -1
  127. package/src/pro/websocket/broadcast-helper.js +1 -1
  128. package/src/pro/websocket/index.js +1 -1
  129. package/src/pro/websocket/livesync-server.js +1 -1
  130. package/src/pro/websocket/ws-broadcaster.js +1 -1
  131. package/src/services/export-service.js +1 -1
  132. package/src/services/import-service.js +1 -1
  133. package/src/services/kafkaConsumerService.js +1 -1
  134. package/src/services/kafkaService.js +1 -1
  135. package/src/services/messagehubService.js +1 -1
  136. package/src/services/rabbitmqService.js +1 -1
  137. package/src/utils/cache-invalidation-registry.js +1 -1
  138. package/src/utils/cache-manager.js +1 -1
  139. package/src/utils/component-engine.js +1 -1
  140. package/src/utils/config-extractor.js +1 -1
  141. package/src/utils/consumerLogger.js +1 -1
  142. package/src/utils/context-builder.js +1 -1
  143. package/src/utils/dashboard-helpers.js +1 -1
  144. package/src/utils/dateHelper.js +1 -1
  145. package/src/utils/datetime-formatter.js +1 -1
  146. package/src/utils/datetime-parser.js +1 -1
  147. package/src/utils/db-bootstrap.js +1 -1
  148. package/src/utils/db-mysql.js +1 -1
  149. package/src/utils/db-oracle.js +1 -1
  150. package/src/utils/db-sqlite.js +1 -1
  151. package/src/utils/db.js +1 -1
  152. package/src/utils/demo-generator.js +1 -1
  153. package/src/utils/excel-generator.js +1 -1
  154. package/src/utils/excel-parser.js +1 -1
  155. package/src/utils/file-watcher.js +1 -1
  156. package/src/utils/id-generator.js +1 -1
  157. package/src/utils/idempotency-manager.js +1 -1
  158. package/src/utils/import-validator.js +1 -1
  159. package/src/utils/license-client.js +1 -1
  160. package/src/utils/lock-manager.js +1 -1
  161. package/src/utils/logger.js +1 -1
  162. package/src/utils/lookup-resolver.js +1 -1
  163. package/src/utils/payload-loader.js +1 -1
  164. package/src/utils/processor-response.js +1 -1
  165. package/src/utils/rabbitmq.js +1 -1
  166. package/src/utils/redis-client.js +1 -1
  167. package/src/utils/redis-helper.js +1 -1
  168. package/src/utils/request-scope.js +1 -1
  169. package/src/utils/security-checks.js +1 -1
  170. package/src/utils/service-resolver.js +1 -1
  171. package/src/utils/shutdown-coordinator.js +1 -1
  172. package/src/utils/trusted-keys.js +1 -1
  173. package/src/utils/upload-handler.js +1 -1
  174. package/src/utils/upsert-builder.js +1 -1
  175. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x3c2e55=a0_0x1c3a;(function(_0x3eaeab,_0x56145e){const _0x515873=a0_0x1c3a,_0x20df8a=_0x3eaeab();while(!![]){try{const _0x48b588=parseInt(_0x515873(0x1e2))/0x1+parseInt(_0x515873(0x1f4))/0x2*(parseInt(_0x515873(0x192))/0x3)+-parseInt(_0x515873(0x1c2))/0x4+-parseInt(_0x515873(0x210))/0x5+-parseInt(_0x515873(0x20b))/0x6+-parseInt(_0x515873(0x15c))/0x7*(parseInt(_0x515873(0x21a))/0x8)+parseInt(_0x515873(0x18d))/0x9*(parseInt(_0x515873(0x254))/0xa);if(_0x48b588===_0x56145e)break;else _0x20df8a['push'](_0x20df8a['shift']());}catch(_0xb713b1){_0x20df8a['push'](_0x20df8a['shift']());}}}(a0_0x4560,0x6a061));function a0_0x1c3a(_0x55a3d9,_0x54e37d){_0x55a3d9=_0x55a3d9-0x156;const _0x456022=a0_0x4560();let _0x1c3a96=_0x456022[_0x55a3d9];if(a0_0x1c3a['rnKpeM']===undefined){var _0x8d85ae=function(_0xb56bb4){const _0x4330a5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20c672='',_0x36b7a4='';for(let _0x4e03af=0x0,_0x5a81b1,_0x3cac48,_0x1b8ee7=0x0;_0x3cac48=_0xb56bb4['charAt'](_0x1b8ee7++);~_0x3cac48&&(_0x5a81b1=_0x4e03af%0x4?_0x5a81b1*0x40+_0x3cac48:_0x3cac48,_0x4e03af++%0x4)?_0x20c672+=String['fromCharCode'](0xff&_0x5a81b1>>(-0x2*_0x4e03af&0x6)):0x0){_0x3cac48=_0x4330a5['indexOf'](_0x3cac48);}for(let _0x3a032a=0x0,_0x2762c1=_0x20c672['length'];_0x3a032a<_0x2762c1;_0x3a032a++){_0x36b7a4+='%'+('00'+_0x20c672['charCodeAt'](_0x3a032a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36b7a4);};a0_0x1c3a['ExJTIj']=_0x8d85ae,a0_0x1c3a['GaYwvS']={},a0_0x1c3a['rnKpeM']=!![];}const _0x5e57bb=_0x456022[0x0],_0x5b0b07=_0x55a3d9+_0x5e57bb,_0x4adf9b=a0_0x1c3a['GaYwvS'][_0x5b0b07];return!_0x4adf9b?(_0x1c3a96=a0_0x1c3a['ExJTIj'](_0x1c3a96),a0_0x1c3a['GaYwvS'][_0x5b0b07]=_0x1c3a96):_0x1c3a96=_0x4adf9b,_0x1c3a96;}const crypto=require(a0_0x3c2e55(0x1d6)),redisClient=require(a0_0x3c2e55(0x1e8)),{logger}=require('./logger'),idempotencyManager=require(a0_0x3c2e55(0x197)),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x3c2e55(0x260),a0_0x3c2e55(0x26c)]),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_0x3c2e55(0x18a),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='0123456789abcdef',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_0x3c2e55(0x19b),LUA_RELEASE_NUMBER=a0_0x3c2e55(0x1af),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x3c2e55(0x24b);class IdGeneratorError extends Error{constructor(_0x3b5006,_0x47ddb8,_0x391ea9=null){const _0x395d09=a0_0x3c2e55,_0x372178={'okvKs':function(_0xaf98db,_0x2cb755){return _0xaf98db||_0x2cb755;}};super(_0x372178['okvKs'](_0x47ddb8,_0x3b5006)),this['name']=_0x395d09(0x24d),this['code']=_0x3b5006,this[_0x395d09(0x169)]=_0x391ea9;}}class IdGenerator{constructor(){const _0x549adb=a0_0x3c2e55;this['_initialized']=![],this['_enabled']=null,this[_0x549adb(0x1e6)]=null,this[_0x549adb(0x1e7)]=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this[_0x549adb(0x1e9)]=null,this['_defaultSerialPattern']=null,this['_defaultCodePattern']=null,this[_0x549adb(0x178)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x59ef5d=a0_0x3c2e55,_0x13a102={'aRDXC':'rf:idgen:','HPbJn':_0x59ef5d(0x20e),'XRpJq':function(_0x1c646a,_0x528d3c,_0x5789e0){return _0x1c646a(_0x528d3c,_0x5789e0);},'tlqHE':function(_0xba9f9c,_0x2d0c0a){return _0xba9f9c===_0x2d0c0a;},'AOnWn':_0x59ef5d(0x223),'BIJQN':_0x59ef5d(0x172),'PGlrs':function(_0x3e74b1,_0x2b40be,_0x3a4357){return _0x3e74b1(_0x2b40be,_0x3a4357);},'CwwRm':function(_0x586e51,_0x326c06,_0x4d707b){return _0x586e51(_0x326c06,_0x4d707b);},'ouFyi':function(_0x75f10e,_0x353434,_0x20c538){return _0x75f10e(_0x353434,_0x20c538);},'ZmTcU':_0x59ef5d(0x1cb)};this[_0x59ef5d(0x1e6)]=_0x13a102[_0x59ef5d(0x1f3)],this['_enabled']=process['env']['IDGEN_ENABLED']===_0x13a102['HPbJn'],this[_0x59ef5d(0x1e7)]=_0x13a102['XRpJq'](parseInt,process[_0x59ef5d(0x255)][_0x59ef5d(0x167)],0xa)||0x258,this[_0x59ef5d(0x202)]=_0x13a102['tlqHE'](process['env']['IDGEN_ALLOW_RESET'],'true'),this[_0x59ef5d(0x23d)]=_0x13a102[_0x59ef5d(0x24f)](parseInt,process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process['env'][_0x59ef5d(0x188)],0xa)||0x6,this[_0x59ef5d(0x22d)]=process['env'][_0x59ef5d(0x25b)]||_0x13a102['AOnWn'],this[_0x59ef5d(0x1f2)]=process[_0x59ef5d(0x255)]['IDGEN_DEFAULT_CODE_PATTERN']||_0x13a102['BIJQN'],this[_0x59ef5d(0x178)]={'yyyymm':_0x13a102['PGlrs'](parseInt,process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':_0x13a102[_0x59ef5d(0x24f)](parseInt,process[_0x59ef5d(0x255)][_0x59ef5d(0x1c1)],0xa)||0x2a300},this['_reserveDefaultTTL']=_0x13a102['CwwRm'](parseInt,process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL,this[_0x59ef5d(0x25c)]=_0x13a102['ouFyi'](parseInt,process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger['info']({'event':_0x13a102['ZmTcU'],'enabled':this[_0x59ef5d(0x18f)],'idemTTL':this[_0x59ef5d(0x1e7)],'allowReset':this[_0x59ef5d(0x202)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x59ef5d(0x214)+this['_enabled']);}[a0_0x3c2e55(0x22a)](){const _0x2a107f=a0_0x3c2e55;if(!this[_0x2a107f(0x18b)])this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['keyPrefix'](){const _0x517944=a0_0x3c2e55;return this[_0x517944(0x22a)](),this['_keyPrefix'];}get['idemTTL'](){return this['_ensureInitialized'](),this['_idemTTL'];}get[a0_0x3c2e55(0x225)](){const _0xf7b3a5=a0_0x3c2e55;return this[_0xf7b3a5(0x22a)](),this[_0xf7b3a5(0x202)];}get[a0_0x3c2e55(0x177)](){const _0x545806=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x545806(0x23d)];}get['defaultPinDigits'](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get[a0_0x3c2e55(0x165)](){const _0x5f5c13=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x5f5c13(0x22d)];}get[a0_0x3c2e55(0x252)](){const _0x55727e=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x55727e(0x1f2)];}get['reserveDefaultTTL'](){const _0x1cb37b=a0_0x3c2e55;return this[_0x1cb37b(0x22a)](),this[_0x1cb37b(0x20d)];}get[a0_0x3c2e55(0x16f)](){const _0xf51ad1=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0xf51ad1(0x25c)];}['isEnabled'](){return this['enabled'];}['_validateResource'](_0x4fd941){const _0xcc8823=a0_0x3c2e55,_0x33c58f={'catfc':function(_0x153303,_0x267e8b){return _0x153303!==_0x267e8b;},'DjKJN':_0xcc8823(0x15e)};if(_0x33c58f['catfc'](typeof _0x4fd941,_0x33c58f[_0xcc8823(0x1dc)])||!RESOURCE_REGEX[_0xcc8823(0x248)](_0x4fd941))throw new IdGeneratorError(_0xcc8823(0x1f9),'Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+_0xcc8823(0x1fe)+JSON[_0xcc8823(0x1ac)](_0x4fd941)+')');}['_validateNumberParams'](_0x2258a9){const _0xa5768=a0_0x3c2e55,_0x55500e={'DwrIq':_0xa5768(0x15e),'koJFJ':function(_0x5f1ad8,_0x2c30e4){return _0x5f1ad8<_0x2c30e4;},'zcfBO':function(_0x291eec,_0x1ed8ef){return _0x291eec>_0x1ed8ef;},'foVWK':'IDGEN_INVALID_NUM_DIGITS','TnKXC':function(_0xd7121e,_0x4c30ff){return _0xd7121e==_0x4c30ff;},'pUbSV':'IDGEN_INVALID_SEPARATOR','jAyQG':'boolean','EhjoE':function(_0xbfc460,_0xa0e61){return _0xbfc460===_0xa0e61;}},{resource:_0x18d543,format:_0x15f723,prefix:_0x1bbdac,separator:_0x188fde,numDigits:_0x21441d,reuseDelete:_0x3cd9c7}=_0x2258a9;this[_0xa5768(0x1a2)](_0x18d543);const _0x1b42e8=typeof _0x15f723===_0x55500e['DwrIq']?_0x15f723['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0x1b42e8))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+'\x20(got:\x20'+_0x15f723+')');if(!Number[_0xa5768(0x211)](_0x21441d)||_0x55500e[_0xa5768(0x229)](_0x21441d,MIN_NUM_DIGITS)||_0x55500e['zcfBO'](_0x21441d,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x55500e['foVWK'],_0xa5768(0x1da)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0xa5768(0x1fe)+_0x21441d+')');const _0x57c018=_0x1bbdac==null?'':_0x1bbdac;if(typeof _0x57c018!==_0xa5768(0x15e)||!PREFIX_REGEX['test'](_0x57c018))throw new IdGeneratorError('IDGEN_INVALID_PREFIX','Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0xa5768(0x1fe)+JSON['stringify'](_0x1bbdac)+')');const _0x35845c=_0x55500e['TnKXC'](_0x188fde,null)?'':_0x188fde;if(typeof _0x35845c!=='string'||_0x55500e['zcfBO'](_0x35845c[_0xa5768(0x166)],0x3)||SEPARATOR_FORBIDDEN['test'](_0x35845c))throw new IdGeneratorError(_0x55500e['pUbSV'],_0xa5768(0x278)+JSON[_0xa5768(0x1ac)](_0x188fde)+')');if(_0x3cd9c7!=null&&typeof _0x3cd9c7!==_0x55500e['jAyQG'])throw new IdGeneratorError(_0xa5768(0x1f9),_0xa5768(0x200)+typeof _0x3cd9c7+')');return{'resource':_0x18d543,'format':_0x1b42e8,'prefix':_0x57c018,'separator':_0x35845c,'numDigits':_0x21441d,'reuseDelete':_0x55500e['EhjoE'](_0x3cd9c7,!![])};}['_validatePattern'](_0xc5c7e1){const _0x23a3fd=a0_0x3c2e55,_0x25c640={'TlXUx':function(_0x54f1f2,_0x5a8bc3){return _0x54f1f2===_0x5a8bc3;},'Hfqcx':function(_0x4e04c8,_0x5e2da1){return _0x4e04c8>_0x5e2da1;},'iEHRX':'IDGEN_INVALID_PATTERN'};if(typeof _0xc5c7e1!=='string'||_0x25c640['TlXUx'](_0xc5c7e1['length'],0x0)||_0x25c640[_0x23a3fd(0x1a0)](_0xc5c7e1[_0x23a3fd(0x166)],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x25c640['iEHRX'],'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0xc5c7e1&&_0xc5c7e1[_0x23a3fd(0x166)])+')');let _0x575e04=![];for(const _0x579e3c of _0xc5c7e1){if(PLACEHOLDER_MAP[_0x579e3c]){_0x575e04=!![];break;}}if(!_0x575e04)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)');}['_validateTTL'](_0x5b3490){const _0x58e64f=a0_0x3c2e55,_0xcc2101={'BYdax':function(_0x48232e,_0x5387b6){return _0x48232e<_0x5387b6;},'FAqvR':function(_0x21b12b,_0x1dd1de){return _0x21b12b>_0x1dd1de;}};if(_0x5b3490==null)return undefined;if(!Number['isInteger'](_0x5b3490)||_0xcc2101[_0x58e64f(0x250)](_0x5b3490,0x1)||_0xcc2101[_0x58e64f(0x1cc)](_0x5b3490,MAX_TTL))throw new IdGeneratorError(_0x58e64f(0x15d),_0x58e64f(0x1f0)+MAX_TTL+_0x58e64f(0x158)+_0x5b3490+')');return _0x5b3490;}[a0_0x3c2e55(0x20f)](_0x1023d4){const _0x261f64=a0_0x3c2e55,_0x3aa9c3={'wzdPG':function(_0x2bce64,_0x1e771e){return _0x2bce64==_0x1e771e;},'AxAmK':function(_0x2795bb,_0x5583d7){return _0x2795bb>_0x5583d7;}};if(_0x3aa9c3[_0x261f64(0x234)](_0x1023d4,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x1023d4)||_0x1023d4<0x1||_0x3aa9c3[_0x261f64(0x244)](_0x1023d4,MAX_RETRY_LIMIT))throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x261f64(0x1fe)+_0x1023d4+')');return _0x1023d4;}[a0_0x3c2e55(0x204)](_0x28e3db){const _0x569937=a0_0x3c2e55,_0x4f2e11={'zVaar':function(_0xdca93,_0x28d33b){return _0xdca93!==_0x28d33b;},'vZPmB':'string','bxLjK':'IDGEN_INVALID_RESOURCE'};if(_0x28e3db==null)return undefined;if(_0x4f2e11[_0x569937(0x18c)](typeof _0x28e3db,_0x4f2e11['vZPmB'])||_0x28e3db['length']===0x0||_0x28e3db[_0x569937(0x166)]>MAX_IDEMPOTENCY_KEY_LENGTH)throw new IdGeneratorError(_0x4f2e11[_0x569937(0x23a)],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x28e3db;}['_validateReserveTTL'](_0x276c08){const _0xac7cfe=a0_0x3c2e55,_0xe34cfb={'uZjxb':function(_0x1b56fa,_0x51e71c){return _0x1b56fa==_0x51e71c;}};if(_0xe34cfb['uZjxb'](_0x276c08,null))return this[_0xac7cfe(0x1b7)];if(!Number['isInteger'](_0x276c08)||_0x276c08<MIN_RESERVE_TTL||_0x276c08>this['reserveMaxTTL'])throw new IdGeneratorError(_0xac7cfe(0x180),_0xac7cfe(0x1ab)+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0xac7cfe(0x158)+_0x276c08+')');return _0x276c08;}['_validateReservationToken'](_0x40794e){const _0x21b331=a0_0x3c2e55,_0x518514={'RKLuI':_0x21b331(0x15e),'cgpEI':_0x21b331(0x15b)};if(typeof _0x40794e!==_0x518514[_0x21b331(0x25f)]||!RESERVATION_TOKEN_REGEX[_0x21b331(0x248)](_0x40794e))throw new IdGeneratorError(_0x518514['cgpEI'],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON['stringify'](_0x40794e)+')');return _0x40794e;}[a0_0x3c2e55(0x272)](_0x390e60){const _0x33feee=a0_0x3c2e55,_0x39cf82={'TtMgN':function(_0x571284,_0x37168b){return _0x571284(_0x37168b);}};return _0x39cf82[_0x33feee(0x16a)](String,_0x390e60)[_0x33feee(0x206)](0x2,'0');}['_buildFormatKey'](_0x10e785,_0x43ed32,_0x3e6120=new Date()){const _0x4e742e=a0_0x3c2e55,_0x5f504f={'gEXJL':function(_0x4aa53c,_0x2059ed){return _0x4aa53c+_0x2059ed;},'EvNRr':function(_0x3e99d3,_0x4c0cf6){return _0x3e99d3||_0x4c0cf6;},'EXsSc':'text','fudcN':'yyyy','GtJbp':'IDGEN_INVALID_FORMAT'},_0xbbe618=_0x3e6120['getFullYear'](),_0x471f4f=this[_0x4e742e(0x272)](_0x5f504f[_0x4e742e(0x238)](_0x3e6120[_0x4e742e(0x22c)](),0x1)),_0x3cbfde=this['_pad2'](_0x3e6120[_0x4e742e(0x1e4)]()),_0x18b063=_0x5f504f['EvNRr'](_0x43ed32,'_');let _0x2a8e9e,_0x594353='';switch(_0x10e785){case _0x5f504f['EXsSc']:_0x2a8e9e=_0x18b063+_0x4e742e(0x243);break;case _0x5f504f['fudcN']:_0x594353=''+_0xbbe618,_0x2a8e9e=_0x18b063+'_yyyy_'+_0x594353;break;case'yyyymm':_0x594353=''+_0xbbe618+_0x471f4f,_0x2a8e9e=_0x18b063+_0x4e742e(0x26b)+_0x594353;break;case _0x4e742e(0x26c):_0x594353=''+_0xbbe618+_0x471f4f+_0x3cbfde,_0x2a8e9e=_0x18b063+_0x4e742e(0x1a3)+_0x594353;break;default:throw new IdGeneratorError(_0x5f504f[_0x4e742e(0x156)],_0x4e742e(0x1f7)+_0x10e785);}return{'formatKey':_0x2a8e9e,'datePrefix':_0x594353};}[a0_0x3c2e55(0x17b)](_0x1ebb36,_0x1dd8a2){const _0x532b96=a0_0x3c2e55;return this[_0x532b96(0x1e1)]+'seq:'+_0x1ebb36+':'+_0x1dd8a2;}['_buildReuseKey'](_0x1d4a95,_0x4093a0){const _0x40af72=a0_0x3c2e55;return this[_0x40af72(0x1e1)]+'reuse:'+_0x1d4a95+':'+_0x4093a0;}['_buildMetaKey'](_0x2b6a92,_0x1d96e3){const _0x367b78=a0_0x3c2e55;return this[_0x367b78(0x1e1)]+_0x367b78(0x1eb)+_0x2b6a92+':'+_0x1d96e3;}[a0_0x3c2e55(0x1ae)](_0x34914e){const _0x1277b=a0_0x3c2e55;return this['keyPrefix']+_0x1277b(0x1e5)+_0x34914e;}['_buildActiveKey'](_0x227591,_0x2e397b){const _0x548e32=a0_0x3c2e55;return this[_0x548e32(0x1e1)]+'active:'+_0x227591+':'+_0x2e397b;}[a0_0x3c2e55(0x1fa)](_0x1a26d7){const _0x3de4da=a0_0x3c2e55;return this[_0x3de4da(0x1e1)]+_0x3de4da(0x27b)+_0x1a26d7;}['_buildReservationIndexKey'](_0x2c06fa,_0x546a9c){const _0x4238e3=a0_0x3c2e55;return this['keyPrefix']+_0x4238e3(0x201)+_0x2c06fa+':'+_0x546a9c;}['_buildReservationKeyPrefix'](){const _0x3d2a5e=a0_0x3c2e55;return this[_0x3d2a5e(0x1e1)]+'rsv:';}[a0_0x3c2e55(0x189)](_0x528b55,_0x3d40be,_0x2d53bd,_0x467421){const _0x34643e=a0_0x3c2e55;if(_0x2d53bd)return idempotencyManager['buildDeterministicKey'](_0x34643e(0x1d2),_0x528b55,_0x3d40be+':'+_0x2d53bd+':'+_0x467421);return idempotencyManager['buildDeterministicKey']('idgen',_0x528b55,_0x3d40be+':'+_0x467421);}['_getCounterTTL'](_0x5e6dea){const _0x380e5c=a0_0x3c2e55;return this[_0x380e5c(0x178)][_0x5e6dea]||0x0;}[a0_0x3c2e55(0x218)]({format:_0x1926f5,prefix:_0x318b6f,datePrefix:_0x180d81,separator:_0x1c9725,numDigits:_0x86dc8a,counterInt:_0x21a400}){const _0x21ede4=a0_0x3c2e55,_0x436f79={'KPcwK':_0x21ede4(0x1df),'LGqeX':'text'},_0x12af61=Math['pow'](0xa,_0x86dc8a)-0x1;if(_0x21a400>_0x12af61)throw new IdGeneratorError(_0x436f79['KPcwK'],_0x21ede4(0x15f)+_0x21a400+'\x20exceeds\x20'+_0x86dc8a+_0x21ede4(0x1d5)+_0x12af61+_0x21ede4(0x219),{'counterInt':_0x21a400,'numDigits':_0x86dc8a,'max':_0x12af61});const _0x132609=String(_0x21a400)[_0x21ede4(0x206)](_0x86dc8a,'0');if(_0x1926f5===_0x436f79['LGqeX'])return _0x318b6f?''+_0x318b6f+_0x1c9725+_0x132609:_0x132609;return _0x318b6f?''+_0x318b6f+_0x1c9725+_0x180d81+_0x1c9725+_0x132609:''+_0x180d81+_0x1c9725+_0x132609;}['_parseNumber']({format:_0xf7c482,prefix:_0x4c2da9,separator:_0x3a8db9,numDigits:_0xa957f9,number:_0x3bbdbf}){const _0x4e237c=a0_0x3c2e55,_0x525172={'boNJy':function(_0x58f0a7,_0x12c869){return _0x58f0a7!==_0x12c869;},'lvuzJ':_0x4e237c(0x15e),'trGQK':function(_0x9d95cc,_0x1fb534){return _0x9d95cc===_0x1fb534;},'EcmZN':_0x4e237c(0x261),'KSfyw':function(_0x5e2b59,_0x4b7a19){return _0x5e2b59===_0x4b7a19;},'zPBNe':'text','Tdwnh':function(_0x4f6ba1,_0x44add5){return _0x4f6ba1!==_0x44add5;},'mncer':function(_0x575622,_0x557e02){return _0x575622!==_0x557e02;},'VUZsJ':function(_0x2d577f,_0x1b4518){return _0x2d577f!==_0x1b4518;},'MfwwE':function(_0x2f8dc9,_0x55f39b){return _0x2f8dc9!==_0x55f39b;},'hhbvq':function(_0x1f938b,_0x459c72){return _0x1f938b===_0x459c72;},'skzTj':function(_0x3c14a4,_0x25a6d5){return _0x3c14a4||_0x25a6d5;}};if(_0x525172['boNJy'](typeof _0x3bbdbf,_0x525172[_0x4e237c(0x265)])||_0x525172[_0x4e237c(0x1d0)](_0x3bbdbf[_0x4e237c(0x166)],0x0))throw new IdGeneratorError(_0x525172['EcmZN'],_0x4e237c(0x276));const _0x3b2e94=_0x3a8db9||'',_0x487109=_0x3b2e94===''?[_0x3bbdbf]:_0x3bbdbf[_0x4e237c(0x157)](_0x3b2e94);let _0x2ba97b='',_0x3fd512;if(_0x525172[_0x4e237c(0x249)](_0xf7c482,_0x525172[_0x4e237c(0x226)])){if(_0x4c2da9){if(_0x487109[_0x4e237c(0x166)]!==0x2||_0x525172['Tdwnh'](_0x487109[0x0],_0x4c2da9))throw new IdGeneratorError(_0x4e237c(0x261),_0x4e237c(0x205)+_0x3b2e94+'padded\x20(got:\x20'+_0x3bbdbf+')');_0x3fd512=_0x487109[0x1];}else{if(_0x525172[_0x4e237c(0x27d)](_0x487109['length'],0x1))throw new IdGeneratorError(_0x525172['EcmZN'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x3bbdbf+')');_0x3fd512=_0x487109[0x0];}}else{const _0x2e100e=_0x4c2da9?0x3:0x2;if(_0x525172['VUZsJ'](_0x487109['length'],_0x2e100e))throw new IdGeneratorError(_0x525172[_0x4e237c(0x267)],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x3bbdbf+_0x4e237c(0x168)+_0x2e100e+_0x4e237c(0x212));let _0x5377a2=0x0;if(_0x4c2da9){if(_0x525172[_0x4e237c(0x181)](_0x487109[_0x5377a2],_0x4c2da9))throw new IdGeneratorError(_0x525172[_0x4e237c(0x267)],_0x4e237c(0x22f)+_0x4c2da9+',\x20got\x20'+_0x487109[_0x5377a2]);_0x5377a2++;}_0x2ba97b=_0x487109[_0x5377a2++];const _0x1fa349=_0x525172[_0x4e237c(0x203)](_0xf7c482,'yyyy')?/^\d{4}$/:_0xf7c482===_0x4e237c(0x260)?/^\d{6}$/:/^\d{8}$/;if(!_0x1fa349[_0x4e237c(0x248)](_0x2ba97b))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x4e237c(0x1ed)+_0xf7c482+':\x20'+_0x2ba97b);_0x3fd512=_0x487109[_0x5377a2];}if(!new RegExp('^\x5cd{'+_0xa957f9+'}$')[_0x4e237c(0x248)](_0x3fd512))throw new IdGeneratorError(_0x4e237c(0x261),_0x4e237c(0x1f6)+_0xa957f9+_0x4e237c(0x183)+_0x3fd512+')');const _0x351249=parseInt(_0x3fd512,0xa),_0x3f8a25=_0x525172[_0x4e237c(0x21e)](_0x4c2da9,'_');let _0x365743;return _0xf7c482===_0x525172[_0x4e237c(0x226)]?_0x365743=_0x3f8a25+'_text':_0x365743=_0x3f8a25+'_'+_0xf7c482+'_'+_0x2ba97b,{'formatKey':_0x365743,'counterInt':_0x351249,'datePrefix':_0x2ba97b};}['_generateFromPattern'](_0x50d29d){const _0x58bfad=a0_0x3c2e55;let _0x5d08f8='';for(const _0x52175b of _0x50d29d){const _0x3f3674=PLACEHOLDER_MAP[_0x52175b];if(_0x3f3674){const _0x2db6d5=crypto[_0x58bfad(0x215)](0x0,_0x3f3674[_0x58bfad(0x166)]);_0x5d08f8+=_0x3f3674[_0x2db6d5];}else _0x5d08f8+=_0x52175b;}return _0x5d08f8;}async[a0_0x3c2e55(0x1be)](_0xa31fc8){const _0x2c5ec3=a0_0x3c2e55,_0x549030={'TNsfL':'idgen_idem_retrieve_error','jBpuJ':_0x2c5ec3(0x191)};if(!_0xa31fc8)return null;try{const _0x30a4e3=redisClient[_0x2c5ec3(0x257)](),_0x498258=await _0x30a4e3[_0x2c5ec3(0x1fb)](_0xa31fc8);if(_0x498258)return logger[_0x2c5ec3(0x25d)]({'event':_0x2c5ec3(0x17d),'key':_0xa31fc8},_0x2c5ec3(0x1ca)),JSON[_0x2c5ec3(0x175)](_0x498258);return null;}catch(_0x487c70){return logger['warn']({'event':_0x549030[_0x2c5ec3(0x258)],'error':_0x487c70[_0x2c5ec3(0x195)]},_0x549030[_0x2c5ec3(0x227)]),null;}}async[a0_0x3c2e55(0x1d4)](_0x5f2c82,_0x4f15c9){const _0x55b031=a0_0x3c2e55,_0x455731={'guXuY':_0x55b031(0x279),'iSVlC':'Idempotency\x20store\x20error'};if(!_0x5f2c82)return;try{const _0x5235e4=redisClient['getClient']();await _0x5235e4[_0x55b031(0x1a5)](_0x5f2c82,this['idemTTL'],JSON['stringify'](_0x4f15c9));}catch(_0x144798){logger[_0x55b031(0x239)]({'event':_0x455731['guXuY'],'error':_0x144798[_0x55b031(0x195)]},_0x455731[_0x55b031(0x224)]);}}async['_storeIdemCacheNX'](_0x248765,_0x52a2ea){const _0x470f7b=a0_0x3c2e55,_0x44a499={'qOfYv':function(_0x30e52c,_0x50703f){return _0x30e52c===_0x50703f;},'XRcWz':_0x470f7b(0x1c4)};if(!_0x248765)return{'stored':!![],'winnerResult':null};try{const _0x321047=redisClient[_0x470f7b(0x257)](),_0x2a03df=JSON['stringify'](_0x52a2ea),_0x137a73=await _0x321047[_0x470f7b(0x20a)](_0x248765,_0x2a03df,'EX',this[_0x470f7b(0x24a)],'NX');if(_0x44a499[_0x470f7b(0x1ea)](_0x137a73,'OK'))return{'stored':!![],'winnerResult':null};const _0x35af77=await _0x321047[_0x470f7b(0x1fb)](_0x248765);if(_0x35af77)return{'stored':![],'winnerResult':JSON['parse'](_0x35af77)};return logger[_0x470f7b(0x239)]({'event':_0x470f7b(0x1c6),'key':_0x248765},_0x470f7b(0x1a6)),{'stored':!![],'winnerResult':null};}catch(_0x2e210b){return logger[_0x470f7b(0x239)]({'event':_0x44a499['XRcWz'],'error':_0x2e210b[_0x470f7b(0x195)]},_0x470f7b(0x19d)),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x569083,_0x433e33,_0x23dcee){const _0xc36e16=a0_0x3c2e55,_0x4e5c94={'yhDyF':_0xc36e16(0x273)};try{const _0x12287d=redisClient['getClient']();if(_0x23dcee){const _0x2d38ca=this['_buildActiveKey'](_0x569083,_0x433e33);await _0x12287d['del'](_0x2d38ca);}else{const _0x1a103e=this[_0xc36e16(0x1ae)](_0x569083);await _0x12287d['srem'](_0x1a103e,_0x433e33);}}catch(_0x4db6be){logger['warn']({'event':_0xc36e16(0x1b8),'error':_0x4db6be[_0xc36e16(0x195)]},_0x4e5c94[_0xc36e16(0x268)]);}}async[a0_0x3c2e55(0x228)](_0x195b16,_0xb3840e,_0x3d3657,_0x18fe49=0x0){const _0xd3cd4=a0_0x3c2e55,_0x34eb37={'oWEuz':function(_0x14554b,_0x40948f){return _0x14554b(_0x40948f);}};try{const _0x17cfac=redisClient['getClient'](),_0x5ce013=this['_buildMetaKey'](_0x195b16,_0xb3840e),_0x4155de=[];for(const [_0x4dcbc8,_0x743de8]of Object['entries'](_0x3d3657)){_0x4155de['push'](_0x4dcbc8,_0x34eb37[_0xd3cd4(0x237)](String,_0x743de8));}if(_0x4155de['length']>0x0){await _0x17cfac[_0xd3cd4(0x277)](_0x5ce013,..._0x4155de);if(_0x18fe49>0x0)await _0x17cfac['expire'](_0x5ce013,_0x18fe49);}}catch(_0x3982f8){logger['warn']({'event':_0xd3cd4(0x1c3),'error':_0x3982f8['message']},_0xd3cd4(0x1bf));}}async[a0_0x3c2e55(0x25e)](_0x30616c){const _0xe498ae=a0_0x3c2e55,_0xa1c19d={'sNnHe':_0xe498ae(0x230),'WsewB':_0xe498ae(0x1b2),'TANah':_0xe498ae(0x25e),'DKdpv':function(_0x3c7b0a,_0x41360c){return _0x3c7b0a(_0x41360c);},'FIBjI':function(_0x2a75ae,_0x2b2cbf){return _0x2a75ae===_0x2b2cbf;},'bTFWc':_0xe498ae(0x231)};if(!this['enabled'])throw new IdGeneratorError(_0xa1c19d[_0xe498ae(0x1c8)],_0xa1c19d['WsewB']);const _0x344435=this['_validateNumberParams'](_0x30616c),_0xa24ca=this['_validateIdempotencyKey'](_0x30616c[_0xe498ae(0x245)]),{resource:_0x80dbf8,format:_0x5d235f,prefix:_0x5130ef,separator:_0x27d51c,numDigits:_0x145150,reuseDelete:_0x6c7df5}=_0x344435,{formatKey:_0x1c4478,datePrefix:_0xb9b4fa}=this[_0xe498ae(0x216)](_0x5d235f,_0x5130ef),_0x4d2d00=this['_buildSeqKey'](_0x80dbf8,_0x1c4478),_0x38083a=this['_buildReuseKey'](_0x80dbf8,_0x1c4478),_0x2c2ce1=this[_0xe498ae(0x220)](_0x5d235f);let _0x128b3d=null;if(_0xa24ca){_0x128b3d=this[_0xe498ae(0x189)](_0xa1c19d[_0xe498ae(0x19f)],_0x80dbf8,_0x1c4478,_0xa24ca);const _0x3e6d61=await this['_retrieveIdemCache'](_0x128b3d);if(_0x3e6d61)return _0x3e6d61;}const _0x3fb7a4=redisClient['getClient'](),_0x15ea5d=await _0x3fb7a4['eval'](LUA_GENERATE_NUMBER,0x2,_0x4d2d00,_0x38083a,_0x6c7df5?'1':'0',_0xa1c19d['DKdpv'](String,_0x2c2ce1)),_0x32f7a5=_0x15ea5d[0x0],_0x4ce694=_0xa1c19d[_0xe498ae(0x1a8)](_0x15ea5d[0x1],0x1),_0x3ab867=this['_formatNumber']({'format':_0x5d235f,'prefix':_0x5130ef,'datePrefix':_0xb9b4fa,'separator':_0x27d51c,'numDigits':_0x145150,'counterInt':_0x32f7a5}),_0x307293={'value':_0x3ab867,'counter':_0x32f7a5,'resource':_0x80dbf8,'formatKey':_0x1c4478,'isReused':_0x4ce694,'generatedAt':new Date()['toISOString']()},_0x5eccac=await this[_0xe498ae(0x1f1)](_0x128b3d,_0x307293);if(!_0x5eccac['stored']){try{await _0x3fb7a4[_0xe498ae(0x164)](LUA_RELEASE_NUMBER,0x1,_0x38083a,String(_0x32f7a5),String(_0x2c2ce1));}catch(_0x20415a){logger['warn']({'event':_0xe498ae(0x196),'error':_0x20415a[_0xe498ae(0x195)],'resource':_0x80dbf8,'formatKey':_0x1c4478,'counterInt':_0x32f7a5},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger[_0xe498ae(0x25d)]({'event':'idgen_number_idem_loser','resource':_0x80dbf8,'formatKey':_0x1c4478,'counter':_0x32f7a5},_0xe498ae(0x20c)),_0x5eccac[_0xe498ae(0x19c)];}return this['_updateMeta'](_0x80dbf8,_0x1c4478,{'lastValue':_0x3ab867,'lastCounter':_0x32f7a5,'lastIsReused':_0x4ce694,'lastGeneratedAt':_0x307293[_0xe498ae(0x1a1)]},_0x2c2ce1),logger['info']({'event':_0xa1c19d[_0xe498ae(0x23f)],'resource':_0x80dbf8,'formatKey':_0x1c4478,'counter':_0x32f7a5,'isReused':_0x4ce694},'ID\x20Generator\x20number:\x20'+_0x3ab867),_0x307293;}async[a0_0x3c2e55(0x1bd)](_0x10c658){const _0x517299=a0_0x3c2e55,_0x41e7ca={'otges':_0x517299(0x26f),'YbYML':function(_0x3f35de,_0x23220a){return _0x3f35de!==_0x23220a;},'NkFBI':function(_0x2676f6,_0x308172){return _0x2676f6!==_0x308172;},'CsHCG':'string','SdBdg':function(_0x29fffb,_0x4427f6){return _0x29fffb===_0x4427f6;},'KfTwI':_0x517299(0x264),'oCwxF':_0x517299(0x1d8),'XBHXK':function(_0x4c1bab,_0x1327be){return _0x4c1bab(_0x1327be);}};if(!this[_0x517299(0x209)])throw new IdGeneratorError(_0x517299(0x230),_0x41e7ca['otges']);let _0x5b45a2,_0x570af1,_0x11875d,_0x47512e;const _0x4c01b4=this['_validateIdempotencyKey'](_0x10c658[_0x517299(0x245)]);if(_0x41e7ca['YbYML'](_0x10c658['counterInt'],undefined)&&_0x41e7ca['YbYML'](_0x10c658[_0x517299(0x22b)],null)){this[_0x517299(0x1a2)](_0x10c658['resource']),_0x5b45a2=_0x10c658['resource'];if(_0x41e7ca[_0x517299(0x269)](typeof _0x10c658['formatKey'],_0x41e7ca[_0x517299(0x1ee)])||_0x41e7ca['SdBdg'](_0x10c658[_0x517299(0x1d9)]['length'],0x0))throw new IdGeneratorError(_0x517299(0x261),_0x41e7ca[_0x517299(0x1b3)]);_0x570af1=_0x10c658[_0x517299(0x1d9)];if(!Number[_0x517299(0x211)](_0x10c658[_0x517299(0x22b)])||_0x10c658[_0x517299(0x22b)]<0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x10c658[_0x517299(0x22b)]+')');_0x11875d=_0x10c658[_0x517299(0x22b)];const _0x28fae0=_0x570af1['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x47512e=_0x28fae0?_0x28fae0[0x1]:_0x41e7ca['oCwxF'];}else{const _0x3a9b09=this['_validateNumberParams'](_0x10c658),_0x52f2ca=this['_parseNumber']({'format':_0x3a9b09[_0x517299(0x187)],'prefix':_0x3a9b09['prefix'],'separator':_0x3a9b09['separator'],'numDigits':_0x3a9b09['numDigits'],'number':_0x10c658['number']});_0x5b45a2=_0x3a9b09[_0x517299(0x236)],_0x570af1=_0x52f2ca['formatKey'],_0x11875d=_0x52f2ca['counterInt'],_0x47512e=_0x3a9b09['format'];}const _0x47e41c=this['_buildReuseKey'](_0x5b45a2,_0x570af1),_0x5edbf5=this['_getCounterTTL'](_0x47512e);let _0x722302=null;if(_0x4c01b4){_0x722302=this['_buildIdemKey'](_0x517299(0x1c9),_0x5b45a2,_0x570af1,_0x4c01b4);const _0x1ac663=await this['_retrieveIdemCache'](_0x722302);if(_0x1ac663)return _0x1ac663;}const _0x55bf31=redisClient[_0x517299(0x257)]();await _0x55bf31['eval'](LUA_RELEASE_NUMBER,0x1,_0x47e41c,_0x41e7ca[_0x517299(0x21d)](String,_0x11875d),String(_0x5edbf5));const _0x3d9949={'released':!![],'resource':_0x5b45a2,'formatKey':_0x570af1,'counter':_0x11875d,'releasedAt':new Date()['toISOString']()};return await this[_0x517299(0x1d4)](_0x722302,_0x3d9949),this['_updateMeta'](_0x5b45a2,_0x570af1,{'lastReleasedCounter':_0x11875d,'lastReleasedAt':_0x3d9949[_0x517299(0x270)]},_0x5edbf5),logger[_0x517299(0x25d)]({'event':'idgen_number_released','resource':_0x5b45a2,'formatKey':_0x570af1,'counter':_0x11875d},_0x517299(0x1fd)+_0x11875d),_0x3d9949;}async['reserveNumber'](_0x4d9752){const _0x2dc53d=a0_0x3c2e55,_0x566a05={'HHDjK':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','jyEOm':_0x2dc53d(0x222),'BgjhR':function(_0xd38b7,_0x1e6798){return _0xd38b7*_0x1e6798;},'rULKV':'formatKey','ffEei':'format','oRNmb':_0x2dc53d(0x262),'Pgazy':'numDigits','ZKBam':'datePrefix','IwTIq':function(_0x406063,_0x51c3ed){return _0x406063(_0x51c3ed);},'Pmesy':_0x2dc53d(0x19e),'VKKMe':function(_0x2a0329,_0x45c8a6){return _0x2a0329(_0x45c8a6);},'diewA':_0x2dc53d(0x263),'bVzCZ':'idgen_reserve_value_persist_error','swmLd':'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser'};if(!this[_0x2dc53d(0x209)])throw new IdGeneratorError(_0x2dc53d(0x230),_0x566a05[_0x2dc53d(0x208)]);const _0x40b0c7=this[_0x2dc53d(0x162)](_0x4d9752),_0x337242=this[_0x2dc53d(0x176)](_0x4d9752[_0x2dc53d(0x1a9)]),_0x56766d=this[_0x2dc53d(0x204)](_0x4d9752[_0x2dc53d(0x245)]),{resource:_0x275af,format:_0x1cd0d1,prefix:_0x48eb3a,separator:_0x403303,numDigits:_0x56d0f9,reuseDelete:_0x4c268a}=_0x40b0c7,{formatKey:_0x4bb17d,datePrefix:_0x4c9810}=this[_0x2dc53d(0x216)](_0x1cd0d1,_0x48eb3a),_0x3340a9=this[_0x2dc53d(0x17b)](_0x275af,_0x4bb17d),_0x3f2bf0=this[_0x2dc53d(0x247)](_0x275af,_0x4bb17d),_0x42fd89=this['_buildReservationIndexKey'](_0x275af,_0x4bb17d),_0x34fc47=this[_0x2dc53d(0x220)](_0x1cd0d1);let _0x54b962=null;if(_0x56766d){_0x54b962=this['_buildIdemKey'](_0x566a05['jyEOm'],_0x275af,_0x4bb17d,_0x56766d);const _0x30e3b7=await this['_retrieveIdemCache'](_0x54b962);if(_0x30e3b7)return _0x30e3b7;}const _0x4b3368=crypto[_0x2dc53d(0x170)](),_0x3782bb=this['_buildReservationKey'](_0x4b3368),_0x522087=this['_buildReservationKeyPrefix'](),_0x4b28a6=Date['now'](),_0x5a8324=_0x4b28a6+_0x337242*0x3e8,_0x1d08ca=_0x566a05[_0x2dc53d(0x16d)](_0x337242,0x3e8),_0xa2a66e=new Date(_0x4b28a6)[_0x2dc53d(0x1ce)](),_0x1d1c48=new Date(_0x5a8324)['toISOString'](),_0x1fa49d=['resource',_0x275af,_0x566a05['rULKV'],_0x4bb17d,_0x566a05['ffEei'],_0x1cd0d1,'prefix',_0x48eb3a,_0x566a05['oRNmb'],_0x403303,_0x566a05[_0x2dc53d(0x21c)],String(_0x56d0f9),_0x566a05['ZKBam'],_0x4c9810||'','createdAt',_0xa2a66e,_0x2dc53d(0x1db),_0x1d1c48,'ttlMs',_0x566a05[_0x2dc53d(0x171)](String,_0x1d08ca)];_0x56766d&&_0x1fa49d['push'](_0x566a05['Pmesy'],_0x56766d);const _0x2f50fa=redisClient['getClient'](),_0x2880d5=await _0x2f50fa['eval'](LUA_RESERVE_NUMBER,0x3,_0x3340a9,_0x3f2bf0,_0x42fd89,_0x4c268a?'1':'0',String(_0x34fc47),_0x4b3368,_0x3782bb,String(_0x1d08ca),String(_0x5a8324),_0x566a05['VKKMe'](String,_0x4b28a6),_0x522087,..._0x1fa49d),_0xf124e9=_0x2880d5[0x0],_0x27c341=_0x2880d5[0x1]===0x1,_0x1be9d9=_0x2880d5[0x2]||0x0;let _0x5ec2ef;try{_0x5ec2ef=this['_formatNumber']({'format':_0x1cd0d1,'prefix':_0x48eb3a,'datePrefix':_0x4c9810,'separator':_0x403303,'numDigits':_0x56d0f9,'counterInt':_0xf124e9});}catch(_0x4ff031){try{await _0x2f50fa['eval'](LUA_CANCEL_RESERVATION,0x3,_0x3782bb,_0x42fd89,_0x3f2bf0,_0x4b3368,String(_0x34fc47));}catch(_0x2dc690){logger['warn']({'event':_0x2dc53d(0x186),'error':_0x2dc690['message'],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x4ff031;}try{await _0x2f50fa[_0x2dc53d(0x277)](_0x3782bb,_0x566a05['diewA'],_0x5ec2ef);}catch(_0x3df433){logger['warn']({'event':_0x566a05['bVzCZ'],'error':_0x3df433[_0x2dc53d(0x195)],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},_0x2dc53d(0x23e));}const _0x5ecdf9={'token':_0x4b3368,'value':_0x5ec2ef,'counter':_0xf124e9,'resource':_0x275af,'formatKey':_0x4bb17d,'isReused':_0x27c341,'createdAt':_0xa2a66e,'expiresAt':_0x1d1c48,'reapedCount':_0x1be9d9},_0x5b7f76=await this['_storeIdemCacheNX'](_0x54b962,_0x5ecdf9);if(!_0x5b7f76[_0x2dc53d(0x17e)]){try{await _0x2f50fa[_0x2dc53d(0x164)](LUA_CANCEL_RESERVATION,0x3,_0x3782bb,_0x42fd89,_0x3f2bf0,_0x4b3368,_0x566a05[_0x2dc53d(0x171)](String,_0x34fc47));}catch(_0x37fb69){logger['warn']({'event':_0x2dc53d(0x25a),'error':_0x37fb69['message'],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},_0x566a05[_0x2dc53d(0x1ad)]);}return logger[_0x2dc53d(0x25d)]({'event':'idgen_reserve_idem_loser','resource':_0x275af,'formatKey':_0x4bb17d,'counter':_0xf124e9,'token':_0x4b3368},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x5b7f76[_0x2dc53d(0x19c)];}return this['_updateMeta'](_0x275af,_0x4bb17d,{'lastReservedCounter':_0xf124e9,'lastReservedAt':_0xa2a66e,'lastReapedCount':_0x1be9d9},_0x34fc47),logger[_0x2dc53d(0x25d)]({'event':_0x2dc53d(0x26a),'resource':_0x275af,'formatKey':_0x4bb17d,'counter':_0xf124e9,'isReused':_0x27c341,'token':_0x4b3368,'ttl':_0x337242,'reapedCount':_0x1be9d9},'ID\x20Generator\x20number\x20reserved:\x20'+_0x5ec2ef+'\x20(token='+_0x4b3368+')'),_0x5ecdf9;}async['confirmReservation'](_0x3299bf){const _0x378fbd=a0_0x3c2e55,_0x38731f={'JCvTS':'idgen'};if(!this[_0x378fbd(0x209)])throw new IdGeneratorError('IDGEN_DISABLED',_0x378fbd(0x26f));const _0x275958=this[_0x378fbd(0x24c)](_0x3299bf&&_0x3299bf[_0x378fbd(0x182)]),_0x594705=this[_0x378fbd(0x204)](_0x3299bf&&_0x3299bf['idempotencyKey']);let _0x19af97=null;if(_0x594705){_0x19af97=idempotencyManager['buildDeterministicKey'](_0x38731f[_0x378fbd(0x27c)],_0x378fbd(0x1ef),_0x275958+':'+_0x594705);const _0xd8d755=await this[_0x378fbd(0x1be)](_0x19af97);if(_0xd8d755)return _0xd8d755;}const _0x4dcd42=await this['_getReservationContext'](_0x275958),_0x9cabdc=redisClient['getClient'](),_0x2c3f51=await _0x9cabdc[_0x378fbd(0x164)](LUA_CONFIRM_RESERVATION,0x2,_0x4dcd42['rsvKey'],_0x4dcd42[_0x378fbd(0x19a)],_0x275958);if(!_0x2c3f51||_0x2c3f51[0x0]!==0x1)throw new IdGeneratorError(_0x378fbd(0x1c7),_0x378fbd(0x1a4)+_0x275958,{'token':_0x275958});const _0x3cb49c=parseInt(_0x2c3f51[0x1],0xa),_0x3cff92=_0x2c3f51[0x2],_0x48ba0e=_0x2c3f51[0x3],_0x4aca89=new Date()['toISOString'](),_0x315d67={'confirmed':!![],'token':_0x275958,'value':_0x3cff92,'counter':_0x3cb49c,'resource':_0x4dcd42[_0x378fbd(0x236)],'formatKey':_0x48ba0e,'confirmedAt':_0x4aca89};await this[_0x378fbd(0x1d4)](_0x19af97,_0x315d67);const _0x42ce29=_0x48ba0e[_0x378fbd(0x199)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3af342=_0x42ce29?_0x42ce29[0x1]:_0x378fbd(0x1d8),_0x5b27bb=this[_0x378fbd(0x220)](_0x3af342);return this['_updateMeta'](_0x4dcd42[_0x378fbd(0x236)],_0x48ba0e,{'lastConfirmedCounter':_0x3cb49c,'lastConfirmedAt':_0x4aca89},_0x5b27bb),logger[_0x378fbd(0x25d)]({'event':_0x378fbd(0x21f),'resource':_0x4dcd42['resource'],'formatKey':_0x48ba0e,'counter':_0x3cb49c,'token':_0x275958},_0x378fbd(0x1b5)+_0x3cff92+'\x20(token='+_0x275958+')'),_0x315d67;}async[a0_0x3c2e55(0x242)](_0x2e79c9){const _0x347850=a0_0x3c2e55,_0x5415c2={'NGLYQ':'IDGEN_DISABLED','Ulpkq':_0x347850(0x26f),'tJPJR':_0x347850(0x1d2)};if(!this['enabled'])throw new IdGeneratorError(_0x5415c2[_0x347850(0x1ba)],_0x5415c2[_0x347850(0x21b)]);const _0x169de5=this['_validateReservationToken'](_0x2e79c9&&_0x2e79c9[_0x347850(0x182)]),_0x163561=this['_validateIdempotencyKey'](_0x2e79c9&&_0x2e79c9[_0x347850(0x245)]);let _0x36279a=null;if(_0x163561){_0x36279a=idempotencyManager[_0x347850(0x194)](_0x5415c2[_0x347850(0x17f)],'reserve_cancel',_0x169de5+':'+_0x163561);const _0x52cb55=await this[_0x347850(0x1be)](_0x36279a);if(_0x52cb55)return _0x52cb55;}const _0x3be619=await this[_0x347850(0x1fc)](_0x169de5),_0x612996=this[_0x347850(0x247)](_0x3be619['resource'],_0x3be619['formatKey']),_0x3a62c6=_0x3be619[_0x347850(0x1d9)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x4b05cb=_0x3a62c6?_0x3a62c6[0x1]:'text',_0x1557b4=this[_0x347850(0x220)](_0x4b05cb),_0x5c8c2f=redisClient['getClient'](),_0x468857=await _0x5c8c2f[_0x347850(0x164)](LUA_CANCEL_RESERVATION,0x3,_0x3be619[_0x347850(0x1d3)],_0x3be619['rsvIdxKey'],_0x612996,_0x169de5,String(_0x1557b4));if(!_0x468857||_0x468857[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x347850(0x1a4)+_0x169de5,{'token':_0x169de5});const _0x2fb578=parseInt(_0x468857[0x1],0xa),_0x5e701e=_0x468857[0x2],_0x34dad6=_0x468857[0x3],_0x1700ed=new Date()['toISOString'](),_0x5b865b={'cancelled':!![],'token':_0x169de5,'value':_0x5e701e,'counter':_0x2fb578,'resource':_0x3be619['resource'],'formatKey':_0x34dad6,'releasedToReuse':!![],'cancelledAt':_0x1700ed};return await this['_storeIdemCache'](_0x36279a,_0x5b865b),this['_updateMeta'](_0x3be619[_0x347850(0x236)],_0x34dad6,{'lastCancelledCounter':_0x2fb578,'lastCancelledAt':_0x1700ed},_0x1557b4),logger['info']({'event':_0x347850(0x1a7),'resource':_0x3be619[_0x347850(0x236)],'formatKey':_0x34dad6,'counter':_0x2fb578,'token':_0x169de5},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x5e701e+_0x347850(0x1ec)+_0x169de5+')'),_0x5b865b;}async['extendReservation'](_0x5df918){const _0x2f34e2=a0_0x3c2e55,_0x1ac647={'VRYel':'idgen','WjYzQ':'reserve_extend','kuWXc':function(_0x436229,_0x583e18){return _0x436229*_0x583e18;},'zVOrP':function(_0x40acbb,_0x59e39d){return _0x40acbb*_0x59e39d;},'Xlmsd':_0x2f34e2(0x1d8),'uSQcf':_0x2f34e2(0x17a)};if(!this['enabled'])throw new IdGeneratorError(_0x2f34e2(0x230),_0x2f34e2(0x26f));const _0x5e1fb6=this[_0x2f34e2(0x24c)](_0x5df918&&_0x5df918[_0x2f34e2(0x182)]),_0x15a80e=this['_validateReserveTTL'](_0x5df918&&_0x5df918[_0x2f34e2(0x1a9)]),_0xa12f0=this[_0x2f34e2(0x204)](_0x5df918&&_0x5df918[_0x2f34e2(0x245)]);let _0x550266=null;if(_0xa12f0){_0x550266=idempotencyManager[_0x2f34e2(0x194)](_0x1ac647['VRYel'],_0x1ac647['WjYzQ'],_0x5e1fb6+':'+_0xa12f0);const _0x5a8b8a=await this[_0x2f34e2(0x1be)](_0x550266);if(_0x5a8b8a)return _0x5a8b8a;}const _0x413b81=await this[_0x2f34e2(0x1fc)](_0x5e1fb6),_0x1383e1=Date[_0x2f34e2(0x1ff)](),_0x3590d1=_0x1383e1+_0x1ac647['kuWXc'](_0x15a80e,0x3e8),_0x4518ea=_0x1ac647['zVOrP'](_0x15a80e,0x3e8),_0xf557fa=new Date(_0x3590d1)[_0x2f34e2(0x1ce)](),_0x35f27a=redisClient[_0x2f34e2(0x257)](),_0x218e36=await _0x35f27a[_0x2f34e2(0x164)](LUA_EXTEND_RESERVATION,0x2,_0x413b81['rsvKey'],_0x413b81['rsvIdxKey'],_0x5e1fb6,String(_0x4518ea),String(_0x3590d1),_0xf557fa);if(!_0x218e36||_0x218e36[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5e1fb6,{'token':_0x5e1fb6});const _0x7090fb=_0x218e36[0x1],_0x3e4765=parseInt(_0x218e36[0x2],0xa),_0x41be19=_0x218e36[0x3],_0x587789=_0x218e36[0x4],_0x475b92=new Date(_0x1383e1)['toISOString'](),_0x166de0={'extended':!![],'token':_0x5e1fb6,'previousExpiresAt':_0x7090fb,'expiresAt':_0xf557fa,'ttlMs':_0x4518ea,'resource':_0x413b81['resource'],'formatKey':_0x587789,'counter':_0x3e4765,'value':_0x41be19,'extendedAt':_0x475b92};await this[_0x2f34e2(0x1d4)](_0x550266,_0x166de0);const _0x400413=_0x587789['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x399b60=_0x400413?_0x400413[0x1]:_0x1ac647['Xlmsd'],_0x4e9224=this['_getCounterTTL'](_0x399b60);return this[_0x2f34e2(0x228)](_0x413b81[_0x2f34e2(0x236)],_0x587789,{'lastExtendedCounter':_0x3e4765,'lastExtendedAt':_0x475b92},_0x4e9224),logger['info']({'event':_0x1ac647[_0x2f34e2(0x16c)],'resource':_0x413b81[_0x2f34e2(0x236)],'formatKey':_0x587789,'counter':_0x3e4765,'token':_0x5e1fb6,'ttl':_0x15a80e},_0x2f34e2(0x233)+_0x41be19+'\x20(token='+_0x5e1fb6+',\x20+'+_0x15a80e+'s)'),_0x166de0;}async[a0_0x3c2e55(0x266)](_0x1abb94){const _0x598e6d=a0_0x3c2e55,_0x30ccf9={'OfHBA':_0x598e6d(0x230),'eMrfv':function(_0x428568,_0x903d8a){return _0x428568===_0x903d8a;},'cmcdI':function(_0x4bce51,_0x9ea045){return _0x4bce51===_0x9ea045;},'TQeuK':function(_0x2783bd,_0x5c7efc){return _0x2783bd===_0x5c7efc;},'cAfjl':_0x598e6d(0x25e)};if(!this[_0x598e6d(0x209)])throw new IdGeneratorError(_0x30ccf9['OfHBA'],_0x598e6d(0x26f));const _0x2e6332=this['_validateReservationToken'](_0x1abb94&&_0x1abb94[_0x598e6d(0x182)]),_0x4e96fa=this[_0x598e6d(0x1fa)](_0x2e6332),_0x517088=redisClient['getClient'](),_0x2ab3c0=_0x517088['pipeline']();_0x2ab3c0[_0x598e6d(0x1b0)](_0x4e96fa),_0x2ab3c0[_0x598e6d(0x240)](_0x4e96fa);const _0x4f76db=await _0x2ab3c0['exec'](),_0x1f851c=_0x4f76db&&_0x4f76db[0x0]&&_0x4f76db[0x0][0x1],_0x3c2b43=_0x4f76db&&_0x4f76db[0x1]&&_0x4f76db[0x1][0x1];if(!_0x1f851c||Object['keys'](_0x1f851c)[_0x598e6d(0x166)]===0x0)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x2e6332,{'token':_0x2e6332});return{'token':_0x2e6332,'resource':_0x1f851c['resource']||null,'formatKey':_0x1f851c['formatKey']||null,'format':_0x1f851c['format']||null,'prefix':_0x1f851c[_0x598e6d(0x259)]||'','separator':_0x1f851c['separator']||'','numDigits':_0x1f851c['numDigits']?parseInt(_0x1f851c['numDigits'],0xa):null,'datePrefix':_0x1f851c[_0x598e6d(0x235)]||'','counter':_0x1f851c[_0x598e6d(0x1bb)]?parseInt(_0x1f851c[_0x598e6d(0x1bb)],0xa):null,'value':_0x1f851c['value']||null,'isReused':_0x30ccf9['eMrfv'](_0x1f851c['isReused'],'1')||_0x30ccf9['cmcdI'](_0x1f851c[_0x598e6d(0x1e3)],0x1),'createdAt':_0x1f851c[_0x598e6d(0x173)]||null,'expiresAt':_0x1f851c[_0x598e6d(0x1db)]||null,'ttlRemainingMs':_0x30ccf9[_0x598e6d(0x184)](typeof _0x3c2b43,_0x30ccf9[_0x598e6d(0x185)])&&_0x3c2b43>=0x0?_0x3c2b43:null};}async['_getReservationContext'](_0x9085f8){const _0xd49393=a0_0x3c2e55,_0x38d039={'XDaYy':_0xd49393(0x1d9),'jqUIR':function(_0x2a6b01,_0x1b3e7b){return _0x2a6b01||_0x1b3e7b;}},_0x2c9b38=this['_buildReservationKey'](_0x9085f8),_0x371abd=redisClient['getClient'](),_0x6208e9=await _0x371abd[_0xd49393(0x251)](_0x2c9b38,_0xd49393(0x236),_0x38d039['XDaYy']),_0x3a09c1=_0x6208e9&&_0x6208e9[0x0],_0x347ba4=_0x6208e9&&_0x6208e9[0x1];if(_0x38d039[_0xd49393(0x27a)](!_0x3a09c1,!_0x347ba4))throw new IdGeneratorError(_0xd49393(0x1c7),_0xd49393(0x1a4)+_0x9085f8,{'token':_0x9085f8});return{'resource':_0x3a09c1,'formatKey':_0x347ba4,'rsvKey':_0x2c9b38,'rsvIdxKey':this['_buildReservationIndexKey'](_0x3a09c1,_0x347ba4)};}async['random'](_0x21f791){const _0x570f8f=a0_0x3c2e55,_0x418de9={'Clbiq':function(_0x54ef54,_0x2d3f67){return _0x54ef54===_0x2d3f67;},'XNkrL':function(_0xb4c987,_0x2ade0c){return _0xb4c987===_0x2ade0c;},'RfhqZ':function(_0xad2753,_0x32f156){return _0xad2753===_0x32f156;},'QShFU':'IDGEN_UNIQUE_RETRY_EXHAUSTED','OZYBE':function(_0x58730c,_0x108b53){return _0x58730c&&_0x108b53;},'hDJBu':function(_0x135de3,_0x400a1b){return _0x135de3*_0x400a1b;},'EOJCP':function(_0x3d9988,_0x3d1c5d){return _0x3d9988||_0x3d1c5d;}};if(!this['enabled'])throw new IdGeneratorError(_0x570f8f(0x230),'ID\x20Generator\x20is\x20disabled');this[_0x570f8f(0x1a2)](_0x21f791['resource']),this[_0x570f8f(0x22e)](_0x21f791[_0x570f8f(0x217)]);const _0x553274=this['_validateTTL'](_0x21f791['ttl']),_0x77ff23=this['_validateMaxRetry'](_0x21f791['maxRetry']),_0x4e45a0=this['_validateIdempotencyKey'](_0x21f791['idempotencyKey']),_0x4bdac7=_0x418de9[_0x570f8f(0x1f5)](_0x21f791[_0x570f8f(0x1b4)],!![]),{resource:_0x5a6332,pattern:_0x1324b3}=_0x21f791;let _0x3a37a4=null;if(_0x4e45a0){_0x3a37a4=this['_buildIdemKey'](_0x570f8f(0x275),_0x5a6332,null,_0x4e45a0);const _0x2cddfc=await this[_0x570f8f(0x1be)](_0x3a37a4);if(_0x2cddfc)return _0x2cddfc;}const _0x4d2421=redisClient['getClient']();let _0x5f2504=null,_0x5df9e8=0x0;if(!_0x4bdac7)_0x5f2504=this['_generateFromPattern'](_0x1324b3),_0x5df9e8=0x1;else{for(let _0x8f9484=0x0;_0x8f9484<_0x77ff23;_0x8f9484++){_0x5df9e8++;const _0x1604f8=this[_0x570f8f(0x241)](_0x1324b3);if(_0x553274){const _0x362d65=this['_buildActiveKey'](_0x5a6332,_0x1604f8),_0x32ea25=await _0x4d2421[_0x570f8f(0x20a)](_0x362d65,'1','EX',_0x553274,'NX');if(_0x418de9[_0x570f8f(0x1d7)](_0x32ea25,'OK')){_0x5f2504=_0x1604f8;break;}}else{const _0x21fa04=this[_0x570f8f(0x1ae)](_0x5a6332),_0x4bbc0a=await _0x4d2421[_0x570f8f(0x207)](_0x21fa04,_0x1604f8);if(_0x4bbc0a===0x1){_0x5f2504=_0x1604f8;break;}}}if(_0x418de9['RfhqZ'](_0x5f2504,null))throw new IdGeneratorError(_0x418de9['QShFU'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x77ff23+_0x570f8f(0x232),{'resource':_0x5a6332,'pattern':_0x1324b3,'maxRetry':_0x77ff23});}const _0x21bc7e={'value':_0x5f2504,'resource':_0x5a6332,'pattern':_0x1324b3,'attemptCount':_0x5df9e8,'generatedAt':new Date()['toISOString']()};_0x418de9['OZYBE'](_0x553274,_0x4bdac7)&&(_0x21bc7e[_0x570f8f(0x1db)]=new Date(Date[_0x570f8f(0x1ff)]()+_0x418de9[_0x570f8f(0x1f8)](_0x553274,0x3e8))[_0x570f8f(0x1ce)]());const _0x3c43a0=await this[_0x570f8f(0x1f1)](_0x3a37a4,_0x21bc7e);if(!_0x3c43a0[_0x570f8f(0x17e)])return _0x4bdac7&&await this[_0x570f8f(0x1b1)](_0x5a6332,_0x5f2504,_0x553274),logger[_0x570f8f(0x25d)]({'event':'idgen_random_idem_loser','resource':_0x5a6332,'pattern':_0x1324b3,'value':_0x5f2504},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x3c43a0[_0x570f8f(0x19c)];return logger['info']({'event':'idgen_random_generated','resource':_0x5a6332,'pattern':_0x1324b3,'attemptCount':_0x5df9e8,'ensureUnique':_0x4bdac7,'ttl':_0x418de9['EOJCP'](_0x553274,0x0)},'ID\x20Generator\x20random:\x20'+_0x5f2504),_0x21bc7e;}async['pin'](_0x4155fb){const _0x37064f=a0_0x3c2e55,_0x493125={'XypQN':function(_0x45cb73,_0x19bd15){return _0x45cb73==_0x19bd15;},'kuSms':function(_0x37effb,_0x152e85){return _0x37effb<_0x152e85;},'iuxdU':'IDGEN_INVALID_DIGITS'},_0x419caa=_0x493125[_0x37064f(0x16b)](_0x4155fb[_0x37064f(0x198)],null)?this[_0x37064f(0x179)]:_0x4155fb[_0x37064f(0x198)];if(!Number['isInteger'](_0x419caa)||_0x493125[_0x37064f(0x271)](_0x419caa,MIN_PIN_DIGITS)||_0x419caa>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x493125['iuxdU'],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x37064f(0x1fe)+_0x419caa+')');const _0x56c8fc='9'['repeat'](_0x419caa);return this['random']({'resource':_0x4155fb[_0x37064f(0x236)],'pattern':_0x56c8fc,'ensureUnique':_0x4155fb[_0x37064f(0x1b4)]===!![],'ttl':_0x4155fb['ttl'],'maxRetry':_0x4155fb['maxRetry'],'idempotencyKey':_0x4155fb[_0x37064f(0x245)]});}async['serial'](_0x4e9138){const _0xcfc635=a0_0x3c2e55,_0x3d4fed={'sjHeH':function(_0x2ec7a6,_0x4fed5f){return _0x2ec7a6!==_0x4fed5f;}},_0x1bbf25=_0x4e9138['pattern']||this['defaultSerialPattern'];return this[_0xcfc635(0x275)]({'resource':_0x4e9138[_0xcfc635(0x236)],'pattern':_0x1bbf25,'ensureUnique':_0x3d4fed['sjHeH'](_0x4e9138[_0xcfc635(0x1b4)],![]),'ttl':_0x4e9138[_0xcfc635(0x1a9)],'maxRetry':_0x4e9138['maxRetry'],'idempotencyKey':_0x4e9138[_0xcfc635(0x245)]});}async['code'](_0x434d9e){const _0x5f5382=a0_0x3c2e55,_0x309640={'OYZcj':function(_0x524bf9,_0x12d883){return _0x524bf9!==_0x12d883;}},_0x3a6464=_0x434d9e['pattern']||this[_0x5f5382(0x252)];return this['random']({'resource':_0x434d9e['resource'],'pattern':_0x3a6464,'ensureUnique':_0x309640['OYZcj'](_0x434d9e['ensureUnique'],![]),'ttl':_0x434d9e['ttl'],'maxRetry':_0x434d9e[_0x5f5382(0x213)],'idempotencyKey':_0x434d9e['idempotencyKey']});}async['consume'](_0x3dbd49){const _0x189b71=a0_0x3c2e55,_0x4ca6ea={'TMVdr':'IDGEN_DISABLED','dxNbZ':_0x189b71(0x26f),'VXVub':function(_0x9d08cc,_0x35eaf3){return _0x9d08cc!==_0x35eaf3;},'WUkgR':_0x189b71(0x1aa),'wysro':function(_0x527676,_0x5b432f){return _0x527676>_0x5b432f;},'aiNXC':function(_0x48f534,_0x2af1e1){return _0x48f534+_0x2af1e1;},'LqJdH':_0x189b71(0x274)};if(!this['enabled'])throw new IdGeneratorError(_0x4ca6ea[_0x189b71(0x1d1)],_0x4ca6ea['dxNbZ']);this[_0x189b71(0x1a2)](_0x3dbd49[_0x189b71(0x236)]);if(_0x4ca6ea['VXVub'](typeof _0x3dbd49[_0x189b71(0x263)],_0x189b71(0x15e))||_0x3dbd49['value'][_0x189b71(0x166)]===0x0)throw new IdGeneratorError(_0x189b71(0x261),_0x4ca6ea['WUkgR']);const {resource:_0x957a88,value:_0x2a45b1}=_0x3dbd49,_0x2abf0c=redisClient[_0x189b71(0x257)](),_0x503ffc=this[_0x189b71(0x163)](_0x957a88,_0x2a45b1),_0x46a585=this[_0x189b71(0x1ae)](_0x957a88),[_0x90e89f,_0x229d46]=await Promise[_0x189b71(0x27e)]([_0x2abf0c['del'](_0x503ffc),_0x2abf0c['srem'](_0x46a585,_0x2a45b1)]),_0x68de1c=_0x4ca6ea['wysro'](_0x4ca6ea['aiNXC'](_0x90e89f,_0x229d46),0x0);return logger[_0x189b71(0x25d)]({'event':_0x4ca6ea[_0x189b71(0x15a)],'resource':_0x957a88,'value':_0x2a45b1,'consumed':_0x68de1c},_0x189b71(0x253)+_0x2a45b1),{'consumed':_0x68de1c,'resource':_0x957a88,'value':_0x2a45b1,'consumedAt':new Date()['toISOString']()};}async[a0_0x3c2e55(0x159)](_0x2c7ac2){const _0x13c692=a0_0x3c2e55,_0x3cd615={'ZrRPT':_0x13c692(0x25e),'qJMxq':_0x13c692(0x1d8),'sBFHg':'IDGEN_INVALID_FORMAT','UjzuE':function(_0x30ba99,_0x33ba26,_0x18d0a6){return _0x30ba99(_0x33ba26,_0x18d0a6);},'hsmdL':_0x13c692(0x275)};if(!this[_0x13c692(0x209)])throw new IdGeneratorError(_0x13c692(0x230),'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x2c7ac2[_0x13c692(0x236)]);const _0x325e55=_0x2c7ac2['mode']||_0x3cd615[_0x13c692(0x1c5)],_0xa0e0c2=redisClient['getClient']();if(_0x325e55==='number'){const _0x209f79=(_0x2c7ac2['format']||_0x3cd615['qJMxq'])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x209f79))throw new IdGeneratorError(_0x3cd615[_0x13c692(0x23c)],_0x13c692(0x1de)+_0x2c7ac2['format']);const {formatKey:_0x1a8f37}=this['_buildFormatKey'](_0x209f79,_0x2c7ac2[_0x13c692(0x259)]||''),_0x55a411=this['_buildSeqKey'](_0x2c7ac2['resource'],_0x1a8f37),_0x4e1ffd=this[_0x13c692(0x247)](_0x2c7ac2[_0x13c692(0x236)],_0x1a8f37),[_0x57dc54,_0x3f6422]=await Promise[_0x13c692(0x27e)]([_0xa0e0c2[_0x13c692(0x1fb)](_0x55a411),_0xa0e0c2[_0x13c692(0x26d)](_0x4e1ffd)]);return{'resource':_0x2c7ac2[_0x13c692(0x236)],'mode':'number','formatKey':_0x1a8f37,'currentCounter':_0x3cd615[_0x13c692(0x17c)](parseInt,_0x57dc54,0xa)||0x0,'reusePoolSize':_0x3f6422||0x0};}if(_0x325e55===_0x3cd615[_0x13c692(0x1c0)]){const _0x264072=this[_0x13c692(0x1ae)](_0x2c7ac2['resource']),_0x6fc09d=await _0xa0e0c2[_0x13c692(0x24e)](_0x264072);return{'resource':_0x2c7ac2['resource'],'mode':_0x3cd615[_0x13c692(0x1c0)],'issuedCount':_0x6fc09d||0x0};}throw new IdGeneratorError(_0x13c692(0x1bc),'Unknown\x20mode:\x20'+_0x325e55);}async[a0_0x3c2e55(0x161)](_0x4172c1){const _0x3997dc=a0_0x3c2e55,_0x263525={'FZjQE':function(_0x531392,_0x4b06be){return _0x531392===_0x4b06be;}},_0x55b038=await this[_0x3997dc(0x159)](_0x4172c1);if(_0x263525['FZjQE'](_0x55b038['mode'],'number')){const _0x3fa956=redisClient[_0x3997dc(0x257)](),_0x27940d=this[_0x3997dc(0x174)](_0x4172c1['resource'],_0x55b038['formatKey']),_0x5c46f3=this['_buildReuseKey'](_0x4172c1[_0x3997dc(0x236)],_0x55b038[_0x3997dc(0x1d9)]),[_0x2732ec,_0x4379d8]=await Promise['all']([_0x3fa956['hgetall'](_0x27940d),_0x3fa956['zrange'](_0x5c46f3,0x0,-0x1)]);return{..._0x55b038,'reusePoolValues':_0x4379d8['map'](_0x14cc7a=>parseInt(_0x14cc7a,0xa)),'meta':_0x2732ec&&Object[_0x3997dc(0x18e)](_0x2732ec)['length']>0x0?_0x2732ec:null};}return _0x55b038;}async['reset'](_0x313c5c){const _0x1ba354=a0_0x3c2e55,_0x48be0e={'NPyVp':_0x1ba354(0x230),'rudtB':'ID\x20Generator\x20is\x20disabled','PNCSi':_0x1ba354(0x1cd),'xDpNq':function(_0x3cc3e7,_0xf1858a){return _0x3cc3e7===_0xf1858a;},'whALS':'number','adSEj':_0x1ba354(0x190),'gDUKw':_0x1ba354(0x246),'yMOhD':_0x1ba354(0x1e0),'VnSMK':_0x1ba354(0x23b),'dxKkq':_0x1ba354(0x275),'DmYIU':_0x1ba354(0x16e)};if(!this[_0x1ba354(0x209)])throw new IdGeneratorError(_0x48be0e['NPyVp'],_0x48be0e[_0x1ba354(0x26e)]);if(!this['allowReset'])throw new IdGeneratorError(_0x1ba354(0x193),_0x48be0e[_0x1ba354(0x221)]);this[_0x1ba354(0x1a2)](_0x313c5c[_0x1ba354(0x236)]);const _0x5969aa=_0x313c5c[_0x1ba354(0x1b9)]||_0x1ba354(0x25e),_0x31219a=redisClient[_0x1ba354(0x257)]();if(_0x48be0e['xDpNq'](_0x5969aa,_0x48be0e['whALS'])){const _0x5e7ba0=(_0x313c5c[_0x1ba354(0x187)]||_0x1ba354(0x1d8))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x5e7ba0))throw new IdGeneratorError(_0x48be0e[_0x1ba354(0x1cf)],'Invalid\x20format:\x20'+_0x313c5c[_0x1ba354(0x187)]);const {formatKey:_0x325d57}=this['_buildFormatKey'](_0x5e7ba0,_0x313c5c[_0x1ba354(0x259)]||''),_0xfe8a0e=this[_0x1ba354(0x17b)](_0x313c5c['resource'],_0x325d57),_0x3b02ce=this['_buildReuseKey'](_0x313c5c['resource'],_0x325d57),_0x397ab4=this['_buildMetaKey'](_0x313c5c['resource'],_0x325d57);return await _0x31219a['del'](_0xfe8a0e,_0x3b02ce,_0x397ab4),logger['warn']({'event':_0x48be0e['gDUKw'],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':_0x48be0e['whALS'],'formatKey':_0x325d57},_0x1ba354(0x1dd)+_0x313c5c[_0x1ba354(0x236)]+':'+_0x325d57),{'reset':!![],'resource':_0x313c5c['resource'],'mode':_0x1ba354(0x25e),'formatKey':_0x325d57,'deletedKeys':[_0x48be0e['yMOhD'],_0x48be0e[_0x1ba354(0x1b6)],'meta']};}if(_0x48be0e['xDpNq'](_0x5969aa,_0x48be0e['dxKkq'])){const _0xbb807f=this[_0x1ba354(0x1ae)](_0x313c5c[_0x1ba354(0x236)]);return await _0x31219a['del'](_0xbb807f),logger[_0x1ba354(0x239)]({'event':_0x48be0e['gDUKw'],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':_0x48be0e['dxKkq']},'ID\x20Generator\x20reset:\x20random:'+_0x313c5c['resource']),{'reset':!![],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':'random','deletedKeys':[_0x48be0e[_0x1ba354(0x256)]]};}throw new IdGeneratorError(_0x1ba354(0x1bc),'Unknown\x20mode:\x20'+_0x5969aa);}}const instance=new IdGenerator();function a0_0x4560(){const _0xa81cb=['zM9YBwf0s2v5','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','zxHWAxjLC0f0','rgPlsK4','suqGr2vUzxjHDg9YihjLC2v0oIa','sw52ywXPzcbMB3jTyxq6ia','surhru5Fq09vtLrfuL9pvKvsrKXpvW','C2vX','A2v5uhjLzML4','ndy1odKYvvLpDxDN','AxnszxvZzwq','z2v0rgf0zq','AxnZDwvKoG','x2TLEvbYzwzPEa','x2LKzw1uveW','lI9YzwrPCY1JBgLLBNq','x2rLzMf1BhrqAw5eAwDPDhm','Cu9Mwxy','Bwv0ytO','icH0B2TLBJ0','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','q3niq0C','CMvZzxj2zv9JB25MAxjT','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','x3n0B3jLswrLBunHy2HLtLG','x2rLzMf1BhrdB2rLugf0DgvYBG','yvjewem','mLbQs0fitq','q2XIAxe','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','vw5RBM93BIbMB3jTyxq6ia','AerkqNu','surhru5Fsu5wquXjrf9srvnpvvjdrq','x2j1AwXKuMvZzxj2yxrPB25lzxK','z2v0','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','icHNB3q6ia','BM93','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','CNn2x2LKEdO','x2fSBg93uMvZzxq','AgHIDNe','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','CgfKu3rHCNq','C2fKza','seHeAKS','zw5HyMXLza','C2v0','mJaYnda4oenbtuXKBq','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','x3jLC2vYDMvezwzHDwX0vfrm','Dhj1zq','x3zHBgLKyxrLtwf4uMv0CNK','mtGYnti2mffgu3Hquq','AxnjBNrLz2vY','ihbHCNrZkq','Bwf4uMv0CNK','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','CMfUzg9Tsw50','x2j1AwXKrM9YBwf0s2v5','Cgf0DgvYBG','x2zVCM1HDe51BwjLCG','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','ofbnBuTXDW','vwXWA3e','ugDHENK','wejiweS','C2T6vgO','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','x2DLDenVDw50zxjuveW','ue5du2K','CMvZzxj2zq','wfHywc1ywfHylvHywfGTwfHywa','AvnwBem','ywXSB3DszxnLDa','ELbctMu','AKjWDuO','x3vWzgf0zu1LDge','A29krKO','x2vUC3vYzuLUAxrPywXPEMvK','y291BNrLCKLUDa','z2v0tw9UDgG','x2rLzMf1BhrtzxjPywXqyxr0zxjU','x3zHBgLKyxrLugf0DgvYBG','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','surhru5FreLtqujmruq','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','D3PKueC','zgf0zvbYzwzPEa','CMvZB3vYy2u','B1DfDxO','z0vysKW','D2fYBG','yNHmAKS','CMv1C2u','C0jgsgC','x2rLzMf1BhrnyxHszxrYEq','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','yLrgv2m','Chr0Ba','x2DLBMvYyxrLrNjVBvbHDhrLCM4','y2fUy2vSuMvZzxj2yxrPB24','x3rLEhq','qxHbBuS','AwrLBxbVDgvUy3LlzxK','AwrNzw5FCMvZzxq','x2j1AwXKuMv1C2vlzxK','DgvZDa','s1nMExC','AwrLBvruta','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','swrhzw5LCMf0B3jfCNjVCG','C2nHCMq','wfjWsNe','qLLKyxG','Ag1Nzxq','zgvMyxvSDenVzgvqyxr0zxjU','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','ndbIDNz1s1u','zw52','rg1zsvu','z2v0q2XPzw50','ve5ZzKW','ChjLzML4','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','x3jLC2vYDMvnyxHuveW','Aw5MBW','BNvTyMvY','uKTmDuK','ExL5Ew1T','surhru5Fsu5wquXjrf9ovu1crvi','C2vWyxjHDg9Y','DMfSDwu','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','Bhz1EKO','z2v0uMvZzxj2yxrPB24','rwnTwK4','EwHeEuy','tMTgqKK','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','x3L5ExLTBv8','ExL5Ew1Tzgq','EMnHCMq','CNvKDei','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','CMvSzwfZzwrbDa','A3vtBxm','x3bHzdi','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','AwrNzw5Fy29UC3vTzwq','CMfUzg9T','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','AhnLDa','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','ANfvsvi','CNn2oG','sKn2vfm','Bw5Jzxi','ywXS','r3rkyNa','C3bSAxq','ihnLy29UzhmGkgDVDdOG','CgvLAW','thfkzeG','surhru5Fsu5wquXjrf9ut0TftG','ndq3nda5owTSEMzHBW','surhru5Fsu5wquXjrf9uveW','C3rYAw5N','q291BNrLCIbVDMvYzMXVDZOG','zxHWB3j0CW','z2v0sw5MBW','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','x2j1AwXKqwn0AxzLs2v5','zxzHBa','zgvMyxvSDfnLCMLHBfbHDhrLCM4','BgvUz3rO','surhru5Fsurftv9uveW','lcbLEhbLy3rLzca','zgv0ywLSCW','vhrnz04','whLWuu4','Dvnry2y','qMDQAfi','AxnZDwvK','CMvZzxj2zu1HEfruta','CMfUzg9Tvvvjra','sxDusxe','otK5os05otK5','y3jLyxrLzef0','x2j1AwXKtwv0yuTLEq','CgfYC2u','x3zHBgLKyxrLuMvZzxj2zvruta','zgvMyxvSDe1HEfjLDhj5','x2nVDw50zxjuveXnyxa','zgvMyxvSDfbPBKrPz2L0CW','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','x2j1AwXKu2vXs2v5','vwP6Duu','AwrNzw5FAwrLBv9OAxq','C3rVCMvK','DePqsLi','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','twz3D0u','Dg9Rzw4','igrPz2L0CYaOz290oIa','vffLDuS','y0fMAMW','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','zM9YBwf0','surhru5Frevgqvvmvf9qsu5FreLhsvrt','x2j1AwXKswrLBuTLEq','mdeYmZq1nJC4oq','x2LUAxrPywXPEMvK','ELzHyxi','mtG2odmXmfvrA215sG','A2v5CW','x2vUywjSzwq','surhru5Fsu5wquXjrf9gt1jnqvq','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','mtGXodq0mvbYrhbLua','surhru5FuKvtrvrFtK9ux0fmte9xruq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','BwvZC2fNzq','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','zgLNAxrZ','Bwf0y2G','CNn2swr4s2v5','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','D2LUBMvYuMvZDwX0','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','AwrLBuTLEq','vefoywG','sgzXy3G','z2vUzxjHDgvKqxq','x3zHBgLKyxrLuMvZB3vYy2u','x3L5ExLTBwrKxW','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','C2v0zxG','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','rKLcAKK','DhrS','DMfSDwuGAxmGCMvXDwLYzwq','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','C3rYAw5NAwz5','C3DTtgq','x2j1AwXKsxnZDwvKs2v5','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','AgDLDgfSBa','x3vUzg9syw5KB21szxnLCNzHDgLVBG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','s2zuD0K','zw5ZDxjLvw5PCxvL','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','vM5ttuS','CMvZzxj2zurLzMf1BhruveW','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','Bw9Kzq','tKDmwve','y291BNrLCG','surhru5Fsu5wquXjrf9nt0rf','CMvSzwfZzu51BwjLCG','x3jLDhjPzxzLswrLBunHy2HL','twv0ysb1CgrHDguGzxjYB3i','AhnTzeW','surhru5Fq09vtLrfuL9uveXFrefjtfK','nta2mJC2s1PxBxHn','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','wNjsufq','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','C05Usgu','CMvSzwfZzq','swrLBxbVDgvUy3KGy2fJAguGseLu','AwrNzw5Fy29UzMLNx2LUAxq','rKfXDLi','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','Dg9ju09tDhjPBMC','ywrtrwO','DhjhuuS','ve1wzhi','AwrNzw4','CNn2s2v5','x3n0B3jLswrLBunHy2HL','lwrPz2L0ignHCgfJAxr5icG','y3j5ChrV','we5RCKW','Dgv4Da'];a0_0x4560=function(){return _0xa81cb;};return a0_0x4560();}instance[a0_0x3c2e55(0x24d)]=IdGeneratorError,module['exports']=instance,module[a0_0x3c2e55(0x160)]['IdGeneratorError']=IdGeneratorError;
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 +1 @@
1
- 'use strict';function a0_0x12a6(_0xe59783,_0x313297){_0xe59783=_0xe59783-0x11d;const _0x8c112c=a0_0x8c11();let _0x12a6b1=_0x8c112c[_0xe59783];if(a0_0x12a6['AVjkKk']===undefined){var _0x3845f5=function(_0x48b6ae){const _0x98a637='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41a0b3='',_0xc801d6='';for(let _0xdb5cac=0x0,_0x40a3c6,_0x9a06f8,_0x38c92b=0x0;_0x9a06f8=_0x48b6ae['charAt'](_0x38c92b++);~_0x9a06f8&&(_0x40a3c6=_0xdb5cac%0x4?_0x40a3c6*0x40+_0x9a06f8:_0x9a06f8,_0xdb5cac++%0x4)?_0x41a0b3+=String['fromCharCode'](0xff&_0x40a3c6>>(-0x2*_0xdb5cac&0x6)):0x0){_0x9a06f8=_0x98a637['indexOf'](_0x9a06f8);}for(let _0xfa0b95=0x0,_0x1dbc38=_0x41a0b3['length'];_0xfa0b95<_0x1dbc38;_0xfa0b95++){_0xc801d6+='%'+('00'+_0x41a0b3['charCodeAt'](_0xfa0b95)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc801d6);};a0_0x12a6['NQtyCN']=_0x3845f5,a0_0x12a6['XvHXKs']={},a0_0x12a6['AVjkKk']=!![];}const _0x216e30=_0x8c112c[0x0],_0x5406f1=_0xe59783+_0x216e30,_0x4466ae=a0_0x12a6['XvHXKs'][_0x5406f1];return!_0x4466ae?(_0x12a6b1=a0_0x12a6['NQtyCN'](_0x12a6b1),a0_0x12a6['XvHXKs'][_0x5406f1]=_0x12a6b1):_0x12a6b1=_0x4466ae,_0x12a6b1;}const a0_0x49b5f4=a0_0x12a6;(function(_0xb86dea,_0x4d62ac){const _0x4c4f4b=a0_0x12a6,_0x26fce1=_0xb86dea();while(!![]){try{const _0x3c5566=-parseInt(_0x4c4f4b(0x121))/0x1*(-parseInt(_0x4c4f4b(0x127))/0x2)+parseInt(_0x4c4f4b(0x137))/0x3*(parseInt(_0x4c4f4b(0x138))/0x4)+-parseInt(_0x4c4f4b(0x12b))/0x5+parseInt(_0x4c4f4b(0x147))/0x6+-parseInt(_0x4c4f4b(0x139))/0x7+parseInt(_0x4c4f4b(0x123))/0x8*(parseInt(_0x4c4f4b(0x128))/0x9)+-parseInt(_0x4c4f4b(0x11e))/0xa;if(_0x3c5566===_0x4d62ac)break;else _0x26fce1['push'](_0x26fce1['shift']());}catch(_0x57e391){_0x26fce1['push'](_0x26fce1['shift']());}}}(a0_0x8c11,0xf3b2d));const redisClient=require('./redis-client'),{logger}=require('./logger'),crypto=require(a0_0x49b5f4(0x12a));class IdempotencyManager{constructor(){const _0x3ecd67=a0_0x49b5f4;this['_enabled']=null,this[_0x3ecd67(0x122)]=null,this[_0x3ecd67(0x133)]=![];}['_initConfig'](){const _0x4dd5ed=a0_0x49b5f4,_0x138156={'WVJyR':function(_0x30bf3c,_0x363886,_0x4ad4c9){return _0x30bf3c(_0x363886,_0x4ad4c9);},'QaQvI':'idempotency_config_init'};this['_enabled']=process[_0x4dd5ed(0x13b)]['IDEMPOTENCY_ENABLED']==='true',this['_ttl']=_0x138156[_0x4dd5ed(0x135)](parseInt,process[_0x4dd5ed(0x13b)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x138156['QaQvI'],'enabled':this['_enabled'],'ttl':this[_0x4dd5ed(0x122)]},_0x4dd5ed(0x136)+this['_enabled']+_0x4dd5ed(0x11d)+this['_ttl']+'s');}[a0_0x49b5f4(0x129)](){const _0x4d3f71=a0_0x49b5f4;!this[_0x4d3f71(0x133)]&&this[_0x4d3f71(0x13a)]();}get['enabled'](){const _0x58921a=a0_0x49b5f4;return this[_0x58921a(0x129)](),this['_enabled'];}get['ttl'](){const _0x20fa15=a0_0x49b5f4;return this['_ensureInitialized'](),this[_0x20fa15(0x122)];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x2853db,_0x151dc7){const _0x5106f4=a0_0x49b5f4,_0x44cde7={'uQlIN':_0x5106f4(0x140)},_0x56861f=_0x151dc7['path'][_0x5106f4(0x12f)]('/')[_0x5106f4(0x142)](Boolean),_0x4fc6ea=_0x56861f[0x0]||'default',_0x52feb4=_0x56861f[0x1]||_0x44cde7['uQlIN'],_0x2a8d5f=_0x56861f[0x2]||'unknown';return'rf:idem:'+_0x4fc6ea+':'+_0x52feb4+':'+_0x2a8d5f+':'+_0x2853db;}async['store'](_0x5c8ffe,_0x4642bc){const _0x24a56c=a0_0x49b5f4,_0x5f1976={'Gzbij':_0x24a56c(0x126)};if(!this[_0x24a56c(0x124)])return![];try{const _0x129481=redisClient['getClient']();return await _0x129481[_0x24a56c(0x132)](_0x5c8ffe,this[_0x24a56c(0x146)],JSON[_0x24a56c(0x130)](_0x4642bc)),logger[_0x24a56c(0x13f)]({'event':_0x5f1976[_0x24a56c(0x134)],'key':_0x5c8ffe,'ttl':this['ttl'],'statusCode':_0x4642bc['statusCode']},_0x24a56c(0x144)),!![];}catch(_0x5d6486){return logger['error']({'event':'idempotency_store_error','key':_0x5c8ffe,'error':_0x5d6486[_0x24a56c(0x13d)]},_0x24a56c(0x13e)+_0x5d6486[_0x24a56c(0x13d)]),![];}}async[a0_0x49b5f4(0x141)](_0x36d31a){const _0x1c5d60=a0_0x49b5f4,_0x48e3a8={'VNDNB':'idempotency_hit','FjigO':_0x1c5d60(0x13c)};if(!this[_0x1c5d60(0x124)])return null;try{const _0x28dfdb=redisClient[_0x1c5d60(0x12d)](),_0x4cf526=await _0x28dfdb['get'](_0x36d31a);if(_0x4cf526)return logger[_0x1c5d60(0x131)]({'event':_0x48e3a8['VNDNB'],'key':_0x36d31a},_0x1c5d60(0x120)),JSON[_0x1c5d60(0x143)](_0x4cf526);return logger['debug']({'event':'idempotency_miss','key':_0x36d31a},'Idempotency\x20cache\x20MISS'),null;}catch(_0x204489){return logger[_0x1c5d60(0x12e)]({'event':_0x48e3a8[_0x1c5d60(0x12c)],'key':_0x36d31a,'error':_0x204489[_0x1c5d60(0x13d)]},_0x1c5d60(0x145)+_0x204489[_0x1c5d60(0x13d)]),null;}}['generateKey'](_0xf9067b=a0_0x49b5f4(0x11f)){const _0x203485=a0_0x49b5f4;return _0xf9067b+'_'+crypto[_0x203485(0x125)]();}['buildDeterministicKey'](_0x12b6f8,_0x3055e5,_0x954e99){return _0x12b6f8+':'+_0x3055e5+':'+_0x954e99;}}module['exports']=new IdempotencyManager();function a0_0x8c11(){const _0x350c19=['CMvX','swrLBxbVDgvUy3KGy2fJAguGseLu','mtu0nZe5muTbwe1vwq','x3r0Ba','mtq4mePhA0L2Ba','zw5HyMXLza','CMfUzg9Tvvvjra','AwrLBxbVDgvUy3LFC3rVCMu','mMDrzujHta','mJK0m2DTEff0sG','x2vUC3vYzuLUAxrPywXPEMvK','y3j5ChrV','mtGZntGYnuveug1XzW','rMPPz08','z2v0q2XPzw50','zxjYB3i','C3bSAxq','C3rYAw5NAwz5','Aw5MBW','C2v0zxG','x2LUAxrPywXPEMvK','r3PIAwO','v1zkEvi','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','mJG4odfYqNLgshu','nZm2Cu9MsxjX','nZa5mtq2owPyCgDqyG','x2LUAxrdB25MAwC','zw52','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','BwvZC2fNzq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','zgvIDwC','Dw5RBM93BG','CMv0CMLLDMu','zMLSDgvY','CgfYC2u','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','DhrS','ntKWnZK5nMfVufHPrG','lcbuveW6ia','mtK4nti5otb3z1PfEKG'];a0_0x8c11=function(){return _0x350c19;};return a0_0x8c11();}
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 +1 @@
1
- const a0_0x543de7=a0_0xca7e;(function(_0x58f6b1,_0x3f5073){const _0x136d79=a0_0xca7e,_0x4ce4c1=_0x58f6b1();while(!![]){try{const _0x4a544e=parseInt(_0x136d79(0xca))/0x1+-parseInt(_0x136d79(0xc1))/0x2*(-parseInt(_0x136d79(0xd5))/0x3)+-parseInt(_0x136d79(0xe2))/0x4+parseInt(_0x136d79(0xc7))/0x5*(parseInt(_0x136d79(0xcb))/0x6)+parseInt(_0x136d79(0xdc))/0x7+-parseInt(_0x136d79(0xd4))/0x8*(parseInt(_0x136d79(0xe0))/0x9)+parseInt(_0x136d79(0xc0))/0xa*(-parseInt(_0x136d79(0xd9))/0xb);if(_0x4a544e===_0x3f5073)break;else _0x4ce4c1['push'](_0x4ce4c1['shift']());}catch(_0x457b1c){_0x4ce4c1['push'](_0x4ce4c1['shift']());}}}(a0_0x3fa1,0xf17f1));const {logger}=require('./logger');function a0_0x3fa1(){const _0x2232ba=['mta3mvrtyLnOAG','DgvZDa','mZeYmdG0ohjrzu54CW','sw52ywXPzcbvuKWGzM9YBwf0','DMfSAwrHDgvqAg9Uzq','zxHWB3j0CW','zvrdtha','mJq4ntmZmhPzufP4qq','nti3ng1yzfzcwG','wfj3zgS','DMfSAwrHDgvoDw1Izxi','z2v0','D2HrwvO','A09HB2S','nJm0mtbgDLfjweO','zM9YBwf0','DMfSAwrHDgvfBwfPBa','mta1mdmXnxD6wLv2tG','mtHJExD6vLi','uxLttuO','DMfSAwrHDgvvCMW','CgHVBMu','Aw5MBW','CMvWBgfJzq','AgfZ','zM9YrwfJAa','rMTftvu','mta0ntG0BhjYyurc','mtK2mKLitfHkzW','CMvXDwLYzwq','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','BhzRAfe','mtf1Ae9YAxa','sw52ywXPzcbWAg9UzsbMB3jTyxq','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','ntmYndq5nfjWwxzVyW','C2v0','DxjS','ChvZAa'];a0_0x3fa1=function(){return _0x2232ba;};return a0_0x3fa1();}function a0_0xca7e(_0x48cee6,_0x407549){_0x48cee6=_0x48cee6-0xbd;const _0x3fa164=a0_0x3fa1();let _0xca7ef1=_0x3fa164[_0x48cee6];if(a0_0xca7e['xBtVsg']===undefined){var _0x5a584c=function(_0x8c55f8){const _0x11fd57='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ec42f='',_0x24aa75='';for(let _0x15d831=0x0,_0x16c345,_0xe7c162,_0x4da577=0x0;_0xe7c162=_0x8c55f8['charAt'](_0x4da577++);~_0xe7c162&&(_0x16c345=_0x15d831%0x4?_0x16c345*0x40+_0xe7c162:_0xe7c162,_0x15d831++%0x4)?_0x3ec42f+=String['fromCharCode'](0xff&_0x16c345>>(-0x2*_0x15d831&0x6)):0x0){_0xe7c162=_0x11fd57['indexOf'](_0xe7c162);}for(let _0x1cc122=0x0,_0x2b25c3=_0x3ec42f['length'];_0x1cc122<_0x2b25c3;_0x1cc122++){_0x24aa75+='%'+('00'+_0x3ec42f['charCodeAt'](_0x1cc122)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x24aa75);};a0_0xca7e['wAoRdB']=_0x5a584c,a0_0xca7e['yXqUUW']={},a0_0xca7e['xBtVsg']=!![];}const _0x3ded8b=_0x3fa164[0x0],_0x3dd387=_0x48cee6+_0x3ded8b,_0x4f43ff=a0_0xca7e['yXqUUW'][_0x3dd387];return!_0x4f43ff?(_0xca7ef1=a0_0xca7e['wAoRdB'](_0xca7ef1),a0_0xca7e['yXqUUW'][_0x3dd387]=_0xca7ef1):_0xca7ef1=_0x4f43ff,_0xca7ef1;}class ImportValidator{['validateRow'](_0x57a299,_0xeff2ef=[],_0x3cd922={}){const _0x59d841=a0_0xca7e,_0x4c3855={'kOaok':function(_0x330c75,_0x421c00){return _0x330c75===_0x421c00;},'yOYWz':function(_0x45c2e7,_0x15aef7){return _0x45c2e7===_0x15aef7;},'FkEMU':function(_0x20a8be,_0x111b04){return _0x20a8be===_0x111b04;}},_0x5def86=[];return _0xeff2ef[_0x59d841(0xd2)](_0x582248=>{const _0x100499=_0x59d841,_0x83535c=_0x57a299[_0x582248];(_0x4c3855[_0x100499(0xc6)](_0x83535c,null)||_0x83535c===undefined||_0x83535c==='')&&_0x5def86[_0x100499(0xdf)]({'field':_0x582248,'type':_0x100499(0xd6),'message':_0x100499(0xd7)});}),Object['keys'](_0x3cd922)['forEach'](_0x4c5fc2=>{const _0x400092=_0x59d841,_0x421aa8=_0x57a299[_0x4c5fc2],_0x4985bd=_0x3cd922[_0x4c5fc2];if(_0x4c3855['yOYWz'](_0x421aa8,null)||_0x4c3855[_0x400092(0xd3)](_0x421aa8,undefined)||_0x421aa8==='')return;const _0x394d33=this['validateFieldFormat'](_0x4c5fc2,_0x421aa8,_0x4985bd);_0x394d33&&_0x5def86['push'](_0x394d33);}),_0x5def86;}['validateFieldFormat'](_0x31d7f7,_0xe4985b,_0xb92e3f){const _0x31747b=a0_0xca7e,_0x26d609={'eTCLp':'email','lvkhQ':_0x31747b(0xde)};switch(_0xb92e3f){case _0x26d609[_0x31747b(0xbf)]:return this[_0x31747b(0xc9)](_0x31d7f7,_0xe4985b);case _0x31747b(0xce):return this[_0x31747b(0xbd)](_0x31d7f7,_0xe4985b);case _0x26d609[_0x31747b(0xd8)]:return this[_0x31747b(0xcd)](_0x31d7f7,_0xe4985b);case'number':return this[_0x31747b(0xc3)](_0x31d7f7,_0xe4985b);default:return null;}}['validateEmail'](_0x5da05c,_0x4ec9dc){const _0x1a1620=a0_0xca7e,_0x4e6fbd=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x4e6fbd[_0x1a1620(0xe1)](String(_0x4ec9dc)))return{'field':_0x5da05c,'type':'format','message':'Invalid\x20email\x20format'};return null;}[a0_0x543de7(0xbd)](_0x4222ff,_0x4aa4b0){const _0x1f6c2b=a0_0x543de7,_0x1099db={'UnRnX':function(_0x223d54,_0x2105ea){return _0x223d54(_0x2105ea);},'XRwdk':function(_0x1630b0,_0x52f9ed){return _0x1630b0<_0x52f9ed;},'AioLf':_0x1f6c2b(0xda)},_0x52b1b3=_0x1099db['UnRnX'](String,_0x4aa4b0)[_0x1f6c2b(0xd0)](/\s+/g,''),_0x1ba18e=/^[\d\+\-\(\)]+$/;if(!_0x1ba18e[_0x1f6c2b(0xe1)](_0x52b1b3)||_0x1099db[_0x1f6c2b(0xc2)](_0x52b1b3['length'],0x8))return{'field':_0x4222ff,'type':_0x1f6c2b(0xc8),'message':_0x1099db['AioLf']};return null;}['validateUrl'](_0x325108,_0x4a1b0f){const _0x16dd4c=a0_0x543de7,_0x202c4e={'ZXGzb':function(_0x31ff16,_0x4988cf){return _0x31ff16(_0x4988cf);}};try{return new URL(_0x202c4e['ZXGzb'](String,_0x4a1b0f)),null;}catch(_0x402852){return{'field':_0x325108,'type':_0x16dd4c(0xc8),'message':_0x16dd4c(0xe3)};}}[a0_0x543de7(0xc3)](_0x18348b,_0x642d9b){const _0x55a779=a0_0x543de7,_0xc25e8f={'whQYZ':'Invalid\x20number\x20format'};if(isNaN(_0x642d9b))return{'field':_0x18348b,'type':_0x55a779(0xc8),'message':_0xc25e8f[_0x55a779(0xc5)]};return null;}['detectDuplicatesInFile'](_0x201450,_0x457d1f){const _0x47a11c=new Map(),_0x2269af=[];return _0x201450['forEach']((_0xa90894,_0x93670c)=>{const _0x22eec4=a0_0xca7e,_0x112f3f=_0x457d1f['map'](_0x243bfc=>_0xa90894[_0x243bfc])['join']('|');_0x47a11c[_0x22eec4(0xd1)](_0x112f3f)?_0x2269af['push']({'rowIndex':_0x93670c,'duplicateOf':_0x47a11c[_0x22eec4(0xc4)](_0x112f3f),'key':_0x112f3f}):_0x47a11c[_0x22eec4(0xdd)](_0x112f3f,_0x93670c);}),_0x2269af;}['batchValidateRows'](_0x4760cf,_0x3546b9,_0x3d15c2){const _0x21368b=a0_0x543de7,_0xeacff8={'cfeFO':_0x21368b(0xdb),'QySMJ':'Batch\x20validation\x20completed'},_0x4574fc=[];return _0x4760cf[_0x21368b(0xd2)]((_0xcb8ffe,_0x46aba1)=>{const _0x1aaf36=this['validateRow'](_0xcb8ffe,_0x3546b9,_0x3d15c2);_0x1aaf36['length']>0x0&&_0x4574fc['push']({'rowIndex':_0x46aba1,'rowData':_0xcb8ffe,'errors':_0x1aaf36});}),logger[_0x21368b(0xcf)]({'event':_0xeacff8['cfeFO'],'totalRows':_0x4760cf['length'],'errorCount':_0x4574fc['length']},_0xeacff8[_0x21368b(0xcc)]),_0x4574fc;}}module[a0_0x543de7(0xbe)]=new ImportValidator();
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();