@restforgejs/platform 5.2.0 → 5.2.10

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 (174) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +2 -2
  3. package/cli/consumer.js +2 -2
  4. package/generators/cli/fast-track.js +293 -35
  5. package/generators/lib/migrate/backend-payload-migrator.js +39 -17
  6. package/generators/lib/migrate/field-type-resolver.js +64 -7
  7. package/generators/lib/migrate/migrate-runner.js +12 -2
  8. package/generators/lib/migrate/sql-parser.js +5 -3
  9. package/generators/lib/payload/payload-runner.js +103 -11
  10. package/generators/lib/templates/dashboard-catalog.js +1 -1
  11. package/generators/lib/templates/db-connection-env.js +1 -1
  12. package/generators/lib/templates/dbschema-catalog.js +1 -1
  13. package/generators/lib/templates/field-validation-catalog.js +1 -1
  14. package/generators/lib/templates/mysql-template.js +1 -1
  15. package/generators/lib/templates/oracle-template.js +1 -1
  16. package/generators/lib/templates/postgres-template.js +1 -1
  17. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  18. package/generators/lib/templates/sqlite-template.js +1 -1
  19. package/integrity-manifest.json +18 -18
  20. package/package.json +1 -1
  21. package/scripts/verify-integrity.js +1 -1
  22. package/server.js +2 -2
  23. package/src/components/handlers/adjust_handler.js +1 -1
  24. package/src/components/handlers/audit_handler.js +1 -1
  25. package/src/components/handlers/delete_handler.js +1 -1
  26. package/src/components/handlers/export_handler.js +1 -1
  27. package/src/components/handlers/import_handler.js +1 -1
  28. package/src/components/handlers/insert_handler.js +1 -1
  29. package/src/components/handlers/update_handler.js +1 -1
  30. package/src/components/handlers/upload_handler.js +1 -1
  31. package/src/components/handlers/workflow_handler.js +1 -1
  32. package/src/components/integrations/webhook.js +1 -1
  33. package/src/consumers/baseConsumer.js +1 -1
  34. package/src/consumers/declarativeMapper.js +1 -1
  35. package/src/consumers/handlers/apiHandler.js +1 -1
  36. package/src/consumers/handlers/consoleHandler.js +1 -1
  37. package/src/consumers/handlers/databaseHandler.js +1 -1
  38. package/src/consumers/handlers/index.js +1 -1
  39. package/src/consumers/handlers/kafkaHandler.js +1 -1
  40. package/src/consumers/index.js +1 -1
  41. package/src/consumers/messageTransformer.js +1 -1
  42. package/src/consumers/validator.js +1 -1
  43. package/src/core/db/dialect/base-dialect.js +1 -1
  44. package/src/core/db/dialect/index.js +1 -1
  45. package/src/core/db/dialect/mysql-dialect.js +1 -1
  46. package/src/core/db/dialect/oracle-dialect.js +1 -1
  47. package/src/core/db/dialect/postgres-dialect.js +1 -1
  48. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  49. package/src/core/db/flatten-helper.js +1 -1
  50. package/src/core/db/query-builder-error.js +1 -1
  51. package/src/core/db/query-builder.js +1 -1
  52. package/src/core/db/relation-helper.js +1 -1
  53. package/src/core/handlers/delete_handler.js +1 -1
  54. package/src/core/handlers/insert_handler.js +1 -1
  55. package/src/core/handlers/update_handler.js +1 -1
  56. package/src/core/models/base-model.js +1 -1
  57. package/src/core/utils/cache-manager.js +1 -1
  58. package/src/core/utils/component-engine.js +1 -1
  59. package/src/core/utils/context-builder.js +1 -1
  60. package/src/core/utils/datetime-formatter.js +1 -1
  61. package/src/core/utils/datetime-parser.js +1 -1
  62. package/src/core/utils/db.js +1 -1
  63. package/src/core/utils/logger.js +1 -1
  64. package/src/core/utils/payload-loader.js +1 -1
  65. package/src/core/utils/security-checks.js +1 -1
  66. package/src/middleware/body-options.js +1 -1
  67. package/src/middleware/cors.js +1 -1
  68. package/src/middleware/idempotency.js +1 -1
  69. package/src/middleware/rate-limiter.js +1 -1
  70. package/src/middleware/request-logger.js +1 -1
  71. package/src/middleware/security-headers.js +1 -1
  72. package/src/models/base-model-mysql.js +1 -1
  73. package/src/models/base-model-oracle.js +1 -1
  74. package/src/models/base-model-sqlite.js +1 -1
  75. package/src/models/base-model.js +1 -1
  76. package/src/pro/caching/redis-client.js +1 -1
  77. package/src/pro/caching/redis-helper.js +1 -1
  78. package/src/pro/consumers/baseConsumer.js +1 -1
  79. package/src/pro/consumers/declarativeMapper.js +1 -1
  80. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  81. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  82. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  83. package/src/pro/consumers/handlers/index.js +1 -1
  84. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  85. package/src/pro/consumers/index.js +1 -1
  86. package/src/pro/consumers/messageTransformer.js +1 -1
  87. package/src/pro/consumers/validator.js +1 -1
  88. package/src/pro/database/base-model-mysql.js +1 -1
  89. package/src/pro/database/base-model-oracle.js +1 -1
  90. package/src/pro/database/base-model-sqlite.js +1 -1
  91. package/src/pro/database/db-mysql.js +1 -1
  92. package/src/pro/database/db-oracle.js +1 -1
  93. package/src/pro/database/db-sqlite.js +1 -1
  94. package/src/pro/excel/excel-generator.js +1 -1
  95. package/src/pro/excel/excel-parser.js +1 -1
  96. package/src/pro/excel/export-service.js +1 -1
  97. package/src/pro/excel/export_handler.js +1 -1
  98. package/src/pro/excel/import-service.js +1 -1
  99. package/src/pro/excel/import-validator.js +1 -1
  100. package/src/pro/excel/import_handler.js +1 -1
  101. package/src/pro/excel/upsert-builder.js +1 -1
  102. package/src/pro/idgen/idgen-routes.js +1 -1
  103. package/src/pro/integrations/lookup-resolver.js +1 -1
  104. package/src/pro/integrations/upload-handler-v2.js +1 -1
  105. package/src/pro/integrations/upload-handler.js +1 -1
  106. package/src/pro/integrations/webhook.js +1 -1
  107. package/src/pro/locking/lock-routes.js +1 -1
  108. package/src/pro/locking/resource-lock-manager.js +1 -1
  109. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  110. package/src/pro/messaging/kafkaService.js +1 -1
  111. package/src/pro/messaging/messagehubService.js +1 -1
  112. package/src/pro/messaging/rabbitmqService.js +1 -1
  113. package/src/pro/scheduler/job-manager.js +1 -1
  114. package/src/pro/scheduler/job-routes.js +1 -1
  115. package/src/pro/scheduler/job-validator.js +1 -1
  116. package/src/pro/storage/base-storage-provider.js +1 -1
  117. package/src/pro/storage/file-metadata-helper.js +1 -1
  118. package/src/pro/storage/index.js +1 -1
  119. package/src/pro/storage/local-storage-provider.js +1 -1
  120. package/src/pro/storage/s3-storage-provider.js +1 -1
  121. package/src/pro/storage/upload-cleanup-job.js +1 -1
  122. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  123. package/src/pro/storage/upload-pending-tracker.js +1 -1
  124. package/src/pro/websocket/broadcast-helper.js +1 -1
  125. package/src/pro/websocket/index.js +1 -1
  126. package/src/pro/websocket/livesync-server.js +1 -1
  127. package/src/pro/websocket/ws-broadcaster.js +1 -1
  128. package/src/services/export-service.js +1 -1
  129. package/src/services/import-service.js +1 -1
  130. package/src/services/kafkaConsumerService.js +1 -1
  131. package/src/services/kafkaService.js +1 -1
  132. package/src/services/messagehubService.js +1 -1
  133. package/src/services/rabbitmqService.js +1 -1
  134. package/src/utils/cache-invalidation-registry.js +1 -1
  135. package/src/utils/cache-manager.js +1 -1
  136. package/src/utils/component-engine.js +1 -1
  137. package/src/utils/config-extractor.js +1 -1
  138. package/src/utils/consumerLogger.js +1 -1
  139. package/src/utils/context-builder.js +1 -1
  140. package/src/utils/dashboard-helpers.js +1 -1
  141. package/src/utils/dateHelper.js +1 -1
  142. package/src/utils/datetime-formatter.js +1 -1
  143. package/src/utils/datetime-parser.js +1 -1
  144. package/src/utils/db-bootstrap.js +1 -1
  145. package/src/utils/db-mysql.js +1 -1
  146. package/src/utils/db-oracle.js +1 -1
  147. package/src/utils/db-sqlite.js +1 -1
  148. package/src/utils/db.js +1 -1
  149. package/src/utils/demo-generator.js +1 -1
  150. package/src/utils/excel-generator.js +1 -1
  151. package/src/utils/excel-parser.js +1 -1
  152. package/src/utils/file-watcher.js +1 -1
  153. package/src/utils/id-generator.js +1 -1
  154. package/src/utils/idempotency-manager.js +1 -1
  155. package/src/utils/import-validator.js +1 -1
  156. package/src/utils/license-client.js +1 -1
  157. package/src/utils/lock-manager.js +1 -1
  158. package/src/utils/logger.js +1 -1
  159. package/src/utils/lookup-resolver.js +1 -1
  160. package/src/utils/payload-loader.js +1 -1
  161. package/src/utils/processor-response.js +1 -1
  162. package/src/utils/rabbitmq.js +1 -1
  163. package/src/utils/redis-client.js +1 -1
  164. package/src/utils/redis-helper.js +1 -1
  165. package/src/utils/request-scope.js +1 -1
  166. package/src/utils/security-checks.js +1 -1
  167. package/src/utils/service-resolver.js +1 -1
  168. package/src/utils/shutdown-coordinator.js +1 -1
  169. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  170. package/src/utils/sql-table-extractor.js +1 -1
  171. package/src/utils/trusted-keys.js +1 -1
  172. package/src/utils/upload-handler.js +1 -1
  173. package/src/utils/upsert-builder.js +1 -1
  174. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- const a0_0x36b321=a0_0x43d9;function a0_0x3139(){const _0x776489=['sw52ywXPzcbJB2X1Bw5ZoIa','ywrKv29YA3nOzwv0','iYWJiZaUmda','odqXmtuWAhbvEMj0','Ehjwt3a','q1fAwMu','D2PKrLO','lI9SB2DNzxi','BwfW','zgf0zq','BgvUz3rO','z2v0vgLTzq','AM9PBG','mJeWnZaYDwTZuNDA','CwvIwgm','A2v5CW','D0vttha','z2v0rxHJzwXgB3jTyxq','y29TBwL0','CgfYC2voDw1Izxi','z2vUzxjHDgvtAw1WBgu','sMzLDMK','B3jOz2m','rKy0ndCYqZq','zxHJzwXFz2vUzxjHDgLVBL9JB21WBgv0zq','yxbWBhLsB3DgB3jTyxr0Aw5N','C3rYAw5N','v1rmBgG','iLjWiciJlcmJma','zMLSDgvY','DvjRu1K','z2v0uM93','ihjVD3m','DNLIBLq','zM9YrwfJAa','r0vKsxO','y3vYCMvUy3K','mtiXotm4nKXRyNzzza','mti5mJiWu1b6BfnW','Aw5MBW','Du93sfm','wNjYrNK','DuLZuMu','y29SDw1UCW','zNjVEMvU','CgfKu3rHCNq','qMXiC0K','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','vKjKr1C','rKzgrKzgrKy','CMvWBgfJzq','z2v0vvrdrgf0zq','ywrKuM93CW','zgvIDwC','s0vPALm','werkz2m','y2H1BMTtAxPL','zM9YBwf0sgvHzgvY','q3vAy3m','CgvYy2vUDgfNzq','BNvTyMvY','C2LTCgXL','zM9YBwf0rgf0zvn0CMLUzW','DMfSDwu','D3jPDgvgAwXL','nJyXmtzvCg9Qrha','ywXPz25Tzw50','uhLtCeu','Dgv4Da','wKLise4','z2v0q2vSBa','zMLSBa','yKjoy24','Cgf0DgvYBG','reqVtu0VwvLzwq','zgqVBw0VExL5Eq','ExL5Es9TBs9Kza','we9usg4','DhLWzq','rvHqt1jux0nivu5lx1njwKu','DMfSAwrHDgvdB2X1Bw5Z','EgXZEa','Dg9mB3DLCKnHC2u','ExL5Es1TBs1Kza','yxv0BW','mZy4oePit2HuBa','Bw0VzgqVExL5Eq','mtu1nta5BLD6tgXl','Bwf0y2G','wMnxuey','y2vPBa','zM9YBwf0q2vSBa','ywrKuM93','mJe5ogL1ue5fAG','BwLKzgXL','vfbYzu8','ChjLChjVy2vZC1rLEhrsB3C','z2v0vvrdrNvSBfLLyxi','DMLLD3m','z2vUzxjHDgvtDhjLyw1PBMC','CM91BMq','DxviCxG'];a0_0x3139=function(){return _0x776489;};return a0_0x3139();}(function(_0x59ba11,_0x2684b1){const _0x585855=a0_0x43d9,_0x19610d=_0x59ba11();while(!![]){try{const _0x568dc7=-parseInt(_0x585855(0x1f1))/0x1+parseInt(_0x585855(0x1c0))/0x2+parseInt(_0x585855(0x20d))/0x3+parseInt(_0x585855(0x1db))/0x4+parseInt(_0x585855(0x203))/0x5+-parseInt(_0x585855(0x1bf))/0x6+-parseInt(_0x585855(0x1f7))/0x7*(-parseInt(_0x585855(0x1ef))/0x8);if(_0x568dc7===_0x2684b1)break;else _0x19610d['push'](_0x19610d['shift']());}catch(_0x264b2d){_0x19610d['push'](_0x19610d['shift']());}}}(a0_0x3139,0x19c91));const ExcelJS=require('exceljs'),{logger}=require(a0_0x36b321(0x207));class ExcelGenerator{constructor(){const _0x4f04d1=a0_0x36b321,_0x28f71a={'RyWld':function(_0x1b9eea,_0x43a73f,_0xc1b0c0){return _0x1b9eea(_0x43a73f,_0xc1b0c0);}};this[_0x4f04d1(0x1d2)]=_0x28f71a['RyWld'](parseInt,process['env'][_0x4f04d1(0x1e9)],0xa)||0x3e8;}async['generate'](_0x98672e){const _0x5e346b=a0_0x36b321,_0x18f94c={'AolEj':_0x5e346b(0x1c9),'gbhkT':_0x5e346b(0x1ee),'lvmmZ':'Excel\x20generation\x20started'},{data:_0x3a5931,columns:_0x560a49,columnFormats:_0x1e2e20,fieldLabels:_0x1a78ce,filePath:_0x63fc81,onProgress:_0x32d712}=_0x98672e;logger[_0x5e346b(0x1c1)]({'event':_0x18f94c['AolEj'],'rows':_0x3a5931[_0x5e346b(0x20a)],'columns':_0x560a49?.[_0x5e346b(0x20a)]||_0x18f94c['gbhkT'],'columnFormats':_0x1e2e20?Object['keys'](_0x1e2e20):null,'fieldLabels':_0x1a78ce?Object['keys'](_0x1a78ce):null,'streaming':_0x3a5931[_0x5e346b(0x20a)]>this['chunkSize']},_0x18f94c['lvmmZ']);if(_0x3a5931[_0x5e346b(0x20a)]<=this[_0x5e346b(0x1d2)])return await this[_0x5e346b(0x214)](_0x3a5931,_0x560a49,_0x1e2e20,_0x1a78ce,_0x63fc81,_0x32d712);return await this[_0x5e346b(0x1fd)](_0x3a5931,_0x560a49,_0x1e2e20,_0x1a78ce,_0x63fc81,_0x32d712);}async[a0_0x36b321(0x214)](_0x31e31e,_0xc91bbb,_0x40d272,_0x1aaa61,_0x328759,_0x4c9605){const _0x5f0e28=a0_0x36b321,_0x21897a={'hVFTg':'Data','uIsRe':'FFFFFFFF','wlNMC':'middle','XOTHn':'center','wVxOp':function(_0x1ce28e,_0x1255ed){return _0x1ce28e(_0x1255ed);},'GEdIz':_0x5f0e28(0x1c6),'FEXXR':function(_0x2a3f40,_0x3a497b){return _0x2a3f40(_0x3a497b);}},_0x5bdc3f=new ExcelJS['Workbook'](),_0x4b986b=_0x5bdc3f['addWorksheet'](_0x21897a['hVFTg']),_0x504177=_0xc91bbb||(_0x31e31e[_0x5f0e28(0x20a)]>0x0?Object['keys'](_0x31e31e[0x0]):[]);_0x4b986b[_0x5f0e28(0x1c5)]=_0x504177[_0x5f0e28(0x208)](_0x289414=>{const _0x2b82bd=_0x5f0e28,_0x51b4a1={'header':this['formatHeader'](_0x289414,_0x1aaa61),'key':_0x289414,'width':0x14};if(_0x40d272&&_0x40d272[_0x289414]){const _0x6600db=_0x40d272[_0x289414];if(_0x6600db['type']&&_0x6600db[_0x2b82bd(0x1e8)][_0x2b82bd(0x1ec)]()!=='date'){const _0x2b1d54=this['getExcelFormat'](_0x6600db);_0x2b1d54&&(_0x51b4a1['style']={'numFmt':_0x2b1d54});}}return _0x51b4a1;}),_0x4b986b['getRow'](0x1)['font']={'bold':!![],'color':{'argb':_0x21897a[_0x5f0e28(0x1c4)]}},_0x4b986b[_0x5f0e28(0x21f)](0x1)[_0x5f0e28(0x1e1)]={'type':_0x5f0e28(0x1e3),'pattern':'solid','fgColor':{'argb':_0x5f0e28(0x217)}},_0x4b986b['getRow'](0x1)[_0x5f0e28(0x1dc)]={'vertical':_0x21897a['wlNMC'],'horizontal':_0x21897a[_0x5f0e28(0x1e7)]};const _0x90e680=_0x40d272?this['preprocessTextColumns'](_0x31e31e,_0x504177,_0x40d272):_0x31e31e;return _0x4b986b[_0x5f0e28(0x1ce)](_0x90e680),_0x40d272&&this['applyCellFormatting'](_0x4b986b,_0x504177,_0x40d272,_0x31e31e[_0x5f0e28(0x20a)]),_0x4c9605&&await _0x21897a['wVxOp'](_0x4c9605,0x32),_0x4b986b['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x504177[_0x5f0e28(0x20a)]}},_0x4b986b[_0x5f0e28(0x1fc)]=[{'state':_0x21897a[_0x5f0e28(0x223)],'xSplit':0x0,'ySplit':0x1}],await _0x5bdc3f[_0x5f0e28(0x1eb)][_0x5f0e28(0x1da)](_0x328759),_0x4c9605&&await _0x21897a['FEXXR'](_0x4c9605,0x64),logger['info']({'event':_0x5f0e28(0x218),'method':_0x5f0e28(0x1d7),'rows':_0x31e31e[_0x5f0e28(0x20a)]},'Excel\x20generated\x20(simple\x20method)'),_0x328759;}async['generateStreaming'](_0x35c8fa,_0x414e2f,_0x20b656,_0x285da9,_0x4cd58d,_0x162a37){const _0x5a7495=a0_0x36b321,_0x4a9bad={'DZzTn':_0x5a7495(0x209),'HjpXe':_0x5a7495(0x1cb),'uOwHS':'solid','yWFRR':'center','ZIHHN':function(_0x3c8b6d,_0x536398){return _0x3c8b6d<_0x536398;},'Jfevi':function(_0x363809,_0x2a8f25){return _0x363809+_0x2a8f25;},'qebXc':function(_0x4505f4,_0x29bfa4){return _0x4505f4*_0x29bfa4;},'PySpE':'excel_chunk_processed','BlHsI':'streaming','tXUEu':'Excel\x20generated\x20(streaming\x20method)'},_0x2e66a5=new ExcelJS['stream'][(_0x5a7495(0x1eb))]['WorkbookWriter']({'filename':_0x4cd58d,'useStyles':!![],'useSharedStrings':!![]}),_0x5b46a0=_0x2e66a5[_0x5a7495(0x201)]('Data'),_0x17f65b=_0x414e2f||(_0x35c8fa[_0x5a7495(0x20a)]>0x0?Object[_0x5a7495(0x20f)](_0x35c8fa[0x0]):[]),_0xc8948d={};_0x17f65b[_0x5a7495(0x222)]((_0x3b8fd0,_0x1e9ac2)=>{_0xc8948d[_0x3b8fd0]=_0x1e9ac2+0x1;}),_0x5b46a0[_0x5a7495(0x1c5)]=_0x17f65b[_0x5a7495(0x208)](_0x173ba9=>{const _0x575bdd=_0x5a7495,_0x1a690e={'header':this[_0x575bdd(0x1d3)](_0x173ba9,_0x285da9),'key':_0x173ba9,'width':0x14};if(_0x20b656&&_0x20b656[_0x173ba9]){const _0x283903=_0x20b656[_0x173ba9];if(_0x283903[_0x575bdd(0x1e8)]&&_0x283903['type'][_0x575bdd(0x1ec)]()!==_0x4a9bad['DZzTn']){const _0x390b3b=this[_0x575bdd(0x211)](_0x283903);_0x390b3b&&(_0x1a690e['style']={'numFmt':_0x390b3b});}}return _0x1a690e;});const _0x49e406=_0x5b46a0['getRow'](0x1);_0x49e406['font']={'bold':!![],'color':{'argb':_0x4a9bad['HjpXe']}},_0x49e406[_0x5a7495(0x1e1)]={'type':'pattern','pattern':_0x4a9bad[_0x5a7495(0x1c2)],'fgColor':{'argb':'FF4472C4'}},_0x49e406[_0x5a7495(0x1dc)]={'vertical':_0x5a7495(0x1f8),'horizontal':_0x4a9bad['yWFRR']},_0x49e406['commit']();const _0x1cfed0=_0x35c8fa[_0x5a7495(0x20a)];let _0x5cc90b=0x0;for(let _0x352fed=0x0;_0x4a9bad[_0x5a7495(0x1df)](_0x352fed,_0x1cfed0);_0x352fed+=this['chunkSize']){const _0x25a696=_0x35c8fa['slice'](_0x352fed,_0x4a9bad[_0x5a7495(0x215)](_0x352fed,this[_0x5a7495(0x1d2)]));for(const _0x5bfaf8 of _0x25a696){const _0x8f0f9c=_0x20b656?this[_0x5a7495(0x1fa)](_0x5bfaf8,_0x17f65b,_0x20b656):_0x5bfaf8,_0xd7cc8e=_0x5b46a0[_0x5a7495(0x1f6)](_0x8f0f9c);_0x20b656&&this['applyRowFormatting'](_0xd7cc8e,_0x8f0f9c,_0x17f65b,_0x20b656),_0xd7cc8e['commit'](),_0x5cc90b++;}if(_0x162a37){const _0x148be6=Math[_0x5a7495(0x1fe)](_0x4a9bad[_0x5a7495(0x20e)](_0x5cc90b/_0x1cfed0,0x64));await _0x162a37(_0x148be6);}logger[_0x5a7495(0x1cf)]({'event':_0x4a9bad[_0x5a7495(0x1dd)],'processed':_0x5cc90b,'total':_0x1cfed0},'Processed\x20'+_0x5cc90b+'/'+_0x1cfed0+_0x5a7495(0x220));}return _0x5b46a0[_0x5a7495(0x212)](),await _0x2e66a5['commit'](),logger[_0x5a7495(0x1c1)]({'event':_0x5a7495(0x218),'method':_0x4a9bad[_0x5a7495(0x1c8)],'rows':_0x1cfed0,'chunks':Math[_0x5a7495(0x1f4)](_0x1cfed0/this['chunkSize'])},_0x4a9bad['tXUEu']),_0x4cd58d;}['formatHeader'](_0x17c0a4,_0x51acca){if(_0x51acca&&_0x51acca[_0x17c0a4])return _0x51acca[_0x17c0a4];return String(_0x17c0a4)['toUpperCase']();}[a0_0x36b321(0x1ea)](_0x2c8bb4,_0x1af415){const _0x45c105=a0_0x36b321,_0x1ced58={'aOTlC':function(_0x56ced0,_0x17c454){return _0x56ced0===_0x17c454;}};if(!_0x1af415||_0x1af415[_0x45c105(0x20a)]===0x0)return!![];if(_0x1ced58['aOTlC'](_0x2c8bb4[_0x45c105(0x20a)],0x0))return!![];const _0x4ed6b3=Object['keys'](_0x2c8bb4[0x0]),_0x57fe7d=_0x1af415[_0x45c105(0x21d)](_0x17f453=>!_0x4ed6b3['includes'](_0x17f453));if(_0x57fe7d['length']>0x0)throw new Error(_0x45c105(0x200)+_0x57fe7d[_0x45c105(0x20c)](',\x20'));return!![];}[a0_0x36b321(0x211)](_0x55405a){const _0x2db55f=a0_0x36b321,_0x5e0980={'WTLlh':_0x2db55f(0x1d6),'LREzu':_0x2db55f(0x202),'TPreO':_0x2db55f(0x224),'ZcWPF':function(_0x344980,_0x3488af){return _0x344980||_0x3488af;},'CCVhK':'percentage','VBdGW':'text'};if(!_0x55405a||!_0x55405a[_0x2db55f(0x1e8)])return null;const {type:_0x2edf2a,format:_0x3dd43c}=_0x55405a;switch(_0x2edf2a['toLowerCase']()){case _0x2db55f(0x209):return _0x3dd43c?_0x3dd43c['toLowerCase']():_0x2db55f(0x1e5);case _0x5e0980[_0x2db55f(0x21b)]:return _0x3dd43c||_0x5e0980['LREzu'];case _0x5e0980[_0x2db55f(0x1f9)]:return _0x5e0980[_0x2db55f(0x1f3)](_0x3dd43c,_0x2db55f(0x21c));case _0x5e0980['CCVhK']:return _0x3dd43c||'0.00%';case _0x5e0980[_0x2db55f(0x1ca)]:return'@';default:return null;}}['applyCellFormatting'](_0x1c1cd8,_0x12c3d3,_0x5a8bcd,_0x51bb63){const _0x1bd5dd=a0_0x36b321;if(!_0x5a8bcd)return;_0x12c3d3[_0x1bd5dd(0x222)]((_0x3588d0,_0x46bd23)=>{const _0x18e821=_0x1bd5dd,_0x415ca5=_0x5a8bcd[_0x3588d0];if(!_0x415ca5)return;const _0x47cdc8=_0x46bd23+0x1;for(let _0x3ef38b=0x2;_0x3ef38b<=_0x51bb63+0x1;_0x3ef38b++){const _0x5ca374=_0x1c1cd8[_0x18e821(0x1e0)](_0x3ef38b,_0x47cdc8);this['formatCell'](_0x5ca374,_0x415ca5);}});}[a0_0x36b321(0x219)](_0x4959eb,_0x4213e4,_0x58cc98,_0x32804e){const _0x2eac67=a0_0x36b321;if(!_0x32804e)return;_0x58cc98[_0x2eac67(0x222)]((_0x10690c,_0x35484b)=>{const _0x11512e=_0x2eac67,_0x2f27bd=_0x32804e[_0x10690c];if(!_0x2f27bd)return;const _0x5f4bb1=_0x4959eb[_0x11512e(0x1e0)](_0x35484b+0x1);this[_0x11512e(0x1f5)](_0x5f4bb1,_0x2f27bd);});}['formatCell'](_0x37d08d,_0x535e5c){const _0x103823=a0_0x36b321,_0x53c7e2={'jeJTs':function(_0x31f3c6,_0x250cf5){return _0x31f3c6===_0x250cf5;},'bBNcn':_0x103823(0x1d6),'uuHqx':_0x103823(0x1d5),'WdsBK':'text','orhgc':'string','BVVHh':'middle'};if(!_0x535e5c||!_0x535e5c[_0x103823(0x1e8)])return;const {type:_0x2e7dfb,format:_0x38702f}=_0x535e5c;if(_0x53c7e2['jeJTs'](_0x2e7dfb[_0x103823(0x1ec)](),_0x103823(0x209))&&_0x37d08d['value']){const _0x54053c=this[_0x103823(0x1d8)](_0x37d08d[_0x103823(0x1d9)],_0x38702f);_0x54053c&&(_0x37d08d['value']=_0x54053c);return;}if((_0x2e7dfb['toLowerCase']()===_0x53c7e2[_0x103823(0x1e2)]||_0x2e7dfb[_0x103823(0x1ec)]()==='currency'||_0x2e7dfb['toLowerCase']()===_0x53c7e2[_0x103823(0x1ff)])&&_0x37d08d[_0x103823(0x1d9)]){const _0x1b75eb=this[_0x103823(0x213)](_0x37d08d[_0x103823(0x1d9)]);if(_0x1b75eb!==null){_0x37d08d['value']=_0x1b75eb;const _0x123411=this[_0x103823(0x211)](_0x535e5c);_0x123411&&(_0x37d08d['numFmt']=_0x123411);}}_0x2e7dfb['toLowerCase']()===_0x53c7e2['WdsBK']&&_0x37d08d[_0x103823(0x1d9)]&&(_0x37d08d['numFmt']='@',typeof _0x37d08d['value']!==_0x53c7e2[_0x103823(0x216)]&&(_0x37d08d[_0x103823(0x1d9)]=String(_0x37d08d[_0x103823(0x1d9)])),_0x37d08d['alignment']={'horizontal':'left','vertical':_0x53c7e2['BVVHh']});}['formatDateString'](_0x18298d,_0x5227c9){const _0x265db5=a0_0x36b321,_0x147ca1={'WVXoC':function(_0x5ea0df,_0x580996){return _0x5ea0df+_0x580996;},'tAjgz':function(_0x25fe7e,_0xf54f6,_0x5cd69c){return _0x25fe7e(_0xf54f6,_0x5cd69c);},'kQcxD':function(_0x154b83,_0x186973,_0x1b05b2){return _0x154b83(_0x186973,_0x1b05b2);},'Aozdd':function(_0x1ace7c,_0x12106c,_0x50fc6b){return _0x1ace7c(_0x12106c,_0x50fc6b);},'FeIHB':function(_0x29bfba,_0x495531,_0xf6960e){return _0x29bfba(_0x495531,_0xf6960e);},'caWqu':function(_0x1b8078,_0x4f9cb0,_0x595217){return _0x1b8078(_0x4f9cb0,_0x595217);},'uRkSY':function(_0x21e8e2,_0x5664a4,_0x2b8095){return _0x21e8e2(_0x5664a4,_0x2b8095);},'KOpSR':function(_0x79fd89,_0x1b59b7){return _0x79fd89===_0x1b59b7;},'XDJgc':_0x265db5(0x1d6),'dpyQJ':function(_0x40051e,_0x2c9fe4){return _0x40051e(_0x2c9fe4);},'wjdFZ':function(_0x4063b2,_0x14fae5){return _0x4063b2+_0x14fae5;},'KEijS':function(_0x7a0b2e,_0x7632f6){return _0x7a0b2e(_0x7632f6);},'wESLp':function(_0x535c07,_0x1839a9){return _0x535c07===_0x1839a9;},'CQZZe':'dd-mm-yyyy'};if(!_0x18298d)return null;let _0x48c1b9,_0x3198d9,_0xd81d4;if(_0x18298d instanceof Date)_0x48c1b9=_0x18298d[_0x265db5(0x1fb)](),_0x3198d9=_0x147ca1['WVXoC'](_0x18298d['getUTCMonth'](),0x1),_0xd81d4=_0x18298d[_0x265db5(0x1cd)]();else{if(typeof _0x18298d===_0x265db5(0x21a)){const _0x139d24=_0x18298d[_0x265db5(0x1f2)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x139d24)_0x48c1b9=_0x147ca1['tAjgz'](parseInt,_0x139d24[0x1],0xa),_0x3198d9=parseInt(_0x139d24[0x2],0xa),_0xd81d4=parseInt(_0x139d24[0x3],0xa);else{const _0x1cea98=_0x18298d['match'](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x1cea98)_0xd81d4=_0x147ca1['kQcxD'](parseInt,_0x1cea98[0x1],0xa),_0x3198d9=_0x147ca1['Aozdd'](parseInt,_0x1cea98[0x2],0xa),_0x48c1b9=_0x147ca1['FeIHB'](parseInt,_0x1cea98[0x3],0xa);else{const _0x569455=_0x18298d[_0x265db5(0x1f2)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x569455&&(_0x48c1b9=_0x147ca1['caWqu'](parseInt,_0x569455[0x1],0xa),_0x3198d9=_0x147ca1[_0x265db5(0x21e)](parseInt,_0x569455[0x2],0xa),_0xd81d4=parseInt(_0x569455[0x3],0xa));}}}else{if(_0x147ca1['KOpSR'](typeof _0x18298d,_0x147ca1[_0x265db5(0x1d1)])){const _0x4f9f85=new Date(_0x18298d);!_0x147ca1['dpyQJ'](isNaN,_0x4f9f85[_0x265db5(0x20b)]())&&(_0x48c1b9=_0x4f9f85[_0x265db5(0x1fb)](),_0x3198d9=_0x147ca1[_0x265db5(0x206)](_0x4f9f85['getUTCMonth'](),0x1),_0xd81d4=_0x4f9f85[_0x265db5(0x1cd)]());}}}if(!_0x48c1b9||!_0x3198d9||!_0xd81d4)return null;const _0x12056b=String(_0xd81d4)['padStart'](0x2,'0'),_0x43b3b1=_0x147ca1[_0x265db5(0x1d0)](String,_0x3198d9)[_0x265db5(0x1c7)](0x2,'0'),_0xca6ce7=String(_0x48c1b9),_0x2a532=(_0x5227c9||_0x265db5(0x1e4))[_0x265db5(0x1ec)]();if(_0x2a532==='dd/mm/yyyy')return _0x12056b+'/'+_0x43b3b1+'/'+_0xca6ce7;else{if(_0x2a532===_0x265db5(0x1f0))return _0x43b3b1+'/'+_0x12056b+'/'+_0xca6ce7;else{if(_0x2a532===_0x265db5(0x1ed))return _0xca6ce7+'-'+_0x43b3b1+'-'+_0x12056b;else{if(_0x147ca1[_0x265db5(0x210)](_0x2a532,_0x147ca1[_0x265db5(0x205)]))return _0x12056b+'-'+_0x43b3b1+'-'+_0xca6ce7;else return _0x147ca1['wESLp'](_0x2a532,_0x265db5(0x1e6))?_0xca6ce7+'/'+_0x43b3b1+'/'+_0x12056b:_0x12056b+'/'+_0x43b3b1+'/'+_0xca6ce7;}}}}[a0_0x36b321(0x213)](_0x3eb544){const _0x2eaa60=a0_0x36b321,_0x1baa8c={'CuZcs':'number','RVPGK':function(_0x4a909c,_0x56a93c){return _0x4a909c===_0x56a93c;},'Nplcw':'string','ZrrFy':function(_0x27c7ab,_0x360764){return _0x27c7ab(_0x360764);}};if(typeof _0x3eb544===_0x1baa8c[_0x2eaa60(0x1d4)])return _0x3eb544;if(_0x1baa8c['RVPGK'](typeof _0x3eb544,_0x1baa8c['Nplcw'])){const _0x59c201=_0x3eb544[_0x2eaa60(0x1cc)](/[^\d.-]/g,''),_0x24bd18=_0x1baa8c['ZrrFy'](parseFloat,_0x59c201);if(!_0x1baa8c[_0x2eaa60(0x1c3)](isNaN,_0x24bd18))return _0x24bd18;}return null;}['preprocessTextColumns'](_0x4c440e,_0x1a0dba,_0x1dcf64){const _0x475c21=a0_0x36b321,_0x4c4b71={'xrVOp':function(_0x4fe880,_0x5c1962){return _0x4fe880!==_0x5c1962;},'YuVQo':function(_0x406b62,_0x1ed383){return _0x406b62+_0x1ed383;},'OEfPw':function(_0x44a89c,_0x2e9d39){return _0x44a89c(_0x2e9d39);},'vybnT':function(_0x558eb3,_0x3f35c2){return _0x558eb3===_0x3f35c2;}};if(!_0x1dcf64)return _0x4c440e;const _0x5d4e03=[];_0x1a0dba[_0x475c21(0x222)](_0x4d1c48=>{const _0x88d467=_0x475c21,_0x5c7136=_0x1dcf64[_0x4d1c48];_0x5c7136&&_0x5c7136['type']&&_0x5c7136[_0x88d467(0x1e8)][_0x88d467(0x1ec)]()===_0x88d467(0x1de)&&_0x5d4e03['push'](_0x4d1c48);});if(_0x4c4b71[_0x475c21(0x221)](_0x5d4e03[_0x475c21(0x20a)],0x0))return _0x4c440e;return _0x4c440e[_0x475c21(0x208)](_0x585b29=>{const _0x295b08={..._0x585b29};return _0x5d4e03['forEach'](_0x33e173=>{const _0xc3945=a0_0x43d9;_0x4c4b71['xrVOp'](_0x295b08[_0x33e173],null)&&_0x4c4b71[_0xc3945(0x204)](_0x295b08[_0x33e173],undefined)&&(_0x295b08[_0x33e173]=_0x4c4b71['YuVQo']('\x27',_0x4c4b71['OEfPw'](String,_0x295b08[_0x33e173])));}),_0x295b08;});}[a0_0x36b321(0x1fa)](_0x2500cf,_0x2079d2,_0x1e8131){const _0x1d28a8=a0_0x36b321;if(!_0x1e8131)return _0x2500cf;const _0x7bfb94=[];_0x2079d2[_0x1d28a8(0x222)](_0x1ada1f=>{const _0x16ba83=_0x1d28a8,_0x3943fe=_0x1e8131[_0x1ada1f];_0x3943fe&&_0x3943fe[_0x16ba83(0x1e8)]&&_0x3943fe[_0x16ba83(0x1e8)][_0x16ba83(0x1ec)]()===_0x16ba83(0x1de)&&_0x7bfb94['push'](_0x1ada1f);});if(_0x7bfb94[_0x1d28a8(0x20a)]===0x0)return _0x2500cf;const _0x2b1f9b={..._0x2500cf};return _0x7bfb94[_0x1d28a8(0x222)](_0x944e4=>{_0x2b1f9b[_0x944e4]!==null&&_0x2b1f9b[_0x944e4]!==undefined&&(_0x2b1f9b[_0x944e4]='\x27'+String(_0x2b1f9b[_0x944e4]));}),_0x2b1f9b;}}function a0_0x43d9(_0x283eeb,_0x2d2bd7){_0x283eeb=_0x283eeb-0x1bf;const _0x3139e5=a0_0x3139();let _0x43d91a=_0x3139e5[_0x283eeb];if(a0_0x43d9['iinQqQ']===undefined){var _0x2552bb=function(_0x5b02c1){const _0xf5cb02='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3c7ada='',_0x1a26c2='';for(let _0x2e6d10=0x0,_0x3a004f,_0x1040db,_0x1896b4=0x0;_0x1040db=_0x5b02c1['charAt'](_0x1896b4++);~_0x1040db&&(_0x3a004f=_0x2e6d10%0x4?_0x3a004f*0x40+_0x1040db:_0x1040db,_0x2e6d10++%0x4)?_0x3c7ada+=String['fromCharCode'](0xff&_0x3a004f>>(-0x2*_0x2e6d10&0x6)):0x0){_0x1040db=_0xf5cb02['indexOf'](_0x1040db);}for(let _0x5e787e=0x0,_0x4c20e5=_0x3c7ada['length'];_0x5e787e<_0x4c20e5;_0x5e787e++){_0x1a26c2+='%'+('00'+_0x3c7ada['charCodeAt'](_0x5e787e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1a26c2);};a0_0x43d9['mMXYCV']=_0x2552bb,a0_0x43d9['udKkdD']={},a0_0x43d9['iinQqQ']=!![];}const _0x4da431=_0x3139e5[0x0],_0x531ae1=_0x283eeb+_0x4da431,_0x3c7eed=a0_0x43d9['udKkdD'][_0x531ae1];return!_0x3c7eed?(_0x43d91a=a0_0x43d9['mMXYCV'](_0x43d91a),a0_0x43d9['udKkdD'][_0x531ae1]=_0x43d91a):_0x43d91a=_0x3c7eed,_0x43d91a;}module['exports']=ExcelGenerator;
1
+ const a0_0x35485b=a0_0x53ad;function a0_0x2bca(){const _0x58775d=['BNvTrM10','ngfozxLgvG','wuz0r3C','CLHuAMC','z2vUzxjHDgvtDhjLyw1PBMC','ywXPz25Tzw50','mJqZndK0mxv1u3LpBW','otiXnZrYzvLZsxG','CgfYC2voDw1Izxi','BwfW','rxHJzwWGz2vUzxjHDgvKicHZAw1WBguGBwv0Ag9Kkq','ntzbBg53wLm','Dgv4Da','z2v0vvrdtw9UDgG','DhLWzq','BwLKzgXL','DLLJEuC','yxbWBhLsB3DgB3jTyxr0Aw5N','rgf0yq','shP2u3C','DwLczeu','y0XtufG','rxHJzwWGz2vUzxjHDgLVBIbZDgfYDgvK','Dg9vChbLCKnHC2u','z2v0vvrdrgf0zq','C3rYAw5N','q3zZtxC','reqVtu0VwvLzwq','sK94B24','Bwf0y2G','A2v5CW','zxHWB3j0CW','D3r1yNq','mJK1nZq0reXhugjn','iYWJiZaUmda','z2vUzxjHDgvtAw1WBgu','zM9YBwf0sgvHzgvY','z2v0q2vSBa','zgf0zq','zgqVBw0VExL5Eq','Aw5MBW','ChjLChjVy2vZC1rLEhrsB3C','mti0mZC0nvjlse9vsG','y2H4teG','BK5YsLu','rKy0ndCYqZq','y3vYCMvUy3K','BNvTyMvY','vg5LExG','zxHJzwXFz2vUzxjHDgLVBL9ZDgfYDa','z2v0rxHJzwXgB3jTyxq','y2H1BMTtAxPL','DMfSDwu','zM9YBwf0rgf0zvn0CMLUzW','sufizMS','z2v0uM93','C3r5Bgu','CgfKu3rHCNq','lI9SB2DNzxi','txPbvhi','rerMqNu','CgvYy2vUDgfNzq','Cgf0DgvYBG','EgXZEa','v2HZA1O','A2D4DK4','vM9RDue','mJyYmdK4q1zXvuT4','mJbhC25PtMS','C3rYzwfTAw5N','teLcBgq','AM9PBG','whvtvNy','ihjVD3m','C3rYzwfT','zM9YrwfJAa','zMLSDgvY','Dg9mB3DLCKnHC2u','CKDLweC','DMLLD3m','zM9YBwf0q2vSBa','BunICKu','BwTKA00','zgvIDwC','ExL5Es9TBs9Kza','ywXOy0G','mZu1otG5BgnmzhDT','ywrKuM93','y2vUDgvY','mZa1nte3m0HdsgfVua','rg1ODeu','ywrKuM93CW','rKzgrKzgrKy','ogjXuvL1DW','zMLSBa','AvHiu1y','y29TBwL0','BxP6AM0','BgvUz3rO','C29SAwq'];a0_0x2bca=function(){return _0x58775d;};return a0_0x2bca();}function a0_0x53ad(_0x19000f,_0x48b308){_0x19000f=_0x19000f-0x1d4;const _0x2bcaaa=a0_0x2bca();let _0x53ad01=_0x2bcaaa[_0x19000f];if(a0_0x53ad['qvIxGW']===undefined){var _0x327cd2=function(_0x2d76de){const _0x130b0a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3f4991='',_0x36e7ca='';for(let _0x487b2d=0x0,_0x452c81,_0x43e9fd,_0x1e55e4=0x0;_0x43e9fd=_0x2d76de['charAt'](_0x1e55e4++);~_0x43e9fd&&(_0x452c81=_0x487b2d%0x4?_0x452c81*0x40+_0x43e9fd:_0x43e9fd,_0x487b2d++%0x4)?_0x3f4991+=String['fromCharCode'](0xff&_0x452c81>>(-0x2*_0x487b2d&0x6)):0x0){_0x43e9fd=_0x130b0a['indexOf'](_0x43e9fd);}for(let _0x244e01=0x0,_0x28aed8=_0x3f4991['length'];_0x244e01<_0x28aed8;_0x244e01++){_0x36e7ca+='%'+('00'+_0x3f4991['charCodeAt'](_0x244e01)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x36e7ca);};a0_0x53ad['PBaITj']=_0x327cd2,a0_0x53ad['pTykSM']={},a0_0x53ad['qvIxGW']=!![];}const _0x222eec=_0x2bcaaa[0x0],_0x43dc58=_0x19000f+_0x222eec,_0x2125dc=a0_0x53ad['pTykSM'][_0x43dc58];return!_0x2125dc?(_0x53ad01=a0_0x53ad['PBaITj'](_0x53ad01),a0_0x53ad['pTykSM'][_0x43dc58]=_0x53ad01):_0x53ad01=_0x2125dc,_0x53ad01;}(function(_0x46ea01,_0x3ea4c8){const _0x1b2468=a0_0x53ad,_0x405069=_0x46ea01();while(!![]){try{const _0x18687c=-parseInt(_0x1b2468(0x1e4))/0x1*(-parseInt(_0x1b2468(0x1f2))/0x2)+parseInt(_0x1b2468(0x1dd))/0x3+parseInt(_0x1b2468(0x1ec))/0x4*(-parseInt(_0x1b2468(0x215))/0x5)+-parseInt(_0x1b2468(0x22e))/0x6+-parseInt(_0x1b2468(0x1f6))/0x7*(-parseInt(_0x1b2468(0x20c))/0x8)+parseInt(_0x1b2468(0x1f1))/0x9+parseInt(_0x1b2468(0x22f))/0xa*(-parseInt(_0x1b2468(0x1e0))/0xb);if(_0x18687c===_0x3ea4c8)break;else _0x405069['push'](_0x405069['shift']());}catch(_0x34bab5){_0x405069['push'](_0x405069['shift']());}}}(a0_0x2bca,0x323a6));const ExcelJS=require('exceljs'),{logger}=require(a0_0x35485b(0x225));class ExcelGenerator{constructor(){const _0x5e3c76=a0_0x35485b,_0x42cb75={'rXTjg':function(_0x433282,_0x53d4d7,_0x1e725b){return _0x433282(_0x53d4d7,_0x1e725b);}};this[_0x5e3c76(0x21e)]=_0x42cb75[_0x5e3c76(0x1ee)](parseInt,process['env']['EXPORT_CHUNK_SIZE'],0xa)||0x3e8;}async['generate'](_0x251d18){const _0xcea710=a0_0x35485b,_0x530303={'fYCoY':_0xcea710(0x21c),'LInuL':'auto','byDON':function(_0x32690a,_0x3a9c67){return _0x32690a>_0x3a9c67;}},{data:_0xbd284c,columns:_0x3aaca7,columnFormats:_0x2a9460,fieldLabels:_0x7b28de,filePath:_0x50dc9d,onProgress:_0x4aa46e}=_0x251d18;logger[_0xcea710(0x213)]({'event':_0x530303['fYCoY'],'rows':_0xbd284c[_0xcea710(0x1e9)],'columns':_0x3aaca7?.['length']||_0x530303['LInuL'],'columnFormats':_0x2a9460?Object[_0xcea710(0x209)](_0x2a9460):null,'fieldLabels':_0x7b28de?Object['keys'](_0x7b28de):null,'streaming':_0x530303['byDON'](_0xbd284c[_0xcea710(0x1e9)],this[_0xcea710(0x21e)])},_0xcea710(0x201));if(_0xbd284c['length']<=this['chunkSize'])return await this[_0xcea710(0x20e)](_0xbd284c,_0x3aaca7,_0x2a9460,_0x7b28de,_0x50dc9d,_0x4aa46e);return await this[_0xcea710(0x1ef)](_0xbd284c,_0x3aaca7,_0x2a9460,_0x7b28de,_0x50dc9d,_0x4aa46e);}async[a0_0x35485b(0x20e)](_0x229de2,_0x3c7b4f,_0xcd068c,_0x456d81,_0x57119a,_0x26038e){const _0x29daf4=a0_0x35485b,_0x2fbf05={'Tneyx':_0x29daf4(0x211),'nNrJU':function(_0x48ebec,_0x477a06){return _0x48ebec>_0x477a06;},'QjuEz':_0x29daf4(0x229),'alhcH':_0x29daf4(0x1ea),'Khcmp':_0x29daf4(0x1fa),'VHwmF':_0x29daf4(0x1df),'PpAUv':function(_0x3db74c,_0x1b43c9){return _0x3db74c(_0x1b43c9);},'dyfKF':'excel_generation_complete','Dlgew':'simple','KsiUj':_0x29daf4(0x1f5)},_0x4255c2=new ExcelJS['Workbook'](),_0x402894=_0x4255c2['addWorksheet'](_0x29daf4(0x1fd)),_0x14874b=_0x3c7b4f||(_0x2fbf05[_0x29daf4(0x217)](_0x229de2['length'],0x0)?Object[_0x29daf4(0x209)](_0x229de2[0x0]):[]);_0x402894['columns']=_0x14874b['map'](_0x1dbce=>{const _0x33f8dc=_0x29daf4,_0x24a94b={'header':this[_0x33f8dc(0x20f)](_0x1dbce,_0x456d81),'key':_0x1dbce,'width':0x14};if(_0xcd068c&&_0xcd068c[_0x1dbce]){const _0x42358f=_0xcd068c[_0x1dbce];if(_0x42358f['type']&&_0x42358f['type']['toLowerCase']()!==_0x2fbf05[_0x33f8dc(0x21b)]){const _0x216c7e=this['getExcelFormat'](_0x42358f);_0x216c7e&&(_0x24a94b[_0x33f8dc(0x223)]={'numFmt':_0x216c7e});}}return _0x24a94b;}),_0x402894[_0x29daf4(0x222)](0x1)['font']={'bold':!![],'color':{'argb':'FFFFFFFF'}},_0x402894[_0x29daf4(0x222)](0x1)[_0x29daf4(0x1e5)]={'type':_0x2fbf05['QjuEz'],'pattern':_0x2fbf05[_0x29daf4(0x1dc)],'fgColor':{'argb':_0x29daf4(0x218)}},_0x402894[_0x29daf4(0x222)](0x1)[_0x29daf4(0x1f0)]={'vertical':_0x2fbf05['Khcmp'],'horizontal':_0x2fbf05['VHwmF']};const _0x5bd4f7=_0xcd068c?this['preprocessTextColumns'](_0x229de2,_0x14874b,_0xcd068c):_0x229de2;return _0x402894[_0x29daf4(0x1e2)](_0x5bd4f7),_0xcd068c&&this['applyCellFormatting'](_0x402894,_0x14874b,_0xcd068c,_0x229de2[_0x29daf4(0x1e9)]),_0x26038e&&await _0x26038e(0x32),_0x402894['autoFilter']={'from':{'row':0x1,'column':0x1},'to':{'row':0x1,'column':_0x14874b[_0x29daf4(0x1e9)]}},_0x402894[_0x29daf4(0x1d6)]=[{'state':'frozen','xSplit':0x0,'ySplit':0x1}],await _0x4255c2[_0x29daf4(0x22a)]['writeFile'](_0x57119a),_0x26038e&&await _0x2fbf05['PpAUv'](_0x26038e,0x64),logger[_0x29daf4(0x213)]({'event':_0x2fbf05['dyfKF'],'method':_0x2fbf05['Dlgew'],'rows':_0x229de2['length']},_0x2fbf05['KsiUj']),_0x57119a;}async[a0_0x35485b(0x1ef)](_0x59e93f,_0x1d9c76,_0x4f6d0f,_0xd997bf,_0x13bc36,_0x54adf6){const _0x2d4efa=a0_0x35485b,_0x22e023={'XuSVv':function(_0x15afa4,_0x2104dc){return _0x15afa4+_0x2104dc;},'YFtGw':function(_0x3812b0,_0x26c242){return _0x3812b0!==_0x26c242;},'EsYiH':_0x2d4efa(0x211),'UFoWt':_0x2d4efa(0x1fd),'mKSpV':'FF4472C4','DiiFB':_0x2d4efa(0x1df),'iepZW':function(_0x2569d2,_0x56dddd){return _0x2569d2<_0x56dddd;},'vYcyG':_0x2d4efa(0x230),'jitJf':function(_0x3f2c4b,_0x1298dc){return _0x3f2c4b/_0x1298dc;},'tSYVF':'Excel\x20generated\x20(streaming\x20method)'},_0x4da294=new ExcelJS[(_0x2d4efa(0x235))][(_0x2d4efa(0x22a))]['WorkbookWriter']({'filename':_0x13bc36,'useStyles':!![],'useSharedStrings':!![]}),_0x1b9572=_0x4da294['addWorksheet'](_0x22e023['UFoWt']),_0x34826b=_0x1d9c76||(_0x59e93f[_0x2d4efa(0x1e9)]>0x0?Object['keys'](_0x59e93f[0x0]):[]),_0x3b6895={};_0x34826b['forEach']((_0x93de43,_0x54bf04)=>{const _0x2ba676=_0x2d4efa;_0x3b6895[_0x93de43]=_0x22e023[_0x2ba676(0x233)](_0x54bf04,0x1);}),_0x1b9572['columns']=_0x34826b[_0x2d4efa(0x1f4)](_0x4007d9=>{const _0x6d4282=_0x2d4efa,_0x6e9002={'header':this[_0x6d4282(0x20f)](_0x4007d9,_0xd997bf),'key':_0x4007d9,'width':0x14};if(_0x4f6d0f&&_0x4f6d0f[_0x4007d9]){const _0x4991ea=_0x4f6d0f[_0x4007d9];if(_0x4991ea['type']&&_0x22e023[_0x6d4282(0x1ed)](_0x4991ea[_0x6d4282(0x1f9)]['toLowerCase'](),_0x22e023['EsYiH'])){const _0x1f4f38=this[_0x6d4282(0x21d)](_0x4991ea);_0x1f4f38&&(_0x6e9002['style']={'numFmt':_0x1f4f38});}}return _0x6e9002;});const _0x1a588b=_0x1b9572['getRow'](0x1);_0x1a588b['font']={'bold':!![],'color':{'argb':_0x2d4efa(0x1e3)}},_0x1a588b['fill']={'type':'pattern','pattern':'solid','fgColor':{'argb':_0x22e023['mKSpV']}},_0x1a588b[_0x2d4efa(0x1f0)]={'vertical':_0x2d4efa(0x1fa),'horizontal':_0x22e023['DiiFB']},_0x1a588b[_0x2d4efa(0x1e7)]();const _0x241c19=_0x59e93f[_0x2d4efa(0x1e9)];let _0x4f33ac=0x0;for(let _0x13f6cd=0x0;_0x22e023['iepZW'](_0x13f6cd,_0x241c19);_0x13f6cd+=this[_0x2d4efa(0x21e)]){const _0x2c0bad=_0x59e93f['slice'](_0x13f6cd,_0x13f6cd+this['chunkSize']);for(const _0x29cfd9 of _0x2c0bad){const _0x549bf7=_0x4f6d0f?this[_0x2d4efa(0x214)](_0x29cfd9,_0x34826b,_0x4f6d0f):_0x29cfd9,_0x58e87a=_0x1b9572[_0x2d4efa(0x1de)](_0x549bf7);_0x4f6d0f&&this[_0x2d4efa(0x1fc)](_0x58e87a,_0x549bf7,_0x34826b,_0x4f6d0f),_0x58e87a[_0x2d4efa(0x1e7)](),_0x4f33ac++;}if(_0x54adf6){const _0x3487b7=Math['round'](_0x4f33ac/_0x241c19*0x64);await _0x54adf6(_0x3487b7);}logger[_0x2d4efa(0x1da)]({'event':'excel_chunk_processed','processed':_0x4f33ac,'total':_0x241c19},'Processed\x20'+_0x4f33ac+'/'+_0x241c19+_0x2d4efa(0x234));}return _0x1b9572[_0x2d4efa(0x1e7)](),await _0x4da294[_0x2d4efa(0x1e7)](),logger[_0x2d4efa(0x213)]({'event':'excel_generation_complete','method':_0x22e023[_0x2d4efa(0x1fb)],'rows':_0x241c19,'chunks':Math['ceil'](_0x22e023['jitJf'](_0x241c19,this['chunkSize']))},_0x22e023['tSYVF']),_0x13bc36;}['formatHeader'](_0xd5e49a,_0x664df0){const _0x36b957=a0_0x35485b;if(_0x664df0&&_0x664df0[_0xd5e49a])return _0x664df0[_0xd5e49a];return String(_0xd5e49a)[_0x36b957(0x202)]();}['validateColumns'](_0x43be5e,_0x2b31ef){const _0x4658b0=a0_0x35485b,_0x298abb={'VokuA':function(_0x2fd6c9,_0x1f3887){return _0x2fd6c9===_0x1f3887;},'Zogyw':function(_0xf79717,_0x31f4){return _0xf79717>_0x31f4;}};if(!_0x2b31ef||_0x298abb[_0x4658b0(0x22d)](_0x2b31ef['length'],0x0))return!![];if(_0x43be5e[_0x4658b0(0x1e9)]===0x0)return!![];const _0xb0e920=Object['keys'](_0x43be5e[0x0]),_0x5e2ff4=_0x2b31ef[_0x4658b0(0x237)](_0x136d96=>!_0xb0e920['includes'](_0x136d96));if(_0x298abb['Zogyw'](_0x5e2ff4[_0x4658b0(0x1e9)],0x0))throw new Error('Invalid\x20columns:\x20'+_0x5e2ff4[_0x4658b0(0x232)](',\x20'));return!![];}[a0_0x35485b(0x21d)](_0x53616c){const _0x2df017=a0_0x35485b,_0x5d5bdc={'wtubt':_0x2df017(0x21a),'MzATr':_0x2df017(0x20d),'LFYlY':function(_0x122b53,_0x2e4df1){return _0x122b53||_0x2e4df1;},'DPcFl':function(_0x15163f,_0x3ba535){return _0x15163f||_0x3ba535;},'rGeXG':'text'};if(!_0x53616c||!_0x53616c['type'])return null;const {type:_0x1396f5,format:_0x1b956c}=_0x53616c;switch(_0x1396f5[_0x2df017(0x1d4)]()){case'date':return _0x1b956c?_0x1b956c[_0x2df017(0x1d4)]():_0x2df017(0x212);case _0x5d5bdc[_0x2df017(0x20b)]:return _0x1b956c||_0x5d5bdc[_0x2df017(0x226)];case'currency':return _0x5d5bdc['LFYlY'](_0x1b956c,'\x22Rp\x20\x22#,##0');case _0x2df017(0x228):return _0x5d5bdc['DPcFl'](_0x1b956c,'0.00%');case _0x5d5bdc[_0x2df017(0x1d5)]:return'@';default:return null;}}['applyCellFormatting'](_0x38fac2,_0x306964,_0x4a262e,_0x324f99){const _0x1d2515=a0_0x35485b,_0x369ff8={'jXWWC':function(_0xefd91b,_0x2a4f89){return _0xefd91b+_0x2a4f89;}};if(!_0x4a262e)return;_0x306964[_0x1d2515(0x236)]((_0x4e70d5,_0x1539d6)=>{const _0x53c56e=_0x4a262e[_0x4e70d5];if(!_0x53c56e)return;const _0x1e402d=_0x1539d6+0x1;for(let _0x20e82a=0x2;_0x20e82a<=_0x369ff8['jXWWC'](_0x324f99,0x1);_0x20e82a++){const _0x458cb1=_0x38fac2['getCell'](_0x20e82a,_0x1e402d);this['formatCell'](_0x458cb1,_0x53c56e);}});}[a0_0x35485b(0x1fc)](_0x2a3ca4,_0x98480c,_0x3eed42,_0x84c9f6){const _0x582696=a0_0x35485b,_0x51cebe={'gcngT':function(_0x386b4,_0x38e872){return _0x386b4+_0x38e872;}};if(!_0x84c9f6)return;_0x3eed42[_0x582696(0x236)]((_0xa9f6f7,_0x56f730)=>{const _0x4dddc3=_0x582696,_0x387459=_0x84c9f6[_0xa9f6f7];if(!_0x387459)return;const _0x361b01=_0x2a3ca4[_0x4dddc3(0x210)](_0x51cebe['gcngT'](_0x56f730,0x1));this[_0x4dddc3(0x1d7)](_0x361b01,_0x387459);});}['formatCell'](_0xd02c6b,_0x27daee){const _0x280405=a0_0x35485b,_0x2f2ba={'IAHfk':function(_0x4f5acd,_0x2a0616){return _0x4f5acd===_0x2a0616;},'qeenk':_0x280405(0x211),'rzLMK':_0x280405(0x21a),'kgxvN':_0x280405(0x219),'YYfrV':_0x280405(0x228),'mCbrE':'text','pCAjd':function(_0x29fa60,_0x45080b){return _0x29fa60!==_0x45080b;},'genkz':_0x280405(0x204),'CvsMw':function(_0x5d375c,_0x5e67e4){return _0x5d375c(_0x5e67e4);},'MAUAP':'left','DDfBu':'middle'};if(!_0x27daee||!_0x27daee['type'])return;const {type:_0xe70cfd,format:_0x15c1e1}=_0x27daee;if(_0x2f2ba[_0x280405(0x221)](_0xe70cfd['toLowerCase'](),_0x2f2ba['qeenk'])&&_0xd02c6b['value']){const _0x2f6d17=this[_0x280405(0x220)](_0xd02c6b[_0x280405(0x21f)],_0x15c1e1);_0x2f6d17&&(_0xd02c6b['value']=_0x2f6d17);return;}if((_0xe70cfd[_0x280405(0x1d4)]()===_0x2f2ba['rzLMK']||_0xe70cfd['toLowerCase']()===_0x2f2ba[_0x280405(0x22c)]||_0xe70cfd[_0x280405(0x1d4)]()===_0x2f2ba['YYfrV'])&&_0xd02c6b['value']){const _0x19d26b=this[_0x280405(0x1f3)](_0xd02c6b[_0x280405(0x21f)]);if(_0x19d26b!==null){_0xd02c6b['value']=_0x19d26b;const _0x5cb4a8=this[_0x280405(0x21d)](_0x27daee);_0x5cb4a8&&(_0xd02c6b[_0x280405(0x1eb)]=_0x5cb4a8);}}_0xe70cfd['toLowerCase']()===_0x2f2ba[_0x280405(0x1d8)]&&_0xd02c6b[_0x280405(0x21f)]&&(_0xd02c6b[_0x280405(0x1eb)]='@',_0x2f2ba['pCAjd'](typeof _0xd02c6b['value'],_0x2f2ba['genkz'])&&(_0xd02c6b['value']=_0x2f2ba[_0x280405(0x205)](String,_0xd02c6b['value'])),_0xd02c6b[_0x280405(0x1f0)]={'horizontal':_0x2f2ba['MAUAP'],'vertical':_0x2f2ba[_0x280405(0x227)]});}['formatDateString'](_0xd6a95d,_0x5c566b){const _0x1b5170=a0_0x35485b,_0x5142f9={'TMqXb':function(_0xfa4cdb,_0x119f7f){return _0xfa4cdb+_0x119f7f;},'mzzjm':function(_0xb62f50,_0xd24d64,_0x60fa21){return _0xb62f50(_0xd24d64,_0x60fa21);},'RljQV':function(_0x5c03ce,_0x507833,_0x4a8402){return _0x5c03ce(_0x507833,_0x4a8402);},'Xitbm':'number','qBMsI':function(_0x1a6941,_0x55bbc7){return _0x1a6941(_0x55bbc7);},'hXRcr':function(_0x179108,_0x531f67){return _0x179108||_0x531f67;},'XurRq':_0x1b5170(0x206),'iXHSV':function(_0x4f05c2,_0x333d3e){return _0x4f05c2===_0x333d3e;},'WhskZ':'dd/mm/yyyy','fnqeE':'mm/dd/yyyy','uiBdE':'dd-mm-yyyy'};if(!_0xd6a95d)return null;let _0x221b93,_0x250b40,_0x16e428;if(_0xd6a95d instanceof Date)_0x221b93=_0xd6a95d['getUTCFullYear'](),_0x250b40=_0x5142f9['TMqXb'](_0xd6a95d[_0x1b5170(0x1f8)](),0x1),_0x16e428=_0xd6a95d[_0x1b5170(0x203)]();else{if(typeof _0xd6a95d==='string'){const _0x25de6a=_0xd6a95d[_0x1b5170(0x208)](/^(\d{4})-(\d{2})-(\d{2})/);if(_0x25de6a)_0x221b93=_0x5142f9[_0x1b5170(0x1e8)](parseInt,_0x25de6a[0x1],0xa),_0x250b40=parseInt(_0x25de6a[0x2],0xa),_0x16e428=_0x5142f9[_0x1b5170(0x1e8)](parseInt,_0x25de6a[0x3],0xa);else{const _0x3ff384=_0xd6a95d[_0x1b5170(0x208)](/^(\d{1,2})\/(\d{1,2})\/(\d{4})$/);if(_0x3ff384)_0x16e428=parseInt(_0x3ff384[0x1],0xa),_0x250b40=_0x5142f9['RljQV'](parseInt,_0x3ff384[0x2],0xa),_0x221b93=parseInt(_0x3ff384[0x3],0xa);else{const _0x5d6c88=_0xd6a95d[_0x1b5170(0x208)](/^(\d{4})-(\d{1,2})-(\d{1,2})$/);_0x5d6c88&&(_0x221b93=_0x5142f9['RljQV'](parseInt,_0x5d6c88[0x1],0xa),_0x250b40=parseInt(_0x5d6c88[0x2],0xa),_0x16e428=parseInt(_0x5d6c88[0x3],0xa));}}}else{if(typeof _0xd6a95d===_0x5142f9['Xitbm']){const _0x4b6f35=new Date(_0xd6a95d);!_0x5142f9['qBMsI'](isNaN,_0x4b6f35['getTime']())&&(_0x221b93=_0x4b6f35['getUTCFullYear'](),_0x250b40=_0x5142f9['TMqXb'](_0x4b6f35['getUTCMonth'](),0x1),_0x16e428=_0x4b6f35['getUTCDate']());}}}if(_0x5142f9['hXRcr'](!_0x221b93,!_0x250b40)||!_0x16e428)return null;const _0x46b715=_0x5142f9['qBMsI'](String,_0x16e428)[_0x1b5170(0x224)](0x2,'0'),_0x1886e8=String(_0x250b40)['padStart'](0x2,'0'),_0x2b5519=String(_0x221b93),_0x5533e0=(_0x5c566b||_0x5142f9['XurRq'])[_0x1b5170(0x1d4)]();if(_0x5142f9[_0x1b5170(0x1e6)](_0x5533e0,_0x5142f9[_0x1b5170(0x22b)]))return _0x46b715+'/'+_0x1886e8+'/'+_0x2b5519;else{if(_0x5533e0===_0x5142f9['fnqeE'])return _0x1886e8+'/'+_0x46b715+'/'+_0x2b5519;else{if(_0x5533e0==='yyyy-mm-dd')return _0x2b5519+'-'+_0x1886e8+'-'+_0x46b715;else{if(_0x5142f9['iXHSV'](_0x5533e0,_0x5142f9[_0x1b5170(0x1ff)]))return _0x46b715+'-'+_0x1886e8+'-'+_0x2b5519;else return _0x5142f9[_0x1b5170(0x1e6)](_0x5533e0,_0x1b5170(0x1db))?_0x2b5519+'/'+_0x1886e8+'/'+_0x46b715:_0x46b715+'/'+_0x1886e8+'/'+_0x2b5519;}}}}['parseNumber'](_0x3d68e1){const _0x6dd934=a0_0x35485b,_0x5c716e={'JOxon':_0x6dd934(0x21a),'LIBld':function(_0x365a5b,_0x238ed6){return _0x365a5b===_0x238ed6;},'DMUFq':function(_0xad7f1c,_0x5c5f18){return _0xad7f1c(_0x5c5f18);}};if(typeof _0x3d68e1===_0x5c716e[_0x6dd934(0x207)])return _0x3d68e1;if(_0x5c716e[_0x6dd934(0x231)](typeof _0x3d68e1,_0x6dd934(0x204))){const _0x547c46=_0x3d68e1['replace'](/[^\d.-]/g,''),_0x53ef27=parseFloat(_0x547c46);if(!_0x5c716e['DMUFq'](isNaN,_0x53ef27))return _0x53ef27;}return null;}['preprocessTextColumns'](_0x5e283a,_0x590f8e,_0x313ab2){const _0x30b278=a0_0x35485b;if(!_0x313ab2)return _0x5e283a;const _0x62d2a5=[];_0x590f8e['forEach'](_0x5ce945=>{const _0x51ae73=a0_0x53ad,_0x63942=_0x313ab2[_0x5ce945];_0x63942&&_0x63942['type']&&_0x63942[_0x51ae73(0x1f9)][_0x51ae73(0x1d4)]()==='text'&&_0x62d2a5['push'](_0x5ce945);});if(_0x62d2a5['length']===0x0)return _0x5e283a;return _0x5e283a[_0x30b278(0x1f4)](_0x24e4d6=>{const _0x2df8bf=_0x30b278,_0x56100a={'cLSPX':function(_0x15d12b,_0x125867){return _0x15d12b!==_0x125867;}},_0x377294={..._0x24e4d6};return _0x62d2a5[_0x2df8bf(0x236)](_0x57605a=>{const _0x14c365=_0x2df8bf;_0x377294[_0x57605a]!==null&&_0x56100a[_0x14c365(0x200)](_0x377294[_0x57605a],undefined)&&(_0x377294[_0x57605a]='\x27'+String(_0x377294[_0x57605a]));}),_0x377294;});}['preprocessTextRow'](_0x29c883,_0x5c44a3,_0xf8be78){const _0xb05972=a0_0x35485b,_0x491b84={'chxLH':function(_0x4a6d0c,_0x2ec918){return _0x4a6d0c===_0x2ec918;},'mkdkM':function(_0x45ad17,_0x22c052){return _0x45ad17!==_0x22c052;},'HzvSw':function(_0x216292,_0x347cf9){return _0x216292+_0x347cf9;},'DmhtE':function(_0x524081,_0x58582a){return _0x524081(_0x58582a);}};if(!_0xf8be78)return _0x29c883;const _0x4326a2=[];_0x5c44a3[_0xb05972(0x236)](_0x560f1e=>{const _0x387f7d=_0xb05972,_0x1b8e2b=_0xf8be78[_0x560f1e];_0x1b8e2b&&_0x1b8e2b[_0x387f7d(0x1f9)]&&_0x491b84[_0x387f7d(0x216)](_0x1b8e2b['type']['toLowerCase'](),_0x387f7d(0x1f7))&&_0x4326a2['push'](_0x560f1e);});if(_0x4326a2[_0xb05972(0x1e9)]===0x0)return _0x29c883;const _0x3434ed={..._0x29c883};return _0x4326a2[_0xb05972(0x236)](_0xe462c4=>{const _0x146585=_0xb05972;_0x3434ed[_0xe462c4]!==null&&_0x491b84[_0x146585(0x1d9)](_0x3434ed[_0xe462c4],undefined)&&(_0x3434ed[_0xe462c4]=_0x491b84[_0x146585(0x1fe)]('\x27',_0x491b84[_0x146585(0x1e1)](String,_0x3434ed[_0xe462c4])));}),_0x3434ed;}}module[a0_0x35485b(0x20a)]=ExcelGenerator;
@@ -1 +1 @@
1
- const a0_0x202821=a0_0x12ec;function a0_0x12ec(_0x36a74b,_0x20e62d){_0x36a74b=_0x36a74b-0x7a;const _0x52d5f7=a0_0x52d5();let _0x12ec8b=_0x52d5f7[_0x36a74b];if(a0_0x12ec['WIQDQr']===undefined){var _0x1fff2d=function(_0x533cd7){const _0x2c91a0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4505b1='',_0x32b302='';for(let _0x597065=0x0,_0x272291,_0x315719,_0x1be216=0x0;_0x315719=_0x533cd7['charAt'](_0x1be216++);~_0x315719&&(_0x272291=_0x597065%0x4?_0x272291*0x40+_0x315719:_0x315719,_0x597065++%0x4)?_0x4505b1+=String['fromCharCode'](0xff&_0x272291>>(-0x2*_0x597065&0x6)):0x0){_0x315719=_0x2c91a0['indexOf'](_0x315719);}for(let _0x35e2b2=0x0,_0x51a9c0=_0x4505b1['length'];_0x35e2b2<_0x51a9c0;_0x35e2b2++){_0x32b302+='%'+('00'+_0x4505b1['charCodeAt'](_0x35e2b2)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x32b302);};a0_0x12ec['UIlYvx']=_0x1fff2d,a0_0x12ec['BpsxHl']={},a0_0x12ec['WIQDQr']=!![];}const _0x1438c0=_0x52d5f7[0x0],_0x473608=_0x36a74b+_0x1438c0,_0x19f311=a0_0x12ec['BpsxHl'][_0x473608];return!_0x19f311?(_0x12ec8b=a0_0x12ec['UIlYvx'](_0x12ec8b),a0_0x12ec['BpsxHl'][_0x473608]=_0x12ec8b):_0x12ec8b=_0x19f311,_0x12ec8b;}function a0_0x52d5(){const _0x195f4c=['nMvSBxnyCG','AgfZ','nJe3nZuYvLDHww9h','CMLJAfrLEhq','v29RvvO','mZKXmZqYwLLvEuTH','zwfJAfjVDW','BM9YBwfSAxPLq2vSBfzHBhvL','AwDQC1a','C3rYAw5N','zxHJzwXFCgfYC2vK','mJGZmJC3z2Lowxff','mteWnJGWsufXrvrQ','y2TYDg4','rxHJzwWGzMLSzsbWyxjZzwqGC3vJy2vZC2z1BgX5','sw1VwKe','mtHTwhD0ww4','rMfPBgvKihrVihbHCNnLiev4y2vSigzPBgu','BwfW','Bwf0y2G','DMfSDwvZ','mtqYodq0nfnbz25Ksa','EeTRqMC','C0vNqMu','CgfKu3rHCNq','EgXZEa','zxjYB3i','mZC1mZG4u3fWq3rg','BfzUteu','CgfYC2vfEgnLBezPBgu','BgvUz3rO','oda4otu1DvPLthLy','AM9PBG','z2v0rNvSBfLLyxi','CMvZDwX0','BwvZC2fNzq','zxHWB3j0CW','zM9YrwfJAa','B2jQzwn0'];a0_0x52d5=function(){return _0x195f4c;};return a0_0x52d5();}(function(_0x3a6904,_0x2718bc){const _0x3ee1c3=a0_0x12ec,_0x14557a=_0x3a6904();while(!![]){try{const _0x1552cf=-parseInt(_0x3ee1c3(0x8b))/0x1+parseInt(_0x3ee1c3(0x85))/0x2+-parseInt(_0x3ee1c3(0x80))/0x3*(parseInt(_0x3ee1c3(0x9b))/0x4)+-parseInt(_0x3ee1c3(0x8c))/0x5*(-parseInt(_0x3ee1c3(0x90))/0x6)+parseInt(_0x3ee1c3(0x9f))/0x7+parseInt(_0x3ee1c3(0x82))/0x8+parseInt(_0x3ee1c3(0x95))/0x9;if(_0x1552cf===_0x2718bc)break;else _0x14557a['push'](_0x14557a['shift']());}catch(_0x1e434f){_0x14557a['push'](_0x14557a['shift']());}}}(a0_0x52d5,0x22d10));const ExcelJS=require('exceljs'),{logger}=require('./logger');class ExcelParser{async[a0_0x202821(0x9d)](_0x234418){const _0x1f9dfc=a0_0x202821,_0x2a0871={'EZFYx':function(_0x3a786e,_0x2891ed){return _0x3a786e+_0x2891ed;},'bRqAY':'excel_parse_error','ImoZA':_0x1f9dfc(0x91)};try{const _0x96aad1=new ExcelJS['Workbook']();await _0x96aad1[_0x1f9dfc(0x99)]['readFile'](_0x234418);const _0x4e5ca4=_0x96aad1['worksheets'][0x0];if(!_0x4e5ca4)throw new Error('No\x20worksheet\x20found\x20in\x20Excel\x20file');const _0x192418=[];let _0x3a0c4b=[];return _0x4e5ca4[_0x1f9dfc(0x86)]((_0x23ae57,_0x1b9d68)=>{const _0x565e9b=_0x1f9dfc,_0x11e634={'WokUZ':function(_0x50c5d5,_0x9c9b73){return _0x2a0871['EZFYx'](_0x50c5d5,_0x9c9b73);}},_0x57dd3e=_0x23ae57[_0x565e9b(0x94)];if(_0x1b9d68===0x1)_0x3a0c4b=_0x57dd3e['slice'](0x1)['map'](_0x386b5f=>this['normalizeHeader'](_0x386b5f));else{const _0x187c90={};_0x3a0c4b[_0x565e9b(0x7e)]((_0x1943bd,_0x3434ce)=>{const _0x291855=_0x565e9b,_0x428269=_0x57dd3e[_0x11e634[_0x291855(0x84)](_0x3434ce,0x1)];_0x187c90[_0x1943bd]=this['normalizeCellValue'](_0x428269);}),_0x192418['push'](_0x187c90);}}),logger['info']({'event':_0x1f9dfc(0x8a),'filePath':_0x234418,'totalRows':_0x192418['length'],'headers':_0x3a0c4b[_0x1f9dfc(0x9e)]},_0x1f9dfc(0x8e)),{'headers':_0x3a0c4b,'rows':_0x192418,'totalRows':_0x192418['length']};}catch(_0x961288){logger[_0x1f9dfc(0x9a)]({'event':_0x2a0871['bRqAY'],'filePath':_0x234418,'error':_0x961288[_0x1f9dfc(0x7c)]},_0x2a0871[_0x1f9dfc(0x8f)]);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x961288['message']);}}['normalizeHeader'](_0x271107){const _0x54adbb=a0_0x202821,_0x145d38={'IbzgO':function(_0x233b1a,_0x241191){return _0x233b1a===_0x241191;},'lVnLE':function(_0x23b15d,_0x14bcce){return _0x23b15d(_0x14bcce);},'IkVuW':'$1_$2'};if(_0x145d38['IbzgO'](_0x271107,null)||_0x271107===undefined)return'';let _0x4965b3=_0x145d38[_0x54adbb(0x9c)](String,_0x271107)['trim']();return _0x4965b3=_0x4965b3['replace'](/\s+/g,'_')['replace'](/([a-z])([A-Z])/g,_0x145d38['IkVuW'])['replace'](/([A-Z]+)([A-Z][a-z])/g,'$1_$2')['toLowerCase'](),_0x4965b3;}['normalizeCellValue'](_0x13ed52){const _0x1c8178=a0_0x202821,_0x1ee2d6={'ckrtn':function(_0x4ddfe3,_0x7f3764){return _0x4ddfe3===_0x7f3764;},'mooFC':function(_0x3b8729,_0x39fe7a){return _0x3b8729===_0x39fe7a;},'seBfy':function(_0x43ce34,_0x2610c3){return _0x43ce34 instanceof _0x2610c3;},'xKkBg':function(_0x218db4,_0x19eed2){return _0x218db4(_0x19eed2);},'MXcNb':function(_0x3aebd5,_0x512c28){return _0x3aebd5+_0x512c28;},'igjsP':_0x1c8178(0x89),'ujVHF':'object','sEgBe':function(_0x6fd83e,_0x1b4e2a){return _0x6fd83e!==_0x1b4e2a;}};if(_0x1ee2d6[_0x1c8178(0x8d)](_0x13ed52,null)||_0x1ee2d6['mooFC'](_0x13ed52,undefined))return null;if(_0x1ee2d6['seBfy'](_0x13ed52,Date)){const _0x4d7b1f=_0x13ed52[_0x1c8178(0x7a)](),_0x25a7c5=_0x1ee2d6[_0x1c8178(0x96)](String,_0x1ee2d6['MXcNb'](_0x13ed52['getMonth'](),0x1))['padStart'](0x2,'0'),_0x31475c=String(_0x13ed52['getDate']())['padStart'](0x2,'0');return _0x4d7b1f+'-'+_0x25a7c5+'-'+_0x31475c;}if(_0x1ee2d6['mooFC'](typeof _0x13ed52,_0x1ee2d6[_0x1c8178(0x88)])){const _0x50ba3e=_0x13ed52[_0x1c8178(0x93)](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x50ba3e){const _0x967a53=String(_0x50ba3e[0x1])[_0x1c8178(0x98)](0x2,'0'),_0x10e72e=String(_0x50ba3e[0x2])[_0x1c8178(0x98)](0x2,'0'),_0x55247e=_0x50ba3e[0x3];return _0x55247e+'-'+_0x10e72e+'-'+_0x967a53;}}if(_0x13ed52&&typeof _0x13ed52===_0x1ee2d6['ujVHF']&&_0x13ed52[_0x1c8178(0x83)])return _0x13ed52['richText'][_0x1c8178(0x92)](_0x86d167=>_0x86d167['text'])[_0x1c8178(0xa0)]('');if(_0x13ed52&&typeof _0x13ed52===_0x1c8178(0x7f)&&_0x1ee2d6[_0x1c8178(0x97)](_0x13ed52[_0x1c8178(0x7b)],undefined))return this[_0x1c8178(0x87)](_0x13ed52['result']);if(typeof _0x13ed52===_0x1ee2d6['igjsP'])return _0x13ed52['trim']();return _0x13ed52;}['validateExcelStructure'](_0x1d0e8a,_0x1cd6f8){const _0x168783=a0_0x202821,_0xa755b1=new Set(_0x1d0e8a),_0x1a64c4=new Set(_0x1cd6f8),_0x2ca400=_0x1cd6f8['filter'](_0x45c233=>!_0xa755b1[_0x168783(0x81)](_0x45c233)),_0x30eab8=_0x1d0e8a['filter'](_0xbbd06c=>!_0x1a64c4[_0x168783(0x81)](_0xbbd06c)),_0x182b5d=_0x2ca400[_0x168783(0x9e)]===0x0;return{'valid':_0x182b5d,'missingFields':_0x2ca400,'extraFields':_0x30eab8};}}module[a0_0x202821(0x7d)]=new ExcelParser();
1
+ const a0_0xfbe7a7=a0_0x52bd;function a0_0x52bd(_0x5d697a,_0x24274e){_0x5d697a=_0x5d697a-0x13e;const _0xa55072=a0_0xa550();let _0x52bd1c=_0xa55072[_0x5d697a];if(a0_0x52bd['rEhwHH']===undefined){var _0x587481=function(_0x39963b){const _0x592c41='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x330794='',_0x37fab0='';for(let _0x32e22c=0x0,_0x5a1629,_0x40da21,_0x949a75=0x0;_0x40da21=_0x39963b['charAt'](_0x949a75++);~_0x40da21&&(_0x5a1629=_0x32e22c%0x4?_0x5a1629*0x40+_0x40da21:_0x40da21,_0x32e22c++%0x4)?_0x330794+=String['fromCharCode'](0xff&_0x5a1629>>(-0x2*_0x32e22c&0x6)):0x0){_0x40da21=_0x592c41['indexOf'](_0x40da21);}for(let _0x91513f=0x0,_0x5d1713=_0x330794['length'];_0x91513f<_0x5d1713;_0x91513f++){_0x37fab0+='%'+('00'+_0x330794['charCodeAt'](_0x91513f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x37fab0);};a0_0x52bd['ZAnuHx']=_0x587481,a0_0x52bd['FlnTcn']={},a0_0x52bd['rEhwHH']=!![];}const _0x25ed6c=_0xa55072[0x0],_0x417c97=_0x5d697a+_0x25ed6c,_0x530adf=a0_0x52bd['FlnTcn'][_0x417c97];return!_0x530adf?(_0x52bd1c=a0_0x52bd['ZAnuHx'](_0x52bd1c),a0_0x52bd['FlnTcn'][_0x417c97]=_0x52bd1c):_0x52bd1c=_0x530adf,_0x52bd1c;}(function(_0x1a1e4e,_0x121b59){const _0x4ebd4d=a0_0x52bd,_0x5cf5be=_0x1a1e4e();while(!![]){try{const _0x1e47dc=-parseInt(_0x4ebd4d(0x167))/0x1+parseInt(_0x4ebd4d(0x160))/0x2+-parseInt(_0x4ebd4d(0x141))/0x3*(-parseInt(_0x4ebd4d(0x145))/0x4)+parseInt(_0x4ebd4d(0x14b))/0x5*(-parseInt(_0x4ebd4d(0x157))/0x6)+parseInt(_0x4ebd4d(0x154))/0x7+-parseInt(_0x4ebd4d(0x151))/0x8+parseInt(_0x4ebd4d(0x150))/0x9;if(_0x1e47dc===_0x121b59)break;else _0x5cf5be['push'](_0x5cf5be['shift']());}catch(_0x4754b6){_0x5cf5be['push'](_0x5cf5be['shift']());}}}(a0_0xa550,0x30208));const ExcelJS=require(a0_0xfbe7a7(0x146)),{logger}=require(a0_0xfbe7a7(0x16a));function a0_0xa550(){const _0xb7e1e6=['AgfZ','mtm2mJy5z0jqCg1j','Dgv4Da','zxHJzwXFCgfYC2vK','mJuXnfPbANz6CG','BgvUz3rO','BwvZC2fNzq','BwfW','zxHWB3j0CW','D29YA3nOzwv0CW','Du5TqNa','z2v0tw9UDgG','AM9PBG','mtyXmJy2vKLKqKXy','C3rYAw5N','CMvZDwX0','zuXrrxy','zxjYB3i','zMLSDgvY','z2v0rNvSBfLLyxi','mJmXnZi5B1nWt1nU','B1bhBMe','CwrJwNy','lI9SB2DNzxi','CgfYC2vfEgnLBezPBgu','CMLJAfrLEhq','Aw5MBW','zwfJAfjVDW','jdfFjdi','tM8GD29YA3nOzwv0igzVDw5KigLUiev4y2vSigzPBgu','BLLtvLO','ntD1z3vIzve','C2XPy2u','yxHQr2e','zM9YrwfJAa','ndqXmdHLBLftzK0','zxHJzwXQCW','CMvHzezPBgu','CMvWBgfJzq','BM9YBwfSAxPLsgvHzgvY','Dg9mB3DLCKnHC2u','mJmWnvbXD3b1yG','zxHJzwXFCgfYC2vFzxjYB3i','CgfKu3rHCNq','sxDht3e','BM9YBwfSAxPLq2vSBfzHBhvL','ntiXnJK3nMrSqvjjua','mJeZoda4ofPzENzAsa','vM9yy0i'];a0_0xa550=function(){return _0xb7e1e6;};return a0_0xa550();}class ExcelParser{async[a0_0xfbe7a7(0x16b)](_0x26143c){const _0x5140a5=a0_0xfbe7a7,_0x5a5e91={'eLCON':function(_0x1a2b5c,_0x572563){return _0x1a2b5c+_0x572563;},'nYSVZ':_0x5140a5(0x13f),'bFKev':_0x5140a5(0x156),'qeZCc':_0x5140a5(0x14c),'fYTCk':'Failed\x20to\x20parse\x20Excel\x20file'};try{const _0x170142=new ExcelJS['Workbook']();await _0x170142['xlsx'][_0x5140a5(0x147)](_0x26143c);const _0x1a2c38=_0x170142[_0x5140a5(0x15c)][0x0];if(!_0x1a2c38)throw new Error(_0x5a5e91[_0x5140a5(0x140)]);const _0x504bbd=[];let _0x57fd73=[];return _0x1a2c38[_0x5140a5(0x16e)]((_0x315e59,_0x146990)=>{const _0x167c0d=_0x5140a5,_0x66f00f=_0x315e59['values'];if(_0x146990===0x1)_0x57fd73=_0x66f00f[_0x167c0d(0x142)](0x1)[_0x167c0d(0x15a)](_0x3b1006=>this['normalizeHeader'](_0x3b1006));else{const _0x3e120d={};_0x57fd73[_0x167c0d(0x144)]((_0x180c0f,_0x52e7df)=>{const _0x107704=_0x66f00f[_0x5a5e91['eLCON'](_0x52e7df,0x1)];_0x3e120d[_0x180c0f]=this['normalizeCellValue'](_0x107704);}),_0x504bbd['push'](_0x3e120d);}}),logger[_0x5140a5(0x16d)]({'event':_0x5a5e91['bFKev'],'filePath':_0x26143c,'totalRows':_0x504bbd[_0x5140a5(0x158)],'headers':_0x57fd73['length']},'Excel\x20file\x20parsed\x20successfully'),{'headers':_0x57fd73,'rows':_0x504bbd,'totalRows':_0x504bbd[_0x5140a5(0x158)]};}catch(_0x8762a8){logger[_0x5140a5(0x164)]({'event':_0x5a5e91['qeZCc'],'filePath':_0x26143c,'error':_0x8762a8[_0x5140a5(0x159)]},_0x5a5e91['fYTCk']);throw new Error('Failed\x20to\x20parse\x20Excel\x20file:\x20'+_0x8762a8[_0x5140a5(0x159)]);}}[a0_0xfbe7a7(0x149)](_0x3c866b){const _0x53f123=a0_0xfbe7a7,_0x3768a5={'oPGna':function(_0x1a981b,_0x576af3){return _0x1a981b===_0x576af3;},'TtPXR':function(_0x323f3c,_0x3a2731){return _0x323f3c(_0x3a2731);},'eLQEv':_0x53f123(0x13e)};if(_0x3c866b===null||_0x3768a5[_0x53f123(0x168)](_0x3c866b,undefined))return'';let _0x4f3f5c=_0x3768a5['TtPXR'](String,_0x3c866b)['trim']();return _0x4f3f5c=_0x4f3f5c[_0x53f123(0x148)](/\s+/g,'_')[_0x53f123(0x148)](/([a-z])([A-Z])/g,_0x3768a5[_0x53f123(0x163)])['replace'](/([A-Z]+)([A-Z][a-z])/g,_0x3768a5[_0x53f123(0x163)])[_0x53f123(0x14a)](),_0x4f3f5c;}[a0_0xfbe7a7(0x14f)](_0x1c4d05){const _0x3fcb80=a0_0xfbe7a7,_0x359462={'yPhwV':function(_0x35c1b1,_0x512db9){return _0x35c1b1===_0x512db9;},'VoXcB':function(_0x2e1989,_0x3c20a7){return _0x2e1989 instanceof _0x3c20a7;},'IWWVJ':function(_0x4d0902,_0xfe0a68){return _0x4d0902(_0xfe0a68);},'axjGa':function(_0x5233f0,_0x43579a){return _0x5233f0===_0x43579a;},'IwGOq':'object','uNmBp':function(_0x425044,_0x1dabd2){return _0x425044===_0x1dabd2;},'dduRt':function(_0x12d826,_0x53ea69){return _0x12d826!==_0x53ea69;},'qdcZv':_0x3fcb80(0x161)};if(_0x359462['yPhwV'](_0x1c4d05,null)||_0x1c4d05===undefined)return null;if(_0x359462[_0x3fcb80(0x152)](_0x1c4d05,Date)){const _0x2f3283=_0x1c4d05[_0x3fcb80(0x166)](),_0x2a7433=String(_0x1c4d05[_0x3fcb80(0x15e)]()+0x1)['padStart'](0x2,'0'),_0x24090a=_0x359462['IWWVJ'](String,_0x1c4d05['getDate']())['padStart'](0x2,'0');return _0x2f3283+'-'+_0x2a7433+'-'+_0x24090a;}if(typeof _0x1c4d05===_0x3fcb80(0x161)){const _0x4ed595=_0x1c4d05['match'](/^(\d{1,2})[\/\-](\d{1,2})[\/\-](\d{4})$/);if(_0x4ed595){const _0x52f04=String(_0x4ed595[0x1])[_0x3fcb80(0x14d)](0x2,'0'),_0x1961bc=String(_0x4ed595[0x2])['padStart'](0x2,'0'),_0x597bf1=_0x4ed595[0x3];return _0x597bf1+'-'+_0x1961bc+'-'+_0x52f04;}}if(_0x1c4d05&&_0x359462[_0x3fcb80(0x143)](typeof _0x1c4d05,_0x359462[_0x3fcb80(0x14e)])&&_0x1c4d05['richText'])return _0x1c4d05[_0x3fcb80(0x16c)][_0x3fcb80(0x15a)](_0x5e29a8=>_0x5e29a8[_0x3fcb80(0x155)])[_0x3fcb80(0x15f)]('');if(_0x1c4d05&&_0x359462[_0x3fcb80(0x15d)](typeof _0x1c4d05,_0x359462[_0x3fcb80(0x14e)])&&_0x359462['dduRt'](_0x1c4d05['result'],undefined))return this[_0x3fcb80(0x14f)](_0x1c4d05[_0x3fcb80(0x162)]);if(typeof _0x1c4d05===_0x359462[_0x3fcb80(0x169)])return _0x1c4d05['trim']();return _0x1c4d05;}['validateExcelStructure'](_0x5d4429,_0x8dd003){const _0x221e31=a0_0xfbe7a7,_0x5691be={'SoRCN':function(_0x30efa2,_0x30846b){return _0x30efa2===_0x30846b;}},_0x3e9bab=new Set(_0x5d4429),_0x303cb6=new Set(_0x8dd003),_0x2b5c20=_0x8dd003[_0x221e31(0x165)](_0x370e91=>!_0x3e9bab['has'](_0x370e91)),_0x15cb1c=_0x5d4429[_0x221e31(0x165)](_0x1818c5=>!_0x303cb6[_0x221e31(0x153)](_0x1818c5)),_0x20615d=_0x5691be['SoRCN'](_0x2b5c20['length'],0x0);return{'valid':_0x20615d,'missingFields':_0x2b5c20,'extraFields':_0x15cb1c};}}module[a0_0xfbe7a7(0x15b)]=new ExcelParser();
@@ -1 +1 @@
1
- 'use strict';const a0_0x171e42=a0_0x5387;function a0_0x49e8(){const _0x5aaa18=['Bg9N','zgLYzwn0B3jPzxm','CMvSyxrPDMu','mJC3mdG5EKvMB3Lu','lMPZ','C3rVCa','Cgf0Aa','D2f0y2HLCNm','y3DK','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','odrHz3LKA1K','zgvIB3vUy2vuAw1LCG','Aw5JBhvKzxm','y2XVC2u','mZmWmdKYsxHlzxPR','D2f0y2G','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','BwvZC2fNzq','nZq0mZq0rfnutxb2','zxH0BMfTzq','rMnqEvi','zxHPC3rZu3LUyW','ndaYnZGZDKrUExL3','zgvIB3vUy2vnCW','mtqYodaYohberuHyCG','mtG0otm0nvnUChvcsW','mhWYFdv8m3W0Fde','x2rLyM91BMnL','ntmXodGWt0z3wvj3'];a0_0x49e8=function(){return _0x5aaa18;};return a0_0x49e8();}(function(_0x9bc9c8,_0x246e59){const _0x3da00c=a0_0x5387,_0x43be4b=_0x9bc9c8();while(!![]){try{const _0x330d73=parseInt(_0x3da00c(0x11a))/0x1+-parseInt(_0x3da00c(0x116))/0x2+-parseInt(_0x3da00c(0x12d))/0x3+parseInt(_0x3da00c(0x12f))/0x4+-parseInt(_0x3da00c(0x130))/0x5+-parseInt(_0x3da00c(0x121))/0x6*(-parseInt(_0x3da00c(0x125))/0x7)+-parseInt(_0x3da00c(0x129))/0x8;if(_0x330d73===_0x246e59)break;else _0x43be4b['push'](_0x43be4b['shift']());}catch(_0x2e07ea){_0x43be4b['push'](_0x43be4b['shift']());}}}(a0_0x49e8,0x6943f));const fs=require('fs'),path=require(a0_0x171e42(0x11d));function a0_0x5387(_0x42033f,_0x34904d){_0x42033f=_0x42033f-0x115;const _0x49e847=a0_0x49e8();let _0x5387f7=_0x49e847[_0x42033f];if(a0_0x5387['dudQbV']===undefined){var _0x2269dc=function(_0x477daa){const _0xcc43d0='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x16770e='',_0x144663='';for(let _0x13ea03=0x0,_0x5a0584,_0x262dee,_0x50cc83=0x0;_0x262dee=_0x477daa['charAt'](_0x50cc83++);~_0x262dee&&(_0x5a0584=_0x13ea03%0x4?_0x5a0584*0x40+_0x262dee:_0x262dee,_0x13ea03++%0x4)?_0x16770e+=String['fromCharCode'](0xff&_0x5a0584>>(-0x2*_0x13ea03&0x6)):0x0){_0x262dee=_0xcc43d0['indexOf'](_0x262dee);}for(let _0x3be25d=0x0,_0x3b868d=_0x16770e['length'];_0x3be25d<_0x3b868d;_0x3be25d++){_0x144663+='%'+('00'+_0x16770e['charCodeAt'](_0x3be25d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x144663);};a0_0x5387['DhrWKv']=_0x2269dc,a0_0x5387['hkWklW']={},a0_0x5387['dudQbV']=!![];}const _0x40d32e=_0x49e847[0x0],_0x4054ff=_0x42033f+_0x40d32e,_0x56064b=a0_0x5387['hkWklW'][_0x4054ff];return!_0x56064b?(_0x5387f7=a0_0x5387['DhrWKv'](_0x5387f7),a0_0x5387['hkWklW'][_0x4054ff]=_0x5387f7):_0x5387f7=_0x56064b,_0x5387f7;}class FileWatcher{constructor(_0x2b3df4={}){const _0xc57b36=a0_0x171e42,_0x192baf={'lQnEU':_0xc57b36(0x131),'tImtl':_0xc57b36(0x11b)},_0x435820=_0x192baf['lQnEU']['split']('|');let _0x1656f8=0x0;while(!![]){switch(_0x435820[_0x1656f8++]){case'0':this[_0xc57b36(0x118)]=_0x2b3df4['directories']||[];continue;case'1':this[_0xc57b36(0x122)]=null;continue;case'2':this['extensions']=_0x2b3df4['extensions']||[_0x192baf['tImtl'],'.json'];continue;case'3':this['onChange']=_0x2b3df4['onChange']||(()=>{});continue;case'4':this['watchers']=[];continue;case'5':this[_0xc57b36(0x12e)]=_0x2b3df4[_0xc57b36(0x12e)]||0x1f4;continue;}break;}}['start'](){const _0x3bc46d=a0_0x171e42;for(const _0x1fe948 of this[_0x3bc46d(0x118)]){if(!fs[_0x3bc46d(0x12c)](_0x1fe948)){console['log'](_0x3bc46d(0x120)+(path['relative'](process[_0x3bc46d(0x11f)](),_0x1fe948)||_0x1fe948));continue;}try{const _0x241e30=fs[_0x3bc46d(0x126)](_0x1fe948,{'recursive':!![]},(_0x429e1f,_0x2b5a1c)=>{const _0x39066a=_0x3bc46d;if(!_0x2b5a1c)return;const _0x190c59=path[_0x39066a(0x12a)](_0x2b5a1c)['toLowerCase']();if(!this['extensions'][_0x39066a(0x123)](_0x190c59))return;this[_0x39066a(0x115)](_0x2b5a1c);});_0x241e30['on']('error',_0x4f720a=>{const _0x2f763d=_0x3bc46d;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x2f763d(0x119)](process['cwd'](),_0x1fe948)+':\x20'+_0x4f720a[_0x2f763d(0x128)]);}),this[_0x3bc46d(0x11e)]['push'](_0x241e30);const _0x3e5206=path['relative'](process[_0x3bc46d(0x11f)](),_0x1fe948)||_0x1fe948;console['log']('\x20\x20[WATCH]\x20Watching:\x20'+_0x3e5206+'/\x20(recursive)');}catch(_0x28e898){console[_0x3bc46d(0x117)](_0x3bc46d(0x127)+path[_0x3bc46d(0x119)](process[_0x3bc46d(0x11f)](),_0x1fe948)+':\x20'+_0x28e898['message']);}}}[a0_0x171e42(0x11c)](){const _0x26bcdc=a0_0x171e42;for(const _0x366dec of this[_0x26bcdc(0x11e)]){try{_0x366dec[_0x26bcdc(0x124)]();}catch(_0x33447e){}}this['watchers']=[],this[_0x26bcdc(0x122)]&&(clearTimeout(this['debounceTimer']),this['debounceTimer']=null);}[a0_0x171e42(0x115)](_0x56de7a){const _0x2ce0c6=a0_0x171e42,_0xa78848={'FcPyR':function(_0x10bdf4,_0x535f39){return _0x10bdf4(_0x535f39);}};this['debounceTimer']&&_0xa78848[_0x2ce0c6(0x12b)](clearTimeout,this['debounceTimer']),this['debounceTimer']=setTimeout(()=>{const _0x5e985d=_0x2ce0c6;this[_0x5e985d(0x122)]=null,this['onChange'](_0x56de7a);},this[_0x2ce0c6(0x12e)]);}}module['exports']=FileWatcher;
1
+ 'use strict';const a0_0x1e3524=a0_0x5d1b;function a0_0x5d1b(_0x1b1c3f,_0x3c4c4a){_0x1b1c3f=_0x1b1c3f-0xad;const _0xfab06a=a0_0xfab0();let _0x5d1b58=_0xfab06a[_0x1b1c3f];if(a0_0x5d1b['HSCyIm']===undefined){var _0x5831b2=function(_0x5b3ac6){const _0x12177b='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x141680='',_0x3ece8f='';for(let _0x53f27c=0x0,_0x60d295,_0x58bbd9,_0x5d10e1=0x0;_0x58bbd9=_0x5b3ac6['charAt'](_0x5d10e1++);~_0x58bbd9&&(_0x60d295=_0x53f27c%0x4?_0x60d295*0x40+_0x58bbd9:_0x58bbd9,_0x53f27c++%0x4)?_0x141680+=String['fromCharCode'](0xff&_0x60d295>>(-0x2*_0x53f27c&0x6)):0x0){_0x58bbd9=_0x12177b['indexOf'](_0x58bbd9);}for(let _0x1f4b24=0x0,_0x10579e=_0x141680['length'];_0x1f4b24<_0x10579e;_0x1f4b24++){_0x3ece8f+='%'+('00'+_0x141680['charCodeAt'](_0x1f4b24)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ece8f);};a0_0x5d1b['cEBhuo']=_0x5831b2,a0_0x5d1b['kQZYly']={},a0_0x5d1b['HSCyIm']=!![];}const _0x596086=_0xfab06a[0x0],_0x2db129=_0x1b1c3f+_0x596086,_0x5020a2=a0_0x5d1b['kQZYly'][_0x2db129];return!_0x5020a2?(_0x5d1b58=a0_0x5d1b['cEBhuo'](_0x5d1b58),a0_0x5d1b['kQZYly'][_0x2db129]=_0x5d1b58):_0x5d1b58=_0x5020a2,_0x5d1b58;}(function(_0x47960b,_0x442a8c){const _0x492116=a0_0x5d1b,_0x11e8ce=_0x47960b();while(!![]){try{const _0xd66be4=-parseInt(_0x492116(0xc3))/0x1*(parseInt(_0x492116(0xb1))/0x2)+parseInt(_0x492116(0xc1))/0x3*(parseInt(_0x492116(0xb0))/0x4)+-parseInt(_0x492116(0xbf))/0x5+-parseInt(_0x492116(0xbc))/0x6*(parseInt(_0x492116(0xbe))/0x7)+parseInt(_0x492116(0xbb))/0x8+-parseInt(_0x492116(0xc5))/0x9+parseInt(_0x492116(0xb9))/0xa;if(_0xd66be4===_0x442a8c)break;else _0x11e8ce['push'](_0x11e8ce['shift']());}catch(_0xf82c13){_0x11e8ce['push'](_0x11e8ce['shift']());}}}(a0_0xfab0,0x4eb03));function a0_0xfab0(){const _0x5c5cca=['mtKZnZG5nwLmtePdEa','zgvIB3vUy2vuAw1LCG','mJu0muPpBLrlCa','C3rVCa','ntnMENv1AeC','D2f0y2HLCNm','nda2nJqZnfbUCwnrqG','Aw5JBhvKzxm','BNr0C0m','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','mtm1nKjOqKfWuG','ntu2sNvZtKTg','y3DK','zgLYzwn0B3jPzxm','Bg9N','zxH0zw5ZAw9UCW','x2rLyM91BMnL','BwvZC2fNzq','CMvSyxrPDMu','mta2mta5mJbgA1fjBLm','zxHWB3j0CW','nZy0odK2s1blzvbJ','nMffvwTttW','zxHPC3rZu3LUyW','mtG3mtCZn0LrzNbMEa'];a0_0xfab0=function(){return _0x5c5cca;};return a0_0xfab0();}const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x39164e={}){const _0x3be47e=a0_0x5d1b,_0x2a67dc={'nttsC':'.json'};this['directories']=_0x39164e[_0x3be47e(0xb3)]||[],this[_0x3be47e(0xb5)]=_0x39164e[_0x3be47e(0xb5)]||['.js',_0x2a67dc[_0x3be47e(0xae)]],this['debounceMs']=_0x39164e['debounceMs']||0x1f4,this['onChange']=_0x39164e['onChange']||(()=>{}),this['watchers']=[],this['debounceTimer']=null;}['start'](){const _0x49d12d=a0_0x5d1b;for(const _0x23fc57 of this['directories']){if(!fs[_0x49d12d(0xbd)](_0x23fc57)){console[_0x49d12d(0xb4)]('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path['relative'](process['cwd'](),_0x23fc57)||_0x23fc57));continue;}try{const _0x2db17f=fs['watch'](_0x23fc57,{'recursive':!![]},(_0x5da2d7,_0x390138)=>{const _0x3c8727=_0x49d12d;if(!_0x390138)return;const _0x656f53=path['extname'](_0x390138)['toLowerCase']();if(!this['extensions'][_0x3c8727(0xad)](_0x656f53))return;this[_0x3c8727(0xb6)](_0x390138);});_0x2db17f['on']('error',_0x2d4fdd=>{const _0x5598a3=_0x49d12d;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x5598a3(0xb8)](process['cwd'](),_0x23fc57)+':\x20'+_0x2d4fdd['message']);}),this[_0x49d12d(0xc4)]['push'](_0x2db17f);const _0xa427c6=path['relative'](process['cwd'](),_0x23fc57)||_0x23fc57;console['log']('\x20\x20[WATCH]\x20Watching:\x20'+_0xa427c6+'/\x20(recursive)');}catch(_0x2129ff){console['log'](_0x49d12d(0xaf)+path['relative'](process[_0x49d12d(0xb2)](),_0x23fc57)+':\x20'+_0x2129ff[_0x49d12d(0xb7)]);}}}[a0_0x1e3524(0xc2)](){const _0x461a1b=a0_0x1e3524,_0x34896c={'MRcWJ':function(_0x428a45,_0x5674f9){return _0x428a45(_0x5674f9);}};for(const _0x1c469a of this['watchers']){try{_0x1c469a['close']();}catch(_0x516a6d){}}this['watchers']=[],this[_0x461a1b(0xc0)]&&(_0x34896c['MRcWJ'](clearTimeout,this[_0x461a1b(0xc0)]),this['debounceTimer']=null);}['_debounce'](_0x7633d9){const _0x502922=a0_0x1e3524,_0x3a20b3={'NlZzf':function(_0xd63af8,_0x287969){return _0xd63af8(_0x287969);}};this[_0x502922(0xc0)]&&_0x3a20b3['NlZzf'](clearTimeout,this[_0x502922(0xc0)]),this[_0x502922(0xc0)]=setTimeout(()=>{const _0x114b96=_0x502922;this[_0x114b96(0xc0)]=null,this['onChange'](_0x7633d9);},this['debounceMs']);}}module[a0_0x1e3524(0xba)]=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';const a0_0x3a03fd=a0_0x316f;function a0_0x292b(){const _0x40fca6=['AwrNzw5FBNvTyMvYx3jLBgvHC2vK','ufL3Bhq','ALDjteG','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','ihnLy29UzhmGkgDVDdOG','BwDhz3O','zgvS','BM93','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','wfHywc1ywfHylvHywfGTwfHywa','surhru5Fsu5wquXjrf9srvnpvvjdrq','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','BgvUz3rO','uLjIAuq','Bw9Kzq','x3jLC2vYDMvezwzHDwX0vfrm','surhru5FreLtqujmruq','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','CMvZB3vYy2u','A2v5CW','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','C2nHCMq','x3zHBgLKyxrLtwf4uMv0CNK','mte3nZG0ogzAtwD5Ea','ywn0AxzLoG','vevzzwC','AwrNzw4','xLXKEW','C3rYAw5N','zM9YBwf0s2v5','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','CMvZzxj2zurLzMf1BhruveW','BKD4vhq','rfnju1m','mJKWmJi1n25pyujQAG','C2v0zxG','x2nVDw50zxjuveXnyxa','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','v2HSwxO','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','C2fKza','AgDLDgfSBa','y2fUy2vSuMvZzxj2yxrPB24','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','A2v5uhjLzML4','weDtDeq','AM9PBG','DgjxANO','D25sEeO','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','r1vLquy','ChjLzML4','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','tMTMqwC','mtC2ndiYnvrYB1fuqW','DgvZDa','sxP4wxe','B0nQsxa','surhru5Fru5bqKXfra','zM9YBwf0','u3flvgi','ywXS','zgvMyxvSDenVzgvqyxr0zxjU','EMnHCMq','x2j1AwXKrM9YBwf0s2v5','x3rLEhq','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','mtf8mxW3FdL8nxW2FdH8mhWYFdr8m3WXma','z2v0','sKvqugC','surhru5Fsu5wquXjrf9quKvgsvG','surhru5Fsu5wquXjrf9gt1jnqvq','D2fYBG','s3PwCK0','Dg9mB3DLCKnHC2u','BwfW','C3rYAw5NAwz5','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','CMy6AwrNzw46','ofPKt0Txwa','ruDVt1i','CNn2s2v5','otK5os05otK5','CgvLAW','CNn2oG','x2j1AwXKuMvZzxj2yxrPB25lzxK','x2LKzw1uveW','igv4y2vLzhmG','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','x2fSBg93uMvZzxq','C3jLBq','zw5ZDxjLvw5PCxvL','x3n0B3jLswrLBunHy2HLtLG','DMTTBge','mtC4ndGXmZHMDKDQDMO','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','txnSr2m','mdeYmZq1nJC4oufcq0rfrG','tg53zfy','CgfYC2u','Bw9zsum','zLzOtMK','x3bHCNnLtNvTyMvY','AwrLBvruta','Bwf0y2G','AxnfBMfIBgvK','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','x3zHBgLKyxrLuMvZB3vYy2u','zxHWAxjLC0f0','zgv0ywLSCW','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','zg1xAuG','x2DLDenVDw50zxjuveW','zM5Ksxq','x3jLC2vYDMvnyxHuveW','sfvdq1a','x2j1AwXKqwn0AxzLs2v5','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','y2XWC00','vw5RBM93BIbMB3jTyxq6ia','sgzpCKO','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','C2vX','EwvKBwK','tvviEvy','ntiWnJK5mKjdzw5quq','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','Dgv4Da','swrhzw5LCMf0B3jfCNjVCG','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','C0XOrKK','x2LUAxrdB25MAwC','x2j1AwXKu2vXs2v5','Aw5MBW','x2vUywjSzwq','D0P3rLq','zgTftLe','x2vUC3vYzuLUAxrPywXPEMvK','lcbNB3qG','zgvMyxvSDfnLCMLHBfbHDhrLCM4','lcbLEhbLy3rLzca','EuDpuLy','x2rLzMf1BhrqAw5eAwDPDhm','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','AwfeAvG','BwvZC2fNzq','y29Kzq','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','C2z4Bum','s3HhshK','CMvZzxj2zq','x2j1AwXKsxnZDwvKs2v5','nZi3mta4ohvQuwHjwG','zgvMyxvSDfbPBKrPz2L0CW','DhrS','x2j1AwXKswrLBuTLEq','twv0ysb1CgrHDguGzxjYB3i','x3zHBgLKyxrLvfrm','vfjzBNy','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','x3zHBgLKyxrLuMvZzxj2zvruta','DenRtLi','u01NuvK','AxnZDwvK','zLrAAfC','surhru5Fsu5wquXjrf9trvbbuKfut1i','ExL5Ew1T','B2zivNO','CMvZzxj2zv9Jyw5JzwW','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','D3fzvfC','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','x3vWzgf0zu1LDge','Dg9ju09tDhjPBMC','AxnszxvZzwq','z2v0q2XPzw50','x2DLBMvYyxrLrNjVBvbHDhrLCM4','x2rLzMf1BhrdB2rLugf0DgvYBG','BNnRC3O','CMvZzxj2zu1HEfruta','Dvrdv0O','C2v0','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x3n0B3jLswrLBunHy2HL','surhru5Fq09vtLrfuL9pvKvsrKXpvW','z2v0sw5MBW','AxnjBNrLz2vY','ihbHCNrZkq','z0nqre4','x3bHzdi','y29UC3vTzq','vLHis2i','BwnzCM8','CgfKu3rHCNq','y291BNrLCG','x2LUAxrPywXPEMvK','C2vWyxjHDg9Y','surhru5Fsu5wquXjrf9ovu1crvi','zxHWB3j0CW','y291BNrLCKLUDa','CMv1C2u6','x3vUzg9syw5KB21szxnLCNzHDgLVBG','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','EvbiEuG','AgfZ','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','Bwf4uMv0CNK','BhPZz2O','icHNB3q6ia','wvnAB1u','x2rLzMf1BhrnyxHszxrYEq','vfjIq0G','mLDNsevHAa','mtjnBefbrLK','AwrNzw5Fy29UC3vTzwq','CgfKzgvKicHNB3q6ia','zxjYtxO','D2LUBMvYuMvZDwX0','wgjmqNy','zhDfvw4','zw50CMLLCW','x2zVCM1HDe51BwjLCG','Dg9Rzw4','Cgf0DgvYBG','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','sKfeA0m','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','y3jLyxrLzef0','mtbfuLDpq2e','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','tM9Qsw0','tuXMrxq','AgzWC1K','t1nLu0O','Dhj1zq','Chr0Ba','CLDpCLa','ignOyxjZ','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','x3jLDhjPzxzLswrLBunHy2HL','ChvZAa','CMfUzg9Tvvvjra','zgLNAxrZ','mZe3odGZBfrlEKPr','CMvZzxq','Bwv0yq','Cfz2Efm','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','BNvTyMvY','x3zHBgLKyxrLugf0DgvYBG','wMv0sfK','vwzXAgW','x2TLEvbYzwzPEa','Dwn2uMq','vxfICLm','AhnLDa','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','BLvitgy','surhru5Frevgqvvmvf9nqvHFuKvuuLK','zxzHBa','qNncvgi','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','yM9VBgvHBG','CMfUzg9T','x2j1AwXKtwv0yuTLEq','rfrMC3y','zw52','CMvSzwfZzq','zxHWAxjL','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','zgf0zvbYzwzPEa','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','ChfnBKW','sNjhr1y','AwrNzw5FCMvZzxq','Ee9sC24','x2j1AwXKuMv1C2vlzxK','BNvTrgLNAxrZ','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','surhru5Fsu5wquXjrf9nt0rf','q291BNrLCIbVDMvYzMXVDZOG','zMj1B1y','surhru5Fsu5wquXjrf9uveW','icH0B2TLBJ0','ugj6vuW','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','D3jAB28','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','AwrLBxbVDgvUy3LlzxK','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','zw5HyMXLza','zNr2CgS','DwTbCM4','CNn2swr4s2v5'];a0_0x292b=function(){return _0x40fca6;};return a0_0x292b();}function a0_0x316f(_0x570de4,_0x53dc0e){_0x570de4=_0x570de4-0xa6;const _0x292b28=a0_0x292b();let _0x316fa2=_0x292b28[_0x570de4];if(a0_0x316f['yPZgIn']===undefined){var _0x478082=function(_0x3aaf75){const _0x2f358d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x496487='',_0x55f8cb='';for(let _0x1e15df=0x0,_0x3056e9,_0x398cc5,_0x25d325=0x0;_0x398cc5=_0x3aaf75['charAt'](_0x25d325++);~_0x398cc5&&(_0x3056e9=_0x1e15df%0x4?_0x3056e9*0x40+_0x398cc5:_0x398cc5,_0x1e15df++%0x4)?_0x496487+=String['fromCharCode'](0xff&_0x3056e9>>(-0x2*_0x1e15df&0x6)):0x0){_0x398cc5=_0x2f358d['indexOf'](_0x398cc5);}for(let _0x261bb4=0x0,_0x57d959=_0x496487['length'];_0x261bb4<_0x57d959;_0x261bb4++){_0x55f8cb+='%'+('00'+_0x496487['charCodeAt'](_0x261bb4)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55f8cb);};a0_0x316f['fWkAIP']=_0x478082,a0_0x316f['gpWWhz']={},a0_0x316f['yPZgIn']=!![];}const _0x66cb6f=_0x292b28[0x0],_0x9425d3=_0x570de4+_0x66cb6f,_0x4eeca5=a0_0x316f['gpWWhz'][_0x9425d3];return!_0x4eeca5?(_0x316fa2=a0_0x316f['fWkAIP'](_0x316fa2),a0_0x316f['gpWWhz'][_0x9425d3]=_0x316fa2):_0x316fa2=_0x4eeca5,_0x316fa2;}(function(_0x841dd5,_0x5cbbdd){const _0x1d512d=a0_0x316f,_0x5dd776=_0x841dd5();while(!![]){try{const _0x13d3a9=-parseInt(_0x1d512d(0x136))/0x1+-parseInt(_0x1d512d(0xc8))/0x2*(parseInt(_0x1d512d(0xe7))/0x3)+-parseInt(_0x1d512d(0xc9))/0x4*(-parseInt(_0x1d512d(0x155))/0x5)+-parseInt(_0x1d512d(0x1ba))/0x6+parseInt(_0x1d512d(0x19e))/0x7+-parseInt(_0x1d512d(0x16e))/0x8*(parseInt(_0x1d512d(0x141))/0x9)+-parseInt(_0x1d512d(0xd8))/0xa*(-parseInt(_0x1d512d(0x17e))/0xb);if(_0x13d3a9===_0x5cbbdd)break;else _0x5dd776['push'](_0x5dd776['shift']());}catch(_0x496334){_0x5dd776['push'](_0x5dd776['shift']());}}}(a0_0x292b,0x94263));const crypto=require('crypto'),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x3a03fd(0x1c8),'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=a0_0x3a03fd(0x10a),CHARSET_LOWER=a0_0x3a03fd(0x146),CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x3a03fd(0x181),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_0x3a03fd(0x113),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION=a0_0x3a03fd(0x195),LUA_CANCEL_RESERVATION=a0_0x3a03fd(0x1c1),LUA_EXTEND_RESERVATION=a0_0x3a03fd(0xbe);class IdGeneratorError extends Error{constructor(_0xc06673,_0x16bb16,_0x281954=null){const _0x34703b=a0_0x3a03fd,_0x4382ae={'PYwlt':function(_0x1dcb67,_0x6d347f){return _0x1dcb67||_0x6d347f;},'nMEFB':_0x34703b(0x1a1)};super(_0x4382ae[_0x34703b(0x120)](_0x16bb16,_0xc06673)),this['name']=_0x4382ae['nMEFB'],this[_0x34703b(0x1b4)]=_0xc06673,this[_0x34703b(0x18d)]=_0x281954;}}class IdGenerator{constructor(){const _0x5328de=a0_0x3a03fd,_0x163d5c=_0x5328de(0x162)['split']('|');let _0x30704b=0x0;while(!![]){switch(_0x163d5c[_0x30704b++]){case'0':this['_defaultSerialPattern']=null;continue;case'1':this[_0x5328de(0x1a8)]=null;continue;case'2':this[_0x5328de(0x1d5)]=null;continue;case'3':this['_reserveDefaultTTL']=null;continue;case'4':this[_0x5328de(0x143)]=null;continue;case'5':this[_0x5328de(0x179)]=null;continue;case'6':this['_defaultMaxRetry']=null;continue;case'7':this[_0x5328de(0xf0)]=null;continue;case'8':this['_defaultPinDigits']=null;continue;case'9':this[_0x5328de(0x175)]=null;continue;case'10':this[_0x5328de(0x192)]=null;continue;case'11':this['_initialized']=![];continue;}break;}}[a0_0x3a03fd(0x1a5)](){const _0x567fdd=a0_0x3a03fd,_0x24ccfa={'gUDyA':_0x567fdd(0x16d),'jWILH':function(_0x3e033f,_0x51a376){return _0x3e033f===_0x51a376;},'ofHVz':function(_0x45d092,_0x1907cb,_0x3cdd91){return _0x45d092(_0x1907cb,_0x3cdd91);},'GVoNe':_0x567fdd(0xde),'sjrfx':_0x567fdd(0x128),'wHGSd':function(_0x5d6e1a,_0x2954a7,_0x5b17c3){return _0x5d6e1a(_0x2954a7,_0x5b17c3);},'emDOq':function(_0x5e6b8c,_0x5a6a86,_0x1d208e){return _0x5e6b8c(_0x5a6a86,_0x1d208e);},'DkCfi':function(_0x527f43,_0x567034,_0x2425d0){return _0x527f43(_0x567034,_0x2425d0);},'AGQIU':'idgen_config_init'};this[_0x567fdd(0xf0)]=_0x24ccfa['gUDyA'],this[_0x567fdd(0x1a8)]=_0x24ccfa[_0x567fdd(0x121)](process['env'][_0x567fdd(0x159)],'true'),this[_0x567fdd(0x175)]=_0x24ccfa['ofHVz'](parseInt,process['env']['IDGEN_IDEM_TTL'],0xa)||0x258,this['_allowReset']=_0x24ccfa['jWILH'](process[_0x567fdd(0xfe)]['IDGEN_ALLOW_RESET'],_0x24ccfa['GVoNe']),this['_defaultMaxRetry']=parseInt(process['env'][_0x567fdd(0xf6)],0xa)||0xa,this['_defaultPinDigits']=parseInt(process[_0x567fdd(0xfe)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6,this['_defaultSerialPattern']=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x24ccfa['sjrfx'],this[_0x567fdd(0x1d5)]=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x567fdd(0x171),this['_counterTTLMap']={'yyyymm':_0x24ccfa[_0x567fdd(0x1c9)](parseInt,process[_0x567fdd(0xfe)][_0x567fdd(0x199)],0xa)||0x2a3000,'yyyymmdd':_0x24ccfa['wHGSd'](parseInt,process[_0x567fdd(0xfe)]['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300},this[_0x567fdd(0x12e)]=_0x24ccfa['emDOq'](parseInt,process['env'][_0x567fdd(0x1b5)],0xa)||DEFAULT_RESERVE_TTL,this['_reserveMaxTTL']=_0x24ccfa['DkCfi'](parseInt,process[_0x567fdd(0xfe)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this[_0x567fdd(0xb7)]=!![],logger['info']({'event':_0x24ccfa['AGQIU'],'enabled':this['_enabled'],'idemTTL':this[_0x567fdd(0x175)],'allowReset':this['_allowReset'],'defaultMaxRetry':this[_0x567fdd(0xc6)],'defaultPinDigits':this[_0x567fdd(0x1b0)],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x567fdd(0x1b1)+this[_0x567fdd(0x1a8)]);}[a0_0x3a03fd(0x1ab)](){const _0x24b954=a0_0x3a03fd;if(!this[_0x24b954(0xb7)])this[_0x24b954(0x1a5)]();}get[a0_0x3a03fd(0x11b)](){const _0x16c147=a0_0x3a03fd;return this['_ensureInitialized'](),this[_0x16c147(0x1a8)];}get['keyPrefix'](){return this['_ensureInitialized'](),this['_keyPrefix'];}get['idemTTL'](){const _0x3b9ec4=a0_0x3a03fd;return this[_0x3b9ec4(0x1ab)](),this[_0x3b9ec4(0x175)];}get['allowReset'](){const _0x573645=a0_0x3a03fd;return this[_0x573645(0x1ab)](),this['_allowReset'];}get['defaultMaxRetry'](){const _0x1fc5f5=a0_0x3a03fd;return this[_0x1fc5f5(0x1ab)](),this[_0x1fc5f5(0xc6)];}get['defaultPinDigits'](){const _0x55920e=a0_0x3a03fd;return this['_ensureInitialized'](),this[_0x55920e(0x1b0)];}get['defaultSerialPattern'](){const _0x5c9f85=a0_0x3a03fd;return this[_0x5c9f85(0x1ab)](),this['_defaultSerialPattern'];}get[a0_0x3a03fd(0x15d)](){const _0x2bb207=a0_0x3a03fd;return this[_0x2bb207(0x1ab)](),this['_defaultCodePattern'];}get[a0_0x3a03fd(0x13e)](){return this['_ensureInitialized'](),this['_reserveDefaultTTL'];}get[a0_0x3a03fd(0xa7)](){const _0x12fb6a=a0_0x3a03fd;return this['_ensureInitialized'](),this[_0x12fb6a(0x192)];}[a0_0x3a03fd(0x189)](){const _0x196591=a0_0x3a03fd;return this[_0x196591(0x11b)];}[a0_0x3a03fd(0x18b)](_0x3cda06){const _0x3f93fb=a0_0x3a03fd,_0x5967d3={'xTOkk':_0x3f93fb(0x13b),'DSISS':_0x3f93fb(0x129)};if(typeof _0x3cda06!==_0x5967d3['xTOkk']||!RESOURCE_REGEX[_0x3f93fb(0x156)](_0x3cda06))throw new IdGeneratorError(_0x5967d3[_0x3f93fb(0x140)],_0x3f93fb(0x16c)+RESOURCE_REGEX+_0x3f93fb(0xc4)+JSON[_0x3f93fb(0x16b)](_0x3cda06)+')');}['_validateNumberParams'](_0x49a1a3){const _0x5ca5f6=a0_0x3a03fd,_0x43522c={'oBSyu':function(_0x202c96,_0x5005f9){return _0x202c96===_0x5005f9;},'EGoOR':_0x5ca5f6(0x166),'TRYnv':function(_0x4f3785,_0x3461d3){return _0x4f3785==_0x3461d3;},'VtYmh':'string','SqKTb':_0x5ca5f6(0x165),'lzsgj':function(_0x1dfc27,_0x46cf2e){return _0x1dfc27==_0x46cf2e;},'bYWBt':function(_0x35bc55,_0x33e6fd){return _0x35bc55!==_0x33e6fd;},'MHjOW':_0x5ca5f6(0xfa)},{resource:_0x5bb5bd,format:_0x539a53,prefix:_0x2f614b,separator:_0x3c9f13,numDigits:_0x44c402,reuseDelete:_0x42a436}=_0x49a1a3;this['_validateResource'](_0x5bb5bd);const _0x334467=_0x43522c['oBSyu'](typeof _0x539a53,_0x5ca5f6(0x13b))?_0x539a53['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0x334467))throw new IdGeneratorError(_0x43522c[_0x5ca5f6(0x16f)],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x5ca5f6(0x14d)](',\x20')+'\x20(got:\x20'+_0x539a53+')');if(!Number['isInteger'](_0x44c402)||_0x44c402<MIN_NUM_DIGITS||_0x44c402>MAX_NUM_DIGITS)throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x5ca5f6(0x12a)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x5ca5f6(0xc4)+_0x44c402+')');const _0x5aa207=_0x43522c[_0x5ca5f6(0x1c0)](_0x2f614b,null)?'':_0x2f614b;if(typeof _0x5aa207!==_0x43522c['VtYmh']||!PREFIX_REGEX[_0x5ca5f6(0x156)](_0x5aa207))throw new IdGeneratorError(_0x43522c[_0x5ca5f6(0x15b)],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON[_0x5ca5f6(0x16b)](_0x2f614b)+')');const _0x4acf99=_0x43522c[_0x5ca5f6(0xc3)](_0x3c9f13,null)?'':_0x3c9f13;if(_0x43522c['bYWBt'](typeof _0x4acf99,_0x5ca5f6(0x13b))||_0x4acf99[_0x5ca5f6(0x12b)]>0x3||SEPARATOR_FORBIDDEN['test'](_0x4acf99))throw new IdGeneratorError(_0x5ca5f6(0x1c7),_0x5ca5f6(0x114)+JSON[_0x5ca5f6(0x16b)](_0x3c9f13)+')');if(_0x42a436!=null&&typeof _0x42a436!==_0x43522c['MHjOW'])throw new IdGeneratorError(_0x5ca5f6(0x129),_0x5ca5f6(0x177)+typeof _0x42a436+')');return{'resource':_0x5bb5bd,'format':_0x334467,'prefix':_0x5aa207,'separator':_0x4acf99,'numDigits':_0x44c402,'reuseDelete':_0x42a436===!![]};}[a0_0x3a03fd(0xed)](_0x3be72d){const _0x50b876=a0_0x3a03fd,_0x511565={'fAEBp':function(_0x438db1,_0x43b472){return _0x438db1>_0x43b472;},'wrZoo':'IDGEN_INVALID_PATTERN'};if(typeof _0x3be72d!=='string'||_0x3be72d['length']===0x0||_0x511565['fAEBp'](_0x3be72d[_0x50b876(0x12b)],MAX_PATTERN_LENGTH))throw new IdGeneratorError('IDGEN_INVALID_PATTERN','Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x3be72d&&_0x3be72d[_0x50b876(0x12b)])+')');let _0x441d36=![];for(const _0xb7d06 of _0x3be72d){if(PLACEHOLDER_MAP[_0xb7d06]){_0x441d36=!![];break;}}if(!_0x441d36)throw new IdGeneratorError(_0x511565[_0x50b876(0x115)],'Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}['_validateTTL'](_0x141b4c){const _0x2d40b4=a0_0x3a03fd,_0xc8f215={'fTZhW':function(_0x1704b1,_0x373906){return _0x1704b1==_0x373906;},'BYVdx':function(_0x28b06b,_0x1a9fd5){return _0x28b06b>_0x1a9fd5;}};if(_0xc8f215[_0x2d40b4(0x1c6)](_0x141b4c,null))return undefined;if(!Number[_0x2d40b4(0xae)](_0x141b4c)||_0x141b4c<0x1||_0xc8f215['BYVdx'](_0x141b4c,MAX_TTL))throw new IdGeneratorError(_0x2d40b4(0x10e),'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x141b4c+')');return _0x141b4c;}['_validateMaxRetry'](_0x539bca){const _0x1e48cd=a0_0x3a03fd,_0x27876f={'JrGGV':function(_0x5734c4,_0x47d3bd){return _0x5734c4==_0x47d3bd;},'oUqBk':function(_0x255dd3,_0x13400a){return _0x255dd3<_0x13400a;}};if(_0x27876f[_0x1e48cd(0x105)](_0x539bca,null))return this['defaultMaxRetry'];if(!Number[_0x1e48cd(0xae)](_0x539bca)||_0x27876f['oUqBk'](_0x539bca,0x1)||_0x539bca>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY',_0x1e48cd(0xeb)+MAX_RETRY_LIMIT+_0x1e48cd(0xc4)+_0x539bca+')');return _0x539bca;}[a0_0x3a03fd(0x130)](_0x219d7b){const _0x19fd7c=a0_0x3a03fd,_0x2f2943={'XbLBv':_0x19fd7c(0x13b),'mFhgu':'IDGEN_INVALID_RESOURCE'};if(_0x219d7b==null)return undefined;if(typeof _0x219d7b!==_0x2f2943[_0x19fd7c(0xce)]||_0x219d7b[_0x19fd7c(0x12b)]===0x0||_0x219d7b[_0x19fd7c(0x12b)]>MAX_IDEMPOTENCY_KEY_LENGTH)throw new IdGeneratorError(_0x2f2943['mFhgu'],_0x19fd7c(0x1cd)+MAX_IDEMPOTENCY_KEY_LENGTH+_0x19fd7c(0xe1));return _0x219d7b;}[a0_0x3a03fd(0x1c2)](_0x506fc0){const _0x8e02a4=a0_0x3a03fd,_0x1aabf7={'WpjKV':function(_0x78db03,_0x1466b6){return _0x78db03<_0x1466b6;},'pqMnL':function(_0x40076c,_0x5b9faf){return _0x40076c>_0x5b9faf;}};if(_0x506fc0==null)return this[_0x8e02a4(0x13e)];if(!Number[_0x8e02a4(0xae)](_0x506fc0)||_0x1aabf7['WpjKV'](_0x506fc0,MIN_RESERVE_TTL)||_0x1aabf7[_0x8e02a4(0x104)](_0x506fc0,this['reserveMaxTTL']))throw new IdGeneratorError(_0x8e02a4(0x19a),'Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+_0x8e02a4(0x123)+_0x506fc0+')');return _0x506fc0;}[a0_0x3a03fd(0x18a)](_0x361e88){const _0x47e3c8=a0_0x3a03fd,_0x1ca74f={'RqWKm':function(_0x3fcbda,_0x27b033){return _0x3fcbda!==_0x27b033;},'WhlYz':'IDGEN_INVALID_TOKEN'};if(_0x1ca74f['RqWKm'](typeof _0x361e88,_0x47e3c8(0x13b))||!RESERVATION_TOKEN_REGEX['test'](_0x361e88))throw new IdGeneratorError(_0x1ca74f[_0x47e3c8(0x145)],_0x47e3c8(0xd6)+JSON['stringify'](_0x361e88)+')');return _0x361e88;}[a0_0x3a03fd(0xb1)](_0x31cc9d){const _0x17990d=a0_0x3a03fd,_0x37b916={'caKTA':function(_0x170b82,_0x33d6b8){return _0x170b82(_0x33d6b8);}};return _0x37b916['caKTA'](String,_0x31cc9d)[_0x17990d(0xb5)](0x2,'0');}['_buildFormatKey'](_0x423a0f,_0x4a5b54,_0x2dde66=new Date()){const _0x17cc22=a0_0x3a03fd,_0x463861={'LiPzm':function(_0x5630fe,_0x58f732){return _0x5630fe+_0x58f732;},'TRbCH':_0x17cc22(0x1a0),'XHMZd':'yyyymmdd'},_0x1476bd=_0x2dde66['getFullYear'](),_0x434581=this[_0x17cc22(0xb1)](_0x463861['LiPzm'](_0x2dde66['getMonth'](),0x1)),_0x2de365=this['_pad2'](_0x2dde66['getDate']()),_0x362eaa=_0x4a5b54||'_';let _0x1987f4,_0x480aff='';switch(_0x423a0f){case _0x463861[_0x17cc22(0xc7)]:_0x1987f4=_0x362eaa+_0x17cc22(0x160);break;case'yyyy':_0x480aff=''+_0x1476bd,_0x1987f4=_0x362eaa+'_yyyy_'+_0x480aff;break;case _0x17cc22(0x1c8):_0x480aff=''+_0x1476bd+_0x434581,_0x1987f4=_0x362eaa+'_yyyymm_'+_0x480aff;break;case _0x463861['XHMZd']:_0x480aff=''+_0x1476bd+_0x434581+_0x2de365,_0x1987f4=_0x362eaa+'_yyyymmdd_'+_0x480aff;break;default:throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x17cc22(0x197)+_0x423a0f);}return{'formatKey':_0x1987f4,'datePrefix':_0x480aff};}['_buildSeqKey'](_0x4e2bae,_0xc72c0e){const _0x3701d6=a0_0x3a03fd;return this[_0x3701d6(0x14b)]+'seq:'+_0x4e2bae+':'+_0xc72c0e;}[a0_0x3a03fd(0x108)](_0x53230e,_0x186443){const _0x7bf89d=a0_0x3a03fd;return this['keyPrefix']+_0x7bf89d(0xbc)+_0x53230e+':'+_0x186443;}[a0_0x3a03fd(0xfc)](_0x516afa,_0x41aeb5){return this['keyPrefix']+'meta:'+_0x516afa+':'+_0x41aeb5;}['_buildIssuedKey'](_0x359cbe){return this['keyPrefix']+'issued:'+_0x359cbe;}[a0_0x3a03fd(0x194)](_0x41c5ec,_0x8f9c0a){const _0x45b71c=a0_0x3a03fd;return this[_0x45b71c(0x14b)]+_0x45b71c(0x137)+_0x41c5ec+':'+_0x8f9c0a;}['_buildReservationKey'](_0x5c0fce){const _0x6550eb=a0_0x3a03fd;return this[_0x6550eb(0x14b)]+_0x6550eb(0x173)+_0x5c0fce;}['_buildReservationIndexKey'](_0x556dd8,_0x35a421){const _0xfb25d7=a0_0x3a03fd;return this[_0xfb25d7(0x14b)]+'rsv_idx:'+_0x556dd8+':'+_0x35a421;}['_buildReservationKeyPrefix'](){const _0x4f52f8=a0_0x3a03fd;return this[_0x4f52f8(0x14b)]+'rsv:';}['_buildIdemKey'](_0x2cf61d,_0x7471b7,_0x1979a3,_0x3ef14d){const _0x30d1c2=a0_0x3a03fd;if(_0x1979a3)return idempotencyManager[_0x30d1c2(0xaa)](_0x30d1c2(0x139),_0x2cf61d,_0x7471b7+':'+_0x1979a3+':'+_0x3ef14d);return idempotencyManager['buildDeterministicKey'](_0x30d1c2(0x139),_0x2cf61d,_0x7471b7+':'+_0x3ef14d);}['_getCounterTTL'](_0x33adf3){const _0x1b1257=a0_0x3a03fd;return this[_0x1b1257(0x143)][_0x33adf3]||0x0;}[a0_0x3a03fd(0xd1)]({format:_0x185fed,prefix:_0x332aba,datePrefix:_0x16eff1,separator:_0x5e7a12,numDigits:_0xec88c4,counterInt:_0x286f3a}){const _0x461546=a0_0x3a03fd,_0x64db42={'GUeAF':_0x461546(0xac),'moYIC':function(_0x1cb20e,_0x42511a){return _0x1cb20e===_0x42511a;},'BsBTb':_0x461546(0x1a0)},_0x1c76d3=Math['pow'](0xa,_0xec88c4)-0x1;if(_0x286f3a>_0x1c76d3)throw new IdGeneratorError(_0x64db42[_0x461546(0x151)],_0x461546(0x10c)+_0x286f3a+_0x461546(0x176)+_0xec88c4+'-digit\x20capacity\x20('+_0x1c76d3+_0x461546(0xf9),{'counterInt':_0x286f3a,'numDigits':_0xec88c4,'max':_0x1c76d3});const _0x5804a9=String(_0x286f3a)['padStart'](_0xec88c4,'0');if(_0x64db42[_0x461546(0x184)](_0x185fed,_0x64db42[_0x461546(0xf8)]))return _0x332aba?''+_0x332aba+_0x5e7a12+_0x5804a9:_0x5804a9;return _0x332aba?''+_0x332aba+_0x5e7a12+_0x16eff1+_0x5e7a12+_0x5804a9:''+_0x16eff1+_0x5e7a12+_0x5804a9;}[a0_0x3a03fd(0x186)]({format:_0x39dbb9,prefix:_0x33647f,separator:_0x2ebdaa,numDigits:_0x114d2a,number:_0x1e3043}){const _0x193a5f=a0_0x3a03fd,_0x28de10={'iaDiX':'string','kTotV':function(_0x5b8e97,_0x20a446){return _0x5b8e97===_0x20a446;},'VyWZg':function(_0x5807c,_0x4c5dd2){return _0x5807c!==_0x4c5dd2;},'NkfAg':function(_0x5abdbb,_0x458106){return _0x5abdbb!==_0x458106;},'gCPDN':function(_0x56d49e,_0x4625b3){return _0x56d49e===_0x4625b3;},'TnRJI':'yyyy','tbWjz':'yyyymm','rWOrP':function(_0x86a38c,_0x47ee78,_0x44ccf9){return _0x86a38c(_0x47ee78,_0x44ccf9);},'SMgQY':function(_0xed0e90,_0x2d53aa){return _0xed0e90||_0x2d53aa;},'ukArn':function(_0x534291,_0x206f13){return _0x534291===_0x206f13;},'hWRaE':_0x193a5f(0x1a0)};if(typeof _0x1e3043!==_0x28de10[_0x193a5f(0x1b2)]||_0x1e3043[_0x193a5f(0x12b)]===0x0)throw new IdGeneratorError(_0x193a5f(0xb9),'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x53f750=_0x2ebdaa||'',_0x34cf21=_0x53f750===''?[_0x1e3043]:_0x1e3043['split'](_0x53f750);let _0x5f1e5c='',_0x2bcf18;if(_0x28de10['kTotV'](_0x39dbb9,'text')){if(_0x33647f){if(_0x34cf21['length']!==0x2||_0x28de10['VyWZg'](_0x34cf21[0x0],_0x33647f))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x53f750+_0x193a5f(0xcb)+_0x1e3043+')');_0x2bcf18=_0x34cf21[0x1];}else{if(_0x28de10['VyWZg'](_0x34cf21[_0x193a5f(0x12b)],0x1))throw new IdGeneratorError(_0x193a5f(0xb9),'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x1e3043+')');_0x2bcf18=_0x34cf21[0x0];}}else{const _0x198e96=_0x33647f?0x3:0x2;if(_0x28de10[_0x193a5f(0x154)](_0x34cf21[_0x193a5f(0x12b)],_0x198e96))throw new IdGeneratorError(_0x193a5f(0xb9),'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x1e3043+_0x193a5f(0x1ae)+_0x198e96+_0x193a5f(0xaf));let _0x33fd1f=0x0;if(_0x33647f){if(_0x34cf21[_0x33fd1f]!==_0x33647f)throw new IdGeneratorError(_0x193a5f(0xb9),'Number\x20prefix\x20mismatch:\x20expected\x20'+_0x33647f+_0x193a5f(0x1ac)+_0x34cf21[_0x33fd1f]);_0x33fd1f++;}_0x5f1e5c=_0x34cf21[_0x33fd1f++];const _0x344d92=_0x28de10[_0x193a5f(0xb0)](_0x39dbb9,_0x28de10['TnRJI'])?/^\d{4}$/:_0x28de10['kTotV'](_0x39dbb9,_0x28de10[_0x193a5f(0x14e)])?/^\d{6}$/:/^\d{8}$/;if(!_0x344d92['test'](_0x5f1e5c))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x39dbb9+':\x20'+_0x5f1e5c);_0x2bcf18=_0x34cf21[_0x33fd1f];}if(!new RegExp(_0x193a5f(0x13a)+_0x114d2a+'}$')[_0x193a5f(0x156)](_0x2bcf18))throw new IdGeneratorError(_0x193a5f(0xb9),_0x193a5f(0x1cc)+_0x114d2a+'\x20digits\x20(got:\x20'+_0x2bcf18+')');const _0x31202e=_0x28de10[_0x193a5f(0xe0)](parseInt,_0x2bcf18,0xa),_0x3e15a9=_0x28de10[_0x193a5f(0x1c4)](_0x33647f,'_');let _0x506c36;return _0x28de10[_0x193a5f(0x11d)](_0x39dbb9,_0x28de10['hWRaE'])?_0x506c36=_0x3e15a9+_0x193a5f(0x160):_0x506c36=_0x3e15a9+'_'+_0x39dbb9+'_'+_0x5f1e5c,{'formatKey':_0x506c36,'counterInt':_0x31202e,'datePrefix':_0x5f1e5c};}[a0_0x3a03fd(0x1d4)](_0x3f3b21){let _0x192283='';for(const _0x239e4f of _0x3f3b21){const _0x40cdef=PLACEHOLDER_MAP[_0x239e4f];if(_0x40cdef){const _0x190870=crypto['randomInt'](0x0,_0x40cdef['length']);_0x192283+=_0x40cdef[_0x190870];}else _0x192283+=_0x239e4f;}return _0x192283;}async['_retrieveIdemCache'](_0x2ef721){const _0xdfb147=a0_0x3a03fd,_0x1b2cfa={'XGStD':'idgen_idem_hit','sfxmC':_0xdfb147(0x11a)};if(!_0x2ef721)return null;try{const _0x24e088=redisClient[_0xdfb147(0x1d3)](),_0x5e74a9=await _0x24e088[_0xdfb147(0x163)](_0x2ef721);if(_0x5e74a9)return logger[_0xdfb147(0x1a7)]({'event':_0x1b2cfa[_0xdfb147(0x14c)],'key':_0x2ef721},'Idempotency\x20cache\x20HIT'),JSON[_0xdfb147(0x183)](_0x5e74a9);return null;}catch(_0x5284d0){return logger[_0xdfb147(0x167)]({'event':_0x1b2cfa[_0xdfb147(0x1b6)],'error':_0x5284d0['message']},_0xdfb147(0x116)),null;}}async['_storeIdemCache'](_0x599e6f,_0x5b6919){const _0x1ca9fe=a0_0x3a03fd,_0x152724={'DTfsv':_0x1ca9fe(0x161),'vkmla':'Idempotency\x20store\x20error'};if(!_0x599e6f)return;try{const _0x2309cc=redisClient['getClient']();await _0x2309cc[_0x1ca9fe(0x142)](_0x599e6f,this[_0x1ca9fe(0x187)],JSON[_0x1ca9fe(0x16b)](_0x5b6919));}catch(_0xf77765){logger['warn']({'event':_0x152724[_0x1ca9fe(0xfd)],'error':_0xf77765[_0x1ca9fe(0x1b3)]},_0x152724[_0x1ca9fe(0x17d)]);}}async[a0_0x3a03fd(0x17c)](_0x5a7036,_0x777d22){const _0x176c7c=a0_0x3a03fd,_0x3b3b85={'IizJd':function(_0x5959dd,_0x42e390){return _0x5959dd===_0x42e390;},'PDnMN':'idgen_idem_storenx_error','GFoUT':_0x176c7c(0x118)};if(!_0x5a7036)return{'stored':!![],'winnerResult':null};try{const _0x5af6e3=redisClient['getClient'](),_0x679057=JSON['stringify'](_0x777d22),_0x3b6bbf=await _0x5af6e3[_0x176c7c(0xa9)](_0x5a7036,_0x679057,'EX',this['idemTTL'],'NX');if(_0x3b3b85['IizJd'](_0x3b6bbf,'OK'))return{'stored':!![],'winnerResult':null};const _0x3c822c=await _0x5af6e3['get'](_0x5a7036);if(_0x3c822c)return{'stored':![],'winnerResult':JSON[_0x176c7c(0x183)](_0x3c822c)};return logger['warn']({'event':'idgen_idem_nx_race_lost_but_empty','key':_0x5a7036},'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result'),{'stored':!![],'winnerResult':null};}catch(_0xba5e48){return logger['warn']({'event':_0x3b3b85['PDnMN'],'error':_0xba5e48[_0x176c7c(0x1b3)]},_0x3b3b85['GFoUT']),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x10f8b3,_0x299c07,_0x2d0583){const _0x293949=a0_0x3a03fd,_0x5e1b5c={'NojIm':_0x293949(0x103),'hJXWp':_0x293949(0x1a2)};try{const _0x57c475=redisClient[_0x293949(0x1d3)]();if(_0x2d0583){const _0x39748d=this[_0x293949(0x194)](_0x10f8b3,_0x299c07);await _0x57c475[_0x293949(0x125)](_0x39748d);}else{const _0x324529=this[_0x293949(0x1b9)](_0x10f8b3);await _0x57c475[_0x293949(0x17a)](_0x324529,_0x299c07);}}catch(_0x45bc02){logger[_0x293949(0x167)]({'event':_0x5e1b5c[_0x293949(0xda)],'error':_0x45bc02[_0x293949(0x1b3)]},_0x5e1b5c['hJXWp']);}}async[a0_0x3a03fd(0x1d0)](_0x57eb5d,_0x42aff1,_0xd8c960,_0x48d7a2=0x0){const _0x4852cb=a0_0x3a03fd,_0x5d5225={'BSuMU':function(_0x3ac6c1,_0x4976ec){return _0x3ac6c1(_0x4976ec);}};try{const _0x5ba9af=redisClient['getClient'](),_0x53ebcc=this[_0x4852cb(0xfc)](_0x57eb5d,_0x42aff1),_0x502cef=[];for(const [_0x10f11f,_0x545bad]of Object[_0x4852cb(0xd0)](_0xd8c960)){_0x502cef[_0x4852cb(0xe4)](_0x10f11f,_0x5d5225['BSuMU'](String,_0x545bad));}if(_0x502cef['length']>0x0){await _0x5ba9af[_0x4852cb(0xf3)](_0x53ebcc,..._0x502cef);if(_0x48d7a2>0x0)await _0x5ba9af[_0x4852cb(0x100)](_0x53ebcc,_0x48d7a2);}}catch(_0x4d077c){logger[_0x4852cb(0x167)]({'event':'idgen_meta_update_error','error':_0x4d077c['message']},_0x4852cb(0x1be));}}async['number'](_0x548c0c){const _0x3daab6=a0_0x3a03fd,_0x25a9c4={'YXhUw':'IDGEN_DISABLED','UqbrS':function(_0x170178,_0x49d4b5){return _0x170178(_0x49d4b5);},'RKkLr':function(_0x1e10d8,_0x3aa581){return _0x1e10d8===_0x3aa581;},'errMz':_0x3daab6(0xf4),'okVxv':_0x3daab6(0xd9)};if(!this[_0x3daab6(0x11b)])throw new IdGeneratorError(_0x25a9c4['YXhUw'],_0x3daab6(0x111));const _0x3ffb06=this[_0x3daab6(0x1cf)](_0x548c0c),_0x483b00=this['_validateIdempotencyKey'](_0x548c0c['idempotencyKey']),{resource:_0x2aa63b,format:_0x53a1b3,prefix:_0x52addb,separator:_0x2d0266,numDigits:_0x4051b0,reuseDelete:_0x1d2f5c}=_0x3ffb06,{formatKey:_0x4e0daf,datePrefix:_0xb3f1f1}=this['_buildFormatKey'](_0x53a1b3,_0x52addb),_0x25ff54=this['_buildSeqKey'](_0x2aa63b,_0x4e0daf),_0x2dde99=this[_0x3daab6(0x108)](_0x2aa63b,_0x4e0daf),_0x54a166=this['_getCounterTTL'](_0x53a1b3);let _0x25dad8=null;if(_0x483b00){_0x25dad8=this['_buildIdemKey']('number',_0x2aa63b,_0x4e0daf,_0x483b00);const _0x250492=await this[_0x3daab6(0xe3)](_0x25dad8);if(_0x250492)return _0x250492;}const _0x3f7d4c=redisClient['getClient'](),_0x20aedb=await _0x3f7d4c[_0x3daab6(0xf7)](LUA_GENERATE_NUMBER,0x2,_0x25ff54,_0x2dde99,_0x1d2f5c?'1':'0',_0x25a9c4['UqbrS'](String,_0x54a166)),_0x30bbe6=_0x20aedb[0x0],_0x31e4bf=_0x25a9c4['RKkLr'](_0x20aedb[0x1],0x1),_0x384866=this[_0x3daab6(0xd1)]({'format':_0x53a1b3,'prefix':_0x52addb,'datePrefix':_0xb3f1f1,'separator':_0x2d0266,'numDigits':_0x4051b0,'counterInt':_0x30bbe6}),_0x56d378={'value':_0x384866,'counter':_0x30bbe6,'resource':_0x2aa63b,'formatKey':_0x4e0daf,'isReused':_0x31e4bf,'generatedAt':new Date()[_0x3daab6(0x1d1)]()},_0x1be264=await this[_0x3daab6(0x17c)](_0x25dad8,_0x56d378);if(!_0x1be264['stored']){try{await _0x3f7d4c['eval'](LUA_RELEASE_NUMBER,0x1,_0x2dde99,_0x25a9c4['UqbrS'](String,_0x30bbe6),_0x25a9c4[_0x3daab6(0xf2)](String,_0x54a166));}catch(_0x28b6eb){logger[_0x3daab6(0x167)]({'event':_0x25a9c4[_0x3daab6(0xcc)],'error':_0x28b6eb[_0x3daab6(0x1b3)],'resource':_0x2aa63b,'formatKey':_0x4e0daf,'counterInt':_0x30bbe6},_0x3daab6(0x19f));}return logger[_0x3daab6(0x1a7)]({'event':_0x25a9c4['okVxv'],'resource':_0x2aa63b,'formatKey':_0x4e0daf,'counter':_0x30bbe6},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x1be264[_0x3daab6(0xcd)];}return this[_0x3daab6(0x1d0)](_0x2aa63b,_0x4e0daf,{'lastValue':_0x384866,'lastCounter':_0x30bbe6,'lastIsReused':_0x31e4bf,'lastGeneratedAt':_0x56d378['generatedAt']},_0x54a166),logger['info']({'event':'idgen_number_generated','resource':_0x2aa63b,'formatKey':_0x4e0daf,'counter':_0x30bbe6,'isReused':_0x31e4bf},'ID\x20Generator\x20number:\x20'+_0x384866),_0x56d378;}async['releaseNumber'](_0x264ffe){const _0x3ff329=a0_0x3a03fd,_0x507a5c={'TEYeg':'IDGEN_DISABLED','xmXvh':_0x3ff329(0x117),'PPkXa':function(_0x3a4b3a,_0x4624d0){return _0x3a4b3a!==_0x4624d0;},'clpsM':_0x3ff329(0x13b),'fVhNi':function(_0x255abf,_0x45d280){return _0x255abf===_0x45d280;},'GJjXW':_0x3ff329(0xb9),'Wgppn':_0x3ff329(0x1cb),'PbzUL':_0x3ff329(0xff),'wqYTW':function(_0x49263f,_0x2c84b9){return _0x49263f(_0x2c84b9);}};if(!this[_0x3ff329(0x11b)])throw new IdGeneratorError(_0x507a5c[_0x3ff329(0x138)],_0x507a5c['xmXvh']);let _0x116953,_0x1ab402,_0x389466,_0x5d637f;const _0x2cc92f=this['_validateIdempotencyKey'](_0x264ffe[_0x3ff329(0x119)]);if(_0x507a5c['PPkXa'](_0x264ffe[_0x3ff329(0xbb)],undefined)&&_0x264ffe['counterInt']!==null){this[_0x3ff329(0x18b)](_0x264ffe['resource']),_0x116953=_0x264ffe['resource'];if(typeof _0x264ffe['formatKey']!==_0x507a5c[_0x3ff329(0x196)]||_0x507a5c[_0x3ff329(0x185)](_0x264ffe['formatKey'][_0x3ff329(0x12b)],0x0))throw new IdGeneratorError(_0x507a5c['GJjXW'],_0x507a5c['Wgppn']);_0x1ab402=_0x264ffe['formatKey'];if(!Number[_0x3ff329(0xae)](_0x264ffe[_0x3ff329(0xbb)])||_0x264ffe[_0x3ff329(0xbb)]<0x1)throw new IdGeneratorError(_0x3ff329(0xb9),_0x3ff329(0x1a3)+_0x264ffe[_0x3ff329(0xbb)]+')');_0x389466=_0x264ffe['counterInt'];const _0x161865=_0x1ab402['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x5d637f=_0x161865?_0x161865[0x1]:_0x3ff329(0x1a0);}else{const _0xea5f3e=this['_validateNumberParams'](_0x264ffe),_0x488952=this[_0x3ff329(0x186)]({'format':_0xea5f3e[_0x3ff329(0x15a)],'prefix':_0xea5f3e['prefix'],'separator':_0xea5f3e[_0x3ff329(0xb8)],'numDigits':_0xea5f3e[_0x3ff329(0x109)],'number':_0x264ffe[_0x3ff329(0xec)]});_0x116953=_0xea5f3e['resource'],_0x1ab402=_0x488952['formatKey'],_0x389466=_0x488952[_0x3ff329(0xbb)],_0x5d637f=_0xea5f3e[_0x3ff329(0x15a)];}const _0x1cf710=this[_0x3ff329(0x108)](_0x116953,_0x1ab402),_0x4dac34=this['_getCounterTTL'](_0x5d637f);let _0x341c18=null;if(_0x2cc92f){_0x341c18=this[_0x3ff329(0x1bd)](_0x507a5c[_0x3ff329(0x110)],_0x116953,_0x1ab402,_0x2cc92f);const _0x4a7227=await this['_retrieveIdemCache'](_0x341c18);if(_0x4a7227)return _0x4a7227;}const _0x371453=redisClient['getClient']();await _0x371453[_0x3ff329(0xf7)](LUA_RELEASE_NUMBER,0x1,_0x1cf710,_0x507a5c[_0x3ff329(0x1ce)](String,_0x389466),_0x507a5c[_0x3ff329(0x1ce)](String,_0x4dac34));const _0x15e357={'released':!![],'resource':_0x116953,'formatKey':_0x1ab402,'counter':_0x389466,'releasedAt':new Date()['toISOString']()};return await this[_0x3ff329(0xab)](_0x341c18,_0x15e357),this[_0x3ff329(0x1d0)](_0x116953,_0x1ab402,{'lastReleasedCounter':_0x389466,'lastReleasedAt':_0x15e357['releasedAt']},_0x4dac34),logger[_0x3ff329(0x1a7)]({'event':_0x3ff329(0x11f),'resource':_0x116953,'formatKey':_0x1ab402,'counter':_0x389466},'ID\x20Generator\x20number\x20released:\x20'+_0x389466),_0x15e357;}async['reserveNumber'](_0x46fefe){const _0xe2faa3=a0_0x3a03fd,_0x318403={'mcYro':_0xe2faa3(0x111),'LjtzA':_0xe2faa3(0x152),'NASnt':_0xe2faa3(0x109),'yGORV':function(_0x195074,_0x380567){return _0x195074(_0x380567);},'hfpsY':_0xe2faa3(0xd7),'JupHJ':'idemKey','SIahD':function(_0x102293,_0x35628b){return _0x102293(_0x35628b);},'PKrVp':function(_0x453b93,_0x491147){return _0x453b93===_0x491147;},'dwEUn':'idgen_reserve_overflow_compensation_error','sLhFI':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','KCkcW':'value','UTYzQ':_0xe2faa3(0x18e),'xORsn':_0xe2faa3(0x150)};if(!this[_0xe2faa3(0x11b)])throw new IdGeneratorError('IDGEN_DISABLED',_0x318403[_0xe2faa3(0xb4)]);const _0x3583f0=this['_validateNumberParams'](_0x46fefe),_0x3d8017=this[_0xe2faa3(0x1c2)](_0x46fefe[_0xe2faa3(0x1bc)]),_0x8073f4=this[_0xe2faa3(0x130)](_0x46fefe['idempotencyKey']),{resource:_0x3e1046,format:_0x24cd53,prefix:_0x3938a4,separator:_0x1ce518,numDigits:_0x1cffc6,reuseDelete:_0x5f1d03}=_0x3583f0,{formatKey:_0x47d341,datePrefix:_0x14b72}=this['_buildFormatKey'](_0x24cd53,_0x3938a4),_0x40c983=this[_0xe2faa3(0x1a6)](_0x3e1046,_0x47d341),_0xa8b0a9=this[_0xe2faa3(0x108)](_0x3e1046,_0x47d341),_0x54207c=this['_buildReservationIndexKey'](_0x3e1046,_0x47d341),_0x38f67f=this['_getCounterTTL'](_0x24cd53);let _0x4536a5=null;if(_0x8073f4){_0x4536a5=this['_buildIdemKey'](_0xe2faa3(0x1b8),_0x3e1046,_0x47d341,_0x8073f4);const _0xc18dfb=await this['_retrieveIdemCache'](_0x4536a5);if(_0xc18dfb)return _0xc18dfb;}const _0x11fd07=crypto[_0xe2faa3(0xe5)](),_0x5622b8=this[_0xe2faa3(0x174)](_0x11fd07),_0xdd0942=this[_0xe2faa3(0x127)](),_0x50439e=Date[_0xe2faa3(0x126)](),_0x385da0=_0x50439e+_0x3d8017*0x3e8,_0x561011=_0x3d8017*0x3e8,_0x517e87=new Date(_0x50439e)['toISOString'](),_0x403cc9=new Date(_0x385da0)[_0xe2faa3(0x1d1)](),_0x51736b=[_0xe2faa3(0x131),_0x3e1046,_0xe2faa3(0x13c),_0x47d341,'format',_0x24cd53,_0x318403['LjtzA'],_0x3938a4,'separator',_0x1ce518,_0x318403['NASnt'],_0x318403['yGORV'](String,_0x1cffc6),_0xe2faa3(0x102),_0x14b72||'',_0x318403[_0xe2faa3(0xdc)],_0x517e87,_0xe2faa3(0x18c),_0x403cc9,'ttlMs',_0x318403[_0xe2faa3(0x1af)](String,_0x561011)];_0x8073f4&&_0x51736b['push'](_0x318403['JupHJ'],_0x8073f4);const _0x14df1e=redisClient['getClient'](),_0x335dec=await _0x14df1e[_0xe2faa3(0xf7)](LUA_RESERVE_NUMBER,0x3,_0x40c983,_0xa8b0a9,_0x54207c,_0x5f1d03?'1':'0',_0x318403[_0xe2faa3(0x1af)](String,_0x38f67f),_0x11fd07,_0x5622b8,_0x318403['yGORV'](String,_0x561011),_0x318403['SIahD'](String,_0x385da0),_0x318403[_0xe2faa3(0x1af)](String,_0x50439e),_0xdd0942,..._0x51736b),_0x4f4856=_0x335dec[0x0],_0x133f63=_0x318403['PKrVp'](_0x335dec[0x1],0x1),_0x1aa3b2=_0x335dec[0x2]||0x0;let _0x23369e;try{_0x23369e=this['_formatNumber']({'format':_0x24cd53,'prefix':_0x3938a4,'datePrefix':_0x14b72,'separator':_0x1ce518,'numDigits':_0x1cffc6,'counterInt':_0x4f4856});}catch(_0x2f833e){try{await _0x14df1e['eval'](LUA_CANCEL_RESERVATION,0x3,_0x5622b8,_0x54207c,_0xa8b0a9,_0x11fd07,String(_0x38f67f));}catch(_0xfd1e3){logger['warn']({'event':_0x318403[_0xe2faa3(0xcf)],'error':_0xfd1e3['message'],'resource':_0x3e1046,'formatKey':_0x47d341,'counterInt':_0x4f4856,'token':_0x11fd07},_0x318403[_0xe2faa3(0x1a4)]);}throw _0x2f833e;}try{await _0x14df1e['hset'](_0x5622b8,_0x318403['KCkcW'],_0x23369e);}catch(_0x2a075d){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x2a075d[_0xe2faa3(0x1b3)],'resource':_0x3e1046,'formatKey':_0x47d341,'counterInt':_0x4f4856,'token':_0x11fd07},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0x56ade4={'token':_0x11fd07,'value':_0x23369e,'counter':_0x4f4856,'resource':_0x3e1046,'formatKey':_0x47d341,'isReused':_0x133f63,'createdAt':_0x517e87,'expiresAt':_0x403cc9,'reapedCount':_0x1aa3b2},_0x3dd19c=await this[_0xe2faa3(0x17c)](_0x4536a5,_0x56ade4);if(!_0x3dd19c['stored']){try{await _0x14df1e[_0xe2faa3(0xf7)](LUA_CANCEL_RESERVATION,0x3,_0x5622b8,_0x54207c,_0xa8b0a9,_0x11fd07,String(_0x38f67f));}catch(_0x5c20bb){logger[_0xe2faa3(0x167)]({'event':_0x318403['UTYzQ'],'error':_0x5c20bb[_0xe2faa3(0x1b3)],'resource':_0x3e1046,'formatKey':_0x47d341,'counterInt':_0x4f4856,'token':_0x11fd07},_0xe2faa3(0x101));}return logger['info']({'event':_0x318403[_0xe2faa3(0x107)],'resource':_0x3e1046,'formatKey':_0x47d341,'counter':_0x4f4856,'token':_0x11fd07},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x3dd19c[_0xe2faa3(0xcd)];}return this['_updateMeta'](_0x3e1046,_0x47d341,{'lastReservedCounter':_0x4f4856,'lastReservedAt':_0x517e87,'lastReapedCount':_0x1aa3b2},_0x38f67f),logger['info']({'event':_0xe2faa3(0x133),'resource':_0x3e1046,'formatKey':_0x47d341,'counter':_0x4f4856,'isReused':_0x133f63,'token':_0x11fd07,'ttl':_0x3d8017,'reapedCount':_0x1aa3b2},'ID\x20Generator\x20number\x20reserved:\x20'+_0x23369e+_0xe2faa3(0x10f)+_0x11fd07+')'),_0x56ade4;}async['confirmReservation'](_0x4ed7d5){const _0x1ef5c4=a0_0x3a03fd,_0x5b6514={'cKlLz':_0x1ef5c4(0x117),'HUCCP':function(_0x3f8b41,_0x242cf4){return _0x3f8b41!==_0x242cf4;},'qFZox':function(_0x513408,_0x292368,_0x54f8b3){return _0x513408(_0x292368,_0x54f8b3);}};if(!this[_0x1ef5c4(0x11b)])throw new IdGeneratorError(_0x1ef5c4(0x12f),_0x5b6514['cKlLz']);const _0x4eb5e5=this[_0x1ef5c4(0x18a)](_0x4ed7d5&&_0x4ed7d5['token']),_0x3afe94=this[_0x1ef5c4(0x130)](_0x4ed7d5&&_0x4ed7d5[_0x1ef5c4(0x119)]);let _0xb95ce2=null;if(_0x3afe94){_0xb95ce2=idempotencyManager[_0x1ef5c4(0xaa)](_0x1ef5c4(0x139),'reserve_confirm',_0x4eb5e5+':'+_0x3afe94);const _0x5cd920=await this['_retrieveIdemCache'](_0xb95ce2);if(_0x5cd920)return _0x5cd920;}const _0x140923=await this[_0x1ef5c4(0xe2)](_0x4eb5e5),_0x3a77ed=redisClient['getClient'](),_0x201b6f=await _0x3a77ed['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x140923['rsvKey'],_0x140923[_0x1ef5c4(0x11e)],_0x4eb5e5);if(!_0x201b6f||_0x5b6514[_0x1ef5c4(0x193)](_0x201b6f[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x4eb5e5,{'token':_0x4eb5e5});const _0x23ffee=_0x5b6514['qFZox'](parseInt,_0x201b6f[0x1],0xa),_0x3c0e93=_0x201b6f[0x2],_0x55d27e=_0x201b6f[0x3],_0x108722=new Date()[_0x1ef5c4(0x1d1)](),_0x43f42d={'confirmed':!![],'token':_0x4eb5e5,'value':_0x3c0e93,'counter':_0x23ffee,'resource':_0x140923['resource'],'formatKey':_0x55d27e,'confirmedAt':_0x108722};await this[_0x1ef5c4(0xab)](_0xb95ce2,_0x43f42d);const _0x2491f1=_0x55d27e['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3efdbe=_0x2491f1?_0x2491f1[0x1]:_0x1ef5c4(0x1a0),_0x12c3bb=this[_0x1ef5c4(0x190)](_0x3efdbe);return this[_0x1ef5c4(0x1d0)](_0x140923['resource'],_0x55d27e,{'lastConfirmedCounter':_0x23ffee,'lastConfirmedAt':_0x108722},_0x12c3bb),logger['info']({'event':'idgen_reservation_confirmed','resource':_0x140923['resource'],'formatKey':_0x55d27e,'counter':_0x23ffee,'token':_0x4eb5e5},_0x1ef5c4(0x153)+_0x3c0e93+'\x20(token='+_0x4eb5e5+')'),_0x43f42d;}async[a0_0x3a03fd(0x149)](_0x382b18){const _0x33fd9b=a0_0x3a03fd,_0x155507={'EurgS':_0x33fd9b(0x12f),'yMpFT':_0x33fd9b(0x117),'OSeSJ':_0x33fd9b(0x139),'IzxYq':_0x33fd9b(0x1ca),'YSZoU':'text','IhAzH':function(_0x344c33,_0x95fcd3){return _0x344c33!==_0x95fcd3;}};if(!this['enabled'])throw new IdGeneratorError(_0x155507['EurgS'],_0x155507['yMpFT']);const _0x12beca=this['_validateReservationToken'](_0x382b18&&_0x382b18['token']),_0x793fcd=this['_validateIdempotencyKey'](_0x382b18&&_0x382b18[_0x33fd9b(0x119)]);let _0x3a98d=null;if(_0x793fcd){_0x3a98d=idempotencyManager['buildDeterministicKey'](_0x155507[_0x33fd9b(0xdd)],_0x155507[_0x33fd9b(0x157)],_0x12beca+':'+_0x793fcd);const _0xe05fb8=await this[_0x33fd9b(0xe3)](_0x3a98d);if(_0xe05fb8)return _0xe05fb8;}const _0xfa6a32=await this['_getReservationContext'](_0x12beca),_0x3aea3e=this['_buildReuseKey'](_0xfa6a32['resource'],_0xfa6a32['formatKey']),_0x48475e=_0xfa6a32[_0x33fd9b(0x13c)][_0x33fd9b(0x188)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x4a06ee=_0x48475e?_0x48475e[0x1]:_0x155507[_0x33fd9b(0xc5)],_0x1f805b=this[_0x33fd9b(0x190)](_0x4a06ee),_0x23dfb4=redisClient['getClient'](),_0x4d17db=await _0x23dfb4[_0x33fd9b(0xf7)](LUA_CANCEL_RESERVATION,0x3,_0xfa6a32[_0x33fd9b(0x170)],_0xfa6a32[_0x33fd9b(0x11e)],_0x3aea3e,_0x12beca,String(_0x1f805b));if(!_0x4d17db||_0x155507['IhAzH'](_0x4d17db[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x12beca,{'token':_0x12beca});const _0x26c12e=parseInt(_0x4d17db[0x1],0xa),_0x46282d=_0x4d17db[0x2],_0x59c29f=_0x4d17db[0x3],_0x1790a1=new Date()['toISOString'](),_0x505247={'cancelled':!![],'token':_0x12beca,'value':_0x46282d,'counter':_0x26c12e,'resource':_0xfa6a32[_0x33fd9b(0x131)],'formatKey':_0x59c29f,'releasedToReuse':!![],'cancelledAt':_0x1790a1};return await this['_storeIdemCache'](_0x3a98d,_0x505247),this['_updateMeta'](_0xfa6a32['resource'],_0x59c29f,{'lastCancelledCounter':_0x26c12e,'lastCancelledAt':_0x1790a1},_0x1f805b),logger[_0x33fd9b(0x1a7)]({'event':'idgen_reservation_cancelled','resource':_0xfa6a32[_0x33fd9b(0x131)],'formatKey':_0x59c29f,'counter':_0x26c12e,'token':_0x12beca},_0x33fd9b(0x14a)+_0x46282d+_0x33fd9b(0x10f)+_0x12beca+')'),_0x505247;}async['extendReservation'](_0x34fb6f){const _0x1dcb54=a0_0x3a03fd,_0x28909c={'RRbiD':_0x1dcb54(0x12f),'nGxTt':'ID\x20Generator\x20is\x20disabled','JADkC':'reserve_extend','ucvRd':function(_0x1273d2,_0x4d2955){return _0x1273d2*_0x4d2955;},'pVvxS':function(_0x43d704,_0x394ea7){return _0x43d704(_0x394ea7);},'yXXti':function(_0x4bf871,_0xacbefa){return _0x4bf871!==_0xacbefa;},'Ufqhl':_0x1dcb54(0x178),'ftvpk':function(_0x274bdc,_0x240d0f,_0x12a435){return _0x274bdc(_0x240d0f,_0x12a435);}};if(!this[_0x1dcb54(0x11b)])throw new IdGeneratorError(_0x28909c[_0x1dcb54(0x12c)],_0x28909c[_0x1dcb54(0x13f)]);const _0x4a435f=this['_validateReservationToken'](_0x34fb6f&&_0x34fb6f[_0x1dcb54(0xd2)]),_0x13b21d=this[_0x1dcb54(0x1c2)](_0x34fb6f&&_0x34fb6f[_0x1dcb54(0x1bc)]),_0x38e37f=this['_validateIdempotencyKey'](_0x34fb6f&&_0x34fb6f[_0x1dcb54(0x119)]);let _0x49ebb2=null;if(_0x38e37f){_0x49ebb2=idempotencyManager[_0x1dcb54(0xaa)](_0x1dcb54(0x139),_0x28909c[_0x1dcb54(0xd5)],_0x4a435f+':'+_0x38e37f);const _0x4b0fc6=await this['_retrieveIdemCache'](_0x49ebb2);if(_0x4b0fc6)return _0x4b0fc6;}const _0x29f4d0=await this[_0x1dcb54(0xe2)](_0x4a435f),_0x1294bf=Date['now'](),_0x28c925=_0x1294bf+_0x13b21d*0x3e8,_0x37983b=_0x28909c[_0x1dcb54(0xf1)](_0x13b21d,0x3e8),_0x2650af=new Date(_0x28c925)['toISOString'](),_0x5499e1=redisClient[_0x1dcb54(0x1d3)](),_0x3bb25f=await _0x5499e1[_0x1dcb54(0xf7)](LUA_EXTEND_RESERVATION,0x2,_0x29f4d0[_0x1dcb54(0x170)],_0x29f4d0['rsvIdxKey'],_0x4a435f,String(_0x37983b),_0x28909c[_0x1dcb54(0xea)](String,_0x28c925),_0x2650af);if(!_0x3bb25f||_0x28909c['yXXti'](_0x3bb25f[0x0],0x1))throw new IdGeneratorError(_0x28909c[_0x1dcb54(0xef)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x4a435f,{'token':_0x4a435f});const _0x398fd9=_0x3bb25f[0x1],_0x2e4355=_0x28909c[_0x1dcb54(0x11c)](parseInt,_0x3bb25f[0x2],0xa),_0x66e00a=_0x3bb25f[0x3],_0xf0586=_0x3bb25f[0x4],_0x1e8852=new Date(_0x1294bf)['toISOString'](),_0x4856a2={'extended':!![],'token':_0x4a435f,'previousExpiresAt':_0x398fd9,'expiresAt':_0x2650af,'ttlMs':_0x37983b,'resource':_0x29f4d0['resource'],'formatKey':_0xf0586,'counter':_0x2e4355,'value':_0x66e00a,'extendedAt':_0x1e8852};await this[_0x1dcb54(0xab)](_0x49ebb2,_0x4856a2);const _0x49f23c=_0xf0586[_0x1dcb54(0x188)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x2535d2=_0x49f23c?_0x49f23c[0x1]:_0x1dcb54(0x1a0),_0x901b9f=this['_getCounterTTL'](_0x2535d2);return this['_updateMeta'](_0x29f4d0[_0x1dcb54(0x131)],_0xf0586,{'lastExtendedCounter':_0x2e4355,'lastExtendedAt':_0x1e8852},_0x901b9f),logger['info']({'event':_0x1dcb54(0xd4),'resource':_0x29f4d0['resource'],'formatKey':_0xf0586,'counter':_0x2e4355,'token':_0x4a435f,'ttl':_0x13b21d},_0x1dcb54(0x144)+_0x66e00a+'\x20(token='+_0x4a435f+',\x20+'+_0x13b21d+'s)'),_0x4856a2;}async['getReservation'](_0x2472b0){const _0xc36d2e=a0_0x3a03fd,_0x292ce7={'yWuYL':_0xc36d2e(0x117),'MslGc':function(_0x14e25d,_0x3f5fc8,_0x3ad12f){return _0x14e25d(_0x3f5fc8,_0x3ad12f);},'OcbXY':function(_0x5cbc43,_0x5a55b1){return _0x5cbc43===_0x5a55b1;},'mWpKt':function(_0x5274fe,_0x1b37c7){return _0x5274fe>=_0x1b37c7;}};if(!this[_0xc36d2e(0x11b)])throw new IdGeneratorError(_0xc36d2e(0x12f),_0x292ce7['yWuYL']);const _0x20aeb0=this[_0xc36d2e(0x18a)](_0x2472b0&&_0x2472b0[_0xc36d2e(0xd2)]),_0x210430=this['_buildReservationKey'](_0x20aeb0),_0x52da35=redisClient['getClient'](),_0xc950e2=_0x52da35['pipeline']();_0xc950e2[_0xc36d2e(0x148)](_0x210430),_0xc950e2[_0xc36d2e(0xdf)](_0x210430);const _0x5aeb5d=await _0xc950e2['exec'](),_0x154d83=_0x5aeb5d&&_0x5aeb5d[0x0]&&_0x5aeb5d[0x0][0x1],_0x38655f=_0x5aeb5d&&_0x5aeb5d[0x1]&&_0x5aeb5d[0x1][0x1];if(!_0x154d83||Object[_0xc36d2e(0x132)](_0x154d83)[_0xc36d2e(0x12b)]===0x0)throw new IdGeneratorError(_0xc36d2e(0x178),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x20aeb0,{'token':_0x20aeb0});return{'token':_0x20aeb0,'resource':_0x154d83[_0xc36d2e(0x131)]||null,'formatKey':_0x154d83[_0xc36d2e(0x13c)]||null,'format':_0x154d83[_0xc36d2e(0x15a)]||null,'prefix':_0x154d83['prefix']||'','separator':_0x154d83['separator']||'','numDigits':_0x154d83['numDigits']?_0x292ce7['MslGc'](parseInt,_0x154d83[_0xc36d2e(0x109)],0xa):null,'datePrefix':_0x154d83[_0xc36d2e(0x102)]||'','counter':_0x154d83[_0xc36d2e(0xb6)]?_0x292ce7[_0xc36d2e(0x180)](parseInt,_0x154d83['counter'],0xa):null,'value':_0x154d83['value']||null,'isReused':_0x292ce7['OcbXY'](_0x154d83[_0xc36d2e(0x1d2)],'1')||_0x292ce7['OcbXY'](_0x154d83[_0xc36d2e(0x1d2)],0x1),'createdAt':_0x154d83[_0xc36d2e(0xd7)]||null,'expiresAt':_0x154d83['expiresAt']||null,'ttlRemainingMs':typeof _0x38655f===_0xc36d2e(0xec)&&_0x292ce7['mWpKt'](_0x38655f,0x0)?_0x38655f:null};}async['_getReservationContext'](_0x280b0f){const _0x515aca=a0_0x3a03fd,_0x39af58=this['_buildReservationKey'](_0x280b0f),_0x31b670=redisClient[_0x515aca(0x1d3)](),_0x4e6ff7=await _0x31b670['hmget'](_0x39af58,'resource',_0x515aca(0x13c)),_0x5d6044=_0x4e6ff7&&_0x4e6ff7[0x0],_0x13db49=_0x4e6ff7&&_0x4e6ff7[0x1];if(!_0x5d6044||!_0x13db49)throw new IdGeneratorError(_0x515aca(0x178),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x280b0f,{'token':_0x280b0f});return{'resource':_0x5d6044,'formatKey':_0x13db49,'rsvKey':_0x39af58,'rsvIdxKey':this['_buildReservationIndexKey'](_0x5d6044,_0x13db49)};}async[a0_0x3a03fd(0xfb)](_0x356a49){const _0x54d567=a0_0x3a03fd,_0x225e77={'KzVrM':'IDGEN_DISABLED','VXHKb':function(_0x5699ff,_0x5676b9){return _0x5699ff===_0x5676b9;},'nRGkC':function(_0xb50424,_0x529823){return _0xb50424===_0x529823;},'tCkNR':function(_0xd2ca1a,_0x261b43){return _0xd2ca1a&&_0x261b43;},'ZetHY':_0x54d567(0x17f),'fbuoV':_0x54d567(0x13d)};if(!this[_0x54d567(0x11b)])throw new IdGeneratorError(_0x225e77[_0x54d567(0x168)],_0x54d567(0x117));this[_0x54d567(0x18b)](_0x356a49['resource']),this['_validatePattern'](_0x356a49['pattern']);const _0x44a4b2=this[_0x54d567(0x1bf)](_0x356a49['ttl']),_0x1c7258=this[_0x54d567(0x135)](_0x356a49[_0x54d567(0xc2)]),_0x528cda=this[_0x54d567(0x130)](_0x356a49['idempotencyKey']),_0x52424e=_0x225e77['VXHKb'](_0x356a49[_0x54d567(0x17b)],!![]),{resource:_0x101bcf,pattern:_0x4bcff6}=_0x356a49;let _0x1b0fd2=null;if(_0x528cda){_0x1b0fd2=this['_buildIdemKey'](_0x54d567(0xfb),_0x101bcf,null,_0x528cda);const _0x50517e=await this['_retrieveIdemCache'](_0x1b0fd2);if(_0x50517e)return _0x50517e;}const _0x43946f=redisClient['getClient']();let _0x39c2ee=null,_0x264de0=0x0;if(!_0x52424e)_0x39c2ee=this['_generateFromPattern'](_0x4bcff6),_0x264de0=0x1;else{for(let _0x4b0076=0x0;_0x4b0076<_0x1c7258;_0x4b0076++){_0x264de0++;const _0x2f2bc0=this[_0x54d567(0x1d4)](_0x4bcff6);if(_0x44a4b2){const _0x10ac45=this[_0x54d567(0x194)](_0x101bcf,_0x2f2bc0),_0x8dfffc=await _0x43946f['set'](_0x10ac45,'1','EX',_0x44a4b2,'NX');if(_0x225e77[_0x54d567(0xb3)](_0x8dfffc,'OK')){_0x39c2ee=_0x2f2bc0;break;}}else{const _0x4fdfb=this['_buildIssuedKey'](_0x101bcf),_0x3b3a64=await _0x43946f[_0x54d567(0x147)](_0x4fdfb,_0x2f2bc0);if(_0x225e77[_0x54d567(0xb3)](_0x3b3a64,0x1)){_0x39c2ee=_0x2f2bc0;break;}}}if(_0x225e77['nRGkC'](_0x39c2ee,null))throw new IdGeneratorError(_0x54d567(0xc1),'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x1c7258+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x101bcf,'pattern':_0x4bcff6,'maxRetry':_0x1c7258});}const _0x180e9f={'value':_0x39c2ee,'resource':_0x101bcf,'pattern':_0x4bcff6,'attemptCount':_0x264de0,'generatedAt':new Date()['toISOString']()};_0x225e77[_0x54d567(0x1c3)](_0x44a4b2,_0x52424e)&&(_0x180e9f['expiresAt']=new Date(Date[_0x54d567(0x126)]()+_0x44a4b2*0x3e8)['toISOString']());const _0x40a254=await this['_storeIdemCacheNX'](_0x1b0fd2,_0x180e9f);if(!_0x40a254['stored'])return _0x52424e&&await this[_0x54d567(0xbd)](_0x101bcf,_0x39c2ee,_0x44a4b2),logger['info']({'event':_0x225e77[_0x54d567(0xee)],'resource':_0x101bcf,'pattern':_0x4bcff6,'value':_0x39c2ee},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x40a254['winnerResult'];return logger[_0x54d567(0x1a7)]({'event':_0x225e77[_0x54d567(0x10d)],'resource':_0x101bcf,'pattern':_0x4bcff6,'attemptCount':_0x264de0,'ensureUnique':_0x52424e,'ttl':_0x44a4b2||0x0},'ID\x20Generator\x20random:\x20'+_0x39c2ee),_0x180e9f;}async['pin'](_0x1baa4e){const _0x302f33=a0_0x3a03fd,_0x5ede8e={'LQKBz':function(_0x335f76,_0xa642b8){return _0x335f76==_0xa642b8;},'LmuBQ':function(_0x563dd3,_0x242ac9){return _0x563dd3<_0x242ac9;},'yPHyH':function(_0xaf043,_0xce7dd3){return _0xaf043>_0xce7dd3;},'qBCex':'IDGEN_INVALID_DIGITS','LnwdV':function(_0x526255,_0x4edbea){return _0x526255===_0x4edbea;}},_0x2be967=_0x5ede8e['LQKBz'](_0x1baa4e[_0x302f33(0xe6)],null)?this[_0x302f33(0x1bb)]:_0x1baa4e['digits'];if(!Number[_0x302f33(0xae)](_0x2be967)||_0x5ede8e['LmuBQ'](_0x2be967,MIN_PIN_DIGITS)||_0x5ede8e[_0x302f33(0xbf)](_0x2be967,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x5ede8e['qBCex'],_0x302f33(0x122)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x302f33(0xc4)+_0x2be967+')');const _0x48890d='9'['repeat'](_0x2be967);return this['random']({'resource':_0x1baa4e['resource'],'pattern':_0x48890d,'ensureUnique':_0x5ede8e[_0x302f33(0x182)](_0x1baa4e['ensureUnique'],!![]),'ttl':_0x1baa4e[_0x302f33(0x1bc)],'maxRetry':_0x1baa4e['maxRetry'],'idempotencyKey':_0x1baa4e['idempotencyKey']});}async['serial'](_0x2d6459){const _0x40558d=a0_0x3a03fd,_0x25fb4d=_0x2d6459[_0x40558d(0xd3)]||this[_0x40558d(0x1ad)];return this[_0x40558d(0xfb)]({'resource':_0x2d6459[_0x40558d(0x131)],'pattern':_0x25fb4d,'ensureUnique':_0x2d6459[_0x40558d(0x17b)]!==![],'ttl':_0x2d6459[_0x40558d(0x1bc)],'maxRetry':_0x2d6459['maxRetry'],'idempotencyKey':_0x2d6459[_0x40558d(0x119)]});}async[a0_0x3a03fd(0x1b4)](_0x3e2e4e){const _0x2dbad0=a0_0x3a03fd,_0x3be798={'wnRxJ':function(_0x1b1856,_0x5d3f09){return _0x1b1856!==_0x5d3f09;}},_0x3fc9a6=_0x3e2e4e['pattern']||this[_0x2dbad0(0x15d)];return this['random']({'resource':_0x3e2e4e[_0x2dbad0(0x131)],'pattern':_0x3fc9a6,'ensureUnique':_0x3be798[_0x2dbad0(0x14f)](_0x3e2e4e['ensureUnique'],![]),'ttl':_0x3e2e4e[_0x2dbad0(0x1bc)],'maxRetry':_0x3e2e4e[_0x2dbad0(0xc2)],'idempotencyKey':_0x3e2e4e['idempotencyKey']});}async[a0_0x3a03fd(0xb2)](_0xb90ae4){const _0x1a841d=a0_0x3a03fd,_0x1b90dd={'oCjIp':'IDGEN_DISABLED','SInRe':function(_0x48ec06,_0x200980){return _0x48ec06!==_0x200980;},'mFYxG':'string','ibhhC':function(_0x15aea6,_0x3c62a6){return _0x15aea6===_0x3c62a6;},'AYxhp':'IDGEN_INVALID_NUMBER','KxGHy':'value\x20is\x20required','HDuRY':function(_0x3a3185,_0x5f57bb){return _0x3a3185>_0x5f57bb;},'namEh':function(_0x58b731,_0x57830b){return _0x58b731+_0x57830b;},'OnnoE':_0x1a841d(0xca)};if(!this['enabled'])throw new IdGeneratorError(_0x1b90dd[_0x1a841d(0x158)],'ID\x20Generator\x20is\x20disabled');this[_0x1a841d(0x18b)](_0xb90ae4['resource']);if(_0x1b90dd['SInRe'](typeof _0xb90ae4['value'],_0x1b90dd['mFYxG'])||_0x1b90dd['ibhhC'](_0xb90ae4['value'][_0x1a841d(0x12b)],0x0))throw new IdGeneratorError(_0x1b90dd['AYxhp'],_0x1b90dd[_0x1a841d(0x1b7)]);const {resource:_0x126253,value:_0x470038}=_0xb90ae4,_0x36c059=redisClient['getClient'](),_0x3fa46e=this[_0x1a841d(0x194)](_0x126253,_0x470038),_0x332660=this[_0x1a841d(0x1b9)](_0x126253),[_0x21c837,_0x413352]=await Promise['all']([_0x36c059[_0x1a841d(0x125)](_0x3fa46e),_0x36c059[_0x1a841d(0x17a)](_0x332660,_0x470038)]),_0x5320ac=_0x1b90dd['HDuRY'](_0x1b90dd['namEh'](_0x21c837,_0x413352),0x0);return logger[_0x1a841d(0x1a7)]({'event':_0x1b90dd['OnnoE'],'resource':_0x126253,'value':_0x470038,'consumed':_0x5320ac},'ID\x20Generator\x20consumed:\x20'+_0x470038),{'consumed':_0x5320ac,'resource':_0x126253,'value':_0x470038,'consumedAt':new Date()['toISOString']()};}async['peek'](_0x19f54f){const _0x11d095=a0_0x3a03fd,_0x45d4c5={'HfOrJ':'IDGEN_DISABLED','hpQjq':'ID\x20Generator\x20is\x20disabled','dkENQ':_0x11d095(0xec),'MUHyV':function(_0x520164,_0x59ec04){return _0x520164===_0x59ec04;},'WYTom':'text','nsksz':'IDGEN_INVALID_FORMAT','ilxpy':function(_0x529201,_0x50cc11,_0x58b3f0){return _0x529201(_0x50cc11,_0x58b3f0);},'fndIt':function(_0x4d3137,_0x295cd3){return _0x4d3137||_0x295cd3;},'ImmRk':_0x11d095(0xfb),'mgGgz':_0x11d095(0x10b)};if(!this['enabled'])throw new IdGeneratorError(_0x45d4c5[_0x11d095(0x198)],_0x45d4c5['hpQjq']);this[_0x11d095(0x18b)](_0x19f54f['resource']);const _0x27f992=_0x19f54f['mode']||_0x45d4c5[_0x11d095(0x1aa)],_0x3d8a4a=redisClient['getClient']();if(_0x45d4c5[_0x11d095(0x19d)](_0x27f992,_0x11d095(0xec))){const _0x342488=(_0x19f54f['format']||_0x45d4c5['WYTom'])['toLowerCase']();if(!ALLOWED_FORMATS[_0x11d095(0xc0)](_0x342488))throw new IdGeneratorError(_0x45d4c5[_0x11d095(0xa6)],'Invalid\x20format:\x20'+_0x19f54f['format']);const {formatKey:_0x78ae0a}=this[_0x11d095(0x15f)](_0x342488,_0x19f54f['prefix']||''),_0x28a6b3=this[_0x11d095(0x1a6)](_0x19f54f['resource'],_0x78ae0a),_0x2be33f=this[_0x11d095(0x108)](_0x19f54f['resource'],_0x78ae0a),[_0x9f01c,_0x53e19d]=await Promise['all']([_0x3d8a4a['get'](_0x28a6b3),_0x3d8a4a[_0x11d095(0x15e)](_0x2be33f)]);return{'resource':_0x19f54f['resource'],'mode':_0x45d4c5['dkENQ'],'formatKey':_0x78ae0a,'currentCounter':_0x45d4c5['ilxpy'](parseInt,_0x9f01c,0xa)||0x0,'reusePoolSize':_0x45d4c5[_0x11d095(0x191)](_0x53e19d,0x0)};}if(_0x45d4c5[_0x11d095(0x19d)](_0x27f992,_0x45d4c5['ImmRk'])){const _0x191d14=this[_0x11d095(0x1b9)](_0x19f54f[_0x11d095(0x131)]),_0x51c016=await _0x3d8a4a[_0x11d095(0x134)](_0x191d14);return{'resource':_0x19f54f[_0x11d095(0x131)],'mode':_0x11d095(0xfb),'issuedCount':_0x45d4c5[_0x11d095(0x191)](_0x51c016,0x0)};}throw new IdGeneratorError(_0x45d4c5[_0x11d095(0x124)],'Unknown\x20mode:\x20'+_0x27f992);}async[a0_0x3a03fd(0xad)](_0x14f23e){const _0x366328=a0_0x3a03fd,_0x3bcbab={'MLfEt':function(_0x2d0b28,_0x2d6b37){return _0x2d0b28===_0x2d6b37;},'OjGSf':'number'},_0x3f80c3=await this[_0x366328(0x172)](_0x14f23e);if(_0x3bcbab[_0x366328(0xdb)](_0x3f80c3[_0x366328(0x12d)],_0x3bcbab['OjGSf'])){const _0xe1668f=redisClient[_0x366328(0x1d3)](),_0xf6ec86=this[_0x366328(0xfc)](_0x14f23e[_0x366328(0x131)],_0x3f80c3[_0x366328(0x13c)]),_0xae947f=this['_buildReuseKey'](_0x14f23e['resource'],_0x3f80c3['formatKey']),[_0x37175,_0x35450c]=await Promise[_0x366328(0x15c)]([_0xe1668f['hgetall'](_0xf6ec86),_0xe1668f['zrange'](_0xae947f,0x0,-0x1)]);return{..._0x3f80c3,'reusePoolValues':_0x35450c[_0x366328(0x16a)](_0x926037=>parseInt(_0x926037,0xa)),'meta':_0x37175&&Object[_0x366328(0x132)](_0x37175)[_0x366328(0x12b)]>0x0?_0x37175:null};}return _0x3f80c3;}async[a0_0x3a03fd(0xe8)](_0x5009ed){const _0x1d63b0=a0_0x3a03fd,_0x468cc4={'yIXPh':_0x1d63b0(0x12f),'nUHLf':'IDGEN_RESET_NOT_ALLOWED','wJwFT':'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)','dmWiH':_0x1d63b0(0xec),'uTCWJ':'IDGEN_INVALID_FORMAT','yedmi':_0x1d63b0(0x106),'ZiTCp':_0x1d63b0(0x19b),'JEPPg':_0x1d63b0(0x1c5),'vrpJU':_0x1d63b0(0x10b)};if(!this['enabled'])throw new IdGeneratorError(_0x468cc4['yIXPh'],'ID\x20Generator\x20is\x20disabled');if(!this['allowReset'])throw new IdGeneratorError(_0x468cc4[_0x1d63b0(0xf5)],_0x468cc4[_0x1d63b0(0x1a9)]);this['_validateResource'](_0x5009ed[_0x1d63b0(0x131)]);const _0x2eb855=_0x5009ed['mode']||_0x468cc4[_0x1d63b0(0x18f)],_0x2bbb5b=redisClient['getClient']();if(_0x2eb855===_0x468cc4[_0x1d63b0(0x18f)]){const _0x518aa5=(_0x5009ed[_0x1d63b0(0x15a)]||'text')[_0x1d63b0(0x169)]();if(!ALLOWED_FORMATS['has'](_0x518aa5))throw new IdGeneratorError(_0x468cc4[_0x1d63b0(0xa8)],'Invalid\x20format:\x20'+_0x5009ed[_0x1d63b0(0x15a)]);const {formatKey:_0x5bd8e5}=this['_buildFormatKey'](_0x518aa5,_0x5009ed[_0x1d63b0(0x152)]||''),_0x42cf5b=this['_buildSeqKey'](_0x5009ed[_0x1d63b0(0x131)],_0x5bd8e5),_0x355790=this['_buildReuseKey'](_0x5009ed['resource'],_0x5bd8e5),_0x15922a=this[_0x1d63b0(0xfc)](_0x5009ed[_0x1d63b0(0x131)],_0x5bd8e5);return await _0x2bbb5b[_0x1d63b0(0x125)](_0x42cf5b,_0x355790,_0x15922a),logger[_0x1d63b0(0x167)]({'event':_0x468cc4[_0x1d63b0(0x19c)],'resource':_0x5009ed[_0x1d63b0(0x131)],'mode':'number','formatKey':_0x5bd8e5},'ID\x20Generator\x20reset:\x20'+_0x5009ed[_0x1d63b0(0x131)]+':'+_0x5bd8e5),{'reset':!![],'resource':_0x5009ed['resource'],'mode':_0x468cc4['dmWiH'],'formatKey':_0x5bd8e5,'deletedKeys':[_0x468cc4['ZiTCp'],'reuse',_0x1d63b0(0xe9)]};}if(_0x2eb855===_0x1d63b0(0xfb)){const _0x3e864d=this[_0x1d63b0(0x1b9)](_0x5009ed['resource']);return await _0x2bbb5b[_0x1d63b0(0x125)](_0x3e864d),logger[_0x1d63b0(0x167)]({'event':_0x468cc4[_0x1d63b0(0x19c)],'resource':_0x5009ed[_0x1d63b0(0x131)],'mode':_0x1d63b0(0xfb)},_0x1d63b0(0x112)+_0x5009ed[_0x1d63b0(0x131)]),{'reset':!![],'resource':_0x5009ed[_0x1d63b0(0x131)],'mode':'random','deletedKeys':[_0x468cc4[_0x1d63b0(0x164)]]};}throw new IdGeneratorError(_0x468cc4['vrpJU'],'Unknown\x20mode:\x20'+_0x2eb855);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module[a0_0x3a03fd(0xba)]=instance,module['exports'][a0_0x3a03fd(0x1a1)]=IdGeneratorError;
1
+ 'use strict';const a0_0x2c40e1=a0_0x1fae;(function(_0x39b237,_0x3ffea5){const _0x118055=a0_0x1fae,_0x6a52d3=_0x39b237();while(!![]){try{const _0x2c6785=-parseInt(_0x118055(0x2a6))/0x1+-parseInt(_0x118055(0x258))/0x2*(parseInt(_0x118055(0x30e))/0x3)+parseInt(_0x118055(0x246))/0x4+parseInt(_0x118055(0x2b9))/0x5*(-parseInt(_0x118055(0x2b5))/0x6)+parseInt(_0x118055(0x2c3))/0x7*(-parseInt(_0x118055(0x241))/0x8)+-parseInt(_0x118055(0x2da))/0x9*(-parseInt(_0x118055(0x204))/0xa)+-parseInt(_0x118055(0x26c))/0xb*(-parseInt(_0x118055(0x2bb))/0xc);if(_0x2c6785===_0x3ffea5)break;else _0x6a52d3['push'](_0x6a52d3['shift']());}catch(_0x56fd07){_0x6a52d3['push'](_0x6a52d3['shift']());}}}(a0_0x1d8a,0xd90f1));function a0_0x1d8a(){const _0x4eb9b9=['vKfbDNm','x3jLC2vYDMvezwzHDwX0vfrm','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','mtjlz1jfELu','x2j1AwXKsxnZDwvKs2v5','ignOyxjZicHNB3qGBgvUz3rOoIa','vKnwDKm','ndCYmJvoCMH6tK8','D2fYBG','otqYotzxz0Dsq3y','CMy6AwrNzw46','mdeYmZq1nJC4oufcq0rfrG','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','uLnoB2W','AeTJy00','AgDLDgfSBa','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','mJCYndrbvgvpAxi','vgPgrxC','zgvS','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','AxnfBMfIBgvK','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','sLLPq20','rwjID08','surhru5Fsu5wquXjrf9srvnpvvjdrq','CMvWzwf0','Du15wNy','CMvZzxj2zv9JB25MAxjT','x3jLC2vYDMvnyxHuveW','u3j1uLK','DhfXAgi','DhrS','Bwf4uMv0CNK','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','icH0B2TLBJ0','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','ovjRqKzYta','AfvAEKG','C2vXoG','rMfPBgvKihrVignVBxbLBNnHDguGCMvZzxj2yxrPB24Gywz0zxiGy291BNrLCIbVDMvYzMXVDW','Dgv4Da','Aw1nsvC','DhrStxm','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','uLbUEeW','z2D4EuG','ywXS','r2rZBxm','ExL5Ew1T','CMvZzxj2zurLzMf1BhruveW','nhW1FdH8oxW3Fdn8nNWWFdj8mtb8mxWXmNWXmq','z2v0','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','rM95r1a','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','v3fuB3a','v21tD2G','x2j1AwXKqwn0AxzLs2v5','AwrLBxbVDgvUy3LlzxK','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','v2TUAfy','igrPz2L0CYaOz290oIa','Aw5MBW','zw5HyMXLza','x2zVCM1HDe51BwjLCG','Cgf0DgvYBG','ExL5Ew1Tzgq','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','BNvTrgLNAxrZ','txz6zNq','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','BKfAyM0','y3jLyxrLzef0','sw1jtwS','Cu9irNu','vw5RBM93BIbMB3jTyxq6ia','z2v0uMvZzxj2yxrPB24','z2v0rgf0zq','x2DLBMvYyxrLrNjVBvbHDhrLCM4','q291BNrLCIbVDMvYzMXVDZOG','AxnszxvZzwq','y291BNrLCKLUDa','x3n0B3jLswrLBunHy2HLtLG','ChjLzML4','lcbNB3qG','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','C2fKza','swrhzw5LCMf0B3jfCNjVCG','mtaYotaWouTQAgrUCG','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','z21Wqwi','x3bHzdi','qNbJrLq','shvWuKe','CMfUzg9T','q1rcD00','zxH0zw5KuMvZzxj2yxrPB24','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','Bw9Kzq','wfHywc1ywfHylvHywfGTwfHywa','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','ywXSB3DszxnLDa','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','z2v0tw9UDgG','zw52','B0L3q3i','sw52ywXPzcbMB3jTyxq6ig11C3qGyMuGB25Lig9Mia','s0P3sfK','ihbHCNrZkq','zxHWAxjLC0f0','x2j1AwXKswrLBuTLEq','B1HwzeW','tfvsBhm','icHNB3q6ia','CLDZBMq','q1DUsMu','x2rLzMf1BhrtzxjPywXqyxr0zxjU','BNHbv2S','C2vWyxjHDg9Y','ExrHDhG','CMvZzxq','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','z2LyzwC','x2j1AwXKuMv1C2vlzxK','t2DJBxu','lwrPz2L0ignHCgfJAxr5icG','zM9YBwf0','y291BNrLCG','ChvZAa','x2rLzMf1BhrnyxHszxrYEq','AejWBxe','mJq1ndCWsMnnBLDn','AwrNzw5FCMvZzxq','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','surhru5Fsu5wquXjrf9quKvgsvG','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','qwvgtxC','zgLNAxrZ','ALnlDwS','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','DMfSDwu','wfnssgW','AgfZ','seLVzw8','CvHnvha','x2vUC3vYzuLUAxrPywXPEMvK','A2v5uhjLzML4','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','ExHzrem','x2j1AwXKrM9YBwf0s2v5','CuL4B0u','CNn2x2LKEdO','C3rYAw5NAwz5','CNn2s2v5','x2rLzMf1BhrdB2rLugf0DgvYBG','sw52ywXPzcbMB3jTyxq6ia','sw90CNC','CMvZzxj2zv9Jyw5JzwW','CgfYC2u','CgLWzwXPBMu','ruTZqva','suvWAhu','AwrLBuTLEq','CMvZzxj2zu1HEfruta','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','yLHrDLi','x3jLDhjPzxzLswrLBunHy2HL','Dg9ju09tDhjPBMC','DvrZtgq','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','lcaR','x2DLDenVDw50zxjuveW','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','EMnHCMq','wxrJzKe','zgf0zvbYzwzPEa','x3L5ExLF','CMvSzwfZzwrbDa','wurZEuW','x3zHBgLKyxrLuMvZzxj2zvruta','CLLIzMi','surhru5Fsu5wquXjrf9uveW','zM9YBwf0s2v5','yM1ZreS','z1PbCKy','C3bSAxq','DgvZDa','ywn0AxzLoG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','CKrLqu8','ntiWCuTUueHO','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','x2LUAxrPywXPEMvK','yNzsv3i','quTJv3u','nJCZotK4ogvNCNLzzq','wvH3sg4','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','CMvZB3vYy2u','surhru5Fq09vtLrfuL9pvKvsrKXpvW','zw5ZDxjLvw5PCxvL','CMfUzg9Tsw50','Dg9Rzw4','CMvnD2y','ihnLy29UzhmGkgDVDdOG','CgvLAW','ENniy0C','vKPtCfu','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','x2j1AwXKtwv0yuTLEq','x3bHCNnLtNvTyMvY','yNvPBgrezxrLCM1PBMLZDgLJs2v5','D2LUBMvYuMvZDwX0','ngTjq1fwEG','ExL5Eq','x2LKzw1uveW','B1PhANi','C2v0','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','Dw1ZAhC','DMfSDwuGAxmGCMvXDwLYzwq','ALvTuMi','C3rVCMvK','yLn0r2G','zMjtu0q','x2rLzMf1BhrqAw5eAwDPDhm','surhru5Fsu5wquXjrf9gt1jnqvq','CNn2swr4s2v5','C3rYAw5N','AxnZDwvK','Bwf0y2G','surhru5FreLtqujmruq','tLrJAwW','mZC0s1LXD3rs','zgvMyxvSDfnLCMLHBfbHDhrLCM4','CuP0A0y','AKTdsuq','z2v0sw5MBW','zvHZtfK','zLDkr2m','vwjvtwq','DvPMyva','zgvMyxvSDe1HEfjLDhj5','x3zHBgLKyxrLugf0DgvYBG','BNvTyMvY','zgvMyxvSDenVzgvqyxr0zxjU','ENjHBMDL','surhru5Fsu5wquXjrf9ovu1crvi','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','BgvUz3rO','EgPQDw0','C3jLBq','Bwv0ytO','BwvZC2fNzq','surhru5Fsu5wquXjrf9nt0rf','z2vUzxjHDgvKqxq','zxzHBa','AwrLBvruta','DhnLDMe','DvfhC1m','x2vUywjSzwq','x3vWzgf0zu1LDge','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','surhru5Fsu5wquXjrf9qqvrurvjo','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','CKLIEKy','CKzArLy','u0jcC1i','wwjHELO','AxnjBNrLz2vY','Cg93','mdeYmZq1nJC4owfIy2rLzG','zxHWB3j0CW','tLvUrKu','tKjdCMq','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','Cwv0wfG','Ee5Tte0','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','rhjLr3C','zgvMyxvSDfbPBKrPz2L0CW','x2nVDw50zxjuveXnyxa','zen5wg8','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','AwrNzw4','z2v0q2XPzw50','zw50CMLLCW','y29UzMLYBvjLC2vYDMf0Aw9U','AwrNzw5FBNvTyMvYx2DLBMvYyxrLza','wKjsBgu','x2j1AwXKu2vXs2v5','mti5nZy3yMTPr09M','Dg9mB3DLCKnHC2u','x2fSBg93uMvZzxq','tKzHAwK','x3n0B3jLswrLBunHy2HL','s0LYChK','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','vvrUvLm','zfLzB28','CgfKzgvKicHNB3q6ia','x3zHBgLKyxrLuMvZB3vYy2u'];a0_0x1d8a=function(){return _0x4eb9b9;};return a0_0x1d8a();}const crypto=require('crypto'),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set([a0_0x2c40e1(0x2de),a0_0x2c40e1(0x259),a0_0x2c40e1(0x2e6),a0_0x2c40e1(0x2f8)]),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=a0_0x2c40e1(0x2bd),CHARSET_HEX_LOWER=a0_0x2c40e1(0x292),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='\x0aredis.call(\x27ZADD\x27,\x20KEYS[1],\x20ARGV[1],\x20ARGV[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x201\x0a',LUA_RESERVE_NUMBER=a0_0x2c40e1(0x2b4),LUA_CONFIRM_RESERVATION=a0_0x2c40e1(0x2c2),LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27)\x0alocal\x20prevExpiresAt\x20=\x20h[1]\x0alocal\x20newTtlMs\x20=\x20tonumber(ARGV[2])\x0alocal\x20newExpMs\x20=\x20tonumber(ARGV[3])\x0aredis.call(\x27PEXPIRE\x27,\x20KEYS[1],\x20newTtlMs)\x0aredis.call(\x27HSET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20ARGV[4])\x0aredis.call(\x27ZADD\x27,\x20KEYS[2],\x20newExpMs,\x20ARGV[1])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[2],\x20math.floor(newTtlMs\x20/\x201000)\x20+\x2060)\x0areturn\x20{\x201,\x20prevExpiresAt,\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a';class IdGeneratorError extends Error{constructor(_0x2123d8,_0x4a9053,_0x526973=null){const _0xf76829=a0_0x2c40e1,_0x583186={'tseva':'IdGeneratorError'};super(_0x4a9053||_0x2123d8),this['name']=_0x583186[_0xf76829(0x285)],this['code']=_0x2123d8,this['details']=_0x526973;}}function a0_0x1fae(_0x333d4b,_0x28ee54){_0x333d4b=_0x333d4b-0x1e7;const _0x1d8a07=a0_0x1d8a();let _0x1fae04=_0x1d8a07[_0x333d4b];if(a0_0x1fae['dyHved']===undefined){var _0x278d92=function(_0x5d4bac){const _0x3825ec='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x10fcdf='',_0x385aa9='';for(let _0x33d1c2=0x0,_0x71405,_0x6476fa,_0x111cfa=0x0;_0x6476fa=_0x5d4bac['charAt'](_0x111cfa++);~_0x6476fa&&(_0x71405=_0x33d1c2%0x4?_0x71405*0x40+_0x6476fa:_0x6476fa,_0x33d1c2++%0x4)?_0x10fcdf+=String['fromCharCode'](0xff&_0x71405>>(-0x2*_0x33d1c2&0x6)):0x0){_0x6476fa=_0x3825ec['indexOf'](_0x6476fa);}for(let _0x12c4fa=0x0,_0x5eeb67=_0x10fcdf['length'];_0x12c4fa<_0x5eeb67;_0x12c4fa++){_0x385aa9+='%'+('00'+_0x10fcdf['charCodeAt'](_0x12c4fa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x385aa9);};a0_0x1fae['fZnjPP']=_0x278d92,a0_0x1fae['nLleDG']={},a0_0x1fae['dyHved']=!![];}const _0x1b4448=_0x1d8a07[0x0],_0x2367ff=_0x333d4b+_0x1b4448,_0x1e584b=a0_0x1fae['nLleDG'][_0x2367ff];return!_0x1e584b?(_0x1fae04=a0_0x1fae['fZnjPP'](_0x1fae04),a0_0x1fae['nLleDG'][_0x2367ff]=_0x1fae04):_0x1fae04=_0x1e584b,_0x1fae04;}class IdGenerator{constructor(){const _0x4bad2f=a0_0x2c40e1;this[_0x4bad2f(0x243)]=![],this['_enabled']=null,this['_keyPrefix']=null,this[_0x4bad2f(0x25a)]=null,this[_0x4bad2f(0x2a8)]=null,this[_0x4bad2f(0x202)]=null,this['_defaultPinDigits']=null,this['_defaultSerialPattern']=null,this['_defaultCodePattern']=null,this[_0x4bad2f(0x29c)]=null,this[_0x4bad2f(0x2b2)]=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x59def0=a0_0x2c40e1,_0x5549ab={'IyrQF':_0x59def0(0x2bc),'Mvzft':'true','AKcWu':_0x59def0(0x319),'zeeoD':function(_0x4e91a1,_0x30fc1f,_0x20ad0c){return _0x4e91a1(_0x30fc1f,_0x20ad0c);},'RPnxL':function(_0x40bb02,_0x32ca19){return _0x40bb02===_0x32ca19;},'fWJGc':'idgen_config_init'},_0x42000b=_0x59def0(0x2e8)['split']('|');let _0x148e89=0x0;while(!![]){switch(_0x42000b[_0x148e89++]){case'0':this[_0x59def0(0x21c)]=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||'9999-9999';continue;case'1':this[_0x59def0(0x2d1)]=parseInt(process[_0x59def0(0x1e9)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'2':this[_0x59def0(0x29c)]={'yyyymm':parseInt(process[_0x59def0(0x1e9)][_0x59def0(0x31d)],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x59def0(0x1e9)]['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300};continue;case'3':this[_0x59def0(0x264)]=parseInt(process[_0x59def0(0x1e9)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'4':this['_keyPrefix']=_0x5549ab['IyrQF'];continue;case'5':this[_0x59def0(0x287)]=process['env']['IDGEN_ENABLED']===_0x5549ab[_0x59def0(0x2fb)];continue;case'6':this[_0x59def0(0x1f5)]=process['env'][_0x59def0(0x208)]||_0x5549ab[_0x59def0(0x245)];continue;case'7':this['_defaultMaxRetry']=parseInt(process[_0x59def0(0x1e9)]['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa;continue;case'8':this['_idemTTL']=_0x5549ab['zeeoD'](parseInt,process['env']['IDGEN_IDEM_TTL'],0xa)||0x258;continue;case'9':this[_0x59def0(0x2a8)]=_0x5549ab[_0x59def0(0x2e2)](process['env']['IDGEN_ALLOW_RESET'],_0x5549ab[_0x59def0(0x2fb)]);continue;case'10':this[_0x59def0(0x2b2)]=parseInt(process[_0x59def0(0x1e9)]['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL;continue;case'11':logger[_0x59def0(0x2f4)]({'event':_0x5549ab[_0x59def0(0x272)],'enabled':this[_0x59def0(0x287)],'idemTTL':this['_idemTTL'],'allowReset':this[_0x59def0(0x2a8)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x59def0(0x2b2)],'reserveMaxTTL':this[_0x59def0(0x2d1)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);continue;case'12':this['_initialized']=!![];continue;}break;}}[a0_0x2c40e1(0x212)](){if(!this['_initialized'])this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get[a0_0x2c40e1(0x213)](){const _0x56f5e3=a0_0x2c40e1;return this[_0x56f5e3(0x212)](),this['_keyPrefix'];}get['idemTTL'](){const _0x22743c=a0_0x2c40e1;return this[_0x22743c(0x212)](),this[_0x22743c(0x25a)];}get[a0_0x2c40e1(0x31b)](){const _0x5b4eba=a0_0x2c40e1;return this[_0x5b4eba(0x212)](),this['_allowReset'];}get[a0_0x2c40e1(0x275)](){const _0x65c65c=a0_0x2c40e1;return this[_0x65c65c(0x212)](),this['_defaultMaxRetry'];}get[a0_0x2c40e1(0x29b)](){const _0x60a011=a0_0x2c40e1;return this[_0x60a011(0x212)](),this['_defaultPinDigits'];}get['defaultSerialPattern'](){const _0x3587f2=a0_0x2c40e1;return this[_0x3587f2(0x212)](),this[_0x3587f2(0x1f5)];}get['defaultCodePattern'](){const _0x4820bd=a0_0x2c40e1;return this[_0x4820bd(0x212)](),this['_defaultCodePattern'];}get[a0_0x2c40e1(0x2e7)](){const _0x11d387=a0_0x2c40e1;return this[_0x11d387(0x212)](),this['_reserveDefaultTTL'];}get[a0_0x2c40e1(0x225)](){const _0x21da5d=a0_0x2c40e1;return this[_0x21da5d(0x212)](),this['_reserveMaxTTL'];}[a0_0x2c40e1(0x2c7)](){return this['enabled'];}['_validateResource'](_0xda37ba){const _0x3617cf=a0_0x2c40e1;if(typeof _0xda37ba!=='string'||!RESOURCE_REGEX['test'](_0xda37ba))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x3617cf(0x21a)](_0xda37ba)+')');}['_validateNumberParams'](_0x3294a6){const _0x1aa6f7=a0_0x2c40e1,_0x27bd37={'CTBwM':function(_0x5a6e51,_0x119a9d){return _0x5a6e51===_0x119a9d;},'jSKuk':function(_0x4cf5f7,_0x578a98){return _0x4cf5f7<_0x578a98;},'bStGh':function(_0x5d8c64,_0x4d09ea){return _0x5d8c64!==_0x4d09ea;},'WknhV':'string','DreGw':_0x1aa6f7(0x207),'NBCrd':function(_0x456e92,_0x10e3d2){return _0x456e92!==_0x10e3d2;},'uQGsS':function(_0xc45745,_0x2a0aed){return _0xc45745>_0x2a0aed;},'UTnVS':'IDGEN_INVALID_SEPARATOR','gmpAb':function(_0xf89d27,_0x31d640){return _0xf89d27!=_0x31d640;}},{resource:_0x53d2a7,format:_0xf532a1,prefix:_0x5a0bed,separator:_0x50d595,numDigits:_0x3f4bdf,reuseDelete:_0x1e4596}=_0x3294a6;this['_validateResource'](_0x53d2a7);const _0x869634=_0x27bd37[_0x1aa6f7(0x315)](typeof _0xf532a1,'string')?_0xf532a1[_0x1aa6f7(0x2a7)]():'';if(!ALLOWED_FORMATS['has'](_0x869634))throw new IdGeneratorError('IDGEN_INVALID_FORMAT',_0x1aa6f7(0x1eb)+[...ALLOWED_FORMATS]['join'](',\x20')+_0x1aa6f7(0x1f2)+_0xf532a1+')');if(!Number['isInteger'](_0x3f4bdf)||_0x27bd37[_0x1aa6f7(0x20b)](_0x3f4bdf,MIN_NUM_DIGITS)||_0x3f4bdf>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x1aa6f7(0x25d),_0x1aa6f7(0x2e1)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x3f4bdf+')');const _0x41a250=_0x5a0bed==null?'':_0x5a0bed;if(_0x27bd37[_0x1aa6f7(0x262)](typeof _0x41a250,_0x27bd37[_0x1aa6f7(0x2f2)])||!PREFIX_REGEX['test'](_0x41a250))throw new IdGeneratorError(_0x27bd37[_0x1aa6f7(0x29a)],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0x1aa6f7(0x1f2)+JSON[_0x1aa6f7(0x21a)](_0x5a0bed)+')');const _0x251d6d=_0x50d595==null?'':_0x50d595;if(_0x27bd37[_0x1aa6f7(0x295)](typeof _0x251d6d,_0x1aa6f7(0x267))||_0x27bd37[_0x1aa6f7(0x286)](_0x251d6d['length'],0x3)||SEPARATOR_FORBIDDEN['test'](_0x251d6d))throw new IdGeneratorError(_0x27bd37[_0x1aa6f7(0x2ad)],'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON['stringify'](_0x50d595)+')');if(_0x27bd37[_0x1aa6f7(0x310)](_0x1e4596,null)&&_0x27bd37['NBCrd'](typeof _0x1e4596,'boolean'))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x1e4596+')');return{'resource':_0x53d2a7,'format':_0x869634,'prefix':_0x41a250,'separator':_0x251d6d,'numDigits':_0x3f4bdf,'reuseDelete':_0x1e4596===!![]};}[a0_0x2c40e1(0x276)](_0x3e02f8){const _0x53170a=a0_0x2c40e1,_0x3218e3={'EbbwO':'IDGEN_INVALID_PATTERN'};if(typeof _0x3e02f8!=='string'||_0x3e02f8[_0x53170a(0x27c)]===0x0||_0x3e02f8[_0x53170a(0x27c)]>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0x3218e3[_0x53170a(0x2cc)],_0x53170a(0x253)+MAX_PATTERN_LENGTH+_0x53170a(0x2b7)+(_0x3e02f8&&_0x3e02f8[_0x53170a(0x27c)])+')');let _0x412028=![];for(const _0x1480bf of _0x3e02f8){if(PLACEHOLDER_MAP[_0x1480bf]){_0x412028=!![];break;}}if(!_0x412028)throw new IdGeneratorError(_0x53170a(0x28a),_0x53170a(0x22b));}['_validateTTL'](_0x363f7d){const _0x1340d8=a0_0x2c40e1,_0x2dd5e0={'xowEE':function(_0x108e2d,_0xf9c563){return _0x108e2d>_0xf9c563;},'tMDug':_0x1340d8(0x237)};if(_0x363f7d==null)return undefined;if(!Number[_0x1340d8(0x290)](_0x363f7d)||_0x363f7d<0x1||_0x2dd5e0['xowEE'](_0x363f7d,MAX_TTL))throw new IdGeneratorError(_0x2dd5e0['tMDug'],_0x1340d8(0x2be)+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x363f7d+')');return _0x363f7d;}['_validateMaxRetry'](_0x3c13b3){const _0x337d16=a0_0x2c40e1,_0x1990d0={'qetXX':function(_0x385030,_0x2d579c){return _0x385030==_0x2d579c;}};if(_0x1990d0[_0x337d16(0x297)](_0x3c13b3,null))return this[_0x337d16(0x275)];if(!Number[_0x337d16(0x290)](_0x3c13b3)||_0x3c13b3<0x1||_0x3c13b3>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY',_0x337d16(0x2d8)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x3c13b3+')');return _0x3c13b3;}[a0_0x2c40e1(0x206)](_0x20b93a){const _0x3f42b0=a0_0x2c40e1,_0x1630f9={'LCFqV':function(_0x15d327,_0x27b4b8){return _0x15d327==_0x27b4b8;},'MqrKt':function(_0x353919,_0x18a299){return _0x353919>_0x18a299;}};if(_0x1630f9['LCFqV'](_0x20b93a,null))return undefined;if(typeof _0x20b93a!=='string'||_0x20b93a[_0x3f42b0(0x27c)]===0x0||_0x1630f9['MqrKt'](_0x20b93a['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x3f42b0(0x2cd),'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x20b93a;}['_validateReserveTTL'](_0x10432e){const _0xfd8a36=a0_0x2c40e1,_0x1effa1={'AGSIa':function(_0x49be4a,_0x2f1a8b){return _0x49be4a==_0x2f1a8b;},'xNmLM':'IDGEN_INVALID_RESERVE_TTL'};if(_0x1effa1['AGSIa'](_0x10432e,null))return this[_0xfd8a36(0x2e7)];if(!Number[_0xfd8a36(0x290)](_0x10432e)||_0x10432e<MIN_RESERVE_TTL||_0x10432e>this['reserveMaxTTL'])throw new IdGeneratorError(_0x1effa1[_0xfd8a36(0x298)],_0xfd8a36(0x31a)+MIN_RESERVE_TTL+'-'+this[_0xfd8a36(0x225)]+_0xfd8a36(0x24f)+_0x10432e+')');return _0x10432e;}['_validateReservationToken'](_0x46e414){const _0x18f578=a0_0x2c40e1;if(typeof _0x46e414!==_0x18f578(0x267)||!RESERVATION_TOKEN_REGEX[_0x18f578(0x23c)](_0x46e414))throw new IdGeneratorError('IDGEN_INVALID_TOKEN',_0x18f578(0x23f)+JSON['stringify'](_0x46e414)+')');return _0x46e414;}[a0_0x2c40e1(0x311)](_0x2dc2c0){return String(_0x2dc2c0)['padStart'](0x2,'0');}[a0_0x2c40e1(0x217)](_0x23c53e,_0x55b3ba,_0x3a98e7=new Date()){const _0x2c8d49=a0_0x2c40e1,_0x5db616={'ytatx':'yyyy','YXwHn':'yyyymm','IKatu':'yyyymmdd'},_0x90d22a=_0x3a98e7['getFullYear'](),_0xf4236e=this['_pad2'](_0x3a98e7[_0x2c8d49(0x1e8)]()+0x1),_0x151669=this['_pad2'](_0x3a98e7[_0x2c8d49(0x303)]()),_0x206daa=_0x55b3ba||'_';let _0x3b2f0b,_0x56271a='';switch(_0x23c53e){case'text':_0x3b2f0b=_0x206daa+'_text';break;case _0x5db616[_0x2c8d49(0x1f8)]:_0x56271a=''+_0x90d22a,_0x3b2f0b=_0x206daa+_0x2c8d49(0x232)+_0x56271a;break;case _0x5db616[_0x2c8d49(0x247)]:_0x56271a=''+_0x90d22a+_0xf4236e,_0x3b2f0b=_0x206daa+'_yyyymm_'+_0x56271a;break;case _0x5db616['IKatu']:_0x56271a=''+_0x90d22a+_0xf4236e+_0x151669,_0x3b2f0b=_0x206daa+'_yyyymmdd_'+_0x56271a;break;default:throw new IdGeneratorError(_0x2c8d49(0x265),_0x2c8d49(0x301)+_0x23c53e);}return{'formatKey':_0x3b2f0b,'datePrefix':_0x56271a};}[a0_0x2c40e1(0x2a5)](_0x251a3b,_0x127e8f){const _0x18d198=a0_0x2c40e1;return this['keyPrefix']+_0x18d198(0x2dc)+_0x251a3b+':'+_0x127e8f;}[a0_0x2c40e1(0x1fc)](_0x1dbe53,_0xf0f02a){const _0x5d9be7=a0_0x2c40e1;return this[_0x5d9be7(0x213)]+'reuse:'+_0x1dbe53+':'+_0xf0f02a;}['_buildMetaKey'](_0x16da42,_0x35f5d7){const _0x1192a1=a0_0x2c40e1;return this[_0x1192a1(0x213)]+_0x1192a1(0x27f)+_0x16da42+':'+_0x35f5d7;}['_buildIssuedKey'](_0x2ce673){return this['keyPrefix']+'issued:'+_0x2ce673;}['_buildActiveKey'](_0x1408c3,_0x171af7){const _0x54593e=a0_0x2c40e1;return this[_0x54593e(0x213)]+_0x54593e(0x23d)+_0x1408c3+':'+_0x171af7;}['_buildReservationKey'](_0x41d4f9){const _0x1b6a0b=a0_0x2c40e1;return this[_0x1b6a0b(0x213)]+'rsv:'+_0x41d4f9;}[a0_0x2c40e1(0x299)](_0xdeb5ce,_0x122342){const _0x42e968=a0_0x2c40e1;return this[_0x42e968(0x213)]+_0x42e968(0x219)+_0xdeb5ce+':'+_0x122342;}[a0_0x2c40e1(0x28b)](){const _0x31beb5=a0_0x2c40e1;return this[_0x31beb5(0x213)]+'rsv:';}['_buildIdemKey'](_0x29e667,_0xb29d64,_0x163e7a,_0x307c5e){const _0x190c2c=a0_0x2c40e1;if(_0x163e7a)return idempotencyManager[_0x190c2c(0x256)](_0x190c2c(0x29f),_0x29e667,_0xb29d64+':'+_0x163e7a+':'+_0x307c5e);return idempotencyManager[_0x190c2c(0x256)]('idgen',_0x29e667,_0xb29d64+':'+_0x307c5e);}[a0_0x2c40e1(0x22d)](_0x3512b7){const _0x2df478=a0_0x2c40e1;return this[_0x2df478(0x29c)][_0x3512b7]||0x0;}[a0_0x2c40e1(0x2f6)]({format:_0x543c9c,prefix:_0x3d0687,datePrefix:_0x22d33e,separator:_0x4403f4,numDigits:_0x4fcfe5,counterInt:_0x3905e1}){const _0x4d6835=a0_0x2c40e1,_0x1333b7={'wbcFK':_0x4d6835(0x24a),'WmSwh':function(_0x346ed1,_0xfa3066){return _0x346ed1(_0xfa3066);},'EKsAP':_0x4d6835(0x2de)},_0xb7b6f1=Math[_0x4d6835(0x291)](0xa,_0x4fcfe5)-0x1;if(_0x3905e1>_0xb7b6f1)throw new IdGeneratorError(_0x1333b7['wbcFK'],_0x4d6835(0x305)+_0x3905e1+'\x20exceeds\x20'+_0x4fcfe5+_0x4d6835(0x1fe)+_0xb7b6f1+_0x4d6835(0x20c),{'counterInt':_0x3905e1,'numDigits':_0x4fcfe5,'max':_0xb7b6f1});const _0x451734=_0x1333b7[_0x4d6835(0x2ee)](String,_0x3905e1)['padStart'](_0x4fcfe5,'0');if(_0x543c9c===_0x1333b7[_0x4d6835(0x222)])return _0x3d0687?''+_0x3d0687+_0x4403f4+_0x451734:_0x451734;return _0x3d0687?''+_0x3d0687+_0x4403f4+_0x22d33e+_0x4403f4+_0x451734:''+_0x22d33e+_0x4403f4+_0x451734;}[a0_0x2c40e1(0x255)]({format:_0xc3d66d,prefix:_0x121c9d,separator:_0x30d6b8,numDigits:_0x13aefb,number:_0x46a880}){const _0x554244=a0_0x2c40e1,_0x2e6ad9={'SBBsR':'string','HIoeo':_0x554244(0x27a),'IEphu':function(_0x1d1e17,_0x3b82db){return _0x1d1e17===_0x3b82db;},'rDeAO':_0x554244(0x2de),'uiCub':function(_0x5e8f19,_0x5e596e){return _0x5e8f19!==_0x5e596e;},'ZBRle':function(_0x9c8799,_0x19397e){return _0x9c8799!==_0x19397e;},'ImIMk':function(_0x2ed78e,_0x5947e4){return _0x2ed78e===_0x5947e4;},'oZGjr':'yyyymm','imMIW':function(_0x1228bd,_0x3d5d21,_0xdd0e7a){return _0x1228bd(_0x3d5d21,_0xdd0e7a);},'qIxoE':function(_0x2061df,_0x5d11e1){return _0x2061df||_0x5d11e1;}};if(typeof _0x46a880!==_0x2e6ad9[_0x554244(0x28e)]||_0x46a880['length']===0x0)throw new IdGeneratorError(_0x2e6ad9[_0x554244(0x210)],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x30fb48=_0x30d6b8||'',_0x505304=_0x2e6ad9[_0x554244(0x223)](_0x30fb48,'')?[_0x46a880]:_0x46a880[_0x554244(0x23b)](_0x30fb48);let _0x449c28='',_0x16c8e9;if(_0xc3d66d===_0x2e6ad9[_0x554244(0x240)]){if(_0x121c9d){if(_0x505304['length']!==0x2||_0x2e6ad9['uiCub'](_0x505304[0x0],_0x121c9d))throw new IdGeneratorError(_0x2e6ad9['HIoeo'],'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x30fb48+_0x554244(0x2af)+_0x46a880+')');_0x16c8e9=_0x505304[0x1];}else{if(_0x2e6ad9['uiCub'](_0x505304[_0x554244(0x27c)],0x1))throw new IdGeneratorError(_0x2e6ad9[_0x554244(0x210)],_0x554244(0x30b)+_0x46a880+')');_0x16c8e9=_0x505304[0x0];}}else{const _0x3dee89=_0x121c9d?0x3:0x2;if(_0x505304[_0x554244(0x27c)]!==_0x3dee89)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x554244(0x2d6)+_0x46a880+',\x20expected\x20'+_0x3dee89+_0x554244(0x1ed));let _0x4341b2=0x0;if(_0x121c9d){if(_0x2e6ad9[_0x554244(0x2a4)](_0x505304[_0x4341b2],_0x121c9d))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20prefix\x20mismatch:\x20expected\x20'+_0x121c9d+_0x554244(0x30a)+_0x505304[_0x4341b2]);_0x4341b2++;}_0x449c28=_0x505304[_0x4341b2++];const _0x411fb9=_0xc3d66d===_0x554244(0x259)?/^\d{4}$/:_0x2e6ad9[_0x554244(0x2ff)](_0xc3d66d,_0x2e6ad9[_0x554244(0x25b)])?/^\d{6}$/:/^\d{8}$/;if(!_0x411fb9['test'](_0x449c28))throw new IdGeneratorError(_0x554244(0x27a),_0x554244(0x289)+_0xc3d66d+':\x20'+_0x449c28);_0x16c8e9=_0x505304[_0x4341b2];}if(!new RegExp('^\x5cd{'+_0x13aefb+'}$')['test'](_0x16c8e9))throw new IdGeneratorError(_0x2e6ad9[_0x554244(0x210)],'Number\x20counter\x20part\x20must\x20be\x20exactly\x20'+_0x13aefb+_0x554244(0x2f3)+_0x16c8e9+')');const _0x22f305=_0x2e6ad9[_0x554244(0x2df)](parseInt,_0x16c8e9,0xa),_0x35b415=_0x2e6ad9[_0x554244(0x218)](_0x121c9d,'_');let _0x40f466;return _0xc3d66d===_0x554244(0x2de)?_0x40f466=_0x35b415+'_text':_0x40f466=_0x35b415+'_'+_0xc3d66d+'_'+_0x449c28,{'formatKey':_0x40f466,'counterInt':_0x22f305,'datePrefix':_0x449c28};}[a0_0x2c40e1(0x304)](_0x593659){const _0xda8097=a0_0x2c40e1;let _0x19df9d='';for(const _0x305cbb of _0x593659){const _0x56d207=PLACEHOLDER_MAP[_0x305cbb];if(_0x56d207){const _0x40859e=crypto[_0xda8097(0x24c)](0x0,_0x56d207['length']);_0x19df9d+=_0x56d207[_0x40859e];}else _0x19df9d+=_0x305cbb;}return _0x19df9d;}async[a0_0x2c40e1(0x228)](_0x18b07d){const _0x2a2e4f=a0_0x2c40e1,_0x5acbee={'FsxjL':_0x2a2e4f(0x29e)};if(!_0x18b07d)return null;try{const _0x43a848=redisClient['getClient'](),_0x559668=await _0x43a848[_0x2a2e4f(0x2e9)](_0x18b07d);if(_0x559668)return logger[_0x2a2e4f(0x2f4)]({'event':'idgen_idem_hit','key':_0x18b07d},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x559668);return null;}catch(_0x3f6843){return logger[_0x2a2e4f(0x2ba)]({'event':_0x5acbee['FsxjL'],'error':_0x3f6843['message']},'Idempotency\x20retrieve\x20error'),null;}}async[a0_0x2c40e1(0x2aa)](_0x5d007a,_0xfb50b4){const _0x49b96e=a0_0x2c40e1,_0x6760aa={'DQKPJ':_0x49b96e(0x242)};if(!_0x5d007a)return;try{const _0x15baaa=redisClient[_0x49b96e(0x2a0)]();await _0x15baaa['setex'](_0x5d007a,this['idemTTL'],JSON['stringify'](_0xfb50b4));}catch(_0x30a718){logger[_0x49b96e(0x2ba)]({'event':_0x6760aa['DQKPJ'],'error':_0x30a718[_0x49b96e(0x280)]},_0x49b96e(0x2ac));}}async[a0_0x2c40e1(0x308)](_0x4447cc,_0x41e8f8){const _0x452f58=a0_0x2c40e1,_0xe28f47={'YabBQ':function(_0x3fe34b,_0x275d65){return _0x3fe34b===_0x275d65;},'NTcil':_0x452f58(0x1e7),'YTouY':'Idempotency\x20SET\x20NX\x20error'};if(!_0x4447cc)return{'stored':!![],'winnerResult':null};try{const _0x1b7984=redisClient[_0x452f58(0x2a0)](),_0x2d14e1=JSON['stringify'](_0x41e8f8),_0x5067c9=await _0x1b7984['set'](_0x4447cc,_0x2d14e1,'EX',this[_0x452f58(0x284)],'NX');if(_0xe28f47['YabBQ'](_0x5067c9,'OK'))return{'stored':!![],'winnerResult':null};const _0x333f86=await _0x1b7984['get'](_0x4447cc);if(_0x333f86)return{'stored':![],'winnerResult':JSON[_0x452f58(0x220)](_0x333f86)};return logger['warn']({'event':_0xe28f47[_0x452f58(0x26b)],'key':_0x4447cc},_0x452f58(0x2c9)),{'stored':!![],'winnerResult':null};}catch(_0xf5adbb){return logger['warn']({'event':_0x452f58(0x2ea),'error':_0xf5adbb['message']},_0xe28f47['YTouY']),{'stored':!![],'winnerResult':null};}}async[a0_0x2c40e1(0x23e)](_0x37aba5,_0x623c66,_0x4be9f4){const _0x4655c8=a0_0x2c40e1,_0x280e1f={'NUnFE':'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)'};try{const _0x23f5b9=redisClient[_0x4655c8(0x2a0)]();if(_0x4be9f4){const _0x18f2ac=this[_0x4655c8(0x2ef)](_0x37aba5,_0x623c66);await _0x23f5b9['del'](_0x18f2ac);}else{const _0x423e5f=this['_buildIssuedKey'](_0x37aba5);await _0x23f5b9['srem'](_0x423e5f,_0x623c66);}}catch(_0x238a8d){logger[_0x4655c8(0x2ba)]({'event':'idgen_random_undo_error','error':_0x238a8d['message']},_0x280e1f[_0x4655c8(0x294)]);}}async[a0_0x2c40e1(0x288)](_0x3d487f,_0x54bd67,_0x4b0de8,_0x2019cf=0x0){const _0x24645e=a0_0x2c40e1;try{const _0x93a690=redisClient[_0x24645e(0x2a0)](),_0xc44c07=this[_0x24645e(0x254)](_0x3d487f,_0x54bd67),_0x2649f5=[];for(const [_0x741ae3,_0x2fe468]of Object[_0x24645e(0x2a1)](_0x4b0de8)){_0x2649f5[_0x24645e(0x201)](_0x741ae3,String(_0x2fe468));}if(_0x2649f5[_0x24645e(0x27c)]>0x0){await _0x93a690['hset'](_0xc44c07,..._0x2649f5);if(_0x2019cf>0x0)await _0x93a690['expire'](_0xc44c07,_0x2019cf);}}catch(_0x586527){logger[_0x24645e(0x2ba)]({'event':_0x24645e(0x226),'error':_0x586527[_0x24645e(0x280)]},'Meta\x20update\x20error');}}async[a0_0x2c40e1(0x277)](_0xd27ade){const _0x945ab3=a0_0x2c40e1,_0x5d30b8={'BpcFT':'number','rWsnd':function(_0x59c38f,_0x1f0ee2){return _0x59c38f(_0x1f0ee2);},'umshw':function(_0x2516b4,_0x551e60){return _0x2516b4===_0x551e60;},'QKGLx':function(_0x1d40c0,_0x41acf2){return _0x1d40c0(_0x41acf2);},'XSRHl':'idgen_idem_loser_release_error','bLQgT':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x945ab3(0x215));const _0x56755c=this[_0x945ab3(0x27b)](_0xd27ade),_0x4277d2=this[_0x945ab3(0x206)](_0xd27ade[_0x945ab3(0x2f0)]),{resource:_0x43ea99,format:_0x12fcde,prefix:_0x2afcdb,separator:_0x383b46,numDigits:_0x395870,reuseDelete:_0x48bb24}=_0x56755c,{formatKey:_0x3e0304,datePrefix:_0x177a48}=this[_0x945ab3(0x217)](_0x12fcde,_0x2afcdb),_0x38f8ba=this[_0x945ab3(0x2a5)](_0x43ea99,_0x3e0304),_0x377fba=this[_0x945ab3(0x1fc)](_0x43ea99,_0x3e0304),_0x1259ff=this[_0x945ab3(0x22d)](_0x12fcde);let _0x37cb40=null;if(_0x4277d2){_0x37cb40=this['_buildIdemKey'](_0x5d30b8[_0x945ab3(0x312)],_0x43ea99,_0x3e0304,_0x4277d2);const _0x39cd20=await this['_retrieveIdemCache'](_0x37cb40);if(_0x39cd20)return _0x39cd20;}const _0x239770=redisClient[_0x945ab3(0x2a0)](),_0x4373dd=await _0x239770['eval'](LUA_GENERATE_NUMBER,0x2,_0x38f8ba,_0x377fba,_0x48bb24?'1':'0',_0x5d30b8[_0x945ab3(0x1f3)](String,_0x1259ff)),_0x9b11de=_0x4373dd[0x0],_0x53faff=_0x5d30b8[_0x945ab3(0x25e)](_0x4373dd[0x1],0x1),_0x3687c6=this[_0x945ab3(0x2f6)]({'format':_0x12fcde,'prefix':_0x2afcdb,'datePrefix':_0x177a48,'separator':_0x383b46,'numDigits':_0x395870,'counterInt':_0x9b11de}),_0x45006f={'value':_0x3687c6,'counter':_0x9b11de,'resource':_0x43ea99,'formatKey':_0x3e0304,'isReused':_0x53faff,'generatedAt':new Date()['toISOString']()},_0x483843=await this[_0x945ab3(0x308)](_0x37cb40,_0x45006f);if(!_0x483843['stored']){try{await _0x239770[_0x945ab3(0x283)](LUA_RELEASE_NUMBER,0x1,_0x377fba,String(_0x9b11de),_0x5d30b8['QKGLx'](String,_0x1259ff));}catch(_0x3bb255){logger['warn']({'event':_0x5d30b8[_0x945ab3(0x20e)],'error':_0x3bb255[_0x945ab3(0x280)],'resource':_0x43ea99,'formatKey':_0x3e0304,'counterInt':_0x9b11de},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger['info']({'event':_0x5d30b8['bLQgT'],'resource':_0x43ea99,'formatKey':_0x3e0304,'counter':_0x9b11de},_0x945ab3(0x296)),_0x483843['winnerResult'];}return this['_updateMeta'](_0x43ea99,_0x3e0304,{'lastValue':_0x3687c6,'lastCounter':_0x9b11de,'lastIsReused':_0x53faff,'lastGeneratedAt':_0x45006f[_0x945ab3(0x282)]},_0x1259ff),logger['info']({'event':_0x945ab3(0x2a3),'resource':_0x43ea99,'formatKey':_0x3e0304,'counter':_0x9b11de,'isReused':_0x53faff},'ID\x20Generator\x20number:\x20'+_0x3687c6),_0x45006f;}async['releaseNumber'](_0x1e0068){const _0x4d4732=a0_0x2c40e1,_0x37a32c={'giXeg':'IDGEN_DISABLED','CyadK':_0x4d4732(0x2fc),'reMwf':function(_0x366e31,_0x21cc8d){return _0x366e31!==_0x21cc8d;},'VCVvC':function(_0x202b71,_0x24f282){return _0x202b71===_0x24f282;},'Ksbdf':_0x4d4732(0x27a),'rYbfb':function(_0x3e1816,_0x175bea){return _0x3e1816<_0x175bea;},'xQLGH':'text','rUJpA':function(_0xba2f87,_0x5697b1){return _0xba2f87(_0x5697b1);}};if(!this[_0x4d4732(0x2f5)])throw new IdGeneratorError(_0x37a32c[_0x4d4732(0x1fb)],_0x37a32c['CyadK']);let _0x3ade05,_0x50facf,_0x155749,_0x520ac7;const _0xa699fe=this[_0x4d4732(0x206)](_0x1e0068[_0x4d4732(0x2f0)]);if(_0x1e0068[_0x4d4732(0x307)]!==undefined&&_0x37a32c[_0x4d4732(0x24e)](_0x1e0068[_0x4d4732(0x307)],null)){this['_validateResource'](_0x1e0068['resource']),_0x3ade05=_0x1e0068['resource'];if(typeof _0x1e0068[_0x4d4732(0x238)]!=='string'||_0x37a32c[_0x4d4732(0x2b8)](_0x1e0068[_0x4d4732(0x238)]['length'],0x0))throw new IdGeneratorError(_0x37a32c['Ksbdf'],'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x50facf=_0x1e0068['formatKey'];if(!Number[_0x4d4732(0x290)](_0x1e0068[_0x4d4732(0x307)])||_0x37a32c[_0x4d4732(0x236)](_0x1e0068['counterInt'],0x1))throw new IdGeneratorError(_0x37a32c['Ksbdf'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x1e0068['counterInt']+')');_0x155749=_0x1e0068[_0x4d4732(0x307)];const _0x28e56d=_0x50facf['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x520ac7=_0x28e56d?_0x28e56d[0x1]:_0x37a32c['xQLGH'];}else{const _0x2dff6d=this[_0x4d4732(0x27b)](_0x1e0068),_0x485e8e=this[_0x4d4732(0x255)]({'format':_0x2dff6d[_0x4d4732(0x1ff)],'prefix':_0x2dff6d[_0x4d4732(0x309)],'separator':_0x2dff6d['separator'],'numDigits':_0x2dff6d['numDigits'],'number':_0x1e0068[_0x4d4732(0x277)]});_0x3ade05=_0x2dff6d['resource'],_0x50facf=_0x485e8e['formatKey'],_0x155749=_0x485e8e[_0x4d4732(0x307)],_0x520ac7=_0x2dff6d['format'];}const _0x2ce142=this[_0x4d4732(0x1fc)](_0x3ade05,_0x50facf),_0x5a9565=this['_getCounterTTL'](_0x520ac7);let _0x2f16be=null;if(_0xa699fe){_0x2f16be=this[_0x4d4732(0x1ef)]('release',_0x3ade05,_0x50facf,_0xa699fe);const _0xf79280=await this[_0x4d4732(0x228)](_0x2f16be);if(_0xf79280)return _0xf79280;}const _0x4a2c81=redisClient['getClient']();await _0x4a2c81['eval'](LUA_RELEASE_NUMBER,0x1,_0x2ce142,_0x37a32c['rUJpA'](String,_0x155749),String(_0x5a9565));const _0x3634d0={'released':!![],'resource':_0x3ade05,'formatKey':_0x50facf,'counter':_0x155749,'releasedAt':new Date()[_0x4d4732(0x229)]()};return await this['_storeIdemCache'](_0x2f16be,_0x3634d0),this[_0x4d4732(0x288)](_0x3ade05,_0x50facf,{'lastReleasedCounter':_0x155749,'lastReleasedAt':_0x3634d0[_0x4d4732(0x233)]},_0x5a9565),logger[_0x4d4732(0x2f4)]({'event':'idgen_number_released','resource':_0x3ade05,'formatKey':_0x50facf,'counter':_0x155749},'ID\x20Generator\x20number\x20released:\x20'+_0x155749),_0x3634d0;}async['reserveNumber'](_0xae4b58){const _0x1acc0d=a0_0x2c40e1,_0xb9bbcf={'qXMTp':_0x1acc0d(0x215),'Ogcmu':function(_0x4345a0,_0x5bcb6b){return _0x4345a0*_0x5bcb6b;},'bmsDK':'resource','hBpmq':_0x1acc0d(0x238),'YtcfA':_0x1acc0d(0x1ff),'Xaxux':_0x1acc0d(0x1f7),'yxYDC':_0x1acc0d(0x2fe),'KIrpy':function(_0x8bb4d3,_0x5e2f9a){return _0x8bb4d3(_0x5e2f9a);},'uTsLd':_0x1acc0d(0x224),'hKccM':function(_0x21bb91,_0xe0a37a){return _0x21bb91(_0xe0a37a);},'HupRA':function(_0x225c13,_0x5199aa){return _0x225c13===_0x5199aa;},'njArb':'idgen_reserve_value_persist_error','ggxyH':_0x1acc0d(0x2b3)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xb9bbcf[_0x1acc0d(0x211)]);const _0x9c1d7d=this[_0x1acc0d(0x27b)](_0xae4b58),_0x496abf=this[_0x1acc0d(0x235)](_0xae4b58['ttl']),_0x4beaeb=this[_0x1acc0d(0x206)](_0xae4b58['idempotencyKey']),{resource:_0x3d0a9f,format:_0x50a30a,prefix:_0xe1087,separator:_0x1818e9,numDigits:_0x2a31fa,reuseDelete:_0x1635df}=_0x9c1d7d,{formatKey:_0x2a122f,datePrefix:_0x10cca2}=this[_0x1acc0d(0x217)](_0x50a30a,_0xe1087),_0x2a97e6=this[_0x1acc0d(0x2a5)](_0x3d0a9f,_0x2a122f),_0x43050c=this[_0x1acc0d(0x1fc)](_0x3d0a9f,_0x2a122f),_0x2fecf8=this['_buildReservationIndexKey'](_0x3d0a9f,_0x2a122f),_0x5544b7=this[_0x1acc0d(0x22d)](_0x50a30a);let _0x5ead9d=null;if(_0x4beaeb){_0x5ead9d=this['_buildIdemKey']('reserve',_0x3d0a9f,_0x2a122f,_0x4beaeb);const _0x278d2e=await this[_0x1acc0d(0x228)](_0x5ead9d);if(_0x278d2e)return _0x278d2e;}const _0x473949=crypto['randomUUID'](),_0x1f9ac9=this['_buildReservationKey'](_0x473949),_0x3bc4d7=this['_buildReservationKeyPrefix'](),_0x261ea3=Date['now'](),_0x18f3e2=_0x261ea3+_0xb9bbcf[_0x1acc0d(0x1fd)](_0x496abf,0x3e8),_0x561232=_0x496abf*0x3e8,_0x55e03d=new Date(_0x261ea3)['toISOString'](),_0x54c00d=new Date(_0x18f3e2)['toISOString'](),_0xbf562f=[_0xb9bbcf[_0x1acc0d(0x239)],_0x3d0a9f,_0xb9bbcf[_0x1acc0d(0x203)],_0x2a122f,_0xb9bbcf[_0x1acc0d(0x230)],_0x50a30a,'prefix',_0xe1087,_0xb9bbcf['Xaxux'],_0x1818e9,'numDigits',String(_0x2a31fa),_0x1acc0d(0x231),_0x10cca2||'',_0xb9bbcf[_0x1acc0d(0x216)],_0x55e03d,_0x1acc0d(0x1ee),_0x54c00d,_0x1acc0d(0x2e0),_0xb9bbcf[_0x1acc0d(0x2ab)](String,_0x561232)];_0x4beaeb&&_0xbf562f['push'](_0xb9bbcf[_0x1acc0d(0x22a)],_0x4beaeb);const _0x520e9b=redisClient['getClient'](),_0x340537=await _0x520e9b['eval'](LUA_RESERVE_NUMBER,0x3,_0x2a97e6,_0x43050c,_0x2fecf8,_0x1635df?'1':'0',String(_0x5544b7),_0x473949,_0x1f9ac9,_0xb9bbcf['KIrpy'](String,_0x561232),String(_0x18f3e2),_0xb9bbcf[_0x1acc0d(0x2c0)](String,_0x261ea3),_0x3bc4d7,..._0xbf562f),_0x295b4c=_0x340537[0x0],_0x99b36a=_0xb9bbcf[_0x1acc0d(0x313)](_0x340537[0x1],0x1),_0x3f587a=_0x340537[0x2]||0x0;let _0x62d7bc;try{_0x62d7bc=this['_formatNumber']({'format':_0x50a30a,'prefix':_0xe1087,'datePrefix':_0x10cca2,'separator':_0x1818e9,'numDigits':_0x2a31fa,'counterInt':_0x295b4c});}catch(_0x262e8d){try{await _0x520e9b[_0x1acc0d(0x283)](LUA_CANCEL_RESERVATION,0x3,_0x1f9ac9,_0x2fecf8,_0x43050c,_0x473949,_0xb9bbcf[_0x1acc0d(0x2ab)](String,_0x5544b7));}catch(_0x247c1c){logger[_0x1acc0d(0x2ba)]({'event':'idgen_reserve_overflow_compensation_error','error':_0x247c1c[_0x1acc0d(0x280)],'resource':_0x3d0a9f,'formatKey':_0x2a122f,'counterInt':_0x295b4c,'token':_0x473949},_0x1acc0d(0x2dd));}throw _0x262e8d;}try{await _0x520e9b['hset'](_0x1f9ac9,'value',_0x62d7bc);}catch(_0x5d51a9){logger[_0x1acc0d(0x2ba)]({'event':_0xb9bbcf['njArb'],'error':_0x5d51a9['message'],'resource':_0x3d0a9f,'formatKey':_0x2a122f,'counterInt':_0x295b4c,'token':_0x473949},_0x1acc0d(0x22e));}const _0x47bd41={'token':_0x473949,'value':_0x62d7bc,'counter':_0x295b4c,'resource':_0x3d0a9f,'formatKey':_0x2a122f,'isReused':_0x99b36a,'createdAt':_0x55e03d,'expiresAt':_0x54c00d,'reapedCount':_0x3f587a},_0xd0dc01=await this['_storeIdemCacheNX'](_0x5ead9d,_0x47bd41);if(!_0xd0dc01['stored']){try{await _0x520e9b[_0x1acc0d(0x283)](LUA_CANCEL_RESERVATION,0x3,_0x1f9ac9,_0x2fecf8,_0x43050c,_0x473949,_0xb9bbcf['hKccM'](String,_0x5544b7));}catch(_0x17fd56){logger[_0x1acc0d(0x2ba)]({'event':_0xb9bbcf[_0x1acc0d(0x2e3)],'error':_0x17fd56['message'],'resource':_0x3d0a9f,'formatKey':_0x2a122f,'counterInt':_0x295b4c,'token':_0x473949},_0x1acc0d(0x2ca));}return logger[_0x1acc0d(0x2f4)]({'event':'idgen_reserve_idem_loser','resource':_0x3d0a9f,'formatKey':_0x2a122f,'counter':_0x295b4c,'token':_0x473949},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0xd0dc01[_0x1acc0d(0x257)];}return this['_updateMeta'](_0x3d0a9f,_0x2a122f,{'lastReservedCounter':_0x295b4c,'lastReservedAt':_0x55e03d,'lastReapedCount':_0x3f587a},_0x5544b7),logger[_0x1acc0d(0x2f4)]({'event':'idgen_number_reserved','resource':_0x3d0a9f,'formatKey':_0x2a122f,'counter':_0x295b4c,'isReused':_0x99b36a,'token':_0x473949,'ttl':_0x496abf,'reapedCount':_0x3f587a},_0x1acc0d(0x248)+_0x62d7bc+_0x1acc0d(0x2d7)+_0x473949+')'),_0x47bd41;}async[a0_0x2c40e1(0x2a2)](_0x71f04a){const _0x4c9d0e=a0_0x2c40e1,_0x4bc3a8={'nxAWk':_0x4c9d0e(0x29f),'uWGCT':_0x4c9d0e(0x2d0),'jAQBb':function(_0x31d34e,_0xa48c0d){return _0x31d34e!==_0xa48c0d;},'qJtkF':function(_0x177ab8,_0xac9dd3,_0x3af557){return _0x177ab8(_0xac9dd3,_0x3af557);},'uMyZv':_0x4c9d0e(0x317)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x4c9d0e(0x2fc));const _0xfef031=this[_0x4c9d0e(0x30f)](_0x71f04a&&_0x71f04a['token']),_0x1bb5e6=this[_0x4c9d0e(0x206)](_0x71f04a&&_0x71f04a[_0x4c9d0e(0x2f0)]);let _0x18fe83=null;if(_0x1bb5e6){_0x18fe83=idempotencyManager['buildDeterministicKey'](_0x4bc3a8[_0x4c9d0e(0x1f6)],_0x4bc3a8['uWGCT'],_0xfef031+':'+_0x1bb5e6);const _0x3953c4=await this['_retrieveIdemCache'](_0x18fe83);if(_0x3953c4)return _0x3953c4;}const _0x304f4e=await this['_getReservationContext'](_0xfef031),_0x5856aa=redisClient['getClient'](),_0x22ac97=await _0x5856aa[_0x4c9d0e(0x283)](LUA_CONFIRM_RESERVATION,0x2,_0x304f4e['rsvKey'],_0x304f4e['rsvIdxKey'],_0xfef031);if(!_0x22ac97||_0x4bc3a8['jAQBb'](_0x22ac97[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x4c9d0e(0x2ec)+_0xfef031,{'token':_0xfef031});const _0x37da37=_0x4bc3a8[_0x4c9d0e(0x26e)](parseInt,_0x22ac97[0x1],0xa),_0x51bcb9=_0x22ac97[0x2],_0x226498=_0x22ac97[0x3],_0x47193a=new Date()[_0x4c9d0e(0x229)](),_0x41b9ba={'confirmed':!![],'token':_0xfef031,'value':_0x51bcb9,'counter':_0x37da37,'resource':_0x304f4e[_0x4c9d0e(0x249)],'formatKey':_0x226498,'confirmedAt':_0x47193a};await this[_0x4c9d0e(0x2aa)](_0x18fe83,_0x41b9ba);const _0x620838=_0x226498[_0x4c9d0e(0x269)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x15b60e=_0x620838?_0x620838[0x1]:'text',_0x378aca=this['_getCounterTTL'](_0x15b60e);return this['_updateMeta'](_0x304f4e['resource'],_0x226498,{'lastConfirmedCounter':_0x37da37,'lastConfirmedAt':_0x47193a},_0x378aca),logger[_0x4c9d0e(0x2f4)]({'event':_0x4bc3a8[_0x4c9d0e(0x2cf)],'resource':_0x304f4e[_0x4c9d0e(0x249)],'formatKey':_0x226498,'counter':_0x37da37,'token':_0xfef031},_0x4c9d0e(0x2f9)+_0x51bcb9+_0x4c9d0e(0x2d7)+_0xfef031+')'),_0x41b9ba;}async['cancelReservation'](_0x5e5c17){const _0x2830db=a0_0x2c40e1,_0x17b0ce={'FffpB':'IDGEN_DISABLED','Gdsms':_0x2830db(0x2fc),'ATktT':_0x2830db(0x21f),'MwPBw':'text','rIbzF':function(_0x13acc8,_0x480001){return _0x13acc8(_0x480001);},'oIwCr':function(_0x19b564,_0x29dd5f,_0x18ede6){return _0x19b564(_0x29dd5f,_0x18ede6);},'XEuqn':'idgen_reservation_cancelled'};if(!this['enabled'])throw new IdGeneratorError(_0x17b0ce['FffpB'],_0x17b0ce[_0x2830db(0x2e5)]);const _0x38c4be=this[_0x2830db(0x30f)](_0x5e5c17&&_0x5e5c17['token']),_0x3b48cc=this[_0x2830db(0x206)](_0x5e5c17&&_0x5e5c17[_0x2830db(0x2f0)]);let _0x5a3274=null;if(_0x3b48cc){_0x5a3274=idempotencyManager[_0x2830db(0x256)]('idgen',_0x17b0ce['ATktT'],_0x38c4be+':'+_0x3b48cc);const _0x1cf512=await this['_retrieveIdemCache'](_0x5a3274);if(_0x1cf512)return _0x1cf512;}const _0x4193dd=await this[_0x2830db(0x1fa)](_0x38c4be),_0x51204c=this[_0x2830db(0x1fc)](_0x4193dd[_0x2830db(0x249)],_0x4193dd[_0x2830db(0x238)]),_0x341c71=_0x4193dd[_0x2830db(0x238)][_0x2830db(0x269)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1bd75c=_0x341c71?_0x341c71[0x1]:_0x17b0ce['MwPBw'],_0x29c6ab=this['_getCounterTTL'](_0x1bd75c),_0x3ab4bf=redisClient['getClient'](),_0x1fae6d=await _0x3ab4bf['eval'](LUA_CANCEL_RESERVATION,0x3,_0x4193dd[_0x2830db(0x21b)],_0x4193dd['rsvIdxKey'],_0x51204c,_0x38c4be,_0x17b0ce[_0x2830db(0x28c)](String,_0x29c6ab));if(!_0x1fae6d||_0x1fae6d[0x0]!==0x1)throw new IdGeneratorError(_0x2830db(0x2f1),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x38c4be,{'token':_0x38c4be});const _0x3f47bc=_0x17b0ce[_0x2830db(0x1ea)](parseInt,_0x1fae6d[0x1],0xa),_0x2f5727=_0x1fae6d[0x2],_0x216898=_0x1fae6d[0x3],_0x2c5727=new Date()['toISOString'](),_0x2f8cbd={'cancelled':!![],'token':_0x38c4be,'value':_0x2f5727,'counter':_0x3f47bc,'resource':_0x4193dd['resource'],'formatKey':_0x216898,'releasedToReuse':!![],'cancelledAt':_0x2c5727};return await this[_0x2830db(0x2aa)](_0x5a3274,_0x2f8cbd),this[_0x2830db(0x288)](_0x4193dd[_0x2830db(0x249)],_0x216898,{'lastCancelledCounter':_0x3f47bc,'lastCancelledAt':_0x2c5727},_0x29c6ab),logger['info']({'event':_0x17b0ce['XEuqn'],'resource':_0x4193dd['resource'],'formatKey':_0x216898,'counter':_0x3f47bc,'token':_0x38c4be},_0x2830db(0x2c8)+_0x2f5727+'\x20(token='+_0x38c4be+')'),_0x2f8cbd;}async[a0_0x2c40e1(0x316)](_0x45337f){const _0x3eb016=a0_0x2c40e1,_0x2d2aff={'tqqhb':'reserve_extend','dYYoo':function(_0x5d2659,_0x32784a){return _0x5d2659+_0x32784a;},'AeFMw':function(_0x231574,_0x1a4369){return _0x231574(_0x1a4369);},'TdClW':'IDGEN_RESERVATION_NOT_FOUND','zTzbo':'text'};if(!this[_0x3eb016(0x2f5)])throw new IdGeneratorError('IDGEN_DISABLED',_0x3eb016(0x2fc));const _0x3d3fc8=this['_validateReservationToken'](_0x45337f&&_0x45337f[_0x3eb016(0x24d)]),_0x1f3f2d=this['_validateReserveTTL'](_0x45337f&&_0x45337f['ttl']),_0x2128e5=this[_0x3eb016(0x206)](_0x45337f&&_0x45337f[_0x3eb016(0x2f0)]);let _0x35526c=null;if(_0x2128e5){_0x35526c=idempotencyManager[_0x3eb016(0x256)](_0x3eb016(0x29f),_0x2d2aff[_0x3eb016(0x2d3)],_0x3d3fc8+':'+_0x2128e5);const _0x4c3816=await this['_retrieveIdemCache'](_0x35526c);if(_0x4c3816)return _0x4c3816;}const _0x7753e6=await this['_getReservationContext'](_0x3d3fc8),_0x4e85ad=Date['now'](),_0x532516=_0x2d2aff[_0x3eb016(0x2ae)](_0x4e85ad,_0x1f3f2d*0x3e8),_0x3217fe=_0x1f3f2d*0x3e8,_0x26b38=new Date(_0x532516)[_0x3eb016(0x229)](),_0x44053e=redisClient['getClient'](),_0x4f9705=await _0x44053e['eval'](LUA_EXTEND_RESERVATION,0x2,_0x7753e6['rsvKey'],_0x7753e6[_0x3eb016(0x266)],_0x3d3fc8,String(_0x3217fe),_0x2d2aff[_0x3eb016(0x209)](String,_0x532516),_0x26b38);if(!_0x4f9705||_0x4f9705[0x0]!==0x1)throw new IdGeneratorError(_0x2d2aff['TdClW'],_0x3eb016(0x2ec)+_0x3d3fc8,{'token':_0x3d3fc8});const _0x8fd86b=_0x4f9705[0x1],_0x19649a=parseInt(_0x4f9705[0x2],0xa),_0x3066e6=_0x4f9705[0x3],_0x34ac19=_0x4f9705[0x4],_0x2d5c57=new Date(_0x4e85ad)['toISOString'](),_0x603c9={'extended':!![],'token':_0x3d3fc8,'previousExpiresAt':_0x8fd86b,'expiresAt':_0x26b38,'ttlMs':_0x3217fe,'resource':_0x7753e6[_0x3eb016(0x249)],'formatKey':_0x34ac19,'counter':_0x19649a,'value':_0x3066e6,'extendedAt':_0x2d5c57};await this[_0x3eb016(0x2aa)](_0x35526c,_0x603c9);const _0x560302=_0x34ac19['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x16bb46=_0x560302?_0x560302[0x1]:_0x2d2aff['zTzbo'],_0x1e0ee1=this[_0x3eb016(0x22d)](_0x16bb46);return this[_0x3eb016(0x288)](_0x7753e6[_0x3eb016(0x249)],_0x34ac19,{'lastExtendedCounter':_0x19649a,'lastExtendedAt':_0x2d5c57},_0x1e0ee1),logger[_0x3eb016(0x2f4)]({'event':_0x3eb016(0x214),'resource':_0x7753e6[_0x3eb016(0x249)],'formatKey':_0x34ac19,'counter':_0x19649a,'token':_0x3d3fc8,'ttl':_0x1f3f2d},_0x3eb016(0x2c6)+_0x3066e6+_0x3eb016(0x2d7)+_0x3d3fc8+_0x3eb016(0x22c)+_0x1f3f2d+'s)'),_0x603c9;}async[a0_0x2c40e1(0x302)](_0x341171){const _0x2a0662=a0_0x2c40e1,_0x5891e4={'rFZFV':'IDGEN_DISABLED','uZfaP':'ID\x20Generator\x20is\x20disabled','LURls':function(_0x30e678,_0xd94272,_0xbe9de8){return _0x30e678(_0xd94272,_0xbe9de8);},'KJwHY':function(_0xc2e538,_0x3f8cbf){return _0xc2e538===_0x3f8cbf;}};if(!this['enabled'])throw new IdGeneratorError(_0x5891e4[_0x2a0662(0x28d)],_0x5891e4[_0x2a0662(0x274)]);const _0x1610b3=this[_0x2a0662(0x30f)](_0x341171&&_0x341171['token']),_0x2fc0f1=this['_buildReservationKey'](_0x1610b3),_0x3c1456=redisClient['getClient'](),_0x2ca059=_0x3c1456[_0x2a0662(0x221)]();_0x2ca059['hgetall'](_0x2fc0f1),_0x2ca059['pttl'](_0x2fc0f1);const _0x221245=await _0x2ca059['exec'](),_0xe195dd=_0x221245&&_0x221245[0x0]&&_0x221245[0x0][0x1],_0x26ebdf=_0x221245&&_0x221245[0x1]&&_0x221245[0x1][0x1];if(!_0xe195dd||Object['keys'](_0xe195dd)[_0x2a0662(0x27c)]===0x0)throw new IdGeneratorError(_0x2a0662(0x2f1),_0x2a0662(0x2ec)+_0x1610b3,{'token':_0x1610b3});return{'token':_0x1610b3,'resource':_0xe195dd['resource']||null,'formatKey':_0xe195dd[_0x2a0662(0x238)]||null,'format':_0xe195dd[_0x2a0662(0x1ff)]||null,'prefix':_0xe195dd[_0x2a0662(0x309)]||'','separator':_0xe195dd[_0x2a0662(0x1f7)]||'','numDigits':_0xe195dd[_0x2a0662(0x2fa)]?_0x5891e4[_0x2a0662(0x1f1)](parseInt,_0xe195dd[_0x2a0662(0x2fa)],0xa):null,'datePrefix':_0xe195dd['datePrefix']||'','counter':_0xe195dd[_0x2a0662(0x200)]?parseInt(_0xe195dd[_0x2a0662(0x200)],0xa):null,'value':_0xe195dd['value']||null,'isReused':_0x5891e4[_0x2a0662(0x1ec)](_0xe195dd[_0x2a0662(0x306)],'1')||_0xe195dd['isReused']===0x1,'createdAt':_0xe195dd['createdAt']||null,'expiresAt':_0xe195dd[_0x2a0662(0x1ee)]||null,'ttlRemainingMs':typeof _0x26ebdf==='number'&&_0x26ebdf>=0x0?_0x26ebdf:null};}async['_getReservationContext'](_0x5d8493){const _0x5bcbff=a0_0x2c40e1,_0x51c5fe={'cJubN':function(_0xa5dd31,_0x57303c){return _0xa5dd31||_0x57303c;},'hUZzH':_0x5bcbff(0x2f1)},_0x1ccd3f=this['_buildReservationKey'](_0x5d8493),_0x3a6c72=redisClient[_0x5bcbff(0x2a0)](),_0x16a46b=await _0x3a6c72['hmget'](_0x1ccd3f,_0x5bcbff(0x249),_0x5bcbff(0x238)),_0x431e0b=_0x16a46b&&_0x16a46b[0x0],_0x1d1031=_0x16a46b&&_0x16a46b[0x1];if(_0x51c5fe['cJubN'](!_0x431e0b,!_0x1d1031))throw new IdGeneratorError(_0x51c5fe[_0x5bcbff(0x2db)],_0x5bcbff(0x2ec)+_0x5d8493,{'token':_0x5d8493});return{'resource':_0x431e0b,'formatKey':_0x1d1031,'rsvKey':_0x1ccd3f,'rsvIdxKey':this[_0x5bcbff(0x299)](_0x431e0b,_0x1d1031)};}async['random'](_0x2c5beb){const _0x59a485=a0_0x2c40e1,_0x3c7d19={'FOiZq':'IDGEN_DISABLED','jKCID':function(_0x443907,_0x15e425){return _0x443907===_0x15e425;},'kPBJQ':'random','YDsyL':function(_0x4383a4,_0x5c47b7){return _0x4383a4<_0x5c47b7;},'qOHFu':function(_0x128ec5,_0x13ba16){return _0x128ec5===_0x13ba16;},'bvRWr':'IDGEN_UNIQUE_RETRY_EXHAUSTED','xnIPj':function(_0x4477a4,_0x4077ad){return _0x4477a4*_0x4077ad;},'SruRY':'idgen_random_generated','FoyGP':function(_0xe213c8,_0x8dd56b){return _0xe213c8||_0x8dd56b;}};if(!this[_0x59a485(0x2f5)])throw new IdGeneratorError(_0x3c7d19['FOiZq'],'ID\x20Generator\x20is\x20disabled');this[_0x59a485(0x2b0)](_0x2c5beb[_0x59a485(0x249)]),this[_0x59a485(0x276)](_0x2c5beb['pattern']);const _0x2ea2f4=this['_validateTTL'](_0x2c5beb[_0x59a485(0x2d4)]),_0x108958=this['_validateMaxRetry'](_0x2c5beb[_0x59a485(0x2d5)]),_0x4de58f=this['_validateIdempotencyKey'](_0x2c5beb['idempotencyKey']),_0x4e054a=_0x3c7d19[_0x59a485(0x26f)](_0x2c5beb[_0x59a485(0x24b)],!![]),{resource:_0x18cd32,pattern:_0x40d061}=_0x2c5beb;let _0x4c78e2=null;if(_0x4de58f){_0x4c78e2=this[_0x59a485(0x1ef)](_0x3c7d19['kPBJQ'],_0x18cd32,null,_0x4de58f);const _0x2990f5=await this[_0x59a485(0x228)](_0x4c78e2);if(_0x2990f5)return _0x2990f5;}const _0x2dd0d9=redisClient['getClient']();let _0x195186=null,_0x5add72=0x0;if(!_0x4e054a)_0x195186=this['_generateFromPattern'](_0x40d061),_0x5add72=0x1;else{for(let _0x9af7ee=0x0;_0x3c7d19[_0x59a485(0x234)](_0x9af7ee,_0x108958);_0x9af7ee++){_0x5add72++;const _0x4c9a6b=this[_0x59a485(0x304)](_0x40d061);if(_0x2ea2f4){const _0x2340cf=this['_buildActiveKey'](_0x18cd32,_0x4c9a6b),_0x152a7d=await _0x2dd0d9[_0x59a485(0x25c)](_0x2340cf,'1','EX',_0x2ea2f4,'NX');if(_0x3c7d19[_0x59a485(0x300)](_0x152a7d,'OK')){_0x195186=_0x4c9a6b;break;}}else{const _0x56db66=this[_0x59a485(0x2b6)](_0x18cd32),_0x13bab1=await _0x2dd0d9[_0x59a485(0x30c)](_0x56db66,_0x4c9a6b);if(_0x13bab1===0x1){_0x195186=_0x4c9a6b;break;}}}if(_0x195186===null)throw new IdGeneratorError(_0x3c7d19[_0x59a485(0x244)],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x108958+_0x59a485(0x31c),{'resource':_0x18cd32,'pattern':_0x40d061,'maxRetry':_0x108958});}const _0x3b60ae={'value':_0x195186,'resource':_0x18cd32,'pattern':_0x40d061,'attemptCount':_0x5add72,'generatedAt':new Date()[_0x59a485(0x229)]()};_0x2ea2f4&&_0x4e054a&&(_0x3b60ae[_0x59a485(0x1ee)]=new Date(Date['now']()+_0x3c7d19['xnIPj'](_0x2ea2f4,0x3e8))['toISOString']());const _0x3da80d=await this[_0x59a485(0x308)](_0x4c78e2,_0x3b60ae);if(!_0x3da80d[_0x59a485(0x261)])return _0x4e054a&&await this['_undoRandomReservation'](_0x18cd32,_0x195186,_0x2ea2f4),logger['info']({'event':'idgen_random_idem_loser','resource':_0x18cd32,'pattern':_0x40d061,'value':_0x195186},_0x59a485(0x2d9)),_0x3da80d['winnerResult'];return logger['info']({'event':_0x3c7d19[_0x59a485(0x2d2)],'resource':_0x18cd32,'pattern':_0x40d061,'attemptCount':_0x5add72,'ensureUnique':_0x4e054a,'ttl':_0x3c7d19[_0x59a485(0x2eb)](_0x2ea2f4,0x0)},'ID\x20Generator\x20random:\x20'+_0x195186),_0x3b60ae;}async['pin'](_0xf0246e){const _0x3288d0=a0_0x2c40e1,_0x3eeab8={'EDlMs':function(_0x4a1be1,_0x59cbaf){return _0x4a1be1==_0x59cbaf;},'jJDDh':'IDGEN_INVALID_DIGITS','zsHcG':function(_0x5150b3,_0x530128){return _0x5150b3===_0x530128;}},_0x2a730a=_0x3eeab8['EDlMs'](_0xf0246e[_0x3288d0(0x20a)],null)?this[_0x3288d0(0x29b)]:_0xf0246e[_0x3288d0(0x20a)];if(!Number['isInteger'](_0x2a730a)||_0x2a730a<MIN_PIN_DIGITS||_0x2a730a>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x3eeab8['jJDDh'],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x2a730a+')');const _0x174ab5='9'[_0x3288d0(0x2ce)](_0x2a730a);return this['random']({'resource':_0xf0246e[_0x3288d0(0x249)],'pattern':_0x174ab5,'ensureUnique':_0x3eeab8[_0x3288d0(0x251)](_0xf0246e['ensureUnique'],!![]),'ttl':_0xf0246e[_0x3288d0(0x2d4)],'maxRetry':_0xf0246e[_0x3288d0(0x2d5)],'idempotencyKey':_0xf0246e[_0x3288d0(0x2f0)]});}async['serial'](_0x233c65){const _0x154eb3=a0_0x2c40e1,_0x3c1824=_0x233c65[_0x154eb3(0x2f7)]||this[_0x154eb3(0x26d)];return this['random']({'resource':_0x233c65['resource'],'pattern':_0x3c1824,'ensureUnique':_0x233c65['ensureUnique']!==![],'ttl':_0x233c65['ttl'],'maxRetry':_0x233c65[_0x154eb3(0x2d5)],'idempotencyKey':_0x233c65['idempotencyKey']});}async['code'](_0x44c833){const _0x35680e=a0_0x2c40e1,_0x58d6bd={'oXVdL':function(_0x41e2c1,_0x1cac91){return _0x41e2c1!==_0x1cac91;}},_0x1b3a36=_0x44c833[_0x35680e(0x2f7)]||this[_0x35680e(0x278)];return this[_0x35680e(0x314)]({'resource':_0x44c833[_0x35680e(0x249)],'pattern':_0x1b3a36,'ensureUnique':_0x58d6bd[_0x35680e(0x1f0)](_0x44c833[_0x35680e(0x24b)],![]),'ttl':_0x44c833['ttl'],'maxRetry':_0x44c833[_0x35680e(0x2d5)],'idempotencyKey':_0x44c833[_0x35680e(0x2f0)]});}async['consume'](_0x31c965){const _0x41a1a4=a0_0x2c40e1,_0x14acc2={'UbUMd':_0x41a1a4(0x2fc),'nAZbm':function(_0x5ef2bc,_0x3dfd26){return _0x5ef2bc!==_0x3dfd26;},'zbdat':_0x41a1a4(0x27a),'Iotrw':_0x41a1a4(0x25f),'bXQvR':function(_0x421fff,_0x54a5c8){return _0x421fff>_0x54a5c8;},'dCyXo':function(_0x894ed5,_0xc7295f){return _0x894ed5+_0xc7295f;},'LlHuK':'idgen_consumed'};if(!this['enabled'])throw new IdGeneratorError(_0x41a1a4(0x26a),_0x14acc2[_0x41a1a4(0x273)]);this[_0x41a1a4(0x2b0)](_0x31c965['resource']);if(_0x14acc2[_0x41a1a4(0x2fd)](typeof _0x31c965['value'],_0x41a1a4(0x267))||_0x31c965[_0x41a1a4(0x20d)][_0x41a1a4(0x27c)]===0x0)throw new IdGeneratorError(_0x14acc2['zbdat'],_0x14acc2[_0x41a1a4(0x21e)]);const {resource:_0x254b61,value:_0x10bcf5}=_0x31c965,_0x26d330=redisClient[_0x41a1a4(0x2a0)](),_0x14c351=this[_0x41a1a4(0x2ef)](_0x254b61,_0x10bcf5),_0x536fee=this[_0x41a1a4(0x2b6)](_0x254b61),[_0x18608c,_0x281d4c]=await Promise[_0x41a1a4(0x2e4)]([_0x26d330['del'](_0x14c351),_0x26d330[_0x41a1a4(0x27e)](_0x536fee,_0x10bcf5)]),_0x15e9be=_0x14acc2[_0x41a1a4(0x227)](_0x14acc2[_0x41a1a4(0x29d)](_0x18608c,_0x281d4c),0x0);return logger[_0x41a1a4(0x2f4)]({'event':_0x14acc2['LlHuK'],'resource':_0x254b61,'value':_0x10bcf5,'consumed':_0x15e9be},'ID\x20Generator\x20consumed:\x20'+_0x10bcf5),{'consumed':_0x15e9be,'resource':_0x254b61,'value':_0x10bcf5,'consumedAt':new Date()['toISOString']()};}async['peek'](_0x5bbae6){const _0x2f635a=a0_0x2c40e1,_0x49a293={'zWpdH':function(_0x513b9e,_0x27497e){return _0x513b9e===_0x27497e;},'xjjum':_0x2f635a(0x265),'VJSpU':_0x2f635a(0x277),'CWnJe':_0x2f635a(0x314),'pixNT':function(_0x27fac2,_0x53a476){return _0x27fac2||_0x53a476;},'eXsLY':_0x2f635a(0x281)};if(!this[_0x2f635a(0x2f5)])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x5bbae6[_0x2f635a(0x249)]);const _0x13d189=_0x5bbae6[_0x2f635a(0x318)]||_0x2f635a(0x277),_0x3dddd0=redisClient[_0x2f635a(0x2a0)]();if(_0x49a293['zWpdH'](_0x13d189,'number')){const _0x13e3dd=(_0x5bbae6[_0x2f635a(0x1ff)]||_0x2f635a(0x2de))[_0x2f635a(0x2a7)]();if(!ALLOWED_FORMATS[_0x2f635a(0x20f)](_0x13e3dd))throw new IdGeneratorError(_0x49a293[_0x2f635a(0x27d)],'Invalid\x20format:\x20'+_0x5bbae6['format']);const {formatKey:_0x44c4d7}=this[_0x2f635a(0x217)](_0x13e3dd,_0x5bbae6[_0x2f635a(0x309)]||''),_0x47527f=this[_0x2f635a(0x2a5)](_0x5bbae6[_0x2f635a(0x249)],_0x44c4d7),_0x18040f=this['_buildReuseKey'](_0x5bbae6[_0x2f635a(0x249)],_0x44c4d7),[_0x314329,_0xfd7f6d]=await Promise['all']([_0x3dddd0['get'](_0x47527f),_0x3dddd0[_0x2f635a(0x22f)](_0x18040f)]);return{'resource':_0x5bbae6[_0x2f635a(0x249)],'mode':_0x49a293[_0x2f635a(0x252)],'formatKey':_0x44c4d7,'currentCounter':parseInt(_0x314329,0xa)||0x0,'reusePoolSize':_0xfd7f6d||0x0};}if(_0x13d189===_0x49a293['CWnJe']){const _0x3c1ed3=this['_buildIssuedKey'](_0x5bbae6['resource']),_0x306e52=await _0x3dddd0['scard'](_0x3c1ed3);return{'resource':_0x5bbae6[_0x2f635a(0x249)],'mode':_0x49a293[_0x2f635a(0x1f4)],'issuedCount':_0x49a293['pixNT'](_0x306e52,0x0)};}throw new IdGeneratorError(_0x49a293[_0x2f635a(0x271)],'Unknown\x20mode:\x20'+_0x13d189);}async[a0_0x2c40e1(0x270)](_0x204ff7){const _0x1eb422=a0_0x2c40e1,_0x43af31={'RSNol':function(_0x52e464,_0x56ff3a){return _0x52e464===_0x56ff3a;},'gZArF':_0x1eb422(0x277),'fbSSD':function(_0x41f968,_0x23b717){return _0x41f968>_0x23b717;}},_0xffce7f=await this[_0x1eb422(0x250)](_0x204ff7);if(_0x43af31[_0x1eb422(0x2bf)](_0xffce7f[_0x1eb422(0x318)],_0x43af31[_0x1eb422(0x23a)])){const _0xb6c666=redisClient['getClient'](),_0x5ea5cc=this['_buildMetaKey'](_0x204ff7['resource'],_0xffce7f['formatKey']),_0x1fce3f=this[_0x1eb422(0x1fc)](_0x204ff7[_0x1eb422(0x249)],_0xffce7f[_0x1eb422(0x238)]),[_0x510c45,_0xc991b9]=await Promise['all']([_0xb6c666[_0x1eb422(0x2c1)](_0x5ea5cc),_0xb6c666[_0x1eb422(0x279)](_0x1fce3f,0x0,-0x1)]);return{..._0xffce7f,'reusePoolValues':_0xc991b9['map'](_0x41b855=>parseInt(_0x41b855,0xa)),'meta':_0x510c45&&_0x43af31[_0x1eb422(0x263)](Object['keys'](_0x510c45)[_0x1eb422(0x27c)],0x0)?_0x510c45:null};}return _0xffce7f;}async[a0_0x2c40e1(0x1f9)](_0x27a057){const _0x5e10fd=a0_0x2c40e1,_0x21883d={'tiiPD':_0x5e10fd(0x2fc),'NFaii':'IDGEN_RESET_NOT_ALLOWED','TjFEw':_0x5e10fd(0x277),'DmJWJ':'text','VAAvs':_0x5e10fd(0x265),'jUmRb':_0x5e10fd(0x205),'JYiCm':'reuse','WqTop':'meta','eQgob':'random','YbazZ':'IDGEN_INVALID_MODE'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x21883d['tiiPD']);if(!this[_0x5e10fd(0x31b)])throw new IdGeneratorError(_0x21883d[_0x5e10fd(0x2a9)],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this[_0x5e10fd(0x2b0)](_0x27a057[_0x5e10fd(0x249)]);const _0x5eeec9=_0x27a057[_0x5e10fd(0x318)]||'number',_0x1733c2=redisClient[_0x5e10fd(0x2a0)]();if(_0x5eeec9===_0x21883d['TjFEw']){const _0x382a7c=(_0x27a057['format']||_0x21883d['DmJWJ'])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x382a7c))throw new IdGeneratorError(_0x21883d[_0x5e10fd(0x2b1)],_0x5e10fd(0x21d)+_0x27a057[_0x5e10fd(0x1ff)]);const {formatKey:_0x2720d9}=this[_0x5e10fd(0x217)](_0x382a7c,_0x27a057[_0x5e10fd(0x309)]||''),_0x4a8e96=this['_buildSeqKey'](_0x27a057['resource'],_0x2720d9),_0x38ab2f=this[_0x5e10fd(0x1fc)](_0x27a057[_0x5e10fd(0x249)],_0x2720d9),_0x91674e=this['_buildMetaKey'](_0x27a057['resource'],_0x2720d9);return await _0x1733c2[_0x5e10fd(0x2c5)](_0x4a8e96,_0x38ab2f,_0x91674e),logger['warn']({'event':_0x21883d[_0x5e10fd(0x260)],'resource':_0x27a057['resource'],'mode':_0x5e10fd(0x277),'formatKey':_0x2720d9},'ID\x20Generator\x20reset:\x20'+_0x27a057['resource']+':'+_0x2720d9),{'reset':!![],'resource':_0x27a057[_0x5e10fd(0x249)],'mode':_0x21883d[_0x5e10fd(0x2c4)],'formatKey':_0x2720d9,'deletedKeys':['seq',_0x21883d[_0x5e10fd(0x2cb)],_0x21883d[_0x5e10fd(0x2ed)]]};}if(_0x5eeec9==='random'){const _0x523b48=this[_0x5e10fd(0x2b6)](_0x27a057[_0x5e10fd(0x249)]);return await _0x1733c2[_0x5e10fd(0x2c5)](_0x523b48),logger['warn']({'event':'idgen_reset','resource':_0x27a057[_0x5e10fd(0x249)],'mode':_0x5e10fd(0x314)},'ID\x20Generator\x20reset:\x20random:'+_0x27a057['resource']),{'reset':!![],'resource':_0x27a057['resource'],'mode':_0x21883d['eQgob'],'deletedKeys':[_0x5e10fd(0x268)]};}throw new IdGeneratorError(_0x21883d[_0x5e10fd(0x28f)],'Unknown\x20mode:\x20'+_0x5eeec9);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module[a0_0x2c40e1(0x293)]=instance,module[a0_0x2c40e1(0x293)][a0_0x2c40e1(0x30d)]=IdGeneratorError;