@restforgejs/platform 5.3.6 → 5.3.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) 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/cli/designer.js +1 -1
  5. package/generators/cli/fast-track.js +272 -53
  6. package/generators/cli/init.js +37 -3
  7. package/generators/lib/templates/dashboard-catalog.js +1 -1
  8. package/generators/lib/templates/db-connection-env.js +1 -1
  9. package/generators/lib/templates/dbschema-catalog.js +1 -1
  10. package/generators/lib/templates/field-validation-catalog.js +1 -1
  11. package/generators/lib/templates/mysql-template.js +1 -1
  12. package/generators/lib/templates/oracle-template.js +1 -1
  13. package/generators/lib/templates/postgres-template.js +1 -1
  14. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  15. package/generators/lib/templates/sqlite-template.js +1 -1
  16. package/integrity-manifest.json +18 -18
  17. package/package.json +1 -1
  18. package/scripts/verify-integrity.js +1 -1
  19. package/server.js +1 -1
  20. package/src/components/handlers/adjust_handler.js +1 -1
  21. package/src/components/handlers/audit_handler.js +1 -1
  22. package/src/components/handlers/delete_handler.js +1 -1
  23. package/src/components/handlers/export_handler.js +1 -1
  24. package/src/components/handlers/import_handler.js +1 -1
  25. package/src/components/handlers/insert_handler.js +1 -1
  26. package/src/components/handlers/update_handler.js +1 -1
  27. package/src/components/handlers/upload_handler.js +1 -1
  28. package/src/components/handlers/workflow_handler.js +1 -1
  29. package/src/components/integrations/webhook.js +1 -1
  30. package/src/consumers/baseConsumer.js +1 -1
  31. package/src/consumers/declarativeMapper.js +1 -1
  32. package/src/consumers/handlers/apiHandler.js +1 -1
  33. package/src/consumers/handlers/consoleHandler.js +1 -1
  34. package/src/consumers/handlers/databaseHandler.js +1 -1
  35. package/src/consumers/handlers/index.js +1 -1
  36. package/src/consumers/handlers/kafkaHandler.js +1 -1
  37. package/src/consumers/index.js +1 -1
  38. package/src/consumers/messageTransformer.js +1 -1
  39. package/src/consumers/validator.js +1 -1
  40. package/src/core/db/dialect/base-dialect.js +1 -1
  41. package/src/core/db/dialect/index.js +1 -1
  42. package/src/core/db/dialect/mysql-dialect.js +1 -1
  43. package/src/core/db/dialect/oracle-dialect.js +1 -1
  44. package/src/core/db/dialect/postgres-dialect.js +1 -1
  45. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  46. package/src/core/db/flatten-helper.js +1 -1
  47. package/src/core/db/query-builder-error.js +1 -1
  48. package/src/core/db/query-builder.js +1 -1
  49. package/src/core/db/relation-helper.js +1 -1
  50. package/src/core/handlers/delete_handler.js +1 -1
  51. package/src/core/handlers/insert_handler.js +1 -1
  52. package/src/core/handlers/update_handler.js +1 -1
  53. package/src/core/models/base-model.js +1 -1
  54. package/src/core/utils/cache-manager.js +1 -1
  55. package/src/core/utils/component-engine.js +1 -1
  56. package/src/core/utils/context-builder.js +1 -1
  57. package/src/core/utils/datetime-formatter.js +1 -1
  58. package/src/core/utils/datetime-parser.js +1 -1
  59. package/src/core/utils/db.js +1 -1
  60. package/src/core/utils/logger.js +1 -1
  61. package/src/core/utils/payload-loader.js +1 -1
  62. package/src/core/utils/security-checks.js +1 -1
  63. package/src/middleware/body-options.js +1 -1
  64. package/src/middleware/cors.js +1 -1
  65. package/src/middleware/idempotency.js +1 -1
  66. package/src/middleware/rate-limiter.js +1 -1
  67. package/src/middleware/request-logger.js +1 -1
  68. package/src/middleware/security-headers.js +1 -1
  69. package/src/models/base-model-mysql.js +1 -1
  70. package/src/models/base-model-oracle.js +1 -1
  71. package/src/models/base-model-sqlite.js +1 -1
  72. package/src/models/base-model.js +1 -1
  73. package/src/pro/caching/redis-client.js +1 -1
  74. package/src/pro/caching/redis-helper.js +1 -1
  75. package/src/pro/consumers/baseConsumer.js +1 -1
  76. package/src/pro/consumers/declarativeMapper.js +1 -1
  77. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  78. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  79. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  80. package/src/pro/consumers/handlers/index.js +1 -1
  81. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  82. package/src/pro/consumers/index.js +1 -1
  83. package/src/pro/consumers/messageTransformer.js +1 -1
  84. package/src/pro/consumers/validator.js +1 -1
  85. package/src/pro/database/base-model-mysql.js +1 -1
  86. package/src/pro/database/base-model-oracle.js +1 -1
  87. package/src/pro/database/base-model-sqlite.js +1 -1
  88. package/src/pro/database/db-mysql.js +1 -1
  89. package/src/pro/database/db-oracle.js +1 -1
  90. package/src/pro/database/db-sqlite.js +1 -1
  91. package/src/pro/excel/excel-generator.js +1 -1
  92. package/src/pro/excel/excel-parser.js +1 -1
  93. package/src/pro/excel/export-service.js +1 -1
  94. package/src/pro/excel/export_handler.js +1 -1
  95. package/src/pro/excel/import-service.js +1 -1
  96. package/src/pro/excel/import-validator.js +1 -1
  97. package/src/pro/excel/import_handler.js +1 -1
  98. package/src/pro/excel/upsert-builder.js +1 -1
  99. package/src/pro/idgen/idgen-routes.js +1 -1
  100. package/src/pro/integrations/lookup-resolver.js +1 -1
  101. package/src/pro/integrations/upload-handler-v2.js +1 -1
  102. package/src/pro/integrations/upload-handler.js +1 -1
  103. package/src/pro/integrations/webhook.js +1 -1
  104. package/src/pro/locking/lock-routes.js +1 -1
  105. package/src/pro/locking/resource-lock-manager.js +1 -1
  106. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  107. package/src/pro/messaging/kafkaService.js +1 -1
  108. package/src/pro/messaging/messagehubService.js +1 -1
  109. package/src/pro/messaging/rabbitmqService.js +1 -1
  110. package/src/pro/scheduler/job-manager.js +1 -1
  111. package/src/pro/scheduler/job-routes.js +1 -1
  112. package/src/pro/scheduler/job-validator.js +1 -1
  113. package/src/pro/storage/base-storage-provider.js +1 -1
  114. package/src/pro/storage/file-metadata-helper.js +1 -1
  115. package/src/pro/storage/index.js +1 -1
  116. package/src/pro/storage/local-storage-provider.js +1 -1
  117. package/src/pro/storage/s3-storage-provider.js +1 -1
  118. package/src/pro/storage/upload-cleanup-job.js +1 -1
  119. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  120. package/src/pro/storage/upload-pending-tracker.js +1 -1
  121. package/src/pro/websocket/broadcast-helper.js +1 -1
  122. package/src/pro/websocket/index.js +1 -1
  123. package/src/pro/websocket/livesync-server.js +1 -1
  124. package/src/pro/websocket/ws-broadcaster.js +1 -1
  125. package/src/services/export-service.js +1 -1
  126. package/src/services/import-service.js +1 -1
  127. package/src/services/kafkaConsumerService.js +1 -1
  128. package/src/services/kafkaService.js +1 -1
  129. package/src/services/messagehubService.js +1 -1
  130. package/src/services/rabbitmqService.js +1 -1
  131. package/src/utils/cache-invalidation-registry.js +1 -1
  132. package/src/utils/cache-manager.js +1 -1
  133. package/src/utils/component-engine.js +1 -1
  134. package/src/utils/config-extractor.js +1 -1
  135. package/src/utils/consumerLogger.js +1 -1
  136. package/src/utils/context-builder.js +1 -1
  137. package/src/utils/dashboard-helpers.js +1 -1
  138. package/src/utils/dateHelper.js +1 -1
  139. package/src/utils/datetime-formatter.js +1 -1
  140. package/src/utils/datetime-parser.js +1 -1
  141. package/src/utils/db-bootstrap.js +1 -1
  142. package/src/utils/db-mysql.js +1 -1
  143. package/src/utils/db-oracle.js +1 -1
  144. package/src/utils/db-sqlite.js +1 -1
  145. package/src/utils/db.js +1 -1
  146. package/src/utils/demo-generator.js +1 -1
  147. package/src/utils/excel-generator.js +1 -1
  148. package/src/utils/excel-parser.js +1 -1
  149. package/src/utils/file-watcher.js +1 -1
  150. package/src/utils/id-generator.js +1 -1
  151. package/src/utils/idempotency-manager.js +1 -1
  152. package/src/utils/import-validator.js +1 -1
  153. package/src/utils/license-client.js +1 -1
  154. package/src/utils/lock-manager.js +1 -1
  155. package/src/utils/logger.js +1 -1
  156. package/src/utils/lookup-resolver.js +1 -1
  157. package/src/utils/payload-loader.js +1 -1
  158. package/src/utils/processor-response.js +1 -1
  159. package/src/utils/rabbitmq.js +1 -1
  160. package/src/utils/redis-client.js +1 -1
  161. package/src/utils/redis-helper.js +1 -1
  162. package/src/utils/request-scope.js +1 -1
  163. package/src/utils/security-checks.js +1 -1
  164. package/src/utils/service-resolver.js +1 -1
  165. package/src/utils/shutdown-coordinator.js +1 -1
  166. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  167. package/src/utils/sql-table-extractor.js +1 -1
  168. package/src/utils/trusted-keys.js +1 -1
  169. package/src/utils/upload-handler.js +1 -1
  170. package/src/utils/upsert-builder.js +1 -1
  171. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';function a0_0x17a2(_0x1e9a08,_0x486da9){_0x1e9a08=_0x1e9a08-0x179;const _0x27b72c=a0_0x27b7();let _0x17a275=_0x27b72c[_0x1e9a08];if(a0_0x17a2['efGYRs']===undefined){var _0x1002b7=function(_0x2b93e4){const _0x43410d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x32b37d='',_0x1def8c='';for(let _0x5a91b0=0x0,_0x444ed8,_0x6fe7a0,_0x5e4568=0x0;_0x6fe7a0=_0x2b93e4['charAt'](_0x5e4568++);~_0x6fe7a0&&(_0x444ed8=_0x5a91b0%0x4?_0x444ed8*0x40+_0x6fe7a0:_0x6fe7a0,_0x5a91b0++%0x4)?_0x32b37d+=String['fromCharCode'](0xff&_0x444ed8>>(-0x2*_0x5a91b0&0x6)):0x0){_0x6fe7a0=_0x43410d['indexOf'](_0x6fe7a0);}for(let _0x16bb55=0x0,_0x3ab935=_0x32b37d['length'];_0x16bb55<_0x3ab935;_0x16bb55++){_0x1def8c+='%'+('00'+_0x32b37d['charCodeAt'](_0x16bb55)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1def8c);};a0_0x17a2['sfZgpk']=_0x1002b7,a0_0x17a2['mmqApo']={},a0_0x17a2['efGYRs']=!![];}const _0x2b32ce=_0x27b72c[0x0],_0x3b090f=_0x1e9a08+_0x2b32ce,_0x32ce75=a0_0x17a2['mmqApo'][_0x3b090f];return!_0x32ce75?(_0x17a275=a0_0x17a2['sfZgpk'](_0x17a275),a0_0x17a2['mmqApo'][_0x3b090f]=_0x17a275):_0x17a275=_0x32ce75,_0x17a275;}const a0_0x2ce5f2=a0_0x17a2;function a0_0x27b7(){const _0x56c3f0=['mJm4mZC2nuPcCxnzuW','otnYzNv1EgO','zxH0zw5ZAw9UCW','mJy3ntuYnhDgr2nwyG','y3DK','zxH0BMfTzq','Bg9N','D2f0y2HLCNm','zgvIB3vUy2vuAw1LCG','zgLYzwn0B3jPzxm','CMvSyxrPDMu','nJe0nty3nfncCNr4EG','nxW0Fdn8mNWWFde','C3rVCa','y2XVC2u','qMXMreS','mZvjDNbLrei','B25dAgfUz2u','Cgf0Aa','zgvIB3vUy2vnCW','C3bSAxq','oty0odyWsKjtv0Xg','owfyuLzrrW','mtq4otaZmMTgzKTnuG','mJmYndrqy2fjvfm','mtK5mZy0ntbKEMLovee','x2rLyM91BMnL','ChvZAa','BwvZC2fNzq'];a0_0x27b7=function(){return _0x56c3f0;};return a0_0x27b7();}(function(_0x25bac0,_0x450e03){const _0x1d9a98=a0_0x17a2,_0x33ab92=_0x25bac0();while(!![]){try{const _0x2d5707=parseInt(_0x1d9a98(0x192))/0x1+parseInt(_0x1d9a98(0x180))/0x2+-parseInt(_0x1d9a98(0x17e))/0x3*(parseInt(_0x1d9a98(0x195))/0x4)+parseInt(_0x1d9a98(0x17d))/0x5+parseInt(_0x1d9a98(0x188))/0x6+-parseInt(_0x1d9a98(0x18d))/0x7*(parseInt(_0x1d9a98(0x194))/0x8)+-parseInt(_0x1d9a98(0x193))/0x9*(parseInt(_0x1d9a98(0x179))/0xa);if(_0x2d5707===_0x450e03)break;else _0x33ab92['push'](_0x33ab92['shift']());}catch(_0x2d4bac){_0x33ab92['push'](_0x33ab92['shift']());}}}(a0_0x27b7,0xaab57));const fs=require('fs'),path=require(a0_0x2ce5f2(0x18f));class FileWatcher{constructor(_0x1148a3={}){const _0x16ca23=a0_0x2ce5f2,_0x2d745f={'BlfDK':_0x16ca23(0x189),'vmMTs':'.js'},_0x23fc40=_0x2d745f[_0x16ca23(0x18c)][_0x16ca23(0x191)]('|');let _0x490227=0x0;while(!![]){switch(_0x23fc40[_0x490227++]){case'0':this['watchers']=[];continue;case'1':this[_0x16ca23(0x185)]=null;continue;case'2':this[_0x16ca23(0x18e)]=_0x1148a3['onChange']||(()=>{});continue;case'3':this[_0x16ca23(0x190)]=_0x1148a3[_0x16ca23(0x190)]||0x1f4;continue;case'4':this[_0x16ca23(0x17f)]=_0x1148a3[_0x16ca23(0x17f)]||[_0x2d745f['vmMTs'],'.json'];continue;case'5':this['directories']=_0x1148a3['directories']||[];continue;}break;}}['start'](){const _0x182d65=a0_0x2ce5f2;for(const _0x346a39 of this[_0x182d65(0x186)]){if(!fs['existsSync'](_0x346a39)){console[_0x182d65(0x183)]('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path[_0x182d65(0x187)](process['cwd'](),_0x346a39)||_0x346a39));continue;}try{const _0x10303f=fs['watch'](_0x346a39,{'recursive':!![]},(_0x4f345d,_0x8c7567)=>{const _0x27c18d=_0x182d65;if(!_0x8c7567)return;const _0x54a877=path[_0x27c18d(0x182)](_0x8c7567)['toLowerCase']();if(!this[_0x27c18d(0x17f)]['includes'](_0x54a877))return;this[_0x27c18d(0x17a)](_0x8c7567);});_0x10303f['on']('error',_0x524c07=>{const _0x2daf10=_0x182d65;console[_0x2daf10(0x183)]('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x2daf10(0x187)](process['cwd'](),_0x346a39)+':\x20'+_0x524c07[_0x2daf10(0x17c)]);}),this[_0x182d65(0x184)][_0x182d65(0x17b)](_0x10303f);const _0x453266=path['relative'](process[_0x182d65(0x181)](),_0x346a39)||_0x346a39;console['log']('\x20\x20[WATCH]\x20Watching:\x20'+_0x453266+'/\x20(recursive)');}catch(_0x17d454){console[_0x182d65(0x183)]('\x20\x20[WATCH]\x20Warning:\x20Failed\x20to\x20setup\x20watcher\x20for\x20'+path['relative'](process['cwd'](),_0x346a39)+':\x20'+_0x17d454['message']);}}}[a0_0x2ce5f2(0x18a)](){const _0x20aa52=a0_0x2ce5f2;for(const _0x24fb60 of this['watchers']){try{_0x24fb60[_0x20aa52(0x18b)]();}catch(_0x4be9f8){}}this['watchers']=[],this['debounceTimer']&&(clearTimeout(this['debounceTimer']),this[_0x20aa52(0x185)]=null);}['_debounce'](_0x1e21cf){const _0x468ca0={'ELbHn':function(_0x482c2b,_0x1a9186){return _0x482c2b(_0x1a9186);}};this['debounceTimer']&&_0x468ca0['ELbHn'](clearTimeout,this['debounceTimer']),this['debounceTimer']=setTimeout(()=>{const _0x252c60=a0_0x17a2;this[_0x252c60(0x185)]=null,this['onChange'](_0x1e21cf);},this['debounceMs']);}}module['exports']=FileWatcher;
1
+ 'use strict';function a0_0x5265(_0x42cecd,_0x2e2183){_0x42cecd=_0x42cecd-0xf9;const _0x46dd65=a0_0x46dd();let _0x526550=_0x46dd65[_0x42cecd];if(a0_0x5265['CcIpQY']===undefined){var _0x4c58f9=function(_0x366879){const _0x51e45d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xb02a8b='',_0x1d4efe='';for(let _0x262dc7=0x0,_0x34a51d,_0x598974,_0x5a3366=0x0;_0x598974=_0x366879['charAt'](_0x5a3366++);~_0x598974&&(_0x34a51d=_0x262dc7%0x4?_0x34a51d*0x40+_0x598974:_0x598974,_0x262dc7++%0x4)?_0xb02a8b+=String['fromCharCode'](0xff&_0x34a51d>>(-0x2*_0x262dc7&0x6)):0x0){_0x598974=_0x51e45d['indexOf'](_0x598974);}for(let _0x4c743d=0x0,_0x418a59=_0xb02a8b['length'];_0x4c743d<_0x418a59;_0x4c743d++){_0x1d4efe+='%'+('00'+_0xb02a8b['charCodeAt'](_0x4c743d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d4efe);};a0_0x5265['IUVcwT']=_0x4c58f9,a0_0x5265['aQfmHJ']={},a0_0x5265['CcIpQY']=!![];}const _0x344326=_0x46dd65[0x0],_0x46dedc=_0x42cecd+_0x344326,_0xd5812b=a0_0x5265['aQfmHJ'][_0x46dedc];return!_0xd5812b?(_0x526550=a0_0x5265['IUVcwT'](_0x526550),a0_0x5265['aQfmHJ'][_0x46dedc]=_0x526550):_0x526550=_0xd5812b,_0x526550;}const a0_0x514274=a0_0x5265;(function(_0x46b425,_0x545acb){const _0x3a533e=a0_0x5265,_0x228f43=_0x46b425();while(!![]){try{const _0x25d06e=parseInt(_0x3a533e(0xff))/0x1*(-parseInt(_0x3a533e(0x113))/0x2)+-parseInt(_0x3a533e(0x11b))/0x3*(parseInt(_0x3a533e(0x114))/0x4)+-parseInt(_0x3a533e(0x10d))/0x5+parseInt(_0x3a533e(0x101))/0x6*(-parseInt(_0x3a533e(0x10b))/0x7)+-parseInt(_0x3a533e(0xf9))/0x8*(parseInt(_0x3a533e(0x108))/0x9)+-parseInt(_0x3a533e(0x10e))/0xa*(parseInt(_0x3a533e(0x10a))/0xb)+-parseInt(_0x3a533e(0x104))/0xc*(-parseInt(_0x3a533e(0x111))/0xd);if(_0x25d06e===_0x545acb)break;else _0x228f43['push'](_0x228f43['shift']());}catch(_0x37516c){_0x228f43['push'](_0x228f43['shift']());}}}(a0_0x46dd,0xc89ab));const fs=require('fs'),path=require(a0_0x514274(0x116));function a0_0x46dd(){const _0x127cc3=['C3rHCNq','Bg9N','zxH0zw5ZAw9UCW','mZK5mte3tgrqywrW','CMvSyxrPDMu','mJaXmgThqvPoDG','x2rLyM91BMnL','D2f0y2G','ntKXmJrAsuPAse4','y3DK','B25dAgfUz2u','Aw5JBhvKzxm','oty5nZq3m2TYvK5jDa','zgLYzwn0B3jPzxm','nZDQBLDJAwu','odyXAeLvEw1R','lYaOCMvJDxjZAxzLkq','mtC4mda1BxDYzejS','mtm3mZu0mejjCMHyua','zxH0BMfTzq','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','mtm2nJnOzMvqyMO','zgvIB3vUy2vuAw1LCG','nMfxD094Bq','mJa4nJK0mfDAEMTgtW','zgvIB3vUy2vnCW','Cgf0Aa','D2f0y2HLCNm','C3rVCa','BwvZC2fNzq','wvzjrxe','nK9Lv0zYCq','ogzgvw9Rrq','zxHPC3rZu3LUyW','icbBv0fuq0HDifDHDgnOAw5NoIa'];a0_0x46dd=function(){return _0x127cc3;};return a0_0x46dd();}class FileWatcher{constructor(_0x10524d={}){const _0x4780be=a0_0x514274,_0x32fbd6={'gVDgI':'.json'};this['directories']=_0x10524d[_0x4780be(0x109)]||[],this['extensions']=_0x10524d[_0x4780be(0xfe)]||['.js',_0x32fbd6['gVDgI']],this['debounceMs']=_0x10524d[_0x4780be(0x115)]||0x1f4,this['onChange']=_0x10524d['onChange']||(()=>{}),this['watchers']=[],this['debounceTimer']=null;}[a0_0x514274(0xfc)](){const _0x779d5e=a0_0x514274,_0x5ac271={'YVIEq':'error'};for(const _0x2be8bd of this['directories']){if(!fs[_0x779d5e(0xfa)](_0x2be8bd)){console[_0x779d5e(0xfd)](_0x779d5e(0x110)+(path[_0x779d5e(0x100)](process[_0x779d5e(0x105)](),_0x2be8bd)||_0x2be8bd));continue;}try{const _0x349a00=fs[_0x779d5e(0x103)](_0x2be8bd,{'recursive':!![]},(_0x2a540c,_0x1fbb86)=>{const _0x6d4a08=_0x779d5e;if(!_0x1fbb86)return;const _0x191baf=path[_0x6d4a08(0x10f)](_0x1fbb86)['toLowerCase']();if(!this[_0x6d4a08(0xfe)][_0x6d4a08(0x107)](_0x191baf))return;this[_0x6d4a08(0x102)](_0x1fbb86);});_0x349a00['on'](_0x5ac271[_0x779d5e(0x11a)],_0x328b76=>{const _0x1bb7e0=_0x779d5e;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path['relative'](process[_0x1bb7e0(0x105)](),_0x2be8bd)+':\x20'+_0x328b76[_0x1bb7e0(0x119)]);}),this['watchers']['push'](_0x349a00);const _0x3afb21=path['relative'](process[_0x779d5e(0x105)](),_0x2be8bd)||_0x2be8bd;console['log'](_0x779d5e(0xfb)+_0x3afb21+_0x779d5e(0x10c));}catch(_0x373cad){console[_0x779d5e(0xfd)]('\x20\x20[WATCH]\x20Warning:\x20Failed\x20to\x20setup\x20watcher\x20for\x20'+path['relative'](process[_0x779d5e(0x105)](),_0x2be8bd)+':\x20'+_0x373cad['message']);}}}[a0_0x514274(0x118)](){const _0x2fedf8=a0_0x514274;for(const _0x3db9ae of this['watchers']){try{_0x3db9ae['close']();}catch(_0x5f375){}}this[_0x2fedf8(0x117)]=[],this['debounceTimer']&&(clearTimeout(this['debounceTimer']),this[_0x2fedf8(0x112)]=null);}['_debounce'](_0x188124){const _0x4b4e52=a0_0x514274,_0x3a2c31={'tRAFs':function(_0x3c2720,_0x8c14ec){return _0x3c2720(_0x8c14ec);}};this[_0x4b4e52(0x112)]&&_0x3a2c31['tRAFs'](clearTimeout,this[_0x4b4e52(0x112)]),this[_0x4b4e52(0x112)]=setTimeout(()=>{const _0x129f97=_0x4b4e52;this['debounceTimer']=null,this[_0x129f97(0x106)](_0x188124);},this['debounceMs']);}}module['exports']=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';const a0_0x570cb3=a0_0x15de;(function(_0x4c8c98,_0x101b3d){const _0x45769b=a0_0x15de,_0x1ea0cf=_0x4c8c98();while(!![]){try{const _0x174159=parseInt(_0x45769b(0x299))/0x1*(-parseInt(_0x45769b(0x2ba))/0x2)+parseInt(_0x45769b(0x234))/0x3*(-parseInt(_0x45769b(0x1cc))/0x4)+parseInt(_0x45769b(0x1d4))/0x5*(-parseInt(_0x45769b(0x27a))/0x6)+-parseInt(_0x45769b(0x2a8))/0x7+parseInt(_0x45769b(0x1ab))/0x8*(-parseInt(_0x45769b(0x1d3))/0x9)+parseInt(_0x45769b(0x1ef))/0xa*(-parseInt(_0x45769b(0x257))/0xb)+parseInt(_0x45769b(0x25e))/0xc;if(_0x174159===_0x101b3d)break;else _0x1ea0cf['push'](_0x1ea0cf['shift']());}catch(_0x422839){_0x1ea0cf['push'](_0x1ea0cf['shift']());}}}(a0_0x12f3,0x83618));const crypto=require(a0_0x570cb3(0x1b9)),redisClient=require(a0_0x570cb3(0x1e7)),{logger}=require(a0_0x570cb3(0x202)),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x570cb3(0x1b0),'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_0x570cb3(0x1e8),CHARSET_UPPER=a0_0x570cb3(0x27f),CHARSET_LOWER=a0_0x570cb3(0x195),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_0x570cb3(0x28e),CHARSET_HEX_LOWER=a0_0x570cb3(0x2b3),PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20reused\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#reused\x20>\x200\x20then\x0a\x20\x20\x20\x20return\x20{tonumber(reused[1]),\x201}\x0a\x20\x20end\x0aend\x0alocal\x20n\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20and\x20n\x20==\x201\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x20{n,\x200}\x0a',LUA_RELEASE_NUMBER=a0_0x570cb3(0x29a),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION=a0_0x570cb3(0x2af),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(_0x250792,_0x105452,_0x5ae417=null){const _0x22183e=a0_0x570cb3,_0x31d02f={'yIxOi':_0x22183e(0x23a)};super(_0x105452||_0x250792),this['name']=_0x31d02f['yIxOi'],this['code']=_0x250792,this[_0x22183e(0x24c)]=_0x5ae417;}}function a0_0x12f3(){const _0x35a29e=['ugrkEKu','t0vKq0G','x2LUAxrPywXPEMvK','ExL5Ew1T','AwrLBuTLEq','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','u0DiruK','CMv1C2u','CxHTDKC','ExL5Ew1Tzgq','CNn2swr4s2v5','AxnfBMfIBgvK','y3j5ChrV','x3zHBgLKyxrLugf0DgvYBG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','zM9YBwf0','B1LUEfa','D1vcAuW','C2fKza','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','z2v0uMvZzxj2yxrPB24','BM93','v0Tqswq','Dg9ju09tDhjPBMC','rLHKENK','BwvZC2fNzq','AhnLDa','BNvTrgLNAxrZ','Bw9Kzq','Bwf4uMv0CNK','Ew1JCe4','nteYuhvsqvjR','y21Asw8','Cxz4sge','D2jhwgu','ExL5Eq','DMjUy3q','x3n0B3jLswrLBunHy2HL','mtCZmtiWneLOAMHbDG','mta5nvL0uw5gzG','x3bHzdi','C2vWyxjHDg9Y','wgHTweS','zxHWB3j0CW','surhru5Fsu5wquXjrf9nt0rf','zw52','zw5ZDxjLvw5PCxvL','z2v0q2XPzw50','zgvMyxvSDe1HEfjLDhj5','CMvWzwf0','CgfYC2u','x2vUC3vYzuLUAxrPywXPEMvK','DhrS','suqGr2vUzxjHDg9YihjLC2v0oIa','x3jLC2vYDMvnyxHuveW','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','surhru5Fsu5wquXjrf9ut0TftG','yKzjuei','lI9YzwrPCY1JBgLLBNq','mdeYmZq1nJC4oq','y291BNrLCG','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','C3rYAw5N','zw5HyMXLza','x2TLEvbYzwzPEa','BNvTyMvY','mJqYmeL3BuLwzG','CMvZB3vYy2u','tfrVwKG','EMTpy0S','swrLBxbVDgvUy3KGy2fJAguGseLu','vfrqvvK','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','zgvS','AwrLBvruta','CgfKu3rHCNq','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','Dg9mB3DLCKnHC2u','CMvZzxj2zu1HEfruta','x2rLzMf1BhrnyxHszxrYEq','AwrLBxbVDgvUy3LlzxK','DgvZDa','x2nVDw50zxjuveXnyxa','zgLNAxrZ','y291BNrLCKLUDa','lI9SB2DNzxi','ywXSB3DszxnLDa','x2DLDenVDw50zxjuveW','wvjZA0u','C3jbuMq','surhru5Fsu5wquXjrf9gt1jnqvq','x2j1AwXKtwv0yuTLEq','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','y1nctvK','BgvUz3rO','C3rYAw5NAwz5','t1bcB28','C2v0','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','ENHesvm','qMD5vxO','surhru5Frevgqvvmvf9nqvHFuKvuuLK','DKXPzxK','DMfSDwu','x3bHCNnLtNvTyMvY','C2nHCMq','Exnfs0y','y2fUy2vSuMvZzxj2yxrPB24','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','CMvZzxj2zurLzMf1BhruveW','Ag1Nzxq','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','CMy6AwrNzw46','C3jLBq','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','r0LzExe','D2fYBG','x2rLzMf1BhrqAw5eAwDPDhm','AwrNzw5Fy29UzMLNx2LUAxq','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','surhru5Fsu5wquXjrf9qqvrurvjo','EKvuDgW','CgvLAW','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','surhru5Fsu5wquXjrf9srvnpvvjdrq','uvn6C28','x2j1AwXKsxnZDwvKs2v5','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','suqGr2vUzxjHDg9Yig51BwjLCJOG','ywXS','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','x3vWzgf0zu1LDge','mJaXnM1wtNnsrW','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','Bwv0yq','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','B01zwxu','swrhzw5LCMf0B3jfCNjVCG','vw5RBM93BIbTB2rLoIa','DuXKzMS','x2vUywjSzwq','AgLnyNC','ChjLzML4','zgvMyxvSDfbPBKrPz2L0CW','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','z2v0','AwXkBgi','uNP6EKK','z2vUzxjHDgvKqxq','x3L5ExLTBwrKxW','AwrNzw5Fy29UC3vTzwq','Dg9Rzw4','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','C2vYAwfS','CgLWzwXPBMu','zgv0ywLSCW','teLOA08','uwD1D1y','x3L5ExLTBv8','zM9YBwf0s2v5','zxzHBa','z2v0rNvSBfLLyxi','D2LUBMvYuMvZDwX0','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','yNvPBgrezxrLCM1PBMLZDgLJs2v5','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','mJCXndHQruvyuMu','surhru5Fsu5wquXjrf9esuDjvfm','Cgf0DgvYBG','qwvpDvC','x2j1AwXKrM9YBwf0s2v5','x3zHBgLKyxrLuMvZB3vYy2u','BwfW','mZu5odG0ntzwq0vMz0S','surhru5FuKvtrvrFtK9ux0fmte9xruq','AgfZ','EuTZBhu','ignOyxjZicHNB3qGBgvUz3rOoIa','r3rrDhq','lcbLEhbLy3rLzca','x2fSBg93uMvZzxq','CMfUzg9T','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','x3L5ExLF','sKDYqLi','suqGr2vUzxjHDg9YihjHBMrVBtOG','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','zgf0zvbYzwzPEa','y29Kzq','r2jlBwq','DMrvy2i','vw5RBM93BIbMB3jTyxq6ia','DLzpt1O','Chr0Ba','A2v5CW','sw52ywXPzcbMB3jTyxq6ia','CMvZzxj2zv9LEhrLBMq','zfPJCLy','ywn0AxzLoG','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','mJe1nZbNz0HczLi','x3zHBgLKyxrLtwf4uMv0CNK','CgfKzgvKicHNB3q6ia','x3jLDhjPzxzLswrLBunHy2HL','x3rLEhq','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','AxnjBNrLz2vY','x2rLzMf1BhrdB2rLugf0DgvYBG','CNn2s2v5','ufbZq0e','x2rLzMf1BhrtzxjPywXqyxr0zxjU','surhru5FreLtqujmruq','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','Bwf0y2G','CMvZzxj2zv9JB25MAxjT','whzKyLK','CgLU','sw52ywXPzcbMB3jTyxq6ig11C3qGyMuGB25Lig9Mia','swPIyMW','mdeYmZq1nJC4oufcq0rfrG','A2v5uhjLzML4','lcaR','x2j1AwXKqwn0AxzLs2v5','u0LdyLO','zK5IuNe','CMfUzg9Tvvvjra','Dgv4Da','x3jLC2vYDMvezwzHDwX0vfrm','x2j1AwXKswrLBuTLEq','uwLRDMy','mJa4mJiXEM1sEeje','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','CMjVwNu','AwrNzw4','x3zHBgLKyxrLuMvZzxj2zvruta','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','icHNB3q6ia','zxHWAxjLC0f0','surhru5FquXmt1DFuKvtrvq','AxnZDwvK','sxjtC2u','AM9PBG','CMvZzxq','CMvZzxj2zq','AhPKDhu','mtiXmZe0mLLWveTIzG','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','Aw5MBW','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','x2LKzw1uveW','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','v1HNr1i','AgDLDgfSBa','tMvoDfm','mdeYmZq1nJC4owfIy2rLzG','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','zLbMrLK','CMvSzwfZzwrbDa','icH0B2TLBJ0','x2zVCM1HDe51BwjLCG','C3bSAxq','nKD6uMjtAq','x2j1AwXKuMv1C2vlzxK','x3n0B3jLswrLBunHy2HLtLG','yM9VBgvHBG','surhru5Fsurftv9uveW','AxvSt00','CMvZzxj2zu51BwjLCG','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','C0noyuG','sg5AquS','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','ihbHCNrZkq','C3zWzwS','otK5os05otK5','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','sLrIAee','u0PkDgG','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','x2j1AwXKu2vXs2v5','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','lwrPz2L0ignHCgfJAxr5icG','surhru5Frevgqvvmvf9qsu5FreLhsvrt','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','x2j1AwXKuMvZzxj2yxrPB25lzxK','x2DLBMvYyxrLrNjVBvbHDhrLCM4','Bwv0ytO','C2vX','A2rzEgy','u1npDu0','surhru5Fsu5wquXjrf9trvbbuKfut1i','C3PbwKe','oeP6t0LIBq','AvzHzMS'];a0_0x12f3=function(){return _0x35a29e;};return a0_0x12f3();}class IdGenerator{constructor(){const _0x5b526e=a0_0x570cb3;this['_initialized']=![],this['_enabled']=null,this[_0x5b526e(0x1ed)]=null,this['_idemTTL']=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this[_0x5b526e(0x223)]=null,this['_defaultSerialPattern']=null,this['_defaultCodePattern']=null,this[_0x5b526e(0x1ff)]=null,this[_0x5b526e(0x296)]=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x25efc8=a0_0x570cb3,_0x2588b3={'kpfoh':'1|10|4|8|0|2|7|9|6|11|12|5|3','LToZH':function(_0x52fa26,_0x239225,_0x379269){return _0x52fa26(_0x239225,_0x379269);},'CwUru':_0x25efc8(0x224),'bFIPB':'XXXX-XXXX-XXXX-XXXX','GDxbG':_0x25efc8(0x199),'ppqmH':function(_0x3bbb6c,_0x2bb572){return _0x3bbb6c===_0x2bb572;},'FXdzy':function(_0x74c3ab,_0x5754f9,_0x18cf48){return _0x74c3ab(_0x5754f9,_0x18cf48);}},_0x746654=_0x2588b3['kpfoh'][_0x25efc8(0x2b9)]('|');let _0x1a8b34=0x0;while(!![]){switch(_0x746654[_0x1a8b34++]){case'0':this[_0x25efc8(0x1fc)]=_0x2588b3[_0x25efc8(0x1f1)](parseInt,process['env'][_0x25efc8(0x213)],0xa)||0xa;continue;case'1':this[_0x25efc8(0x1ed)]=_0x25efc8(0x21e);continue;case'2':this[_0x25efc8(0x223)]=_0x2588b3[_0x25efc8(0x1f1)](parseInt,process['env'][_0x25efc8(0x1a1)],0xa)||0x6;continue;case'3':logger[_0x25efc8(0x2aa)]({'event':_0x2588b3['CwUru'],'enabled':this['_enabled'],'idemTTL':this[_0x25efc8(0x2ad)],'allowReset':this['_allowReset'],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this[_0x25efc8(0x23d)]);continue;case'4':this[_0x25efc8(0x2ad)]=parseInt(process['env'][_0x25efc8(0x2be)],0xa)||0x258;continue;case'5':this['_initialized']=!![];continue;case'6':this['_counterTTLMap']={'yyyymm':parseInt(process['env'][_0x25efc8(0x19d)],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x25efc8(0x1da)]['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300};continue;case'7':this[_0x25efc8(0x284)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x2588b3[_0x25efc8(0x1e6)];continue;case'8':this['_allowReset']=process['env'][_0x25efc8(0x2a1)]==='true';continue;case'9':this['_defaultCodePattern']=process[_0x25efc8(0x1da)][_0x25efc8(0x232)]||_0x2588b3['GDxbG'];continue;case'10':this['_enabled']=_0x2588b3['ppqmH'](process['env']['IDGEN_ENABLED'],'true');continue;case'11':this[_0x25efc8(0x296)]=parseInt(process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'12':this[_0x25efc8(0x1e3)]=_0x2588b3[_0x25efc8(0x1c5)](parseInt,process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;}break;}}[a0_0x570cb3(0x1e0)](){const _0x547bb0=a0_0x570cb3;if(!this[_0x547bb0(0x1af)])this['_initConfig']();}get[a0_0x570cb3(0x1ec)](){const _0x17306c=a0_0x570cb3;return this['_ensureInitialized'](),this[_0x17306c(0x23d)];}get[a0_0x570cb3(0x28f)](){const _0x131ee3=a0_0x570cb3;return this[_0x131ee3(0x1e0)](),this[_0x131ee3(0x1ed)];}get[a0_0x570cb3(0x1f7)](){const _0x257317=a0_0x570cb3;return this['_ensureInitialized'](),this[_0x257317(0x2ad)];}get[a0_0x570cb3(0x203)](){const _0x4ea9cb=a0_0x570cb3;return this['_ensureInitialized'](),this[_0x4ea9cb(0x265)];}get[a0_0x570cb3(0x1dd)](){const _0x1f77f3=a0_0x570cb3;return this[_0x1f77f3(0x1e0)](),this['_defaultMaxRetry'];}get['defaultPinDigits'](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get['defaultSerialPattern'](){const _0x5d029f=a0_0x570cb3;return this['_ensureInitialized'](),this[_0x5d029f(0x284)];}get['defaultCodePattern'](){const _0x5bc7cb=a0_0x570cb3;return this['_ensureInitialized'](),this[_0x5bc7cb(0x281)];}get[a0_0x570cb3(0x21b)](){const _0x3844c3=a0_0x570cb3;return this[_0x3844c3(0x1e0)](),this[_0x3844c3(0x296)];}get[a0_0x570cb3(0x1fb)](){const _0x385e02=a0_0x570cb3;return this[_0x385e02(0x1e0)](),this['_reserveMaxTTL'];}[a0_0x570cb3(0x1b8)](){return this['enabled'];}[a0_0x570cb3(0x25c)](_0x4e3b00){const _0x5e22c4=a0_0x570cb3;if(typeof _0x4e3b00!=='string'||!RESOURCE_REGEX[_0x5e22c4(0x1fe)](_0x4e3b00))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x4e3b00)+')');}['_validateNumberParams'](_0x4d8f89){const _0x26d0b4=a0_0x570cb3,_0x5945f5={'DgweO':function(_0x1faea7,_0x108655){return _0x1faea7===_0x108655;},'kYRGl':_0x26d0b4(0x1b2),'qxmvG':function(_0x29dc28,_0x20ce14){return _0x29dc28==_0x20ce14;},'VQNzG':_0x26d0b4(0x1eb),'ymcpN':function(_0x443395,_0x10b5da){return _0x443395>_0x10b5da;},'hzdtu':_0x26d0b4(0x1a9),'PdJzE':function(_0x57d2e8,_0x42742c){return _0x57d2e8!==_0x42742c;},'oMYYu':_0x26d0b4(0x2bd),'iVafk':_0x26d0b4(0x22b)},{resource:_0x48e356,format:_0x395af9,prefix:_0x42306b,separator:_0x3c9bf7,numDigits:_0x55b677,reuseDelete:_0x11de43}=_0x4d8f89;this['_validateResource'](_0x48e356);const _0x841521=_0x5945f5['DgweO'](typeof _0x395af9,'string')?_0x395af9[_0x26d0b4(0x1fa)]():'';if(!ALLOWED_FORMATS[_0x26d0b4(0x260)](_0x841521))throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x26d0b4(0x28c)+[...ALLOWED_FORMATS][_0x26d0b4(0x2a4)](',\x20')+'\x20(got:\x20'+_0x395af9+')');if(!Number['isInteger'](_0x55b677)||_0x55b677<MIN_NUM_DIGITS||_0x55b677>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x5945f5['kYRGl'],'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x26d0b4(0x29f)+_0x55b677+')');const _0x221dd4=_0x5945f5[_0x26d0b4(0x1b5)](_0x42306b,null)?'':_0x42306b;if(typeof _0x221dd4!==_0x5945f5['VQNzG']||!PREFIX_REGEX['test'](_0x221dd4))throw new IdGeneratorError('IDGEN_INVALID_PREFIX',_0x26d0b4(0x26c)+PREFIX_REGEX+_0x26d0b4(0x29f)+JSON['stringify'](_0x42306b)+')');const _0x338c35=_0x3c9bf7==null?'':_0x3c9bf7;if(typeof _0x338c35!==_0x5945f5['VQNzG']||_0x5945f5[_0x26d0b4(0x1cb)](_0x338c35[_0x26d0b4(0x20c)],0x3)||SEPARATOR_FORBIDDEN['test'](_0x338c35))throw new IdGeneratorError(_0x5945f5[_0x26d0b4(0x2a7)],_0x26d0b4(0x2ac)+JSON[_0x26d0b4(0x20d)](_0x3c9bf7)+')');if(_0x11de43!=null&&_0x5945f5[_0x26d0b4(0x1ad)](typeof _0x11de43,_0x5945f5[_0x26d0b4(0x239)]))throw new IdGeneratorError(_0x5945f5[_0x26d0b4(0x1ac)],_0x26d0b4(0x1f9)+typeof _0x11de43+')');return{'resource':_0x48e356,'format':_0x841521,'prefix':_0x221dd4,'separator':_0x338c35,'numDigits':_0x55b677,'reuseDelete':_0x11de43===!![]};}[a0_0x570cb3(0x1ba)](_0x19ef95){const _0xa5019d=a0_0x570cb3,_0x375d34={'qdFRk':'string','HnZAK':function(_0x331f0e,_0x5877eb){return _0x331f0e===_0x5877eb;},'DMUuG':function(_0x4f064c,_0xb0ee3c){return _0x4f064c>_0xb0ee3c;}};if(typeof _0x19ef95!==_0x375d34['qdFRk']||_0x375d34[_0xa5019d(0x194)](_0x19ef95['length'],0x0)||_0x375d34['DMUuG'](_0x19ef95['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0xa5019d(0x226),_0xa5019d(0x26b)+MAX_PATTERN_LENGTH+_0xa5019d(0x262)+(_0x19ef95&&_0x19ef95['length'])+')');let _0xde5ad9=![];for(const _0x65ba8 of _0x19ef95){if(PLACEHOLDER_MAP[_0x65ba8]){_0xde5ad9=!![];break;}}if(!_0xde5ad9)throw new IdGeneratorError(_0xa5019d(0x226),'Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}['_validateTTL'](_0x16ec25){const _0x24a12d=a0_0x570cb3,_0x84ebe9={'AoAjZ':function(_0x313a02,_0x1979f9){return _0x313a02==_0x1979f9;},'aVsoS':function(_0x5d670c,_0x4e24a7){return _0x5d670c<_0x4e24a7;},'ewGNk':'IDGEN_INVALID_TTL'};if(_0x84ebe9['AoAjZ'](_0x16ec25,null))return undefined;if(!Number[_0x24a12d(0x280)](_0x16ec25)||_0x84ebe9['aVsoS'](_0x16ec25,0x1)||_0x16ec25>MAX_TTL)throw new IdGeneratorError(_0x84ebe9['ewGNk'],'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x16ec25+')');return _0x16ec25;}[a0_0x570cb3(0x27b)](_0x170c46){const _0x217b0e=a0_0x570cb3,_0x21c3ca={'vdUcb':function(_0x509363,_0x3e02bb){return _0x509363==_0x3e02bb;},'fPfFY':function(_0x13a9a2,_0x950051){return _0x13a9a2>_0x950051;}};if(_0x21c3ca[_0x217b0e(0x270)](_0x170c46,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x170c46)||_0x170c46<0x1||_0x21c3ca[_0x217b0e(0x2b5)](_0x170c46,MAX_RETRY_LIMIT))throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x217b0e(0x29f)+_0x170c46+')');return _0x170c46;}[a0_0x570cb3(0x287)](_0x356671){const _0x117d9a=a0_0x570cb3,_0x434f13={'EAWXN':function(_0x4263c2,_0x528baa){return _0x4263c2==_0x528baa;},'OIjLB':function(_0x1d106f,_0x46acdc){return _0x1d106f===_0x46acdc;},'ilJlb':function(_0x356ee9,_0xa17981){return _0x356ee9>_0xa17981;}};if(_0x434f13['EAWXN'](_0x356671,null))return undefined;if(typeof _0x356671!==_0x117d9a(0x1eb)||_0x434f13['OIjLB'](_0x356671['length'],0x0)||_0x434f13[_0x117d9a(0x243)](_0x356671['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x117d9a(0x22b),_0x117d9a(0x286)+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x356671;}['_validateReserveTTL'](_0x2713c8){const _0x2394e2=a0_0x570cb3,_0x4636d1={'uLdfk':function(_0x5ac364,_0x5351cb){return _0x5ac364==_0x5351cb;},'AeOuW':'IDGEN_INVALID_RESERVE_TTL'};if(_0x4636d1[_0x2394e2(0x23c)](_0x2713c8,null))return this[_0x2394e2(0x21b)];if(!Number['isInteger'](_0x2713c8)||_0x2713c8<MIN_RESERVE_TTL||_0x2713c8>this['reserveMaxTTL'])throw new IdGeneratorError(_0x4636d1[_0x2394e2(0x25a)],'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+'\x20seconds\x20(got:\x20'+_0x2713c8+')');return _0x2713c8;}[a0_0x570cb3(0x2a9)](_0x38e0a2){const _0x31ee4f=a0_0x570cb3,_0x59a2cd={'VIdxb':function(_0x36ebf1,_0x4f0528){return _0x36ebf1!==_0x4f0528;}};if(_0x59a2cd['VIdxb'](typeof _0x38e0a2,_0x31ee4f(0x1eb))||!RESERVATION_TOKEN_REGEX['test'](_0x38e0a2))throw new IdGeneratorError(_0x31ee4f(0x1e5),_0x31ee4f(0x196)+JSON['stringify'](_0x38e0a2)+')');return _0x38e0a2;}[a0_0x570cb3(0x1d5)](_0x45f170){const _0x241308={'btkzc':function(_0x40b1fd,_0x34b2b1){return _0x40b1fd(_0x34b2b1);}};return _0x241308['btkzc'](String,_0x45f170)['padStart'](0x2,'0');}['_buildFormatKey'](_0x1167c5,_0xbd5b45,_0x445ee8=new Date()){const _0x5e7cb7=a0_0x570cb3,_0xbe81a4={'QguwV':'yyyymm','MWqRL':'IDGEN_INVALID_FORMAT'},_0x479cd0=_0x445ee8[_0x5e7cb7(0x252)](),_0xa9f8a4=this['_pad2'](_0x445ee8['getMonth']()+0x1),_0xcaf1e4=this[_0x5e7cb7(0x1d5)](_0x445ee8['getDate']()),_0x44c845=_0xbd5b45||'_';let _0x46802e,_0x5981ce='';switch(_0x1167c5){case _0x5e7cb7(0x295):_0x46802e=_0x44c845+_0x5e7cb7(0x27e);break;case _0x5e7cb7(0x1d0):_0x5981ce=''+_0x479cd0,_0x46802e=_0x44c845+_0x5e7cb7(0x268)+_0x5981ce;break;case _0xbe81a4[_0x5e7cb7(0x24e)]:_0x5981ce=''+_0x479cd0+_0xa9f8a4,_0x46802e=_0x44c845+_0x5e7cb7(0x24f)+_0x5981ce;break;case _0x5e7cb7(0x1b6):_0x5981ce=''+_0x479cd0+_0xa9f8a4+_0xcaf1e4,_0x46802e=_0x44c845+_0x5e7cb7(0x246)+_0x5981ce;break;default:throw new IdGeneratorError(_0xbe81a4['MWqRL'],_0x5e7cb7(0x271)+_0x1167c5);}return{'formatKey':_0x46802e,'datePrefix':_0x5981ce};}[a0_0x570cb3(0x19e)](_0x2e902c,_0x46ba27){return this['keyPrefix']+'seq:'+_0x2e902c+':'+_0x46ba27;}['_buildReuseKey'](_0xba3dc0,_0x5dab89){const _0x7979b3=a0_0x570cb3;return this[_0x7979b3(0x28f)]+'reuse:'+_0xba3dc0+':'+_0x5dab89;}[a0_0x570cb3(0x208)](_0x4ac776,_0x2b25e4){const _0xf9ca12=a0_0x570cb3;return this['keyPrefix']+_0xf9ca12(0x1a5)+_0x4ac776+':'+_0x2b25e4;}[a0_0x570cb3(0x22d)](_0x452247){const _0x278ff6=a0_0x570cb3;return this[_0x278ff6(0x28f)]+'issued:'+_0x452247;}[a0_0x570cb3(0x291)](_0x37043e,_0x37060d){const _0x24c454=a0_0x570cb3;return this['keyPrefix']+_0x24c454(0x278)+_0x37043e+':'+_0x37060d;}[a0_0x570cb3(0x1a3)](_0x351df1){const _0x272078=a0_0x570cb3;return this[_0x272078(0x28f)]+'rsv:'+_0x351df1;}['_buildReservationIndexKey'](_0xdb3e2d,_0x30898e){const _0x54cb94=a0_0x570cb3;return this[_0x54cb94(0x28f)]+'rsv_idx:'+_0xdb3e2d+':'+_0x30898e;}[a0_0x570cb3(0x237)](){const _0x53b860=a0_0x570cb3;return this[_0x53b860(0x28f)]+'rsv:';}['_buildIdemKey'](_0x64c7e5,_0x2f5f8b,_0x5230ed,_0x238e34){const _0x4fcc39=a0_0x570cb3,_0x146aa8={'qvxHa':_0x4fcc39(0x29c)};if(_0x5230ed)return idempotencyManager['buildDeterministicKey'](_0x146aa8['qvxHa'],_0x64c7e5,_0x2f5f8b+':'+_0x5230ed+':'+_0x238e34);return idempotencyManager[_0x4fcc39(0x255)](_0x146aa8[_0x4fcc39(0x1ce)],_0x64c7e5,_0x2f5f8b+':'+_0x238e34);}[a0_0x570cb3(0x204)](_0x2f5533){return this['_counterTTLMap'][_0x2f5533]||0x0;}[a0_0x570cb3(0x2b8)]({format:_0x12d743,prefix:_0x22f3a7,datePrefix:_0x1e303a,separator:_0x54dd7d,numDigits:_0xef495,counterInt:_0x5e2435}){const _0x35cd8c=a0_0x570cb3,_0x16cfde={'LZoOZ':function(_0x26ec97,_0x2c5f8d){return _0x26ec97-_0x2c5f8d;},'FIEEr':function(_0xf07c63,_0x4a5603){return _0xf07c63>_0x4a5603;},'OtEOg':'IDGEN_COUNTER_OVERFLOW','dCQdo':function(_0x149c66,_0x493516){return _0x149c66===_0x493516;}},_0x314daa=_0x16cfde['LZoOZ'](Math['pow'](0xa,_0xef495),0x1);if(_0x16cfde['FIEEr'](_0x5e2435,_0x314daa))throw new IdGeneratorError(_0x16cfde['OtEOg'],'Counter\x20overflow:\x20'+_0x5e2435+'\x20exceeds\x20'+_0xef495+_0x35cd8c(0x1a0)+_0x314daa+_0x35cd8c(0x256),{'counterInt':_0x5e2435,'numDigits':_0xef495,'max':_0x314daa});const _0x4e517c=String(_0x5e2435)[_0x35cd8c(0x1f8)](_0xef495,'0');if(_0x16cfde['dCQdo'](_0x12d743,'text'))return _0x22f3a7?''+_0x22f3a7+_0x54dd7d+_0x4e517c:_0x4e517c;return _0x22f3a7?''+_0x22f3a7+_0x54dd7d+_0x1e303a+_0x54dd7d+_0x4e517c:''+_0x1e303a+_0x54dd7d+_0x4e517c;}['_parseNumber']({format:_0x18b294,prefix:_0x4963ce,separator:_0x5a5393,numDigits:_0x36d216,number:_0x2d463b}){const _0x425b48=a0_0x570cb3,_0x15741c={'uzFgT':'string','XYnWR':function(_0x411427,_0x199b15){return _0x411427===_0x199b15;},'IrSse':'IDGEN_INVALID_NUMBER','GIYyq':function(_0x1c8b01,_0xcfc43f){return _0x1c8b01||_0xcfc43f;},'PPsCA':function(_0x53e2d1,_0x4c8b6d){return _0x53e2d1!==_0x4c8b6d;},'XhmXK':function(_0x3c1f30,_0x214fae){return _0x3c1f30!==_0x214fae;},'wUBiL':function(_0x40e5da,_0x1f9f11){return _0x40e5da===_0x1f9f11;},'WKPId':_0x425b48(0x1d0),'LIhkO':_0x425b48(0x1b0),'BhHgb':function(_0x27d353,_0x8d5d36,_0x4041b7){return _0x27d353(_0x8d5d36,_0x4041b7);},'CEWya':function(_0x18acb2,_0x366519){return _0x18acb2||_0x366519;},'BgyUz':'text'};if(typeof _0x2d463b!==_0x15741c['uzFgT']||_0x15741c['XYnWR'](_0x2d463b[_0x425b48(0x20c)],0x0))throw new IdGeneratorError(_0x15741c[_0x425b48(0x2a3)],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x2657e5=_0x15741c[_0x425b48(0x221)](_0x5a5393,''),_0x4f9273=_0x15741c['XYnWR'](_0x2657e5,'')?[_0x2d463b]:_0x2d463b['split'](_0x2657e5);let _0x37ab75='',_0x54e640;if(_0x18b294==='text'){if(_0x4963ce){if(_0x15741c['PPsCA'](_0x4f9273['length'],0x2)||_0x15741c[_0x425b48(0x283)](_0x4f9273[0x0],_0x4963ce))throw new IdGeneratorError(_0x15741c[_0x425b48(0x2a3)],_0x425b48(0x2c1)+_0x2657e5+_0x425b48(0x27c)+_0x2d463b+')');_0x54e640=_0x4f9273[0x1];}else{if(_0x15741c['PPsCA'](_0x4f9273['length'],0x1))throw new IdGeneratorError(_0x15741c['IrSse'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x2d463b+')');_0x54e640=_0x4f9273[0x0];}}else{const _0x34ea53=_0x4963ce?0x3:0x2;if(_0x4f9273[_0x425b48(0x20c)]!==_0x34ea53)throw new IdGeneratorError(_0x15741c[_0x425b48(0x2a3)],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x2d463b+_0x425b48(0x264)+_0x34ea53+_0x425b48(0x197));let _0x5f5034=0x0;if(_0x4963ce){if(_0x15741c[_0x425b48(0x1d7)](_0x4f9273[_0x5f5034],_0x4963ce))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x425b48(0x2ab)+_0x4963ce+',\x20got\x20'+_0x4f9273[_0x5f5034]);_0x5f5034++;}_0x37ab75=_0x4f9273[_0x5f5034++];const _0x4d6f64=_0x15741c[_0x425b48(0x1be)](_0x18b294,_0x15741c[_0x425b48(0x1c3)])?/^\d{4}$/:_0x18b294===_0x15741c[_0x425b48(0x24d)]?/^\d{6}$/:/^\d{8}$/;if(!_0x4d6f64[_0x425b48(0x1fe)](_0x37ab75))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x425b48(0x235)+_0x18b294+':\x20'+_0x37ab75);_0x54e640=_0x4f9273[_0x5f5034];}if(!new RegExp('^\x5cd{'+_0x36d216+'}$')['test'](_0x54e640))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x425b48(0x267)+_0x36d216+'\x20digits\x20(got:\x20'+_0x54e640+')');const _0x52b02b=_0x15741c['BhHgb'](parseInt,_0x54e640,0xa),_0x2e21d2=_0x15741c['CEWya'](_0x4963ce,'_');let _0x2cd1ef;return _0x18b294===_0x15741c[_0x425b48(0x212)]?_0x2cd1ef=_0x2e21d2+'_text':_0x2cd1ef=_0x2e21d2+'_'+_0x18b294+'_'+_0x37ab75,{'formatKey':_0x2cd1ef,'counterInt':_0x52b02b,'datePrefix':_0x37ab75};}['_generateFromPattern'](_0x4e8461){let _0x2a95b4='';for(const _0x225ec6 of _0x4e8461){const _0x521684=PLACEHOLDER_MAP[_0x225ec6];if(_0x521684){const _0x5b7e6e=crypto['randomInt'](0x0,_0x521684['length']);_0x2a95b4+=_0x521684[_0x5b7e6e];}else _0x2a95b4+=_0x225ec6;}return _0x2a95b4;}async['_retrieveIdemCache'](_0x2e39bc){const _0x2c245f=a0_0x570cb3,_0x89737a={'HHfUo':_0x2c245f(0x1f3),'RXaDE':'idgen_idem_retrieve_error'};if(!_0x2e39bc)return null;try{const _0x54acfa=redisClient['getClient'](),_0x172215=await _0x54acfa['get'](_0x2e39bc);if(_0x172215)return logger['info']({'event':'idgen_idem_hit','key':_0x2e39bc},_0x89737a['HHfUo']),JSON[_0x2c245f(0x1df)](_0x172215);return null;}catch(_0xef0b50){return logger['warn']({'event':_0x89737a['RXaDE'],'error':_0xef0b50['message']},'Idempotency\x20retrieve\x20error'),null;}}async['_storeIdemCache'](_0x2790ee,_0x34107e){const _0x10bc0b=a0_0x570cb3,_0x45728d={'RCeOV':'idgen_idem_store_error','dZcrV':_0x10bc0b(0x1ea)};if(!_0x2790ee)return;try{const _0x297e7f=redisClient['getClient']();await _0x297e7f['setex'](_0x2790ee,this[_0x10bc0b(0x1f7)],JSON['stringify'](_0x34107e));}catch(_0x380346){logger[_0x10bc0b(0x222)]({'event':_0x45728d['RCeOV'],'error':_0x380346[_0x10bc0b(0x1c6)]},_0x45728d[_0x10bc0b(0x277)]);}}async[a0_0x570cb3(0x2bc)](_0x25d3d3,_0x2daad5){const _0x58eba4=a0_0x570cb3,_0x123665={'lIOXw':function(_0x40803a,_0x925650){return _0x40803a===_0x925650;},'fsEYD':'idgen_idem_nx_race_lost_but_empty','srARd':'idgen_idem_storenx_error'};if(!_0x25d3d3)return{'stored':!![],'winnerResult':null};try{const _0x570126=redisClient['getClient'](),_0x5548aa=JSON[_0x58eba4(0x20d)](_0x2daad5),_0x4c3a26=await _0x570126[_0x58eba4(0x20f)](_0x25d3d3,_0x5548aa,'EX',this[_0x58eba4(0x1f7)],'NX');if(_0x123665['lIOXw'](_0x4c3a26,'OK'))return{'stored':!![],'winnerResult':null};const _0x1e4239=await _0x570126[_0x58eba4(0x242)](_0x25d3d3);if(_0x1e4239)return{'stored':![],'winnerResult':JSON['parse'](_0x1e4239)};return logger[_0x58eba4(0x222)]({'event':_0x123665['fsEYD'],'key':_0x25d3d3},_0x58eba4(0x241)),{'stored':!![],'winnerResult':null};}catch(_0x2d7d2e){return logger['warn']({'event':_0x123665[_0x58eba4(0x206)],'error':_0x2d7d2e[_0x58eba4(0x1c6)]},_0x58eba4(0x21d)),{'stored':!![],'winnerResult':null};}}async[a0_0x570cb3(0x1bb)](_0x3cc3d3,_0x9c536,_0x52cbc9){const _0x9b985f=a0_0x570cb3;try{const _0x47a0c0=redisClient['getClient']();if(_0x52cbc9){const _0x739225=this['_buildActiveKey'](_0x3cc3d3,_0x9c536);await _0x47a0c0[_0x9b985f(0x1f6)](_0x739225);}else{const _0x16f71d=this[_0x9b985f(0x22d)](_0x3cc3d3);await _0x47a0c0['srem'](_0x16f71d,_0x9c536);}}catch(_0x46cc59){logger[_0x9b985f(0x222)]({'event':_0x9b985f(0x249),'error':_0x46cc59['message']},'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)');}}async[a0_0x570cb3(0x233)](_0x3a1a43,_0x163722,_0x4114a5,_0x3574de=0x0){const _0x38a4d2=a0_0x570cb3,_0x2200fe={'PzRLW':function(_0x1a1d73,_0x33fd6b){return _0x1a1d73>_0x33fd6b;},'TTPUY':'idgen_meta_update_error','vCinB':'Meta\x20update\x20error'};try{const _0x5218ab=redisClient['getClient'](),_0x19c9e4=this[_0x38a4d2(0x208)](_0x3a1a43,_0x163722),_0x4ce1d7=[];for(const [_0x436c8a,_0x17a02f]of Object['entries'](_0x4114a5)){_0x4ce1d7['push'](_0x436c8a,String(_0x17a02f));}if(_0x2200fe['PzRLW'](_0x4ce1d7['length'],0x0)){await _0x5218ab['hset'](_0x19c9e4,..._0x4ce1d7);if(_0x3574de>0x0)await _0x5218ab['expire'](_0x19c9e4,_0x3574de);}}catch(_0x18cecf){logger['warn']({'event':_0x2200fe[_0x38a4d2(0x1f4)],'error':_0x18cecf['message']},_0x2200fe['vCinB']);}}async[a0_0x570cb3(0x1ee)](_0xc94ace){const _0xdaffb9=a0_0x570cb3,_0x47562c={'XvdbY':function(_0x51b706,_0x5ef5f9){return _0x51b706(_0x5ef5f9);},'sYvmp':'idgen_idem_loser_release_error','ysEKF':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x2c6f8f=this['_validateNumberParams'](_0xc94ace),_0x2d7ab6=this['_validateIdempotencyKey'](_0xc94ace[_0xdaffb9(0x1fd)]),{resource:_0x4d84b8,format:_0x148340,prefix:_0x4e1135,separator:_0x2838e3,numDigits:_0x3bf308,reuseDelete:_0x417c75}=_0x2c6f8f,{formatKey:_0x4fd5cb,datePrefix:_0x229b8c}=this['_buildFormatKey'](_0x148340,_0x4e1135),_0x16d6cd=this[_0xdaffb9(0x19e)](_0x4d84b8,_0x4fd5cb),_0x323c25=this[_0xdaffb9(0x2bb)](_0x4d84b8,_0x4fd5cb),_0x4649c1=this[_0xdaffb9(0x204)](_0x148340);let _0x5a17c6=null;if(_0x2d7ab6){_0x5a17c6=this['_buildIdemKey']('number',_0x4d84b8,_0x4fd5cb,_0x2d7ab6);const _0x190c45=await this[_0xdaffb9(0x27d)](_0x5a17c6);if(_0x190c45)return _0x190c45;}const _0x4a6a57=redisClient[_0xdaffb9(0x1dc)](),_0x295ca0=await _0x4a6a57['eval'](LUA_GENERATE_NUMBER,0x2,_0x16d6cd,_0x323c25,_0x417c75?'1':'0',String(_0x4649c1)),_0x4bcc65=_0x295ca0[0x0],_0x3ac7ee=_0x295ca0[0x1]===0x1,_0xbbdcae=this[_0xdaffb9(0x2b8)]({'format':_0x148340,'prefix':_0x4e1135,'datePrefix':_0x229b8c,'separator':_0x2838e3,'numDigits':_0x3bf308,'counterInt':_0x4bcc65}),_0x428d4b={'value':_0xbbdcae,'counter':_0x4bcc65,'resource':_0x4d84b8,'formatKey':_0x4fd5cb,'isReused':_0x3ac7ee,'generatedAt':new Date()['toISOString']()},_0x4fe321=await this[_0xdaffb9(0x2bc)](_0x5a17c6,_0x428d4b);if(!_0x4fe321['stored']){try{await _0x4a6a57['eval'](LUA_RELEASE_NUMBER,0x1,_0x323c25,_0x47562c['XvdbY'](String,_0x4bcc65),_0x47562c[_0xdaffb9(0x28a)](String,_0x4649c1));}catch(_0x11038e){logger[_0xdaffb9(0x222)]({'event':_0x47562c['sYvmp'],'error':_0x11038e[_0xdaffb9(0x1c6)],'resource':_0x4d84b8,'formatKey':_0x4fd5cb,'counterInt':_0x4bcc65},_0xdaffb9(0x29e));}return logger[_0xdaffb9(0x2aa)]({'event':_0x47562c[_0xdaffb9(0x218)],'resource':_0x4d84b8,'formatKey':_0x4fd5cb,'counter':_0x4bcc65},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x4fe321[_0xdaffb9(0x253)];}return this['_updateMeta'](_0x4d84b8,_0x4fd5cb,{'lastValue':_0xbbdcae,'lastCounter':_0x4bcc65,'lastIsReused':_0x3ac7ee,'lastGeneratedAt':_0x428d4b[_0xdaffb9(0x245)]},_0x4649c1),logger['info']({'event':_0xdaffb9(0x19f),'resource':_0x4d84b8,'formatKey':_0x4fd5cb,'counter':_0x4bcc65,'isReused':_0x3ac7ee},_0xdaffb9(0x22f)+_0xbbdcae),_0x428d4b;}async['releaseNumber'](_0x58b774){const _0xe0b640=a0_0x570cb3,_0x2fd1ec={'udTow':_0xe0b640(0x22a),'MtYft':function(_0xb56613,_0x3fedef){return _0xb56613!==_0x3fedef;},'xhUuI':function(_0x46235b,_0x5a5351){return _0x46235b!==_0x5a5351;},'gefPg':function(_0xc01c92,_0x134835){return _0xc01c92===_0x134835;},'Ruvlh':function(_0x3689a9,_0x1c5dde){return _0x3689a9<_0x1c5dde;},'NeNtS':function(_0x1aebeb,_0x53b063){return _0x1aebeb(_0x53b063);}};if(!this[_0xe0b640(0x1ec)])throw new IdGeneratorError('IDGEN_DISABLED',_0x2fd1ec['udTow']);let _0x4af0bd,_0x3fb61c,_0x821930,_0x11670e;const _0x5c4aff=this['_validateIdempotencyKey'](_0x58b774[_0xe0b640(0x1fd)]);if(_0x2fd1ec['MtYft'](_0x58b774[_0xe0b640(0x201)],undefined)&&_0x58b774['counterInt']!==null){this['_validateResource'](_0x58b774[_0xe0b640(0x1f0)]),_0x4af0bd=_0x58b774[_0xe0b640(0x1f0)];if(_0x2fd1ec['xhUuI'](typeof _0x58b774['formatKey'],'string')||_0x2fd1ec['gefPg'](_0x58b774[_0xe0b640(0x250)][_0xe0b640(0x20c)],0x0))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x3fb61c=_0x58b774[_0xe0b640(0x250)];if(!Number['isInteger'](_0x58b774[_0xe0b640(0x201)])||_0x2fd1ec['Ruvlh'](_0x58b774[_0xe0b640(0x201)],0x1))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x58b774['counterInt']+')');_0x821930=_0x58b774[_0xe0b640(0x201)];const _0x16d187=_0x3fb61c[_0xe0b640(0x288)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x11670e=_0x16d187?_0x16d187[0x1]:_0xe0b640(0x295);}else{const _0x4ecf9c=this[_0xe0b640(0x225)](_0x58b774),_0xcdd4fb=this[_0xe0b640(0x216)]({'format':_0x4ecf9c['format'],'prefix':_0x4ecf9c['prefix'],'separator':_0x4ecf9c[_0xe0b640(0x1d6)],'numDigits':_0x4ecf9c[_0xe0b640(0x1c8)],'number':_0x58b774[_0xe0b640(0x1ee)]});_0x4af0bd=_0x4ecf9c[_0xe0b640(0x1f0)],_0x3fb61c=_0xcdd4fb[_0xe0b640(0x250)],_0x821930=_0xcdd4fb['counterInt'],_0x11670e=_0x4ecf9c['format'];}const _0x5b49d4=this[_0xe0b640(0x2bb)](_0x4af0bd,_0x3fb61c),_0x429b79=this[_0xe0b640(0x204)](_0x11670e);let _0x28cc65=null;if(_0x5c4aff){_0x28cc65=this[_0xe0b640(0x297)]('release',_0x4af0bd,_0x3fb61c,_0x5c4aff);const _0x2a85a8=await this['_retrieveIdemCache'](_0x28cc65);if(_0x2a85a8)return _0x2a85a8;}const _0x5dc134=redisClient['getClient']();await _0x5dc134['eval'](LUA_RELEASE_NUMBER,0x1,_0x5b49d4,_0x2fd1ec[_0xe0b640(0x2b2)](String,_0x821930),String(_0x429b79));const _0x4a2890={'released':!![],'resource':_0x4af0bd,'formatKey':_0x3fb61c,'counter':_0x821930,'releasedAt':new Date()['toISOString']()};return await this[_0xe0b640(0x1d2)](_0x28cc65,_0x4a2890),this[_0xe0b640(0x233)](_0x4af0bd,_0x3fb61c,{'lastReleasedCounter':_0x821930,'lastReleasedAt':_0x4a2890[_0xe0b640(0x2b6)]},_0x429b79),logger[_0xe0b640(0x2aa)]({'event':'idgen_number_released','resource':_0x4af0bd,'formatKey':_0x3fb61c,'counter':_0x821930},_0xe0b640(0x220)+_0x821930),_0x4a2890;}async[a0_0x570cb3(0x2c0)](_0x347182){const _0x58d6a8=a0_0x570cb3,_0x136f2f={'aprXM':_0x58d6a8(0x2a6),'yKslu':function(_0x29da1c,_0x284802){return _0x29da1c*_0x284802;},'ASrJn':'formatKey','FuDzY':_0x58d6a8(0x1c8),'OEdCH':function(_0x1665de,_0x48255f){return _0x1665de(_0x48255f);},'zkOcK':'createdAt','fNbRq':function(_0x1680d1,_0x4d771e){return _0x1680d1(_0x4d771e);},'qlvPf':function(_0x3232d5,_0x53f7da){return _0x3232d5(_0x53f7da);},'GbKmd':'idgen_reserve_overflow_compensation_error','vbnct':'value'};if(!this[_0x58d6a8(0x1ec)])throw new IdGeneratorError(_0x58d6a8(0x285),_0x58d6a8(0x1a2));const _0x1d3a34=this[_0x58d6a8(0x225)](_0x347182),_0x401e59=this[_0x58d6a8(0x29d)](_0x347182['ttl']),_0x44dfc7=this[_0x58d6a8(0x287)](_0x347182[_0x58d6a8(0x1fd)]),{resource:_0x431fc1,format:_0x4f7074,prefix:_0x1b773e,separator:_0x128769,numDigits:_0x4fb0ef,reuseDelete:_0x27acd4}=_0x1d3a34,{formatKey:_0x170be5,datePrefix:_0x1a0fde}=this[_0x58d6a8(0x25b)](_0x4f7074,_0x1b773e),_0x55227a=this['_buildSeqKey'](_0x431fc1,_0x170be5),_0x203233=this['_buildReuseKey'](_0x431fc1,_0x170be5),_0xc39320=this['_buildReservationIndexKey'](_0x431fc1,_0x170be5),_0x412ee8=this['_getCounterTTL'](_0x4f7074);let _0x41dea7=null;if(_0x44dfc7){_0x41dea7=this['_buildIdemKey'](_0x136f2f['aprXM'],_0x431fc1,_0x170be5,_0x44dfc7);const _0x13b162=await this[_0x58d6a8(0x27d)](_0x41dea7);if(_0x13b162)return _0x13b162;}const _0x53c1a6=crypto[_0x58d6a8(0x294)](),_0x3e4b38=this['_buildReservationKey'](_0x53c1a6),_0x24d2c7=this[_0x58d6a8(0x237)](),_0x1cbe72=Date[_0x58d6a8(0x1c2)](),_0x586501=_0x1cbe72+_0x136f2f[_0x58d6a8(0x261)](_0x401e59,0x3e8),_0x3f2f91=_0x136f2f[_0x58d6a8(0x261)](_0x401e59,0x3e8),_0x49c599=new Date(_0x1cbe72)[_0x58d6a8(0x1c4)](),_0x3b1d53=new Date(_0x586501)['toISOString'](),_0x1c9e41=[_0x58d6a8(0x1f0),_0x431fc1,_0x136f2f['ASrJn'],_0x170be5,_0x58d6a8(0x1bc),_0x4f7074,_0x58d6a8(0x23f),_0x1b773e,_0x58d6a8(0x1d6),_0x128769,_0x136f2f['FuDzY'],_0x136f2f[_0x58d6a8(0x1ae)](String,_0x4fb0ef),_0x58d6a8(0x26d),_0x1a0fde||'',_0x136f2f[_0x58d6a8(0x1f2)],_0x49c599,'expiresAt',_0x3b1d53,'ttlMs',_0x136f2f['OEdCH'](String,_0x3f2f91)];_0x44dfc7&&_0x1c9e41['push'](_0x58d6a8(0x1b1),_0x44dfc7);const _0x43859a=redisClient['getClient'](),_0x1ab8b6=await _0x43859a['eval'](LUA_RESERVE_NUMBER,0x3,_0x55227a,_0x203233,_0xc39320,_0x27acd4?'1':'0',_0x136f2f[_0x58d6a8(0x1ae)](String,_0x412ee8),_0x53c1a6,_0x3e4b38,_0x136f2f[_0x58d6a8(0x293)](String,_0x3f2f91),String(_0x586501),_0x136f2f['qlvPf'](String,_0x1cbe72),_0x24d2c7,..._0x1c9e41),_0x1a96cf=_0x1ab8b6[0x0],_0x3c4ff2=_0x1ab8b6[0x1]===0x1,_0x26bad=_0x1ab8b6[0x2]||0x0;let _0x5f235f;try{_0x5f235f=this[_0x58d6a8(0x2b8)]({'format':_0x4f7074,'prefix':_0x1b773e,'datePrefix':_0x1a0fde,'separator':_0x128769,'numDigits':_0x4fb0ef,'counterInt':_0x1a96cf});}catch(_0x2af1b0){try{await _0x43859a[_0x58d6a8(0x251)](LUA_CANCEL_RESERVATION,0x3,_0x3e4b38,_0xc39320,_0x203233,_0x53c1a6,_0x136f2f['qlvPf'](String,_0x412ee8));}catch(_0x187e13){logger[_0x58d6a8(0x222)]({'event':_0x136f2f[_0x58d6a8(0x26f)],'error':_0x187e13['message'],'resource':_0x431fc1,'formatKey':_0x170be5,'counterInt':_0x1a96cf,'token':_0x53c1a6},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x2af1b0;}try{await _0x43859a[_0x58d6a8(0x1c7)](_0x3e4b38,_0x136f2f[_0x58d6a8(0x1d1)],_0x5f235f);}catch(_0x309189){logger['warn']({'event':_0x58d6a8(0x209),'error':_0x309189[_0x58d6a8(0x1c6)],'resource':_0x431fc1,'formatKey':_0x170be5,'counterInt':_0x1a96cf,'token':_0x53c1a6},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0x168140={'token':_0x53c1a6,'value':_0x5f235f,'counter':_0x1a96cf,'resource':_0x431fc1,'formatKey':_0x170be5,'isReused':_0x3c4ff2,'createdAt':_0x49c599,'expiresAt':_0x3b1d53,'reapedCount':_0x26bad},_0x257dca=await this['_storeIdemCacheNX'](_0x41dea7,_0x168140);if(!_0x257dca['stored']){try{await _0x43859a['eval'](LUA_CANCEL_RESERVATION,0x3,_0x3e4b38,_0xc39320,_0x203233,_0x53c1a6,String(_0x412ee8));}catch(_0x4266a3){logger[_0x58d6a8(0x222)]({'event':'idgen_reserve_idem_loser_cancel_error','error':_0x4266a3['message'],'resource':_0x431fc1,'formatKey':_0x170be5,'counterInt':_0x1a96cf,'token':_0x53c1a6},_0x58d6a8(0x229));}return logger[_0x58d6a8(0x2aa)]({'event':'idgen_reserve_idem_loser','resource':_0x431fc1,'formatKey':_0x170be5,'counter':_0x1a96cf,'token':_0x53c1a6},_0x58d6a8(0x2b4)),_0x257dca['winnerResult'];}return this[_0x58d6a8(0x233)](_0x431fc1,_0x170be5,{'lastReservedCounter':_0x1a96cf,'lastReservedAt':_0x49c599,'lastReapedCount':_0x26bad},_0x412ee8),logger['info']({'event':_0x58d6a8(0x1c0),'resource':_0x431fc1,'formatKey':_0x170be5,'counter':_0x1a96cf,'isReused':_0x3c4ff2,'token':_0x53c1a6,'ttl':_0x401e59,'reapedCount':_0x26bad},'ID\x20Generator\x20number\x20reserved:\x20'+_0x5f235f+'\x20(token='+_0x53c1a6+')'),_0x168140;}async['confirmReservation'](_0x259b46){const _0x5c4898=a0_0x570cb3,_0x517ba9={'cmZIo':'IDGEN_DISABLED','GtQtt':_0x5c4898(0x289),'cSBMY':function(_0x145ad3,_0x49679a){return _0x145ad3!==_0x49679a;},'UZbzr':_0x5c4898(0x254),'rboZu':'text'};if(!this['enabled'])throw new IdGeneratorError(_0x517ba9[_0x5c4898(0x1cd)],'ID\x20Generator\x20is\x20disabled');const _0x83a2df=this['_validateReservationToken'](_0x259b46&&_0x259b46[_0x5c4898(0x248)]),_0x4d0d92=this['_validateIdempotencyKey'](_0x259b46&&_0x259b46[_0x5c4898(0x1fd)]);let _0x40216f=null;if(_0x4d0d92){_0x40216f=idempotencyManager[_0x5c4898(0x255)]('idgen',_0x517ba9[_0x5c4898(0x263)],_0x83a2df+':'+_0x4d0d92);const _0x3eacb2=await this['_retrieveIdemCache'](_0x40216f);if(_0x3eacb2)return _0x3eacb2;}const _0x3c9ded=await this['_getReservationContext'](_0x83a2df),_0x19903c=redisClient[_0x5c4898(0x1dc)](),_0x467b78=await _0x19903c['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x3c9ded[_0x5c4898(0x282)],_0x3c9ded['rsvIdxKey'],_0x83a2df);if(!_0x467b78||_0x517ba9[_0x5c4898(0x20b)](_0x467b78[0x0],0x1))throw new IdGeneratorError(_0x517ba9['UZbzr'],_0x5c4898(0x279)+_0x83a2df,{'token':_0x83a2df});const _0x49b975=parseInt(_0x467b78[0x1],0xa),_0x338dc3=_0x467b78[0x2],_0x5396dc=_0x467b78[0x3],_0x3324e2=new Date()[_0x5c4898(0x1c4)](),_0x172451={'confirmed':!![],'token':_0x83a2df,'value':_0x338dc3,'counter':_0x49b975,'resource':_0x3c9ded['resource'],'formatKey':_0x5396dc,'confirmedAt':_0x3324e2};await this[_0x5c4898(0x1d2)](_0x40216f,_0x172451);const _0x4b7239=_0x5396dc['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x490b54=_0x4b7239?_0x4b7239[0x1]:_0x517ba9[_0x5c4898(0x29b)],_0x41941a=this['_getCounterTTL'](_0x490b54);return this[_0x5c4898(0x233)](_0x3c9ded['resource'],_0x5396dc,{'lastConfirmedCounter':_0x49b975,'lastConfirmedAt':_0x3324e2},_0x41941a),logger['info']({'event':_0x5c4898(0x1f5),'resource':_0x3c9ded[_0x5c4898(0x1f0)],'formatKey':_0x5396dc,'counter':_0x49b975,'token':_0x83a2df},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0x338dc3+_0x5c4898(0x2b7)+_0x83a2df+')'),_0x172451;}async[a0_0x570cb3(0x219)](_0x32e9f3){const _0x4da257=a0_0x570cb3,_0x438835={'SJJth':_0x4da257(0x22a),'JVjyj':'text','SSOuM':function(_0x5b8991,_0xbffb25){return _0x5b8991(_0xbffb25);},'vTbrx':function(_0x424237,_0x4b3ead){return _0x424237!==_0x4b3ead;},'xoynA':_0x4da257(0x254)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x438835[_0x4da257(0x19c)]);const _0x191127=this[_0x4da257(0x2a9)](_0x32e9f3&&_0x32e9f3['token']),_0x23b30f=this[_0x4da257(0x287)](_0x32e9f3&&_0x32e9f3[_0x4da257(0x1fd)]);let _0xd40d10=null;if(_0x23b30f){_0xd40d10=idempotencyManager[_0x4da257(0x255)](_0x4da257(0x29c),'reserve_cancel',_0x191127+':'+_0x23b30f);const _0x4bdf54=await this[_0x4da257(0x27d)](_0xd40d10);if(_0x4bdf54)return _0x4bdf54;}const _0xfd1ee7=await this['_getReservationContext'](_0x191127),_0x4112da=this['_buildReuseKey'](_0xfd1ee7[_0x4da257(0x1f0)],_0xfd1ee7[_0x4da257(0x250)]),_0x33bf79=_0xfd1ee7[_0x4da257(0x250)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x47e0a6=_0x33bf79?_0x33bf79[0x1]:_0x438835['JVjyj'],_0x3b21da=this['_getCounterTTL'](_0x47e0a6),_0x45020a=redisClient[_0x4da257(0x1dc)](),_0x4feaa3=await _0x45020a['eval'](LUA_CANCEL_RESERVATION,0x3,_0xfd1ee7['rsvKey'],_0xfd1ee7[_0x4da257(0x1b7)],_0x4112da,_0x191127,_0x438835[_0x4da257(0x1a8)](String,_0x3b21da));if(!_0x4feaa3||_0x438835['vTbrx'](_0x4feaa3[0x0],0x1))throw new IdGeneratorError(_0x438835['xoynA'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x191127,{'token':_0x191127});const _0x45d120=parseInt(_0x4feaa3[0x1],0xa),_0x1559dd=_0x4feaa3[0x2],_0x34d89e=_0x4feaa3[0x3],_0x2f6a52=new Date()[_0x4da257(0x1c4)](),_0x130f0c={'cancelled':!![],'token':_0x191127,'value':_0x1559dd,'counter':_0x45d120,'resource':_0xfd1ee7['resource'],'formatKey':_0x34d89e,'releasedToReuse':!![],'cancelledAt':_0x2f6a52};return await this[_0x4da257(0x1d2)](_0xd40d10,_0x130f0c),this[_0x4da257(0x233)](_0xfd1ee7[_0x4da257(0x1f0)],_0x34d89e,{'lastCancelledCounter':_0x45d120,'lastCancelledAt':_0x2f6a52},_0x3b21da),logger['info']({'event':'idgen_reservation_cancelled','resource':_0xfd1ee7[_0x4da257(0x1f0)],'formatKey':_0x34d89e,'counter':_0x45d120,'token':_0x191127},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x1559dd+'\x20(token='+_0x191127+')'),_0x130f0c;}async['extendReservation'](_0x2c83b6){const _0x31228b=a0_0x570cb3,_0x25c219={'knhxS':'IDGEN_DISABLED','hiMbw':function(_0x50afd8,_0x490245){return _0x50afd8+_0x490245;},'OPBoo':function(_0x3fe027,_0x2ce196){return _0x3fe027(_0x2ce196);},'sxmBx':function(_0x3c3295,_0x1e15a3){return _0x3c3295!==_0x1e15a3;},'JGrBR':'text'};if(!this['enabled'])throw new IdGeneratorError(_0x25c219['knhxS'],_0x31228b(0x22a));const _0xd72b09=this[_0x31228b(0x2a9)](_0x2c83b6&&_0x2c83b6[_0x31228b(0x248)]),_0x1fa88f=this[_0x31228b(0x29d)](_0x2c83b6&&_0x2c83b6[_0x31228b(0x1e1)]),_0x1aadff=this['_validateIdempotencyKey'](_0x2c83b6&&_0x2c83b6[_0x31228b(0x1fd)]);let _0x1e04ef=null;if(_0x1aadff){_0x1e04ef=idempotencyManager['buildDeterministicKey']('idgen',_0x31228b(0x276),_0xd72b09+':'+_0x1aadff);const _0x599c9f=await this[_0x31228b(0x27d)](_0x1e04ef);if(_0x599c9f)return _0x599c9f;}const _0x80c68c=await this[_0x31228b(0x2ae)](_0xd72b09),_0x684b6e=Date['now'](),_0x69f053=_0x25c219[_0x31228b(0x23e)](_0x684b6e,_0x1fa88f*0x3e8),_0x272850=_0x1fa88f*0x3e8,_0x739473=new Date(_0x69f053)[_0x31228b(0x1c4)](),_0x1e64a7=redisClient[_0x31228b(0x1dc)](),_0x3fbd49=await _0x1e64a7[_0x31228b(0x251)](LUA_EXTEND_RESERVATION,0x2,_0x80c68c['rsvKey'],_0x80c68c['rsvIdxKey'],_0xd72b09,_0x25c219[_0x31228b(0x20e)](String,_0x272850),String(_0x69f053),_0x739473);if(!_0x3fbd49||_0x25c219['sxmBx'](_0x3fbd49[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x31228b(0x279)+_0xd72b09,{'token':_0xd72b09});const _0x9cf2dc=_0x3fbd49[0x1],_0x3810fc=parseInt(_0x3fbd49[0x2],0xa),_0x21f975=_0x3fbd49[0x3],_0x4edfc2=_0x3fbd49[0x4],_0x51c351=new Date(_0x684b6e)[_0x31228b(0x1c4)](),_0x138d53={'extended':!![],'token':_0xd72b09,'previousExpiresAt':_0x9cf2dc,'expiresAt':_0x739473,'ttlMs':_0x272850,'resource':_0x80c68c[_0x31228b(0x1f0)],'formatKey':_0x4edfc2,'counter':_0x3810fc,'value':_0x21f975,'extendedAt':_0x51c351};await this['_storeIdemCache'](_0x1e04ef,_0x138d53);const _0xaf4158=_0x4edfc2['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1f75a6=_0xaf4158?_0xaf4158[0x1]:_0x25c219[_0x31228b(0x269)],_0x4990ad=this[_0x31228b(0x204)](_0x1f75a6);return this[_0x31228b(0x233)](_0x80c68c[_0x31228b(0x1f0)],_0x4edfc2,{'lastExtendedCounter':_0x3810fc,'lastExtendedAt':_0x51c351},_0x4990ad),logger['info']({'event':'idgen_reservation_extended','resource':_0x80c68c['resource'],'formatKey':_0x4edfc2,'counter':_0x3810fc,'token':_0xd72b09,'ttl':_0x1fa88f},_0x31228b(0x21a)+_0x21f975+'\x20(token='+_0xd72b09+_0x31228b(0x290)+_0x1fa88f+'s)'),_0x138d53;}async[a0_0x570cb3(0x1c1)](_0x1ccce3){const _0x5d99c2=a0_0x570cb3,_0x32e8de={'iulOM':_0x5d99c2(0x22a),'Qikvf':_0x5d99c2(0x254),'vvjME':function(_0x11dec4,_0xff31b3){return _0x11dec4===_0xff31b3;},'oYnxP':'number'};if(!this[_0x5d99c2(0x1ec)])throw new IdGeneratorError('IDGEN_DISABLED',_0x32e8de[_0x5d99c2(0x2bf)]);const _0xe020c1=this[_0x5d99c2(0x2a9)](_0x1ccce3&&_0x1ccce3[_0x5d99c2(0x248)]),_0x1e20ac=this['_buildReservationKey'](_0xe020c1),_0x14c842=redisClient[_0x5d99c2(0x1dc)](),_0x200871=_0x14c842[_0x5d99c2(0x24b)]();_0x200871['hgetall'](_0x1e20ac),_0x200871[_0x5d99c2(0x273)](_0x1e20ac);const _0x1f4d45=await _0x200871['exec'](),_0x1116ba=_0x1f4d45&&_0x1f4d45[0x0]&&_0x1f4d45[0x0][0x1],_0x22118d=_0x1f4d45&&_0x1f4d45[0x1]&&_0x1f4d45[0x1][0x1];if(!_0x1116ba||Object[_0x5d99c2(0x274)](_0x1116ba)[_0x5d99c2(0x20c)]===0x0)throw new IdGeneratorError(_0x32e8de[_0x5d99c2(0x298)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0xe020c1,{'token':_0xe020c1});return{'token':_0xe020c1,'resource':_0x1116ba[_0x5d99c2(0x1f0)]||null,'formatKey':_0x1116ba[_0x5d99c2(0x250)]||null,'format':_0x1116ba['format']||null,'prefix':_0x1116ba['prefix']||'','separator':_0x1116ba['separator']||'','numDigits':_0x1116ba['numDigits']?parseInt(_0x1116ba['numDigits'],0xa):null,'datePrefix':_0x1116ba[_0x5d99c2(0x26d)]||'','counter':_0x1116ba[_0x5d99c2(0x1e9)]?parseInt(_0x1116ba[_0x5d99c2(0x1e9)],0xa):null,'value':_0x1116ba['value']||null,'isReused':_0x1116ba['isReused']==='1'||_0x32e8de['vvjME'](_0x1116ba['isReused'],0x1),'createdAt':_0x1116ba['createdAt']||null,'expiresAt':_0x1116ba[_0x5d99c2(0x2a0)]||null,'ttlRemainingMs':_0x32e8de['vvjME'](typeof _0x22118d,_0x32e8de[_0x5d99c2(0x1bd)])&&_0x22118d>=0x0?_0x22118d:null};}async[a0_0x570cb3(0x2ae)](_0x2f52c4){const _0x2536d2=a0_0x570cb3,_0xefbb70={'vLiey':'resource'},_0x5dd721=this[_0x2536d2(0x1a3)](_0x2f52c4),_0x25fdc6=redisClient[_0x2536d2(0x1dc)](),_0x1c8086=await _0x25fdc6[_0x2536d2(0x21c)](_0x5dd721,_0xefbb70[_0x2536d2(0x214)],_0x2536d2(0x250)),_0x7dd58a=_0x1c8086&&_0x1c8086[0x0],_0x2ee855=_0x1c8086&&_0x1c8086[0x1];if(!_0x7dd58a||!_0x2ee855)throw new IdGeneratorError(_0x2536d2(0x254),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x2f52c4,{'token':_0x2f52c4});return{'resource':_0x7dd58a,'formatKey':_0x2ee855,'rsvKey':_0x5dd721,'rsvIdxKey':this[_0x2536d2(0x238)](_0x7dd58a,_0x2ee855)};}async['random'](_0x1b4c37){const _0x180b3d=a0_0x570cb3,_0x413874={'zxDIS':_0x180b3d(0x22a),'JTbhA':_0x180b3d(0x266),'rLrvZ':function(_0x4c5353,_0x564e9b){return _0x4c5353<_0x564e9b;},'zEiHK':_0x180b3d(0x231),'QSzso':'idgen_random_generated','imrJu':function(_0x140ff0,_0x4ff496){return _0x140ff0||_0x4ff496;}};if(!this['enabled'])throw new IdGeneratorError(_0x180b3d(0x285),_0x413874[_0x180b3d(0x211)]);this['_validateResource'](_0x1b4c37['resource']),this[_0x180b3d(0x1ba)](_0x1b4c37[_0x180b3d(0x259)]);const _0x1c68b8=this['_validateTTL'](_0x1b4c37[_0x180b3d(0x1e1)]),_0x2247a4=this[_0x180b3d(0x27b)](_0x1b4c37[_0x180b3d(0x1ca)]),_0x22be40=this['_validateIdempotencyKey'](_0x1b4c37[_0x180b3d(0x1fd)]),_0x1d8ecb=_0x1b4c37[_0x180b3d(0x1db)]===!![],{resource:_0x18c913,pattern:_0x677e0e}=_0x1b4c37;let _0x267184=null;if(_0x22be40){_0x267184=this[_0x180b3d(0x297)](_0x413874[_0x180b3d(0x19b)],_0x18c913,null,_0x22be40);const _0x282733=await this[_0x180b3d(0x27d)](_0x267184);if(_0x282733)return _0x282733;}const _0x26ae99=redisClient['getClient']();let _0x20a994=null,_0x5ae8b1=0x0;if(!_0x1d8ecb)_0x20a994=this[_0x180b3d(0x1a4)](_0x677e0e),_0x5ae8b1=0x1;else{for(let _0xbcb11=0x0;_0x413874['rLrvZ'](_0xbcb11,_0x2247a4);_0xbcb11++){_0x5ae8b1++;const _0x41cba0=this[_0x180b3d(0x1a4)](_0x677e0e);if(_0x1c68b8){const _0x6e7ecb=this['_buildActiveKey'](_0x18c913,_0x41cba0),_0x5490bd=await _0x26ae99[_0x180b3d(0x20f)](_0x6e7ecb,'1','EX',_0x1c68b8,'NX');if(_0x5490bd==='OK'){_0x20a994=_0x41cba0;break;}}else{const _0x488bc6=this['_buildIssuedKey'](_0x18c913),_0x60bec1=await _0x26ae99[_0x180b3d(0x1bf)](_0x488bc6,_0x41cba0);if(_0x60bec1===0x1){_0x20a994=_0x41cba0;break;}}}if(_0x20a994===null)throw new IdGeneratorError(_0x413874['zEiHK'],_0x180b3d(0x22e)+_0x2247a4+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x18c913,'pattern':_0x677e0e,'maxRetry':_0x2247a4});}const _0x51e967={'value':_0x20a994,'resource':_0x18c913,'pattern':_0x677e0e,'attemptCount':_0x5ae8b1,'generatedAt':new Date()['toISOString']()};_0x1c68b8&&_0x1d8ecb&&(_0x51e967['expiresAt']=new Date(Date[_0x180b3d(0x1c2)]()+_0x1c68b8*0x3e8)['toISOString']());const _0x56898a=await this[_0x180b3d(0x2bc)](_0x267184,_0x51e967);if(!_0x56898a['stored'])return _0x1d8ecb&&await this['_undoRandomReservation'](_0x18c913,_0x20a994,_0x1c68b8),logger['info']({'event':_0x180b3d(0x19a),'resource':_0x18c913,'pattern':_0x677e0e,'value':_0x20a994},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x56898a[_0x180b3d(0x253)];return logger['info']({'event':_0x413874[_0x180b3d(0x22c)],'resource':_0x18c913,'pattern':_0x677e0e,'attemptCount':_0x5ae8b1,'ensureUnique':_0x1d8ecb,'ttl':_0x413874['imrJu'](_0x1c68b8,0x0)},_0x180b3d(0x26a)+_0x20a994),_0x51e967;}async[a0_0x570cb3(0x28b)](_0x2c121f){const _0x32c0d4=a0_0x570cb3,_0x4ec847={'WZeFI':function(_0x2ae6c5,_0x3655f8){return _0x2ae6c5==_0x3655f8;},'HobVq':function(_0x4680af,_0x279a34){return _0x4680af<_0x279a34;},'DtbIk':function(_0x4181bf,_0xb7c706){return _0x4181bf>_0xb7c706;}},_0x41a72b=_0x4ec847['WZeFI'](_0x2c121f['digits'],null)?this[_0x32c0d4(0x240)]:_0x2c121f[_0x32c0d4(0x200)];if(!Number['isInteger'](_0x41a72b)||_0x4ec847['HobVq'](_0x41a72b,MIN_PIN_DIGITS)||_0x4ec847['DtbIk'](_0x41a72b,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x32c0d4(0x258),_0x32c0d4(0x1e4)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x41a72b+')');const _0x4c11a3='9'[_0x32c0d4(0x1de)](_0x41a72b);return this['random']({'resource':_0x2c121f['resource'],'pattern':_0x4c11a3,'ensureUnique':_0x2c121f['ensureUnique']===!![],'ttl':_0x2c121f[_0x32c0d4(0x1e1)],'maxRetry':_0x2c121f[_0x32c0d4(0x1ca)],'idempotencyKey':_0x2c121f[_0x32c0d4(0x1fd)]});}async[a0_0x570cb3(0x24a)](_0xc96715){const _0x5d8aa1=a0_0x570cb3,_0x29e487=_0xc96715[_0x5d8aa1(0x259)]||this['defaultSerialPattern'];return this['random']({'resource':_0xc96715['resource'],'pattern':_0x29e487,'ensureUnique':_0xc96715[_0x5d8aa1(0x1db)]!==![],'ttl':_0xc96715['ttl'],'maxRetry':_0xc96715['maxRetry'],'idempotencyKey':_0xc96715[_0x5d8aa1(0x1fd)]});}async[a0_0x570cb3(0x26e)](_0x14cbca){const _0x218276=a0_0x570cb3,_0x401a2f=_0x14cbca['pattern']||this['defaultCodePattern'];return this[_0x218276(0x266)]({'resource':_0x14cbca[_0x218276(0x1f0)],'pattern':_0x401a2f,'ensureUnique':_0x14cbca['ensureUnique']!==![],'ttl':_0x14cbca['ttl'],'maxRetry':_0x14cbca[_0x218276(0x1ca)],'idempotencyKey':_0x14cbca['idempotencyKey']});}async['consume'](_0x3a7ace){const _0x2bf6cf=a0_0x570cb3,_0x50fe64={'Ijbbl':'ID\x20Generator\x20is\x20disabled','SICbZ':'IDGEN_INVALID_NUMBER','vVOOZ':function(_0x595b0b,_0x359858){return _0x595b0b>_0x359858;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x50fe64[_0x2bf6cf(0x28d)]);this['_validateResource'](_0x3a7ace[_0x2bf6cf(0x1f0)]);if(typeof _0x3a7ace['value']!==_0x2bf6cf(0x1eb)||_0x3a7ace[_0x2bf6cf(0x215)]['length']===0x0)throw new IdGeneratorError(_0x50fe64[_0x2bf6cf(0x292)],'value\x20is\x20required');const {resource:_0xeaa2c1,value:_0x59d055}=_0x3a7ace,_0x116149=redisClient['getClient'](),_0x4e44d2=this[_0x2bf6cf(0x291)](_0xeaa2c1,_0x59d055),_0x85c79a=this[_0x2bf6cf(0x22d)](_0xeaa2c1),[_0x356146,_0x45df11]=await Promise[_0x2bf6cf(0x230)]([_0x116149[_0x2bf6cf(0x1f6)](_0x4e44d2),_0x116149[_0x2bf6cf(0x21f)](_0x85c79a,_0x59d055)]),_0x158e43=_0x50fe64[_0x2bf6cf(0x272)](_0x356146+_0x45df11,0x0);return logger[_0x2bf6cf(0x2aa)]({'event':_0x2bf6cf(0x247),'resource':_0xeaa2c1,'value':_0x59d055,'consumed':_0x158e43},_0x2bf6cf(0x20a)+_0x59d055),{'consumed':_0x158e43,'resource':_0xeaa2c1,'value':_0x59d055,'consumedAt':new Date()[_0x2bf6cf(0x1c4)]()};}async['peek'](_0x5077c3){const _0x21abec=a0_0x570cb3,_0x26e6a8={'svpek':_0x21abec(0x1ee),'WXgGR':function(_0x344ed1,_0x523ffb){return _0x344ed1||_0x523ffb;},'wbGXe':_0x21abec(0x266)};if(!this['enabled'])throw new IdGeneratorError(_0x21abec(0x285),'ID\x20Generator\x20is\x20disabled');this[_0x21abec(0x25c)](_0x5077c3['resource']);const _0x132ba2=_0x5077c3['mode']||_0x26e6a8['svpek'],_0x25c8a6=redisClient[_0x21abec(0x1dc)]();if(_0x132ba2==='number'){const _0x441f17=(_0x5077c3['format']||_0x21abec(0x295))['toLowerCase']();if(!ALLOWED_FORMATS[_0x21abec(0x260)](_0x441f17))throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x21abec(0x275)+_0x5077c3[_0x21abec(0x1bc)]);const {formatKey:_0x1d84b7}=this['_buildFormatKey'](_0x441f17,_0x5077c3[_0x21abec(0x23f)]||''),_0x12af0b=this['_buildSeqKey'](_0x5077c3[_0x21abec(0x1f0)],_0x1d84b7),_0x1dc894=this['_buildReuseKey'](_0x5077c3['resource'],_0x1d84b7),[_0x519994,_0x2299c0]=await Promise[_0x21abec(0x230)]([_0x25c8a6[_0x21abec(0x242)](_0x12af0b),_0x25c8a6['zcard'](_0x1dc894)]);return{'resource':_0x5077c3['resource'],'mode':_0x26e6a8[_0x21abec(0x198)],'formatKey':_0x1d84b7,'currentCounter':parseInt(_0x519994,0xa)||0x0,'reusePoolSize':_0x26e6a8[_0x21abec(0x2b0)](_0x2299c0,0x0)};}if(_0x132ba2==='random'){const _0x1144fb=this['_buildIssuedKey'](_0x5077c3['resource']),_0x511626=await _0x25c8a6[_0x21abec(0x217)](_0x1144fb);return{'resource':_0x5077c3[_0x21abec(0x1f0)],'mode':_0x26e6a8[_0x21abec(0x1cf)],'issuedCount':_0x26e6a8[_0x21abec(0x2b0)](_0x511626,0x0)};}throw new IdGeneratorError(_0x21abec(0x1d9),_0x21abec(0x23b)+_0x132ba2);}async['getInfo'](_0x573b39){const _0x30b7c3=a0_0x570cb3,_0x231268={'szAZA':_0x30b7c3(0x1ee)},_0x26d3f5=await this[_0x30b7c3(0x228)](_0x573b39);if(_0x26d3f5[_0x30b7c3(0x1c9)]===_0x231268[_0x30b7c3(0x1aa)]){const _0x1b33e4=redisClient[_0x30b7c3(0x1dc)](),_0x59dc44=this[_0x30b7c3(0x208)](_0x573b39[_0x30b7c3(0x1f0)],_0x26d3f5['formatKey']),_0x1b8ae7=this['_buildReuseKey'](_0x573b39[_0x30b7c3(0x1f0)],_0x26d3f5['formatKey']),[_0x2d02f0,_0x7b9c60]=await Promise['all']([_0x1b33e4[_0x30b7c3(0x2b1)](_0x59dc44),_0x1b33e4['zrange'](_0x1b8ae7,0x0,-0x1)]);return{..._0x26d3f5,'reusePoolValues':_0x7b9c60[_0x30b7c3(0x25d)](_0x1f4f10=>parseInt(_0x1f4f10,0xa)),'meta':_0x2d02f0&&Object[_0x30b7c3(0x274)](_0x2d02f0)[_0x30b7c3(0x20c)]>0x0?_0x2d02f0:null};}return _0x26d3f5;}async[a0_0x570cb3(0x2a5)](_0x2d6efb){const _0x3d7e92=a0_0x570cb3,_0x5d5324={'SGHEI':_0x3d7e92(0x285),'tmgIM':_0x3d7e92(0x22a),'sCNaH':_0x3d7e92(0x210),'pulKR':function(_0x254393,_0x417245){return _0x254393===_0x417245;},'kdYxf':'number','RFxTv':_0x3d7e92(0x207),'zETtl':_0x3d7e92(0x1b4),'BnDtX':_0x3d7e92(0x236),'RzzzI':function(_0x323ba4,_0x4230a4){return _0x323ba4===_0x4230a4;},'YRskE':'idgen_reset','YpmpV':_0x3d7e92(0x1d9)};if(!this[_0x3d7e92(0x1ec)])throw new IdGeneratorError(_0x5d5324[_0x3d7e92(0x1b3)],_0x5d5324['tmgIM']);if(!this['allowReset'])throw new IdGeneratorError(_0x3d7e92(0x25f),_0x5d5324[_0x3d7e92(0x193)]);this['_validateResource'](_0x2d6efb[_0x3d7e92(0x1f0)]);const _0xa2653d=_0x2d6efb[_0x3d7e92(0x1c9)]||_0x3d7e92(0x1ee),_0x9fc8d=redisClient[_0x3d7e92(0x1dc)]();if(_0x5d5324['pulKR'](_0xa2653d,_0x5d5324[_0x3d7e92(0x1a7)])){const _0x1cd6fc=(_0x2d6efb['format']||_0x3d7e92(0x295))[_0x3d7e92(0x1fa)]();if(!ALLOWED_FORMATS[_0x3d7e92(0x260)](_0x1cd6fc))throw new IdGeneratorError(_0x5d5324['RFxTv'],_0x3d7e92(0x275)+_0x2d6efb['format']);const {formatKey:_0x23c85d}=this[_0x3d7e92(0x25b)](_0x1cd6fc,_0x2d6efb['prefix']||''),_0x4ef3c7=this['_buildSeqKey'](_0x2d6efb['resource'],_0x23c85d),_0x288d9f=this[_0x3d7e92(0x2bb)](_0x2d6efb['resource'],_0x23c85d),_0x253e19=this[_0x3d7e92(0x208)](_0x2d6efb['resource'],_0x23c85d);return await _0x9fc8d[_0x3d7e92(0x1f6)](_0x4ef3c7,_0x288d9f,_0x253e19),logger['warn']({'event':'idgen_reset','resource':_0x2d6efb['resource'],'mode':_0x5d5324[_0x3d7e92(0x1a7)],'formatKey':_0x23c85d},_0x3d7e92(0x1e2)+_0x2d6efb['resource']+':'+_0x23c85d),{'reset':!![],'resource':_0x2d6efb['resource'],'mode':_0x5d5324['kdYxf'],'formatKey':_0x23c85d,'deletedKeys':[_0x3d7e92(0x1a6),_0x5d5324[_0x3d7e92(0x227)],_0x5d5324['BnDtX']]};}if(_0x5d5324[_0x3d7e92(0x244)](_0xa2653d,'random')){const _0xa14b37=this['_buildIssuedKey'](_0x2d6efb[_0x3d7e92(0x1f0)]);return await _0x9fc8d['del'](_0xa14b37),logger[_0x3d7e92(0x222)]({'event':_0x5d5324[_0x3d7e92(0x205)],'resource':_0x2d6efb['resource'],'mode':'random'},'ID\x20Generator\x20reset:\x20random:'+_0x2d6efb[_0x3d7e92(0x1f0)]),{'reset':!![],'resource':_0x2d6efb[_0x3d7e92(0x1f0)],'mode':'random','deletedKeys':[_0x3d7e92(0x2a2)]};}throw new IdGeneratorError(_0x5d5324['YpmpV'],'Unknown\x20mode:\x20'+_0xa2653d);}}function a0_0x15de(_0xb33517,_0x534973){_0xb33517=_0xb33517-0x193;const _0x12f32a=a0_0x12f3();let _0x15dea9=_0x12f32a[_0xb33517];if(a0_0x15de['ZZQZKe']===undefined){var _0x20d701=function(_0x25d538){const _0x4c4d65='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x29acd2='',_0x61f010='';for(let _0x266167=0x0,_0x34d192,_0x5aacb0,_0x1a6b5f=0x0;_0x5aacb0=_0x25d538['charAt'](_0x1a6b5f++);~_0x5aacb0&&(_0x34d192=_0x266167%0x4?_0x34d192*0x40+_0x5aacb0:_0x5aacb0,_0x266167++%0x4)?_0x29acd2+=String['fromCharCode'](0xff&_0x34d192>>(-0x2*_0x266167&0x6)):0x0){_0x5aacb0=_0x4c4d65['indexOf'](_0x5aacb0);}for(let _0x47d27e=0x0,_0x1f95df=_0x29acd2['length'];_0x47d27e<_0x1f95df;_0x47d27e++){_0x61f010+='%'+('00'+_0x29acd2['charCodeAt'](_0x47d27e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x61f010);};a0_0x15de['IYNOtL']=_0x20d701,a0_0x15de['qhQXKK']={},a0_0x15de['ZZQZKe']=!![];}const _0x3e4a2a=_0x12f32a[0x0],_0x356fd5=_0xb33517+_0x3e4a2a,_0x3f8182=a0_0x15de['qhQXKK'][_0x356fd5];return!_0x3f8182?(_0x15dea9=a0_0x15de['IYNOtL'](_0x15dea9),a0_0x15de['qhQXKK'][_0x356fd5]=_0x15dea9):_0x15dea9=_0x3f8182,_0x15dea9;}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module['exports']=instance,module[a0_0x570cb3(0x1d8)][a0_0x570cb3(0x23a)]=IdGeneratorError;
1
+ 'use strict';const a0_0x3cfc5a=a0_0x3885;(function(_0x2aac52,_0x2b967e){const _0x500679=a0_0x3885,_0x11eee0=_0x2aac52();while(!![]){try{const _0x38b020=parseInt(_0x500679(0x284))/0x1+parseInt(_0x500679(0x260))/0x2+parseInt(_0x500679(0x2c6))/0x3*(-parseInt(_0x500679(0x2ab))/0x4)+-parseInt(_0x500679(0x220))/0x5*(-parseInt(_0x500679(0x239))/0x6)+-parseInt(_0x500679(0x2cd))/0x7+-parseInt(_0x500679(0x25b))/0x8+parseInt(_0x500679(0x2dc))/0x9;if(_0x38b020===_0x2b967e)break;else _0x11eee0['push'](_0x11eee0['shift']());}catch(_0x295aed){_0x11eee0['push'](_0x11eee0['shift']());}}}(a0_0x5ee4,0x65d2c));function a0_0x5ee4(){const _0x4e1c64=['D3rVCui','BwvZC2fNzq','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','Dg9Rzw4','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','D2fYBG','x2TLEvbYzwzPEa','zgvMyxvSDfbPBKrPz2L0CW','CentvuC','CMfUzg9T','ufDlyNq','zwv2y3y','x2rLzMf1BhrdB2rLugf0DgvYBG','swrhzw5LCMf0B3jfCNjVCG','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','AwrNzw5FCMvZzxq','CMvSzwfZzwrbDa','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','CgLU','x2j1AwXKu2vXs2v5','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','Cgf0DgvYBG','y3jLyxrLzef0','y291BNrLCKLUDa','y2jsDhi','D1nStxK','x2j1AwXKsxnZDwvKs2v5','v3fhu08','CMvZzxj2zv9JB25MAxjT','x2vUC3vYzuLUAxrPywXPEMvK','AwrLBxbVDgvUy3LlzxK','mxW5FdH8mtf8mNWXmhW1Fdb8mtj8nNW0FdD8mW','otK5os05otK5','B0D0Ehy','ywXS','yvnQz0e','x2j1AwXKqwn0AxzLs2v5','rLfequm','zxHWAxjL','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','zgvMyxvSDe1HEfjLDhj5','BeT4BuC','s2DTCLO','zM9vCKS','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','ywn0AxzLoG','AxnZDwvK','mdeYmZq1nJC4oq','tenMuMm','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','Aw5MBW','Ce9MyMK','D2LUBMvYuMvZDwX0','BgvUz3rO','s01sqKu','CMy6AwrNzw46','zgv0ywLSCW','ENrUEvC','Dg9mB3DLCKnHC2u','Bu9KENi','surhru5Frevgqvvmvf9nqvHFuKvuuLK','ExL5Eq','x2LUAxrPywXPEMvK','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','yNvPBgrezxrLCM1PBMLZDgLJs2v5','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','C3rYAw5N','surhru5Frevgqvvmvf9qsu5FreLhsvrt','BNPyrhq','AgfZ','x3bHzdi','EuH0s2K','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','wKnNrum','DhrS','z2v0rNvSBfLLyxi','zgLNAxrZ','x2j1AwXKuMvZzxj2yxrPB25lzxK','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','ExL5Ew1Tzgq','y2fUy2vSuMvZzxj2yxrPB24','lcaR','uKPbyKy','AePzD0C','y29UzMLYBvjLC2vYDMf0Aw9U','qwfoBLe','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','ANLIy0K','Dgv4Da','suqGr2vUzxjHDg9Yig51BwjLCJOG','surhru5Fsu5wquXjrf9gt1jnqvq','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','sLzlAwu','z2v0','zxHLyW','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','Cff6Ceq','lwrPz2L0ignHCgfJAxr5icG','AgzAv24','x3L5ExLTBv8','x3zHBgLKyxrLuMvZzxj2zvruta','zLPfy0q','AM9PBG','C2vWyxjHDg9Y','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','y29UC3vTzq','AeDfwxy','zw52','zxHWB3j0CW','vML2ywO','BLbItK0','DMP3DKW','surhru5Fsu5wquXjrf9quKvgsvG','D1vOBvu','x3rLEhq','Cg93','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','x3n0B3jLswrLBunHy2HL','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','y3j5ChrV','mJaWnwfxrgTWuq','t2nhEgC','x2rLzMf1BhrtzxjPywXqyxr0zxjU','ChvZAa','suqGr2vUzxjHDg9YihjLC2v0oIa','surhru5Fsu5wquXjrf9uveW','x2DLDenVDw50zxjuveW','zxzHBa','zKfNrM8','CNn2s2v5','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','zxH0zw5KuMvZzxj2yxrPB24','BNbRD3O','x2nVDw50zxjuveXnyxa','x3jLDhjPzxzLswrLBunHy2HL','Bwf0y2G','rLLZs04','zgvMyxvSDenVzgvqyxr0zxjU','ExL5Ew1T','s3Lmwvm','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','x2rLzMf1BhrnyxHszxrYEq','zM9YBwf0s2v5','nZu1nePkvu1iuq','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','B2fwzuC','surhru5Fsu5wquXjrf9ovu1crvi','EMnHCMq','y0jIvMK','x2j1AwXKtwv0yuTLEq','x2LKzw1uveW','EeDmyKW','A2v5CW','vgvqyNy','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','x3zHBgLKyxrLvfrm','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','CMv1C2u6','mdeYmZq1nJC4oufcq0rfrG','DgvZDa','zMj5uKi','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','q29esee','z2v0tw9UDgG','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','C3rVCMvK','AwrNzw5Fy29UC3vTzwq','CgfYC2u','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','CgfKu3rHCNq','x2zVCM1HDe51BwjLCG','BeDbrvC','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','CMvZzxj2zu51BwjLCG','x2j1AwXKrM9YBwf0s2v5','CMvZB3vYy2u','DKzjv3e','mtq0mtG4ogjnshLpta','rK9QBe8','suj2Bg0','zgf0zvbYzwzPEa','CMvZzxj2zv9Jyw5JzwW','nZa3nZK2tMX4yxjj','quzRBu8','uvnyqLq','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','AhnLDa','icHNB3q6ia','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','x3zHBgLKyxrLugf0DgvYBG','BNvTrgLNAxrZ','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','surhru5Fq09vtLrfuL9uveXFrefjtfK','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','rfj6yK4','zw50CMLLCW','CgvLAW','Dhj1zq','BNvTyMvY','ChjLzML4','AMLLqwi','CMvWzwf0','ignOyxjZicHNB3qGBgvUz3rOoIa','ENjHBMDL','z1f6Ewu','revqzxe','x3zHBgLKyxrLtwf4uMv0CNK','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','vw5RBM93BIbTB2rLoIa','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','x2fSBg93uMvZzxq','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','x2LUAxrdB25MAwC','yvPIsxC','sKHHAwG','AxnZDwvKoG','x2j1AwXKuMv1C2vlzxK','ndq2odCXrKrtuxfJ','Bwf4uMv0CNK','Dg9ju09tDhjPBMC','BMfTzq','wfPRs1m','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','z2v0q2XPzw50','wKfyvM4','zwn5tLa','B0DQz3q','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','zgvMyxvSDfnLCMLHBfbHDhrLCM4','lI9YzwrPCY1JBgLLBNq','surhru5Fq09vtLrfuL9pvKvsrKXpvW','ywXSB3DszxnLDa','AgDLDgfSBa','uvncu3O','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','zw5ZDxjLvw5PCxvL','x3zHBgLKyxrLuMvZB3vYy2u','Cu9jDgi','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','C3bSAxq','CgLWzwXPBMu','CMvZzxj2zv9LEhrLBMq','vLnvrhC','x2j1AwXKswrLBuTLEq','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','C2nHCMq','ihnLy29UzhmGkgDVDdOG','surhru5Fsu5wquXjrf9ut0TftG','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','A2v5uhjLzML4','surhru5Fsu5wquXjrf9esuDjvfm','surhru5Fsu5wquXjrf9srvnpvvjdrq','nhvkqNnMvW','AxnszxvZzwq','CMfUzg9Tvvvjra','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','x3jLC2vYDMvezwzHDwX0vfrm','suqGr2vUzxjHDg9YihjHBMrVBtOG','yLnoELe','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','zw5HyMXLza','zM9YBwf0','v1vkCMi','zgvS','BMjdDNy','x3vWzgf0zu1LDge','De5qBwG','sgT6DgO','CMfUzg9Tsw50','AwrLBvruta','ugLlugS','x2rLzMf1BhrqAw5eAwDPDhm','CMvZzxj2zu1HEfruta','rMfPBgvKihrVignVBxbLBNnHDguGCMvZzxj2yxrPB24Gywz0zxiGy291BNrLCIbVDMvYzMXVDW','y29Kzq','CNn2swr4s2v5','D0P1zhq','CMvZzxj2zq','Bwv0ytO','mtaXmZK5n2LlteLrBG','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','r25KCuG','x3n0B3jLswrLBunHy2HLtLG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','DMfSDwu','ntGXnJmZnu5HAeXuAq','wuDuEhG','Ag1Nzxq','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','z2v0sw5MBW','sKP1yM8','C3rYAw5NAwz5','surhru5Fsu5wquXjrf9nt0rf','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','AxnjBNrLz2vY','surhru5FreLtqujmruq','yNfKwwm','BM93','zxHWAxjLC0f0','uKzlq3y','nde0ntiYmeDRuufHzG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','x2DLBMvYyxrLrNjVBvbHDhrLCM4','Afz4v0e','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','C3HNrMG','x2vUywjSzwq','AwrNzw4'];a0_0x5ee4=function(){return _0x4e1c64;};return a0_0x5ee4();}const crypto=require(a0_0x3cfc5a(0x21f)),redisClient=require(a0_0x3cfc5a(0x291)),{logger}=require('./logger'),idempotencyManager=require(a0_0x3cfc5a(0x2ae)),ALLOWED_FORMATS=new Set([a0_0x3cfc5a(0x1fe),a0_0x3cfc5a(0x1e3),a0_0x3cfc5a(0x234),a0_0x3cfc5a(0x1f5)]),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_0x3cfc5a(0x1d5),CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x3cfc5a(0x248),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_0x3cfc5a(0x2c7),LUA_RELEASE_NUMBER=a0_0x3cfc5a(0x24b),LUA_RESERVE_NUMBER=a0_0x3cfc5a(0x2a0),LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x3cfc5a(0x1b4);class IdGeneratorError extends Error{constructor(_0x3b582b,_0x42b899,_0x41a697=null){const _0x40dab0=a0_0x3cfc5a;super(_0x42b899||_0x3b582b),this[_0x40dab0(0x287)]=_0x40dab0(0x1b3),this['code']=_0x3b582b,this[_0x40dab0(0x1de)]=_0x41a697;}}function a0_0x3885(_0x44eb0c,_0x22c689){_0x44eb0c=_0x44eb0c-0x1ad;const _0x5ee443=a0_0x5ee4();let _0x388523=_0x5ee443[_0x44eb0c];if(a0_0x3885['Joqbbb']===undefined){var _0x5e04c0=function(_0x4e3459){const _0x9fecc2='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x198b85='',_0x3596a1='';for(let _0x23b1a0=0x0,_0x1ee809,_0x5d4f50,_0x5d0920=0x0;_0x5d4f50=_0x4e3459['charAt'](_0x5d0920++);~_0x5d4f50&&(_0x1ee809=_0x23b1a0%0x4?_0x1ee809*0x40+_0x5d4f50:_0x5d4f50,_0x23b1a0++%0x4)?_0x198b85+=String['fromCharCode'](0xff&_0x1ee809>>(-0x2*_0x23b1a0&0x6)):0x0){_0x5d4f50=_0x9fecc2['indexOf'](_0x5d4f50);}for(let _0x1188ac=0x0,_0x2d389c=_0x198b85['length'];_0x1188ac<_0x2d389c;_0x1188ac++){_0x3596a1+='%'+('00'+_0x198b85['charCodeAt'](_0x1188ac)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3596a1);};a0_0x3885['ZjXuAd']=_0x5e04c0,a0_0x3885['REYjsU']={},a0_0x3885['Joqbbb']=!![];}const _0x26668c=_0x5ee443[0x0],_0x5aeb88=_0x44eb0c+_0x26668c,_0x1113a5=a0_0x3885['REYjsU'][_0x5aeb88];return!_0x1113a5?(_0x388523=a0_0x3885['ZjXuAd'](_0x388523),a0_0x3885['REYjsU'][_0x5aeb88]=_0x388523):_0x388523=_0x1113a5,_0x388523;}class IdGenerator{constructor(){const _0x2fcd4f=a0_0x3cfc5a;this['_initialized']=![],this['_enabled']=null,this[_0x2fcd4f(0x2ea)]=null,this[_0x2fcd4f(0x240)]=null,this[_0x2fcd4f(0x27d)]=null,this['_defaultMaxRetry']=null,this[_0x2fcd4f(0x2be)]=null,this[_0x2fcd4f(0x222)]=null,this[_0x2fcd4f(0x1b2)]=null,this[_0x2fcd4f(0x22f)]=null,this[_0x2fcd4f(0x2af)]=null,this['_reserveMaxTTL']=null;}[a0_0x3cfc5a(0x27f)](){const _0x37f489=a0_0x3cfc5a,_0x328312={'AjrwO':_0x37f489(0x1c5),'xUvhK':'idgen_config_init','RFKCv':function(_0x40ebe5,_0x19a46d,_0x148595){return _0x40ebe5(_0x19a46d,_0x148595);},'BpaTL':function(_0x4e0e7f,_0x32c6d3){return _0x4e0e7f===_0x32c6d3;},'nPbNM':_0x37f489(0x270),'jfGvW':function(_0x16d369,_0x261af9,_0x1317ae){return _0x16d369(_0x261af9,_0x1317ae);}},_0x54ee84=_0x328312['AjrwO'][_0x37f489(0x29b)]('|');let _0x31ca54=0x0;while(!![]){switch(_0x54ee84[_0x31ca54++]){case'0':this['_defaultCodePattern']=process['env'][_0x37f489(0x201)]||_0x37f489(0x1c6);continue;case'1':this[_0x37f489(0x2ea)]=_0x37f489(0x1dd);continue;case'2':this['_defaultMaxRetry']=parseInt(process[_0x37f489(0x213)][_0x37f489(0x1e2)],0xa)||0xa;continue;case'3':logger['info']({'event':_0x328312['xUvhK'],'enabled':this['_enabled'],'idemTTL':this['_idemTTL'],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x37f489(0x237)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x37f489(0x2af)],'reserveMaxTTL':this['_reserveMaxTTL']},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this[_0x37f489(0x2e2)]);continue;case'4':this['_reserveMaxTTL']=_0x328312[_0x37f489(0x2db)](parseInt,process[_0x37f489(0x213)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'5':this['_defaultSerialPattern']=process[_0x37f489(0x213)]['IDGEN_DEFAULT_SERIAL_PATTERN']||'XXXX-XXXX-XXXX-XXXX';continue;case'6':this['_reserveDefaultTTL']=_0x328312['RFKCv'](parseInt,process[_0x37f489(0x213)][_0x37f489(0x1fc)],0xa)||DEFAULT_RESERVE_TTL;continue;case'7':this[_0x37f489(0x1e4)]=!![];continue;case'8':this['_idemTTL']=_0x328312['RFKCv'](parseInt,process['env']['IDGEN_IDEM_TTL'],0xa)||0x258;continue;case'9':this[_0x37f489(0x2e2)]=_0x328312['BpaTL'](process[_0x37f489(0x213)]['IDGEN_ENABLED'],'true');continue;case'10':this['_defaultPinDigits']=parseInt(process[_0x37f489(0x213)][_0x37f489(0x1e9)],0xa)||0x6;continue;case'11':this[_0x37f489(0x27d)]=process[_0x37f489(0x213)]['IDGEN_ALLOW_RESET']===_0x328312[_0x37f489(0x216)];continue;case'12':this['_counterTTLMap']={'yyyymm':_0x328312['jfGvW'](parseInt,process['env'][_0x37f489(0x289)],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x37f489(0x26b)],0xa)||0x2a300};continue;}break;}}['_ensureInitialized'](){if(!this['_initialized'])this['_initConfig']();}get[a0_0x3cfc5a(0x2b3)](){const _0xc13104=a0_0x3cfc5a;return this[_0xc13104(0x1c3)](),this['_enabled'];}get[a0_0x3cfc5a(0x2a8)](){return this['_ensureInitialized'](),this['_keyPrefix'];}get['idemTTL'](){const _0x460c29=a0_0x3cfc5a;return this[_0x460c29(0x1c3)](),this[_0x460c29(0x240)];}get[a0_0x3cfc5a(0x293)](){const _0x1c785e=a0_0x3cfc5a;return this['_ensureInitialized'](),this[_0x1c785e(0x27d)];}get[a0_0x3cfc5a(0x1ce)](){const _0x2c0edc=a0_0x3cfc5a;return this[_0x2c0edc(0x1c3)](),this['_defaultMaxRetry'];}get[a0_0x3cfc5a(0x1ad)](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get['defaultSerialPattern'](){const _0x204a9a=a0_0x3cfc5a;return this[_0x204a9a(0x1c3)](),this[_0x204a9a(0x222)];}get[a0_0x3cfc5a(0x233)](){return this['_ensureInitialized'](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x3f338e=a0_0x3cfc5a;return this[_0x3f338e(0x1c3)](),this['_reserveDefaultTTL'];}get[a0_0x3cfc5a(0x2bf)](){return this['_ensureInitialized'](),this['_reserveMaxTTL'];}['isEnabled'](){const _0x3422b1=a0_0x3cfc5a;return this[_0x3422b1(0x2b3)];}[a0_0x3cfc5a(0x298)](_0x514a55){const _0x15fe9a=a0_0x3cfc5a,_0x558d3d={'jVYOj':_0x15fe9a(0x2aa)};if(typeof _0x514a55!==_0x15fe9a(0x1e8)||!RESOURCE_REGEX['test'](_0x514a55))throw new IdGeneratorError(_0x558d3d['jVYOj'],_0x15fe9a(0x1b7)+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x15fe9a(0x2d3)](_0x514a55)+')');}['_validateNumberParams'](_0x52d587){const _0x3adcb0=a0_0x3cfc5a,_0x102936={'PWKbt':function(_0x575c30,_0x297182){return _0x575c30===_0x297182;},'pQzpD':_0x3adcb0(0x1e8),'pOfbi':function(_0x4969b5,_0x10c3c9){return _0x4969b5==_0x10c3c9;},'cBbVi':function(_0x4db8d8,_0x5f0e3f){return _0x4db8d8!==_0x5f0e3f;},'hVxWA':_0x3adcb0(0x218),'nbCvv':'IDGEN_INVALID_SEPARATOR','Wdmnh':function(_0x2f58ca,_0x3ed7ae){return _0x2f58ca!=_0x3ed7ae;},'WUJrb':_0x3adcb0(0x2aa)},{resource:_0x41b794,format:_0x1bae00,prefix:_0x668aa6,separator:_0x21e90c,numDigits:_0x18e03f,reuseDelete:_0x2f9a23}=_0x52d587;this[_0x3adcb0(0x298)](_0x41b794);const _0x58392e=_0x102936[_0x3adcb0(0x1b0)](typeof _0x1bae00,_0x102936[_0x3adcb0(0x208)])?_0x1bae00['toLowerCase']():'';if(!ALLOWED_FORMATS[_0x3adcb0(0x1eb)](_0x58392e))throw new IdGeneratorError(_0x3adcb0(0x200),'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x3adcb0(0x20e)](',\x20')+_0x3adcb0(0x265)+_0x1bae00+')');if(!Number['isInteger'](_0x18e03f)||_0x18e03f<MIN_NUM_DIGITS||_0x18e03f>MAX_NUM_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x3adcb0(0x1d7)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x18e03f+')');const _0x4a6a5c=_0x102936[_0x3adcb0(0x1d9)](_0x668aa6,null)?'':_0x668aa6;if(_0x102936[_0x3adcb0(0x23e)](typeof _0x4a6a5c,_0x3adcb0(0x1e8))||!PREFIX_REGEX[_0x3adcb0(0x249)](_0x4a6a5c))throw new IdGeneratorError(_0x102936[_0x3adcb0(0x2df)],_0x3adcb0(0x1ba)+PREFIX_REGEX+'\x20(got:\x20'+JSON[_0x3adcb0(0x2d3)](_0x668aa6)+')');const _0x297e4b=_0x21e90c==null?'':_0x21e90c;if(typeof _0x297e4b!==_0x102936['pQzpD']||_0x297e4b['length']>0x3||SEPARATOR_FORBIDDEN[_0x3adcb0(0x249)](_0x297e4b))throw new IdGeneratorError(_0x102936[_0x3adcb0(0x2b7)],_0x3adcb0(0x26c)+JSON[_0x3adcb0(0x2d3)](_0x21e90c)+')');if(_0x102936['Wdmnh'](_0x2f9a23,null)&&_0x102936[_0x3adcb0(0x23e)](typeof _0x2f9a23,'boolean'))throw new IdGeneratorError(_0x102936[_0x3adcb0(0x2b5)],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x2f9a23+')');return{'resource':_0x41b794,'format':_0x58392e,'prefix':_0x4a6a5c,'separator':_0x297e4b,'numDigits':_0x18e03f,'reuseDelete':_0x2f9a23===!![]};}[a0_0x3cfc5a(0x268)](_0x565085){const _0x25b7fe=a0_0x3cfc5a,_0x7d21e={'QSBSz':'string','jybcI':function(_0x21a156,_0x5a8549){return _0x21a156>_0x5a8549;}};if(typeof _0x565085!==_0x7d21e[_0x25b7fe(0x295)]||_0x565085['length']===0x0||_0x7d21e[_0x25b7fe(0x1fd)](_0x565085[_0x25b7fe(0x1db)],MAX_PATTERN_LENGTH))throw new IdGeneratorError('IDGEN_INVALID_PATTERN',_0x25b7fe(0x1e7)+MAX_PATTERN_LENGTH+_0x25b7fe(0x275)+(_0x565085&&_0x565085['length'])+')');let _0x4c6d88=![];for(const _0x4dbc43 of _0x565085){if(PLACEHOLDER_MAP[_0x4dbc43]){_0x4c6d88=!![];break;}}if(!_0x4c6d88)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_0x3cfc5a(0x245)](_0x9a926b){const _0x59f8dd=a0_0x3cfc5a,_0x51def={'RjlVr':function(_0x6e6aa8,_0x2692a0){return _0x6e6aa8<_0x2692a0;},'DsAOz':_0x59f8dd(0x225)};if(_0x9a926b==null)return undefined;if(!Number['isInteger'](_0x9a926b)||_0x51def['RjlVr'](_0x9a926b,0x1)||_0x9a926b>MAX_TTL)throw new IdGeneratorError(_0x51def['DsAOz'],_0x59f8dd(0x28a)+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x9a926b+')');return _0x9a926b;}['_validateMaxRetry'](_0x350e56){const _0x4d5cb0=a0_0x3cfc5a,_0x14c2f5={'rHLGm':function(_0x167d8c,_0x1a0809){return _0x167d8c==_0x1a0809;}};if(_0x14c2f5['rHLGm'](_0x350e56,null))return this[_0x4d5cb0(0x1ce)];if(!Number['isInteger'](_0x350e56)||_0x350e56<0x1||_0x350e56>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY',_0x4d5cb0(0x22a)+MAX_RETRY_LIMIT+_0x4d5cb0(0x265)+_0x350e56+')');return _0x350e56;}[a0_0x3cfc5a(0x27a)](_0x4e4a84){const _0x27faac=a0_0x3cfc5a,_0x9fd9bc={'fZEcD':function(_0xa0b156,_0x4c3dd0){return _0xa0b156!==_0x4c3dd0;},'DEPeq':'string','oGjgt':function(_0x316a2e,_0x2bf17a){return _0x316a2e>_0x2bf17a;}};if(_0x4e4a84==null)return undefined;if(_0x9fd9bc[_0x27faac(0x20d)](typeof _0x4e4a84,_0x9fd9bc[_0x27faac(0x278)])||_0x4e4a84['length']===0x0||_0x9fd9bc[_0x27faac(0x28e)](_0x4e4a84['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x27faac(0x2aa),'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x4e4a84;}['_validateReserveTTL'](_0x4e16b7){const _0x4d3f99=a0_0x3cfc5a,_0x362c5a={'PSqcq':function(_0x2611df,_0x44720f){return _0x2611df<_0x44720f;}};if(_0x4e16b7==null)return this['reserveDefaultTTL'];if(!Number[_0x4d3f99(0x2d6)](_0x4e16b7)||_0x362c5a['PSqcq'](_0x4e16b7,MIN_RESERVE_TTL)||_0x4e16b7>this[_0x4d3f99(0x2bf)])throw new IdGeneratorError(_0x4d3f99(0x1d2),_0x4d3f99(0x2d5)+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0x4d3f99(0x2a3)+_0x4e16b7+')');return _0x4e16b7;}[a0_0x3cfc5a(0x2a1)](_0x309519){const _0x5284b1=a0_0x3cfc5a,_0x1a7bdd={'YGTxx':_0x5284b1(0x1e8)};if(typeof _0x309519!==_0x1a7bdd[_0x5284b1(0x2ce)]||!RESERVATION_TOKEN_REGEX['test'](_0x309519))throw new IdGeneratorError(_0x5284b1(0x2a4),'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON['stringify'](_0x309519)+')');return _0x309519;}[a0_0x3cfc5a(0x1ec)](_0x70418f){const _0x22dd6f=a0_0x3cfc5a;return String(_0x70418f)[_0x22dd6f(0x253)](0x2,'0');}[a0_0x3cfc5a(0x258)](_0x1eed2a,_0x2ac0ed,_0xef2691=new Date()){const _0x13bba4=a0_0x3cfc5a,_0x4c4cc5={'fAgFo':_0x13bba4(0x1e3),'eevcv':'yyyymm','RJAbF':_0x13bba4(0x200)},_0x557d24=_0xef2691[_0x13bba4(0x1f1)](),_0x16e68f=this[_0x13bba4(0x1ec)](_0xef2691[_0x13bba4(0x24d)]()+0x1),_0x202227=this[_0x13bba4(0x1ec)](_0xef2691['getDate']()),_0x18bc72=_0x2ac0ed||'_';let _0x329ec4,_0x181fbf='';switch(_0x1eed2a){case'text':_0x329ec4=_0x18bc72+'_text';break;case _0x4c4cc5[_0x13bba4(0x228)]:_0x181fbf=''+_0x557d24,_0x329ec4=_0x18bc72+'_yyyy_'+_0x181fbf;break;case _0x4c4cc5[_0x13bba4(0x1b1)]:_0x181fbf=''+_0x557d24+_0x16e68f,_0x329ec4=_0x18bc72+_0x13bba4(0x20b)+_0x181fbf;break;case'yyyymmdd':_0x181fbf=''+_0x557d24+_0x16e68f+_0x202227,_0x329ec4=_0x18bc72+'_yyyymmdd_'+_0x181fbf;break;default:throw new IdGeneratorError(_0x4c4cc5[_0x13bba4(0x1f8)],'Unknown\x20format:\x20'+_0x1eed2a);}return{'formatKey':_0x329ec4,'datePrefix':_0x181fbf};}['_buildSeqKey'](_0x128327,_0x100b04){return this['keyPrefix']+'seq:'+_0x128327+':'+_0x100b04;}[a0_0x3cfc5a(0x283)](_0x39f640,_0x19e4d2){const _0x22f6be=a0_0x3cfc5a;return this[_0x22f6be(0x2a8)]+_0x22f6be(0x247)+_0x39f640+':'+_0x19e4d2;}[a0_0x3cfc5a(0x23f)](_0x3001bc,_0x1d74d9){const _0x2cc0ad=a0_0x3cfc5a;return this[_0x2cc0ad(0x2a8)]+_0x2cc0ad(0x2c5)+_0x3001bc+':'+_0x1d74d9;}[a0_0x3cfc5a(0x1c0)](_0x13af50){const _0x309d83=a0_0x3cfc5a;return this['keyPrefix']+_0x309d83(0x282)+_0x13af50;}[a0_0x3cfc5a(0x1ca)](_0xbf276d,_0xabebba){const _0x482c99=a0_0x3cfc5a;return this['keyPrefix']+_0x482c99(0x1d3)+_0xbf276d+':'+_0xabebba;}['_buildReservationKey'](_0x5aca11){const _0x3e48af=a0_0x3cfc5a;return this[_0x3e48af(0x2a8)]+'rsv:'+_0x5aca11;}[a0_0x3cfc5a(0x246)](_0x543337,_0x2daaad){return this['keyPrefix']+'rsv_idx:'+_0x543337+':'+_0x2daaad;}['_buildReservationKeyPrefix'](){const _0x32b757=a0_0x3cfc5a;return this[_0x32b757(0x2a8)]+'rsv:';}[a0_0x3cfc5a(0x29f)](_0x529de7,_0x37ba5d,_0x153826,_0x5bed4a){const _0xcf41e7=a0_0x3cfc5a,_0x370a02={'JJubo':_0xcf41e7(0x2e3)};if(_0x153826)return idempotencyManager['buildDeterministicKey'](_0xcf41e7(0x2e3),_0x529de7,_0x37ba5d+':'+_0x153826+':'+_0x5bed4a);return idempotencyManager[_0xcf41e7(0x1e6)](_0x370a02[_0xcf41e7(0x2d2)],_0x529de7,_0x37ba5d+':'+_0x5bed4a);}['_getCounterTTL'](_0x144914){return this['_counterTTLMap'][_0x144914]||0x0;}[a0_0x3cfc5a(0x254)]({format:_0x709025,prefix:_0x4879c3,datePrefix:_0x4bdee2,separator:_0x3d7ef7,numDigits:_0x2b7051,counterInt:_0x2fc1ea}){const _0x5c5842=a0_0x3cfc5a,_0xb70c55={'aZbIw':function(_0x84a412,_0x3e619f){return _0x84a412(_0x3e619f);}},_0x3975d2=Math[_0x5c5842(0x21b)](0xa,_0x2b7051)-0x1;if(_0x2fc1ea>_0x3975d2)throw new IdGeneratorError(_0x5c5842(0x292),'Counter\x20overflow:\x20'+_0x2fc1ea+'\x20exceeds\x20'+_0x2b7051+_0x5c5842(0x209)+_0x3975d2+').\x20Increase\x20numDigits.',{'counterInt':_0x2fc1ea,'numDigits':_0x2b7051,'max':_0x3975d2});const _0x16ed93=_0xb70c55[_0x5c5842(0x280)](String,_0x2fc1ea)['padStart'](_0x2b7051,'0');if(_0x709025==='text')return _0x4879c3?''+_0x4879c3+_0x3d7ef7+_0x16ed93:_0x16ed93;return _0x4879c3?''+_0x4879c3+_0x3d7ef7+_0x4bdee2+_0x3d7ef7+_0x16ed93:''+_0x4bdee2+_0x3d7ef7+_0x16ed93;}['_parseNumber']({format:_0x5d517e,prefix:_0x6d9adc,separator:_0xa36433,numDigits:_0x2841c7,number:_0x236ab8}){const _0xfd556c=a0_0x3cfc5a,_0x596b59={'foUrK':function(_0x1f16fa,_0x3ad5b3){return _0x1f16fa!==_0x3ad5b3;},'wtoqB':_0xfd556c(0x1e8),'bSNzQ':'IDGEN_INVALID_NUMBER','rLHzo':function(_0x31bb2b,_0xa560b8){return _0x31bb2b===_0xa560b8;},'aSjgA':function(_0x3a0a3b,_0x189e96){return _0x3a0a3b===_0x189e96;},'wbMiy':'yyyy','oGtxv':function(_0x1c9600,_0x169b1e,_0x37777e){return _0x1c9600(_0x169b1e,_0x37777e);},'SZiOH':function(_0x24141e,_0x1464e3){return _0x24141e||_0x1464e3;},'jxmRP':function(_0x43dbd3,_0x598c9c){return _0x43dbd3===_0x598c9c;},'BeeSf':_0xfd556c(0x1fe)};if(_0x596b59['foUrK'](typeof _0x236ab8,_0x596b59[_0xfd556c(0x2e4)])||_0x236ab8[_0xfd556c(0x1db)]===0x0)throw new IdGeneratorError(_0x596b59[_0xfd556c(0x2b1)],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x16dad7=_0xa36433||'',_0x37add8=_0x596b59['rLHzo'](_0x16dad7,'')?[_0x236ab8]:_0x236ab8[_0xfd556c(0x29b)](_0x16dad7);let _0x5371a0='',_0x43e5a7;if(_0x596b59[_0xfd556c(0x1c9)](_0x5d517e,'text')){if(_0x6d9adc){if(_0x37add8['length']!==0x2||_0x596b59['foUrK'](_0x37add8[0x0],_0x6d9adc))throw new IdGeneratorError(_0x596b59['bSNzQ'],'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x16dad7+'padded\x20(got:\x20'+_0x236ab8+')');_0x43e5a7=_0x37add8[0x1];}else{if(_0x37add8['length']!==0x1)throw new IdGeneratorError(_0xfd556c(0x23c),_0xfd556c(0x252)+_0x236ab8+')');_0x43e5a7=_0x37add8[0x0];}}else{const _0x3216b4=_0x6d9adc?0x3:0x2;if(_0x596b59[_0xfd556c(0x1d1)](_0x37add8[_0xfd556c(0x1db)],_0x3216b4))throw new IdGeneratorError(_0x596b59['bSNzQ'],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x236ab8+',\x20expected\x20'+_0x3216b4+'\x20parts)');let _0x227d37=0x0;if(_0x6d9adc){if(_0x37add8[_0x227d37]!==_0x6d9adc)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20prefix\x20mismatch:\x20expected\x20'+_0x6d9adc+',\x20got\x20'+_0x37add8[_0x227d37]);_0x227d37++;}_0x5371a0=_0x37add8[_0x227d37++];const _0x12d313=_0x5d517e===_0x596b59['wbMiy']?/^\d{4}$/:_0x5d517e===_0xfd556c(0x234)?/^\d{6}$/:/^\d{8}$/;if(!_0x12d313[_0xfd556c(0x249)](_0x5371a0))throw new IdGeneratorError(_0x596b59[_0xfd556c(0x2b1)],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x5d517e+':\x20'+_0x5371a0);_0x43e5a7=_0x37add8[_0x227d37];}if(!new RegExp('^\x5cd{'+_0x2841c7+'}$')['test'](_0x43e5a7))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0xfd556c(0x27c)+_0x2841c7+'\x20digits\x20(got:\x20'+_0x43e5a7+')');const _0x72adac=_0x596b59[_0xfd556c(0x1c7)](parseInt,_0x43e5a7,0xa),_0x5b6c7e=_0x596b59['SZiOH'](_0x6d9adc,'_');let _0x556e23;return _0x596b59['jxmRP'](_0x5d517e,_0x596b59['BeeSf'])?_0x556e23=_0x5b6c7e+_0xfd556c(0x21a):_0x556e23=_0x5b6c7e+'_'+_0x5d517e+'_'+_0x5371a0,{'formatKey':_0x556e23,'counterInt':_0x72adac,'datePrefix':_0x5371a0};}['_generateFromPattern'](_0x1f89b9){const _0x55a9d5=a0_0x3cfc5a;let _0x578fc5='';for(const _0x52350b of _0x1f89b9){const _0x56ac0a=PLACEHOLDER_MAP[_0x52350b];if(_0x56ac0a){const _0x2d6ef7=crypto[_0x55a9d5(0x2bb)](0x0,_0x56ac0a['length']);_0x578fc5+=_0x56ac0a[_0x2d6ef7];}else _0x578fc5+=_0x52350b;}return _0x578fc5;}async[a0_0x3cfc5a(0x230)](_0x3f7a3a){const _0x15ad5b=a0_0x3cfc5a,_0xc27de2={'bqdYc':'idgen_idem_hit','SObFJ':'idgen_idem_retrieve_error'};if(!_0x3f7a3a)return null;try{const _0x85803a=redisClient['getClient'](),_0x216a8c=await _0x85803a[_0x15ad5b(0x203)](_0x3f7a3a);if(_0x216a8c)return logger[_0x15ad5b(0x1d8)]({'event':_0xc27de2[_0x15ad5b(0x2d8)],'key':_0x3f7a3a},'Idempotency\x20cache\x20HIT'),JSON[_0x15ad5b(0x251)](_0x216a8c);return null;}catch(_0x2250e0){return logger[_0x15ad5b(0x2e9)]({'event':_0xc27de2['SObFJ'],'error':_0x2250e0['message']},_0x15ad5b(0x256)),null;}}async[a0_0x3cfc5a(0x21d)](_0x5267cc,_0x504ee7){const _0x2854f0=a0_0x3cfc5a,_0x455de2={'Vivaj':'Idempotency\x20store\x20error'};if(!_0x5267cc)return;try{const _0xdd3f23=redisClient[_0x2854f0(0x28b)]();await _0xdd3f23['setex'](_0x5267cc,this[_0x2854f0(0x2bc)],JSON['stringify'](_0x504ee7));}catch(_0x5037fb){logger['warn']({'event':_0x2854f0(0x206),'error':_0x5037fb[_0x2854f0(0x2e5)]},_0x455de2[_0x2854f0(0x215)]);}}async[a0_0x3cfc5a(0x2c9)](_0x3eaf17,_0x1978ec){const _0x44e0b5=a0_0x3cfc5a,_0x35d868={'AFkmO':function(_0x56e32d,_0x2d770f){return _0x56e32d===_0x2d770f;},'ecyNP':_0x44e0b5(0x2d0),'FOjlO':_0x44e0b5(0x26a)};if(!_0x3eaf17)return{'stored':!![],'winnerResult':null};try{const _0x3ff17e=redisClient['getClient'](),_0x25fb29=JSON['stringify'](_0x1978ec),_0x46066e=await _0x3ff17e['set'](_0x3eaf17,_0x25fb29,'EX',this[_0x44e0b5(0x2bc)],'NX');if(_0x35d868[_0x44e0b5(0x261)](_0x46066e,'OK'))return{'stored':!![],'winnerResult':null};const _0x5283b9=await _0x3ff17e['get'](_0x3eaf17);if(_0x5283b9)return{'stored':![],'winnerResult':JSON['parse'](_0x5283b9)};return logger['warn']({'event':_0x35d868[_0x44e0b5(0x28d)],'key':_0x3eaf17},_0x35d868[_0x44e0b5(0x25c)]),{'stored':!![],'winnerResult':null};}catch(_0x2b72e3){return logger['warn']({'event':_0x44e0b5(0x2e0),'error':_0x2b72e3[_0x44e0b5(0x2e5)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x3cfc5a(0x2dd)](_0x583366,_0x3dcc00,_0x2687ef){const _0x4325f0=a0_0x3cfc5a,_0x46a76d={'qOItb':_0x4325f0(0x27e)};try{const _0x199a95=redisClient[_0x4325f0(0x28b)]();if(_0x2687ef){const _0x4c7757=this[_0x4325f0(0x1ca)](_0x583366,_0x3dcc00);await _0x199a95['del'](_0x4c7757);}else{const _0x7caa5d=this['_buildIssuedKey'](_0x583366);await _0x199a95['srem'](_0x7caa5d,_0x3dcc00);}}catch(_0x5725cf){logger['warn']({'event':_0x46a76d[_0x4325f0(0x299)],'error':_0x5725cf[_0x4325f0(0x2e5)]},_0x4325f0(0x2a6));}}async[a0_0x3cfc5a(0x2b8)](_0x5a7739,_0x5697f5,_0xac41ea,_0x18a6cc=0x0){const _0x8074d1=a0_0x3cfc5a,_0x505309={'qFjTz':function(_0x5ab0e8,_0x936778){return _0x5ab0e8>_0x936778;},'ZCgEC':'Meta\x20update\x20error'};try{const _0x3777b0=redisClient[_0x8074d1(0x28b)](),_0x2385ef=this['_buildMetaKey'](_0x5a7739,_0x5697f5),_0x4cde2a=[];for(const [_0x16b28b,_0x101905]of Object[_0x8074d1(0x26e)](_0xac41ea)){_0x4cde2a['push'](_0x16b28b,String(_0x101905));}if(_0x505309['qFjTz'](_0x4cde2a[_0x8074d1(0x1db)],0x0)){await _0x3777b0[_0x8074d1(0x264)](_0x2385ef,..._0x4cde2a);if(_0x18a6cc>0x0)await _0x3777b0[_0x8074d1(0x1cc)](_0x2385ef,_0x18a6cc);}}catch(_0x1c0dd3){logger[_0x8074d1(0x2e9)]({'event':_0x8074d1(0x267),'error':_0x1c0dd3['message']},_0x505309[_0x8074d1(0x1ef)]);}}async[a0_0x3cfc5a(0x271)](_0x4bfa96){const _0x42b211=a0_0x3cfc5a,_0x1d4ee0={'pSDFC':'IDGEN_DISABLED','gQzye':_0x42b211(0x271),'qVEHh':function(_0x3f2fee,_0x29353f){return _0x3f2fee===_0x29353f;},'kxhqF':'idgen_idem_loser_release_error','dbKnT':_0x42b211(0x22c)};if(!this[_0x42b211(0x2b3)])throw new IdGeneratorError(_0x1d4ee0['pSDFC'],'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x1b7f2c=this[_0x42b211(0x207)](_0x4bfa96),_0x2d25fd=this['_validateIdempotencyKey'](_0x4bfa96['idempotencyKey']),{resource:_0x25755c,format:_0x217ca9,prefix:_0x16c43c,separator:_0x445460,numDigits:_0x549c32,reuseDelete:_0x56d88e}=_0x1b7f2c,{formatKey:_0x1babb2,datePrefix:_0x1effba}=this[_0x42b211(0x258)](_0x217ca9,_0x16c43c),_0x571f6d=this['_buildSeqKey'](_0x25755c,_0x1babb2),_0x2d1188=this[_0x42b211(0x283)](_0x25755c,_0x1babb2),_0x34e4ec=this[_0x42b211(0x226)](_0x217ca9);let _0x2dd4a2=null;if(_0x2d25fd){_0x2dd4a2=this[_0x42b211(0x29f)](_0x1d4ee0[_0x42b211(0x277)],_0x25755c,_0x1babb2,_0x2d25fd);const _0x143f63=await this['_retrieveIdemCache'](_0x2dd4a2);if(_0x143f63)return _0x143f63;}const _0x1ce117=redisClient[_0x42b211(0x28b)](),_0x50e2b9=await _0x1ce117['eval'](LUA_GENERATE_NUMBER,0x2,_0x571f6d,_0x2d1188,_0x56d88e?'1':'0',String(_0x34e4ec)),_0x386361=_0x50e2b9[0x0],_0x5d1c7a=_0x1d4ee0['qVEHh'](_0x50e2b9[0x1],0x1),_0x2d6045=this['_formatNumber']({'format':_0x217ca9,'prefix':_0x16c43c,'datePrefix':_0x1effba,'separator':_0x445460,'numDigits':_0x549c32,'counterInt':_0x386361}),_0x3e134d={'value':_0x2d6045,'counter':_0x386361,'resource':_0x25755c,'formatKey':_0x1babb2,'isReused':_0x5d1c7a,'generatedAt':new Date()['toISOString']()},_0x40bb5b=await this[_0x42b211(0x2c9)](_0x2dd4a2,_0x3e134d);if(!_0x40bb5b[_0x42b211(0x24f)]){try{await _0x1ce117['eval'](LUA_RELEASE_NUMBER,0x1,_0x2d1188,String(_0x386361),String(_0x34e4ec));}catch(_0x43b6fa){logger['warn']({'event':_0x1d4ee0['kxhqF'],'error':_0x43b6fa[_0x42b211(0x2e5)],'resource':_0x25755c,'formatKey':_0x1babb2,'counterInt':_0x386361},_0x1d4ee0['dbKnT']);}return logger[_0x42b211(0x1d8)]({'event':'idgen_number_idem_loser','resource':_0x25755c,'formatKey':_0x1babb2,'counter':_0x386361},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x40bb5b[_0x42b211(0x1da)];}return this['_updateMeta'](_0x25755c,_0x1babb2,{'lastValue':_0x2d6045,'lastCounter':_0x386361,'lastIsReused':_0x5d1c7a,'lastGeneratedAt':_0x3e134d['generatedAt']},_0x34e4ec),logger[_0x42b211(0x1d8)]({'event':'idgen_number_generated','resource':_0x25755c,'formatKey':_0x1babb2,'counter':_0x386361,'isReused':_0x5d1c7a},_0x42b211(0x1ff)+_0x2d6045),_0x3e134d;}async['releaseNumber'](_0x46d1e5){const _0x1feab2=a0_0x3cfc5a,_0x184e66={'JldYV':_0x1feab2(0x2d7),'hJwOR':'ID\x20Generator\x20is\x20disabled','PiKPk':function(_0x4faf29,_0x2b67e4){return _0x4faf29!==_0x2b67e4;},'Uzpnc':'string','mOdzr':function(_0x1db0d4,_0x5997b5){return _0x1db0d4===_0x5997b5;},'pcqCX':_0x1feab2(0x23c),'ZAXVn':'text','oYfrE':function(_0x224f27,_0x213ef0){return _0x224f27(_0x213ef0);},'nzXDt':_0x1feab2(0x1cd)};if(!this['enabled'])throw new IdGeneratorError(_0x184e66['JldYV'],_0x184e66['hJwOR']);let _0x158f99,_0x34f748,_0x1d21ea,_0x245c9c;const _0x13281c=this[_0x1feab2(0x27a)](_0x46d1e5['idempotencyKey']);if(_0x184e66[_0x1feab2(0x2bd)](_0x46d1e5['counterInt'],undefined)&&_0x46d1e5[_0x1feab2(0x1bd)]!==null){this['_validateResource'](_0x46d1e5[_0x1feab2(0x259)]),_0x158f99=_0x46d1e5['resource'];if(typeof _0x46d1e5[_0x1feab2(0x238)]!==_0x184e66['Uzpnc']||_0x184e66[_0x1feab2(0x1e1)](_0x46d1e5['formatKey']['length'],0x0))throw new IdGeneratorError(_0x184e66['pcqCX'],_0x1feab2(0x2e8));_0x34f748=_0x46d1e5[_0x1feab2(0x238)];if(!Number['isInteger'](_0x46d1e5[_0x1feab2(0x1bd)])||_0x46d1e5[_0x1feab2(0x1bd)]<0x1)throw new IdGeneratorError(_0x184e66['pcqCX'],_0x1feab2(0x23a)+_0x46d1e5[_0x1feab2(0x1bd)]+')');_0x1d21ea=_0x46d1e5[_0x1feab2(0x1bd)];const _0x220041=_0x34f748[_0x1feab2(0x231)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x245c9c=_0x220041?_0x220041[0x1]:_0x184e66[_0x1feab2(0x28c)];}else{const _0xadba22=this[_0x1feab2(0x207)](_0x46d1e5),_0x2c9d93=this['_parseNumber']({'format':_0xadba22['format'],'prefix':_0xadba22[_0x1feab2(0x272)],'separator':_0xadba22[_0x1feab2(0x20f)],'numDigits':_0xadba22[_0x1feab2(0x269)],'number':_0x46d1e5['number']});_0x158f99=_0xadba22['resource'],_0x34f748=_0x2c9d93['formatKey'],_0x1d21ea=_0x2c9d93[_0x1feab2(0x1bd)],_0x245c9c=_0xadba22[_0x1feab2(0x2b4)];}const _0x11ea30=this['_buildReuseKey'](_0x158f99,_0x34f748),_0x5e1af6=this['_getCounterTTL'](_0x245c9c);let _0x4c8581=null;if(_0x13281c){_0x4c8581=this['_buildIdemKey']('release',_0x158f99,_0x34f748,_0x13281c);const _0x2bc65=await this[_0x1feab2(0x230)](_0x4c8581);if(_0x2bc65)return _0x2bc65;}const _0x18614f=redisClient['getClient']();await _0x18614f['eval'](LUA_RELEASE_NUMBER,0x1,_0x11ea30,_0x184e66['oYfrE'](String,_0x1d21ea),String(_0x5e1af6));const _0x3b0b4a={'released':!![],'resource':_0x158f99,'formatKey':_0x34f748,'counter':_0x1d21ea,'releasedAt':new Date()['toISOString']()};return await this[_0x1feab2(0x21d)](_0x4c8581,_0x3b0b4a),this['_updateMeta'](_0x158f99,_0x34f748,{'lastReleasedCounter':_0x1d21ea,'lastReleasedAt':_0x3b0b4a[_0x1feab2(0x1b6)]},_0x5e1af6),logger[_0x1feab2(0x1d8)]({'event':_0x184e66[_0x1feab2(0x1ea)],'resource':_0x158f99,'formatKey':_0x34f748,'counter':_0x1d21ea},_0x1feab2(0x1e5)+_0x1d21ea),_0x3b0b4a;}async[a0_0x3cfc5a(0x257)](_0x498b5b){const _0x1832fb=a0_0x3cfc5a,_0x3be61e={'IBvlm':_0x1832fb(0x2d7),'npkwz':_0x1832fb(0x2ca),'hfZWn':function(_0x3c201,_0x3889be){return _0x3c201+_0x3889be;},'KHykD':_0x1832fb(0x259),'sxgFh':'formatKey','mLvjn':'separator','imiVu':function(_0x3beefd,_0x129f05){return _0x3beefd||_0x129f05;},'qqzQN':'ttlMs','fbyRB':'idemKey','KyLYS':function(_0x4c49ac,_0xca12e0){return _0x4c49ac(_0xca12e0);},'McSem':function(_0xc62ba9,_0x1ac1c4){return _0xc62ba9===_0x1ac1c4;},'DRzbN':'idgen_reserve_overflow_compensation_error','hGEYv':function(_0x15f970,_0x434a5b){return _0x15f970(_0x434a5b);},'YVScY':'idgen_number_reserved'};if(!this[_0x1832fb(0x2b3)])throw new IdGeneratorError(_0x3be61e[_0x1832fb(0x25d)],_0x3be61e[_0x1832fb(0x22e)]);const _0x23d196=this['_validateNumberParams'](_0x498b5b),_0xd43da5=this['_validateReserveTTL'](_0x498b5b[_0x1832fb(0x1f0)]),_0x6ff1f8=this[_0x1832fb(0x27a)](_0x498b5b[_0x1832fb(0x1c4)]),{resource:_0x5d3dc4,format:_0x49db5a,prefix:_0x26ab20,separator:_0x307092,numDigits:_0x12f8c7,reuseDelete:_0x74a5c5}=_0x23d196,{formatKey:_0x33ae02,datePrefix:_0x2eaa6f}=this[_0x1832fb(0x258)](_0x49db5a,_0x26ab20),_0x3d935c=this[_0x1832fb(0x1b9)](_0x5d3dc4,_0x33ae02),_0x234e17=this[_0x1832fb(0x283)](_0x5d3dc4,_0x33ae02),_0x94aeff=this[_0x1832fb(0x246)](_0x5d3dc4,_0x33ae02),_0x3ca433=this[_0x1832fb(0x226)](_0x49db5a);let _0x2ca0ad=null;if(_0x6ff1f8){_0x2ca0ad=this[_0x1832fb(0x29f)](_0x1832fb(0x2c4),_0x5d3dc4,_0x33ae02,_0x6ff1f8);const _0x40f8ba=await this['_retrieveIdemCache'](_0x2ca0ad);if(_0x40f8ba)return _0x40f8ba;}const _0xfaa7ce=crypto[_0x1832fb(0x2ad)](),_0x433174=this[_0x1832fb(0x1f3)](_0xfaa7ce),_0x293180=this['_buildReservationKeyPrefix'](),_0x16b126=Date[_0x1832fb(0x2d9)](),_0x7ad0d2=_0x3be61e[_0x1832fb(0x20a)](_0x16b126,_0xd43da5*0x3e8),_0x5e1293=_0xd43da5*0x3e8,_0x22135c=new Date(_0x16b126)['toISOString'](),_0x2bfe4f=new Date(_0x7ad0d2)['toISOString'](),_0xeebfea=[_0x3be61e['KHykD'],_0x5d3dc4,_0x3be61e[_0x1832fb(0x2e1)],_0x33ae02,_0x1832fb(0x2b4),_0x49db5a,'prefix',_0x26ab20,_0x3be61e['mLvjn'],_0x307092,_0x1832fb(0x269),String(_0x12f8c7),_0x1832fb(0x25e),_0x3be61e['imiVu'](_0x2eaa6f,''),_0x1832fb(0x1bc),_0x22135c,_0x1832fb(0x2da),_0x2bfe4f,_0x3be61e['qqzQN'],String(_0x5e1293)];_0x6ff1f8&&_0xeebfea[_0x1832fb(0x223)](_0x3be61e[_0x1832fb(0x24a)],_0x6ff1f8);const _0x1f04a6=redisClient['getClient'](),_0x596406=await _0x1f04a6[_0x1832fb(0x227)](LUA_RESERVE_NUMBER,0x3,_0x3d935c,_0x234e17,_0x94aeff,_0x74a5c5?'1':'0',_0x3be61e[_0x1832fb(0x235)](String,_0x3ca433),_0xfaa7ce,_0x433174,String(_0x5e1293),String(_0x7ad0d2),String(_0x16b126),_0x293180,..._0xeebfea),_0x1fc70c=_0x596406[0x0],_0x4c712e=_0x3be61e['McSem'](_0x596406[0x1],0x1),_0x5ee6b2=_0x596406[0x2]||0x0;let _0x5f5190;try{_0x5f5190=this[_0x1832fb(0x254)]({'format':_0x49db5a,'prefix':_0x26ab20,'datePrefix':_0x2eaa6f,'separator':_0x307092,'numDigits':_0x12f8c7,'counterInt':_0x1fc70c});}catch(_0x51a3f9){try{await _0x1f04a6['eval'](LUA_CANCEL_RESERVATION,0x3,_0x433174,_0x94aeff,_0x234e17,_0xfaa7ce,_0x3be61e['KyLYS'](String,_0x3ca433));}catch(_0x360056){logger['warn']({'event':_0x3be61e[_0x1832fb(0x26d)],'error':_0x360056[_0x1832fb(0x2e5)],'resource':_0x5d3dc4,'formatKey':_0x33ae02,'counterInt':_0x1fc70c,'token':_0xfaa7ce},_0x1832fb(0x2c0));}throw _0x51a3f9;}try{await _0x1f04a6['hset'](_0x433174,'value',_0x5f5190);}catch(_0x410dc0){logger['warn']({'event':_0x1832fb(0x21c),'error':_0x410dc0[_0x1832fb(0x2e5)],'resource':_0x5d3dc4,'formatKey':_0x33ae02,'counterInt':_0x1fc70c,'token':_0xfaa7ce},_0x1832fb(0x24e));}const _0x103a9a={'token':_0xfaa7ce,'value':_0x5f5190,'counter':_0x1fc70c,'resource':_0x5d3dc4,'formatKey':_0x33ae02,'isReused':_0x4c712e,'createdAt':_0x22135c,'expiresAt':_0x2bfe4f,'reapedCount':_0x5ee6b2},_0x44eefb=await this[_0x1832fb(0x2c9)](_0x2ca0ad,_0x103a9a);if(!_0x44eefb['stored']){try{await _0x1f04a6['eval'](LUA_CANCEL_RESERVATION,0x3,_0x433174,_0x94aeff,_0x234e17,_0xfaa7ce,_0x3be61e[_0x1832fb(0x212)](String,_0x3ca433));}catch(_0x19d045){logger['warn']({'event':'idgen_reserve_idem_loser_cancel_error','error':_0x19d045[_0x1832fb(0x2e5)],'resource':_0x5d3dc4,'formatKey':_0x33ae02,'counterInt':_0x1fc70c,'token':_0xfaa7ce},_0x1832fb(0x2a7));}return logger['info']({'event':_0x1832fb(0x263),'resource':_0x5d3dc4,'formatKey':_0x33ae02,'counter':_0x1fc70c,'token':_0xfaa7ce},_0x1832fb(0x29a)),_0x44eefb['winnerResult'];}return this['_updateMeta'](_0x5d3dc4,_0x33ae02,{'lastReservedCounter':_0x1fc70c,'lastReservedAt':_0x22135c,'lastReapedCount':_0x5ee6b2},_0x3ca433),logger['info']({'event':_0x3be61e['YVScY'],'resource':_0x5d3dc4,'formatKey':_0x33ae02,'counter':_0x1fc70c,'isReused':_0x4c712e,'token':_0xfaa7ce,'ttl':_0xd43da5,'reapedCount':_0x5ee6b2},_0x1832fb(0x2e6)+_0x5f5190+'\x20(token='+_0xfaa7ce+')'),_0x103a9a;}async[a0_0x3cfc5a(0x1fa)](_0x4b6a39){const _0x32e4ba=a0_0x3cfc5a,_0x4742c3={'JcSTG':'ID\x20Generator\x20is\x20disabled','JVKie':_0x32e4ba(0x1c2),'PbsRu':_0x32e4ba(0x1fe)};if(!this[_0x32e4ba(0x2b3)])throw new IdGeneratorError(_0x32e4ba(0x2d7),_0x4742c3['JcSTG']);const _0x5ebfc2=this['_validateReservationToken'](_0x4b6a39&&_0x4b6a39['token']),_0x41e7bc=this['_validateIdempotencyKey'](_0x4b6a39&&_0x4b6a39['idempotencyKey']);let _0x576989=null;if(_0x41e7bc){_0x576989=idempotencyManager['buildDeterministicKey']('idgen',_0x4742c3[_0x32e4ba(0x202)],_0x5ebfc2+':'+_0x41e7bc);const _0x4c6650=await this['_retrieveIdemCache'](_0x576989);if(_0x4c6650)return _0x4c6650;}const _0x18957e=await this[_0x32e4ba(0x205)](_0x5ebfc2),_0x5cbff0=redisClient['getClient'](),_0x2e8d1c=await _0x5cbff0[_0x32e4ba(0x227)](LUA_CONFIRM_RESERVATION,0x2,_0x18957e[_0x32e4ba(0x229)],_0x18957e[_0x32e4ba(0x2c2)],_0x5ebfc2);if(!_0x2e8d1c||_0x2e8d1c[0x0]!==0x1)throw new IdGeneratorError(_0x32e4ba(0x22b),_0x32e4ba(0x266)+_0x5ebfc2,{'token':_0x5ebfc2});const _0x104609=parseInt(_0x2e8d1c[0x1],0xa),_0x44d326=_0x2e8d1c[0x2],_0x4c4c94=_0x2e8d1c[0x3],_0x505061=new Date()['toISOString'](),_0x2804b8={'confirmed':!![],'token':_0x5ebfc2,'value':_0x44d326,'counter':_0x104609,'resource':_0x18957e['resource'],'formatKey':_0x4c4c94,'confirmedAt':_0x505061};await this[_0x32e4ba(0x21d)](_0x576989,_0x2804b8);const _0x97aa84=_0x4c4c94['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x33f63d=_0x97aa84?_0x97aa84[0x1]:_0x4742c3['PbsRu'],_0x1655e2=this['_getCounterTTL'](_0x33f63d);return this['_updateMeta'](_0x18957e[_0x32e4ba(0x259)],_0x4c4c94,{'lastConfirmedCounter':_0x104609,'lastConfirmedAt':_0x505061},_0x1655e2),logger['info']({'event':_0x32e4ba(0x2b2),'resource':_0x18957e[_0x32e4ba(0x259)],'formatKey':_0x4c4c94,'counter':_0x104609,'token':_0x5ebfc2},_0x32e4ba(0x2a5)+_0x44d326+'\x20(token='+_0x5ebfc2+')'),_0x2804b8;}async[a0_0x3cfc5a(0x1f6)](_0x2ea9bb){const _0x127d4f=a0_0x3cfc5a,_0x2499f2={'JHaih':_0x127d4f(0x2cb),'VSUDw':function(_0x463820,_0x401e90){return _0x463820(_0x401e90);},'wsyVq':_0x127d4f(0x1ee)};if(!this['enabled'])throw new IdGeneratorError(_0x127d4f(0x2d7),_0x2499f2[_0x127d4f(0x281)]);const _0x56ae82=this[_0x127d4f(0x2a1)](_0x2ea9bb&&_0x2ea9bb[_0x127d4f(0x2e7)]),_0x42e48d=this[_0x127d4f(0x27a)](_0x2ea9bb&&_0x2ea9bb['idempotencyKey']);let _0x1fa630=null;if(_0x42e48d){_0x1fa630=idempotencyManager['buildDeterministicKey'](_0x127d4f(0x2e3),_0x127d4f(0x25f),_0x56ae82+':'+_0x42e48d);const _0x29bf6a=await this['_retrieveIdemCache'](_0x1fa630);if(_0x29bf6a)return _0x29bf6a;}const _0x73d23d=await this[_0x127d4f(0x205)](_0x56ae82),_0x20e06c=this['_buildReuseKey'](_0x73d23d[_0x127d4f(0x259)],_0x73d23d['formatKey']),_0x4cae96=_0x73d23d[_0x127d4f(0x238)][_0x127d4f(0x231)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x5d769b=_0x4cae96?_0x4cae96[0x1]:'text',_0x4631ac=this[_0x127d4f(0x226)](_0x5d769b),_0x4da1a7=redisClient['getClient'](),_0x55e707=await _0x4da1a7['eval'](LUA_CANCEL_RESERVATION,0x3,_0x73d23d[_0x127d4f(0x229)],_0x73d23d['rsvIdxKey'],_0x20e06c,_0x56ae82,_0x2499f2[_0x127d4f(0x29e)](String,_0x4631ac));if(!_0x55e707||_0x55e707[0x0]!==0x1)throw new IdGeneratorError(_0x127d4f(0x22b),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x56ae82,{'token':_0x56ae82});const _0x32f7c8=parseInt(_0x55e707[0x1],0xa),_0x292c88=_0x55e707[0x2],_0x2a34a8=_0x55e707[0x3],_0x10ba11=new Date()[_0x127d4f(0x286)](),_0x437781={'cancelled':!![],'token':_0x56ae82,'value':_0x292c88,'counter':_0x32f7c8,'resource':_0x73d23d[_0x127d4f(0x259)],'formatKey':_0x2a34a8,'releasedToReuse':!![],'cancelledAt':_0x10ba11};return await this['_storeIdemCache'](_0x1fa630,_0x437781),this[_0x127d4f(0x2b8)](_0x73d23d['resource'],_0x2a34a8,{'lastCancelledCounter':_0x32f7c8,'lastCancelledAt':_0x10ba11},_0x4631ac),logger[_0x127d4f(0x1d8)]({'event':_0x2499f2['wsyVq'],'resource':_0x73d23d[_0x127d4f(0x259)],'formatKey':_0x2a34a8,'counter':_0x32f7c8,'token':_0x56ae82},_0x127d4f(0x210)+_0x292c88+'\x20(token='+_0x56ae82+')'),_0x437781;}async[a0_0x3cfc5a(0x22d)](_0x4b1fc1){const _0x40173b=a0_0x3cfc5a,_0x370e19={'xGLbL':_0x40173b(0x2d7),'HoDVr':_0x40173b(0x2e3),'vFIWq':_0x40173b(0x29d),'KwqQP':function(_0x3d7ec8,_0x2dcf7e){return _0x3d7ec8+_0x2dcf7e;},'jsLZw':function(_0x17061c,_0x3be595){return _0x17061c*_0x3be595;},'QSXBT':function(_0x32ac50,_0x439afe){return _0x32ac50(_0x439afe);},'rRQzU':function(_0x236b6d,_0x1b45f9,_0x3fc8e4){return _0x236b6d(_0x1b45f9,_0x3fc8e4);},'jieAb':'text'};if(!this[_0x40173b(0x2b3)])throw new IdGeneratorError(_0x370e19[_0x40173b(0x241)],'ID\x20Generator\x20is\x20disabled');const _0xc67b55=this[_0x40173b(0x2a1)](_0x4b1fc1&&_0x4b1fc1[_0x40173b(0x2e7)]),_0xc9e69d=this[_0x40173b(0x20c)](_0x4b1fc1&&_0x4b1fc1['ttl']),_0x4900fa=this['_validateIdempotencyKey'](_0x4b1fc1&&_0x4b1fc1['idempotencyKey']);let _0xe25d69=null;if(_0x4900fa){_0xe25d69=idempotencyManager['buildDeterministicKey'](_0x370e19['HoDVr'],_0x370e19[_0x40173b(0x25a)],_0xc67b55+':'+_0x4900fa);const _0x9cd3aa=await this['_retrieveIdemCache'](_0xe25d69);if(_0x9cd3aa)return _0x9cd3aa;}const _0x24b017=await this['_getReservationContext'](_0xc67b55),_0x164feb=Date[_0x40173b(0x2d9)](),_0x20d75c=_0x370e19['KwqQP'](_0x164feb,_0x370e19['jsLZw'](_0xc9e69d,0x3e8)),_0x2eca78=_0xc9e69d*0x3e8,_0x250e45=new Date(_0x20d75c)[_0x40173b(0x286)](),_0x457fa1=redisClient[_0x40173b(0x28b)](),_0x471577=await _0x457fa1[_0x40173b(0x227)](LUA_EXTEND_RESERVATION,0x2,_0x24b017[_0x40173b(0x229)],_0x24b017['rsvIdxKey'],_0xc67b55,_0x370e19[_0x40173b(0x262)](String,_0x2eca78),String(_0x20d75c),_0x250e45);if(!_0x471577||_0x471577[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x40173b(0x266)+_0xc67b55,{'token':_0xc67b55});const _0x2e2e5a=_0x471577[0x1],_0x526590=_0x370e19['rRQzU'](parseInt,_0x471577[0x2],0xa),_0x26a345=_0x471577[0x3],_0xdb803f=_0x471577[0x4],_0x1d3ecb=new Date(_0x164feb)[_0x40173b(0x286)](),_0x13cb51={'extended':!![],'token':_0xc67b55,'previousExpiresAt':_0x2e2e5a,'expiresAt':_0x250e45,'ttlMs':_0x2eca78,'resource':_0x24b017[_0x40173b(0x259)],'formatKey':_0xdb803f,'counter':_0x526590,'value':_0x26a345,'extendedAt':_0x1d3ecb};await this['_storeIdemCache'](_0xe25d69,_0x13cb51);const _0x23f129=_0xdb803f['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x364248=_0x23f129?_0x23f129[0x1]:_0x370e19[_0x40173b(0x273)],_0x2fafdf=this[_0x40173b(0x226)](_0x364248);return this['_updateMeta'](_0x24b017[_0x40173b(0x259)],_0xdb803f,{'lastExtendedCounter':_0x526590,'lastExtendedAt':_0x1d3ecb},_0x2fafdf),logger['info']({'event':_0x40173b(0x244),'resource':_0x24b017[_0x40173b(0x259)],'formatKey':_0xdb803f,'counter':_0x526590,'token':_0xc67b55,'ttl':_0xc9e69d},_0x40173b(0x296)+_0x26a345+'\x20(token='+_0xc67b55+_0x40173b(0x1f7)+_0xc9e69d+'s)'),_0x13cb51;}async['getReservation'](_0x16353d){const _0x2619bd=a0_0x3cfc5a,_0x262a89={'sRKmP':function(_0x3a4ff2,_0x5253f0){return _0x3a4ff2===_0x5253f0;},'GndqH':'IDGEN_RESERVATION_NOT_FOUND','yHtKi':function(_0x5732d0,_0x488d4b,_0x3bc24d){return _0x5732d0(_0x488d4b,_0x3bc24d);},'LCfRc':function(_0x12eea7,_0x28f23b){return _0x12eea7>=_0x28f23b;}};if(!this['enabled'])throw new IdGeneratorError(_0x2619bd(0x2d7),'ID\x20Generator\x20is\x20disabled');const _0x1f4933=this['_validateReservationToken'](_0x16353d&&_0x16353d['token']),_0x5178c5=this['_buildReservationKey'](_0x1f4933),_0x42d42f=redisClient['getClient'](),_0x35fb65=_0x42d42f[_0x2619bd(0x29c)]();_0x35fb65[_0x2619bd(0x294)](_0x5178c5),_0x35fb65['pttl'](_0x5178c5);const _0x152b17=await _0x35fb65[_0x2619bd(0x204)](),_0x258791=_0x152b17&&_0x152b17[0x0]&&_0x152b17[0x0][0x1],_0x32a9a6=_0x152b17&&_0x152b17[0x1]&&_0x152b17[0x1][0x1];if(!_0x258791||_0x262a89['sRKmP'](Object['keys'](_0x258791)['length'],0x0))throw new IdGeneratorError(_0x262a89[_0x2619bd(0x2c8)],_0x2619bd(0x266)+_0x1f4933,{'token':_0x1f4933});return{'token':_0x1f4933,'resource':_0x258791['resource']||null,'formatKey':_0x258791[_0x2619bd(0x238)]||null,'format':_0x258791['format']||null,'prefix':_0x258791[_0x2619bd(0x272)]||'','separator':_0x258791['separator']||'','numDigits':_0x258791['numDigits']?_0x262a89[_0x2619bd(0x1ed)](parseInt,_0x258791['numDigits'],0xa):null,'datePrefix':_0x258791['datePrefix']||'','counter':_0x258791['counter']?parseInt(_0x258791['counter'],0xa):null,'value':_0x258791['value']||null,'isReused':_0x258791[_0x2619bd(0x2ac)]==='1'||_0x258791[_0x2619bd(0x2ac)]===0x1,'createdAt':_0x258791[_0x2619bd(0x1bc)]||null,'expiresAt':_0x258791['expiresAt']||null,'ttlRemainingMs':typeof _0x32a9a6===_0x2619bd(0x271)&&_0x262a89[_0x2619bd(0x1d6)](_0x32a9a6,0x0)?_0x32a9a6:null};}async['_getReservationContext'](_0x4f2612){const _0x47631f=a0_0x3cfc5a,_0x4d6d4c={'pCSUG':'formatKey'},_0x8b5713=this[_0x47631f(0x1f3)](_0x4f2612),_0x1084f8=redisClient[_0x47631f(0x28b)](),_0x4f0974=await _0x1084f8[_0x47631f(0x2cf)](_0x8b5713,_0x47631f(0x259),_0x4d6d4c[_0x47631f(0x1ae)]),_0x524a4c=_0x4f0974&&_0x4f0974[0x0],_0x2cfe31=_0x4f0974&&_0x4f0974[0x1];if(!_0x524a4c||!_0x2cfe31)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x47631f(0x266)+_0x4f2612,{'token':_0x4f2612});return{'resource':_0x524a4c,'formatKey':_0x2cfe31,'rsvKey':_0x8b5713,'rsvIdxKey':this[_0x47631f(0x246)](_0x524a4c,_0x2cfe31)};}async['random'](_0x2f2ebc){const _0x4c69f3=a0_0x3cfc5a,_0xc043bf={'oaVeG':_0x4c69f3(0x2d7),'ztnyW':_0x4c69f3(0x1af),'FYsKN':function(_0x1468e6,_0x2b9510){return _0x1468e6===_0x2b9510;},'PYgJX':function(_0x4b74cb,_0x1828e9){return _0x4b74cb===_0x1828e9;},'XZkKS':function(_0x197afd,_0x4f6cf6){return _0x197afd*_0x4f6cf6;},'hJYwG':'idgen_random_idem_loser'};if(!this[_0x4c69f3(0x2b3)])throw new IdGeneratorError(_0xc043bf[_0x4c69f3(0x23b)],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x2f2ebc['resource']),this['_validatePattern'](_0x2f2ebc['pattern']);const _0x2f5ebc=this['_validateTTL'](_0x2f2ebc[_0x4c69f3(0x1f0)]),_0x57c2fd=this[_0x4c69f3(0x279)](_0x2f2ebc[_0x4c69f3(0x285)]),_0x3c7c78=this['_validateIdempotencyKey'](_0x2f2ebc[_0x4c69f3(0x1c4)]),_0x4018aa=_0x2f2ebc['ensureUnique']===!![],{resource:_0x354347,pattern:_0x35c5fa}=_0x2f2ebc;let _0x5865bd=null;if(_0x3c7c78){_0x5865bd=this[_0x4c69f3(0x29f)](_0xc043bf[_0x4c69f3(0x1df)],_0x354347,null,_0x3c7c78);const _0x15e299=await this[_0x4c69f3(0x230)](_0x5865bd);if(_0x15e299)return _0x15e299;}const _0x51d28f=redisClient[_0x4c69f3(0x28b)]();let _0x4a5515=null,_0x2b1bdf=0x0;if(!_0x4018aa)_0x4a5515=this[_0x4c69f3(0x2de)](_0x35c5fa),_0x2b1bdf=0x1;else{for(let _0x95d7aa=0x0;_0x95d7aa<_0x57c2fd;_0x95d7aa++){_0x2b1bdf++;const _0x402301=this[_0x4c69f3(0x2de)](_0x35c5fa);if(_0x2f5ebc){const _0x24bf99=this[_0x4c69f3(0x1ca)](_0x354347,_0x402301),_0x20152f=await _0x51d28f['set'](_0x24bf99,'1','EX',_0x2f5ebc,'NX');if(_0xc043bf[_0x4c69f3(0x232)](_0x20152f,'OK')){_0x4a5515=_0x402301;break;}}else{const _0x1b95c5=this['_buildIssuedKey'](_0x354347),_0x5057f2=await _0x51d28f['sadd'](_0x1b95c5,_0x402301);if(_0x5057f2===0x1){_0x4a5515=_0x402301;break;}}}if(_0xc043bf['PYgJX'](_0x4a5515,null))throw new IdGeneratorError('IDGEN_UNIQUE_RETRY_EXHAUSTED',_0x4c69f3(0x28f)+_0x57c2fd+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x354347,'pattern':_0x35c5fa,'maxRetry':_0x57c2fd});}const _0x117240={'value':_0x4a5515,'resource':_0x354347,'pattern':_0x35c5fa,'attemptCount':_0x2b1bdf,'generatedAt':new Date()['toISOString']()};_0x2f5ebc&&_0x4018aa&&(_0x117240['expiresAt']=new Date(Date['now']()+_0xc043bf[_0x4c69f3(0x288)](_0x2f5ebc,0x3e8))[_0x4c69f3(0x286)]());const _0x145750=await this[_0x4c69f3(0x2c9)](_0x5865bd,_0x117240);if(!_0x145750['stored'])return _0x4018aa&&await this[_0x4c69f3(0x2dd)](_0x354347,_0x4a5515,_0x2f5ebc),logger[_0x4c69f3(0x1d8)]({'event':_0xc043bf[_0x4c69f3(0x1f9)],'resource':_0x354347,'pattern':_0x35c5fa,'value':_0x4a5515},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x145750['winnerResult'];return logger[_0x4c69f3(0x1d8)]({'event':'idgen_random_generated','resource':_0x354347,'pattern':_0x35c5fa,'attemptCount':_0x2b1bdf,'ensureUnique':_0x4018aa,'ttl':_0x2f5ebc||0x0},_0x4c69f3(0x2b0)+_0x4a5515),_0x117240;}async[a0_0x3cfc5a(0x1b8)](_0x251426){const _0x590542=a0_0x3cfc5a,_0x23d941={'cHQiH':function(_0xac61de,_0x398c9e){return _0xac61de<_0x398c9e;},'uLMjL':function(_0x542fc5,_0x407860){return _0x542fc5===_0x407860;}},_0x4398d7=_0x251426[_0x590542(0x1f2)]==null?this['defaultPinDigits']:_0x251426['digits'];if(!Number['isInteger'](_0x4398d7)||_0x23d941['cHQiH'](_0x4398d7,MIN_PIN_DIGITS)||_0x4398d7>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x590542(0x2a9),_0x590542(0x1f4)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x590542(0x265)+_0x4398d7+')');const _0x565ea3='9'[_0x590542(0x274)](_0x4398d7);return this[_0x590542(0x1af)]({'resource':_0x251426['resource'],'pattern':_0x565ea3,'ensureUnique':_0x23d941['uLMjL'](_0x251426['ensureUnique'],!![]),'ttl':_0x251426[_0x590542(0x1f0)],'maxRetry':_0x251426['maxRetry'],'idempotencyKey':_0x251426[_0x590542(0x1c4)]});}async['serial'](_0x5298b9){const _0x4eef4f=a0_0x3cfc5a,_0x2d6e1c={'ZUcMw':function(_0x581f99,_0x3a0ce9){return _0x581f99!==_0x3a0ce9;}},_0x338df9=_0x5298b9[_0x4eef4f(0x1bb)]||this[_0x4eef4f(0x290)];return this['random']({'resource':_0x5298b9[_0x4eef4f(0x259)],'pattern':_0x338df9,'ensureUnique':_0x2d6e1c['ZUcMw'](_0x5298b9['ensureUnique'],![]),'ttl':_0x5298b9['ttl'],'maxRetry':_0x5298b9[_0x4eef4f(0x285)],'idempotencyKey':_0x5298b9[_0x4eef4f(0x1c4)]});}async[a0_0x3cfc5a(0x2c1)](_0x5bc12b){const _0x242ceb=a0_0x3cfc5a,_0x37c2ab={'OcGxg':function(_0x2e85b2,_0x7119d2){return _0x2e85b2!==_0x7119d2;}},_0x38b8da=_0x5bc12b[_0x242ceb(0x1bb)]||this[_0x242ceb(0x233)];return this[_0x242ceb(0x1af)]({'resource':_0x5bc12b['resource'],'pattern':_0x38b8da,'ensureUnique':_0x37c2ab[_0x242ceb(0x221)](_0x5bc12b[_0x242ceb(0x297)],![]),'ttl':_0x5bc12b[_0x242ceb(0x1f0)],'maxRetry':_0x5bc12b[_0x242ceb(0x285)],'idempotencyKey':_0x5bc12b[_0x242ceb(0x1c4)]});}async[a0_0x3cfc5a(0x211)](_0x55615e){const _0x3f4b63=a0_0x3cfc5a,_0x2046eb={'CRtDp':_0x3f4b63(0x2d7),'dxhFL':'ID\x20Generator\x20is\x20disabled','WqGSO':function(_0x2930b8,_0x100f67){return _0x2930b8!==_0x100f67;},'JXQJn':_0x3f4b63(0x1e8),'yWiFM':'value\x20is\x20required','lKxmG':function(_0x29008b,_0x381619){return _0x29008b>_0x381619;}};if(!this['enabled'])throw new IdGeneratorError(_0x2046eb['CRtDp'],_0x2046eb['dxhFL']);this[_0x3f4b63(0x298)](_0x55615e['resource']);if(_0x2046eb[_0x3f4b63(0x1c1)](typeof _0x55615e[_0x3f4b63(0x2cc)],_0x2046eb['JXQJn'])||_0x55615e['value']['length']===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x2046eb['yWiFM']);const {resource:_0x21139c,value:_0x384a92}=_0x55615e,_0x29de87=redisClient['getClient'](),_0x180fac=this['_buildActiveKey'](_0x21139c,_0x384a92),_0x31f7dd=this['_buildIssuedKey'](_0x21139c),[_0x5c39e2,_0x18e283]=await Promise['all']([_0x29de87['del'](_0x180fac),_0x29de87['srem'](_0x31f7dd,_0x384a92)]),_0x2d0d6c=_0x2046eb[_0x3f4b63(0x1cf)](_0x5c39e2+_0x18e283,0x0);return logger[_0x3f4b63(0x1d8)]({'event':_0x3f4b63(0x250),'resource':_0x21139c,'value':_0x384a92,'consumed':_0x2d0d6c},_0x3f4b63(0x21e)+_0x384a92),{'consumed':_0x2d0d6c,'resource':_0x21139c,'value':_0x384a92,'consumedAt':new Date()[_0x3f4b63(0x286)]()};}async['peek'](_0x17b49d){const _0x2987f3=a0_0x3cfc5a,_0x218764={'AaNnQ':_0x2987f3(0x2cb),'Hkztj':function(_0x2331cd,_0x25e553){return _0x2331cd===_0x25e553;},'wSlMy':_0x2987f3(0x1fe),'yVjax':_0x2987f3(0x271),'zIXbP':function(_0x183806,_0x1fb6bb){return _0x183806||_0x1fb6bb;},'KMRBE':function(_0x3be733,_0x512cd3){return _0x3be733===_0x512cd3;},'tNPmh':'random','wUhmU':function(_0x2d035f,_0x563f63){return _0x2d035f||_0x563f63;},'vjwvL':_0x2987f3(0x2d4)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x218764[_0x2987f3(0x1fb)]);this[_0x2987f3(0x298)](_0x17b49d[_0x2987f3(0x259)]);const _0x3ae3c0=_0x17b49d['mode']||'number',_0x14d815=redisClient[_0x2987f3(0x28b)]();if(_0x218764[_0x2987f3(0x2ba)](_0x3ae3c0,_0x2987f3(0x271))){const _0x4953f3=(_0x17b49d[_0x2987f3(0x2b4)]||_0x218764[_0x2987f3(0x1bf)])[_0x2987f3(0x1e0)]();if(!ALLOWED_FORMATS[_0x2987f3(0x1eb)](_0x4953f3))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20'+_0x17b49d[_0x2987f3(0x2b4)]);const {formatKey:_0x46c442}=this[_0x2987f3(0x258)](_0x4953f3,_0x17b49d[_0x2987f3(0x272)]||''),_0x1bc3fb=this['_buildSeqKey'](_0x17b49d[_0x2987f3(0x259)],_0x46c442),_0x2e6514=this['_buildReuseKey'](_0x17b49d['resource'],_0x46c442),[_0x4e4118,_0x2187f1]=await Promise[_0x2987f3(0x1c8)]([_0x14d815[_0x2987f3(0x203)](_0x1bc3fb),_0x14d815[_0x2987f3(0x23d)](_0x2e6514)]);return{'resource':_0x17b49d['resource'],'mode':_0x218764['yVjax'],'formatKey':_0x46c442,'currentCounter':parseInt(_0x4e4118,0xa)||0x0,'reusePoolSize':_0x218764['zIXbP'](_0x2187f1,0x0)};}if(_0x218764[_0x2987f3(0x1dc)](_0x3ae3c0,_0x218764[_0x2987f3(0x2b9)])){const _0x262bae=this['_buildIssuedKey'](_0x17b49d[_0x2987f3(0x259)]),_0x5dd97c=await _0x14d815[_0x2987f3(0x2a2)](_0x262bae);return{'resource':_0x17b49d['resource'],'mode':_0x2987f3(0x1af),'issuedCount':_0x218764[_0x2987f3(0x219)](_0x5dd97c,0x0)};}throw new IdGeneratorError(_0x218764[_0x2987f3(0x217)],_0x2987f3(0x27b)+_0x3ae3c0);}async[a0_0x3cfc5a(0x2d1)](_0x296cad){const _0x58aff9=a0_0x3cfc5a,_0x2672b0={'jUzWD':function(_0x2005a6,_0x4dcf4b){return _0x2005a6===_0x4dcf4b;},'wJudt':_0x58aff9(0x271)},_0x56abf7=await this[_0x58aff9(0x26f)](_0x296cad);if(_0x2672b0['jUzWD'](_0x56abf7['mode'],_0x2672b0[_0x58aff9(0x2c3)])){const _0xe5d144=redisClient[_0x58aff9(0x28b)](),_0xb505e=this['_buildMetaKey'](_0x296cad[_0x58aff9(0x259)],_0x56abf7[_0x58aff9(0x238)]),_0xa2f5c6=this[_0x58aff9(0x283)](_0x296cad[_0x58aff9(0x259)],_0x56abf7[_0x58aff9(0x238)]),[_0x6bae4f,_0x57a8c0]=await Promise[_0x58aff9(0x1c8)]([_0xe5d144['hgetall'](_0xb505e),_0xe5d144[_0x58aff9(0x276)](_0xa2f5c6,0x0,-0x1)]);return{..._0x56abf7,'reusePoolValues':_0x57a8c0['map'](_0x20cfe8=>parseInt(_0x20cfe8,0xa)),'meta':_0x6bae4f&&Object[_0x58aff9(0x242)](_0x6bae4f)['length']>0x0?_0x6bae4f:null};}return _0x56abf7;}async['reset'](_0x5562e0){const _0x4807eb=a0_0x3cfc5a,_0x5de57d={'cbRtr':'IDGEN_DISABLED','TnldW':_0x4807eb(0x2cb),'lGAEW':_0x4807eb(0x271),'FQDAC':'meta','TePbv':_0x4807eb(0x1af),'CoDHA':_0x4807eb(0x1b5),'KgmrZ':_0x4807eb(0x1d4),'QTrJO':_0x4807eb(0x2d4)};if(!this[_0x4807eb(0x2b3)])throw new IdGeneratorError(_0x5de57d[_0x4807eb(0x1be)],_0x5de57d['TnldW']);if(!this[_0x4807eb(0x293)])throw new IdGeneratorError('IDGEN_RESET_NOT_ALLOWED',_0x4807eb(0x236));this[_0x4807eb(0x298)](_0x5562e0['resource']);const _0x553a37=_0x5562e0['mode']||_0x5de57d['lGAEW'],_0x39e661=redisClient[_0x4807eb(0x28b)]();if(_0x553a37===_0x5de57d[_0x4807eb(0x255)]){const _0x54d04b=(_0x5562e0['format']||'text')[_0x4807eb(0x1e0)]();if(!ALLOWED_FORMATS['has'](_0x54d04b))throw new IdGeneratorError(_0x4807eb(0x200),'Invalid\x20format:\x20'+_0x5562e0[_0x4807eb(0x2b4)]);const {formatKey:_0x51a296}=this['_buildFormatKey'](_0x54d04b,_0x5562e0['prefix']||''),_0x4f80ed=this[_0x4807eb(0x1b9)](_0x5562e0[_0x4807eb(0x259)],_0x51a296),_0x104ac6=this['_buildReuseKey'](_0x5562e0['resource'],_0x51a296),_0x3d2739=this[_0x4807eb(0x23f)](_0x5562e0[_0x4807eb(0x259)],_0x51a296);return await _0x39e661['del'](_0x4f80ed,_0x104ac6,_0x3d2739),logger[_0x4807eb(0x2e9)]({'event':'idgen_reset','resource':_0x5562e0['resource'],'mode':_0x5de57d[_0x4807eb(0x255)],'formatKey':_0x51a296},_0x4807eb(0x224)+_0x5562e0[_0x4807eb(0x259)]+':'+_0x51a296),{'reset':!![],'resource':_0x5562e0[_0x4807eb(0x259)],'mode':_0x5de57d[_0x4807eb(0x255)],'formatKey':_0x51a296,'deletedKeys':['seq','reuse',_0x5de57d[_0x4807eb(0x1cb)]]};}if(_0x553a37===_0x5de57d['TePbv']){const _0x1d73f0=this['_buildIssuedKey'](_0x5562e0[_0x4807eb(0x259)]);return await _0x39e661[_0x4807eb(0x2b6)](_0x1d73f0),logger[_0x4807eb(0x2e9)]({'event':_0x5de57d[_0x4807eb(0x24c)],'resource':_0x5562e0[_0x4807eb(0x259)],'mode':'random'},'ID\x20Generator\x20reset:\x20random:'+_0x5562e0[_0x4807eb(0x259)]),{'reset':!![],'resource':_0x5562e0[_0x4807eb(0x259)],'mode':_0x5de57d[_0x4807eb(0x243)],'deletedKeys':[_0x5de57d[_0x4807eb(0x1d0)]]};}throw new IdGeneratorError(_0x5de57d['QTrJO'],'Unknown\x20mode:\x20'+_0x553a37);}}const instance=new IdGenerator();instance[a0_0x3cfc5a(0x1b3)]=IdGeneratorError,module[a0_0x3cfc5a(0x214)]=instance,module[a0_0x3cfc5a(0x214)][a0_0x3cfc5a(0x1b3)]=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x16f659=a0_0x8f6d;(function(_0x35d6b8,_0x3bcf21){const _0x456a7f=a0_0x8f6d,_0x53fe89=_0x35d6b8();while(!![]){try{const _0x2b74f6=parseInt(_0x456a7f(0x1f1))/0x1+parseInt(_0x456a7f(0x202))/0x2*(parseInt(_0x456a7f(0x1df))/0x3)+parseInt(_0x456a7f(0x1dd))/0x4*(-parseInt(_0x456a7f(0x1e5))/0x5)+-parseInt(_0x456a7f(0x1ee))/0x6+parseInt(_0x456a7f(0x1e7))/0x7+-parseInt(_0x456a7f(0x1e3))/0x8+-parseInt(_0x456a7f(0x1fd))/0x9*(-parseInt(_0x456a7f(0x1e0))/0xa);if(_0x2b74f6===_0x3bcf21)break;else _0x53fe89['push'](_0x53fe89['shift']());}catch(_0x46458f){_0x53fe89['push'](_0x53fe89['shift']());}}}(a0_0x5cc8,0xe00d0));const redisClient=require('./redis-client'),{logger}=require('./logger'),crypto=require('crypto');class IdempotencyManager{constructor(){const _0xb6f144=a0_0x8f6d;this[_0xb6f144(0x1fb)]=null,this[_0xb6f144(0x1ea)]=null,this[_0xb6f144(0x1fe)]=![];}['_initConfig'](){const _0x5d9cb4=a0_0x8f6d,_0x4e4232={'zGAKm':function(_0x5bbc8b,_0x3132b2){return _0x5bbc8b===_0x3132b2;}};this[_0x5d9cb4(0x1fb)]=_0x4e4232[_0x5d9cb4(0x1f3)](process['env'][_0x5d9cb4(0x1de)],'true'),this[_0x5d9cb4(0x1ea)]=parseInt(process[_0x5d9cb4(0x1eb)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x5d9cb4(0x1f2),'enabled':this['_enabled'],'ttl':this['_ttl']},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this['_enabled']+',\x20TTL:\x20'+this['_ttl']+'s');}[a0_0x16f659(0x1f7)](){const _0x465d7d=a0_0x16f659;!this[_0x465d7d(0x1fe)]&&this['_initConfig']();}get['enabled'](){const _0x18f99e=a0_0x16f659;return this[_0x18f99e(0x1f7)](),this['_enabled'];}get['ttl'](){const _0x2640ee=a0_0x16f659;return this[_0x2640ee(0x1f7)](),this[_0x2640ee(0x1ea)];}['isEnabled'](){return this['enabled'];}[a0_0x16f659(0x201)](_0xb0ee7e,_0x2420bf){const _0x43009a=a0_0x16f659,_0x15761f=_0x2420bf[_0x43009a(0x1e1)][_0x43009a(0x1e9)]('/')['filter'](Boolean),_0x2b01da=_0x15761f[0x0]||'default',_0x5c96e6=_0x15761f[0x1]||_0x43009a(0x200),_0x3b2998=_0x15761f[0x2]||'unknown';return _0x43009a(0x1ec)+_0x2b01da+':'+_0x5c96e6+':'+_0x3b2998+':'+_0xb0ee7e;}async[a0_0x16f659(0x1e2)](_0x4b1355,_0x2f9633){const _0x419a8e=a0_0x16f659,_0x54dd44={'yZIrx':_0x419a8e(0x1f8)};if(!this['enabled'])return![];try{const _0x4d0e0d=redisClient[_0x419a8e(0x1ed)]();return await _0x4d0e0d['setex'](_0x4b1355,this['ttl'],JSON['stringify'](_0x2f9633)),logger[_0x419a8e(0x1e8)]({'event':_0x419a8e(0x1f6),'key':_0x4b1355,'ttl':this['ttl'],'statusCode':_0x2f9633['statusCode']},_0x419a8e(0x1ff)),!![];}catch(_0x449b94){return logger[_0x419a8e(0x1ef)]({'event':_0x54dd44['yZIrx'],'key':_0x4b1355,'error':_0x449b94['message']},'Idempotency\x20store\x20error:\x20'+_0x449b94[_0x419a8e(0x1f0)]),![];}}async[a0_0x16f659(0x1fa)](_0x4f7a43){const _0x4b4068=a0_0x16f659;if(!this['enabled'])return null;try{const _0x349929=redisClient['getClient'](),_0x4f20a0=await _0x349929[_0x4b4068(0x1f5)](_0x4f7a43);if(_0x4f20a0)return logger['info']({'event':_0x4b4068(0x1e6),'key':_0x4f7a43},'Idempotency\x20cache\x20HIT'),JSON[_0x4b4068(0x1f9)](_0x4f20a0);return logger[_0x4b4068(0x1e8)]({'event':'idempotency_miss','key':_0x4f7a43},_0x4b4068(0x1fc)),null;}catch(_0x5619a5){return logger['error']({'event':_0x4b4068(0x1e4),'key':_0x4f7a43,'error':_0x5619a5[_0x4b4068(0x1f0)]},_0x4b4068(0x1f4)+_0x5619a5['message']),null;}}['generateKey'](_0x336f63='req'){return _0x336f63+'_'+crypto['randomUUID']();}['buildDeterministicKey'](_0x258181,_0x402cc6,_0x23cd42){return _0x258181+':'+_0x402cc6+':'+_0x23cd42;}}function a0_0x5cc8(){const _0x375aa9=['C3rVCMu','ntiWotm4ngrgvhnUBW','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','mtbJuuLXq0e','AwrLBxbVDgvUy3LFAgL0','mtGXodC3nujQz3rguG','zgvIDwC','C3bSAxq','x3r0Ba','zw52','CMy6AwrLBtO','z2v0q2XPzw50','nZe5nJuYme16EKDRzW','zxjYB3i','BwvZC2fNzq','mty5ntu4n1DjEKHrAW','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','EKDbs20','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','z2v0','AwrLBxbVDgvUy3LFC3rVCMu','x2vUC3vYzuLUAxrPywXPEMvK','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','CgfYC2u','CMv0CMLLDMu','x2vUywjSzwq','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','mZC3mtbdBMvewfi','x2LUAxrPywXPEMvK','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','Dw5RBM93BG','yNvPBgrlzxK','mLbhufnYDW','mtK3otGZnKf6wgjsEG','surftvbpvevoq1LFru5bqKXfra','nde3nJu3m0vRAeHbEq','otGWrenVuNjd','Cgf0Aa'];a0_0x5cc8=function(){return _0x375aa9;};return a0_0x5cc8();}function a0_0x8f6d(_0x137e2a,_0x5f510d){_0x137e2a=_0x137e2a-0x1dd;const _0x5cc883=a0_0x5cc8();let _0x8f6d3c=_0x5cc883[_0x137e2a];if(a0_0x8f6d['CozTjS']===undefined){var _0x538613=function(_0x48aed7){const _0x939c7d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x6e743e='',_0x409ed1='';for(let _0xb24597=0x0,_0x404fd4,_0x1a4528,_0x4775f5=0x0;_0x1a4528=_0x48aed7['charAt'](_0x4775f5++);~_0x1a4528&&(_0x404fd4=_0xb24597%0x4?_0x404fd4*0x40+_0x1a4528:_0x1a4528,_0xb24597++%0x4)?_0x6e743e+=String['fromCharCode'](0xff&_0x404fd4>>(-0x2*_0xb24597&0x6)):0x0){_0x1a4528=_0x939c7d['indexOf'](_0x1a4528);}for(let _0x5732ee=0x0,_0x1c6af6=_0x6e743e['length'];_0x5732ee<_0x1c6af6;_0x5732ee++){_0x409ed1+='%'+('00'+_0x6e743e['charCodeAt'](_0x5732ee)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x409ed1);};a0_0x8f6d['PXbjuX']=_0x538613,a0_0x8f6d['qjzMQc']={},a0_0x8f6d['CozTjS']=!![];}const _0x36a052=_0x5cc883[0x0],_0x1f34b6=_0x137e2a+_0x36a052,_0x468eb7=a0_0x8f6d['qjzMQc'][_0x1f34b6];return!_0x468eb7?(_0x8f6d3c=a0_0x8f6d['PXbjuX'](_0x8f6d3c),a0_0x8f6d['qjzMQc'][_0x1f34b6]=_0x8f6d3c):_0x8f6d3c=_0x468eb7,_0x8f6d3c;}module['exports']=new IdempotencyManager();
1
+ 'use strict';function a0_0x4698(){const _0x398529=['nZq3mJyZnhHtEgnqtq','swrLBxbVDgvUy3KGy2fJAguGseLu','lI9YzwrPCY1JBgLLBNq','C2v0zxG','CMfUzg9Tvvvjra','AwrLBxbVDgvUy3LFC3rVCMu','ntuYodK3mffbrhjnBq','mtq2mduWveL0rfLt','C3rYAw5NAwz5','zw5HyMXLza','DhrS','Dhj1zq','nxj2AxPYEq','C3bSAxq','x2LUAxrdB25MAwC','surftvbpvevoq1LFru5bqKXfra','mtyXzMXVte5U','z2v0q2XPzw50','zMLSDgvY','EfPYqLm','x2LUAxrPywXPEMvK','mZa4mtuYshfmAg9s','z2v0','lcbuveW6ia','CMy6AwrLBtO','CMvX','y3j5ChrV','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','mJeXmtaXmM9tBgTgzG','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','nJuXndCZmdrKswXnz2G','x2vUywjSzwq','C3rHDhvZq29Kzq','Cgf0Aa','x2vUC3vYzuLUAxrPywXPEMvK','m1Lfq2LNuq','Dw5RBM93BG','AwrLBxbVDgvUy3LFAgL0','zxHWB3j0CW','BwvZC2fNzq','mtiXmhvlDfnlAW','mLzpsffOua','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','zgvIDwC','mtm4mtGXoxHrvwnqEa','yNrpA08'];a0_0x4698=function(){return _0x398529;};return a0_0x4698();}const a0_0x107125=a0_0x4622;(function(_0x5b2708,_0x4cdd64){const _0x3f6c69=a0_0x4622,_0x49b418=_0x5b2708();while(!![]){try{const _0x594cfd=-parseInt(_0x3f6c69(0xc3))/0x1*(-parseInt(_0x3f6c69(0xc0))/0x2)+-parseInt(_0x3f6c69(0xba))/0x3*(-parseInt(_0x3f6c69(0xb3))/0x4)+parseInt(_0x3f6c69(0xd1))/0x5*(parseInt(_0x3f6c69(0xc5))/0x6)+-parseInt(_0x3f6c69(0xa7))/0x7*(-parseInt(_0x3f6c69(0xac))/0x8)+parseInt(_0x3f6c69(0xcb))/0x9+parseInt(_0x3f6c69(0xcc))/0xa*(parseInt(_0x3f6c69(0xbf))/0xb)+-parseInt(_0x3f6c69(0xb5))/0xc;if(_0x594cfd===_0x4cdd64)break;else _0x49b418['push'](_0x49b418['shift']());}catch(_0x24b57b){_0x49b418['push'](_0x49b418['shift']());}}}(a0_0x4698,0xcb576));const redisClient=require(a0_0x107125(0xc7)),{logger}=require('./logger'),crypto=require(a0_0x107125(0xb1));function a0_0x4622(_0x4553a8,_0x89acac){_0x4553a8=_0x4553a8-0xa7;const _0x46985b=a0_0x4698();let _0x4622b3=_0x46985b[_0x4553a8];if(a0_0x4622['yxVDTT']===undefined){var _0x3f7f31=function(_0x3d058c){const _0x1a4b30='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c529d='',_0x1d1300='';for(let _0x221ad7=0x0,_0x17863b,_0x29b3b7,_0x569fc8=0x0;_0x29b3b7=_0x3d058c['charAt'](_0x569fc8++);~_0x29b3b7&&(_0x17863b=_0x221ad7%0x4?_0x17863b*0x40+_0x29b3b7:_0x29b3b7,_0x221ad7++%0x4)?_0x3c529d+=String['fromCharCode'](0xff&_0x17863b>>(-0x2*_0x221ad7&0x6)):0x0){_0x29b3b7=_0x1a4b30['indexOf'](_0x29b3b7);}for(let _0x46f05a=0x0,_0xe87d02=_0x3c529d['length'];_0x46f05a<_0xe87d02;_0x46f05a++){_0x1d1300+='%'+('00'+_0x3c529d['charCodeAt'](_0x46f05a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1d1300);};a0_0x4622['KGTOLz']=_0x3f7f31,a0_0x4622['bgnJRg']={},a0_0x4622['yxVDTT']=!![];}const _0x4a63ce=_0x46985b[0x0],_0x429191=_0x4553a8+_0x4a63ce,_0x465a82=a0_0x4622['bgnJRg'][_0x429191];return!_0x465a82?(_0x4622b3=a0_0x4622['KGTOLz'](_0x4622b3),a0_0x4622['bgnJRg'][_0x429191]=_0x4622b3):_0x4622b3=_0x465a82,_0x4622b3;}class IdempotencyManager{constructor(){const _0x179b32=a0_0x107125;this['_enabled']=null,this['_ttl']=null,this[_0x179b32(0xab)]=![];}[a0_0x107125(0xd3)](){const _0x11a8ae=a0_0x107125;this[_0x11a8ae(0xb6)]=process['env'][_0x11a8ae(0xd4)]===_0x11a8ae(0xd0),this['_ttl']=parseInt(process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x11a8ae(0xab)]=!![],logger['info']({'event':'idempotency_config_init','enabled':this[_0x11a8ae(0xb6)],'ttl':this['_ttl']},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x11a8ae(0xb6)]+_0x11a8ae(0xae)+this['_ttl']+'s');}[a0_0x107125(0xb9)](){const _0x4150da=a0_0x107125;!this[_0x4150da(0xab)]&&this[_0x4150da(0xd3)]();}get[a0_0x107125(0xce)](){const _0x19d9c9=a0_0x107125;return this['_ensureInitialized'](),this[_0x19d9c9(0xb6)];}get[a0_0x107125(0xcf)](){const _0x386edb=a0_0x107125;return this[_0x386edb(0xb9)](),this['_ttl'];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x1acec7,_0x18d720){const _0x435bb3=a0_0x107125,_0x1fceb4={'SQaMB':'default','sKDLN':'unknown'},_0x330c89=_0x18d720[_0x435bb3(0xb8)][_0x435bb3(0xd2)]('/')[_0x435bb3(0xa9)](Boolean),_0x28237a=_0x330c89[0x0]||_0x1fceb4['SQaMB'],_0x1d2afb=_0x330c89[0x1]||_0x435bb3(0xbb),_0x51146d=_0x330c89[0x2]||_0x1fceb4['sKDLN'];return _0x435bb3(0xaf)+_0x28237a+':'+_0x1d2afb+':'+_0x51146d+':'+_0x1acec7;}async['store'](_0x316e80,_0x3af9b8){const _0x2f0d35=a0_0x107125,_0x394d67={'xZrBS':_0x2f0d35(0xca),'ENLSV':_0x2f0d35(0xb2)};if(!this['enabled'])return![];try{const _0x27e472=redisClient[_0x2f0d35(0xa8)]();return await _0x27e472[_0x2f0d35(0xc8)](_0x316e80,this['ttl'],JSON[_0x2f0d35(0xcd)](_0x3af9b8)),logger[_0x2f0d35(0xc2)]({'event':_0x394d67[_0x2f0d35(0xaa)],'key':_0x316e80,'ttl':this[_0x2f0d35(0xcf)],'statusCode':_0x3af9b8[_0x2f0d35(0xb7)]},'Idempotency\x20response\x20stored'),!![];}catch(_0x364ae1){return logger['error']({'event':_0x394d67['ENLSV'],'key':_0x316e80,'error':_0x364ae1['message']},'Idempotency\x20store\x20error:\x20'+_0x364ae1[_0x2f0d35(0xbe)]),![];}}async['retrieve'](_0x29a835){const _0x170ec4=a0_0x107125,_0xf00644={'btOkO':_0x170ec4(0xc6),'LXhWY':'idempotency_miss'};if(!this['enabled'])return null;try{const _0x27cde0=redisClient[_0x170ec4(0xa8)](),_0x34e4f9=await _0x27cde0[_0x170ec4(0xad)](_0x29a835);if(_0x34e4f9)return logger['info']({'event':_0x170ec4(0xbc),'key':_0x29a835},_0xf00644[_0x170ec4(0xc4)]),JSON['parse'](_0x34e4f9);return logger['debug']({'event':_0xf00644['LXhWY'],'key':_0x29a835},'Idempotency\x20cache\x20MISS'),null;}catch(_0x45f656){return logger['error']({'event':_0x170ec4(0xb4),'key':_0x29a835,'error':_0x45f656[_0x170ec4(0xbe)]},_0x170ec4(0xc1)+_0x45f656['message']),null;}}['generateKey'](_0xb7df36=a0_0x107125(0xb0)){const _0x15abca=a0_0x107125;return _0xb7df36+'_'+crypto[_0x15abca(0xc9)]();}['buildDeterministicKey'](_0x420532,_0x3e9758,_0x2347a0){return _0x420532+':'+_0x3e9758+':'+_0x2347a0;}}module[a0_0x107125(0xbd)]=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x1dce30=a0_0x5737;function a0_0x449d(){const _0xc5ef96=['BNvTyMvY','sw52ywXPzcbUDw1IzxiGzM9YBwf0','nKz5BMDezG','mtK5nZq2wMz5A2rm','ovvPzxzZsq','ChvZAa','mtC5mtK0mfDUEgfTra','DMfSAwrHDgvoDw1Izxi','mti0mJuYvvzJEgrW','DMfSAwrHDgvqAg9Uzq','mJeWmJrfvKrewvq','zw1HAwW','CeLks3G','BgvUz3rO','zM9YBwf0','DMfSAwrHDgvfBwfPBa','BhrADeW','Aw5MBW','AM9PBG','ody5Dfj2CM94','n2LztxDXEa','DMfSAwrHDgvvCMW','sw52ywXPzcbvuKWGzM9YBwf0','mtCYmtGYuKHrs0PX','nuPoCNzrqq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','DgvZDa','zxHWB3j0CW','DxjS','sw52ywXPzcbWAg9UzsbMB3jTyxq','mte4odK1DfzRz25Y','A2v5CW','DMfSAwrHDgvsB3C','mtq2mdi0mezlzw1Lwq','DMfSAwrHDgvgAwvSzezVCM1HDa','D3biDwu','BwfW'];a0_0x449d=function(){return _0xc5ef96;};return a0_0x449d();}(function(_0x4162df,_0x40d088){const _0x560750=a0_0x5737,_0x1444ec=_0x4162df();while(!![]){try{const _0x5d699c=-parseInt(_0x560750(0x1cf))/0x1+-parseInt(_0x560750(0x1d9))/0x2*(parseInt(_0x560750(0x1d8))/0x3)+-parseInt(_0x560750(0x1b9))/0x4*(parseInt(_0x560750(0x1c9))/0x5)+-parseInt(_0x560750(0x1c8))/0x6+parseInt(_0x560750(0x1c5))/0x7*(parseInt(_0x560750(0x1d2))/0x8)+-parseInt(_0x560750(0x1b5))/0x9*(-parseInt(_0x560750(0x1b7))/0xa)+-parseInt(_0x560750(0x1c4))/0xb*(-parseInt(_0x560750(0x1bb))/0xc);if(_0x5d699c===_0x40d088)break;else _0x1444ec['push'](_0x1444ec['shift']());}catch(_0x3cc905){_0x1444ec['push'](_0x1444ec['shift']());}}}(a0_0x449d,0x1db83));const {logger}=require('./logger');class ImportValidator{[a0_0x1dce30(0x1d1)](_0xb5d7e9,_0x4515a1=[],_0x3e7485={}){const _0x3c8b4d=a0_0x1dce30,_0x1e4f6c={'RdWzz':function(_0x5df4e1,_0x185609){return _0x5df4e1===_0x185609;},'wpHue':function(_0x3e38c3,_0x42402d){return _0x3e38c3===_0x42402d;},'pIJKx':function(_0x318801,_0x44759f){return _0x318801===_0x44759f;}},_0x389739=[];return _0x4515a1['forEach'](_0x4061f2=>{const _0x4d85f9=a0_0x5737,_0x18f520=_0xb5d7e9[_0x4061f2];(_0x18f520===null||_0x18f520===undefined||_0x1e4f6c['RdWzz'](_0x18f520,''))&&_0x389739[_0x4d85f9(0x1b6)]({'field':_0x4061f2,'type':'required','message':'Required\x20field\x20is\x20empty'});}),Object[_0x3c8b4d(0x1d0)](_0x3e7485)['forEach'](_0x32c3f0=>{const _0x3c4075=_0x3c8b4d,_0x199aa0=_0xb5d7e9[_0x32c3f0],_0x2c059e=_0x3e7485[_0x32c3f0];if(_0x1e4f6c[_0x3c4075(0x1d4)](_0x199aa0,null)||_0x1e4f6c[_0x3c4075(0x1bd)](_0x199aa0,undefined)||_0x199aa0==='')return;const _0x5867d8=this[_0x3c4075(0x1d3)](_0x32c3f0,_0x199aa0,_0x2c059e);_0x5867d8&&_0x389739[_0x3c4075(0x1b6)](_0x5867d8);}),_0x389739;}[a0_0x1dce30(0x1d3)](_0xa8834c,_0x12e373,_0x1ebce2){const _0x559b17=a0_0x1dce30,_0x5e3f37={'NKMKk':_0x559b17(0x1bc),'AnIDD':'phone','JSMPj':_0x559b17(0x1d6)};switch(_0x1ebce2){case _0x5e3f37['NKMKk']:return this[_0x559b17(0x1c0)](_0xa8834c,_0x12e373);case _0x5e3f37['AnIDD']:return this['validatePhone'](_0xa8834c,_0x12e373);case _0x559b17(0x1cd):return this[_0x559b17(0x1c6)](_0xa8834c,_0x12e373);case _0x5e3f37['JSMPj']:return this[_0x559b17(0x1b8)](_0xa8834c,_0x12e373);default:return null;}}['validateEmail'](_0xe867e6,_0x3b2063){const _0x510e6a=a0_0x1dce30,_0x14d7e9=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x14d7e9[_0x510e6a(0x1cb)](String(_0x3b2063)))return{'field':_0xe867e6,'type':'format','message':'Invalid\x20email\x20format'};return null;}[a0_0x1dce30(0x1ba)](_0x2665e0,_0x47e764){const _0x590d41=a0_0x1dce30,_0x52be32={'ugwQh':function(_0x1eed84,_0x1c30a9){return _0x1eed84<_0x1c30a9;},'ltZtL':_0x590d41(0x1bf)},_0x196f05=String(_0x47e764)['replace'](/\s+/g,''),_0x3a2326=/^[\d\+\-\(\)]+$/;if(!_0x3a2326['test'](_0x196f05)||_0x52be32['ugwQh'](_0x196f05['length'],0x8))return{'field':_0x2665e0,'type':_0x52be32[_0x590d41(0x1c1)],'message':_0x590d41(0x1ce)};return null;}[a0_0x1dce30(0x1c6)](_0x53b678,_0x4c5240){const _0x239578=a0_0x1dce30,_0x5c2f23={'mwRkM':function(_0x2220c6,_0x44cbfa){return _0x2220c6(_0x44cbfa);},'pYdvQ':'format','NlaUy':_0x239578(0x1c7)};try{return new URL(_0x5c2f23['mwRkM'](String,_0x4c5240)),null;}catch(_0x1b2558){return{'field':_0x53b678,'type':_0x5c2f23['pYdvQ'],'message':_0x5c2f23['NlaUy']};}}[a0_0x1dce30(0x1b8)](_0x336bc5,_0x21e424){const _0x2d15f3=a0_0x1dce30,_0x3d78a8={'OkaHS':function(_0x3834dd,_0x3d12b1){return _0x3834dd(_0x3d12b1);},'kytjM':_0x2d15f3(0x1d7)};if(_0x3d78a8['OkaHS'](isNaN,_0x21e424))return{'field':_0x336bc5,'type':_0x2d15f3(0x1bf),'message':_0x3d78a8['kytjM']};return null;}['detectDuplicatesInFile'](_0x2ba465,_0x3aae4c){const _0x3647ce=new Map(),_0x25d81e=[];return _0x2ba465['forEach']((_0x249c84,_0x2aeaab)=>{const _0x4d7461=a0_0x5737,_0x116435=_0x3aae4c[_0x4d7461(0x1d5)](_0x26546e=>_0x249c84[_0x26546e])[_0x4d7461(0x1c3)]('|');_0x3647ce['has'](_0x116435)?_0x25d81e['push']({'rowIndex':_0x2aeaab,'duplicateOf':_0x3647ce['get'](_0x116435),'key':_0x116435}):_0x3647ce['set'](_0x116435,_0x2aeaab);}),_0x25d81e;}['batchValidateRows'](_0x288834,_0x104028,_0x29910a){const _0x24b7f2=a0_0x1dce30,_0x43a196={'VqRVz':function(_0x567077,_0x5684fd){return _0x567077>_0x5684fd;},'JFCJc':_0x24b7f2(0x1ca)},_0x1ae1c0=[];return _0x288834['forEach']((_0x2e1354,_0x3831e3)=>{const _0x3c1c4e=_0x24b7f2,_0x1b767d=this[_0x3c1c4e(0x1d1)](_0x2e1354,_0x104028,_0x29910a);_0x43a196['VqRVz'](_0x1b767d[_0x3c1c4e(0x1be)],0x0)&&_0x1ae1c0['push']({'rowIndex':_0x3831e3,'rowData':_0x2e1354,'errors':_0x1b767d});}),logger[_0x24b7f2(0x1c2)]({'event':'batch_validation_complete','totalRows':_0x288834[_0x24b7f2(0x1be)],'errorCount':_0x1ae1c0[_0x24b7f2(0x1be)]},_0x43a196['JFCJc']),_0x1ae1c0;}}function a0_0x5737(_0x2003a1,_0x1a8a5e){_0x2003a1=_0x2003a1-0x1b5;const _0x449d35=a0_0x449d();let _0x573799=_0x449d35[_0x2003a1];if(a0_0x5737['NaJZyF']===undefined){var _0x355ba5=function(_0x2168af){const _0x372f09='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x270869='',_0x424c13='';for(let _0x33b163=0x0,_0x264fd6,_0x133e5b,_0x5418da=0x0;_0x133e5b=_0x2168af['charAt'](_0x5418da++);~_0x133e5b&&(_0x264fd6=_0x33b163%0x4?_0x264fd6*0x40+_0x133e5b:_0x133e5b,_0x33b163++%0x4)?_0x270869+=String['fromCharCode'](0xff&_0x264fd6>>(-0x2*_0x33b163&0x6)):0x0){_0x133e5b=_0x372f09['indexOf'](_0x133e5b);}for(let _0x3d6de4=0x0,_0x20c69b=_0x270869['length'];_0x3d6de4<_0x20c69b;_0x3d6de4++){_0x424c13+='%'+('00'+_0x270869['charCodeAt'](_0x3d6de4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x424c13);};a0_0x5737['scSXhv']=_0x355ba5,a0_0x5737['ofIgWz']={},a0_0x5737['NaJZyF']=!![];}const _0x12a58c=_0x449d35[0x0],_0x541c5d=_0x2003a1+_0x12a58c,_0x31b28c=a0_0x5737['ofIgWz'][_0x541c5d];return!_0x31b28c?(_0x573799=a0_0x5737['scSXhv'](_0x573799),a0_0x5737['ofIgWz'][_0x541c5d]=_0x573799):_0x573799=_0x31b28c,_0x573799;}module[a0_0x1dce30(0x1cc)]=new ImportValidator();
1
+ const a0_0x1a1f57=a0_0x5e8c;function a0_0x144d(){const _0x3e61d1=['BNvTyMvY','odHPsuXTqxq','tw51B3G','wNDwBNG','A2v5CW','nJbdzMzes1i','yMf0y2HwywXPzgf0zvjVD3m','ntC2nZa0r0PMsu9o','BgvUz3rO','DgvZDa','ChvZAa','ntyYmvf2uxj3Ea','mtm4ndeXz3vPC3fI','mtmXote1Avz3rK92','C2v0','DMfSAwrHDgvvCMW','nwLXy2fRwa','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','ndG0ndi2CvjdB0fh','DMfSAwrHDgvsB3C','sw52ywXPzcbLBwfPBcbMB3jTyxq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','mtuXntzIEvLJqNO','DMfSAwrHDgvfBwfPBa','zM9YrwfJAa','nhzWD0DuyW','CgHVBMu','DMfSAwrHDgvoDw1Izxi','lI9SB2DNzxi','AM9PBG','mti1mZy5mhzsz3vzEG','sw52ywXPzcbUDw1IzxiGzM9YBwf0','mtaWotG5owD5sKTUBa','DMfSAwrHDgvqAg9Uzq','zM9YBwf0','z0T6DKu'];a0_0x144d=function(){return _0x3e61d1;};return a0_0x144d();}(function(_0x3fd123,_0xe3f4b4){const _0x55ffe4=a0_0x5e8c,_0x33bd03=_0x3fd123();while(!![]){try{const _0x2e5fa2=-parseInt(_0x55ffe4(0x134))/0x1*(-parseInt(_0x55ffe4(0x12d))/0x2)+parseInt(_0x55ffe4(0x13b))/0x3+-parseInt(_0x55ffe4(0x122))/0x4*(parseInt(_0x55ffe4(0x12b))/0x5)+-parseInt(_0x55ffe4(0x120))/0x6*(parseInt(_0x55ffe4(0x128))/0x7)+-parseInt(_0x55ffe4(0x11c))/0x8*(-parseInt(_0x55ffe4(0x127))/0x9)+parseInt(_0x55ffe4(0x139))/0xa+parseInt(_0x55ffe4(0x126))/0xb*(-parseInt(_0x55ffe4(0x131))/0xc);if(_0x2e5fa2===_0xe3f4b4)break;else _0x33bd03['push'](_0x33bd03['shift']());}catch(_0x1f5c28){_0x33bd03['push'](_0x33bd03['shift']());}}}(a0_0x144d,0x97db4));const {logger}=require(a0_0x1a1f57(0x137));function a0_0x5e8c(_0x186041,_0x1b9155){_0x186041=_0x186041-0x118;const _0x144de9=a0_0x144d();let _0x5e8c15=_0x144de9[_0x186041];if(a0_0x5e8c['paFcFg']===undefined){var _0x18e6b2=function(_0x5abc49){const _0x80ea7f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xfb57a3='',_0x2e90fc='';for(let _0x4747f8=0x0,_0x14c2d9,_0x216f4d,_0x18dfb7=0x0;_0x216f4d=_0x5abc49['charAt'](_0x18dfb7++);~_0x216f4d&&(_0x14c2d9=_0x4747f8%0x4?_0x14c2d9*0x40+_0x216f4d:_0x216f4d,_0x4747f8++%0x4)?_0xfb57a3+=String['fromCharCode'](0xff&_0x14c2d9>>(-0x2*_0x4747f8&0x6)):0x0){_0x216f4d=_0x80ea7f['indexOf'](_0x216f4d);}for(let _0xd3b7b1=0x0,_0x40c81a=_0xfb57a3['length'];_0xd3b7b1<_0x40c81a;_0xd3b7b1++){_0x2e90fc+='%'+('00'+_0xfb57a3['charCodeAt'](_0xd3b7b1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2e90fc);};a0_0x5e8c['SdMPKF']=_0x18e6b2,a0_0x5e8c['NUsJSx']={},a0_0x5e8c['paFcFg']=!![];}const _0x2a0fb9=_0x144de9[0x0],_0xbac49f=_0x186041+_0x2a0fb9,_0x59e440=a0_0x5e8c['NUsJSx'][_0xbac49f];return!_0x59e440?(_0x5e8c15=a0_0x5e8c['SdMPKF'](_0x5e8c15),a0_0x5e8c['NUsJSx'][_0xbac49f]=_0x5e8c15):_0x5e8c15=_0x59e440,_0x5e8c15;}class ImportValidator{['validateRow'](_0x4a8fbf,_0x2327a1=[],_0x541dd2={}){const _0x4d288e=a0_0x1a1f57,_0x3161bb={'qBtqK':'required','YGeBS':function(_0x80c320,_0x1528e3){return _0x80c320===_0x1528e3;},'gFtHj':function(_0x7a1089,_0x570109){return _0x7a1089===_0x570109;}},_0x3cfb8e=[];return _0x2327a1[_0x4d288e(0x133)](_0x31bf7c=>{const _0x5d4ca7=_0x4a8fbf[_0x31bf7c];(_0x5d4ca7===null||_0x5d4ca7===undefined||_0x5d4ca7==='')&&_0x3cfb8e['push']({'field':_0x31bf7c,'type':_0x3161bb['qBtqK'],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x4d288e(0x11f)](_0x541dd2)[_0x4d288e(0x133)](_0x2bdccd=>{const _0x5b4ef9=_0x4d288e,_0x16f5ad=_0x4a8fbf[_0x2bdccd],_0x3a969d=_0x541dd2[_0x2bdccd];if(_0x16f5ad===null||_0x3161bb['YGeBS'](_0x16f5ad,undefined)||_0x3161bb['gFtHj'](_0x16f5ad,''))return;const _0x116d5b=this['validateFieldFormat'](_0x2bdccd,_0x16f5ad,_0x3a969d);_0x116d5b&&_0x3cfb8e[_0x5b4ef9(0x125)](_0x116d5b);}),_0x3cfb8e;}['validateFieldFormat'](_0x2e9aac,_0x1946a1,_0x7b07b6){const _0x4c195c=a0_0x1a1f57,_0x4f605e={'sPEKl':'email','HtaMq':_0x4c195c(0x11b)};switch(_0x7b07b6){case _0x4f605e['sPEKl']:return this[_0x4c195c(0x132)](_0x2e9aac,_0x1946a1);case _0x4c195c(0x135):return this['validatePhone'](_0x2e9aac,_0x1946a1);case'url':return this['validateUrl'](_0x2e9aac,_0x1946a1);case _0x4f605e['HtaMq']:return this[_0x4c195c(0x136)](_0x2e9aac,_0x1946a1);default:return null;}}[a0_0x1a1f57(0x132)](_0xd1a5b4,_0x44d2f8){const _0x53dc5a=a0_0x1a1f57,_0x17eced=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x17eced[_0x53dc5a(0x124)](String(_0x44d2f8)))return{'field':_0xd1a5b4,'type':'format','message':_0x53dc5a(0x12f)};return null;}[a0_0x1a1f57(0x118)](_0x278ce9,_0x425432){const _0x2bf9af=a0_0x1a1f57,_0x23e3a1={'xFEnq':function(_0x11cb72,_0x2c8eaa){return _0x11cb72(_0x2c8eaa);},'ZwVnx':'Invalid\x20phone\x20format'},_0x26f2a9=_0x23e3a1['xFEnq'](String,_0x425432)['replace'](/\s+/g,''),_0x3b6aec=/^[\d\+\-\(\)]+$/;if(!_0x3b6aec['test'](_0x26f2a9)||_0x26f2a9['length']<0x8)return{'field':_0x278ce9,'type':'format','message':_0x23e3a1[_0x2bf9af(0x11e)]};return null;}[a0_0x1a1f57(0x12a)](_0x4ef3f0,_0x2088f9){const _0x32a403=a0_0x1a1f57,_0x587b25={'HOcuc':function(_0x3963d2,_0x35e562){return _0x3963d2(_0x35e562);}};try{return new URL(_0x587b25['HOcuc'](String,_0x2088f9)),null;}catch(_0xd8f469){return{'field':_0x4ef3f0,'type':_0x32a403(0x119),'message':'Invalid\x20URL\x20format'};}}['validateNumber'](_0x59b61e,_0x31237e){const _0x496846=a0_0x1a1f57,_0x2d9d08={'xFdom':function(_0x358fd5,_0x2808bc){return _0x358fd5(_0x2808bc);},'Mnuox':_0x496846(0x119),'gKzvE':_0x496846(0x13a)};if(_0x2d9d08['xFdom'](isNaN,_0x31237e))return{'field':_0x59b61e,'type':_0x2d9d08[_0x496846(0x11d)],'message':_0x2d9d08[_0x496846(0x11a)]};return null;}['detectDuplicatesInFile'](_0x172e35,_0x3d5252){const _0x2301ca=a0_0x1a1f57,_0x2327ed=new Map(),_0x5b1a32=[];return _0x172e35[_0x2301ca(0x133)]((_0x293f93,_0x539880)=>{const _0x56d792=_0x2301ca,_0x3228d2=_0x3d5252['map'](_0x3ac5e6=>_0x293f93[_0x3ac5e6])[_0x56d792(0x138)]('|');_0x2327ed['has'](_0x3228d2)?_0x5b1a32[_0x56d792(0x125)]({'rowIndex':_0x539880,'duplicateOf':_0x2327ed['get'](_0x3228d2),'key':_0x3228d2}):_0x2327ed[_0x56d792(0x129)](_0x3228d2,_0x539880);}),_0x5b1a32;}[a0_0x1a1f57(0x121)](_0x38a257,_0x405a31,_0x4afeb6){const _0x2c8efd=a0_0x1a1f57,_0x4bf4f8={'YJmzU':_0x2c8efd(0x130)},_0xa550f6=[];return _0x38a257['forEach']((_0x9ad85,_0x14425a)=>{const _0x288437=_0x2c8efd,_0x8d6afe=this[_0x288437(0x12e)](_0x9ad85,_0x405a31,_0x4afeb6);_0x8d6afe['length']>0x0&&_0xa550f6[_0x288437(0x125)]({'rowIndex':_0x14425a,'rowData':_0x9ad85,'errors':_0x8d6afe});}),logger['info']({'event':_0x2c8efd(0x12c),'totalRows':_0x38a257[_0x2c8efd(0x123)],'errorCount':_0xa550f6['length']},_0x4bf4f8['YJmzU']),_0xa550f6;}}module['exports']=new ImportValidator();