@restforgejs/platform 5.0.3 → 5.0.8

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 (181) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/dashboard/create.js +1 -1
  5. package/generators/cli/endpoint/create.js +1 -1
  6. package/generators/cli/processor/create.js +1 -1
  7. package/generators/lib/dbschema-kit/apply-executor.js +15 -1
  8. package/generators/lib/dbschema-kit/dialect/mysql.js +2 -0
  9. package/generators/lib/dbschema-kit/dialect/oracle.js +2 -0
  10. package/generators/lib/dbschema-kit/dialect/postgres.js +3 -0
  11. package/generators/lib/dbschema-kit/dialect/sqlite.js +2 -0
  12. package/generators/lib/dbschema-kit/emitters/alter-table.js +7 -0
  13. package/generators/lib/dbschema-kit/emitters/create-table.js +31 -3
  14. package/generators/lib/dbschema-kit/statement-modifier.js +12 -2
  15. package/generators/lib/payload/payload-runner.js +44 -2
  16. package/generators/lib/payload/schema-diff.js +31 -1
  17. package/generators/lib/templates/dashboard-catalog.js +1 -1
  18. package/generators/lib/templates/db-connection-env.js +1 -1
  19. package/generators/lib/templates/dbschema-catalog.js +1 -1
  20. package/generators/lib/templates/field-validation-catalog.js +1 -1
  21. package/generators/lib/templates/mysql-template.js +1 -1
  22. package/generators/lib/templates/oracle-template.js +1 -1
  23. package/generators/lib/templates/postgres-template.js +1 -1
  24. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  25. package/generators/lib/templates/sqlite-template.js +1 -1
  26. package/generators/lib/utils/database-introspector.js +417 -6
  27. package/generators/lib/validators/argument-validator.js +2 -2
  28. package/integrity-manifest.json +18 -18
  29. package/package.json +4 -2
  30. package/scripts/verify-integrity.js +1 -1
  31. package/server.js +1 -1
  32. package/src/components/handlers/adjust_handler.js +1 -1
  33. package/src/components/handlers/audit_handler.js +1 -1
  34. package/src/components/handlers/delete_handler.js +1 -1
  35. package/src/components/handlers/export_handler.js +1 -1
  36. package/src/components/handlers/import_handler.js +1 -1
  37. package/src/components/handlers/insert_handler.js +1 -1
  38. package/src/components/handlers/update_handler.js +1 -1
  39. package/src/components/handlers/upload_handler.js +1 -1
  40. package/src/components/handlers/workflow_handler.js +1 -1
  41. package/src/components/integrations/webhook.js +1 -1
  42. package/src/consumers/baseConsumer.js +1 -1
  43. package/src/consumers/declarativeMapper.js +1 -1
  44. package/src/consumers/handlers/apiHandler.js +1 -1
  45. package/src/consumers/handlers/consoleHandler.js +1 -1
  46. package/src/consumers/handlers/databaseHandler.js +1 -1
  47. package/src/consumers/handlers/index.js +1 -1
  48. package/src/consumers/handlers/kafkaHandler.js +1 -1
  49. package/src/consumers/index.js +1 -1
  50. package/src/consumers/messageTransformer.js +1 -1
  51. package/src/consumers/validator.js +1 -1
  52. package/src/core/db/dialect/base-dialect.js +1 -1
  53. package/src/core/db/dialect/index.js +1 -1
  54. package/src/core/db/dialect/mysql-dialect.js +1 -1
  55. package/src/core/db/dialect/oracle-dialect.js +1 -1
  56. package/src/core/db/dialect/postgres-dialect.js +1 -1
  57. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  58. package/src/core/db/flatten-helper.js +1 -1
  59. package/src/core/db/query-builder-error.js +1 -1
  60. package/src/core/db/query-builder.js +1 -1
  61. package/src/core/db/relation-helper.js +1 -1
  62. package/src/core/handlers/delete_handler.js +1 -1
  63. package/src/core/handlers/insert_handler.js +1 -1
  64. package/src/core/handlers/update_handler.js +1 -1
  65. package/src/core/models/base-model.js +1 -1
  66. package/src/core/utils/cache-manager.js +1 -1
  67. package/src/core/utils/component-engine.js +1 -1
  68. package/src/core/utils/context-builder.js +1 -1
  69. package/src/core/utils/datetime-formatter.js +1 -1
  70. package/src/core/utils/datetime-parser.js +1 -1
  71. package/src/core/utils/db.js +1 -1
  72. package/src/core/utils/logger.js +1 -1
  73. package/src/core/utils/payload-loader.js +1 -1
  74. package/src/core/utils/security-checks.js +1 -1
  75. package/src/middleware/body-options.js +1 -1
  76. package/src/middleware/cors.js +1 -1
  77. package/src/middleware/idempotency.js +1 -1
  78. package/src/middleware/rate-limiter.js +1 -1
  79. package/src/middleware/request-logger.js +1 -1
  80. package/src/middleware/security-headers.js +1 -1
  81. package/src/models/base-model-mysql.js +1 -1
  82. package/src/models/base-model-oracle.js +1 -1
  83. package/src/models/base-model-sqlite.js +1 -1
  84. package/src/models/base-model.js +1 -1
  85. package/src/pro/caching/redis-client.js +1 -1
  86. package/src/pro/caching/redis-helper.js +1 -1
  87. package/src/pro/consumers/baseConsumer.js +1 -1
  88. package/src/pro/consumers/declarativeMapper.js +1 -1
  89. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  90. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  91. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  92. package/src/pro/consumers/handlers/index.js +1 -1
  93. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  94. package/src/pro/consumers/index.js +1 -1
  95. package/src/pro/consumers/messageTransformer.js +1 -1
  96. package/src/pro/consumers/validator.js +1 -1
  97. package/src/pro/database/base-model-mysql.js +1 -1
  98. package/src/pro/database/base-model-oracle.js +1 -1
  99. package/src/pro/database/base-model-sqlite.js +1 -1
  100. package/src/pro/database/db-mysql.js +1 -1
  101. package/src/pro/database/db-oracle.js +1 -1
  102. package/src/pro/database/db-sqlite.js +1 -1
  103. package/src/pro/excel/excel-generator.js +1 -1
  104. package/src/pro/excel/excel-parser.js +1 -1
  105. package/src/pro/excel/export-service.js +1 -1
  106. package/src/pro/excel/export_handler.js +1 -1
  107. package/src/pro/excel/import-service.js +1 -1
  108. package/src/pro/excel/import-validator.js +1 -1
  109. package/src/pro/excel/import_handler.js +1 -1
  110. package/src/pro/excel/upsert-builder.js +1 -1
  111. package/src/pro/idgen/idgen-routes.js +1 -1
  112. package/src/pro/integrations/lookup-resolver.js +1 -1
  113. package/src/pro/integrations/upload-handler-v2.js +1 -1
  114. package/src/pro/integrations/upload-handler.js +1 -1
  115. package/src/pro/integrations/webhook.js +1 -1
  116. package/src/pro/locking/lock-routes.js +1 -1
  117. package/src/pro/locking/resource-lock-manager.js +1 -1
  118. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  119. package/src/pro/messaging/kafkaService.js +1 -1
  120. package/src/pro/messaging/messagehubService.js +1 -1
  121. package/src/pro/messaging/rabbitmqService.js +1 -1
  122. package/src/pro/scheduler/job-manager.js +1 -1
  123. package/src/pro/scheduler/job-routes.js +1 -1
  124. package/src/pro/scheduler/job-validator.js +1 -1
  125. package/src/pro/storage/base-storage-provider.js +1 -1
  126. package/src/pro/storage/file-metadata-helper.js +1 -1
  127. package/src/pro/storage/index.js +1 -1
  128. package/src/pro/storage/local-storage-provider.js +1 -1
  129. package/src/pro/storage/s3-storage-provider.js +1 -1
  130. package/src/pro/storage/upload-cleanup-job.js +1 -1
  131. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  132. package/src/pro/storage/upload-pending-tracker.js +1 -1
  133. package/src/pro/websocket/broadcast-helper.js +1 -1
  134. package/src/pro/websocket/index.js +1 -1
  135. package/src/pro/websocket/livesync-server.js +1 -1
  136. package/src/pro/websocket/ws-broadcaster.js +1 -1
  137. package/src/services/export-service.js +1 -1
  138. package/src/services/import-service.js +1 -1
  139. package/src/services/kafkaConsumerService.js +1 -1
  140. package/src/services/kafkaService.js +1 -1
  141. package/src/services/messagehubService.js +1 -1
  142. package/src/services/rabbitmqService.js +1 -1
  143. package/src/utils/cache-invalidation-registry.js +1 -1
  144. package/src/utils/cache-manager.js +1 -1
  145. package/src/utils/component-engine.js +1 -1
  146. package/src/utils/config-extractor.js +1 -1
  147. package/src/utils/consumerLogger.js +1 -1
  148. package/src/utils/context-builder.js +1 -1
  149. package/src/utils/dashboard-helpers.js +1 -1
  150. package/src/utils/dateHelper.js +1 -1
  151. package/src/utils/datetime-formatter.js +1 -1
  152. package/src/utils/datetime-parser.js +1 -1
  153. package/src/utils/db-bootstrap.js +1 -1
  154. package/src/utils/db-mysql.js +1 -1
  155. package/src/utils/db-oracle.js +1 -1
  156. package/src/utils/db-sqlite.js +1 -1
  157. package/src/utils/db.js +1 -1
  158. package/src/utils/demo-generator.js +1 -1
  159. package/src/utils/excel-generator.js +1 -1
  160. package/src/utils/excel-parser.js +1 -1
  161. package/src/utils/file-watcher.js +1 -1
  162. package/src/utils/id-generator.js +1 -1
  163. package/src/utils/idempotency-manager.js +1 -1
  164. package/src/utils/import-validator.js +1 -1
  165. package/src/utils/license-client.js +1 -1
  166. package/src/utils/lock-manager.js +1 -1
  167. package/src/utils/logger.js +1 -1
  168. package/src/utils/lookup-resolver.js +1 -1
  169. package/src/utils/payload-loader.js +1 -1
  170. package/src/utils/processor-response.js +1 -1
  171. package/src/utils/rabbitmq.js +1 -1
  172. package/src/utils/redis-client.js +1 -1
  173. package/src/utils/redis-helper.js +1 -1
  174. package/src/utils/request-scope.js +1 -1
  175. package/src/utils/security-checks.js +1 -1
  176. package/src/utils/service-resolver.js +1 -1
  177. package/src/utils/shutdown-coordinator.js +1 -1
  178. package/src/utils/trusted-keys.js +1 -1
  179. package/src/utils/upload-handler.js +1 -1
  180. package/src/utils/upsert-builder.js +1 -1
  181. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x7e059b=a0_0x31fc;(function(_0xc521f6,_0x56b0a8){const _0x2c6b15=a0_0x31fc,_0x414aa7=_0xc521f6();while(!![]){try{const _0x37d0db=parseInt(_0x2c6b15(0x289))/0x1+parseInt(_0x2c6b15(0x258))/0x2*(-parseInt(_0x2c6b15(0x206))/0x3)+parseInt(_0x2c6b15(0x257))/0x4*(-parseInt(_0x2c6b15(0x242))/0x5)+-parseInt(_0x2c6b15(0x308))/0x6*(-parseInt(_0x2c6b15(0x2e2))/0x7)+-parseInt(_0x2c6b15(0x278))/0x8+parseInt(_0x2c6b15(0x2c1))/0x9+parseInt(_0x2c6b15(0x2eb))/0xa;if(_0x37d0db===_0x56b0a8)break;else _0x414aa7['push'](_0x414aa7['shift']());}catch(_0x53ff3f){_0x414aa7['push'](_0x414aa7['shift']());}}}(a0_0x494d,0x83773));const crypto=require('crypto'),redisClient=require(a0_0x7e059b(0x262)),{logger}=require(a0_0x7e059b(0x2a5)),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy','yyyymm','yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT=a0_0x7e059b(0x2b1),CHARSET_UPPER=a0_0x7e059b(0x227),CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER=a0_0x7e059b(0x2ff),PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER=a0_0x7e059b(0x207),LUA_RELEASE_NUMBER=a0_0x7e059b(0x30e),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION=a0_0x7e059b(0x303),LUA_CANCEL_RESERVATION=a0_0x7e059b(0x20c),LUA_EXTEND_RESERVATION=a0_0x7e059b(0x1fe);function a0_0x31fc(_0xbf8b41,_0x476936){_0xbf8b41=_0xbf8b41-0x1f0;const _0x494de7=a0_0x494d();let _0x31fce3=_0x494de7[_0xbf8b41];if(a0_0x31fc['isdZSu']===undefined){var _0x51bdfa=function(_0x525a39){const _0x25686c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x59dc1b='',_0x13afce='';for(let _0x31faa4=0x0,_0xeeef8e,_0x51cb16,_0x459085=0x0;_0x51cb16=_0x525a39['charAt'](_0x459085++);~_0x51cb16&&(_0xeeef8e=_0x31faa4%0x4?_0xeeef8e*0x40+_0x51cb16:_0x51cb16,_0x31faa4++%0x4)?_0x59dc1b+=String['fromCharCode'](0xff&_0xeeef8e>>(-0x2*_0x31faa4&0x6)):0x0){_0x51cb16=_0x25686c['indexOf'](_0x51cb16);}for(let _0x592b45=0x0,_0xf90409=_0x59dc1b['length'];_0x592b45<_0xf90409;_0x592b45++){_0x13afce+='%'+('00'+_0x59dc1b['charCodeAt'](_0x592b45)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x13afce);};a0_0x31fc['AViuGf']=_0x51bdfa,a0_0x31fc['EZprMg']={},a0_0x31fc['isdZSu']=!![];}const _0x4e9030=_0x494de7[0x0],_0x238a37=_0xbf8b41+_0x4e9030,_0x48c7c0=a0_0x31fc['EZprMg'][_0x238a37];return!_0x48c7c0?(_0x31fce3=a0_0x31fc['AViuGf'](_0x31fce3),a0_0x31fc['EZprMg'][_0x238a37]=_0x31fce3):_0x31fce3=_0x48c7c0,_0x31fce3;}function a0_0x494d(){const _0x43f0fb=['A3bhu0q','y2fUy2vSuMvZzxj2yxrPB24','wfHywc1ywfHylvHywfGTwfHywa','nJm5mtu5t25xq3nf','x3zHBgLKyxrLuMvZB3vYy2u','x2j1AwXKswrLBuTLEq','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','C3v0De8','yM9VBgvHBG','x2DLBMvYyxrLrNjVBvbHDhrLCM4','x2LKzw1uveW','CMvZB3vYy2u','vw5RBM93BIbTB2rLoIa','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','ruTbEhG','whv3C2O','z0LHBLC','x2j1AwXKuMv1C2vlzxK','AMjcze0','DMfSDwuGAxmGCMvXDwLYzwq','CMvZzxj2zv9LEhrLBMq','EKHhAwm','AwrNzw5Fy29UzMLNx2LUAxq','t21pBLC','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','x3zHBgLKyxrLvfrm','ExL5Ew1T','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','lI9SB2DNzxi','BMTyAK0','x2j1AwXKuMvZzxj2yxrPB25lzxK','Chr0Ba','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','surhru5Fsu5wquXjrf9ut0TftG','AxnfBMfIBgvK','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','AwrNzw4','C3rYAw5N','surhru5Fsu5wquXjrf9gt1jnqvq','zgvMyxvSDfbPBKrPz2L0CW','mdeYmZq1nJC4oq','x3vWzgf0zu1LDge','x2nVDw50zxjuveXnyxa','D2fYBG','x2j1AwXKsxnZDwvKs2v5','zM9YBwf0s2v5','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','Dg9ju09tDhjPBMC','ihbHCNrZkq','C3rYAw5NAwz5','A2v5CW','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','vuzHv3i','ywXSB3DszxnLDa','CMvZzxj2zv9Jyw5JzwW','q25jALe','ntG4mtC3owXlCM1HAW','zxHWB3j0CW','surhru5Frevgqvvmvf9qsu5FreLhsvrt','CMvSzwfZzu51BwjLCG','icHNB3q6ia','zw52','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','Ag1Nzxq','surhru5Fsu5wquXjrf9quKvgsvG','AwrLBxbVDgvUy3LlzxK','Dgv4Da','x2j1AwXKtwv0yuTLEq','Dgfkwfq','r2LZufy','ALD3BK0','Cgf0DgvYBG','surhru5Fsu5wquXjrf9ovu1crvi','ChzhDeq','CMfUzg9Tvvvjra','ywXS','tKrnzwy','C2fKza','AwrNzw5Fy29UC3vTzwq','surhru5Fsu5wquXjrf9srvnpvvjdrq','shrnyKe','ufLOCuy','D2PqDMy','suqGr2vUzxjHDg9Yig51BwjLCJOG','zw50CMLLCW','zxzHBa','z2v0q2XPzw50','AhnLDa','surhru5Fsu5wquXjrf9nt0rf','n01ICwHZuW','s3f1r0y','AwrLBuTLEq','zvj0vfe','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','CMvSzwfZzq','CNjmEwy','x3n0B3jLswrLBunHy2HLtLG','ntG4nJeZmgLOvLP5Ba','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','zw5ZDxjLvw5PCxvL','BgvUz3rO','rwfLDNe','z2v0sw5MBW','z2v0tw9UDgG','zw5HyMXLza','CgLU','ENjHBMDL','BM93','igrPz2L0CYaOz290oIa','yuXQy3i','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','surhru5Fq09vtLrfuL9uveXFrefjtfK','surhru5FquXmt1DFuKvtrvq','CNn2s2v5','Dg9mB3DLCKnHC2u','Du1eBgO','AxnZDwvKoG','mdeYmZq1nJC4owfIy2rLzG','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','CfHRDNa','tvvkA0y','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','BNvTrgLNAxrZ','r2frq0e','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','sLHyEva','nJeXnZqYAvjZue1Y','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','CNn2oG','C2vX','BMfTzq','BwfW','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','CgfKzgvKicHNB3q6ia','sNveBum','vKLuwfO','C2vWyxjHDg9Y','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','D2vvsNy','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','CK5Ks1K','C2r5tvy','zxHWAxjLC0f0','AhPKqMW','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','DMfSDwu','q291BNrLCIbVDMvYzMXVDZOG','zgvS','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','BwTYtg8','zgvMyxvSDenVzgvqyxr0zxjU','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','zgzwtxa','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','DLHUy2u','Bw9Kzq','ELPmt2m','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','Bwf0y2G','mJy3u2jksevT','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','Aw5MBW','surhru5FreLtqujmruq','sw52ywXPzcbMB3jTyxq6ia','BwnjwMW','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','swrhzw5LCMf0B3jfCNjVCG','A1nqCwW','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','CgfYC2u','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','ANjqBxi','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','surhru5Fsurftv9uveW','x2DLDenVDw50zxjuveW','wwH6q2K','AwrNzw5FCMvZzxq','x3zHBgLKyxrLtwf4uMv0CNK','x3rLEhq','x2j1AwXKqwn0AxzLs2v5','x2rLzMf1BhrnyxHszxrYEq','C2v0','DhrS','uuXeAKm','C2vYAwfS','txD3v2y','ihnLy29UzhmGkgDVDdOG','Dg9Rzw4','CgvLAW','AxnszxvZzwq','qwrMEM8','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','lwrPz2L0ignHCgfJAxr5icG','surhru5Fsu5wquXjrf9uveW','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','x3vUzg9syw5KB21szxnLCNzHDgLVBG','ChvZAa','D2LUBMvYuMvZDwX0','zgvMyxvSDfnLCMLHBfbHDhrLCM4','surhru5Fsu5wquXjrf9qqvrurvjo','zM9Qyue','BwvZC2fNzq','AxnjBNrLz2vY','zuPJqKu','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','x2j1AwXKrM9YBwf0s2v5','uNzVC3C','vwHmBgO','zgf0zvbYzwzPEa','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','CMvWzwf0','otK5os05otK5','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','x2LUAxrPywXPEMvK','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','x3zHBgLKyxrLugf0DgvYBG','nvngsNPWEG','CMv1C2u','CgfKu3rHCNq','C3rVCMvK','sgjjCK8','A2v5uhjLzML4','wvzWs3i','q3bRr0O','x3n0B3jLswrLBunHy2HL','Cg93','CMvZzxj2zurLzMf1BhruveW','x2zVCM1HDe51BwjLCG','x3jLDhjPzxzLswrLBunHy2HL','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','x2j1AwXKu2vXs2v5','uxbeEKC','CMvZzxj2zu51BwjLCG','x2rLzMf1BhrtzxjPywXqyxr0zxjU','DwDNy3C','CMy6AwrNzw46','DgvZDa','mZi5nZa0reLNA2r0','mJi1otrPDu9ezxa','CMvZzxj2zu1HEfruta','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','DMr6yNa','sLbqwMu','ENfVC0K','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','CMfUzg9T','zxL2BfC','lI9YzwrPCY1JBgLLBNq','uLnxAMe','tMXTs2q','y29Kzq','x2vUC3vYzuLUAxrPywXPEMvK','y291BNrLCG','icH0B2TLBJ0','BNvTyMvY','zM9YBwf0','uhj3BvC','x2rLzMf1BhrqAw5eAwDPDhm','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','sNPuqxe','y291BNrLCKLUDa','r0rJvfO','EeXMBeW','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','C3jLBq','AgfZ','x2fSBg93uMvZzxq','CMv1C2u6','ChjLzML4','mJG1ntm0nefWzNPqEa','sgjIBuG','EMnHCMq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','vvjVzum','y05SEw4','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','Bwf4uMv0CNK','z1nqALO','vNPdy0G','x3zHBgLKyxrLuMvZzxj2zvruta','suzAyLK','vvfMCfe','swnPCxa'];a0_0x494d=function(){return _0x43f0fb;};return a0_0x494d();}class IdGeneratorError extends Error{constructor(_0x2992ac,_0x5f0723,_0x150dc1=null){const _0x98fd97=a0_0x7e059b,_0x59252f={'GisPV':function(_0x4d0081,_0xf83e2){return _0x4d0081||_0xf83e2;}};super(_0x59252f[_0x98fd97(0x2ce)](_0x5f0723,_0x2992ac)),this[_0x98fd97(0x30c)]='IdGeneratorError',this['code']=_0x2992ac,this['details']=_0x150dc1;}}class IdGenerator{constructor(){const _0x37f585=a0_0x7e059b;this[_0x37f585(0x23f)]=![],this['_enabled']=null,this['_keyPrefix']=null,this['_idemTTL']=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this['_defaultPinDigits']=null,this[_0x37f585(0x253)]=null,this['_defaultCodePattern']=null,this[_0x37f585(0x2b3)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x549310=a0_0x7e059b,_0x1b006e={'eJcBE':'9|0|11|4|6|5|2|7|10|1|12|3|8','OmOnW':'true','IxkXu':function(_0x1ea49c,_0x564d95,_0x17d30a){return _0x1ea49c(_0x564d95,_0x17d30a);},'KanmB':_0x549310(0x288),'gMPbT':function(_0x5e633e,_0x2fd49f){return _0x5e633e===_0x2fd49f;},'uMDlj':function(_0x4d34d8,_0x18b469,_0x18916a){return _0x4d34d8(_0x18b469,_0x18916a);},'gEfWo':_0x549310(0x23d),'fjIHi':_0x549310(0x29d),'oasNJ':function(_0x59bec5,_0x2f6bcf,_0x233668){return _0x59bec5(_0x2f6bcf,_0x233668);}},_0x1a534f=_0x1b006e[_0x549310(0x234)]['split']('|');let _0x3b7bf8=0x0;while(!![]){switch(_0x1a534f[_0x3b7bf8++]){case'0':this['_enabled']=process[_0x549310(0x2c6)]['IDGEN_ENABLED']===_0x1b006e[_0x549310(0x29e)];continue;case'1':this['_reserveDefaultTTL']=_0x1b006e['IxkXu'](parseInt,process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'2':this[_0x549310(0x253)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x1b006e['KanmB'];continue;case'3':this['_initialized']=!![];continue;case'4':this[_0x549310(0x275)]=_0x1b006e['gMPbT'](process[_0x549310(0x2c6)][_0x549310(0x2fa)],'true');continue;case'5':this[_0x549310(0x26c)]=parseInt(process['env'][_0x549310(0x2c3)],0xa)||0x6;continue;case'6':this[_0x549310(0x21c)]=_0x1b006e[_0x549310(0x2fd)](parseInt,process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa;continue;case'7':this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x1b006e['gEfWo'];continue;case'8':logger[_0x549310(0x208)]({'event':_0x1b006e['fjIHi'],'enabled':this['_enabled'],'idemTTL':this['_idemTTL'],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x549310(0x21c)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x549310(0x294)+this['_enabled']);continue;case'9':this['_keyPrefix']=_0x549310(0x255);continue;case'10':this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x549310(0x2f9)],0xa)||0x2a300};continue;case'11':this[_0x549310(0x290)]=_0x1b006e['oasNJ'](parseInt,process[_0x549310(0x2c6)][_0x549310(0x215)],0xa)||0x258;continue;case'12':this['_reserveMaxTTL']=parseInt(process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;}break;}}['_ensureInitialized'](){if(!this['_initialized'])this['_initConfig']();}get[a0_0x7e059b(0x2f2)](){return this['_ensureInitialized'](),this['_enabled'];}get['keyPrefix'](){return this['_ensureInitialized'](),this['_keyPrefix'];}get['idemTTL'](){return this['_ensureInitialized'](),this['_idemTTL'];}get['allowReset'](){const _0x5f2aaf=a0_0x7e059b;return this[_0x5f2aaf(0x266)](),this[_0x5f2aaf(0x275)];}get['defaultMaxRetry'](){const _0x365f67=a0_0x7e059b;return this[_0x365f67(0x266)](),this['_defaultMaxRetry'];}get[a0_0x7e059b(0x2b0)](){const _0x2ebd90=a0_0x7e059b;return this['_ensureInitialized'](),this[_0x2ebd90(0x26c)];}get['defaultSerialPattern'](){const _0x92239f=a0_0x7e059b;return this[_0x92239f(0x266)](),this[_0x92239f(0x253)];}get[a0_0x7e059b(0x1fd)](){const _0x5d3248=a0_0x7e059b;return this[_0x5d3248(0x266)](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x37fec0=a0_0x7e059b;return this[_0x37fec0(0x266)](),this['_reserveDefaultTTL'];}get[a0_0x7e059b(0x259)](){return this['_ensureInitialized'](),this['_reserveMaxTTL'];}[a0_0x7e059b(0x2ab)](){return this['enabled'];}['_validateResource'](_0x198f21){const _0x14260d=a0_0x7e059b,_0x10d2e8={'dFkto':function(_0x487909,_0x1adb83){return _0x487909!==_0x1adb83;},'URoeC':'string','JzTAq':_0x14260d(0x2d8)};if(_0x10d2e8['dFkto'](typeof _0x198f21,_0x10d2e8[_0x14260d(0x27c)])||!RESOURCE_REGEX['test'](_0x198f21))throw new IdGeneratorError(_0x10d2e8[_0x14260d(0x26e)],_0x14260d(0x25a)+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x14260d(0x2ba)](_0x198f21)+')');}[a0_0x7e059b(0x204)](_0x381db7){const _0x275ee9=a0_0x7e059b,_0xf00ff5={'AeqfY':function(_0x4a88f4,_0x2a346e){return _0x4a88f4===_0x2a346e;},'xLflL':'string','UhLlj':function(_0x17a7ec,_0x9fa731){return _0x17a7ec==_0x9fa731;},'yIqey':_0x275ee9(0x2c9),'mmbqk':function(_0x58c871,_0x413930){return _0x58c871>_0x413930;},'HbbmH':'IDGEN_INVALID_SEPARATOR','ZYWJV':_0x275ee9(0x28e)},{resource:_0x2f274a,format:_0x380fdd,prefix:_0x5d35ee,separator:_0x58e648,numDigits:_0x535b90,reuseDelete:_0x2a80c3}=_0x381db7;this[_0x275ee9(0x28a)](_0x2f274a);const _0x3d5caa=_0xf00ff5['AeqfY'](typeof _0x380fdd,_0xf00ff5[_0x275ee9(0x271)])?_0x380fdd[_0x275ee9(0x2fc)]():'';if(!ALLOWED_FORMATS[_0x275ee9(0x274)](_0x3d5caa))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+_0x275ee9(0x2c5)+_0x380fdd+')');if(!Number[_0x275ee9(0x233)](_0x535b90)||_0x535b90<MIN_NUM_DIGITS||_0x535b90>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x275ee9(0x293),'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x275ee9(0x2c5)+_0x535b90+')');const _0x39bb37=_0xf00ff5[_0x275ee9(0x239)](_0x5d35ee,null)?'':_0x5d35ee;if(typeof _0x39bb37!==_0x275ee9(0x2ae)||!PREFIX_REGEX['test'](_0x39bb37))throw new IdGeneratorError(_0xf00ff5['yIqey'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x5d35ee)+')');const _0x18791d=_0x58e648==null?'':_0x58e648;if(typeof _0x18791d!==_0xf00ff5[_0x275ee9(0x271)]||_0xf00ff5['mmbqk'](_0x18791d[_0x275ee9(0x2ee)],0x3)||SEPARATOR_FORBIDDEN['test'](_0x18791d))throw new IdGeneratorError(_0xf00ff5[_0x275ee9(0x279)],_0x275ee9(0x2bc)+JSON['stringify'](_0x58e648)+')');if(_0x2a80c3!=null&&typeof _0x2a80c3!==_0xf00ff5['ZYWJV'])throw new IdGeneratorError(_0x275ee9(0x2d8),_0x275ee9(0x240)+typeof _0x2a80c3+')');return{'resource':_0x2f274a,'format':_0x3d5caa,'prefix':_0x39bb37,'separator':_0x18791d,'numDigits':_0x535b90,'reuseDelete':_0x2a80c3===!![]};}[a0_0x7e059b(0x241)](_0x549247){const _0x53dfcb=a0_0x7e059b,_0x561512={'daxSY':function(_0x50b26b,_0x5e2dc0){return _0x50b26b!==_0x5e2dc0;},'vXnce':_0x53dfcb(0x2ae),'Rvosw':function(_0x5a6165,_0x214776){return _0x5a6165===_0x214776;},'cNlyn':function(_0x3a2fac,_0x253686){return _0x3a2fac>_0x253686;},'iJfNE':_0x53dfcb(0x230)};if(_0x561512['daxSY'](typeof _0x549247,_0x561512[_0x53dfcb(0x201)])||_0x561512[_0x53dfcb(0x238)](_0x549247['length'],0x0)||_0x561512[_0x53dfcb(0x27d)](_0x549247[_0x53dfcb(0x2ee)],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x561512['iJfNE'],_0x53dfcb(0x2ec)+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x549247&&_0x549247[_0x53dfcb(0x2ee)])+')');let _0x596ba7=![];for(const _0x2dd053 of _0x549247){if(PLACEHOLDER_MAP[_0x2dd053]){_0x596ba7=!![];break;}}if(!_0x596ba7)throw new IdGeneratorError('IDGEN_INVALID_PATTERN','Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}[a0_0x7e059b(0x2a1)](_0x176fa5){const _0x532d0a=a0_0x7e059b,_0x351f0d={'GCqQz':function(_0x3ef7e5,_0x1df203){return _0x3ef7e5==_0x1df203;}};if(_0x351f0d['GCqQz'](_0x176fa5,null))return undefined;if(!Number[_0x532d0a(0x233)](_0x176fa5)||_0x176fa5<0x1||_0x176fa5>MAX_TTL)throw new IdGeneratorError(_0x532d0a(0x229),'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x176fa5+')');return _0x176fa5;}[a0_0x7e059b(0x219)](_0x534ae5){const _0x2b8443=a0_0x7e059b,_0x1a79ed={'pXkvp':'IDGEN_INVALID_MAX_RETRY'};if(_0x534ae5==null)return this['defaultMaxRetry'];if(!Number[_0x2b8443(0x233)](_0x534ae5)||_0x534ae5<0x1||_0x534ae5>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x1a79ed[_0x2b8443(0x301)],_0x2b8443(0x2c7)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x534ae5+')');return _0x534ae5;}[a0_0x7e059b(0x236)](_0x5cdcc3){const _0x53427f=a0_0x7e059b,_0x14a7fc={'prYqB':function(_0x337211,_0x1fa88d){return _0x337211==_0x1fa88d;},'weUJv':function(_0x5c3740,_0x5bfe8d){return _0x5c3740!==_0x5bfe8d;},'IFZbY':'string','GDcTZ':function(_0x2c732d,_0xbd1c0a){return _0x2c732d===_0xbd1c0a;},'suttO':function(_0x1e84d4,_0x53d0a4){return _0x1e84d4>_0x53d0a4;}};if(_0x14a7fc['prYqB'](_0x5cdcc3,null))return undefined;if(_0x14a7fc[_0x53427f(0x1f1)](typeof _0x5cdcc3,_0x14a7fc[_0x53427f(0x283)])||_0x14a7fc[_0x53427f(0x270)](_0x5cdcc3['length'],0x0)||_0x14a7fc[_0x53427f(0x28d)](_0x5cdcc3[_0x53427f(0x2ee)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x5cdcc3;}['_validateReserveTTL'](_0x26a487){const _0x3522ec=a0_0x7e059b,_0x36d28b={'GhGHM':function(_0x93b712,_0x1a1922){return _0x93b712==_0x1a1922;},'UFaWr':function(_0x418a28,_0x1ceda8){return _0x418a28<_0x1ceda8;},'rNdKY':function(_0x3beb30,_0x30b638){return _0x3beb30>_0x30b638;},'EIVow':'IDGEN_INVALID_RESERVE_TTL'};if(_0x36d28b['GhGHM'](_0x26a487,null))return this[_0x3522ec(0x24c)];if(!Number['isInteger'](_0x26a487)||_0x36d28b[_0x3522ec(0x2bd)](_0x26a487,MIN_RESERVE_TTL)||_0x36d28b[_0x3522ec(0x1f3)](_0x26a487,this[_0x3522ec(0x259)]))throw new IdGeneratorError(_0x36d28b['EIVow'],'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this[_0x3522ec(0x259)]+_0x3522ec(0x222)+_0x26a487+')');return _0x26a487;}[a0_0x7e059b(0x309)](_0x32297e){const _0x210d3b=a0_0x7e059b,_0x141763={'QpDzG':function(_0x21a31a,_0x41e51d){return _0x21a31a!==_0x41e51d;},'UHavF':_0x210d3b(0x2aa)};if(_0x141763[_0x210d3b(0x251)](typeof _0x32297e,'string')||!RESERVATION_TOKEN_REGEX[_0x210d3b(0x256)](_0x32297e))throw new IdGeneratorError(_0x141763['UHavF'],_0x210d3b(0x2b7)+JSON[_0x210d3b(0x2ba)](_0x32297e)+')');return _0x32297e;}['_pad2'](_0x37ff3d){const _0x5cc7ee=a0_0x7e059b,_0x9166c5={'JXXyP':function(_0x1240c8,_0x3f9454){return _0x1240c8(_0x3f9454);}};return _0x9166c5[_0x5cc7ee(0x307)](String,_0x37ff3d)[_0x5cc7ee(0x244)](0x2,'0');}[a0_0x7e059b(0x237)](_0x72669e,_0x5847f8,_0x25f095=new Date()){const _0x5e2499=a0_0x7e059b,_0x106c48={'zHGic':function(_0x268ff9,_0x4b9542){return _0x268ff9||_0x4b9542;},'qKnWG':'yyyy','CnIjQ':_0x5e2499(0x2a2),'Moazt':'IDGEN_INVALID_FORMAT'},_0x464f95=_0x25f095['getFullYear'](),_0x1ce562=this['_pad2'](_0x25f095[_0x5e2499(0x2f1)]()+0x1),_0x4a3b2c=this['_pad2'](_0x25f095['getDate']()),_0x2189a8=_0x106c48[_0x5e2499(0x29c)](_0x5847f8,'_');let _0x1843a0,_0x2fddc8='';switch(_0x72669e){case _0x5e2499(0x2cb):_0x1843a0=_0x2189a8+'_text';break;case _0x106c48['qKnWG']:_0x2fddc8=''+_0x464f95,_0x1843a0=_0x2189a8+'_yyyy_'+_0x2fddc8;break;case _0x106c48[_0x5e2499(0x2c0)]:_0x2fddc8=''+_0x464f95+_0x1ce562,_0x1843a0=_0x2189a8+'_yyyymm_'+_0x2fddc8;break;case'yyyymmdd':_0x2fddc8=''+_0x464f95+_0x1ce562+_0x4a3b2c,_0x1843a0=_0x2189a8+'_yyyymmdd_'+_0x2fddc8;break;default:throw new IdGeneratorError(_0x106c48['Moazt'],'Unknown\x20format:\x20'+_0x72669e);}return{'formatKey':_0x1843a0,'datePrefix':_0x2fddc8};}['_buildSeqKey'](_0x1bd65e,_0x297210){const _0x415271=a0_0x7e059b;return this[_0x415271(0x247)]+'seq:'+_0x1bd65e+':'+_0x297210;}[a0_0x7e059b(0x298)](_0x3f7176,_0x439e30){const _0xbccbc7=a0_0x7e059b;return this[_0xbccbc7(0x247)]+_0xbccbc7(0x276)+_0x3f7176+':'+_0x439e30;}[a0_0x7e059b(0x2cc)](_0x3b25ea,_0x2923db){return this['keyPrefix']+'meta:'+_0x3b25ea+':'+_0x2923db;}['_buildIssuedKey'](_0x54d07a){const _0x511a2a=a0_0x7e059b;return this['keyPrefix']+_0x511a2a(0x2fe)+_0x54d07a;}[a0_0x7e059b(0x21b)](_0x1f24a7,_0x2c981e){const _0x2c1489=a0_0x7e059b;return this[_0x2c1489(0x247)]+'active:'+_0x1f24a7+':'+_0x2c981e;}['_buildReservationKey'](_0x29b0b3){const _0x5ed9e2=a0_0x7e059b;return this[_0x5ed9e2(0x247)]+_0x5ed9e2(0x30a)+_0x29b0b3;}[a0_0x7e059b(0x27e)](_0x1c530b,_0x2d4fc2){return this['keyPrefix']+'rsv_idx:'+_0x1c530b+':'+_0x2d4fc2;}[a0_0x7e059b(0x26d)](){const _0x11e75d=a0_0x7e059b;return this['keyPrefix']+_0x11e75d(0x30a);}[a0_0x7e059b(0x28b)](_0x5345f3,_0x4eb622,_0x75cfb2,_0x56040e){const _0x45d9e1=a0_0x7e059b,_0x4b3fc6={'PYhqF':'idgen'};if(_0x75cfb2)return idempotencyManager['buildDeterministicKey'](_0x4b3fc6[_0x45d9e1(0x2da)],_0x5345f3,_0x4eb622+':'+_0x75cfb2+':'+_0x56040e);return idempotencyManager[_0x45d9e1(0x27b)](_0x45d9e1(0x2ad),_0x5345f3,_0x4eb622+':'+_0x56040e);}[a0_0x7e059b(0x216)](_0x5e94c7){return this['_counterTTLMap'][_0x5e94c7]||0x0;}['_formatNumber']({format:_0x589c57,prefix:_0x250735,datePrefix:_0x28a8b1,separator:_0x20b7f9,numDigits:_0x566758,counterInt:_0x5c117f}){const _0x39dde9=a0_0x7e059b,_0xcbd62e={'JqOlP':function(_0x494d60,_0xf3aba0){return _0x494d60>_0xf3aba0;},'jjTiq':function(_0x4595f2,_0x58e5d2){return _0x4595f2(_0x58e5d2);},'Nllnl':function(_0x5b69da,_0x2ce4be){return _0x5b69da===_0x2ce4be;},'pvGtD':_0x39dde9(0x2cb)},_0x1bda94=Math[_0x39dde9(0x24b)](0xa,_0x566758)-0x1;if(_0xcbd62e['JqOlP'](_0x5c117f,_0x1bda94))throw new IdGeneratorError('IDGEN_COUNTER_OVERFLOW',_0x39dde9(0x1f9)+_0x5c117f+'\x20exceeds\x20'+_0x566758+_0x39dde9(0x228)+_0x1bda94+_0x39dde9(0x2a0),{'counterInt':_0x5c117f,'numDigits':_0x566758,'max':_0x1bda94});const _0x1140f9=_0xcbd62e['jjTiq'](String,_0x5c117f)[_0x39dde9(0x244)](_0x566758,'0');if(_0xcbd62e['Nllnl'](_0x589c57,_0xcbd62e[_0x39dde9(0x2d2)]))return _0x250735?''+_0x250735+_0x20b7f9+_0x1140f9:_0x1140f9;return _0x250735?''+_0x250735+_0x20b7f9+_0x28a8b1+_0x20b7f9+_0x1140f9:''+_0x28a8b1+_0x20b7f9+_0x1140f9;}['_parseNumber']({format:_0x261226,prefix:_0x58bbe2,separator:_0x583435,numDigits:_0x42bd12,number:_0x51f202}){const _0x58b85a=a0_0x7e059b,_0x21ae27={'uggcw':'string','sdyMV':function(_0x2b8485,_0x50fd2e){return _0x2b8485===_0x50fd2e;},'nkXjM':_0x58b85a(0x2d1),'vJcGR':function(_0x1fcef6,_0x46f076){return _0x1fcef6!==_0x46f076;},'cFfjD':function(_0x394a65,_0x1db15e){return _0x394a65===_0x1db15e;},'eRtTQ':_0x58b85a(0x2a2),'vEHcU':function(_0x51a1e8,_0x2ee092,_0x3473ff){return _0x51a1e8(_0x2ee092,_0x3473ff);},'nQyzt':function(_0x5bc6ec,_0x3268b0){return _0x5bc6ec||_0x3268b0;},'gSPjZ':_0x58b85a(0x2cb)};if(typeof _0x51f202!==_0x21ae27[_0x58b85a(0x254)]||_0x21ae27['sdyMV'](_0x51f202['length'],0x0))throw new IdGeneratorError(_0x21ae27['nkXjM'],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x4ca53a=_0x583435||'',_0x39acc4=_0x21ae27['sdyMV'](_0x4ca53a,'')?[_0x51f202]:_0x51f202['split'](_0x4ca53a);let _0x2fd371='',_0xc2823c;if(_0x21ae27[_0x58b85a(0x1f4)](_0x261226,_0x58b85a(0x2cb))){if(_0x58bbe2){if(_0x39acc4[_0x58b85a(0x2ee)]!==0x2||_0x39acc4[0x0]!==_0x58bbe2)throw new IdGeneratorError(_0x58b85a(0x2d1),_0x58b85a(0x1f7)+_0x4ca53a+_0x58b85a(0x30f)+_0x51f202+')');_0xc2823c=_0x39acc4[0x1];}else{if(_0x21ae27['vJcGR'](_0x39acc4['length'],0x1))throw new IdGeneratorError(_0x21ae27['nkXjM'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x51f202+')');_0xc2823c=_0x39acc4[0x0];}}else{const _0x443a88=_0x58bbe2?0x3:0x2;if(_0x39acc4[_0x58b85a(0x2ee)]!==_0x443a88)throw new IdGeneratorError(_0x21ae27[_0x58b85a(0x2a6)],_0x58b85a(0x22b)+_0x51f202+',\x20expected\x20'+_0x443a88+_0x58b85a(0x2b9));let _0x452240=0x0;if(_0x58bbe2){if(_0x21ae27['vJcGR'](_0x39acc4[_0x452240],_0x58bbe2))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20prefix\x20mismatch:\x20expected\x20'+_0x58bbe2+',\x20got\x20'+_0x39acc4[_0x452240]);_0x452240++;}_0x2fd371=_0x39acc4[_0x452240++];const _0x490f9b=_0x21ae27['cFfjD'](_0x261226,'yyyy')?/^\d{4}$/:_0x261226===_0x21ae27[_0x58b85a(0x2e5)]?/^\d{6}$/:/^\d{8}$/;if(!_0x490f9b['test'](_0x2fd371))throw new IdGeneratorError(_0x21ae27['nkXjM'],_0x58b85a(0x211)+_0x261226+':\x20'+_0x2fd371);_0xc2823c=_0x39acc4[_0x452240];}if(!new RegExp('^\x5cd{'+_0x42bd12+'}$')[_0x58b85a(0x256)](_0xc2823c))throw new IdGeneratorError(_0x21ae27[_0x58b85a(0x2a6)],_0x58b85a(0x214)+_0x42bd12+_0x58b85a(0x2f6)+_0xc2823c+')');const _0x5daf14=_0x21ae27['vEHcU'](parseInt,_0xc2823c,0xa),_0x4af79b=_0x21ae27['nQyzt'](_0x58bbe2,'_');let _0x3f90d0;return _0x261226===_0x21ae27[_0x58b85a(0x280)]?_0x3f90d0=_0x4af79b+_0x58b85a(0x21a):_0x3f90d0=_0x4af79b+'_'+_0x261226+'_'+_0x2fd371,{'formatKey':_0x3f90d0,'counterInt':_0x5daf14,'datePrefix':_0x2fd371};}[a0_0x7e059b(0x28f)](_0x5b77e6){let _0x4282a8='';for(const _0x5dacbc of _0x5b77e6){const _0x259586=PLACEHOLDER_MAP[_0x5dacbc];if(_0x259586){const _0xafeaa7=crypto['randomInt'](0x0,_0x259586['length']);_0x4282a8+=_0x259586[_0xafeaa7];}else _0x4282a8+=_0x5dacbc;}return _0x4282a8;}async[a0_0x7e059b(0x24e)](_0x361da9){const _0x9d02f5=a0_0x7e059b,_0x28d7f5={'HbIrO':_0x9d02f5(0x25e),'oLQvI':_0x9d02f5(0x2e7)};if(!_0x361da9)return null;try{const _0x1c7fec=redisClient[_0x9d02f5(0x2df)](),_0x27a93d=await _0x1c7fec['get'](_0x361da9);if(_0x27a93d)return logger[_0x9d02f5(0x208)]({'event':'idgen_idem_hit','key':_0x361da9},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x27a93d);return null;}catch(_0x22acc6){return logger['warn']({'event':_0x28d7f5[_0x9d02f5(0x246)],'error':_0x22acc6[_0x9d02f5(0x232)]},_0x28d7f5['oLQvI']),null;}}async[a0_0x7e059b(0x24a)](_0x46e672,_0x22cfdd){const _0x34b405=a0_0x7e059b,_0x21046f={'wcnTD':_0x34b405(0x1f0)};if(!_0x46e672)return;try{const _0x389773=redisClient[_0x34b405(0x2df)]();await _0x389773['setex'](_0x46e672,this['idemTTL'],JSON['stringify'](_0x22cfdd));}catch(_0x50dcc0){logger[_0x34b405(0x2b4)]({'event':'idgen_idem_store_error','error':_0x50dcc0[_0x34b405(0x232)]},_0x21046f['wcnTD']);}}async['_storeIdemCacheNX'](_0x2d99a8,_0xbfbe62){const _0x23152a=a0_0x7e059b,_0x2816de={'nZNoQ':function(_0x3eee16,_0x1f1f33){return _0x3eee16===_0x1f1f33;},'szXpm':'idgen_idem_nx_race_lost_but_empty','IrmcC':'idgen_idem_storenx_error'};if(!_0x2d99a8)return{'stored':!![],'winnerResult':null};try{const _0x21132e=redisClient[_0x23152a(0x2df)](),_0x54d547=JSON[_0x23152a(0x2ba)](_0xbfbe62),_0x381a6f=await _0x21132e[_0x23152a(0x21d)](_0x2d99a8,_0x54d547,'EX',this['idemTTL'],'NX');if(_0x2816de['nZNoQ'](_0x381a6f,'OK'))return{'stored':!![],'winnerResult':null};const _0x26ec73=await _0x21132e['get'](_0x2d99a8);if(_0x26ec73)return{'stored':![],'winnerResult':JSON[_0x23152a(0x210)](_0x26ec73)};return logger[_0x23152a(0x2b4)]({'event':_0x2816de['szXpm'],'key':_0x2d99a8},'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result'),{'stored':!![],'winnerResult':null};}catch(_0x80dc82){return logger['warn']({'event':_0x2816de['IrmcC'],'error':_0x80dc82[_0x23152a(0x232)]},_0x23152a(0x24f)),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x833119,_0x4b767d,_0x42bc27){const _0x4c882a=a0_0x7e059b,_0x5a4132={'WHvFp':'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)'};try{const _0x2d056d=redisClient[_0x4c882a(0x2df)]();if(_0x42bc27){const _0x47a809=this[_0x4c882a(0x21b)](_0x833119,_0x4b767d);await _0x2d056d['del'](_0x47a809);}else{const _0x1b50b3=this['_buildIssuedKey'](_0x833119);await _0x2d056d[_0x4c882a(0x273)](_0x1b50b3,_0x4b767d);}}catch(_0x57cea3){logger[_0x4c882a(0x2b4)]({'event':'idgen_random_undo_error','error':_0x57cea3[_0x4c882a(0x232)]},_0x5a4132['WHvFp']);}}async['_updateMeta'](_0x318165,_0x104381,_0x15a263,_0x39e4af=0x0){const _0x4c583e=a0_0x7e059b,_0x33d70f={'zJZzJ':function(_0x2d0edc,_0x403246){return _0x2d0edc(_0x403246);},'KcaiM':function(_0x25066d,_0x24ec44){return _0x25066d>_0x24ec44;},'MUJkF':'Meta\x20update\x20error'};try{const _0x27570a=redisClient['getClient'](),_0x3a319b=this['_buildMetaKey'](_0x318165,_0x104381),_0x3321fb=[];for(const [_0x4a0096,_0x3971cd]of Object[_0x4c583e(0x2dd)](_0x15a263)){_0x3321fb[_0x4c583e(0x22d)](_0x4a0096,_0x33d70f['zJZzJ'](String,_0x3971cd));}if(_0x3321fb[_0x4c583e(0x2ee)]>0x0){await _0x27570a[_0x4c583e(0x2e0)](_0x3a319b,..._0x3321fb);if(_0x33d70f['KcaiM'](_0x39e4af,0x0))await _0x27570a['expire'](_0x3a319b,_0x39e4af);}}catch(_0x9626ef){logger[_0x4c583e(0x2b4)]({'event':'idgen_meta_update_error','error':_0x9626ef[_0x4c583e(0x232)]},_0x33d70f[_0x4c583e(0x302)]);}}async['number'](_0x1ca86c){const _0x2c7def=a0_0x7e059b,_0x214442={'yHEsU':'IDGEN_DISABLED','zZLOc':'number','YVpKr':function(_0x2c6d89,_0x150d30){return _0x2c6d89(_0x150d30);},'rrLyf':function(_0x1f5855,_0xed200c){return _0x1f5855===_0xed200c;},'UNVSe':function(_0x29f2ec,_0x36200e){return _0x29f2ec(_0x36200e);},'zelXT':'idgen_idem_loser_release_error','PrwmW':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError(_0x214442['yHEsU'],_0x2c7def(0x1fb));const _0x5402db=this[_0x2c7def(0x204)](_0x1ca86c),_0xb08927=this[_0x2c7def(0x236)](_0x1ca86c[_0x2c7def(0x2ca)]),{resource:_0x6c54ea,format:_0x13529e,prefix:_0x4b7024,separator:_0x1bfab7,numDigits:_0x443afb,reuseDelete:_0x475607}=_0x5402db,{formatKey:_0x742550,datePrefix:_0x22ad84}=this[_0x2c7def(0x237)](_0x13529e,_0x4b7024),_0x523f0d=this['_buildSeqKey'](_0x6c54ea,_0x742550),_0x5bf014=this[_0x2c7def(0x298)](_0x6c54ea,_0x742550),_0x4342a6=this['_getCounterTTL'](_0x13529e);let _0xc1b347=null;if(_0xb08927){_0xc1b347=this[_0x2c7def(0x28b)](_0x214442[_0x2c7def(0x203)],_0x6c54ea,_0x742550,_0xb08927);const _0x58ff44=await this[_0x2c7def(0x24e)](_0xc1b347);if(_0x58ff44)return _0x58ff44;}const _0xe80d14=redisClient['getClient'](),_0x5df8af=await _0xe80d14['eval'](LUA_GENERATE_NUMBER,0x2,_0x523f0d,_0x5bf014,_0x475607?'1':'0',_0x214442[_0x2c7def(0x248)](String,_0x4342a6)),_0x20b707=_0x5df8af[0x0],_0x480c8f=_0x214442[_0x2c7def(0x2e9)](_0x5df8af[0x1],0x1),_0x21125e=this[_0x2c7def(0x24d)]({'format':_0x13529e,'prefix':_0x4b7024,'datePrefix':_0x22ad84,'separator':_0x1bfab7,'numDigits':_0x443afb,'counterInt':_0x20b707}),_0x451cde={'value':_0x21125e,'counter':_0x20b707,'resource':_0x6c54ea,'formatKey':_0x742550,'isReused':_0x480c8f,'generatedAt':new Date()[_0x2c7def(0x2b8)]()},_0x19f99d=await this[_0x2c7def(0x2ea)](_0xc1b347,_0x451cde);if(!_0x19f99d['stored']){try{await _0xe80d14['eval'](LUA_RELEASE_NUMBER,0x1,_0x5bf014,_0x214442['UNVSe'](String,_0x20b707),String(_0x4342a6));}catch(_0x11e2dd){logger[_0x2c7def(0x2b4)]({'event':_0x214442['zelXT'],'error':_0x11e2dd['message'],'resource':_0x6c54ea,'formatKey':_0x742550,'counterInt':_0x20b707},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger['info']({'event':_0x214442[_0x2c7def(0x26b)],'resource':_0x6c54ea,'formatKey':_0x742550,'counter':_0x20b707},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x19f99d[_0x2c7def(0x22e)];}return this['_updateMeta'](_0x6c54ea,_0x742550,{'lastValue':_0x21125e,'lastCounter':_0x20b707,'lastIsReused':_0x480c8f,'lastGeneratedAt':_0x451cde['generatedAt']},_0x4342a6),logger[_0x2c7def(0x208)]({'event':'idgen_number_generated','resource':_0x6c54ea,'formatKey':_0x742550,'counter':_0x20b707,'isReused':_0x480c8f},_0x2c7def(0x2dc)+_0x21125e),_0x451cde;}async[a0_0x7e059b(0x2c4)](_0x4ebfd2){const _0x5c2fc9=a0_0x7e059b,_0x227c79={'OPZaJ':_0x5c2fc9(0x200),'Iciqp':function(_0x2fc5cd,_0x3de2d7){return _0x2fc5cd!==_0x3de2d7;},'fkcGj':_0x5c2fc9(0x2ae),'auOYH':function(_0x1eaa9f,_0x3f0e66){return _0x1eaa9f===_0x3f0e66;},'WJnPu':'IDGEN_INVALID_NUMBER','NDMef':_0x5c2fc9(0x2cb),'Zlems':_0x5c2fc9(0x2e8),'ORjEt':function(_0x10fcaf,_0x19b180){return _0x10fcaf(_0x19b180);}};if(!this['enabled'])throw new IdGeneratorError(_0x5c2fc9(0x209),_0x227c79['OPZaJ']);let _0xa3d64b,_0xa45a32,_0x38e0da,_0x2e448d;const _0x2f92f1=this[_0x5c2fc9(0x236)](_0x4ebfd2['idempotencyKey']);if(_0x227c79['Iciqp'](_0x4ebfd2[_0x5c2fc9(0x26f)],undefined)&&_0x227c79['Iciqp'](_0x4ebfd2['counterInt'],null)){this[_0x5c2fc9(0x28a)](_0x4ebfd2[_0x5c2fc9(0x291)]),_0xa3d64b=_0x4ebfd2['resource'];if(_0x227c79[_0x5c2fc9(0x285)](typeof _0x4ebfd2['formatKey'],_0x227c79['fkcGj'])||_0x227c79['auOYH'](_0x4ebfd2['formatKey'][_0x5c2fc9(0x2ee)],0x0))throw new IdGeneratorError(_0x227c79['WJnPu'],'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0xa45a32=_0x4ebfd2['formatKey'];if(!Number['isInteger'](_0x4ebfd2[_0x5c2fc9(0x26f)])||_0x4ebfd2['counterInt']<0x1)throw new IdGeneratorError(_0x227c79['WJnPu'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x4ebfd2[_0x5c2fc9(0x26f)]+')');_0x38e0da=_0x4ebfd2[_0x5c2fc9(0x26f)];const _0x2dfba3=_0xa45a32['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x2e448d=_0x2dfba3?_0x2dfba3[0x1]:_0x227c79[_0x5c2fc9(0x2d5)];}else{const _0x469822=this['_validateNumberParams'](_0x4ebfd2),_0x10c6c1=this['_parseNumber']({'format':_0x469822['format'],'prefix':_0x469822[_0x5c2fc9(0x277)],'separator':_0x469822[_0x5c2fc9(0x312)],'numDigits':_0x469822['numDigits'],'number':_0x4ebfd2['number']});_0xa3d64b=_0x469822[_0x5c2fc9(0x291)],_0xa45a32=_0x10c6c1[_0x5c2fc9(0x2b6)],_0x38e0da=_0x10c6c1['counterInt'],_0x2e448d=_0x469822['format'];}const _0x1b0b43=this[_0x5c2fc9(0x298)](_0xa3d64b,_0xa45a32),_0xaf3a02=this[_0x5c2fc9(0x216)](_0x2e448d);let _0x30a6ef=null;if(_0x2f92f1){_0x30a6ef=this['_buildIdemKey'](_0x227c79['Zlems'],_0xa3d64b,_0xa45a32,_0x2f92f1);const _0x1d87ef=await this['_retrieveIdemCache'](_0x30a6ef);if(_0x1d87ef)return _0x1d87ef;}const _0x4f9816=redisClient[_0x5c2fc9(0x2df)]();await _0x4f9816[_0x5c2fc9(0x2de)](LUA_RELEASE_NUMBER,0x1,_0x1b0b43,_0x227c79['ORjEt'](String,_0x38e0da),_0x227c79['ORjEt'](String,_0xaf3a02));const _0x12d1c9={'released':!![],'resource':_0xa3d64b,'formatKey':_0xa45a32,'counter':_0x38e0da,'releasedAt':new Date()[_0x5c2fc9(0x2b8)]()};return await this['_storeIdemCache'](_0x30a6ef,_0x12d1c9),this[_0x5c2fc9(0x2b2)](_0xa3d64b,_0xa45a32,{'lastReleasedCounter':_0x38e0da,'lastReleasedAt':_0x12d1c9['releasedAt']},_0xaf3a02),logger['info']({'event':_0x5c2fc9(0x28c),'resource':_0xa3d64b,'formatKey':_0xa45a32,'counter':_0x38e0da},'ID\x20Generator\x20number\x20released:\x20'+_0x38e0da),_0x12d1c9;}async[a0_0x7e059b(0x252)](_0x104c68){const _0x5cc2b8=a0_0x7e059b,_0x18ef3b={'PqrNH':_0x5cc2b8(0x209),'IBPqE':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','HIyGl':'reserve','fkBpS':function(_0x461483,_0x1f7b5b){return _0x461483*_0x1f7b5b;},'FztoH':'format','IpbKV':'prefix','vdzbp':_0x5cc2b8(0x312),'VYYhe':function(_0x406e55,_0x1e2fe6){return _0x406e55(_0x1e2fe6);},'beDAG':_0x5cc2b8(0x23a),'QLDjC':'createdAt','UQfpQ':'ttlMs','iqyIa':_0x5cc2b8(0x2e4),'wjPvf':function(_0x2609cc,_0x47c0cb){return _0x2609cc(_0x47c0cb);},'GXXRJ':function(_0x1ffc70,_0x53f6b9){return _0x1ffc70===_0x53f6b9;},'iyDzW':_0x5cc2b8(0x2e6),'USyhl':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','gTiCG':'idgen_reserve_value_persist_error','KATti':_0x5cc2b8(0x2f8),'jWwnM':_0x5cc2b8(0x20f),'YcCYL':_0x5cc2b8(0x235)};if(!this[_0x5cc2b8(0x2f2)])throw new IdGeneratorError(_0x18ef3b['PqrNH'],_0x18ef3b['IBPqE']);const _0xbe233d=this[_0x5cc2b8(0x204)](_0x104c68),_0x38215e=this[_0x5cc2b8(0x282)](_0x104c68[_0x5cc2b8(0x21e)]),_0x34f1f5=this['_validateIdempotencyKey'](_0x104c68[_0x5cc2b8(0x2ca)]),{resource:_0xb614f,format:_0x736de4,prefix:_0x5c2b4a,separator:_0x4480e7,numDigits:_0x301944,reuseDelete:_0x5b1ef4}=_0xbe233d,{formatKey:_0x559365,datePrefix:_0x1c9a9e}=this[_0x5cc2b8(0x237)](_0x736de4,_0x5c2b4a),_0x3b71b7=this['_buildSeqKey'](_0xb614f,_0x559365),_0x5282cd=this[_0x5cc2b8(0x298)](_0xb614f,_0x559365),_0x2aa20a=this[_0x5cc2b8(0x27e)](_0xb614f,_0x559365),_0x8eb921=this[_0x5cc2b8(0x216)](_0x736de4);let _0x1e3d76=null;if(_0x34f1f5){_0x1e3d76=this[_0x5cc2b8(0x28b)](_0x18ef3b['HIyGl'],_0xb614f,_0x559365,_0x34f1f5);const _0x2fedd0=await this[_0x5cc2b8(0x24e)](_0x1e3d76);if(_0x2fedd0)return _0x2fedd0;}const _0x3c33f2=crypto[_0x5cc2b8(0x2d3)](),_0x3e4fef=this['_buildReservationKey'](_0x3c33f2),_0xfb5b4b=this[_0x5cc2b8(0x26d)](),_0x35520e=Date['now'](),_0x552dca=_0x35520e+_0x18ef3b['fkBpS'](_0x38215e,0x3e8),_0x5c9ce2=_0x38215e*0x3e8,_0x2311eb=new Date(_0x35520e)['toISOString'](),_0x1249fd=new Date(_0x552dca)['toISOString'](),_0x434c23=[_0x5cc2b8(0x291),_0xb614f,_0x5cc2b8(0x2b6),_0x559365,_0x18ef3b['FztoH'],_0x736de4,_0x18ef3b['IpbKV'],_0x5c2b4a,_0x18ef3b[_0x5cc2b8(0x25b)],_0x4480e7,_0x5cc2b8(0x304),_0x18ef3b['VYYhe'](String,_0x301944),_0x18ef3b['beDAG'],_0x1c9a9e||'',_0x18ef3b[_0x5cc2b8(0x21f)],_0x2311eb,_0x5cc2b8(0x1f5),_0x1249fd,_0x18ef3b[_0x5cc2b8(0x284)],String(_0x5c9ce2)];_0x34f1f5&&_0x434c23[_0x5cc2b8(0x22d)](_0x18ef3b['iqyIa'],_0x34f1f5);const _0x475258=redisClient[_0x5cc2b8(0x2df)](),_0x1590d3=await _0x475258['eval'](LUA_RESERVE_NUMBER,0x3,_0x3b71b7,_0x5282cd,_0x2aa20a,_0x5b1ef4?'1':'0',String(_0x8eb921),_0x3c33f2,_0x3e4fef,_0x18ef3b['VYYhe'](String,_0x5c9ce2),String(_0x552dca),_0x18ef3b[_0x5cc2b8(0x2db)](String,_0x35520e),_0xfb5b4b,..._0x434c23),_0x553a6a=_0x1590d3[0x0],_0x27d70e=_0x18ef3b['GXXRJ'](_0x1590d3[0x1],0x1),_0x338d52=_0x1590d3[0x2]||0x0;let _0x1cb31d;try{_0x1cb31d=this['_formatNumber']({'format':_0x736de4,'prefix':_0x5c2b4a,'datePrefix':_0x1c9a9e,'separator':_0x4480e7,'numDigits':_0x301944,'counterInt':_0x553a6a});}catch(_0x288af8){try{await _0x475258[_0x5cc2b8(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x3e4fef,_0x2aa20a,_0x5282cd,_0x3c33f2,String(_0x8eb921));}catch(_0x17fa73){logger['warn']({'event':_0x18ef3b['iyDzW'],'error':_0x17fa73[_0x5cc2b8(0x232)],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b['USyhl']);}throw _0x288af8;}try{await _0x475258['hset'](_0x3e4fef,'value',_0x1cb31d);}catch(_0x4db90f){logger['warn']({'event':_0x18ef3b['gTiCG'],'error':_0x4db90f['message'],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b['KATti']);}const _0x47ca32={'token':_0x3c33f2,'value':_0x1cb31d,'counter':_0x553a6a,'resource':_0xb614f,'formatKey':_0x559365,'isReused':_0x27d70e,'createdAt':_0x2311eb,'expiresAt':_0x1249fd,'reapedCount':_0x338d52},_0x5f55f1=await this['_storeIdemCacheNX'](_0x1e3d76,_0x47ca32);if(!_0x5f55f1[_0x5cc2b8(0x245)]){try{await _0x475258[_0x5cc2b8(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x3e4fef,_0x2aa20a,_0x5282cd,_0x3c33f2,_0x18ef3b[_0x5cc2b8(0x2db)](String,_0x8eb921));}catch(_0x11e458){logger[_0x5cc2b8(0x2b4)]({'event':_0x5cc2b8(0x23b),'error':_0x11e458['message'],'resource':_0xb614f,'formatKey':_0x559365,'counterInt':_0x553a6a,'token':_0x3c33f2},_0x18ef3b[_0x5cc2b8(0x2cf)]);}return logger[_0x5cc2b8(0x208)]({'event':_0x18ef3b['YcCYL'],'resource':_0xb614f,'formatKey':_0x559365,'counter':_0x553a6a,'token':_0x3c33f2},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x5f55f1['winnerResult'];}return this[_0x5cc2b8(0x2b2)](_0xb614f,_0x559365,{'lastReservedCounter':_0x553a6a,'lastReservedAt':_0x2311eb,'lastReapedCount':_0x338d52},_0x8eb921),logger[_0x5cc2b8(0x208)]({'event':'idgen_number_reserved','resource':_0xb614f,'formatKey':_0x559365,'counter':_0x553a6a,'isReused':_0x27d70e,'token':_0x3c33f2,'ttl':_0x38215e,'reapedCount':_0x338d52},_0x5cc2b8(0x29f)+_0x1cb31d+_0x5cc2b8(0x268)+_0x3c33f2+')'),_0x47ca32;}async['confirmReservation'](_0x27e5c5){const _0x477f86=a0_0x7e059b,_0x15c293={'SNWMP':_0x477f86(0x2ad),'HtMbA':'reserve_confirm','uwLvY':'IDGEN_RESERVATION_NOT_FOUND','Eaevq':'idgen_reservation_confirmed'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x477f86(0x200));const _0x1ddd8d=this['_validateReservationToken'](_0x27e5c5&&_0x27e5c5[_0x477f86(0x223)]),_0xeb394e=this['_validateIdempotencyKey'](_0x27e5c5&&_0x27e5c5['idempotencyKey']);let _0x9515dd=null;if(_0xeb394e){_0x9515dd=idempotencyManager['buildDeterministicKey'](_0x15c293['SNWMP'],_0x15c293[_0x477f86(0x2d9)],_0x1ddd8d+':'+_0xeb394e);const _0x6aa00f=await this['_retrieveIdemCache'](_0x9515dd);if(_0x6aa00f)return _0x6aa00f;}const _0x386971=await this[_0x477f86(0x1f2)](_0x1ddd8d),_0x2a4fdc=redisClient[_0x477f86(0x2df)](),_0x5197a9=await _0x2a4fdc['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x386971[_0x477f86(0x2fb)],_0x386971['rsvIdxKey'],_0x1ddd8d);if(!_0x5197a9||_0x5197a9[0x0]!==0x1)throw new IdGeneratorError(_0x15c293['uwLvY'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x1ddd8d,{'token':_0x1ddd8d});const _0xd1910c=parseInt(_0x5197a9[0x1],0xa),_0x14388b=_0x5197a9[0x2],_0x201c16=_0x5197a9[0x3],_0x2360fa=new Date()['toISOString'](),_0x29372d={'confirmed':!![],'token':_0x1ddd8d,'value':_0x14388b,'counter':_0xd1910c,'resource':_0x386971[_0x477f86(0x291)],'formatKey':_0x201c16,'confirmedAt':_0x2360fa};await this['_storeIdemCache'](_0x9515dd,_0x29372d);const _0x47bfe2=_0x201c16['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x56cdfe=_0x47bfe2?_0x47bfe2[0x1]:_0x477f86(0x2cb),_0x4203f4=this[_0x477f86(0x216)](_0x56cdfe);return this['_updateMeta'](_0x386971['resource'],_0x201c16,{'lastConfirmedCounter':_0xd1910c,'lastConfirmedAt':_0x2360fa},_0x4203f4),logger['info']({'event':_0x15c293[_0x477f86(0x2ef)],'resource':_0x386971['resource'],'formatKey':_0x201c16,'counter':_0xd1910c,'token':_0x1ddd8d},_0x477f86(0x2ac)+_0x14388b+'\x20(token='+_0x1ddd8d+')'),_0x29372d;}async[a0_0x7e059b(0x287)](_0x230c21){const _0x546c2e=a0_0x7e059b,_0x28277d={'WBsAv':_0x546c2e(0x209),'mkzEd':'ID\x20Generator\x20is\x20disabled','taJXT':_0x546c2e(0x2ad),'rBDUJ':function(_0x66ad23,_0x46ab25){return _0x66ad23!==_0x46ab25;},'EKAxx':'idgen_reservation_cancelled'};if(!this[_0x546c2e(0x2f2)])throw new IdGeneratorError(_0x28277d['WBsAv'],_0x28277d['mkzEd']);const _0x1c1577=this[_0x546c2e(0x309)](_0x230c21&&_0x230c21['token']),_0x61e313=this['_validateIdempotencyKey'](_0x230c21&&_0x230c21[_0x546c2e(0x2ca)]);let _0x19ebba=null;if(_0x61e313){_0x19ebba=idempotencyManager[_0x546c2e(0x27b)](_0x28277d[_0x546c2e(0x2cd)],_0x546c2e(0x2bf),_0x1c1577+':'+_0x61e313);const _0x4fd02e=await this[_0x546c2e(0x24e)](_0x19ebba);if(_0x4fd02e)return _0x4fd02e;}const _0x1ab91f=await this[_0x546c2e(0x1f2)](_0x1c1577),_0xb4593e=this['_buildReuseKey'](_0x1ab91f['resource'],_0x1ab91f['formatKey']),_0x2c081d=_0x1ab91f['formatKey']['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x171ea7=_0x2c081d?_0x2c081d[0x1]:_0x546c2e(0x2cb),_0x485b4c=this[_0x546c2e(0x216)](_0x171ea7),_0x2fc756=redisClient[_0x546c2e(0x2df)](),_0x32dfff=await _0x2fc756[_0x546c2e(0x2de)](LUA_CANCEL_RESERVATION,0x3,_0x1ab91f[_0x546c2e(0x2fb)],_0x1ab91f['rsvIdxKey'],_0xb4593e,_0x1c1577,String(_0x485b4c));if(!_0x32dfff||_0x28277d['rBDUJ'](_0x32dfff[0x0],0x1))throw new IdGeneratorError(_0x546c2e(0x22a),_0x546c2e(0x300)+_0x1c1577,{'token':_0x1c1577});const _0x244f39=parseInt(_0x32dfff[0x1],0xa),_0x3fd2a7=_0x32dfff[0x2],_0x299c6c=_0x32dfff[0x3],_0x474557=new Date()['toISOString'](),_0x1394f3={'cancelled':!![],'token':_0x1c1577,'value':_0x3fd2a7,'counter':_0x244f39,'resource':_0x1ab91f[_0x546c2e(0x291)],'formatKey':_0x299c6c,'releasedToReuse':!![],'cancelledAt':_0x474557};return await this[_0x546c2e(0x24a)](_0x19ebba,_0x1394f3),this['_updateMeta'](_0x1ab91f['resource'],_0x299c6c,{'lastCancelledCounter':_0x244f39,'lastCancelledAt':_0x474557},_0x485b4c),logger['info']({'event':_0x28277d[_0x546c2e(0x295)],'resource':_0x1ab91f[_0x546c2e(0x291)],'formatKey':_0x299c6c,'counter':_0x244f39,'token':_0x1c1577},_0x546c2e(0x272)+_0x3fd2a7+'\x20(token='+_0x1c1577+')'),_0x1394f3;}async['extendReservation'](_0x2b5c6f){const _0x4bd62d=a0_0x7e059b,_0x30849f={'imlDJ':'IDGEN_DISABLED','Iodxv':_0x4bd62d(0x2ad),'aLjcr':function(_0x59e48a,_0x42a5bb){return _0x59e48a*_0x42a5bb;},'RdWpt':function(_0x599046,_0x444052){return _0x599046(_0x444052);},'hbZnN':function(_0x4bef79,_0x35c208){return _0x4bef79!==_0x35c208;},'OZkJK':function(_0x2b9a20,_0xab5e,_0x3de7a9){return _0x2b9a20(_0xab5e,_0x3de7a9);},'VzCcH':'text','mcIZl':_0x4bd62d(0x306)};if(!this[_0x4bd62d(0x2f2)])throw new IdGeneratorError(_0x30849f['imlDJ'],'ID\x20Generator\x20is\x20disabled');const _0xdf0a0d=this['_validateReservationToken'](_0x2b5c6f&&_0x2b5c6f['token']),_0x3ca1d1=this[_0x4bd62d(0x282)](_0x2b5c6f&&_0x2b5c6f[_0x4bd62d(0x21e)]),_0x22404b=this['_validateIdempotencyKey'](_0x2b5c6f&&_0x2b5c6f['idempotencyKey']);let _0x1a43d5=null;if(_0x22404b){_0x1a43d5=idempotencyManager[_0x4bd62d(0x27b)](_0x30849f['Iodxv'],_0x4bd62d(0x29b),_0xdf0a0d+':'+_0x22404b);const _0x1bbcc8=await this[_0x4bd62d(0x24e)](_0x1a43d5);if(_0x1bbcc8)return _0x1bbcc8;}const _0x34c563=await this['_getReservationContext'](_0xdf0a0d),_0x51d4f=Date[_0x4bd62d(0x2f5)](),_0x1b924c=_0x51d4f+_0x30849f[_0x4bd62d(0x2f7)](_0x3ca1d1,0x3e8),_0x484a93=_0x30849f[_0x4bd62d(0x2f7)](_0x3ca1d1,0x3e8),_0x5f3cb2=new Date(_0x1b924c)[_0x4bd62d(0x2b8)](),_0x2b86c4=redisClient[_0x4bd62d(0x2df)](),_0x5cb159=await _0x2b86c4['eval'](LUA_EXTEND_RESERVATION,0x2,_0x34c563[_0x4bd62d(0x2fb)],_0x34c563['rsvIdxKey'],_0xdf0a0d,_0x30849f['RdWpt'](String,_0x484a93),String(_0x1b924c),_0x5f3cb2);if(!_0x5cb159||_0x30849f['hbZnN'](_0x5cb159[0x0],0x1))throw new IdGeneratorError(_0x4bd62d(0x22a),_0x4bd62d(0x300)+_0xdf0a0d,{'token':_0xdf0a0d});const _0x16b61c=_0x5cb159[0x1],_0x34589f=_0x30849f['OZkJK'](parseInt,_0x5cb159[0x2],0xa),_0x1309f1=_0x5cb159[0x3],_0x5ab5f3=_0x5cb159[0x4],_0x5c4fec=new Date(_0x51d4f)['toISOString'](),_0x16212f={'extended':!![],'token':_0xdf0a0d,'previousExpiresAt':_0x16b61c,'expiresAt':_0x5f3cb2,'ttlMs':_0x484a93,'resource':_0x34c563[_0x4bd62d(0x291)],'formatKey':_0x5ab5f3,'counter':_0x34589f,'value':_0x1309f1,'extendedAt':_0x5c4fec};await this[_0x4bd62d(0x24a)](_0x1a43d5,_0x16212f);const _0x190f54=_0x5ab5f3[_0x4bd62d(0x205)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e1131=_0x190f54?_0x190f54[0x1]:_0x30849f[_0x4bd62d(0x281)],_0x2bf66d=this['_getCounterTTL'](_0x3e1131);return this[_0x4bd62d(0x2b2)](_0x34c563[_0x4bd62d(0x291)],_0x5ab5f3,{'lastExtendedCounter':_0x34589f,'lastExtendedAt':_0x5c4fec},_0x2bf66d),logger['info']({'event':_0x30849f[_0x4bd62d(0x20b)],'resource':_0x34c563[_0x4bd62d(0x291)],'formatKey':_0x5ab5f3,'counter':_0x34589f,'token':_0xdf0a0d,'ttl':_0x3ca1d1},_0x4bd62d(0x23e)+_0x1309f1+_0x4bd62d(0x268)+_0xdf0a0d+',\x20+'+_0x3ca1d1+'s)'),_0x16212f;}async['getReservation'](_0x42a613){const _0x39c5e3=a0_0x7e059b,_0x58f1d3={'hZgeQ':'IDGEN_DISABLED','huTyi':'ID\x20Generator\x20is\x20disabled','JPPZe':function(_0x49c2db,_0x48a93c,_0x25cad){return _0x49c2db(_0x48a93c,_0x25cad);},'RcBsw':function(_0x3da25d,_0x4b4350){return _0x3da25d===_0x4b4350;},'zqosI':function(_0x2291a0,_0x42df08){return _0x2291a0>=_0x42df08;}};if(!this[_0x39c5e3(0x2f2)])throw new IdGeneratorError(_0x58f1d3['hZgeQ'],_0x58f1d3['huTyi']);const _0x45461e=this['_validateReservationToken'](_0x42a613&&_0x42a613['token']),_0x374a1b=this[_0x39c5e3(0x2a7)](_0x45461e),_0x35edda=redisClient['getClient'](),_0x18c59f=_0x35edda['pipeline']();_0x18c59f['hgetall'](_0x374a1b),_0x18c59f[_0x39c5e3(0x2a8)](_0x374a1b);const _0x5a18db=await _0x18c59f['exec'](),_0x572f9a=_0x5a18db&&_0x5a18db[0x0]&&_0x5a18db[0x0][0x1],_0x3b88d3=_0x5a18db&&_0x5a18db[0x1]&&_0x5a18db[0x1][0x1];if(!_0x572f9a||Object[_0x39c5e3(0x2bb)](_0x572f9a)['length']===0x0)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x39c5e3(0x300)+_0x45461e,{'token':_0x45461e});return{'token':_0x45461e,'resource':_0x572f9a[_0x39c5e3(0x291)]||null,'formatKey':_0x572f9a['formatKey']||null,'format':_0x572f9a['format']||null,'prefix':_0x572f9a['prefix']||'','separator':_0x572f9a['separator']||'','numDigits':_0x572f9a['numDigits']?parseInt(_0x572f9a[_0x39c5e3(0x304)],0xa):null,'datePrefix':_0x572f9a['datePrefix']||'','counter':_0x572f9a['counter']?_0x58f1d3[_0x39c5e3(0x25c)](parseInt,_0x572f9a[_0x39c5e3(0x267)],0xa):null,'value':_0x572f9a[_0x39c5e3(0x1f8)]||null,'isReused':_0x572f9a[_0x39c5e3(0x225)]==='1'||_0x58f1d3['RcBsw'](_0x572f9a[_0x39c5e3(0x225)],0x1),'createdAt':_0x572f9a['createdAt']||null,'expiresAt':_0x572f9a[_0x39c5e3(0x1f5)]||null,'ttlRemainingMs':_0x58f1d3['RcBsw'](typeof _0x3b88d3,'number')&&_0x58f1d3[_0x39c5e3(0x25d)](_0x3b88d3,0x0)?_0x3b88d3:null};}async['_getReservationContext'](_0x1f5229){const _0x5ed354=a0_0x7e059b,_0x2d40e7={'VITXZ':function(_0x4a619c,_0x80fef4){return _0x4a619c||_0x80fef4;}},_0x16d43d=this['_buildReservationKey'](_0x1f5229),_0xceec6a=redisClient[_0x5ed354(0x2df)](),_0x4b44bd=await _0xceec6a[_0x5ed354(0x2c8)](_0x16d43d,'resource','formatKey'),_0x1630ad=_0x4b44bd&&_0x4b44bd[0x0],_0x130dc2=_0x4b44bd&&_0x4b44bd[0x1];if(_0x2d40e7[_0x5ed354(0x311)](!_0x1630ad,!_0x130dc2))throw new IdGeneratorError(_0x5ed354(0x22a),_0x5ed354(0x300)+_0x1f5229,{'token':_0x1f5229});return{'resource':_0x1630ad,'formatKey':_0x130dc2,'rsvKey':_0x16d43d,'rsvIdxKey':this['_buildReservationIndexKey'](_0x1630ad,_0x130dc2)};}async['random'](_0x10b9c3){const _0x11cb85=a0_0x7e059b,_0xac4aef={'YhzCi':_0x11cb85(0x200),'fojaA':'random','hzdBl':function(_0x4bcaa1,_0x4dff67){return _0x4bcaa1<_0x4dff67;},'AFyKH':function(_0x2bc9f8,_0x5137b0){return _0x2bc9f8===_0x5137b0;},'Xuwsj':function(_0xe0b095,_0x56fdb1){return _0xe0b095===_0x56fdb1;},'RSWja':function(_0x4eed5,_0x1eb7e7){return _0x4eed5===_0x1eb7e7;},'IaGMf':_0x11cb85(0x2a4),'FGRCQ':'idgen_random_idem_loser'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xac4aef[_0x11cb85(0x217)]);this[_0x11cb85(0x28a)](_0x10b9c3[_0x11cb85(0x291)]),this['_validatePattern'](_0x10b9c3['pattern']);const _0x82d334=this[_0x11cb85(0x2a1)](_0x10b9c3['ttl']),_0xb53895=this['_validateMaxRetry'](_0x10b9c3['maxRetry']),_0x74cca5=this['_validateIdempotencyKey'](_0x10b9c3[_0x11cb85(0x2ca)]),_0x2ff152=_0x10b9c3['ensureUnique']===!![],{resource:_0x487b51,pattern:_0x1a7b55}=_0x10b9c3;let _0xdaf23=null;if(_0x74cca5){_0xdaf23=this[_0x11cb85(0x28b)](_0xac4aef[_0x11cb85(0x231)],_0x487b51,null,_0x74cca5);const _0x395fe4=await this[_0x11cb85(0x24e)](_0xdaf23);if(_0x395fe4)return _0x395fe4;}const _0x3f682c=redisClient['getClient']();let _0x3f3075=null,_0x302f1a=0x0;if(!_0x2ff152)_0x3f3075=this[_0x11cb85(0x28f)](_0x1a7b55),_0x302f1a=0x1;else{for(let _0x8d87b7=0x0;_0xac4aef[_0x11cb85(0x1f6)](_0x8d87b7,_0xb53895);_0x8d87b7++){_0x302f1a++;const _0x2ca230=this[_0x11cb85(0x28f)](_0x1a7b55);if(_0x82d334){const _0x2f97fe=this['_buildActiveKey'](_0x487b51,_0x2ca230),_0x2b7292=await _0x3f682c[_0x11cb85(0x21d)](_0x2f97fe,'1','EX',_0x82d334,'NX');if(_0xac4aef['AFyKH'](_0x2b7292,'OK')){_0x3f3075=_0x2ca230;break;}}else{const _0x952c66=this['_buildIssuedKey'](_0x487b51),_0x2da352=await _0x3f682c[_0x11cb85(0x2d6)](_0x952c66,_0x2ca230);if(_0xac4aef[_0x11cb85(0x296)](_0x2da352,0x1)){_0x3f3075=_0x2ca230;break;}}}if(_0xac4aef[_0x11cb85(0x263)](_0x3f3075,null))throw new IdGeneratorError(_0xac4aef['IaGMf'],_0x11cb85(0x2a9)+_0xb53895+_0x11cb85(0x2a3),{'resource':_0x487b51,'pattern':_0x1a7b55,'maxRetry':_0xb53895});}const _0x38f2be={'value':_0x3f3075,'resource':_0x487b51,'pattern':_0x1a7b55,'attemptCount':_0x302f1a,'generatedAt':new Date()['toISOString']()};_0x82d334&&_0x2ff152&&(_0x38f2be['expiresAt']=new Date(Date[_0x11cb85(0x2f5)]()+_0x82d334*0x3e8)[_0x11cb85(0x2b8)]());const _0x2e1494=await this['_storeIdemCacheNX'](_0xdaf23,_0x38f2be);if(!_0x2e1494[_0x11cb85(0x245)])return _0x2ff152&&await this[_0x11cb85(0x22c)](_0x487b51,_0x3f3075,_0x82d334),logger[_0x11cb85(0x208)]({'event':_0xac4aef['FGRCQ'],'resource':_0x487b51,'pattern':_0x1a7b55,'value':_0x3f3075},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x2e1494[_0x11cb85(0x22e)];return logger['info']({'event':_0x11cb85(0x213),'resource':_0x487b51,'pattern':_0x1a7b55,'attemptCount':_0x302f1a,'ensureUnique':_0x2ff152,'ttl':_0x82d334||0x0},'ID\x20Generator\x20random:\x20'+_0x3f3075),_0x38f2be;}async[a0_0x7e059b(0x2f3)](_0x4e6f7f){const _0x5a57dc=a0_0x7e059b,_0x4c90c4={'mfixU':function(_0x5d5605,_0x2063e9){return _0x5d5605==_0x2063e9;},'atVZS':function(_0x2d254d,_0x5e82b3){return _0x2d254d<_0x5e82b3;}},_0x1bd2e2=_0x4c90c4['mfixU'](_0x4e6f7f['digits'],null)?this[_0x5a57dc(0x2b0)]:_0x4e6f7f['digits'];if(!Number['isInteger'](_0x1bd2e2)||_0x4c90c4['atVZS'](_0x1bd2e2,MIN_PIN_DIGITS)||_0x1bd2e2>MAX_PIN_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_DIGITS','Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x1bd2e2+')');const _0x1cfc07='9'[_0x5a57dc(0x23c)](_0x1bd2e2);return this['random']({'resource':_0x4e6f7f[_0x5a57dc(0x291)],'pattern':_0x1cfc07,'ensureUnique':_0x4e6f7f[_0x5a57dc(0x2ed)]===!![],'ttl':_0x4e6f7f[_0x5a57dc(0x21e)],'maxRetry':_0x4e6f7f[_0x5a57dc(0x27f)],'idempotencyKey':_0x4e6f7f['idempotencyKey']});}async[a0_0x7e059b(0x220)](_0x21181a){const _0x2ce38c=a0_0x7e059b,_0x3e0bd6=_0x21181a['pattern']||this[_0x2ce38c(0x22f)];return this['random']({'resource':_0x21181a[_0x2ce38c(0x291)],'pattern':_0x3e0bd6,'ensureUnique':_0x21181a['ensureUnique']!==![],'ttl':_0x21181a['ttl'],'maxRetry':_0x21181a[_0x2ce38c(0x27f)],'idempotencyKey':_0x21181a[_0x2ce38c(0x2ca)]});}async[a0_0x7e059b(0x265)](_0x37003b){const _0x45c297=a0_0x7e059b,_0x3fdb71={'gIanW':function(_0x3c80d0,_0x42cd16){return _0x3c80d0!==_0x42cd16;}},_0x3d71e5=_0x37003b[_0x45c297(0x2d0)]||this[_0x45c297(0x1fd)];return this['random']({'resource':_0x37003b[_0x45c297(0x291)],'pattern':_0x3d71e5,'ensureUnique':_0x3fdb71[_0x45c297(0x297)](_0x37003b['ensureUnique'],![]),'ttl':_0x37003b['ttl'],'maxRetry':_0x37003b['maxRetry'],'idempotencyKey':_0x37003b['idempotencyKey']});}async['consume'](_0x272d88){const _0x47460a=a0_0x7e059b,_0x12539e={'kpGSD':_0x47460a(0x209),'jbBdM':'ID\x20Generator\x20is\x20disabled','pmfvr':function(_0x2124c6,_0x32e891){return _0x2124c6!==_0x32e891;},'kSPql':function(_0x5db071,_0x1920a0){return _0x5db071===_0x1920a0;},'jrPmr':'IDGEN_INVALID_NUMBER','JuDmC':_0x47460a(0x2d7)};if(!this[_0x47460a(0x2f2)])throw new IdGeneratorError(_0x12539e[_0x47460a(0x286)],_0x12539e[_0x47460a(0x299)]);this[_0x47460a(0x28a)](_0x272d88[_0x47460a(0x291)]);if(_0x12539e['pmfvr'](typeof _0x272d88[_0x47460a(0x1f8)],_0x47460a(0x2ae))||_0x12539e[_0x47460a(0x20e)](_0x272d88['value'][_0x47460a(0x2ee)],0x0))throw new IdGeneratorError(_0x12539e[_0x47460a(0x212)],_0x47460a(0x29a));const {resource:_0x377a69,value:_0x267650}=_0x272d88,_0x5d5d12=redisClient[_0x47460a(0x2df)](),_0x5a1002=this[_0x47460a(0x21b)](_0x377a69,_0x267650),_0xb119=this[_0x47460a(0x2b5)](_0x377a69),[_0x57fe99,_0xdcc0f2]=await Promise['all']([_0x5d5d12[_0x47460a(0x1fa)](_0x5a1002),_0x5d5d12[_0x47460a(0x273)](_0xb119,_0x267650)]),_0x4ac04a=_0x57fe99+_0xdcc0f2>0x0;return logger['info']({'event':_0x12539e[_0x47460a(0x310)],'resource':_0x377a69,'value':_0x267650,'consumed':_0x4ac04a},_0x47460a(0x25f)+_0x267650),{'consumed':_0x4ac04a,'resource':_0x377a69,'value':_0x267650,'consumedAt':new Date()[_0x47460a(0x2b8)]()};}async['peek'](_0x370951){const _0xf319f6=a0_0x7e059b,_0xc2ec1a={'Adfzo':'ID\x20Generator\x20is\x20disabled','NlmKd':'number','mkrLo':_0xf319f6(0x2cb),'NHbCH':function(_0x2bdfbd,_0x2ae94a){return _0x2bdfbd||_0x2ae94a;},'nZKQl':'random'};if(!this[_0xf319f6(0x2f2)])throw new IdGeneratorError(_0xf319f6(0x209),_0xc2ec1a[_0xf319f6(0x226)]);this['_validateResource'](_0x370951[_0xf319f6(0x291)]);const _0x17b723=_0x370951[_0xf319f6(0x202)]||_0xc2ec1a[_0xf319f6(0x264)],_0x347f67=redisClient['getClient']();if(_0x17b723===_0xc2ec1a['NlmKd']){const _0x1c1275=(_0x370951[_0xf319f6(0x26a)]||_0xc2ec1a[_0xf319f6(0x1fc)])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x1c1275))throw new IdGeneratorError(_0xf319f6(0x2af),'Invalid\x20format:\x20'+_0x370951['format']);const {formatKey:_0x33e5ad}=this[_0xf319f6(0x237)](_0x1c1275,_0x370951[_0xf319f6(0x277)]||''),_0x5f3ced=this['_buildSeqKey'](_0x370951[_0xf319f6(0x291)],_0x33e5ad),_0x2c0c2f=this['_buildReuseKey'](_0x370951['resource'],_0x33e5ad),[_0x5963ce,_0x32d55a]=await Promise[_0xf319f6(0x2d4)]([_0x347f67['get'](_0x5f3ced),_0x347f67[_0xf319f6(0x27a)](_0x2c0c2f)]);return{'resource':_0x370951['resource'],'mode':_0xf319f6(0x269),'formatKey':_0x33e5ad,'currentCounter':parseInt(_0x5963ce,0xa)||0x0,'reusePoolSize':_0xc2ec1a['NHbCH'](_0x32d55a,0x0)};}if(_0x17b723===_0xc2ec1a['nZKQl']){const _0x111db0=this['_buildIssuedKey'](_0x370951['resource']),_0x32dac9=await _0x347f67['scard'](_0x111db0);return{'resource':_0x370951['resource'],'mode':_0xc2ec1a['nZKQl'],'issuedCount':_0x32dac9||0x0};}throw new IdGeneratorError('IDGEN_INVALID_MODE',_0xf319f6(0x292)+_0x17b723);}async[a0_0x7e059b(0x2f0)](_0x2bfa73){const _0x4aef1a=a0_0x7e059b,_0x24ed24={'PBdRQ':function(_0x44b66a,_0x4d85ab){return _0x44b66a>_0x4d85ab;}},_0x3be34d=await this[_0x4aef1a(0x224)](_0x2bfa73);if(_0x3be34d[_0x4aef1a(0x202)]===_0x4aef1a(0x269)){const _0x52d8a6=redisClient[_0x4aef1a(0x2df)](),_0xf53978=this[_0x4aef1a(0x2cc)](_0x2bfa73[_0x4aef1a(0x291)],_0x3be34d['formatKey']),_0x74dff8=this[_0x4aef1a(0x298)](_0x2bfa73[_0x4aef1a(0x291)],_0x3be34d['formatKey']),[_0x518dc1,_0x1ac1ba]=await Promise[_0x4aef1a(0x2d4)]([_0x52d8a6['hgetall'](_0xf53978),_0x52d8a6[_0x4aef1a(0x2f4)](_0x74dff8,0x0,-0x1)]);return{..._0x3be34d,'reusePoolValues':_0x1ac1ba[_0x4aef1a(0x30d)](_0x937ca1=>parseInt(_0x937ca1,0xa)),'meta':_0x518dc1&&_0x24ed24['PBdRQ'](Object[_0x4aef1a(0x2bb)](_0x518dc1)['length'],0x0)?_0x518dc1:null};}return _0x3be34d;}async['reset'](_0x37db0c){const _0x27255a=a0_0x7e059b,_0x5101d2={'CpkGJ':_0x27255a(0x209),'BbyDQ':_0x27255a(0x200),'NUmYc':'IDGEN_RESET_NOT_ALLOWED','MwwWf':'number','KquGF':function(_0x299a57,_0x117804){return _0x299a57===_0x117804;},'OdstZ':_0x27255a(0x2cb),'Umrgy':_0x27255a(0x243),'eyvlW':'meta','GaQCA':_0x27255a(0x260),'dfVMp':_0x27255a(0x218),'TQiYM':'issued'};if(!this[_0x27255a(0x2f2)])throw new IdGeneratorError(_0x5101d2[_0x27255a(0x249)],_0x5101d2['BbyDQ']);if(!this[_0x27255a(0x2be)])throw new IdGeneratorError(_0x5101d2['NUmYc'],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this['_validateResource'](_0x37db0c[_0x27255a(0x291)]);const _0x3f9bf6=_0x37db0c[_0x27255a(0x202)]||_0x5101d2[_0x27255a(0x221)],_0x1e76dd=redisClient[_0x27255a(0x2df)]();if(_0x5101d2[_0x27255a(0x2e3)](_0x3f9bf6,_0x27255a(0x269))){const _0x315cc9=(_0x37db0c[_0x27255a(0x26a)]||_0x5101d2['OdstZ'])[_0x27255a(0x2fc)]();if(!ALLOWED_FORMATS['has'](_0x315cc9))throw new IdGeneratorError(_0x27255a(0x2af),_0x27255a(0x20a)+_0x37db0c[_0x27255a(0x26a)]);const {formatKey:_0x272867}=this[_0x27255a(0x237)](_0x315cc9,_0x37db0c['prefix']||''),_0x44500b=this[_0x27255a(0x250)](_0x37db0c['resource'],_0x272867),_0x16b80b=this[_0x27255a(0x298)](_0x37db0c['resource'],_0x272867),_0x1b673e=this['_buildMetaKey'](_0x37db0c['resource'],_0x272867);return await _0x1e76dd['del'](_0x44500b,_0x16b80b,_0x1b673e),logger[_0x27255a(0x2b4)]({'event':_0x27255a(0x218),'resource':_0x37db0c['resource'],'mode':_0x5101d2[_0x27255a(0x221)],'formatKey':_0x272867},'ID\x20Generator\x20reset:\x20'+_0x37db0c['resource']+':'+_0x272867),{'reset':!![],'resource':_0x37db0c[_0x27255a(0x291)],'mode':_0x27255a(0x269),'formatKey':_0x272867,'deletedKeys':[_0x27255a(0x30b),_0x5101d2['Umrgy'],_0x5101d2[_0x27255a(0x261)]]};}if(_0x3f9bf6===_0x5101d2[_0x27255a(0x305)]){const _0x43ebf6=this['_buildIssuedKey'](_0x37db0c['resource']);return await _0x1e76dd[_0x27255a(0x1fa)](_0x43ebf6),logger[_0x27255a(0x2b4)]({'event':_0x5101d2[_0x27255a(0x1ff)],'resource':_0x37db0c[_0x27255a(0x291)],'mode':'random'},'ID\x20Generator\x20reset:\x20random:'+_0x37db0c[_0x27255a(0x291)]),{'reset':!![],'resource':_0x37db0c[_0x27255a(0x291)],'mode':_0x27255a(0x260),'deletedKeys':[_0x5101d2['TQiYM']]};}throw new IdGeneratorError(_0x27255a(0x2e1),'Unknown\x20mode:\x20'+_0x3f9bf6);}}const instance=new IdGenerator();instance[a0_0x7e059b(0x20d)]=IdGeneratorError,module[a0_0x7e059b(0x2c2)]=instance,module['exports'][a0_0x7e059b(0x20d)]=IdGeneratorError;
1
+ 'use strict';const a0_0x261d91=a0_0x4d10;(function(_0x21b145,_0x57755c){const _0x208681=a0_0x4d10,_0x1be8e9=_0x21b145();while(!![]){try{const _0x5dffe6=-parseInt(_0x208681(0x209))/0x1+parseInt(_0x208681(0x1cb))/0x2*(-parseInt(_0x208681(0x20f))/0x3)+parseInt(_0x208681(0x199))/0x4*(parseInt(_0x208681(0x1dc))/0x5)+parseInt(_0x208681(0x1fc))/0x6+parseInt(_0x208681(0x22a))/0x7*(parseInt(_0x208681(0x1c0))/0x8)+-parseInt(_0x208681(0x1d4))/0x9*(-parseInt(_0x208681(0x1ed))/0xa)+-parseInt(_0x208681(0x249))/0xb;if(_0x5dffe6===_0x57755c)break;else _0x1be8e9['push'](_0x1be8e9['shift']());}catch(_0x206abb){_0x1be8e9['push'](_0x1be8e9['shift']());}}}(a0_0x14df,0xf3697));function a0_0x14df(){const _0x4141cb=['sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','BNvOthy','mtj8n3WXmhWYFdf8m3W5FdeXFdb8nhW1FdH8nG','C2v0zxG','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','tgvnqLO','x3zHBgLKyxrLvfrm','nteXnZaYmNLkBgrODa','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','x2j1AwXKrM9YBwf0s2v5','ANHxDM8','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','surhru5Frevgqvvmvf9nqvHFuKvuuLK','zw5ZDxjLvw5PCxvL','zgvMyxvSDfbPBKrPz2L0CW','x2rLzMf1BhrdB2rLugf0DgvYBG','C2vXoG','x2vUywjSzwq','EgjgA04','swrLBxbVDgvUy3KGy2fJAguGseLu','nZy1nJHZr09iAu8','x3n0B3jLswrLBunHy2HL','surhru5Fsurftv9uveW','AhnLDa','x2LUAxrPywXPEMvK','BNvTrgLNAxrZ','mJiXntu0oeTlqxLvvW','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','C3bSAxq','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','x2fSBg93uMvZzxq','C3rVCMvK','D2LUBMvYuMvZDwX0','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','x2j1AwXKuMv1C2vlzxK','C2v0','zgLyte4','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','AM9PBG','CMvZzxj2zu1HEfruta','suqGr2vUzxjHDg9YihjHBMrVBtOG','CMvZzxj2zv9LEhrLBMq','surhru5Fsu5wquXjrf9qqvrurvjo','q3PIrNa','AwrNzw4','x2DLDenVDw50zxjuveW','x2DLBMvYyxrLrNjVBvbHDhrLCM4','Bff1sK4','surhru5Fsu5wquXjrf9srvnpvvjdrq','BM93','Bwv0ytO','zM9YBwf0','ndL2C0HqAKm','q3jAuwm','zM9YBwf0s2v5','ENjHBMDL','z2v0tw9UDgG','x3n0B3jLswrLBunHy2HLtLG','C2nHCMq','x3zHBgLKyxrLuMvZB3vYy2u','DhrStxm','otK5os05otK5','CMvZzxj2zq','y29Kzq','EwrAzha','zw50CMLLCW','wuTkthC','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','z2v0rgf0zq','A1HRuuO','zxHWB3j0CW','x3vUzg9syw5KB21szxnLCNzHDgLVBG','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','seLetgi','BwDAwMu','zw5HyMXLza','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','zgvMyxvSDfnLCMLHBfbHDhrLCM4','surhru5FquXmt1DFuKvtrvq','vgvRC1i','x3bHCNnLtNvTyMvY','ELDKCu4','AwrLBxbVDgvUy3LlzxK','mta2ntu3odHXsuLmsgW','DgvZDa','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','y3jLyxrLzef0','x3jLDhjPzxzLswrLBunHy2HL','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','zgvMyxvSDenVzgvqyxr0zxjU','EenZBw8','wLvgvKS','x3zHBgLKyxrLugf0DgvYBG','CMvZB3vYy2u','x3vWzgf0zu1LDge','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','Chn6CMG','ExL5Ew1T','zw52','C3rYAw5N','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','D2DJwxm','xLXKEW','reT1r0e','x3jLC2vYDMvnyxHuveW','u1DHCNa','ignOyxjZ','BNvTyMvY','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','x3zHBgLKyxrLuMvZzxj2zvruta','surhru5FreLtqujmruq','zNLoswi','zxH0zw5KuMvZzxj2yxrPB24','t3HQqMy','BgvUz3rO','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','AwrLBvruta','lI9YzwrPCY1JBgLLBNq','x3L5ExLF','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','AwrLBuTLEq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','qNPuyLa','ywXS','ChjLzML4','icHNB3q6ia','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','ufbzufG','Dhj1zq','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','x3L5ExLTBwrKxW','zgLNAxrZ','CMvZzxq','vM1Mq04','BfnWrKC','s3L5rfC','Chr0Ba','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x2nVDw50zxjuveXnyxa','ihnLy29UzhmGkgDVDdOG','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','CMfUzg9Tvvvjra','CNn2x2LKEdO','A2v5uhjLzML4','wgLVC2C','x2zVCM1HDe51BwjLCG','ueHnrwS','x2j1AwXKqwn0AxzLs2v5','x2j1AwXKtwv0yuTLEq','AwrNzw5FAwrLBv9OAxq','zxHWAxjLC0f0','z2v0rNvSBfLLyxi','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','sNDLCxG','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','x2TLEvbYzwzPEa','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','x3rLEhq','D2fYBG','y2fUy2vSuMvZzxj2yxrPB24','AxnszxvZzwq','zxzHBa','vfLju2G','icH0B2TLBJ0','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','surhru5Fsu5wquXjrf9ovu1crvi','ywXSB3DszxnLDa','BwfZshy','r2nUy2K','x2j1AwXKsxnZDwvKs2v5','x2rLzMf1BhrnyxHszxrYEq','zgvMyxvSDe1HEfjLDhj5','CgfYC2u','lI9SB2DNzxi','A3vPuwG','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','zgvS','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','D2rcruK','C3jLBq','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','surhru5Fsu5wquXjrf9nt0rf','y291BNrLCKLUDa','suqGr2vUzxjHDg9YihjLC2v0oIa','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','Aw5MBW','CMvZzxj2zv9JB25MAxjT','surhru5Fsu5wquXjrf9gt1jnqvq','x2j1AwXKuMvZzxj2yxrPB25lzxK','Dg9ju09tDhjPBMC','CgfKzgvKicHNB3q6ia','C2vWyxjHDg9Y','Cgf0DgvYBG','surhru5Fq09vtLrfuL9uveXFrefjtfK','Dg9Rzw4','BKPfBKy','odu1mMTtsMjpza','x2rLzMf1BhrtzxjPywXqyxr0zxjU','x2rLzMf1BhrqAw5eAwDPDhm','A2v5CW','tuL2thy','y29UC3vTzq','x2LUAxrdB25MAwC','sw52ywXPzcbMB3jTyxq6ia','uunVAwC','Ag1Nzxq','EMDoD1y','Dgv4Da','x2j1AwXKswrLBuTLEq','AxnZDwvK','z2v0','mdeYmZq1nJC4oq','CMvZzxj2zv9Jyw5JzwW','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','AgDLDgfSBa','y3j5ChrV','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','ExL5Ew1Tzgq','txDVDwe','Bwv0yq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','CNn2swr4s2v5','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','zvvND2K','yxHdyMy','t0rLtK0','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','CMvZzxj2zurLzMf1BhruveW','x3jLC2vYDMvezwzHDwX0vfrm','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','u0vyt3a','B3vyvve','DhrS','DNPUzhC','mtqWmtaZmNjovgL4EG','y29UzMLYBvjLC2vYDMf0Aw9U','z2v0uMvZzxj2yxrPB24','x3zHBgLKyxrLtwf4uMv0CNK','x2j1AwXKu2vXs2v5','Bwf4uMv0CNK','CNn2oG','DMX3wKi','Be9OuwC','ChvZAa','BevtA0C','mLDUten5ra','tvDHwg4','x2LKzw1uveW','AxnjBNrLz2vY','AgfZ','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','C2fKza','sxrzwvy','C3rYAw5NAwz5','ovfXuKn4DG','vLPKv28','EK9dBLq','CMfUzg9T','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','mdeYmZq1nJC4oufcq0rfrG','rMvOqK4','mti4nuPvsMPSDG','surhru5Fsu5wquXjrf9trvbbuKfut1i','tfboq1G','tKnmA0e','zxHLyW','ignOyxjZicHNB3qGBgvUz3rOoIa','z2v0q2XPzw50','zgf0zvbYzwzPEa','BwvZC2fNzq','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','BNz0Cxq','CgLU','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','x2vUC3vYzuLUAxrPywXPEMvK','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','s2zZve8','mtuYnJaXmhDSufPPuW','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','DMfSDwu','AwrNzw5FCMvZzxq','s09jzNa','Bwf0y2G'];a0_0x14df=function(){return _0x4141cb;};return a0_0x14df();}const crypto=require(a0_0x261d91(0x1ac)),redisClient=require(a0_0x261d91(0x147)),{logger}=require(a0_0x261d91(0x181)),idempotencyManager=require(a0_0x261d91(0x1f9)),ALLOWED_FORMATS=new Set([a0_0x261d91(0x1a4),'yyyy',a0_0x261d91(0x258),a0_0x261d91(0x1ae)]),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_0x261d91(0x1a8),CHARSET_UPPER=a0_0x261d91(0x183),CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x261d91(0x1da),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_0x261d91(0x189),LUA_RELEASE_NUMBER='\x0aredis.call(\x27ZADD\x27,\x20KEYS[1],\x20ARGV[1],\x20ARGV[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x201\x0a',LUA_RESERVE_NUMBER=a0_0x261d91(0x170),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=a0_0x261d91(0x256),LUA_EXTEND_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27)\x0alocal\x20prevExpiresAt\x20=\x20h[1]\x0alocal\x20newTtlMs\x20=\x20tonumber(ARGV[2])\x0alocal\x20newExpMs\x20=\x20tonumber(ARGV[3])\x0aredis.call(\x27PEXPIRE\x27,\x20KEYS[1],\x20newTtlMs)\x0aredis.call(\x27HSET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20ARGV[4])\x0aredis.call(\x27ZADD\x27,\x20KEYS[2],\x20newExpMs,\x20ARGV[1])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[2],\x20math.floor(newTtlMs\x20/\x201000)\x20+\x2060)\x0areturn\x20{\x201,\x20prevExpiresAt,\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a';class IdGeneratorError extends Error{constructor(_0x4b8696,_0x3c0aae,_0x223efd=null){super(_0x3c0aae||_0x4b8696),this['name']='IdGeneratorError',this['code']=_0x4b8696,this['details']=_0x223efd;}}function a0_0x4d10(_0x2b6533,_0xb84178){_0x2b6533=_0x2b6533-0x142;const _0x14df61=a0_0x14df();let _0x4d1015=_0x14df61[_0x2b6533];if(a0_0x4d10['YAMoGN']===undefined){var _0x4e3d07=function(_0x5e9a63){const _0xc0f48f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x6dd1b5='',_0x3d8c66='';for(let _0x1d2c0b=0x0,_0x5bca88,_0x2c2c3c,_0x260b31=0x0;_0x2c2c3c=_0x5e9a63['charAt'](_0x260b31++);~_0x2c2c3c&&(_0x5bca88=_0x1d2c0b%0x4?_0x5bca88*0x40+_0x2c2c3c:_0x2c2c3c,_0x1d2c0b++%0x4)?_0x6dd1b5+=String['fromCharCode'](0xff&_0x5bca88>>(-0x2*_0x1d2c0b&0x6)):0x0){_0x2c2c3c=_0xc0f48f['indexOf'](_0x2c2c3c);}for(let _0x3434c7=0x0,_0x5f0149=_0x6dd1b5['length'];_0x3434c7<_0x5f0149;_0x3434c7++){_0x3d8c66+='%'+('00'+_0x6dd1b5['charCodeAt'](_0x3434c7)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3d8c66);};a0_0x4d10['aoaCzT']=_0x4e3d07,a0_0x4d10['cnSXhz']={},a0_0x4d10['YAMoGN']=!![];}const _0x1c5bbc=_0x14df61[0x0],_0x583663=_0x2b6533+_0x1c5bbc,_0x1879db=a0_0x4d10['cnSXhz'][_0x583663];return!_0x1879db?(_0x4d1015=a0_0x4d10['aoaCzT'](_0x4d1015),a0_0x4d10['cnSXhz'][_0x583663]=_0x4d1015):_0x4d1015=_0x1879db,_0x4d1015;}class IdGenerator{constructor(){const _0x445b47=a0_0x261d91,_0x166e05={'yoRDx':'3|1|4|9|8|10|0|7|11|6|2|5'},_0x42626f=_0x166e05['yoRDx']['split']('|');let _0x2575d3=0x0;while(!![]){switch(_0x42626f[_0x2575d3++]){case'0':this[_0x445b47(0x19b)]=null;continue;case'1':this['_enabled']=null;continue;case'2':this['_reserveDefaultTTL']=null;continue;case'3':this[_0x445b47(0x20d)]=![];continue;case'4':this[_0x445b47(0x16f)]=null;continue;case'5':this[_0x445b47(0x25f)]=null;continue;case'6':this['_counterTTLMap']=null;continue;case'7':this['_defaultSerialPattern']=null;continue;case'8':this['_allowReset']=null;continue;case'9':this[_0x445b47(0x1cd)]=null;continue;case'10':this['_defaultMaxRetry']=null;continue;case'11':this[_0x445b47(0x204)]=null;continue;}break;}}[a0_0x261d91(0x19f)](){const _0x4a959d=a0_0x261d91,_0x22e4da={'DjYDl':function(_0x38bfcf,_0xdccfef,_0x4fa92a){return _0x38bfcf(_0xdccfef,_0x4fa92a);},'xbFkN':function(_0x282b52,_0x9c5b2a,_0x2e704b){return _0x282b52(_0x9c5b2a,_0x2e704b);},'wMBri':function(_0x2da485,_0xd7ccdf){return _0x2da485===_0xd7ccdf;},'BuLji':'XXXX-XXXX-XXXX-XXXX'},_0x50a791=_0x4a959d(0x1f6)['split']('|');let _0x1001f6=0x0;while(!![]){switch(_0x50a791[_0x1001f6++]){case'0':this[_0x4a959d(0x15c)]={'yyyymm':parseInt(process['env'][_0x4a959d(0x1ad)],0xa)||0x2a3000,'yyyymmdd':_0x22e4da['DjYDl'](parseInt,process[_0x4a959d(0x259)][_0x4a959d(0x196)],0xa)||0x2a300};continue;case'1':this[_0x4a959d(0x17e)]=_0x22e4da['xbFkN'](parseInt,process['env'][_0x4a959d(0x201)],0xa)||0xa;continue;case'2':this['_allowReset']=_0x22e4da['wMBri'](process['env'][_0x4a959d(0x244)],'true');continue;case'3':this['_defaultPinDigits']=parseInt(process['env']['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'4':this[_0x4a959d(0x1ba)]=parseInt(process[_0x4a959d(0x259)]['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'5':this['_reserveMaxTTL']=_0x22e4da[_0x4a959d(0x207)](parseInt,process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'6':logger['info']({'event':'idgen_config_init','enabled':this[_0x4a959d(0x206)],'idemTTL':this[_0x4a959d(0x1cd)],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x4a959d(0x17e)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);continue;case'7':this['_enabled']=process[_0x4a959d(0x259)]['IDGEN_ENABLED']===_0x4a959d(0x152);continue;case'8':this['_initialized']=!![];continue;case'9':this['_defaultSerialPattern']=process['env'][_0x4a959d(0x15e)]||_0x22e4da['BuLji'];continue;case'10':this[_0x4a959d(0x1cd)]=_0x22e4da[_0x4a959d(0x207)](parseInt,process['env'][_0x4a959d(0x20b)],0xa)||0x258;continue;case'11':this[_0x4a959d(0x204)]=process['env'][_0x4a959d(0x25b)]||_0x4a959d(0x233);continue;case'12':this['_keyPrefix']='rf:idgen:';continue;}break;}}[a0_0x261d91(0x1e9)](){if(!this['_initialized'])this['_initConfig']();}get[a0_0x261d91(0x241)](){const _0x5b3470=a0_0x261d91;return this['_ensureInitialized'](),this[_0x5b3470(0x206)];}get[a0_0x261d91(0x162)](){const _0x3fbae6=a0_0x261d91;return this[_0x3fbae6(0x1e9)](),this[_0x3fbae6(0x16f)];}get['idemTTL'](){const _0x40f993=a0_0x261d91;return this['_ensureInitialized'](),this[_0x40f993(0x1cd)];}get[a0_0x261d91(0x17a)](){const _0x47dc24=a0_0x261d91;return this[_0x47dc24(0x1e9)](),this[_0x47dc24(0x214)];}get[a0_0x261d91(0x17f)](){const _0x1f4bdb=a0_0x261d91;return this[_0x1f4bdb(0x1e9)](),this[_0x1f4bdb(0x17e)];}get['defaultPinDigits'](){const _0x4bdef9=a0_0x261d91;return this[_0x4bdef9(0x1e9)](),this[_0x4bdef9(0x19b)];}get['defaultSerialPattern'](){const _0xdd3d54=a0_0x261d91;return this['_ensureInitialized'](),this[_0xdd3d54(0x19a)];}get[a0_0x261d91(0x24f)](){const _0x3e5dbc=a0_0x261d91;return this['_ensureInitialized'](),this[_0x3e5dbc(0x204)];}get[a0_0x261d91(0x1b9)](){const _0x3e2b39=a0_0x261d91;return this[_0x3e2b39(0x1e9)](),this[_0x3e2b39(0x1ba)];}get['reserveMaxTTL'](){return this['_ensureInitialized'](),this['_reserveMaxTTL'];}['isEnabled'](){return this['enabled'];}['_validateResource'](_0x5a40ec){const _0x362e30=a0_0x261d91,_0x57e97b={'iRyXt':function(_0x8a0f46,_0x1bf828){return _0x8a0f46!==_0x1bf828;},'RmDKw':'string'};if(_0x57e97b['iRyXt'](typeof _0x5a40ec,_0x57e97b['RmDKw'])||!RESOURCE_REGEX[_0x362e30(0x24a)](_0x5a40ec))throw new IdGeneratorError(_0x362e30(0x226),_0x362e30(0x144)+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x5a40ec)+')');}[a0_0x261d91(0x1aa)](_0x220817){const _0x553a96=a0_0x261d91,_0x7de7ac={'CgbVb':function(_0x11c16a,_0x3bd244){return _0x11c16a===_0x3bd244;},'YcEvF':'string','yEbxf':_0x553a96(0x190),'Jweqx':function(_0x2a57b6,_0x15841a){return _0x2a57b6!==_0x15841a;},'NQTHJ':_0x553a96(0x1dd),'SEXOp':function(_0x14b78a,_0x3a7abc){return _0x14b78a!=_0x3a7abc;},'jxWvo':'boolean'},{resource:_0x3a7a23,format:_0x2d5223,prefix:_0xcdda46,separator:_0x22d9f5,numDigits:_0x57d4f8,reuseDelete:_0x155e9a}=_0x220817;this[_0x553a96(0x231)](_0x3a7a23);const _0x3ff3ac=_0x7de7ac['CgbVb'](typeof _0x2d5223,_0x7de7ac['YcEvF'])?_0x2d5223['toLowerCase']():'';if(!ALLOWED_FORMATS[_0x553a96(0x1cf)](_0x3ff3ac))throw new IdGeneratorError(_0x7de7ac['yEbxf'],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x553a96(0x21c)](',\x20')+'\x20(got:\x20'+_0x2d5223+')');if(!Number[_0x553a96(0x1ce)](_0x57d4f8)||_0x57d4f8<MIN_NUM_DIGITS||_0x57d4f8>MAX_NUM_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x553a96(0x1d0)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x57d4f8+')');const _0x595411=_0xcdda46==null?'':_0xcdda46;if(_0x7de7ac[_0x553a96(0x16c)](typeof _0x595411,'string')||!PREFIX_REGEX['test'](_0x595411))throw new IdGeneratorError('IDGEN_INVALID_PREFIX','Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0x553a96(0x14f)+JSON[_0x553a96(0x1d3)](_0xcdda46)+')');const _0x54d06c=_0x22d9f5==null?'':_0x22d9f5;if(typeof _0x54d06c!==_0x7de7ac['YcEvF']||_0x54d06c[_0x553a96(0x142)]>0x3||SEPARATOR_FORBIDDEN[_0x553a96(0x24a)](_0x54d06c))throw new IdGeneratorError(_0x7de7ac['NQTHJ'],_0x553a96(0x149)+JSON['stringify'](_0x22d9f5)+')');if(_0x7de7ac[_0x553a96(0x1bc)](_0x155e9a,null)&&_0x7de7ac[_0x553a96(0x16c)](typeof _0x155e9a,_0x7de7ac[_0x553a96(0x1ff)]))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE',_0x553a96(0x1f3)+typeof _0x155e9a+')');return{'resource':_0x3a7a23,'format':_0x3ff3ac,'prefix':_0x595411,'separator':_0x54d06c,'numDigits':_0x57d4f8,'reuseDelete':_0x155e9a===!![]};}[a0_0x261d91(0x252)](_0x5bca0c){const _0x46a190=a0_0x261d91,_0x458b7f={'mgZZe':_0x46a190(0x25a),'HIDLb':function(_0x2718c9,_0x32a96d){return _0x2718c9===_0x32a96d;},'Mwoua':function(_0x409c26,_0x54192a){return _0x409c26>_0x54192a;},'Xiopc':'IDGEN_INVALID_PATTERN'};if(typeof _0x5bca0c!==_0x458b7f[_0x46a190(0x240)]||_0x458b7f[_0x46a190(0x23f)](_0x5bca0c['length'],0x0)||_0x458b7f[_0x46a190(0x1af)](_0x5bca0c['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x46a190(0x220),'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+_0x46a190(0x1e1)+(_0x5bca0c&&_0x5bca0c[_0x46a190(0x142)])+')');let _0x25035c=![];for(const _0x2effc4 of _0x5bca0c){if(PLACEHOLDER_MAP[_0x2effc4]){_0x25035c=!![];break;}}if(!_0x25035c)throw new IdGeneratorError(_0x458b7f['Xiopc'],'Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}['_validateTTL'](_0x48fcd0){const _0xcdd2fe=a0_0x261d91,_0x264ef1={'zmWLA':function(_0x4f1147,_0x18f5c1){return _0x4f1147==_0x18f5c1;}};if(_0x264ef1['zmWLA'](_0x48fcd0,null))return undefined;if(!Number[_0xcdd2fe(0x1ce)](_0x48fcd0)||_0x48fcd0<0x1||_0x48fcd0>MAX_TTL)throw new IdGeneratorError('IDGEN_INVALID_TTL',_0xcdd2fe(0x1f8)+MAX_TTL+_0xcdd2fe(0x15d)+_0x48fcd0+')');return _0x48fcd0;}[a0_0x261d91(0x1c3)](_0x20c6c6){const _0x48e10a=a0_0x261d91,_0x4c06c3={'lSpFG':function(_0x5228d6,_0x5f5622){return _0x5228d6==_0x5f5622;},'ODeNM':function(_0x62a61e,_0x19ac75){return _0x62a61e>_0x19ac75;}};if(_0x4c06c3[_0x48e10a(0x158)](_0x20c6c6,null))return this[_0x48e10a(0x17f)];if(!Number[_0x48e10a(0x1ce)](_0x20c6c6)||_0x20c6c6<0x1||_0x4c06c3[_0x48e10a(0x1b7)](_0x20c6c6,MAX_RETRY_LIMIT))throw new IdGeneratorError(_0x48e10a(0x1ea),_0x48e10a(0x178)+MAX_RETRY_LIMIT+_0x48e10a(0x14f)+_0x20c6c6+')');return _0x20c6c6;}['_validateIdempotencyKey'](_0x459035){const _0x367e1d=a0_0x261d91,_0x398111={'Kceyl':function(_0x39c0b5,_0x27e1c3){return _0x39c0b5==_0x27e1c3;},'QdHXM':function(_0x319376,_0x1321f4){return _0x319376!==_0x1321f4;},'VZdWo':function(_0x565e3f,_0x552d1a){return _0x565e3f===_0x552d1a;}};if(_0x398111['Kceyl'](_0x459035,null))return undefined;if(_0x398111['QdHXM'](typeof _0x459035,'string')||_0x398111[_0x367e1d(0x1d5)](_0x459035[_0x367e1d(0x142)],0x0)||_0x459035['length']>MAX_IDEMPOTENCY_KEY_LENGTH)throw new IdGeneratorError('IDGEN_INVALID_RESOURCE',_0x367e1d(0x217)+MAX_IDEMPOTENCY_KEY_LENGTH+_0x367e1d(0x261));return _0x459035;}[a0_0x261d91(0x264)](_0x53bc59){const _0x59ba85=a0_0x261d91,_0x5bc14e={'nlkUa':function(_0x3966e5,_0x192a7b){return _0x3966e5<_0x192a7b;},'nuHMZ':function(_0x25c870,_0x1ec9d8){return _0x25c870>_0x1ec9d8;},'MHRBk':_0x59ba85(0x1f4)};if(_0x53bc59==null)return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x53bc59)||_0x5bc14e['nlkUa'](_0x53bc59,MIN_RESERVE_TTL)||_0x5bc14e['nuHMZ'](_0x53bc59,this[_0x59ba85(0x21d)]))throw new IdGeneratorError(_0x5bc14e['MHRBk'],_0x59ba85(0x185)+MIN_RESERVE_TTL+'-'+this[_0x59ba85(0x21d)]+_0x59ba85(0x15d)+_0x53bc59+')');return _0x53bc59;}['_validateReservationToken'](_0x4505b5){const _0x2233e8=a0_0x261d91,_0x4b6ca1={'lTfME':function(_0x3919dd,_0x1cea6e){return _0x3919dd!==_0x1cea6e;},'eDmFt':_0x2233e8(0x25a),'rotuD':'IDGEN_INVALID_TOKEN'};if(_0x4b6ca1['lTfME'](typeof _0x4505b5,_0x4b6ca1['eDmFt'])||!RESERVATION_TOKEN_REGEX[_0x2233e8(0x24a)](_0x4505b5))throw new IdGeneratorError(_0x4b6ca1['rotuD'],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON['stringify'](_0x4505b5)+')');return _0x4505b5;}['_pad2'](_0x356c8d){const _0x3851a4=a0_0x261d91,_0x48e556={'ydZdp':function(_0xfcd772,_0xc70c63){return _0xfcd772(_0xc70c63);}};return _0x48e556[_0x3851a4(0x236)](String,_0x356c8d)['padStart'](0x2,'0');}[a0_0x261d91(0x1fe)](_0x11a898,_0x274873,_0x2c1ae8=new Date()){const _0x37317c=a0_0x261d91,_0x2b0716={'Gcnci':function(_0x1a963b,_0x40783f){return _0x1a963b+_0x40783f;},'FehBN':function(_0x3cd035,_0x195f3c){return _0x3cd035||_0x195f3c;}},_0x35fc8d=_0x2c1ae8[_0x37317c(0x16a)](),_0x130bc9=this['_pad2'](_0x2b0716[_0x37317c(0x17c)](_0x2c1ae8[_0x37317c(0x22e)](),0x1)),_0x52a11b=this['_pad2'](_0x2c1ae8[_0x37317c(0x23a)]()),_0x404b86=_0x2b0716[_0x37317c(0x1db)](_0x274873,'_');let _0x446010,_0x4a4abc='';switch(_0x11a898){case'text':_0x446010=_0x404b86+'_text';break;case'yyyy':_0x4a4abc=''+_0x35fc8d,_0x446010=_0x404b86+_0x37317c(0x148)+_0x4a4abc;break;case'yyyymm':_0x4a4abc=''+_0x35fc8d+_0x130bc9,_0x446010=_0x404b86+'_yyyymm_'+_0x4a4abc;break;case _0x37317c(0x1ae):_0x4a4abc=''+_0x35fc8d+_0x130bc9+_0x52a11b,_0x446010=_0x404b86+_0x37317c(0x154)+_0x4a4abc;break;default:throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Unknown\x20format:\x20'+_0x11a898);}return{'formatKey':_0x446010,'datePrefix':_0x4a4abc};}['_buildSeqKey'](_0x4c631b,_0x222b9d){const _0x20a494=a0_0x261d91;return this[_0x20a494(0x162)]+_0x20a494(0x205)+_0x4c631b+':'+_0x222b9d;}[a0_0x261d91(0x218)](_0x424462,_0x8b9a21){return this['keyPrefix']+'reuse:'+_0x424462+':'+_0x8b9a21;}['_buildMetaKey'](_0x53bba8,_0x482d72){const _0x12b6c3=a0_0x261d91;return this['keyPrefix']+_0x12b6c3(0x228)+_0x53bba8+':'+_0x482d72;}[a0_0x261d91(0x17d)](_0x536ce8){const _0x5cbfc8=a0_0x261d91;return this[_0x5cbfc8(0x162)]+'issued:'+_0x536ce8;}[a0_0x261d91(0x166)](_0x207012,_0x1f2558){const _0x3b9b3d=a0_0x261d91;return this[_0x3b9b3d(0x162)]+'active:'+_0x207012+':'+_0x1f2558;}['_buildReservationKey'](_0x3b7394){const _0x31c4fa=a0_0x261d91;return this['keyPrefix']+_0x31c4fa(0x1c6)+_0x3b7394;}['_buildReservationIndexKey'](_0x541ec4,_0x4f23ce){const _0xb6743d=a0_0x261d91;return this[_0xb6743d(0x162)]+_0xb6743d(0x161)+_0x541ec4+':'+_0x4f23ce;}['_buildReservationKeyPrefix'](){const _0x250e88=a0_0x261d91;return this[_0x250e88(0x162)]+_0x250e88(0x1c6);}['_buildIdemKey'](_0xae5cb0,_0x34eef2,_0x22b923,_0x28d1c2){const _0x447a6c=a0_0x261d91;if(_0x22b923)return idempotencyManager[_0x447a6c(0x14b)](_0x447a6c(0x222),_0xae5cb0,_0x34eef2+':'+_0x22b923+':'+_0x28d1c2);return idempotencyManager[_0x447a6c(0x14b)]('idgen',_0xae5cb0,_0x34eef2+':'+_0x28d1c2);}['_getCounterTTL'](_0x49fe62){const _0x4a8ec4=a0_0x261d91;return this[_0x4a8ec4(0x15c)][_0x49fe62]||0x0;}['_formatNumber']({format:_0x4f42be,prefix:_0x2f0960,datePrefix:_0x37fd55,separator:_0x100220,numDigits:_0x2598c2,counterInt:_0x510f6d}){const _0x4f134e=a0_0x261d91,_0x37359e={'yTcvd':function(_0x2d7276,_0x1d49e4){return _0x2d7276-_0x1d49e4;},'nUOGk':function(_0x28433d,_0x64ec3c){return _0x28433d>_0x64ec3c;},'WsyaS':function(_0x4e61f4,_0x5c7cf8){return _0x4e61f4(_0x5c7cf8);}},_0x447a77=_0x37359e['yTcvd'](Math['pow'](0xa,_0x2598c2),0x1);if(_0x37359e['nUOGk'](_0x510f6d,_0x447a77))throw new IdGeneratorError('IDGEN_COUNTER_OVERFLOW','Counter\x20overflow:\x20'+_0x510f6d+'\x20exceeds\x20'+_0x2598c2+'-digit\x20capacity\x20('+_0x447a77+_0x4f134e(0x153),{'counterInt':_0x510f6d,'numDigits':_0x2598c2,'max':_0x447a77});const _0x5997a7=_0x37359e['WsyaS'](String,_0x510f6d)['padStart'](_0x2598c2,'0');if(_0x4f42be===_0x4f134e(0x1a4))return _0x2f0960?''+_0x2f0960+_0x100220+_0x5997a7:_0x5997a7;return _0x2f0960?''+_0x2f0960+_0x100220+_0x37fd55+_0x100220+_0x5997a7:''+_0x37fd55+_0x100220+_0x5997a7;}['_parseNumber']({format:_0x2c701a,prefix:_0x2c2598,separator:_0x1204c8,numDigits:_0x85bbc,number:_0x555d3a}){const _0x1580e8=a0_0x261d91,_0x36c1bc={'yeFGZ':function(_0x2da13f,_0x834013){return _0x2da13f!==_0x834013;},'RQLmR':function(_0x4a5351,_0x81a7e6){return _0x4a5351===_0x81a7e6;},'VmfCN':'IDGEN_INVALID_NUMBER','TYISh':function(_0x1160d3,_0x3b08b4){return _0x1160d3!==_0x3b08b4;},'bUQVR':function(_0x3ee61b,_0x2af7f8){return _0x3ee61b!==_0x2af7f8;},'pvZTN':'yyyy','axCbf':_0x1580e8(0x1a4)};if(_0x36c1bc['yeFGZ'](typeof _0x555d3a,_0x1580e8(0x25a))||_0x36c1bc['RQLmR'](_0x555d3a['length'],0x0))throw new IdGeneratorError(_0x36c1bc[_0x1580e8(0x157)],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x156d1=_0x1204c8||'',_0x55d787=_0x36c1bc['RQLmR'](_0x156d1,'')?[_0x555d3a]:_0x555d3a[_0x1580e8(0x212)](_0x156d1);let _0x596423='',_0x5d2dcb;if(_0x2c701a===_0x1580e8(0x1a4)){if(_0x2c2598){if(_0x55d787['length']!==0x2||_0x36c1bc[_0x1580e8(0x176)](_0x55d787[0x0],_0x2c2598))throw new IdGeneratorError(_0x1580e8(0x179),'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x156d1+_0x1580e8(0x193)+_0x555d3a+')');_0x5d2dcb=_0x55d787[0x1];}else{if(_0x55d787[_0x1580e8(0x142)]!==0x1)throw new IdGeneratorError(_0x1580e8(0x179),_0x1580e8(0x1e5)+_0x555d3a+')');_0x5d2dcb=_0x55d787[0x0];}}else{const _0x559751=_0x2c2598?0x3:0x2;if(_0x36c1bc['bUQVR'](_0x55d787[_0x1580e8(0x142)],_0x559751))throw new IdGeneratorError(_0x36c1bc[_0x1580e8(0x157)],_0x1580e8(0x1b4)+_0x555d3a+',\x20expected\x20'+_0x559751+'\x20parts)');let _0x169d52=0x0;if(_0x2c2598){if(_0x55d787[_0x169d52]!==_0x2c2598)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20prefix\x20mismatch:\x20expected\x20'+_0x2c2598+',\x20got\x20'+_0x55d787[_0x169d52]);_0x169d52++;}_0x596423=_0x55d787[_0x169d52++];const _0x27b2cc=_0x2c701a===_0x36c1bc['pvZTN']?/^\d{4}$/:_0x2c701a==='yyyymm'?/^\d{6}$/:/^\d{8}$/;if(!_0x27b2cc['test'](_0x596423))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x2c701a+':\x20'+_0x596423);_0x5d2dcb=_0x55d787[_0x169d52];}if(!new RegExp(_0x1580e8(0x25d)+_0x85bbc+'}$')['test'](_0x5d2dcb))throw new IdGeneratorError(_0x36c1bc['VmfCN'],'Number\x20counter\x20part\x20must\x20be\x20exactly\x20'+_0x85bbc+'\x20digits\x20(got:\x20'+_0x5d2dcb+')');const _0x1145e4=parseInt(_0x5d2dcb,0xa),_0x298b2d=_0x2c2598||'_';let _0x7c040f;return _0x2c701a===_0x36c1bc[_0x1580e8(0x1b6)]?_0x7c040f=_0x298b2d+_0x1580e8(0x171):_0x7c040f=_0x298b2d+'_'+_0x2c701a+'_'+_0x596423,{'formatKey':_0x7c040f,'counterInt':_0x1145e4,'datePrefix':_0x596423};}[a0_0x261d91(0x224)](_0x11b0b8){let _0x176cec='';for(const _0x2a19d0 of _0x11b0b8){const _0x10c184=PLACEHOLDER_MAP[_0x2a19d0];if(_0x10c184){const _0x59ef41=crypto['randomInt'](0x0,_0x10c184['length']);_0x176cec+=_0x10c184[_0x59ef41];}else _0x176cec+=_0x2a19d0;}return _0x176cec;}async[a0_0x261d91(0x24d)](_0x2de73e){const _0x2dc0d0=a0_0x261d91,_0x3ea711={'ouXUQ':_0x2dc0d0(0x168),'PimzU':'idgen_idem_retrieve_error'};if(!_0x2de73e)return null;try{const _0x4c6751=redisClient['getClient'](),_0x446733=await _0x4c6751['get'](_0x2de73e);if(_0x446733)return logger['info']({'event':_0x3ea711[_0x2dc0d0(0x1bd)],'key':_0x2de73e},_0x2dc0d0(0x208)),JSON[_0x2dc0d0(0x180)](_0x446733);return null;}catch(_0x539fd0){return logger['warn']({'event':_0x3ea711['PimzU'],'error':_0x539fd0['message']},_0x2dc0d0(0x23e)),null;}}async['_storeIdemCache'](_0x2ec4ec,_0x497c0c){const _0x34494a=a0_0x261d91;if(!_0x2ec4ec)return;try{const _0x2530a7=redisClient[_0x34494a(0x1e2)]();await _0x2530a7[_0x34494a(0x1f7)](_0x2ec4ec,this[_0x34494a(0x146)],JSON['stringify'](_0x497c0c));}catch(_0x45cb01){logger['warn']({'event':_0x34494a(0x200),'error':_0x45cb01[_0x34494a(0x1e4)]},'Idempotency\x20store\x20error');}}async['_storeIdemCacheNX'](_0x13d1a5,_0x5b8bae){const _0x465643=a0_0x261d91,_0x753e56={'GmnSB':_0x465643(0x211)};if(!_0x13d1a5)return{'stored':!![],'winnerResult':null};try{const _0x575c99=redisClient[_0x465643(0x1e2)](),_0x53ff2f=JSON['stringify'](_0x5b8bae),_0x55f3ae=await _0x575c99['set'](_0x13d1a5,_0x53ff2f,'EX',this['idemTTL'],'NX');if(_0x55f3ae==='OK')return{'stored':!![],'winnerResult':null};const _0x3f21a8=await _0x575c99[_0x465643(0x1a7)](_0x13d1a5);if(_0x3f21a8)return{'stored':![],'winnerResult':JSON[_0x465643(0x180)](_0x3f21a8)};return logger[_0x465643(0x172)]({'event':_0x753e56['GmnSB'],'key':_0x13d1a5},_0x465643(0x188)),{'stored':!![],'winnerResult':null};}catch(_0x959b42){return logger['warn']({'event':'idgen_idem_storenx_error','error':_0x959b42[_0x465643(0x1e4)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x261d91(0x23d)](_0x15ce8e,_0x5b2873,_0x4404a9){const _0x47594d=a0_0x261d91,_0x579446={'Hijzb':_0x47594d(0x145)};try{const _0x36058f=redisClient[_0x47594d(0x1e2)]();if(_0x4404a9){const _0x1cfad4=this[_0x47594d(0x166)](_0x15ce8e,_0x5b2873);await _0x36058f['del'](_0x1cfad4);}else{const _0x3caf7a=this[_0x47594d(0x17d)](_0x15ce8e);await _0x36058f[_0x47594d(0x187)](_0x3caf7a,_0x5b2873);}}catch(_0x36754d){logger[_0x47594d(0x172)]({'event':'idgen_random_undo_error','error':_0x36754d[_0x47594d(0x1e4)]},_0x579446['Hijzb']);}}async[a0_0x261d91(0x254)](_0x2be204,_0x3d412b,_0x36fda8,_0x1af94=0x0){const _0x162d80=a0_0x261d91,_0x54ea03={'IDksI':function(_0x22ffd3,_0xa805c5){return _0x22ffd3>_0xa805c5;},'Mzlie':function(_0xe0e931,_0x5395b0){return _0xe0e931>_0x5395b0;},'DKuGA':'idgen_meta_update_error','OCQbP':'Meta\x20update\x20error'};try{const _0x28895a=redisClient[_0x162d80(0x1e2)](),_0x4c0994=this[_0x162d80(0x167)](_0x2be204,_0x3d412b),_0x213e59=[];for(const [_0x1edd60,_0x23a1ec]of Object[_0x162d80(0x237)](_0x36fda8)){_0x213e59[_0x162d80(0x1c9)](_0x1edd60,String(_0x23a1ec));}if(_0x54ea03['IDksI'](_0x213e59[_0x162d80(0x142)],0x0)){await _0x28895a[_0x162d80(0x20c)](_0x4c0994,..._0x213e59);if(_0x54ea03['Mzlie'](_0x1af94,0x0))await _0x28895a['expire'](_0x4c0994,_0x1af94);}}catch(_0x5b2fec){logger['warn']({'event':_0x54ea03[_0x162d80(0x25e)],'error':_0x5b2fec[_0x162d80(0x1e4)]},_0x54ea03['OCQbP']);}}async[a0_0x261d91(0x262)](_0x4d33a8){const _0x111104=a0_0x261d91,_0x544848={'fyNIb':_0x111104(0x263),'kXkQJ':function(_0x2bbee9,_0x15a874){return _0x2bbee9(_0x15a874);},'ghCdk':_0x111104(0x21b),'LSIvd':'idgen_number_generated'};if(!this[_0x111104(0x241)])throw new IdGeneratorError('IDGEN_DISABLED',_0x544848[_0x111104(0x266)]);const _0x26896d=this[_0x111104(0x1aa)](_0x4d33a8),_0x330205=this['_validateIdempotencyKey'](_0x4d33a8[_0x111104(0x248)]),{resource:_0x3676c0,format:_0x3a1dc6,prefix:_0x42d900,separator:_0x1671ac,numDigits:_0x15e63b,reuseDelete:_0x4192df}=_0x26896d,{formatKey:_0x50030c,datePrefix:_0x39300c}=this[_0x111104(0x1fe)](_0x3a1dc6,_0x42d900),_0x507744=this[_0x111104(0x1c4)](_0x3676c0,_0x50030c),_0x27b2fe=this['_buildReuseKey'](_0x3676c0,_0x50030c),_0x4f8e10=this[_0x111104(0x223)](_0x3a1dc6);let _0x248da1=null;if(_0x330205){_0x248da1=this[_0x111104(0x1a5)](_0x111104(0x262),_0x3676c0,_0x50030c,_0x330205);const _0x1dedf5=await this['_retrieveIdemCache'](_0x248da1);if(_0x1dedf5)return _0x1dedf5;}const _0x27c7af=redisClient[_0x111104(0x1e2)](),_0x3947ee=await _0x27c7af[_0x111104(0x175)](LUA_GENERATE_NUMBER,0x2,_0x507744,_0x27b2fe,_0x4192df?'1':'0',_0x544848[_0x111104(0x23b)](String,_0x4f8e10)),_0x100eaa=_0x3947ee[0x0],_0x2a022e=_0x3947ee[0x1]===0x1,_0x1e56b7=this[_0x111104(0x164)]({'format':_0x3a1dc6,'prefix':_0x42d900,'datePrefix':_0x39300c,'separator':_0x1671ac,'numDigits':_0x15e63b,'counterInt':_0x100eaa}),_0x1904b8={'value':_0x1e56b7,'counter':_0x100eaa,'resource':_0x3676c0,'formatKey':_0x50030c,'isReused':_0x2a022e,'generatedAt':new Date()['toISOString']()},_0x2800fd=await this['_storeIdemCacheNX'](_0x248da1,_0x1904b8);if(!_0x2800fd[_0x111104(0x215)]){try{await _0x27c7af[_0x111104(0x175)](LUA_RELEASE_NUMBER,0x1,_0x27b2fe,String(_0x100eaa),String(_0x4f8e10));}catch(_0x1bfe01){logger[_0x111104(0x172)]({'event':_0x111104(0x18d),'error':_0x1bfe01[_0x111104(0x1e4)],'resource':_0x3676c0,'formatKey':_0x50030c,'counterInt':_0x100eaa},_0x111104(0x16b));}return logger[_0x111104(0x18e)]({'event':_0x544848['ghCdk'],'resource':_0x3676c0,'formatKey':_0x50030c,'counter':_0x100eaa},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x2800fd['winnerResult'];}return this[_0x111104(0x254)](_0x3676c0,_0x50030c,{'lastValue':_0x1e56b7,'lastCounter':_0x100eaa,'lastIsReused':_0x2a022e,'lastGeneratedAt':_0x1904b8['generatedAt']},_0x4f8e10),logger['info']({'event':_0x544848['LSIvd'],'resource':_0x3676c0,'formatKey':_0x50030c,'counter':_0x100eaa,'isReused':_0x2a022e},'ID\x20Generator\x20number:\x20'+_0x1e56b7),_0x1904b8;}async['releaseNumber'](_0x19126a){const _0x21341a=a0_0x261d91,_0x27a0db={'HIrCm':function(_0x4d2ee4,_0x588ed3){return _0x4d2ee4!==_0x588ed3;},'Wltcy':function(_0x10188e,_0x3fa0c4){return _0x10188e!==_0x3fa0c4;},'GXwvS':function(_0xbc9872,_0x5cb8d2){return _0xbc9872===_0x5cb8d2;},'wdBEI':_0x21341a(0x179),'spElA':function(_0x5275bd,_0x3af015){return _0x5275bd<_0x3af015;},'UWwOW':'release','wgcYs':function(_0x1ffa78,_0x1d2994){return _0x1ffa78(_0x1d2994);}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');let _0x3552f0,_0x551f0d,_0x2f0f83,_0x3bd45e;const _0xecb2c3=this['_validateIdempotencyKey'](_0x19126a[_0x21341a(0x248)]);if(_0x19126a[_0x21341a(0x18b)]!==undefined&&_0x27a0db['HIrCm'](_0x19126a[_0x21341a(0x18b)],null)){this[_0x21341a(0x231)](_0x19126a['resource']),_0x3552f0=_0x19126a['resource'];if(_0x27a0db['Wltcy'](typeof _0x19126a['formatKey'],_0x21341a(0x25a))||_0x27a0db['GXwvS'](_0x19126a[_0x21341a(0x22c)][_0x21341a(0x142)],0x0))throw new IdGeneratorError(_0x27a0db[_0x21341a(0x186)],_0x21341a(0x213));_0x551f0d=_0x19126a['formatKey'];if(!Number['isInteger'](_0x19126a[_0x21341a(0x18b)])||_0x27a0db['spElA'](_0x19126a[_0x21341a(0x18b)],0x1))throw new IdGeneratorError(_0x27a0db[_0x21341a(0x186)],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x19126a['counterInt']+')');_0x2f0f83=_0x19126a[_0x21341a(0x18b)];const _0x9a33b3=_0x551f0d['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x3bd45e=_0x9a33b3?_0x9a33b3[0x1]:'text';}else{const _0x17949c=this[_0x21341a(0x1aa)](_0x19126a),_0x11fe60=this[_0x21341a(0x246)]({'format':_0x17949c['format'],'prefix':_0x17949c['prefix'],'separator':_0x17949c['separator'],'numDigits':_0x17949c[_0x21341a(0x20e)],'number':_0x19126a['number']});_0x3552f0=_0x17949c['resource'],_0x551f0d=_0x11fe60['formatKey'],_0x2f0f83=_0x11fe60['counterInt'],_0x3bd45e=_0x17949c[_0x21341a(0x229)];}const _0x1d30c2=this[_0x21341a(0x218)](_0x3552f0,_0x551f0d),_0x5ae90f=this['_getCounterTTL'](_0x3bd45e);let _0x10a8f3=null;if(_0xecb2c3){_0x10a8f3=this[_0x21341a(0x1a5)](_0x27a0db['UWwOW'],_0x3552f0,_0x551f0d,_0xecb2c3);const _0x6f5a34=await this['_retrieveIdemCache'](_0x10a8f3);if(_0x6f5a34)return _0x6f5a34;}const _0x4edff8=redisClient[_0x21341a(0x1e2)]();await _0x4edff8[_0x21341a(0x175)](LUA_RELEASE_NUMBER,0x1,_0x1d30c2,String(_0x2f0f83),_0x27a0db[_0x21341a(0x25c)](String,_0x5ae90f));const _0x5c7da5={'released':!![],'resource':_0x3552f0,'formatKey':_0x551f0d,'counter':_0x2f0f83,'releasedAt':new Date()['toISOString']()};return await this[_0x21341a(0x20a)](_0x10a8f3,_0x5c7da5),this[_0x21341a(0x254)](_0x3552f0,_0x551f0d,{'lastReleasedCounter':_0x2f0f83,'lastReleasedAt':_0x5c7da5['releasedAt']},_0x5ae90f),logger[_0x21341a(0x18e)]({'event':'idgen_number_released','resource':_0x3552f0,'formatKey':_0x551f0d,'counter':_0x2f0f83},_0x21341a(0x255)+_0x2f0f83),_0x5c7da5;}async['reserveNumber'](_0x3b631c){const _0x5100f5=a0_0x261d91,_0x391f95={'nJEnF':_0x5100f5(0x263),'fXKfH':_0x5100f5(0x234),'OxjBf':function(_0x3911fc,_0x75bfd6){return _0x3911fc+_0x75bfd6;},'NCLkA':_0x5100f5(0x20e),'LeMBZ':_0x5100f5(0x1e3),'lESkG':'createdAt','xCsmo':_0x5100f5(0x14a),'yyoua':function(_0xe47fc1,_0x1b3aa5){return _0xe47fc1(_0x1b3aa5);},'lQuJN':function(_0x273ae0,_0x1dbf29){return _0x273ae0(_0x1dbf29);},'TeksR':_0x5100f5(0x242),'ZUFVK':_0x5100f5(0x24e),'zgNwV':_0x5100f5(0x1b2),'eUgwi':_0x5100f5(0x15b),'CrZQc':_0x5100f5(0x1b8)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x391f95[_0x5100f5(0x198)]);const _0x80f7cd=this['_validateNumberParams'](_0x3b631c),_0x46ee54=this[_0x5100f5(0x264)](_0x3b631c[_0x5100f5(0x1be)]),_0x138609=this['_validateIdempotencyKey'](_0x3b631c['idempotencyKey']),{resource:_0x1eb302,format:_0x446715,prefix:_0x3b2e25,separator:_0x1f99fc,numDigits:_0xa55c88,reuseDelete:_0x1f38c2}=_0x80f7cd,{formatKey:_0x5f3713,datePrefix:_0x260ee3}=this[_0x5100f5(0x1fe)](_0x446715,_0x3b2e25),_0x56fc9a=this[_0x5100f5(0x1c4)](_0x1eb302,_0x5f3713),_0x3a65b0=this['_buildReuseKey'](_0x1eb302,_0x5f3713),_0x1a1e32=this[_0x5100f5(0x239)](_0x1eb302,_0x5f3713),_0x4b98e2=this[_0x5100f5(0x223)](_0x446715);let _0x4c9b06=null;if(_0x138609){_0x4c9b06=this['_buildIdemKey'](_0x391f95['fXKfH'],_0x1eb302,_0x5f3713,_0x138609);const _0x16666c=await this['_retrieveIdemCache'](_0x4c9b06);if(_0x16666c)return _0x16666c;}const _0x1db563=crypto[_0x5100f5(0x160)](),_0x39e34a=this[_0x5100f5(0x191)](_0x1db563),_0x2c8dee=this[_0x5100f5(0x143)](),_0xf6ef8c=Date[_0x5100f5(0x227)](),_0x4f8800=_0x391f95[_0x5100f5(0x268)](_0xf6ef8c,_0x46ee54*0x3e8),_0xd497d2=_0x46ee54*0x3e8,_0x100412=new Date(_0xf6ef8c)[_0x5100f5(0x192)](),_0xb2cab5=new Date(_0x4f8800)[_0x5100f5(0x192)](),_0x1e6528=['resource',_0x1eb302,'formatKey',_0x5f3713,'format',_0x446715,_0x5100f5(0x14e),_0x3b2e25,'separator',_0x1f99fc,_0x391f95[_0x5100f5(0x1df)],String(_0xa55c88),_0x391f95[_0x5100f5(0x1fa)],_0x260ee3||'',_0x391f95[_0x5100f5(0x1ca)],_0x100412,_0x5100f5(0x169),_0xb2cab5,_0x5100f5(0x232),String(_0xd497d2)];_0x138609&&_0x1e6528[_0x5100f5(0x1c9)](_0x391f95[_0x5100f5(0x250)],_0x138609);const _0x2bdd9c=redisClient['getClient'](),_0x27823b=await _0x2bdd9c[_0x5100f5(0x175)](LUA_RESERVE_NUMBER,0x3,_0x56fc9a,_0x3a65b0,_0x1a1e32,_0x1f38c2?'1':'0',_0x391f95['yyoua'](String,_0x4b98e2),_0x1db563,_0x39e34a,String(_0xd497d2),_0x391f95['yyoua'](String,_0x4f8800),_0x391f95[_0x5100f5(0x225)](String,_0xf6ef8c),_0x2c8dee,..._0x1e6528),_0x1cdecd=_0x27823b[0x0],_0x1f06d5=_0x27823b[0x1]===0x1,_0x31824f=_0x27823b[0x2]||0x0;let _0x206ac3;try{_0x206ac3=this[_0x5100f5(0x164)]({'format':_0x446715,'prefix':_0x3b2e25,'datePrefix':_0x260ee3,'separator':_0x1f99fc,'numDigits':_0xa55c88,'counterInt':_0x1cdecd});}catch(_0x9017d6){try{await _0x2bdd9c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x39e34a,_0x1a1e32,_0x3a65b0,_0x1db563,_0x391f95['lQuJN'](String,_0x4b98e2));}catch(_0x34a6c0){logger['warn']({'event':_0x391f95[_0x5100f5(0x245)],'error':_0x34a6c0['message'],'resource':_0x1eb302,'formatKey':_0x5f3713,'counterInt':_0x1cdecd,'token':_0x1db563},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x9017d6;}try{await _0x2bdd9c[_0x5100f5(0x20c)](_0x39e34a,_0x5100f5(0x1ef),_0x206ac3);}catch(_0x250900){logger['warn']({'event':_0x5100f5(0x150),'error':_0x250900[_0x5100f5(0x1e4)],'resource':_0x1eb302,'formatKey':_0x5f3713,'counterInt':_0x1cdecd,'token':_0x1db563},_0x391f95[_0x5100f5(0x251)]);}const _0x2a95ce={'token':_0x1db563,'value':_0x206ac3,'counter':_0x1cdecd,'resource':_0x1eb302,'formatKey':_0x5f3713,'isReused':_0x1f06d5,'createdAt':_0x100412,'expiresAt':_0xb2cab5,'reapedCount':_0x31824f},_0x51f230=await this['_storeIdemCacheNX'](_0x4c9b06,_0x2a95ce);if(!_0x51f230['stored']){try{await _0x2bdd9c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x39e34a,_0x1a1e32,_0x3a65b0,_0x1db563,String(_0x4b98e2));}catch(_0xbdf0e2){logger[_0x5100f5(0x172)]({'event':_0x391f95[_0x5100f5(0x1a3)],'error':_0xbdf0e2[_0x5100f5(0x1e4)],'resource':_0x1eb302,'formatKey':_0x5f3713,'counterInt':_0x1cdecd,'token':_0x1db563},_0x5100f5(0x15f));}return logger[_0x5100f5(0x18e)]({'event':_0x391f95[_0x5100f5(0x1b5)],'resource':_0x1eb302,'formatKey':_0x5f3713,'counter':_0x1cdecd,'token':_0x1db563},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x51f230['winnerResult'];}return this[_0x5100f5(0x254)](_0x1eb302,_0x5f3713,{'lastReservedCounter':_0x1cdecd,'lastReservedAt':_0x100412,'lastReapedCount':_0x31824f},_0x4b98e2),logger['info']({'event':_0x391f95[_0x5100f5(0x22b)],'resource':_0x1eb302,'formatKey':_0x5f3713,'counter':_0x1cdecd,'isReused':_0x1f06d5,'token':_0x1db563,'ttl':_0x46ee54,'reapedCount':_0x31824f},'ID\x20Generator\x20number\x20reserved:\x20'+_0x206ac3+'\x20(token='+_0x1db563+')'),_0x2a95ce;}async[a0_0x261d91(0x1c1)](_0x483b77){const _0x134b30=a0_0x261d91,_0x7866c5={'KyyDW':'idgen','TwEum':_0x134b30(0x18f),'YKJLw':function(_0x15eda3,_0x3762b9){return _0x15eda3!==_0x3762b9;}};if(!this['enabled'])throw new IdGeneratorError(_0x134b30(0x265),'ID\x20Generator\x20is\x20disabled');const _0x46f9b9=this[_0x134b30(0x24b)](_0x483b77&&_0x483b77['token']),_0x23492f=this['_validateIdempotencyKey'](_0x483b77&&_0x483b77['idempotencyKey']);let _0xf1686e=null;if(_0x23492f){_0xf1686e=idempotencyManager[_0x134b30(0x14b)](_0x7866c5[_0x134b30(0x159)],_0x7866c5['TwEum'],_0x46f9b9+':'+_0x23492f);const _0x9aab0d=await this['_retrieveIdemCache'](_0xf1686e);if(_0x9aab0d)return _0x9aab0d;}const _0x52c150=await this[_0x134b30(0x1d9)](_0x46f9b9),_0xd1d296=redisClient['getClient'](),_0x305ee7=await _0xd1d296[_0x134b30(0x175)](LUA_CONFIRM_RESERVATION,0x2,_0x52c150['rsvKey'],_0x52c150['rsvIdxKey'],_0x46f9b9);if(!_0x305ee7||_0x7866c5[_0x134b30(0x238)](_0x305ee7[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x134b30(0x1b1)+_0x46f9b9,{'token':_0x46f9b9});const _0x39bd74=parseInt(_0x305ee7[0x1],0xa),_0x3a9dae=_0x305ee7[0x2],_0x1c83e2=_0x305ee7[0x3],_0x3dd97e=new Date()['toISOString'](),_0x3a3c56={'confirmed':!![],'token':_0x46f9b9,'value':_0x3a9dae,'counter':_0x39bd74,'resource':_0x52c150[_0x134b30(0x253)],'formatKey':_0x1c83e2,'confirmedAt':_0x3dd97e};await this[_0x134b30(0x20a)](_0xf1686e,_0x3a3c56);const _0x213da5=_0x1c83e2['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3235e0=_0x213da5?_0x213da5[0x1]:_0x134b30(0x1a4),_0x30da58=this[_0x134b30(0x223)](_0x3235e0);return this[_0x134b30(0x254)](_0x52c150['resource'],_0x1c83e2,{'lastConfirmedCounter':_0x39bd74,'lastConfirmedAt':_0x3dd97e},_0x30da58),logger[_0x134b30(0x18e)]({'event':_0x134b30(0x16e),'resource':_0x52c150['resource'],'formatKey':_0x1c83e2,'counter':_0x39bd74,'token':_0x46f9b9},_0x134b30(0x16d)+_0x3a9dae+'\x20(token='+_0x46f9b9+')'),_0x3a3c56;}async[a0_0x261d91(0x173)](_0x41c438){const _0x40d021=a0_0x261d91,_0x83ba61={'MIvLv':_0x40d021(0x1eb),'BzTbP':'idgen','zdbkk':function(_0x2a851a,_0x3ca602){return _0x2a851a(_0x3ca602);},'ZrSnH':function(_0x2f5088,_0x1a8cc0,_0x20178f){return _0x2f5088(_0x1a8cc0,_0x20178f);},'VcDwi':'idgen_reservation_cancelled'};if(!this[_0x40d021(0x241)])throw new IdGeneratorError(_0x40d021(0x265),_0x83ba61[_0x40d021(0x19d)]);const _0x3c46d9=this['_validateReservationToken'](_0x41c438&&_0x41c438[_0x40d021(0x197)]),_0x57b457=this['_validateIdempotencyKey'](_0x41c438&&_0x41c438['idempotencyKey']);let _0x5b7bf3=null;if(_0x57b457){_0x5b7bf3=idempotencyManager['buildDeterministicKey'](_0x83ba61[_0x40d021(0x14c)],_0x40d021(0x1a9),_0x3c46d9+':'+_0x57b457);const _0x31a570=await this[_0x40d021(0x24d)](_0x5b7bf3);if(_0x31a570)return _0x31a570;}const _0x54e681=await this['_getReservationContext'](_0x3c46d9),_0x183b4e=this[_0x40d021(0x218)](_0x54e681['resource'],_0x54e681[_0x40d021(0x22c)]),_0x3854fb=_0x54e681['formatKey']['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x8d8f2f=_0x3854fb?_0x3854fb[0x1]:_0x40d021(0x1a4),_0x6f521=this[_0x40d021(0x223)](_0x8d8f2f),_0x1d2501=redisClient['getClient'](),_0x40679f=await _0x1d2501['eval'](LUA_CANCEL_RESERVATION,0x3,_0x54e681['rsvKey'],_0x54e681[_0x40d021(0x1b3)],_0x183b4e,_0x3c46d9,_0x83ba61['zdbkk'](String,_0x6f521));if(!_0x40679f||_0x40679f[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x40d021(0x1b1)+_0x3c46d9,{'token':_0x3c46d9});const _0xb6ca44=_0x83ba61['ZrSnH'](parseInt,_0x40679f[0x1],0xa),_0x154274=_0x40679f[0x2],_0x108808=_0x40679f[0x3],_0x6ead87=new Date()[_0x40d021(0x192)](),_0x5bd005={'cancelled':!![],'token':_0x3c46d9,'value':_0x154274,'counter':_0xb6ca44,'resource':_0x54e681[_0x40d021(0x253)],'formatKey':_0x108808,'releasedToReuse':!![],'cancelledAt':_0x6ead87};return await this[_0x40d021(0x20a)](_0x5b7bf3,_0x5bd005),this[_0x40d021(0x254)](_0x54e681['resource'],_0x108808,{'lastCancelledCounter':_0xb6ca44,'lastCancelledAt':_0x6ead87},_0x6f521),logger['info']({'event':_0x83ba61['VcDwi'],'resource':_0x54e681['resource'],'formatKey':_0x108808,'counter':_0xb6ca44,'token':_0x3c46d9},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x154274+_0x40d021(0x177)+_0x3c46d9+')'),_0x5bd005;}async[a0_0x261d91(0x267)](_0x229dba){const _0x5e1c60=a0_0x261d91,_0x1fd369={'zOCnT':_0x5e1c60(0x265),'PQBQk':function(_0x248ebd,_0x34fc5b){return _0x248ebd*_0x34fc5b;},'KfsTO':function(_0x3045e3,_0x3fc3eb){return _0x3045e3*_0x3fc3eb;},'eHZnW':'idgen_reservation_extended'};if(!this[_0x5e1c60(0x241)])throw new IdGeneratorError(_0x1fd369[_0x5e1c60(0x1d6)],_0x5e1c60(0x1eb));const _0x384f5d=this[_0x5e1c60(0x24b)](_0x229dba&&_0x229dba['token']),_0x51913c=this[_0x5e1c60(0x264)](_0x229dba&&_0x229dba[_0x5e1c60(0x1be)]),_0x3ef7fb=this[_0x5e1c60(0x1fd)](_0x229dba&&_0x229dba[_0x5e1c60(0x248)]);let _0x245702=null;if(_0x3ef7fb){_0x245702=idempotencyManager[_0x5e1c60(0x14b)](_0x5e1c60(0x222),_0x5e1c60(0x21f),_0x384f5d+':'+_0x3ef7fb);const _0x21e161=await this['_retrieveIdemCache'](_0x245702);if(_0x21e161)return _0x21e161;}const _0xc541f=await this[_0x5e1c60(0x1d9)](_0x384f5d),_0x139777=Date[_0x5e1c60(0x227)](),_0x38e979=_0x139777+_0x1fd369['PQBQk'](_0x51913c,0x3e8),_0x27733e=_0x1fd369[_0x5e1c60(0x1ec)](_0x51913c,0x3e8),_0x57c576=new Date(_0x38e979)['toISOString'](),_0x2a5684=redisClient['getClient'](),_0x554fd8=await _0x2a5684[_0x5e1c60(0x175)](LUA_EXTEND_RESERVATION,0x2,_0xc541f['rsvKey'],_0xc541f[_0x5e1c60(0x1b3)],_0x384f5d,String(_0x27733e),String(_0x38e979),_0x57c576);if(!_0x554fd8||_0x554fd8[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x384f5d,{'token':_0x384f5d});const _0x221ab4=_0x554fd8[0x1],_0x4d6d44=parseInt(_0x554fd8[0x2],0xa),_0xcb75ec=_0x554fd8[0x3],_0x37e601=_0x554fd8[0x4],_0x36ea85=new Date(_0x139777)['toISOString'](),_0x2d86b2={'extended':!![],'token':_0x384f5d,'previousExpiresAt':_0x221ab4,'expiresAt':_0x57c576,'ttlMs':_0x27733e,'resource':_0xc541f[_0x5e1c60(0x253)],'formatKey':_0x37e601,'counter':_0x4d6d44,'value':_0xcb75ec,'extendedAt':_0x36ea85};await this['_storeIdemCache'](_0x245702,_0x2d86b2);const _0x5b3621=_0x37e601[_0x5e1c60(0x1f2)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e449f=_0x5b3621?_0x5b3621[0x1]:'text',_0x4d7441=this[_0x5e1c60(0x223)](_0x3e449f);return this[_0x5e1c60(0x254)](_0xc541f['resource'],_0x37e601,{'lastExtendedCounter':_0x4d6d44,'lastExtendedAt':_0x36ea85},_0x4d7441),logger[_0x5e1c60(0x18e)]({'event':_0x1fd369['eHZnW'],'resource':_0xc541f[_0x5e1c60(0x253)],'formatKey':_0x37e601,'counter':_0x4d6d44,'token':_0x384f5d,'ttl':_0x51913c},_0x5e1c60(0x1d8)+_0xcb75ec+'\x20(token='+_0x384f5d+',\x20+'+_0x51913c+'s)'),_0x2d86b2;}async[a0_0x261d91(0x1c2)](_0x271621){const _0x43ee86=a0_0x261d91,_0x39234b={'diXLN':_0x43ee86(0x210),'EunGF':function(_0xda8cf7,_0x31dd51,_0x331214){return _0xda8cf7(_0x31dd51,_0x331214);},'onaGP':function(_0x50b808,_0x148d4b){return _0x50b808===_0x148d4b;}};if(!this['enabled'])throw new IdGeneratorError(_0x43ee86(0x265),_0x43ee86(0x1eb));const _0x26dfd5=this['_validateReservationToken'](_0x271621&&_0x271621['token']),_0x10b447=this['_buildReservationKey'](_0x26dfd5),_0x5a7823=redisClient['getClient'](),_0x4fbe25=_0x5a7823['pipeline']();_0x4fbe25['hgetall'](_0x10b447),_0x4fbe25[_0x43ee86(0x15a)](_0x10b447);const _0x18d482=await _0x4fbe25[_0x43ee86(0x1e0)](),_0x5cebf7=_0x18d482&&_0x18d482[0x0]&&_0x18d482[0x0][0x1],_0x9a2a0f=_0x18d482&&_0x18d482[0x1]&&_0x18d482[0x1][0x1];if(!_0x5cebf7||Object[_0x43ee86(0x19c)](_0x5cebf7)[_0x43ee86(0x142)]===0x0)throw new IdGeneratorError(_0x39234b[_0x43ee86(0x21a)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x26dfd5,{'token':_0x26dfd5});return{'token':_0x26dfd5,'resource':_0x5cebf7['resource']||null,'formatKey':_0x5cebf7['formatKey']||null,'format':_0x5cebf7['format']||null,'prefix':_0x5cebf7[_0x43ee86(0x14e)]||'','separator':_0x5cebf7[_0x43ee86(0x194)]||'','numDigits':_0x5cebf7[_0x43ee86(0x20e)]?_0x39234b['EunGF'](parseInt,_0x5cebf7['numDigits'],0xa):null,'datePrefix':_0x5cebf7['datePrefix']||'','counter':_0x5cebf7['counter']?parseInt(_0x5cebf7['counter'],0xa):null,'value':_0x5cebf7['value']||null,'isReused':_0x5cebf7['isReused']==='1'||_0x5cebf7[_0x43ee86(0x174)]===0x1,'createdAt':_0x5cebf7[_0x43ee86(0x24c)]||null,'expiresAt':_0x5cebf7['expiresAt']||null,'ttlRemainingMs':_0x39234b['onaGP'](typeof _0x9a2a0f,_0x43ee86(0x262))&&_0x9a2a0f>=0x0?_0x9a2a0f:null};}async['_getReservationContext'](_0xc35229){const _0x10bc91=a0_0x261d91,_0x3111bf={'hFbBo':_0x10bc91(0x253),'LPNCX':function(_0xeaf516,_0x3cec18){return _0xeaf516||_0x3cec18;},'vlwZB':_0x10bc91(0x210)},_0x1760ef=this['_buildReservationKey'](_0xc35229),_0x42a146=redisClient['getClient'](),_0x168588=await _0x42a146[_0x10bc91(0x1a2)](_0x1760ef,_0x3111bf['hFbBo'],'formatKey'),_0x32e632=_0x168588&&_0x168588[0x0],_0xed28f5=_0x168588&&_0x168588[0x1];if(_0x3111bf[_0x10bc91(0x1de)](!_0x32e632,!_0xed28f5))throw new IdGeneratorError(_0x3111bf[_0x10bc91(0x1c7)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0xc35229,{'token':_0xc35229});return{'resource':_0x32e632,'formatKey':_0xed28f5,'rsvKey':_0x1760ef,'rsvIdxKey':this[_0x10bc91(0x239)](_0x32e632,_0xed28f5)};}async[a0_0x261d91(0x1d7)](_0x394f39){const _0x149f73=a0_0x261d91,_0x772ebe={'lcddd':'IDGEN_DISABLED','TDtaz':_0x149f73(0x1eb),'IRxDM':function(_0x31caf4,_0x1d33ad){return _0x31caf4===_0x1d33ad;},'kBfJE':_0x149f73(0x1bb),'QRkAh':function(_0x4d8195,_0x5316df){return _0x4d8195&&_0x5316df;},'DCkJV':function(_0x30de80,_0x5dd1fb){return _0x30de80+_0x5dd1fb;},'SWarp':function(_0x1fddea,_0x3dbbad){return _0x1fddea*_0x3dbbad;},'muixJ':'idgen_random_idem_loser','UcEFA':function(_0x2f11d7,_0x486848){return _0x2f11d7||_0x486848;}};if(!this['enabled'])throw new IdGeneratorError(_0x772ebe['lcddd'],_0x772ebe['TDtaz']);this['_validateResource'](_0x394f39['resource']),this['_validatePattern'](_0x394f39['pattern']);const _0x28208e=this[_0x149f73(0x1fb)](_0x394f39[_0x149f73(0x1be)]),_0x333e9c=this['_validateMaxRetry'](_0x394f39[_0x149f73(0x1c5)]),_0x4a1e22=this[_0x149f73(0x1fd)](_0x394f39[_0x149f73(0x248)]),_0x2bf35c=_0x772ebe['IRxDM'](_0x394f39['ensureUnique'],!![]),{resource:_0x156ac8,pattern:_0x52bf56}=_0x394f39;let _0x18ff67=null;if(_0x4a1e22){_0x18ff67=this[_0x149f73(0x1a5)]('random',_0x156ac8,null,_0x4a1e22);const _0x10d6b1=await this[_0x149f73(0x24d)](_0x18ff67);if(_0x10d6b1)return _0x10d6b1;}const _0xe0c827=redisClient[_0x149f73(0x1e2)]();let _0x585589=null,_0x51a634=0x0;if(!_0x2bf35c)_0x585589=this[_0x149f73(0x224)](_0x52bf56),_0x51a634=0x1;else{for(let _0x3c3393=0x0;_0x3c3393<_0x333e9c;_0x3c3393++){_0x51a634++;const _0x971107=this[_0x149f73(0x224)](_0x52bf56);if(_0x28208e){const _0x37e191=this[_0x149f73(0x166)](_0x156ac8,_0x971107),_0xcafeb5=await _0xe0c827[_0x149f73(0x219)](_0x37e191,'1','EX',_0x28208e,'NX');if(_0xcafeb5==='OK'){_0x585589=_0x971107;break;}}else{const _0xe02862=this[_0x149f73(0x17d)](_0x156ac8),_0x5c501d=await _0xe0c827[_0x149f73(0x1d1)](_0xe02862,_0x971107);if(_0x5c501d===0x1){_0x585589=_0x971107;break;}}}if(_0x585589===null)throw new IdGeneratorError(_0x772ebe['kBfJE'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x333e9c+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x156ac8,'pattern':_0x52bf56,'maxRetry':_0x333e9c});}const _0x4fda3a={'value':_0x585589,'resource':_0x156ac8,'pattern':_0x52bf56,'attemptCount':_0x51a634,'generatedAt':new Date()[_0x149f73(0x192)]()};_0x772ebe['QRkAh'](_0x28208e,_0x2bf35c)&&(_0x4fda3a[_0x149f73(0x169)]=new Date(_0x772ebe['DCkJV'](Date[_0x149f73(0x227)](),_0x772ebe[_0x149f73(0x260)](_0x28208e,0x3e8)))['toISOString']());const _0xa488af=await this[_0x149f73(0x22f)](_0x18ff67,_0x4fda3a);if(!_0xa488af['stored'])return _0x2bf35c&&await this[_0x149f73(0x23d)](_0x156ac8,_0x585589,_0x28208e),logger[_0x149f73(0x18e)]({'event':_0x772ebe['muixJ'],'resource':_0x156ac8,'pattern':_0x52bf56,'value':_0x585589},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0xa488af[_0x149f73(0x216)];return logger[_0x149f73(0x18e)]({'event':_0x149f73(0x1e8),'resource':_0x156ac8,'pattern':_0x52bf56,'attemptCount':_0x51a634,'ensureUnique':_0x2bf35c,'ttl':_0x772ebe['UcEFA'](_0x28208e,0x0)},_0x149f73(0x21e)+_0x585589),_0x4fda3a;}async[a0_0x261d91(0x1e7)](_0x2ae9c0){const _0x4672c2=a0_0x261d91,_0x3fe739={'zWdqN':function(_0xcd8e07,_0x1bfe78){return _0xcd8e07<_0x1bfe78;},'nvtqt':function(_0x16ad90,_0x53e67e){return _0x16ad90>_0x53e67e;},'masHv':function(_0xd96fd0,_0x90189a){return _0xd96fd0===_0x90189a;}},_0x120271=_0x2ae9c0[_0x4672c2(0x155)]==null?this[_0x4672c2(0x203)]:_0x2ae9c0['digits'];if(!Number[_0x4672c2(0x1ce)](_0x120271)||_0x3fe739[_0x4672c2(0x247)](_0x120271,MIN_PIN_DIGITS)||_0x3fe739[_0x4672c2(0x1e6)](_0x120271,MAX_PIN_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_DIGITS',_0x4672c2(0x1ee)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x120271+')');const _0x448f7f='9'['repeat'](_0x120271);return this['random']({'resource':_0x2ae9c0['resource'],'pattern':_0x448f7f,'ensureUnique':_0x3fe739[_0x4672c2(0x17b)](_0x2ae9c0[_0x4672c2(0x202)],!![]),'ttl':_0x2ae9c0['ttl'],'maxRetry':_0x2ae9c0['maxRetry'],'idempotencyKey':_0x2ae9c0['idempotencyKey']});}async['serial'](_0x22475d){const _0x2a8e51=a0_0x261d91,_0x2b88f0={'lOhQg':function(_0x358850,_0x10e032){return _0x358850!==_0x10e032;}},_0xcc647c=_0x22475d[_0x2a8e51(0x195)]||this[_0x2a8e51(0x243)];return this[_0x2a8e51(0x1d7)]({'resource':_0x22475d[_0x2a8e51(0x253)],'pattern':_0xcc647c,'ensureUnique':_0x2b88f0[_0x2a8e51(0x1c8)](_0x22475d['ensureUnique'],![]),'ttl':_0x22475d[_0x2a8e51(0x1be)],'maxRetry':_0x22475d[_0x2a8e51(0x1c5)],'idempotencyKey':_0x22475d['idempotencyKey']});}async[a0_0x261d91(0x235)](_0x30ee99){const _0x5d4727=a0_0x261d91,_0x156b3d={'PHMEk':function(_0x2e6cb9,_0x28bda2){return _0x2e6cb9!==_0x28bda2;}},_0x30eb92=_0x30ee99['pattern']||this['defaultCodePattern'];return this['random']({'resource':_0x30ee99['resource'],'pattern':_0x30eb92,'ensureUnique':_0x156b3d[_0x5d4727(0x165)](_0x30ee99[_0x5d4727(0x202)],![]),'ttl':_0x30ee99[_0x5d4727(0x1be)],'maxRetry':_0x30ee99[_0x5d4727(0x1c5)],'idempotencyKey':_0x30ee99['idempotencyKey']});}async[a0_0x261d91(0x19e)](_0x55687a){const _0x4d9778=a0_0x261d91,_0x565dba={'nuhLv':_0x4d9778(0x265),'Xiosg':_0x4d9778(0x25a),'PPYPX':'IDGEN_INVALID_NUMBER','DFNRI':function(_0x37bf45,_0x2cbca3){return _0x37bf45>_0x2cbca3;},'MWaXn':function(_0x1c870e,_0x3a7449){return _0x1c870e+_0x3a7449;},'deelI':'idgen_consumed'};if(!this[_0x4d9778(0x241)])throw new IdGeneratorError(_0x565dba[_0x4d9778(0x1f5)],_0x4d9778(0x1eb));this['_validateResource'](_0x55687a['resource']);if(typeof _0x55687a[_0x4d9778(0x1ef)]!==_0x565dba[_0x4d9778(0x163)]||_0x55687a['value'][_0x4d9778(0x142)]===0x0)throw new IdGeneratorError(_0x565dba[_0x4d9778(0x151)],'value\x20is\x20required');const {resource:_0xd53176,value:_0x3be789}=_0x55687a,_0x5965d2=redisClient['getClient'](),_0x169f2b=this[_0x4d9778(0x166)](_0xd53176,_0x3be789),_0x551767=this['_buildIssuedKey'](_0xd53176),[_0x20469d,_0x2ff252]=await Promise[_0x4d9778(0x14d)]([_0x5965d2[_0x4d9778(0x184)](_0x169f2b),_0x5965d2['srem'](_0x551767,_0x3be789)]),_0xd0fd93=_0x565dba['DFNRI'](_0x565dba[_0x4d9778(0x1cc)](_0x20469d,_0x2ff252),0x0);return logger['info']({'event':_0x565dba['deelI'],'resource':_0xd53176,'value':_0x3be789,'consumed':_0xd0fd93},'ID\x20Generator\x20consumed:\x20'+_0x3be789),{'consumed':_0xd0fd93,'resource':_0xd53176,'value':_0x3be789,'consumedAt':new Date()['toISOString']()};}async['peek'](_0x4d7e2b){const _0x4afc8d=a0_0x261d91,_0x364a07={'mEgFD':_0x4afc8d(0x265),'KOIfp':function(_0x3d4645,_0xd2bae3){return _0x3d4645===_0xd2bae3;},'bxILU':'number','udukO':function(_0x3480d3,_0x2f14b6,_0x3c5359){return _0x3480d3(_0x2f14b6,_0x3c5359);},'CzbFp':'random','VVtEk':function(_0x494c90,_0x2f1dce){return _0x494c90||_0x2f1dce;}};if(!this['enabled'])throw new IdGeneratorError(_0x364a07['mEgFD'],_0x4afc8d(0x1eb));this['_validateResource'](_0x4d7e2b['resource']);const _0x4620e9=_0x4d7e2b['mode']||_0x4afc8d(0x262),_0x281956=redisClient['getClient']();if(_0x364a07['KOIfp'](_0x4620e9,_0x4afc8d(0x262))){const _0x362cc1=(_0x4d7e2b[_0x4afc8d(0x229)]||'text')['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x362cc1))throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x4afc8d(0x1a0)+_0x4d7e2b['format']);const {formatKey:_0x5c0bbd}=this['_buildFormatKey'](_0x362cc1,_0x4d7e2b[_0x4afc8d(0x14e)]||''),_0xcd0d7f=this[_0x4afc8d(0x1c4)](_0x4d7e2b['resource'],_0x5c0bbd),_0x44e76a=this['_buildReuseKey'](_0x4d7e2b['resource'],_0x5c0bbd),[_0xdb9f12,_0x384981]=await Promise['all']([_0x281956[_0x4afc8d(0x1a7)](_0xcd0d7f),_0x281956['zcard'](_0x44e76a)]);return{'resource':_0x4d7e2b['resource'],'mode':_0x364a07['bxILU'],'formatKey':_0x5c0bbd,'currentCounter':_0x364a07['udukO'](parseInt,_0xdb9f12,0xa)||0x0,'reusePoolSize':_0x384981||0x0};}if(_0x364a07[_0x4afc8d(0x1f1)](_0x4620e9,_0x364a07['CzbFp'])){const _0x1f4f9d=this['_buildIssuedKey'](_0x4d7e2b[_0x4afc8d(0x253)]),_0x382bc8=await _0x281956[_0x4afc8d(0x230)](_0x1f4f9d);return{'resource':_0x4d7e2b[_0x4afc8d(0x253)],'mode':_0x364a07[_0x4afc8d(0x221)],'issuedCount':_0x364a07['VVtEk'](_0x382bc8,0x0)};}throw new IdGeneratorError(_0x4afc8d(0x18a),'Unknown\x20mode:\x20'+_0x4620e9);}async['getInfo'](_0x4d70c5){const _0x3a6875=a0_0x261d91,_0x22670d=await this['peek'](_0x4d70c5);if(_0x22670d['mode']==='number'){const _0xee5c31=redisClient[_0x3a6875(0x1e2)](),_0x4a33d7=this[_0x3a6875(0x167)](_0x4d70c5[_0x3a6875(0x253)],_0x22670d[_0x3a6875(0x22c)]),_0x407cd8=this[_0x3a6875(0x218)](_0x4d70c5['resource'],_0x22670d['formatKey']),[_0xd2a3d8,_0x43a0b2]=await Promise[_0x3a6875(0x14d)]([_0xee5c31[_0x3a6875(0x1ab)](_0x4a33d7),_0xee5c31[_0x3a6875(0x22d)](_0x407cd8,0x0,-0x1)]);return{..._0x22670d,'reusePoolValues':_0x43a0b2['map'](_0x3aba06=>parseInt(_0x3aba06,0xa)),'meta':_0xd2a3d8&&Object[_0x3a6875(0x19c)](_0xd2a3d8)[_0x3a6875(0x142)]>0x0?_0xd2a3d8:null};}return _0x22670d;}async[a0_0x261d91(0x156)](_0x4356c7){const _0x2aefcc=a0_0x261d91,_0x25dc70={'oebxZ':_0x2aefcc(0x265),'QCoig':'ID\x20Generator\x20is\x20disabled','tgXvb':'IDGEN_RESET_NOT_ALLOWED','KlWDm':'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)','ItYYV':_0x2aefcc(0x262),'kuiQh':'IDGEN_INVALID_FORMAT','sSRCP':'seq','NMFjW':'reuse','QkVVk':'random','pszrh':_0x2aefcc(0x1a6),'vzndw':_0x2aefcc(0x18a)};if(!this[_0x2aefcc(0x241)])throw new IdGeneratorError(_0x25dc70['oebxZ'],_0x25dc70[_0x2aefcc(0x1a1)]);if(!this[_0x2aefcc(0x17a)])throw new IdGeneratorError(_0x25dc70['tgXvb'],_0x25dc70['KlWDm']);this['_validateResource'](_0x4356c7['resource']);const _0x482028=_0x4356c7['mode']||_0x25dc70[_0x2aefcc(0x1d2)],_0x2216fe=redisClient[_0x2aefcc(0x1e2)]();if(_0x482028===_0x25dc70['ItYYV']){const _0x658473=(_0x4356c7[_0x2aefcc(0x229)]||'text')['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x658473))throw new IdGeneratorError(_0x25dc70[_0x2aefcc(0x182)],_0x2aefcc(0x1a0)+_0x4356c7['format']);const {formatKey:_0x1022b6}=this['_buildFormatKey'](_0x658473,_0x4356c7['prefix']||''),_0xb22788=this[_0x2aefcc(0x1c4)](_0x4356c7['resource'],_0x1022b6),_0x1a7cfb=this[_0x2aefcc(0x218)](_0x4356c7['resource'],_0x1022b6),_0xc10b76=this['_buildMetaKey'](_0x4356c7[_0x2aefcc(0x253)],_0x1022b6);return await _0x2216fe[_0x2aefcc(0x184)](_0xb22788,_0x1a7cfb,_0xc10b76),logger[_0x2aefcc(0x172)]({'event':_0x2aefcc(0x1f0),'resource':_0x4356c7[_0x2aefcc(0x253)],'mode':_0x2aefcc(0x262),'formatKey':_0x1022b6},_0x2aefcc(0x18c)+_0x4356c7['resource']+':'+_0x1022b6),{'reset':!![],'resource':_0x4356c7['resource'],'mode':_0x25dc70[_0x2aefcc(0x1d2)],'formatKey':_0x1022b6,'deletedKeys':[_0x25dc70['sSRCP'],_0x25dc70['NMFjW'],_0x2aefcc(0x1b0)]};}if(_0x482028==='random'){const _0x15c6f8=this['_buildIssuedKey'](_0x4356c7[_0x2aefcc(0x253)]);return await _0x2216fe['del'](_0x15c6f8),logger[_0x2aefcc(0x172)]({'event':'idgen_reset','resource':_0x4356c7['resource'],'mode':_0x2aefcc(0x1d7)},'ID\x20Generator\x20reset:\x20random:'+_0x4356c7[_0x2aefcc(0x253)]),{'reset':!![],'resource':_0x4356c7['resource'],'mode':_0x25dc70['QkVVk'],'deletedKeys':[_0x25dc70[_0x2aefcc(0x257)]]};}throw new IdGeneratorError(_0x25dc70[_0x2aefcc(0x1bf)],'Unknown\x20mode:\x20'+_0x482028);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module['exports']=instance,module[a0_0x261d91(0x23c)]['IdGeneratorError']=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x41c7d9=a0_0x5a84;function a0_0x5a84(_0x2d0f64,_0x36100b){_0x2d0f64=_0x2d0f64-0x1e1;const _0x1bd4eb=a0_0x1bd4();let _0x5a846a=_0x1bd4eb[_0x2d0f64];if(a0_0x5a84['NebfQU']===undefined){var _0x2aa61b=function(_0xe5db45){const _0x3baba9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5897d3='',_0x42407f='';for(let _0x5b079e=0x0,_0x49f15d,_0x20e643,_0x54c444=0x0;_0x20e643=_0xe5db45['charAt'](_0x54c444++);~_0x20e643&&(_0x49f15d=_0x5b079e%0x4?_0x49f15d*0x40+_0x20e643:_0x20e643,_0x5b079e++%0x4)?_0x5897d3+=String['fromCharCode'](0xff&_0x49f15d>>(-0x2*_0x5b079e&0x6)):0x0){_0x20e643=_0x3baba9['indexOf'](_0x20e643);}for(let _0x4faf66=0x0,_0x254b4e=_0x5897d3['length'];_0x4faf66<_0x254b4e;_0x4faf66++){_0x42407f+='%'+('00'+_0x5897d3['charCodeAt'](_0x4faf66)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x42407f);};a0_0x5a84['zXsXyP']=_0x2aa61b,a0_0x5a84['qjuxkI']={},a0_0x5a84['NebfQU']=!![];}const _0x5a5816=_0x1bd4eb[0x0],_0x524b62=_0x2d0f64+_0x5a5816,_0x528cd4=a0_0x5a84['qjuxkI'][_0x524b62];return!_0x528cd4?(_0x5a846a=a0_0x5a84['zXsXyP'](_0x5a846a),a0_0x5a84['qjuxkI'][_0x524b62]=_0x5a846a):_0x5a846a=_0x528cd4,_0x5a846a;}function a0_0x1bd4(){const _0x525672=['C3bSAxq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','mJu1nte0ohzADwDQvW','C3rVCMu','yNvPBgrezxrLCM1PBMLZDgLJs2v5','lI9SB2DNzxi','surftvbpvevoq1LFvfrm','uKvpCwy','z2v0q2XPzw50','x2vUywjSzwq','swrLBxbVDgvUy3KGy2fJAguGseLu','C2v0zxG','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','x2vUC3vYzuLUAxrPywXPEMvK','Dhj1zq','nJu1mdqYmMHHz0rzBG','x2LUAxrdB25MAwC','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','n1rAs3fesq','AwrLBxbVDgvUy3LFAgL0','x2LUAxrPywXPEMvK','zw52','AwrLBxbVDgvUy3LFC3rVCMu','x3r0Ba','uw9qvg8','Dw5RBM93BG','zgvIDwC','surftvbpvevoq1LFru5bqKXfra','DvzXtei','zw5HyMXLza','zxHWB3j0CW','nJeWnJG4DfvTzvHR','C3rHDhvZq29Kzq','y3j5ChrV','ntKZmtqWC2DYruTS','DhrS','zMLSDgvY','mZi5mJqZnu1AA09jrq','Cgf0Aa','CMy6AwrLBtO','mJiZmtaXnNbZAxfTBq','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','z2v0','yKnVrhe','zxjYB3i','mtCWnZu2mdb0AeXKDMy','zgvMyxvSDa','swrLBxbVDgvUy3KGy2fJAguGtuLtuW'];a0_0x1bd4=function(){return _0x525672;};return a0_0x1bd4();}(function(_0x673201,_0x2f588d){const _0x21c68e=a0_0x5a84,_0xbeb5c1=_0x673201();while(!![]){try{const _0x1d9c74=parseInt(_0x21c68e(0x20d))/0x1+parseInt(_0x21c68e(0x210))/0x2+parseInt(_0x21c68e(0x1e6))/0x3+-parseInt(_0x21c68e(0x1f0))/0x4+parseInt(_0x21c68e(0x1e3))/0x5+-parseInt(_0x21c68e(0x1fd))/0x6*(-parseInt(_0x21c68e(0x200))/0x7)+-parseInt(_0x21c68e(0x1eb))/0x8;if(_0x1d9c74===_0x2f588d)break;else _0xbeb5c1['push'](_0xbeb5c1['shift']());}catch(_0x4cf312){_0xbeb5c1['push'](_0xbeb5c1['shift']());}}}(a0_0x1bd4,0x994cd));const redisClient=require('./redis-client'),{logger}=require(a0_0x41c7d9(0x1f3)),crypto=require(a0_0x41c7d9(0x20f));class IdempotencyManager{constructor(){const _0x41ebd7=a0_0x41c7d9;this['_enabled']=null,this['_ttl']=null,this[_0x41ebd7(0x202)]=![];}[a0_0x41c7d9(0x1fe)](){const _0x479253=a0_0x41c7d9,_0x47d68a={'duTVz':function(_0x36fb75,_0x3b17fb){return _0x36fb75===_0x3b17fb;},'bCoDq':_0x479253(0x1fc),'KGmXf':function(_0x33eafa,_0x4d2e25,_0x37d53b){return _0x33eafa(_0x4d2e25,_0x37d53b);},'NHDWn':'idempotency_config_init'};this['_enabled']=_0x47d68a['duTVz'](process[_0x479253(0x203)][_0x479253(0x209)],_0x47d68a[_0x479253(0x1e9)]),this[_0x479253(0x205)]=_0x47d68a['KGmXf'](parseInt,process[_0x479253(0x203)][_0x479253(0x1f4)],0xa)||0x12c,this[_0x479253(0x202)]=!![],logger['info']({'event':_0x47d68a['NHDWn'],'enabled':this['_enabled'],'ttl':this['_ttl']},_0x479253(0x1fa)+this['_enabled']+',\x20TTL:\x20'+this[_0x479253(0x205)]+'s');}[a0_0x41c7d9(0x1fb)](){const _0x5afdbc=a0_0x41c7d9;!this[_0x5afdbc(0x202)]&&this[_0x5afdbc(0x1fe)]();}get[a0_0x41c7d9(0x20b)](){const _0x21a334=a0_0x41c7d9;return this['_ensureInitialized'](),this[_0x21a334(0x1f7)];}get['ttl'](){return this['_ensureInitialized'](),this['_ttl'];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x3bb043,_0x21fef8){const _0x3fe694=a0_0x41c7d9,_0x4bc254={'uVqLB':_0x3fe694(0x1ec),'UrFQo':_0x3fe694(0x207)},_0xe1becd=_0x21fef8[_0x3fe694(0x1e4)][_0x3fe694(0x1ee)]('/')[_0x3fe694(0x1e2)](Boolean),_0x5491aa=_0xe1becd[0x0]||_0x4bc254[_0x3fe694(0x20a)],_0x2a577c=_0xe1becd[0x1]||_0x4bc254['UrFQo'],_0x28948b=_0xe1becd[0x2]||_0x4bc254['UrFQo'];return _0x3fe694(0x1e5)+_0x5491aa+':'+_0x2a577c+':'+_0x28948b+':'+_0x3bb043;}async[a0_0x41c7d9(0x1f1)](_0x1f315d,_0x4cb053){const _0xd8ecc0=a0_0x41c7d9,_0x2cbd54={'PhGME':_0xd8ecc0(0x1ff)};if(!this[_0xd8ecc0(0x20b)])return![];try{const _0x3613ac=redisClient[_0xd8ecc0(0x1f6)]();return await _0x3613ac[_0xd8ecc0(0x1f9)](_0x1f315d,this[_0xd8ecc0(0x1e1)],JSON['stringify'](_0x4cb053)),logger[_0xd8ecc0(0x208)]({'event':_0xd8ecc0(0x204),'key':_0x1f315d,'ttl':this['ttl'],'statusCode':_0x4cb053[_0xd8ecc0(0x20e)]},_0x2cbd54['PhGME']),!![];}catch(_0x4df0e6){return logger['error']({'event':'idempotency_store_error','key':_0x1f315d,'error':_0x4df0e6['message']},_0xd8ecc0(0x1ef)+_0x4df0e6['message']),![];}}async['retrieve'](_0xf9e4e5){const _0x43dcb3=a0_0x41c7d9,_0x4431e6={'uSaCN':'idempotency_miss','QoPTo':_0x43dcb3(0x1ed),'REOqf':'idempotency_retrieve_error'};if(!this['enabled'])return null;try{const _0x13a8d4=redisClient['getClient'](),_0x40ac49=await _0x13a8d4[_0x43dcb3(0x1e8)](_0xf9e4e5);if(_0x40ac49)return logger['info']({'event':_0x43dcb3(0x201),'key':_0xf9e4e5},_0x43dcb3(0x1f8)),JSON['parse'](_0x40ac49);return logger[_0x43dcb3(0x208)]({'event':_0x4431e6['uSaCN'],'key':_0xf9e4e5},_0x4431e6[_0x43dcb3(0x206)]),null;}catch(_0x237aff){return logger[_0x43dcb3(0x1ea)]({'event':_0x4431e6[_0x43dcb3(0x1f5)],'key':_0xf9e4e5,'error':_0x237aff['message']},_0x43dcb3(0x1e7)+_0x237aff['message']),null;}}['generateKey'](_0x1c7700='req'){return _0x1c7700+'_'+crypto['randomUUID']();}[a0_0x41c7d9(0x1f2)](_0x533978,_0xa66756,_0x49e9b6){return _0x533978+':'+_0xa66756+':'+_0x49e9b6;}}module[a0_0x41c7d9(0x20c)]=new IdempotencyManager();
1
+ 'use strict';const a0_0xe52346=a0_0x329b;(function(_0x29005d,_0x324512){const _0x480e54=a0_0x329b,_0x2c82c8=_0x29005d();while(!![]){try{const _0x22e8f7=parseInt(_0x480e54(0x192))/0x1+parseInt(_0x480e54(0x1ad))/0x2*(-parseInt(_0x480e54(0x1b0))/0x3)+parseInt(_0x480e54(0x18d))/0x4*(parseInt(_0x480e54(0x19f))/0x5)+parseInt(_0x480e54(0x1aa))/0x6*(parseInt(_0x480e54(0x1a6))/0x7)+-parseInt(_0x480e54(0x18e))/0x8*(parseInt(_0x480e54(0x1a8))/0x9)+-parseInt(_0x480e54(0x1a7))/0xa*(-parseInt(_0x480e54(0x197))/0xb)+-parseInt(_0x480e54(0x1a3))/0xc;if(_0x22e8f7===_0x324512)break;else _0x2c82c8['push'](_0x2c82c8['shift']());}catch(_0x5eb19d){_0x2c82c8['push'](_0x2c82c8['shift']());}}}(a0_0x2676,0x9e499));const redisClient=require('./redis-client'),{logger}=require(a0_0xe52346(0x1b1)),crypto=require('crypto');function a0_0x329b(_0x1c9ddf,_0x452d62){_0x1c9ddf=_0x1c9ddf-0x18a;const _0x2676a9=a0_0x2676();let _0x329bdb=_0x2676a9[_0x1c9ddf];if(a0_0x329b['kehjZN']===undefined){var _0x368977=function(_0x3e6f69){const _0x243d69='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x21e43c='',_0x544696='';for(let _0x395a1d=0x0,_0x1843c2,_0x233a3a,_0x40aaed=0x0;_0x233a3a=_0x3e6f69['charAt'](_0x40aaed++);~_0x233a3a&&(_0x1843c2=_0x395a1d%0x4?_0x1843c2*0x40+_0x233a3a:_0x233a3a,_0x395a1d++%0x4)?_0x21e43c+=String['fromCharCode'](0xff&_0x1843c2>>(-0x2*_0x395a1d&0x6)):0x0){_0x233a3a=_0x243d69['indexOf'](_0x233a3a);}for(let _0x19cccd=0x0,_0x3b928d=_0x21e43c['length'];_0x19cccd<_0x3b928d;_0x19cccd++){_0x544696+='%'+('00'+_0x21e43c['charCodeAt'](_0x19cccd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x544696);};a0_0x329b['vMEJpz']=_0x368977,a0_0x329b['DiaqMs']={},a0_0x329b['kehjZN']=!![];}const _0x4d9366=_0x2676a9[0x0],_0x19a667=_0x1c9ddf+_0x4d9366,_0x2ec5a9=a0_0x329b['DiaqMs'][_0x19a667];return!_0x2ec5a9?(_0x329bdb=a0_0x329b['vMEJpz'](_0x329bdb),a0_0x329b['DiaqMs'][_0x19a667]=_0x329bdb):_0x329bdb=_0x2ec5a9,_0x329bdb;}class IdempotencyManager{constructor(){const _0x366968=a0_0xe52346;this[_0x366968(0x198)]=null,this['_ttl']=null,this[_0x366968(0x1a5)]=![];}[a0_0xe52346(0x19c)](){const _0x5de813=a0_0xe52346,_0x476566={'KWdLB':function(_0x2d46ea,_0x574705){return _0x2d46ea===_0x574705;},'Pljhc':'true','UVYqh':function(_0x428e81,_0x441af6,_0x2c9554){return _0x428e81(_0x441af6,_0x2c9554);}};this[_0x5de813(0x198)]=_0x476566[_0x5de813(0x1ab)](process[_0x5de813(0x19a)][_0x5de813(0x196)],_0x476566[_0x5de813(0x1a1)]),this['_ttl']=_0x476566['UVYqh'](parseInt,process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x5de813(0x1a5)]=!![],logger[_0x5de813(0x18f)]({'event':'idempotency_config_init','enabled':this[_0x5de813(0x198)],'ttl':this[_0x5de813(0x18a)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20TTL:\x20'+this['_ttl']+'s');}['_ensureInitialized'](){const _0x59e66e=a0_0xe52346;!this['_initialized']&&this[_0x59e66e(0x19c)]();}get['enabled'](){const _0x525834=a0_0xe52346;return this['_ensureInitialized'](),this[_0x525834(0x198)];}get['ttl'](){const _0x36871b=a0_0xe52346;return this[_0x36871b(0x191)](),this[_0x36871b(0x18a)];}[a0_0xe52346(0x19b)](){return this['enabled'];}['buildKey'](_0x54d623,_0x3b937b){const _0x1d68d4=a0_0xe52346,_0x43887d=_0x3b937b['path'][_0x1d68d4(0x1a0)]('/')['filter'](Boolean),_0x19af18=_0x43887d[0x0]||'default',_0x2cd1b4=_0x43887d[0x1]||'unknown',_0x244834=_0x43887d[0x2]||'unknown';return'rf:idem:'+_0x19af18+':'+_0x2cd1b4+':'+_0x244834+':'+_0x54d623;}async[a0_0xe52346(0x190)](_0xb113a,_0x3af920){const _0x5135db=a0_0xe52346,_0x595599={'KPUvg':'Idempotency\x20response\x20stored'};if(!this[_0x5135db(0x18b)])return![];try{const _0x3f43bb=redisClient['getClient']();return await _0x3f43bb[_0x5135db(0x19d)](_0xb113a,this['ttl'],JSON['stringify'](_0x3af920)),logger[_0x5135db(0x1a4)]({'event':_0x5135db(0x1b3),'key':_0xb113a,'ttl':this[_0x5135db(0x194)],'statusCode':_0x3af920[_0x5135db(0x18c)]},_0x595599[_0x5135db(0x1a9)]),!![];}catch(_0x2d418e){return logger[_0x5135db(0x1a2)]({'event':'idempotency_store_error','key':_0xb113a,'error':_0x2d418e['message']},_0x5135db(0x199)+_0x2d418e[_0x5135db(0x193)]),![];}}async['retrieve'](_0x4c2f5c){const _0x19825b=a0_0xe52346,_0x350ea3={'RqLFL':'idempotency_hit','DFsAa':'Idempotency\x20cache\x20MISS'};if(!this['enabled'])return null;try{const _0x2f214c=redisClient[_0x19825b(0x1b2)](),_0x4192d8=await _0x2f214c['get'](_0x4c2f5c);if(_0x4192d8)return logger[_0x19825b(0x18f)]({'event':_0x350ea3['RqLFL'],'key':_0x4c2f5c},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x4192d8);return logger[_0x19825b(0x1a4)]({'event':'idempotency_miss','key':_0x4c2f5c},_0x350ea3[_0x19825b(0x1ac)]),null;}catch(_0x4bf4cb){return logger['error']({'event':_0x19825b(0x1ae),'key':_0x4c2f5c,'error':_0x4bf4cb[_0x19825b(0x193)]},_0x19825b(0x1af)+_0x4bf4cb['message']),null;}}[a0_0xe52346(0x195)](_0x229db9='req'){return _0x229db9+'_'+crypto['randomUUID']();}[a0_0xe52346(0x19e)](_0x4a4dfb,_0x2ce52c,_0x535aaa){return _0x4a4dfb+':'+_0x2ce52c+':'+_0x535aaa;}}function a0_0x2676(){const _0x5fede=['swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','mta2ntn5qNPRsNC','lI9SB2DNzxi','z2v0q2XPzw50','AwrLBxbVDgvUy3LFC3rVCMu','x3r0Ba','zw5HyMXLza','C3rHDhvZq29Kzq','nefUBK15yW','mJy2mdGYnhPqExv0rG','Aw5MBW','C3rVCMu','x2vUC3vYzuLUAxrPywXPEMvK','mtm4mZq5C1f0qM5x','BwvZC2fNzq','DhrS','z2vUzxjHDgvlzxK','surftvbpvevoq1LFru5bqKXfra','mtfzA09ZtM0','x2vUywjSzwq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','zw52','AxnfBMfIBgvK','x2LUAxrdB25MAwC','C2v0zxG','yNvPBgrezxrLCM1PBMLZDgLJs2v5','mZC0mtq0nuvRvK5drq','C3bSAxq','ugXQAgm','zxjYB3i','ndCWmJqYoeThuM1UrW','zgvIDwC','x2LUAxrPywXPEMvK','odmZsuDAtfvX','ndm3otyXmfLQEhDmwa','ou5euNrkEG','s1bvDMC','ndG2mJruuefbrxO','s1DKtei','rezZqwe','nte2tK9IBfLS','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i'];a0_0x2676=function(){return _0x5fede;};return a0_0x2676();}module['exports']=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x2d1c74=a0_0x5ee0;(function(_0x88a9b1,_0x541a53){const _0x15a582=a0_0x5ee0,_0x5aec2c=_0x88a9b1();while(!![]){try{const _0x2b20dd=parseInt(_0x15a582(0xcb))/0x1*(-parseInt(_0x15a582(0xc2))/0x2)+parseInt(_0x15a582(0xc5))/0x3+-parseInt(_0x15a582(0xc9))/0x4+-parseInt(_0x15a582(0xd6))/0x5*(parseInt(_0x15a582(0xd3))/0x6)+-parseInt(_0x15a582(0xba))/0x7*(-parseInt(_0x15a582(0xc3))/0x8)+parseInt(_0x15a582(0xd0))/0x9*(parseInt(_0x15a582(0xca))/0xa)+parseInt(_0x15a582(0xb5))/0xb;if(_0x2b20dd===_0x541a53)break;else _0x5aec2c['push'](_0x5aec2c['shift']());}catch(_0x54c493){_0x5aec2c['push'](_0x5aec2c['shift']());}}}(a0_0x14bf,0xb6349));function a0_0x14bf(){const _0x7d257e=['mJi3ndG0mejos05yzW','DMfSAwrHDgvsB3C','vMPUCLK','DMfSAwrHDgvqAg9Uzq','mtK1mtK3mMPXuvrXrq','mteWwxHguLji','mti3t3bmqvjh','q1buquy','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','ChvZAa','AM9PBG','ndK4odm0tfHLrKXu','AgfZ','zM9YrwfJAa','mtG4ndeYnKL4y0fRDW','A2v5CW','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','mtbbrvPgsgW','wwDfB2u','BNvTyMvY','yvHusNK','s3f0qMW','lI9SB2DNzxi','mteYmtG0mZHdAvz2rwi','DMfSAwrHDgvfBwfPBa','z2v0','sw52ywXPzcbvuKWGzM9YBwf0','sw52ywXPzcbUDw1IzxiGzM9YBwf0','ndm1nZmZoxzowM9Hwq','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','DgvZDa','zM9YBwf0','yMf0y2HwywXPzgf0zvjVD3m','Benxu1e','BgvUz3rO','CgrVzuW','mtGWnZH6tvzjruu','ogTNz2ngDq','Aw5MBW'];a0_0x14bf=function(){return _0x7d257e;};return a0_0x14bf();}const {logger}=require(a0_0x2d1c74(0xb4));class ImportValidator{[a0_0x2d1c74(0xc6)](_0x3ac0b2,_0x235114=[],_0x2d11ac={}){const _0x1b276a=a0_0x2d1c74,_0x6e6df7={'YgEoe':function(_0x2ed105,_0x4c39cb){return _0x2ed105===_0x4c39cb;},'gYIAC':'required','pdoeL':function(_0x1fbc24,_0x32263f){return _0x1fbc24===_0x32263f;},'xNdKn':function(_0x1e0db9,_0x4e4468){return _0x1e0db9===_0x4e4468;}},_0x6f797c=[];return _0x235114['forEach'](_0x53cca3=>{const _0x529c16=a0_0x5ee0,_0x316aba=_0x3ac0b2[_0x53cca3];(_0x6e6df7[_0x529c16(0xd7)](_0x316aba,null)||_0x316aba===undefined||_0x316aba==='')&&_0x6f797c[_0x529c16(0xce)]({'field':_0x53cca3,'type':_0x6e6df7['gYIAC'],'message':_0x529c16(0xbb)});}),Object[_0x1b276a(0xd4)](_0x2d11ac)[_0x1b276a(0xd2)](_0x820099=>{const _0x4147c6=_0x1b276a,_0x29ccd5=_0x3ac0b2[_0x820099],_0xf077ee=_0x2d11ac[_0x820099];if(_0x29ccd5===null||_0x6e6df7[_0x4147c6(0xc1)](_0x29ccd5,undefined)||_0x6e6df7['xNdKn'](_0x29ccd5,''))return;const _0xcfe085=this['validateFieldFormat'](_0x820099,_0x29ccd5,_0xf077ee);_0xcfe085&&_0x6f797c['push'](_0xcfe085);}),_0x6f797c;}['validateFieldFormat'](_0xf786c4,_0x1e0e1b,_0x31052a){const _0x2651e0=a0_0x2d1c74,_0x49c9ef={'lCWSQ':'email','MEbGo':'url','VXtGr':_0x2651e0(0xd8)};switch(_0x31052a){case _0x49c9ef[_0x2651e0(0xbf)]:return this[_0x2651e0(0xb6)](_0xf786c4,_0x1e0e1b);case'phone':return this[_0x2651e0(0xc8)](_0xf786c4,_0x1e0e1b);case _0x49c9ef['MEbGo']:return this['validateUrl'](_0xf786c4,_0x1e0e1b);case _0x49c9ef['VXtGr']:return this['validateNumber'](_0xf786c4,_0x1e0e1b);default:return null;}}['validateEmail'](_0x14c8b5,_0x14df0f){const _0x103103=a0_0x2d1c74,_0x1d1e2c={'aXTJy':'Invalid\x20email\x20format'},_0x581964=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x581964['test'](String(_0x14df0f)))return{'field':_0x14c8b5,'type':'format','message':_0x1d1e2c[_0x103103(0xd9)]};return null;}['validatePhone'](_0x494cee,_0x438c5f){const _0x217a5a=a0_0x2d1c74,_0x171f28={'KqtBl':function(_0x41e68d,_0x2d80c6){return _0x41e68d<_0x2d80c6;},'CpwXi':_0x217a5a(0xbd)},_0x5a74ed=String(_0x438c5f)['replace'](/\s+/g,''),_0x26e4f9=/^[\d\+\-\(\)]+$/;if(!_0x26e4f9[_0x217a5a(0xbc)](_0x5a74ed)||_0x171f28[_0x217a5a(0xda)](_0x5a74ed[_0x217a5a(0xc0)],0x8))return{'field':_0x494cee,'type':_0x171f28['CpwXi'],'message':'Invalid\x20phone\x20format'};return null;}['validateUrl'](_0x332494,_0x24fd34){const _0x9a80ca=a0_0x2d1c74,_0x101c51={'CPTAF':function(_0x2bf573,_0x23d581){return _0x2bf573(_0x23d581);},'zrJYh':_0x9a80ca(0xbd),'VjnrY':_0x9a80ca(0xb8)};try{return new URL(_0x101c51[_0x9a80ca(0xcc)](String,_0x24fd34)),null;}catch(_0x47d8d9){return{'field':_0x332494,'type':_0x101c51['zrJYh'],'message':_0x101c51[_0x9a80ca(0xc7)]};}}['validateNumber'](_0x2a3e1f,_0x181a7d){const _0x5c9a7b=a0_0x2d1c74,_0x48f07e={'nDenu':_0x5c9a7b(0xb9)};if(isNaN(_0x181a7d))return{'field':_0x2a3e1f,'type':_0x5c9a7b(0xbd),'message':_0x48f07e['nDenu']};return null;}['detectDuplicatesInFile'](_0xce20e1,_0x4e4754){const _0x353b6d=a0_0x2d1c74,_0x32e2be=new Map(),_0x400707=[];return _0xce20e1[_0x353b6d(0xd2)]((_0x496b9b,_0x5887ce)=>{const _0x5166a8=_0x353b6d,_0x544cf8=_0x4e4754['map'](_0x4169e2=>_0x496b9b[_0x4169e2])[_0x5166a8(0xcf)]('|');_0x32e2be[_0x5166a8(0xd1)](_0x544cf8)?_0x400707['push']({'rowIndex':_0x5887ce,'duplicateOf':_0x32e2be[_0x5166a8(0xb7)](_0x544cf8),'key':_0x544cf8}):_0x32e2be['set'](_0x544cf8,_0x5887ce);}),_0x400707;}[a0_0x2d1c74(0xbe)](_0x17bed0,_0x51e57c,_0xeed2fa){const _0x5b2495=a0_0x2d1c74,_0x430e22={'yxqoh':function(_0x53a13f,_0x359616){return _0x53a13f>_0x359616;},'ahDdm':_0x5b2495(0xcd)},_0x1987b0=[];return _0x17bed0['forEach']((_0x567591,_0x5b8f46)=>{const _0xe96e1e=this['validateRow'](_0x567591,_0x51e57c,_0xeed2fa);_0x430e22['yxqoh'](_0xe96e1e['length'],0x0)&&_0x1987b0['push']({'rowIndex':_0x5b8f46,'rowData':_0x567591,'errors':_0xe96e1e});}),logger[_0x5b2495(0xc4)]({'event':_0x5b2495(0xd5),'totalRows':_0x17bed0['length'],'errorCount':_0x1987b0['length']},_0x430e22['ahDdm']),_0x1987b0;}}function a0_0x5ee0(_0x31f014,_0x5bdccb){_0x31f014=_0x31f014-0xb4;const _0x14bfa1=a0_0x14bf();let _0x5ee0c2=_0x14bfa1[_0x31f014];if(a0_0x5ee0['pyDiIw']===undefined){var _0x786213=function(_0x1d7dd6){const _0x5d910a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5191f9='',_0x4252af='';for(let _0x4d04fd=0x0,_0x512b54,_0x4d7725,_0x1908ac=0x0;_0x4d7725=_0x1d7dd6['charAt'](_0x1908ac++);~_0x4d7725&&(_0x512b54=_0x4d04fd%0x4?_0x512b54*0x40+_0x4d7725:_0x4d7725,_0x4d04fd++%0x4)?_0x5191f9+=String['fromCharCode'](0xff&_0x512b54>>(-0x2*_0x4d04fd&0x6)):0x0){_0x4d7725=_0x5d910a['indexOf'](_0x4d7725);}for(let _0x2b03a2=0x0,_0x368cf2=_0x5191f9['length'];_0x2b03a2<_0x368cf2;_0x2b03a2++){_0x4252af+='%'+('00'+_0x5191f9['charCodeAt'](_0x2b03a2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4252af);};a0_0x5ee0['WWWSTF']=_0x786213,a0_0x5ee0['oeIQtq']={},a0_0x5ee0['pyDiIw']=!![];}const _0x9e06cf=_0x14bfa1[0x0],_0x48edbd=_0x31f014+_0x9e06cf,_0x481825=a0_0x5ee0['oeIQtq'][_0x48edbd];return!_0x481825?(_0x5ee0c2=a0_0x5ee0['WWWSTF'](_0x5ee0c2),a0_0x5ee0['oeIQtq'][_0x48edbd]=_0x5ee0c2):_0x5ee0c2=_0x481825,_0x5ee0c2;}module['exports']=new ImportValidator();
1
+ const a0_0x1adc0e=a0_0x1a19;(function(_0x165adf,_0xb2bd09){const _0xecb066=a0_0x1a19,_0x318e67=_0x165adf();while(!![]){try{const _0xdb6983=parseInt(_0xecb066(0x6b))/0x1*(parseInt(_0xecb066(0x82))/0x2)+-parseInt(_0xecb066(0x79))/0x3*(parseInt(_0xecb066(0x7a))/0x4)+-parseInt(_0xecb066(0x83))/0x5*(parseInt(_0xecb066(0x6d))/0x6)+parseInt(_0xecb066(0x78))/0x7*(parseInt(_0xecb066(0x6a))/0x8)+parseInt(_0xecb066(0x76))/0x9+-parseInt(_0xecb066(0x84))/0xa*(-parseInt(_0xecb066(0x7b))/0xb)+parseInt(_0xecb066(0x7e))/0xc*(-parseInt(_0xecb066(0x7d))/0xd);if(_0xdb6983===_0xb2bd09)break;else _0x318e67['push'](_0x318e67['shift']());}catch(_0x7a329a){_0x318e67['push'](_0x318e67['shift']());}}}(a0_0x1dd7,0x8083b));const {logger}=require('./logger');function a0_0x1a19(_0x1ebe18,_0x12e740){_0x1ebe18=_0x1ebe18-0x6a;const _0x1dd7fb=a0_0x1dd7();let _0x1a1941=_0x1dd7fb[_0x1ebe18];if(a0_0x1a19['xptoNl']===undefined){var _0x58312b=function(_0x5baf30){const _0x2c53e5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3281ed='',_0x812bd9='';for(let _0x257c34=0x0,_0x51ddf0,_0x59fa9b,_0x3281fe=0x0;_0x59fa9b=_0x5baf30['charAt'](_0x3281fe++);~_0x59fa9b&&(_0x51ddf0=_0x257c34%0x4?_0x51ddf0*0x40+_0x59fa9b:_0x59fa9b,_0x257c34++%0x4)?_0x3281ed+=String['fromCharCode'](0xff&_0x51ddf0>>(-0x2*_0x257c34&0x6)):0x0){_0x59fa9b=_0x2c53e5['indexOf'](_0x59fa9b);}for(let _0x2bfc81=0x0,_0x2109ac=_0x3281ed['length'];_0x2bfc81<_0x2109ac;_0x2bfc81++){_0x812bd9+='%'+('00'+_0x3281ed['charCodeAt'](_0x2bfc81)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x812bd9);};a0_0x1a19['BCfCdT']=_0x58312b,a0_0x1a19['milGUG']={},a0_0x1a19['xptoNl']=!![];}const _0x24ab48=_0x1dd7fb[0x0],_0x163db4=_0x1ebe18+_0x24ab48,_0x21266a=a0_0x1a19['milGUG'][_0x163db4];return!_0x21266a?(_0x1a1941=a0_0x1a19['BCfCdT'](_0x1a1941),a0_0x1a19['milGUG'][_0x163db4]=_0x1a1941):_0x1a1941=_0x21266a,_0x1a1941;}class ImportValidator{[a0_0x1adc0e(0x73)](_0xceb231,_0x22a278=[],_0x3e5bd8={}){const _0x2edac6=a0_0x1adc0e,_0x2097de={'Tvdej':function(_0x677065,_0x4f1ef1){return _0x677065===_0x4f1ef1;}},_0x1b9e24=[];return _0x22a278[_0x2edac6(0x75)](_0x4aedc8=>{const _0x5d5a14=_0xceb231[_0x4aedc8];(_0x5d5a14===null||_0x5d5a14===undefined||_0x5d5a14==='')&&_0x1b9e24['push']({'field':_0x4aedc8,'type':'required','message':'Required\x20field\x20is\x20empty'});}),Object[_0x2edac6(0x74)](_0x3e5bd8)[_0x2edac6(0x75)](_0x4fe947=>{const _0x3472ad=_0x2edac6,_0xf18b5d=_0xceb231[_0x4fe947],_0x509df8=_0x3e5bd8[_0x4fe947];if(_0x2097de['Tvdej'](_0xf18b5d,null)||_0xf18b5d===undefined||_0x2097de[_0x3472ad(0x70)](_0xf18b5d,''))return;const _0x34568a=this['validateFieldFormat'](_0x4fe947,_0xf18b5d,_0x509df8);_0x34568a&&_0x1b9e24['push'](_0x34568a);}),_0x1b9e24;}['validateFieldFormat'](_0x1a6230,_0x55929e,_0x52514e){const _0x47825c=a0_0x1adc0e,_0x57caec={'CVvcr':'phone','NdmNu':'url'};switch(_0x52514e){case'email':return this[_0x47825c(0x7c)](_0x1a6230,_0x55929e);case _0x57caec[_0x47825c(0x6e)]:return this['validatePhone'](_0x1a6230,_0x55929e);case _0x57caec['NdmNu']:return this[_0x47825c(0x81)](_0x1a6230,_0x55929e);case'number':return this['validateNumber'](_0x1a6230,_0x55929e);default:return null;}}['validateEmail'](_0x12b3ba,_0x37f27d){const _0x1b71bf=a0_0x1adc0e,_0x50687e={'maOpe':function(_0x4edb31,_0x1cb392){return _0x4edb31(_0x1cb392);},'sEriy':'format'},_0x3ba390=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x3ba390[_0x1b71bf(0x80)](_0x50687e['maOpe'](String,_0x37f27d)))return{'field':_0x12b3ba,'type':_0x50687e['sEriy'],'message':'Invalid\x20email\x20format'};return null;}[a0_0x1adc0e(0x72)](_0x28f4bf,_0x39b164){const _0x21357d=a0_0x1adc0e,_0x433626={'fAnrb':function(_0x40caec,_0x5c7804){return _0x40caec(_0x5c7804);},'tmFgA':function(_0x3f5bf7,_0x1a1f90){return _0x3f5bf7<_0x1a1f90;}},_0x1e40de=_0x433626['fAnrb'](String,_0x39b164)['replace'](/\s+/g,''),_0x1818fa=/^[\d\+\-\(\)]+$/;if(!_0x1818fa[_0x21357d(0x80)](_0x1e40de)||_0x433626[_0x21357d(0x7f)](_0x1e40de['length'],0x8))return{'field':_0x28f4bf,'type':'format','message':'Invalid\x20phone\x20format'};return null;}['validateUrl'](_0x26d43d,_0x43996f){try{return new URL(String(_0x43996f)),null;}catch(_0x10a623){return{'field':_0x26d43d,'type':'format','message':'Invalid\x20URL\x20format'};}}['validateNumber'](_0x19b848,_0x11b84f){const _0x30086f=a0_0x1adc0e,_0x37aa20={'xvpFd':'Invalid\x20number\x20format'};if(isNaN(_0x11b84f))return{'field':_0x19b848,'type':'format','message':_0x37aa20[_0x30086f(0x77)]};return null;}['detectDuplicatesInFile'](_0x117759,_0x2f8b76){const _0x5f3aa5=new Map(),_0x24ea2e=[];return _0x117759['forEach']((_0x24ab09,_0x43f138)=>{const _0x10cf95=a0_0x1a19,_0x1ed63d=_0x2f8b76[_0x10cf95(0x6f)](_0x294f76=>_0x24ab09[_0x294f76])['join']('|');_0x5f3aa5['has'](_0x1ed63d)?_0x24ea2e['push']({'rowIndex':_0x43f138,'duplicateOf':_0x5f3aa5['get'](_0x1ed63d),'key':_0x1ed63d}):_0x5f3aa5['set'](_0x1ed63d,_0x43f138);}),_0x24ea2e;}['batchValidateRows'](_0x8050cb,_0x43046f,_0x12eec0){const _0x356b9f=a0_0x1adc0e,_0x5353bb={'KkbnY':function(_0x52ff3c,_0x5cab8e){return _0x52ff3c>_0x5cab8e;},'hqEma':'batch_validation_complete','sQbji':'Batch\x20validation\x20completed'},_0x6064a6=[];return _0x8050cb['forEach']((_0x387f0d,_0x25e4bc)=>{const _0x6bc9c=a0_0x1a19,_0x420727=this[_0x6bc9c(0x73)](_0x387f0d,_0x43046f,_0x12eec0);_0x5353bb['KkbnY'](_0x420727['length'],0x0)&&_0x6064a6['push']({'rowIndex':_0x25e4bc,'rowData':_0x387f0d,'errors':_0x420727});}),logger['info']({'event':_0x5353bb['hqEma'],'totalRows':_0x8050cb[_0x356b9f(0x6c)],'errorCount':_0x6064a6['length']},_0x5353bb[_0x356b9f(0x71)]),_0x6064a6;}}function a0_0x1dd7(){const _0x392dd7=['otG1yuXVr0jZ','BgvUz3rO','nZm4nJm2EfbNweTA','q1z2y3i','BwfW','vhzKzwO','C1fIAMK','DMfSAwrHDgvqAg9Uzq','DMfSAwrHDgvsB3C','A2v5CW','zM9YrwfJAa','mZu5mtq3n2nXEwHXtG','EhzWrMq','nty3s0jnDLjI','mtvxAhjPwe0','mJm0nJq0s3PqCMDY','mtaWmZa5mZnsyu1yAwO','DMfSAwrHDgvfBwfPBa','mtnotufOyuO','otq2mdGYnhfWue9ODa','Dg1gz0e','DgvZDa','DMfSAwrHDgvvCMW','ndaYq3DABu50','mZvrqMvTAMq','mtblDNzMuu0','otq5mdr4r2Xiwu4'];a0_0x1dd7=function(){return _0x392dd7;};return a0_0x1dd7();}module['exports']=new ImportValidator();