@restforgejs/platform 4.3.5 → 5.0.0

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 (191) hide show
  1. package/bin/sdf-tools.exe +0 -0
  2. package/build-info.json +2 -2
  3. package/cli/consumer-deploy.js +1 -1
  4. package/cli/consumer.js +1 -1
  5. package/generators/cli/payload/migrate.js +96 -0
  6. package/generators/lib/dbschema-kit/apply-engine.js +211 -46
  7. package/generators/lib/dbschema-kit/diff-engine.js +14 -2
  8. package/generators/lib/dbschema-kit/emitters/alter-table.js +96 -2
  9. package/generators/lib/dbschema-kit/introspect-mapper.js +9 -0
  10. package/generators/lib/migrate/backend-payload-migrator.js +221 -0
  11. package/generators/lib/migrate/field-type-resolver.js +319 -0
  12. package/generators/lib/migrate/label-generator.js +38 -0
  13. package/generators/lib/migrate/migrate-runner.js +187 -0
  14. package/generators/lib/migrate/naming.js +43 -0
  15. package/generators/lib/migrate/sql-parser.js +124 -0
  16. package/generators/lib/payload/payload-runner.js +106 -11
  17. package/generators/lib/templates/dashboard-catalog.js +1 -1
  18. package/generators/lib/templates/db-connection-env.js +1 -1
  19. package/generators/lib/templates/dbschema-catalog.js +1 -1
  20. package/generators/lib/templates/field-validation-catalog.js +1 -1
  21. package/generators/lib/templates/mysql-template.js +1 -1
  22. package/generators/lib/templates/oracle-template.js +1 -1
  23. package/generators/lib/templates/postgres-template.js +1 -1
  24. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  25. package/generators/lib/templates/sqlite-template.js +1 -1
  26. package/integrity-manifest.json +18 -18
  27. package/node_modules/brace-expansion/index.js +1 -1
  28. package/node_modules/brace-expansion/package.json +1 -1
  29. package/node_modules/dayjs/CHANGELOG.md +7 -0
  30. package/node_modules/dayjs/README.md +12 -10
  31. package/node_modules/dayjs/dayjs.min.js +1 -1
  32. package/node_modules/dayjs/esm/constant.js +1 -1
  33. package/node_modules/dayjs/esm/plugin/duration/index.js +5 -4
  34. package/node_modules/dayjs/locale.json +1 -1
  35. package/node_modules/dayjs/package.json +2 -2
  36. package/node_modules/dayjs/plugin/duration.js +1 -1
  37. package/node_modules/tmp/lib/tmp.js +37 -7
  38. package/node_modules/tmp/package.json +4 -16
  39. package/package.json +1 -1
  40. package/scripts/verify-integrity.js +1 -1
  41. package/server.js +1 -1
  42. package/src/components/handlers/adjust_handler.js +1 -1
  43. package/src/components/handlers/audit_handler.js +1 -1
  44. package/src/components/handlers/delete_handler.js +1 -1
  45. package/src/components/handlers/export_handler.js +1 -1
  46. package/src/components/handlers/import_handler.js +1 -1
  47. package/src/components/handlers/insert_handler.js +1 -1
  48. package/src/components/handlers/update_handler.js +1 -1
  49. package/src/components/handlers/upload_handler.js +1 -1
  50. package/src/components/handlers/workflow_handler.js +1 -1
  51. package/src/components/integrations/webhook.js +1 -1
  52. package/src/consumers/baseConsumer.js +1 -1
  53. package/src/consumers/declarativeMapper.js +1 -1
  54. package/src/consumers/handlers/apiHandler.js +1 -1
  55. package/src/consumers/handlers/consoleHandler.js +1 -1
  56. package/src/consumers/handlers/databaseHandler.js +1 -1
  57. package/src/consumers/handlers/index.js +1 -1
  58. package/src/consumers/handlers/kafkaHandler.js +1 -1
  59. package/src/consumers/index.js +1 -1
  60. package/src/consumers/messageTransformer.js +1 -1
  61. package/src/consumers/validator.js +1 -1
  62. package/src/core/db/dialect/base-dialect.js +1 -1
  63. package/src/core/db/dialect/index.js +1 -1
  64. package/src/core/db/dialect/mysql-dialect.js +1 -1
  65. package/src/core/db/dialect/oracle-dialect.js +1 -1
  66. package/src/core/db/dialect/postgres-dialect.js +1 -1
  67. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  68. package/src/core/db/flatten-helper.js +1 -1
  69. package/src/core/db/query-builder-error.js +1 -1
  70. package/src/core/db/query-builder.js +1 -1
  71. package/src/core/db/relation-helper.js +1 -1
  72. package/src/core/handlers/delete_handler.js +1 -1
  73. package/src/core/handlers/insert_handler.js +1 -1
  74. package/src/core/handlers/update_handler.js +1 -1
  75. package/src/core/models/base-model.js +1 -1
  76. package/src/core/utils/cache-manager.js +1 -1
  77. package/src/core/utils/component-engine.js +1 -1
  78. package/src/core/utils/context-builder.js +1 -1
  79. package/src/core/utils/datetime-formatter.js +1 -1
  80. package/src/core/utils/datetime-parser.js +1 -1
  81. package/src/core/utils/db.js +1 -1
  82. package/src/core/utils/logger.js +1 -1
  83. package/src/core/utils/payload-loader.js +1 -1
  84. package/src/core/utils/security-checks.js +1 -1
  85. package/src/middleware/body-options.js +1 -1
  86. package/src/middleware/cors.js +1 -1
  87. package/src/middleware/idempotency.js +1 -1
  88. package/src/middleware/rate-limiter.js +1 -1
  89. package/src/middleware/request-logger.js +1 -1
  90. package/src/middleware/security-headers.js +1 -1
  91. package/src/models/base-model-mysql.js +1 -1
  92. package/src/models/base-model-oracle.js +1 -1
  93. package/src/models/base-model-sqlite.js +1 -1
  94. package/src/models/base-model.js +1 -1
  95. package/src/pro/caching/redis-client.js +1 -1
  96. package/src/pro/caching/redis-helper.js +1 -1
  97. package/src/pro/consumers/baseConsumer.js +1 -1
  98. package/src/pro/consumers/declarativeMapper.js +1 -1
  99. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  100. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  101. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  102. package/src/pro/consumers/handlers/index.js +1 -1
  103. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  104. package/src/pro/consumers/index.js +1 -1
  105. package/src/pro/consumers/messageTransformer.js +1 -1
  106. package/src/pro/consumers/validator.js +1 -1
  107. package/src/pro/database/base-model-mysql.js +1 -1
  108. package/src/pro/database/base-model-oracle.js +1 -1
  109. package/src/pro/database/base-model-sqlite.js +1 -1
  110. package/src/pro/database/db-mysql.js +1 -1
  111. package/src/pro/database/db-oracle.js +1 -1
  112. package/src/pro/database/db-sqlite.js +1 -1
  113. package/src/pro/excel/excel-generator.js +1 -1
  114. package/src/pro/excel/excel-parser.js +1 -1
  115. package/src/pro/excel/export-service.js +1 -1
  116. package/src/pro/excel/export_handler.js +1 -1
  117. package/src/pro/excel/import-service.js +1 -1
  118. package/src/pro/excel/import-validator.js +1 -1
  119. package/src/pro/excel/import_handler.js +1 -1
  120. package/src/pro/excel/upsert-builder.js +1 -1
  121. package/src/pro/idgen/idgen-routes.js +1 -1
  122. package/src/pro/integrations/lookup-resolver.js +1 -1
  123. package/src/pro/integrations/upload-handler-v2.js +1 -1
  124. package/src/pro/integrations/upload-handler.js +1 -1
  125. package/src/pro/integrations/webhook.js +1 -1
  126. package/src/pro/locking/lock-routes.js +1 -1
  127. package/src/pro/locking/resource-lock-manager.js +1 -1
  128. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  129. package/src/pro/messaging/kafkaService.js +1 -1
  130. package/src/pro/messaging/messagehubService.js +1 -1
  131. package/src/pro/messaging/rabbitmqService.js +1 -1
  132. package/src/pro/scheduler/job-manager.js +1 -1
  133. package/src/pro/scheduler/job-routes.js +1 -1
  134. package/src/pro/scheduler/job-validator.js +1 -1
  135. package/src/pro/storage/base-storage-provider.js +1 -1
  136. package/src/pro/storage/file-metadata-helper.js +1 -1
  137. package/src/pro/storage/index.js +1 -1
  138. package/src/pro/storage/local-storage-provider.js +1 -1
  139. package/src/pro/storage/s3-storage-provider.js +1 -1
  140. package/src/pro/storage/upload-cleanup-job.js +1 -1
  141. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  142. package/src/pro/storage/upload-pending-tracker.js +1 -1
  143. package/src/pro/websocket/broadcast-helper.js +1 -1
  144. package/src/pro/websocket/index.js +1 -1
  145. package/src/pro/websocket/livesync-server.js +1 -1
  146. package/src/pro/websocket/ws-broadcaster.js +1 -1
  147. package/src/services/export-service.js +1 -1
  148. package/src/services/import-service.js +1 -1
  149. package/src/services/kafkaConsumerService.js +1 -1
  150. package/src/services/kafkaService.js +1 -1
  151. package/src/services/messagehubService.js +1 -1
  152. package/src/services/rabbitmqService.js +1 -1
  153. package/src/utils/cache-invalidation-registry.js +1 -1
  154. package/src/utils/cache-manager.js +1 -1
  155. package/src/utils/component-engine.js +1 -1
  156. package/src/utils/config-extractor.js +1 -1
  157. package/src/utils/consumerLogger.js +1 -1
  158. package/src/utils/context-builder.js +1 -1
  159. package/src/utils/dashboard-helpers.js +1 -1
  160. package/src/utils/dateHelper.js +1 -1
  161. package/src/utils/datetime-formatter.js +1 -1
  162. package/src/utils/datetime-parser.js +1 -1
  163. package/src/utils/db-bootstrap.js +1 -1
  164. package/src/utils/db-mysql.js +1 -1
  165. package/src/utils/db-oracle.js +1 -1
  166. package/src/utils/db-sqlite.js +1 -1
  167. package/src/utils/db.js +1 -1
  168. package/src/utils/demo-generator.js +1 -1
  169. package/src/utils/excel-generator.js +1 -1
  170. package/src/utils/excel-parser.js +1 -1
  171. package/src/utils/file-watcher.js +1 -1
  172. package/src/utils/id-generator.js +1 -1
  173. package/src/utils/idempotency-manager.js +1 -1
  174. package/src/utils/import-validator.js +1 -1
  175. package/src/utils/license-client.js +1 -1
  176. package/src/utils/lock-manager.js +1 -1
  177. package/src/utils/logger.js +1 -1
  178. package/src/utils/lookup-resolver.js +1 -1
  179. package/src/utils/payload-loader.js +1 -1
  180. package/src/utils/processor-response.js +1 -1
  181. package/src/utils/rabbitmq.js +1 -1
  182. package/src/utils/redis-client.js +1 -1
  183. package/src/utils/redis-helper.js +1 -1
  184. package/src/utils/request-scope.js +1 -1
  185. package/src/utils/security-checks.js +1 -1
  186. package/src/utils/service-resolver.js +1 -1
  187. package/src/utils/shutdown-coordinator.js +1 -1
  188. package/src/utils/trusted-keys.js +1 -1
  189. package/src/utils/upload-handler.js +1 -1
  190. package/src/utils/upsert-builder.js +1 -1
  191. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x177f8e=a0_0x22d9;(function(_0xfe6ee0,_0x5d5f01){const _0x13df39=a0_0x22d9,_0x319b76=_0xfe6ee0();while(!![]){try{const _0x32b3da=-parseInt(_0x13df39(0x136))/0x1+parseInt(_0x13df39(0x150))/0x2+-parseInt(_0x13df39(0x151))/0x3+parseInt(_0x13df39(0x144))/0x4*(-parseInt(_0x13df39(0x143))/0x5)+parseInt(_0x13df39(0x13d))/0x6+-parseInt(_0x13df39(0x148))/0x7+parseInt(_0x13df39(0x149))/0x8*(parseInt(_0x13df39(0x145))/0x9);if(_0x32b3da===_0x5d5f01)break;else _0x319b76['push'](_0x319b76['shift']());}catch(_0x54bb5a){_0x319b76['push'](_0x319b76['shift']());}}}(a0_0x53b4,0xd8e4a));const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x567859={}){const _0x504620=a0_0x22d9,_0x1f2151={'SAaCJ':_0x504620(0x147)};this[_0x504620(0x13a)]=_0x567859[_0x504620(0x13a)]||[],this['extensions']=_0x567859[_0x504620(0x133)]||[_0x504620(0x134),_0x1f2151[_0x504620(0x14a)]],this['debounceMs']=_0x567859['debounceMs']||0x1f4,this[_0x504620(0x152)]=_0x567859['onChange']||(()=>{}),this[_0x504620(0x14e)]=[],this[_0x504620(0x14c)]=null;}[a0_0x177f8e(0x153)](){const _0xd59694=a0_0x177f8e,_0x13128b={'nDNfA':_0xd59694(0x13f)};for(const _0x1000d4 of this['directories']){if(!fs[_0xd59694(0x138)](_0x1000d4)){console[_0xd59694(0x14d)]('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path[_0xd59694(0x146)](process['cwd'](),_0x1000d4)||_0x1000d4));continue;}try{const _0x29aa58=fs[_0xd59694(0x131)](_0x1000d4,{'recursive':!![]},(_0x5a0415,_0xe36d02)=>{const _0x1c1b8d=_0xd59694;if(!_0xe36d02)return;const _0x50bea0=path[_0x1c1b8d(0x140)](_0xe36d02)[_0x1c1b8d(0x14f)]();if(!this[_0x1c1b8d(0x133)][_0x1c1b8d(0x139)](_0x50bea0))return;this[_0x1c1b8d(0x14b)](_0xe36d02);});_0x29aa58['on'](_0x13128b[_0xd59694(0x142)],_0x328056=>{const _0x3f0cf5=_0xd59694;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x3f0cf5(0x146)](process[_0x3f0cf5(0x135)](),_0x1000d4)+':\x20'+_0x328056[_0x3f0cf5(0x13b)]);}),this[_0xd59694(0x14e)][_0xd59694(0x132)](_0x29aa58);const _0x48202f=path['relative'](process[_0xd59694(0x135)](),_0x1000d4)||_0x1000d4;console['log']('\x20\x20[WATCH]\x20Watching:\x20'+_0x48202f+'/\x20(recursive)');}catch(_0x72e5ac){console[_0xd59694(0x14d)]('\x20\x20[WATCH]\x20Warning:\x20Failed\x20to\x20setup\x20watcher\x20for\x20'+path['relative'](process['cwd'](),_0x1000d4)+':\x20'+_0x72e5ac[_0xd59694(0x13b)]);}}}['stop'](){const _0x30c7ab=a0_0x177f8e;for(const _0x13b2b1 of this[_0x30c7ab(0x14e)]){try{_0x13b2b1[_0x30c7ab(0x141)]();}catch(_0x5c8c8b){}}this[_0x30c7ab(0x14e)]=[],this[_0x30c7ab(0x14c)]&&(clearTimeout(this['debounceTimer']),this['debounceTimer']=null);}['_debounce'](_0x4df85e){const _0x3f8b46=a0_0x177f8e,_0x212362={'aXiFq':function(_0xec2941,_0x4c2672){return _0xec2941(_0x4c2672);},'zCKRF':function(_0x3f258b,_0x13e0c5,_0x4cb5be){return _0x3f258b(_0x13e0c5,_0x4cb5be);}};this[_0x3f8b46(0x14c)]&&_0x212362['aXiFq'](clearTimeout,this['debounceTimer']),this[_0x3f8b46(0x14c)]=_0x212362[_0x3f8b46(0x13c)](setTimeout,()=>{const _0x51a339=_0x3f8b46;this[_0x51a339(0x14c)]=null,this['onChange'](_0x4df85e);},this[_0x3f8b46(0x13e)]);}}module[a0_0x177f8e(0x137)]=FileWatcher;function a0_0x22d9(_0x357f39,_0x1f2aad){_0x357f39=_0x357f39-0x131;const _0x53b442=a0_0x53b4();let _0x22d902=_0x53b442[_0x357f39];if(a0_0x22d9['HlWOow']===undefined){var _0x2dce0b=function(_0x330a91){const _0x4f8ddf='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5c548b='',_0x444b43='';for(let _0x56695a=0x0,_0x1694de,_0x4cd4c7,_0x5f08c7=0x0;_0x4cd4c7=_0x330a91['charAt'](_0x5f08c7++);~_0x4cd4c7&&(_0x1694de=_0x56695a%0x4?_0x1694de*0x40+_0x4cd4c7:_0x4cd4c7,_0x56695a++%0x4)?_0x5c548b+=String['fromCharCode'](0xff&_0x1694de>>(-0x2*_0x56695a&0x6)):0x0){_0x4cd4c7=_0x4f8ddf['indexOf'](_0x4cd4c7);}for(let _0x246a7f=0x0,_0x2f0f6f=_0x5c548b['length'];_0x246a7f<_0x2f0f6f;_0x246a7f++){_0x444b43+='%'+('00'+_0x5c548b['charCodeAt'](_0x246a7f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x444b43);};a0_0x22d9['pMhsET']=_0x2dce0b,a0_0x22d9['DcIHFe']={},a0_0x22d9['HlWOow']=!![];}const _0x2c1aa4=_0x53b442[0x0],_0x142321=_0x357f39+_0x2c1aa4,_0x3c1df=a0_0x22d9['DcIHFe'][_0x142321];return!_0x3c1df?(_0x22d902=a0_0x22d9['pMhsET'](_0x22d902),a0_0x22d9['DcIHFe'][_0x142321]=_0x22d902):_0x22d902=_0x3c1df,_0x22d902;}function a0_0x53b4(){const _0x2043c1=['C3rHCNq','D2f0y2G','ChvZAa','zxH0zw5ZAw9UCW','lMPZ','y3DK','mZG5mtu5BLjczgXU','zxHWB3j0CW','zxHPC3rZu3LUyW','Aw5JBhvKzxm','zgLYzwn0B3jPzxm','BwvZC2fNzq','EKnluKy','ote4mde3nfjLz2HlwG','zgvIB3vUy2vnCW','zxjYB3i','zxH0BMfTzq','y2XVC2u','BKrozKe','ntuXmdeXmefzCKzvwG','ngvRDLnhBq','mtKXmZeYmdfzrwr6Ae8','CMvSyxrPDMu','lMPZB24','mtiZmti1otrHyuLIALu','oenkvwnHCq','u0fHq0O','x2rLyM91BMnL','zgvIB3vUy2vuAw1LCG','Bg9N','D2f0y2HLCNm','Dg9mB3DLCKnHC2u','mtKZmdm3nerfAu9IyW','mtq0nZe2nhPTrLfNvq','B25dAgfUz2u'];a0_0x53b4=function(){return _0x2043c1;};return a0_0x53b4();}
1
+ 'use strict';const a0_0x4fdbdf=a0_0x4381;(function(_0x471a8d,_0x4a5620){const _0xc67dbf=a0_0x4381,_0x4a0cb7=_0x471a8d();while(!![]){try{const _0x1af1e8=-parseInt(_0xc67dbf(0x18e))/0x1+-parseInt(_0xc67dbf(0x18d))/0x2*(parseInt(_0xc67dbf(0x199))/0x3)+parseInt(_0xc67dbf(0x195))/0x4+-parseInt(_0xc67dbf(0x1a1))/0x5*(parseInt(_0xc67dbf(0x1a3))/0x6)+-parseInt(_0xc67dbf(0x191))/0x7+-parseInt(_0xc67dbf(0x19c))/0x8+parseInt(_0xc67dbf(0x190))/0x9;if(_0x1af1e8===_0x4a5620)break;else _0x4a0cb7['push'](_0x4a0cb7['shift']());}catch(_0x28158d){_0x4a0cb7['push'](_0x4a0cb7['shift']());}}}(a0_0x5bf8,0xbda9e));function a0_0x5bf8(){const _0x548ed5=['mti4mZy1ogXZCeLtDa','y3DK','mJG0odi5otntALftBLi','nJi1nde5mMLdzhjwBq','zxH0zw5ZAw9UCW','icbBv0fuq0HDifDHDgnOAw5NoIa','x2rLyM91BMnL','mJKZoteWnfjfsfLgDq','zxHPC3rZu3LUyW','CMvSyxrPDMu','C3rHCNq','mZb2whzuuuy','Aw5JBhvKzxm','D2f0y2G','mJGXmJC3nM5rzgvxEG','uevhwNm','mhW0Fdv8mNWXFdm','zgLYzwn0B3jPzxm','C3bSAxq','ndvAvurRCfO','BwvZC2fNzq','mZaXmdGWDvnSr2vK','zgvIB3vUy2vnCW','ChvZAa','D2f0y2HLCNm','B25dAgfUz2u','Bg9N','CLncEMq','y2XVC2u','zxHWB3j0CW','mJG0nZj6vxPtvLu'];a0_0x5bf8=function(){return _0x548ed5;};return a0_0x5bf8();}const fs=require('fs'),path=require('path');function a0_0x4381(_0x22bd24,_0x5dbe81){_0x22bd24=_0x22bd24-0x18b;const _0x5bf8ab=a0_0x5bf8();let _0x4381f3=_0x5bf8ab[_0x22bd24];if(a0_0x4381['McJImM']===undefined){var _0x32702f=function(_0x4405d0){const _0x541bb5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27ec53='',_0x3f82d6='';for(let _0x4726f7=0x0,_0x193914,_0x58faf3,_0x83f38b=0x0;_0x58faf3=_0x4405d0['charAt'](_0x83f38b++);~_0x58faf3&&(_0x193914=_0x4726f7%0x4?_0x193914*0x40+_0x58faf3:_0x58faf3,_0x4726f7++%0x4)?_0x27ec53+=String['fromCharCode'](0xff&_0x193914>>(-0x2*_0x4726f7&0x6)):0x0){_0x58faf3=_0x541bb5['indexOf'](_0x58faf3);}for(let _0x3ee5f6=0x0,_0x531fb5=_0x27ec53['length'];_0x3ee5f6<_0x531fb5;_0x3ee5f6++){_0x3f82d6+='%'+('00'+_0x27ec53['charCodeAt'](_0x3ee5f6)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3f82d6);};a0_0x4381['SDgjdX']=_0x32702f,a0_0x4381['hvkGPw']={},a0_0x4381['McJImM']=!![];}const _0x1e71a0=_0x5bf8ab[0x0],_0x201f5a=_0x22bd24+_0x1e71a0,_0x258d17=a0_0x4381['hvkGPw'][_0x201f5a];return!_0x258d17?(_0x4381f3=a0_0x4381['SDgjdX'](_0x4381f3),a0_0x4381['hvkGPw'][_0x201f5a]=_0x4381f3):_0x4381f3=_0x258d17,_0x4381f3;}class FileWatcher{constructor(_0x23a587={}){const _0x4f930a=a0_0x4381,_0x583dc5={'rSBzd':'.js'},_0x47562a=_0x4f930a(0x19e)[_0x4f930a(0x1a0)]('|');let _0x438369=0x0;while(!![]){switch(_0x47562a[_0x438369++]){case'0':this['directories']=_0x23a587[_0x4f930a(0x19f)]||[];continue;case'1':this['watchers']=[];continue;case'2':this[_0x4f930a(0x1a7)]=_0x23a587[_0x4f930a(0x1a7)]||(()=>{});continue;case'3':this['debounceTimer']=null;continue;case'4':this[_0x4f930a(0x192)]=_0x23a587[_0x4f930a(0x192)]||[_0x583dc5[_0x4f930a(0x1a9)],'.json'];continue;case'5':this['debounceMs']=_0x23a587[_0x4f930a(0x1a4)]||0x1f4;continue;}break;}}[a0_0x4fdbdf(0x198)](){const _0x58b598=a0_0x4fdbdf;for(const _0x58a69f of this[_0x58b598(0x19f)]){if(!fs[_0x58b598(0x196)](_0x58a69f)){console['log']('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path['relative'](process['cwd'](),_0x58a69f)||_0x58a69f));continue;}try{const _0x489b60=fs[_0x58b598(0x19b)](_0x58a69f,{'recursive':!![]},(_0x269d77,_0x3dd98f)=>{const _0x5a72f0=_0x58b598;if(!_0x3dd98f)return;const _0x59b041=path['extname'](_0x3dd98f)['toLowerCase']();if(!this[_0x5a72f0(0x192)][_0x5a72f0(0x19a)](_0x59b041))return;this[_0x5a72f0(0x194)](_0x3dd98f);});_0x489b60['on']('error',_0x2b5507=>{const _0x5772a7=_0x58b598;console[_0x5772a7(0x1a8)]('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x5772a7(0x197)](process['cwd'](),_0x58a69f)+':\x20'+_0x2b5507['message']);}),this[_0x58b598(0x1a6)][_0x58b598(0x1a5)](_0x489b60);const _0xc9d821=path['relative'](process['cwd'](),_0x58a69f)||_0x58a69f;console['log'](_0x58b598(0x193)+_0xc9d821+'/\x20(recursive)');}catch(_0x1d831c){console[_0x58b598(0x1a8)]('\x20\x20[WATCH]\x20Warning:\x20Failed\x20to\x20setup\x20watcher\x20for\x20'+path[_0x58b598(0x197)](process[_0x58b598(0x18f)](),_0x58a69f)+':\x20'+_0x1d831c[_0x58b598(0x1a2)]);}}}['stop'](){const _0x4c920c=a0_0x4fdbdf,_0x556084={'PEGZs':function(_0x3877d6,_0x389b31){return _0x3877d6(_0x389b31);}};for(const _0x4cb9f0 of this[_0x4c920c(0x1a6)]){try{_0x4cb9f0[_0x4c920c(0x18b)]();}catch(_0x56bda2){}}this[_0x4c920c(0x1a6)]=[],this['debounceTimer']&&(_0x556084[_0x4c920c(0x19d)](clearTimeout,this['debounceTimer']),this['debounceTimer']=null);}['_debounce'](_0x28ec90){const _0x496d09=a0_0x4fdbdf;this['debounceTimer']&&clearTimeout(this['debounceTimer']),this['debounceTimer']=setTimeout(()=>{this['debounceTimer']=null,this['onChange'](_0x28ec90);},this[_0x496d09(0x1a4)]);}}module[a0_0x4fdbdf(0x18c)]=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';const a0_0x1ed12e=a0_0x4f6e;(function(_0x401f40,_0x4c9f01){const _0x1e9dda=a0_0x4f6e,_0x2f86e3=_0x401f40();while(!![]){try{const _0x3744c1=-parseInt(_0x1e9dda(0x1fa))/0x1+-parseInt(_0x1e9dda(0x273))/0x2+-parseInt(_0x1e9dda(0x1c3))/0x3*(parseInt(_0x1e9dda(0x22d))/0x4)+-parseInt(_0x1e9dda(0x1c1))/0x5*(-parseInt(_0x1e9dda(0x1f8))/0x6)+parseInt(_0x1e9dda(0x1c7))/0x7+parseInt(_0x1e9dda(0x2be))/0x8+parseInt(_0x1e9dda(0x234))/0x9;if(_0x3744c1===_0x4c9f01)break;else _0x2f86e3['push'](_0x2f86e3['shift']());}catch(_0x44dc89){_0x2f86e3['push'](_0x2f86e3['shift']());}}}(a0_0x1fef,0x64ae0));const crypto=require('crypto'),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require(a0_0x1ed12e(0x28e)),ALLOWED_FORMATS=new Set([a0_0x1ed12e(0x1fd),'yyyy',a0_0x1ed12e(0x269),'yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\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_0x1ed12e(0x26d),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x1ed12e(0x270);function a0_0x4f6e(_0x324257,_0x20c975){_0x324257=_0x324257-0x1bf;const _0x1fef00=a0_0x1fef();let _0x4f6e6b=_0x1fef00[_0x324257];if(a0_0x4f6e['dxALXC']===undefined){var _0x545c2d=function(_0x3258b9){const _0xffaf6f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x457178='',_0x544748='';for(let _0xfe940c=0x0,_0x18a22b,_0x345d69,_0x1fc663=0x0;_0x345d69=_0x3258b9['charAt'](_0x1fc663++);~_0x345d69&&(_0x18a22b=_0xfe940c%0x4?_0x18a22b*0x40+_0x345d69:_0x345d69,_0xfe940c++%0x4)?_0x457178+=String['fromCharCode'](0xff&_0x18a22b>>(-0x2*_0xfe940c&0x6)):0x0){_0x345d69=_0xffaf6f['indexOf'](_0x345d69);}for(let _0x149477=0x0,_0x4b1bd5=_0x457178['length'];_0x149477<_0x4b1bd5;_0x149477++){_0x544748+='%'+('00'+_0x457178['charCodeAt'](_0x149477)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x544748);};a0_0x4f6e['MUChvC']=_0x545c2d,a0_0x4f6e['OTgeAr']={},a0_0x4f6e['dxALXC']=!![];}const _0x15ff10=_0x1fef00[0x0],_0x41a070=_0x324257+_0x15ff10,_0x5be705=a0_0x4f6e['OTgeAr'][_0x41a070];return!_0x5be705?(_0x4f6e6b=a0_0x4f6e['MUChvC'](_0x4f6e6b),a0_0x4f6e['OTgeAr'][_0x41a070]=_0x4f6e6b):_0x4f6e6b=_0x5be705,_0x4f6e6b;}function a0_0x1fef(){const _0x177f71=['s2Lcs2y','BNvTyMvY','wg1sD2i','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','z1fnuw4','rujJEfG','DNnkEfC','CMvZB3vYy2u','uurAEMu','CNPewxm','C3nnBgW','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','surhru5Fsu5wquXjrf9ovu1crvi','ywXSB3DszxnLDa','CNn2oG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','C3bSAxq','uxn5sva','swrLBxbVDgvUy3KGy2fJAguGseLu','Bwf0y2G','x2fSBg93uMvZzxq','zLztBxa','vw5RBM93BIbTB2rLoIa','x2j1AwXKuMv1C2vlzxK','ufjWr0u','x2rLzMf1BhrdB2rLugf0DgvYBG','Aw5MBW','y3jLyxrLzef0','qK5eueG','Cu9XwNC','odq2mtjgwvLtywi','CMvSzwfZzq','veLvBLG','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','x3bHCNnLtNvTyMvY','AwrNzw5FAwrLBv9OAxq','AgDLDgfSBa','nZiZmdK2sfDpDePQ','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','x3jLC2vYDMvnyxHuveW','qxrJCKy','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','zxHWAxjL','wwflzgC','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','DhrStxm','t3fjze4','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','zw5HyMXLza','x2vUywjSzwq','icHNB3q6ia','surhru5FreLtqujmruq','zMPLu3O','BNvTrgLNAxrZ','ALPyCKK','C2vXoG','Dhj1zq','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','we5yvuC','CgfYC2u','yKXjyue','DwrABhK','BgvUz3rO','x2j1AwXKuMvZzxj2yxrPB25lzxK','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','CMy6AwrNzw46','C2nHCMq','x2rLzMf1BhrqAw5eAwDPDhm','svDushO','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','CujlDLO','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','CfPJq3e','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','swrhzw5LCMf0B3jfCNjVCG','AvPgqKG','ihbHCNrZkq','y291BNrLCG','v1LqCxO','x3L5ExLTBwrKxW','wfHywc1ywfHylvHywfGTwfHywa','CgfKzgvKicHNB3q6ia','rhLSCMm','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','zw5ZDxjLvw5PCxvL','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','y291BNrLCKLUDa','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','ExL5Ew1T','z2v0','DuLXDuO','D2fYBG','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','surhru5Fsu5wquXjrf9quKvgsvG','wurTAu4','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','ExL5Eq','mte3otiYnK5SD1DcvW','surhru5Fsu5wquXjrf9nt0rf','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','zw52','zMPTyNq','x3n0B3jLswrLBunHy2HLtLG','Bwf4uMv0CNK','x2TLEvbYzwzPEa','suqGr2vUzxjHDg9YihjHBMrVBtOG','x2vUC3vYzuLUAxrPywXPEMvK','zK1ZA1a','x3zHBgLKyxrLuMvZzxj2zvruta','ugnTswu','BM93','BwvZC2fNzq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','CMvZzxj2zu51BwjLCG','sw52ywXPzcbMB3jTyxq6ia','x3rLEhq','Dg9Rzw4','x2j1AwXKrM9YBwf0s2v5','x2rLzMf1BhrnyxHszxrYEq','zgLsEgy','surhru5FquXmt1DFuKvtrvq','C2v0','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','q3DqAwu','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','x3jLC2vYDMvezwzHDwX0vfrm','zgLNAxrZ','AwrNzw5Fy29UzMLNx2LUAxq','CgfKu3rHCNq','C3rVCMvK','z2v0uMvZzxj2yxrPB24','AxnZDwvKoG','CMfUzg9Tvvvjra','qxrouKi','CMvZzxj2zurLzMf1BhruveW','rLHer3K','zM9YBwf0s2v5','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','CNn2s2v5','x3zHBgLKyxrLvfrm','tMPwvhK','B1bVBg0','zgvMyxvSDfnLCMLHBfbHDhrLCM4','x3bHzdi','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','svniBwu','x2nVDw50zxjuveXnyxa','Cg93','igrPz2L0CYaOz290oIa','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','Bw9Kzq','x2zVCM1HDe51BwjLCG','x2j1AwXKqwn0AxzLs2v5','DgvZDa','y2fUy2vSuMvZzxj2yxrPB24','q291BNrLCIbVDMvYzMXVDZOG','Dg9mB3DLCKnHC2u','r2nRCe0','z2v0rgf0zq','Dg9ju09tDhjPBMC','AxnZDwvK','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','surhru5Fq09vtLrfuL9pvKvsrKXpvW','x3jLDhjPzxzLswrLBunHy2HL','uuroAfa','tMnMsge','r0vJExC','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','CLLOCfe','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CMfUzg9T','nJm2ndu2mg56uKzeza','z2vUzxjHDgvKqxq','A0Duwee','y29Kzq','CMvZzxj2zq','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','surhru5Fsu5wquXjrf9gt1jnqvq','txnfse8','surhru5Frevgqvvmvf9qsu5FreLhsvrt','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','BMfTzq','ExL5Ew1Tzgq','zM9YBwf0','x3zHBgLKyxrLtwf4uMv0CNK','C2vWyxjHDg9Y','x2j1AwXKtwv0yuTLEq','AwrNzw4','z2v0q2XPzw50','surhru5Fsu5wquXjrf9uveW','rvfuwuW','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','Cuzpz1y','x2DLDenVDw50zxjuveW','yM9VBgvHBG','tuLzEKe','x3vWzgf0zu1LDge','zgvS','CMv1C2u','DMfSDwuGAxmGCMvXDwLYzwq','wfb0uMu','surhru5Fsu5wquXjrf9trvbbuKfut1i','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','DhrS','zxPrC1O','DfPoBKG','EeXksNi','AwrLBvruta','AxnszxvZzwq','C2vX','ChjLzML4','ignOyxjZicHNB3qGBgvUz3rOoIa','AxnjBNrLz2vY','surhru5FuKvtrvrFtK9ux0fmte9xruq','uMzKDxi','ote1nw50s1fQta','suqGr2vUzxjHDg9YihjLC2v0oIa','ndj6DwjKzLK','z2v0sw5MBW','Bg5cqu4','surhru5Fru5bqKXfra','ndeWotuZowzguvPRuq','ywXS','CNn2swr4s2v5','x3zHBgLKyxrLuMvZB3vYy2u','uMvPCxO','icH0B2TLBJ0','ywjWzw4','CMvZzxj2zv9JB25MAxjT','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','uejzEfa','zgvMyxvSDfbPBKrPz2L0CW','x2j1AwXKswrLBuTLEq','rwvzA2K','DKn1ENu','AM9PBG','zgvMyxvSDe1HEfjLDhj5','wgvZv3m','x2j1AwXKsxnZDwvKs2v5','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','zxHWB3j0CW','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','C3rYAw5N','D2LUBMvYuMvZDwX0','EMLzDem','DK9cCw4','CMvWzwf0','x3L5ExLF','x2DLBMvYyxrLrNjVBvbHDhrLCM4','igv4y2vLzhmG','CgvLAW','zw50CMLLCW','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','v3rsv3O','tu1jEMW','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','s0vir20','Cgf0DgvYBG','x3n0B3jLswrLBunHy2HL','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','uKLyquG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','surhru5Fsu5wquXjrf9srvnpvvjdrq','zwr4BgC','x3L5ExLTBv8','CMvZzxj2zv9Jyw5JzwW','A2v5uhjLzML4','C2v0zxG','C3rYAw5NAwz5','nZe0zwzQz09A','zxzHBa','mZGYnZqXte9lzw5t','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','ELbXBgG','Dgv4Da','v216D2K','uhziCuC','s1H4Ewm','ihnLy29UzhmGkgDVDdOG','zMrqvgO','ChvZAa','tKDKtuS','q29ctgi','AxL2u2G','AwrLBxbVDgvUy3LlzxK','x3zHBgLKyxrLugf0DgvYBG','DMfSDwu','ywn0AxzLoG','zxHLyW','uMXbuLy','x2j1AwXKu2vXs2v5'];a0_0x1fef=function(){return _0x177f71;};return a0_0x1fef();}class IdGeneratorError extends Error{constructor(_0x1b13e9,_0x217a47,_0x3262f2=null){const _0x1acef8=a0_0x1ed12e,_0x4db1ef={'jZXrI':_0x1acef8(0x25a)};super(_0x217a47||_0x1b13e9),this[_0x1acef8(0x2c8)]=_0x4db1ef[_0x1acef8(0x246)],this[_0x1acef8(0x2c1)]=_0x1b13e9,this['details']=_0x3262f2;}}class IdGenerator{constructor(){const _0x30c1ac=a0_0x1ed12e;this['_initialized']=![],this[_0x30c1ac(0x241)]=null,this[_0x30c1ac(0x27a)]=null,this['_idemTTL']=null,this[_0x30c1ac(0x223)]=null,this['_defaultMaxRetry']=null,this['_defaultPinDigits']=null,this[_0x30c1ac(0x2bc)]=null,this[_0x30c1ac(0x228)]=null,this['_counterTTLMap']=null,this[_0x30c1ac(0x28f)]=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0xcd291b=a0_0x1ed12e,_0x2e0efd={'EBcxX':function(_0x4c0907,_0x15fd73){return _0x4c0907===_0x15fd73;},'AtNRB':_0xcd291b(0x248),'ISHme':function(_0x55d0b3,_0x3da568,_0x8ed619){return _0x55d0b3(_0x3da568,_0x8ed619);},'iyvSh':_0xcd291b(0x260),'abpen':'9999-9999','kGrzq':function(_0x387444,_0x166c0f,_0x395c5a){return _0x387444(_0x166c0f,_0x395c5a);}};this['_keyPrefix']=_0xcd291b(0x251),this[_0xcd291b(0x241)]=_0x2e0efd[_0xcd291b(0x213)](process[_0xcd291b(0x276)][_0xcd291b(0x1c6)],_0x2e0efd[_0xcd291b(0x297)]),this['_idemTTL']=_0x2e0efd[_0xcd291b(0x2a3)](parseInt,process[_0xcd291b(0x276)]['IDGEN_IDEM_TTL'],0xa)||0x258,this[_0xcd291b(0x223)]=process['env'][_0xcd291b(0x28a)]===_0x2e0efd[_0xcd291b(0x297)],this[_0xcd291b(0x288)]=parseInt(process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process[_0xcd291b(0x276)][_0xcd291b(0x2c6)],0xa)||0x6,this[_0xcd291b(0x2bc)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x2e0efd[_0xcd291b(0x206)],this[_0xcd291b(0x228)]=process[_0xcd291b(0x276)]['IDGEN_DEFAULT_CODE_PATTERN']||_0x2e0efd[_0xcd291b(0x1cd)],this[_0xcd291b(0x2a4)]={'yyyymm':parseInt(process[_0xcd291b(0x276)]['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':_0x2e0efd['kGrzq'](parseInt,process['env']['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300},this['_reserveDefaultTTL']=parseInt(process[_0xcd291b(0x276)][_0xcd291b(0x2a8)],0xa)||DEFAULT_RESERVE_TTL,this[_0xcd291b(0x236)]=parseInt(process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger['info']({'event':_0xcd291b(0x291),'enabled':this['_enabled'],'idemTTL':this['_idemTTL'],'allowReset':this[_0xcd291b(0x223)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this[_0xcd291b(0x236)]},_0xcd291b(0x2c3)+this['_enabled']);}['_ensureInitialized'](){if(!this['_initialized'])this['_initConfig']();}get['enabled'](){const _0x4ce57d=a0_0x1ed12e;return this[_0x4ce57d(0x27c)](),this['_enabled'];}get['keyPrefix'](){const _0x59033a=a0_0x1ed12e;return this[_0x59033a(0x27c)](),this[_0x59033a(0x27a)];}get[a0_0x1ed12e(0x2e2)](){const _0x3ddd4d=a0_0x1ed12e;return this[_0x3ddd4d(0x27c)](),this['_idemTTL'];}get['allowReset'](){const _0x56b087=a0_0x1ed12e;return this[_0x56b087(0x27c)](),this[_0x56b087(0x223)];}get['defaultMaxRetry'](){return this['_ensureInitialized'](),this['_defaultMaxRetry'];}get['defaultPinDigits'](){const _0x4be27f=a0_0x1ed12e;return this[_0x4be27f(0x27c)](),this[_0x4be27f(0x253)];}get[a0_0x1ed12e(0x2a0)](){return this['_ensureInitialized'](),this['_defaultSerialPattern'];}get['defaultCodePattern'](){return this['_ensureInitialized'](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x1d5742=a0_0x1ed12e;return this[_0x1d5742(0x27c)](),this[_0x1d5742(0x28f)];}get['reserveMaxTTL'](){const _0x29be0a=a0_0x1ed12e;return this['_ensureInitialized'](),this[_0x29be0a(0x236)];}['isEnabled'](){const _0x2c5bcb=a0_0x1ed12e;return this[_0x2c5bcb(0x240)];}[a0_0x1ed12e(0x1ca)](_0x4ba428){const _0x2ff472=a0_0x1ed12e,_0x14249a={'QsyIP':function(_0x5d278a,_0x2d3931){return _0x5d278a!==_0x2d3931;}};if(_0x14249a[_0x2ff472(0x220)](typeof _0x4ba428,_0x2ff472(0x1dc))||!RESOURCE_REGEX['test'](_0x4ba428))throw new IdGeneratorError(_0x2ff472(0x1f1),_0x2ff472(0x257)+RESOURCE_REGEX+_0x2ff472(0x242)+JSON['stringify'](_0x4ba428)+')');}['_validateNumberParams'](_0x53f41b){const _0x322d56=a0_0x1ed12e,_0x367163={'cPoYF':'IDGEN_INVALID_FORMAT','FQSnV':function(_0x3f44e2,_0xd3fef){return _0x3f44e2<_0xd3fef;},'PRpGE':'IDGEN_INVALID_NUM_DIGITS','WYPqz':function(_0x23a424,_0x4ac1e6){return _0x23a424==_0x4ac1e6;},'qpHSQ':_0x322d56(0x1dc),'ziYtC':function(_0x2e689e,_0x40269b){return _0x2e689e!==_0x40269b;},'diRxf':function(_0x423da8,_0x11c82b){return _0x423da8!=_0x11c82b;},'KEHGm':_0x322d56(0x2d5),'NcfHa':function(_0x59a79b,_0x12845a){return _0x59a79b===_0x12845a;}},{resource:_0x2f7f45,format:_0xe3c1c5,prefix:_0x36fd07,separator:_0x5cfee9,numDigits:_0x2be3d5,reuseDelete:_0x15d6fe}=_0x53f41b;this[_0x322d56(0x1ca)](_0x2f7f45);const _0x76c226=typeof _0xe3c1c5==='string'?_0xe3c1c5['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0x76c226))throw new IdGeneratorError(_0x367163['cPoYF'],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x322d56(0x1d5)](',\x20')+_0x322d56(0x242)+_0xe3c1c5+')');if(!Number['isInteger'](_0x2be3d5)||_0x367163['FQSnV'](_0x2be3d5,MIN_NUM_DIGITS)||_0x2be3d5>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x367163[_0x322d56(0x227)],'Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x322d56(0x242)+_0x2be3d5+')');const _0x5db090=_0x367163[_0x322d56(0x25e)](_0x36fd07,null)?'':_0x36fd07;if(typeof _0x5db090!==_0x367163['qpHSQ']||!PREFIX_REGEX['test'](_0x5db090))throw new IdGeneratorError(_0x322d56(0x26e),'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x36fd07)+')');const _0x48006f=_0x5cfee9==null?'':_0x5cfee9;if(_0x367163[_0x322d56(0x1de)](typeof _0x48006f,_0x322d56(0x1dc))||_0x48006f['length']>0x3||SEPARATOR_FORBIDDEN[_0x322d56(0x2ac)](_0x48006f))throw new IdGeneratorError(_0x322d56(0x2dc),'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON['stringify'](_0x5cfee9)+')');if(_0x367163[_0x322d56(0x289)](_0x15d6fe,null)&&typeof _0x15d6fe!==_0x367163[_0x322d56(0x1ea)])throw new IdGeneratorError(_0x322d56(0x1f1),'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x15d6fe+')');return{'resource':_0x2f7f45,'format':_0x76c226,'prefix':_0x5db090,'separator':_0x48006f,'numDigits':_0x2be3d5,'reuseDelete':_0x367163[_0x322d56(0x2b8)](_0x15d6fe,!![])};}['_validatePattern'](_0x4996a2){const _0x3b4b8e=a0_0x1ed12e,_0x4b624d={'hyCvM':function(_0x546190,_0xac75bb){return _0x546190!==_0xac75bb;},'GtuoI':function(_0x4e47c0,_0x3eab88){return _0x4e47c0===_0x3eab88;},'YDmiN':'IDGEN_INVALID_PATTERN'};if(_0x4b624d['hyCvM'](typeof _0x4996a2,'string')||_0x4b624d['GtuoI'](_0x4996a2[_0x3b4b8e(0x24e)],0x0)||_0x4996a2['length']>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0x4b624d[_0x3b4b8e(0x26f)],_0x3b4b8e(0x239)+MAX_PATTERN_LENGTH+_0x3b4b8e(0x2e6)+(_0x4996a2&&_0x4996a2['length'])+')');let _0x4c4fce=![];for(const _0x3cb72f of _0x4996a2){if(PLACEHOLDER_MAP[_0x3cb72f]){_0x4c4fce=!![];break;}}if(!_0x4c4fce)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_0x1ed12e(0x29d)](_0x431411){const _0x1e3002=a0_0x1ed12e,_0x128433={'ReZQK':function(_0x278be0,_0x432e66){return _0x278be0<_0x432e66;},'gQMQn':function(_0x5aec45,_0x493548){return _0x5aec45>_0x493548;},'KXxyc':_0x1e3002(0x2d0)};if(_0x431411==null)return undefined;if(!Number[_0x1e3002(0x2e7)](_0x431411)||_0x128433['ReZQK'](_0x431411,0x1)||_0x128433[_0x1e3002(0x212)](_0x431411,MAX_TTL))throw new IdGeneratorError(_0x128433[_0x1e3002(0x200)],_0x1e3002(0x271)+MAX_TTL+_0x1e3002(0x201)+_0x431411+')');return _0x431411;}['_validateMaxRetry'](_0x2d89bb){const _0x9be2fb=a0_0x1ed12e,_0x22d25f={'zPqlh':function(_0x4d2fdd,_0x384116){return _0x4d2fdd==_0x384116;},'VeLwy':function(_0x308866,_0x531f98){return _0x308866<_0x531f98;}};if(_0x22d25f[_0x9be2fb(0x1fc)](_0x2d89bb,null))return this[_0x9be2fb(0x1d6)];if(!Number[_0x9be2fb(0x2e7)](_0x2d89bb)||_0x22d25f['VeLwy'](_0x2d89bb,0x1)||_0x2d89bb>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY',_0x9be2fb(0x219)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x2d89bb+')');return _0x2d89bb;}['_validateIdempotencyKey'](_0x1a9e76){const _0x58a122=a0_0x1ed12e,_0x5e5f1d={'HGjfY':_0x58a122(0x1dc),'uIquJ':function(_0x7a0c22,_0x12255b){return _0x7a0c22>_0x12255b;}};if(_0x1a9e76==null)return undefined;if(typeof _0x1a9e76!==_0x5e5f1d['HGjfY']||_0x1a9e76[_0x58a122(0x24e)]===0x0||_0x5e5f1d[_0x58a122(0x26b)](_0x1a9e76['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x1a9e76;}[a0_0x1ed12e(0x27e)](_0x468f2e){const _0x39fb26=a0_0x1ed12e,_0x4b1078={'mZxlC':function(_0x5df891,_0x2142ae){return _0x5df891>_0x2142ae;}};if(_0x468f2e==null)return this[_0x39fb26(0x298)];if(!Number['isInteger'](_0x468f2e)||_0x468f2e<MIN_RESERVE_TTL||_0x4b1078['mZxlC'](_0x468f2e,this['reserveMaxTTL']))throw new IdGeneratorError(_0x39fb26(0x2a2),'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0x39fb26(0x201)+_0x468f2e+')');return _0x468f2e;}['_validateReservationToken'](_0x53a701){const _0x68c294=a0_0x1ed12e,_0x2dc2f4={'edxlg':function(_0x92a8f6,_0xc6ae6e){return _0x92a8f6!==_0xc6ae6e;},'vCuzu':_0x68c294(0x1dc)};if(_0x2dc2f4[_0x68c294(0x1f2)](typeof _0x53a701,_0x2dc2f4[_0x68c294(0x1d4)])||!RESERVATION_TOKEN_REGEX['test'](_0x53a701))throw new IdGeneratorError('IDGEN_INVALID_TOKEN',_0x68c294(0x249)+JSON['stringify'](_0x53a701)+')');return _0x53a701;}[a0_0x1ed12e(0x2a1)](_0x1cdcac){const _0x282b07=a0_0x1ed12e,_0x19ec0d={'NPwVn':function(_0x3e77fb,_0x10ac22){return _0x3e77fb(_0x10ac22);}};return _0x19ec0d['NPwVn'](String,_0x1cdcac)[_0x282b07(0x292)](0x2,'0');}['_buildFormatKey'](_0x1635c3,_0x5aba1f,_0x349780=new Date()){const _0x412c89=a0_0x1ed12e,_0x42a71f={'Uhhjf':'yyyy','NBAxW':_0x412c89(0x269),'GKMRY':_0x412c89(0x2c9),'ezQsZ':_0x412c89(0x2c4)},_0x553f91=_0x349780['getFullYear'](),_0x393128=this[_0x412c89(0x2a1)](_0x349780['getMonth']()+0x1),_0x4e8475=this['_pad2'](_0x349780[_0x412c89(0x2b1)]()),_0x486c94=_0x5aba1f||'_';let _0x33753e,_0x3c2052='';switch(_0x1635c3){case'text':_0x33753e=_0x486c94+_0x412c89(0x285);break;case _0x42a71f['Uhhjf']:_0x3c2052=''+_0x553f91,_0x33753e=_0x486c94+_0x412c89(0x1e1)+_0x3c2052;break;case _0x42a71f['NBAxW']:_0x3c2052=''+_0x553f91+_0x393128,_0x33753e=_0x486c94+_0x412c89(0x1f3)+_0x3c2052;break;case _0x42a71f['GKMRY']:_0x3c2052=''+_0x553f91+_0x393128+_0x4e8475,_0x33753e=_0x486c94+_0x412c89(0x25f)+_0x3c2052;break;default:throw new IdGeneratorError(_0x42a71f[_0x412c89(0x2df)],'Unknown\x20format:\x20'+_0x1635c3);}return{'formatKey':_0x33753e,'datePrefix':_0x3c2052};}[a0_0x1ed12e(0x20d)](_0x4c1e4b,_0x2cb74d){const _0x285ccf=a0_0x1ed12e;return this['keyPrefix']+_0x285ccf(0x247)+_0x4c1e4b+':'+_0x2cb74d;}['_buildReuseKey'](_0x219877,_0x17f490){const _0x1c19bf=a0_0x1ed12e;return this[_0x1c19bf(0x1f5)]+'reuse:'+_0x219877+':'+_0x17f490;}[a0_0x1ed12e(0x2cd)](_0x5577c0,_0x176757){return this['keyPrefix']+'meta:'+_0x5577c0+':'+_0x176757;}['_buildIssuedKey'](_0x20d82f){const _0xbb2524=a0_0x1ed12e;return this['keyPrefix']+_0xbb2524(0x295)+_0x20d82f;}[a0_0x1ed12e(0x2ab)](_0x189ad6,_0x582663){const _0x33fb6c=a0_0x1ed12e;return this['keyPrefix']+_0x33fb6c(0x20a)+_0x189ad6+':'+_0x582663;}[a0_0x1ed12e(0x24f)](_0x346ecf){const _0x53f98f=a0_0x1ed12e;return this[_0x53f98f(0x1f5)]+'rsv:'+_0x346ecf;}['_buildReservationIndexKey'](_0x1708b1,_0x2b64c0){const _0x1547b1=a0_0x1ed12e;return this[_0x1547b1(0x1f5)]+'rsv_idx:'+_0x1708b1+':'+_0x2b64c0;}[a0_0x1ed12e(0x21e)](){const _0x2839de=a0_0x1ed12e;return this[_0x2839de(0x1f5)]+_0x2839de(0x21c);}[a0_0x1ed12e(0x1d2)](_0x8e2e53,_0x5bd5a0,_0x3eecee,_0x5f4c61){const _0x449c4d=a0_0x1ed12e,_0x340cd9={'WtRWz':'idgen'};if(_0x3eecee)return idempotencyManager['buildDeterministicKey'](_0x340cd9[_0x449c4d(0x1e7)],_0x8e2e53,_0x5bd5a0+':'+_0x3eecee+':'+_0x5f4c61);return idempotencyManager['buildDeterministicKey'](_0x340cd9['WtRWz'],_0x8e2e53,_0x5bd5a0+':'+_0x5f4c61);}[a0_0x1ed12e(0x2d4)](_0x528c57){const _0xe3a826=a0_0x1ed12e;return this[_0xe3a826(0x2a4)][_0x528c57]||0x0;}['_formatNumber']({format:_0x35e47c,prefix:_0x39cd56,datePrefix:_0x45c92b,separator:_0x141a8f,numDigits:_0x2e1a87,counterInt:_0xd9838e}){const _0x587b52=a0_0x1ed12e,_0x5ddf58={'pUmZG':_0x587b52(0x2b5),'oPolm':function(_0x3a75c1,_0x21753b){return _0x3a75c1===_0x21753b;}},_0x47ac83=Math[_0x587b52(0x2a5)](0xa,_0x2e1a87)-0x1;if(_0xd9838e>_0x47ac83)throw new IdGeneratorError(_0x5ddf58['pUmZG'],_0x587b52(0x2ae)+_0xd9838e+_0x587b52(0x1e3)+_0x2e1a87+'-digit\x20capacity\x20('+_0x47ac83+_0x587b52(0x2ba),{'counterInt':_0xd9838e,'numDigits':_0x2e1a87,'max':_0x47ac83});const _0xbc7af3=String(_0xd9838e)['padStart'](_0x2e1a87,'0');if(_0x5ddf58[_0x587b52(0x29f)](_0x35e47c,_0x587b52(0x1fd)))return _0x39cd56?''+_0x39cd56+_0x141a8f+_0xbc7af3:_0xbc7af3;return _0x39cd56?''+_0x39cd56+_0x141a8f+_0x45c92b+_0x141a8f+_0xbc7af3:''+_0x45c92b+_0x141a8f+_0xbc7af3;}[a0_0x1ed12e(0x231)]({format:_0x3d5c95,prefix:_0x13311,separator:_0x1e2104,numDigits:_0x5d8aba,number:_0x1167bd}){const _0x465192=a0_0x1ed12e,_0x25d839={'eGoCE':function(_0x59b2ca,_0x51d9fc){return _0x59b2ca===_0x51d9fc;},'MsEHO':_0x465192(0x21a),'vsJxW':function(_0x39533f,_0x420cda){return _0x39533f===_0x420cda;},'ciUVc':function(_0x1bb4bc,_0x4a13a1){return _0x1bb4bc!==_0x4a13a1;},'RlARV':function(_0xd470c,_0x4197c3){return _0xd470c===_0x4197c3;},'XmRwb':_0x465192(0x272),'tZNnH':function(_0x488172,_0x491ffe,_0x6e9e3f){return _0x488172(_0x491ffe,_0x6e9e3f);},'Ffiuk':'text'};if(typeof _0x1167bd!==_0x465192(0x1dc)||_0x25d839['eGoCE'](_0x1167bd['length'],0x0))throw new IdGeneratorError(_0x25d839['MsEHO'],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0xa58fe6=_0x1e2104||'',_0x2e5faa=_0x25d839[_0x465192(0x214)](_0xa58fe6,'')?[_0x1167bd]:_0x1167bd[_0x465192(0x21f)](_0xa58fe6);let _0x444256='',_0x3e15d6;if(_0x25d839['eGoCE'](_0x3d5c95,'text')){if(_0x13311){if(_0x2e5faa['length']!==0x2||_0x2e5faa[0x0]!==_0x13311)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x465192(0x1e6)+_0xa58fe6+_0x465192(0x261)+_0x1167bd+')');_0x3e15d6=_0x2e5faa[0x1];}else{if(_0x2e5faa['length']!==0x1)throw new IdGeneratorError(_0x465192(0x21a),'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x1167bd+')');_0x3e15d6=_0x2e5faa[0x0];}}else{const _0x493627=_0x13311?0x3:0x2;if(_0x2e5faa['length']!==_0x493627)throw new IdGeneratorError(_0x25d839[_0x465192(0x2c5)],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x1167bd+',\x20expected\x20'+_0x493627+_0x465192(0x25c));let _0x3250c0=0x0;if(_0x13311){if(_0x25d839['ciUVc'](_0x2e5faa[_0x3250c0],_0x13311))throw new IdGeneratorError(_0x25d839[_0x465192(0x2c5)],_0x465192(0x211)+_0x13311+',\x20got\x20'+_0x2e5faa[_0x3250c0]);_0x3250c0++;}_0x444256=_0x2e5faa[_0x3250c0++];const _0x3fc255=_0x25d839[_0x465192(0x20c)](_0x3d5c95,_0x25d839[_0x465192(0x210)])?/^\d{4}$/:_0x25d839['vsJxW'](_0x3d5c95,_0x465192(0x269))?/^\d{6}$/:/^\d{8}$/;if(!_0x3fc255['test'](_0x444256))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x3d5c95+':\x20'+_0x444256);_0x3e15d6=_0x2e5faa[_0x3250c0];}if(!new RegExp('^\x5cd{'+_0x5d8aba+'}$')[_0x465192(0x2ac)](_0x3e15d6))throw new IdGeneratorError(_0x465192(0x21a),_0x465192(0x235)+_0x5d8aba+_0x465192(0x2a6)+_0x3e15d6+')');const _0x3a30cf=_0x25d839[_0x465192(0x2e0)](parseInt,_0x3e15d6,0xa),_0x98600=_0x13311||'_';let _0x4a929d;return _0x3d5c95===_0x25d839['Ffiuk']?_0x4a929d=_0x98600+_0x465192(0x285):_0x4a929d=_0x98600+'_'+_0x3d5c95+'_'+_0x444256,{'formatKey':_0x4a929d,'counterInt':_0x3a30cf,'datePrefix':_0x444256};}['_generateFromPattern'](_0x3dae1b){const _0x26ae4c=a0_0x1ed12e;let _0x3e5e10='';for(const _0x2f5657 of _0x3dae1b){const _0x1f45a1=PLACEHOLDER_MAP[_0x2f5657];if(_0x1f45a1){const _0x1f12ba=crypto['randomInt'](0x0,_0x1f45a1[_0x26ae4c(0x24e)]);_0x3e5e10+=_0x1f45a1[_0x1f12ba];}else _0x3e5e10+=_0x2f5657;}return _0x3e5e10;}async['_retrieveIdemCache'](_0x4bd2f6){const _0x1ff029=a0_0x1ed12e,_0x41d281={'CwPie':_0x1ff029(0x232),'ttXgj':_0x1ff029(0x221),'GEcyw':_0x1ff029(0x23f)};if(!_0x4bd2f6)return null;try{const _0x11b2ec=redisClient[_0x1ff029(0x2cf)](),_0x27f3df=await _0x11b2ec['get'](_0x4bd2f6);if(_0x27f3df)return logger['info']({'event':_0x41d281[_0x1ff029(0x28d)],'key':_0x4bd2f6},_0x41d281['ttXgj']),JSON[_0x1ff029(0x24b)](_0x27f3df);return null;}catch(_0x2e9b1f){return logger[_0x1ff029(0x26c)]({'event':'idgen_idem_retrieve_error','error':_0x2e9b1f['message']},_0x41d281[_0x1ff029(0x2b9)]),null;}}async[a0_0x1ed12e(0x1ec)](_0x43223d,_0x1aa957){const _0x681a59=a0_0x1ed12e,_0x12159e={'pZcCq':'Idempotency\x20store\x20error'};if(!_0x43223d)return;try{const _0x402d51=redisClient[_0x681a59(0x2cf)]();await _0x402d51[_0x681a59(0x1f6)](_0x43223d,this['idemTTL'],JSON[_0x681a59(0x1f7)](_0x1aa957));}catch(_0x5b231f){logger['warn']({'event':_0x681a59(0x238),'error':_0x5b231f[_0x681a59(0x281)]},_0x12159e[_0x681a59(0x258)]);}}async['_storeIdemCacheNX'](_0x1cf71c,_0x166ba8){const _0x32cca6=a0_0x1ed12e,_0x28cf32={'qFOgV':function(_0x3176b5,_0x4e453f){return _0x3176b5===_0x4e453f;},'udZly':'idgen_idem_nx_race_lost_but_empty','MMIzl':'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result','LFjxf':'idgen_idem_storenx_error','LgRqc':_0x32cca6(0x255)};if(!_0x1cf71c)return{'stored':!![],'winnerResult':null};try{const _0x227067=redisClient['getClient'](),_0x1eb9ec=JSON['stringify'](_0x166ba8),_0xb8eabb=await _0x227067[_0x32cca6(0x28b)](_0x1cf71c,_0x1eb9ec,'EX',this['idemTTL'],'NX');if(_0x28cf32[_0x32cca6(0x2d3)](_0xb8eabb,'OK'))return{'stored':!![],'winnerResult':null};const _0x4de909=await _0x227067['get'](_0x1cf71c);if(_0x4de909)return{'stored':![],'winnerResult':JSON[_0x32cca6(0x24b)](_0x4de909)};return logger[_0x32cca6(0x26c)]({'event':_0x28cf32[_0x32cca6(0x24d)],'key':_0x1cf71c},_0x28cf32[_0x32cca6(0x1e8)]),{'stored':!![],'winnerResult':null};}catch(_0x2fc9f8){return logger['warn']({'event':_0x28cf32['LFjxf'],'error':_0x2fc9f8['message']},_0x28cf32['LgRqc']),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x24f634,_0xcf5270,_0x32cad7){const _0x3c7193=a0_0x1ed12e,_0x1fda24={'ZdlyA':_0x3c7193(0x250)};try{const _0x1faf53=redisClient['getClient']();if(_0x32cad7){const _0x4eeb4d=this[_0x3c7193(0x2ab)](_0x24f634,_0xcf5270);await _0x1faf53[_0x3c7193(0x2d8)](_0x4eeb4d);}else{const _0x1ea4b7=this['_buildIssuedKey'](_0x24f634);await _0x1faf53['srem'](_0x1ea4b7,_0xcf5270);}}catch(_0x1d71e8){logger['warn']({'event':_0x1fda24['ZdlyA'],'error':_0x1d71e8['message']},_0x3c7193(0x2dd));}}async[a0_0x1ed12e(0x2d7)](_0x1feb67,_0x453c0d,_0x5414f8,_0x5cdc12=0x0){const _0x216c72=a0_0x1ed12e,_0x3aa9e6={'rmEvo':function(_0x33c353,_0x2b2ad0){return _0x33c353>_0x2b2ad0;},'Reiqz':'Meta\x20update\x20error'};try{const _0x11681c=redisClient[_0x216c72(0x2cf)](),_0x450395=this[_0x216c72(0x2cd)](_0x1feb67,_0x453c0d),_0x319e14=[];for(const [_0xa1edf6,_0x2a31e3]of Object[_0x216c72(0x1e5)](_0x5414f8)){_0x319e14[_0x216c72(0x203)](_0xa1edf6,String(_0x2a31e3));}if(_0x3aa9e6['rmEvo'](_0x319e14['length'],0x0)){await _0x11681c['hset'](_0x450395,..._0x319e14);if(_0x5cdc12>0x0)await _0x11681c[_0x216c72(0x23a)](_0x450395,_0x5cdc12);}}catch(_0x8d9ee4){logger[_0x216c72(0x26c)]({'event':'idgen_meta_update_error','error':_0x8d9ee4[_0x216c72(0x281)]},_0x3aa9e6[_0x216c72(0x1cb)]);}}async['number'](_0x4d94dd){const _0x6688e7=a0_0x1ed12e,_0x2e9127={'xazHE':_0x6688e7(0x259),'kGTXA':_0x6688e7(0x20f),'QMBbd':function(_0x343d1c,_0x18ebc5){return _0x343d1c(_0x18ebc5);},'QclUV':function(_0x124620,_0x146241){return _0x124620===_0x146241;},'HRzBM':_0x6688e7(0x263),'xboFa':_0x6688e7(0x1ee),'YaKdg':'idgen_number_generated'};if(!this[_0x6688e7(0x240)])throw new IdGeneratorError('IDGEN_DISABLED',_0x2e9127['xazHE']);const _0x20df1f=this['_validateNumberParams'](_0x4d94dd),_0x3bfadf=this['_validateIdempotencyKey'](_0x4d94dd[_0x6688e7(0x207)]),{resource:_0x594e18,format:_0x5496eb,prefix:_0x3c8893,separator:_0x5dd450,numDigits:_0x25b6dc,reuseDelete:_0x482e20}=_0x20df1f,{formatKey:_0x2d483e,datePrefix:_0x2600c7}=this[_0x6688e7(0x287)](_0x5496eb,_0x3c8893),_0x3c08ab=this['_buildSeqKey'](_0x594e18,_0x2d483e),_0x35efbc=this[_0x6688e7(0x226)](_0x594e18,_0x2d483e),_0x170452=this[_0x6688e7(0x2d4)](_0x5496eb);let _0x3e07d6=null;if(_0x3bfadf){_0x3e07d6=this[_0x6688e7(0x1d2)](_0x2e9127[_0x6688e7(0x2c0)],_0x594e18,_0x2d483e,_0x3bfadf);const _0x44d53c=await this[_0x6688e7(0x2b6)](_0x3e07d6);if(_0x44d53c)return _0x44d53c;}const _0x34f26a=redisClient[_0x6688e7(0x2cf)](),_0x9d9085=await _0x34f26a['eval'](LUA_GENERATE_NUMBER,0x2,_0x3c08ab,_0x35efbc,_0x482e20?'1':'0',_0x2e9127['QMBbd'](String,_0x170452)),_0x392e5b=_0x9d9085[0x0],_0x538162=_0x2e9127['QclUV'](_0x9d9085[0x1],0x1),_0x4ee64c=this['_formatNumber']({'format':_0x5496eb,'prefix':_0x3c8893,'datePrefix':_0x2600c7,'separator':_0x5dd450,'numDigits':_0x25b6dc,'counterInt':_0x392e5b}),_0xa63cd0={'value':_0x4ee64c,'counter':_0x392e5b,'resource':_0x594e18,'formatKey':_0x2d483e,'isReused':_0x538162,'generatedAt':new Date()[_0x6688e7(0x2b2)]()},_0x7f946a=await this[_0x6688e7(0x278)](_0x3e07d6,_0xa63cd0);if(!_0x7f946a[_0x6688e7(0x293)]){try{await _0x34f26a['eval'](LUA_RELEASE_NUMBER,0x1,_0x35efbc,String(_0x392e5b),_0x2e9127['QMBbd'](String,_0x170452));}catch(_0x4bff47){logger['warn']({'event':_0x2e9127['HRzBM'],'error':_0x4bff47[_0x6688e7(0x281)],'resource':_0x594e18,'formatKey':_0x2d483e,'counterInt':_0x392e5b},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger['info']({'event':_0x2e9127['xboFa'],'resource':_0x594e18,'formatKey':_0x2d483e,'counter':_0x392e5b},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x7f946a[_0x6688e7(0x1dd)];}return this[_0x6688e7(0x2d7)](_0x594e18,_0x2d483e,{'lastValue':_0x4ee64c,'lastCounter':_0x392e5b,'lastIsReused':_0x538162,'lastGeneratedAt':_0xa63cd0[_0x6688e7(0x2bf)]},_0x170452),logger[_0x6688e7(0x229)]({'event':_0x2e9127[_0x6688e7(0x23b)],'resource':_0x594e18,'formatKey':_0x2d483e,'counter':_0x392e5b,'isReused':_0x538162},'ID\x20Generator\x20number:\x20'+_0x4ee64c),_0xa63cd0;}async['releaseNumber'](_0x566ee6){const _0xb5fa64=a0_0x1ed12e,_0x23fdbb={'HJcoW':'IDGEN_DISABLED','GckpM':function(_0x2eb2e6,_0x4cf704){return _0x2eb2e6!==_0x4cf704;},'PBYxP':_0xb5fa64(0x1dc),'CbPzg':function(_0x4619c7,_0x5f407d){return _0x4619c7===_0x5f407d;},'PcmIe':'idgen_number_released'};if(!this[_0xb5fa64(0x240)])throw new IdGeneratorError(_0x23fdbb['HJcoW'],'ID\x20Generator\x20is\x20disabled');let _0x467327,_0x3ac7ed,_0x4a32cd,_0x77c8f5;const _0x5e76f9=this[_0xb5fa64(0x2d2)](_0x566ee6[_0xb5fa64(0x207)]);if(_0x566ee6['counterInt']!==undefined&&_0x23fdbb[_0xb5fa64(0x2b0)](_0x566ee6['counterInt'],null)){this[_0xb5fa64(0x1ca)](_0x566ee6[_0xb5fa64(0x215)]),_0x467327=_0x566ee6['resource'];if(typeof _0x566ee6[_0xb5fa64(0x29a)]!==_0x23fdbb[_0xb5fa64(0x1d0)]||_0x23fdbb['CbPzg'](_0x566ee6['formatKey']['length'],0x0))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x3ac7ed=_0x566ee6[_0xb5fa64(0x29a)];if(!Number['isInteger'](_0x566ee6['counterInt'])||_0x566ee6[_0xb5fa64(0x266)]<0x1)throw new IdGeneratorError(_0xb5fa64(0x21a),_0xb5fa64(0x2c7)+_0x566ee6[_0xb5fa64(0x266)]+')');_0x4a32cd=_0x566ee6[_0xb5fa64(0x266)];const _0x5c427f=_0x3ac7ed['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x77c8f5=_0x5c427f?_0x5c427f[0x1]:_0xb5fa64(0x1fd);}else{const _0x3a10ed=this['_validateNumberParams'](_0x566ee6),_0x103b7b=this[_0xb5fa64(0x231)]({'format':_0x3a10ed[_0xb5fa64(0x2ca)],'prefix':_0x3a10ed[_0xb5fa64(0x2e5)],'separator':_0x3a10ed['separator'],'numDigits':_0x3a10ed['numDigits'],'number':_0x566ee6[_0xb5fa64(0x20f)]});_0x467327=_0x3a10ed[_0xb5fa64(0x215)],_0x3ac7ed=_0x103b7b[_0xb5fa64(0x29a)],_0x4a32cd=_0x103b7b[_0xb5fa64(0x266)],_0x77c8f5=_0x3a10ed[_0xb5fa64(0x2ca)];}const _0x2154eb=this[_0xb5fa64(0x226)](_0x467327,_0x3ac7ed),_0x1ed5bd=this[_0xb5fa64(0x2d4)](_0x77c8f5);let _0x458e06=null;if(_0x5e76f9){_0x458e06=this['_buildIdemKey'](_0xb5fa64(0x22e),_0x467327,_0x3ac7ed,_0x5e76f9);const _0x36be36=await this[_0xb5fa64(0x2b6)](_0x458e06);if(_0x36be36)return _0x36be36;}const _0x3c49d1=redisClient[_0xb5fa64(0x2cf)]();await _0x3c49d1[_0xb5fa64(0x1f9)](LUA_RELEASE_NUMBER,0x1,_0x2154eb,String(_0x4a32cd),String(_0x1ed5bd));const _0x575158={'released':!![],'resource':_0x467327,'formatKey':_0x3ac7ed,'counter':_0x4a32cd,'releasedAt':new Date()['toISOString']()};return await this[_0xb5fa64(0x1ec)](_0x458e06,_0x575158),this[_0xb5fa64(0x2d7)](_0x467327,_0x3ac7ed,{'lastReleasedCounter':_0x4a32cd,'lastReleasedAt':_0x575158['releasedAt']},_0x1ed5bd),logger['info']({'event':_0x23fdbb[_0xb5fa64(0x27f)],'resource':_0x467327,'formatKey':_0x3ac7ed,'counter':_0x4a32cd},_0xb5fa64(0x230)+_0x4a32cd),_0x575158;}async[a0_0x1ed12e(0x283)](_0x2e248b){const _0x42b11c=a0_0x1ed12e,_0x4e5ccd={'EQTYL':_0x42b11c(0x243),'fjmbt':'format','WbOwQ':_0x42b11c(0x2e5),'Wmzwi':function(_0x374141,_0x5b630e){return _0x374141||_0x5b630e;},'vOBqn':_0x42b11c(0x22a),'BNDPH':'expiresAt','KiBKf':_0x42b11c(0x23d),'xdeKP':'idemKey','vngCn':function(_0x3bd943,_0x3d0b8b){return _0x3bd943(_0x3d0b8b);},'EeYki':function(_0x2d0f69,_0x3a8886){return _0x2d0f69(_0x3a8886);},'pcIyA':function(_0x3536f1,_0x3e0664){return _0x3536f1(_0x3e0664);},'Dylrc':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','FXDGy':_0x42b11c(0x209),'eXCcN':'idgen_reserve_value_persist_error','ijYES':function(_0x1f910a,_0xbf6f44){return _0x1f910a(_0xbf6f44);},'MIYzA':'idgen_reserve_idem_loser_cancel_error','rdsLZ':_0x42b11c(0x1e9),'vLySe':_0x42b11c(0x1fb)};if(!this[_0x42b11c(0x240)])throw new IdGeneratorError(_0x4e5ccd[_0x42b11c(0x2d1)],_0x42b11c(0x259));const _0x375fb9=this[_0x42b11c(0x2b4)](_0x2e248b),_0x11a330=this[_0x42b11c(0x27e)](_0x2e248b[_0x42b11c(0x2de)]),_0x309768=this[_0x42b11c(0x2d2)](_0x2e248b[_0x42b11c(0x207)]),{resource:_0x57168a,format:_0x51225e,prefix:_0x49fea9,separator:_0x5cf961,numDigits:_0x4fc500,reuseDelete:_0x3807d8}=_0x375fb9,{formatKey:_0x41d85b,datePrefix:_0x428531}=this[_0x42b11c(0x287)](_0x51225e,_0x49fea9),_0x2aa791=this['_buildSeqKey'](_0x57168a,_0x41d85b),_0xe5a298=this[_0x42b11c(0x226)](_0x57168a,_0x41d85b),_0x3fc318=this[_0x42b11c(0x267)](_0x57168a,_0x41d85b),_0x3e99e8=this['_getCounterTTL'](_0x51225e);let _0x3649b4=null;if(_0x309768){_0x3649b4=this['_buildIdemKey'](_0x42b11c(0x2c2),_0x57168a,_0x41d85b,_0x309768);const _0x8de8ec=await this[_0x42b11c(0x2b6)](_0x3649b4);if(_0x8de8ec)return _0x8de8ec;}const _0x5a84fd=crypto[_0x42b11c(0x296)](),_0x1c8b1e=this['_buildReservationKey'](_0x5a84fd),_0xb39ccb=this['_buildReservationKeyPrefix'](),_0x4b8b2a=Date[_0x42b11c(0x280)](),_0x56a155=_0x4b8b2a+_0x11a330*0x3e8,_0x53bf1b=_0x11a330*0x3e8,_0x42513a=new Date(_0x4b8b2a)['toISOString'](),_0x101d11=new Date(_0x56a155)['toISOString'](),_0x2c95f0=['resource',_0x57168a,'formatKey',_0x41d85b,_0x4e5ccd[_0x42b11c(0x277)],_0x51225e,_0x4e5ccd['WbOwQ'],_0x49fea9,_0x42b11c(0x2cc),_0x5cf961,_0x42b11c(0x245),String(_0x4fc500),'datePrefix',_0x4e5ccd[_0x42b11c(0x1fe)](_0x428531,''),_0x4e5ccd[_0x42b11c(0x1df)],_0x42513a,_0x4e5ccd[_0x42b11c(0x22b)],_0x101d11,_0x4e5ccd[_0x42b11c(0x20e)],String(_0x53bf1b)];_0x309768&&_0x2c95f0['push'](_0x4e5ccd['xdeKP'],_0x309768);const _0x5cf892=redisClient[_0x42b11c(0x2cf)](),_0x48903d=await _0x5cf892[_0x42b11c(0x1f9)](LUA_RESERVE_NUMBER,0x3,_0x2aa791,_0xe5a298,_0x3fc318,_0x3807d8?'1':'0',String(_0x3e99e8),_0x5a84fd,_0x1c8b1e,_0x4e5ccd['vngCn'](String,_0x53bf1b),_0x4e5ccd[_0x42b11c(0x1d3)](String,_0x56a155),_0x4e5ccd['pcIyA'](String,_0x4b8b2a),_0xb39ccb,..._0x2c95f0),_0x17c6b2=_0x48903d[0x0],_0x52e6db=_0x48903d[0x1]===0x1,_0x4e17b9=_0x48903d[0x2]||0x0;let _0x5cca6f;try{_0x5cca6f=this[_0x42b11c(0x2aa)]({'format':_0x51225e,'prefix':_0x49fea9,'datePrefix':_0x428531,'separator':_0x5cf961,'numDigits':_0x4fc500,'counterInt':_0x17c6b2});}catch(_0x23deaf){try{await _0x5cf892[_0x42b11c(0x1f9)](LUA_CANCEL_RESERVATION,0x3,_0x1c8b1e,_0x3fc318,_0xe5a298,_0x5a84fd,String(_0x3e99e8));}catch(_0x5cb423){logger['warn']({'event':'idgen_reserve_overflow_compensation_error','error':_0x5cb423['message'],'resource':_0x57168a,'formatKey':_0x41d85b,'counterInt':_0x17c6b2,'token':_0x5a84fd},_0x4e5ccd[_0x42b11c(0x262)]);}throw _0x23deaf;}try{await _0x5cf892['hset'](_0x1c8b1e,_0x4e5ccd[_0x42b11c(0x299)],_0x5cca6f);}catch(_0x2e1501){logger['warn']({'event':_0x4e5ccd['eXCcN'],'error':_0x2e1501[_0x42b11c(0x281)],'resource':_0x57168a,'formatKey':_0x41d85b,'counterInt':_0x17c6b2,'token':_0x5a84fd},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0xf2b813={'token':_0x5a84fd,'value':_0x5cca6f,'counter':_0x17c6b2,'resource':_0x57168a,'formatKey':_0x41d85b,'isReused':_0x52e6db,'createdAt':_0x42513a,'expiresAt':_0x101d11,'reapedCount':_0x4e17b9},_0x2d1b2d=await this['_storeIdemCacheNX'](_0x3649b4,_0xf2b813);if(!_0x2d1b2d['stored']){try{await _0x5cf892['eval'](LUA_CANCEL_RESERVATION,0x3,_0x1c8b1e,_0x3fc318,_0xe5a298,_0x5a84fd,_0x4e5ccd['ijYES'](String,_0x3e99e8));}catch(_0x56f237){logger[_0x42b11c(0x26c)]({'event':_0x4e5ccd[_0x42b11c(0x2d6)],'error':_0x56f237[_0x42b11c(0x281)],'resource':_0x57168a,'formatKey':_0x41d85b,'counterInt':_0x17c6b2,'token':_0x5a84fd},_0x4e5ccd['rdsLZ']);}return logger[_0x42b11c(0x229)]({'event':_0x42b11c(0x23c),'resource':_0x57168a,'formatKey':_0x41d85b,'counter':_0x17c6b2,'token':_0x5a84fd},_0x42b11c(0x1cf)),_0x2d1b2d['winnerResult'];}return this['_updateMeta'](_0x57168a,_0x41d85b,{'lastReservedCounter':_0x17c6b2,'lastReservedAt':_0x42513a,'lastReapedCount':_0x4e17b9},_0x3e99e8),logger[_0x42b11c(0x229)]({'event':_0x4e5ccd['vLySe'],'resource':_0x57168a,'formatKey':_0x41d85b,'counter':_0x17c6b2,'isReused':_0x52e6db,'token':_0x5a84fd,'ttl':_0x11a330,'reapedCount':_0x4e17b9},_0x42b11c(0x2a7)+_0x5cca6f+_0x42b11c(0x1cc)+_0x5a84fd+')'),_0xf2b813;}async['confirmReservation'](_0x3ae000){const _0x5957fe=a0_0x1ed12e,_0x3e0796={'eIqMA':_0x5957fe(0x1f0),'PvHqG':_0x5957fe(0x1ce),'rfCHq':function(_0x2e996f,_0x180279){return _0x2e996f!==_0x180279;},'fVSmp':function(_0x663c07,_0x313978,_0x52c7fd){return _0x663c07(_0x313978,_0x52c7fd);},'UlKxn':'idgen_reservation_confirmed'};if(!this[_0x5957fe(0x240)])throw new IdGeneratorError(_0x5957fe(0x243),_0x3e0796['eIqMA']);const _0x5d2373=this[_0x5957fe(0x28c)](_0x3ae000&&_0x3ae000['token']),_0xa89a6e=this['_validateIdempotencyKey'](_0x3ae000&&_0x3ae000[_0x5957fe(0x207)]);let _0x24d3e0=null;if(_0xa89a6e){_0x24d3e0=idempotencyManager['buildDeterministicKey'](_0x5957fe(0x2ce),_0x3e0796[_0x5957fe(0x1ff)],_0x5d2373+':'+_0xa89a6e);const _0x4ff904=await this['_retrieveIdemCache'](_0x24d3e0);if(_0x4ff904)return _0x4ff904;}const _0x372433=await this[_0x5957fe(0x1d9)](_0x5d2373),_0xf79e9d=redisClient['getClient'](),_0x48c938=await _0xf79e9d[_0x5957fe(0x1f9)](LUA_CONFIRM_RESERVATION,0x2,_0x372433['rsvKey'],_0x372433[_0x5957fe(0x1c9)],_0x5d2373);if(!_0x48c938||_0x3e0796['rfCHq'](_0x48c938[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5d2373,{'token':_0x5d2373});const _0x47dcc4=_0x3e0796[_0x5957fe(0x224)](parseInt,_0x48c938[0x1],0xa),_0xc5edda=_0x48c938[0x2],_0x2d7de0=_0x48c938[0x3],_0x3afa4f=new Date()[_0x5957fe(0x2b2)](),_0x8ead70={'confirmed':!![],'token':_0x5d2373,'value':_0xc5edda,'counter':_0x47dcc4,'resource':_0x372433[_0x5957fe(0x215)],'formatKey':_0x2d7de0,'confirmedAt':_0x3afa4f};await this[_0x5957fe(0x1ec)](_0x24d3e0,_0x8ead70);const _0x18a35c=_0x2d7de0[_0x5957fe(0x222)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x49c75e=_0x18a35c?_0x18a35c[0x1]:'text',_0x1fcb3d=this[_0x5957fe(0x2d4)](_0x49c75e);return this[_0x5957fe(0x2d7)](_0x372433[_0x5957fe(0x215)],_0x2d7de0,{'lastConfirmedCounter':_0x47dcc4,'lastConfirmedAt':_0x3afa4f},_0x1fcb3d),logger['info']({'event':_0x3e0796['UlKxn'],'resource':_0x372433['resource'],'formatKey':_0x2d7de0,'counter':_0x47dcc4,'token':_0x5d2373},_0x5957fe(0x1db)+_0xc5edda+'\x20(token='+_0x5d2373+')'),_0x8ead70;}async[a0_0x1ed12e(0x2ad)](_0x25ae6e){const _0x57d77c=a0_0x1ed12e,_0x28ab56={'ScUqp':_0x57d77c(0x2ce),'NjVTy':_0x57d77c(0x1f4),'fjeSz':_0x57d77c(0x1fd),'KDYkO':_0x57d77c(0x275)};if(!this['enabled'])throw new IdGeneratorError(_0x57d77c(0x243),_0x57d77c(0x1f0));const _0x58c26f=this[_0x57d77c(0x28c)](_0x25ae6e&&_0x25ae6e['token']),_0xf1a540=this['_validateIdempotencyKey'](_0x25ae6e&&_0x25ae6e['idempotencyKey']);let _0x5e319d=null;if(_0xf1a540){_0x5e319d=idempotencyManager[_0x57d77c(0x282)](_0x28ab56['ScUqp'],_0x28ab56[_0x57d77c(0x29e)],_0x58c26f+':'+_0xf1a540);const _0x17929d=await this[_0x57d77c(0x2b6)](_0x5e319d);if(_0x17929d)return _0x17929d;}const _0x3359ad=await this['_getReservationContext'](_0x58c26f),_0x36d8b1=this[_0x57d77c(0x226)](_0x3359ad[_0x57d77c(0x215)],_0x3359ad['formatKey']),_0x19d74b=_0x3359ad['formatKey'][_0x57d77c(0x222)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x190105=_0x19d74b?_0x19d74b[0x1]:_0x28ab56[_0x57d77c(0x244)],_0xc60989=this['_getCounterTTL'](_0x190105),_0x374de8=redisClient['getClient'](),_0x4408b9=await _0x374de8[_0x57d77c(0x1f9)](LUA_CANCEL_RESERVATION,0x3,_0x3359ad['rsvKey'],_0x3359ad[_0x57d77c(0x1c9)],_0x36d8b1,_0x58c26f,String(_0xc60989));if(!_0x4408b9||_0x4408b9[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x58c26f,{'token':_0x58c26f});const _0x27aa5f=parseInt(_0x4408b9[0x1],0xa),_0x54ab88=_0x4408b9[0x2],_0x1bba89=_0x4408b9[0x3],_0x2a2bd8=new Date()['toISOString'](),_0x4d73e9={'cancelled':!![],'token':_0x58c26f,'value':_0x54ab88,'counter':_0x27aa5f,'resource':_0x3359ad['resource'],'formatKey':_0x1bba89,'releasedToReuse':!![],'cancelledAt':_0x2a2bd8};return await this['_storeIdemCache'](_0x5e319d,_0x4d73e9),this[_0x57d77c(0x2d7)](_0x3359ad[_0x57d77c(0x215)],_0x1bba89,{'lastCancelledCounter':_0x27aa5f,'lastCancelledAt':_0x2a2bd8},_0xc60989),logger[_0x57d77c(0x229)]({'event':_0x28ab56['KDYkO'],'resource':_0x3359ad[_0x57d77c(0x215)],'formatKey':_0x1bba89,'counter':_0x27aa5f,'token':_0x58c26f},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x54ab88+_0x57d77c(0x1cc)+_0x58c26f+')'),_0x4d73e9;}async['extendReservation'](_0x433748){const _0x1c93c4=a0_0x1ed12e,_0x1c26a7={'NGdMK':'ID\x20Generator\x20is\x20disabled','fMskP':function(_0x2c53a6,_0x1a0104){return _0x2c53a6*_0x1a0104;},'Kqygj':function(_0x51c7ad,_0x376592){return _0x51c7ad!==_0x376592;},'bLIaA':_0x1c93c4(0x29b)};if(!this['enabled'])throw new IdGeneratorError(_0x1c93c4(0x243),_0x1c26a7[_0x1c93c4(0x204)]);const _0x5d701f=this['_validateReservationToken'](_0x433748&&_0x433748[_0x1c93c4(0x286)]),_0x2b0f5e=this[_0x1c93c4(0x27e)](_0x433748&&_0x433748[_0x1c93c4(0x2de)]),_0x51eee4=this[_0x1c93c4(0x2d2)](_0x433748&&_0x433748[_0x1c93c4(0x207)]);let _0x1afc7d=null;if(_0x51eee4){_0x1afc7d=idempotencyManager['buildDeterministicKey'](_0x1c93c4(0x2ce),'reserve_extend',_0x5d701f+':'+_0x51eee4);const _0x3b0bee=await this[_0x1c93c4(0x2b6)](_0x1afc7d);if(_0x3b0bee)return _0x3b0bee;}const _0x4af5f2=await this['_getReservationContext'](_0x5d701f),_0x569a0d=Date[_0x1c93c4(0x280)](),_0x12e14b=_0x569a0d+_0x1c26a7[_0x1c93c4(0x27d)](_0x2b0f5e,0x3e8),_0x364005=_0x2b0f5e*0x3e8,_0x44bd0a=new Date(_0x12e14b)['toISOString'](),_0x7cfadd=redisClient[_0x1c93c4(0x2cf)](),_0x43f3a3=await _0x7cfadd[_0x1c93c4(0x1f9)](LUA_EXTEND_RESERVATION,0x2,_0x4af5f2[_0x1c93c4(0x29c)],_0x4af5f2[_0x1c93c4(0x1c9)],_0x5d701f,String(_0x364005),String(_0x12e14b),_0x44bd0a);if(!_0x43f3a3||_0x1c26a7['Kqygj'](_0x43f3a3[0x0],0x1))throw new IdGeneratorError(_0x1c26a7[_0x1c93c4(0x24c)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5d701f,{'token':_0x5d701f});const _0x25109f=_0x43f3a3[0x1],_0x2e124a=parseInt(_0x43f3a3[0x2],0xa),_0x2cc440=_0x43f3a3[0x3],_0x194cd9=_0x43f3a3[0x4],_0x3521b1=new Date(_0x569a0d)[_0x1c93c4(0x2b2)](),_0x183a8c={'extended':!![],'token':_0x5d701f,'previousExpiresAt':_0x25109f,'expiresAt':_0x44bd0a,'ttlMs':_0x364005,'resource':_0x4af5f2[_0x1c93c4(0x215)],'formatKey':_0x194cd9,'counter':_0x2e124a,'value':_0x2cc440,'extendedAt':_0x3521b1};await this['_storeIdemCache'](_0x1afc7d,_0x183a8c);const _0x5ac820=_0x194cd9['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x4290ec=_0x5ac820?_0x5ac820[0x1]:'text',_0x21dec9=this[_0x1c93c4(0x2d4)](_0x4290ec);return this[_0x1c93c4(0x2d7)](_0x4af5f2['resource'],_0x194cd9,{'lastExtendedCounter':_0x2e124a,'lastExtendedAt':_0x3521b1},_0x21dec9),logger[_0x1c93c4(0x229)]({'event':'idgen_reservation_extended','resource':_0x4af5f2[_0x1c93c4(0x215)],'formatKey':_0x194cd9,'counter':_0x2e124a,'token':_0x5d701f,'ttl':_0x2b0f5e},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x2cc440+_0x1c93c4(0x1cc)+_0x5d701f+',\x20+'+_0x2b0f5e+'s)'),_0x183a8c;}async[a0_0x1ed12e(0x294)](_0x465c86){const _0x258428=a0_0x1ed12e,_0x9b7596={'IWTHz':_0x258428(0x243),'qOqZw':_0x258428(0x1f0),'OWOxk':function(_0x46d5e5,_0x257b9b){return _0x46d5e5===_0x257b9b;},'mduAb':function(_0x1266f9,_0x935275,_0x53b387){return _0x1266f9(_0x935275,_0x53b387);},'OqIdN':function(_0x482ffe,_0x1db4f3,_0x1cd77e){return _0x482ffe(_0x1db4f3,_0x1cd77e);},'xLJJr':function(_0x3c3abb,_0x2ea86a){return _0x3c3abb>=_0x2ea86a;}};if(!this[_0x258428(0x240)])throw new IdGeneratorError(_0x9b7596[_0x258428(0x254)],_0x9b7596[_0x258428(0x22c)]);const _0x47b5a4=this[_0x258428(0x28c)](_0x465c86&&_0x465c86[_0x258428(0x286)]),_0x174b67=this[_0x258428(0x24f)](_0x47b5a4),_0x172d7c=redisClient[_0x258428(0x2cf)](),_0x2d20c5=_0x172d7c['pipeline']();_0x2d20c5[_0x258428(0x233)](_0x174b67),_0x2d20c5['pttl'](_0x174b67);const _0x373a50=await _0x2d20c5[_0x258428(0x20b)](),_0x27c17f=_0x373a50&&_0x373a50[0x0]&&_0x373a50[0x0][0x1],_0x909e5d=_0x373a50&&_0x373a50[0x1]&&_0x373a50[0x1][0x1];if(!_0x27c17f||_0x9b7596['OWOxk'](Object['keys'](_0x27c17f)['length'],0x0))throw new IdGeneratorError(_0x258428(0x29b),_0x258428(0x265)+_0x47b5a4,{'token':_0x47b5a4});return{'token':_0x47b5a4,'resource':_0x27c17f[_0x258428(0x215)]||null,'formatKey':_0x27c17f[_0x258428(0x29a)]||null,'format':_0x27c17f['format']||null,'prefix':_0x27c17f[_0x258428(0x2e5)]||'','separator':_0x27c17f[_0x258428(0x2cc)]||'','numDigits':_0x27c17f[_0x258428(0x245)]?_0x9b7596['mduAb'](parseInt,_0x27c17f['numDigits'],0xa):null,'datePrefix':_0x27c17f['datePrefix']||'','counter':_0x27c17f[_0x258428(0x25d)]?_0x9b7596[_0x258428(0x23e)](parseInt,_0x27c17f[_0x258428(0x25d)],0xa):null,'value':_0x27c17f['value']||null,'isReused':_0x27c17f[_0x258428(0x2e3)]==='1'||_0x27c17f['isReused']===0x1,'createdAt':_0x27c17f[_0x258428(0x22a)]||null,'expiresAt':_0x27c17f['expiresAt']||null,'ttlRemainingMs':typeof _0x909e5d===_0x258428(0x20f)&&_0x9b7596[_0x258428(0x2e1)](_0x909e5d,0x0)?_0x909e5d:null};}async[a0_0x1ed12e(0x1d9)](_0x52dfc2){const _0x25b5af=a0_0x1ed12e,_0x3334da={'NynSs':'resource','Rfdur':_0x25b5af(0x29a),'BMeDB':_0x25b5af(0x29b)},_0x426e34=this['_buildReservationKey'](_0x52dfc2),_0x5396de=redisClient[_0x25b5af(0x2cf)](),_0x199418=await _0x5396de['hmget'](_0x426e34,_0x3334da['NynSs'],_0x3334da[_0x25b5af(0x1c0)]),_0x53ac78=_0x199418&&_0x199418[0x0],_0x4fba1f=_0x199418&&_0x199418[0x1];if(!_0x53ac78||!_0x4fba1f)throw new IdGeneratorError(_0x3334da['BMeDB'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x52dfc2,{'token':_0x52dfc2});return{'resource':_0x53ac78,'formatKey':_0x4fba1f,'rsvKey':_0x426e34,'rsvIdxKey':this['_buildReservationIndexKey'](_0x53ac78,_0x4fba1f)};}async[a0_0x1ed12e(0x2bd)](_0x4c47f6){const _0x219a81=a0_0x1ed12e,_0x3f8905={'ffEXq':_0x219a81(0x243),'xsWIO':_0x219a81(0x1f0),'lnBAN':function(_0x1c5af0,_0x5541c8){return _0x1c5af0===_0x5541c8;},'XPtRe':function(_0x2ae4b2,_0x1164b3){return _0x2ae4b2===_0x1164b3;},'uUFPn':function(_0x3ae018,_0x5c7a8c){return _0x3ae018&&_0x5c7a8c;},'JPPzM':function(_0x166cc9,_0x182534){return _0x166cc9+_0x182534;},'vXkKV':function(_0x18d735,_0x235a9a){return _0x18d735*_0x235a9a;},'AtcrF':function(_0x37ff9d,_0x1e3b00){return _0x37ff9d||_0x1e3b00;}};if(!this['enabled'])throw new IdGeneratorError(_0x3f8905['ffEXq'],_0x3f8905['xsWIO']);this['_validateResource'](_0x4c47f6['resource']),this[_0x219a81(0x208)](_0x4c47f6['pattern']);const _0x1244d0=this['_validateTTL'](_0x4c47f6['ttl']),_0x5ca484=this[_0x219a81(0x2cb)](_0x4c47f6[_0x219a81(0x279)]),_0x39e9cc=this['_validateIdempotencyKey'](_0x4c47f6[_0x219a81(0x207)]),_0x566e6b=_0x4c47f6['ensureUnique']===!![],{resource:_0x2017d1,pattern:_0x54ef95}=_0x4c47f6;let _0x13020e=null;if(_0x39e9cc){_0x13020e=this[_0x219a81(0x1d2)](_0x219a81(0x2bd),_0x2017d1,null,_0x39e9cc);const _0x961be9=await this['_retrieveIdemCache'](_0x13020e);if(_0x961be9)return _0x961be9;}const _0x26e6d7=redisClient['getClient']();let _0x147e36=null,_0x4eddd1=0x0;if(!_0x566e6b)_0x147e36=this['_generateFromPattern'](_0x54ef95),_0x4eddd1=0x1;else{for(let _0x4d7dd6=0x0;_0x4d7dd6<_0x5ca484;_0x4d7dd6++){_0x4eddd1++;const _0x382258=this[_0x219a81(0x1e2)](_0x54ef95);if(_0x1244d0){const _0x127bba=this['_buildActiveKey'](_0x2017d1,_0x382258),_0x1896f1=await _0x26e6d7[_0x219a81(0x28b)](_0x127bba,'1','EX',_0x1244d0,'NX');if(_0x3f8905[_0x219a81(0x1c5)](_0x1896f1,'OK')){_0x147e36=_0x382258;break;}}else{const _0x3d0ffa=this[_0x219a81(0x1d8)](_0x2017d1),_0x7bc7c6=await _0x26e6d7['sadd'](_0x3d0ffa,_0x382258);if(_0x3f8905[_0x219a81(0x2db)](_0x7bc7c6,0x1)){_0x147e36=_0x382258;break;}}}if(_0x147e36===null)throw new IdGeneratorError('IDGEN_UNIQUE_RETRY_EXHAUSTED','Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x5ca484+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x2017d1,'pattern':_0x54ef95,'maxRetry':_0x5ca484});}const _0x39bfea={'value':_0x147e36,'resource':_0x2017d1,'pattern':_0x54ef95,'attemptCount':_0x4eddd1,'generatedAt':new Date()[_0x219a81(0x2b2)]()};_0x3f8905['uUFPn'](_0x1244d0,_0x566e6b)&&(_0x39bfea['expiresAt']=new Date(_0x3f8905['JPPzM'](Date['now'](),_0x3f8905['vXkKV'](_0x1244d0,0x3e8)))['toISOString']());const _0x11bd28=await this['_storeIdemCacheNX'](_0x13020e,_0x39bfea);if(!_0x11bd28[_0x219a81(0x293)])return _0x566e6b&&await this[_0x219a81(0x21d)](_0x2017d1,_0x147e36,_0x1244d0),logger['info']({'event':'idgen_random_idem_loser','resource':_0x2017d1,'pattern':_0x54ef95,'value':_0x147e36},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x11bd28['winnerResult'];return logger['info']({'event':_0x219a81(0x268),'resource':_0x2017d1,'pattern':_0x54ef95,'attemptCount':_0x4eddd1,'ensureUnique':_0x566e6b,'ttl':_0x3f8905[_0x219a81(0x237)](_0x1244d0,0x0)},_0x219a81(0x27b)+_0x147e36),_0x39bfea;}async['pin'](_0x426d4d){const _0x4e6b19=a0_0x1ed12e,_0xe72603={'ssMll':function(_0x5757db,_0x1a9dd0){return _0x5757db==_0x1a9dd0;},'QDZze':function(_0x26d4d1,_0x1c0a63){return _0x26d4d1===_0x1c0a63;}},_0x81f876=_0xe72603[_0x4e6b19(0x218)](_0x426d4d['digits'],null)?this[_0x4e6b19(0x1d1)]:_0x426d4d[_0x4e6b19(0x290)];if(!Number[_0x4e6b19(0x2e7)](_0x81f876)||_0x81f876<MIN_PIN_DIGITS||_0x81f876>MAX_PIN_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_DIGITS','Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x4e6b19(0x242)+_0x81f876+')');const _0x1a4caa='9'[_0x4e6b19(0x1e0)](_0x81f876);return this['random']({'resource':_0x426d4d['resource'],'pattern':_0x1a4caa,'ensureUnique':_0xe72603[_0x4e6b19(0x216)](_0x426d4d['ensureUnique'],!![]),'ttl':_0x426d4d['ttl'],'maxRetry':_0x426d4d[_0x4e6b19(0x279)],'idempotencyKey':_0x426d4d[_0x4e6b19(0x207)]});}async['serial'](_0x7b673a){const _0x442dcb=a0_0x1ed12e,_0x5bbcf8=_0x7b673a[_0x442dcb(0x1eb)]||this[_0x442dcb(0x2a0)];return this[_0x442dcb(0x2bd)]({'resource':_0x7b673a['resource'],'pattern':_0x5bbcf8,'ensureUnique':_0x7b673a[_0x442dcb(0x264)]!==![],'ttl':_0x7b673a[_0x442dcb(0x2de)],'maxRetry':_0x7b673a[_0x442dcb(0x279)],'idempotencyKey':_0x7b673a['idempotencyKey']});}async['code'](_0x174f23){const _0x24b6cb=a0_0x1ed12e,_0x29ee6e={'LnCAL':function(_0x449e5d,_0x26780c){return _0x449e5d!==_0x26780c;}},_0x39d0ac=_0x174f23[_0x24b6cb(0x1eb)]||this['defaultCodePattern'];return this[_0x24b6cb(0x2bd)]({'resource':_0x174f23['resource'],'pattern':_0x39d0ac,'ensureUnique':_0x29ee6e['LnCAL'](_0x174f23[_0x24b6cb(0x264)],![]),'ttl':_0x174f23['ttl'],'maxRetry':_0x174f23['maxRetry'],'idempotencyKey':_0x174f23['idempotencyKey']});}async['consume'](_0x3c6f3f){const _0x88bcfb=a0_0x1ed12e,_0x3d8ac1={'NJQpm':'IDGEN_DISABLED','eJaDo':function(_0x4aedbf,_0x1dc66f){return _0x4aedbf!==_0x1dc66f;},'qBKvZ':_0x88bcfb(0x2da)};if(!this['enabled'])throw new IdGeneratorError(_0x3d8ac1['NJQpm'],_0x88bcfb(0x1f0));this[_0x88bcfb(0x1ca)](_0x3c6f3f[_0x88bcfb(0x215)]);if(_0x3d8ac1['eJaDo'](typeof _0x3c6f3f[_0x88bcfb(0x209)],_0x88bcfb(0x1dc))||_0x3c6f3f['value']['length']===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x3d8ac1[_0x88bcfb(0x256)]);const {resource:_0x4eb5b6,value:_0x16ed2c}=_0x3c6f3f,_0x3852d8=redisClient[_0x88bcfb(0x2cf)](),_0x247a8c=this['_buildActiveKey'](_0x4eb5b6,_0x16ed2c),_0x1940c4=this['_buildIssuedKey'](_0x4eb5b6),[_0x4bfc76,_0x144928]=await Promise[_0x88bcfb(0x1c8)]([_0x3852d8['del'](_0x247a8c),_0x3852d8['srem'](_0x1940c4,_0x16ed2c)]),_0x4ceb37=_0x4bfc76+_0x144928>0x0;return logger[_0x88bcfb(0x229)]({'event':'idgen_consumed','resource':_0x4eb5b6,'value':_0x16ed2c,'consumed':_0x4ceb37},'ID\x20Generator\x20consumed:\x20'+_0x16ed2c),{'consumed':_0x4ceb37,'resource':_0x4eb5b6,'value':_0x16ed2c,'consumedAt':new Date()['toISOString']()};}async['peek'](_0x285579){const _0xcd81c0=a0_0x1ed12e,_0x3551f9={'TIUnX':'ID\x20Generator\x20is\x20disabled','LbjRx':'number','rYhpQ':_0xcd81c0(0x2c4),'nEJgq':function(_0x288ff4,_0x28634b,_0x47ff50){return _0x288ff4(_0x28634b,_0x47ff50);},'fdPTj':function(_0x1d1050,_0x2ef8dc){return _0x1d1050||_0x2ef8dc;},'xtkjE':'random'};if(!this['enabled'])throw new IdGeneratorError(_0xcd81c0(0x243),_0x3551f9[_0xcd81c0(0x22f)]);this['_validateResource'](_0x285579[_0xcd81c0(0x215)]);const _0x23a213=_0x285579[_0xcd81c0(0x2a9)]||_0x3551f9['LbjRx'],_0x2079c6=redisClient['getClient']();if(_0x23a213===_0x3551f9['LbjRx']){const _0x2b2e68=(_0x285579['format']||_0xcd81c0(0x1fd))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x2b2e68))throw new IdGeneratorError(_0x3551f9[_0xcd81c0(0x2bb)],_0xcd81c0(0x284)+_0x285579[_0xcd81c0(0x2ca)]);const {formatKey:_0x83256c}=this['_buildFormatKey'](_0x2b2e68,_0x285579[_0xcd81c0(0x2e5)]||''),_0x3f6820=this[_0xcd81c0(0x20d)](_0x285579['resource'],_0x83256c),_0x523bdc=this[_0xcd81c0(0x226)](_0x285579['resource'],_0x83256c),[_0xded500,_0x836243]=await Promise['all']([_0x2079c6[_0xcd81c0(0x26a)](_0x3f6820),_0x2079c6['zcard'](_0x523bdc)]);return{'resource':_0x285579['resource'],'mode':'number','formatKey':_0x83256c,'currentCounter':_0x3551f9['nEJgq'](parseInt,_0xded500,0xa)||0x0,'reusePoolSize':_0x3551f9[_0xcd81c0(0x202)](_0x836243,0x0)};}if(_0x23a213===_0xcd81c0(0x2bd)){const _0x35aec3=this[_0xcd81c0(0x1d8)](_0x285579[_0xcd81c0(0x215)]),_0x40c218=await _0x2079c6[_0xcd81c0(0x252)](_0x35aec3);return{'resource':_0x285579['resource'],'mode':_0x3551f9['xtkjE'],'issuedCount':_0x40c218||0x0};}throw new IdGeneratorError('IDGEN_INVALID_MODE','Unknown\x20mode:\x20'+_0x23a213);}async[a0_0x1ed12e(0x1c4)](_0x389a06){const _0x4daeb1=a0_0x1ed12e,_0x147e5f={'XNXUG':function(_0x23bfdc,_0x52f36e){return _0x23bfdc>_0x52f36e;}},_0x309147=await this[_0x4daeb1(0x1e4)](_0x389a06);if(_0x309147['mode']==='number'){const _0x2a8126=redisClient[_0x4daeb1(0x2cf)](),_0xda2859=this[_0x4daeb1(0x2cd)](_0x389a06['resource'],_0x309147[_0x4daeb1(0x29a)]),_0x1b0e72=this['_buildReuseKey'](_0x389a06['resource'],_0x309147[_0x4daeb1(0x29a)]),[_0x26b7fb,_0x2bc032]=await Promise[_0x4daeb1(0x1c8)]([_0x2a8126[_0x4daeb1(0x233)](_0xda2859),_0x2a8126['zrange'](_0x1b0e72,0x0,-0x1)]);return{..._0x309147,'reusePoolValues':_0x2bc032['map'](_0x5b18c1=>parseInt(_0x5b18c1,0xa)),'meta':_0x26b7fb&&_0x147e5f[_0x4daeb1(0x24a)](Object['keys'](_0x26b7fb)[_0x4daeb1(0x24e)],0x0)?_0x26b7fb:null};}return _0x309147;}async['reset'](_0x27e8d1){const _0x141165=a0_0x1ed12e,_0x2d1024={'RIXAH':'IDGEN_DISABLED','iZFBH':_0x141165(0x20f),'XesWs':_0x141165(0x2c4),'oVlym':_0x141165(0x2e4),'QDNhP':_0x141165(0x2d9),'bQsWX':'meta','CoBLb':'random','ohpYn':_0x141165(0x2b3),'rzDYs':_0x141165(0x274)};if(!this['enabled'])throw new IdGeneratorError(_0x2d1024[_0x141165(0x1ef)],'ID\x20Generator\x20is\x20disabled');if(!this[_0x141165(0x21b)])throw new IdGeneratorError(_0x141165(0x1bf),_0x141165(0x1ed));this['_validateResource'](_0x27e8d1[_0x141165(0x215)]);const _0x266e8f=_0x27e8d1[_0x141165(0x2a9)]||_0x2d1024[_0x141165(0x25b)],_0x3a4891=redisClient[_0x141165(0x2cf)]();if(_0x266e8f===_0x2d1024['iZFBH']){const _0x2445d3=(_0x27e8d1[_0x141165(0x2ca)]||'text')[_0x141165(0x2af)]();if(!ALLOWED_FORMATS['has'](_0x2445d3))throw new IdGeneratorError(_0x2d1024[_0x141165(0x1d7)],_0x141165(0x284)+_0x27e8d1['format']);const {formatKey:_0xafa5c8}=this[_0x141165(0x287)](_0x2445d3,_0x27e8d1['prefix']||''),_0xbaf331=this[_0x141165(0x20d)](_0x27e8d1[_0x141165(0x215)],_0xafa5c8),_0x1d5cb7=this[_0x141165(0x226)](_0x27e8d1['resource'],_0xafa5c8),_0x583c3e=this['_buildMetaKey'](_0x27e8d1[_0x141165(0x215)],_0xafa5c8);return await _0x3a4891[_0x141165(0x2d8)](_0xbaf331,_0x1d5cb7,_0x583c3e),logger['warn']({'event':'idgen_reset','resource':_0x27e8d1['resource'],'mode':_0x2d1024[_0x141165(0x25b)],'formatKey':_0xafa5c8},_0x141165(0x1c2)+_0x27e8d1['resource']+':'+_0xafa5c8),{'reset':!![],'resource':_0x27e8d1['resource'],'mode':'number','formatKey':_0xafa5c8,'deletedKeys':[_0x2d1024['oVlym'],_0x2d1024[_0x141165(0x2b7)],_0x2d1024['bQsWX']]};}if(_0x266e8f===_0x2d1024[_0x141165(0x205)]){const _0x3c2122=this['_buildIssuedKey'](_0x27e8d1['resource']);return await _0x3a4891[_0x141165(0x2d8)](_0x3c2122),logger['warn']({'event':'idgen_reset','resource':_0x27e8d1['resource'],'mode':_0x141165(0x2bd)},'ID\x20Generator\x20reset:\x20random:'+_0x27e8d1['resource']),{'reset':!![],'resource':_0x27e8d1['resource'],'mode':'random','deletedKeys':[_0x2d1024['ohpYn']]};}throw new IdGeneratorError(_0x2d1024[_0x141165(0x217)],_0x141165(0x225)+_0x266e8f);}}const instance=new IdGenerator();instance[a0_0x1ed12e(0x25a)]=IdGeneratorError,module['exports']=instance,module[a0_0x1ed12e(0x1da)]['IdGeneratorError']=IdGeneratorError;
1
+ 'use strict';const a0_0x3c2e55=a0_0x1c3a;(function(_0x3eaeab,_0x56145e){const _0x515873=a0_0x1c3a,_0x20df8a=_0x3eaeab();while(!![]){try{const _0x48b588=parseInt(_0x515873(0x1e2))/0x1+parseInt(_0x515873(0x1f4))/0x2*(parseInt(_0x515873(0x192))/0x3)+-parseInt(_0x515873(0x1c2))/0x4+-parseInt(_0x515873(0x210))/0x5+-parseInt(_0x515873(0x20b))/0x6+-parseInt(_0x515873(0x15c))/0x7*(parseInt(_0x515873(0x21a))/0x8)+parseInt(_0x515873(0x18d))/0x9*(parseInt(_0x515873(0x254))/0xa);if(_0x48b588===_0x56145e)break;else _0x20df8a['push'](_0x20df8a['shift']());}catch(_0xb713b1){_0x20df8a['push'](_0x20df8a['shift']());}}}(a0_0x4560,0x6a061));function a0_0x1c3a(_0x55a3d9,_0x54e37d){_0x55a3d9=_0x55a3d9-0x156;const _0x456022=a0_0x4560();let _0x1c3a96=_0x456022[_0x55a3d9];if(a0_0x1c3a['rnKpeM']===undefined){var _0x8d85ae=function(_0xb56bb4){const _0x4330a5='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x20c672='',_0x36b7a4='';for(let _0x4e03af=0x0,_0x5a81b1,_0x3cac48,_0x1b8ee7=0x0;_0x3cac48=_0xb56bb4['charAt'](_0x1b8ee7++);~_0x3cac48&&(_0x5a81b1=_0x4e03af%0x4?_0x5a81b1*0x40+_0x3cac48:_0x3cac48,_0x4e03af++%0x4)?_0x20c672+=String['fromCharCode'](0xff&_0x5a81b1>>(-0x2*_0x4e03af&0x6)):0x0){_0x3cac48=_0x4330a5['indexOf'](_0x3cac48);}for(let _0x3a032a=0x0,_0x2762c1=_0x20c672['length'];_0x3a032a<_0x2762c1;_0x3a032a++){_0x36b7a4+='%'+('00'+_0x20c672['charCodeAt'](_0x3a032a)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36b7a4);};a0_0x1c3a['ExJTIj']=_0x8d85ae,a0_0x1c3a['GaYwvS']={},a0_0x1c3a['rnKpeM']=!![];}const _0x5e57bb=_0x456022[0x0],_0x5b0b07=_0x55a3d9+_0x5e57bb,_0x4adf9b=a0_0x1c3a['GaYwvS'][_0x5b0b07];return!_0x4adf9b?(_0x1c3a96=a0_0x1c3a['ExJTIj'](_0x1c3a96),a0_0x1c3a['GaYwvS'][_0x5b0b07]=_0x1c3a96):_0x1c3a96=_0x4adf9b,_0x1c3a96;}const crypto=require(a0_0x3c2e55(0x1d6)),redisClient=require(a0_0x3c2e55(0x1e8)),{logger}=require('./logger'),idempotencyManager=require(a0_0x3c2e55(0x197)),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x3c2e55(0x260),a0_0x3c2e55(0x26c)]),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT=a0_0x3c2e55(0x18a),CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER=a0_0x3c2e55(0x19b),LUA_RELEASE_NUMBER=a0_0x3c2e55(0x1af),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x3c2e55(0x24b);class IdGeneratorError extends Error{constructor(_0x3b5006,_0x47ddb8,_0x391ea9=null){const _0x395d09=a0_0x3c2e55,_0x372178={'okvKs':function(_0xaf98db,_0x2cb755){return _0xaf98db||_0x2cb755;}};super(_0x372178['okvKs'](_0x47ddb8,_0x3b5006)),this['name']=_0x395d09(0x24d),this['code']=_0x3b5006,this[_0x395d09(0x169)]=_0x391ea9;}}class IdGenerator{constructor(){const _0x549adb=a0_0x3c2e55;this['_initialized']=![],this['_enabled']=null,this[_0x549adb(0x1e6)]=null,this[_0x549adb(0x1e7)]=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this[_0x549adb(0x1e9)]=null,this['_defaultSerialPattern']=null,this['_defaultCodePattern']=null,this[_0x549adb(0x178)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x59ef5d=a0_0x3c2e55,_0x13a102={'aRDXC':'rf:idgen:','HPbJn':_0x59ef5d(0x20e),'XRpJq':function(_0x1c646a,_0x528d3c,_0x5789e0){return _0x1c646a(_0x528d3c,_0x5789e0);},'tlqHE':function(_0xba9f9c,_0x2d0c0a){return _0xba9f9c===_0x2d0c0a;},'AOnWn':_0x59ef5d(0x223),'BIJQN':_0x59ef5d(0x172),'PGlrs':function(_0x3e74b1,_0x2b40be,_0x3a4357){return _0x3e74b1(_0x2b40be,_0x3a4357);},'CwwRm':function(_0x586e51,_0x326c06,_0x4d707b){return _0x586e51(_0x326c06,_0x4d707b);},'ouFyi':function(_0x75f10e,_0x353434,_0x20c538){return _0x75f10e(_0x353434,_0x20c538);},'ZmTcU':_0x59ef5d(0x1cb)};this[_0x59ef5d(0x1e6)]=_0x13a102[_0x59ef5d(0x1f3)],this['_enabled']=process['env']['IDGEN_ENABLED']===_0x13a102['HPbJn'],this[_0x59ef5d(0x1e7)]=_0x13a102['XRpJq'](parseInt,process[_0x59ef5d(0x255)][_0x59ef5d(0x167)],0xa)||0x258,this[_0x59ef5d(0x202)]=_0x13a102['tlqHE'](process['env']['IDGEN_ALLOW_RESET'],'true'),this[_0x59ef5d(0x23d)]=_0x13a102[_0x59ef5d(0x24f)](parseInt,process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process['env'][_0x59ef5d(0x188)],0xa)||0x6,this[_0x59ef5d(0x22d)]=process['env'][_0x59ef5d(0x25b)]||_0x13a102['AOnWn'],this[_0x59ef5d(0x1f2)]=process[_0x59ef5d(0x255)]['IDGEN_DEFAULT_CODE_PATTERN']||_0x13a102['BIJQN'],this[_0x59ef5d(0x178)]={'yyyymm':_0x13a102['PGlrs'](parseInt,process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':_0x13a102[_0x59ef5d(0x24f)](parseInt,process[_0x59ef5d(0x255)][_0x59ef5d(0x1c1)],0xa)||0x2a300},this['_reserveDefaultTTL']=_0x13a102['CwwRm'](parseInt,process['env']['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL,this[_0x59ef5d(0x25c)]=_0x13a102['ouFyi'](parseInt,process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger['info']({'event':_0x13a102['ZmTcU'],'enabled':this[_0x59ef5d(0x18f)],'idemTTL':this[_0x59ef5d(0x1e7)],'allowReset':this[_0x59ef5d(0x202)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x59ef5d(0x214)+this['_enabled']);}[a0_0x3c2e55(0x22a)](){const _0x2a107f=a0_0x3c2e55;if(!this[_0x2a107f(0x18b)])this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['keyPrefix'](){const _0x517944=a0_0x3c2e55;return this[_0x517944(0x22a)](),this['_keyPrefix'];}get['idemTTL'](){return this['_ensureInitialized'](),this['_idemTTL'];}get[a0_0x3c2e55(0x225)](){const _0xf7b3a5=a0_0x3c2e55;return this[_0xf7b3a5(0x22a)](),this[_0xf7b3a5(0x202)];}get[a0_0x3c2e55(0x177)](){const _0x545806=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x545806(0x23d)];}get['defaultPinDigits'](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get[a0_0x3c2e55(0x165)](){const _0x5f5c13=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x5f5c13(0x22d)];}get[a0_0x3c2e55(0x252)](){const _0x55727e=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0x55727e(0x1f2)];}get['reserveDefaultTTL'](){const _0x1cb37b=a0_0x3c2e55;return this[_0x1cb37b(0x22a)](),this[_0x1cb37b(0x20d)];}get[a0_0x3c2e55(0x16f)](){const _0xf51ad1=a0_0x3c2e55;return this['_ensureInitialized'](),this[_0xf51ad1(0x25c)];}['isEnabled'](){return this['enabled'];}['_validateResource'](_0x4fd941){const _0xcc8823=a0_0x3c2e55,_0x33c58f={'catfc':function(_0x153303,_0x267e8b){return _0x153303!==_0x267e8b;},'DjKJN':_0xcc8823(0x15e)};if(_0x33c58f['catfc'](typeof _0x4fd941,_0x33c58f[_0xcc8823(0x1dc)])||!RESOURCE_REGEX[_0xcc8823(0x248)](_0x4fd941))throw new IdGeneratorError(_0xcc8823(0x1f9),'Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+_0xcc8823(0x1fe)+JSON[_0xcc8823(0x1ac)](_0x4fd941)+')');}['_validateNumberParams'](_0x2258a9){const _0xa5768=a0_0x3c2e55,_0x55500e={'DwrIq':_0xa5768(0x15e),'koJFJ':function(_0x5f1ad8,_0x2c30e4){return _0x5f1ad8<_0x2c30e4;},'zcfBO':function(_0x291eec,_0x1ed8ef){return _0x291eec>_0x1ed8ef;},'foVWK':'IDGEN_INVALID_NUM_DIGITS','TnKXC':function(_0xd7121e,_0x4c30ff){return _0xd7121e==_0x4c30ff;},'pUbSV':'IDGEN_INVALID_SEPARATOR','jAyQG':'boolean','EhjoE':function(_0xbfc460,_0xa0e61){return _0xbfc460===_0xa0e61;}},{resource:_0x18d543,format:_0x15f723,prefix:_0x1bbdac,separator:_0x188fde,numDigits:_0x21441d,reuseDelete:_0x3cd9c7}=_0x2258a9;this[_0xa5768(0x1a2)](_0x18d543);const _0x1b42e8=typeof _0x15f723===_0x55500e['DwrIq']?_0x15f723['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0x1b42e8))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+'\x20(got:\x20'+_0x15f723+')');if(!Number[_0xa5768(0x211)](_0x21441d)||_0x55500e[_0xa5768(0x229)](_0x21441d,MIN_NUM_DIGITS)||_0x55500e['zcfBO'](_0x21441d,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x55500e['foVWK'],_0xa5768(0x1da)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0xa5768(0x1fe)+_0x21441d+')');const _0x57c018=_0x1bbdac==null?'':_0x1bbdac;if(typeof _0x57c018!==_0xa5768(0x15e)||!PREFIX_REGEX['test'](_0x57c018))throw new IdGeneratorError('IDGEN_INVALID_PREFIX','Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0xa5768(0x1fe)+JSON['stringify'](_0x1bbdac)+')');const _0x35845c=_0x55500e['TnKXC'](_0x188fde,null)?'':_0x188fde;if(typeof _0x35845c!=='string'||_0x55500e['zcfBO'](_0x35845c[_0xa5768(0x166)],0x3)||SEPARATOR_FORBIDDEN['test'](_0x35845c))throw new IdGeneratorError(_0x55500e['pUbSV'],_0xa5768(0x278)+JSON[_0xa5768(0x1ac)](_0x188fde)+')');if(_0x3cd9c7!=null&&typeof _0x3cd9c7!==_0x55500e['jAyQG'])throw new IdGeneratorError(_0xa5768(0x1f9),_0xa5768(0x200)+typeof _0x3cd9c7+')');return{'resource':_0x18d543,'format':_0x1b42e8,'prefix':_0x57c018,'separator':_0x35845c,'numDigits':_0x21441d,'reuseDelete':_0x55500e['EhjoE'](_0x3cd9c7,!![])};}['_validatePattern'](_0xc5c7e1){const _0x23a3fd=a0_0x3c2e55,_0x25c640={'TlXUx':function(_0x54f1f2,_0x5a8bc3){return _0x54f1f2===_0x5a8bc3;},'Hfqcx':function(_0x4e04c8,_0x5e2da1){return _0x4e04c8>_0x5e2da1;},'iEHRX':'IDGEN_INVALID_PATTERN'};if(typeof _0xc5c7e1!=='string'||_0x25c640['TlXUx'](_0xc5c7e1['length'],0x0)||_0x25c640[_0x23a3fd(0x1a0)](_0xc5c7e1[_0x23a3fd(0x166)],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x25c640['iEHRX'],'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0xc5c7e1&&_0xc5c7e1[_0x23a3fd(0x166)])+')');let _0x575e04=![];for(const _0x579e3c of _0xc5c7e1){if(PLACEHOLDER_MAP[_0x579e3c]){_0x575e04=!![];break;}}if(!_0x575e04)throw new IdGeneratorError('IDGEN_INVALID_PATTERN','Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}['_validateTTL'](_0x5b3490){const _0x58e64f=a0_0x3c2e55,_0xcc2101={'BYdax':function(_0x48232e,_0x5387b6){return _0x48232e<_0x5387b6;},'FAqvR':function(_0x21b12b,_0x1dd1de){return _0x21b12b>_0x1dd1de;}};if(_0x5b3490==null)return undefined;if(!Number['isInteger'](_0x5b3490)||_0xcc2101[_0x58e64f(0x250)](_0x5b3490,0x1)||_0xcc2101[_0x58e64f(0x1cc)](_0x5b3490,MAX_TTL))throw new IdGeneratorError(_0x58e64f(0x15d),_0x58e64f(0x1f0)+MAX_TTL+_0x58e64f(0x158)+_0x5b3490+')');return _0x5b3490;}[a0_0x3c2e55(0x20f)](_0x1023d4){const _0x261f64=a0_0x3c2e55,_0x3aa9c3={'wzdPG':function(_0x2bce64,_0x1e771e){return _0x2bce64==_0x1e771e;},'AxAmK':function(_0x2795bb,_0x5583d7){return _0x2795bb>_0x5583d7;}};if(_0x3aa9c3[_0x261f64(0x234)](_0x1023d4,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x1023d4)||_0x1023d4<0x1||_0x3aa9c3[_0x261f64(0x244)](_0x1023d4,MAX_RETRY_LIMIT))throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x261f64(0x1fe)+_0x1023d4+')');return _0x1023d4;}[a0_0x3c2e55(0x204)](_0x28e3db){const _0x569937=a0_0x3c2e55,_0x4f2e11={'zVaar':function(_0xdca93,_0x28d33b){return _0xdca93!==_0x28d33b;},'vZPmB':'string','bxLjK':'IDGEN_INVALID_RESOURCE'};if(_0x28e3db==null)return undefined;if(_0x4f2e11[_0x569937(0x18c)](typeof _0x28e3db,_0x4f2e11['vZPmB'])||_0x28e3db['length']===0x0||_0x28e3db[_0x569937(0x166)]>MAX_IDEMPOTENCY_KEY_LENGTH)throw new IdGeneratorError(_0x4f2e11[_0x569937(0x23a)],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x28e3db;}['_validateReserveTTL'](_0x276c08){const _0xac7cfe=a0_0x3c2e55,_0xe34cfb={'uZjxb':function(_0x1b56fa,_0x51e71c){return _0x1b56fa==_0x51e71c;}};if(_0xe34cfb['uZjxb'](_0x276c08,null))return this[_0xac7cfe(0x1b7)];if(!Number['isInteger'](_0x276c08)||_0x276c08<MIN_RESERVE_TTL||_0x276c08>this['reserveMaxTTL'])throw new IdGeneratorError(_0xac7cfe(0x180),_0xac7cfe(0x1ab)+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0xac7cfe(0x158)+_0x276c08+')');return _0x276c08;}['_validateReservationToken'](_0x40794e){const _0x21b331=a0_0x3c2e55,_0x518514={'RKLuI':_0x21b331(0x15e),'cgpEI':_0x21b331(0x15b)};if(typeof _0x40794e!==_0x518514[_0x21b331(0x25f)]||!RESERVATION_TOKEN_REGEX[_0x21b331(0x248)](_0x40794e))throw new IdGeneratorError(_0x518514['cgpEI'],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON['stringify'](_0x40794e)+')');return _0x40794e;}[a0_0x3c2e55(0x272)](_0x390e60){const _0x33feee=a0_0x3c2e55,_0x39cf82={'TtMgN':function(_0x571284,_0x37168b){return _0x571284(_0x37168b);}};return _0x39cf82[_0x33feee(0x16a)](String,_0x390e60)[_0x33feee(0x206)](0x2,'0');}['_buildFormatKey'](_0x10e785,_0x43ed32,_0x3e6120=new Date()){const _0x4e742e=a0_0x3c2e55,_0x5f504f={'gEXJL':function(_0x4aa53c,_0x2059ed){return _0x4aa53c+_0x2059ed;},'EvNRr':function(_0x3e99d3,_0x4c0cf6){return _0x3e99d3||_0x4c0cf6;},'EXsSc':'text','fudcN':'yyyy','GtJbp':'IDGEN_INVALID_FORMAT'},_0xbbe618=_0x3e6120['getFullYear'](),_0x471f4f=this[_0x4e742e(0x272)](_0x5f504f[_0x4e742e(0x238)](_0x3e6120[_0x4e742e(0x22c)](),0x1)),_0x3cbfde=this['_pad2'](_0x3e6120[_0x4e742e(0x1e4)]()),_0x18b063=_0x5f504f['EvNRr'](_0x43ed32,'_');let _0x2a8e9e,_0x594353='';switch(_0x10e785){case _0x5f504f['EXsSc']:_0x2a8e9e=_0x18b063+_0x4e742e(0x243);break;case _0x5f504f['fudcN']:_0x594353=''+_0xbbe618,_0x2a8e9e=_0x18b063+'_yyyy_'+_0x594353;break;case'yyyymm':_0x594353=''+_0xbbe618+_0x471f4f,_0x2a8e9e=_0x18b063+_0x4e742e(0x26b)+_0x594353;break;case _0x4e742e(0x26c):_0x594353=''+_0xbbe618+_0x471f4f+_0x3cbfde,_0x2a8e9e=_0x18b063+_0x4e742e(0x1a3)+_0x594353;break;default:throw new IdGeneratorError(_0x5f504f[_0x4e742e(0x156)],_0x4e742e(0x1f7)+_0x10e785);}return{'formatKey':_0x2a8e9e,'datePrefix':_0x594353};}[a0_0x3c2e55(0x17b)](_0x1ebb36,_0x1dd8a2){const _0x532b96=a0_0x3c2e55;return this[_0x532b96(0x1e1)]+'seq:'+_0x1ebb36+':'+_0x1dd8a2;}['_buildReuseKey'](_0x1d4a95,_0x4093a0){const _0x40af72=a0_0x3c2e55;return this[_0x40af72(0x1e1)]+'reuse:'+_0x1d4a95+':'+_0x4093a0;}['_buildMetaKey'](_0x2b6a92,_0x1d96e3){const _0x367b78=a0_0x3c2e55;return this[_0x367b78(0x1e1)]+_0x367b78(0x1eb)+_0x2b6a92+':'+_0x1d96e3;}[a0_0x3c2e55(0x1ae)](_0x34914e){const _0x1277b=a0_0x3c2e55;return this['keyPrefix']+_0x1277b(0x1e5)+_0x34914e;}['_buildActiveKey'](_0x227591,_0x2e397b){const _0x548e32=a0_0x3c2e55;return this[_0x548e32(0x1e1)]+'active:'+_0x227591+':'+_0x2e397b;}[a0_0x3c2e55(0x1fa)](_0x1a26d7){const _0x3de4da=a0_0x3c2e55;return this[_0x3de4da(0x1e1)]+_0x3de4da(0x27b)+_0x1a26d7;}['_buildReservationIndexKey'](_0x2c06fa,_0x546a9c){const _0x4238e3=a0_0x3c2e55;return this['keyPrefix']+_0x4238e3(0x201)+_0x2c06fa+':'+_0x546a9c;}['_buildReservationKeyPrefix'](){const _0x3d2a5e=a0_0x3c2e55;return this[_0x3d2a5e(0x1e1)]+'rsv:';}[a0_0x3c2e55(0x189)](_0x528b55,_0x3d40be,_0x2d53bd,_0x467421){const _0x34643e=a0_0x3c2e55;if(_0x2d53bd)return idempotencyManager['buildDeterministicKey'](_0x34643e(0x1d2),_0x528b55,_0x3d40be+':'+_0x2d53bd+':'+_0x467421);return idempotencyManager['buildDeterministicKey']('idgen',_0x528b55,_0x3d40be+':'+_0x467421);}['_getCounterTTL'](_0x5e6dea){const _0x380e5c=a0_0x3c2e55;return this[_0x380e5c(0x178)][_0x5e6dea]||0x0;}[a0_0x3c2e55(0x218)]({format:_0x1926f5,prefix:_0x318b6f,datePrefix:_0x180d81,separator:_0x1c9725,numDigits:_0x86dc8a,counterInt:_0x21a400}){const _0x21ede4=a0_0x3c2e55,_0x436f79={'KPcwK':_0x21ede4(0x1df),'LGqeX':'text'},_0x12af61=Math['pow'](0xa,_0x86dc8a)-0x1;if(_0x21a400>_0x12af61)throw new IdGeneratorError(_0x436f79['KPcwK'],_0x21ede4(0x15f)+_0x21a400+'\x20exceeds\x20'+_0x86dc8a+_0x21ede4(0x1d5)+_0x12af61+_0x21ede4(0x219),{'counterInt':_0x21a400,'numDigits':_0x86dc8a,'max':_0x12af61});const _0x132609=String(_0x21a400)[_0x21ede4(0x206)](_0x86dc8a,'0');if(_0x1926f5===_0x436f79['LGqeX'])return _0x318b6f?''+_0x318b6f+_0x1c9725+_0x132609:_0x132609;return _0x318b6f?''+_0x318b6f+_0x1c9725+_0x180d81+_0x1c9725+_0x132609:''+_0x180d81+_0x1c9725+_0x132609;}['_parseNumber']({format:_0xf7c482,prefix:_0x4c2da9,separator:_0x3a8db9,numDigits:_0xa957f9,number:_0x3bbdbf}){const _0x4e237c=a0_0x3c2e55,_0x525172={'boNJy':function(_0x58f0a7,_0x12c869){return _0x58f0a7!==_0x12c869;},'lvuzJ':_0x4e237c(0x15e),'trGQK':function(_0x9d95cc,_0x1fb534){return _0x9d95cc===_0x1fb534;},'EcmZN':_0x4e237c(0x261),'KSfyw':function(_0x5e2b59,_0x4b7a19){return _0x5e2b59===_0x4b7a19;},'zPBNe':'text','Tdwnh':function(_0x4f6ba1,_0x44add5){return _0x4f6ba1!==_0x44add5;},'mncer':function(_0x575622,_0x557e02){return _0x575622!==_0x557e02;},'VUZsJ':function(_0x2d577f,_0x1b4518){return _0x2d577f!==_0x1b4518;},'MfwwE':function(_0x2f8dc9,_0x55f39b){return _0x2f8dc9!==_0x55f39b;},'hhbvq':function(_0x1f938b,_0x459c72){return _0x1f938b===_0x459c72;},'skzTj':function(_0x3c14a4,_0x25a6d5){return _0x3c14a4||_0x25a6d5;}};if(_0x525172['boNJy'](typeof _0x3bbdbf,_0x525172[_0x4e237c(0x265)])||_0x525172[_0x4e237c(0x1d0)](_0x3bbdbf[_0x4e237c(0x166)],0x0))throw new IdGeneratorError(_0x525172['EcmZN'],_0x4e237c(0x276));const _0x3b2e94=_0x3a8db9||'',_0x487109=_0x3b2e94===''?[_0x3bbdbf]:_0x3bbdbf[_0x4e237c(0x157)](_0x3b2e94);let _0x2ba97b='',_0x3fd512;if(_0x525172[_0x4e237c(0x249)](_0xf7c482,_0x525172[_0x4e237c(0x226)])){if(_0x4c2da9){if(_0x487109[_0x4e237c(0x166)]!==0x2||_0x525172['Tdwnh'](_0x487109[0x0],_0x4c2da9))throw new IdGeneratorError(_0x4e237c(0x261),_0x4e237c(0x205)+_0x3b2e94+'padded\x20(got:\x20'+_0x3bbdbf+')');_0x3fd512=_0x487109[0x1];}else{if(_0x525172[_0x4e237c(0x27d)](_0x487109['length'],0x1))throw new IdGeneratorError(_0x525172['EcmZN'],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x3bbdbf+')');_0x3fd512=_0x487109[0x0];}}else{const _0x2e100e=_0x4c2da9?0x3:0x2;if(_0x525172['VUZsJ'](_0x487109['length'],_0x2e100e))throw new IdGeneratorError(_0x525172[_0x4e237c(0x267)],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x3bbdbf+_0x4e237c(0x168)+_0x2e100e+_0x4e237c(0x212));let _0x5377a2=0x0;if(_0x4c2da9){if(_0x525172[_0x4e237c(0x181)](_0x487109[_0x5377a2],_0x4c2da9))throw new IdGeneratorError(_0x525172[_0x4e237c(0x267)],_0x4e237c(0x22f)+_0x4c2da9+',\x20got\x20'+_0x487109[_0x5377a2]);_0x5377a2++;}_0x2ba97b=_0x487109[_0x5377a2++];const _0x1fa349=_0x525172[_0x4e237c(0x203)](_0xf7c482,'yyyy')?/^\d{4}$/:_0xf7c482===_0x4e237c(0x260)?/^\d{6}$/:/^\d{8}$/;if(!_0x1fa349[_0x4e237c(0x248)](_0x2ba97b))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x4e237c(0x1ed)+_0xf7c482+':\x20'+_0x2ba97b);_0x3fd512=_0x487109[_0x5377a2];}if(!new RegExp('^\x5cd{'+_0xa957f9+'}$')[_0x4e237c(0x248)](_0x3fd512))throw new IdGeneratorError(_0x4e237c(0x261),_0x4e237c(0x1f6)+_0xa957f9+_0x4e237c(0x183)+_0x3fd512+')');const _0x351249=parseInt(_0x3fd512,0xa),_0x3f8a25=_0x525172[_0x4e237c(0x21e)](_0x4c2da9,'_');let _0x365743;return _0xf7c482===_0x525172[_0x4e237c(0x226)]?_0x365743=_0x3f8a25+'_text':_0x365743=_0x3f8a25+'_'+_0xf7c482+'_'+_0x2ba97b,{'formatKey':_0x365743,'counterInt':_0x351249,'datePrefix':_0x2ba97b};}['_generateFromPattern'](_0x50d29d){const _0x58bfad=a0_0x3c2e55;let _0x5d08f8='';for(const _0x52175b of _0x50d29d){const _0x3f3674=PLACEHOLDER_MAP[_0x52175b];if(_0x3f3674){const _0x2db6d5=crypto[_0x58bfad(0x215)](0x0,_0x3f3674[_0x58bfad(0x166)]);_0x5d08f8+=_0x3f3674[_0x2db6d5];}else _0x5d08f8+=_0x52175b;}return _0x5d08f8;}async[a0_0x3c2e55(0x1be)](_0xa31fc8){const _0x2c5ec3=a0_0x3c2e55,_0x549030={'TNsfL':'idgen_idem_retrieve_error','jBpuJ':_0x2c5ec3(0x191)};if(!_0xa31fc8)return null;try{const _0x30a4e3=redisClient[_0x2c5ec3(0x257)](),_0x498258=await _0x30a4e3[_0x2c5ec3(0x1fb)](_0xa31fc8);if(_0x498258)return logger[_0x2c5ec3(0x25d)]({'event':_0x2c5ec3(0x17d),'key':_0xa31fc8},_0x2c5ec3(0x1ca)),JSON[_0x2c5ec3(0x175)](_0x498258);return null;}catch(_0x487c70){return logger['warn']({'event':_0x549030[_0x2c5ec3(0x258)],'error':_0x487c70[_0x2c5ec3(0x195)]},_0x549030[_0x2c5ec3(0x227)]),null;}}async[a0_0x3c2e55(0x1d4)](_0x5f2c82,_0x4f15c9){const _0x55b031=a0_0x3c2e55,_0x455731={'guXuY':_0x55b031(0x279),'iSVlC':'Idempotency\x20store\x20error'};if(!_0x5f2c82)return;try{const _0x5235e4=redisClient['getClient']();await _0x5235e4[_0x55b031(0x1a5)](_0x5f2c82,this['idemTTL'],JSON['stringify'](_0x4f15c9));}catch(_0x144798){logger[_0x55b031(0x239)]({'event':_0x455731['guXuY'],'error':_0x144798[_0x55b031(0x195)]},_0x455731[_0x55b031(0x224)]);}}async['_storeIdemCacheNX'](_0x248765,_0x52a2ea){const _0x470f7b=a0_0x3c2e55,_0x44a499={'qOfYv':function(_0x30e52c,_0x50703f){return _0x30e52c===_0x50703f;},'XRcWz':_0x470f7b(0x1c4)};if(!_0x248765)return{'stored':!![],'winnerResult':null};try{const _0x321047=redisClient[_0x470f7b(0x257)](),_0x2a03df=JSON['stringify'](_0x52a2ea),_0x137a73=await _0x321047[_0x470f7b(0x20a)](_0x248765,_0x2a03df,'EX',this[_0x470f7b(0x24a)],'NX');if(_0x44a499[_0x470f7b(0x1ea)](_0x137a73,'OK'))return{'stored':!![],'winnerResult':null};const _0x35af77=await _0x321047[_0x470f7b(0x1fb)](_0x248765);if(_0x35af77)return{'stored':![],'winnerResult':JSON['parse'](_0x35af77)};return logger[_0x470f7b(0x239)]({'event':_0x470f7b(0x1c6),'key':_0x248765},_0x470f7b(0x1a6)),{'stored':!![],'winnerResult':null};}catch(_0x2e210b){return logger[_0x470f7b(0x239)]({'event':_0x44a499['XRcWz'],'error':_0x2e210b[_0x470f7b(0x195)]},_0x470f7b(0x19d)),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x569083,_0x433e33,_0x23dcee){const _0xc36e16=a0_0x3c2e55,_0x4e5c94={'yhDyF':_0xc36e16(0x273)};try{const _0x12287d=redisClient['getClient']();if(_0x23dcee){const _0x2d38ca=this['_buildActiveKey'](_0x569083,_0x433e33);await _0x12287d['del'](_0x2d38ca);}else{const _0x1a103e=this[_0xc36e16(0x1ae)](_0x569083);await _0x12287d['srem'](_0x1a103e,_0x433e33);}}catch(_0x4db6be){logger['warn']({'event':_0xc36e16(0x1b8),'error':_0x4db6be[_0xc36e16(0x195)]},_0x4e5c94[_0xc36e16(0x268)]);}}async[a0_0x3c2e55(0x228)](_0x195b16,_0xb3840e,_0x3d3657,_0x18fe49=0x0){const _0xd3cd4=a0_0x3c2e55,_0x34eb37={'oWEuz':function(_0x14554b,_0x40948f){return _0x14554b(_0x40948f);}};try{const _0x17cfac=redisClient['getClient'](),_0x5ce013=this['_buildMetaKey'](_0x195b16,_0xb3840e),_0x4155de=[];for(const [_0x4dcbc8,_0x743de8]of Object['entries'](_0x3d3657)){_0x4155de['push'](_0x4dcbc8,_0x34eb37[_0xd3cd4(0x237)](String,_0x743de8));}if(_0x4155de['length']>0x0){await _0x17cfac[_0xd3cd4(0x277)](_0x5ce013,..._0x4155de);if(_0x18fe49>0x0)await _0x17cfac['expire'](_0x5ce013,_0x18fe49);}}catch(_0x3982f8){logger['warn']({'event':_0xd3cd4(0x1c3),'error':_0x3982f8['message']},_0xd3cd4(0x1bf));}}async[a0_0x3c2e55(0x25e)](_0x30616c){const _0xe498ae=a0_0x3c2e55,_0xa1c19d={'sNnHe':_0xe498ae(0x230),'WsewB':_0xe498ae(0x1b2),'TANah':_0xe498ae(0x25e),'DKdpv':function(_0x3c7b0a,_0x41360c){return _0x3c7b0a(_0x41360c);},'FIBjI':function(_0x2a75ae,_0x2b2cbf){return _0x2a75ae===_0x2b2cbf;},'bTFWc':_0xe498ae(0x231)};if(!this['enabled'])throw new IdGeneratorError(_0xa1c19d[_0xe498ae(0x1c8)],_0xa1c19d['WsewB']);const _0x344435=this['_validateNumberParams'](_0x30616c),_0xa24ca=this['_validateIdempotencyKey'](_0x30616c[_0xe498ae(0x245)]),{resource:_0x80dbf8,format:_0x5d235f,prefix:_0x5130ef,separator:_0x27d51c,numDigits:_0x145150,reuseDelete:_0x6c7df5}=_0x344435,{formatKey:_0x1c4478,datePrefix:_0xb9b4fa}=this[_0xe498ae(0x216)](_0x5d235f,_0x5130ef),_0x4d2d00=this['_buildSeqKey'](_0x80dbf8,_0x1c4478),_0x38083a=this['_buildReuseKey'](_0x80dbf8,_0x1c4478),_0x2c2ce1=this[_0xe498ae(0x220)](_0x5d235f);let _0x128b3d=null;if(_0xa24ca){_0x128b3d=this[_0xe498ae(0x189)](_0xa1c19d[_0xe498ae(0x19f)],_0x80dbf8,_0x1c4478,_0xa24ca);const _0x3e6d61=await this['_retrieveIdemCache'](_0x128b3d);if(_0x3e6d61)return _0x3e6d61;}const _0x3fb7a4=redisClient['getClient'](),_0x15ea5d=await _0x3fb7a4['eval'](LUA_GENERATE_NUMBER,0x2,_0x4d2d00,_0x38083a,_0x6c7df5?'1':'0',_0xa1c19d['DKdpv'](String,_0x2c2ce1)),_0x32f7a5=_0x15ea5d[0x0],_0x4ce694=_0xa1c19d[_0xe498ae(0x1a8)](_0x15ea5d[0x1],0x1),_0x3ab867=this['_formatNumber']({'format':_0x5d235f,'prefix':_0x5130ef,'datePrefix':_0xb9b4fa,'separator':_0x27d51c,'numDigits':_0x145150,'counterInt':_0x32f7a5}),_0x307293={'value':_0x3ab867,'counter':_0x32f7a5,'resource':_0x80dbf8,'formatKey':_0x1c4478,'isReused':_0x4ce694,'generatedAt':new Date()['toISOString']()},_0x5eccac=await this[_0xe498ae(0x1f1)](_0x128b3d,_0x307293);if(!_0x5eccac['stored']){try{await _0x3fb7a4[_0xe498ae(0x164)](LUA_RELEASE_NUMBER,0x1,_0x38083a,String(_0x32f7a5),String(_0x2c2ce1));}catch(_0x20415a){logger['warn']({'event':_0xe498ae(0x196),'error':_0x20415a[_0xe498ae(0x195)],'resource':_0x80dbf8,'formatKey':_0x1c4478,'counterInt':_0x32f7a5},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger[_0xe498ae(0x25d)]({'event':'idgen_number_idem_loser','resource':_0x80dbf8,'formatKey':_0x1c4478,'counter':_0x32f7a5},_0xe498ae(0x20c)),_0x5eccac[_0xe498ae(0x19c)];}return this['_updateMeta'](_0x80dbf8,_0x1c4478,{'lastValue':_0x3ab867,'lastCounter':_0x32f7a5,'lastIsReused':_0x4ce694,'lastGeneratedAt':_0x307293[_0xe498ae(0x1a1)]},_0x2c2ce1),logger['info']({'event':_0xa1c19d[_0xe498ae(0x23f)],'resource':_0x80dbf8,'formatKey':_0x1c4478,'counter':_0x32f7a5,'isReused':_0x4ce694},'ID\x20Generator\x20number:\x20'+_0x3ab867),_0x307293;}async[a0_0x3c2e55(0x1bd)](_0x10c658){const _0x517299=a0_0x3c2e55,_0x41e7ca={'otges':_0x517299(0x26f),'YbYML':function(_0x3f35de,_0x23220a){return _0x3f35de!==_0x23220a;},'NkFBI':function(_0x2676f6,_0x308172){return _0x2676f6!==_0x308172;},'CsHCG':'string','SdBdg':function(_0x29fffb,_0x4427f6){return _0x29fffb===_0x4427f6;},'KfTwI':_0x517299(0x264),'oCwxF':_0x517299(0x1d8),'XBHXK':function(_0x4c1bab,_0x1327be){return _0x4c1bab(_0x1327be);}};if(!this[_0x517299(0x209)])throw new IdGeneratorError(_0x517299(0x230),_0x41e7ca['otges']);let _0x5b45a2,_0x570af1,_0x11875d,_0x47512e;const _0x4c01b4=this['_validateIdempotencyKey'](_0x10c658[_0x517299(0x245)]);if(_0x41e7ca['YbYML'](_0x10c658['counterInt'],undefined)&&_0x41e7ca['YbYML'](_0x10c658[_0x517299(0x22b)],null)){this[_0x517299(0x1a2)](_0x10c658['resource']),_0x5b45a2=_0x10c658['resource'];if(_0x41e7ca[_0x517299(0x269)](typeof _0x10c658['formatKey'],_0x41e7ca[_0x517299(0x1ee)])||_0x41e7ca['SdBdg'](_0x10c658[_0x517299(0x1d9)]['length'],0x0))throw new IdGeneratorError(_0x517299(0x261),_0x41e7ca[_0x517299(0x1b3)]);_0x570af1=_0x10c658[_0x517299(0x1d9)];if(!Number[_0x517299(0x211)](_0x10c658[_0x517299(0x22b)])||_0x10c658[_0x517299(0x22b)]<0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x10c658[_0x517299(0x22b)]+')');_0x11875d=_0x10c658[_0x517299(0x22b)];const _0x28fae0=_0x570af1['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x47512e=_0x28fae0?_0x28fae0[0x1]:_0x41e7ca['oCwxF'];}else{const _0x3a9b09=this['_validateNumberParams'](_0x10c658),_0x52f2ca=this['_parseNumber']({'format':_0x3a9b09[_0x517299(0x187)],'prefix':_0x3a9b09['prefix'],'separator':_0x3a9b09['separator'],'numDigits':_0x3a9b09['numDigits'],'number':_0x10c658['number']});_0x5b45a2=_0x3a9b09[_0x517299(0x236)],_0x570af1=_0x52f2ca['formatKey'],_0x11875d=_0x52f2ca['counterInt'],_0x47512e=_0x3a9b09['format'];}const _0x47e41c=this['_buildReuseKey'](_0x5b45a2,_0x570af1),_0x5edbf5=this['_getCounterTTL'](_0x47512e);let _0x722302=null;if(_0x4c01b4){_0x722302=this['_buildIdemKey'](_0x517299(0x1c9),_0x5b45a2,_0x570af1,_0x4c01b4);const _0x1ac663=await this['_retrieveIdemCache'](_0x722302);if(_0x1ac663)return _0x1ac663;}const _0x55bf31=redisClient[_0x517299(0x257)]();await _0x55bf31['eval'](LUA_RELEASE_NUMBER,0x1,_0x47e41c,_0x41e7ca[_0x517299(0x21d)](String,_0x11875d),String(_0x5edbf5));const _0x3d9949={'released':!![],'resource':_0x5b45a2,'formatKey':_0x570af1,'counter':_0x11875d,'releasedAt':new Date()['toISOString']()};return await this[_0x517299(0x1d4)](_0x722302,_0x3d9949),this['_updateMeta'](_0x5b45a2,_0x570af1,{'lastReleasedCounter':_0x11875d,'lastReleasedAt':_0x3d9949[_0x517299(0x270)]},_0x5edbf5),logger[_0x517299(0x25d)]({'event':'idgen_number_released','resource':_0x5b45a2,'formatKey':_0x570af1,'counter':_0x11875d},_0x517299(0x1fd)+_0x11875d),_0x3d9949;}async['reserveNumber'](_0x4d9752){const _0x2dc53d=a0_0x3c2e55,_0x566a05={'HHDjK':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','jyEOm':_0x2dc53d(0x222),'BgjhR':function(_0xd38b7,_0x1e6798){return _0xd38b7*_0x1e6798;},'rULKV':'formatKey','ffEei':'format','oRNmb':_0x2dc53d(0x262),'Pgazy':'numDigits','ZKBam':'datePrefix','IwTIq':function(_0x406063,_0x51c3ed){return _0x406063(_0x51c3ed);},'Pmesy':_0x2dc53d(0x19e),'VKKMe':function(_0x2a0329,_0x45c8a6){return _0x2a0329(_0x45c8a6);},'diewA':_0x2dc53d(0x263),'bVzCZ':'idgen_reserve_value_persist_error','swmLd':'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser'};if(!this[_0x2dc53d(0x209)])throw new IdGeneratorError(_0x2dc53d(0x230),_0x566a05[_0x2dc53d(0x208)]);const _0x40b0c7=this[_0x2dc53d(0x162)](_0x4d9752),_0x337242=this[_0x2dc53d(0x176)](_0x4d9752[_0x2dc53d(0x1a9)]),_0x56766d=this[_0x2dc53d(0x204)](_0x4d9752[_0x2dc53d(0x245)]),{resource:_0x275af,format:_0x1cd0d1,prefix:_0x48eb3a,separator:_0x403303,numDigits:_0x56d0f9,reuseDelete:_0x4c268a}=_0x40b0c7,{formatKey:_0x4bb17d,datePrefix:_0x4c9810}=this[_0x2dc53d(0x216)](_0x1cd0d1,_0x48eb3a),_0x3340a9=this[_0x2dc53d(0x17b)](_0x275af,_0x4bb17d),_0x3f2bf0=this[_0x2dc53d(0x247)](_0x275af,_0x4bb17d),_0x42fd89=this['_buildReservationIndexKey'](_0x275af,_0x4bb17d),_0x34fc47=this[_0x2dc53d(0x220)](_0x1cd0d1);let _0x54b962=null;if(_0x56766d){_0x54b962=this['_buildIdemKey'](_0x566a05['jyEOm'],_0x275af,_0x4bb17d,_0x56766d);const _0x30e3b7=await this['_retrieveIdemCache'](_0x54b962);if(_0x30e3b7)return _0x30e3b7;}const _0x4b3368=crypto[_0x2dc53d(0x170)](),_0x3782bb=this['_buildReservationKey'](_0x4b3368),_0x522087=this['_buildReservationKeyPrefix'](),_0x4b28a6=Date['now'](),_0x5a8324=_0x4b28a6+_0x337242*0x3e8,_0x1d08ca=_0x566a05[_0x2dc53d(0x16d)](_0x337242,0x3e8),_0xa2a66e=new Date(_0x4b28a6)[_0x2dc53d(0x1ce)](),_0x1d1c48=new Date(_0x5a8324)['toISOString'](),_0x1fa49d=['resource',_0x275af,_0x566a05['rULKV'],_0x4bb17d,_0x566a05['ffEei'],_0x1cd0d1,'prefix',_0x48eb3a,_0x566a05['oRNmb'],_0x403303,_0x566a05[_0x2dc53d(0x21c)],String(_0x56d0f9),_0x566a05['ZKBam'],_0x4c9810||'','createdAt',_0xa2a66e,_0x2dc53d(0x1db),_0x1d1c48,'ttlMs',_0x566a05[_0x2dc53d(0x171)](String,_0x1d08ca)];_0x56766d&&_0x1fa49d['push'](_0x566a05['Pmesy'],_0x56766d);const _0x2f50fa=redisClient['getClient'](),_0x2880d5=await _0x2f50fa['eval'](LUA_RESERVE_NUMBER,0x3,_0x3340a9,_0x3f2bf0,_0x42fd89,_0x4c268a?'1':'0',String(_0x34fc47),_0x4b3368,_0x3782bb,String(_0x1d08ca),String(_0x5a8324),_0x566a05['VKKMe'](String,_0x4b28a6),_0x522087,..._0x1fa49d),_0xf124e9=_0x2880d5[0x0],_0x27c341=_0x2880d5[0x1]===0x1,_0x1be9d9=_0x2880d5[0x2]||0x0;let _0x5ec2ef;try{_0x5ec2ef=this['_formatNumber']({'format':_0x1cd0d1,'prefix':_0x48eb3a,'datePrefix':_0x4c9810,'separator':_0x403303,'numDigits':_0x56d0f9,'counterInt':_0xf124e9});}catch(_0x4ff031){try{await _0x2f50fa['eval'](LUA_CANCEL_RESERVATION,0x3,_0x3782bb,_0x42fd89,_0x3f2bf0,_0x4b3368,String(_0x34fc47));}catch(_0x2dc690){logger['warn']({'event':_0x2dc53d(0x186),'error':_0x2dc690['message'],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x4ff031;}try{await _0x2f50fa[_0x2dc53d(0x277)](_0x3782bb,_0x566a05['diewA'],_0x5ec2ef);}catch(_0x3df433){logger['warn']({'event':_0x566a05['bVzCZ'],'error':_0x3df433[_0x2dc53d(0x195)],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},_0x2dc53d(0x23e));}const _0x5ecdf9={'token':_0x4b3368,'value':_0x5ec2ef,'counter':_0xf124e9,'resource':_0x275af,'formatKey':_0x4bb17d,'isReused':_0x27c341,'createdAt':_0xa2a66e,'expiresAt':_0x1d1c48,'reapedCount':_0x1be9d9},_0x5b7f76=await this['_storeIdemCacheNX'](_0x54b962,_0x5ecdf9);if(!_0x5b7f76[_0x2dc53d(0x17e)]){try{await _0x2f50fa[_0x2dc53d(0x164)](LUA_CANCEL_RESERVATION,0x3,_0x3782bb,_0x42fd89,_0x3f2bf0,_0x4b3368,_0x566a05[_0x2dc53d(0x171)](String,_0x34fc47));}catch(_0x37fb69){logger['warn']({'event':_0x2dc53d(0x25a),'error':_0x37fb69['message'],'resource':_0x275af,'formatKey':_0x4bb17d,'counterInt':_0xf124e9,'token':_0x4b3368},_0x566a05[_0x2dc53d(0x1ad)]);}return logger[_0x2dc53d(0x25d)]({'event':'idgen_reserve_idem_loser','resource':_0x275af,'formatKey':_0x4bb17d,'counter':_0xf124e9,'token':_0x4b3368},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x5b7f76[_0x2dc53d(0x19c)];}return this['_updateMeta'](_0x275af,_0x4bb17d,{'lastReservedCounter':_0xf124e9,'lastReservedAt':_0xa2a66e,'lastReapedCount':_0x1be9d9},_0x34fc47),logger[_0x2dc53d(0x25d)]({'event':_0x2dc53d(0x26a),'resource':_0x275af,'formatKey':_0x4bb17d,'counter':_0xf124e9,'isReused':_0x27c341,'token':_0x4b3368,'ttl':_0x337242,'reapedCount':_0x1be9d9},'ID\x20Generator\x20number\x20reserved:\x20'+_0x5ec2ef+'\x20(token='+_0x4b3368+')'),_0x5ecdf9;}async['confirmReservation'](_0x3299bf){const _0x378fbd=a0_0x3c2e55,_0x38731f={'JCvTS':'idgen'};if(!this[_0x378fbd(0x209)])throw new IdGeneratorError('IDGEN_DISABLED',_0x378fbd(0x26f));const _0x275958=this[_0x378fbd(0x24c)](_0x3299bf&&_0x3299bf[_0x378fbd(0x182)]),_0x594705=this[_0x378fbd(0x204)](_0x3299bf&&_0x3299bf['idempotencyKey']);let _0x19af97=null;if(_0x594705){_0x19af97=idempotencyManager['buildDeterministicKey'](_0x38731f[_0x378fbd(0x27c)],_0x378fbd(0x1ef),_0x275958+':'+_0x594705);const _0xd8d755=await this[_0x378fbd(0x1be)](_0x19af97);if(_0xd8d755)return _0xd8d755;}const _0x4dcd42=await this['_getReservationContext'](_0x275958),_0x9cabdc=redisClient['getClient'](),_0x2c3f51=await _0x9cabdc[_0x378fbd(0x164)](LUA_CONFIRM_RESERVATION,0x2,_0x4dcd42['rsvKey'],_0x4dcd42[_0x378fbd(0x19a)],_0x275958);if(!_0x2c3f51||_0x2c3f51[0x0]!==0x1)throw new IdGeneratorError(_0x378fbd(0x1c7),_0x378fbd(0x1a4)+_0x275958,{'token':_0x275958});const _0x3cb49c=parseInt(_0x2c3f51[0x1],0xa),_0x3cff92=_0x2c3f51[0x2],_0x48ba0e=_0x2c3f51[0x3],_0x4aca89=new Date()['toISOString'](),_0x315d67={'confirmed':!![],'token':_0x275958,'value':_0x3cff92,'counter':_0x3cb49c,'resource':_0x4dcd42[_0x378fbd(0x236)],'formatKey':_0x48ba0e,'confirmedAt':_0x4aca89};await this[_0x378fbd(0x1d4)](_0x19af97,_0x315d67);const _0x42ce29=_0x48ba0e[_0x378fbd(0x199)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3af342=_0x42ce29?_0x42ce29[0x1]:_0x378fbd(0x1d8),_0x5b27bb=this[_0x378fbd(0x220)](_0x3af342);return this['_updateMeta'](_0x4dcd42[_0x378fbd(0x236)],_0x48ba0e,{'lastConfirmedCounter':_0x3cb49c,'lastConfirmedAt':_0x4aca89},_0x5b27bb),logger[_0x378fbd(0x25d)]({'event':_0x378fbd(0x21f),'resource':_0x4dcd42['resource'],'formatKey':_0x48ba0e,'counter':_0x3cb49c,'token':_0x275958},_0x378fbd(0x1b5)+_0x3cff92+'\x20(token='+_0x275958+')'),_0x315d67;}async[a0_0x3c2e55(0x242)](_0x2e79c9){const _0x347850=a0_0x3c2e55,_0x5415c2={'NGLYQ':'IDGEN_DISABLED','Ulpkq':_0x347850(0x26f),'tJPJR':_0x347850(0x1d2)};if(!this['enabled'])throw new IdGeneratorError(_0x5415c2[_0x347850(0x1ba)],_0x5415c2[_0x347850(0x21b)]);const _0x169de5=this['_validateReservationToken'](_0x2e79c9&&_0x2e79c9[_0x347850(0x182)]),_0x163561=this['_validateIdempotencyKey'](_0x2e79c9&&_0x2e79c9[_0x347850(0x245)]);let _0x36279a=null;if(_0x163561){_0x36279a=idempotencyManager[_0x347850(0x194)](_0x5415c2[_0x347850(0x17f)],'reserve_cancel',_0x169de5+':'+_0x163561);const _0x52cb55=await this[_0x347850(0x1be)](_0x36279a);if(_0x52cb55)return _0x52cb55;}const _0x3be619=await this[_0x347850(0x1fc)](_0x169de5),_0x612996=this[_0x347850(0x247)](_0x3be619['resource'],_0x3be619['formatKey']),_0x3a62c6=_0x3be619[_0x347850(0x1d9)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x4b05cb=_0x3a62c6?_0x3a62c6[0x1]:'text',_0x1557b4=this[_0x347850(0x220)](_0x4b05cb),_0x5c8c2f=redisClient['getClient'](),_0x468857=await _0x5c8c2f[_0x347850(0x164)](LUA_CANCEL_RESERVATION,0x3,_0x3be619[_0x347850(0x1d3)],_0x3be619['rsvIdxKey'],_0x612996,_0x169de5,String(_0x1557b4));if(!_0x468857||_0x468857[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x347850(0x1a4)+_0x169de5,{'token':_0x169de5});const _0x2fb578=parseInt(_0x468857[0x1],0xa),_0x5e701e=_0x468857[0x2],_0x34dad6=_0x468857[0x3],_0x1700ed=new Date()['toISOString'](),_0x5b865b={'cancelled':!![],'token':_0x169de5,'value':_0x5e701e,'counter':_0x2fb578,'resource':_0x3be619['resource'],'formatKey':_0x34dad6,'releasedToReuse':!![],'cancelledAt':_0x1700ed};return await this['_storeIdemCache'](_0x36279a,_0x5b865b),this['_updateMeta'](_0x3be619[_0x347850(0x236)],_0x34dad6,{'lastCancelledCounter':_0x2fb578,'lastCancelledAt':_0x1700ed},_0x1557b4),logger['info']({'event':_0x347850(0x1a7),'resource':_0x3be619[_0x347850(0x236)],'formatKey':_0x34dad6,'counter':_0x2fb578,'token':_0x169de5},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x5e701e+_0x347850(0x1ec)+_0x169de5+')'),_0x5b865b;}async['extendReservation'](_0x5df918){const _0x2f34e2=a0_0x3c2e55,_0x1ac647={'VRYel':'idgen','WjYzQ':'reserve_extend','kuWXc':function(_0x436229,_0x583e18){return _0x436229*_0x583e18;},'zVOrP':function(_0x40acbb,_0x59e39d){return _0x40acbb*_0x59e39d;},'Xlmsd':_0x2f34e2(0x1d8),'uSQcf':_0x2f34e2(0x17a)};if(!this['enabled'])throw new IdGeneratorError(_0x2f34e2(0x230),_0x2f34e2(0x26f));const _0x5e1fb6=this[_0x2f34e2(0x24c)](_0x5df918&&_0x5df918[_0x2f34e2(0x182)]),_0x15a80e=this['_validateReserveTTL'](_0x5df918&&_0x5df918[_0x2f34e2(0x1a9)]),_0xa12f0=this[_0x2f34e2(0x204)](_0x5df918&&_0x5df918[_0x2f34e2(0x245)]);let _0x550266=null;if(_0xa12f0){_0x550266=idempotencyManager[_0x2f34e2(0x194)](_0x1ac647['VRYel'],_0x1ac647['WjYzQ'],_0x5e1fb6+':'+_0xa12f0);const _0x5a8b8a=await this[_0x2f34e2(0x1be)](_0x550266);if(_0x5a8b8a)return _0x5a8b8a;}const _0x413b81=await this[_0x2f34e2(0x1fc)](_0x5e1fb6),_0x1383e1=Date[_0x2f34e2(0x1ff)](),_0x3590d1=_0x1383e1+_0x1ac647['kuWXc'](_0x15a80e,0x3e8),_0x4518ea=_0x1ac647['zVOrP'](_0x15a80e,0x3e8),_0xf557fa=new Date(_0x3590d1)[_0x2f34e2(0x1ce)](),_0x35f27a=redisClient[_0x2f34e2(0x257)](),_0x218e36=await _0x35f27a[_0x2f34e2(0x164)](LUA_EXTEND_RESERVATION,0x2,_0x413b81['rsvKey'],_0x413b81['rsvIdxKey'],_0x5e1fb6,String(_0x4518ea),String(_0x3590d1),_0xf557fa);if(!_0x218e36||_0x218e36[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5e1fb6,{'token':_0x5e1fb6});const _0x7090fb=_0x218e36[0x1],_0x3e4765=parseInt(_0x218e36[0x2],0xa),_0x41be19=_0x218e36[0x3],_0x587789=_0x218e36[0x4],_0x475b92=new Date(_0x1383e1)['toISOString'](),_0x166de0={'extended':!![],'token':_0x5e1fb6,'previousExpiresAt':_0x7090fb,'expiresAt':_0xf557fa,'ttlMs':_0x4518ea,'resource':_0x413b81['resource'],'formatKey':_0x587789,'counter':_0x3e4765,'value':_0x41be19,'extendedAt':_0x475b92};await this[_0x2f34e2(0x1d4)](_0x550266,_0x166de0);const _0x400413=_0x587789['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x399b60=_0x400413?_0x400413[0x1]:_0x1ac647['Xlmsd'],_0x4e9224=this['_getCounterTTL'](_0x399b60);return this[_0x2f34e2(0x228)](_0x413b81[_0x2f34e2(0x236)],_0x587789,{'lastExtendedCounter':_0x3e4765,'lastExtendedAt':_0x475b92},_0x4e9224),logger['info']({'event':_0x1ac647[_0x2f34e2(0x16c)],'resource':_0x413b81[_0x2f34e2(0x236)],'formatKey':_0x587789,'counter':_0x3e4765,'token':_0x5e1fb6,'ttl':_0x15a80e},_0x2f34e2(0x233)+_0x41be19+'\x20(token='+_0x5e1fb6+',\x20+'+_0x15a80e+'s)'),_0x166de0;}async[a0_0x3c2e55(0x266)](_0x1abb94){const _0x598e6d=a0_0x3c2e55,_0x30ccf9={'OfHBA':_0x598e6d(0x230),'eMrfv':function(_0x428568,_0x903d8a){return _0x428568===_0x903d8a;},'cmcdI':function(_0x4bce51,_0x9ea045){return _0x4bce51===_0x9ea045;},'TQeuK':function(_0x2783bd,_0x5c7efc){return _0x2783bd===_0x5c7efc;},'cAfjl':_0x598e6d(0x25e)};if(!this[_0x598e6d(0x209)])throw new IdGeneratorError(_0x30ccf9['OfHBA'],_0x598e6d(0x26f));const _0x2e6332=this['_validateReservationToken'](_0x1abb94&&_0x1abb94[_0x598e6d(0x182)]),_0x4e96fa=this[_0x598e6d(0x1fa)](_0x2e6332),_0x517088=redisClient['getClient'](),_0x2ab3c0=_0x517088['pipeline']();_0x2ab3c0[_0x598e6d(0x1b0)](_0x4e96fa),_0x2ab3c0[_0x598e6d(0x240)](_0x4e96fa);const _0x4f76db=await _0x2ab3c0['exec'](),_0x1f851c=_0x4f76db&&_0x4f76db[0x0]&&_0x4f76db[0x0][0x1],_0x3c2b43=_0x4f76db&&_0x4f76db[0x1]&&_0x4f76db[0x1][0x1];if(!_0x1f851c||Object['keys'](_0x1f851c)[_0x598e6d(0x166)]===0x0)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x2e6332,{'token':_0x2e6332});return{'token':_0x2e6332,'resource':_0x1f851c['resource']||null,'formatKey':_0x1f851c['formatKey']||null,'format':_0x1f851c['format']||null,'prefix':_0x1f851c[_0x598e6d(0x259)]||'','separator':_0x1f851c['separator']||'','numDigits':_0x1f851c['numDigits']?parseInt(_0x1f851c['numDigits'],0xa):null,'datePrefix':_0x1f851c[_0x598e6d(0x235)]||'','counter':_0x1f851c[_0x598e6d(0x1bb)]?parseInt(_0x1f851c[_0x598e6d(0x1bb)],0xa):null,'value':_0x1f851c['value']||null,'isReused':_0x30ccf9['eMrfv'](_0x1f851c['isReused'],'1')||_0x30ccf9['cmcdI'](_0x1f851c[_0x598e6d(0x1e3)],0x1),'createdAt':_0x1f851c[_0x598e6d(0x173)]||null,'expiresAt':_0x1f851c[_0x598e6d(0x1db)]||null,'ttlRemainingMs':_0x30ccf9[_0x598e6d(0x184)](typeof _0x3c2b43,_0x30ccf9[_0x598e6d(0x185)])&&_0x3c2b43>=0x0?_0x3c2b43:null};}async['_getReservationContext'](_0x9085f8){const _0xd49393=a0_0x3c2e55,_0x38d039={'XDaYy':_0xd49393(0x1d9),'jqUIR':function(_0x2a6b01,_0x1b3e7b){return _0x2a6b01||_0x1b3e7b;}},_0x2c9b38=this['_buildReservationKey'](_0x9085f8),_0x371abd=redisClient['getClient'](),_0x6208e9=await _0x371abd[_0xd49393(0x251)](_0x2c9b38,_0xd49393(0x236),_0x38d039['XDaYy']),_0x3a09c1=_0x6208e9&&_0x6208e9[0x0],_0x347ba4=_0x6208e9&&_0x6208e9[0x1];if(_0x38d039[_0xd49393(0x27a)](!_0x3a09c1,!_0x347ba4))throw new IdGeneratorError(_0xd49393(0x1c7),_0xd49393(0x1a4)+_0x9085f8,{'token':_0x9085f8});return{'resource':_0x3a09c1,'formatKey':_0x347ba4,'rsvKey':_0x2c9b38,'rsvIdxKey':this['_buildReservationIndexKey'](_0x3a09c1,_0x347ba4)};}async['random'](_0x21f791){const _0x570f8f=a0_0x3c2e55,_0x418de9={'Clbiq':function(_0x54ef54,_0x2d3f67){return _0x54ef54===_0x2d3f67;},'XNkrL':function(_0xb4c987,_0x2ade0c){return _0xb4c987===_0x2ade0c;},'RfhqZ':function(_0xad2753,_0x32f156){return _0xad2753===_0x32f156;},'QShFU':'IDGEN_UNIQUE_RETRY_EXHAUSTED','OZYBE':function(_0x58730c,_0x108b53){return _0x58730c&&_0x108b53;},'hDJBu':function(_0x135de3,_0x400a1b){return _0x135de3*_0x400a1b;},'EOJCP':function(_0x3d9988,_0x3d1c5d){return _0x3d9988||_0x3d1c5d;}};if(!this['enabled'])throw new IdGeneratorError(_0x570f8f(0x230),'ID\x20Generator\x20is\x20disabled');this[_0x570f8f(0x1a2)](_0x21f791['resource']),this[_0x570f8f(0x22e)](_0x21f791[_0x570f8f(0x217)]);const _0x553274=this['_validateTTL'](_0x21f791['ttl']),_0x77ff23=this['_validateMaxRetry'](_0x21f791['maxRetry']),_0x4e45a0=this['_validateIdempotencyKey'](_0x21f791['idempotencyKey']),_0x4bdac7=_0x418de9[_0x570f8f(0x1f5)](_0x21f791[_0x570f8f(0x1b4)],!![]),{resource:_0x5a6332,pattern:_0x1324b3}=_0x21f791;let _0x3a37a4=null;if(_0x4e45a0){_0x3a37a4=this['_buildIdemKey'](_0x570f8f(0x275),_0x5a6332,null,_0x4e45a0);const _0x2cddfc=await this[_0x570f8f(0x1be)](_0x3a37a4);if(_0x2cddfc)return _0x2cddfc;}const _0x4d2421=redisClient['getClient']();let _0x5f2504=null,_0x5df9e8=0x0;if(!_0x4bdac7)_0x5f2504=this['_generateFromPattern'](_0x1324b3),_0x5df9e8=0x1;else{for(let _0x8f9484=0x0;_0x8f9484<_0x77ff23;_0x8f9484++){_0x5df9e8++;const _0x1604f8=this[_0x570f8f(0x241)](_0x1324b3);if(_0x553274){const _0x362d65=this['_buildActiveKey'](_0x5a6332,_0x1604f8),_0x32ea25=await _0x4d2421[_0x570f8f(0x20a)](_0x362d65,'1','EX',_0x553274,'NX');if(_0x418de9[_0x570f8f(0x1d7)](_0x32ea25,'OK')){_0x5f2504=_0x1604f8;break;}}else{const _0x21fa04=this[_0x570f8f(0x1ae)](_0x5a6332),_0x4bbc0a=await _0x4d2421[_0x570f8f(0x207)](_0x21fa04,_0x1604f8);if(_0x4bbc0a===0x1){_0x5f2504=_0x1604f8;break;}}}if(_0x418de9['RfhqZ'](_0x5f2504,null))throw new IdGeneratorError(_0x418de9['QShFU'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x77ff23+_0x570f8f(0x232),{'resource':_0x5a6332,'pattern':_0x1324b3,'maxRetry':_0x77ff23});}const _0x21bc7e={'value':_0x5f2504,'resource':_0x5a6332,'pattern':_0x1324b3,'attemptCount':_0x5df9e8,'generatedAt':new Date()['toISOString']()};_0x418de9['OZYBE'](_0x553274,_0x4bdac7)&&(_0x21bc7e[_0x570f8f(0x1db)]=new Date(Date[_0x570f8f(0x1ff)]()+_0x418de9[_0x570f8f(0x1f8)](_0x553274,0x3e8))[_0x570f8f(0x1ce)]());const _0x3c43a0=await this[_0x570f8f(0x1f1)](_0x3a37a4,_0x21bc7e);if(!_0x3c43a0[_0x570f8f(0x17e)])return _0x4bdac7&&await this[_0x570f8f(0x1b1)](_0x5a6332,_0x5f2504,_0x553274),logger[_0x570f8f(0x25d)]({'event':'idgen_random_idem_loser','resource':_0x5a6332,'pattern':_0x1324b3,'value':_0x5f2504},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x3c43a0[_0x570f8f(0x19c)];return logger['info']({'event':'idgen_random_generated','resource':_0x5a6332,'pattern':_0x1324b3,'attemptCount':_0x5df9e8,'ensureUnique':_0x4bdac7,'ttl':_0x418de9['EOJCP'](_0x553274,0x0)},'ID\x20Generator\x20random:\x20'+_0x5f2504),_0x21bc7e;}async['pin'](_0x4155fb){const _0x37064f=a0_0x3c2e55,_0x493125={'XypQN':function(_0x45cb73,_0x19bd15){return _0x45cb73==_0x19bd15;},'kuSms':function(_0x37effb,_0x152e85){return _0x37effb<_0x152e85;},'iuxdU':'IDGEN_INVALID_DIGITS'},_0x419caa=_0x493125[_0x37064f(0x16b)](_0x4155fb[_0x37064f(0x198)],null)?this[_0x37064f(0x179)]:_0x4155fb[_0x37064f(0x198)];if(!Number['isInteger'](_0x419caa)||_0x493125[_0x37064f(0x271)](_0x419caa,MIN_PIN_DIGITS)||_0x419caa>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x493125['iuxdU'],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x37064f(0x1fe)+_0x419caa+')');const _0x56c8fc='9'['repeat'](_0x419caa);return this['random']({'resource':_0x4155fb[_0x37064f(0x236)],'pattern':_0x56c8fc,'ensureUnique':_0x4155fb[_0x37064f(0x1b4)]===!![],'ttl':_0x4155fb['ttl'],'maxRetry':_0x4155fb['maxRetry'],'idempotencyKey':_0x4155fb[_0x37064f(0x245)]});}async['serial'](_0x4e9138){const _0xcfc635=a0_0x3c2e55,_0x3d4fed={'sjHeH':function(_0x2ec7a6,_0x4fed5f){return _0x2ec7a6!==_0x4fed5f;}},_0x1bbf25=_0x4e9138['pattern']||this['defaultSerialPattern'];return this[_0xcfc635(0x275)]({'resource':_0x4e9138[_0xcfc635(0x236)],'pattern':_0x1bbf25,'ensureUnique':_0x3d4fed['sjHeH'](_0x4e9138[_0xcfc635(0x1b4)],![]),'ttl':_0x4e9138[_0xcfc635(0x1a9)],'maxRetry':_0x4e9138['maxRetry'],'idempotencyKey':_0x4e9138[_0xcfc635(0x245)]});}async['code'](_0x434d9e){const _0x5f5382=a0_0x3c2e55,_0x309640={'OYZcj':function(_0x524bf9,_0x12d883){return _0x524bf9!==_0x12d883;}},_0x3a6464=_0x434d9e['pattern']||this[_0x5f5382(0x252)];return this['random']({'resource':_0x434d9e['resource'],'pattern':_0x3a6464,'ensureUnique':_0x309640['OYZcj'](_0x434d9e['ensureUnique'],![]),'ttl':_0x434d9e['ttl'],'maxRetry':_0x434d9e[_0x5f5382(0x213)],'idempotencyKey':_0x434d9e['idempotencyKey']});}async['consume'](_0x3dbd49){const _0x189b71=a0_0x3c2e55,_0x4ca6ea={'TMVdr':'IDGEN_DISABLED','dxNbZ':_0x189b71(0x26f),'VXVub':function(_0x9d08cc,_0x35eaf3){return _0x9d08cc!==_0x35eaf3;},'WUkgR':_0x189b71(0x1aa),'wysro':function(_0x527676,_0x5b432f){return _0x527676>_0x5b432f;},'aiNXC':function(_0x48f534,_0x2af1e1){return _0x48f534+_0x2af1e1;},'LqJdH':_0x189b71(0x274)};if(!this['enabled'])throw new IdGeneratorError(_0x4ca6ea[_0x189b71(0x1d1)],_0x4ca6ea['dxNbZ']);this[_0x189b71(0x1a2)](_0x3dbd49[_0x189b71(0x236)]);if(_0x4ca6ea['VXVub'](typeof _0x3dbd49[_0x189b71(0x263)],_0x189b71(0x15e))||_0x3dbd49['value'][_0x189b71(0x166)]===0x0)throw new IdGeneratorError(_0x189b71(0x261),_0x4ca6ea['WUkgR']);const {resource:_0x957a88,value:_0x2a45b1}=_0x3dbd49,_0x2abf0c=redisClient[_0x189b71(0x257)](),_0x503ffc=this[_0x189b71(0x163)](_0x957a88,_0x2a45b1),_0x46a585=this[_0x189b71(0x1ae)](_0x957a88),[_0x90e89f,_0x229d46]=await Promise[_0x189b71(0x27e)]([_0x2abf0c['del'](_0x503ffc),_0x2abf0c['srem'](_0x46a585,_0x2a45b1)]),_0x68de1c=_0x4ca6ea['wysro'](_0x4ca6ea['aiNXC'](_0x90e89f,_0x229d46),0x0);return logger[_0x189b71(0x25d)]({'event':_0x4ca6ea[_0x189b71(0x15a)],'resource':_0x957a88,'value':_0x2a45b1,'consumed':_0x68de1c},_0x189b71(0x253)+_0x2a45b1),{'consumed':_0x68de1c,'resource':_0x957a88,'value':_0x2a45b1,'consumedAt':new Date()['toISOString']()};}async[a0_0x3c2e55(0x159)](_0x2c7ac2){const _0x13c692=a0_0x3c2e55,_0x3cd615={'ZrRPT':_0x13c692(0x25e),'qJMxq':_0x13c692(0x1d8),'sBFHg':'IDGEN_INVALID_FORMAT','UjzuE':function(_0x30ba99,_0x33ba26,_0x18d0a6){return _0x30ba99(_0x33ba26,_0x18d0a6);},'hsmdL':_0x13c692(0x275)};if(!this[_0x13c692(0x209)])throw new IdGeneratorError(_0x13c692(0x230),'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x2c7ac2[_0x13c692(0x236)]);const _0x325e55=_0x2c7ac2['mode']||_0x3cd615[_0x13c692(0x1c5)],_0xa0e0c2=redisClient['getClient']();if(_0x325e55==='number'){const _0x209f79=(_0x2c7ac2['format']||_0x3cd615['qJMxq'])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x209f79))throw new IdGeneratorError(_0x3cd615[_0x13c692(0x23c)],_0x13c692(0x1de)+_0x2c7ac2['format']);const {formatKey:_0x1a8f37}=this['_buildFormatKey'](_0x209f79,_0x2c7ac2[_0x13c692(0x259)]||''),_0x55a411=this['_buildSeqKey'](_0x2c7ac2['resource'],_0x1a8f37),_0x4e1ffd=this[_0x13c692(0x247)](_0x2c7ac2[_0x13c692(0x236)],_0x1a8f37),[_0x57dc54,_0x3f6422]=await Promise[_0x13c692(0x27e)]([_0xa0e0c2[_0x13c692(0x1fb)](_0x55a411),_0xa0e0c2[_0x13c692(0x26d)](_0x4e1ffd)]);return{'resource':_0x2c7ac2[_0x13c692(0x236)],'mode':'number','formatKey':_0x1a8f37,'currentCounter':_0x3cd615[_0x13c692(0x17c)](parseInt,_0x57dc54,0xa)||0x0,'reusePoolSize':_0x3f6422||0x0};}if(_0x325e55===_0x3cd615[_0x13c692(0x1c0)]){const _0x264072=this[_0x13c692(0x1ae)](_0x2c7ac2['resource']),_0x6fc09d=await _0xa0e0c2[_0x13c692(0x24e)](_0x264072);return{'resource':_0x2c7ac2['resource'],'mode':_0x3cd615[_0x13c692(0x1c0)],'issuedCount':_0x6fc09d||0x0};}throw new IdGeneratorError(_0x13c692(0x1bc),'Unknown\x20mode:\x20'+_0x325e55);}async[a0_0x3c2e55(0x161)](_0x4172c1){const _0x3997dc=a0_0x3c2e55,_0x263525={'FZjQE':function(_0x531392,_0x4b06be){return _0x531392===_0x4b06be;}},_0x55b038=await this[_0x3997dc(0x159)](_0x4172c1);if(_0x263525['FZjQE'](_0x55b038['mode'],'number')){const _0x3fa956=redisClient[_0x3997dc(0x257)](),_0x27940d=this[_0x3997dc(0x174)](_0x4172c1['resource'],_0x55b038['formatKey']),_0x5c46f3=this['_buildReuseKey'](_0x4172c1[_0x3997dc(0x236)],_0x55b038[_0x3997dc(0x1d9)]),[_0x2732ec,_0x4379d8]=await Promise['all']([_0x3fa956['hgetall'](_0x27940d),_0x3fa956['zrange'](_0x5c46f3,0x0,-0x1)]);return{..._0x55b038,'reusePoolValues':_0x4379d8['map'](_0x14cc7a=>parseInt(_0x14cc7a,0xa)),'meta':_0x2732ec&&Object[_0x3997dc(0x18e)](_0x2732ec)['length']>0x0?_0x2732ec:null};}return _0x55b038;}async['reset'](_0x313c5c){const _0x1ba354=a0_0x3c2e55,_0x48be0e={'NPyVp':_0x1ba354(0x230),'rudtB':'ID\x20Generator\x20is\x20disabled','PNCSi':_0x1ba354(0x1cd),'xDpNq':function(_0x3cc3e7,_0xf1858a){return _0x3cc3e7===_0xf1858a;},'whALS':'number','adSEj':_0x1ba354(0x190),'gDUKw':_0x1ba354(0x246),'yMOhD':_0x1ba354(0x1e0),'VnSMK':_0x1ba354(0x23b),'dxKkq':_0x1ba354(0x275),'DmYIU':_0x1ba354(0x16e)};if(!this[_0x1ba354(0x209)])throw new IdGeneratorError(_0x48be0e['NPyVp'],_0x48be0e[_0x1ba354(0x26e)]);if(!this['allowReset'])throw new IdGeneratorError(_0x1ba354(0x193),_0x48be0e[_0x1ba354(0x221)]);this[_0x1ba354(0x1a2)](_0x313c5c[_0x1ba354(0x236)]);const _0x5969aa=_0x313c5c[_0x1ba354(0x1b9)]||_0x1ba354(0x25e),_0x31219a=redisClient[_0x1ba354(0x257)]();if(_0x48be0e['xDpNq'](_0x5969aa,_0x48be0e['whALS'])){const _0x5e7ba0=(_0x313c5c[_0x1ba354(0x187)]||_0x1ba354(0x1d8))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x5e7ba0))throw new IdGeneratorError(_0x48be0e[_0x1ba354(0x1cf)],'Invalid\x20format:\x20'+_0x313c5c[_0x1ba354(0x187)]);const {formatKey:_0x325d57}=this['_buildFormatKey'](_0x5e7ba0,_0x313c5c[_0x1ba354(0x259)]||''),_0xfe8a0e=this[_0x1ba354(0x17b)](_0x313c5c['resource'],_0x325d57),_0x3b02ce=this['_buildReuseKey'](_0x313c5c['resource'],_0x325d57),_0x397ab4=this['_buildMetaKey'](_0x313c5c['resource'],_0x325d57);return await _0x31219a['del'](_0xfe8a0e,_0x3b02ce,_0x397ab4),logger['warn']({'event':_0x48be0e['gDUKw'],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':_0x48be0e['whALS'],'formatKey':_0x325d57},_0x1ba354(0x1dd)+_0x313c5c[_0x1ba354(0x236)]+':'+_0x325d57),{'reset':!![],'resource':_0x313c5c['resource'],'mode':_0x1ba354(0x25e),'formatKey':_0x325d57,'deletedKeys':[_0x48be0e['yMOhD'],_0x48be0e[_0x1ba354(0x1b6)],'meta']};}if(_0x48be0e['xDpNq'](_0x5969aa,_0x48be0e['dxKkq'])){const _0xbb807f=this[_0x1ba354(0x1ae)](_0x313c5c[_0x1ba354(0x236)]);return await _0x31219a['del'](_0xbb807f),logger[_0x1ba354(0x239)]({'event':_0x48be0e['gDUKw'],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':_0x48be0e['dxKkq']},'ID\x20Generator\x20reset:\x20random:'+_0x313c5c['resource']),{'reset':!![],'resource':_0x313c5c[_0x1ba354(0x236)],'mode':'random','deletedKeys':[_0x48be0e[_0x1ba354(0x256)]]};}throw new IdGeneratorError(_0x1ba354(0x1bc),'Unknown\x20mode:\x20'+_0x5969aa);}}const instance=new IdGenerator();function a0_0x4560(){const _0xa81cb=['zM9YBwf0s2v5','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','zxHWAxjLC0f0','rgPlsK4','suqGr2vUzxjHDg9YihjLC2v0oIa','sw52ywXPzcbMB3jTyxq6ia','surhru5Fq09vtLrfuL9pvKvsrKXpvW','C2vX','A2v5uhjLzML4','ndy1odKYvvLpDxDN','AxnszxvZzwq','z2v0rgf0zq','AxnZDwvKoG','x2TLEvbYzwzPEa','x2LKzw1uveW','lI9YzwrPCY1JBgLLBNq','x2rLzMf1BhrqAw5eAwDPDhm','Cu9Mwxy','Bwv0ytO','icH0B2TLBJ0','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','q3niq0C','CMvZzxj2zv9JB25MAxjT','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','x3n0B3jLswrLBunHy2HLtLG','x2rLzMf1BhrdB2rLugf0DgvYBG','yvjewem','mLbQs0fitq','q2XIAxe','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','vw5RBM93BIbMB3jTyxq6ia','AerkqNu','surhru5Fsu5wquXjrf9srvnpvvjdrq','x2j1AwXKuMvZzxj2yxrPB25lzxK','z2v0','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','icHNB3q6ia','BM93','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','CNn2x2LKEdO','x2fSBg93uMvZzxq','AgHIDNe','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','CgfKu3rHCNq','C2fKza','seHeAKS','zw5HyMXLza','C2v0','mJaYnda4oenbtuXKBq','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','x3jLC2vYDMvezwzHDwX0vfrm','Dhj1zq','x3zHBgLKyxrLtwf4uMv0CNK','mtGYnti2mffgu3Hquq','AxnjBNrLz2vY','ihbHCNrZkq','Bwf4uMv0CNK','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','CMfUzg9Tsw50','x2j1AwXKrM9YBwf0s2v5','Cgf0DgvYBG','x2zVCM1HDe51BwjLCG','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','ofbnBuTXDW','vwXWA3e','ugDHENK','wejiweS','C2T6vgO','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','x2DLDenVDw50zxjuveW','ue5du2K','CMvZzxj2zq','wfHywc1ywfHylvHywfGTwfHywa','AvnwBem','ywXSB3DszxnLDa','ELbctMu','AKjWDuO','x3vWzgf0zu1LDge','A29krKO','x2vUC3vYzuLUAxrPywXPEMvK','y291BNrLCKLUDa','z2v0tw9UDgG','x2rLzMf1BhrtzxjPywXqyxr0zxjU','x3zHBgLKyxrLugf0DgvYBG','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','surhru5FreLtqujmruq','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','D3PKueC','zgf0zvbYzwzPEa','CMvZB3vYy2u','B1DfDxO','z0vysKW','D2fYBG','yNHmAKS','CMv1C2u','C0jgsgC','x2rLzMf1BhrnyxHszxrYEq','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','yLrgv2m','Chr0Ba','x2DLBMvYyxrLrNjVBvbHDhrLCM4','y2fUy2vSuMvZzxj2yxrPB24','x3rLEhq','qxHbBuS','AwrLBxbVDgvUy3LlzxK','AwrNzw5FCMvZzxq','x2j1AwXKuMv1C2vlzxK','DgvZDa','s1nMExC','AwrLBvruta','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','swrhzw5LCMf0B3jfCNjVCG','C2nHCMq','wfjWsNe','qLLKyxG','Ag1Nzxq','zgvMyxvSDenVzgvqyxr0zxjU','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','ndbIDNz1s1u','zw52','rg1zsvu','z2v0q2XPzw50','ve5ZzKW','ChjLzML4','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','x3jLC2vYDMvnyxHuveW','Aw5MBW','BNvTyMvY','uKTmDuK','ExL5Ew1T','surhru5Fsu5wquXjrf9ovu1crvi','C2vWyxjHDg9Y','DMfSDwu','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','Bhz1EKO','z2v0uMvZzxj2yxrPB24','rwnTwK4','EwHeEuy','tMTgqKK','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','x3L5ExLTBv8','ExL5Ew1Tzgq','EMnHCMq','CNvKDei','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','CMvSzwfZzwrbDa','A3vtBxm','x3bHzdi','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','AwrNzw5Fy29UC3vTzwq','CMfUzg9T','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','AhnLDa','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','ANfvsvi','CNn2oG','sKn2vfm','Bw5Jzxi','ywXS','r3rkyNa','C3bSAxq','ihnLy29UzhmGkgDVDdOG','CgvLAW','thfkzeG','surhru5Fsu5wquXjrf9ut0TftG','ndq3nda5owTSEMzHBW','surhru5Fsu5wquXjrf9uveW','C3rYAw5N','q291BNrLCIbVDMvYzMXVDZOG','zxHWB3j0CW','z2v0sw5MBW','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','x2j1AwXKqwn0AxzLs2v5','zxzHBa','zgvMyxvSDfnLCMLHBfbHDhrLCM4','BgvUz3rO','surhru5Fsurftv9uveW','lcbLEhbLy3rLzca','zgv0ywLSCW','vhrnz04','whLWuu4','Dvnry2y','qMDQAfi','AxnZDwvK','CMvZzxj2zu1HEfruta','CMfUzg9Tvvvjra','sxDusxe','otK5os05otK5','y3jLyxrLzef0','x2j1AwXKtwv0yuTLEq','CgfYC2u','x3zHBgLKyxrLuMvZzxj2zvruta','zgvMyxvSDe1HEfjLDhj5','x2nVDw50zxjuveXnyxa','zgvMyxvSDfbPBKrPz2L0CW','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','x2j1AwXKu2vXs2v5','vwP6Duu','AwrNzw5FAwrLBv9OAxq','C3rVCMvK','DePqsLi','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','twz3D0u','Dg9Rzw4','igrPz2L0CYaOz290oIa','vffLDuS','y0fMAMW','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','zM9YBwf0','surhru5Frevgqvvmvf9qsu5FreLhsvrt','x2j1AwXKswrLBuTLEq','mdeYmZq1nJC4oq','x2LUAxrPywXPEMvK','ELzHyxi','mtG2odmXmfvrA215sG','A2v5CW','x2vUywjSzwq','surhru5Fsu5wquXjrf9gt1jnqvq','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','mtGXodq0mvbYrhbLua','surhru5FuKvtrvrFtK9ux0fmte9xruq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','BwvZC2fNzq','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','zgLNAxrZ','Bwf0y2G','CNn2swr4s2v5','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','D2LUBMvYuMvZDwX0','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','AwrLBuTLEq','vefoywG','sgzXy3G','z2vUzxjHDgvKqxq','x3zHBgLKyxrLuMvZB3vYy2u','x3L5ExLTBwrKxW','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','C2v0zxG','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','rKLcAKK','DhrS','DMfSDwuGAxmGCMvXDwLYzwq','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','C3rYAw5NAwz5','C3DTtgq','x2j1AwXKsxnZDwvKs2v5','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','AgDLDgfSBa','x3vUzg9syw5KB21szxnLCNzHDgLVBG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','s2zuD0K','zw5ZDxjLvw5PCxvL','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','vM5ttuS','CMvZzxj2zurLzMf1BhruveW','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','Bw9Kzq','tKDmwve','y291BNrLCG','surhru5Fsu5wquXjrf9nt0rf','CMvSzwfZzu51BwjLCG','x3jLDhjPzxzLswrLBunHy2HL','twv0ysb1CgrHDguGzxjYB3i','AhnTzeW','surhru5Fq09vtLrfuL9uveXFrefjtfK','nta2mJC2s1PxBxHn','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','wNjsufq','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','C05Usgu','CMvSzwfZzq','swrLBxbVDgvUy3KGy2fJAguGseLu','AwrNzw5Fy29UzMLNx2LUAxq','rKfXDLi','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','Dg9ju09tDhjPBMC','ywrtrwO','DhjhuuS','ve1wzhi','AwrNzw4','CNn2s2v5','x3n0B3jLswrLBunHy2HL','lwrPz2L0ignHCgfJAxr5icG','y3j5ChrV','we5RCKW','Dgv4Da'];a0_0x4560=function(){return _0xa81cb;};return a0_0x4560();}instance[a0_0x3c2e55(0x24d)]=IdGeneratorError,module['exports']=instance,module[a0_0x3c2e55(0x160)]['IdGeneratorError']=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x14008c=a0_0x15e0;function a0_0x15e0(_0x56b40d,_0xf3845c){_0x56b40d=_0x56b40d-0x169;const _0x446f69=a0_0x446f();let _0x15e053=_0x446f69[_0x56b40d];if(a0_0x15e0['wxJDgH']===undefined){var _0x163fa0=function(_0x433fc6){const _0x4a74d1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xd457f1='',_0x304b3b='';for(let _0x67b2fd=0x0,_0x271d09,_0x44021d,_0xda839d=0x0;_0x44021d=_0x433fc6['charAt'](_0xda839d++);~_0x44021d&&(_0x271d09=_0x67b2fd%0x4?_0x271d09*0x40+_0x44021d:_0x44021d,_0x67b2fd++%0x4)?_0xd457f1+=String['fromCharCode'](0xff&_0x271d09>>(-0x2*_0x67b2fd&0x6)):0x0){_0x44021d=_0x4a74d1['indexOf'](_0x44021d);}for(let _0x3037d0=0x0,_0x34ded0=_0xd457f1['length'];_0x3037d0<_0x34ded0;_0x3037d0++){_0x304b3b+='%'+('00'+_0xd457f1['charCodeAt'](_0x3037d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x304b3b);};a0_0x15e0['SnKfxw']=_0x163fa0,a0_0x15e0['FcPsIS']={},a0_0x15e0['wxJDgH']=!![];}const _0x4b0e25=_0x446f69[0x0],_0x630d54=_0x56b40d+_0x4b0e25,_0x5436aa=a0_0x15e0['FcPsIS'][_0x630d54];return!_0x5436aa?(_0x15e053=a0_0x15e0['SnKfxw'](_0x15e053),a0_0x15e0['FcPsIS'][_0x630d54]=_0x15e053):_0x15e053=_0x5436aa,_0x15e053;}(function(_0x324ae5,_0x1c75fe){const _0x4c25c1=a0_0x15e0,_0x201566=_0x324ae5();while(!![]){try{const _0x565915=parseInt(_0x4c25c1(0x17b))/0x1*(parseInt(_0x4c25c1(0x17f))/0x2)+parseInt(_0x4c25c1(0x18b))/0x3*(parseInt(_0x4c25c1(0x17d))/0x4)+parseInt(_0x4c25c1(0x171))/0x5+-parseInt(_0x4c25c1(0x188))/0x6*(parseInt(_0x4c25c1(0x180))/0x7)+-parseInt(_0x4c25c1(0x183))/0x8*(parseInt(_0x4c25c1(0x170))/0x9)+-parseInt(_0x4c25c1(0x195))/0xa+parseInt(_0x4c25c1(0x191))/0xb;if(_0x565915===_0x1c75fe)break;else _0x201566['push'](_0x201566['shift']());}catch(_0x22d745){_0x201566['push'](_0x201566['shift']());}}}(a0_0x446f,0xcb982));const redisClient=require('./redis-client'),{logger}=require('./logger'),crypto=require(a0_0x14008c(0x194));class IdempotencyManager{constructor(){const _0x25417b=a0_0x14008c;this[_0x25417b(0x186)]=null,this[_0x25417b(0x16f)]=null,this['_initialized']=![];}[a0_0x14008c(0x177)](){const _0x52baba=a0_0x14008c,_0xc91014={'BZaiX':function(_0xa59f13,_0x2e06eb){return _0xa59f13===_0x2e06eb;},'xSJdx':function(_0x293ccf,_0x2c38d6,_0x22ff60){return _0x293ccf(_0x2c38d6,_0x22ff60);},'iRVgQ':'idempotency_config_init'};this['_enabled']=_0xc91014['BZaiX'](process['env'][_0x52baba(0x179)],_0x52baba(0x16a)),this['_ttl']=_0xc91014['xSJdx'](parseInt,process[_0x52baba(0x172)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0xc91014['iRVgQ'],'enabled':this[_0x52baba(0x186)],'ttl':this[_0x52baba(0x16f)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x52baba(0x186)]+',\x20TTL:\x20'+this[_0x52baba(0x16f)]+'s');}[a0_0x14008c(0x192)](){const _0x49ed93=a0_0x14008c;!this['_initialized']&&this[_0x49ed93(0x177)]();}get[a0_0x14008c(0x173)](){const _0x595cb1=a0_0x14008c;return this[_0x595cb1(0x192)](),this[_0x595cb1(0x186)];}get[a0_0x14008c(0x18e)](){const _0x326d90=a0_0x14008c;return this['_ensureInitialized'](),this[_0x326d90(0x16f)];}[a0_0x14008c(0x187)](){const _0x4cce0e=a0_0x14008c;return this[_0x4cce0e(0x173)];}['buildKey'](_0x246753,_0x212fac){const _0x1d4dd1=a0_0x14008c,_0x77fa39={'UHuNb':'unknown'},_0x52afcc=_0x212fac['path'][_0x1d4dd1(0x185)]('/')[_0x1d4dd1(0x175)](Boolean),_0x2e7bd7=_0x52afcc[0x0]||_0x1d4dd1(0x178),_0x3043b1=_0x52afcc[0x1]||'unknown',_0xe9ef06=_0x52afcc[0x2]||_0x77fa39[_0x1d4dd1(0x184)];return _0x1d4dd1(0x17e)+_0x2e7bd7+':'+_0x3043b1+':'+_0xe9ef06+':'+_0x246753;}async[a0_0x14008c(0x17c)](_0x3365a7,_0x3a1eb3){const _0x38493e=a0_0x14008c,_0x4ca8a0={'PiDpr':_0x38493e(0x196),'wEDQc':_0x38493e(0x182)};if(!this[_0x38493e(0x173)])return![];try{const _0x3dc27f=redisClient[_0x38493e(0x18c)]();return await _0x3dc27f['setex'](_0x3365a7,this[_0x38493e(0x18e)],JSON[_0x38493e(0x17a)](_0x3a1eb3)),logger[_0x38493e(0x16b)]({'event':_0x4ca8a0['PiDpr'],'key':_0x3365a7,'ttl':this[_0x38493e(0x18e)],'statusCode':_0x3a1eb3[_0x38493e(0x176)]},_0x38493e(0x190)),!![];}catch(_0x52482b){return logger[_0x38493e(0x18f)]({'event':_0x4ca8a0[_0x38493e(0x174)],'key':_0x3365a7,'error':_0x52482b[_0x38493e(0x16c)]},'Idempotency\x20store\x20error:\x20'+_0x52482b['message']),![];}}async[a0_0x14008c(0x189)](_0x296760){const _0x3a3693=a0_0x14008c,_0x36485d={'oefjX':_0x3a3693(0x169),'MWxFj':'Idempotency\x20cache\x20HIT','Vvqlq':'idempotency_retrieve_error'};if(!this[_0x3a3693(0x173)])return null;try{const _0x4fee12=redisClient[_0x3a3693(0x18c)](),_0x103eb5=await _0x4fee12['get'](_0x296760);if(_0x103eb5)return logger[_0x3a3693(0x16d)]({'event':_0x36485d[_0x3a3693(0x16e)],'key':_0x296760},_0x36485d['MWxFj']),JSON[_0x3a3693(0x18a)](_0x103eb5);return logger['debug']({'event':'idempotency_miss','key':_0x296760},'Idempotency\x20cache\x20MISS'),null;}catch(_0x39b78b){return logger['error']({'event':_0x36485d['Vvqlq'],'key':_0x296760,'error':_0x39b78b[_0x3a3693(0x16c)]},'Idempotency\x20retrieve\x20error:\x20'+_0x39b78b[_0x3a3693(0x16c)]),null;}}['generateKey'](_0x9f7d7d='req'){const _0x4cb040=a0_0x14008c;return _0x9f7d7d+'_'+crypto[_0x4cb040(0x18d)]();}[a0_0x14008c(0x181)](_0x217cbe,_0x5d677f,_0x28271d){return _0x217cbe+':'+_0x5d677f+':'+_0x28271d;}}module[a0_0x14008c(0x193)]=new IdempotencyManager();function a0_0x446f(){const _0x4f7fb7=['zxHWB3j0CW','y3j5ChrV','nJGZmdGXmfP0vNPeAG','AwrLBxbVDgvUy3LFC3rVCMu','AwrLBxbVDgvUy3LFAgL0','Dhj1zq','zgvIDwC','BwvZC2fNzq','Aw5MBW','B2vMALG','x3r0Ba','odG0nZe1m3L5wxHhqW','nta2otyZnvPMD0jvuG','zw52','zw5HyMXLza','D0veuwm','zMLSDgvY','C3rHDhvZq29Kzq','x2LUAxrdB25MAwC','zgvMyxvSDa','surftvbpvevoq1LFru5bqKXfra','C3rYAw5NAwz5','mtK4nvrgwxjvEa','C3rVCMu','ngrwyw1vDG','CMy6AwrLBtO','nZuYswjrExHd','nZyWow9eDg9cCG','yNvPBgrezxrLCM1PBMLZDgLJs2v5','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','ofDSqvP1DG','vuH1tMi','C3bSAxq','x2vUywjSzwq','AxnfBMfIBgvK','odCWqwDzy2TK','CMv0CMLLDMu','CgfYC2u','mJiZmdm0mwPpwKfOuG','z2v0q2XPzw50','CMfUzg9Tvvvjra','DhrS','zxjYB3i','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','mty5mJKXmvjvwfrNEa','x2vUC3vYzuLUAxrPywXPEMvK'];a0_0x446f=function(){return _0x4f7fb7;};return a0_0x446f();}
1
+ 'use strict';function a0_0x12a6(_0xe59783,_0x313297){_0xe59783=_0xe59783-0x11d;const _0x8c112c=a0_0x8c11();let _0x12a6b1=_0x8c112c[_0xe59783];if(a0_0x12a6['AVjkKk']===undefined){var _0x3845f5=function(_0x48b6ae){const _0x98a637='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41a0b3='',_0xc801d6='';for(let _0xdb5cac=0x0,_0x40a3c6,_0x9a06f8,_0x38c92b=0x0;_0x9a06f8=_0x48b6ae['charAt'](_0x38c92b++);~_0x9a06f8&&(_0x40a3c6=_0xdb5cac%0x4?_0x40a3c6*0x40+_0x9a06f8:_0x9a06f8,_0xdb5cac++%0x4)?_0x41a0b3+=String['fromCharCode'](0xff&_0x40a3c6>>(-0x2*_0xdb5cac&0x6)):0x0){_0x9a06f8=_0x98a637['indexOf'](_0x9a06f8);}for(let _0xfa0b95=0x0,_0x1dbc38=_0x41a0b3['length'];_0xfa0b95<_0x1dbc38;_0xfa0b95++){_0xc801d6+='%'+('00'+_0x41a0b3['charCodeAt'](_0xfa0b95)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xc801d6);};a0_0x12a6['NQtyCN']=_0x3845f5,a0_0x12a6['XvHXKs']={},a0_0x12a6['AVjkKk']=!![];}const _0x216e30=_0x8c112c[0x0],_0x5406f1=_0xe59783+_0x216e30,_0x4466ae=a0_0x12a6['XvHXKs'][_0x5406f1];return!_0x4466ae?(_0x12a6b1=a0_0x12a6['NQtyCN'](_0x12a6b1),a0_0x12a6['XvHXKs'][_0x5406f1]=_0x12a6b1):_0x12a6b1=_0x4466ae,_0x12a6b1;}const a0_0x49b5f4=a0_0x12a6;(function(_0xb86dea,_0x4d62ac){const _0x4c4f4b=a0_0x12a6,_0x26fce1=_0xb86dea();while(!![]){try{const _0x3c5566=-parseInt(_0x4c4f4b(0x121))/0x1*(-parseInt(_0x4c4f4b(0x127))/0x2)+parseInt(_0x4c4f4b(0x137))/0x3*(parseInt(_0x4c4f4b(0x138))/0x4)+-parseInt(_0x4c4f4b(0x12b))/0x5+parseInt(_0x4c4f4b(0x147))/0x6+-parseInt(_0x4c4f4b(0x139))/0x7+parseInt(_0x4c4f4b(0x123))/0x8*(parseInt(_0x4c4f4b(0x128))/0x9)+-parseInt(_0x4c4f4b(0x11e))/0xa;if(_0x3c5566===_0x4d62ac)break;else _0x26fce1['push'](_0x26fce1['shift']());}catch(_0x57e391){_0x26fce1['push'](_0x26fce1['shift']());}}}(a0_0x8c11,0xf3b2d));const redisClient=require('./redis-client'),{logger}=require('./logger'),crypto=require(a0_0x49b5f4(0x12a));class IdempotencyManager{constructor(){const _0x3ecd67=a0_0x49b5f4;this['_enabled']=null,this[_0x3ecd67(0x122)]=null,this[_0x3ecd67(0x133)]=![];}['_initConfig'](){const _0x4dd5ed=a0_0x49b5f4,_0x138156={'WVJyR':function(_0x30bf3c,_0x363886,_0x4ad4c9){return _0x30bf3c(_0x363886,_0x4ad4c9);},'QaQvI':'idempotency_config_init'};this['_enabled']=process[_0x4dd5ed(0x13b)]['IDEMPOTENCY_ENABLED']==='true',this['_ttl']=_0x138156[_0x4dd5ed(0x135)](parseInt,process[_0x4dd5ed(0x13b)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger['info']({'event':_0x138156['QaQvI'],'enabled':this['_enabled'],'ttl':this[_0x4dd5ed(0x122)]},_0x4dd5ed(0x136)+this['_enabled']+_0x4dd5ed(0x11d)+this['_ttl']+'s');}[a0_0x49b5f4(0x129)](){const _0x4d3f71=a0_0x49b5f4;!this[_0x4d3f71(0x133)]&&this[_0x4d3f71(0x13a)]();}get['enabled'](){const _0x58921a=a0_0x49b5f4;return this[_0x58921a(0x129)](),this['_enabled'];}get['ttl'](){const _0x20fa15=a0_0x49b5f4;return this['_ensureInitialized'](),this[_0x20fa15(0x122)];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x2853db,_0x151dc7){const _0x5106f4=a0_0x49b5f4,_0x44cde7={'uQlIN':_0x5106f4(0x140)},_0x56861f=_0x151dc7['path'][_0x5106f4(0x12f)]('/')[_0x5106f4(0x142)](Boolean),_0x4fc6ea=_0x56861f[0x0]||'default',_0x52feb4=_0x56861f[0x1]||_0x44cde7['uQlIN'],_0x2a8d5f=_0x56861f[0x2]||'unknown';return'rf:idem:'+_0x4fc6ea+':'+_0x52feb4+':'+_0x2a8d5f+':'+_0x2853db;}async['store'](_0x5c8ffe,_0x4642bc){const _0x24a56c=a0_0x49b5f4,_0x5f1976={'Gzbij':_0x24a56c(0x126)};if(!this[_0x24a56c(0x124)])return![];try{const _0x129481=redisClient['getClient']();return await _0x129481[_0x24a56c(0x132)](_0x5c8ffe,this[_0x24a56c(0x146)],JSON[_0x24a56c(0x130)](_0x4642bc)),logger[_0x24a56c(0x13f)]({'event':_0x5f1976[_0x24a56c(0x134)],'key':_0x5c8ffe,'ttl':this['ttl'],'statusCode':_0x4642bc['statusCode']},_0x24a56c(0x144)),!![];}catch(_0x5d6486){return logger['error']({'event':'idempotency_store_error','key':_0x5c8ffe,'error':_0x5d6486[_0x24a56c(0x13d)]},_0x24a56c(0x13e)+_0x5d6486[_0x24a56c(0x13d)]),![];}}async[a0_0x49b5f4(0x141)](_0x36d31a){const _0x1c5d60=a0_0x49b5f4,_0x48e3a8={'VNDNB':'idempotency_hit','FjigO':_0x1c5d60(0x13c)};if(!this[_0x1c5d60(0x124)])return null;try{const _0x28dfdb=redisClient[_0x1c5d60(0x12d)](),_0x4cf526=await _0x28dfdb['get'](_0x36d31a);if(_0x4cf526)return logger[_0x1c5d60(0x131)]({'event':_0x48e3a8['VNDNB'],'key':_0x36d31a},_0x1c5d60(0x120)),JSON[_0x1c5d60(0x143)](_0x4cf526);return logger['debug']({'event':'idempotency_miss','key':_0x36d31a},'Idempotency\x20cache\x20MISS'),null;}catch(_0x204489){return logger[_0x1c5d60(0x12e)]({'event':_0x48e3a8[_0x1c5d60(0x12c)],'key':_0x36d31a,'error':_0x204489[_0x1c5d60(0x13d)]},_0x1c5d60(0x145)+_0x204489[_0x1c5d60(0x13d)]),null;}}['generateKey'](_0xf9067b=a0_0x49b5f4(0x11f)){const _0x203485=a0_0x49b5f4;return _0xf9067b+'_'+crypto[_0x203485(0x125)]();}['buildDeterministicKey'](_0x12b6f8,_0x3055e5,_0x954e99){return _0x12b6f8+':'+_0x3055e5+':'+_0x954e99;}}module['exports']=new IdempotencyManager();function a0_0x8c11(){const _0x350c19=['CMvX','swrLBxbVDgvUy3KGy2fJAguGseLu','mtu0nZe5muTbwe1vwq','x3r0Ba','mtq4mePhA0L2Ba','zw5HyMXLza','CMfUzg9Tvvvjra','AwrLBxbVDgvUy3LFC3rVCMu','mMDrzujHta','mJK0m2DTEff0sG','x2vUC3vYzuLUAxrPywXPEMvK','y3j5ChrV','mtGZntGYnuveug1XzW','rMPPz08','z2v0q2XPzw50','zxjYB3i','C3bSAxq','C3rYAw5NAwz5','Aw5MBW','C2v0zxG','x2LUAxrPywXPEMvK','r3PIAwO','v1zkEvi','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','mJG4odfYqNLgshu','nZm2Cu9MsxjX','nZa5mtq2owPyCgDqyG','x2LUAxrdB25MAwC','zw52','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','BwvZC2fNzq','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','zgvIDwC','Dw5RBM93BG','CMv0CMLLDMu','zMLSDgvY','CgfYC2u','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','DhrS','ntKWnZK5nMfVufHPrG','lcbuveW6ia','mtK4nti5otb3z1PfEKG'];a0_0x8c11=function(){return _0x350c19;};return a0_0x8c11();}
@@ -1 +1 @@
1
- const a0_0x19e863=a0_0x47cb;function a0_0x47cb(_0x53bba0,_0x515cff){_0x53bba0=_0x53bba0-0x1b3;const _0x57bbed=a0_0x57bb();let _0x47cbdd=_0x57bbed[_0x53bba0];if(a0_0x47cb['ISGTlH']===undefined){var _0x4de7f4=function(_0x4a94a3){const _0x39c2ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x15a020='',_0x360729='';for(let _0x46d164=0x0,_0x263f9c,_0x2132e7,_0x461784=0x0;_0x2132e7=_0x4a94a3['charAt'](_0x461784++);~_0x2132e7&&(_0x263f9c=_0x46d164%0x4?_0x263f9c*0x40+_0x2132e7:_0x2132e7,_0x46d164++%0x4)?_0x15a020+=String['fromCharCode'](0xff&_0x263f9c>>(-0x2*_0x46d164&0x6)):0x0){_0x2132e7=_0x39c2ec['indexOf'](_0x2132e7);}for(let _0xb87d0=0x0,_0xf48183=_0x15a020['length'];_0xb87d0<_0xf48183;_0xb87d0++){_0x360729+='%'+('00'+_0x15a020['charCodeAt'](_0xb87d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x360729);};a0_0x47cb['nLBSck']=_0x4de7f4,a0_0x47cb['vvJlpq']={},a0_0x47cb['ISGTlH']=!![];}const _0x2e4e8c=_0x57bbed[0x0],_0x1a0869=_0x53bba0+_0x2e4e8c,_0x4262bb=a0_0x47cb['vvJlpq'][_0x1a0869];return!_0x4262bb?(_0x47cbdd=a0_0x47cb['nLBSck'](_0x47cbdd),a0_0x47cb['vvJlpq'][_0x1a0869]=_0x47cbdd):_0x47cbdd=_0x4262bb,_0x47cbdd;}(function(_0x3111d2,_0x70e31f){const _0x4027de=a0_0x47cb,_0x319f8a=_0x3111d2();while(!![]){try{const _0x4d2407=parseInt(_0x4027de(0x1d5))/0x1*(parseInt(_0x4027de(0x1bf))/0x2)+-parseInt(_0x4027de(0x1b7))/0x3*(-parseInt(_0x4027de(0x1c8))/0x4)+-parseInt(_0x4027de(0x1be))/0x5*(parseInt(_0x4027de(0x1d3))/0x6)+-parseInt(_0x4027de(0x1ca))/0x7+parseInt(_0x4027de(0x1c5))/0x8*(parseInt(_0x4027de(0x1b5))/0x9)+-parseInt(_0x4027de(0x1b6))/0xa+-parseInt(_0x4027de(0x1c7))/0xb;if(_0x4d2407===_0x70e31f)break;else _0x319f8a['push'](_0x319f8a['shift']());}catch(_0x4bc297){_0x319f8a['push'](_0x319f8a['shift']());}}}(a0_0x57bb,0x91102));function a0_0x57bb(){const _0xaeab22=['zw1HAwW','Aw5MBW','uKXyBvu','sw52ywXPzcbUDw1IzxiGzM9YBwf0','zM9YBwf0','mJaWnJrnAwTXzfK','BgvUz3rO','mtuZmZG4nhDoqw9SqG','mtq4AvfbuMzu','CgHVBMu','mJq2nJiZm3Lsqw16wG','z2v0','zxHWB3j0CW','BNvTyMvY','DMfSAwrHDgvsB3C','DMfSAwrHDgvoDw1Izxi','DgvZDa','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','DMfSAwrHDgvfBwfPBa','odq4otK0qufUrxPI','ChvZAa','mtq5C2DsA2XN','AM9PBG','lI9SB2DNzxi','wxD1tgO','qu5vDLC','zM9YrwfJAa','u3DAB0m','mZqYowTVvMXcqG','ndi0mdGWmg5Qt1HLwq','mJi4odfruxvOB3K','EvzgD1m','sw52ywXPzcbvuKWGzM9YBwf0','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','DMfSAwrHDgvqAg9Uzq','CMvXDwLYzwq','A2v5CW','nuPtBgzSAq','ntu1nePZwKjoAq'];a0_0x57bb=function(){return _0xaeab22;};return a0_0x57bb();}const {logger}=require(a0_0x19e863(0x1d7));class ImportValidator{[a0_0x19e863(0x1ce)](_0x4f7e64,_0x580a4e=[],_0x158acc={}){const _0x1416d3=a0_0x19e863,_0x2265be={'SwZoC':function(_0x596dd4,_0x4de94d){return _0x596dd4===_0x4de94d;},'yVFwS':_0x1416d3(0x1bc),'ezdnG':function(_0xba4b9c,_0x8bf6e8){return _0xba4b9c===_0x8bf6e8;}},_0x53c8a4=[];return _0x580a4e[_0x1416d3(0x1b3)](_0x26d631=>{const _0x39d38b=_0x1416d3,_0x2bcee6=_0x4f7e64[_0x26d631];(_0x2265be[_0x39d38b(0x1b4)](_0x2bcee6,null)||_0x2bcee6===undefined||_0x2265be['SwZoC'](_0x2bcee6,''))&&_0x53c8a4[_0x39d38b(0x1d4)]({'field':_0x26d631,'type':_0x2265be[_0x39d38b(0x1b8)],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x1416d3(0x1bd)](_0x158acc)['forEach'](_0x7da481=>{const _0x15ae81=_0x4f7e64[_0x7da481],_0x2c5081=_0x158acc[_0x7da481];if(_0x15ae81===null||_0x2265be['ezdnG'](_0x15ae81,undefined)||_0x15ae81==='')return;const _0xa6e266=this['validateFieldFormat'](_0x7da481,_0x15ae81,_0x2c5081);_0xa6e266&&_0x53c8a4['push'](_0xa6e266);}),_0x53c8a4;}['validateFieldFormat'](_0x43a4ea,_0x5c25b7,_0x340983){const _0x3c7ae5=a0_0x19e863,_0x5703cf={'bppRD':_0x3c7ae5(0x1c0),'ANUvW':_0x3c7ae5(0x1c9)};switch(_0x340983){case _0x5703cf['bppRD']:return this[_0x3c7ae5(0x1d2)](_0x43a4ea,_0x5c25b7);case _0x5703cf[_0x3c7ae5(0x1d9)]:return this[_0x3c7ae5(0x1bb)](_0x43a4ea,_0x5c25b7);case'url':return this['validateUrl'](_0x43a4ea,_0x5c25b7);case _0x3c7ae5(0x1cd):return this[_0x3c7ae5(0x1cf)](_0x43a4ea,_0x5c25b7);default:return null;}}['validateEmail'](_0x520e8d,_0x4246b2){const _0x782db1=a0_0x19e863,_0x29de7c={'RLXmU':function(_0x5a19af,_0x2af719){return _0x5a19af(_0x2af719);},'DrIbT':'format'},_0x54e508=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x54e508[_0x782db1(0x1d0)](_0x29de7c[_0x782db1(0x1c2)](String,_0x4246b2)))return{'field':_0x520e8d,'type':_0x29de7c['DrIbT'],'message':'Invalid\x20email\x20format'};return null;}['validatePhone'](_0x35abe7,_0x2ccfa1){const _0x42b30b=a0_0x19e863,_0x1534a2={'kgNAL':function(_0x36ded4,_0x435b8f){return _0x36ded4<_0x435b8f;}},_0x1bac3d=String(_0x2ccfa1)['replace'](/\s+/g,''),_0x1c1cd6=/^[\d\+\-\(\)]+$/;if(!_0x1c1cd6[_0x42b30b(0x1d0)](_0x1bac3d)||_0x1534a2['kgNAL'](_0x1bac3d['length'],0x8))return{'field':_0x35abe7,'type':_0x42b30b(0x1c4),'message':'Invalid\x20phone\x20format'};return null;}['validateUrl'](_0x33ee7a,_0x32e240){const _0x564a2c=a0_0x19e863,_0x1ca909={'PsIkk':_0x564a2c(0x1b9)};try{return new URL(String(_0x32e240)),null;}catch(_0x462547){return{'field':_0x33ee7a,'type':'format','message':_0x1ca909['PsIkk']};}}[a0_0x19e863(0x1cf)](_0xc4ac68,_0xcdd9e1){const _0x233f90=a0_0x19e863,_0x36e85f={'rexzn':function(_0x231faf,_0x435247){return _0x231faf(_0x435247);},'tJQDi':_0x233f90(0x1c3)};if(_0x36e85f['rexzn'](isNaN,_0xcdd9e1))return{'field':_0xc4ac68,'type':'format','message':_0x36e85f['tJQDi']};return null;}[a0_0x19e863(0x1ba)](_0x2dbc04,_0x22553c){const _0x1c9eed=a0_0x19e863,_0x3dcfe8=new Map(),_0x252954=[];return _0x2dbc04[_0x1c9eed(0x1b3)]((_0x334e92,_0x178a74)=>{const _0x33a692=_0x1c9eed,_0x19ce31=_0x22553c['map'](_0x27dd49=>_0x334e92[_0x27dd49])[_0x33a692(0x1d6)]('|');_0x3dcfe8['has'](_0x19ce31)?_0x252954[_0x33a692(0x1d4)]({'rowIndex':_0x178a74,'duplicateOf':_0x3dcfe8[_0x33a692(0x1cb)](_0x19ce31),'key':_0x19ce31}):_0x3dcfe8['set'](_0x19ce31,_0x178a74);}),_0x252954;}['batchValidateRows'](_0x1de474,_0x2ba9bb,_0xfdc9b){const _0x5594ec=a0_0x19e863,_0x1ce59f={'XTykJ':function(_0x44f15b,_0x2b28ba){return _0x44f15b>_0x2b28ba;},'YwuLj':_0x5594ec(0x1d1)},_0x19cda4=[];return _0x1de474['forEach']((_0x2a3043,_0x1a897b)=>{const _0x28af43=_0x5594ec,_0x561c39=this[_0x28af43(0x1ce)](_0x2a3043,_0x2ba9bb,_0xfdc9b);_0x1ce59f['XTykJ'](_0x561c39[_0x28af43(0x1c6)],0x0)&&_0x19cda4['push']({'rowIndex':_0x1a897b,'rowData':_0x2a3043,'errors':_0x561c39});}),logger[_0x5594ec(0x1c1)]({'event':_0x1ce59f[_0x5594ec(0x1d8)],'totalRows':_0x1de474['length'],'errorCount':_0x19cda4[_0x5594ec(0x1c6)]},'Batch\x20validation\x20completed'),_0x19cda4;}}module[a0_0x19e863(0x1cc)]=new ImportValidator();
1
+ const a0_0x543de7=a0_0xca7e;(function(_0x58f6b1,_0x3f5073){const _0x136d79=a0_0xca7e,_0x4ce4c1=_0x58f6b1();while(!![]){try{const _0x4a544e=parseInt(_0x136d79(0xca))/0x1+-parseInt(_0x136d79(0xc1))/0x2*(-parseInt(_0x136d79(0xd5))/0x3)+-parseInt(_0x136d79(0xe2))/0x4+parseInt(_0x136d79(0xc7))/0x5*(parseInt(_0x136d79(0xcb))/0x6)+parseInt(_0x136d79(0xdc))/0x7+-parseInt(_0x136d79(0xd4))/0x8*(parseInt(_0x136d79(0xe0))/0x9)+parseInt(_0x136d79(0xc0))/0xa*(-parseInt(_0x136d79(0xd9))/0xb);if(_0x4a544e===_0x3f5073)break;else _0x4ce4c1['push'](_0x4ce4c1['shift']());}catch(_0x457b1c){_0x4ce4c1['push'](_0x4ce4c1['shift']());}}}(a0_0x3fa1,0xf17f1));const {logger}=require('./logger');function a0_0x3fa1(){const _0x2232ba=['mta3mvrtyLnOAG','DgvZDa','mZeYmdG0ohjrzu54CW','sw52ywXPzcbvuKWGzM9YBwf0','DMfSAwrHDgvqAg9Uzq','zxHWB3j0CW','zvrdtha','mJq4ntmZmhPzufP4qq','nti3ng1yzfzcwG','wfj3zgS','DMfSAwrHDgvoDw1Izxi','z2v0','D2HrwvO','A09HB2S','nJm0mtbgDLfjweO','zM9YBwf0','DMfSAwrHDgvfBwfPBa','mta1mdmXnxD6wLv2tG','mtHJExD6vLi','uxLttuO','DMfSAwrHDgvvCMW','CgHVBMu','Aw5MBW','CMvWBgfJzq','AgfZ','zM9YrwfJAa','rMTftvu','mta0ntG0BhjYyurc','mtK2mKLitfHkzW','CMvXDwLYzwq','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','BhzRAfe','mtf1Ae9YAxa','sw52ywXPzcbWAg9UzsbMB3jTyxq','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','ntmYndq5nfjWwxzVyW','C2v0','DxjS','ChvZAa'];a0_0x3fa1=function(){return _0x2232ba;};return a0_0x3fa1();}function a0_0xca7e(_0x48cee6,_0x407549){_0x48cee6=_0x48cee6-0xbd;const _0x3fa164=a0_0x3fa1();let _0xca7ef1=_0x3fa164[_0x48cee6];if(a0_0xca7e['xBtVsg']===undefined){var _0x5a584c=function(_0x8c55f8){const _0x11fd57='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3ec42f='',_0x24aa75='';for(let _0x15d831=0x0,_0x16c345,_0xe7c162,_0x4da577=0x0;_0xe7c162=_0x8c55f8['charAt'](_0x4da577++);~_0xe7c162&&(_0x16c345=_0x15d831%0x4?_0x16c345*0x40+_0xe7c162:_0xe7c162,_0x15d831++%0x4)?_0x3ec42f+=String['fromCharCode'](0xff&_0x16c345>>(-0x2*_0x15d831&0x6)):0x0){_0xe7c162=_0x11fd57['indexOf'](_0xe7c162);}for(let _0x1cc122=0x0,_0x2b25c3=_0x3ec42f['length'];_0x1cc122<_0x2b25c3;_0x1cc122++){_0x24aa75+='%'+('00'+_0x3ec42f['charCodeAt'](_0x1cc122)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x24aa75);};a0_0xca7e['wAoRdB']=_0x5a584c,a0_0xca7e['yXqUUW']={},a0_0xca7e['xBtVsg']=!![];}const _0x3ded8b=_0x3fa164[0x0],_0x3dd387=_0x48cee6+_0x3ded8b,_0x4f43ff=a0_0xca7e['yXqUUW'][_0x3dd387];return!_0x4f43ff?(_0xca7ef1=a0_0xca7e['wAoRdB'](_0xca7ef1),a0_0xca7e['yXqUUW'][_0x3dd387]=_0xca7ef1):_0xca7ef1=_0x4f43ff,_0xca7ef1;}class ImportValidator{['validateRow'](_0x57a299,_0xeff2ef=[],_0x3cd922={}){const _0x59d841=a0_0xca7e,_0x4c3855={'kOaok':function(_0x330c75,_0x421c00){return _0x330c75===_0x421c00;},'yOYWz':function(_0x45c2e7,_0x15aef7){return _0x45c2e7===_0x15aef7;},'FkEMU':function(_0x20a8be,_0x111b04){return _0x20a8be===_0x111b04;}},_0x5def86=[];return _0xeff2ef[_0x59d841(0xd2)](_0x582248=>{const _0x100499=_0x59d841,_0x83535c=_0x57a299[_0x582248];(_0x4c3855[_0x100499(0xc6)](_0x83535c,null)||_0x83535c===undefined||_0x83535c==='')&&_0x5def86[_0x100499(0xdf)]({'field':_0x582248,'type':_0x100499(0xd6),'message':_0x100499(0xd7)});}),Object['keys'](_0x3cd922)['forEach'](_0x4c5fc2=>{const _0x400092=_0x59d841,_0x421aa8=_0x57a299[_0x4c5fc2],_0x4985bd=_0x3cd922[_0x4c5fc2];if(_0x4c3855['yOYWz'](_0x421aa8,null)||_0x4c3855[_0x400092(0xd3)](_0x421aa8,undefined)||_0x421aa8==='')return;const _0x394d33=this['validateFieldFormat'](_0x4c5fc2,_0x421aa8,_0x4985bd);_0x394d33&&_0x5def86['push'](_0x394d33);}),_0x5def86;}['validateFieldFormat'](_0x31d7f7,_0xe4985b,_0xb92e3f){const _0x31747b=a0_0xca7e,_0x26d609={'eTCLp':'email','lvkhQ':_0x31747b(0xde)};switch(_0xb92e3f){case _0x26d609[_0x31747b(0xbf)]:return this[_0x31747b(0xc9)](_0x31d7f7,_0xe4985b);case _0x31747b(0xce):return this[_0x31747b(0xbd)](_0x31d7f7,_0xe4985b);case _0x26d609[_0x31747b(0xd8)]:return this[_0x31747b(0xcd)](_0x31d7f7,_0xe4985b);case'number':return this[_0x31747b(0xc3)](_0x31d7f7,_0xe4985b);default:return null;}}['validateEmail'](_0x5da05c,_0x4ec9dc){const _0x1a1620=a0_0xca7e,_0x4e6fbd=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x4e6fbd[_0x1a1620(0xe1)](String(_0x4ec9dc)))return{'field':_0x5da05c,'type':'format','message':'Invalid\x20email\x20format'};return null;}[a0_0x543de7(0xbd)](_0x4222ff,_0x4aa4b0){const _0x1f6c2b=a0_0x543de7,_0x1099db={'UnRnX':function(_0x223d54,_0x2105ea){return _0x223d54(_0x2105ea);},'XRwdk':function(_0x1630b0,_0x52f9ed){return _0x1630b0<_0x52f9ed;},'AioLf':_0x1f6c2b(0xda)},_0x52b1b3=_0x1099db['UnRnX'](String,_0x4aa4b0)[_0x1f6c2b(0xd0)](/\s+/g,''),_0x1ba18e=/^[\d\+\-\(\)]+$/;if(!_0x1ba18e[_0x1f6c2b(0xe1)](_0x52b1b3)||_0x1099db[_0x1f6c2b(0xc2)](_0x52b1b3['length'],0x8))return{'field':_0x4222ff,'type':_0x1f6c2b(0xc8),'message':_0x1099db['AioLf']};return null;}['validateUrl'](_0x325108,_0x4a1b0f){const _0x16dd4c=a0_0x543de7,_0x202c4e={'ZXGzb':function(_0x31ff16,_0x4988cf){return _0x31ff16(_0x4988cf);}};try{return new URL(_0x202c4e['ZXGzb'](String,_0x4a1b0f)),null;}catch(_0x402852){return{'field':_0x325108,'type':_0x16dd4c(0xc8),'message':_0x16dd4c(0xe3)};}}[a0_0x543de7(0xc3)](_0x18348b,_0x642d9b){const _0x55a779=a0_0x543de7,_0xc25e8f={'whQYZ':'Invalid\x20number\x20format'};if(isNaN(_0x642d9b))return{'field':_0x18348b,'type':_0x55a779(0xc8),'message':_0xc25e8f[_0x55a779(0xc5)]};return null;}['detectDuplicatesInFile'](_0x201450,_0x457d1f){const _0x47a11c=new Map(),_0x2269af=[];return _0x201450['forEach']((_0xa90894,_0x93670c)=>{const _0x22eec4=a0_0xca7e,_0x112f3f=_0x457d1f['map'](_0x243bfc=>_0xa90894[_0x243bfc])['join']('|');_0x47a11c[_0x22eec4(0xd1)](_0x112f3f)?_0x2269af['push']({'rowIndex':_0x93670c,'duplicateOf':_0x47a11c[_0x22eec4(0xc4)](_0x112f3f),'key':_0x112f3f}):_0x47a11c[_0x22eec4(0xdd)](_0x112f3f,_0x93670c);}),_0x2269af;}['batchValidateRows'](_0x4760cf,_0x3546b9,_0x3d15c2){const _0x21368b=a0_0x543de7,_0xeacff8={'cfeFO':_0x21368b(0xdb),'QySMJ':'Batch\x20validation\x20completed'},_0x4574fc=[];return _0x4760cf[_0x21368b(0xd2)]((_0xcb8ffe,_0x46aba1)=>{const _0x1aaf36=this['validateRow'](_0xcb8ffe,_0x3546b9,_0x3d15c2);_0x1aaf36['length']>0x0&&_0x4574fc['push']({'rowIndex':_0x46aba1,'rowData':_0xcb8ffe,'errors':_0x1aaf36});}),logger[_0x21368b(0xcf)]({'event':_0xeacff8['cfeFO'],'totalRows':_0x4760cf['length'],'errorCount':_0x4574fc['length']},_0xeacff8[_0x21368b(0xcc)]),_0x4574fc;}}module[a0_0x543de7(0xbe)]=new ImportValidator();