@restforgejs/platform 5.1.20 → 5.1.21

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 (172) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/lib/dbschema-kit/apply-executor.js +20 -0
  5. package/generators/lib/generators/processor-validation-generator.js +4 -1
  6. package/generators/lib/migrate/field-type-resolver.js +23 -0
  7. package/generators/lib/payload/payload-runner.js +17 -3
  8. package/generators/lib/templates/dashboard-catalog.js +1 -1
  9. package/generators/lib/templates/db-connection-env.js +1 -1
  10. package/generators/lib/templates/dbschema-catalog.js +1 -1
  11. package/generators/lib/templates/field-validation-catalog.js +1 -1
  12. package/generators/lib/templates/mysql-template.js +1 -1
  13. package/generators/lib/templates/oracle-template.js +1 -1
  14. package/generators/lib/templates/postgres-template.js +1 -1
  15. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  16. package/generators/lib/templates/sqlite-template.js +1 -1
  17. package/integrity-manifest.json +18 -18
  18. package/package.json +1 -1
  19. package/scripts/verify-integrity.js +1 -1
  20. package/server.js +1 -1
  21. package/src/components/handlers/adjust_handler.js +1 -1
  22. package/src/components/handlers/audit_handler.js +1 -1
  23. package/src/components/handlers/delete_handler.js +1 -1
  24. package/src/components/handlers/export_handler.js +1 -1
  25. package/src/components/handlers/import_handler.js +1 -1
  26. package/src/components/handlers/insert_handler.js +1 -1
  27. package/src/components/handlers/update_handler.js +1 -1
  28. package/src/components/handlers/upload_handler.js +1 -1
  29. package/src/components/handlers/workflow_handler.js +1 -1
  30. package/src/components/integrations/webhook.js +1 -1
  31. package/src/consumers/baseConsumer.js +1 -1
  32. package/src/consumers/declarativeMapper.js +1 -1
  33. package/src/consumers/handlers/apiHandler.js +1 -1
  34. package/src/consumers/handlers/consoleHandler.js +1 -1
  35. package/src/consumers/handlers/databaseHandler.js +1 -1
  36. package/src/consumers/handlers/index.js +1 -1
  37. package/src/consumers/handlers/kafkaHandler.js +1 -1
  38. package/src/consumers/index.js +1 -1
  39. package/src/consumers/messageTransformer.js +1 -1
  40. package/src/consumers/validator.js +1 -1
  41. package/src/core/db/dialect/base-dialect.js +1 -1
  42. package/src/core/db/dialect/index.js +1 -1
  43. package/src/core/db/dialect/mysql-dialect.js +1 -1
  44. package/src/core/db/dialect/oracle-dialect.js +1 -1
  45. package/src/core/db/dialect/postgres-dialect.js +1 -1
  46. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  47. package/src/core/db/flatten-helper.js +1 -1
  48. package/src/core/db/query-builder-error.js +1 -1
  49. package/src/core/db/query-builder.js +1 -1
  50. package/src/core/db/relation-helper.js +1 -1
  51. package/src/core/handlers/delete_handler.js +1 -1
  52. package/src/core/handlers/insert_handler.js +1 -1
  53. package/src/core/handlers/update_handler.js +1 -1
  54. package/src/core/models/base-model.js +1 -1
  55. package/src/core/utils/cache-manager.js +1 -1
  56. package/src/core/utils/component-engine.js +1 -1
  57. package/src/core/utils/context-builder.js +1 -1
  58. package/src/core/utils/datetime-formatter.js +1 -1
  59. package/src/core/utils/datetime-parser.js +1 -1
  60. package/src/core/utils/db.js +1 -1
  61. package/src/core/utils/logger.js +1 -1
  62. package/src/core/utils/payload-loader.js +1 -1
  63. package/src/core/utils/security-checks.js +1 -1
  64. package/src/middleware/body-options.js +1 -1
  65. package/src/middleware/cors.js +1 -1
  66. package/src/middleware/idempotency.js +1 -1
  67. package/src/middleware/rate-limiter.js +1 -1
  68. package/src/middleware/request-logger.js +1 -1
  69. package/src/middleware/security-headers.js +1 -1
  70. package/src/models/base-model-mysql.js +1 -1
  71. package/src/models/base-model-oracle.js +1 -1
  72. package/src/models/base-model-sqlite.js +1 -1
  73. package/src/models/base-model.js +1 -1
  74. package/src/pro/caching/redis-client.js +1 -1
  75. package/src/pro/caching/redis-helper.js +1 -1
  76. package/src/pro/consumers/baseConsumer.js +1 -1
  77. package/src/pro/consumers/declarativeMapper.js +1 -1
  78. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  79. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  80. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  81. package/src/pro/consumers/handlers/index.js +1 -1
  82. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  83. package/src/pro/consumers/index.js +1 -1
  84. package/src/pro/consumers/messageTransformer.js +1 -1
  85. package/src/pro/consumers/validator.js +1 -1
  86. package/src/pro/database/base-model-mysql.js +1 -1
  87. package/src/pro/database/base-model-oracle.js +1 -1
  88. package/src/pro/database/base-model-sqlite.js +1 -1
  89. package/src/pro/database/db-mysql.js +1 -1
  90. package/src/pro/database/db-oracle.js +1 -1
  91. package/src/pro/database/db-sqlite.js +1 -1
  92. package/src/pro/excel/excel-generator.js +1 -1
  93. package/src/pro/excel/excel-parser.js +1 -1
  94. package/src/pro/excel/export-service.js +1 -1
  95. package/src/pro/excel/export_handler.js +1 -1
  96. package/src/pro/excel/import-service.js +1 -1
  97. package/src/pro/excel/import-validator.js +1 -1
  98. package/src/pro/excel/import_handler.js +1 -1
  99. package/src/pro/excel/upsert-builder.js +1 -1
  100. package/src/pro/idgen/idgen-routes.js +1 -1
  101. package/src/pro/integrations/lookup-resolver.js +1 -1
  102. package/src/pro/integrations/upload-handler-v2.js +1 -1
  103. package/src/pro/integrations/upload-handler.js +1 -1
  104. package/src/pro/integrations/webhook.js +1 -1
  105. package/src/pro/locking/lock-routes.js +1 -1
  106. package/src/pro/locking/resource-lock-manager.js +1 -1
  107. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  108. package/src/pro/messaging/kafkaService.js +1 -1
  109. package/src/pro/messaging/messagehubService.js +1 -1
  110. package/src/pro/messaging/rabbitmqService.js +1 -1
  111. package/src/pro/scheduler/job-manager.js +1 -1
  112. package/src/pro/scheduler/job-routes.js +1 -1
  113. package/src/pro/scheduler/job-validator.js +1 -1
  114. package/src/pro/storage/base-storage-provider.js +1 -1
  115. package/src/pro/storage/file-metadata-helper.js +1 -1
  116. package/src/pro/storage/index.js +1 -1
  117. package/src/pro/storage/local-storage-provider.js +1 -1
  118. package/src/pro/storage/s3-storage-provider.js +1 -1
  119. package/src/pro/storage/upload-cleanup-job.js +1 -1
  120. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  121. package/src/pro/storage/upload-pending-tracker.js +1 -1
  122. package/src/pro/websocket/broadcast-helper.js +1 -1
  123. package/src/pro/websocket/index.js +1 -1
  124. package/src/pro/websocket/livesync-server.js +1 -1
  125. package/src/pro/websocket/ws-broadcaster.js +1 -1
  126. package/src/services/export-service.js +1 -1
  127. package/src/services/import-service.js +1 -1
  128. package/src/services/kafkaConsumerService.js +1 -1
  129. package/src/services/kafkaService.js +1 -1
  130. package/src/services/messagehubService.js +1 -1
  131. package/src/services/rabbitmqService.js +1 -1
  132. package/src/utils/cache-invalidation-registry.js +1 -1
  133. package/src/utils/cache-manager.js +1 -1
  134. package/src/utils/component-engine.js +1 -1
  135. package/src/utils/config-extractor.js +1 -1
  136. package/src/utils/consumerLogger.js +1 -1
  137. package/src/utils/context-builder.js +1 -1
  138. package/src/utils/dashboard-helpers.js +1 -1
  139. package/src/utils/dateHelper.js +1 -1
  140. package/src/utils/datetime-formatter.js +1 -1
  141. package/src/utils/datetime-parser.js +1 -1
  142. package/src/utils/db-bootstrap.js +1 -1
  143. package/src/utils/db-mysql.js +1 -1
  144. package/src/utils/db-oracle.js +1 -1
  145. package/src/utils/db-sqlite.js +1 -1
  146. package/src/utils/db.js +1 -1
  147. package/src/utils/demo-generator.js +1 -1
  148. package/src/utils/excel-generator.js +1 -1
  149. package/src/utils/excel-parser.js +1 -1
  150. package/src/utils/file-watcher.js +1 -1
  151. package/src/utils/id-generator.js +1 -1
  152. package/src/utils/idempotency-manager.js +1 -1
  153. package/src/utils/import-validator.js +1 -1
  154. package/src/utils/license-client.js +1 -1
  155. package/src/utils/lock-manager.js +1 -1
  156. package/src/utils/logger.js +1 -1
  157. package/src/utils/lookup-resolver.js +1 -1
  158. package/src/utils/payload-loader.js +1 -1
  159. package/src/utils/processor-response.js +1 -1
  160. package/src/utils/rabbitmq.js +1 -1
  161. package/src/utils/redis-client.js +1 -1
  162. package/src/utils/redis-helper.js +1 -1
  163. package/src/utils/request-scope.js +1 -1
  164. package/src/utils/security-checks.js +1 -1
  165. package/src/utils/service-resolver.js +1 -1
  166. package/src/utils/shutdown-coordinator.js +1 -1
  167. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  168. package/src/utils/sql-table-extractor.js +1 -1
  169. package/src/utils/trusted-keys.js +1 -1
  170. package/src/utils/upload-handler.js +1 -1
  171. package/src/utils/upsert-builder.js +1 -1
  172. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x22054c=a0_0xd390;function a0_0x4f43(){const _0x393b49=['D2f0y2HLCNm','ndvpEhHQBwS','icbBv0fuq0HDifDHCM5PBMC6ifDHDgnOzxiGzxjYB3iGB24G','y3DK','mJe2nZmWsKrrD2jj','mte0ufrPBffj','Bg9N','ogDuAwTbDG','B25dAgfUz2u','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','C3bSAxq','lYaOCMvJDxjZAxzLkq','mteXnJCZmJrtyvLzwK4','mZaXmZG4mfzKC2vdzG','CMvSyxrPDMu','mJjJA01WvNa','C3rVCa','mZC2nJi1Cu1cu1zL','mhW0Fdf8mNW1Fdm','zxjYB3i','zgvIB3vUy2vnCW','yNPuAgq','zgLYzwn0B3jPzxm','D1rqCvO','zxH0zw5ZAw9UCW','ntGZnJuYnerTqu9VwG','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','x2rLyM91BMnL','zxHWB3j0CW','Dg9mB3DLCKnHC2u','D0HSDNO','lMPZ','BwvZC2fNzq','BgPxtKG','otC1nZq4mgHczhbQrq','mtq4mtDPuuvOqLu','zxHPC3rZu3LUyW','icbBv0fuq0HDifDHDgnOAw5NoIa','Aw5JBhvKzxm','oti4s2ntterM','s3rIAwq','zgvIB3vUy2vuAw1LCG'];a0_0x4f43=function(){return _0x393b49;};return a0_0x4f43();}(function(_0x471949,_0xc18fbf){const _0xf673b6=a0_0xd390,_0x5d3f5d=_0x471949();while(!![]){try{const _0x277e15=-parseInt(_0xf673b6(0x7a))/0x1*(-parseInt(_0xf673b6(0x70))/0x2)+-parseInt(_0xf673b6(0x8c))/0x3*(-parseInt(_0xf673b6(0x90))/0x4)+-parseInt(_0xf673b6(0x6d))/0x5*(parseInt(_0xf673b6(0x6e))/0x6)+-parseInt(_0xf673b6(0x75))/0x7+parseInt(_0xf673b6(0x8b))/0x8+parseInt(_0xf673b6(0x94))/0x9*(-parseInt(_0xf673b6(0x76))/0xa)+-parseInt(_0xf673b6(0x78))/0xb*(-parseInt(_0xf673b6(0x82))/0xc);if(_0x277e15===_0xc18fbf)break;else _0x5d3f5d['push'](_0x5d3f5d['shift']());}catch(_0x5ef611){_0x5d3f5d['push'](_0x5d3f5d['shift']());}}}(a0_0x4f43,0xe059d));function a0_0xd390(_0x59076e,_0x5c7ab7){_0x59076e=_0x59076e-0x6d;const _0x4f43c8=a0_0x4f43();let _0xd390d3=_0x4f43c8[_0x59076e];if(a0_0xd390['TKFtwb']===undefined){var _0x22a28f=function(_0x1cf3ec){const _0xda31a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9d4fcb='',_0x3b1903='';for(let _0x4d3c9f=0x0,_0x351f20,_0x2d2533,_0x5812f6=0x0;_0x2d2533=_0x1cf3ec['charAt'](_0x5812f6++);~_0x2d2533&&(_0x351f20=_0x4d3c9f%0x4?_0x351f20*0x40+_0x2d2533:_0x2d2533,_0x4d3c9f++%0x4)?_0x9d4fcb+=String['fromCharCode'](0xff&_0x351f20>>(-0x2*_0x4d3c9f&0x6)):0x0){_0x2d2533=_0xda31a1['indexOf'](_0x2d2533);}for(let _0x158303=0x0,_0x2195e6=_0x9d4fcb['length'];_0x158303<_0x2195e6;_0x158303++){_0x3b1903+='%'+('00'+_0x9d4fcb['charCodeAt'](_0x158303)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b1903);};a0_0xd390['eRoUub']=_0x22a28f,a0_0xd390['dGrxyL']={},a0_0xd390['TKFtwb']=!![];}const _0x9bc5=_0x4f43c8[0x0],_0x2d50f2=_0x59076e+_0x9bc5,_0x61aeba=a0_0xd390['dGrxyL'][_0x2d50f2];return!_0x61aeba?(_0xd390d3=a0_0xd390['eRoUub'](_0xd390d3),a0_0xd390['dGrxyL'][_0x2d50f2]=_0xd390d3):_0xd390d3=_0x61aeba,_0xd390d3;}const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x40e97e={}){const _0x1637a8=a0_0xd390,_0x18a2c2={'UDKov':_0x1637a8(0x7b),'wTPqZ':_0x1637a8(0x88),'wHlvz':'.json'},_0x5c7c32=_0x18a2c2['UDKov'][_0x1637a8(0x73)]('|');let _0x29c9a1=0x0;while(!![]){switch(_0x5c7c32[_0x29c9a1++]){case'0':this['directories']=_0x40e97e[_0x1637a8(0x7f)]||[];continue;case'1':this[_0x1637a8(0x7d)]=_0x40e97e['debounceMs']||0x1f4;continue;case'2':this['onChange']=_0x40e97e[_0x1637a8(0x71)]||(()=>{});continue;case'3':this[_0x1637a8(0x92)]=null;continue;case'4':this[_0x1637a8(0x81)]=_0x40e97e[_0x1637a8(0x81)]||[_0x18a2c2[_0x1637a8(0x80)],_0x18a2c2[_0x1637a8(0x87)]];continue;case'5':this['watchers']=[];continue;}break;}}['start'](){const _0x1a011d=a0_0xd390,_0x210add={'ljWNH':_0x1a011d(0x7c)};for(const _0x160b5f of this['directories']){if(!fs[_0x1a011d(0x8d)](_0x160b5f)){console[_0x1a011d(0x6f)](_0x1a011d(0x83)+(path['relative'](process[_0x1a011d(0x96)](),_0x160b5f)||_0x160b5f));continue;}try{const _0x507c1a=fs['watch'](_0x160b5f,{'recursive':!![]},(_0x48a391,_0x3465cb)=>{const _0xb54dab=_0x1a011d;if(!_0x3465cb)return;const _0x25c1b6=path['extname'](_0x3465cb)[_0xb54dab(0x86)]();if(!this['extensions'][_0xb54dab(0x8f)](_0x25c1b6))return;this[_0xb54dab(0x84)](_0x3465cb);});_0x507c1a['on'](_0x210add[_0x1a011d(0x8a)],_0x166306=>{const _0x1a4cd3=_0x1a011d;console['log'](_0x1a4cd3(0x95)+path[_0x1a4cd3(0x77)](process[_0x1a4cd3(0x96)](),_0x160b5f)+':\x20'+_0x166306[_0x1a4cd3(0x89)]);}),this['watchers']['push'](_0x507c1a);const _0x4f07a3=path[_0x1a011d(0x77)](process[_0x1a011d(0x96)](),_0x160b5f)||_0x160b5f;console['log'](_0x1a011d(0x8e)+_0x4f07a3+_0x1a011d(0x74));}catch(_0x4b7b06){console[_0x1a011d(0x6f)](_0x1a011d(0x72)+path[_0x1a011d(0x77)](process[_0x1a011d(0x96)](),_0x160b5f)+':\x20'+_0x4b7b06[_0x1a011d(0x89)]);}}}[a0_0x22054c(0x79)](){const _0x395096=a0_0x22054c;for(const _0x390b7d of this[_0x395096(0x93)]){try{_0x390b7d['close']();}catch(_0x5db091){}}this[_0x395096(0x93)]=[],this[_0x395096(0x92)]&&(clearTimeout(this[_0x395096(0x92)]),this['debounceTimer']=null);}[a0_0x22054c(0x84)](_0x1a8182){const _0x463867=a0_0x22054c,_0x5df2d9={'bzThd':function(_0x302543,_0x2ad33b){return _0x302543(_0x2ad33b);},'Ktbid':function(_0x2c3a78,_0x4ed104,_0x52bb45){return _0x2c3a78(_0x4ed104,_0x52bb45);}};this['debounceTimer']&&_0x5df2d9[_0x463867(0x7e)](clearTimeout,this[_0x463867(0x92)]),this['debounceTimer']=_0x5df2d9[_0x463867(0x91)](setTimeout,()=>{this['debounceTimer']=null,this['onChange'](_0x1a8182);},this['debounceMs']);}}module[a0_0x22054c(0x85)]=FileWatcher;
1
+ 'use strict';function a0_0x5269(){const _0x1b9aee=['Cgf0Aa','nZmYmZi4m1frEezpDq','BwvZC2fNzq','txv1Aue','B25dAgfUz2u','nteZnJm5A1v6CNb2','lMPZ','zxH0zw5ZAw9UCW','ndH6B0X4Dhy','x2rLyM91BMnL','zxH0BMfTzq','otiZnJzrue5krMC','zgvIB3vUy2vuAw1LCG','icbBv0fuq0HDifDHDgnOAw5NoIa','zgLYzwn0B3jPzxm','ndaYz2XQrxzg','C3rVCa','Dg9mB3DLCKnHC2u','CMvSyxrPDMu','zxHPC3rZu3LUyW','mte0nta3mMjkC1jYyW','ChvZAa','zgvIB3vUy2vnCW','mtriEgP3yvO','D2f0y2HLCNm','mZm4nZmZmfzZEhHOzq','nM5MsKrdCW','mta5mZbWtxPMDum','y3DK','odiWmJrZsMv1Dfi','y2XVC2u'];a0_0x5269=function(){return _0x1b9aee;};return a0_0x5269();}const a0_0xd14efe=a0_0xe305;function a0_0xe305(_0x1aab68,_0x2d24ed){_0x1aab68=_0x1aab68-0xba;const _0x52698f=a0_0x5269();let _0xe30544=_0x52698f[_0x1aab68];if(a0_0xe305['aoZinT']===undefined){var _0x5b5094=function(_0x3a3704){const _0xab6c11='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x237079='',_0x1241aa='';for(let _0x8fd520=0x0,_0x433f95,_0x34fd44,_0x2150be=0x0;_0x34fd44=_0x3a3704['charAt'](_0x2150be++);~_0x34fd44&&(_0x433f95=_0x8fd520%0x4?_0x433f95*0x40+_0x34fd44:_0x34fd44,_0x8fd520++%0x4)?_0x237079+=String['fromCharCode'](0xff&_0x433f95>>(-0x2*_0x8fd520&0x6)):0x0){_0x34fd44=_0xab6c11['indexOf'](_0x34fd44);}for(let _0x25efd3=0x0,_0xf21f27=_0x237079['length'];_0x25efd3<_0xf21f27;_0x25efd3++){_0x1241aa+='%'+('00'+_0x237079['charCodeAt'](_0x25efd3)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1241aa);};a0_0xe305['QXrRMg']=_0x5b5094,a0_0xe305['kqrcZG']={},a0_0xe305['aoZinT']=!![];}const _0x48c724=_0x52698f[0x0],_0x9e589=_0x1aab68+_0x48c724,_0x500328=a0_0xe305['kqrcZG'][_0x9e589];return!_0x500328?(_0xe30544=a0_0xe305['QXrRMg'](_0xe30544),a0_0xe305['kqrcZG'][_0x9e589]=_0xe30544):_0xe30544=_0x500328,_0xe30544;}(function(_0x466cd3,_0x555a09){const _0x55b88a=a0_0xe305,_0x5bc48e=_0x466cd3();while(!![]){try{const _0x1a36b4=-parseInt(_0x55b88a(0xbc))/0x1*(parseInt(_0x55b88a(0xcb))/0x2)+parseInt(_0x55b88a(0xd8))/0x3*(-parseInt(_0x55b88a(0xce))/0x4)+parseInt(_0x55b88a(0xcc))/0x5*(parseInt(_0x55b88a(0xc0))/0x6)+parseInt(_0x55b88a(0xc8))/0x7*(-parseInt(_0x55b88a(0xc5))/0x8)+-parseInt(_0x55b88a(0xd5))/0x9+parseInt(_0x55b88a(0xca))/0xa+parseInt(_0x55b88a(0xd1))/0xb;if(_0x1a36b4===_0x555a09)break;else _0x5bc48e['push'](_0x5bc48e['shift']());}catch(_0x396252){_0x5bc48e['push'](_0x5bc48e['shift']());}}}(a0_0x5269,0x316af));const fs=require('fs'),path=require(a0_0xd14efe(0xd0));class FileWatcher{constructor(_0x485f29={}){const _0xb51b8f=a0_0xd14efe,_0x2b9463={'wprGb':_0xb51b8f(0xd6)};this[_0xb51b8f(0xbf)]=_0x485f29['directories']||[],this['extensions']=_0x485f29[_0xb51b8f(0xd7)]||[_0x2b9463['wprGb'],'.json'],this[_0xb51b8f(0xc7)]=_0x485f29['debounceMs']||0x1f4,this['onChange']=_0x485f29['onChange']||(()=>{}),this[_0xb51b8f(0xc9)]=[],this[_0xb51b8f(0xbd)]=null;}['start'](){const _0x1d8258=a0_0xd14efe,_0x1d593e={'MuuiA':'error'};for(const _0x53168a of this[_0x1d8258(0xbf)]){if(!fs[_0x1d8258(0xc4)](_0x53168a)){console['log']('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path[_0x1d8258(0xc3)](process[_0x1d8258(0xcd)](),_0x53168a)||_0x53168a));continue;}try{const _0x597ab7=fs['watch'](_0x53168a,{'recursive':!![]},(_0x3c3416,_0x119d67)=>{const _0x107320=_0x1d8258;if(!_0x119d67)return;const _0x12bc3e=path[_0x107320(0xbb)](_0x119d67)[_0x107320(0xc2)]();if(!this[_0x107320(0xd7)]['includes'](_0x12bc3e))return;this[_0x107320(0xba)](_0x119d67);});_0x597ab7['on'](_0x1d593e[_0x1d8258(0xd3)],_0x5c3516=>{const _0x1333d0=_0x1d8258;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path['relative'](process['cwd'](),_0x53168a)+':\x20'+_0x5c3516[_0x1333d0(0xd2)]);}),this[_0x1d8258(0xc9)][_0x1d8258(0xc6)](_0x597ab7);const _0x1efa5e=path[_0x1d8258(0xc3)](process['cwd'](),_0x53168a)||_0x53168a;console['log'](_0x1d8258(0xbe)+_0x1efa5e+'/\x20(recursive)');}catch(_0x317a35){console['log']('\x20\x20[WATCH]\x20Warning:\x20Failed\x20to\x20setup\x20watcher\x20for\x20'+path[_0x1d8258(0xc3)](process['cwd'](),_0x53168a)+':\x20'+_0x317a35[_0x1d8258(0xd2)]);}}}[a0_0xd14efe(0xc1)](){const _0x269fe0=a0_0xd14efe,_0x824ca1={'BMfzW':function(_0x3a152f,_0x312b03){return _0x3a152f(_0x312b03);}};for(const _0x1d313a of this['watchers']){try{_0x1d313a[_0x269fe0(0xcf)]();}catch(_0xb64594){}}this['watchers']=[],this['debounceTimer']&&(_0x824ca1['BMfzW'](clearTimeout,this['debounceTimer']),this[_0x269fe0(0xbd)]=null);}[a0_0xd14efe(0xba)](_0x336d9f){const _0x57d200=a0_0xd14efe;this[_0x57d200(0xbd)]&&clearTimeout(this[_0x57d200(0xbd)]),this[_0x57d200(0xbd)]=setTimeout(()=>{const _0x16224f=_0x57d200;this['debounceTimer']=null,this[_0x16224f(0xd4)](_0x336d9f);},this[_0x57d200(0xc7)]);}}module['exports']=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';function a0_0x2dae(_0x33e530,_0x5a8370){_0x33e530=_0x33e530-0x101;const _0x5b293e=a0_0x5b29();let _0x2dae94=_0x5b293e[_0x33e530];if(a0_0x2dae['XFXZyF']===undefined){var _0x21e548=function(_0x3cebe0){const _0x2e9c14='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x582db6='',_0x18a492='';for(let _0xdc0133=0x0,_0x1f930f,_0x33cb3c,_0x2ba175=0x0;_0x33cb3c=_0x3cebe0['charAt'](_0x2ba175++);~_0x33cb3c&&(_0x1f930f=_0xdc0133%0x4?_0x1f930f*0x40+_0x33cb3c:_0x33cb3c,_0xdc0133++%0x4)?_0x582db6+=String['fromCharCode'](0xff&_0x1f930f>>(-0x2*_0xdc0133&0x6)):0x0){_0x33cb3c=_0x2e9c14['indexOf'](_0x33cb3c);}for(let _0x3c1009=0x0,_0x1fe966=_0x582db6['length'];_0x3c1009<_0x1fe966;_0x3c1009++){_0x18a492+='%'+('00'+_0x582db6['charCodeAt'](_0x3c1009)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18a492);};a0_0x2dae['tYVllb']=_0x21e548,a0_0x2dae['DWMCXR']={},a0_0x2dae['XFXZyF']=!![];}const _0x394715=_0x5b293e[0x0],_0x2edbc7=_0x33e530+_0x394715,_0x595c62=a0_0x2dae['DWMCXR'][_0x2edbc7];return!_0x595c62?(_0x2dae94=a0_0x2dae['tYVllb'](_0x2dae94),a0_0x2dae['DWMCXR'][_0x2edbc7]=_0x2dae94):_0x2dae94=_0x595c62,_0x2dae94;}function a0_0x5b29(){const _0x5a1c3d=['CMvZB3vYy2u','surhru5Fru5bqKXfra','DKDAugS','rgfyu3m','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','lcaR','uLLXyuC','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','vw5RBM93BIbTB2rLoIa','AwrNzw4','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','C3rVCMvK','x3jLC2vYDMvnyxHuveW','x2j1AwXKuMv1C2vlzxK','zMzoCeq','BgXTvui','ou9huxnVwa','tuzOA1C','swrhzw5LCMf0B3jfCNjVCG','BMfTzq','D2fcAgy','surhru5Fq09vtLrfuL9uveXFrefjtfK','qM52tue','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','C2vX','BgzcwxG','CffkDg0','ww1nrMC','ExL5Eq','uKfSwuS','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','tLftEvK','BNvTyMvY','Aw5MBW','DhrS','AgDLDgfSBa','CMy6AwrNzw46','zgvMyxvSDenVzgvqyxr0zxjU','Aw93suu','mti5mJeXogPhy1fhyW','C3jLBq','x2j1AwXKuMvZzxj2yxrPB25lzxK','surhru5Fsu5wquXjrf9quKvgsvG','y29Kzq','mZe5otK3meP4vxfJAW','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','ohrQAvrPAq','otK5os05otK5','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','x3zHBgLKyxrLvfrm','mtmWmdq5mJzmBLL1sMe','x3zHBgLKyxrLuMvZB3vYy2u','surhru5Fsu5wquXjrf9srvnpvvjdrq','x2TLEvbYzwzPEa','surhru5Fsu5wquXjrf9nt0rf','Dg9mB3DLCKnHC2u','CgLU','C3bSAxq','CMvZzxj2zv9Jyw5JzwW','swrLBxbVDgvUy3KGy2fJAguGseLu','u0rQzgi','CNn2x2LKEdO','CMvSzwfZzwrbDa','CMvZzxj2zu51BwjLCG','Dg9ju09tDhjPBMC','x3zHBgLKyxrLuMvZzxj2zvruta','Cfn2EfK','C3rYAw5NAwz5','vhL0CMC','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','CMvZzxj2zu1HEfruta','y29UzMLYBvjLC2vYDMf0Aw9U','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','BM93','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','surhru5Fsu5wquXjrf9qqvrurvjo','x2nVDw50zxjuveXnyxa','zuXftwy','CNn2s2v5','AerWwKS','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','A2v5uhjLzML4','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','surhru5Frevgqvvmvf9nqvHFuKvuuLK','u2rOEgy','zhbcsuC','CMnRyK0','qKPQANu','D2LUBMvYuMvZDwX0','vgLoEve','oxW4FdeWFdeXFdj8nxWWFdD8mxW2Fdr8mW','Aw9eCKG','qvfWt0W','vun5DM0','tg1fvue','z2v0','CMjUELK','AwrNzw5FAwrLBv9OAxq','ndjTDg1vsu8','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','CMfUzg9T','t2H6Due','y1LUq2e','x2vUC3vYzuLUAxrPywXPEMvK','CgfKu3rHCNq','AxnszxvZzwq','D2fYBG','ntDNuKTeDKu','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','mZaYotGZtwzWz3D2','x3bHzdi','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','zxHWAxjLC0f0','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','Bwf0y2G','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','AwrLBvruta','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','Bw9Kzq','x3n0B3jLswrLBunHy2HL','AhnLDa','yM9VBgvHBG','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','Cg5LqNi','tfzSCfC','ExL5Ew1Tzgq','zgvMyxvSDe1HEfjLDhj5','surhru5FreLtqujmruq','ENjHBMDL','nJq5otG1nLrtzM94EG','DhrStxm','x3jLC2vYDMvezwzHDwX0vfrm','rhn5s04','zw50CMLLCW','CNn2oG','ywn0AxzLoG','y3j5ChrV','x3bHCNnLtNvTyMvY','x2j1AwXKqwn0AxzLs2v5','sMLju1C','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','lcbNB3qG','q3znsw8','rwLqDfG','zgf0zvbYzwzPEa','Chr0Ba','wLbmC0u','C3rYAw5N','zw52','surhru5FuKvtrvrFtK9ux0fmte9xruq','EfPSA2O','wxvMzfe','AxnjBNrLz2vY','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','x2LKzw1uveW','vMHZuLi','whbvA2q','EwT4A2O','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','Dg12quC','BgvUz3rO','ywXSB3DszxnLDa','r0nUrxi','zM9YBwf0','CMfUzg9Tvvvjra','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','zgvMyxvSDfbPBKrPz2L0CW','x2rLzMf1BhrqAw5eAwDPDhm','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','x2zVCM1HDe51BwjLCG','z2v0q2XPzw50','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','y3jLyxrLzef0','ExL5Ew1T','rwHzD1m','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','tgr0DuK','x3n0B3jLswrLBunHy2HLtLG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','zgvS','CMvSzwfZzu51BwjLCG','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','x2DLDenVDw50zxjuveW','EgPmwfi','BMXyr2q','CNn2swr4s2v5','rxHoqNe','uLfRBeO','x3jLDhjPzxzLswrLBunHy2HL','wNz2r2K','D1nZsw0','x2rLzMf1BhrdB2rLugf0DgvYBG','Dg9Rzw4','AwrLBxbVDgvUy3LlzxK','tNDxsvO','AMvgr3y','icH0B2TLBJ0','x2j1AwXKsxnZDwvKs2v5','tff1vue','x2j1AwXKrM9YBwf0s2v5','tujps3y','x2LUAxrdB25MAwC','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','z0H1vvK','CMvZzxq','zgvMyxvSDfnLCMLHBfbHDhrLCM4','z2v0rNvSBfLLyxi','Bwv0ytO','zw5ZDxjLvw5PCxvL','CgfYC2u','lwrPz2L0ignHCgfJAxr5icG','DvvlrgO','CMv1C2u6','zgLNAxrZ','ChvZAa','wxzkvMG','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','z2v0uMvZzxj2yxrPB24','C2vWyxjHDg9Y','y29UC3vTzq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','surhru5Fsu5wquXjrf9gt1jnqvq','BNvTrgLNAxrZ','zw5HyMXLza','CgfKzgvKicHNB3q6ia','Ag5ABLu','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','BxntBfu','q291BNrLCIbVDMvYzMXVDZOG','CMvWzwf0','wMf5uM4','wwvPy3i','q091whK','EgPjBxm','BwvZC2fNzq','x2vUywjSzwq','C2v0zxG','suqGr2vUzxjHDg9Yig51BwjLCJOG','x3rLEhq','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','nNWXmhW1FdeYFdb8nhWZFdj8mtf8oxW4FdD8mq','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','zvnqvMO','quz6s0W','DMfSDwu','surhru5Fsu5wquXjrf9ovu1crvi','AgfZ','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','x2fSBg93uMvZzxq','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CMv1C2u','y291BNrLCKLUDa','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','mtu3odC2tNf6v3zL','yNvPBgrezxrLCM1PBMLZDgLJs2v5','AhrIvKe','mtmYnJiWmejQz1zRuW','zxzHBa','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','Cgf0DgvYBG','x2rLzMf1BhrnyxHszxrYEq','z2HpwgW','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','A1PMwgC','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','C2vXoG','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','ihnLy29UzhmGkgDVDdOG','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','ueftq3i','DgvZDa','EKjzswi','x2LUAxrPywXPEMvK','icHNB3q6ia','surhru5Fsu5wquXjrf9uveW','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','x2j1AwXKswrLBuTLEq','Dhj1zq','x3vWzgf0zu1LDge','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','AxnfBMfIBgvK','zM9YBwf0s2v5','uw1Iwvu','ywXS','surhru5Fsu5wquXjrf9ut0TftG','ChjLzML4','vMTNrwi','Dgv4Da','DxviBfe'];a0_0x5b29=function(){return _0x5a1c3d;};return a0_0x5b29();}const a0_0x44aa3e=a0_0x2dae;(function(_0x11a4fd,_0x47e39d){const _0x4d9db9=a0_0x2dae,_0x31acb0=_0x11a4fd();while(!![]){try{const _0x437b90=-parseInt(_0x4d9db9(0x212))/0x1*(-parseInt(_0x4d9db9(0x1d1))/0x2)+parseInt(_0x4d9db9(0x210))/0x3*(-parseInt(_0x4d9db9(0x17d))/0x4)+-parseInt(_0x4d9db9(0x180))/0x5+parseInt(_0x4d9db9(0x1ca))/0x6*(parseInt(_0x4d9db9(0x207))/0x7)+parseInt(_0x4d9db9(0x228))/0x8+-parseInt(_0x4d9db9(0x1b3))/0x9*(parseInt(_0x4d9db9(0x1cf))/0xa)+-parseInt(_0x4d9db9(0x1d5))/0xb;if(_0x437b90===_0x47e39d)break;else _0x31acb0['push'](_0x31acb0['shift']());}catch(_0x125449){_0x31acb0['push'](_0x31acb0['shift']());}}}(a0_0x5b29,0xc318e));const crypto=require(a0_0x44aa3e(0x103)),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require(a0_0x44aa3e(0x1ac)),ALLOWED_FORMATS=new Set([a0_0x44aa3e(0x1a0),'yyyy',a0_0x44aa3e(0x12b),'yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER=a0_0x44aa3e(0x216),CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER=a0_0x44aa3e(0x1ad),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_0x44aa3e(0x182),LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION='\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(_0x4aec5f,_0x33fa97,_0x511b0e=null){const _0x324429=a0_0x44aa3e,_0xa0b01a={'DaXSs':function(_0x4ec8a9,_0x5a9aec){return _0x4ec8a9||_0x5a9aec;}};super(_0xa0b01a[_0x324429(0x1a5)](_0x33fa97,_0x4aec5f)),this[_0x324429(0x1b6)]='IdGeneratorError',this[_0x324429(0x1ce)]=_0x4aec5f,this['details']=_0x511b0e;}}class IdGenerator{constructor(){const _0x50e132=a0_0x44aa3e,_0x555154={'hDpZK':_0x50e132(0x1ff)},_0x5b893a=_0x555154[_0x50e132(0x1f4)]['split']('|');let _0x57f5dc=0x0;while(!![]){switch(_0x5b893a[_0x57f5dc++]){case'0':this[_0x50e132(0x124)]=null;continue;case'1':this['_defaultCodePattern']=null;continue;case'2':this[_0x50e132(0x178)]=null;continue;case'3':this[_0x50e132(0x1af)]=null;continue;case'4':this['_reserveDefaultTTL']=null;continue;case'5':this[_0x50e132(0x184)]=null;continue;case'6':this['_counterTTLMap']=null;continue;case'7':this[_0x50e132(0x179)]=null;continue;case'8':this['_enabled']=null;continue;case'9':this[_0x50e132(0x191)]=![];continue;case'10':this[_0x50e132(0x1d8)]=null;continue;case'11':this[_0x50e132(0x115)]=null;continue;}break;}}[a0_0x44aa3e(0x147)](){const _0x1deef3=a0_0x44aa3e,_0x1d61f7={'UCHyB':_0x1deef3(0x16e),'JiISW':'idgen_config_init','iYfHj':_0x1deef3(0x1d2),'cjsPQ':'XXXX-XXXX-XXXX-XXXX','RAlYK':function(_0x4dbb0c,_0x29f5a5,_0x1f616d){return _0x4dbb0c(_0x29f5a5,_0x1f616d);},'AFzKL':function(_0x550856,_0x4c8ab0){return _0x550856===_0x4c8ab0;},'vzSHz':_0x1deef3(0x196),'rckbM':function(_0x5e69c7,_0xa7dec){return _0x5e69c7===_0xa7dec;}},_0x371ed8=_0x1d61f7['UCHyB'][_0x1deef3(0x1dc)]('|');let _0x68d12f=0x0;while(!![]){switch(_0x371ed8[_0x68d12f++]){case'0':this[_0x1deef3(0x184)]=parseInt(process['env'][_0x1deef3(0x1f8)],0xa)||0xa;continue;case'1':logger['info']({'event':_0x1d61f7[_0x1deef3(0x106)],'enabled':this['_enabled'],'idemTTL':this[_0x1deef3(0x115)],'allowReset':this[_0x1deef3(0x178)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x1deef3(0x171)+this['_enabled']);continue;case'2':this[_0x1deef3(0x13d)]=process['env'][_0x1deef3(0x133)]||_0x1d61f7['iYfHj'];continue;case'3':this[_0x1deef3(0x179)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x1d61f7['cjsPQ'];continue;case'4':this[_0x1deef3(0x124)]=parseInt(process[_0x1deef3(0x10f)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'5':this['_idemTTL']=_0x1d61f7[_0x1deef3(0x1c0)](parseInt,process['env']['IDGEN_IDEM_TTL'],0xa)||0x258;continue;case'6':this[_0x1deef3(0x1d8)]=_0x1deef3(0x1c7);continue;case'7':this[_0x1deef3(0x191)]=!![];continue;case'8':this[_0x1deef3(0x1af)]=_0x1d61f7['RAlYK'](parseInt,process[_0x1deef3(0x10f)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'9':this['_reserveDefaultTTL']=parseInt(process['env'][_0x1deef3(0x21c)],0xa)||DEFAULT_RESERVE_TTL;continue;case'10':this[_0x1deef3(0x169)]=_0x1d61f7[_0x1deef3(0x173)](process[_0x1deef3(0x10f)][_0x1deef3(0x1a3)],_0x1d61f7['vzSHz']);continue;case'11':this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x1deef3(0x10f)][_0x1deef3(0x1b8)],0xa)||0x2a300};continue;case'12':this['_allowReset']=_0x1d61f7[_0x1deef3(0x1fb)](process['env']['IDGEN_ALLOW_RESET'],_0x1d61f7['vzSHz']);continue;}break;}}[a0_0x44aa3e(0x20c)](){const _0x4b509c=a0_0x44aa3e;if(!this['_initialized'])this[_0x4b509c(0x147)]();}get[a0_0x44aa3e(0x15d)](){const _0x4f71c2=a0_0x44aa3e;return this[_0x4f71c2(0x20c)](),this[_0x4f71c2(0x169)];}get[a0_0x44aa3e(0x1f6)](){const _0x281b7b=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x281b7b(0x1d8)];}get[a0_0x44aa3e(0x21b)](){const _0x174530=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x174530(0x115)];}get[a0_0x44aa3e(0x11c)](){return this['_ensureInitialized'](),this['_allowReset'];}get[a0_0x44aa3e(0x225)](){const _0x204b8e=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x204b8e(0x184)];}get[a0_0x44aa3e(0x123)](){const _0x5c509b=a0_0x44aa3e;return this[_0x5c509b(0x20c)](),this[_0x5c509b(0x124)];}get[a0_0x44aa3e(0x14b)](){const _0x1993fa=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x1993fa(0x179)];}get[a0_0x44aa3e(0x1c8)](){const _0x2caf60=a0_0x44aa3e;return this[_0x2caf60(0x20c)](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x118cbd=a0_0x44aa3e;return this[_0x118cbd(0x20c)](),this[_0x118cbd(0x22a)];}get['reserveMaxTTL'](){const _0xf49563=a0_0x44aa3e;return this[_0xf49563(0x20c)](),this[_0xf49563(0x1af)];}[a0_0x44aa3e(0x199)](){return this['enabled'];}['_validateResource'](_0x4bb62d){const _0x51eec0=a0_0x44aa3e,_0x2b887b={'JqGuv':'string'};if(typeof _0x4bb62d!==_0x2b887b['JqGuv']||!RESOURCE_REGEX[_0x51eec0(0x18f)](_0x4bb62d))throw new IdGeneratorError(_0x51eec0(0x1d7),'Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x51eec0(0x1e6)](_0x4bb62d)+')');}[a0_0x44aa3e(0x148)](_0x3993fb){const _0x3f0591=a0_0x44aa3e,_0x3daf0f={'HZOjK':_0x3f0591(0x15b),'jeFGv':function(_0x385ce1,_0x90d47e){return _0x385ce1>_0x90d47e;},'HwZbW':_0x3f0591(0x214),'YmMFg':function(_0x2e0e2d,_0x5a9193){return _0x2e0e2d==_0x5a9193;},'hUSgO':_0x3f0591(0x1cd),'ykxkj':function(_0x4dfab3,_0x5a71c3){return _0x4dfab3>_0x5a71c3;},'pSvxY':'IDGEN_INVALID_SEPARATOR','MEjOB':_0x3f0591(0x220),'LmEUA':'IDGEN_INVALID_RESOURCE','qAFEo':function(_0x4f68a1,_0x5c1fe2){return _0x4f68a1===_0x5c1fe2;}},{resource:_0x3ca082,format:_0x5b5159,prefix:_0x336ce0,separator:_0x5d0cfd,numDigits:_0x2e83dc,reuseDelete:_0x38a716}=_0x3993fb;this[_0x3f0591(0x1d6)](_0x3ca082);const _0x4dabbc=typeof _0x5b5159==='string'?_0x5b5159[_0x3f0591(0x1da)]():'';if(!ALLOWED_FORMATS[_0x3f0591(0x176)](_0x4dabbc))throw new IdGeneratorError(_0x3daf0f['HZOjK'],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+'\x20(got:\x20'+_0x5b5159+')');if(!Number[_0x3f0591(0x113)](_0x2e83dc)||_0x2e83dc<MIN_NUM_DIGITS||_0x3daf0f[_0x3f0591(0x141)](_0x2e83dc,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x3daf0f['HwZbW'],_0x3f0591(0x121)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x3f0591(0x192)+_0x2e83dc+')');const _0x5b68fd=_0x3daf0f[_0x3f0591(0x1be)](_0x336ce0,null)?'':_0x336ce0;if(typeof _0x5b68fd!==_0x3f0591(0x10e)||!PREFIX_REGEX['test'](_0x5b68fd))throw new IdGeneratorError(_0x3daf0f['hUSgO'],_0x3f0591(0x1d3)+PREFIX_REGEX+_0x3f0591(0x192)+JSON['stringify'](_0x336ce0)+')');const _0x3062ff=_0x3daf0f['YmMFg'](_0x5d0cfd,null)?'':_0x5d0cfd;if(typeof _0x3062ff!==_0x3f0591(0x10e)||_0x3daf0f[_0x3f0591(0x118)](_0x3062ff[_0x3f0591(0x11b)],0x3)||SEPARATOR_FORBIDDEN[_0x3f0591(0x18f)](_0x3062ff))throw new IdGeneratorError(_0x3daf0f[_0x3f0591(0x1e5)],'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x3f0591(0x1e6)](_0x5d0cfd)+')');if(_0x38a716!=null&&typeof _0x38a716!==_0x3daf0f['MEjOB'])throw new IdGeneratorError(_0x3daf0f[_0x3f0591(0x203)],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x38a716+')');return{'resource':_0x3ca082,'format':_0x4dabbc,'prefix':_0x5b68fd,'separator':_0x3062ff,'numDigits':_0x2e83dc,'reuseDelete':_0x3daf0f['qAFEo'](_0x38a716,!![])};}['_validatePattern'](_0x4bdd78){const _0x5b0c60=a0_0x44aa3e,_0x106771={'xZlkj':function(_0x579b39,_0x134b7b){return _0x579b39!==_0x134b7b;},'yhXgk':_0x5b0c60(0x10e),'VhsRR':function(_0x18b8f0,_0x52f7e4){return _0x18b8f0>_0x52f7e4;},'DtIxb':_0x5b0c60(0x1f0)};if(_0x106771[_0x5b0c60(0x111)](typeof _0x4bdd78,_0x106771['yhXgk'])||_0x4bdd78['length']===0x0||_0x106771[_0x5b0c60(0x116)](_0x4bdd78['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x5b0c60(0x1f0),'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x4bdd78&&_0x4bdd78[_0x5b0c60(0x11b)])+')');let _0x3cf790=![];for(const _0x5b6ede of _0x4bdd78){if(PLACEHOLDER_MAP[_0x5b6ede]){_0x3cf790=!![];break;}}if(!_0x3cf790)throw new IdGeneratorError(_0x106771['DtIxb'],_0x5b0c60(0x16d));}[a0_0x44aa3e(0x1d4)](_0x43b1e1){const _0xf0a4f3=a0_0x44aa3e,_0x1c1c24={'VLCdJ':_0xf0a4f3(0x193)};if(_0x43b1e1==null)return undefined;if(!Number[_0xf0a4f3(0x113)](_0x43b1e1)||_0x43b1e1<0x1||_0x43b1e1>MAX_TTL)throw new IdGeneratorError(_0x1c1c24['VLCdJ'],'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x43b1e1+')');return _0x43b1e1;}['_validateMaxRetry'](_0xc913ce){const _0x367c90=a0_0x44aa3e,_0x51d479={'tmvAG':function(_0x54561a,_0x24d525){return _0x54561a==_0x24d525;}};if(_0x51d479[_0x367c90(0x11a)](_0xc913ce,null))return this[_0x367c90(0x225)];if(!Number[_0x367c90(0x113)](_0xc913ce)||_0xc913ce<0x1||_0xc913ce>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0xc913ce+')');return _0xc913ce;}['_validateIdempotencyKey'](_0x278b09){const _0x5195d2=a0_0x44aa3e,_0x15a05d={'COuXy':function(_0x4678e2,_0x384f27){return _0x4678e2==_0x384f27;},'WmiOa':function(_0x30d07b,_0x564ba4){return _0x30d07b!==_0x564ba4;},'TIOur':function(_0x5c1448,_0x4ca831){return _0x5c1448===_0x4ca831;},'OhzuA':function(_0xf7eacb,_0x1b5117){return _0xf7eacb>_0x1b5117;}};if(_0x15a05d[_0x5195d2(0x166)](_0x278b09,null))return undefined;if(_0x15a05d['WmiOa'](typeof _0x278b09,'string')||_0x15a05d['TIOur'](_0x278b09['length'],0x0)||_0x15a05d[_0x5195d2(0x20a)](_0x278b09[_0x5195d2(0x11b)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x5195d2(0x1d7),'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x278b09;}[a0_0x44aa3e(0x1e4)](_0x47dc4f){const _0x183966=a0_0x44aa3e;if(_0x47dc4f==null)return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x47dc4f)||_0x47dc4f<MIN_RESERVE_TTL||_0x47dc4f>this[_0x183966(0x1ea)])throw new IdGeneratorError('IDGEN_INVALID_RESERVE_TTL','Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this[_0x183966(0x1ea)]+_0x183966(0x18b)+_0x47dc4f+')');return _0x47dc4f;}[a0_0x44aa3e(0x17c)](_0x1abc0a){const _0x2bde49=a0_0x44aa3e,_0x3dfaac={'qsKBF':function(_0x4d3601,_0x1b82b1){return _0x4d3601!==_0x1b82b1;},'ffNpD':_0x2bde49(0x10e),'NQSyY':_0x2bde49(0x19d)};if(_0x3dfaac['qsKBF'](typeof _0x1abc0a,_0x3dfaac[_0x2bde49(0x1b1)])||!RESERVATION_TOKEN_REGEX['test'](_0x1abc0a))throw new IdGeneratorError(_0x3dfaac[_0x2bde49(0x1c2)],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x2bde49(0x1e6)](_0x1abc0a)+')');return _0x1abc0a;}[a0_0x44aa3e(0x213)](_0x324494){const _0x3e6ec0=a0_0x44aa3e,_0x1b812d={'eSPVj':function(_0x328e84,_0x3dc2dd){return _0x328e84(_0x3dc2dd);}};return _0x1b812d[_0x3e6ec0(0x172)](String,_0x324494)[_0x3e6ec0(0x20d)](0x2,'0');}['_buildFormatKey'](_0x436ebc,_0x22aa0f,_0x4782fd=new Date()){const _0x37f716=a0_0x44aa3e,_0x57c8e6={'Yeicr':_0x37f716(0x1bf),'LQuUA':_0x37f716(0x12b),'LGwwr':_0x37f716(0x224)},_0x19e73b=_0x4782fd[_0x37f716(0x14c)](),_0x179418=this['_pad2'](_0x4782fd['getMonth']()+0x1),_0xe1b8b=this[_0x37f716(0x213)](_0x4782fd['getDate']()),_0x5c9dfb=_0x22aa0f||'_';let _0x3037d2,_0x262874='';switch(_0x436ebc){case _0x37f716(0x1a0):_0x3037d2=_0x5c9dfb+_0x37f716(0x16c);break;case _0x57c8e6[_0x37f716(0x165)]:_0x262874=''+_0x19e73b,_0x3037d2=_0x5c9dfb+'_yyyy_'+_0x262874;break;case _0x57c8e6[_0x37f716(0x144)]:_0x262874=''+_0x19e73b+_0x179418,_0x3037d2=_0x5c9dfb+'_yyyymm_'+_0x262874;break;case _0x57c8e6['LGwwr']:_0x262874=''+_0x19e73b+_0x179418+_0xe1b8b,_0x3037d2=_0x5c9dfb+'_yyyymmdd_'+_0x262874;break;default:throw new IdGeneratorError(_0x37f716(0x15b),'Unknown\x20format:\x20'+_0x436ebc);}return{'formatKey':_0x3037d2,'datePrefix':_0x262874};}['_buildSeqKey'](_0x3fbe90,_0x44e271){const _0x452ca2=a0_0x44aa3e;return this[_0x452ca2(0x1f6)]+_0x452ca2(0x189)+_0x3fbe90+':'+_0x44e271;}['_buildReuseKey'](_0x34bfc7,_0x55122f){const _0x931c71=a0_0x44aa3e;return this[_0x931c71(0x1f6)]+_0x931c71(0x152)+_0x34bfc7+':'+_0x55122f;}['_buildMetaKey'](_0x25349d,_0x1816ea){const _0x3364fd=a0_0x44aa3e;return this['keyPrefix']+_0x3364fd(0x14d)+_0x25349d+':'+_0x1816ea;}['_buildIssuedKey'](_0x2668c0){return this['keyPrefix']+'issued:'+_0x2668c0;}[a0_0x44aa3e(0x105)](_0x29bdfa,_0x37046f){const _0x39d331=a0_0x44aa3e;return this['keyPrefix']+_0x39d331(0x102)+_0x29bdfa+':'+_0x37046f;}['_buildReservationKey'](_0x196c48){const _0x1c7f9f=a0_0x44aa3e;return this[_0x1c7f9f(0x1f6)]+_0x1c7f9f(0x101)+_0x196c48;}[a0_0x44aa3e(0x221)](_0x72680,_0x2c212c){const _0x59b5e5=a0_0x44aa3e;return this[_0x59b5e5(0x1f6)]+_0x59b5e5(0x1e0)+_0x72680+':'+_0x2c212c;}['_buildReservationKeyPrefix'](){const _0x42dc02=a0_0x44aa3e;return this['keyPrefix']+_0x42dc02(0x101);}[a0_0x44aa3e(0x195)](_0x2037db,_0x395c22,_0x16f50f,_0x254b11){const _0x5d8ee0=a0_0x44aa3e,_0x231d4b={'AQpOL':_0x5d8ee0(0x1ab)};if(_0x16f50f)return idempotencyManager['buildDeterministicKey'](_0x231d4b[_0x5d8ee0(0x201)],_0x2037db,_0x395c22+':'+_0x16f50f+':'+_0x254b11);return idempotencyManager['buildDeterministicKey'](_0x231d4b[_0x5d8ee0(0x201)],_0x2037db,_0x395c22+':'+_0x254b11);}['_getCounterTTL'](_0x590109){const _0x848b89=a0_0x44aa3e;return this[_0x848b89(0x1f1)][_0x590109]||0x0;}['_formatNumber']({format:_0x5eb61c,prefix:_0x1e51ec,datePrefix:_0x495be0,separator:_0x3bb061,numDigits:_0x23c2c6,counterInt:_0xd749ae}){const _0x704acd=a0_0x44aa3e,_0x228aae={'TWGwQ':'IDGEN_COUNTER_OVERFLOW','dpBIG':function(_0x33f135,_0x20a2b5){return _0x33f135(_0x20a2b5);}},_0x311b57=Math['pow'](0xa,_0x23c2c6)-0x1;if(_0xd749ae>_0x311b57)throw new IdGeneratorError(_0x228aae['TWGwQ'],_0x704acd(0x162)+_0xd749ae+'\x20exceeds\x20'+_0x23c2c6+_0x704acd(0x150)+_0x311b57+').\x20Increase\x20numDigits.',{'counterInt':_0xd749ae,'numDigits':_0x23c2c6,'max':_0x311b57});const _0x474694=_0x228aae[_0x704acd(0x1fa)](String,_0xd749ae)[_0x704acd(0x20d)](_0x23c2c6,'0');if(_0x5eb61c===_0x704acd(0x1a0))return _0x1e51ec?''+_0x1e51ec+_0x3bb061+_0x474694:_0x474694;return _0x1e51ec?''+_0x1e51ec+_0x3bb061+_0x495be0+_0x3bb061+_0x474694:''+_0x495be0+_0x3bb061+_0x474694;}[a0_0x44aa3e(0x104)]({format:_0x55b69a,prefix:_0x20174e,separator:_0x45c510,numDigits:_0x22c2d0,number:_0x3159dd}){const _0x1831e2=a0_0x44aa3e,_0x34ba62={'ZvvGi':function(_0x3294ef,_0xc7d542){return _0x3294ef!==_0xc7d542;},'msSlU':_0x1831e2(0x175),'VSvXz':function(_0x487018,_0x3fa078){return _0x487018===_0x3fa078;},'Sdhxf':function(_0x1c2893,_0x2ba9b9){return _0x1c2893===_0x2ba9b9;},'MFhkW':_0x1831e2(0x1a0),'VNfxi':function(_0x4c602e,_0x110aba){return _0x4c602e!==_0x110aba;},'ZayRn':_0x1831e2(0x12b),'QmbYU':function(_0x8d5d2c,_0x59a6de){return _0x8d5d2c||_0x59a6de;}};if(_0x34ba62[_0x1831e2(0x13b)](typeof _0x3159dd,'string')||_0x3159dd[_0x1831e2(0x11b)]===0x0)throw new IdGeneratorError(_0x34ba62['msSlU'],_0x1831e2(0x107));const _0x11e434=_0x45c510||'',_0x4acca0=_0x34ba62['VSvXz'](_0x11e434,'')?[_0x3159dd]:_0x3159dd['split'](_0x11e434);let _0x3aebf5='',_0x229a5b;if(_0x34ba62[_0x1831e2(0x1f9)](_0x55b69a,_0x34ba62[_0x1831e2(0x1b4)])){if(_0x20174e){if(_0x34ba62[_0x1831e2(0x13b)](_0x4acca0['length'],0x2)||_0x34ba62['VNfxi'](_0x4acca0[0x0],_0x20174e))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x1831e2(0x208)+_0x11e434+_0x1831e2(0x15e)+_0x3159dd+')');_0x229a5b=_0x4acca0[0x1];}else{if(_0x34ba62['ZvvGi'](_0x4acca0[_0x1831e2(0x11b)],0x1))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x3159dd+')');_0x229a5b=_0x4acca0[0x0];}}else{const _0x396513=_0x20174e?0x3:0x2;if(_0x34ba62['VNfxi'](_0x4acca0[_0x1831e2(0x11b)],_0x396513))throw new IdGeneratorError(_0x34ba62['msSlU'],_0x1831e2(0x160)+_0x3159dd+',\x20expected\x20'+_0x396513+'\x20parts)');let _0x31d6f5=0x0;if(_0x20174e){if(_0x4acca0[_0x31d6f5]!==_0x20174e)throw new IdGeneratorError(_0x34ba62[_0x1831e2(0x161)],'Number\x20prefix\x20mismatch:\x20expected\x20'+_0x20174e+_0x1831e2(0x108)+_0x4acca0[_0x31d6f5]);_0x31d6f5++;}_0x3aebf5=_0x4acca0[_0x31d6f5++];const _0x14116e=_0x55b69a==='yyyy'?/^\d{4}$/:_0x55b69a===_0x34ba62[_0x1831e2(0x164)]?/^\d{6}$/:/^\d{8}$/;if(!_0x14116e['test'](_0x3aebf5))throw new IdGeneratorError(_0x34ba62[_0x1831e2(0x161)],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x55b69a+':\x20'+_0x3aebf5);_0x229a5b=_0x4acca0[_0x31d6f5];}if(!new RegExp('^\x5cd{'+_0x22c2d0+'}$')['test'](_0x229a5b))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x1831e2(0x128)+_0x22c2d0+'\x20digits\x20(got:\x20'+_0x229a5b+')');const _0xc041a6=parseInt(_0x229a5b,0xa),_0x4d8a3e=_0x34ba62[_0x1831e2(0x19b)](_0x20174e,'_');let _0x4859f9;return _0x55b69a===_0x34ba62['MFhkW']?_0x4859f9=_0x4d8a3e+'_text':_0x4859f9=_0x4d8a3e+'_'+_0x55b69a+'_'+_0x3aebf5,{'formatKey':_0x4859f9,'counterInt':_0xc041a6,'datePrefix':_0x3aebf5};}['_generateFromPattern'](_0xbe4dab){const _0x35cdda=a0_0x44aa3e;let _0x3c8569='';for(const _0x1289d7 of _0xbe4dab){const _0x547f73=PLACEHOLDER_MAP[_0x1289d7];if(_0x547f73){const _0x1a1a47=crypto['randomInt'](0x0,_0x547f73[_0x35cdda(0x11b)]);_0x3c8569+=_0x547f73[_0x1a1a47];}else _0x3c8569+=_0x1289d7;}return _0x3c8569;}async['_retrieveIdemCache'](_0x5bb002){const _0xa2da22=a0_0x44aa3e,_0x8c1be5={'uNMNW':_0xa2da22(0x206),'EiPtX':'Idempotency\x20retrieve\x20error'};if(!_0x5bb002)return null;try{const _0x10cda8=redisClient[_0xa2da22(0x127)](),_0x58c997=await _0x10cda8['get'](_0x5bb002);if(_0x58c997)return logger['info']({'event':_0x8c1be5['uNMNW'],'key':_0x5bb002},_0xa2da22(0x1de)),JSON['parse'](_0x58c997);return null;}catch(_0x2c4b6a){return logger[_0xa2da22(0x20f)]({'event':'idgen_idem_retrieve_error','error':_0x2c4b6a['message']},_0x8c1be5[_0xa2da22(0x10a)]),null;}}async[a0_0x44aa3e(0x21e)](_0x590d17,_0x29f635){const _0x1cb8cd=a0_0x44aa3e,_0x56ce91={'YufdQ':_0x1cb8cd(0x1a6),'SQaTS':_0x1cb8cd(0x1c1)};if(!_0x590d17)return;try{const _0x33b935=redisClient['getClient']();await _0x33b935[_0x1cb8cd(0x16a)](_0x590d17,this['idemTTL'],JSON['stringify'](_0x29f635));}catch(_0x26a72a){logger[_0x1cb8cd(0x20f)]({'event':_0x56ce91[_0x1cb8cd(0x112)],'error':_0x26a72a[_0x1cb8cd(0x168)]},_0x56ce91['SQaTS']);}}async[a0_0x44aa3e(0x12f)](_0x5bccc9,_0x1e9989){const _0xdf12a6=a0_0x44aa3e,_0x901c1d={'eLEMf':function(_0x108677,_0x48f999){return _0x108677===_0x48f999;}};if(!_0x5bccc9)return{'stored':!![],'winnerResult':null};try{const _0x411557=redisClient['getClient'](),_0x5defa8=JSON['stringify'](_0x1e9989),_0x3f4495=await _0x411557['set'](_0x5bccc9,_0x5defa8,'EX',this['idemTTL'],'NX');if(_0x901c1d[_0xdf12a6(0x1f2)](_0x3f4495,'OK'))return{'stored':!![],'winnerResult':null};const _0x2043eb=await _0x411557[_0xdf12a6(0x204)](_0x5bccc9);if(_0x2043eb)return{'stored':![],'winnerResult':JSON[_0xdf12a6(0x14f)](_0x2043eb)};return logger['warn']({'event':_0xdf12a6(0x12d),'key':_0x5bccc9},_0xdf12a6(0x16f)),{'stored':!![],'winnerResult':null};}catch(_0x1489e9){return logger[_0xdf12a6(0x20f)]({'event':'idgen_idem_storenx_error','error':_0x1489e9[_0xdf12a6(0x168)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x44aa3e(0x130)](_0x40a95b,_0xadaf6f,_0xce8f74){const _0x41d7df=a0_0x44aa3e,_0x39a88c={'UCyvm':_0x41d7df(0x198),'TiNyQ':'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)'};try{const _0x297020=redisClient[_0x41d7df(0x127)]();if(_0xce8f74){const _0x1e9b84=this[_0x41d7df(0x105)](_0x40a95b,_0xadaf6f);await _0x297020[_0x41d7df(0x131)](_0x1e9b84);}else{const _0xfa345d=this[_0x41d7df(0x143)](_0x40a95b);await _0x297020[_0x41d7df(0x1cb)](_0xfa345d,_0xadaf6f);}}catch(_0x2f1899){logger['warn']({'event':_0x39a88c[_0x41d7df(0x202)],'error':_0x2f1899['message']},_0x39a88c[_0x41d7df(0x1fe)]);}}async['_updateMeta'](_0x19bf5e,_0x508b35,_0x6384f0,_0x45bcf9=0x0){const _0x2035e0=a0_0x44aa3e;try{const _0x16fcd0=redisClient[_0x2035e0(0x127)](),_0x342f6d=this['_buildMetaKey'](_0x19bf5e,_0x508b35),_0x192d14=[];for(const [_0x300b32,_0x2da3d1]of Object[_0x2035e0(0x22c)](_0x6384f0)){_0x192d14[_0x2035e0(0x154)](_0x300b32,String(_0x2da3d1));}if(_0x192d14['length']>0x0){await _0x16fcd0[_0x2035e0(0x21f)](_0x342f6d,..._0x192d14);if(_0x45bcf9>0x0)await _0x16fcd0['expire'](_0x342f6d,_0x45bcf9);}}catch(_0x100eec){logger[_0x2035e0(0x20f)]({'event':_0x2035e0(0x186),'error':_0x100eec[_0x2035e0(0x168)]},'Meta\x20update\x20error');}}async['number'](_0x13d4e7){const _0x12bc26=a0_0x44aa3e,_0x3b5920={'rbnzY':_0x12bc26(0x226),'hnZnU':function(_0x3fabac,_0x14813a){return _0x3fabac(_0x14813a);},'LCPkU':function(_0x4fae3c,_0x501650){return _0x4fae3c(_0x501650);},'jbkUH':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError(_0x3b5920[_0x12bc26(0x205)],_0x12bc26(0x211));const _0x338d1e=this['_validateNumberParams'](_0x13d4e7),_0x2dabb4=this[_0x12bc26(0x21a)](_0x13d4e7[_0x12bc26(0x13f)]),{resource:_0x1af60a,format:_0x13631b,prefix:_0x5e0a79,separator:_0x2ff11d,numDigits:_0x1f3125,reuseDelete:_0x44056b}=_0x338d1e,{formatKey:_0x53326c,datePrefix:_0xe8ab05}=this[_0x12bc26(0x145)](_0x13631b,_0x5e0a79),_0x284ba0=this['_buildSeqKey'](_0x1af60a,_0x53326c),_0x49b079=this[_0x12bc26(0x1b0)](_0x1af60a,_0x53326c),_0x12ed31=this[_0x12bc26(0x134)](_0x13631b);let _0x4c7a7c=null;if(_0x2dabb4){_0x4c7a7c=this[_0x12bc26(0x195)](_0x12bc26(0x1c3),_0x1af60a,_0x53326c,_0x2dabb4);const _0x477454=await this['_retrieveIdemCache'](_0x4c7a7c);if(_0x477454)return _0x477454;}const _0x3eb8d1=redisClient[_0x12bc26(0x127)](),_0x38af6f=await _0x3eb8d1['eval'](LUA_GENERATE_NUMBER,0x2,_0x284ba0,_0x49b079,_0x44056b?'1':'0',_0x3b5920[_0x12bc26(0x15f)](String,_0x12ed31)),_0x1c7332=_0x38af6f[0x0],_0x4d262b=_0x38af6f[0x1]===0x1,_0x497669=this[_0x12bc26(0x126)]({'format':_0x13631b,'prefix':_0x5e0a79,'datePrefix':_0xe8ab05,'separator':_0x2ff11d,'numDigits':_0x1f3125,'counterInt':_0x1c7332}),_0x26bf35={'value':_0x497669,'counter':_0x1c7332,'resource':_0x1af60a,'formatKey':_0x53326c,'isReused':_0x4d262b,'generatedAt':new Date()[_0x12bc26(0x1e3)]()},_0x4b5fbe=await this[_0x12bc26(0x12f)](_0x4c7a7c,_0x26bf35);if(!_0x4b5fbe[_0x12bc26(0x1ae)]){try{await _0x3eb8d1[_0x12bc26(0x181)](LUA_RELEASE_NUMBER,0x1,_0x49b079,String(_0x1c7332),_0x3b5920['LCPkU'](String,_0x12ed31));}catch(_0x5eb3d3){logger[_0x12bc26(0x20f)]({'event':_0x12bc26(0x1f7),'error':_0x5eb3d3[_0x12bc26(0x168)],'resource':_0x1af60a,'formatKey':_0x53326c,'counterInt':_0x1c7332},_0x12bc26(0x170));}return logger[_0x12bc26(0x1c4)]({'event':_0x3b5920['jbkUH'],'resource':_0x1af60a,'formatKey':_0x53326c,'counter':_0x1c7332},_0x12bc26(0x129)),_0x4b5fbe[_0x12bc26(0x1fd)];}return this['_updateMeta'](_0x1af60a,_0x53326c,{'lastValue':_0x497669,'lastCounter':_0x1c7332,'lastIsReused':_0x4d262b,'lastGeneratedAt':_0x26bf35['generatedAt']},_0x12ed31),logger['info']({'event':'idgen_number_generated','resource':_0x1af60a,'formatKey':_0x53326c,'counter':_0x1c7332,'isReused':_0x4d262b},_0x12bc26(0x16b)+_0x497669),_0x26bf35;}async[a0_0x44aa3e(0x132)](_0x4ebf4e){const _0x4c0c93=a0_0x44aa3e,_0x289817={'LdtuI':function(_0x8e1f09,_0x1f3410){return _0x8e1f09!==_0x1f3410;},'olzLD':'string','GHBYK':_0x4c0c93(0x175),'axdgK':function(_0x3913b0,_0x492da5){return _0x3913b0(_0x492da5);},'ExNBq':function(_0x10a6fc,_0x512c43){return _0x10a6fc(_0x512c43);},'CvMIo':_0x4c0c93(0x1e9)};if(!this[_0x4c0c93(0x15d)])throw new IdGeneratorError(_0x4c0c93(0x226),_0x4c0c93(0x114));let _0x4ea310,_0x4cfc49,_0x4e7cb6,_0x34f592;const _0xa337e=this[_0x4c0c93(0x21a)](_0x4ebf4e['idempotencyKey']);if(_0x4ebf4e[_0x4c0c93(0x17b)]!==undefined&&_0x289817[_0x4c0c93(0x12e)](_0x4ebf4e[_0x4c0c93(0x17b)],null)){this['_validateResource'](_0x4ebf4e['resource']),_0x4ea310=_0x4ebf4e['resource'];if(_0x289817[_0x4c0c93(0x12e)](typeof _0x4ebf4e['formatKey'],_0x289817['olzLD'])||_0x4ebf4e[_0x4c0c93(0x19a)][_0x4c0c93(0x11b)]===0x0)throw new IdGeneratorError(_0x289817['GHBYK'],_0x4c0c93(0x120));_0x4cfc49=_0x4ebf4e['formatKey'];if(!Number[_0x4c0c93(0x113)](_0x4ebf4e[_0x4c0c93(0x17b)])||_0x4ebf4e[_0x4c0c93(0x17b)]<0x1)throw new IdGeneratorError(_0x4c0c93(0x175),_0x4c0c93(0x218)+_0x4ebf4e[_0x4c0c93(0x17b)]+')');_0x4e7cb6=_0x4ebf4e[_0x4c0c93(0x17b)];const _0x44ff6e=_0x4cfc49[_0x4c0c93(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x34f592=_0x44ff6e?_0x44ff6e[0x1]:'text';}else{const _0x5b3cfa=this['_validateNumberParams'](_0x4ebf4e),_0x568463=this['_parseNumber']({'format':_0x5b3cfa['format'],'prefix':_0x5b3cfa['prefix'],'separator':_0x5b3cfa[_0x4c0c93(0x158)],'numDigits':_0x5b3cfa['numDigits'],'number':_0x4ebf4e[_0x4c0c93(0x1c3)]});_0x4ea310=_0x5b3cfa['resource'],_0x4cfc49=_0x568463['formatKey'],_0x4e7cb6=_0x568463[_0x4c0c93(0x17b)],_0x34f592=_0x5b3cfa['format'];}const _0x569907=this[_0x4c0c93(0x1b0)](_0x4ea310,_0x4cfc49),_0x5035f0=this['_getCounterTTL'](_0x34f592);let _0x2f68de=null;if(_0xa337e){_0x2f68de=this['_buildIdemKey']('release',_0x4ea310,_0x4cfc49,_0xa337e);const _0x313a7f=await this['_retrieveIdemCache'](_0x2f68de);if(_0x313a7f)return _0x313a7f;}const _0x447f33=redisClient[_0x4c0c93(0x127)]();await _0x447f33[_0x4c0c93(0x181)](LUA_RELEASE_NUMBER,0x1,_0x569907,_0x289817['axdgK'](String,_0x4e7cb6),_0x289817[_0x4c0c93(0x138)](String,_0x5035f0));const _0x28a139={'released':!![],'resource':_0x4ea310,'formatKey':_0x4cfc49,'counter':_0x4e7cb6,'releasedAt':new Date()['toISOString']()};return await this[_0x4c0c93(0x21e)](_0x2f68de,_0x28a139),this['_updateMeta'](_0x4ea310,_0x4cfc49,{'lastReleasedCounter':_0x4e7cb6,'lastReleasedAt':_0x28a139[_0x4c0c93(0x1e1)]},_0x5035f0),logger['info']({'event':_0x289817[_0x4c0c93(0x109)],'resource':_0x4ea310,'formatKey':_0x4cfc49,'counter':_0x4e7cb6},_0x4c0c93(0x122)+_0x4e7cb6),_0x28a139;}async[a0_0x44aa3e(0x1e2)](_0x36f5a8){const _0x40e4fb=a0_0x44aa3e,_0x4b525f={'npAna':function(_0x3ffa9d,_0x2c0f22){return _0x3ffa9d+_0x2c0f22;},'Yeqrd':function(_0x102da2,_0x40c8cb){return _0x102da2*_0x40c8cb;},'GCnEr':'format','Tytrg':'separator','DsyKN':'numDigits','NgJOe':'datePrefix','SDjdb':_0x40e4fb(0x12a),'NbdvL':_0x40e4fb(0x215),'VkgEb':_0x40e4fb(0x229),'TIqCB':function(_0x211ff6,_0x57a1a8){return _0x211ff6(_0x57a1a8);},'LVlpW':function(_0x2e72f9,_0x86a8e4){return _0x2e72f9(_0x86a8e4);},'EhYwS':function(_0x96acd7,_0x46c29c){return _0x96acd7(_0x46c29c);},'gZhLT':_0x40e4fb(0x188),'YvJVh':_0x40e4fb(0x1d0),'ydknX':_0x40e4fb(0x18c)};if(!this[_0x40e4fb(0x15d)])throw new IdGeneratorError(_0x40e4fb(0x226),'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x2accb6=this[_0x40e4fb(0x148)](_0x36f5a8),_0x3a2e58=this[_0x40e4fb(0x1e4)](_0x36f5a8['ttl']),_0x252d43=this[_0x40e4fb(0x21a)](_0x36f5a8[_0x40e4fb(0x13f)]),{resource:_0x3ce822,format:_0x46117d,prefix:_0x28cb6d,separator:_0x3172ce,numDigits:_0x53cf72,reuseDelete:_0x1ac5cb}=_0x2accb6,{formatKey:_0x259932,datePrefix:_0x18a767}=this['_buildFormatKey'](_0x46117d,_0x28cb6d),_0x44aa0d=this['_buildSeqKey'](_0x3ce822,_0x259932),_0x3c19a8=this[_0x40e4fb(0x1b0)](_0x3ce822,_0x259932),_0x23e6d3=this['_buildReservationIndexKey'](_0x3ce822,_0x259932),_0xf68035=this['_getCounterTTL'](_0x46117d);let _0x36d2b3=null;if(_0x252d43){_0x36d2b3=this[_0x40e4fb(0x195)]('reserve',_0x3ce822,_0x259932,_0x252d43);const _0x6ba3b0=await this[_0x40e4fb(0x13a)](_0x36d2b3);if(_0x6ba3b0)return _0x6ba3b0;}const _0x35ba7e=crypto[_0x40e4fb(0x11f)](),_0x49040b=this[_0x40e4fb(0x1cc)](_0x35ba7e),_0x3a09c7=this[_0x40e4fb(0x1ec)](),_0x2a939d=Date[_0x40e4fb(0x1ed)](),_0x48fd11=_0x4b525f['npAna'](_0x2a939d,_0x3a2e58*0x3e8),_0x2af104=_0x4b525f['Yeqrd'](_0x3a2e58,0x3e8),_0x4cac05=new Date(_0x2a939d)['toISOString'](),_0x2c9c41=new Date(_0x48fd11)['toISOString'](),_0x557b6e=['resource',_0x3ce822,_0x40e4fb(0x19a),_0x259932,_0x4b525f[_0x40e4fb(0x11d)],_0x46117d,_0x40e4fb(0x19e),_0x28cb6d,_0x4b525f[_0x40e4fb(0x1e7)],_0x3172ce,_0x4b525f[_0x40e4fb(0x22b)],String(_0x53cf72),_0x4b525f['NgJOe'],_0x18a767||'',_0x4b525f[_0x40e4fb(0x1df)],_0x4cac05,_0x4b525f['NbdvL'],_0x2c9c41,_0x4b525f[_0x40e4fb(0x19f)],_0x4b525f['TIqCB'](String,_0x2af104)];_0x252d43&&_0x557b6e[_0x40e4fb(0x154)]('idemKey',_0x252d43);const _0x1a5117=redisClient[_0x40e4fb(0x127)](),_0x5d0527=await _0x1a5117['eval'](LUA_RESERVE_NUMBER,0x3,_0x44aa0d,_0x3c19a8,_0x23e6d3,_0x1ac5cb?'1':'0',String(_0xf68035),_0x35ba7e,_0x49040b,String(_0x2af104),String(_0x48fd11),_0x4b525f[_0x40e4fb(0x223)](String,_0x2a939d),_0x3a09c7,..._0x557b6e),_0x405818=_0x5d0527[0x0],_0x221edb=_0x5d0527[0x1]===0x1,_0x202120=_0x5d0527[0x2]||0x0;let _0x493553;try{_0x493553=this['_formatNumber']({'format':_0x46117d,'prefix':_0x28cb6d,'datePrefix':_0x18a767,'separator':_0x3172ce,'numDigits':_0x53cf72,'counterInt':_0x405818});}catch(_0x22433f){try{await _0x1a5117['eval'](LUA_CANCEL_RESERVATION,0x3,_0x49040b,_0x23e6d3,_0x3c19a8,_0x35ba7e,_0x4b525f[_0x40e4fb(0x12c)](String,_0xf68035));}catch(_0xb2bf27){logger[_0x40e4fb(0x20f)]({'event':_0x40e4fb(0x119),'error':_0xb2bf27['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x22433f;}try{await _0x1a5117['hset'](_0x49040b,_0x40e4fb(0x174),_0x493553);}catch(_0x10c25c){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x10c25c['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x156));}const _0x387029={'token':_0x35ba7e,'value':_0x493553,'counter':_0x405818,'resource':_0x3ce822,'formatKey':_0x259932,'isReused':_0x221edb,'createdAt':_0x4cac05,'expiresAt':_0x2c9c41,'reapedCount':_0x202120},_0x5a5265=await this['_storeIdemCacheNX'](_0x36d2b3,_0x387029);if(!_0x5a5265['stored']){try{await _0x1a5117[_0x40e4fb(0x181)](LUA_CANCEL_RESERVATION,0x3,_0x49040b,_0x23e6d3,_0x3c19a8,_0x35ba7e,String(_0xf68035));}catch(_0x521b7a){logger[_0x40e4fb(0x20f)]({'event':_0x4b525f['gZhLT'],'error':_0x521b7a['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x125));}return logger[_0x40e4fb(0x1c4)]({'event':_0x4b525f[_0x40e4fb(0x155)],'resource':_0x3ce822,'formatKey':_0x259932,'counter':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x1ee)),_0x5a5265['winnerResult'];}return this['_updateMeta'](_0x3ce822,_0x259932,{'lastReservedCounter':_0x405818,'lastReservedAt':_0x4cac05,'lastReapedCount':_0x202120},_0xf68035),logger['info']({'event':_0x4b525f['ydknX'],'resource':_0x3ce822,'formatKey':_0x259932,'counter':_0x405818,'isReused':_0x221edb,'token':_0x35ba7e,'ttl':_0x3a2e58,'reapedCount':_0x202120},_0x40e4fb(0x194)+_0x493553+_0x40e4fb(0x142)+_0x35ba7e+')'),_0x387029;}async[a0_0x44aa3e(0x1eb)](_0x58300b){const _0x9ff93d=a0_0x44aa3e,_0xfdc44b={'ioDrH':_0x9ff93d(0x114),'xjIms':'idgen','vHXpW':function(_0x364e4f,_0x3dc0bb,_0xb262c0){return _0x364e4f(_0x3dc0bb,_0xb262c0);}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xfdc44b[_0x9ff93d(0x200)]);const _0x397e15=this['_validateReservationToken'](_0x58300b&&_0x58300b['token']),_0x6eafd2=this[_0x9ff93d(0x21a)](_0x58300b&&_0x58300b['idempotencyKey']);let _0x49595d=null;if(_0x6eafd2){_0x49595d=idempotencyManager['buildDeterministicKey'](_0xfdc44b[_0x9ff93d(0x167)],'reserve_confirm',_0x397e15+':'+_0x6eafd2);const _0x4ee8ba=await this[_0x9ff93d(0x13a)](_0x49595d);if(_0x4ee8ba)return _0x4ee8ba;}const _0x419823=await this['_getReservationContext'](_0x397e15),_0x30bb2c=redisClient['getClient'](),_0x2bd8b3=await _0x30bb2c['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x419823[_0x9ff93d(0x1f3)],_0x419823['rsvIdxKey'],_0x397e15);if(!_0x2bd8b3||_0x2bd8b3[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x397e15,{'token':_0x397e15});const _0x1eb264=_0xfdc44b['vHXpW'](parseInt,_0x2bd8b3[0x1],0xa),_0x3fc890=_0x2bd8b3[0x2],_0xf171e0=_0x2bd8b3[0x3],_0x5ec848=new Date()[_0x9ff93d(0x1e3)](),_0x44a3d8={'confirmed':!![],'token':_0x397e15,'value':_0x3fc890,'counter':_0x1eb264,'resource':_0x419823[_0x9ff93d(0x1a2)],'formatKey':_0xf171e0,'confirmedAt':_0x5ec848};await this[_0x9ff93d(0x21e)](_0x49595d,_0x44a3d8);const _0x2c53bb=_0xf171e0[_0x9ff93d(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x5dee70=_0x2c53bb?_0x2c53bb[0x1]:'text',_0x2ac0df=this[_0x9ff93d(0x134)](_0x5dee70);return this['_updateMeta'](_0x419823['resource'],_0xf171e0,{'lastConfirmedCounter':_0x1eb264,'lastConfirmedAt':_0x5ec848},_0x2ac0df),logger[_0x9ff93d(0x1c4)]({'event':_0x9ff93d(0x18d),'resource':_0x419823['resource'],'formatKey':_0xf171e0,'counter':_0x1eb264,'token':_0x397e15},_0x9ff93d(0x1ba)+_0x3fc890+'\x20(token='+_0x397e15+')'),_0x44a3d8;}async['cancelReservation'](_0x3fd4ed){const _0x3ab76a=a0_0x44aa3e,_0x289636={'CqyrF':'IDGEN_DISABLED','uuHlQ':'idgen','ghOXl':_0x3ab76a(0x1dd),'IAJtD':function(_0x416fa5,_0x52fafa){return _0x416fa5(_0x52fafa);}};if(!this[_0x3ab76a(0x15d)])throw new IdGeneratorError(_0x289636['CqyrF'],_0x3ab76a(0x114));const _0x51dc13=this[_0x3ab76a(0x17c)](_0x3fd4ed&&_0x3fd4ed['token']),_0x19cb1b=this[_0x3ab76a(0x21a)](_0x3fd4ed&&_0x3fd4ed['idempotencyKey']);let _0x5f4a3f=null;if(_0x19cb1b){_0x5f4a3f=idempotencyManager['buildDeterministicKey'](_0x289636[_0x3ab76a(0x1a1)],_0x289636[_0x3ab76a(0x185)],_0x51dc13+':'+_0x19cb1b);const _0x303655=await this['_retrieveIdemCache'](_0x5f4a3f);if(_0x303655)return _0x303655;}const _0x447498=await this['_getReservationContext'](_0x51dc13),_0x49f686=this['_buildReuseKey'](_0x447498['resource'],_0x447498['formatKey']),_0x3ca7b8=_0x447498[_0x3ab76a(0x19a)][_0x3ab76a(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x54add5=_0x3ca7b8?_0x3ca7b8[0x1]:_0x3ab76a(0x1a0),_0x3965d6=this['_getCounterTTL'](_0x54add5),_0x25db9b=redisClient['getClient'](),_0x19df0f=await _0x25db9b[_0x3ab76a(0x181)](LUA_CANCEL_RESERVATION,0x3,_0x447498['rsvKey'],_0x447498[_0x3ab76a(0x137)],_0x49f686,_0x51dc13,_0x289636['IAJtD'](String,_0x3965d6));if(!_0x19df0f||_0x19df0f[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x51dc13,{'token':_0x51dc13});const _0x43c19f=parseInt(_0x19df0f[0x1],0xa),_0x5e9b15=_0x19df0f[0x2],_0x537ebf=_0x19df0f[0x3],_0x3536a1=new Date()[_0x3ab76a(0x1e3)](),_0x353947={'cancelled':!![],'token':_0x51dc13,'value':_0x5e9b15,'counter':_0x43c19f,'resource':_0x447498[_0x3ab76a(0x1a2)],'formatKey':_0x537ebf,'releasedToReuse':!![],'cancelledAt':_0x3536a1};return await this[_0x3ab76a(0x21e)](_0x5f4a3f,_0x353947),this[_0x3ab76a(0x197)](_0x447498[_0x3ab76a(0x1a2)],_0x537ebf,{'lastCancelledCounter':_0x43c19f,'lastCancelledAt':_0x3536a1},_0x3965d6),logger['info']({'event':'idgen_reservation_cancelled','resource':_0x447498['resource'],'formatKey':_0x537ebf,'counter':_0x43c19f,'token':_0x51dc13},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x5e9b15+'\x20(token='+_0x51dc13+')'),_0x353947;}async['extendReservation'](_0x6767c8){const _0x42aa8e=a0_0x44aa3e,_0x355529={'RQklJ':_0x42aa8e(0x226),'uUKDj':'idgen','wSsIm':function(_0x33ab4e,_0x17c987){return _0x33ab4e+_0x17c987;},'llmUB':function(_0x23a768,_0x256eba){return _0x23a768*_0x256eba;},'gHuUY':function(_0x193831,_0x5dafad){return _0x193831(_0x5dafad);},'kZfXg':function(_0x2e6335,_0x1ffa16){return _0x2e6335!==_0x1ffa16;},'SGqSA':function(_0x3afe32,_0x134325,_0x324dfb){return _0x3afe32(_0x134325,_0x324dfb);}};if(!this['enabled'])throw new IdGeneratorError(_0x355529[_0x42aa8e(0x139)],'ID\x20Generator\x20is\x20disabled');const _0xd44b2a=this[_0x42aa8e(0x17c)](_0x6767c8&&_0x6767c8['token']),_0x51f130=this['_validateReserveTTL'](_0x6767c8&&_0x6767c8['ttl']),_0x51e0e1=this['_validateIdempotencyKey'](_0x6767c8&&_0x6767c8['idempotencyKey']);let _0x2bf523=null;if(_0x51e0e1){_0x2bf523=idempotencyManager[_0x42aa8e(0x17e)](_0x355529[_0x42aa8e(0x151)],'reserve_extend',_0xd44b2a+':'+_0x51e0e1);const _0x5b08b4=await this['_retrieveIdemCache'](_0x2bf523);if(_0x5b08b4)return _0x5b08b4;}const _0x24a2ba=await this['_getReservationContext'](_0xd44b2a),_0x2b8c25=Date[_0x42aa8e(0x1ed)](),_0x1e555c=_0x355529[_0x42aa8e(0x13c)](_0x2b8c25,_0x51f130*0x3e8),_0x1614ea=_0x355529[_0x42aa8e(0x1b2)](_0x51f130,0x3e8),_0x432529=new Date(_0x1e555c)['toISOString'](),_0x3f8f7f=redisClient[_0x42aa8e(0x127)](),_0x2833e2=await _0x3f8f7f[_0x42aa8e(0x181)](LUA_EXTEND_RESERVATION,0x2,_0x24a2ba[_0x42aa8e(0x1f3)],_0x24a2ba['rsvIdxKey'],_0xd44b2a,_0x355529[_0x42aa8e(0x149)](String,_0x1614ea),_0x355529['gHuUY'](String,_0x1e555c),_0x432529);if(!_0x2833e2||_0x355529[_0x42aa8e(0x187)](_0x2833e2[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x42aa8e(0x15a)+_0xd44b2a,{'token':_0xd44b2a});const _0x31b6b6=_0x2833e2[0x1],_0x521211=_0x355529['SGqSA'](parseInt,_0x2833e2[0x2],0xa),_0xe5804c=_0x2833e2[0x3],_0x38d0bc=_0x2833e2[0x4],_0x390a25=new Date(_0x2b8c25)['toISOString'](),_0x245f8f={'extended':!![],'token':_0xd44b2a,'previousExpiresAt':_0x31b6b6,'expiresAt':_0x432529,'ttlMs':_0x1614ea,'resource':_0x24a2ba['resource'],'formatKey':_0x38d0bc,'counter':_0x521211,'value':_0xe5804c,'extendedAt':_0x390a25};await this[_0x42aa8e(0x21e)](_0x2bf523,_0x245f8f);const _0x50c96f=_0x38d0bc[_0x42aa8e(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1c9071=_0x50c96f?_0x50c96f[0x1]:'text',_0x26c31a=this[_0x42aa8e(0x134)](_0x1c9071);return this['_updateMeta'](_0x24a2ba['resource'],_0x38d0bc,{'lastExtendedCounter':_0x521211,'lastExtendedAt':_0x390a25},_0x26c31a),logger[_0x42aa8e(0x1c4)]({'event':'idgen_reservation_extended','resource':_0x24a2ba[_0x42aa8e(0x1a2)],'formatKey':_0x38d0bc,'counter':_0x521211,'token':_0xd44b2a,'ttl':_0x51f130},'ID\x20Generator\x20reservation\x20extended:\x20'+_0xe5804c+'\x20(token='+_0xd44b2a+_0x42aa8e(0x1a7)+_0x51f130+'s)'),_0x245f8f;}async[a0_0x44aa3e(0x157)](_0x5afca2){const _0x428762=a0_0x44aa3e,_0x37eec7={'DKhpp':function(_0x421f05,_0x32f77d,_0x70a2fb){return _0x421f05(_0x32f77d,_0x70a2fb);},'htbVA':function(_0x501111,_0x8fbfac,_0x3ced5b){return _0x501111(_0x8fbfac,_0x3ced5b);},'TLxVz':function(_0x219490,_0xfd845a){return _0x219490===_0xfd845a;},'GJyfl':function(_0x169085,_0x3e6dd3){return _0x169085>=_0x3e6dd3;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');const _0x4fa13b=this['_validateReservationToken'](_0x5afca2&&_0x5afca2[_0x428762(0x13e)]),_0x2be859=this['_buildReservationKey'](_0x4fa13b),_0x388e38=redisClient[_0x428762(0x127)](),_0x43822f=_0x388e38['pipeline']();_0x43822f['hgetall'](_0x2be859),_0x43822f[_0x428762(0x10c)](_0x2be859);const _0x5c80e3=await _0x43822f['exec'](),_0x4fda8e=_0x5c80e3&&_0x5c80e3[0x0]&&_0x5c80e3[0x0][0x1],_0x354706=_0x5c80e3&&_0x5c80e3[0x1]&&_0x5c80e3[0x1][0x1];if(!_0x4fda8e||Object['keys'](_0x4fda8e)[_0x428762(0x11b)]===0x0)throw new IdGeneratorError(_0x428762(0x1ef),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x4fa13b,{'token':_0x4fa13b});return{'token':_0x4fa13b,'resource':_0x4fda8e['resource']||null,'formatKey':_0x4fda8e[_0x428762(0x19a)]||null,'format':_0x4fda8e[_0x428762(0x11e)]||null,'prefix':_0x4fda8e[_0x428762(0x19e)]||'','separator':_0x4fda8e['separator']||'','numDigits':_0x4fda8e[_0x428762(0x15c)]?_0x37eec7['DKhpp'](parseInt,_0x4fda8e['numDigits'],0xa):null,'datePrefix':_0x4fda8e[_0x428762(0x10b)]||'','counter':_0x4fda8e['counter']?_0x37eec7[_0x428762(0x17f)](parseInt,_0x4fda8e['counter'],0xa):null,'value':_0x4fda8e[_0x428762(0x174)]||null,'isReused':_0x37eec7['TLxVz'](_0x4fda8e[_0x428762(0x20e)],'1')||_0x4fda8e['isReused']===0x1,'createdAt':_0x4fda8e['createdAt']||null,'expiresAt':_0x4fda8e[_0x428762(0x215)]||null,'ttlRemainingMs':typeof _0x354706===_0x428762(0x1c3)&&_0x37eec7['GJyfl'](_0x354706,0x0)?_0x354706:null};}async[a0_0x44aa3e(0x1e8)](_0x302a3d){const _0x4eb970=a0_0x44aa3e,_0x3bb511={'nfDjw':'resource','pneBr':'formatKey','nlXGd':function(_0xa112fc,_0xe27906){return _0xa112fc||_0xe27906;}},_0x3882f3=this['_buildReservationKey'](_0x302a3d),_0xf647ed=redisClient[_0x4eb970(0x127)](),_0x3c70b8=await _0xf647ed['hmget'](_0x3882f3,_0x3bb511['nfDjw'],_0x3bb511[_0x4eb970(0x222)]),_0x258cd2=_0x3c70b8&&_0x3c70b8[0x0],_0x32cc5d=_0x3c70b8&&_0x3c70b8[0x1];if(_0x3bb511[_0x4eb970(0x136)](!_0x258cd2,!_0x32cc5d))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x4eb970(0x15a)+_0x302a3d,{'token':_0x302a3d});return{'resource':_0x258cd2,'formatKey':_0x32cc5d,'rsvKey':_0x3882f3,'rsvIdxKey':this[_0x4eb970(0x221)](_0x258cd2,_0x32cc5d)};}async['random'](_0x449419){const _0x34593d=a0_0x44aa3e,_0x23778a={'vGZPk':_0x34593d(0x114),'XeZDx':_0x34593d(0x209),'pADLR':function(_0x33e622,_0x3584b6){return _0x33e622===_0x3584b6;},'gBSCZ':function(_0x495248,_0x5e4002){return _0x495248===_0x5e4002;},'RznOS':function(_0x33e875,_0x582cc0){return _0x33e875===_0x582cc0;},'zYNlk':_0x34593d(0x219),'PASCr':function(_0x242d51,_0x25f9d6){return _0x242d51&&_0x25f9d6;},'ZYRKL':function(_0x3a013a,_0x5990e6){return _0x3a013a+_0x5990e6;},'VVaWh':function(_0x586b1a,_0x3bcfa8){return _0x586b1a||_0x3bcfa8;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x23778a[_0x34593d(0x1a4)]);this['_validateResource'](_0x449419[_0x34593d(0x1a2)]),this['_validatePattern'](_0x449419['pattern']);const _0x5e8969=this['_validateTTL'](_0x449419[_0x34593d(0x1c5)]),_0x12c164=this['_validateMaxRetry'](_0x449419['maxRetry']),_0x6fa2cd=this[_0x34593d(0x21a)](_0x449419['idempotencyKey']),_0x32a454=_0x449419[_0x34593d(0x14e)]===!![],{resource:_0x586e97,pattern:_0x22170c}=_0x449419;let _0x3f6556=null;if(_0x6fa2cd){_0x3f6556=this['_buildIdemKey'](_0x23778a['XeZDx'],_0x586e97,null,_0x6fa2cd);const _0x19fa92=await this[_0x34593d(0x13a)](_0x3f6556);if(_0x19fa92)return _0x19fa92;}const _0x59a1a8=redisClient[_0x34593d(0x127)]();let _0x36ba91=null,_0x3277be=0x0;if(!_0x32a454)_0x36ba91=this['_generateFromPattern'](_0x22170c),_0x3277be=0x1;else{for(let _0x51d0c1=0x0;_0x51d0c1<_0x12c164;_0x51d0c1++){_0x3277be++;const _0x530d20=this['_generateFromPattern'](_0x22170c);if(_0x5e8969){const _0x1fd51a=this[_0x34593d(0x105)](_0x586e97,_0x530d20),_0xefb407=await _0x59a1a8['set'](_0x1fd51a,'1','EX',_0x5e8969,'NX');if(_0x23778a['pADLR'](_0xefb407,'OK')){_0x36ba91=_0x530d20;break;}}else{const _0x41a42e=this['_buildIssuedKey'](_0x586e97),_0x29c756=await _0x59a1a8['sadd'](_0x41a42e,_0x530d20);if(_0x23778a['gBSCZ'](_0x29c756,0x1)){_0x36ba91=_0x530d20;break;}}}if(_0x23778a['RznOS'](_0x36ba91,null))throw new IdGeneratorError(_0x23778a['zYNlk'],_0x34593d(0x18a)+_0x12c164+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x586e97,'pattern':_0x22170c,'maxRetry':_0x12c164});}const _0x416035={'value':_0x36ba91,'resource':_0x586e97,'pattern':_0x22170c,'attemptCount':_0x3277be,'generatedAt':new Date()['toISOString']()};_0x23778a[_0x34593d(0x18e)](_0x5e8969,_0x32a454)&&(_0x416035['expiresAt']=new Date(_0x23778a['ZYRKL'](Date[_0x34593d(0x1ed)](),_0x5e8969*0x3e8))['toISOString']());const _0x4e588b=await this['_storeIdemCacheNX'](_0x3f6556,_0x416035);if(!_0x4e588b[_0x34593d(0x1ae)])return _0x32a454&&await this[_0x34593d(0x130)](_0x586e97,_0x36ba91,_0x5e8969),logger[_0x34593d(0x1c4)]({'event':'idgen_random_idem_loser','resource':_0x586e97,'pattern':_0x22170c,'value':_0x36ba91},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x4e588b['winnerResult'];return logger[_0x34593d(0x1c4)]({'event':_0x34593d(0x177),'resource':_0x586e97,'pattern':_0x22170c,'attemptCount':_0x3277be,'ensureUnique':_0x32a454,'ttl':_0x23778a['VVaWh'](_0x5e8969,0x0)},'ID\x20Generator\x20random:\x20'+_0x36ba91),_0x416035;}async[a0_0x44aa3e(0x1db)](_0x1b9fca){const _0x264f6f=a0_0x44aa3e,_0x5653de={'JZbVG':function(_0x101675,_0x53c8bb){return _0x101675==_0x53c8bb;},'lfBYx':function(_0x2a383b,_0x431513){return _0x2a383b>_0x431513;},'iowIE':'IDGEN_INVALID_DIGITS','NwWIZ':function(_0x3d067e,_0x20edc3){return _0x3d067e===_0x20edc3;}},_0x1b7921=_0x5653de['JZbVG'](_0x1b9fca[_0x264f6f(0x153)],null)?this[_0x264f6f(0x123)]:_0x1b9fca[_0x264f6f(0x153)];if(!Number['isInteger'](_0x1b7921)||_0x1b7921<MIN_PIN_DIGITS||_0x5653de[_0x264f6f(0x1bc)](_0x1b7921,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x5653de[_0x264f6f(0x1c9)],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x1b7921+')');const _0xfe87fd='9'[_0x264f6f(0x163)](_0x1b7921);return this['random']({'resource':_0x1b9fca[_0x264f6f(0x1a2)],'pattern':_0xfe87fd,'ensureUnique':_0x5653de[_0x264f6f(0x140)](_0x1b9fca['ensureUnique'],!![]),'ttl':_0x1b9fca[_0x264f6f(0x1c5)],'maxRetry':_0x1b9fca['maxRetry'],'idempotencyKey':_0x1b9fca['idempotencyKey']});}async['serial'](_0x1de6a7){const _0x408c0c=a0_0x44aa3e,_0x4e7de5=_0x1de6a7[_0x408c0c(0x183)]||this[_0x408c0c(0x14b)];return this['random']({'resource':_0x1de6a7['resource'],'pattern':_0x4e7de5,'ensureUnique':_0x1de6a7[_0x408c0c(0x14e)]!==![],'ttl':_0x1de6a7[_0x408c0c(0x1c5)],'maxRetry':_0x1de6a7['maxRetry'],'idempotencyKey':_0x1de6a7[_0x408c0c(0x13f)]});}async[a0_0x44aa3e(0x1ce)](_0x283611){const _0x1b30f1=a0_0x44aa3e,_0xe5ced5=_0x283611[_0x1b30f1(0x183)]||this[_0x1b30f1(0x1c8)];return this['random']({'resource':_0x283611['resource'],'pattern':_0xe5ced5,'ensureUnique':_0x283611[_0x1b30f1(0x14e)]!==![],'ttl':_0x283611[_0x1b30f1(0x1c5)],'maxRetry':_0x283611['maxRetry'],'idempotencyKey':_0x283611['idempotencyKey']});}async[a0_0x44aa3e(0x159)](_0x3b4611){const _0x354daf=a0_0x44aa3e,_0x21e669={'BJjju':'IDGEN_DISABLED','pkEJR':function(_0xb442b0,_0x1d8127){return _0xb442b0!==_0x1d8127;},'XpUkd':function(_0x48bd7f,_0x4a7cb6){return _0x48bd7f+_0x4a7cb6;}};if(!this[_0x354daf(0x15d)])throw new IdGeneratorError(_0x21e669[_0x354daf(0x1fc)],_0x354daf(0x114));this[_0x354daf(0x1d6)](_0x3b4611[_0x354daf(0x1a2)]);if(_0x21e669['pkEJR'](typeof _0x3b4611['value'],_0x354daf(0x10e))||_0x3b4611['value']['length']===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','value\x20is\x20required');const {resource:_0x303316,value:_0x5b63a5}=_0x3b4611,_0x56d3f7=redisClient[_0x354daf(0x127)](),_0x2a448d=this[_0x354daf(0x105)](_0x303316,_0x5b63a5),_0x18b946=this['_buildIssuedKey'](_0x303316),[_0x335f75,_0xc1af76]=await Promise['all']([_0x56d3f7[_0x354daf(0x131)](_0x2a448d),_0x56d3f7['srem'](_0x18b946,_0x5b63a5)]),_0x379f37=_0x21e669[_0x354daf(0x117)](_0x335f75,_0xc1af76)>0x0;return logger['info']({'event':'idgen_consumed','resource':_0x303316,'value':_0x5b63a5,'consumed':_0x379f37},_0x354daf(0x1a9)+_0x5b63a5),{'consumed':_0x379f37,'resource':_0x303316,'value':_0x5b63a5,'consumedAt':new Date()[_0x354daf(0x1e3)]()};}async['peek'](_0x5b7ad6){const _0x23ba44=a0_0x44aa3e,_0x550a61={'MBOKv':'ID\x20Generator\x20is\x20disabled','waBhf':function(_0x473396,_0x170eac){return _0x473396===_0x170eac;},'zBYIb':'number','BZwkT':function(_0x188d55,_0x2a093f){return _0x188d55||_0x2a093f;}};if(!this['enabled'])throw new IdGeneratorError(_0x23ba44(0x226),_0x550a61[_0x23ba44(0x146)]);this[_0x23ba44(0x1d6)](_0x5b7ad6['resource']);const _0x1feb0f=_0x5b7ad6[_0x23ba44(0x21d)]||_0x23ba44(0x1c3),_0x66c633=redisClient[_0x23ba44(0x127)]();if(_0x550a61[_0x23ba44(0x1b7)](_0x1feb0f,_0x550a61[_0x23ba44(0x190)])){const _0xc68a09=(_0x5b7ad6['format']||'text')[_0x23ba44(0x1da)]();if(!ALLOWED_FORMATS['has'](_0xc68a09))throw new IdGeneratorError(_0x23ba44(0x15b),'Invalid\x20format:\x20'+_0x5b7ad6[_0x23ba44(0x11e)]);const {formatKey:_0x5df384}=this['_buildFormatKey'](_0xc68a09,_0x5b7ad6['prefix']||''),_0x11f222=this['_buildSeqKey'](_0x5b7ad6['resource'],_0x5df384),_0x5c1cf8=this[_0x23ba44(0x1b0)](_0x5b7ad6[_0x23ba44(0x1a2)],_0x5df384),[_0x53f448,_0x2c1aa0]=await Promise[_0x23ba44(0x19c)]([_0x66c633[_0x23ba44(0x204)](_0x11f222),_0x66c633['zcard'](_0x5c1cf8)]);return{'resource':_0x5b7ad6['resource'],'mode':'number','formatKey':_0x5df384,'currentCounter':parseInt(_0x53f448,0xa)||0x0,'reusePoolSize':_0x2c1aa0||0x0};}if(_0x1feb0f===_0x23ba44(0x209)){const _0x25f134=this[_0x23ba44(0x143)](_0x5b7ad6[_0x23ba44(0x1a2)]),_0x4dc476=await _0x66c633['scard'](_0x25f134);return{'resource':_0x5b7ad6['resource'],'mode':'random','issuedCount':_0x550a61['BZwkT'](_0x4dc476,0x0)};}throw new IdGeneratorError(_0x23ba44(0x1d9),_0x23ba44(0x1aa)+_0x1feb0f);}async['getInfo'](_0x1171f3){const _0x44743b=a0_0x44aa3e,_0x25f0ff=await this['peek'](_0x1171f3);if(_0x25f0ff[_0x44743b(0x21d)]===_0x44743b(0x1c3)){const _0x2a09bf=redisClient[_0x44743b(0x127)](),_0x5677ce=this['_buildMetaKey'](_0x1171f3['resource'],_0x25f0ff['formatKey']),_0x290bf0=this['_buildReuseKey'](_0x1171f3[_0x44743b(0x1a2)],_0x25f0ff[_0x44743b(0x19a)]),[_0x20dd8b,_0x567976]=await Promise[_0x44743b(0x19c)]([_0x2a09bf[_0x44743b(0x1c6)](_0x5677ce),_0x2a09bf[_0x44743b(0x227)](_0x290bf0,0x0,-0x1)]);return{..._0x25f0ff,'reusePoolValues':_0x567976['map'](_0x14cf99=>parseInt(_0x14cf99,0xa)),'meta':_0x20dd8b&&Object['keys'](_0x20dd8b)[_0x44743b(0x11b)]>0x0?_0x20dd8b:null};}return _0x25f0ff;}async[a0_0x44aa3e(0x14a)](_0x2fe3a0){const _0x1ab616=a0_0x44aa3e,_0x212b8d={'xjLXR':_0x1ab616(0x110),'ZPLsE':'number','BnvMA':'idgen_reset','cYnCa':_0x1ab616(0x1bb),'pQJtm':_0x1ab616(0x17a),'tIPJF':'meta','RYqaG':'random'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');if(!this['allowReset'])throw new IdGeneratorError(_0x212b8d[_0x1ab616(0x135)],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this[_0x1ab616(0x1d6)](_0x2fe3a0['resource']);const _0x3afd3e=_0x2fe3a0[_0x1ab616(0x21d)]||_0x212b8d[_0x1ab616(0x10d)],_0x1d9fc3=redisClient['getClient']();if(_0x3afd3e==='number'){const _0x1ebc24=(_0x2fe3a0['format']||_0x1ab616(0x1a0))['toLowerCase']();if(!ALLOWED_FORMATS[_0x1ab616(0x176)](_0x1ebc24))throw new IdGeneratorError(_0x1ab616(0x15b),'Invalid\x20format:\x20'+_0x2fe3a0[_0x1ab616(0x11e)]);const {formatKey:_0x32b0f1}=this[_0x1ab616(0x145)](_0x1ebc24,_0x2fe3a0[_0x1ab616(0x19e)]||''),_0x31003c=this['_buildSeqKey'](_0x2fe3a0['resource'],_0x32b0f1),_0x22eb6c=this[_0x1ab616(0x1b0)](_0x2fe3a0[_0x1ab616(0x1a2)],_0x32b0f1),_0x185398=this['_buildMetaKey'](_0x2fe3a0[_0x1ab616(0x1a2)],_0x32b0f1);return await _0x1d9fc3[_0x1ab616(0x131)](_0x31003c,_0x22eb6c,_0x185398),logger[_0x1ab616(0x20f)]({'event':_0x212b8d[_0x1ab616(0x1b9)],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d['ZPLsE'],'formatKey':_0x32b0f1},'ID\x20Generator\x20reset:\x20'+_0x2fe3a0[_0x1ab616(0x1a2)]+':'+_0x32b0f1),{'reset':!![],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d[_0x1ab616(0x10d)],'formatKey':_0x32b0f1,'deletedKeys':[_0x212b8d[_0x1ab616(0x20b)],_0x212b8d[_0x1ab616(0x1bd)],_0x212b8d['tIPJF']]};}if(_0x3afd3e==='random'){const _0xfc417c=this['_buildIssuedKey'](_0x2fe3a0['resource']);return await _0x1d9fc3['del'](_0xfc417c),logger[_0x1ab616(0x20f)]({'event':_0x212b8d['BnvMA'],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d[_0x1ab616(0x1a8)]},_0x1ab616(0x1f5)+_0x2fe3a0[_0x1ab616(0x1a2)]),{'reset':!![],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d['RYqaG'],'deletedKeys':['issued']};}throw new IdGeneratorError(_0x1ab616(0x1d9),'Unknown\x20mode:\x20'+_0x3afd3e);}}const instance=new IdGenerator();instance[a0_0x44aa3e(0x1b5)]=IdGeneratorError,module['exports']=instance,module['exports'][a0_0x44aa3e(0x1b5)]=IdGeneratorError;
1
+ 'use strict';const a0_0x7c9815=a0_0x39fa;(function(_0x560650,_0x498722){const _0x346ec1=a0_0x39fa,_0x10d117=_0x560650();while(!![]){try{const _0x360dd1=-parseInt(_0x346ec1(0xbd))/0x1+-parseInt(_0x346ec1(0x119))/0x2*(-parseInt(_0x346ec1(0x92))/0x3)+-parseInt(_0x346ec1(0x13b))/0x4+-parseInt(_0x346ec1(0xb1))/0x5+parseInt(_0x346ec1(0x121))/0x6*(parseInt(_0x346ec1(0xff))/0x7)+-parseInt(_0x346ec1(0xb5))/0x8+parseInt(_0x346ec1(0x10e))/0x9;if(_0x360dd1===_0x498722)break;else _0x10d117['push'](_0x10d117['shift']());}catch(_0x2e4717){_0x10d117['push'](_0x10d117['shift']());}}}(a0_0x4709,0x870ef));function a0_0x39fa(_0x22ec58,_0x225ae6){_0x22ec58=_0x22ec58-0x86;const _0x470934=a0_0x4709();let _0x39faa3=_0x470934[_0x22ec58];if(a0_0x39fa['jnBXkF']===undefined){var _0x431939=function(_0x74a1f2){const _0x42398d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c7875='',_0x2ae8b7='';for(let _0x89ce8b=0x0,_0x192846,_0x1b3a80,_0xdc82cc=0x0;_0x1b3a80=_0x74a1f2['charAt'](_0xdc82cc++);~_0x1b3a80&&(_0x192846=_0x89ce8b%0x4?_0x192846*0x40+_0x1b3a80:_0x1b3a80,_0x89ce8b++%0x4)?_0x4c7875+=String['fromCharCode'](0xff&_0x192846>>(-0x2*_0x89ce8b&0x6)):0x0){_0x1b3a80=_0x42398d['indexOf'](_0x1b3a80);}for(let _0x15f772=0x0,_0x46af21=_0x4c7875['length'];_0x15f772<_0x46af21;_0x15f772++){_0x2ae8b7+='%'+('00'+_0x4c7875['charCodeAt'](_0x15f772)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ae8b7);};a0_0x39fa['mQdgTs']=_0x431939,a0_0x39fa['HXzbdy']={},a0_0x39fa['jnBXkF']=!![];}const _0x4e4e74=_0x470934[0x0],_0x2a5ae9=_0x22ec58+_0x4e4e74,_0x4b2e26=a0_0x39fa['HXzbdy'][_0x2a5ae9];return!_0x4b2e26?(_0x39faa3=a0_0x39fa['mQdgTs'](_0x39faa3),a0_0x39fa['HXzbdy'][_0x2a5ae9]=_0x39faa3):_0x39faa3=_0x4b2e26,_0x39faa3;}const crypto=require('crypto'),redisClient=require(a0_0x7c9815(0xd9)),{logger}=require('./logger'),idempotencyManager=require(a0_0x7c9815(0x147)),ALLOWED_FORMATS=new Set([a0_0x7c9815(0xe1),a0_0x7c9815(0x13e),'yyyymm','yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT=a0_0x7c9815(0xdb),CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER=a0_0x7c9815(0xc8),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_0x7c9815(0xf7),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_0x7c9815(0x126),LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x7c9815(0xa6);function a0_0x4709(){const _0x350da9=['suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','x3vWzgf0zu1LDge','x3bHCNnLtNvTyMvY','uwvIuNm','x2j1AwXKqwn0AxzLs2v5','C2nHCMq','x2vUC3vYzuLUAxrPywXPEMvK','Bwf4uMv0CNK','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','z016B0q','surhru5FuKvtrvrFtK9ux0fmte9xruq','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','z2v0uMvZzxj2yxrPB24','Aw1jt0u','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','qxH5zLG','BgHwvxu','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','Cg93','mtGZmdu0nwvbDhPtAq','q1jYsue','x2j1AwXKu2vXs2v5','qwTftvO','oteYnJGWvNvmuMnI','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','wwn2B2S','r0DJshO','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','C2fKza','A2vUwKi','qxLpuKm','nZK0ntGYy1nhufPe','BgvUz3rO','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','x2j1AwXKtwv0yuTLEq','CNn2oG','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','AxnjBNrLz2vY','x3jLDhjPzxzLswrLBunHy2HL','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','z2v0','mdeYmZq1nJC4owfIy2rLzG','lwrPz2L0ignHCgfJAxr5icG','uvn0uMi','suqGr2vUzxjHDg9YihjHBMrVBtOG','AxnZDwvK','z252zvm','y29Kzq','DhrS','CMvZB3vYy2u','Bg5duLC','CgLWzwXPBMu','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','AhnVu1y','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','x2nVDw50zxjuveXnyxa','CgfKzgvKicHNB3q6ia','Bwv0ytO','lI9YzwrPCY1JBgLLBNq','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','mdeYmZq1nJC4oq','surhru5Fsu5wquXjrf9nt0rf','x2j1AwXKsxnZDwvKs2v5','AuHXrLC','CMfUzg9T','q0zZCgi','Dgv4Da','tuLrwMC','x2TLEvbYzwzPEa','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','yM9VBgvHBG','CgfKu3rHCNq','Dg9ju09tDhjPBMC','CNn2s2v5','lcbNB3qG','x3rLEhq','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','C2v0zxG','x3zHBgLKyxrLuMvZB3vYy2u','x3zHBgLKyxrLvfrm','x3zHBgLKyxrLtwf4uMv0CNK','x2j1AwXKrM9YBwf0s2v5','vgPcC28','icHNB3q6ia','CgLU','sLLNwMu','AwrNzw5Fy29UzMLNx2LUAxq','q255CKi','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','EK9cDLa','zwvUrfe','yKjPyxm','mteXndm2nvjdB01qAa','BwvZC2fNzq','x2zVCM1HDe51BwjLCG','qNrRseW','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','C3rYAw5N','z2v0sw5MBW','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','vw5RBM93BIbMB3jTyxq6ia','x2rLzMf1BhrqAw5eAwDPDhm','surhru5Fsu5wquXjrf9gt1jnqvq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','x3n0B3jLswrLBunHy2HLtLG','BNvTyMvY','mtyWnZq1odviB01irvy','vwPJrxq','Dg9Rzw4','DhrStxm','z2vcqMK','uvfUzhy','x3zHBgLKyxrLugf0DgvYBG','x2j1AwXKuMv1C2vlzxK','BM93','xLXKEW','DhLhqvC','mZiWmhLQtwLXwq','x3n0B3jLswrLBunHy2HL','surhru5Fsu5wquXjrf9trvbbuKfut1i','AgDLDgfSBa','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','x2LUAxrdB25MAwC','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','nMT4CuHOqG','CMvZzxj2zv9Jyw5JzwW','y2fUy2vSuMvZzxj2yxrPB24','C2XWCfK','CMvSzwfZzwrbDa','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','AhnLDa','seXjz0m','ChjLzML4','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','Bw9Kzq','wujbEeC','wuvdDNm','surhru5FreLtqujmruq','whDsAu4','x3vUzg9syw5KB21szxnLCNzHDgLVBG','uuz6qNO','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','BMfTzq','Bwf0y2G','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','AgfZ','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','A21dr1u','oty4mZqWDgT1Cfzh','ignOyxjZicHNB3qGBgvUz3rOoIa','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','ExL5Eq','x2LKzw1uveW','Dhj1zq','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','serPu1a','u3bRyK8','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','C2HuAhK','ze90Cem','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','surhru5Fq09vtLrfuL9uveXFrefjtfK','CgfYC2u','zgf0zvbYzwzPEa','zw5HyMXLza','DvvyDgG','zxH0zw5KuMvZzxj2yxrPB24','t3LzEva','B0fUzMC','icH0B2TLBJ0','AM9PBG','vxLpEhG','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','CMDJt2u','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','CMvZzxj2zurLzMf1BhruveW','zM9YBwf0s2v5','x2DLDenVDw50zxjuveW','zM9YBwf0','x2rLzMf1BhrdB2rLugf0DgvYBG','ywXS','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','x2j1AwXKuMvZzxj2yxrPB25lzxK','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','AxnszxvZzwq','EurVrfi','z2v0q2XPzw50','AwrLBxbVDgvUy3LlzxK','zgvS','lcaR','x2rLzMf1BhrtzxjPywXqyxr0zxjU','x2rLzMf1BhrnyxHszxrYEq','D21grNq','CMv1C2u6','x2j1AwXKswrLBuTLEq','surhru5Fsu5wquXjrf9qqvrurvjo','v0XXAMK','zw52','CunUC3m','CNn2swr4s2v5','C3rYAw5NAwz5','wejHs2G','x2vUywjSzwq','A2v5uhjLzML4','Dg9mB3DLCKnHC2u','surhru5Fsu5wquXjrf9srvnpvvjdrq','CwfJs0K','y1PyA1G','Dhz4u2W','x2DLBMvYyxrLrNjVBvbHDhrLCM4','Cgf0DgvYBG','CMy6AwrNzw46','x3jLC2vYDMvnyxHuveW','Efburee','AwrNzw5FCMvZzxq','CMvZzxj2zq','ChvZAa','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','vLjjr0e','AwrLBvruta','surhru5Fq09vtLrfuL9pvKvsrKXpvW','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','veTSAxq','C2vXoG','C2vWyxjHDg9Y','z2vUzxjHDgvKqxq','x2fSBg93uMvZzxq','z2v0tw9UDgG','BNvTrgLNAxrZ','rKT3vuy','v1vgEvq','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','zgvMyxvSDfnLCMLHBfbHDhrLCM4','C3rVCMvK','x3L5ExLTBv8','CMv1C2u','x3zHBgLKyxrLuMvZzxj2zvruta','rKPytge','z3jdA2C','y3jLyxrLzef0','ExL5Ew1T','x3bHzdi','y2TMrvq','suqGr2vUzxjHDg9YihjLC2v0oIa','CMvZzxq','wxnSD28','surhru5Fsu5wquXjrf9ovu1crvi','ExL5Ew1Tzgq','y291BNrLCKLUDa','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','x3jLC2vYDMvezwzHDwX0vfrm','x2LUAxrPywXPEMvK','C2vX','q25Uv1C','ywXSB3DszxnLDa','Aw5MBW','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','AxnZDwvKoG','vwP5zMC','yNb1zNy','zxzHBa','sw52ywXPzcbMB3jTyxq6ia','z2v0rgf0zq','surhru5Fsu5wquXjrf9esuDjvfm','mJm0zuHcs0rs','DMfSDwu','DgvZDa','zgvMyxvSDenVzgvqyxr0zxjU','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','sMv5zhe','sLzsrvG','AwrNzw4','DgLNC2q','D2fYBG','zgLNAxrZ'];a0_0x4709=function(){return _0x350da9;};return a0_0x4709();}class IdGeneratorError extends Error{constructor(_0x5ba9b5,_0x461b56,_0x2bf8c1=null){const _0x3acc86=a0_0x7c9815,_0x6af0db={'BtkHL':function(_0x421549,_0x33eb21){return _0x421549||_0x33eb21;}};super(_0x6af0db[_0x3acc86(0x102)](_0x461b56,_0x5ba9b5)),this[_0x3acc86(0x135)]='IdGeneratorError',this[_0x3acc86(0xce)]=_0x5ba9b5,this['details']=_0x2bf8c1;}}class IdGenerator{constructor(){const _0x4ba892=a0_0x7c9815;this[_0x4ba892(0x1a5)]=![],this['_enabled']=null,this['_keyPrefix']=null,this[_0x4ba892(0x13f)]=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this[_0x4ba892(0x109)]=null,this[_0x4ba892(0x167)]=null,this[_0x4ba892(0x15b)]=null,this[_0x4ba892(0xd6)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x4b0f35=a0_0x7c9815,_0x1e57ef={'zOBvP':_0x4b0f35(0x140),'poDXe':function(_0x1b028a,_0x1eb79b,_0x37359d){return _0x1b028a(_0x1eb79b,_0x37359d);},'rllfr':'9999-9999','UyOxx':function(_0x52ae43,_0x2f8604,_0x27bf4b){return _0x52ae43(_0x2f8604,_0x27bf4b);}};this['_keyPrefix']=_0x4b0f35(0x17c),this[_0x4b0f35(0x173)]=process[_0x4b0f35(0x16e)]['IDGEN_ENABLED']===_0x1e57ef[_0x4b0f35(0xfc)],this[_0x4b0f35(0x13f)]=parseInt(process['env']['IDGEN_IDEM_TTL'],0xa)||0x258,this[_0x4b0f35(0x18c)]=process['env']['IDGEN_ALLOW_RESET']===_0x1e57ef['zOBvP'],this[_0x4b0f35(0x168)]=_0x1e57ef['poDXe'](parseInt,process[_0x4b0f35(0x16e)]['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process['env']['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6,this['_defaultSerialPattern']=process[_0x4b0f35(0x16e)][_0x4b0f35(0x191)]||'XXXX-XXXX-XXXX-XXXX',this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x1e57ef['rllfr'],this[_0x4b0f35(0xd6)]={'yyyymm':parseInt(process['env'][_0x4b0f35(0x15f)],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x4b0f35(0x148)],0xa)||0x2a300},this['_reserveDefaultTTL']=parseInt(process['env'][_0x4b0f35(0x12a)],0xa)||DEFAULT_RESERVE_TTL,this[_0x4b0f35(0x17d)]=_0x1e57ef[_0x4b0f35(0x152)](parseInt,process[_0x4b0f35(0x16e)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger[_0x4b0f35(0x89)]({'event':_0x4b0f35(0xf5),'enabled':this['_enabled'],'idemTTL':this[_0x4b0f35(0x13f)],'allowReset':this[_0x4b0f35(0x18c)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this[_0x4b0f35(0x109)],'reserveDefaultTTL':this[_0x4b0f35(0x1a4)],'reserveMaxTTL':this[_0x4b0f35(0x17d)]},_0x4b0f35(0xe4)+this[_0x4b0f35(0x173)]);}['_ensureInitialized'](){const _0x5bf09f=a0_0x7c9815;if(!this['_initialized'])this[_0x5bf09f(0x11e)]();}get[a0_0x7c9815(0x14b)](){const _0x4c0ff9=a0_0x7c9815;return this[_0x4c0ff9(0xa4)](),this['_enabled'];}get[a0_0x7c9815(0x174)](){const _0x6f8f32=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x6f8f32(0xe3)];}get[a0_0x7c9815(0x185)](){const _0x57cdd5=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x57cdd5(0x13f)];}get['allowReset'](){const _0x3dd36a=a0_0x7c9815;return this[_0x3dd36a(0xa4)](),this[_0x3dd36a(0x18c)];}get['defaultMaxRetry'](){const _0x366cf3=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x366cf3(0x168)];}get['defaultPinDigits'](){const _0x2d39f0=a0_0x7c9815;return this[_0x2d39f0(0xa4)](),this[_0x2d39f0(0x109)];}get[a0_0x7c9815(0x192)](){const _0x57a028=a0_0x7c9815;return this[_0x57a028(0xa4)](),this[_0x57a028(0x167)];}get['defaultCodePattern'](){const _0x304e7f=a0_0x7c9815;return this[_0x304e7f(0xa4)](),this['_defaultCodePattern'];}get[a0_0x7c9815(0x157)](){const _0x3dd64d=a0_0x7c9815;return this[_0x3dd64d(0xa4)](),this['_reserveDefaultTTL'];}get['reserveMaxTTL'](){const _0x21c65e=a0_0x7c9815;return this[_0x21c65e(0xa4)](),this['_reserveMaxTTL'];}['isEnabled'](){const _0x5577ad=a0_0x7c9815;return this[_0x5577ad(0x14b)];}[a0_0x7c9815(0xed)](_0x40e100){const _0x48605b=a0_0x7c9815,_0x262bde={'Yslwo':function(_0x481989,_0x9d85f6){return _0x481989!==_0x9d85f6;}};if(_0x262bde[_0x48605b(0x19f)](typeof _0x40e100,_0x48605b(0x105))||!RESOURCE_REGEX[_0x48605b(0x94)](_0x40e100))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x40e100)+')');}['_validateNumberParams'](_0x106236){const _0x3a5948=a0_0x7c9815,_0x40e600={'YECvs':function(_0x1e428e,_0x495b40){return _0x1e428e===_0x495b40;},'xUmxe':function(_0x4a42c1,_0x462778){return _0x4a42c1<_0x462778;},'HxJQq':function(_0x5314f1,_0x50ea0d){return _0x5314f1>_0x50ea0d;},'rhqrS':function(_0x2fb266,_0x5469c5){return _0x2fb266!==_0x5469c5;},'FJXLa':_0x3a5948(0x105),'PMCbu':'IDGEN_INVALID_PREFIX','YqIva':_0x3a5948(0x11b),'hsoSV':function(_0x4588a1,_0x5d6cb8){return _0x4588a1!==_0x5d6cb8;},'KoFjz':_0x3a5948(0xe5),'ZsLen':_0x3a5948(0x176)},{resource:_0x10801b,format:_0x327492,prefix:_0x33382f,separator:_0x896e1f,numDigits:_0xf4b09d,reuseDelete:_0x16f9c2}=_0x106236;this['_validateResource'](_0x10801b);const _0xcd6ee7=_0x40e600[_0x3a5948(0x12f)](typeof _0x327492,'string')?_0x327492['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0xcd6ee7))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x3a5948(0x151)](',\x20')+'\x20(got:\x20'+_0x327492+')');if(!Number[_0x3a5948(0xc4)](_0xf4b09d)||_0x40e600['xUmxe'](_0xf4b09d,MIN_NUM_DIGITS)||_0x40e600['HxJQq'](_0xf4b09d,MAX_NUM_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x3a5948(0x12b)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x3a5948(0xf2)+_0xf4b09d+')');const _0x32d609=_0x33382f==null?'':_0x33382f;if(_0x40e600['rhqrS'](typeof _0x32d609,_0x40e600[_0x3a5948(0x197)])||!PREFIX_REGEX[_0x3a5948(0x94)](_0x32d609))throw new IdGeneratorError(_0x40e600['PMCbu'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON[_0x3a5948(0x171)](_0x33382f)+')');const _0x49e864=_0x896e1f==null?'':_0x896e1f;if(typeof _0x49e864!=='string'||_0x49e864[_0x3a5948(0xbe)]>0x3||SEPARATOR_FORBIDDEN[_0x3a5948(0x94)](_0x49e864))throw new IdGeneratorError(_0x40e600['YqIva'],'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x3a5948(0x171)](_0x896e1f)+')');if(_0x16f9c2!=null&&_0x40e600[_0x3a5948(0xd4)](typeof _0x16f9c2,_0x40e600['KoFjz']))throw new IdGeneratorError(_0x40e600['ZsLen'],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x16f9c2+')');return{'resource':_0x10801b,'format':_0xcd6ee7,'prefix':_0x32d609,'separator':_0x49e864,'numDigits':_0xf4b09d,'reuseDelete':_0x16f9c2===!![]};}[a0_0x7c9815(0x114)](_0x6e4d){const _0x25fcdf=a0_0x7c9815,_0x5066fd={'AyORC':function(_0x17d413,_0x4dd276){return _0x17d413!==_0x4dd276;},'xsipo':_0x25fcdf(0x105),'PZYrE':function(_0x4d24bf,_0x5365a4){return _0x4d24bf>_0x5365a4;},'FTwMH':'IDGEN_INVALID_PATTERN'};if(_0x5066fd[_0x25fcdf(0xbc)](typeof _0x6e4d,_0x5066fd['xsipo'])||_0x6e4d[_0x25fcdf(0xbe)]===0x0||_0x5066fd['PZYrE'](_0x6e4d['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x5066fd['FTwMH'],_0x25fcdf(0x15d)+MAX_PATTERN_LENGTH+_0x25fcdf(0x13c)+(_0x6e4d&&_0x6e4d['length'])+')');let _0x45023a=![];for(const _0x238851 of _0x6e4d){if(PLACEHOLDER_MAP[_0x238851]){_0x45023a=!![];break;}}if(!_0x45023a)throw new IdGeneratorError(_0x25fcdf(0x16c),_0x25fcdf(0xda));}[a0_0x7c9815(0xee)](_0x23d404){const _0x23e551=a0_0x7c9815;if(_0x23d404==null)return undefined;if(!Number[_0x23e551(0xc4)](_0x23d404)||_0x23d404<0x1||_0x23d404>MAX_TTL)throw new IdGeneratorError('IDGEN_INVALID_TTL','Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x23d404+')');return _0x23d404;}['_validateMaxRetry'](_0x5a63e5){const _0x4966ad=a0_0x7c9815,_0x359dd4={'kmCGU':function(_0x12f9e7,_0x2a6cec){return _0x12f9e7==_0x2a6cec;},'DtBFa':function(_0x47eff8,_0x264e0b){return _0x47eff8<_0x264e0b;}};if(_0x359dd4[_0x4966ad(0x13a)](_0x5a63e5,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x5a63e5)||_0x359dd4['DtBFa'](_0x5a63e5,0x1)||_0x5a63e5>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x5a63e5+')');return _0x5a63e5;}['_validateIdempotencyKey'](_0x295f78){const _0x41d0f9=a0_0x7c9815,_0x3d22a8={'sFAbC':_0x41d0f9(0x105),'rgcOe':function(_0x401143,_0x265b30){return _0x401143>_0x265b30;},'FeIfi':'IDGEN_INVALID_RESOURCE'};if(_0x295f78==null)return undefined;if(typeof _0x295f78!==_0x3d22a8['sFAbC']||_0x295f78[_0x41d0f9(0xbe)]===0x0||_0x3d22a8[_0x41d0f9(0x154)](_0x295f78[_0x41d0f9(0xbe)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x3d22a8['FeIfi'],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x295f78;}['_validateReserveTTL'](_0x194625){const _0x204ef1=a0_0x7c9815,_0x4620a3={'lFLlK':function(_0x27f6d1,_0x3d4458){return _0x27f6d1==_0x3d4458;},'CRrIA':'IDGEN_INVALID_RESERVE_TTL'};if(_0x4620a3['lFLlK'](_0x194625,null))return this['reserveDefaultTTL'];if(!Number[_0x204ef1(0xc4)](_0x194625)||_0x194625<MIN_RESERVE_TTL||_0x194625>this['reserveMaxTTL'])throw new IdGeneratorError(_0x4620a3[_0x204ef1(0xb2)],_0x204ef1(0x12c)+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+'\x20seconds\x20(got:\x20'+_0x194625+')');return _0x194625;}['_validateReservationToken'](_0x4a8cb6){const _0x1eb74b=a0_0x7c9815,_0x4f7b08={'CnnWW':function(_0x113253,_0x45bf51){return _0x113253!==_0x45bf51;}};if(_0x4f7b08[_0x1eb74b(0x87)](typeof _0x4a8cb6,_0x1eb74b(0x105))||!RESERVATION_TOKEN_REGEX[_0x1eb74b(0x94)](_0x4a8cb6))throw new IdGeneratorError('IDGEN_INVALID_TOKEN',_0x1eb74b(0x187)+JSON['stringify'](_0x4a8cb6)+')');return _0x4a8cb6;}['_pad2'](_0x5c7337){const _0x14c7c3=a0_0x7c9815;return String(_0x5c7337)[_0x14c7c3(0xe6)](0x2,'0');}['_buildFormatKey'](_0x319056,_0x265edc,_0x402205=new Date()){const _0x507a9b=a0_0x7c9815,_0x15a206={'gBhms':function(_0x4ce434,_0x5e0d45){return _0x4ce434+_0x5e0d45;},'shThy':_0x507a9b(0xe1),'yXley':_0x507a9b(0x19a)},_0x18c9fb=_0x402205['getFullYear'](),_0x1271d4=this[_0x507a9b(0x19b)](_0x15a206['gBhms'](_0x402205[_0x507a9b(0x18d)](),0x1)),_0xc701ad=this['_pad2'](_0x402205[_0x507a9b(0x90)]()),_0x9cd8fa=_0x265edc||'_';let _0x1a34e0,_0x24d3f1='';switch(_0x319056){case _0x15a206[_0x507a9b(0x145)]:_0x1a34e0=_0x9cd8fa+'_text';break;case _0x507a9b(0x13e):_0x24d3f1=''+_0x18c9fb,_0x1a34e0=_0x9cd8fa+'_yyyy_'+_0x24d3f1;break;case _0x15a206['yXley']:_0x24d3f1=''+_0x18c9fb+_0x1271d4,_0x1a34e0=_0x9cd8fa+_0x507a9b(0x194)+_0x24d3f1;break;case _0x507a9b(0x1a1):_0x24d3f1=''+_0x18c9fb+_0x1271d4+_0xc701ad,_0x1a34e0=_0x9cd8fa+'_yyyymmdd_'+_0x24d3f1;break;default:throw new IdGeneratorError(_0x507a9b(0x10a),_0x507a9b(0x108)+_0x319056);}return{'formatKey':_0x1a34e0,'datePrefix':_0x24d3f1};}['_buildSeqKey'](_0x5abeac,_0x3f6c19){const _0x30512c=a0_0x7c9815;return this[_0x30512c(0x174)]+_0x30512c(0x189)+_0x5abeac+':'+_0x3f6c19;}[a0_0x7c9815(0x115)](_0x29a48c,_0x3632b5){const _0x4287d0=a0_0x7c9815;return this[_0x4287d0(0x174)]+_0x4287d0(0x16a)+_0x29a48c+':'+_0x3632b5;}[a0_0x7c9815(0xc1)](_0x18434f,_0x46ef4c){const _0x56979b=a0_0x7c9815;return this[_0x56979b(0x174)]+_0x56979b(0xd8)+_0x18434f+':'+_0x46ef4c;}[a0_0x7c9815(0xdd)](_0x371377){const _0x9cc39b=a0_0x7c9815;return this[_0x9cc39b(0x174)]+_0x9cc39b(0x8b)+_0x371377;}['_buildActiveKey'](_0x1db70d,_0xa487b9){return this['keyPrefix']+'active:'+_0x1db70d+':'+_0xa487b9;}[a0_0x7c9815(0x15e)](_0x237287){const _0x3d5790=a0_0x7c9815;return this[_0x3d5790(0x174)]+'rsv:'+_0x237287;}[a0_0x7c9815(0x155)](_0x42a4b0,_0x5ca4c0){const _0x381b0d=a0_0x7c9815;return this[_0x381b0d(0x174)]+'rsv_idx:'+_0x42a4b0+':'+_0x5ca4c0;}['_buildReservationKeyPrefix'](){const _0x1d47f2=a0_0x7c9815;return this[_0x1d47f2(0x174)]+_0x1d47f2(0xc2);}['_buildIdemKey'](_0xdc611a,_0x4e9193,_0x4f11f8,_0x3f3365){const _0x5dd4b3=a0_0x7c9815,_0x5b04c9={'TKlit':'idgen'};if(_0x4f11f8)return idempotencyManager['buildDeterministicKey'](_0x5b04c9[_0x5dd4b3(0x188)],_0xdc611a,_0x4e9193+':'+_0x4f11f8+':'+_0x3f3365);return idempotencyManager[_0x5dd4b3(0xf8)](_0x5b04c9['TKlit'],_0xdc611a,_0x4e9193+':'+_0x3f3365);}['_getCounterTTL'](_0x3a19c3){return this['_counterTTLMap'][_0x3a19c3]||0x0;}['_formatNumber']({format:_0x48ec7b,prefix:_0x402533,datePrefix:_0xe9372d,separator:_0x2c818f,numDigits:_0x198ddf,counterInt:_0x506784}){const _0x4e5fed=a0_0x7c9815,_0x40c542={'YBAxG':_0x4e5fed(0x186),'kenZB':function(_0x5910a3,_0x3be9a3){return _0x5910a3(_0x3be9a3);},'blwHP':function(_0x432b1b,_0x339da3){return _0x432b1b===_0x339da3;},'aLmNX':'text'},_0x20cf94=Math[_0x4e5fed(0xb0)](0xa,_0x198ddf)-0x1;if(_0x506784>_0x20cf94)throw new IdGeneratorError(_0x40c542[_0x4e5fed(0x12e)],'Counter\x20overflow:\x20'+_0x506784+'\x20exceeds\x20'+_0x198ddf+_0x4e5fed(0xc9)+_0x20cf94+').\x20Increase\x20numDigits.',{'counterInt':_0x506784,'numDigits':_0x198ddf,'max':_0x20cf94});const _0x527b36=_0x40c542[_0x4e5fed(0xbb)](String,_0x506784)[_0x4e5fed(0xe6)](_0x198ddf,'0');if(_0x40c542['blwHP'](_0x48ec7b,_0x40c542['aLmNX']))return _0x402533?''+_0x402533+_0x2c818f+_0x527b36:_0x527b36;return _0x402533?''+_0x402533+_0x2c818f+_0xe9372d+_0x2c818f+_0x527b36:''+_0xe9372d+_0x2c818f+_0x527b36;}['_parseNumber']({format:_0x1a47f5,prefix:_0x45d7da,separator:_0x29550c,numDigits:_0x46774c,number:_0x37e3a4}){const _0x427ece=a0_0x7c9815,_0xd33ef={'gsKFf':function(_0x309141,_0x251634){return _0x309141!==_0x251634;},'slppY':function(_0x45c427,_0x79adaa){return _0x45c427===_0x79adaa;},'bpufv':'IDGEN_INVALID_NUMBER','xPTDA':function(_0x582624,_0xb5c035){return _0x582624||_0xb5c035;},'VRIGA':function(_0x2a9c80,_0x46468f){return _0x2a9c80!==_0x46468f;},'AkEMZ':function(_0xfae35d,_0x1a984d){return _0xfae35d!==_0x1a984d;},'lnCRW':_0x427ece(0x13e),'FKwUF':_0x427ece(0x19a),'BuQvk':function(_0x484cdd,_0x540646,_0x3315a8){return _0x484cdd(_0x540646,_0x3315a8);},'jhCeb':function(_0x51a98b,_0x3ef207){return _0x51a98b||_0x3ef207;},'kJlKj':_0x427ece(0xe1)};if(_0xd33ef['gsKFf'](typeof _0x37e3a4,_0x427ece(0x105))||_0xd33ef['slppY'](_0x37e3a4['length'],0x0))throw new IdGeneratorError(_0xd33ef['bpufv'],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x29d656=_0xd33ef[_0x427ece(0x17e)](_0x29550c,''),_0x14c34b=_0x29d656===''?[_0x37e3a4]:_0x37e3a4['split'](_0x29d656);let _0x11f62e='',_0x56b669;if(_0x1a47f5===_0x427ece(0xe1)){if(_0x45d7da){if(_0xd33ef[_0x427ece(0x184)](_0x14c34b[_0x427ece(0xbe)],0x2)||_0x14c34b[0x0]!==_0x45d7da)throw new IdGeneratorError(_0xd33ef[_0x427ece(0x8d)],_0x427ece(0x97)+_0x29d656+_0x427ece(0xd7)+_0x37e3a4+')');_0x56b669=_0x14c34b[0x1];}else{if(_0xd33ef['gsKFf'](_0x14c34b['length'],0x1))throw new IdGeneratorError(_0x427ece(0x1a0),_0x427ece(0x11f)+_0x37e3a4+')');_0x56b669=_0x14c34b[0x0];}}else{const _0x5af9e1=_0x45d7da?0x3:0x2;if(_0x14c34b['length']!==_0x5af9e1)throw new IdGeneratorError(_0x427ece(0x1a0),'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x37e3a4+',\x20expected\x20'+_0x5af9e1+'\x20parts)');let _0x47db04=0x0;if(_0x45d7da){if(_0xd33ef[_0x427ece(0xb4)](_0x14c34b[_0x47db04],_0x45d7da))throw new IdGeneratorError(_0xd33ef['bpufv'],_0x427ece(0x1a3)+_0x45d7da+_0x427ece(0xe9)+_0x14c34b[_0x47db04]);_0x47db04++;}_0x11f62e=_0x14c34b[_0x47db04++];const _0x3e7bf5=_0xd33ef[_0x427ece(0x124)](_0x1a47f5,_0xd33ef[_0x427ece(0xd1)])?/^\d{4}$/:_0xd33ef['slppY'](_0x1a47f5,_0xd33ef[_0x427ece(0x18f)])?/^\d{6}$/:/^\d{8}$/;if(!_0x3e7bf5['test'](_0x11f62e))throw new IdGeneratorError(_0xd33ef['bpufv'],_0x427ece(0x11d)+_0x1a47f5+':\x20'+_0x11f62e);_0x56b669=_0x14c34b[_0x47db04];}if(!new RegExp(_0x427ece(0x117)+_0x46774c+'}$')[_0x427ece(0x94)](_0x56b669))throw new IdGeneratorError(_0x427ece(0x1a0),_0x427ece(0xeb)+_0x46774c+'\x20digits\x20(got:\x20'+_0x56b669+')');const _0x33f7e0=_0xd33ef['BuQvk'](parseInt,_0x56b669,0xa),_0x5d09f3=_0xd33ef['jhCeb'](_0x45d7da,'_');let _0x5bf9ff;return _0x1a47f5===_0xd33ef['kJlKj']?_0x5bf9ff=_0x5d09f3+_0x427ece(0xea):_0x5bf9ff=_0x5d09f3+'_'+_0x1a47f5+'_'+_0x11f62e,{'formatKey':_0x5bf9ff,'counterInt':_0x33f7e0,'datePrefix':_0x11f62e};}[a0_0x7c9815(0x17a)](_0x5c2891){const _0x3961b4=a0_0x7c9815;let _0x1e304b='';for(const _0x12a3fb of _0x5c2891){const _0x35b904=PLACEHOLDER_MAP[_0x12a3fb];if(_0x35b904){const _0x1dcc85=crypto['randomInt'](0x0,_0x35b904[_0x3961b4(0xbe)]);_0x1e304b+=_0x35b904[_0x1dcc85];}else _0x1e304b+=_0x12a3fb;}return _0x1e304b;}async['_retrieveIdemCache'](_0xc21067){const _0xb49751=a0_0x7c9815,_0x1abe7c={'XBaKh':'Idempotency\x20cache\x20HIT','YcbLX':'idgen_idem_retrieve_error'};if(!_0xc21067)return null;try{const _0x5d67f9=redisClient['getClient'](),_0x3660e6=await _0x5d67f9[_0xb49751(0xc7)](_0xc21067);if(_0x3660e6)return logger[_0xb49751(0x89)]({'event':'idgen_idem_hit','key':_0xc21067},_0x1abe7c[_0xb49751(0x172)]),JSON['parse'](_0x3660e6);return null;}catch(_0x6b454a){return logger[_0xb49751(0x9c)]({'event':_0x1abe7c['YcbLX'],'error':_0x6b454a['message']},'Idempotency\x20retrieve\x20error'),null;}}async['_storeIdemCache'](_0x22e8e8,_0x225271){const _0x22e9f3=a0_0x7c9815,_0x331517={'HLIgC':_0x22e9f3(0xc0)};if(!_0x22e8e8)return;try{const _0x2042a8=redisClient[_0x22e9f3(0x163)]();await _0x2042a8[_0x22e9f3(0xec)](_0x22e8e8,this['idemTTL'],JSON['stringify'](_0x225271));}catch(_0x5b4e75){logger['warn']({'event':'idgen_idem_store_error','error':_0x5b4e75['message']},_0x331517[_0x22e9f3(0x128)]);}}async[a0_0x7c9815(0x10c)](_0x7e3a9e,_0x14d7cb){const _0x3c4fa2=a0_0x7c9815,_0x3b4211={'pzmYp':_0x3c4fa2(0xfa),'YaTZO':_0x3c4fa2(0x103),'JYgZe':'Idempotency\x20SET\x20NX\x20error'};if(!_0x7e3a9e)return{'stored':!![],'winnerResult':null};try{const _0x35dc9a=redisClient[_0x3c4fa2(0x163)](),_0x3aeb2c=JSON[_0x3c4fa2(0x171)](_0x14d7cb),_0x58557f=await _0x35dc9a['set'](_0x7e3a9e,_0x3aeb2c,'EX',this[_0x3c4fa2(0x185)],'NX');if(_0x58557f==='OK')return{'stored':!![],'winnerResult':null};const _0x180db7=await _0x35dc9a['get'](_0x7e3a9e);if(_0x180db7)return{'stored':![],'winnerResult':JSON[_0x3c4fa2(0x149)](_0x180db7)};return logger['warn']({'event':_0x3b4211['pzmYp'],'key':_0x7e3a9e},_0x3b4211['YaTZO']),{'stored':!![],'winnerResult':null};}catch(_0xb7d0b4){return logger['warn']({'event':'idgen_idem_storenx_error','error':_0xb7d0b4['message']},_0x3b4211[_0x3c4fa2(0xf4)]),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x5be92d,_0x44e94b,_0x1b4071){const _0x1c918b=a0_0x7c9815,_0x424f6e={'zeXPe':_0x1c918b(0xa9)};try{const _0x262b02=redisClient[_0x1c918b(0x163)]();if(_0x1b4071){const _0x5a62f2=this['_buildActiveKey'](_0x5be92d,_0x44e94b);await _0x262b02[_0x1c918b(0x165)](_0x5a62f2);}else{const _0x42c625=this['_buildIssuedKey'](_0x5be92d);await _0x262b02['srem'](_0x42c625,_0x44e94b);}}catch(_0x285d0f){logger[_0x1c918b(0x9c)]({'event':'idgen_random_undo_error','error':_0x285d0f[_0x1c918b(0x100)]},_0x424f6e['zeXPe']);}}async['_updateMeta'](_0x3529ce,_0x36ac13,_0x1fef0d,_0x51e660=0x0){const _0x53f874=a0_0x7c9815,_0x464fc3={'tigsd':function(_0x4ba72f,_0x5c5156){return _0x4ba72f>_0x5c5156;},'QRTJY':'idgen_meta_update_error','rVfle':'Meta\x20update\x20error'};try{const _0x48400f=redisClient['getClient'](),_0x267d13=this[_0x53f874(0xc1)](_0x3529ce,_0x36ac13),_0x3c2f3e=[];for(const [_0x2f7d03,_0x2c55a8]of Object['entries'](_0x1fef0d)){_0x3c2f3e['push'](_0x2f7d03,String(_0x2c55a8));}if(_0x464fc3[_0x53f874(0x9b)](_0x3c2f3e['length'],0x0)){await _0x48400f['hset'](_0x267d13,..._0x3c2f3e);if(_0x51e660>0x0)await _0x48400f['expire'](_0x267d13,_0x51e660);}}catch(_0x4aafe3){logger['warn']({'event':_0x464fc3['QRTJY'],'error':_0x4aafe3[_0x53f874(0x100)]},_0x464fc3['rVfle']);}}async[a0_0x7c9815(0x10d)](_0xffd377){const _0xfdcf99=a0_0x7c9815,_0x471dcc={'MIQZg':'number','iDZtT':function(_0x26e6f6,_0x1e2296){return _0x26e6f6(_0x1e2296);},'LHfpc':'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser','sNsYR':_0xfdcf99(0xac),'SpkbO':'idgen_number_generated'};if(!this[_0xfdcf99(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0xfdcf99(0x134));const _0x4704ea=this[_0xfdcf99(0xc3)](_0xffd377),_0x510445=this['_validateIdempotencyKey'](_0xffd377['idempotencyKey']),{resource:_0x55c804,format:_0x411643,prefix:_0x1d586b,separator:_0x2377ee,numDigits:_0x57764b,reuseDelete:_0xbc63a6}=_0x4704ea,{formatKey:_0x53a431,datePrefix:_0x585994}=this[_0xfdcf99(0xf0)](_0x411643,_0x1d586b),_0x27b83d=this['_buildSeqKey'](_0x55c804,_0x53a431),_0x2027b9=this['_buildReuseKey'](_0x55c804,_0x53a431),_0xb2fbf9=this[_0xfdcf99(0x159)](_0x411643);let _0x107f4c=null;if(_0x510445){_0x107f4c=this[_0xfdcf99(0x16b)](_0x471dcc[_0xfdcf99(0xe2)],_0x55c804,_0x53a431,_0x510445);const _0xb3864b=await this['_retrieveIdemCache'](_0x107f4c);if(_0xb3864b)return _0xb3864b;}const _0x531ce9=redisClient[_0xfdcf99(0x163)](),_0x3f09ef=await _0x531ce9['eval'](LUA_GENERATE_NUMBER,0x2,_0x27b83d,_0x2027b9,_0xbc63a6?'1':'0',String(_0xb2fbf9)),_0x1ec31f=_0x3f09ef[0x0],_0x30bf97=_0x3f09ef[0x1]===0x1,_0x537c3b=this[_0xfdcf99(0x101)]({'format':_0x411643,'prefix':_0x1d586b,'datePrefix':_0x585994,'separator':_0x2377ee,'numDigits':_0x57764b,'counterInt':_0x1ec31f}),_0x499010={'value':_0x537c3b,'counter':_0x1ec31f,'resource':_0x55c804,'formatKey':_0x53a431,'isReused':_0x30bf97,'generatedAt':new Date()['toISOString']()},_0x335c68=await this[_0xfdcf99(0x10c)](_0x107f4c,_0x499010);if(!_0x335c68[_0xfdcf99(0x193)]){try{await _0x531ce9[_0xfdcf99(0x8e)](LUA_RELEASE_NUMBER,0x1,_0x2027b9,String(_0x1ec31f),_0x471dcc['iDZtT'](String,_0xb2fbf9));}catch(_0x144fb4){logger['warn']({'event':_0xfdcf99(0x137),'error':_0x144fb4['message'],'resource':_0x55c804,'formatKey':_0x53a431,'counterInt':_0x1ec31f},_0x471dcc['LHfpc']);}return logger[_0xfdcf99(0x89)]({'event':_0x471dcc['sNsYR'],'resource':_0x55c804,'formatKey':_0x53a431,'counter':_0x1ec31f},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x335c68['winnerResult'];}return this['_updateMeta'](_0x55c804,_0x53a431,{'lastValue':_0x537c3b,'lastCounter':_0x1ec31f,'lastIsReused':_0x30bf97,'lastGeneratedAt':_0x499010[_0xfdcf99(0x18b)]},_0xb2fbf9),logger[_0xfdcf99(0x89)]({'event':_0x471dcc[_0xfdcf99(0x143)],'resource':_0x55c804,'formatKey':_0x53a431,'counter':_0x1ec31f,'isReused':_0x30bf97},'ID\x20Generator\x20number:\x20'+_0x537c3b),_0x499010;}async['releaseNumber'](_0x4b0bf4){const _0x33f355=a0_0x7c9815,_0xbea464={'yMagg':'ID\x20Generator\x20is\x20disabled','QStRb':function(_0x420de0,_0x3c1ecb){return _0x420de0!==_0x3c1ecb;},'QebRs':function(_0x3ab31e,_0x2927a5){return _0x3ab31e!==_0x2927a5;},'Ycvok':function(_0x4f60d4,_0x1e172c){return _0x4f60d4<_0x1e172c;},'qCnss':'IDGEN_INVALID_NUMBER','NyIVO':'text','jiUwX':'release'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xbea464['yMagg']);let _0x5ddeae,_0x141a9f,_0x389e9b,_0x1a0713;const _0x273397=this[_0x33f355(0x13d)](_0x4b0bf4['idempotencyKey']);if(_0xbea464[_0x33f355(0xca)](_0x4b0bf4[_0x33f355(0x1a2)],undefined)&&_0x4b0bf4[_0x33f355(0x1a2)]!==null){this['_validateResource'](_0x4b0bf4['resource']),_0x5ddeae=_0x4b0bf4['resource'];if(_0xbea464[_0x33f355(0xa1)](typeof _0x4b0bf4[_0x33f355(0x158)],_0x33f355(0x105))||_0x4b0bf4[_0x33f355(0x158)]['length']===0x0)throw new IdGeneratorError(_0x33f355(0x1a0),'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x141a9f=_0x4b0bf4[_0x33f355(0x158)];if(!Number[_0x33f355(0xc4)](_0x4b0bf4['counterInt'])||_0xbea464[_0x33f355(0xb7)](_0x4b0bf4[_0x33f355(0x1a2)],0x1))throw new IdGeneratorError(_0xbea464[_0x33f355(0x16f)],_0x33f355(0x153)+_0x4b0bf4[_0x33f355(0x1a2)]+')');_0x389e9b=_0x4b0bf4[_0x33f355(0x1a2)];const _0x33e83c=_0x141a9f['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x1a0713=_0x33e83c?_0x33e83c[0x1]:_0xbea464['NyIVO'];}else{const _0x1a1f5b=this['_validateNumberParams'](_0x4b0bf4),_0x4e3f5b=this[_0x33f355(0xa0)]({'format':_0x1a1f5b[_0x33f355(0x15a)],'prefix':_0x1a1f5b[_0x33f355(0x129)],'separator':_0x1a1f5b[_0x33f355(0x18a)],'numDigits':_0x1a1f5b[_0x33f355(0x18e)],'number':_0x4b0bf4['number']});_0x5ddeae=_0x1a1f5b['resource'],_0x141a9f=_0x4e3f5b['formatKey'],_0x389e9b=_0x4e3f5b[_0x33f355(0x1a2)],_0x1a0713=_0x1a1f5b['format'];}const _0x5a7304=this[_0x33f355(0x115)](_0x5ddeae,_0x141a9f),_0x3903a6=this[_0x33f355(0x159)](_0x1a0713);let _0x4395ed=null;if(_0x273397){_0x4395ed=this['_buildIdemKey'](_0xbea464['jiUwX'],_0x5ddeae,_0x141a9f,_0x273397);const _0x27f226=await this['_retrieveIdemCache'](_0x4395ed);if(_0x27f226)return _0x27f226;}const _0x4064e9=redisClient[_0x33f355(0x163)]();await _0x4064e9[_0x33f355(0x8e)](LUA_RELEASE_NUMBER,0x1,_0x5a7304,String(_0x389e9b),String(_0x3903a6));const _0xcb9ad0={'released':!![],'resource':_0x5ddeae,'formatKey':_0x141a9f,'counter':_0x389e9b,'releasedAt':new Date()[_0x33f355(0xe7)]()};return await this[_0x33f355(0x11a)](_0x4395ed,_0xcb9ad0),this[_0x33f355(0x9f)](_0x5ddeae,_0x141a9f,{'lastReleasedCounter':_0x389e9b,'lastReleasedAt':_0xcb9ad0[_0x33f355(0x125)]},_0x3903a6),logger[_0x33f355(0x89)]({'event':_0x33f355(0x120),'resource':_0x5ddeae,'formatKey':_0x141a9f,'counter':_0x389e9b},'ID\x20Generator\x20number\x20released:\x20'+_0x389e9b),_0xcb9ad0;}async['reserveNumber'](_0x2a3e5c){const _0x3231d2=a0_0x7c9815,_0x131b0b={'WegMt':_0x3231d2(0x134),'vfITy':function(_0x1431a0,_0x484ddd){return _0x1431a0*_0x484ddd;},'grCkg':'resource','oAnfg':'formatKey','AxyfX':'format','KXfiT':_0x3231d2(0x18a),'ckfET':function(_0x1bccf3,_0x26fad2){return _0x1bccf3(_0x26fad2);},'HDiSP':'expiresAt','woKEb':function(_0x653f5e,_0x5a639c){return _0x653f5e(_0x5a639c);},'OyYyP':function(_0x3c4e7a,_0x24cdd2){return _0x3c4e7a(_0x24cdd2);},'WLqji':_0x3231d2(0x160),'RzESA':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','imIOE':_0x3231d2(0xbf),'BCbMg':function(_0x2cb081,_0x2b80c0){return _0x2cb081(_0x2b80c0);},'tvxSl':_0x3231d2(0x8a),'TnbAo':_0x3231d2(0x156)};if(!this[_0x3231d2(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0x131b0b['WegMt']);const _0x386378=this[_0x3231d2(0xc3)](_0x2a3e5c),_0x32d1d8=this[_0x3231d2(0x196)](_0x2a3e5c['ttl']),_0x3c2b83=this['_validateIdempotencyKey'](_0x2a3e5c['idempotencyKey']),{resource:_0x21318e,format:_0x3cf036,prefix:_0x1b0fd7,separator:_0x2740f3,numDigits:_0x5b39d1,reuseDelete:_0x101532}=_0x386378,{formatKey:_0x30e8ed,datePrefix:_0x5bdbcb}=this[_0x3231d2(0xf0)](_0x3cf036,_0x1b0fd7),_0x25bbee=this[_0x3231d2(0xb3)](_0x21318e,_0x30e8ed),_0x8aa18f=this['_buildReuseKey'](_0x21318e,_0x30e8ed),_0x37c5c2=this[_0x3231d2(0x155)](_0x21318e,_0x30e8ed),_0x5613af=this[_0x3231d2(0x159)](_0x3cf036);let _0x33c3b0=null;if(_0x3c2b83){_0x33c3b0=this['_buildIdemKey'](_0x3231d2(0x180),_0x21318e,_0x30e8ed,_0x3c2b83);const _0x5ad38c=await this['_retrieveIdemCache'](_0x33c3b0);if(_0x5ad38c)return _0x5ad38c;}const _0x3c9257=crypto['randomUUID'](),_0x4a0a9b=this[_0x3231d2(0x15e)](_0x3c9257),_0x3ef1cc=this[_0x3231d2(0xc6)](),_0x1c90d0=Date[_0x3231d2(0x116)](),_0x17d091=_0x1c90d0+_0x131b0b['vfITy'](_0x32d1d8,0x3e8),_0x4b2d1c=_0x131b0b['vfITy'](_0x32d1d8,0x3e8),_0x41c0b2=new Date(_0x1c90d0)['toISOString'](),_0x3f508a=new Date(_0x17d091)['toISOString'](),_0x4dd802=[_0x131b0b[_0x3231d2(0x198)],_0x21318e,_0x131b0b[_0x3231d2(0x14f)],_0x30e8ed,_0x131b0b[_0x3231d2(0xad)],_0x3cf036,'prefix',_0x1b0fd7,_0x131b0b['KXfiT'],_0x2740f3,'numDigits',_0x131b0b[_0x3231d2(0x19c)](String,_0x5b39d1),'datePrefix',_0x5bdbcb||'',_0x3231d2(0x199),_0x41c0b2,_0x131b0b[_0x3231d2(0x142)],_0x3f508a,_0x3231d2(0x111),_0x131b0b['ckfET'](String,_0x4b2d1c)];_0x3c2b83&&_0x4dd802[_0x3231d2(0x181)]('idemKey',_0x3c2b83);const _0x2a727c=redisClient[_0x3231d2(0x163)](),_0x3367f2=await _0x2a727c['eval'](LUA_RESERVE_NUMBER,0x3,_0x25bbee,_0x8aa18f,_0x37c5c2,_0x101532?'1':'0',String(_0x5613af),_0x3c9257,_0x4a0a9b,_0x131b0b['woKEb'](String,_0x4b2d1c),String(_0x17d091),String(_0x1c90d0),_0x3ef1cc,..._0x4dd802),_0x134623=_0x3367f2[0x0],_0x4902b6=_0x3367f2[0x1]===0x1,_0xefd5fa=_0x3367f2[0x2]||0x0;let _0x41e662;try{_0x41e662=this['_formatNumber']({'format':_0x3cf036,'prefix':_0x1b0fd7,'datePrefix':_0x5bdbcb,'separator':_0x2740f3,'numDigits':_0x5b39d1,'counterInt':_0x134623});}catch(_0x6dac86){try{await _0x2a727c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x4a0a9b,_0x37c5c2,_0x8aa18f,_0x3c9257,_0x131b0b[_0x3231d2(0x14e)](String,_0x5613af));}catch(_0xf81263){logger[_0x3231d2(0x9c)]({'event':_0x131b0b[_0x3231d2(0x16d)],'error':_0xf81263[_0x3231d2(0x100)],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},_0x131b0b['RzESA']);}throw _0x6dac86;}try{await _0x2a727c[_0x3231d2(0x127)](_0x4a0a9b,'value',_0x41e662);}catch(_0x2dd316){logger['warn']({'event':_0x131b0b[_0x3231d2(0xab)],'error':_0x2dd316['message'],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0xc816b1={'token':_0x3c9257,'value':_0x41e662,'counter':_0x134623,'resource':_0x21318e,'formatKey':_0x30e8ed,'isReused':_0x4902b6,'createdAt':_0x41c0b2,'expiresAt':_0x3f508a,'reapedCount':_0xefd5fa},_0x56b44a=await this['_storeIdemCacheNX'](_0x33c3b0,_0xc816b1);if(!_0x56b44a[_0x3231d2(0x193)]){try{await _0x2a727c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x4a0a9b,_0x37c5c2,_0x8aa18f,_0x3c9257,_0x131b0b['BCbMg'](String,_0x5613af));}catch(_0x485b6b){logger[_0x3231d2(0x9c)]({'event':_0x131b0b[_0x3231d2(0x179)],'error':_0x485b6b[_0x3231d2(0x100)],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},_0x131b0b['TnbAo']);}return logger['info']({'event':_0x3231d2(0x182),'resource':_0x21318e,'formatKey':_0x30e8ed,'counter':_0x134623,'token':_0x3c9257},_0x3231d2(0x96)),_0x56b44a['winnerResult'];}return this['_updateMeta'](_0x21318e,_0x30e8ed,{'lastReservedCounter':_0x134623,'lastReservedAt':_0x41c0b2,'lastReapedCount':_0xefd5fa},_0x5613af),logger[_0x3231d2(0x89)]({'event':'idgen_number_reserved','resource':_0x21318e,'formatKey':_0x30e8ed,'counter':_0x134623,'isReused':_0x4902b6,'token':_0x3c9257,'ttl':_0x32d1d8,'reapedCount':_0xefd5fa},'ID\x20Generator\x20number\x20reserved:\x20'+_0x41e662+_0x3231d2(0x150)+_0x3c9257+')'),_0xc816b1;}async['confirmReservation'](_0x3eda56){const _0xaf9519=a0_0x7c9815,_0x485a8a={'zfIna':'idgen','QQXGI':'reserve_confirm','QQndv':'idgen_reservation_confirmed'};if(!this[_0xaf9519(0x14b)])throw new IdGeneratorError(_0xaf9519(0x130),_0xaf9519(0xaf));const _0x491dfb=this[_0xaf9519(0x183)](_0x3eda56&&_0x3eda56['token']),_0x2055ea=this[_0xaf9519(0x13d)](_0x3eda56&&_0x3eda56[_0xaf9519(0x164)]);let _0x5e4a1b=null;if(_0x2055ea){_0x5e4a1b=idempotencyManager['buildDeterministicKey'](_0x485a8a['zfIna'],_0x485a8a['QQXGI'],_0x491dfb+':'+_0x2055ea);const _0x1da15f=await this[_0xaf9519(0xc5)](_0x5e4a1b);if(_0x1da15f)return _0x1da15f;}const _0x16b8f1=await this['_getReservationContext'](_0x491dfb),_0x5e0c78=redisClient[_0xaf9519(0x163)](),_0x65835e=await _0x5e0c78[_0xaf9519(0x8e)](LUA_CONFIRM_RESERVATION,0x2,_0x16b8f1['rsvKey'],_0x16b8f1['rsvIdxKey'],_0x491dfb);if(!_0x65835e||_0x65835e[0x0]!==0x1)throw new IdGeneratorError(_0xaf9519(0x139),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x491dfb,{'token':_0x491dfb});const _0x463f45=parseInt(_0x65835e[0x1],0xa),_0x1aecf2=_0x65835e[0x2],_0x37315b=_0x65835e[0x3],_0x1209b9=new Date()['toISOString'](),_0x4ff650={'confirmed':!![],'token':_0x491dfb,'value':_0x1aecf2,'counter':_0x463f45,'resource':_0x16b8f1[_0xaf9519(0xd0)],'formatKey':_0x37315b,'confirmedAt':_0x1209b9};await this[_0xaf9519(0x11a)](_0x5e4a1b,_0x4ff650);const _0xef1c6c=_0x37315b[_0xaf9519(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1ed211=_0xef1c6c?_0xef1c6c[0x1]:_0xaf9519(0xe1),_0x42338b=this[_0xaf9519(0x159)](_0x1ed211);return this['_updateMeta'](_0x16b8f1[_0xaf9519(0xd0)],_0x37315b,{'lastConfirmedCounter':_0x463f45,'lastConfirmedAt':_0x1209b9},_0x42338b),logger[_0xaf9519(0x89)]({'event':_0x485a8a[_0xaf9519(0x113)],'resource':_0x16b8f1[_0xaf9519(0xd0)],'formatKey':_0x37315b,'counter':_0x463f45,'token':_0x491dfb},_0xaf9519(0xb6)+_0x1aecf2+'\x20(token='+_0x491dfb+')'),_0x4ff650;}async[a0_0x7c9815(0x123)](_0x5cb586){const _0x11cef3=a0_0x7c9815,_0x4f2961={'WUFyT':_0x11cef3(0x130),'JVREX':_0x11cef3(0xaf),'UjcEt':'idgen','Ujyfg':'text','DZMRE':function(_0x259f01,_0x45a1fa){return _0x259f01(_0x45a1fa);},'clWdY':function(_0x43723d,_0x152eb7){return _0x43723d!==_0x152eb7;},'tyGAW':'idgen_reservation_cancelled'};if(!this[_0x11cef3(0x14b)])throw new IdGeneratorError(_0x4f2961[_0x11cef3(0x190)],_0x4f2961[_0x11cef3(0x99)]);const _0x7be4b=this[_0x11cef3(0x183)](_0x5cb586&&_0x5cb586['token']),_0x439a36=this[_0x11cef3(0x13d)](_0x5cb586&&_0x5cb586[_0x11cef3(0x164)]);let _0x21b3eb=null;if(_0x439a36){_0x21b3eb=idempotencyManager['buildDeterministicKey'](_0x4f2961[_0x11cef3(0x10f)],_0x11cef3(0x122),_0x7be4b+':'+_0x439a36);const _0x4e1490=await this['_retrieveIdemCache'](_0x21b3eb);if(_0x4e1490)return _0x4e1490;}const _0x5a7ad6=await this['_getReservationContext'](_0x7be4b),_0x28fbd4=this[_0x11cef3(0x115)](_0x5a7ad6[_0x11cef3(0xd0)],_0x5a7ad6[_0x11cef3(0x158)]),_0x63b189=_0x5a7ad6['formatKey'][_0x11cef3(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e6da9=_0x63b189?_0x63b189[0x1]:_0x4f2961[_0x11cef3(0x8c)],_0x14f85f=this[_0x11cef3(0x159)](_0x3e6da9),_0x215692=redisClient[_0x11cef3(0x163)](),_0x1304aa=await _0x215692['eval'](LUA_CANCEL_RESERVATION,0x3,_0x5a7ad6[_0x11cef3(0xe8)],_0x5a7ad6[_0x11cef3(0x170)],_0x28fbd4,_0x7be4b,_0x4f2961['DZMRE'](String,_0x14f85f));if(!_0x1304aa||_0x4f2961['clWdY'](_0x1304aa[0x0],0x1))throw new IdGeneratorError(_0x11cef3(0x139),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x7be4b,{'token':_0x7be4b});const _0x53e35f=parseInt(_0x1304aa[0x1],0xa),_0x21e5ea=_0x1304aa[0x2],_0x1d04ec=_0x1304aa[0x3],_0x28dcca=new Date()[_0x11cef3(0xe7)](),_0x45678d={'cancelled':!![],'token':_0x7be4b,'value':_0x21e5ea,'counter':_0x53e35f,'resource':_0x5a7ad6['resource'],'formatKey':_0x1d04ec,'releasedToReuse':!![],'cancelledAt':_0x28dcca};return await this[_0x11cef3(0x11a)](_0x21b3eb,_0x45678d),this[_0x11cef3(0x9f)](_0x5a7ad6['resource'],_0x1d04ec,{'lastCancelledCounter':_0x53e35f,'lastCancelledAt':_0x28dcca},_0x14f85f),logger['info']({'event':_0x4f2961[_0x11cef3(0x118)],'resource':_0x5a7ad6[_0x11cef3(0xd0)],'formatKey':_0x1d04ec,'counter':_0x53e35f,'token':_0x7be4b},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x21e5ea+_0x11cef3(0x150)+_0x7be4b+')'),_0x45678d;}async[a0_0x7c9815(0x14d)](_0x4fe889){const _0x534fb5=a0_0x7c9815,_0x4adf87={'Jeydq':'reserve_extend','cQBnJ':function(_0x1019bf,_0x1a4532){return _0x1019bf(_0x1a4532);},'AAMpD':function(_0x4f5459,_0x1b5e67){return _0x4f5459!==_0x1b5e67;},'NBbUM':_0x534fb5(0x107)};if(!this['enabled'])throw new IdGeneratorError(_0x534fb5(0x130),_0x534fb5(0xaf));const _0x27ac16=this['_validateReservationToken'](_0x4fe889&&_0x4fe889[_0x534fb5(0x110)]),_0x42ea6e=this['_validateReserveTTL'](_0x4fe889&&_0x4fe889[_0x534fb5(0xcf)]),_0x3ed36b=this[_0x534fb5(0x13d)](_0x4fe889&&_0x4fe889['idempotencyKey']);let _0x40f8b4=null;if(_0x3ed36b){_0x40f8b4=idempotencyManager[_0x534fb5(0xf8)](_0x534fb5(0x9a),_0x4adf87[_0x534fb5(0x98)],_0x27ac16+':'+_0x3ed36b);const _0xed4cdc=await this[_0x534fb5(0xc5)](_0x40f8b4);if(_0xed4cdc)return _0xed4cdc;}const _0x308296=await this[_0x534fb5(0xf9)](_0x27ac16),_0x36701c=Date['now'](),_0x3a24db=_0x36701c+_0x42ea6e*0x3e8,_0x573523=_0x42ea6e*0x3e8,_0xb71724=new Date(_0x3a24db)['toISOString'](),_0x3f5308=redisClient[_0x534fb5(0x163)](),_0x244d6e=await _0x3f5308[_0x534fb5(0x8e)](LUA_EXTEND_RESERVATION,0x2,_0x308296['rsvKey'],_0x308296[_0x534fb5(0x170)],_0x27ac16,_0x4adf87['cQBnJ'](String,_0x573523),String(_0x3a24db),_0xb71724);if(!_0x244d6e||_0x4adf87['AAMpD'](_0x244d6e[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x27ac16,{'token':_0x27ac16});const _0x3a29c5=_0x244d6e[0x1],_0x84d0c2=parseInt(_0x244d6e[0x2],0xa),_0x5245be=_0x244d6e[0x3],_0x239e7c=_0x244d6e[0x4],_0x11739c=new Date(_0x36701c)['toISOString'](),_0x2f5572={'extended':!![],'token':_0x27ac16,'previousExpiresAt':_0x3a29c5,'expiresAt':_0xb71724,'ttlMs':_0x573523,'resource':_0x308296['resource'],'formatKey':_0x239e7c,'counter':_0x84d0c2,'value':_0x5245be,'extendedAt':_0x11739c};await this[_0x534fb5(0x11a)](_0x40f8b4,_0x2f5572);const _0x346a4f=_0x239e7c[_0x534fb5(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x28894d=_0x346a4f?_0x346a4f[0x1]:_0x534fb5(0xe1),_0x2f9517=this['_getCounterTTL'](_0x28894d);return this['_updateMeta'](_0x308296[_0x534fb5(0xd0)],_0x239e7c,{'lastExtendedCounter':_0x84d0c2,'lastExtendedAt':_0x11739c},_0x2f9517),logger['info']({'event':_0x4adf87['NBbUM'],'resource':_0x308296['resource'],'formatKey':_0x239e7c,'counter':_0x84d0c2,'token':_0x27ac16,'ttl':_0x42ea6e},_0x534fb5(0xb9)+_0x5245be+_0x534fb5(0x150)+_0x27ac16+_0x534fb5(0x166)+_0x42ea6e+'s)'),_0x2f5572;}async[a0_0x7c9815(0xaa)](_0x1653d4){const _0x3b4f99=a0_0x7c9815,_0x57a61c={'mPfnq':function(_0x42fb7c,_0x43ce87,_0x256fee){return _0x42fb7c(_0x43ce87,_0x256fee);},'bBias':function(_0x10a368,_0x2329f5,_0x252c92){return _0x10a368(_0x2329f5,_0x252c92);},'iHqFW':function(_0x5ef1a8,_0x285189){return _0x5ef1a8===_0x285189;},'vxIpp':function(_0x1f9d72,_0x59bc00){return _0x1f9d72>=_0x59bc00;}};if(!this[_0x3b4f99(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');const _0x47f161=this[_0x3b4f99(0x183)](_0x1653d4&&_0x1653d4['token']),_0xaf837f=this['_buildReservationKey'](_0x47f161),_0x564dab=redisClient['getClient'](),_0x508450=_0x564dab[_0x3b4f99(0xd2)]();_0x508450[_0x3b4f99(0x11c)](_0xaf837f),_0x508450['pttl'](_0xaf837f);const _0x427d54=await _0x508450['exec'](),_0x9a9ed0=_0x427d54&&_0x427d54[0x0]&&_0x427d54[0x0][0x1],_0x132761=_0x427d54&&_0x427d54[0x1]&&_0x427d54[0x1][0x1];if(!_0x9a9ed0||Object['keys'](_0x9a9ed0)[_0x3b4f99(0xbe)]===0x0)throw new IdGeneratorError(_0x3b4f99(0x139),_0x3b4f99(0x10b)+_0x47f161,{'token':_0x47f161});return{'token':_0x47f161,'resource':_0x9a9ed0[_0x3b4f99(0xd0)]||null,'formatKey':_0x9a9ed0['formatKey']||null,'format':_0x9a9ed0[_0x3b4f99(0x15a)]||null,'prefix':_0x9a9ed0[_0x3b4f99(0x129)]||'','separator':_0x9a9ed0[_0x3b4f99(0x18a)]||'','numDigits':_0x9a9ed0[_0x3b4f99(0x18e)]?_0x57a61c['mPfnq'](parseInt,_0x9a9ed0[_0x3b4f99(0x18e)],0xa):null,'datePrefix':_0x9a9ed0[_0x3b4f99(0x14a)]||'','counter':_0x9a9ed0['counter']?_0x57a61c[_0x3b4f99(0xfe)](parseInt,_0x9a9ed0['counter'],0xa):null,'value':_0x9a9ed0[_0x3b4f99(0x93)]||null,'isReused':_0x57a61c['iHqFW'](_0x9a9ed0[_0x3b4f99(0x161)],'1')||_0x57a61c[_0x3b4f99(0xde)](_0x9a9ed0['isReused'],0x1),'createdAt':_0x9a9ed0['createdAt']||null,'expiresAt':_0x9a9ed0['expiresAt']||null,'ttlRemainingMs':typeof _0x132761==='number'&&_0x57a61c['vxIpp'](_0x132761,0x0)?_0x132761:null};}async['_getReservationContext'](_0x47aa8a){const _0x420514=a0_0x7c9815,_0x2a1358={'SVNhw':function(_0xef1402,_0x5f60a4){return _0xef1402||_0x5f60a4;},'yCWTJ':_0x420514(0x139)},_0x31a396=this['_buildReservationKey'](_0x47aa8a),_0xa9424e=redisClient['getClient'](),_0x3fd8f7=await _0xa9424e['hmget'](_0x31a396,_0x420514(0xd0),'formatKey'),_0x481359=_0x3fd8f7&&_0x3fd8f7[0x0],_0x40cc73=_0x3fd8f7&&_0x3fd8f7[0x1];if(_0x2a1358['SVNhw'](!_0x481359,!_0x40cc73))throw new IdGeneratorError(_0x2a1358['yCWTJ'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x47aa8a,{'token':_0x47aa8a});return{'resource':_0x481359,'formatKey':_0x40cc73,'rsvKey':_0x31a396,'rsvIdxKey':this[_0x420514(0x155)](_0x481359,_0x40cc73)};}async['random'](_0x12543c){const _0x222faf=a0_0x7c9815,_0x4acf53={'yqFdW':'ID\x20Generator\x20is\x20disabled','QFzBz':_0x222faf(0xdf),'TjBso':function(_0x53af48,_0x4b7bc0){return _0x53af48===_0x4b7bc0;},'geBBi':function(_0x13faec,_0x334cf1){return _0x13faec===_0x334cf1;},'DODkJ':_0x222faf(0x144),'CnyrB':function(_0x52522c,_0x58e50c){return _0x52522c&&_0x58e50c;},'WjfQZ':function(_0x105d51,_0x47cc56){return _0x105d51+_0x47cc56;},'gMzoD':function(_0x46517d,_0x2049e7){return _0x46517d*_0x2049e7;},'AfRBb':_0x222faf(0xd5)};if(!this[_0x222faf(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0x4acf53['yqFdW']);this[_0x222faf(0xed)](_0x12543c[_0x222faf(0xd0)]),this[_0x222faf(0x114)](_0x12543c[_0x222faf(0x17b)]);const _0x3eb287=this['_validateTTL'](_0x12543c[_0x222faf(0xcf)]),_0x583107=this[_0x222faf(0xef)](_0x12543c['maxRetry']),_0x5d8a9d=this['_validateIdempotencyKey'](_0x12543c[_0x222faf(0x164)]),_0x337ac0=_0x12543c['ensureUnique']===!![],{resource:_0x5b3e81,pattern:_0x3d06ff}=_0x12543c;let _0x4e047f=null;if(_0x5d8a9d){_0x4e047f=this[_0x222faf(0x16b)](_0x4acf53[_0x222faf(0x133)],_0x5b3e81,null,_0x5d8a9d);const _0x21201b=await this['_retrieveIdemCache'](_0x4e047f);if(_0x21201b)return _0x21201b;}const _0x178374=redisClient['getClient']();let _0x28a763=null,_0xf9d440=0x0;if(!_0x337ac0)_0x28a763=this[_0x222faf(0x17a)](_0x3d06ff),_0xf9d440=0x1;else{for(let _0x1f7fae=0x0;_0x1f7fae<_0x583107;_0x1f7fae++){_0xf9d440++;const _0x5b9e94=this['_generateFromPattern'](_0x3d06ff);if(_0x3eb287){const _0x307b34=this[_0x222faf(0xa2)](_0x5b3e81,_0x5b9e94),_0x65de43=await _0x178374['set'](_0x307b34,'1','EX',_0x3eb287,'NX');if(_0x4acf53[_0x222faf(0xf1)](_0x65de43,'OK')){_0x28a763=_0x5b9e94;break;}}else{const _0x32cfbb=this['_buildIssuedKey'](_0x5b3e81),_0x13f3f4=await _0x178374[_0x222faf(0xba)](_0x32cfbb,_0x5b9e94);if(_0x4acf53[_0x222faf(0xf1)](_0x13f3f4,0x1)){_0x28a763=_0x5b9e94;break;}}}if(_0x4acf53[_0x222faf(0x112)](_0x28a763,null))throw new IdGeneratorError(_0x4acf53['DODkJ'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x583107+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x5b3e81,'pattern':_0x3d06ff,'maxRetry':_0x583107});}const _0x4ed876={'value':_0x28a763,'resource':_0x5b3e81,'pattern':_0x3d06ff,'attemptCount':_0xf9d440,'generatedAt':new Date()[_0x222faf(0xe7)]()};_0x4acf53[_0x222faf(0xf6)](_0x3eb287,_0x337ac0)&&(_0x4ed876['expiresAt']=new Date(_0x4acf53['WjfQZ'](Date['now'](),_0x4acf53[_0x222faf(0xa7)](_0x3eb287,0x3e8)))[_0x222faf(0xe7)]());const _0x2f014f=await this[_0x222faf(0x10c)](_0x4e047f,_0x4ed876);if(!_0x2f014f['stored'])return _0x337ac0&&await this[_0x222faf(0x132)](_0x5b3e81,_0x28a763,_0x3eb287),logger['info']({'event':_0x4acf53['AfRBb'],'resource':_0x5b3e81,'pattern':_0x3d06ff,'value':_0x28a763},_0x222faf(0x9e)),_0x2f014f['winnerResult'];return logger['info']({'event':_0x222faf(0xfb),'resource':_0x5b3e81,'pattern':_0x3d06ff,'attemptCount':_0xf9d440,'ensureUnique':_0x337ac0,'ttl':_0x3eb287||0x0},_0x222faf(0xcb)+_0x28a763),_0x4ed876;}async[a0_0x7c9815(0xf3)](_0x2c30d1){const _0x441f58=a0_0x7c9815,_0x4389eb={'lZyCs':function(_0x1b5697,_0x5c2305){return _0x1b5697>_0x5c2305;},'jOvod':function(_0x1724dd,_0x3b9b23){return _0x1724dd===_0x3b9b23;}},_0x5bca62=_0x2c30d1['digits']==null?this['defaultPinDigits']:_0x2c30d1[_0x441f58(0x9d)];if(!Number['isInteger'](_0x5bca62)||_0x5bca62<MIN_PIN_DIGITS||_0x4389eb['lZyCs'](_0x5bca62,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x441f58(0x91),_0x441f58(0x104)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x5bca62+')');const _0x48e50c='9'['repeat'](_0x5bca62);return this['random']({'resource':_0x2c30d1['resource'],'pattern':_0x48e50c,'ensureUnique':_0x4389eb['jOvod'](_0x2c30d1['ensureUnique'],!![]),'ttl':_0x2c30d1[_0x441f58(0xcf)],'maxRetry':_0x2c30d1[_0x441f58(0xa5)],'idempotencyKey':_0x2c30d1[_0x441f58(0x164)]});}async['serial'](_0x18f0cd){const _0x5787a2=a0_0x7c9815,_0x5ac086=_0x18f0cd['pattern']||this['defaultSerialPattern'];return this[_0x5787a2(0xdf)]({'resource':_0x18f0cd['resource'],'pattern':_0x5ac086,'ensureUnique':_0x18f0cd['ensureUnique']!==![],'ttl':_0x18f0cd[_0x5787a2(0xcf)],'maxRetry':_0x18f0cd['maxRetry'],'idempotencyKey':_0x18f0cd[_0x5787a2(0x164)]});}async[a0_0x7c9815(0xce)](_0x5408c5){const _0x29bb9b=a0_0x7c9815,_0x4d607a=_0x5408c5['pattern']||this[_0x29bb9b(0x95)];return this[_0x29bb9b(0xdf)]({'resource':_0x5408c5['resource'],'pattern':_0x4d607a,'ensureUnique':_0x5408c5['ensureUnique']!==![],'ttl':_0x5408c5[_0x29bb9b(0xcf)],'maxRetry':_0x5408c5[_0x29bb9b(0xa5)],'idempotencyKey':_0x5408c5['idempotencyKey']});}async['consume'](_0x1cbfbe){const _0x570e2c=a0_0x7c9815,_0x4bb500={'tYPqg':_0x570e2c(0x130),'ikqFq':function(_0x19f9d2,_0xb1790f){return _0x19f9d2!==_0xb1790f;},'wmFFt':function(_0x18ac3d,_0x58e56f){return _0x18ac3d>_0x58e56f;},'bNpRk':function(_0xf81d07,_0x248ec9){return _0xf81d07+_0x248ec9;}};if(!this[_0x570e2c(0x14b)])throw new IdGeneratorError(_0x4bb500['tYPqg'],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x1cbfbe[_0x570e2c(0xd0)]);if(_0x4bb500['ikqFq'](typeof _0x1cbfbe[_0x570e2c(0x93)],'string')||_0x1cbfbe['value'][_0x570e2c(0xbe)]===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','value\x20is\x20required');const {resource:_0x31b6e3,value:_0xbcba23}=_0x1cbfbe,_0x38d94e=redisClient[_0x570e2c(0x163)](),_0x524c83=this['_buildActiveKey'](_0x31b6e3,_0xbcba23),_0x41301e=this[_0x570e2c(0xdd)](_0x31b6e3),[_0x11b59d,_0x42a096]=await Promise[_0x570e2c(0x15c)]([_0x38d94e['del'](_0x524c83),_0x38d94e['srem'](_0x41301e,_0xbcba23)]),_0x3d1228=_0x4bb500[_0x570e2c(0x169)](_0x4bb500['bNpRk'](_0x11b59d,_0x42a096),0x0);return logger['info']({'event':'idgen_consumed','resource':_0x31b6e3,'value':_0xbcba23,'consumed':_0x3d1228},'ID\x20Generator\x20consumed:\x20'+_0xbcba23),{'consumed':_0x3d1228,'resource':_0x31b6e3,'value':_0xbcba23,'consumedAt':new Date()[_0x570e2c(0xe7)]()};}async['peek'](_0xee03da){const _0x55e528=a0_0x7c9815,_0x38304e={'CFspb':_0x55e528(0x130),'qacKI':'number','YQRfv':'text','faMiV':'IDGEN_INVALID_FORMAT','bmHoJ':function(_0x5b7071,_0x452255,_0x4c2b28){return _0x5b7071(_0x452255,_0x4c2b28);},'eenDQ':function(_0x3d0508,_0x2492c9){return _0x3d0508===_0x2492c9;},'yDoDR':_0x55e528(0xdf),'quruC':function(_0x2ab2e8,_0x1e6250){return _0x2ab2e8||_0x1e6250;}};if(!this['enabled'])throw new IdGeneratorError(_0x38304e[_0x55e528(0xe0)],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0xee03da['resource']);const _0x3c485d=_0xee03da['mode']||_0x38304e['qacKI'],_0x620587=redisClient['getClient']();if(_0x3c485d==='number'){const _0x1a5a29=(_0xee03da[_0x55e528(0x15a)]||_0x38304e['YQRfv'])['toLowerCase']();if(!ALLOWED_FORMATS[_0x55e528(0x138)](_0x1a5a29))throw new IdGeneratorError(_0x38304e['faMiV'],_0x55e528(0x8f)+_0xee03da['format']);const {formatKey:_0x19d1fc}=this[_0x55e528(0xf0)](_0x1a5a29,_0xee03da[_0x55e528(0x129)]||''),_0x121492=this['_buildSeqKey'](_0xee03da['resource'],_0x19d1fc),_0x138c8b=this['_buildReuseKey'](_0xee03da[_0x55e528(0xd0)],_0x19d1fc),[_0x145f23,_0x583c8c]=await Promise[_0x55e528(0x15c)]([_0x620587[_0x55e528(0xc7)](_0x121492),_0x620587['zcard'](_0x138c8b)]);return{'resource':_0xee03da['resource'],'mode':_0x38304e[_0x55e528(0x177)],'formatKey':_0x19d1fc,'currentCounter':_0x38304e['bmHoJ'](parseInt,_0x145f23,0xa)||0x0,'reusePoolSize':_0x583c8c||0x0};}if(_0x38304e[_0x55e528(0xfd)](_0x3c485d,_0x55e528(0xdf))){const _0x213186=this[_0x55e528(0xdd)](_0xee03da[_0x55e528(0xd0)]),_0x45b391=await _0x620587[_0x55e528(0xa3)](_0x213186);return{'resource':_0xee03da[_0x55e528(0xd0)],'mode':_0x38304e[_0x55e528(0x162)],'issuedCount':_0x38304e['quruC'](_0x45b391,0x0)};}throw new IdGeneratorError('IDGEN_INVALID_MODE','Unknown\x20mode:\x20'+_0x3c485d);}async[a0_0x7c9815(0x106)](_0x3b1284){const _0x550adc=a0_0x7c9815,_0x20c2b5={'uUXth':function(_0x502374,_0x411410){return _0x502374===_0x411410;},'Byfny':function(_0x12432e,_0x46dae4){return _0x12432e>_0x46dae4;}},_0x5076fa=await this['peek'](_0x3b1284);if(_0x20c2b5[_0x550adc(0x14c)](_0x5076fa[_0x550adc(0x12d)],_0x550adc(0x10d))){const _0x2094af=redisClient['getClient'](),_0x47b654=this[_0x550adc(0xc1)](_0x3b1284['resource'],_0x5076fa['formatKey']),_0x4981e3=this['_buildReuseKey'](_0x3b1284[_0x550adc(0xd0)],_0x5076fa['formatKey']),[_0x190336,_0x48f9e2]=await Promise[_0x550adc(0x15c)]([_0x2094af[_0x550adc(0x11c)](_0x47b654),_0x2094af['zrange'](_0x4981e3,0x0,-0x1)]);return{..._0x5076fa,'reusePoolValues':_0x48f9e2['map'](_0x5add58=>parseInt(_0x5add58,0xa)),'meta':_0x190336&&_0x20c2b5['Byfny'](Object['keys'](_0x190336)[_0x550adc(0xbe)],0x0)?_0x190336:null};}return _0x5076fa;}async[a0_0x7c9815(0x19e)](_0x35c607){const _0x4f95fe=a0_0x7c9815,_0x46fdbc={'lhVUu':_0x4f95fe(0x130),'aUayM':_0x4f95fe(0xaf),'XwRiN':function(_0x285f6b,_0x4bdf8e){return _0x285f6b===_0x4bdf8e;},'GGcHz':'meta','dOtpC':'random','cZXkX':_0x4f95fe(0x17f),'gnveS':_0x4f95fe(0xcc)};if(!this['enabled'])throw new IdGeneratorError(_0x46fdbc[_0x4f95fe(0xae)],_0x46fdbc['aUayM']);if(!this[_0x4f95fe(0x88)])throw new IdGeneratorError(_0x4f95fe(0xa8),_0x4f95fe(0x141));this[_0x4f95fe(0xed)](_0x35c607[_0x4f95fe(0xd0)]);const _0x384210=_0x35c607['mode']||_0x4f95fe(0x10d),_0x372002=redisClient[_0x4f95fe(0x163)]();if(_0x46fdbc[_0x4f95fe(0x131)](_0x384210,_0x4f95fe(0x10d))){const _0x1f7fa0=(_0x35c607['format']||'text')[_0x4f95fe(0x175)]();if(!ALLOWED_FORMATS['has'](_0x1f7fa0))throw new IdGeneratorError(_0x4f95fe(0x10a),_0x4f95fe(0x8f)+_0x35c607['format']);const {formatKey:_0x14988c}=this[_0x4f95fe(0xf0)](_0x1f7fa0,_0x35c607[_0x4f95fe(0x129)]||''),_0x3d90b7=this['_buildSeqKey'](_0x35c607['resource'],_0x14988c),_0x234cbc=this['_buildReuseKey'](_0x35c607[_0x4f95fe(0xd0)],_0x14988c),_0x4cdcd6=this['_buildMetaKey'](_0x35c607[_0x4f95fe(0xd0)],_0x14988c);return await _0x372002['del'](_0x3d90b7,_0x234cbc,_0x4cdcd6),logger[_0x4f95fe(0x9c)]({'event':'idgen_reset','resource':_0x35c607[_0x4f95fe(0xd0)],'mode':'number','formatKey':_0x14988c},_0x4f95fe(0x19d)+_0x35c607[_0x4f95fe(0xd0)]+':'+_0x14988c),{'reset':!![],'resource':_0x35c607['resource'],'mode':'number','formatKey':_0x14988c,'deletedKeys':[_0x4f95fe(0x86),_0x4f95fe(0x195),_0x46fdbc[_0x4f95fe(0xb8)]]};}if(_0x384210===_0x46fdbc[_0x4f95fe(0x146)]){const _0x537063=this['_buildIssuedKey'](_0x35c607['resource']);return await _0x372002[_0x4f95fe(0x165)](_0x537063),logger['warn']({'event':_0x46fdbc[_0x4f95fe(0x178)],'resource':_0x35c607['resource'],'mode':_0x46fdbc['dOtpC']},_0x4f95fe(0xd3)+_0x35c607[_0x4f95fe(0xd0)]),{'reset':!![],'resource':_0x35c607[_0x4f95fe(0xd0)],'mode':_0x4f95fe(0xdf),'deletedKeys':[_0x46fdbc[_0x4f95fe(0xcd)]]};}throw new IdGeneratorError(_0x4f95fe(0xdc),'Unknown\x20mode:\x20'+_0x384210);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module['exports']=instance,module['exports']['IdGeneratorError']=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';function a0_0x23c7(_0x166c4b,_0x4daa6a){_0x166c4b=_0x166c4b-0x1c8;const _0x5a5eef=a0_0x5a5e();let _0x23c79a=_0x5a5eef[_0x166c4b];if(a0_0x23c7['aJpSmx']===undefined){var _0x204947=function(_0x4f2aed){const _0x284a36='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ea7b2='',_0x104417='';for(let _0x546ffd=0x0,_0x29b7cd,_0x4d8c50,_0x476bed=0x0;_0x4d8c50=_0x4f2aed['charAt'](_0x476bed++);~_0x4d8c50&&(_0x29b7cd=_0x546ffd%0x4?_0x29b7cd*0x40+_0x4d8c50:_0x4d8c50,_0x546ffd++%0x4)?_0x4ea7b2+=String['fromCharCode'](0xff&_0x29b7cd>>(-0x2*_0x546ffd&0x6)):0x0){_0x4d8c50=_0x284a36['indexOf'](_0x4d8c50);}for(let _0x1f94ff=0x0,_0x38ce37=_0x4ea7b2['length'];_0x1f94ff<_0x38ce37;_0x1f94ff++){_0x104417+='%'+('00'+_0x4ea7b2['charCodeAt'](_0x1f94ff)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x104417);};a0_0x23c7['tQcUGG']=_0x204947,a0_0x23c7['ktapPH']={},a0_0x23c7['aJpSmx']=!![];}const _0x4c060d=_0x5a5eef[0x0],_0x4d6860=_0x166c4b+_0x4c060d,_0x21c2dd=a0_0x23c7['ktapPH'][_0x4d6860];return!_0x21c2dd?(_0x23c79a=a0_0x23c7['tQcUGG'](_0x23c79a),a0_0x23c7['ktapPH'][_0x4d6860]=_0x23c79a):_0x23c79a=_0x21c2dd,_0x23c79a;}const a0_0x136e8c=a0_0x23c7;(function(_0xe51fa2,_0x400080){const _0x5cabf3=a0_0x23c7,_0x405e4e=_0xe51fa2();while(!![]){try{const _0x1c4f53=parseInt(_0x5cabf3(0x1e4))/0x1+-parseInt(_0x5cabf3(0x1e7))/0x2*(-parseInt(_0x5cabf3(0x1ee))/0x3)+-parseInt(_0x5cabf3(0x1d3))/0x4+parseInt(_0x5cabf3(0x1d6))/0x5+parseInt(_0x5cabf3(0x1ef))/0x6+-parseInt(_0x5cabf3(0x1de))/0x7+-parseInt(_0x5cabf3(0x1d7))/0x8;if(_0x1c4f53===_0x400080)break;else _0x405e4e['push'](_0x405e4e['shift']());}catch(_0x4d30c9){_0x405e4e['push'](_0x405e4e['shift']());}}}(a0_0x5a5e,0xd3bfc));function a0_0x5a5e(){const _0x73b9eb=['swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','swrLBxbVDgvUy3KGy2fJAguGseLu','DhrS','mZGZnJK4BKr4rfDH','z2v0q2XPzw50','yNvPBgrlzxK','nhzlENrAyG','zw5HyMXLza','lI9SB2DNzxi','zw52','A2foAxi','x2LUAxrdB25MAwC','lcbuveW6ia','mte2nZqYC2D1Dufj','mJC3odCWmLn3AvziEq','CMy6AwrLBtO','zMLSDgvY','zxjYB3i','C3bSAxq','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','AwrLBxbVDgvUy3LFC3rVCMu','su9fwNy','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','AwrLBxbVDgvUy3LFAgL0','surftvbpvevoq1LFru5bqKXfra','lI9YzwrPCY1JBgLLBNq','Cgf0Aa','rLvTDgu','AxnfBMfIBgvK','x2LUAxrPywXPEMvK','Dw5RBM93BG','mZuXnZK5nKj4tNr6wa','AwrLBxbVDgvUy3LFBwLZCW','wKvRtLq','odi5mtK3mfjrBwrMyW','mtCXnJy5nMnNvunytq','C3rHDhvZq29Kzq','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','zgvIDwC','Aw5MBW','x3r0Ba','BwvZC2fNzq','ndm1mtm4ouDQC1Hnwa','wNv0uxq','y3j5ChrV'];a0_0x5a5e=function(){return _0x73b9eb;};return a0_0x5a5e();}const redisClient=require(a0_0x136e8c(0x1cd)),{logger}=require(a0_0x136e8c(0x1e9)),crypto=require(a0_0x136e8c(0x1e0));class IdempotencyManager{constructor(){const _0x5b1118=a0_0x136e8c;this['_enabled']=null,this[_0x5b1118(0x1dc)]=null,this['_initialized']=![];}[a0_0x136e8c(0x1ec)](){const _0x5beccc=a0_0x136e8c;this['_enabled']=process['env'][_0x5beccc(0x1cc)]==='true',this[_0x5beccc(0x1dc)]=parseInt(process[_0x5beccc(0x1ea)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger[_0x5beccc(0x1db)]({'event':'idempotency_config_init','enabled':this['_enabled'],'ttl':this[_0x5beccc(0x1dc)]},_0x5beccc(0x1f4)+this['_enabled']+_0x5beccc(0x1ed)+this['_ttl']+'s');}['_ensureInitialized'](){const _0xf3d61a=a0_0x136e8c;!this[_0xf3d61a(0x1d1)]&&this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get[a0_0x136e8c(0x1e3)](){return this['_ensureInitialized'](),this['_ttl'];}[a0_0x136e8c(0x1d0)](){const _0x36dc76=a0_0x136e8c;return this[_0x36dc76(0x1e8)];}[a0_0x136e8c(0x1e6)](_0x50d675,_0x3851b3){const _0x22a619=a0_0x136e8c,_0x3725a0={'ZEkNT':'default','IOEZv':_0x22a619(0x1d2)},_0x23ce3a=_0x3851b3[_0x22a619(0x1ce)][_0x22a619(0x1f3)]('/')[_0x22a619(0x1f1)](Boolean),_0x307953=_0x23ce3a[0x0]||_0x3725a0[_0x22a619(0x1d5)],_0x85820b=_0x23ce3a[0x1]||_0x3725a0[_0x22a619(0x1c9)],_0x30cafa=_0x23ce3a[0x2]||_0x22a619(0x1d2);return _0x22a619(0x1f0)+_0x307953+':'+_0x85820b+':'+_0x30cafa+':'+_0x50d675;}async['store'](_0x217d01,_0x2020ae){const _0x97e313=a0_0x136e8c,_0x36d0f9={'FUmte':_0x97e313(0x1c8),'ARVYb':'idempotency_store_error'};if(!this[_0x97e313(0x1e8)])return![];try{const _0x30da35=redisClient[_0x97e313(0x1e5)]();return await _0x30da35['setex'](_0x217d01,this['ttl'],JSON['stringify'](_0x2020ae)),logger[_0x97e313(0x1da)]({'event':_0x36d0f9[_0x97e313(0x1cf)],'key':_0x217d01,'ttl':this['ttl'],'statusCode':_0x2020ae[_0x97e313(0x1d8)]},_0x97e313(0x1e1)),!![];}catch(_0x12929e){return logger[_0x97e313(0x1f2)]({'event':_0x36d0f9['ARVYb'],'key':_0x217d01,'error':_0x12929e['message']},_0x97e313(0x1ca)+_0x12929e[_0x97e313(0x1dd)]),![];}}async['retrieve'](_0x40b92e){const _0xf45ae=a0_0x136e8c,_0x388c0a={'zCcMs':_0xf45ae(0x1e2),'kaNir':_0xf45ae(0x1d4),'wmvte':_0xf45ae(0x1d9),'ZutQt':'idempotency_retrieve_error'};if(!this[_0xf45ae(0x1e8)])return null;try{const _0x4d7f9e=redisClient['getClient'](),_0x490a8d=await _0x4d7f9e['get'](_0x40b92e);if(_0x490a8d)return logger['info']({'event':_0xf45ae(0x1cb),'key':_0x40b92e},_0x388c0a['zCcMs']),JSON['parse'](_0x490a8d);return logger[_0xf45ae(0x1da)]({'event':_0x388c0a[_0xf45ae(0x1eb)],'key':_0x40b92e},_0x388c0a['wmvte']),null;}catch(_0x495975){return logger[_0xf45ae(0x1f2)]({'event':_0x388c0a[_0xf45ae(0x1df)],'key':_0x40b92e,'error':_0x495975[_0xf45ae(0x1dd)]},'Idempotency\x20retrieve\x20error:\x20'+_0x495975['message']),null;}}['generateKey'](_0x3af227='req'){return _0x3af227+'_'+crypto['randomUUID']();}['buildDeterministicKey'](_0x259176,_0x93c8c9,_0x36a1b9){return _0x259176+':'+_0x93c8c9+':'+_0x36a1b9;}}module['exports']=new IdempotencyManager();
1
+ 'use strict';const a0_0x4c595e=a0_0x20b7;(function(_0x3240b0,_0x419f4f){const _0x2d98a0=a0_0x20b7,_0x1235cc=_0x3240b0();while(!![]){try{const _0x44cdf8=parseInt(_0x2d98a0(0x1b9))/0x1*(parseInt(_0x2d98a0(0x1a7))/0x2)+parseInt(_0x2d98a0(0x18d))/0x3+parseInt(_0x2d98a0(0x198))/0x4+parseInt(_0x2d98a0(0x1b6))/0x5+-parseInt(_0x2d98a0(0x194))/0x6*(-parseInt(_0x2d98a0(0x196))/0x7)+-parseInt(_0x2d98a0(0x1a2))/0x8*(parseInt(_0x2d98a0(0x19b))/0x9)+-parseInt(_0x2d98a0(0x190))/0xa*(parseInt(_0x2d98a0(0x1ad))/0xb);if(_0x44cdf8===_0x419f4f)break;else _0x1235cc['push'](_0x1235cc['shift']());}catch(_0xf316b5){_0x1235cc['push'](_0x1235cc['shift']());}}}(a0_0x2800,0xdfc74));const redisClient=require('./redis-client'),{logger}=require(a0_0x4c595e(0x1a8)),crypto=require('crypto');class IdempotencyManager{constructor(){const _0xe6e032=a0_0x4c595e;this[_0xe6e032(0x1af)]=null,this['_ttl']=null,this['_initialized']=![];}['_initConfig'](){const _0x560246=a0_0x4c595e,_0x1ca4c6={'nUEpv':function(_0x352407,_0x5883af){return _0x352407===_0x5883af;},'dfywM':function(_0x319c2e,_0x5391e6,_0x4f5a76){return _0x319c2e(_0x5391e6,_0x4f5a76);}};this[_0x560246(0x1af)]=_0x1ca4c6[_0x560246(0x191)](process['env']['IDEMPOTENCY_ENABLED'],'true'),this[_0x560246(0x1b1)]=_0x1ca4c6[_0x560246(0x1b3)](parseInt,process['env'][_0x560246(0x1ab)],0xa)||0x12c,this[_0x560246(0x18c)]=!![],logger['info']({'event':_0x560246(0x1a4),'enabled':this[_0x560246(0x1af)],'ttl':this[_0x560246(0x1b1)]},_0x560246(0x19f)+this[_0x560246(0x1af)]+_0x560246(0x19c)+this[_0x560246(0x1b1)]+'s');}['_ensureInitialized'](){!this['_initialized']&&this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get['ttl'](){const _0x275d4c=a0_0x4c595e;return this[_0x275d4c(0x1a6)](),this[_0x275d4c(0x1b1)];}[a0_0x4c595e(0x19d)](){return this['enabled'];}[a0_0x4c595e(0x19a)](_0x413053,_0x3af283){const _0x286f5e=a0_0x4c595e,_0x5ccf1e={'wcMYx':_0x286f5e(0x19e),'jpreL':_0x286f5e(0x195)},_0x57caa4=_0x3af283['path'][_0x286f5e(0x1a3)]('/')['filter'](Boolean),_0x546af5=_0x57caa4[0x0]||_0x5ccf1e['wcMYx'],_0x5a0f29=_0x57caa4[0x1]||_0x5ccf1e['jpreL'],_0x328c92=_0x57caa4[0x2]||_0x5ccf1e['jpreL'];return _0x286f5e(0x1aa)+_0x546af5+':'+_0x5a0f29+':'+_0x328c92+':'+_0x413053;}async[a0_0x4c595e(0x1ac)](_0x3ea354,_0x2b504f){const _0x1c58c4=a0_0x4c595e,_0x39b2b9={'SqwTR':_0x1c58c4(0x1b2),'rlPMz':'idempotency_store_error'};if(!this[_0x1c58c4(0x1a9)])return![];try{const _0x410952=redisClient['getClient']();return await _0x410952['setex'](_0x3ea354,this[_0x1c58c4(0x18f)],JSON['stringify'](_0x2b504f)),logger[_0x1c58c4(0x1b0)]({'event':'idempotency_store','key':_0x3ea354,'ttl':this['ttl'],'statusCode':_0x2b504f[_0x1c58c4(0x192)]},_0x39b2b9['SqwTR']),!![];}catch(_0x595021){return logger['error']({'event':_0x39b2b9[_0x1c58c4(0x18e)],'key':_0x3ea354,'error':_0x595021['message']},'Idempotency\x20store\x20error:\x20'+_0x595021[_0x1c58c4(0x1a1)]),![];}}async[a0_0x4c595e(0x1b4)](_0x275533){const _0xf2cd71=a0_0x4c595e,_0x4649f3={'pLOPX':_0xf2cd71(0x18b),'iZtLT':_0xf2cd71(0x199),'zWVEP':_0xf2cd71(0x1b5)};if(!this['enabled'])return null;try{const _0x94c244=redisClient[_0xf2cd71(0x1a0)](),_0x114828=await _0x94c244[_0xf2cd71(0x1ae)](_0x275533);if(_0x114828)return logger['info']({'event':_0x4649f3['pLOPX'],'key':_0x275533},_0x4649f3['iZtLT']),JSON['parse'](_0x114828);return logger[_0xf2cd71(0x1b0)]({'event':'idempotency_miss','key':_0x275533},_0x4649f3[_0xf2cd71(0x1b7)]),null;}catch(_0x2864b2){return logger[_0xf2cd71(0x193)]({'event':_0xf2cd71(0x197),'key':_0x275533,'error':_0x2864b2['message']},'Idempotency\x20retrieve\x20error:\x20'+_0x2864b2[_0xf2cd71(0x1a1)]),null;}}['generateKey'](_0x54cd9e='req'){return _0x54cd9e+'_'+crypto['randomUUID']();}[a0_0x4c595e(0x1a5)](_0x494b02,_0x1d293c,_0xe9ba20){return _0x494b02+':'+_0x1d293c+':'+_0xe9ba20;}}function a0_0x20b7(_0x3b2040,_0x5702c3){_0x3b2040=_0x3b2040-0x18b;const _0x28008e=a0_0x2800();let _0x20b7b1=_0x28008e[_0x3b2040];if(a0_0x20b7['lKWyBp']===undefined){var _0x2b6130=function(_0x5e2b2a){const _0xbacc78='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x330dc4='',_0x8075b1='';for(let _0x58b0f2=0x0,_0x130534,_0x105388,_0x345f73=0x0;_0x105388=_0x5e2b2a['charAt'](_0x345f73++);~_0x105388&&(_0x130534=_0x58b0f2%0x4?_0x130534*0x40+_0x105388:_0x105388,_0x58b0f2++%0x4)?_0x330dc4+=String['fromCharCode'](0xff&_0x130534>>(-0x2*_0x58b0f2&0x6)):0x0){_0x105388=_0xbacc78['indexOf'](_0x105388);}for(let _0x4d614f=0x0,_0x3dc21d=_0x330dc4['length'];_0x4d614f<_0x3dc21d;_0x4d614f++){_0x8075b1+='%'+('00'+_0x330dc4['charCodeAt'](_0x4d614f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8075b1);};a0_0x20b7['SJbjTa']=_0x2b6130,a0_0x20b7['jSPFra']={},a0_0x20b7['lKWyBp']=!![];}const _0x5ad059=_0x28008e[0x0],_0x18bcfe=_0x3b2040+_0x5ad059,_0x23094f=a0_0x20b7['jSPFra'][_0x18bcfe];return!_0x23094f?(_0x20b7b1=a0_0x20b7['SJbjTa'](_0x20b7b1),a0_0x20b7['jSPFra'][_0x18bcfe]=_0x20b7b1):_0x20b7b1=_0x23094f,_0x20b7b1;}function a0_0x2800(){const _0x4d4fa7=['zgvMyxvSDa','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','z2v0q2XPzw50','BwvZC2fNzq','odbRqMjbEMy','C3bSAxq','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2vUC3vYzuLUAxrPywXPEMvK','mNfzB2LrvG','lI9SB2DNzxi','zw5HyMXLza','CMy6AwrLBtO','surftvbpvevoq1LFvfrm','C3rVCMu','mtKZnJu1mtfZq2HoqKC','z2v0','x2vUywjSzwq','zgvIDwC','x3r0Ba','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','zgz5D00','CMv0CMLLDMu','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','ntq0nJC5nxvLzeTSAq','ELDwrva','zxHWB3j0CW','mJG2mZm3txLWrhnT','AwrLBxbVDgvUy3LFAgL0','x2LUAxrPywXPEMvK','mZiWmJCXAujOqMns','CMXqtxO','DhrS','mtbiAunJA1O','BLvfChy','C3rHDhvZq29Kzq','zxjYB3i','otKXotHJtefAv2i','Dw5RBM93BG','mJG3rhLbDK12','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','nte4mtaWneDbuwnjuq','swrLBxbVDgvUy3KGy2fJAguGseLu','yNvPBgrlzxK','nZaWnJe0BvHoEuvR','lcbuveW6ia','AxnfBMfIBgvK'];a0_0x2800=function(){return _0x4d4fa7;};return a0_0x2800();}module[a0_0x4c595e(0x1b8)]=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x5941e0=a0_0x5327;function a0_0x5327(_0x31e47f,_0x21155e){_0x31e47f=_0x31e47f-0x1d5;const _0x329bb1=a0_0x329b();let _0x53279a=_0x329bb1[_0x31e47f];if(a0_0x5327['ICLhbV']===undefined){var _0xbe5af=function(_0x196ef5){const _0x39c8e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31f39d='',_0x1ac904='';for(let _0x372816=0x0,_0x19b9f6,_0x5b197a,_0x4a253c=0x0;_0x5b197a=_0x196ef5['charAt'](_0x4a253c++);~_0x5b197a&&(_0x19b9f6=_0x372816%0x4?_0x19b9f6*0x40+_0x5b197a:_0x5b197a,_0x372816++%0x4)?_0x31f39d+=String['fromCharCode'](0xff&_0x19b9f6>>(-0x2*_0x372816&0x6)):0x0){_0x5b197a=_0x39c8e7['indexOf'](_0x5b197a);}for(let _0x544b9f=0x0,_0x5ad7df=_0x31f39d['length'];_0x544b9f<_0x5ad7df;_0x544b9f++){_0x1ac904+='%'+('00'+_0x31f39d['charCodeAt'](_0x544b9f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ac904);};a0_0x5327['rqwpoo']=_0xbe5af,a0_0x5327['KHKDYM']={},a0_0x5327['ICLhbV']=!![];}const _0x295533=_0x329bb1[0x0],_0x33c5b4=_0x31e47f+_0x295533,_0x26c761=a0_0x5327['KHKDYM'][_0x33c5b4];return!_0x26c761?(_0x53279a=a0_0x5327['rqwpoo'](_0x53279a),a0_0x5327['KHKDYM'][_0x33c5b4]=_0x53279a):_0x53279a=_0x26c761,_0x53279a;}(function(_0x533f19,_0x437d97){const _0xf31c10=a0_0x5327,_0x405d4c=_0x533f19();while(!![]){try{const _0x3aa4ee=-parseInt(_0xf31c10(0x1e6))/0x1*(parseInt(_0xf31c10(0x1d5))/0x2)+-parseInt(_0xf31c10(0x1e4))/0x3+parseInt(_0xf31c10(0x1e9))/0x4*(parseInt(_0xf31c10(0x1d6))/0x5)+-parseInt(_0xf31c10(0x1f3))/0x6*(parseInt(_0xf31c10(0x1e3))/0x7)+-parseInt(_0xf31c10(0x1f9))/0x8*(-parseInt(_0xf31c10(0x1e0))/0x9)+parseInt(_0xf31c10(0x1f6))/0xa*(-parseInt(_0xf31c10(0x1da))/0xb)+parseInt(_0xf31c10(0x1eb))/0xc;if(_0x3aa4ee===_0x437d97)break;else _0x405d4c['push'](_0x405d4c['shift']());}catch(_0x51a119){_0x405d4c['push'](_0x405d4c['shift']());}}}(a0_0x329b,0xee377));function a0_0x329b(){const _0x7672b7=['AM9PBG','AfLhyNe','nJm1mtK4mfLJzwTSuW','Agnhvfe','ChvZAa','ohz2sfLiyG','CgHVBMu','BgvUz3rO','mLrgrwfSBa','odbptMjNv2i','DMfSAwrHDgvsB3C','rwnLDwS','DMfSAwrHDgvoDw1Izxi','mtfPD3fKC2u','sw52ywXPzcbUDw1IzxiGzM9YBwf0','DNnzv2i','BwfW','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','sw52ywXPzcbLBwfPBcbMB3jTyxq','mte2ntm1odDvt2n6ruG','sw52ywXPzcbWAg9UzsbMB3jTyxq','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','odaXnZeWBM1gwg1p','mJi2mdC0owTKAujAvW','A2v5CW','mte5nZa2n29dCLLMqq','sw52ywXPzcbvuKWGzM9YBwf0','CMvWBgfJzq','mZK3odmYsLbwywzv','zM9YBwf0','mJe4ndG1ndrZy1zIALq','zw1HAwW','CMvXDwLYzwq','zM9YrwfJAa','C2v0','DxjS','yKnJB1i','Aw5MBW','nJbyt0PcEeG'];a0_0x329b=function(){return _0x7672b7;};return a0_0x329b();}const {logger}=require('./logger');class ImportValidator{[a0_0x5941e0(0x1d7)](_0x59c99e,_0x5557dd=[],_0x56e9ca={}){const _0x3b6df1=a0_0x5941e0,_0x4255cc={'Eceuk':function(_0x430b6d,_0x6004cb){return _0x430b6d===_0x6004cb;},'vsYWb':_0x3b6df1(0x1ed)},_0x6ab2cb=[];return _0x5557dd['forEach'](_0x594ff9=>{const _0x156afa=_0x3b6df1,_0x3f19f6=_0x59c99e[_0x594ff9];(_0x4255cc['Eceuk'](_0x3f19f6,null)||_0x3f19f6===undefined||_0x4255cc[_0x156afa(0x1d8)](_0x3f19f6,''))&&_0x6ab2cb[_0x156afa(0x1f8)]({'field':_0x594ff9,'type':_0x4255cc[_0x156afa(0x1dc)],'message':_0x156afa(0x1de)});}),Object[_0x3b6df1(0x1e5)](_0x56e9ca)[_0x3b6df1(0x1ee)](_0x5b5e4d=>{const _0x215b97=_0x3b6df1,_0x4bc815=_0x59c99e[_0x5b5e4d],_0x5c3f07=_0x56e9ca[_0x5b5e4d];if(_0x4bc815===null||_0x4255cc[_0x215b97(0x1d8)](_0x4bc815,undefined)||_0x4255cc['Eceuk'](_0x4bc815,''))return;const _0x276f37=this['validateFieldFormat'](_0x5b5e4d,_0x4bc815,_0x5c3f07);_0x276f37&&_0x6ab2cb[_0x215b97(0x1f8)](_0x276f37);}),_0x6ab2cb;}['validateFieldFormat'](_0x428338,_0x3d4648,_0x4b7d8b){const _0x105997=a0_0x5941e0,_0xdb94e7={'hGZBM':'number'};switch(_0x4b7d8b){case _0x105997(0x1ec):return this['validateEmail'](_0x428338,_0x3d4648);case _0x105997(0x1fa):return this['validatePhone'](_0x428338,_0x3d4648);case _0x105997(0x1f0):return this['validateUrl'](_0x428338,_0x3d4648);case _0xdb94e7['hGZBM']:return this[_0x105997(0x1d9)](_0x428338,_0x3d4648);default:return null;}}['validateEmail'](_0x146b87,_0x2d026f){const _0x53ceab=a0_0x5941e0,_0x24dff9={'nMbUg':_0x53ceab(0x1df)},_0xef131b=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0xef131b['test'](String(_0x2d026f)))return{'field':_0x146b87,'type':'format','message':_0x24dff9['nMbUg']};return null;}['validatePhone'](_0xd61167,_0x3fc9c4){const _0x16a9b9=a0_0x5941e0,_0xc571a1={'iHzWy':_0x16a9b9(0x1ea)},_0x7412c9=String(_0x3fc9c4)[_0x16a9b9(0x1e8)](/\s+/g,''),_0x49d959=/^[\d\+\-\(\)]+$/;if(!_0x49d959['test'](_0x7412c9)||_0x7412c9['length']<0x8)return{'field':_0xd61167,'type':_0xc571a1['iHzWy'],'message':_0x16a9b9(0x1e1)};return null;}['validateUrl'](_0x25d371,_0x1c2d86){const _0x542a4b=a0_0x5941e0,_0x2195b2={'hcGTQ':function(_0x1c5f69,_0xc84ba3){return _0x1c5f69(_0xc84ba3);},'bCcoR':_0x542a4b(0x1e7)};try{return new URL(_0x2195b2[_0x542a4b(0x1f7)](String,_0x1c2d86)),null;}catch(_0x15cdbe){return{'field':_0x25d371,'type':_0x542a4b(0x1ea),'message':_0x2195b2[_0x542a4b(0x1f1)]};}}[a0_0x5941e0(0x1d9)](_0x488b26,_0x434080){const _0x1baf30=a0_0x5941e0,_0x16fbed={'OIeMP':_0x1baf30(0x1ea),'fuXeP':_0x1baf30(0x1db)};if(isNaN(_0x434080))return{'field':_0x488b26,'type':_0x16fbed['OIeMP'],'message':_0x16fbed['fuXeP']};return null;}['detectDuplicatesInFile'](_0x4d94f7,_0x382c5e){const _0x48fcff=a0_0x5941e0,_0xf937b7=new Map(),_0x4e0e08=[];return _0x4d94f7[_0x48fcff(0x1ee)]((_0x5ea9da,_0x215461)=>{const _0x361611=_0x48fcff,_0x1df159=_0x382c5e[_0x361611(0x1dd)](_0x42ff9b=>_0x5ea9da[_0x42ff9b])[_0x361611(0x1f4)]('|');_0xf937b7['has'](_0x1df159)?_0x4e0e08['push']({'rowIndex':_0x215461,'duplicateOf':_0xf937b7['get'](_0x1df159),'key':_0x1df159}):_0xf937b7[_0x361611(0x1ef)](_0x1df159,_0x215461);}),_0x4e0e08;}['batchValidateRows'](_0x293b5a,_0x52c72f,_0x5df7b9){const _0x15a3bc=a0_0x5941e0,_0x4aeae4={'hYGbq':_0x15a3bc(0x1e2)},_0x453df1=[];return _0x293b5a[_0x15a3bc(0x1ee)]((_0x4ae6c4,_0x49cd30)=>{const _0x5a3c9e=_0x15a3bc,_0x33d99c=this['validateRow'](_0x4ae6c4,_0x52c72f,_0x5df7b9);_0x33d99c['length']>0x0&&_0x453df1[_0x5a3c9e(0x1f8)]({'rowIndex':_0x49cd30,'rowData':_0x4ae6c4,'errors':_0x33d99c});}),logger[_0x15a3bc(0x1f2)]({'event':_0x4aeae4[_0x15a3bc(0x1f5)],'totalRows':_0x293b5a[_0x15a3bc(0x1fb)],'errorCount':_0x453df1[_0x15a3bc(0x1fb)]},'Batch\x20validation\x20completed'),_0x453df1;}}module['exports']=new ImportValidator();
1
+ const a0_0x5d9c48=a0_0x1e9c;function a0_0x21da(){const _0x2fbb43=['AM9PBG','u1jyu1i','DgvZDa','mtaXmJK4wuDbB2jj','Cenfsw8','BNvTyMvY','sw52ywXPzcbWAg9UzsbMB3jTyxq','wNDtvg8','AgfZ','ChvZAa','DMfSAwrHDgvgAwvSzezVCM1HDa','sw52ywXPzcbLBwfPBcbMB3jTyxq','zxHWB3j0CW','EMvyseS','DMfSAwrHDgvoDw1Izxi','BgvUz3rO','mtqZmdC3oujqrxrYuq','DMfSAwrHDgvfBwfPBa','twPSu0O','mJm0nJK5mLLvt1LIAG','nevrvenouq','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','mtKYmZmZugTlDNjz','mZu4mde3rMjNAK9b','DMfSAwrHDgvvCMW','mMrqtKPPBa','C2v0','sfDjwxG','otm1mZKWv013Be9A','zw1HAwW','DMfSAwrHDgvqAg9Uzq','mti0nZq5D1nlrKLI','CgHVBMu','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','sw52ywXPzcbvuKWGzM9YBwf0','zM9YBwf0','zM9YrwfJAa'];a0_0x21da=function(){return _0x2fbb43;};return a0_0x21da();}(function(_0x402573,_0x2fb801){const _0x4392be=a0_0x1e9c,_0x170643=_0x402573();while(!![]){try{const _0x1da54d=parseInt(_0x4392be(0xea))/0x1*(-parseInt(_0x4392be(0xc8))/0x2)+-parseInt(_0x4392be(0xeb))/0x3*(-parseInt(_0x4392be(0xe8))/0x4)+parseInt(_0x4392be(0xcb))/0x5+-parseInt(_0x4392be(0xd7))/0x6+-parseInt(_0x4392be(0xe4))/0x7+parseInt(_0x4392be(0xe7))/0x8+-parseInt(_0x4392be(0xce))/0x9;if(_0x1da54d===_0x2fb801)break;else _0x170643['push'](_0x170643['shift']());}catch(_0x2eca93){_0x170643['push'](_0x170643['shift']());}}}(a0_0x21da,0x2a11d));function a0_0x1e9c(_0x4666ba,_0x2d885a){_0x4666ba=_0x4666ba-0xc7;const _0x21da6b=a0_0x21da();let _0x1e9c96=_0x21da6b[_0x4666ba];if(a0_0x1e9c['jHusIY']===undefined){var _0x25aa4c=function(_0x2d4afe){const _0xbf42e3='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x377301='',_0x3ce712='';for(let _0x2d9776=0x0,_0x279054,_0x46fbcb,_0x5103ee=0x0;_0x46fbcb=_0x2d4afe['charAt'](_0x5103ee++);~_0x46fbcb&&(_0x279054=_0x2d9776%0x4?_0x279054*0x40+_0x46fbcb:_0x46fbcb,_0x2d9776++%0x4)?_0x377301+=String['fromCharCode'](0xff&_0x279054>>(-0x2*_0x2d9776&0x6)):0x0){_0x46fbcb=_0xbf42e3['indexOf'](_0x46fbcb);}for(let _0x474e61=0x0,_0x488477=_0x377301['length'];_0x474e61<_0x488477;_0x474e61++){_0x3ce712+='%'+('00'+_0x377301['charCodeAt'](_0x474e61)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3ce712);};a0_0x1e9c['rzjYTO']=_0x25aa4c,a0_0x1e9c['YdYUDH']={},a0_0x1e9c['jHusIY']=!![];}const _0x48f56c=_0x21da6b[0x0],_0x3f4054=_0x4666ba+_0x48f56c,_0x1bfde8=a0_0x1e9c['YdYUDH'][_0x3f4054];return!_0x1bfde8?(_0x1e9c96=a0_0x1e9c['rzjYTO'](_0x1e9c96),a0_0x1e9c['YdYUDH'][_0x3f4054]=_0x1e9c96):_0x1e9c96=_0x1bfde8,_0x1e9c96;}const {logger}=require('./logger');class ImportValidator{['validateRow'](_0x8c864d,_0x2887fe=[],_0x92d70a={}){const _0x3f2ae4=a0_0x1e9c,_0x58708f={'TxOaX':function(_0xb93e33,_0x3c2eb4){return _0xb93e33===_0x3c2eb4;}},_0x530d5f=[];return _0x2887fe[_0x3f2ae4(0xd3)](_0x2414af=>{const _0x2a4e50=_0x3f2ae4,_0x242e1a=_0x8c864d[_0x2414af];(_0x242e1a===null||_0x242e1a===undefined||_0x58708f['TxOaX'](_0x242e1a,''))&&_0x530d5f[_0x2a4e50(0xdd)]({'field':_0x2414af,'type':'required','message':_0x2a4e50(0xd0)});}),Object['keys'](_0x92d70a)[_0x3f2ae4(0xd3)](_0x1b35b3=>{const _0x52db01=_0x3f2ae4,_0x52b810=_0x8c864d[_0x1b35b3],_0x35cb33=_0x92d70a[_0x1b35b3];if(_0x58708f['TxOaX'](_0x52b810,null)||_0x52b810===undefined||_0x52b810==='')return;const _0x141615=this[_0x52db01(0xde)](_0x1b35b3,_0x52b810,_0x35cb33);_0x141615&&_0x530d5f['push'](_0x141615);}),_0x530d5f;}[a0_0x5d9c48(0xde)](_0x588815,_0x2fb046,_0x8c48ce){const _0x38f4f8=a0_0x5d9c48,_0x436cbe={'TwTnY':_0x38f4f8(0xcc),'HWIYx':_0x38f4f8(0xcf)};switch(_0x8c48ce){case _0x436cbe['TwTnY']:return this[_0x38f4f8(0xe5)](_0x588815,_0x2fb046);case _0x436cbe[_0x38f4f8(0xca)]:return this[_0x38f4f8(0xcd)](_0x588815,_0x2fb046);case'url':return this[_0x38f4f8(0xc7)](_0x588815,_0x2fb046);case _0x38f4f8(0xd9):return this[_0x38f4f8(0xe2)](_0x588815,_0x2fb046);default:return null;}}['validateEmail'](_0x156aef,_0x212c33){const _0x2c2082=a0_0x5d9c48,_0x23d8fc={'bOqFG':function(_0x4b8c4c,_0x43bbcc){return _0x4b8c4c(_0x43bbcc);},'YIIYe':_0x2c2082(0xd2)},_0x5bab47=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x5bab47[_0x2c2082(0xd6)](_0x23d8fc['bOqFG'](String,_0x212c33)))return{'field':_0x156aef,'type':_0x23d8fc['YIIYe'],'message':_0x2c2082(0xdf)};return null;}['validatePhone'](_0xbf0f1,_0x6dda1a){const _0x16c450=a0_0x5d9c48,_0x2ddc92={'PbuQj':function(_0x3cbf34,_0x147cb9){return _0x3cbf34(_0x147cb9);},'SRXSR':function(_0x1733bc,_0x22cc0f){return _0x1733bc<_0x22cc0f;},'MjlSJ':_0x16c450(0xda)},_0x1d1bc7=_0x2ddc92['PbuQj'](String,_0x6dda1a)['replace'](/\s+/g,''),_0x1c615d=/^[\d\+\-\(\)]+$/;if(!_0x1c615d[_0x16c450(0xd6)](_0x1d1bc7)||_0x2ddc92[_0x16c450(0xd5)](_0x1d1bc7[_0x16c450(0xe3)],0x8))return{'field':_0xbf0f1,'type':_0x16c450(0xd2),'message':_0x2ddc92[_0x16c450(0xe6)]};return null;}['validateUrl'](_0x4d257e,_0x35739b){const _0x2ba041=a0_0x5d9c48,_0x2ce50e={'ZwSTo':function(_0x1de4dd,_0x11529d){return _0x1de4dd(_0x11529d);},'DHEdE':_0x2ba041(0xd1)};try{return new URL(_0x2ce50e[_0x2ba041(0xdb)](String,_0x35739b)),null;}catch(_0x2602e2){return{'field':_0x4d257e,'type':'format','message':_0x2ce50e['DHEdE']};}}[a0_0x5d9c48(0xe2)](_0xc35b45,_0x45fe16){const _0x5369f1=a0_0x5d9c48,_0x50fb4e={'zeXHK':function(_0x115876,_0x52c60f){return _0x115876(_0x52c60f);},'pCEIo':'Invalid\x20number\x20format'};if(_0x50fb4e[_0x5369f1(0xe1)](isNaN,_0x45fe16))return{'field':_0xc35b45,'type':'format','message':_0x50fb4e[_0x5369f1(0xd8)]};return null;}[a0_0x5d9c48(0xe9)](_0x4c6fb7,_0x5f0e4c){const _0x165116=a0_0x5d9c48,_0x534869=new Map(),_0x1b9fda=[];return _0x4c6fb7[_0x165116(0xd3)]((_0x368e24,_0xfeb125)=>{const _0x4f21ef=_0x165116,_0x141692=_0x5f0e4c['map'](_0x1448f4=>_0x368e24[_0x1448f4])[_0x4f21ef(0xd4)]('|');_0x534869[_0x4f21ef(0xdc)](_0x141692)?_0x1b9fda[_0x4f21ef(0xdd)]({'rowIndex':_0xfeb125,'duplicateOf':_0x534869['get'](_0x141692),'key':_0x141692}):_0x534869[_0x4f21ef(0xc9)](_0x141692,_0xfeb125);}),_0x1b9fda;}['batchValidateRows'](_0x4befaa,_0x581f9d,_0x514b16){const _0xe99a4a={'PcScO':function(_0x3b0060,_0x7a4a1b){return _0x3b0060>_0x7a4a1b;},'DHTrq':'batch_validation_complete'},_0xe80f6d=[];return _0x4befaa['forEach']((_0x107c29,_0x7b2947)=>{const _0xb3e59e=a0_0x1e9c,_0x572606=this['validateRow'](_0x107c29,_0x581f9d,_0x514b16);_0xe99a4a['PcScO'](_0x572606[_0xb3e59e(0xe3)],0x0)&&_0xe80f6d['push']({'rowIndex':_0x7b2947,'rowData':_0x107c29,'errors':_0x572606});}),logger['info']({'event':_0xe99a4a['DHTrq'],'totalRows':_0x4befaa['length'],'errorCount':_0xe80f6d['length']},'Batch\x20validation\x20completed'),_0xe80f6d;}}module[a0_0x5d9c48(0xe0)]=new ImportValidator();