@restforgejs/platform 5.1.4 → 5.1.6

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 (173) hide show
  1. package/build-info.json +2 -2
  2. package/cli/consumer-deploy.js +1 -1
  3. package/cli/consumer.js +1 -1
  4. package/generators/cli/data/pull.js +16 -7
  5. package/generators/cli/data/push.js +17 -7
  6. package/generators/cli/init.js +347 -97
  7. package/generators/lib/data/data-scope.js +138 -0
  8. package/generators/lib/data/envelope.js +25 -9
  9. package/generators/lib/data/pull-runner.js +44 -37
  10. package/generators/lib/data/push-runner.js +64 -46
  11. package/generators/lib/templates/dashboard-catalog.js +1 -1
  12. package/generators/lib/templates/db-connection-env.js +1 -1
  13. package/generators/lib/templates/dbschema-catalog.js +1 -1
  14. package/generators/lib/templates/field-validation-catalog.js +1 -1
  15. package/generators/lib/templates/mysql-template.js +1 -1
  16. package/generators/lib/templates/oracle-template.js +1 -1
  17. package/generators/lib/templates/postgres-template.js +1 -1
  18. package/generators/lib/templates/query-declarative-catalog.js +1 -1
  19. package/generators/lib/templates/sqlite-template.js +1 -1
  20. package/integrity-manifest.json +18 -18
  21. package/package.json +1 -1
  22. package/scripts/verify-integrity.js +1 -1
  23. package/server.js +1 -1
  24. package/src/components/handlers/adjust_handler.js +1 -1
  25. package/src/components/handlers/audit_handler.js +1 -1
  26. package/src/components/handlers/delete_handler.js +1 -1
  27. package/src/components/handlers/export_handler.js +1 -1
  28. package/src/components/handlers/import_handler.js +1 -1
  29. package/src/components/handlers/insert_handler.js +1 -1
  30. package/src/components/handlers/update_handler.js +1 -1
  31. package/src/components/handlers/upload_handler.js +1 -1
  32. package/src/components/handlers/workflow_handler.js +1 -1
  33. package/src/components/integrations/webhook.js +1 -1
  34. package/src/consumers/baseConsumer.js +1 -1
  35. package/src/consumers/declarativeMapper.js +1 -1
  36. package/src/consumers/handlers/apiHandler.js +1 -1
  37. package/src/consumers/handlers/consoleHandler.js +1 -1
  38. package/src/consumers/handlers/databaseHandler.js +1 -1
  39. package/src/consumers/handlers/index.js +1 -1
  40. package/src/consumers/handlers/kafkaHandler.js +1 -1
  41. package/src/consumers/index.js +1 -1
  42. package/src/consumers/messageTransformer.js +1 -1
  43. package/src/consumers/validator.js +1 -1
  44. package/src/core/db/dialect/base-dialect.js +1 -1
  45. package/src/core/db/dialect/index.js +1 -1
  46. package/src/core/db/dialect/mysql-dialect.js +1 -1
  47. package/src/core/db/dialect/oracle-dialect.js +1 -1
  48. package/src/core/db/dialect/postgres-dialect.js +1 -1
  49. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  50. package/src/core/db/flatten-helper.js +1 -1
  51. package/src/core/db/query-builder-error.js +1 -1
  52. package/src/core/db/query-builder.js +1 -1
  53. package/src/core/db/relation-helper.js +1 -1
  54. package/src/core/handlers/delete_handler.js +1 -1
  55. package/src/core/handlers/insert_handler.js +1 -1
  56. package/src/core/handlers/update_handler.js +1 -1
  57. package/src/core/models/base-model.js +1 -1
  58. package/src/core/utils/cache-manager.js +1 -1
  59. package/src/core/utils/component-engine.js +1 -1
  60. package/src/core/utils/context-builder.js +1 -1
  61. package/src/core/utils/datetime-formatter.js +1 -1
  62. package/src/core/utils/datetime-parser.js +1 -1
  63. package/src/core/utils/db.js +1 -1
  64. package/src/core/utils/logger.js +1 -1
  65. package/src/core/utils/payload-loader.js +1 -1
  66. package/src/core/utils/security-checks.js +1 -1
  67. package/src/middleware/body-options.js +1 -1
  68. package/src/middleware/cors.js +1 -1
  69. package/src/middleware/idempotency.js +1 -1
  70. package/src/middleware/rate-limiter.js +1 -1
  71. package/src/middleware/request-logger.js +1 -1
  72. package/src/middleware/security-headers.js +1 -1
  73. package/src/models/base-model-mysql.js +1 -1
  74. package/src/models/base-model-oracle.js +1 -1
  75. package/src/models/base-model-sqlite.js +1 -1
  76. package/src/models/base-model.js +1 -1
  77. package/src/pro/caching/redis-client.js +1 -1
  78. package/src/pro/caching/redis-helper.js +1 -1
  79. package/src/pro/consumers/baseConsumer.js +1 -1
  80. package/src/pro/consumers/declarativeMapper.js +1 -1
  81. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  82. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  83. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  84. package/src/pro/consumers/handlers/index.js +1 -1
  85. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  86. package/src/pro/consumers/index.js +1 -1
  87. package/src/pro/consumers/messageTransformer.js +1 -1
  88. package/src/pro/consumers/validator.js +1 -1
  89. package/src/pro/database/base-model-mysql.js +1 -1
  90. package/src/pro/database/base-model-oracle.js +1 -1
  91. package/src/pro/database/base-model-sqlite.js +1 -1
  92. package/src/pro/database/db-mysql.js +1 -1
  93. package/src/pro/database/db-oracle.js +1 -1
  94. package/src/pro/database/db-sqlite.js +1 -1
  95. package/src/pro/excel/excel-generator.js +1 -1
  96. package/src/pro/excel/excel-parser.js +1 -1
  97. package/src/pro/excel/export-service.js +1 -1
  98. package/src/pro/excel/export_handler.js +1 -1
  99. package/src/pro/excel/import-service.js +1 -1
  100. package/src/pro/excel/import-validator.js +1 -1
  101. package/src/pro/excel/import_handler.js +1 -1
  102. package/src/pro/excel/upsert-builder.js +1 -1
  103. package/src/pro/idgen/idgen-routes.js +1 -1
  104. package/src/pro/integrations/lookup-resolver.js +1 -1
  105. package/src/pro/integrations/upload-handler-v2.js +1 -1
  106. package/src/pro/integrations/upload-handler.js +1 -1
  107. package/src/pro/integrations/webhook.js +1 -1
  108. package/src/pro/locking/lock-routes.js +1 -1
  109. package/src/pro/locking/resource-lock-manager.js +1 -1
  110. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  111. package/src/pro/messaging/kafkaService.js +1 -1
  112. package/src/pro/messaging/messagehubService.js +1 -1
  113. package/src/pro/messaging/rabbitmqService.js +1 -1
  114. package/src/pro/scheduler/job-manager.js +1 -1
  115. package/src/pro/scheduler/job-routes.js +1 -1
  116. package/src/pro/scheduler/job-validator.js +1 -1
  117. package/src/pro/storage/base-storage-provider.js +1 -1
  118. package/src/pro/storage/file-metadata-helper.js +1 -1
  119. package/src/pro/storage/index.js +1 -1
  120. package/src/pro/storage/local-storage-provider.js +1 -1
  121. package/src/pro/storage/s3-storage-provider.js +1 -1
  122. package/src/pro/storage/upload-cleanup-job.js +1 -1
  123. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  124. package/src/pro/storage/upload-pending-tracker.js +1 -1
  125. package/src/pro/websocket/broadcast-helper.js +1 -1
  126. package/src/pro/websocket/index.js +1 -1
  127. package/src/pro/websocket/livesync-server.js +1 -1
  128. package/src/pro/websocket/ws-broadcaster.js +1 -1
  129. package/src/services/export-service.js +1 -1
  130. package/src/services/import-service.js +1 -1
  131. package/src/services/kafkaConsumerService.js +1 -1
  132. package/src/services/kafkaService.js +1 -1
  133. package/src/services/messagehubService.js +1 -1
  134. package/src/services/rabbitmqService.js +1 -1
  135. package/src/utils/cache-invalidation-registry.js +1 -1
  136. package/src/utils/cache-manager.js +1 -1
  137. package/src/utils/component-engine.js +1 -1
  138. package/src/utils/config-extractor.js +1 -1
  139. package/src/utils/consumerLogger.js +1 -1
  140. package/src/utils/context-builder.js +1 -1
  141. package/src/utils/dashboard-helpers.js +1 -1
  142. package/src/utils/dateHelper.js +1 -1
  143. package/src/utils/datetime-formatter.js +1 -1
  144. package/src/utils/datetime-parser.js +1 -1
  145. package/src/utils/db-bootstrap.js +1 -1
  146. package/src/utils/db-mysql.js +1 -1
  147. package/src/utils/db-oracle.js +1 -1
  148. package/src/utils/db-sqlite.js +1 -1
  149. package/src/utils/db.js +1 -1
  150. package/src/utils/demo-generator.js +1 -1
  151. package/src/utils/excel-generator.js +1 -1
  152. package/src/utils/excel-parser.js +1 -1
  153. package/src/utils/file-watcher.js +1 -1
  154. package/src/utils/id-generator.js +1 -1
  155. package/src/utils/idempotency-manager.js +1 -1
  156. package/src/utils/import-validator.js +1 -1
  157. package/src/utils/license-client.js +1 -1
  158. package/src/utils/lock-manager.js +1 -1
  159. package/src/utils/logger.js +1 -1
  160. package/src/utils/lookup-resolver.js +1 -1
  161. package/src/utils/payload-loader.js +1 -1
  162. package/src/utils/processor-response.js +1 -1
  163. package/src/utils/rabbitmq.js +1 -1
  164. package/src/utils/redis-client.js +1 -1
  165. package/src/utils/redis-helper.js +1 -1
  166. package/src/utils/request-scope.js +1 -1
  167. package/src/utils/security-checks.js +1 -1
  168. package/src/utils/service-resolver.js +1 -1
  169. package/src/utils/shutdown-coordinator.js +1 -1
  170. package/src/utils/trusted-keys.js +1 -1
  171. package/src/utils/upload-handler.js +1 -1
  172. package/src/utils/upsert-builder.js +1 -1
  173. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';function a0_0x17f9(){const _0x4d6a6f=['B25dAgfUz2u','mZmZmJm0wwHpAgvl','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','zgvIB3vUy2vnCW','mtmWnZy4sgfcvvHe','Dg9mB3DLCKnHC2u','Bg9N','C3rVCa','C3bSAxq','nda2nZu4mhvZBxnLzG','tMjmzNe','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','qLfTEgy','zxH0zw5ZAw9UCW','y2XVC2u','y3DK','mZeZm3fYtNLgEa','mtfMzeTotNe','CMvSyxrPDMu','nte5mtjkDMHUq2C','ChvZAa','mZvrwurfD3C','nduWzMnRDgTt','zgvIB3vUy2vuAw1LCG','m0P6wurOrq','odaWnZncq2vrDM8','mtG1n0zzs2jAvq','BwvZC2fNzq','Aw5JBhvKzxm','sNf6wNa','zxHPC3rZu3LUyW','C3ndEgG','mte3nJuWoeTYzgzorq','nujsz0TYwq','icbBv0fuq0HDifDHCM5PBMC6ifDHDgnOzxiGzxjYB3iGB24G','mtCWtgfADM51','Cgf0Aa'];a0_0x17f9=function(){return _0x4d6a6f;};return a0_0x17f9();}const a0_0x4f9e6d=a0_0x4901;(function(_0x23f59f,_0x4fcc34){const _0x2f669f=a0_0x4901,_0x385d8c=_0x23f59f();while(!![]){try{const _0x43ba08=parseInt(_0x2f669f(0x1b9))/0x1*(-parseInt(_0x2f669f(0x1c2))/0x2)+-parseInt(_0x2f669f(0x1b7))/0x3*(parseInt(_0x2f669f(0x1bf))/0x4)+-parseInt(_0x2f669f(0x1c0))/0x5*(parseInt(_0x2f669f(0x1c5))/0x6)+parseInt(_0x2f669f(0x1d9))/0x7*(-parseInt(_0x2f669f(0x1c8))/0x8)+parseInt(_0x2f669f(0x1b8))/0x9*(-parseInt(_0x2f669f(0x1da))/0xa)+parseInt(_0x2f669f(0x1d5))/0xb*(parseInt(_0x2f669f(0x1cd))/0xc)+parseInt(_0x2f669f(0x1d4))/0xd*(parseInt(_0x2f669f(0x1d7))/0xe);if(_0x43ba08===_0x4fcc34)break;else _0x385d8c['push'](_0x385d8c['shift']());}catch(_0x1b7191){_0x385d8c['push'](_0x385d8c['shift']());}}}(a0_0x17f9,0x3b52b));const fs=require('fs'),path=require(a0_0x4f9e6d(0x1c3));class FileWatcher{constructor(_0x1e2d33={}){const _0x29eb5a=a0_0x4f9e6d,_0x6a7376={'ssCxh':'4|1|3|0|5|2','BQmxf':'.js','rXeTL':'.json'},_0x5542de=_0x6a7376[_0x29eb5a(0x1be)][_0x29eb5a(0x1cc)]('|');let _0x8b1f15=0x0;while(!![]){switch(_0x5542de[_0x8b1f15++]){case'0':this[_0x29eb5a(0x1c4)]=_0x1e2d33['onChange']||(()=>{});continue;case'1':this['extensions']=_0x1e2d33[_0x29eb5a(0x1d1)]||[_0x6a7376[_0x29eb5a(0x1d0)],_0x6a7376['rXeTL']];continue;case'2':this[_0x29eb5a(0x1db)]=null;continue;case'3':this['debounceMs']=_0x1e2d33[_0x29eb5a(0x1c7)]||0x1f4;continue;case'4':this['directories']=_0x1e2d33['directories']||[];continue;case'5':this['watchers']=[];continue;}break;}}['start'](){const _0x5b0bf4=a0_0x4f9e6d;for(const _0x26f032 of this['directories']){if(!fs[_0x5b0bf4(0x1bd)](_0x26f032)){console[_0x5b0bf4(0x1ca)](_0x5b0bf4(0x1cf)+(path[_0x5b0bf4(0x1d6)](process[_0x5b0bf4(0x1d3)](),_0x26f032)||_0x26f032));continue;}try{const _0x18a6a8=fs['watch'](_0x26f032,{'recursive':!![]},(_0x2fd52b,_0x5065f7)=>{const _0x4617c5=_0x5b0bf4;if(!_0x5065f7)return;const _0x1a9ab1=path['extname'](_0x5065f7)[_0x4617c5(0x1c9)]();if(!this[_0x4617c5(0x1d1)][_0x4617c5(0x1bb)](_0x1a9ab1))return;this['_debounce'](_0x5065f7);});_0x18a6a8['on']('error',_0x3ead26=>{const _0x10d123=_0x5b0bf4;console[_0x10d123(0x1ca)](_0x10d123(0x1c1)+path[_0x10d123(0x1d6)](process[_0x10d123(0x1d3)](),_0x26f032)+':\x20'+_0x3ead26['message']);}),this['watchers'][_0x5b0bf4(0x1d8)](_0x18a6a8);const _0x38c003=path[_0x5b0bf4(0x1d6)](process[_0x5b0bf4(0x1d3)](),_0x26f032)||_0x26f032;console[_0x5b0bf4(0x1ca)]('\x20\x20[WATCH]\x20Watching:\x20'+_0x38c003+'/\x20(recursive)');}catch(_0x15f372){console['log'](_0x5b0bf4(0x1c6)+path['relative'](process[_0x5b0bf4(0x1d3)](),_0x26f032)+':\x20'+_0x15f372[_0x5b0bf4(0x1ba)]);}}}[a0_0x4f9e6d(0x1cb)](){const _0x4207ba=a0_0x4f9e6d,_0x331060={'NbLfq':function(_0x487974,_0xb1f8de){return _0x487974(_0xb1f8de);}};for(const _0x5caf5d of this['watchers']){try{_0x5caf5d[_0x4207ba(0x1d2)]();}catch(_0x2334d3){}}this['watchers']=[],this[_0x4207ba(0x1db)]&&(_0x331060[_0x4207ba(0x1ce)](clearTimeout,this[_0x4207ba(0x1db)]),this[_0x4207ba(0x1db)]=null);}['_debounce'](_0x2c206c){const _0xc0be57=a0_0x4f9e6d,_0x51fb1d={'JqzZp':function(_0x5784be,_0x591cca){return _0x5784be(_0x591cca);},'AeZbW':function(_0x2c99e3,_0x3684ef,_0x2eaff2){return _0x2c99e3(_0x3684ef,_0x2eaff2);}};this[_0xc0be57(0x1db)]&&_0x51fb1d[_0xc0be57(0x1bc)](clearTimeout,this['debounceTimer']),this['debounceTimer']=_0x51fb1d['AeZbW'](setTimeout,()=>{const _0x48f9a6=_0xc0be57;this[_0x48f9a6(0x1db)]=null,this['onChange'](_0x2c206c);},this[_0xc0be57(0x1c7)]);}}function a0_0x4901(_0x29f7d4,_0x9ddcda){_0x29f7d4=_0x29f7d4-0x1b7;const _0x17f98c=a0_0x17f9();let _0x4901c5=_0x17f98c[_0x29f7d4];if(a0_0x4901['DJeOhu']===undefined){var _0xba2b11=function(_0xe6b06d){const _0xb0b6db='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xbbb85='',_0x135d04='';for(let _0x5c3a57=0x0,_0x543bef,_0x58347d,_0x19095d=0x0;_0x58347d=_0xe6b06d['charAt'](_0x19095d++);~_0x58347d&&(_0x543bef=_0x5c3a57%0x4?_0x543bef*0x40+_0x58347d:_0x58347d,_0x5c3a57++%0x4)?_0xbbb85+=String['fromCharCode'](0xff&_0x543bef>>(-0x2*_0x5c3a57&0x6)):0x0){_0x58347d=_0xb0b6db['indexOf'](_0x58347d);}for(let _0x9be115=0x0,_0x39f47f=_0xbbb85['length'];_0x9be115<_0x39f47f;_0x9be115++){_0x135d04+='%'+('00'+_0xbbb85['charCodeAt'](_0x9be115)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x135d04);};a0_0x4901['FhCRpP']=_0xba2b11,a0_0x4901['udXYCh']={},a0_0x4901['DJeOhu']=!![];}const _0x52f333=_0x17f98c[0x0],_0x2a62ab=_0x29f7d4+_0x52f333,_0x471b44=a0_0x4901['udXYCh'][_0x2a62ab];return!_0x471b44?(_0x4901c5=a0_0x4901['FhCRpP'](_0x4901c5),a0_0x4901['udXYCh'][_0x2a62ab]=_0x4901c5):_0x4901c5=_0x471b44,_0x4901c5;}module['exports']=FileWatcher;
1
+ 'use strict';const a0_0x14036a=a0_0x26b8;(function(_0x1bbf7f,_0x2760ff){const _0x172583=a0_0x26b8,_0x2ee7ec=_0x1bbf7f();while(!![]){try{const _0x1963b1=-parseInt(_0x172583(0x130))/0x1*(parseInt(_0x172583(0x13a))/0x2)+-parseInt(_0x172583(0x13e))/0x3+-parseInt(_0x172583(0x133))/0x4*(parseInt(_0x172583(0x146))/0x5)+-parseInt(_0x172583(0x12f))/0x6*(parseInt(_0x172583(0x13d))/0x7)+-parseInt(_0x172583(0x135))/0x8*(-parseInt(_0x172583(0x13c))/0x9)+parseInt(_0x172583(0x14a))/0xa+parseInt(_0x172583(0x12a))/0xb*(parseInt(_0x172583(0x147))/0xc);if(_0x1963b1===_0x2760ff)break;else _0x2ee7ec['push'](_0x2ee7ec['shift']());}catch(_0x5109d3){_0x2ee7ec['push'](_0x2ee7ec['shift']());}}}(a0_0x1a17,0x66f27));function a0_0x1a17(){const _0x568995=['zxHWB3j0CW','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','mte4nduYBMvpvujX','mwXMAfH2Bq','ChvZAa','D2f0y2G','ng1ksNDNDW','y2XVC2u','ogndD0jpsW','zxH0BMfTzq','C3rHCNq','D2f0y2HLCNm','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','mtuZndCXoePoAxLmAG','zgLYzwn0B3jPzxm','mtG1mdqYn1zdvu9AtG','mJGWz2L2D05p','mtm5nZC3mNbXDKHbBG','lMPZ','C3rVCa','zgvIB3vUy2vuAw1LCG','lYaOCMvJDxjZAxzLkq','CMvSyxrPDMu','x2rLyM91BMnL','Dg9mB3DLCKnHC2u','mJK1mtm4mfvvC2vsAG','mtj0tKHothe','y3DK','icbBv0fuq0HDifDHDgnOAw5NoIa','odi4mdu5mfD5s2DqvW','Bg9N','B25dAgfUz2u','mJiWmtm3mJHnzLLAtLe','zxH0zw5ZAw9UCW','zgvIB3vUy2vnCW'];a0_0x1a17=function(){return _0x568995;};return a0_0x1a17();}function a0_0x26b8(_0x5884f0,_0x4a278c){_0x5884f0=_0x5884f0-0x12a;const _0x1a17d5=a0_0x1a17();let _0x26b869=_0x1a17d5[_0x5884f0];if(a0_0x26b8['KTBzCE']===undefined){var _0x59ae1b=function(_0x59dacd){const _0x5f201d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ba371='',_0x1f0987='';for(let _0x272a2e=0x0,_0x5a0d0b,_0x5b52df,_0x593921=0x0;_0x5b52df=_0x59dacd['charAt'](_0x593921++);~_0x5b52df&&(_0x5a0d0b=_0x272a2e%0x4?_0x5a0d0b*0x40+_0x5b52df:_0x5b52df,_0x272a2e++%0x4)?_0x1ba371+=String['fromCharCode'](0xff&_0x5a0d0b>>(-0x2*_0x272a2e&0x6)):0x0){_0x5b52df=_0x5f201d['indexOf'](_0x5b52df);}for(let _0x5f894f=0x0,_0x18a1c1=_0x1ba371['length'];_0x5f894f<_0x18a1c1;_0x5f894f++){_0x1f0987+='%'+('00'+_0x1ba371['charCodeAt'](_0x5f894f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1f0987);};a0_0x26b8['VnyHHx']=_0x59ae1b,a0_0x26b8['Tllcpd']={},a0_0x26b8['KTBzCE']=!![];}const _0x5cfb3f=_0x1a17d5[0x0],_0x5dffd3=_0x5884f0+_0x5cfb3f,_0x2d4326=a0_0x26b8['Tllcpd'][_0x5dffd3];return!_0x2d4326?(_0x26b869=a0_0x26b8['VnyHHx'](_0x26b869),a0_0x26b8['Tllcpd'][_0x5dffd3]=_0x26b869):_0x26b869=_0x2d4326,_0x26b869;}const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x30fa01={}){const _0x5914a0=a0_0x26b8,_0x59a9e4={'MVRAO':'.json'};this[_0x5914a0(0x13b)]=_0x30fa01['directories']||[],this[_0x5914a0(0x12b)]=_0x30fa01[_0x5914a0(0x12b)]||[_0x5914a0(0x13f),_0x59a9e4['MVRAO']],this['debounceMs']=_0x30fa01['debounceMs']||0x1f4,this['onChange']=_0x30fa01['onChange']||(()=>{}),this[_0x5914a0(0x138)]=[],this[_0x5914a0(0x141)]=null;}[a0_0x14036a(0x137)](){const _0x4c6ca5=a0_0x14036a;for(const _0x3a8262 of this['directories']){if(!fs['existsSync'](_0x3a8262)){console[_0x4c6ca5(0x14b)](_0x4c6ca5(0x139)+(path[_0x4c6ca5(0x143)](process[_0x4c6ca5(0x148)](),_0x3a8262)||_0x3a8262));continue;}try{const _0x1a5745=fs[_0x4c6ca5(0x132)](_0x3a8262,{'recursive':!![]},(_0xaf6756,_0x53abac)=>{const _0x3b8a26=_0x4c6ca5;if(!_0x53abac)return;const _0x4248d0=path[_0x3b8a26(0x136)](_0x53abac)[_0x3b8a26(0x145)]();if(!this[_0x3b8a26(0x12b)]['includes'](_0x4248d0))return;this[_0x3b8a26(0x144)](_0x53abac);});_0x1a5745['on']('error',_0x14d571=>{const _0x227326=_0x4c6ca5;console['log']('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path[_0x227326(0x143)](process['cwd'](),_0x3a8262)+':\x20'+_0x14d571['message']);}),this[_0x4c6ca5(0x138)][_0x4c6ca5(0x131)](_0x1a5745);const _0x112561=path[_0x4c6ca5(0x143)](process['cwd'](),_0x3a8262)||_0x3a8262;console['log'](_0x4c6ca5(0x149)+_0x112561+_0x4c6ca5(0x142));}catch(_0x4e5e9e){console['log'](_0x4c6ca5(0x12e)+path[_0x4c6ca5(0x143)](process[_0x4c6ca5(0x148)](),_0x3a8262)+':\x20'+_0x4e5e9e['message']);}}}[a0_0x14036a(0x140)](){const _0x41624e=a0_0x14036a;for(const _0x38545a of this['watchers']){try{_0x38545a[_0x41624e(0x134)]();}catch(_0x105659){}}this[_0x41624e(0x138)]=[],this[_0x41624e(0x141)]&&(clearTimeout(this['debounceTimer']),this['debounceTimer']=null);}['_debounce'](_0x37382e){const _0x3bdab0=a0_0x14036a;this[_0x3bdab0(0x141)]&&clearTimeout(this['debounceTimer']),this['debounceTimer']=setTimeout(()=>{const _0x42cf49=_0x3bdab0;this['debounceTimer']=null,this[_0x42cf49(0x14c)](_0x37382e);},this[_0x3bdab0(0x12c)]);}}module[a0_0x14036a(0x12d)]=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';const a0_0x4d3c47=a0_0x2431;(function(_0x5a1f92,_0x13c2c3){const _0x5835f1=a0_0x2431,_0x350a01=_0x5a1f92();while(!![]){try{const _0x3a11a5=parseInt(_0x5835f1(0x205))/0x1*(-parseInt(_0x5835f1(0x21b))/0x2)+parseInt(_0x5835f1(0x1f4))/0x3+-parseInt(_0x5835f1(0x1f8))/0x4+-parseInt(_0x5835f1(0x136))/0x5+-parseInt(_0x5835f1(0x148))/0x6*(parseInt(_0x5835f1(0x180))/0x7)+parseInt(_0x5835f1(0x139))/0x8+parseInt(_0x5835f1(0x1f7))/0x9*(parseInt(_0x5835f1(0x14e))/0xa);if(_0x3a11a5===_0x13c2c3)break;else _0x350a01['push'](_0x350a01['shift']());}catch(_0x11d4b5){_0x350a01['push'](_0x350a01['shift']());}}}(a0_0x47cb,0x2a9e6));const crypto=require('crypto'),redisClient=require('./redis-client'),{logger}=require(a0_0x4d3c47(0x24a)),idempotencyManager=require(a0_0x4d3c47(0x208)),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x4d3c47(0x163),a0_0x4d3c47(0x1ef)]),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_0x4d3c47(0x1ca),CHARSET_UPPER=a0_0x4d3c47(0x1a9),CHARSET_LOWER=a0_0x4d3c47(0x13f),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_0x4d3c47(0x19e),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_0x4d3c47(0x1fa),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_0x4d3c47(0x196),LUA_CONFIRM_RESERVATION=a0_0x4d3c47(0x239),LUA_CANCEL_RESERVATION=a0_0x4d3c47(0x1c5),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(_0x5c5b39,_0x423bad,_0x2cb1f5=null){const _0x45e9ab=a0_0x4d3c47,_0x58ca15={'DXpBW':function(_0x2fd46c,_0x5298a0){return _0x2fd46c||_0x5298a0;},'NEkXt':_0x45e9ab(0x19b)};super(_0x58ca15['DXpBW'](_0x423bad,_0x5c5b39)),this['name']=_0x58ca15[_0x45e9ab(0x1f5)],this['code']=_0x5c5b39,this[_0x45e9ab(0x1a6)]=_0x2cb1f5;}}function a0_0x2431(_0x4ae8ed,_0x8629d0){_0x4ae8ed=_0x4ae8ed-0x126;const _0x47cb3d=a0_0x47cb();let _0x2431b2=_0x47cb3d[_0x4ae8ed];if(a0_0x2431['wSyyoW']===undefined){var _0x507daa=function(_0xc497d6){const _0xba33ca='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x565b9a='',_0x4f6cec='';for(let _0x5d15fa=0x0,_0x1fdd22,_0x230b3b,_0x24353a=0x0;_0x230b3b=_0xc497d6['charAt'](_0x24353a++);~_0x230b3b&&(_0x1fdd22=_0x5d15fa%0x4?_0x1fdd22*0x40+_0x230b3b:_0x230b3b,_0x5d15fa++%0x4)?_0x565b9a+=String['fromCharCode'](0xff&_0x1fdd22>>(-0x2*_0x5d15fa&0x6)):0x0){_0x230b3b=_0xba33ca['indexOf'](_0x230b3b);}for(let _0x12a67c=0x0,_0x3bfbbd=_0x565b9a['length'];_0x12a67c<_0x3bfbbd;_0x12a67c++){_0x4f6cec+='%'+('00'+_0x565b9a['charCodeAt'](_0x12a67c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f6cec);};a0_0x2431['kljlsA']=_0x507daa,a0_0x2431['GRnqQZ']={},a0_0x2431['wSyyoW']=!![];}const _0x1466d6=_0x47cb3d[0x0],_0x1138d9=_0x4ae8ed+_0x1466d6,_0x1f8366=a0_0x2431['GRnqQZ'][_0x1138d9];return!_0x1f8366?(_0x2431b2=a0_0x2431['kljlsA'](_0x2431b2),a0_0x2431['GRnqQZ'][_0x1138d9]=_0x2431b2):_0x2431b2=_0x1f8366,_0x2431b2;}class IdGenerator{constructor(){const _0x4d12ff=a0_0x4d3c47;this['_initialized']=![],this[_0x4d12ff(0x1b3)]=null,this[_0x4d12ff(0x1ff)]=null,this['_idemTTL']=null,this['_allowReset']=null,this[_0x4d12ff(0x17b)]=null,this['_defaultPinDigits']=null,this[_0x4d12ff(0x24d)]=null,this['_defaultCodePattern']=null,this[_0x4d12ff(0x245)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}[a0_0x4d3c47(0x1ab)](){const _0x149efe=a0_0x4d3c47,_0x647c5f={'KHobp':function(_0x5014ae,_0xbcb5a8){return _0x5014ae===_0xbcb5a8;},'WNTij':function(_0x46f2d9,_0x5be341,_0x141fe){return _0x46f2d9(_0x5be341,_0x141fe);},'SUwzL':_0x149efe(0x229),'XBQFd':function(_0xcdb359,_0x5c7d23,_0x3b81b0){return _0xcdb359(_0x5c7d23,_0x3b81b0);}};this['_keyPrefix']=_0x149efe(0x184),this['_enabled']=_0x647c5f[_0x149efe(0x22d)](process['env'][_0x149efe(0x1f1)],'true'),this[_0x149efe(0x23a)]=parseInt(process['env']['IDGEN_IDEM_TTL'],0xa)||0x258,this['_allowReset']=process['env']['IDGEN_ALLOW_RESET']==='true',this[_0x149efe(0x17b)]=_0x647c5f[_0x149efe(0x235)](parseInt,process['env']['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process[_0x149efe(0x24f)][_0x149efe(0x1a5)],0xa)||0x6,this['_defaultSerialPattern']=process[_0x149efe(0x24f)][_0x149efe(0x190)]||_0x149efe(0x20e),this[_0x149efe(0x1e6)]=process['env'][_0x149efe(0x1b1)]||_0x647c5f[_0x149efe(0x16e)],this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x149efe(0x24f)]['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300},this[_0x149efe(0x155)]=parseInt(process[_0x149efe(0x24f)]['IDGEN_RESERVE_DEFAULT_TTL'],0xa)||DEFAULT_RESERVE_TTL,this['_reserveMaxTTL']=_0x647c5f[_0x149efe(0x16c)](parseInt,process['env']['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this[_0x149efe(0x253)]=!![],logger[_0x149efe(0x191)]({'event':_0x149efe(0x24b),'enabled':this['_enabled'],'idemTTL':this[_0x149efe(0x23a)],'allowReset':this['_allowReset'],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x149efe(0x155)],'reserveMaxTTL':this['_reserveMaxTTL']},_0x149efe(0x172)+this['_enabled']);}[a0_0x4d3c47(0x173)](){const _0x54adf1=a0_0x4d3c47;if(!this[_0x54adf1(0x253)])this['_initConfig']();}get[a0_0x4d3c47(0x137)](){const _0x15cb73=a0_0x4d3c47;return this[_0x15cb73(0x173)](),this['_enabled'];}get[a0_0x4d3c47(0x159)](){const _0x41ea13=a0_0x4d3c47;return this['_ensureInitialized'](),this[_0x41ea13(0x1ff)];}get['idemTTL'](){const _0x4bcfcc=a0_0x4d3c47;return this[_0x4bcfcc(0x173)](),this['_idemTTL'];}get['allowReset'](){const _0x38d7f2=a0_0x4d3c47;return this[_0x38d7f2(0x173)](),this[_0x38d7f2(0x23c)];}get[a0_0x4d3c47(0x216)](){const _0x1053bc=a0_0x4d3c47;return this['_ensureInitialized'](),this[_0x1053bc(0x17b)];}get[a0_0x4d3c47(0x1e5)](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get[a0_0x4d3c47(0x1e9)](){return this['_ensureInitialized'](),this['_defaultSerialPattern'];}get[a0_0x4d3c47(0x1d7)](){return this['_ensureInitialized'](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x36fdbd=a0_0x4d3c47;return this['_ensureInitialized'](),this[_0x36fdbd(0x155)];}get[a0_0x4d3c47(0x14b)](){const _0x40efdf=a0_0x4d3c47;return this[_0x40efdf(0x173)](),this[_0x40efdf(0x168)];}[a0_0x4d3c47(0x13a)](){const _0x488cbe=a0_0x4d3c47;return this[_0x488cbe(0x137)];}['_validateResource'](_0x2e5e01){const _0xb0f36f=a0_0x4d3c47;if(typeof _0x2e5e01!=='string'||!RESOURCE_REGEX['test'](_0x2e5e01))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE',_0xb0f36f(0x24e)+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x2e5e01)+')');}[a0_0x4d3c47(0x145)](_0x56dc33){const _0x30f324=a0_0x4d3c47,_0xdf962c={'IUzbX':_0x30f324(0x14c),'JokED':function(_0x3f3887,_0x2d12da){return _0x3f3887<_0x2d12da;},'RImeU':function(_0x19522a,_0x39bfc2){return _0x19522a>_0x39bfc2;},'OPQHp':function(_0x4bc8dd,_0x205444){return _0x4bc8dd==_0x205444;},'QLtgh':'IDGEN_INVALID_PREFIX','CVruI':function(_0x3e2f69,_0x4a5e6e){return _0x3e2f69>_0x4a5e6e;},'RuEvp':function(_0x5c3d50,_0x48acc8){return _0x5c3d50!==_0x48acc8;},'BSNNZ':'IDGEN_INVALID_RESOURCE','mIXzl':function(_0x4097d6,_0x3d52f9){return _0x4097d6===_0x3d52f9;}},{resource:_0x353749,format:_0x50c33e,prefix:_0x11bd51,separator:_0x548e9d,numDigits:_0x1f4b4a,reuseDelete:_0x2e0e3f}=_0x56dc33;this['_validateResource'](_0x353749);const _0x5f03d9=typeof _0x50c33e===_0xdf962c['IUzbX']?_0x50c33e[_0x30f324(0x23d)]():'';if(!ALLOWED_FORMATS['has'](_0x5f03d9))throw new IdGeneratorError(_0x30f324(0x243),'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x30f324(0x18d)](',\x20')+'\x20(got:\x20'+_0x50c33e+')');if(!Number[_0x30f324(0x14f)](_0x1f4b4a)||_0xdf962c[_0x30f324(0x1e3)](_0x1f4b4a,MIN_NUM_DIGITS)||_0xdf962c['RImeU'](_0x1f4b4a,MAX_NUM_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x30f324(0x1ae)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x30f324(0x140)+_0x1f4b4a+')');const _0x44e954=_0xdf962c[_0x30f324(0x227)](_0x11bd51,null)?'':_0x11bd51;if(typeof _0x44e954!==_0xdf962c[_0x30f324(0x23f)]||!PREFIX_REGEX[_0x30f324(0x1ee)](_0x44e954))throw new IdGeneratorError(_0xdf962c[_0x30f324(0x247)],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0x30f324(0x140)+JSON['stringify'](_0x11bd51)+')');const _0x58c334=_0x548e9d==null?'':_0x548e9d;if(typeof _0x58c334!=='string'||_0xdf962c['CVruI'](_0x58c334['length'],0x3)||SEPARATOR_FORBIDDEN['test'](_0x58c334))throw new IdGeneratorError('IDGEN_INVALID_SEPARATOR','Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON['stringify'](_0x548e9d)+')');if(_0x2e0e3f!=null&&_0xdf962c['RuEvp'](typeof _0x2e0e3f,_0x30f324(0x1b8)))throw new IdGeneratorError(_0xdf962c['BSNNZ'],_0x30f324(0x1d8)+typeof _0x2e0e3f+')');return{'resource':_0x353749,'format':_0x5f03d9,'prefix':_0x44e954,'separator':_0x58c334,'numDigits':_0x1f4b4a,'reuseDelete':_0xdf962c['mIXzl'](_0x2e0e3f,!![])};}[a0_0x4d3c47(0x177)](_0x5487a6){const _0x1f64e3=a0_0x4d3c47,_0x35c94d={'SonDn':function(_0x4923e9,_0x544e54){return _0x4923e9!==_0x544e54;},'iUrGS':'string','NCDdG':function(_0x314288,_0xf844b){return _0x314288===_0xf844b;},'BZPhv':'IDGEN_INVALID_PATTERN'};if(_0x35c94d['SonDn'](typeof _0x5487a6,_0x35c94d['iUrGS'])||_0x35c94d[_0x1f64e3(0x1e4)](_0x5487a6['length'],0x0)||_0x5487a6['length']>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0x35c94d[_0x1f64e3(0x126)],'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+_0x1f64e3(0x195)+(_0x5487a6&&_0x5487a6['length'])+')');let _0x5d5bce=![];for(const _0x566b7c of _0x5487a6){if(PLACEHOLDER_MAP[_0x566b7c]){_0x5d5bce=!![];break;}}if(!_0x5d5bce)throw new IdGeneratorError('IDGEN_INVALID_PATTERN',_0x1f64e3(0x15f));}['_validateTTL'](_0x312aa7){const _0x5e440=a0_0x4d3c47,_0xde5c58={'XOooo':function(_0x1911cf,_0x240485){return _0x1911cf>_0x240485;},'hhWBU':'IDGEN_INVALID_TTL'};if(_0x312aa7==null)return undefined;if(!Number[_0x5e440(0x14f)](_0x312aa7)||_0x312aa7<0x1||_0xde5c58['XOooo'](_0x312aa7,MAX_TTL))throw new IdGeneratorError(_0xde5c58['hhWBU'],_0x5e440(0x251)+MAX_TTL+_0x5e440(0x187)+_0x312aa7+')');return _0x312aa7;}['_validateMaxRetry'](_0xbec8db){const _0x48d4d6=a0_0x4d3c47,_0x452de2={'YskaU':function(_0x580a45,_0x4e6e82){return _0x580a45<_0x4e6e82;},'ZCZpn':_0x48d4d6(0x1e0)};if(_0xbec8db==null)return this['defaultMaxRetry'];if(!Number['isInteger'](_0xbec8db)||_0x452de2['YskaU'](_0xbec8db,0x1)||_0xbec8db>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x452de2['ZCZpn'],_0x48d4d6(0x217)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0xbec8db+')');return _0xbec8db;}['_validateIdempotencyKey'](_0x4e1148){const _0x11ad07=a0_0x4d3c47,_0x2a65af={'cxnJD':function(_0x59dc9f,_0x15afde){return _0x59dc9f!==_0x15afde;},'XfRKt':_0x11ad07(0x14c),'vusLz':function(_0xf70eeb,_0x3933c9){return _0xf70eeb>_0x3933c9;},'pjonU':_0x11ad07(0x192)};if(_0x4e1148==null)return undefined;if(_0x2a65af[_0x11ad07(0x135)](typeof _0x4e1148,_0x2a65af['XfRKt'])||_0x4e1148[_0x11ad07(0x1ce)]===0x0||_0x2a65af[_0x11ad07(0x12d)](_0x4e1148['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x2a65af['pjonU'],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+_0x11ad07(0x22e));return _0x4e1148;}['_validateReserveTTL'](_0x51b20c){const _0x400d19=a0_0x4d3c47,_0x3820f2={'QOLGZ':function(_0x49ff7f,_0x24bdab){return _0x49ff7f==_0x24bdab;}};if(_0x3820f2['QOLGZ'](_0x51b20c,null))return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x51b20c)||_0x51b20c<MIN_RESERVE_TTL||_0x51b20c>this['reserveMaxTTL'])throw new IdGeneratorError(_0x400d19(0x15d),_0x400d19(0x212)+MIN_RESERVE_TTL+'-'+this[_0x400d19(0x14b)]+'\x20seconds\x20(got:\x20'+_0x51b20c+')');return _0x51b20c;}['_validateReservationToken'](_0x57f6cd){const _0x352fe2=a0_0x4d3c47,_0x50a1e6={'GRghn':function(_0x3ebff8,_0xf9312){return _0x3ebff8!==_0xf9312;},'mGleC':'IDGEN_INVALID_TOKEN'};if(_0x50a1e6['GRghn'](typeof _0x57f6cd,'string')||!RESERVATION_TOKEN_REGEX[_0x352fe2(0x1ee)](_0x57f6cd))throw new IdGeneratorError(_0x50a1e6[_0x352fe2(0x167)],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x352fe2(0x1be)](_0x57f6cd)+')');return _0x57f6cd;}['_pad2'](_0x32680f){return String(_0x32680f)['padStart'](0x2,'0');}[a0_0x4d3c47(0x146)](_0x6e274,_0x32ee80,_0x27e917=new Date()){const _0x1de7e0=a0_0x4d3c47,_0x22d446={'tPUqv':function(_0x4322b8,_0x2da718){return _0x4322b8+_0x2da718;},'lGklg':function(_0x39c8a3,_0x25732f){return _0x39c8a3||_0x25732f;},'EiGmr':_0x1de7e0(0x17c),'maMOi':'yyyy','yTnms':'yyyymm','yiqAF':_0x1de7e0(0x1ef)},_0x37b0c4=_0x27e917[_0x1de7e0(0x22b)](),_0x190c7e=this[_0x1de7e0(0x1cf)](_0x22d446[_0x1de7e0(0x1c4)](_0x27e917['getMonth'](),0x1)),_0x3876bf=this['_pad2'](_0x27e917['getDate']()),_0x1259e3=_0x22d446[_0x1de7e0(0x1b9)](_0x32ee80,'_');let _0x53a5a1,_0x46958e='';switch(_0x6e274){case _0x22d446['EiGmr']:_0x53a5a1=_0x1259e3+'_text';break;case _0x22d446[_0x1de7e0(0x132)]:_0x46958e=''+_0x37b0c4,_0x53a5a1=_0x1259e3+'_yyyy_'+_0x46958e;break;case _0x22d446[_0x1de7e0(0x1d3)]:_0x46958e=''+_0x37b0c4+_0x190c7e,_0x53a5a1=_0x1259e3+'_yyyymm_'+_0x46958e;break;case _0x22d446['yiqAF']:_0x46958e=''+_0x37b0c4+_0x190c7e+_0x3876bf,_0x53a5a1=_0x1259e3+'_yyyymmdd_'+_0x46958e;break;default:throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Unknown\x20format:\x20'+_0x6e274);}return{'formatKey':_0x53a5a1,'datePrefix':_0x46958e};}[a0_0x4d3c47(0x1df)](_0x46ce50,_0x4d39d3){const _0x49c6e0=a0_0x4d3c47;return this[_0x49c6e0(0x159)]+_0x49c6e0(0x12e)+_0x46ce50+':'+_0x4d39d3;}['_buildReuseKey'](_0x4a0ad5,_0xbb619){const _0x56702e=a0_0x4d3c47;return this[_0x56702e(0x159)]+'reuse:'+_0x4a0ad5+':'+_0xbb619;}[a0_0x4d3c47(0x169)](_0x25bb03,_0x1b63ed){const _0x9b1a64=a0_0x4d3c47;return this[_0x9b1a64(0x159)]+'meta:'+_0x25bb03+':'+_0x1b63ed;}['_buildIssuedKey'](_0x58bb38){const _0x19cb11=a0_0x4d3c47;return this[_0x19cb11(0x159)]+'issued:'+_0x58bb38;}[a0_0x4d3c47(0x15b)](_0x3e5436,_0x2ed91e){return this['keyPrefix']+'active:'+_0x3e5436+':'+_0x2ed91e;}[a0_0x4d3c47(0x20d)](_0x26cb7c){const _0xf11e72=a0_0x4d3c47;return this['keyPrefix']+_0xf11e72(0x230)+_0x26cb7c;}[a0_0x4d3c47(0x144)](_0x1933c4,_0x130700){const _0x476761=a0_0x4d3c47;return this[_0x476761(0x159)]+'rsv_idx:'+_0x1933c4+':'+_0x130700;}[a0_0x4d3c47(0x20a)](){return this['keyPrefix']+'rsv:';}['_buildIdemKey'](_0x14f30a,_0x34a67d,_0x5b0422,_0x151259){const _0x3a16ea=a0_0x4d3c47,_0x1c3c21={'TKFKC':'idgen'};if(_0x5b0422)return idempotencyManager['buildDeterministicKey']('idgen',_0x14f30a,_0x34a67d+':'+_0x5b0422+':'+_0x151259);return idempotencyManager[_0x3a16ea(0x19c)](_0x1c3c21[_0x3a16ea(0x246)],_0x14f30a,_0x34a67d+':'+_0x151259);}['_getCounterTTL'](_0x429a79){const _0x140b87=a0_0x4d3c47;return this[_0x140b87(0x245)][_0x429a79]||0x0;}[a0_0x4d3c47(0x1e1)]({format:_0x34a0d1,prefix:_0x114d3b,datePrefix:_0x402431,separator:_0x523758,numDigits:_0x219c4a,counterInt:_0x51d139}){const _0x339e49=a0_0x4d3c47,_0x8bc708={'VfFPx':function(_0x8db462,_0x536e35){return _0x8db462>_0x536e35;},'oEQzJ':function(_0x55d6b5,_0x290aca){return _0x55d6b5(_0x290aca);},'nLuqf':'text'},_0xa51067=Math['pow'](0xa,_0x219c4a)-0x1;if(_0x8bc708['VfFPx'](_0x51d139,_0xa51067))throw new IdGeneratorError('IDGEN_COUNTER_OVERFLOW',_0x339e49(0x209)+_0x51d139+'\x20exceeds\x20'+_0x219c4a+_0x339e49(0x150)+_0xa51067+_0x339e49(0x16b),{'counterInt':_0x51d139,'numDigits':_0x219c4a,'max':_0xa51067});const _0xc1ccea=_0x8bc708['oEQzJ'](String,_0x51d139)['padStart'](_0x219c4a,'0');if(_0x34a0d1===_0x8bc708[_0x339e49(0x154)])return _0x114d3b?''+_0x114d3b+_0x523758+_0xc1ccea:_0xc1ccea;return _0x114d3b?''+_0x114d3b+_0x523758+_0x402431+_0x523758+_0xc1ccea:''+_0x402431+_0x523758+_0xc1ccea;}[a0_0x4d3c47(0x199)]({format:_0x36a740,prefix:_0x5b9360,separator:_0x213965,numDigits:_0x402aa0,number:_0x1ecfb2}){const _0x3da55c=a0_0x4d3c47,_0x1b38a9={'PcCvP':'string','kDXme':function(_0x586b8b,_0x504c9b){return _0x586b8b===_0x504c9b;},'OuqWv':function(_0x57fe6b,_0x2c451f){return _0x57fe6b||_0x2c451f;},'NDWUE':function(_0x596ab2,_0x35522e){return _0x596ab2===_0x35522e;},'nkTVF':function(_0xab017b,_0xccb58b){return _0xab017b===_0xccb58b;},'dmIiU':function(_0x137c76,_0x1b242c){return _0x137c76!==_0x1b242c;},'nxDwR':_0x3da55c(0x200),'stzch':function(_0x543479,_0x54a349){return _0x543479!==_0x54a349;},'tZTLQ':function(_0xb856d,_0x3a7d09){return _0xb856d===_0x3a7d09;},'dIBxG':function(_0x3e3156,_0x359ef1,_0x161449){return _0x3e3156(_0x359ef1,_0x161449);}};if(typeof _0x1ecfb2!==_0x1b38a9['PcCvP']||_0x1b38a9['kDXme'](_0x1ecfb2['length'],0x0))throw new IdGeneratorError(_0x3da55c(0x200),'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x3b5d85=_0x1b38a9[_0x3da55c(0x194)](_0x213965,''),_0x3e5998=_0x1b38a9['NDWUE'](_0x3b5d85,'')?[_0x1ecfb2]:_0x1ecfb2[_0x3da55c(0x17d)](_0x3b5d85);let _0x1e8712='',_0x39870b;if(_0x1b38a9[_0x3da55c(0x249)](_0x36a740,'text')){if(_0x5b9360){if(_0x1b38a9['dmIiU'](_0x3e5998['length'],0x2)||_0x3e5998[0x0]!==_0x5b9360)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x3b5d85+'padded\x20(got:\x20'+_0x1ecfb2+')');_0x39870b=_0x3e5998[0x1];}else{if(_0x3e5998[_0x3da55c(0x1ce)]!==0x1)throw new IdGeneratorError(_0x1b38a9['nxDwR'],_0x3da55c(0x21f)+_0x1ecfb2+')');_0x39870b=_0x3e5998[0x0];}}else{const _0x3b4d6c=_0x5b9360?0x3:0x2;if(_0x1b38a9['stzch'](_0x3e5998['length'],_0x3b4d6c))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x3da55c(0x21c)+_0x1ecfb2+',\x20expected\x20'+_0x3b4d6c+_0x3da55c(0x176));let _0x3d3246=0x0;if(_0x5b9360){if(_0x1b38a9[_0x3da55c(0x1cb)](_0x3e5998[_0x3d3246],_0x5b9360))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x3da55c(0x15c)+_0x5b9360+_0x3da55c(0x12c)+_0x3e5998[_0x3d3246]);_0x3d3246++;}_0x1e8712=_0x3e5998[_0x3d3246++];const _0x3e4299=_0x36a740===_0x3da55c(0x1fe)?/^\d{4}$/:_0x1b38a9[_0x3da55c(0x237)](_0x36a740,_0x3da55c(0x163))?/^\d{6}$/:/^\d{8}$/;if(!_0x3e4299['test'](_0x1e8712))throw new IdGeneratorError(_0x3da55c(0x200),_0x3da55c(0x14a)+_0x36a740+':\x20'+_0x1e8712);_0x39870b=_0x3e5998[_0x3d3246];}if(!new RegExp(_0x3da55c(0x1a2)+_0x402aa0+'}$')['test'](_0x39870b))throw new IdGeneratorError(_0x3da55c(0x200),_0x3da55c(0x1cc)+_0x402aa0+'\x20digits\x20(got:\x20'+_0x39870b+')');const _0x36c5e2=_0x1b38a9['dIBxG'](parseInt,_0x39870b,0xa),_0x12bb6d=_0x5b9360||'_';let _0x418470;return _0x36a740===_0x3da55c(0x17c)?_0x418470=_0x12bb6d+_0x3da55c(0x23e):_0x418470=_0x12bb6d+'_'+_0x36a740+'_'+_0x1e8712,{'formatKey':_0x418470,'counterInt':_0x36c5e2,'datePrefix':_0x1e8712};}[a0_0x4d3c47(0x1d6)](_0x5a65cf){const _0x18b287=a0_0x4d3c47;let _0x1beed7='';for(const _0x380a02 of _0x5a65cf){const _0x23bc6f=PLACEHOLDER_MAP[_0x380a02];if(_0x23bc6f){const _0x492d74=crypto['randomInt'](0x0,_0x23bc6f[_0x18b287(0x1ce)]);_0x1beed7+=_0x23bc6f[_0x492d74];}else _0x1beed7+=_0x380a02;}return _0x1beed7;}async[a0_0x4d3c47(0x240)](_0x1ba2f7){const _0x287ed1=a0_0x4d3c47,_0x42a812={'wbPKW':_0x287ed1(0x16d),'Ohzgz':'Idempotency\x20retrieve\x20error'};if(!_0x1ba2f7)return null;try{const _0x1581e3=redisClient[_0x287ed1(0x156)](),_0x4b269b=await _0x1581e3['get'](_0x1ba2f7);if(_0x4b269b)return logger['info']({'event':_0x42a812[_0x287ed1(0x221)],'key':_0x1ba2f7},'Idempotency\x20cache\x20HIT'),JSON[_0x287ed1(0x1c8)](_0x4b269b);return null;}catch(_0x290dda){return logger[_0x287ed1(0x1b4)]({'event':'idgen_idem_retrieve_error','error':_0x290dda['message']},_0x42a812['Ohzgz']),null;}}async[a0_0x4d3c47(0x143)](_0x1a329f,_0x2cb34d){const _0x386c7c=a0_0x4d3c47;if(!_0x1a329f)return;try{const _0x592cb8=redisClient[_0x386c7c(0x156)]();await _0x592cb8['setex'](_0x1a329f,this['idemTTL'],JSON['stringify'](_0x2cb34d));}catch(_0x388492){logger['warn']({'event':_0x386c7c(0x24c),'error':_0x388492[_0x386c7c(0x1ad)]},_0x386c7c(0x151));}}async['_storeIdemCacheNX'](_0x13f5bd,_0x13c23e){const _0x5ba1bd=a0_0x4d3c47,_0x387d26={'vPcaB':function(_0x1312bb,_0x4f3430){return _0x1312bb===_0x4f3430;},'YPjvw':'idgen_idem_nx_race_lost_but_empty','mhFBU':_0x5ba1bd(0x130),'kBSOF':'idgen_idem_storenx_error'};if(!_0x13f5bd)return{'stored':!![],'winnerResult':null};try{const _0x2830ef=redisClient[_0x5ba1bd(0x156)](),_0x4e18ac=JSON['stringify'](_0x13c23e),_0x1a3765=await _0x2830ef['set'](_0x13f5bd,_0x4e18ac,'EX',this[_0x5ba1bd(0x1bd)],'NX');if(_0x387d26['vPcaB'](_0x1a3765,'OK'))return{'stored':!![],'winnerResult':null};const _0x5d9090=await _0x2830ef[_0x5ba1bd(0x20f)](_0x13f5bd);if(_0x5d9090)return{'stored':![],'winnerResult':JSON[_0x5ba1bd(0x1c8)](_0x5d9090)};return logger[_0x5ba1bd(0x1b4)]({'event':_0x387d26['YPjvw'],'key':_0x13f5bd},_0x387d26[_0x5ba1bd(0x1e7)]),{'stored':!![],'winnerResult':null};}catch(_0x1526ef){return logger[_0x5ba1bd(0x1b4)]({'event':_0x387d26[_0x5ba1bd(0x203)],'error':_0x1526ef[_0x5ba1bd(0x1ad)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x4d3c47(0x1d9)](_0x3baedd,_0x1b36d0,_0x4dbc72){const _0x30c045=a0_0x4d3c47;try{const _0x17e270=redisClient['getClient']();if(_0x4dbc72){const _0x4cd466=this[_0x30c045(0x15b)](_0x3baedd,_0x1b36d0);await _0x17e270[_0x30c045(0x250)](_0x4cd466);}else{const _0x2e60da=this['_buildIssuedKey'](_0x3baedd);await _0x17e270[_0x30c045(0x219)](_0x2e60da,_0x1b36d0);}}catch(_0x25abc4){logger['warn']({'event':_0x30c045(0x1e2),'error':_0x25abc4[_0x30c045(0x1ad)]},_0x30c045(0x129));}}async['_updateMeta'](_0x19fa7d,_0x41b941,_0x18ba89,_0x554f21=0x0){const _0x208d68=a0_0x4d3c47,_0x1b242a={'rgWUB':function(_0x22cccb,_0x2e6a7c){return _0x22cccb(_0x2e6a7c);},'RjrpT':function(_0x100b0d,_0x53bf89){return _0x100b0d>_0x53bf89;},'fJkXP':function(_0x415433,_0x35201a){return _0x415433>_0x35201a;},'kSrZC':'idgen_meta_update_error'};try{const _0x2264a2=redisClient[_0x208d68(0x156)](),_0x23c15a=this['_buildMetaKey'](_0x19fa7d,_0x41b941),_0xceb825=[];for(const [_0x462cde,_0x248092]of Object['entries'](_0x18ba89)){_0xceb825[_0x208d68(0x1c1)](_0x462cde,_0x1b242a[_0x208d68(0x228)](String,_0x248092));}if(_0x1b242a['RjrpT'](_0xceb825[_0x208d68(0x1ce)],0x0)){await _0x2264a2['hset'](_0x23c15a,..._0xceb825);if(_0x1b242a[_0x208d68(0x22a)](_0x554f21,0x0))await _0x2264a2['expire'](_0x23c15a,_0x554f21);}}catch(_0x4f4748){logger[_0x208d68(0x1b4)]({'event':_0x1b242a[_0x208d68(0x133)],'error':_0x4f4748[_0x208d68(0x1ad)]},_0x208d68(0x1a4));}}async['number'](_0x23ee83){const _0xfceaba=a0_0x4d3c47,_0x500b9f={'yOiTn':function(_0x5b8eda,_0x54458f){return _0x5b8eda(_0x54458f);},'diOwD':_0xfceaba(0x1d2),'rKKlE':'idgen_number_generated'};if(!this[_0xfceaba(0x137)])throw new IdGeneratorError(_0xfceaba(0x17e),'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x5a844c=this['_validateNumberParams'](_0x23ee83),_0x4e5b09=this[_0xfceaba(0x1c9)](_0x23ee83['idempotencyKey']),{resource:_0x4a98ee,format:_0x1fb571,prefix:_0x1d6e87,separator:_0x208c05,numDigits:_0x507ba1,reuseDelete:_0x408638}=_0x5a844c,{formatKey:_0x49252a,datePrefix:_0x3d7c97}=this['_buildFormatKey'](_0x1fb571,_0x1d6e87),_0x314a03=this[_0xfceaba(0x1df)](_0x4a98ee,_0x49252a),_0x3d8dbc=this[_0xfceaba(0x127)](_0x4a98ee,_0x49252a),_0x4b27bb=this['_getCounterTTL'](_0x1fb571);let _0x9e7ad4=null;if(_0x4e5b09){_0x9e7ad4=this[_0xfceaba(0x158)](_0xfceaba(0x1d4),_0x4a98ee,_0x49252a,_0x4e5b09);const _0x2f1197=await this[_0xfceaba(0x240)](_0x9e7ad4);if(_0x2f1197)return _0x2f1197;}const _0x3ed927=redisClient['getClient'](),_0x2679a8=await _0x3ed927[_0xfceaba(0x21e)](LUA_GENERATE_NUMBER,0x2,_0x314a03,_0x3d8dbc,_0x408638?'1':'0',_0x500b9f[_0xfceaba(0x18f)](String,_0x4b27bb)),_0x1d86f9=_0x2679a8[0x0],_0x23338c=_0x2679a8[0x1]===0x1,_0x4a989=this['_formatNumber']({'format':_0x1fb571,'prefix':_0x1d6e87,'datePrefix':_0x3d7c97,'separator':_0x208c05,'numDigits':_0x507ba1,'counterInt':_0x1d86f9}),_0x37e88a={'value':_0x4a989,'counter':_0x1d86f9,'resource':_0x4a98ee,'formatKey':_0x49252a,'isReused':_0x23338c,'generatedAt':new Date()[_0xfceaba(0x223)]()},_0x4d34ef=await this['_storeIdemCacheNX'](_0x9e7ad4,_0x37e88a);if(!_0x4d34ef[_0xfceaba(0x182)]){try{await _0x3ed927[_0xfceaba(0x21e)](LUA_RELEASE_NUMBER,0x1,_0x3d8dbc,String(_0x1d86f9),String(_0x4b27bb));}catch(_0xc224c2){logger['warn']({'event':_0xfceaba(0x225),'error':_0xc224c2[_0xfceaba(0x1ad)],'resource':_0x4a98ee,'formatKey':_0x49252a,'counterInt':_0x1d86f9},'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser');}return logger[_0xfceaba(0x191)]({'event':_0x500b9f[_0xfceaba(0x226)],'resource':_0x4a98ee,'formatKey':_0x49252a,'counter':_0x1d86f9},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x4d34ef['winnerResult'];}return this['_updateMeta'](_0x4a98ee,_0x49252a,{'lastValue':_0x4a989,'lastCounter':_0x1d86f9,'lastIsReused':_0x23338c,'lastGeneratedAt':_0x37e88a[_0xfceaba(0x153)]},_0x4b27bb),logger[_0xfceaba(0x191)]({'event':_0x500b9f[_0xfceaba(0x1dd)],'resource':_0x4a98ee,'formatKey':_0x49252a,'counter':_0x1d86f9,'isReused':_0x23338c},'ID\x20Generator\x20number:\x20'+_0x4a989),_0x37e88a;}async['releaseNumber'](_0x4b3bb8){const _0xd5424=a0_0x4d3c47,_0x53e685={'FezEm':_0xd5424(0x17e),'CjXss':_0xd5424(0x193),'ODZdN':function(_0x328138,_0x1d3bef){return _0x328138!==_0x1d3bef;},'cyHrD':_0xd5424(0x211),'TawES':function(_0x2fc093,_0x54573f){return _0x2fc093<_0x54573f;},'OXgEE':_0xd5424(0x17c),'CDXEl':'release','CZojk':function(_0x21a263,_0x120392){return _0x21a263(_0x120392);}};if(!this[_0xd5424(0x137)])throw new IdGeneratorError(_0x53e685['FezEm'],_0x53e685[_0xd5424(0x20c)]);let _0x28bb1f,_0x3cad09,_0x1eb90f,_0xbef406;const _0x202229=this[_0xd5424(0x1c9)](_0x4b3bb8[_0xd5424(0x218)]);if(_0x53e685['ODZdN'](_0x4b3bb8[_0xd5424(0x1c0)],undefined)&&_0x4b3bb8[_0xd5424(0x1c0)]!==null){this['_validateResource'](_0x4b3bb8[_0xd5424(0x1c2)]),_0x28bb1f=_0x4b3bb8[_0xd5424(0x1c2)];if(_0x53e685['ODZdN'](typeof _0x4b3bb8[_0xd5424(0x23b)],'string')||_0x4b3bb8['formatKey']['length']===0x0)throw new IdGeneratorError(_0xd5424(0x200),_0x53e685[_0xd5424(0x186)]);_0x3cad09=_0x4b3bb8['formatKey'];if(!Number['isInteger'](_0x4b3bb8['counterInt'])||_0x53e685['TawES'](_0x4b3bb8['counterInt'],0x1))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0xd5424(0x206)+_0x4b3bb8['counterInt']+')');_0x1eb90f=_0x4b3bb8[_0xd5424(0x1c0)];const _0x5daa4d=_0x3cad09[_0xd5424(0x171)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0xbef406=_0x5daa4d?_0x5daa4d[0x1]:_0x53e685['OXgEE'];}else{const _0x4e99ef=this['_validateNumberParams'](_0x4b3bb8),_0x1f2253=this[_0xd5424(0x199)]({'format':_0x4e99ef[_0xd5424(0x183)],'prefix':_0x4e99ef['prefix'],'separator':_0x4e99ef[_0xd5424(0x232)],'numDigits':_0x4e99ef[_0xd5424(0x142)],'number':_0x4b3bb8['number']});_0x28bb1f=_0x4e99ef[_0xd5424(0x1c2)],_0x3cad09=_0x1f2253['formatKey'],_0x1eb90f=_0x1f2253['counterInt'],_0xbef406=_0x4e99ef[_0xd5424(0x183)];}const _0x254ef1=this[_0xd5424(0x127)](_0x28bb1f,_0x3cad09),_0x3a644f=this[_0xd5424(0x1c3)](_0xbef406);let _0x18a27c=null;if(_0x202229){_0x18a27c=this['_buildIdemKey'](_0x53e685['CDXEl'],_0x28bb1f,_0x3cad09,_0x202229);const _0x5e89bb=await this['_retrieveIdemCache'](_0x18a27c);if(_0x5e89bb)return _0x5e89bb;}const _0xfcf38c=redisClient['getClient']();await _0xfcf38c['eval'](LUA_RELEASE_NUMBER,0x1,_0x254ef1,String(_0x1eb90f),_0x53e685[_0xd5424(0x15a)](String,_0x3a644f));const _0x5b058b={'released':!![],'resource':_0x28bb1f,'formatKey':_0x3cad09,'counter':_0x1eb90f,'releasedAt':new Date()[_0xd5424(0x223)]()};return await this[_0xd5424(0x143)](_0x18a27c,_0x5b058b),this[_0xd5424(0x234)](_0x28bb1f,_0x3cad09,{'lastReleasedCounter':_0x1eb90f,'lastReleasedAt':_0x5b058b[_0xd5424(0x178)]},_0x3a644f),logger['info']({'event':_0xd5424(0x1ac),'resource':_0x28bb1f,'formatKey':_0x3cad09,'counter':_0x1eb90f},'ID\x20Generator\x20number\x20released:\x20'+_0x1eb90f),_0x5b058b;}async[a0_0x4d3c47(0x17a)](_0x414b5c){const _0x5dfc8b=a0_0x4d3c47,_0x1b8e50={'Mgwlo':_0x5dfc8b(0x17e),'uLBSP':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','DOIaz':function(_0x5525d9,_0x40467b){return _0x5525d9*_0x40467b;},'aUCTT':_0x5dfc8b(0x1c2),'LnBBl':'formatKey','MtpIR':'format','iZGGW':_0x5dfc8b(0x232),'TftBo':'numDigits','ECQlE':'datePrefix','CwQcZ':function(_0x1e4a70,_0x288dec){return _0x1e4a70||_0x288dec;},'qPGOr':'expiresAt','NmRDy':_0x5dfc8b(0x21a),'GhlNu':function(_0x1cdcc5,_0x5033fe){return _0x1cdcc5(_0x5033fe);},'nGqly':function(_0x191830,_0x3ea6a6){return _0x191830(_0x3ea6a6);},'VEZKl':function(_0x29e8d7,_0x2693ae){return _0x29e8d7(_0x2693ae);},'GkDmn':_0x5dfc8b(0x1bf),'NIIMl':_0x5dfc8b(0x141),'JccgM':_0x5dfc8b(0x134),'sdmLL':_0x5dfc8b(0x1c6),'QcnDz':_0x5dfc8b(0x1a8)};if(!this['enabled'])throw new IdGeneratorError(_0x1b8e50['Mgwlo'],_0x1b8e50['uLBSP']);const _0x1538ba=this['_validateNumberParams'](_0x414b5c),_0x4335b4=this['_validateReserveTTL'](_0x414b5c['ttl']),_0x3076fe=this[_0x5dfc8b(0x1c9)](_0x414b5c['idempotencyKey']),{resource:_0x2980df,format:_0x47c51d,prefix:_0x7cd013,separator:_0x500f10,numDigits:_0x4d17cb,reuseDelete:_0x459972}=_0x1538ba,{formatKey:_0x2129a2,datePrefix:_0x36929e}=this[_0x5dfc8b(0x146)](_0x47c51d,_0x7cd013),_0x3325f3=this[_0x5dfc8b(0x1df)](_0x2980df,_0x2129a2),_0x567242=this['_buildReuseKey'](_0x2980df,_0x2129a2),_0x3d9f98=this[_0x5dfc8b(0x144)](_0x2980df,_0x2129a2),_0x1efea0=this['_getCounterTTL'](_0x47c51d);let _0x19e43f=null;if(_0x3076fe){_0x19e43f=this[_0x5dfc8b(0x158)](_0x5dfc8b(0x12f),_0x2980df,_0x2129a2,_0x3076fe);const _0x27b3bd=await this['_retrieveIdemCache'](_0x19e43f);if(_0x27b3bd)return _0x27b3bd;}const _0x2c0d4c=crypto[_0x5dfc8b(0x1d0)](),_0x31bb01=this[_0x5dfc8b(0x20d)](_0x2c0d4c),_0x1fa864=this[_0x5dfc8b(0x20a)](),_0x5a7d96=Date[_0x5dfc8b(0x16f)](),_0x4b7653=_0x5a7d96+_0x1b8e50['DOIaz'](_0x4335b4,0x3e8),_0x16cf60=_0x4335b4*0x3e8,_0x47459e=new Date(_0x5a7d96)['toISOString'](),_0x20a50f=new Date(_0x4b7653)['toISOString'](),_0x1b57ea=[_0x1b8e50['aUCTT'],_0x2980df,_0x1b8e50['LnBBl'],_0x2129a2,_0x1b8e50[_0x5dfc8b(0x18e)],_0x47c51d,_0x5dfc8b(0x152),_0x7cd013,_0x1b8e50[_0x5dfc8b(0x1b2)],_0x500f10,_0x1b8e50[_0x5dfc8b(0x248)],String(_0x4d17cb),_0x1b8e50[_0x5dfc8b(0x252)],_0x1b8e50[_0x5dfc8b(0x19d)](_0x36929e,''),'createdAt',_0x47459e,_0x1b8e50['qPGOr'],_0x20a50f,_0x1b8e50[_0x5dfc8b(0x1db)],_0x1b8e50[_0x5dfc8b(0x1bb)](String,_0x16cf60)];_0x3076fe&&_0x1b57ea[_0x5dfc8b(0x1c1)]('idemKey',_0x3076fe);const _0x22fb3f=redisClient['getClient'](),_0x4a6521=await _0x22fb3f[_0x5dfc8b(0x21e)](LUA_RESERVE_NUMBER,0x3,_0x3325f3,_0x567242,_0x3d9f98,_0x459972?'1':'0',_0x1b8e50['nGqly'](String,_0x1efea0),_0x2c0d4c,_0x31bb01,String(_0x16cf60),_0x1b8e50[_0x5dfc8b(0x138)](String,_0x4b7653),String(_0x5a7d96),_0x1fa864,..._0x1b57ea),_0x4f2e08=_0x4a6521[0x0],_0x590537=_0x4a6521[0x1]===0x1,_0x162fc9=_0x4a6521[0x2]||0x0;let _0x4dd106;try{_0x4dd106=this[_0x5dfc8b(0x1e1)]({'format':_0x47c51d,'prefix':_0x7cd013,'datePrefix':_0x36929e,'separator':_0x500f10,'numDigits':_0x4d17cb,'counterInt':_0x4f2e08});}catch(_0x16467a){try{await _0x22fb3f[_0x5dfc8b(0x21e)](LUA_CANCEL_RESERVATION,0x3,_0x31bb01,_0x3d9f98,_0x567242,_0x2c0d4c,_0x1b8e50[_0x5dfc8b(0x1bb)](String,_0x1efea0));}catch(_0x3b12c3){logger['warn']({'event':_0x1b8e50['GkDmn'],'error':_0x3b12c3[_0x5dfc8b(0x1ad)],'resource':_0x2980df,'formatKey':_0x2129a2,'counterInt':_0x4f2e08,'token':_0x2c0d4c},_0x1b8e50['NIIMl']);}throw _0x16467a;}try{await _0x22fb3f[_0x5dfc8b(0x233)](_0x31bb01,'value',_0x4dd106);}catch(_0x291c25){logger['warn']({'event':_0x1b8e50['JccgM'],'error':_0x291c25['message'],'resource':_0x2980df,'formatKey':_0x2129a2,'counterInt':_0x4f2e08,'token':_0x2c0d4c},_0x1b8e50['sdmLL']);}const _0x4149be={'token':_0x2c0d4c,'value':_0x4dd106,'counter':_0x4f2e08,'resource':_0x2980df,'formatKey':_0x2129a2,'isReused':_0x590537,'createdAt':_0x47459e,'expiresAt':_0x20a50f,'reapedCount':_0x162fc9},_0x1ae46a=await this[_0x5dfc8b(0x17f)](_0x19e43f,_0x4149be);if(!_0x1ae46a[_0x5dfc8b(0x182)]){try{await _0x22fb3f['eval'](LUA_CANCEL_RESERVATION,0x3,_0x31bb01,_0x3d9f98,_0x567242,_0x2c0d4c,_0x1b8e50[_0x5dfc8b(0x1d1)](String,_0x1efea0));}catch(_0x535f0e){logger['warn']({'event':_0x1b8e50['QcnDz'],'error':_0x535f0e[_0x5dfc8b(0x1ad)],'resource':_0x2980df,'formatKey':_0x2129a2,'counterInt':_0x4f2e08,'token':_0x2c0d4c},_0x5dfc8b(0x19a));}return logger['info']({'event':'idgen_reserve_idem_loser','resource':_0x2980df,'formatKey':_0x2129a2,'counter':_0x4f2e08,'token':_0x2c0d4c},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x1ae46a['winnerResult'];}return this['_updateMeta'](_0x2980df,_0x2129a2,{'lastReservedCounter':_0x4f2e08,'lastReservedAt':_0x47459e,'lastReapedCount':_0x162fc9},_0x1efea0),logger[_0x5dfc8b(0x191)]({'event':'idgen_number_reserved','resource':_0x2980df,'formatKey':_0x2129a2,'counter':_0x4f2e08,'isReused':_0x590537,'token':_0x2c0d4c,'ttl':_0x4335b4,'reapedCount':_0x162fc9},_0x5dfc8b(0x1aa)+_0x4dd106+'\x20(token='+_0x2c0d4c+')'),_0x4149be;}async['confirmReservation'](_0x21a1a1){const _0x53498e=a0_0x4d3c47,_0x4664e8={'mmoXj':'IDGEN_DISABLED','gPfRs':'ID\x20Generator\x20is\x20disabled','rotBt':function(_0x46e68f,_0x58ac75,_0x2bda00){return _0x46e68f(_0x58ac75,_0x2bda00);},'WqiMF':_0x53498e(0x17c)};if(!this['enabled'])throw new IdGeneratorError(_0x4664e8['mmoXj'],_0x4664e8[_0x53498e(0x13c)]);const _0x254764=this[_0x53498e(0x162)](_0x21a1a1&&_0x21a1a1[_0x53498e(0x214)]),_0x2c6a5f=this['_validateIdempotencyKey'](_0x21a1a1&&_0x21a1a1['idempotencyKey']);let _0x3b20ce=null;if(_0x2c6a5f){_0x3b20ce=idempotencyManager[_0x53498e(0x19c)]('idgen',_0x53498e(0x202),_0x254764+':'+_0x2c6a5f);const _0x1dd459=await this[_0x53498e(0x240)](_0x3b20ce);if(_0x1dd459)return _0x1dd459;}const _0x1676f3=await this[_0x53498e(0x215)](_0x254764),_0x20a7b1=redisClient['getClient'](),_0x4d31ab=await _0x20a7b1[_0x53498e(0x21e)](LUA_CONFIRM_RESERVATION,0x2,_0x1676f3['rsvKey'],_0x1676f3[_0x53498e(0x18a)],_0x254764);if(!_0x4d31ab||_0x4d31ab[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x53498e(0x224)+_0x254764,{'token':_0x254764});const _0x188813=_0x4664e8[_0x53498e(0x13b)](parseInt,_0x4d31ab[0x1],0xa),_0x306a96=_0x4d31ab[0x2],_0x2e8acc=_0x4d31ab[0x3],_0x1df51b=new Date()[_0x53498e(0x223)](),_0x2bc6a1={'confirmed':!![],'token':_0x254764,'value':_0x306a96,'counter':_0x188813,'resource':_0x1676f3['resource'],'formatKey':_0x2e8acc,'confirmedAt':_0x1df51b};await this['_storeIdemCache'](_0x3b20ce,_0x2bc6a1);const _0x22940f=_0x2e8acc['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3b7f70=_0x22940f?_0x22940f[0x1]:_0x4664e8[_0x53498e(0x1cd)],_0x41ed70=this['_getCounterTTL'](_0x3b7f70);return this[_0x53498e(0x234)](_0x1676f3[_0x53498e(0x1c2)],_0x2e8acc,{'lastConfirmedCounter':_0x188813,'lastConfirmedAt':_0x1df51b},_0x41ed70),logger['info']({'event':_0x53498e(0x1fd),'resource':_0x1676f3[_0x53498e(0x1c2)],'formatKey':_0x2e8acc,'counter':_0x188813,'token':_0x254764},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0x306a96+_0x53498e(0x166)+_0x254764+')'),_0x2bc6a1;}async['cancelReservation'](_0x1d7066){const _0x5201df=a0_0x4d3c47,_0x193e62={'gwszS':_0x5201df(0x17e),'tCLEZ':'ID\x20Generator\x20is\x20disabled','svFnj':'text','MJZeC':function(_0x5f1aaa,_0x36ca93){return _0x5f1aaa(_0x36ca93);},'kxqPl':_0x5201df(0x1a1)};if(!this['enabled'])throw new IdGeneratorError(_0x193e62['gwszS'],_0x193e62['tCLEZ']);const _0x46d16d=this[_0x5201df(0x162)](_0x1d7066&&_0x1d7066[_0x5201df(0x214)]),_0x285c87=this['_validateIdempotencyKey'](_0x1d7066&&_0x1d7066['idempotencyKey']);let _0x848411=null;if(_0x285c87){_0x848411=idempotencyManager[_0x5201df(0x19c)](_0x5201df(0x244),'reserve_cancel',_0x46d16d+':'+_0x285c87);const _0x1f61c5=await this[_0x5201df(0x240)](_0x848411);if(_0x1f61c5)return _0x1f61c5;}const _0xbb7b24=await this['_getReservationContext'](_0x46d16d),_0x5b541c=this[_0x5201df(0x127)](_0xbb7b24[_0x5201df(0x1c2)],_0xbb7b24['formatKey']),_0x5d0a31=_0xbb7b24[_0x5201df(0x23b)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3703d5=_0x5d0a31?_0x5d0a31[0x1]:_0x193e62[_0x5201df(0x1b7)],_0xae43f9=this[_0x5201df(0x1c3)](_0x3703d5),_0x5a4ac2=redisClient['getClient'](),_0x2321b9=await _0x5a4ac2[_0x5201df(0x21e)](LUA_CANCEL_RESERVATION,0x3,_0xbb7b24['rsvKey'],_0xbb7b24['rsvIdxKey'],_0x5b541c,_0x46d16d,_0x193e62['MJZeC'](String,_0xae43f9));if(!_0x2321b9||_0x2321b9[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x46d16d,{'token':_0x46d16d});const _0x2cf733=parseInt(_0x2321b9[0x1],0xa),_0x1fa628=_0x2321b9[0x2],_0x5d2a85=_0x2321b9[0x3],_0x4ebfaa=new Date()[_0x5201df(0x223)](),_0x542949={'cancelled':!![],'token':_0x46d16d,'value':_0x1fa628,'counter':_0x2cf733,'resource':_0xbb7b24['resource'],'formatKey':_0x5d2a85,'releasedToReuse':!![],'cancelledAt':_0x4ebfaa};return await this['_storeIdemCache'](_0x848411,_0x542949),this['_updateMeta'](_0xbb7b24['resource'],_0x5d2a85,{'lastCancelledCounter':_0x2cf733,'lastCancelledAt':_0x4ebfaa},_0xae43f9),logger[_0x5201df(0x191)]({'event':_0x193e62[_0x5201df(0x1b0)],'resource':_0xbb7b24[_0x5201df(0x1c2)],'formatKey':_0x5d2a85,'counter':_0x2cf733,'token':_0x46d16d},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x1fa628+_0x5201df(0x166)+_0x46d16d+')'),_0x542949;}async['extendReservation'](_0x84adec){const _0x469a94=a0_0x4d3c47,_0x34d576={'ZVFZt':_0x469a94(0x193),'JqTci':'idgen','gNYuv':'reserve_extend','NIxEc':function(_0x4054a5,_0x82e00a){return _0x4054a5+_0x82e00a;},'WpVcB':function(_0x3edbe8,_0x1f61f8){return _0x3edbe8*_0x1f61f8;},'DarPE':function(_0x4f2fce,_0x338e2a){return _0x4f2fce(_0x338e2a);},'URswl':function(_0x2df2f5,_0x5875e3){return _0x2df2f5!==_0x5875e3;}};if(!this['enabled'])throw new IdGeneratorError(_0x469a94(0x17e),_0x34d576['ZVFZt']);const _0x11de0b=this[_0x469a94(0x162)](_0x84adec&&_0x84adec['token']),_0x32a862=this['_validateReserveTTL'](_0x84adec&&_0x84adec[_0x469a94(0x128)]),_0x15a3ca=this['_validateIdempotencyKey'](_0x84adec&&_0x84adec['idempotencyKey']);let _0x2295f7=null;if(_0x15a3ca){_0x2295f7=idempotencyManager['buildDeterministicKey'](_0x34d576['JqTci'],_0x34d576['gNYuv'],_0x11de0b+':'+_0x15a3ca);const _0xa1cf8b=await this['_retrieveIdemCache'](_0x2295f7);if(_0xa1cf8b)return _0xa1cf8b;}const _0x4d7136=await this['_getReservationContext'](_0x11de0b),_0x15103e=Date[_0x469a94(0x16f)](),_0x26d2dc=_0x34d576[_0x469a94(0x179)](_0x15103e,_0x34d576[_0x469a94(0x1f3)](_0x32a862,0x3e8)),_0x9a35f4=_0x34d576[_0x469a94(0x1f3)](_0x32a862,0x3e8),_0x2d559b=new Date(_0x26d2dc)['toISOString'](),_0x3df7c9=redisClient['getClient'](),_0x3aebd0=await _0x3df7c9['eval'](LUA_EXTEND_RESERVATION,0x2,_0x4d7136[_0x469a94(0x175)],_0x4d7136[_0x469a94(0x18a)],_0x11de0b,String(_0x9a35f4),_0x34d576['DarPE'](String,_0x26d2dc),_0x2d559b);if(!_0x3aebd0||_0x34d576[_0x469a94(0x1f9)](_0x3aebd0[0x0],0x1))throw new IdGeneratorError(_0x469a94(0x16a),_0x469a94(0x224)+_0x11de0b,{'token':_0x11de0b});const _0x2a04a8=_0x3aebd0[0x1],_0x1023ad=parseInt(_0x3aebd0[0x2],0xa),_0x18896b=_0x3aebd0[0x3],_0x44887e=_0x3aebd0[0x4],_0x17a716=new Date(_0x15103e)[_0x469a94(0x223)](),_0x4e822c={'extended':!![],'token':_0x11de0b,'previousExpiresAt':_0x2a04a8,'expiresAt':_0x2d559b,'ttlMs':_0x9a35f4,'resource':_0x4d7136['resource'],'formatKey':_0x44887e,'counter':_0x1023ad,'value':_0x18896b,'extendedAt':_0x17a716};await this[_0x469a94(0x143)](_0x2295f7,_0x4e822c);const _0x28427b=_0x44887e['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x5cc23b=_0x28427b?_0x28427b[0x1]:'text',_0x51d66a=this['_getCounterTTL'](_0x5cc23b);return this['_updateMeta'](_0x4d7136['resource'],_0x44887e,{'lastExtendedCounter':_0x1023ad,'lastExtendedAt':_0x17a716},_0x51d66a),logger['info']({'event':'idgen_reservation_extended','resource':_0x4d7136['resource'],'formatKey':_0x44887e,'counter':_0x1023ad,'token':_0x11de0b,'ttl':_0x32a862},_0x469a94(0x22f)+_0x18896b+_0x469a94(0x166)+_0x11de0b+',\x20+'+_0x32a862+'s)'),_0x4e822c;}async['getReservation'](_0x12ef01){const _0x5f449a=a0_0x4d3c47,_0x10c67b={'vMVYc':'IDGEN_DISABLED','kAYAb':function(_0x34df7a,_0x15944d){return _0x34df7a===_0x15944d;},'dUUMG':function(_0x2d5b78,_0x366096,_0x3a20fa){return _0x2d5b78(_0x366096,_0x3a20fa);},'xstBi':_0x5f449a(0x1d4)};if(!this[_0x5f449a(0x137)])throw new IdGeneratorError(_0x10c67b[_0x5f449a(0x1e8)],'ID\x20Generator\x20is\x20disabled');const _0x108086=this[_0x5f449a(0x162)](_0x12ef01&&_0x12ef01[_0x5f449a(0x214)]),_0xca98f=this[_0x5f449a(0x20d)](_0x108086),_0x192a92=redisClient['getClient'](),_0x36b8e7=_0x192a92['pipeline']();_0x36b8e7[_0x5f449a(0x15e)](_0xca98f),_0x36b8e7['pttl'](_0xca98f);const _0x1fbed4=await _0x36b8e7[_0x5f449a(0x131)](),_0x2fd50a=_0x1fbed4&&_0x1fbed4[0x0]&&_0x1fbed4[0x0][0x1],_0x5a8299=_0x1fbed4&&_0x1fbed4[0x1]&&_0x1fbed4[0x1][0x1];if(!_0x2fd50a||_0x10c67b['kAYAb'](Object['keys'](_0x2fd50a)[_0x5f449a(0x1ce)],0x0))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x5f449a(0x224)+_0x108086,{'token':_0x108086});return{'token':_0x108086,'resource':_0x2fd50a['resource']||null,'formatKey':_0x2fd50a[_0x5f449a(0x23b)]||null,'format':_0x2fd50a[_0x5f449a(0x183)]||null,'prefix':_0x2fd50a[_0x5f449a(0x152)]||'','separator':_0x2fd50a['separator']||'','numDigits':_0x2fd50a['numDigits']?parseInt(_0x2fd50a['numDigits'],0xa):null,'datePrefix':_0x2fd50a['datePrefix']||'','counter':_0x2fd50a[_0x5f449a(0x1b6)]?_0x10c67b['dUUMG'](parseInt,_0x2fd50a['counter'],0xa):null,'value':_0x2fd50a['value']||null,'isReused':_0x10c67b[_0x5f449a(0x18c)](_0x2fd50a[_0x5f449a(0x1bc)],'1')||_0x10c67b['kAYAb'](_0x2fd50a[_0x5f449a(0x1bc)],0x1),'createdAt':_0x2fd50a['createdAt']||null,'expiresAt':_0x2fd50a[_0x5f449a(0x1ed)]||null,'ttlRemainingMs':typeof _0x5a8299===_0x10c67b[_0x5f449a(0x185)]&&_0x5a8299>=0x0?_0x5a8299:null};}async['_getReservationContext'](_0x59f427){const _0x58a8da=a0_0x4d3c47,_0x88fa2c={'SHhbe':_0x58a8da(0x1c2),'KVMkN':function(_0x565e82,_0xeb7e41){return _0x565e82||_0xeb7e41;},'TEYmj':'IDGEN_RESERVATION_NOT_FOUND'},_0x10aff3=this[_0x58a8da(0x20d)](_0x59f427),_0x495b11=redisClient['getClient'](),_0x5e46fe=await _0x495b11['hmget'](_0x10aff3,_0x88fa2c['SHhbe'],_0x58a8da(0x23b)),_0x51aaf2=_0x5e46fe&&_0x5e46fe[0x0],_0x6a0b5c=_0x5e46fe&&_0x5e46fe[0x1];if(_0x88fa2c[_0x58a8da(0x1af)](!_0x51aaf2,!_0x6a0b5c))throw new IdGeneratorError(_0x88fa2c[_0x58a8da(0x165)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x59f427,{'token':_0x59f427});return{'resource':_0x51aaf2,'formatKey':_0x6a0b5c,'rsvKey':_0x10aff3,'rsvIdxKey':this['_buildReservationIndexKey'](_0x51aaf2,_0x6a0b5c)};}async[a0_0x4d3c47(0x1a0)](_0xeb1ace){const _0x20c01d=a0_0x4d3c47,_0x56ad9e={'QktkX':'random','EiJAB':function(_0x336b1f,_0x18e5ba){return _0x336b1f===_0x18e5ba;},'DcjwU':function(_0x1c7304,_0x13c10d){return _0x1c7304+_0x13c10d;},'Uabrh':function(_0x4e127b,_0x16ac46){return _0x4e127b*_0x16ac46;},'aGFnx':function(_0x4562ba,_0x5bd1ef){return _0x4562ba||_0x5bd1ef;}};if(!this[_0x20c01d(0x137)])throw new IdGeneratorError(_0x20c01d(0x17e),_0x20c01d(0x193));this['_validateResource'](_0xeb1ace['resource']),this['_validatePattern'](_0xeb1ace['pattern']);const _0x26b42b=this[_0x20c01d(0x1a7)](_0xeb1ace['ttl']),_0x691534=this['_validateMaxRetry'](_0xeb1ace[_0x20c01d(0x1ea)]),_0x41177c=this['_validateIdempotencyKey'](_0xeb1ace['idempotencyKey']),_0x569590=_0xeb1ace['ensureUnique']===!![],{resource:_0x408c9b,pattern:_0x2fa716}=_0xeb1ace;let _0x4371c9=null;if(_0x41177c){_0x4371c9=this['_buildIdemKey'](_0x56ad9e[_0x20c01d(0x1fb)],_0x408c9b,null,_0x41177c);const _0x3cc876=await this['_retrieveIdemCache'](_0x4371c9);if(_0x3cc876)return _0x3cc876;}const _0x2cf043=redisClient[_0x20c01d(0x156)]();let _0x2fecd8=null,_0x4d7ee0=0x0;if(!_0x569590)_0x2fecd8=this[_0x20c01d(0x1d6)](_0x2fa716),_0x4d7ee0=0x1;else{for(let _0x510dc1=0x0;_0x510dc1<_0x691534;_0x510dc1++){_0x4d7ee0++;const _0x5ef122=this['_generateFromPattern'](_0x2fa716);if(_0x26b42b){const _0xadec6b=this['_buildActiveKey'](_0x408c9b,_0x5ef122),_0x58dabb=await _0x2cf043['set'](_0xadec6b,'1','EX',_0x26b42b,'NX');if(_0x56ad9e['EiJAB'](_0x58dabb,'OK')){_0x2fecd8=_0x5ef122;break;}}else{const _0x5bd225=this[_0x20c01d(0x12a)](_0x408c9b),_0x18078b=await _0x2cf043[_0x20c01d(0x1ec)](_0x5bd225,_0x5ef122);if(_0x56ad9e['EiJAB'](_0x18078b,0x1)){_0x2fecd8=_0x5ef122;break;}}}if(_0x56ad9e[_0x20c01d(0x12b)](_0x2fecd8,null))throw new IdGeneratorError(_0x20c01d(0x1a3),_0x20c01d(0x207)+_0x691534+_0x20c01d(0x204),{'resource':_0x408c9b,'pattern':_0x2fa716,'maxRetry':_0x691534});}const _0x5961ca={'value':_0x2fecd8,'resource':_0x408c9b,'pattern':_0x2fa716,'attemptCount':_0x4d7ee0,'generatedAt':new Date()['toISOString']()};_0x26b42b&&_0x569590&&(_0x5961ca['expiresAt']=new Date(_0x56ad9e[_0x20c01d(0x149)](Date[_0x20c01d(0x16f)](),_0x56ad9e['Uabrh'](_0x26b42b,0x3e8)))['toISOString']());const _0x41c464=await this[_0x20c01d(0x17f)](_0x4371c9,_0x5961ca);if(!_0x41c464[_0x20c01d(0x182)])return _0x569590&&await this[_0x20c01d(0x1d9)](_0x408c9b,_0x2fecd8,_0x26b42b),logger[_0x20c01d(0x191)]({'event':_0x20c01d(0x222),'resource':_0x408c9b,'pattern':_0x2fa716,'value':_0x2fecd8},_0x20c01d(0x13e)),_0x41c464['winnerResult'];return logger[_0x20c01d(0x191)]({'event':'idgen_random_generated','resource':_0x408c9b,'pattern':_0x2fa716,'attemptCount':_0x4d7ee0,'ensureUnique':_0x569590,'ttl':_0x56ad9e['aGFnx'](_0x26b42b,0x0)},'ID\x20Generator\x20random:\x20'+_0x2fecd8),_0x5961ca;}async[a0_0x4d3c47(0x1fc)](_0x2630e8){const _0x19f5e1=a0_0x4d3c47,_0x3d14ff={'thWSq':function(_0x388ef1,_0x21f9e1){return _0x388ef1==_0x21f9e1;},'uCaEL':function(_0xcb3ac2,_0x610e55){return _0xcb3ac2<_0x610e55;},'kSWFy':function(_0x1132f8,_0x14a92e){return _0x1132f8>_0x14a92e;},'udDIJ':'IDGEN_INVALID_DIGITS'},_0x1bd1bc=_0x3d14ff[_0x19f5e1(0x236)](_0x2630e8[_0x19f5e1(0x188)],null)?this['defaultPinDigits']:_0x2630e8['digits'];if(!Number[_0x19f5e1(0x14f)](_0x1bd1bc)||_0x3d14ff[_0x19f5e1(0x14d)](_0x1bd1bc,MIN_PIN_DIGITS)||_0x3d14ff[_0x19f5e1(0x210)](_0x1bd1bc,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x3d14ff['udDIJ'],_0x19f5e1(0x220)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x1bd1bc+')');const _0x3fa9b7='9'[_0x19f5e1(0x201)](_0x1bd1bc);return this['random']({'resource':_0x2630e8['resource'],'pattern':_0x3fa9b7,'ensureUnique':_0x2630e8['ensureUnique']===!![],'ttl':_0x2630e8[_0x19f5e1(0x128)],'maxRetry':_0x2630e8[_0x19f5e1(0x1ea)],'idempotencyKey':_0x2630e8[_0x19f5e1(0x218)]});}async['serial'](_0x573bf6){const _0xb6b3a1=a0_0x4d3c47,_0x3af6fc={'hqsXR':function(_0x37ef78,_0x27efce){return _0x37ef78!==_0x27efce;}},_0x56a167=_0x573bf6['pattern']||this[_0xb6b3a1(0x1e9)];return this[_0xb6b3a1(0x1a0)]({'resource':_0x573bf6[_0xb6b3a1(0x1c2)],'pattern':_0x56a167,'ensureUnique':_0x3af6fc['hqsXR'](_0x573bf6['ensureUnique'],![]),'ttl':_0x573bf6['ttl'],'maxRetry':_0x573bf6[_0xb6b3a1(0x1ea)],'idempotencyKey':_0x573bf6[_0xb6b3a1(0x218)]});}async['code'](_0x21c220){const _0x361b2d=a0_0x4d3c47,_0x2155dd=_0x21c220[_0x361b2d(0x18b)]||this['defaultCodePattern'];return this['random']({'resource':_0x21c220[_0x361b2d(0x1c2)],'pattern':_0x2155dd,'ensureUnique':_0x21c220[_0x361b2d(0x157)]!==![],'ttl':_0x21c220['ttl'],'maxRetry':_0x21c220['maxRetry'],'idempotencyKey':_0x21c220['idempotencyKey']});}async[a0_0x4d3c47(0x19f)](_0x24a00c){const _0xcfc9e2=a0_0x4d3c47,_0x1e98ce={'ZjRjc':'IDGEN_INVALID_NUMBER','kvNtg':'value\x20is\x20required','klZZx':'idgen_consumed'};if(!this[_0xcfc9e2(0x137)])throw new IdGeneratorError(_0xcfc9e2(0x17e),_0xcfc9e2(0x193));this[_0xcfc9e2(0x241)](_0x24a00c[_0xcfc9e2(0x1c2)]);if(typeof _0x24a00c[_0xcfc9e2(0x1b5)]!=='string'||_0x24a00c['value'][_0xcfc9e2(0x1ce)]===0x0)throw new IdGeneratorError(_0x1e98ce['ZjRjc'],_0x1e98ce[_0xcfc9e2(0x231)]);const {resource:_0x531c55,value:_0x1e903b}=_0x24a00c,_0x3061dd=redisClient[_0xcfc9e2(0x156)](),_0x2ddc62=this['_buildActiveKey'](_0x531c55,_0x1e903b),_0x1150c9=this['_buildIssuedKey'](_0x531c55),[_0x123d6d,_0x2104fa]=await Promise['all']([_0x3061dd['del'](_0x2ddc62),_0x3061dd[_0xcfc9e2(0x219)](_0x1150c9,_0x1e903b)]),_0xc0cecb=_0x123d6d+_0x2104fa>0x0;return logger['info']({'event':_0x1e98ce['klZZx'],'resource':_0x531c55,'value':_0x1e903b,'consumed':_0xc0cecb},_0xcfc9e2(0x242)+_0x1e903b),{'consumed':_0xc0cecb,'resource':_0x531c55,'value':_0x1e903b,'consumedAt':new Date()[_0xcfc9e2(0x223)]()};}async[a0_0x4d3c47(0x1f2)](_0x4400d3){const _0x43b6c8=a0_0x4d3c47,_0x170237={'qDnKS':function(_0x1222b8,_0x491393){return _0x1222b8===_0x491393;},'bSjfy':'IDGEN_INVALID_FORMAT','RhMIF':function(_0x3a9854,_0x3dee39,_0x213319){return _0x3a9854(_0x3dee39,_0x213319);},'emZMr':function(_0x32cf76,_0x36e74f){return _0x32cf76||_0x36e74f;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x4400d3['resource']);const _0x277617=_0x4400d3['mode']||_0x43b6c8(0x1d4),_0x18c41e=redisClient['getClient']();if(_0x170237['qDnKS'](_0x277617,_0x43b6c8(0x1d4))){const _0x22281c=(_0x4400d3[_0x43b6c8(0x183)]||_0x43b6c8(0x17c))[_0x43b6c8(0x23d)]();if(!ALLOWED_FORMATS['has'](_0x22281c))throw new IdGeneratorError(_0x170237[_0x43b6c8(0x1eb)],_0x43b6c8(0x198)+_0x4400d3[_0x43b6c8(0x183)]);const {formatKey:_0x296ce3}=this[_0x43b6c8(0x146)](_0x22281c,_0x4400d3['prefix']||''),_0x6a631=this[_0x43b6c8(0x1df)](_0x4400d3['resource'],_0x296ce3),_0x26aa17=this['_buildReuseKey'](_0x4400d3[_0x43b6c8(0x1c2)],_0x296ce3),[_0x39a929,_0x19a44e]=await Promise['all']([_0x18c41e['get'](_0x6a631),_0x18c41e[_0x43b6c8(0x1da)](_0x26aa17)]);return{'resource':_0x4400d3['resource'],'mode':_0x43b6c8(0x1d4),'formatKey':_0x296ce3,'currentCounter':_0x170237[_0x43b6c8(0x213)](parseInt,_0x39a929,0xa)||0x0,'reusePoolSize':_0x19a44e||0x0};}if(_0x170237[_0x43b6c8(0x1d5)](_0x277617,'random')){const _0xf119a9=this[_0x43b6c8(0x12a)](_0x4400d3[_0x43b6c8(0x1c2)]),_0x9301df=await _0x18c41e[_0x43b6c8(0x1c7)](_0xf119a9);return{'resource':_0x4400d3['resource'],'mode':_0x43b6c8(0x1a0),'issuedCount':_0x170237[_0x43b6c8(0x161)](_0x9301df,0x0)};}throw new IdGeneratorError(_0x43b6c8(0x1f0),_0x43b6c8(0x174)+_0x277617);}async[a0_0x4d3c47(0x147)](_0x1419a1){const _0x184549=a0_0x4d3c47,_0x3d1fc2={'lWOGx':_0x184549(0x1d4)},_0x4a1957=await this[_0x184549(0x1f2)](_0x1419a1);if(_0x4a1957['mode']===_0x3d1fc2['lWOGx']){const _0x57c2c8=redisClient['getClient'](),_0x8439=this[_0x184549(0x169)](_0x1419a1[_0x184549(0x1c2)],_0x4a1957[_0x184549(0x23b)]),_0x3b953e=this['_buildReuseKey'](_0x1419a1[_0x184549(0x1c2)],_0x4a1957['formatKey']),[_0x4e6dbd,_0x306ee4]=await Promise['all']([_0x57c2c8[_0x184549(0x15e)](_0x8439),_0x57c2c8[_0x184549(0x13d)](_0x3b953e,0x0,-0x1)]);return{..._0x4a1957,'reusePoolValues':_0x306ee4[_0x184549(0x1f6)](_0x1afe0f=>parseInt(_0x1afe0f,0xa)),'meta':_0x4e6dbd&&Object[_0x184549(0x170)](_0x4e6dbd)['length']>0x0?_0x4e6dbd:null};}return _0x4a1957;}async['reset'](_0x1b7d18){const _0x5b2b9b=a0_0x4d3c47,_0x47678a={'kazuP':_0x5b2b9b(0x17e),'CeFBE':'IDGEN_RESET_NOT_ALLOWED','ZWYTp':_0x5b2b9b(0x1dc),'JwSck':_0x5b2b9b(0x1d4),'eJfCt':_0x5b2b9b(0x17c),'revdz':_0x5b2b9b(0x243),'krxBv':_0x5b2b9b(0x20b),'HZBBf':'meta','wxecx':function(_0x31ab1a,_0x1929c4){return _0x31ab1a===_0x1929c4;},'dhMIY':'issued','ItdXk':_0x5b2b9b(0x1f0)};if(!this['enabled'])throw new IdGeneratorError(_0x47678a[_0x5b2b9b(0x181)],_0x5b2b9b(0x193));if(!this['allowReset'])throw new IdGeneratorError(_0x47678a[_0x5b2b9b(0x22c)],_0x47678a['ZWYTp']);this[_0x5b2b9b(0x241)](_0x1b7d18['resource']);const _0x4061c4=_0x1b7d18['mode']||'number',_0x4eb215=redisClient['getClient']();if(_0x4061c4===_0x47678a[_0x5b2b9b(0x1de)]){const _0x427236=(_0x1b7d18[_0x5b2b9b(0x183)]||_0x47678a[_0x5b2b9b(0x197)])[_0x5b2b9b(0x23d)]();if(!ALLOWED_FORMATS['has'](_0x427236))throw new IdGeneratorError(_0x47678a['revdz'],'Invalid\x20format:\x20'+_0x1b7d18[_0x5b2b9b(0x183)]);const {formatKey:_0x491c65}=this[_0x5b2b9b(0x146)](_0x427236,_0x1b7d18[_0x5b2b9b(0x152)]||''),_0x85e55b=this['_buildSeqKey'](_0x1b7d18['resource'],_0x491c65),_0x38f010=this['_buildReuseKey'](_0x1b7d18['resource'],_0x491c65),_0x29b8ad=this['_buildMetaKey'](_0x1b7d18['resource'],_0x491c65);return await _0x4eb215[_0x5b2b9b(0x250)](_0x85e55b,_0x38f010,_0x29b8ad),logger[_0x5b2b9b(0x1b4)]({'event':_0x47678a['krxBv'],'resource':_0x1b7d18[_0x5b2b9b(0x1c2)],'mode':_0x47678a[_0x5b2b9b(0x1de)],'formatKey':_0x491c65},'ID\x20Generator\x20reset:\x20'+_0x1b7d18[_0x5b2b9b(0x1c2)]+':'+_0x491c65),{'reset':!![],'resource':_0x1b7d18['resource'],'mode':_0x47678a['JwSck'],'formatKey':_0x491c65,'deletedKeys':['seq',_0x5b2b9b(0x164),_0x47678a[_0x5b2b9b(0x160)]]};}if(_0x47678a['wxecx'](_0x4061c4,_0x5b2b9b(0x1a0))){const _0x497942=this['_buildIssuedKey'](_0x1b7d18[_0x5b2b9b(0x1c2)]);return await _0x4eb215['del'](_0x497942),logger['warn']({'event':'idgen_reset','resource':_0x1b7d18['resource'],'mode':_0x5b2b9b(0x1a0)},_0x5b2b9b(0x21d)+_0x1b7d18['resource']),{'reset':!![],'resource':_0x1b7d18['resource'],'mode':_0x5b2b9b(0x1a0),'deletedKeys':[_0x47678a[_0x5b2b9b(0x1ba)]]};}throw new IdGeneratorError(_0x47678a[_0x5b2b9b(0x238)],'Unknown\x20mode:\x20'+_0x4061c4);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module[a0_0x4d3c47(0x189)]=instance,module['exports']['IdGeneratorError']=IdGeneratorError;function a0_0x47cb(){const _0x434447=['A2f6Dva','C3rVCMvK','zM9YBwf0','CMy6AwrNzw46','Ehn0qMK','y3LiCKq','ihnLy29UzhmGkgDVDdOG','zgLNAxrZ','zxHWB3j0CW','CNn2swr4s2v5','Cgf0DgvYBG','A0fzqwi','AM9PBG','txrWsvi','Eu9Pvg4','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','Aw5MBW','surhru5Fsu5wquXjrf9srvnpvvjdrq','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','t3vXv3y','ignOyxjZicHNB3qGBgvUz3rOoIa','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','zuPMq3q','sw52ywXPzcbMB3jTyxq6ia','x3bHCNnLtNvTyMvY','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','swrhzw5LCMf0B3jfCNjVCG','yNvPBgrezxrLCM1PBMLZDgLJs2v5','q3Dry1O','mdeYmZq1nJC4owfIy2rLzG','y29UC3vTzq','CMfUzg9T','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','xLXKEW','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','twv0ysb1CgrHDguGzxjYB3i','surhru5Frevgqvvmvf9qsu5FreLhsvrt','zgv0ywLSCW','x3zHBgLKyxrLvfrm','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','x2LUAxrdB25MAwC','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','BwvZC2fNzq','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','s1znA04','A3HXugW','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','AvPhr1C','x2vUywjSzwq','D2fYBG','DMfSDwu','y291BNrLCG','C3zgBMO','yM9VBgvHBG','BeDRBgC','zgHnsvK','r2HStNu','AxnszxvZzwq','AwrLBvruta','C3rYAw5NAwz5','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','y291BNrLCKLUDa','ChvZAa','CMvZB3vYy2u','x2DLDenVDw50zxjuveW','DfbvCxy','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','C2nHCMq','CgfYC2u','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','mdeYmZq1nJC4oq','zg1jAvu','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','v3fPtuy','BgvUz3rO','x3bHzdi','CMfUzg9Tvvvjra','BKDXBhK','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','EvrUBxm','BNvTyMvY','CurUs1m','x2DLBMvYyxrLrNjVBvbHDhrLCM4','zgvMyxvSDenVzgvqyxr0zxjU','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','x3vUzg9syw5KB21szxnLCNzHDgLVBG','EMnHCMq','tM1srhK','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','CKTlBeu','sNDty2S','x2j1AwXKu2vXs2v5','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','x2zVCM1HDe51BwjLCG','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','sM9Rruq','tKnezeC','zgvMyxvSDfbPBKrPz2L0CW','x2rLzMf1BhrdB2rLugf0DgvYBG','BwHgqLu','DK1wwwm','zgvMyxvSDfnLCMLHBfbHDhrLCM4','Bwf4uMv0CNK','yLnQzNK','C2fKza','zxHWAxjLC0f0','DgvZDa','ExL5Ew1Tzgq','surhru5Fsu5wquXjrf9nt0rf','surhru5Fru5bqKXfra','CgvLAW','v3bwy0i','mti4nZC4zfjADMvY','tKvRwhq','BwfW','owDAAvfpDW','mtiXndG3mM9gD2j0za','vvjZD2W','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','uwT0A1G','CgLU','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','ExL5Eq','x2TLEvbYzwzPEa','surhru5Fsu5wquXjrf9ovu1crvi','CMvWzwf0','CMvZzxj2zv9JB25MAxjT','A0jtt0y','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','nZC3q2DUD1fc','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','q291BNrLCIbVDMvYzMXVDZOG','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','AwrNzw5FCMvZzxq','q2PyC3m','x2j1AwXKuMvZzxj2yxrPB25lzxK','wfHywc1ywfHylvHywfGTwfHywa','z2v0','A1nxrNK','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','uMHnsuy','Dg9Rzw4','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','zgvMyxvSDe1HEfjLDhj5','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','AwrLBxbVDgvUy3LlzxK','C3jLBq','DhrStxm','otryvM5Zq0m','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','zxzHBa','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','D2jqs1C','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','Dg9ju09tDhjPBMC','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','zgLpD0q','t1brsha','CMDxvui','otK5os05otK5','zKPRwfa','z2v0rNvSBfLLyxi','q2vgqKu','s0HVyNa','ignOyxjZ','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','CNn2oG','A3zoDgC','C2vWyxjHDg9Y','AhnLDa','x3vWzgf0zu1LDge','v05uAwO','DgHxu3e','DfPutfe','sxrKwgS','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','x2LKzw1uveW','zM9YBwf0s2v5','x2fSBg93uMvZzxq','Dg9mB3DLCKnHC2u','x3rLEhq','svv6yLG','x3jLDhjPzxzLswrLBunHy2HL','x3zHBgLKyxrLuMvZB3vYy2u','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','surhru5Fsu5wquXjrf9gt1jnqvq','AwrNzw4','x2nVDw50zxjuveXnyxa','veTgs0m','uuX0z2G','vgz0qM8','BMTuvKy','lI9SB2DNzxi','AwrNzw5Fy29UzMLNx2LUAxq','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','x2rLzMf1BhrtzxjPywXqyxr0zxjU','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','zw52','zgvS','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','runrBeu','x2LUAxrPywXPEMvK','qLPqAhy','x2j1AwXKuMv1C2vlzxK','DhrS','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','x2j1AwXKsxnZDwvKs2v5','rwLkqui','lcbNB3qG','DNvZthO','C2vXoG','CMvZzxj2zq','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','zxHLyW','Bwfnt2K','A1nYwKm','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','y3HUsKq','mty4ntyWDxv3uuvl','zw5HyMXLza','vKvAs2W','mZa1mJu2zhPiAwTv','AxnfBMfIBgvK','CM90qNq','z1bMuNm','ENjHBMDL','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','icHNB3q6ia','rMfPBgvKihrVignVBxbLBNnHDguGCMvZzxj2yxrPB24Gywz0zxiGy291BNrLCIbVDMvYzMXVDW','BNvTrgLNAxrZ','x3n0B3jLswrLBunHy2HL','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','x2j1AwXKrM9YBwf0s2v5','z2v0sw5MBW','mZb2s2vPAeG','rgnQD1u','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','CMvZzxj2zu1HEfruta','C3rYAw5N','DunHruW','ntm5ndaYmgfHC0XXwa','AxnjBNrLz2vY','lwrPz2L0ignHCgfJAxr5icG','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','ChjLzML4','z2vUzxjHDgvKqxq','BKX1Cwy','x3jLC2vYDMvezwzHDwX0vfrm','z2v0q2XPzw50','zw5ZDxjLvw5PCxvL','x2j1AwXKswrLBuTLEq','A2v5uhjLzML4','q1PVAMS','x2j1AwXKqwn0AxzLs2v5','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','AgDLDgfSBa','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','sfPcqMy','zw1Atxi','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','ExL5Ew1T','CMv1C2u','vevzBwO','icH0B2TLBJ0','BuDSzum','x3jLC2vYDMvnyxHuveW','x2j1AwXKtwv0yuTLEq','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','wejrrMq','AwrNzw5FAwrLBv9OAxq','u1v3EKW','BM93','A2v5CW','Bwf0y2G','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','x2vUC3vYzuLUAxrPywXPEMvK','vw5RBM93BIbTB2rLoIa','CNn2s2v5','ihbHCNrZkq','x3zHBgLKyxrLugf0DgvYBG','CMvSzwfZzwrbDa','tKL4rwm','CMvZzxj2zu51BwjLCG','x2rLzMf1BhrnyxHszxrYEq','Dgv4Da','C3bSAxq','surhru5FreLtqujmruq','x3n0B3jLswrLBunHy2HLtLG','mtaWnZu4q2XhCMPr'];a0_0x47cb=function(){return _0x434447;};return a0_0x47cb();}
1
+ 'use strict';function a0_0x559e(_0x4c7fc0,_0x51b9ef){_0x4c7fc0=_0x4c7fc0-0xc0;const _0x86e760=a0_0x86e7();let _0x559e5a=_0x86e760[_0x4c7fc0];if(a0_0x559e['BSRLtL']===undefined){var _0x5b4a48=function(_0x5c3453){const _0x48fb28='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1ce411='',_0x33cb38='';for(let _0x6dc3f3=0x0,_0x541aca,_0x37509c,_0x4b8eb3=0x0;_0x37509c=_0x5c3453['charAt'](_0x4b8eb3++);~_0x37509c&&(_0x541aca=_0x6dc3f3%0x4?_0x541aca*0x40+_0x37509c:_0x37509c,_0x6dc3f3++%0x4)?_0x1ce411+=String['fromCharCode'](0xff&_0x541aca>>(-0x2*_0x6dc3f3&0x6)):0x0){_0x37509c=_0x48fb28['indexOf'](_0x37509c);}for(let _0x477705=0x0,_0x1fc1be=_0x1ce411['length'];_0x477705<_0x1fc1be;_0x477705++){_0x33cb38+='%'+('00'+_0x1ce411['charCodeAt'](_0x477705)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x33cb38);};a0_0x559e['WfRTuI']=_0x5b4a48,a0_0x559e['kNGUkJ']={},a0_0x559e['BSRLtL']=!![];}const _0x1c0eeb=_0x86e760[0x0],_0x4093aa=_0x4c7fc0+_0x1c0eeb,_0x17b91a=a0_0x559e['kNGUkJ'][_0x4093aa];return!_0x17b91a?(_0x559e5a=a0_0x559e['WfRTuI'](_0x559e5a),a0_0x559e['kNGUkJ'][_0x4093aa]=_0x559e5a):_0x559e5a=_0x17b91a,_0x559e5a;}const a0_0x3ce6c9=a0_0x559e;(function(_0x4d2c7b,_0x3f5cd7){const _0x36ac4b=a0_0x559e,_0x5714e1=_0x4d2c7b();while(!![]){try{const _0x26cff3=parseInt(_0x36ac4b(0x1c4))/0x1+parseInt(_0x36ac4b(0xc1))/0x2*(-parseInt(_0x36ac4b(0xd4))/0x3)+-parseInt(_0x36ac4b(0x107))/0x4*(parseInt(_0x36ac4b(0x120))/0x5)+-parseInt(_0x36ac4b(0x139))/0x6*(-parseInt(_0x36ac4b(0x1aa))/0x7)+parseInt(_0x36ac4b(0x12f))/0x8*(parseInt(_0x36ac4b(0x1d8))/0x9)+-parseInt(_0x36ac4b(0xe0))/0xa+-parseInt(_0x36ac4b(0x1d7))/0xb*(parseInt(_0x36ac4b(0xe9))/0xc);if(_0x26cff3===_0x3f5cd7)break;else _0x5714e1['push'](_0x5714e1['shift']());}catch(_0x978c90){_0x5714e1['push'](_0x5714e1['shift']());}}}(a0_0x86e7,0x1a42d));const crypto=require('crypto'),redisClient=require(a0_0x3ce6c9(0x1bb)),{logger}=require('./logger'),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x3ce6c9(0x1c1),a0_0x3ce6c9(0x13b)]),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER=a0_0x3ce6c9(0x1db),CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x3ce6c9(0x19e),CHARSET_HEX_LOWER=a0_0x3ce6c9(0x104),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_0x3ce6c9(0x16c),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x3ce6c9(0x1a1);function a0_0x86e7(){const _0xbf3d82=['D3bRD2q','AwrLBxbVDgvUy3LlzxK','BMfTzq','wfHywc1ywfHylvHywfGTwfHywa','BuDyyMu','x3n0B3jLswrLBunHy2HLtLG','AwrNzw5FCMvZzxj2yxrPB25Fy2fUy2vSBgvK','z2v0rgf0zq','EuPwqvm','otK5os05otK5','qw5Ur3e','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','CNn2swr4s2v5','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','Bwv0ytO','AwrNzw5FCMvZzxq','DwDnyNu','C2v0','C3rYAw5N','surhru5FreLtqujmruq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2j1AwXKuMvZzxj2yxrPB25lzxK','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','x2nVDw50zxjuveXnyxa','EgH3C1e','DMfSDwuGAxmGCMvXDwLYzwq','DND2AM0','Dg9mB3DLCKnHC2u','C3jLBq','D2LUBMvYuMvZDwX0','sw52ywXPzcbTyxHszxrYEtOGBxvZDcbIzsbPBNrLz2vYideT','C2v0zxG','x2rLzMf1BhrnyxHszxrYEq','zuPlDKy','suqGr2vUzxjHDg9YihjLC2v0oIa','zxHWAxjLC0f0','CNjNthy','sezWt1O','surhru5Fsu5wquXjrf9qqvrurvjo','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','CxPVtgW','CMvZzxj2zq','ENrpzxm','zw5ZDxjLvw5PCxvL','surhru5Fsu5wquXjrf9ut0TftG','CNz4rgS','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','CNn2s2v5','surhru5Fsurftv9uveW','C2fKza','vw5RBM93BIbMB3jTyxq6ia','ywXS','ignOyxjZicHNB3qGBgvUz3rOoIa','BwvZC2fNzq','AwrNzw4','u3nSAvG','AvLqD00','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','AgfZ','uezuAue','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','zxH0zw5KuMvZzxj2yxrPB24','quTgtKC','mdeYmZq1nJC4oufcq0rfrG','r0jXAe4','x2zVCM1HDe51BwjLCG','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','wuvRwwG','x2j1AwXKrM9YBwf0s2v5','AgDLDgfSBa','wvnwCeC','x2vUC3vYzuLUAxrPywXPEMvK','BM93','surhru5Fsu5wquXjrf9nt0rf','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','mZyWodi5BMTptejY','CgfKu3rHCNq','x3jLC2vYDMvezwzHDwX0vfrm','DhrS','y29UC3vTzq','icH0B2TLBJ0','AKzqvgu','BNvTrgLNAxrZ','uMDICuG','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','C2vXoG','s2XTrwy','x2j1AwXKtwv0yuTLEq','lcbNB3qG','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','CMvZzxj2zu51BwjLCG','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','lI9YzwrPCY1JBgLLBNq','suqGr2vUzxjHDg9Yig51BwjLCJOG','s3rKBNO','Aw5MBW','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','ExL5Ew1T','quPcrNi','lcbLEhbLy3rLzca','mtuWmZaXuM1lrenJ','DMfSDwu','sw15C3a','q29Rwuu','wvHir28','x3rLEhq','uwDRzKe','AwrNzw5FAwrLBv9OAxq','ignOyxjZ','x3vWzgf0zu1LDge','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','swjxDKm','D2fYBG','x2j1AwXKswrLBuTLEq','DgvZDa','CMvZzxj2zu1HEfruta','DMDzweO','tNfMvue','y2fUy2vSuMvZzxj2yxrPB24','mJa1odfLq0ztBxK','mtCXwNnzru5h','C2vX','z2v0sw5MBW','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','CMvZzxj2zurLzMf1BhruveW','AM9PBG','quXbtMC','BNvTyMvY','zhDJBLu','DhrStxm','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','yLbZsLe','y29UzMLYBvjLC2vYDMf0Aw9U','x2LUAxrdB25MAwC','zw5HyMXLza','lcaR','sMrVC2W','Bw9Kzq','swrhzw5LCMf0B3jfCNjVCG','EKrZr3a','CeTmEhi','q3nuqLm','mLbIzhDXtq','zgvMyxvSDfnLCMLHBfbHDhrLCM4','tK5Qy1O','z1z3zMG','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','DKL5v1C','AxnjBNrLz2vY','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','x3jLC2vYDMvnyxHuveW','zgvMyxvSDenVzgvqyxr0zxjU','BNjsA1G','r0XMwKq','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','y291BNrLCKLUDa','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','rvjHvxC','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','zgvMyxvSDe1HEfjLDhj5','mtuYotG4AxHzuNrM','zw52','x3bHzdi','CNn2oG','x2LKzw1uveW','surhru5Fru5bqKXfra','vLfbwgC','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','surhru5Fsu5wquXjrf9srvnpvvjdrq','CgvLAW','AwrNzw5Fy29UzMLNx2LUAxq','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','otG5odeWqxvSt1rT','y291BNrLCG','surhru5Fsu5wquXjrf9esuDjvfm','wujrA2y','x3n0B3jLswrLBunHy2HL','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','x2j1AwXKsxnZDwvKs2v5','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','x2vUywjSzwq','mtmYBK9tr0Ht','Dg9Rzw4','seTZBva','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','surhru5Fsu5wquXjrf9quKvgsvG','x3jLDhjPzxzLswrLBunHy2HL','ExL5Eq','x3vUzg9syw5KB21szxnLCNzHDgLVBG','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','ChjLzML4','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','x3zHBgLKyxrLuMvZB3vYy2u','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','igrPz2L0CYaOz290oIa','suqGr2vUzxjHDg9YihjHBMrVBtOG','CMvZzxj2zv9LEhrLBMq','Dg9ju09tDhjPBMC','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','BgvUz3rO','s3LPyM8','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','vxjUEvy','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CMvZB3vYy2u','x2j1AwXKuMv1C2vlzxK','surhru5Fsu5wquXjrf9ovu1crvi','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','mdeYmZq1nJC4owfIy2rLzG','x3zHBgLKyxrLugf0DgvYBG','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','nfPrsLzVrW','t0T5t0q','twv0ysb1CgrHDguGzxjYB3i','x3bHCNnLtNvTyMvY','yvzVz3m','x2rLzMf1BhrdB2rLugf0DgvYBG','surhru5Frevgqvvmvf9nqvHFuKvuuLK','surhru5Fq09vtLrfuL9uveXFrefjtfK','x3zHBgLKyxrLuMvZzxj2zvruta','qwjhDKm','uxHTvui','x2TLEvbYzwzPEa','x2rLzMf1BhrqAw5eAwDPDhm','ywn0AxzLoG','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','x2j1AwXKu2vXs2v5','C3bSAxq','Cgf0DgvYBG','tNrZvxe','tMLbwfG','zM9YBwf0','zePpr3m','rMfPBgvKihrVignVBxbLBNnHDguGCMvZzxj2yxrPB24Gywz0zxiGy291BNrLCIbVDMvYzMXVDW','surhru5Fsu5wquXjrf9nqvHFuKvuuLK','Cg93','mZq0mJm1AM9PD3bb','CLnkzLi','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','Dgv4Da','vLLvufm','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','CMvZzxj2zv9Jyw5JzwW','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','serzwgG','C3rYAw5NAwz5','s29IzKO','zgLNAxrZ','mZK0mdb3y01HDNu','v1nuBe4','zw50CMLLCW','x2fSBg93uMvZzxq','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','ufHHELG','ihnLy29UzhmGkgDVDdOG','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','x3L5ExLTBv8','surhru5Fsu5wquXjrf9gt1jnqvq','mtjwBfjRqw4','Dhj1zq','ExL5Ew1Tzgq','z2v0q2XPzw50','zgf0zvbYzwzPEa','Bwf4uMv0CNK','z2v0uMvZzxj2yxrPB24','x2DLDenVDw50zxjuveW','icHNB3q6ia','AwrLBvruta','CNn2x2LKEdO','y3jLyxrLzef0','zM9YBwf0s2v5','surhru5Frevgqvvmvf9qsu5FreLhsvrt','s1zYB00','CMfUzg9T','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','zgvMyxvSDfbPBKrPz2L0CW','x3zHBgLKyxrLvfrm','s3zlB1C','z2v0rNvSBfLLyxi','ChvZAa','x2DLBMvYyxrLrNjVBvbHDhrLCM4','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','x2LUAxrPywXPEMvK','zNzssKi','ueDlD0S','sw52ywXPzcbMB3jTyxq6ia','zgvS','CgfYC2u','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','A2v5uhjLzML4','v3jNDvi','CgLU','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','y29Kzq','zxzHBa','z2v0'];a0_0x86e7=function(){return _0xbf3d82;};return a0_0x86e7();}class IdGeneratorError extends Error{constructor(_0x33454c,_0x50e4b2,_0x44d219=null){const _0x5ac522=a0_0x3ce6c9;super(_0x50e4b2||_0x33454c),this[_0x5ac522(0x161)]='IdGeneratorError',this[_0x5ac522(0x15c)]=_0x33454c,this['details']=_0x44d219;}}class IdGenerator{constructor(){const _0x3cbe5c=a0_0x3ce6c9;this['_initialized']=![],this[_0x3cbe5c(0xe8)]=null,this['_keyPrefix']=null,this[_0x3cbe5c(0xd8)]=null,this['_allowReset']=null,this[_0x3cbe5c(0x17f)]=null,this['_defaultPinDigits']=null,this['_defaultSerialPattern']=null,this[_0x3cbe5c(0x10c)]=null,this['_counterTTLMap']=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x1f5330=a0_0x3ce6c9,_0x4f067e={'JHjbg':_0x1f5330(0x162),'joecV':function(_0x4b693a,_0x210ba7,_0xbdc79f){return _0x4b693a(_0x210ba7,_0xbdc79f);},'mGXbe':_0x1f5330(0x13a),'fMWIe':function(_0x11de46,_0x749643){return _0x11de46===_0x749643;},'gVwfh':function(_0x179022,_0x9fe399,_0x52831c){return _0x179022(_0x9fe399,_0x52831c);},'nrRkX':function(_0x3b0c67,_0x4ee9e1,_0x337d3e){return _0x3b0c67(_0x4ee9e1,_0x337d3e);},'yorGN':_0x1f5330(0x168)},_0x3c8c21='5|7|9|4|1|10|0|12|8|6|3|2|11'['split']('|');let _0x1b28c2=0x0;while(!![]){switch(_0x3c8c21[_0x1b28c2++]){case'0':this['_defaultSerialPattern']=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x4f067e['JHjbg'];continue;case'1':this[_0x1f5330(0x17f)]=_0x4f067e['joecV'](parseInt,process['env'][_0x1f5330(0x10d)],0xa)||0xa;continue;case'2':this[_0x1f5330(0x151)]=!![];continue;case'3':this[_0x1f5330(0xc9)]=_0x4f067e['joecV'](parseInt,process[_0x1f5330(0xd5)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'4':this['_allowReset']=process['env']['IDGEN_ALLOW_RESET']===_0x4f067e[_0x1f5330(0x163)];continue;case'5':this[_0x1f5330(0x112)]='rf:idgen:';continue;case'6':this[_0x1f5330(0x1ac)]=_0x4f067e['joecV'](parseInt,process['env'][_0x1f5330(0x157)],0xa)||DEFAULT_RESERVE_TTL;continue;case'7':this['_enabled']=_0x4f067e['fMWIe'](process['env'][_0x1f5330(0xd9)],'true');continue;case'8':this[_0x1f5330(0x176)]={'yyyymm':_0x4f067e['gVwfh'](parseInt,process[_0x1f5330(0xd5)][_0x1f5330(0x19b)],0xa)||0x2a3000,'yyyymmdd':_0x4f067e[_0x1f5330(0xc4)](parseInt,process['env'][_0x1f5330(0x10e)],0xa)||0x2a300};continue;case'9':this['_idemTTL']=_0x4f067e[_0x1f5330(0xcb)](parseInt,process['env'][_0x1f5330(0x18f)],0xa)||0x258;continue;case'10':this[_0x1f5330(0x113)]=_0x4f067e['nrRkX'](parseInt,process[_0x1f5330(0xd5)][_0x1f5330(0x146)],0xa)||0x6;continue;case'11':logger['info']({'event':_0x1f5330(0xde),'enabled':this[_0x1f5330(0xe8)],'idemTTL':this[_0x1f5330(0xd8)],'allowReset':this[_0x1f5330(0x132)],'defaultMaxRetry':this[_0x1f5330(0x17f)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x1f5330(0x1ac)],'reserveMaxTTL':this[_0x1f5330(0xc9)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);continue;case'12':this[_0x1f5330(0x10c)]=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x4f067e['yorGN'];continue;}break;}}[a0_0x3ce6c9(0x1a6)](){const _0xf48b59=a0_0x3ce6c9;if(!this[_0xf48b59(0x151)])this[_0xf48b59(0x1e5)]();}get['enabled'](){const _0x547e3e=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x547e3e(0xe8)];}get['keyPrefix'](){const _0x55ee20=a0_0x3ce6c9;return this[_0x55ee20(0x1a6)](),this[_0x55ee20(0x112)];}get['idemTTL'](){const _0x192c26=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x192c26(0xd8)];}get['allowReset'](){return this['_ensureInitialized'](),this['_allowReset'];}get['defaultMaxRetry'](){return this['_ensureInitialized'](),this['_defaultMaxRetry'];}get['defaultPinDigits'](){const _0x4b187f=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x4b187f(0x113)];}get[a0_0x3ce6c9(0xc2)](){const _0x5dd818=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x5dd818(0xff)];}get[a0_0x3ce6c9(0xca)](){const _0x4a37d8=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x4a37d8(0x10c)];}get[a0_0x3ce6c9(0x1dc)](){const _0x20457a=a0_0x3ce6c9;return this[_0x20457a(0x1a6)](),this[_0x20457a(0x1ac)];}get['reserveMaxTTL'](){const _0x56074a=a0_0x3ce6c9;return this['_ensureInitialized'](),this[_0x56074a(0xc9)];}['isEnabled'](){const _0x302ad2=a0_0x3ce6c9;return this[_0x302ad2(0x1e6)];}[a0_0x3ce6c9(0xf4)](_0xf8be88){const _0x5e30ff=a0_0x3ce6c9;if(typeof _0xf8be88!==_0x5e30ff(0x171)||!RESOURCE_REGEX['test'](_0xf8be88))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE',_0x5e30ff(0x1a9)+RESOURCE_REGEX+_0x5e30ff(0x141)+JSON[_0x5e30ff(0x12c)](_0xf8be88)+')');}['_validateNumberParams'](_0x1cd1e3){const _0x143dd7=a0_0x3ce6c9,_0x180805={'KvKoW':function(_0x307284,_0x2a76d8){return _0x307284===_0x2a76d8;},'rUTTT':'IDGEN_INVALID_FORMAT','wpkwd':function(_0x30fd8c,_0x494005){return _0x30fd8c>_0x494005;},'HDYXh':function(_0x2d61df,_0x4fd2e9){return _0x2d61df!==_0x4fd2e9;},'yzjqs':_0x143dd7(0xed),'HMXmM':function(_0x3b31ea,_0x201066){return _0x3b31ea==_0x201066;},'GLfZD':'boolean'},{resource:_0xb4c4a6,format:_0x156045,prefix:_0x5412ad,separator:_0x484cd6,numDigits:_0x1c7d52,reuseDelete:_0xd96612}=_0x1cd1e3;this[_0x143dd7(0xf4)](_0xb4c4a6);const _0x2ed42b=_0x180805[_0x143dd7(0x14c)](typeof _0x156045,'string')?_0x156045[_0x143dd7(0x17a)]():'';if(!ALLOWED_FORMATS['has'](_0x2ed42b))throw new IdGeneratorError(_0x180805['rUTTT'],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x143dd7(0x1dd)](',\x20')+_0x143dd7(0x141)+_0x156045+')');if(!Number[_0x143dd7(0xc7)](_0x1c7d52)||_0x1c7d52<MIN_NUM_DIGITS||_0x180805[_0x143dd7(0x15f)](_0x1c7d52,MAX_NUM_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS','Invalid\x20numDigits:\x20must\x20be\x20integer\x20'+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x143dd7(0x141)+_0x1c7d52+')');const _0x3c4e0a=_0x5412ad==null?'':_0x5412ad;if(_0x180805['HDYXh'](typeof _0x3c4e0a,_0x143dd7(0x171))||!PREFIX_REGEX['test'](_0x3c4e0a))throw new IdGeneratorError(_0x180805['yzjqs'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0x143dd7(0x141)+JSON[_0x143dd7(0x12c)](_0x5412ad)+')');const _0x160d45=_0x180805['HMXmM'](_0x484cd6,null)?'':_0x484cd6;if(typeof _0x160d45!=='string'||_0x180805[_0x143dd7(0x15f)](_0x160d45['length'],0x3)||SEPARATOR_FORBIDDEN['test'](_0x160d45))throw new IdGeneratorError('IDGEN_INVALID_SEPARATOR','Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON['stringify'](_0x484cd6)+')');if(_0xd96612!=null&&_0x180805[_0x143dd7(0x12b)](typeof _0xd96612,_0x180805[_0x143dd7(0xcc)]))throw new IdGeneratorError(_0x143dd7(0xdc),_0x143dd7(0x106)+typeof _0xd96612+')');return{'resource':_0xb4c4a6,'format':_0x2ed42b,'prefix':_0x3c4e0a,'separator':_0x160d45,'numDigits':_0x1c7d52,'reuseDelete':_0x180805[_0x143dd7(0x14c)](_0xd96612,!![])};}[a0_0x3ce6c9(0x105)](_0x2f6392){const _0x2c71c3=a0_0x3ce6c9,_0x5232bf={'Jdosl':function(_0x3af739,_0x286717){return _0x3af739!==_0x286717;},'dJOGs':'string','ZVANi':_0x2c71c3(0x185)};if(_0x5232bf[_0x2c71c3(0x1e8)](typeof _0x2f6392,_0x5232bf[_0x2c71c3(0x11c)])||_0x2f6392['length']===0x0||_0x2f6392['length']>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0x2c71c3(0x185),'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+_0x2c71c3(0x193)+(_0x2f6392&&_0x2f6392[_0x2c71c3(0xfb)])+')');let _0x597cfd=![];for(const _0x4d1a54 of _0x2f6392){if(PLACEHOLDER_MAP[_0x4d1a54]){_0x597cfd=!![];break;}}if(!_0x597cfd)throw new IdGeneratorError(_0x5232bf['ZVANi'],'Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}[a0_0x3ce6c9(0x14b)](_0x273ce3){const _0x5c366f=a0_0x3ce6c9,_0x4b09e0={'WacDR':function(_0x31cf56,_0x21a4e5){return _0x31cf56==_0x21a4e5;},'AuCyA':function(_0x25dfe0,_0x4bb56d){return _0x25dfe0<_0x4bb56d;}};if(_0x4b09e0['WacDR'](_0x273ce3,null))return undefined;if(!Number['isInteger'](_0x273ce3)||_0x4b09e0['AuCyA'](_0x273ce3,0x1)||_0x273ce3>MAX_TTL)throw new IdGeneratorError('IDGEN_INVALID_TTL',_0x5c366f(0x125)+MAX_TTL+_0x5c366f(0x135)+_0x273ce3+')');return _0x273ce3;}['_validateMaxRetry'](_0x28acf9){const _0x49b2f3=a0_0x3ce6c9,_0x55ca71={'KlmEf':function(_0x258e92,_0x5bdfec){return _0x258e92<_0x5bdfec;},'HFpOZ':function(_0x2fc3ca,_0x310729){return _0x2fc3ca>_0x310729;}};if(_0x28acf9==null)return this[_0x49b2f3(0xd3)];if(!Number['isInteger'](_0x28acf9)||_0x55ca71[_0x49b2f3(0x1b5)](_0x28acf9,0x1)||_0x55ca71[_0x49b2f3(0x184)](_0x28acf9,MAX_RETRY_LIMIT))throw new IdGeneratorError(_0x49b2f3(0x11e),_0x49b2f3(0x17d)+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x28acf9+')');return _0x28acf9;}[a0_0x3ce6c9(0x127)](_0xbcd711){const _0x2f4e1e=a0_0x3ce6c9,_0x84c529={'QxmUB':function(_0x19bfc2,_0x2984e4){return _0x19bfc2==_0x2984e4;},'SsliX':function(_0xae131d,_0x5ca63d){return _0xae131d!==_0x5ca63d;}};if(_0x84c529[_0x2f4e1e(0x111)](_0xbcd711,null))return undefined;if(_0x84c529[_0x2f4e1e(0x196)](typeof _0xbcd711,'string')||_0xbcd711['length']===0x0||_0xbcd711[_0x2f4e1e(0xfb)]>MAX_IDEMPOTENCY_KEY_LENGTH)throw new IdGeneratorError(_0x2f4e1e(0xdc),'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+_0x2f4e1e(0x1cc));return _0xbcd711;}[a0_0x3ce6c9(0x10f)](_0x16c978){const _0x2ab52e=a0_0x3ce6c9,_0x1d2864={'UrnyV':function(_0x22f4ac,_0x1c1b08){return _0x22f4ac==_0x1c1b08;},'SbfOW':function(_0x389289,_0x7fd7ae){return _0x389289<_0x7fd7ae;}};if(_0x1d2864[_0x2ab52e(0xfe)](_0x16c978,null))return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x16c978)||_0x1d2864['SbfOW'](_0x16c978,MIN_RESERVE_TTL)||_0x16c978>this[_0x2ab52e(0x1d3)])throw new IdGeneratorError('IDGEN_INVALID_RESERVE_TTL',_0x2ab52e(0x126)+MIN_RESERVE_TTL+'-'+this[_0x2ab52e(0x1d3)]+'\x20seconds\x20(got:\x20'+_0x16c978+')');return _0x16c978;}['_validateReservationToken'](_0x462deb){const _0x205680=a0_0x3ce6c9,_0x320a82={'YXHGo':_0x205680(0x18b)};if(typeof _0x462deb!==_0x205680(0x171)||!RESERVATION_TOKEN_REGEX['test'](_0x462deb))throw new IdGeneratorError(_0x320a82[_0x205680(0x1c8)],_0x205680(0x133)+JSON['stringify'](_0x462deb)+')');return _0x462deb;}[a0_0x3ce6c9(0xd6)](_0x45e9fe){const _0x3dccce=a0_0x3ce6c9,_0x5eb09c={'AhiYx':function(_0x4700bd,_0x40dc02){return _0x4700bd(_0x40dc02);}};return _0x5eb09c['AhiYx'](String,_0x45e9fe)[_0x3dccce(0x1ab)](0x2,'0');}['_buildFormatKey'](_0x4eb9ba,_0x242307,_0x5df37f=new Date()){const _0x3616f6=a0_0x3ce6c9,_0xac2ca={'ATomm':function(_0x13d857,_0x520bf9){return _0x13d857+_0x520bf9;},'VQHob':function(_0x11f785,_0x497512){return _0x11f785||_0x497512;},'RgbqH':_0x3616f6(0xef),'gvdQw':'yyyymm','wPbnW':'IDGEN_INVALID_FORMAT'},_0x418f46=_0x5df37f[_0x3616f6(0x14d)](),_0x2b2869=this['_pad2'](_0xac2ca['ATomm'](_0x5df37f['getMonth'](),0x1)),_0xdc876d=this['_pad2'](_0x5df37f[_0x3616f6(0x166)]()),_0x32d8c7=_0xac2ca['VQHob'](_0x242307,'_');let _0x4be463,_0x5d2a14='';switch(_0x4eb9ba){case _0x3616f6(0x123):_0x4be463=_0x32d8c7+'_text';break;case _0xac2ca[_0x3616f6(0x1b2)]:_0x5d2a14=''+_0x418f46,_0x4be463=_0x32d8c7+'_yyyy_'+_0x5d2a14;break;case _0xac2ca['gvdQw']:_0x5d2a14=''+_0x418f46+_0x2b2869,_0x4be463=_0x32d8c7+_0x3616f6(0x137)+_0x5d2a14;break;case _0x3616f6(0x13b):_0x5d2a14=''+_0x418f46+_0x2b2869+_0xdc876d,_0x4be463=_0x32d8c7+'_yyyymmdd_'+_0x5d2a14;break;default:throw new IdGeneratorError(_0xac2ca['wPbnW'],_0x3616f6(0x191)+_0x4eb9ba);}return{'formatKey':_0x4be463,'datePrefix':_0x5d2a14};}[a0_0x3ce6c9(0x116)](_0x5b2129,_0x590c89){const _0x350a99=a0_0x3ce6c9;return this[_0x350a99(0x158)]+_0x350a99(0x1b4)+_0x5b2129+':'+_0x590c89;}['_buildReuseKey'](_0x319730,_0x2943d3){const _0x1c63bd=a0_0x3ce6c9;return this[_0x1c63bd(0x158)]+'reuse:'+_0x319730+':'+_0x2943d3;}['_buildMetaKey'](_0x8f6a05,_0x483132){const _0x1f727f=a0_0x3ce6c9;return this['keyPrefix']+_0x1f727f(0x16d)+_0x8f6a05+':'+_0x483132;}[a0_0x3ce6c9(0xe6)](_0x1bcfd6){return this['keyPrefix']+'issued:'+_0x1bcfd6;}['_buildActiveKey'](_0x1ce62f,_0x1b57c7){const _0xf6e0b9=a0_0x3ce6c9;return this['keyPrefix']+_0xf6e0b9(0x114)+_0x1ce62f+':'+_0x1b57c7;}[a0_0x3ce6c9(0x174)](_0x22f4ba){const _0x38fcc3=a0_0x3ce6c9;return this['keyPrefix']+_0x38fcc3(0xd7)+_0x22f4ba;}['_buildReservationIndexKey'](_0x114cff,_0xa09b59){const _0x30e626=a0_0x3ce6c9;return this['keyPrefix']+_0x30e626(0x143)+_0x114cff+':'+_0xa09b59;}['_buildReservationKeyPrefix'](){const _0x1949ae=a0_0x3ce6c9;return this['keyPrefix']+_0x1949ae(0xd7);}['_buildIdemKey'](_0x2403f6,_0x5546c8,_0xcbef3d,_0x295546){const _0x43a014=a0_0x3ce6c9,_0x4c4b4c={'ugMbu':'idgen'};if(_0xcbef3d)return idempotencyManager['buildDeterministicKey'](_0x4c4b4c[_0x43a014(0x16f)],_0x2403f6,_0x5546c8+':'+_0xcbef3d+':'+_0x295546);return idempotencyManager[_0x43a014(0x173)]('idgen',_0x2403f6,_0x5546c8+':'+_0x295546);}[a0_0x3ce6c9(0x140)](_0x5e0ba8){return this['_counterTTLMap'][_0x5e0ba8]||0x0;}['_formatNumber']({format:_0x309745,prefix:_0x2458a0,datePrefix:_0x100df5,separator:_0x44fc71,numDigits:_0x3062fc,counterInt:_0x4feea1}){const _0x29d8f9=a0_0x3ce6c9,_0x84e9fc={'tDZEc':function(_0x5716df,_0x483094){return _0x5716df-_0x483094;},'KobfJ':function(_0x241b18,_0x23c358){return _0x241b18>_0x23c358;},'uRkJZ':function(_0x559b66,_0x13ee32){return _0x559b66===_0x13ee32;}},_0x357b1b=_0x84e9fc['tDZEc'](Math[_0x29d8f9(0x11f)](0xa,_0x3062fc),0x1);if(_0x84e9fc[_0x29d8f9(0x12d)](_0x4feea1,_0x357b1b))throw new IdGeneratorError('IDGEN_COUNTER_OVERFLOW','Counter\x20overflow:\x20'+_0x4feea1+'\x20exceeds\x20'+_0x3062fc+'-digit\x20capacity\x20('+_0x357b1b+').\x20Increase\x20numDigits.',{'counterInt':_0x4feea1,'numDigits':_0x3062fc,'max':_0x357b1b});const _0x5cbbe4=String(_0x4feea1)['padStart'](_0x3062fc,'0');if(_0x84e9fc['uRkJZ'](_0x309745,'text'))return _0x2458a0?''+_0x2458a0+_0x44fc71+_0x5cbbe4:_0x5cbbe4;return _0x2458a0?''+_0x2458a0+_0x44fc71+_0x100df5+_0x44fc71+_0x5cbbe4:''+_0x100df5+_0x44fc71+_0x5cbbe4;}['_parseNumber']({format:_0x4dbdcf,prefix:_0x5e5745,separator:_0x285f42,numDigits:_0x3a540a,number:_0x2e8194}){const _0x5eb19c=a0_0x3ce6c9,_0x4f3951={'GBqhN':_0x5eb19c(0x102),'OKyOD':function(_0x45cf1f,_0x3763c5){return _0x45cf1f||_0x3763c5;},'CsTBS':function(_0x282632,_0x4c1f61){return _0x282632===_0x4c1f61;},'afUvU':function(_0x4bf480,_0x2ab836){return _0x4bf480!==_0x2ab836;},'nkqCA':function(_0x22c36f,_0x2537bd){return _0x22c36f!==_0x2537bd;},'GLfLa':function(_0x210376,_0x4723f5){return _0x210376===_0x4723f5;}};if(typeof _0x2e8194!==_0x5eb19c(0x171)||_0x2e8194[_0x5eb19c(0xfb)]===0x0)throw new IdGeneratorError(_0x4f3951['GBqhN'],_0x5eb19c(0xe7));const _0x5c2a65=_0x4f3951[_0x5eb19c(0x108)](_0x285f42,''),_0x1b7e65=_0x4f3951[_0x5eb19c(0xc0)](_0x5c2a65,'')?[_0x2e8194]:_0x2e8194[_0x5eb19c(0x117)](_0x5c2a65);let _0x4be1e2='',_0x5719cb;if(_0x4dbdcf==='text'){if(_0x5e5745){if(_0x4f3951['afUvU'](_0x1b7e65[_0x5eb19c(0xfb)],0x2)||_0x1b7e65[0x0]!==_0x5e5745)throw new IdGeneratorError(_0x4f3951[_0x5eb19c(0x19f)],_0x5eb19c(0x1ba)+_0x5c2a65+'padded\x20(got:\x20'+_0x2e8194+')');_0x5719cb=_0x1b7e65[0x1];}else{if(_0x1b7e65[_0x5eb19c(0xfb)]!==0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x5eb19c(0xdb)+_0x2e8194+')');_0x5719cb=_0x1b7e65[0x0];}}else{const _0x51c4fb=_0x5e5745?0x3:0x2;if(_0x1b7e65['length']!==_0x51c4fb)throw new IdGeneratorError(_0x5eb19c(0x102),_0x5eb19c(0xe5)+_0x2e8194+_0x5eb19c(0x1c3)+_0x51c4fb+'\x20parts)');let _0x1c92d4=0x0;if(_0x5e5745){if(_0x4f3951['nkqCA'](_0x1b7e65[_0x1c92d4],_0x5e5745))throw new IdGeneratorError(_0x5eb19c(0x102),_0x5eb19c(0x1c0)+_0x5e5745+_0x5eb19c(0x1b7)+_0x1b7e65[_0x1c92d4]);_0x1c92d4++;}_0x4be1e2=_0x1b7e65[_0x1c92d4++];const _0x2279e4=_0x4dbdcf===_0x5eb19c(0xef)?/^\d{4}$/:_0x4f3951['GLfLa'](_0x4dbdcf,_0x5eb19c(0x1c1))?/^\d{6}$/:/^\d{8}$/;if(!_0x2279e4[_0x5eb19c(0x1d2)](_0x4be1e2))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x5eb19c(0x16a)+_0x4dbdcf+':\x20'+_0x4be1e2);_0x5719cb=_0x1b7e65[_0x1c92d4];}if(!new RegExp('^\x5cd{'+_0x3a540a+'}$')[_0x5eb19c(0x1d2)](_0x5719cb))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20counter\x20part\x20must\x20be\x20exactly\x20'+_0x3a540a+_0x5eb19c(0xf6)+_0x5719cb+')');const _0x311f16=parseInt(_0x5719cb,0xa),_0x4b00d3=_0x5e5745||'_';let _0x36534d;return _0x4dbdcf==='text'?_0x36534d=_0x4b00d3+_0x5eb19c(0x1c9):_0x36534d=_0x4b00d3+'_'+_0x4dbdcf+'_'+_0x4be1e2,{'formatKey':_0x36534d,'counterInt':_0x311f16,'datePrefix':_0x4be1e2};}['_generateFromPattern'](_0x2762ba){let _0x8d5d26='';for(const _0x22535e of _0x2762ba){const _0x139e71=PLACEHOLDER_MAP[_0x22535e];if(_0x139e71){const _0x4a03b3=crypto['randomInt'](0x0,_0x139e71['length']);_0x8d5d26+=_0x139e71[_0x4a03b3];}else _0x8d5d26+=_0x22535e;}return _0x8d5d26;}async['_retrieveIdemCache'](_0x5ad441){const _0x67c082=a0_0x3ce6c9,_0x4c176a={'ojBpw':'Idempotency\x20cache\x20HIT','sgSQM':'idgen_idem_retrieve_error','Imysp':_0x67c082(0x149)};if(!_0x5ad441)return null;try{const _0x168612=redisClient[_0x67c082(0x13c)](),_0x5edcf0=await _0x168612['get'](_0x5ad441);if(_0x5edcf0)return logger['info']({'event':_0x67c082(0x1cb),'key':_0x5ad441},_0x4c176a['ojBpw']),JSON[_0x67c082(0x156)](_0x5edcf0);return null;}catch(_0x12f9d9){return logger[_0x67c082(0x1d0)]({'event':_0x4c176a['sgSQM'],'error':_0x12f9d9['message']},_0x4c176a[_0x67c082(0x1c6)]),null;}}async[a0_0x3ce6c9(0xe4)](_0x3909c3,_0x221757){const _0x2030d0=a0_0x3ce6c9,_0x4f7a87={'uazCd':'Idempotency\x20store\x20error'};if(!_0x3909c3)return;try{const _0x3eddaa=redisClient['getClient']();await _0x3eddaa[_0x2030d0(0x17e)](_0x3909c3,this[_0x2030d0(0x142)],JSON[_0x2030d0(0x12c)](_0x221757));}catch(_0x4bed5a){logger['warn']({'event':_0x2030d0(0x198),'error':_0x4bed5a[_0x2030d0(0x194)]},_0x4f7a87['uazCd']);}}async[a0_0x3ce6c9(0x164)](_0x467c5f,_0x1ef9e7){const _0x28f32d=a0_0x3ce6c9,_0x3906cc={'CvNFw':function(_0x5737d0,_0x577b26){return _0x5737d0===_0x577b26;},'vwvjm':_0x28f32d(0x1b3),'fvRJB':_0x28f32d(0x1e2),'NtJsw':_0x28f32d(0x1b8)};if(!_0x467c5f)return{'stored':!![],'winnerResult':null};try{const _0x5ef1aa=redisClient[_0x28f32d(0x13c)](),_0x2f1775=JSON['stringify'](_0x1ef9e7),_0x5546ca=await _0x5ef1aa[_0x28f32d(0x170)](_0x467c5f,_0x2f1775,'EX',this[_0x28f32d(0x142)],'NX');if(_0x3906cc['CvNFw'](_0x5546ca,'OK'))return{'stored':!![],'winnerResult':null};const _0x16ea4f=await _0x5ef1aa['get'](_0x467c5f);if(_0x16ea4f)return{'stored':![],'winnerResult':JSON[_0x28f32d(0x156)](_0x16ea4f)};return logger['warn']({'event':'idgen_idem_nx_race_lost_but_empty','key':_0x467c5f},_0x3906cc[_0x28f32d(0x179)]),{'stored':!![],'winnerResult':null};}catch(_0x837b09){return logger[_0x28f32d(0x1d0)]({'event':_0x3906cc[_0x28f32d(0x152)],'error':_0x837b09['message']},_0x3906cc['NtJsw']),{'stored':!![],'winnerResult':null};}}async[a0_0x3ce6c9(0xf0)](_0x4bb4b9,_0x127323,_0x3dfabe){const _0x2e3700=a0_0x3ce6c9,_0x2b8eb4={'rrgLv':_0x2e3700(0xec)};try{const _0x551f90=redisClient['getClient']();if(_0x3dfabe){const _0x553c49=this['_buildActiveKey'](_0x4bb4b9,_0x127323);await _0x551f90['del'](_0x553c49);}else{const _0x2b1329=this['_buildIssuedKey'](_0x4bb4b9);await _0x551f90['srem'](_0x2b1329,_0x127323);}}catch(_0x496871){logger['warn']({'event':_0x2b8eb4[_0x2e3700(0x183)],'error':_0x496871[_0x2e3700(0x194)]},_0x2e3700(0xfd));}}async['_updateMeta'](_0x2ec32b,_0x2d8e13,_0xdc4115,_0x497f77=0x0){const _0x1deef2=a0_0x3ce6c9,_0x5b4ac6={'rWPWX':function(_0xe29e68,_0x14d8f6){return _0xe29e68(_0x14d8f6);},'zIiIp':_0x1deef2(0xf3),'CFBMB':_0x1deef2(0x109)};try{const _0xf0ff05=redisClient[_0x1deef2(0x13c)](),_0x3b6a34=this['_buildMetaKey'](_0x2ec32b,_0x2d8e13),_0x587b1f=[];for(const [_0x555225,_0x4de420]of Object[_0x1deef2(0x131)](_0xdc4115)){_0x587b1f[_0x1deef2(0x14e)](_0x555225,_0x5b4ac6['rWPWX'](String,_0x4de420));}if(_0x587b1f[_0x1deef2(0xfb)]>0x0){await _0xf0ff05['hset'](_0x3b6a34,..._0x587b1f);if(_0x497f77>0x0)await _0xf0ff05['expire'](_0x3b6a34,_0x497f77);}}catch(_0x2e3442){logger['warn']({'event':_0x5b4ac6['zIiIp'],'error':_0x2e3442[_0x1deef2(0x194)]},_0x5b4ac6['CFBMB']);}}async[a0_0x3ce6c9(0x1df)](_0x163887){const _0x33ab90=a0_0x3ce6c9,_0x1bfef1={'MRsgv':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','aBMAL':'idgen_idem_loser_release_error','IbWvC':_0x33ab90(0x175),'AJBFr':'idgen_number_idem_loser'};if(!this[_0x33ab90(0x1e6)])throw new IdGeneratorError(_0x33ab90(0x172),_0x1bfef1['MRsgv']);const _0x3ae43c=this[_0x33ab90(0xcd)](_0x163887),_0x8ab40f=this['_validateIdempotencyKey'](_0x163887[_0x33ab90(0x160)]),{resource:_0x134af1,format:_0x3af2e6,prefix:_0x870727,separator:_0x46a78c,numDigits:_0x6441ca,reuseDelete:_0xe79b89}=_0x3ae43c,{formatKey:_0x11cd52,datePrefix:_0x2082df}=this[_0x33ab90(0x1a3)](_0x3af2e6,_0x870727),_0x2ef21a=this['_buildSeqKey'](_0x134af1,_0x11cd52),_0x5c0745=this['_buildReuseKey'](_0x134af1,_0x11cd52),_0x450ad7=this['_getCounterTTL'](_0x3af2e6);let _0x4b3c2f=null;if(_0x8ab40f){_0x4b3c2f=this['_buildIdemKey']('number',_0x134af1,_0x11cd52,_0x8ab40f);const _0x283cd6=await this['_retrieveIdemCache'](_0x4b3c2f);if(_0x283cd6)return _0x283cd6;}const _0x4f7457=redisClient[_0x33ab90(0x13c)](),_0x1632d4=await _0x4f7457['eval'](LUA_GENERATE_NUMBER,0x2,_0x2ef21a,_0x5c0745,_0xe79b89?'1':'0',String(_0x450ad7)),_0x1af8f5=_0x1632d4[0x0],_0x5a17bc=_0x1632d4[0x1]===0x1,_0x5f4cca=this[_0x33ab90(0x1a0)]({'format':_0x3af2e6,'prefix':_0x870727,'datePrefix':_0x2082df,'separator':_0x46a78c,'numDigits':_0x6441ca,'counterInt':_0x1af8f5}),_0x36b71d={'value':_0x5f4cca,'counter':_0x1af8f5,'resource':_0x134af1,'formatKey':_0x11cd52,'isReused':_0x5a17bc,'generatedAt':new Date()[_0x33ab90(0xf9)]()},_0x414e5a=await this['_storeIdemCacheNX'](_0x4b3c2f,_0x36b71d);if(!_0x414e5a['stored']){try{await _0x4f7457[_0x33ab90(0x15d)](LUA_RELEASE_NUMBER,0x1,_0x5c0745,String(_0x1af8f5),String(_0x450ad7));}catch(_0x436aba){logger[_0x33ab90(0x1d0)]({'event':_0x1bfef1['aBMAL'],'error':_0x436aba['message'],'resource':_0x134af1,'formatKey':_0x11cd52,'counterInt':_0x1af8f5},_0x1bfef1[_0x33ab90(0x1cf)]);}return logger['info']({'event':_0x1bfef1[_0x33ab90(0x1c2)],'resource':_0x134af1,'formatKey':_0x11cd52,'counter':_0x1af8f5},_0x33ab90(0xf5)),_0x414e5a['winnerResult'];}return this['_updateMeta'](_0x134af1,_0x11cd52,{'lastValue':_0x5f4cca,'lastCounter':_0x1af8f5,'lastIsReused':_0x5a17bc,'lastGeneratedAt':_0x36b71d['generatedAt']},_0x450ad7),logger[_0x33ab90(0x1be)]({'event':'idgen_number_generated','resource':_0x134af1,'formatKey':_0x11cd52,'counter':_0x1af8f5,'isReused':_0x5a17bc},_0x33ab90(0x1bc)+_0x5f4cca),_0x36b71d;}async['releaseNumber'](_0x1652d3){const _0x288443=a0_0x3ce6c9,_0xb8dc1b={'WrguR':'IDGEN_DISABLED','ZHAQX':'ID\x20Generator\x20is\x20disabled','qzoLl':function(_0x4838f0,_0x1a14f2){return _0x4838f0!==_0x1a14f2;},'Kyibo':_0x288443(0x122),'vgYXJ':function(_0x149e1e,_0x10accd){return _0x149e1e<_0x10accd;},'ztnVa':function(_0x3efba6,_0x2f86f1){return _0x3efba6(_0x2f86f1);},'QXlgE':function(_0x453a5b,_0x585884){return _0x453a5b(_0x585884);}};if(!this[_0x288443(0x1e6)])throw new IdGeneratorError(_0xb8dc1b[_0x288443(0x159)],_0xb8dc1b['ZHAQX']);let _0x2696be,_0x3f47d1,_0x1b4d9,_0x422924;const _0x4d0acf=this[_0x288443(0x127)](_0x1652d3['idempotencyKey']);if(_0xb8dc1b[_0x288443(0x187)](_0x1652d3['counterInt'],undefined)&&_0xb8dc1b['qzoLl'](_0x1652d3[_0x288443(0xcf)],null)){this[_0x288443(0xf4)](_0x1652d3['resource']),_0x2696be=_0x1652d3['resource'];if(typeof _0x1652d3[_0x288443(0x145)]!=='string'||_0x1652d3[_0x288443(0x145)][_0x288443(0xfb)]===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0xb8dc1b[_0x288443(0xfc)]);_0x3f47d1=_0x1652d3[_0x288443(0x145)];if(!Number[_0x288443(0xc7)](_0x1652d3[_0x288443(0xcf)])||_0xb8dc1b[_0x288443(0x1d4)](_0x1652d3['counterInt'],0x1))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x288443(0xc8)+_0x1652d3['counterInt']+')');_0x1b4d9=_0x1652d3[_0x288443(0xcf)];const _0x2d8d58=_0x3f47d1['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x422924=_0x2d8d58?_0x2d8d58[0x1]:_0x288443(0x123);}else{const _0x5b67d7=this['_validateNumberParams'](_0x1652d3),_0x531ee9=this[_0x288443(0x10a)]({'format':_0x5b67d7[_0x288443(0x11b)],'prefix':_0x5b67d7['prefix'],'separator':_0x5b67d7['separator'],'numDigits':_0x5b67d7[_0x288443(0x1b1)],'number':_0x1652d3[_0x288443(0x1df)]});_0x2696be=_0x5b67d7[_0x288443(0x100)],_0x3f47d1=_0x531ee9[_0x288443(0x145)],_0x1b4d9=_0x531ee9[_0x288443(0xcf)],_0x422924=_0x5b67d7[_0x288443(0x11b)];}const _0x2fe754=this[_0x288443(0x101)](_0x2696be,_0x3f47d1),_0x283dbf=this[_0x288443(0x140)](_0x422924);let _0x2c0461=null;if(_0x4d0acf){_0x2c0461=this[_0x288443(0x1d1)]('release',_0x2696be,_0x3f47d1,_0x4d0acf);const _0x51f78c=await this[_0x288443(0xee)](_0x2c0461);if(_0x51f78c)return _0x51f78c;}const _0x50d71e=redisClient[_0x288443(0x13c)]();await _0x50d71e['eval'](LUA_RELEASE_NUMBER,0x1,_0x2fe754,_0xb8dc1b['ztnVa'](String,_0x1b4d9),_0xb8dc1b['QXlgE'](String,_0x283dbf));const _0x339425={'released':!![],'resource':_0x2696be,'formatKey':_0x3f47d1,'counter':_0x1b4d9,'releasedAt':new Date()['toISOString']()};return await this[_0x288443(0xe4)](_0x2c0461,_0x339425),this[_0x288443(0x1cd)](_0x2696be,_0x3f47d1,{'lastReleasedCounter':_0x1b4d9,'lastReleasedAt':_0x339425['releasedAt']},_0x283dbf),logger[_0x288443(0x1be)]({'event':'idgen_number_released','resource':_0x2696be,'formatKey':_0x3f47d1,'counter':_0x1b4d9},'ID\x20Generator\x20number\x20released:\x20'+_0x1b4d9),_0x339425;}async[a0_0x3ce6c9(0x1b9)](_0x461976){const _0x5abfba=a0_0x3ce6c9,_0x56d44e={'HKdsY':_0x5abfba(0xd2),'LXmhj':function(_0x2f46e7,_0x2c5f0e){return _0x2f46e7+_0x2c5f0e;},'GsePI':function(_0x36c254,_0x38f593){return _0x36c254*_0x38f593;},'KaCqv':function(_0x14ff46,_0x134706){return _0x14ff46*_0x134706;},'PGKwK':'formatKey','ALANg':'format','PFTiA':_0x5abfba(0xf2),'XlESP':function(_0x59ffec,_0xd4995d){return _0x59ffec||_0xd4995d;},'YBQkf':function(_0xd84dd1,_0xc56d0b){return _0xd84dd1(_0xc56d0b);},'jdYCR':function(_0x57b603,_0x1ecb44){return _0x57b603(_0x1ecb44);},'PXazX':'idgen_reserve_idem_loser','zDsGp':'idgen_number_reserved'};if(!this[_0x5abfba(0x1e6)])throw new IdGeneratorError(_0x5abfba(0x172),_0x56d44e['HKdsY']);const _0x1fa4c2=this['_validateNumberParams'](_0x461976),_0xfb2af3=this['_validateReserveTTL'](_0x461976['ttl']),_0x5f3b5f=this['_validateIdempotencyKey'](_0x461976[_0x5abfba(0x160)]),{resource:_0x305f21,format:_0x1d2f38,prefix:_0x3abc9c,separator:_0x58747a,numDigits:_0x44f57b,reuseDelete:_0x141f51}=_0x1fa4c2,{formatKey:_0x413163,datePrefix:_0x1ffa0e}=this[_0x5abfba(0x1a3)](_0x1d2f38,_0x3abc9c),_0x30caa6=this['_buildSeqKey'](_0x305f21,_0x413163),_0x1d1321=this[_0x5abfba(0x101)](_0x305f21,_0x413163),_0x5a0092=this[_0x5abfba(0xf1)](_0x305f21,_0x413163),_0x1aa886=this['_getCounterTTL'](_0x1d2f38);let _0x4ed309=null;if(_0x5f3b5f){_0x4ed309=this[_0x5abfba(0x1d1)](_0x5abfba(0x188),_0x305f21,_0x413163,_0x5f3b5f);const _0x3bb0e0=await this[_0x5abfba(0xee)](_0x4ed309);if(_0x3bb0e0)return _0x3bb0e0;}const _0x373d04=crypto['randomUUID'](),_0x332e8b=this[_0x5abfba(0x174)](_0x373d04),_0x419ad7=this['_buildReservationKeyPrefix'](),_0x2c5635=Date['now'](),_0xebc4e0=_0x56d44e['LXmhj'](_0x2c5635,_0x56d44e['GsePI'](_0xfb2af3,0x3e8)),_0x118efe=_0x56d44e['KaCqv'](_0xfb2af3,0x3e8),_0x387c5a=new Date(_0x2c5635)['toISOString'](),_0x4e1b6f=new Date(_0xebc4e0)['toISOString'](),_0x19afa8=[_0x5abfba(0x100),_0x305f21,_0x56d44e[_0x5abfba(0x153)],_0x413163,_0x56d44e[_0x5abfba(0x1de)],_0x1d2f38,_0x56d44e[_0x5abfba(0x19a)],_0x3abc9c,'separator',_0x58747a,'numDigits',String(_0x44f57b),_0x5abfba(0x13d),_0x56d44e['XlESP'](_0x1ffa0e,''),'createdAt',_0x387c5a,'expiresAt',_0x4e1b6f,_0x5abfba(0x1e1),_0x56d44e[_0x5abfba(0xe3)](String,_0x118efe)];_0x5f3b5f&&_0x19afa8['push']('idemKey',_0x5f3b5f);const _0x46266b=redisClient[_0x5abfba(0x13c)](),_0x3c864d=await _0x46266b['eval'](LUA_RESERVE_NUMBER,0x3,_0x30caa6,_0x1d1321,_0x5a0092,_0x141f51?'1':'0',String(_0x1aa886),_0x373d04,_0x332e8b,String(_0x118efe),String(_0xebc4e0),String(_0x2c5635),_0x419ad7,..._0x19afa8),_0x17b2cb=_0x3c864d[0x0],_0x1ec51c=_0x3c864d[0x1]===0x1,_0x17ea4f=_0x3c864d[0x2]||0x0;let _0x5b10ca;try{_0x5b10ca=this[_0x5abfba(0x1a0)]({'format':_0x1d2f38,'prefix':_0x3abc9c,'datePrefix':_0x1ffa0e,'separator':_0x58747a,'numDigits':_0x44f57b,'counterInt':_0x17b2cb});}catch(_0x2d9a78){try{await _0x46266b[_0x5abfba(0x15d)](LUA_CANCEL_RESERVATION,0x3,_0x332e8b,_0x5a0092,_0x1d1321,_0x373d04,_0x56d44e['jdYCR'](String,_0x1aa886));}catch(_0x1b4e96){logger[_0x5abfba(0x1d0)]({'event':_0x5abfba(0xce),'error':_0x1b4e96['message'],'resource':_0x305f21,'formatKey':_0x413163,'counterInt':_0x17b2cb,'token':_0x373d04},_0x5abfba(0x11d));}throw _0x2d9a78;}try{await _0x46266b['hset'](_0x332e8b,'value',_0x5b10ca);}catch(_0x48c255){logger[_0x5abfba(0x1d0)]({'event':_0x5abfba(0x128),'error':_0x48c255[_0x5abfba(0x194)],'resource':_0x305f21,'formatKey':_0x413163,'counterInt':_0x17b2cb,'token':_0x373d04},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0x380bf3={'token':_0x373d04,'value':_0x5b10ca,'counter':_0x17b2cb,'resource':_0x305f21,'formatKey':_0x413163,'isReused':_0x1ec51c,'createdAt':_0x387c5a,'expiresAt':_0x4e1b6f,'reapedCount':_0x17ea4f},_0x1d041e=await this[_0x5abfba(0x164)](_0x4ed309,_0x380bf3);if(!_0x1d041e['stored']){try{await _0x46266b[_0x5abfba(0x15d)](LUA_CANCEL_RESERVATION,0x3,_0x332e8b,_0x5a0092,_0x1d1321,_0x373d04,String(_0x1aa886));}catch(_0x2bee9e){logger['warn']({'event':'idgen_reserve_idem_loser_cancel_error','error':_0x2bee9e[_0x5abfba(0x194)],'resource':_0x305f21,'formatKey':_0x413163,'counterInt':_0x17b2cb,'token':_0x373d04},'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser');}return logger[_0x5abfba(0x1be)]({'event':_0x56d44e[_0x5abfba(0x134)],'resource':_0x305f21,'formatKey':_0x413163,'counter':_0x17b2cb,'token':_0x373d04},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x1d041e['winnerResult'];}return this[_0x5abfba(0x1cd)](_0x305f21,_0x413163,{'lastReservedCounter':_0x17b2cb,'lastReservedAt':_0x387c5a,'lastReapedCount':_0x17ea4f},_0x1aa886),logger[_0x5abfba(0x1be)]({'event':_0x56d44e[_0x5abfba(0x1eb)],'resource':_0x305f21,'formatKey':_0x413163,'counter':_0x17b2cb,'isReused':_0x1ec51c,'token':_0x373d04,'ttl':_0xfb2af3,'reapedCount':_0x17ea4f},_0x5abfba(0xdf)+_0x5b10ca+'\x20(token='+_0x373d04+')'),_0x380bf3;}async[a0_0x3ce6c9(0x1e4)](_0x55ff84){const _0x1948f6=a0_0x3ce6c9,_0x22f205={'CuWQH':'IDGEN_DISABLED','ZixPG':function(_0x413084,_0x33c75a){return _0x413084!==_0x33c75a;},'HKsmP':'IDGEN_RESERVATION_NOT_FOUND','rvxDk':function(_0xf4ddc3,_0x4ee881,_0xefa0af){return _0xf4ddc3(_0x4ee881,_0xefa0af);},'OwnNW':'text','NiAXX':'idgen_reservation_confirmed'};if(!this['enabled'])throw new IdGeneratorError(_0x22f205['CuWQH'],'ID\x20Generator\x20is\x20disabled');const _0x424242=this['_validateReservationToken'](_0x55ff84&&_0x55ff84[_0x1948f6(0xea)]),_0x20261d=this['_validateIdempotencyKey'](_0x55ff84&&_0x55ff84['idempotencyKey']);let _0x3346a=null;if(_0x20261d){_0x3346a=idempotencyManager[_0x1948f6(0x173)](_0x1948f6(0x195),'reserve_confirm',_0x424242+':'+_0x20261d);const _0x2827c6=await this['_retrieveIdemCache'](_0x3346a);if(_0x2827c6)return _0x2827c6;}const _0x369dc5=await this[_0x1948f6(0x103)](_0x424242),_0x12f57f=redisClient['getClient'](),_0x4cb70=await _0x12f57f[_0x1948f6(0x15d)](LUA_CONFIRM_RESERVATION,0x2,_0x369dc5['rsvKey'],_0x369dc5['rsvIdxKey'],_0x424242);if(!_0x4cb70||_0x22f205['ZixPG'](_0x4cb70[0x0],0x1))throw new IdGeneratorError(_0x22f205[_0x1948f6(0xeb)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x424242,{'token':_0x424242});const _0x51d864=_0x22f205[_0x1948f6(0x18c)](parseInt,_0x4cb70[0x1],0xa),_0x1c5e2e=_0x4cb70[0x2],_0x33d765=_0x4cb70[0x3],_0x39e269=new Date()[_0x1948f6(0xf9)](),_0x33df90={'confirmed':!![],'token':_0x424242,'value':_0x1c5e2e,'counter':_0x51d864,'resource':_0x369dc5['resource'],'formatKey':_0x33d765,'confirmedAt':_0x39e269};await this[_0x1948f6(0xe4)](_0x3346a,_0x33df90);const _0x2ab0b5=_0x33d765['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x58c32c=_0x2ab0b5?_0x2ab0b5[0x1]:_0x22f205['OwnNW'],_0x2e258d=this['_getCounterTTL'](_0x58c32c);return this['_updateMeta'](_0x369dc5['resource'],_0x33d765,{'lastConfirmedCounter':_0x51d864,'lastConfirmedAt':_0x39e269},_0x2e258d),logger[_0x1948f6(0x1be)]({'event':_0x22f205[_0x1948f6(0x11a)],'resource':_0x369dc5['resource'],'formatKey':_0x33d765,'counter':_0x51d864,'token':_0x424242},_0x1948f6(0xfa)+_0x1c5e2e+_0x1948f6(0x1af)+_0x424242+')'),_0x33df90;}async[a0_0x3ce6c9(0x1d6)](_0x53e136){const _0x528f3c=a0_0x3ce6c9,_0x5df8c8={'vhlbY':'ID\x20Generator\x20is\x20disabled','NqfUA':function(_0x5aa2b4,_0x4ee8c1){return _0x5aa2b4(_0x4ee8c1);}};if(!this['enabled'])throw new IdGeneratorError(_0x528f3c(0x172),_0x5df8c8['vhlbY']);const _0x3406a8=this[_0x528f3c(0x15b)](_0x53e136&&_0x53e136[_0x528f3c(0xea)]),_0x42b6da=this['_validateIdempotencyKey'](_0x53e136&&_0x53e136['idempotencyKey']);let _0x21e2aa=null;if(_0x42b6da){_0x21e2aa=idempotencyManager[_0x528f3c(0x173)](_0x528f3c(0x195),_0x528f3c(0x129),_0x3406a8+':'+_0x42b6da);const _0x591172=await this['_retrieveIdemCache'](_0x21e2aa);if(_0x591172)return _0x591172;}const _0x76ec7=await this[_0x528f3c(0x103)](_0x3406a8),_0x5d43a6=this[_0x528f3c(0x101)](_0x76ec7['resource'],_0x76ec7[_0x528f3c(0x145)]),_0x2be5eb=_0x76ec7[_0x528f3c(0x145)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x40e519=_0x2be5eb?_0x2be5eb[0x1]:_0x528f3c(0x123),_0x65d631=this[_0x528f3c(0x140)](_0x40e519),_0x5c4949=redisClient['getClient'](),_0x4d68af=await _0x5c4949['eval'](LUA_CANCEL_RESERVATION,0x3,_0x76ec7[_0x528f3c(0x18e)],_0x76ec7[_0x528f3c(0x16b)],_0x5d43a6,_0x3406a8,_0x5df8c8[_0x528f3c(0x1d5)](String,_0x65d631));if(!_0x4d68af||_0x4d68af[0x0]!==0x1)throw new IdGeneratorError(_0x528f3c(0x150),_0x528f3c(0x18d)+_0x3406a8,{'token':_0x3406a8});const _0x18a543=parseInt(_0x4d68af[0x1],0xa),_0x36274c=_0x4d68af[0x2],_0x531c93=_0x4d68af[0x3],_0x46a013=new Date()['toISOString'](),_0x58ddde={'cancelled':!![],'token':_0x3406a8,'value':_0x36274c,'counter':_0x18a543,'resource':_0x76ec7['resource'],'formatKey':_0x531c93,'releasedToReuse':!![],'cancelledAt':_0x46a013};return await this[_0x528f3c(0xe4)](_0x21e2aa,_0x58ddde),this[_0x528f3c(0x1cd)](_0x76ec7['resource'],_0x531c93,{'lastCancelledCounter':_0x18a543,'lastCancelledAt':_0x46a013},_0x65d631),logger[_0x528f3c(0x1be)]({'event':_0x528f3c(0x165),'resource':_0x76ec7['resource'],'formatKey':_0x531c93,'counter':_0x18a543,'token':_0x3406a8},_0x528f3c(0xc5)+_0x36274c+_0x528f3c(0x1af)+_0x3406a8+')'),_0x58ddde;}async[a0_0x3ce6c9(0x19c)](_0x4acb96){const _0x5be1bc=a0_0x3ce6c9,_0x64c327={'pKLxr':'IDGEN_DISABLED','WOtvo':function(_0x173657,_0x18cdd2){return _0x173657*_0x18cdd2;},'iYPwM':function(_0x4a618a,_0xc63415){return _0x4a618a(_0xc63415);},'GTnld':function(_0x3f1bc5,_0x3946db){return _0x3f1bc5!==_0x3946db;},'daipx':'IDGEN_RESERVATION_NOT_FOUND','AKFNG':function(_0x40f88f,_0x4baf39,_0x59bd4b){return _0x40f88f(_0x4baf39,_0x59bd4b);}};if(!this[_0x5be1bc(0x1e6)])throw new IdGeneratorError(_0x64c327[_0x5be1bc(0x1ec)],'ID\x20Generator\x20is\x20disabled');const _0x50fd14=this['_validateReservationToken'](_0x4acb96&&_0x4acb96[_0x5be1bc(0xea)]),_0x55cebc=this[_0x5be1bc(0x10f)](_0x4acb96&&_0x4acb96['ttl']),_0x411c74=this[_0x5be1bc(0x127)](_0x4acb96&&_0x4acb96['idempotencyKey']);let _0x3c1eea=null;if(_0x411c74){_0x3c1eea=idempotencyManager[_0x5be1bc(0x173)]('idgen',_0x5be1bc(0xf8),_0x50fd14+':'+_0x411c74);const _0x137ca2=await this[_0x5be1bc(0xee)](_0x3c1eea);if(_0x137ca2)return _0x137ca2;}const _0x5c3e3a=await this['_getReservationContext'](_0x50fd14),_0x51e710=Date['now'](),_0x31fbe7=_0x51e710+_0x55cebc*0x3e8,_0x5d362f=_0x64c327['WOtvo'](_0x55cebc,0x3e8),_0x3983a2=new Date(_0x31fbe7)['toISOString'](),_0x19cdc7=redisClient[_0x5be1bc(0x13c)](),_0x2061e1=await _0x19cdc7[_0x5be1bc(0x15d)](LUA_EXTEND_RESERVATION,0x2,_0x5c3e3a['rsvKey'],_0x5c3e3a['rsvIdxKey'],_0x50fd14,String(_0x5d362f),_0x64c327[_0x5be1bc(0x197)](String,_0x31fbe7),_0x3983a2);if(!_0x2061e1||_0x64c327['GTnld'](_0x2061e1[0x0],0x1))throw new IdGeneratorError(_0x64c327['daipx'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x50fd14,{'token':_0x50fd14});const _0x2c8f56=_0x2061e1[0x1],_0x3ae1ff=_0x64c327[_0x5be1bc(0x19d)](parseInt,_0x2061e1[0x2],0xa),_0x11e95e=_0x2061e1[0x3],_0x34b82d=_0x2061e1[0x4],_0x36acaa=new Date(_0x51e710)[_0x5be1bc(0xf9)](),_0x1c6db6={'extended':!![],'token':_0x50fd14,'previousExpiresAt':_0x2c8f56,'expiresAt':_0x3983a2,'ttlMs':_0x5d362f,'resource':_0x5c3e3a['resource'],'formatKey':_0x34b82d,'counter':_0x3ae1ff,'value':_0x11e95e,'extendedAt':_0x36acaa};await this[_0x5be1bc(0xe4)](_0x3c1eea,_0x1c6db6);const _0x4ae019=_0x34b82d['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1e474b=_0x4ae019?_0x4ae019[0x1]:_0x5be1bc(0x123),_0x25abfa=this[_0x5be1bc(0x140)](_0x1e474b);return this['_updateMeta'](_0x5c3e3a['resource'],_0x34b82d,{'lastExtendedCounter':_0x3ae1ff,'lastExtendedAt':_0x36acaa},_0x25abfa),logger['info']({'event':'idgen_reservation_extended','resource':_0x5c3e3a['resource'],'formatKey':_0x34b82d,'counter':_0x3ae1ff,'token':_0x50fd14,'ttl':_0x55cebc},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x11e95e+'\x20(token='+_0x50fd14+_0x5be1bc(0x1e7)+_0x55cebc+'s)'),_0x1c6db6;}async[a0_0x3ce6c9(0x13f)](_0x21c041){const _0x57fe6e=a0_0x3ce6c9,_0xfa836f={'WGcSu':'IDGEN_DISABLED','Wqqvo':_0x57fe6e(0x1ce),'vIyWW':function(_0x1a05e2,_0x1a4793){return _0x1a05e2===_0x1a4793;},'BBmtW':function(_0x19ed2d,_0x20316b,_0x511cd1){return _0x19ed2d(_0x20316b,_0x511cd1);},'VYUPS':_0x57fe6e(0x1df),'NtsUq':function(_0x420004,_0x3f2a85){return _0x420004>=_0x3f2a85;}};if(!this[_0x57fe6e(0x1e6)])throw new IdGeneratorError(_0xfa836f['WGcSu'],_0xfa836f['Wqqvo']);const _0x455a2a=this['_validateReservationToken'](_0x21c041&&_0x21c041[_0x57fe6e(0xea)]),_0x5c2db9=this['_buildReservationKey'](_0x455a2a),_0x590e55=redisClient[_0x57fe6e(0x13c)](),_0x21463b=_0x590e55['pipeline']();_0x21463b['hgetall'](_0x5c2db9),_0x21463b['pttl'](_0x5c2db9);const _0x4bbc70=await _0x21463b['exec'](),_0x44e1ea=_0x4bbc70&&_0x4bbc70[0x0]&&_0x4bbc70[0x0][0x1],_0x2c2428=_0x4bbc70&&_0x4bbc70[0x1]&&_0x4bbc70[0x1][0x1];if(!_0x44e1ea||_0xfa836f[_0x57fe6e(0xc6)](Object['keys'](_0x44e1ea)['length'],0x0))throw new IdGeneratorError(_0x57fe6e(0x150),_0x57fe6e(0x18d)+_0x455a2a,{'token':_0x455a2a});return{'token':_0x455a2a,'resource':_0x44e1ea['resource']||null,'formatKey':_0x44e1ea['formatKey']||null,'format':_0x44e1ea['format']||null,'prefix':_0x44e1ea['prefix']||'','separator':_0x44e1ea['separator']||'','numDigits':_0x44e1ea['numDigits']?_0xfa836f['BBmtW'](parseInt,_0x44e1ea['numDigits'],0xa):null,'datePrefix':_0x44e1ea[_0x57fe6e(0x13d)]||'','counter':_0x44e1ea['counter']?parseInt(_0x44e1ea[_0x57fe6e(0xe1)],0xa):null,'value':_0x44e1ea['value']||null,'isReused':_0x44e1ea['isReused']==='1'||_0x44e1ea['isReused']===0x1,'createdAt':_0x44e1ea[_0x57fe6e(0x144)]||null,'expiresAt':_0x44e1ea[_0x57fe6e(0x182)]||null,'ttlRemainingMs':_0xfa836f[_0x57fe6e(0xc6)](typeof _0x2c2428,_0xfa836f[_0x57fe6e(0x124)])&&_0xfa836f[_0x57fe6e(0x119)](_0x2c2428,0x0)?_0x2c2428:null};}async['_getReservationContext'](_0x2bf1a0){const _0x51dee1=a0_0x3ce6c9,_0x1ac735={'qwZKe':_0x51dee1(0x100),'ztOes':function(_0x4c4f97,_0x382163){return _0x4c4f97||_0x382163;},'xhwsQ':'IDGEN_RESERVATION_NOT_FOUND'},_0x20446f=this[_0x51dee1(0x174)](_0x2bf1a0),_0x2438cb=redisClient[_0x51dee1(0x13c)](),_0x331392=await _0x2438cb['hmget'](_0x20446f,_0x1ac735['qwZKe'],_0x51dee1(0x145)),_0xb2f8e4=_0x331392&&_0x331392[0x0],_0x323c3d=_0x331392&&_0x331392[0x1];if(_0x1ac735[_0x51dee1(0x189)](!_0xb2f8e4,!_0x323c3d))throw new IdGeneratorError(_0x1ac735[_0x51dee1(0x177)],_0x51dee1(0x18d)+_0x2bf1a0,{'token':_0x2bf1a0});return{'resource':_0xb2f8e4,'formatKey':_0x323c3d,'rsvKey':_0x20446f,'rsvIdxKey':this['_buildReservationIndexKey'](_0xb2f8e4,_0x323c3d)};}async[a0_0x3ce6c9(0x148)](_0x4d76c8){const _0x237f31=a0_0x3ce6c9,_0x55e331={'Ktdnz':'ID\x20Generator\x20is\x20disabled','CokYE':function(_0x39a6f7,_0x36b01e){return _0x39a6f7===_0x36b01e;},'AnnGq':_0x237f31(0x148),'bRIMh':function(_0x37b5fc,_0x444955){return _0x37b5fc===_0x444955;},'IzrKF':'IDGEN_UNIQUE_RETRY_EXHAUSTED','ERaUw':function(_0x22394a,_0x2620aa){return _0x22394a*_0x2620aa;},'VXKsv':_0x237f31(0x186),'AbGvC':function(_0x2b3405,_0x2fd0f9){return _0x2b3405||_0x2fd0f9;}};if(!this[_0x237f31(0x1e6)])throw new IdGeneratorError('IDGEN_DISABLED',_0x55e331[_0x237f31(0x1bd)]);this[_0x237f31(0xf4)](_0x4d76c8[_0x237f31(0x100)]),this[_0x237f31(0x105)](_0x4d76c8[_0x237f31(0x118)]);const _0x4dde30=this[_0x237f31(0x14b)](_0x4d76c8[_0x237f31(0x1ad)]),_0x420c39=this['_validateMaxRetry'](_0x4d76c8[_0x237f31(0x13e)]),_0x11c53a=this['_validateIdempotencyKey'](_0x4d76c8['idempotencyKey']),_0x55d70f=_0x55e331['CokYE'](_0x4d76c8[_0x237f31(0x18a)],!![]),{resource:_0x2ee547,pattern:_0x2229cb}=_0x4d76c8;let _0x543fea=null;if(_0x11c53a){_0x543fea=this[_0x237f31(0x1d1)](_0x55e331[_0x237f31(0x169)],_0x2ee547,null,_0x11c53a);const _0x13183e=await this['_retrieveIdemCache'](_0x543fea);if(_0x13183e)return _0x13183e;}const _0x3f9087=redisClient['getClient']();let _0x142326=null,_0x34d2dc=0x0;if(!_0x55d70f)_0x142326=this['_generateFromPattern'](_0x2229cb),_0x34d2dc=0x1;else{for(let _0x4c72fc=0x0;_0x4c72fc<_0x420c39;_0x4c72fc++){_0x34d2dc++;const _0x474509=this[_0x237f31(0x14f)](_0x2229cb);if(_0x4dde30){const _0x53b92b=this['_buildActiveKey'](_0x2ee547,_0x474509),_0x533297=await _0x3f9087['set'](_0x53b92b,'1','EX',_0x4dde30,'NX');if(_0x55e331['bRIMh'](_0x533297,'OK')){_0x142326=_0x474509;break;}}else{const _0x48651d=this[_0x237f31(0xe6)](_0x2ee547),_0x1108e1=await _0x3f9087[_0x237f31(0x190)](_0x48651d,_0x474509);if(_0x1108e1===0x1){_0x142326=_0x474509;break;}}}if(_0x55e331[_0x237f31(0x1c7)](_0x142326,null))throw new IdGeneratorError(_0x55e331['IzrKF'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x420c39+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x2ee547,'pattern':_0x2229cb,'maxRetry':_0x420c39});}const _0x5d35b9={'value':_0x142326,'resource':_0x2ee547,'pattern':_0x2229cb,'attemptCount':_0x34d2dc,'generatedAt':new Date()[_0x237f31(0xf9)]()};_0x4dde30&&_0x55d70f&&(_0x5d35b9[_0x237f31(0x182)]=new Date(Date[_0x237f31(0x1a7)]()+_0x55e331[_0x237f31(0xd1)](_0x4dde30,0x3e8))[_0x237f31(0xf9)]());const _0x166441=await this[_0x237f31(0x164)](_0x543fea,_0x5d35b9);if(!_0x166441['stored'])return _0x55d70f&&await this['_undoRandomReservation'](_0x2ee547,_0x142326,_0x4dde30),logger['info']({'event':_0x55e331['VXKsv'],'resource':_0x2ee547,'pattern':_0x2229cb,'value':_0x142326},_0x237f31(0xd0)),_0x166441[_0x237f31(0x17c)];return logger['info']({'event':_0x237f31(0x136),'resource':_0x2ee547,'pattern':_0x2229cb,'attemptCount':_0x34d2dc,'ensureUnique':_0x55d70f,'ttl':_0x55e331[_0x237f31(0x110)](_0x4dde30,0x0)},_0x237f31(0xf7)+_0x142326),_0x5d35b9;}async[a0_0x3ce6c9(0x15a)](_0x4d1c30){const _0x169824=a0_0x3ce6c9,_0x5eb306={'bDCOg':function(_0x637a0b,_0x45b1d6){return _0x637a0b<_0x45b1d6;},'oNEhL':function(_0x4c5b08,_0x226c4d){return _0x4c5b08>_0x226c4d;},'dwcnU':function(_0x4725b8,_0x1def22){return _0x4725b8===_0x1def22;}},_0x2db1b7=_0x4d1c30['digits']==null?this[_0x169824(0x14a)]:_0x4d1c30[_0x169824(0x12e)];if(!Number[_0x169824(0xc7)](_0x2db1b7)||_0x5eb306['bDCOg'](_0x2db1b7,MIN_PIN_DIGITS)||_0x5eb306['oNEhL'](_0x2db1b7,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x169824(0xe2),_0x169824(0x12a)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x2db1b7+')');const _0x57c535='9'['repeat'](_0x2db1b7);return this[_0x169824(0x148)]({'resource':_0x4d1c30['resource'],'pattern':_0x57c535,'ensureUnique':_0x5eb306[_0x169824(0x1e0)](_0x4d1c30[_0x169824(0x18a)],!![]),'ttl':_0x4d1c30[_0x169824(0x1ad)],'maxRetry':_0x4d1c30['maxRetry'],'idempotencyKey':_0x4d1c30[_0x169824(0x160)]});}async['serial'](_0x39e8d8){const _0x5be31a=a0_0x3ce6c9,_0x431b78=_0x39e8d8[_0x5be31a(0x118)]||this[_0x5be31a(0xc2)];return this[_0x5be31a(0x148)]({'resource':_0x39e8d8['resource'],'pattern':_0x431b78,'ensureUnique':_0x39e8d8['ensureUnique']!==![],'ttl':_0x39e8d8['ttl'],'maxRetry':_0x39e8d8['maxRetry'],'idempotencyKey':_0x39e8d8[_0x5be31a(0x160)]});}async['code'](_0x1e2602){const _0x438040=a0_0x3ce6c9,_0xc5b76b=_0x1e2602['pattern']||this[_0x438040(0xca)];return this[_0x438040(0x148)]({'resource':_0x1e2602['resource'],'pattern':_0xc5b76b,'ensureUnique':_0x1e2602['ensureUnique']!==![],'ttl':_0x1e2602['ttl'],'maxRetry':_0x1e2602['maxRetry'],'idempotencyKey':_0x1e2602['idempotencyKey']});}async[a0_0x3ce6c9(0x1ae)](_0xc5ef11){const _0x241570=a0_0x3ce6c9,_0x1383ce={'jXgKz':function(_0x48d437,_0x14f570){return _0x48d437===_0x14f570;},'VQAXg':'IDGEN_INVALID_NUMBER','tnaNt':_0x241570(0x178),'YEkYh':'idgen_consumed'};if(!this[_0x241570(0x1e6)])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');this[_0x241570(0xf4)](_0xc5ef11['resource']);if(typeof _0xc5ef11['value']!=='string'||_0x1383ce['jXgKz'](_0xc5ef11[_0x241570(0x1c5)]['length'],0x0))throw new IdGeneratorError(_0x1383ce[_0x241570(0xda)],_0x1383ce['tnaNt']);const {resource:_0x2f34ee,value:_0x235ad7}=_0xc5ef11,_0x2cb879=redisClient[_0x241570(0x13c)](),_0x3bbd28=this['_buildActiveKey'](_0x2f34ee,_0x235ad7),_0x538c7b=this['_buildIssuedKey'](_0x2f34ee),[_0x8c4772,_0x352fc1]=await Promise[_0x241570(0x192)]([_0x2cb879[_0x241570(0x155)](_0x3bbd28),_0x2cb879[_0x241570(0x17b)](_0x538c7b,_0x235ad7)]),_0x3499b5=_0x8c4772+_0x352fc1>0x0;return logger[_0x241570(0x1be)]({'event':_0x1383ce[_0x241570(0x1a2)],'resource':_0x2f34ee,'value':_0x235ad7,'consumed':_0x3499b5},'ID\x20Generator\x20consumed:\x20'+_0x235ad7),{'consumed':_0x3499b5,'resource':_0x2f34ee,'value':_0x235ad7,'consumedAt':new Date()['toISOString']()};}async['peek'](_0x273c34){const _0x317248=a0_0x3ce6c9,_0x10dbf3={'YSVpG':'IDGEN_DISABLED','dQLsz':_0x317248(0x1ce),'aVogs':function(_0x240ce4,_0x126274){return _0x240ce4===_0x126274;},'bPsJQ':'number','NNjcZ':function(_0x23b6ce,_0x593dbe){return _0x23b6ce||_0x593dbe;},'PwYVF':function(_0x1b11da,_0x192cae){return _0x1b11da===_0x192cae;},'ZjSAs':_0x317248(0x148)};if(!this['enabled'])throw new IdGeneratorError(_0x10dbf3[_0x317248(0x1a5)],_0x10dbf3['dQLsz']);this[_0x317248(0xf4)](_0x273c34[_0x317248(0x100)]);const _0x173525=_0x273c34[_0x317248(0x1e9)]||_0x317248(0x1df),_0x2a5b97=redisClient[_0x317248(0x13c)]();if(_0x10dbf3[_0x317248(0x10b)](_0x173525,_0x10dbf3[_0x317248(0x1e3)])){const _0x175132=(_0x273c34['format']||'text')['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x175132))throw new IdGeneratorError(_0x317248(0x138),'Invalid\x20format:\x20'+_0x273c34['format']);const {formatKey:_0x1ef6c7}=this['_buildFormatKey'](_0x175132,_0x273c34[_0x317248(0xf2)]||''),_0x353ee9=this[_0x317248(0x116)](_0x273c34['resource'],_0x1ef6c7),_0x6c2d5a=this[_0x317248(0x101)](_0x273c34['resource'],_0x1ef6c7),[_0x2ade3b,_0xa819b7]=await Promise['all']([_0x2a5b97[_0x317248(0x15e)](_0x353ee9),_0x2a5b97['zcard'](_0x6c2d5a)]);return{'resource':_0x273c34['resource'],'mode':_0x10dbf3['bPsJQ'],'formatKey':_0x1ef6c7,'currentCounter':parseInt(_0x2ade3b,0xa)||0x0,'reusePoolSize':_0x10dbf3[_0x317248(0xc3)](_0xa819b7,0x0)};}if(_0x10dbf3['PwYVF'](_0x173525,_0x317248(0x148))){const _0x2012eb=this['_buildIssuedKey'](_0x273c34['resource']),_0x147921=await _0x2a5b97['scard'](_0x2012eb);return{'resource':_0x273c34[_0x317248(0x100)],'mode':_0x10dbf3['ZjSAs'],'issuedCount':_0x147921||0x0};}throw new IdGeneratorError(_0x317248(0x1a8),'Unknown\x20mode:\x20'+_0x173525);}async[a0_0x3ce6c9(0x1da)](_0xe3e8da){const _0x91b6b2=a0_0x3ce6c9,_0x17508c={'atRJS':function(_0x4535e9,_0x197d06){return _0x4535e9>_0x197d06;}},_0x566bea=await this[_0x91b6b2(0xdd)](_0xe3e8da);if(_0x566bea[_0x91b6b2(0x1e9)]===_0x91b6b2(0x1df)){const _0x51751c=redisClient['getClient'](),_0x12ee51=this[_0x91b6b2(0x1b6)](_0xe3e8da['resource'],_0x566bea[_0x91b6b2(0x145)]),_0x3c595a=this['_buildReuseKey'](_0xe3e8da['resource'],_0x566bea['formatKey']),[_0x24cd93,_0x1144e2]=await Promise[_0x91b6b2(0x192)]([_0x51751c[_0x91b6b2(0x1a4)](_0x12ee51),_0x51751c['zrange'](_0x3c595a,0x0,-0x1)]);return{..._0x566bea,'reusePoolValues':_0x1144e2['map'](_0x27b16f=>parseInt(_0x27b16f,0xa)),'meta':_0x24cd93&&_0x17508c['atRJS'](Object['keys'](_0x24cd93)[_0x91b6b2(0xfb)],0x0)?_0x24cd93:null};}return _0x566bea;}async['reset'](_0x4067fc){const _0x1299cc=a0_0x3ce6c9,_0xda74be={'KVroM':_0x1299cc(0x172),'yJVAS':'IDGEN_RESET_NOT_ALLOWED','jFPTe':'number','rSJfR':function(_0x38141b,_0x2185d9){return _0x38141b===_0x2185d9;},'WSTlN':'IDGEN_INVALID_FORMAT','iCRgG':_0x1299cc(0x16e),'eJKvF':_0x1299cc(0x1d9),'QgkfA':'random','qbqVR':'issued','RSfBM':'IDGEN_INVALID_MODE'};if(!this[_0x1299cc(0x1e6)])throw new IdGeneratorError(_0xda74be[_0x1299cc(0x147)],_0x1299cc(0x1ce));if(!this['allowReset'])throw new IdGeneratorError(_0xda74be[_0x1299cc(0x167)],_0x1299cc(0x1bf));this[_0x1299cc(0xf4)](_0x4067fc['resource']);const _0x3f427d=_0x4067fc[_0x1299cc(0x1e9)]||_0xda74be[_0x1299cc(0x1b0)],_0x3a6e19=redisClient['getClient']();if(_0xda74be[_0x1299cc(0x121)](_0x3f427d,'number')){const _0x3bddb3=(_0x4067fc['format']||_0x1299cc(0x123))[_0x1299cc(0x17a)]();if(!ALLOWED_FORMATS[_0x1299cc(0x199)](_0x3bddb3))throw new IdGeneratorError(_0xda74be[_0x1299cc(0x130)],_0x1299cc(0x154)+_0x4067fc[_0x1299cc(0x11b)]);const {formatKey:_0x7c3ea8}=this['_buildFormatKey'](_0x3bddb3,_0x4067fc[_0x1299cc(0xf2)]||''),_0x98a31a=this['_buildSeqKey'](_0x4067fc[_0x1299cc(0x100)],_0x7c3ea8),_0x4b06e4=this['_buildReuseKey'](_0x4067fc[_0x1299cc(0x100)],_0x7c3ea8),_0x28e389=this['_buildMetaKey'](_0x4067fc[_0x1299cc(0x100)],_0x7c3ea8);return await _0x3a6e19[_0x1299cc(0x155)](_0x98a31a,_0x4b06e4,_0x28e389),logger[_0x1299cc(0x1d0)]({'event':_0xda74be['iCRgG'],'resource':_0x4067fc[_0x1299cc(0x100)],'mode':_0xda74be[_0x1299cc(0x1b0)],'formatKey':_0x7c3ea8},_0x1299cc(0x181)+_0x4067fc['resource']+':'+_0x7c3ea8),{'reset':!![],'resource':_0x4067fc[_0x1299cc(0x100)],'mode':_0x1299cc(0x1df),'formatKey':_0x7c3ea8,'deletedKeys':[_0xda74be[_0x1299cc(0x180)],'reuse','meta']};}if(_0xda74be[_0x1299cc(0x121)](_0x3f427d,_0xda74be[_0x1299cc(0x1ca)])){const _0x5eba8f=this['_buildIssuedKey'](_0x4067fc['resource']);return await _0x3a6e19[_0x1299cc(0x155)](_0x5eba8f),logger['warn']({'event':_0xda74be['iCRgG'],'resource':_0x4067fc[_0x1299cc(0x100)],'mode':_0xda74be[_0x1299cc(0x1ca)]},_0x1299cc(0x115)+_0x4067fc['resource']),{'reset':!![],'resource':_0x4067fc['resource'],'mode':_0xda74be['QgkfA'],'deletedKeys':[_0xda74be['qbqVR']]};}throw new IdGeneratorError(_0xda74be['RSfBM'],'Unknown\x20mode:\x20'+_0x3f427d);}}const instance=new IdGenerator();instance[a0_0x3ce6c9(0x1ea)]=IdGeneratorError,module['exports']=instance,module['exports'][a0_0x3ce6c9(0x1ea)]=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x7e058b=a0_0x21e4;(function(_0x154725,_0x1207b1){const _0x450e93=a0_0x21e4,_0x47fff6=_0x154725();while(!![]){try{const _0x46b516=parseInt(_0x450e93(0xfb))/0x1*(parseInt(_0x450e93(0x102))/0x2)+-parseInt(_0x450e93(0xeb))/0x3+-parseInt(_0x450e93(0xf8))/0x4+parseInt(_0x450e93(0xfc))/0x5+parseInt(_0x450e93(0xf7))/0x6+-parseInt(_0x450e93(0xfe))/0x7*(parseInt(_0x450e93(0xe9))/0x8)+parseInt(_0x450e93(0xff))/0x9;if(_0x46b516===_0x1207b1)break;else _0x47fff6['push'](_0x47fff6['shift']());}catch(_0x44dc65){_0x47fff6['push'](_0x47fff6['shift']());}}}(a0_0x1ba0,0xd034f));const redisClient=require(a0_0x7e058b(0xe7)),{logger}=require('./logger'),crypto=require('crypto');class IdempotencyManager{constructor(){const _0x88df9f=a0_0x7e058b;this['_enabled']=null,this[_0x88df9f(0xfd)]=null,this[_0x88df9f(0xe8)]=![];}['_initConfig'](){const _0x3700a8=a0_0x7e058b,_0x1c2198={'kZCuO':_0x3700a8(0xe6),'RZZoN':function(_0x32e205,_0x34e70b,_0x430ec3){return _0x32e205(_0x34e70b,_0x430ec3);},'XlgBe':'idempotency_config_init'};this[_0x3700a8(0x103)]=process[_0x3700a8(0x106)]['IDEMPOTENCY_ENABLED']===_0x1c2198['kZCuO'],this['_ttl']=_0x1c2198['RZZoN'](parseInt,process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x3700a8(0xe8)]=!![],logger['info']({'event':_0x1c2198['XlgBe'],'enabled':this[_0x3700a8(0x103)],'ttl':this['_ttl']},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x3700a8(0x103)]+_0x3700a8(0xed)+this['_ttl']+'s');}[a0_0x7e058b(0x105)](){!this['_initialized']&&this['_initConfig']();}get['enabled'](){const _0x1a70ec=a0_0x7e058b;return this[_0x1a70ec(0x105)](),this[_0x1a70ec(0x103)];}get[a0_0x7e058b(0xea)](){const _0x1b82b0=a0_0x7e058b;return this[_0x1b82b0(0x105)](),this[_0x1b82b0(0xfd)];}['isEnabled'](){return this['enabled'];}['buildKey'](_0x1849c6,_0x2be6bd){const _0xea7068=a0_0x7e058b,_0x36ca78={'dfnyt':_0xea7068(0xf5),'iSfgZ':'unknown'},_0x13294b=_0x2be6bd['path'][_0xea7068(0xf3)]('/')['filter'](Boolean),_0x542f16=_0x13294b[0x0]||_0x36ca78[_0xea7068(0xee)],_0x4c738d=_0x13294b[0x1]||_0xea7068(0xf9),_0xd11d52=_0x13294b[0x2]||_0x36ca78['iSfgZ'];return'rf:idem:'+_0x542f16+':'+_0x4c738d+':'+_0xd11d52+':'+_0x1849c6;}async[a0_0x7e058b(0xf2)](_0x2d7a4a,_0x2190e7){const _0x1de4b6=a0_0x7e058b,_0x5aeb84={'grgyI':_0x1de4b6(0xf0),'fsFrv':_0x1de4b6(0xf1)};if(!this['enabled'])return![];try{const _0x4acc98=redisClient[_0x1de4b6(0xfa)]();return await _0x4acc98['setex'](_0x2d7a4a,this['ttl'],JSON[_0x1de4b6(0xe5)](_0x2190e7)),logger['debug']({'event':_0x5aeb84['grgyI'],'key':_0x2d7a4a,'ttl':this[_0x1de4b6(0xea)],'statusCode':_0x2190e7[_0x1de4b6(0xef)]},_0x5aeb84['fsFrv']),!![];}catch(_0x5ba003){return logger[_0x1de4b6(0xec)]({'event':'idempotency_store_error','key':_0x2d7a4a,'error':_0x5ba003['message']},'Idempotency\x20store\x20error:\x20'+_0x5ba003['message']),![];}}async[a0_0x7e058b(0x104)](_0x3a26ec){const _0x112b6e=a0_0x7e058b,_0x1940fe={'DlTnm':_0x112b6e(0x101)};if(!this['enabled'])return null;try{const _0x4d91ac=redisClient[_0x112b6e(0xfa)](),_0x43d3e3=await _0x4d91ac['get'](_0x3a26ec);if(_0x43d3e3)return logger[_0x112b6e(0xf4)]({'event':_0x1940fe['DlTnm'],'key':_0x3a26ec},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x43d3e3);return logger['debug']({'event':'idempotency_miss','key':_0x3a26ec},_0x112b6e(0x100)),null;}catch(_0x4a2594){return logger['error']({'event':'idempotency_retrieve_error','key':_0x3a26ec,'error':_0x4a2594['message']},'Idempotency\x20retrieve\x20error:\x20'+_0x4a2594[_0x112b6e(0xf6)]),null;}}['generateKey'](_0xd7c8e9='req'){return _0xd7c8e9+'_'+crypto['randomUUID']();}[a0_0x7e058b(0xe4)](_0x607c20,_0x851cf2,_0x17b22f){return _0x607c20+':'+_0x851cf2+':'+_0x17b22f;}}function a0_0x21e4(_0x2a610a,_0x108a37){_0x2a610a=_0x2a610a-0xe4;const _0x1ba044=a0_0x1ba0();let _0x21e4c8=_0x1ba044[_0x2a610a];if(a0_0x21e4['kbbXGM']===undefined){var _0x54feb3=function(_0x4ee4cb){const _0x3f727f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x41502c='',_0xf488a7='';for(let _0x4d0e33=0x0,_0x49934f,_0x48f1cc,_0x413673=0x0;_0x48f1cc=_0x4ee4cb['charAt'](_0x413673++);~_0x48f1cc&&(_0x49934f=_0x4d0e33%0x4?_0x49934f*0x40+_0x48f1cc:_0x48f1cc,_0x4d0e33++%0x4)?_0x41502c+=String['fromCharCode'](0xff&_0x49934f>>(-0x2*_0x4d0e33&0x6)):0x0){_0x48f1cc=_0x3f727f['indexOf'](_0x48f1cc);}for(let _0x48eb77=0x0,_0x21171f=_0x41502c['length'];_0x48eb77<_0x21171f;_0x48eb77++){_0xf488a7+='%'+('00'+_0x41502c['charCodeAt'](_0x48eb77)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xf488a7);};a0_0x21e4['ZkzWJW']=_0x54feb3,a0_0x21e4['AoBvvQ']={},a0_0x21e4['kbbXGM']=!![];}const _0x3a46fb=_0x1ba044[0x0],_0xe5c3f6=_0x2a610a+_0x3a46fb,_0x15e473=a0_0x21e4['AoBvvQ'][_0xe5c3f6];return!_0x15e473?(_0x21e4c8=a0_0x21e4['ZkzWJW'](_0x21e4c8),a0_0x21e4['AoBvvQ'][_0xe5c3f6]=_0x21e4c8):_0x21e4c8=_0x15e473,_0x21e4c8;}function a0_0x1ba0(){const _0x2d80b2=['mtm1otuXoxrjB01prW','zxjYB3i','lcbuveW6ia','zgzUExq','C3rHDhvZq29Kzq','AwrLBxbVDgvUy3LFC3rVCMu','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','C3rVCMu','C3bSAxq','Aw5MBW','zgvMyxvSDa','BwvZC2fNzq','nta1mJC1mgPuufrXDq','nJC0nZKYvxLdserW','Dw5RBM93BG','z2v0q2XPzw50','nZGXmZyXtwXlz1rZ','mZG3nJaWrePLuNLR','x3r0Ba','mtyZntjRBevgtK0','odG1mZu1mM5qwLjAvq','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','AwrLBxbVDgvUy3LFAgL0','mMvWq3vvuq','x2vUywjSzwq','CMv0CMLLDMu','x2vUC3vYzuLUAxrPywXPEMvK','zw52','yNvPBgrezxrLCM1PBMLZDgLJs2v5','C3rYAw5NAwz5','Dhj1zq','lI9YzwrPCY1JBgLLBNq','x2LUAxrPywXPEMvK','nde0neHuD0zTuq','DhrS'];a0_0x1ba0=function(){return _0x2d80b2;};return a0_0x1ba0();}module['exports']=new IdempotencyManager();
1
+ 'use strict';const a0_0x215af1=a0_0x5baf;(function(_0x484f98,_0x16cee2){const _0x3929a3=a0_0x5baf,_0x39ed05=_0x484f98();while(!![]){try{const _0x25f8d1=parseInt(_0x3929a3(0x145))/0x1*(-parseInt(_0x3929a3(0x155))/0x2)+parseInt(_0x3929a3(0x143))/0x3*(-parseInt(_0x3929a3(0x160))/0x4)+parseInt(_0x3929a3(0x147))/0x5+parseInt(_0x3929a3(0x159))/0x6+parseInt(_0x3929a3(0x144))/0x7*(-parseInt(_0x3929a3(0x151))/0x8)+-parseInt(_0x3929a3(0x161))/0x9*(-parseInt(_0x3929a3(0x153))/0xa)+-parseInt(_0x3929a3(0x154))/0xb;if(_0x25f8d1===_0x16cee2)break;else _0x39ed05['push'](_0x39ed05['shift']());}catch(_0x26fb74){_0x39ed05['push'](_0x39ed05['shift']());}}}(a0_0x31f2,0x6bcc1));function a0_0x5baf(_0x14683c,_0x3a7b35){_0x14683c=_0x14683c-0x141;const _0x31f2d0=a0_0x31f2();let _0x5baf38=_0x31f2d0[_0x14683c];if(a0_0x5baf['drWNwj']===undefined){var _0x5b4d8d=function(_0x454a73){const _0xba6cb1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2d353d='',_0x2cd747='';for(let _0x5d2927=0x0,_0x2f8015,_0x3fa96c,_0x2e52ef=0x0;_0x3fa96c=_0x454a73['charAt'](_0x2e52ef++);~_0x3fa96c&&(_0x2f8015=_0x5d2927%0x4?_0x2f8015*0x40+_0x3fa96c:_0x3fa96c,_0x5d2927++%0x4)?_0x2d353d+=String['fromCharCode'](0xff&_0x2f8015>>(-0x2*_0x5d2927&0x6)):0x0){_0x3fa96c=_0xba6cb1['indexOf'](_0x3fa96c);}for(let _0x308f8c=0x0,_0x3ff00c=_0x2d353d['length'];_0x308f8c<_0x3ff00c;_0x308f8c++){_0x2cd747+='%'+('00'+_0x2d353d['charCodeAt'](_0x308f8c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2cd747);};a0_0x5baf['jJtMbu']=_0x5b4d8d,a0_0x5baf['kgzExy']={},a0_0x5baf['drWNwj']=!![];}const _0x3186af=_0x31f2d0[0x0],_0x4c990b=_0x14683c+_0x3186af,_0x5b4ad3=a0_0x5baf['kgzExy'][_0x4c990b];return!_0x5b4ad3?(_0x5baf38=a0_0x5baf['jJtMbu'](_0x5baf38),a0_0x5baf['kgzExy'][_0x4c990b]=_0x5baf38):_0x5baf38=_0x5b4ad3,_0x5baf38;}const redisClient=require(a0_0x215af1(0x162)),{logger}=require('./logger'),crypto=require('crypto');function a0_0x31f2(){const _0x3e8f98=['ndeZmZqXnwXbtLjirG','mJzuChb5yKy','BwvZC2fNzq','C3bSAxq','z2vUzxjHDgvlzxK','mJmYmZy4nK5cDwnzta','C3rVCMu','zw5HyMXLza','CMfUzg9Tvvvjra','zgvMyxvSDa','x2LUAxrdB25MAwC','CMy6AwrLBtO','mZC1nMPWv2rwrW','mtu2ntaXDMjsugHT','lI9YzwrPCY1JBgLLBNq','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','Cgf0Aa','AwrLBxbVDgvUy3LFAgL0','x2LUAxrPywXPEMvK','CMvX','AwrLBxbVDgvUy3LFBwLZCW','x3r0Ba','mJa4mMTorNDSyq','nti1zNjmEffk','mJa2mZnzvhnMsee','AxnfBMfIBgvK','mZG2mZC5nwDcB2nrAW','zgvIDwC','x2vUywjSzwq','zw52','CgfYC2u','DhrS','z2v0','Dhj1zq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','zxjYB3i','odKYmgXIuKLIta','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','mZGWDwjXBLfx'];a0_0x31f2=function(){return _0x3e8f98;};return a0_0x31f2();}class IdempotencyManager{constructor(){const _0x498d6=a0_0x215af1;this[_0x498d6(0x149)]=null,this[_0x498d6(0x142)]=null,this[_0x498d6(0x166)]=![];}[a0_0x215af1(0x15e)](){const _0x5279b4=a0_0x215af1,_0x5ef111={'gXSWU':function(_0x531267,_0x200a45){return _0x531267===_0x200a45;},'sDFWW':_0x5279b4(0x14e),'cpfKl':function(_0x491186,_0x3dd882,_0x2b8ea0){return _0x491186(_0x3dd882,_0x2b8ea0);}};this['_enabled']=_0x5ef111['gXSWU'](process[_0x5279b4(0x14a)]['IDEMPOTENCY_ENABLED'],_0x5ef111['sDFWW']),this['_ttl']=_0x5ef111['cpfKl'](parseInt,process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x5279b4(0x166)]=!![],logger['info']({'event':'idempotency_config_init','enabled':this[_0x5279b4(0x149)],'ttl':this[_0x5279b4(0x142)]},'Idempotency\x20configuration\x20initialized\x20-\x20enabled:\x20'+this[_0x5279b4(0x149)]+',\x20TTL:\x20'+this['_ttl']+'s');}['_ensureInitialized'](){const _0x4484b2=a0_0x215af1;!this[_0x4484b2(0x166)]&&this[_0x4484b2(0x15e)]();}get['enabled'](){const _0x9481a2=a0_0x215af1;return this['_ensureInitialized'](),this[_0x9481a2(0x149)];}get['ttl'](){const _0x48b6a1=a0_0x215af1;return this['_ensureInitialized'](),this[_0x48b6a1(0x142)];}[a0_0x215af1(0x146)](){const _0x3d1020=a0_0x215af1;return this[_0x3d1020(0x15b)];}['buildKey'](_0x3fa4ff,_0x160fbb){const _0x10e10d=a0_0x215af1,_0xf9c7aa=_0x160fbb[_0x10e10d(0x164)][_0x10e10d(0x157)]('/')['filter'](Boolean),_0x16aaeb=_0xf9c7aa[0x0]||_0x10e10d(0x15d),_0x3b65f7=_0xf9c7aa[0x1]||'unknown',_0x23a77d=_0xf9c7aa[0x2]||'unknown';return _0x10e10d(0x15f)+_0x16aaeb+':'+_0x3b65f7+':'+_0x23a77d+':'+_0x3fa4ff;}async[a0_0x215af1(0x15a)](_0x5864c7,_0x3f08d7){const _0x2dfd37=a0_0x215af1,_0x2faac8={'BQPEC':'idempotency_store'};if(!this[_0x2dfd37(0x15b)])return![];try{const _0x5a71d5=redisClient['getClient']();return await _0x5a71d5['setex'](_0x5864c7,this['ttl'],JSON['stringify'](_0x3f08d7)),logger[_0x2dfd37(0x148)]({'event':_0x2faac8['BQPEC'],'key':_0x5864c7,'ttl':this[_0x2dfd37(0x14c)],'statusCode':_0x3f08d7['statusCode']},'Idempotency\x20response\x20stored'),!![];}catch(_0x39c9eb){return logger[_0x2dfd37(0x150)]({'event':_0x2dfd37(0x152),'key':_0x5864c7,'error':_0x39c9eb[_0x2dfd37(0x156)]},'Idempotency\x20store\x20error:\x20'+_0x39c9eb[_0x2dfd37(0x156)]),![];}}async['retrieve'](_0x59409a){const _0x49a192=a0_0x215af1,_0xe188e5={'nfAIG':_0x49a192(0x165),'CwzEG':'Idempotency\x20cache\x20MISS','zfnNE':_0x49a192(0x163)};if(!this['enabled'])return null;try{const _0x32047a=redisClient['getClient'](),_0x198766=await _0x32047a[_0x49a192(0x14d)](_0x59409a);if(_0x198766)return logger['info']({'event':_0xe188e5['nfAIG'],'key':_0x59409a},'Idempotency\x20cache\x20HIT'),JSON[_0x49a192(0x14b)](_0x198766);return logger[_0x49a192(0x148)]({'event':_0x49a192(0x141),'key':_0x59409a},_0xe188e5['CwzEG']),null;}catch(_0x42d718){return logger[_0x49a192(0x150)]({'event':_0xe188e5['zfnNE'],'key':_0x59409a,'error':_0x42d718['message']},'Idempotency\x20retrieve\x20error:\x20'+_0x42d718['message']),null;}}[a0_0x215af1(0x158)](_0x3f014c=a0_0x215af1(0x167)){const _0x349a38=a0_0x215af1;return _0x3f014c+'_'+crypto[_0x349a38(0x15c)]();}[a0_0x215af1(0x14f)](_0x38fb3f,_0x2a9354,_0x2cdd60){return _0x38fb3f+':'+_0x2a9354+':'+_0x2cdd60;}}module['exports']=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x2de590=a0_0x4e54;(function(_0x2b6437,_0x346740){const _0x5d025d=a0_0x4e54,_0x2c78c9=_0x2b6437();while(!![]){try{const _0x2feded=parseInt(_0x5d025d(0x12a))/0x1+parseInt(_0x5d025d(0x117))/0x2+parseInt(_0x5d025d(0x114))/0x3+parseInt(_0x5d025d(0x136))/0x4+-parseInt(_0x5d025d(0x111))/0x5*(parseInt(_0x5d025d(0x115))/0x6)+-parseInt(_0x5d025d(0x113))/0x7+-parseInt(_0x5d025d(0x12f))/0x8*(-parseInt(_0x5d025d(0x134))/0x9);if(_0x2feded===_0x346740)break;else _0x2c78c9['push'](_0x2c78c9['shift']());}catch(_0x3e3f50){_0x2c78c9['push'](_0x2c78c9['shift']());}}}(a0_0x19be,0x93354));const {logger}=require('./logger');function a0_0x4e54(_0x5af418,_0x58cd97){_0x5af418=_0x5af418-0x10d;const _0x19be48=a0_0x19be();let _0x4e54c9=_0x19be48[_0x5af418];if(a0_0x4e54['YPBiBy']===undefined){var _0x111775=function(_0x4ede6f){const _0x540774='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xa18aca='',_0x55b6e9='';for(let _0x3b2400=0x0,_0x11805b,_0x565ad9,_0x35b40f=0x0;_0x565ad9=_0x4ede6f['charAt'](_0x35b40f++);~_0x565ad9&&(_0x11805b=_0x3b2400%0x4?_0x11805b*0x40+_0x565ad9:_0x565ad9,_0x3b2400++%0x4)?_0xa18aca+=String['fromCharCode'](0xff&_0x11805b>>(-0x2*_0x3b2400&0x6)):0x0){_0x565ad9=_0x540774['indexOf'](_0x565ad9);}for(let _0xef3a31=0x0,_0x1762fb=_0xa18aca['length'];_0xef3a31<_0x1762fb;_0xef3a31++){_0x55b6e9+='%'+('00'+_0xa18aca['charCodeAt'](_0xef3a31)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55b6e9);};a0_0x4e54['DmtNBX']=_0x111775,a0_0x4e54['MQMuMO']={},a0_0x4e54['YPBiBy']=!![];}const _0x52eddd=_0x19be48[0x0],_0x1f2349=_0x5af418+_0x52eddd,_0x42bdc5=a0_0x4e54['MQMuMO'][_0x1f2349];return!_0x42bdc5?(_0x4e54c9=a0_0x4e54['DmtNBX'](_0x4e54c9),a0_0x4e54['MQMuMO'][_0x1f2349]=_0x4e54c9):_0x4e54c9=_0x42bdc5,_0x4e54c9;}class ImportValidator{[a0_0x2de590(0x121)](_0x26458b,_0x3ef839=[],_0x5a9d2b={}){const _0x3948f3=a0_0x2de590,_0x23ff10={'hzVem':function(_0xcf18a4,_0x481292){return _0xcf18a4===_0x481292;},'JnTiW':function(_0x4cec3e,_0x71fabd){return _0x4cec3e===_0x71fabd;}},_0x5462ef=[];return _0x3ef839[_0x3948f3(0x12d)](_0x28f5f6=>{const _0x1c7524=_0x3948f3,_0x8fa6f5=_0x26458b[_0x28f5f6];(_0x23ff10['hzVem'](_0x8fa6f5,null)||_0x8fa6f5===undefined||_0x23ff10['hzVem'](_0x8fa6f5,''))&&_0x5462ef[_0x1c7524(0x11f)]({'field':_0x28f5f6,'type':_0x1c7524(0x127),'message':_0x1c7524(0x11c)});}),Object['keys'](_0x5a9d2b)['forEach'](_0x462592=>{const _0x2521ce=_0x3948f3,_0xef5332=_0x26458b[_0x462592],_0xbbb0df=_0x5a9d2b[_0x462592];if(_0x23ff10['JnTiW'](_0xef5332,null)||_0x23ff10[_0x2521ce(0x10f)](_0xef5332,undefined)||_0x23ff10[_0x2521ce(0x10e)](_0xef5332,''))return;const _0x46e157=this[_0x2521ce(0x10d)](_0x462592,_0xef5332,_0xbbb0df);_0x46e157&&_0x5462ef['push'](_0x46e157);}),_0x5462ef;}['validateFieldFormat'](_0xa92d78,_0x859077,_0x4ef004){const _0x38c06e=a0_0x2de590,_0x3e26a8={'MNmmU':_0x38c06e(0x129),'dZuNJ':_0x38c06e(0x12e),'vHyaX':_0x38c06e(0x11b)};switch(_0x4ef004){case _0x3e26a8[_0x38c06e(0x135)]:return this['validateEmail'](_0xa92d78,_0x859077);case _0x3e26a8[_0x38c06e(0x120)]:return this['validatePhone'](_0xa92d78,_0x859077);case'url':return this['validateUrl'](_0xa92d78,_0x859077);case _0x3e26a8['vHyaX']:return this['validateNumber'](_0xa92d78,_0x859077);default:return null;}}[a0_0x2de590(0x125)](_0x4d8b17,_0xc48afb){const _0x12805a=a0_0x2de590,_0x8719d2={'xNQNG':function(_0x17abd9,_0x2c521b){return _0x17abd9(_0x2c521b);},'IXxdZ':'format'},_0x18cb72=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x18cb72['test'](_0x8719d2[_0x12805a(0x118)](String,_0xc48afb)))return{'field':_0x4d8b17,'type':_0x8719d2[_0x12805a(0x133)],'message':_0x12805a(0x126)};return null;}[a0_0x2de590(0x122)](_0x47bc70,_0x2109a4){const _0x4413c1=a0_0x2de590,_0x480208={'vbChY':function(_0x280e60,_0x3d3554){return _0x280e60(_0x3d3554);},'sVmBP':function(_0x15d4a7,_0x57aedf){return _0x15d4a7<_0x57aedf;},'DwcYT':_0x4413c1(0x123)},_0x32197d=_0x480208['vbChY'](String,_0x2109a4)['replace'](/\s+/g,''),_0x2c7b21=/^[\d\+\-\(\)]+$/;if(!_0x2c7b21['test'](_0x32197d)||_0x480208['sVmBP'](_0x32197d[_0x4413c1(0x12c)],0x8))return{'field':_0x47bc70,'type':'format','message':_0x480208['DwcYT']};return null;}[a0_0x2de590(0x131)](_0xc58573,_0x4f5214){const _0x5141af=a0_0x2de590,_0x431621={'TMaAB':'format'};try{return new URL(String(_0x4f5214)),null;}catch(_0x5715de){return{'field':_0xc58573,'type':_0x431621[_0x5141af(0x130)],'message':'Invalid\x20URL\x20format'};}}[a0_0x2de590(0x11d)](_0x471432,_0x255c33){const _0x1b6543=a0_0x2de590,_0x1185d1={'AFBcX':_0x1b6543(0x128)};if(isNaN(_0x255c33))return{'field':_0x471432,'type':_0x1185d1['AFBcX'],'message':_0x1b6543(0x11e)};return null;}[a0_0x2de590(0x124)](_0x3eaf4d,_0x13b856){const _0xa09818=a0_0x2de590,_0x6f7cf7=new Map(),_0x15ab4d=[];return _0x3eaf4d[_0xa09818(0x12d)]((_0x3bafdb,_0x2ead78)=>{const _0x28e6e7=_0xa09818,_0xea3a72=_0x13b856[_0x28e6e7(0x12b)](_0x24cf39=>_0x3bafdb[_0x24cf39])['join']('|');_0x6f7cf7[_0x28e6e7(0x11a)](_0xea3a72)?_0x15ab4d[_0x28e6e7(0x11f)]({'rowIndex':_0x2ead78,'duplicateOf':_0x6f7cf7['get'](_0xea3a72),'key':_0xea3a72}):_0x6f7cf7[_0x28e6e7(0x110)](_0xea3a72,_0x2ead78);}),_0x15ab4d;}[a0_0x2de590(0x132)](_0x12242d,_0xd1891c,_0xc534d2){const _0x47e377=a0_0x2de590,_0x598e1e={'Lyxhi':function(_0x6e925,_0x5507e2){return _0x6e925>_0x5507e2;},'vhevz':'Batch\x20validation\x20completed'},_0x21cd36=[];return _0x12242d['forEach']((_0x21b67a,_0x52d792)=>{const _0x2ca468=a0_0x4e54,_0x24c99b=this[_0x2ca468(0x121)](_0x21b67a,_0xd1891c,_0xc534d2);_0x598e1e['Lyxhi'](_0x24c99b[_0x2ca468(0x12c)],0x0)&&_0x21cd36['push']({'rowIndex':_0x52d792,'rowData':_0x21b67a,'errors':_0x24c99b});}),logger['info']({'event':_0x47e377(0x119),'totalRows':_0x12242d[_0x47e377(0x12c)],'errorCount':_0x21cd36[_0x47e377(0x12c)]},_0x598e1e[_0x47e377(0x112)]),_0x21cd36;}}module[a0_0x2de590(0x116)]=new ImportValidator();function a0_0x19be(){const _0x1679fe=['CgHVBMu','mtzbs0vYvvy','ve1Hqui','DMfSAwrHDgvvCMW','yMf0y2HwywXPzgf0zvjVD3m','svH4zfO','mta1mZa5ovnSwNPmDa','tu5TBvu','mZaWmdmWoePKBgTxDW','DMfSAwrHDgvgAwvSzezVCM1HDa','sM5uAvC','AhPwzw0','C2v0','nuvVy0nqEq','DMHLDNO','nJa0ndi2mNHZA2fOvW','mJqZmdGXmgfLDfDfBa','ndKZndq3ohzyDNDlqq','zxHWB3j0CW','nty0odm4vKHevKHh','Ee5rtKC','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','AgfZ','BNvTyMvY','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','DMfSAwrHDgvoDw1Izxi','sw52ywXPzcbUDw1IzxiGzM9YBwf0','ChvZAa','zfP1tKO','DMfSAwrHDgvsB3C','DMfSAwrHDgvqAg9Uzq','sw52ywXPzcbWAg9UzsbMB3jTyxq','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','DMfSAwrHDgvfBwfPBa','sw52ywXPzcbLBwfPBcbMB3jTyxq','CMvXDwLYzwq','zM9YBwf0','zw1HAwW','mJeYmdu1EKrLwNDX','BwfW','BgvUz3rO','zM9YrwfJAa'];a0_0x19be=function(){return _0x1679fe;};return a0_0x19be();}
1
+ const a0_0x51ed90=a0_0x3c57;function a0_0x3c57(_0x580081,_0x2db017){_0x580081=_0x580081-0x13c;const _0x202e2f=a0_0x202e();let _0x3c5732=_0x202e2f[_0x580081];if(a0_0x3c57['asfsgi']===undefined){var _0x2f9f88=function(_0x25c32b){const _0x2d3e73='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1edf45='',_0x20748e='';for(let _0x55974a=0x0,_0x51e965,_0x5568eb,_0x3937ef=0x0;_0x5568eb=_0x25c32b['charAt'](_0x3937ef++);~_0x5568eb&&(_0x51e965=_0x55974a%0x4?_0x51e965*0x40+_0x5568eb:_0x5568eb,_0x55974a++%0x4)?_0x1edf45+=String['fromCharCode'](0xff&_0x51e965>>(-0x2*_0x55974a&0x6)):0x0){_0x5568eb=_0x2d3e73['indexOf'](_0x5568eb);}for(let _0x1ed2db=0x0,_0x2bc4ab=_0x1edf45['length'];_0x1ed2db<_0x2bc4ab;_0x1ed2db++){_0x20748e+='%'+('00'+_0x1edf45['charCodeAt'](_0x1ed2db)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x20748e);};a0_0x3c57['jgYJOR']=_0x2f9f88,a0_0x3c57['PhZZeT']={},a0_0x3c57['asfsgi']=!![];}const _0x52dc66=_0x202e2f[0x0],_0xab8c62=_0x580081+_0x52dc66,_0x46b22c=a0_0x3c57['PhZZeT'][_0xab8c62];return!_0x46b22c?(_0x3c5732=a0_0x3c57['jgYJOR'](_0x3c5732),a0_0x3c57['PhZZeT'][_0xab8c62]=_0x3c5732):_0x3c5732=_0x46b22c,_0x3c5732;}(function(_0x4e8005,_0x2becc8){const _0x30ac39=a0_0x3c57,_0x2e766a=_0x4e8005();while(!![]){try{const _0x58186a=-parseInt(_0x30ac39(0x152))/0x1+parseInt(_0x30ac39(0x154))/0x2*(-parseInt(_0x30ac39(0x155))/0x3)+parseInt(_0x30ac39(0x15f))/0x4*(parseInt(_0x30ac39(0x140))/0x5)+parseInt(_0x30ac39(0x14d))/0x6+-parseInt(_0x30ac39(0x143))/0x7+-parseInt(_0x30ac39(0x15a))/0x8+parseInt(_0x30ac39(0x14e))/0x9*(parseInt(_0x30ac39(0x160))/0xa);if(_0x58186a===_0x2becc8)break;else _0x2e766a['push'](_0x2e766a['shift']());}catch(_0x48796a){_0x2e766a['push'](_0x2e766a['shift']());}}}(a0_0x202e,0xf139e));const {logger}=require(a0_0x51ed90(0x15e));function a0_0x202e(){const _0x4cece9=['sw52ywXPzcbWAg9UzsbMB3jTyxq','CMfYy0G','D3bWAgG','ChvZAa','mZGYmdK4ngrgDxrpwG','DxjS','zM9YBwf0','DgvZDa','lI9SB2DNzxi','mJa4ndG0rur0EMnH','mtbOBwjOq20','BgvUz3rO','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','zgP6AMm','AM9PBG','mtm1BNz0z0DK','DMfSAwrHDgvfBwfPBa','zM9YrwfJAa','nJi3otu4mvDrvuzdDW','BNvTyMvY','C2v0','ENPKt2u','CMvXDwLYzwq','DMfSAwrHDgvqAg9Uzq','yMf0y2HwywXPzgf0zvjVD3m','DMfSAwrHDgvsB3C','z2v0','DMfSAwrHDgvoDw1Izxi','mZK0mZi2nM9St2T1qG','mJKXmdyZmdzWwwnOrgC','DMfSAwrHDgvgAwvSzezVCM1HDa','DMfSAwrHDgvvCMW','zeXfuwm','mtK1ntuWmfDkyNPZAG','AunJEgu','mtm0mJHhDe9gueG','ndm4CejYsgXb'];a0_0x202e=function(){return _0x4cece9;};return a0_0x202e();}class ImportValidator{[a0_0x51ed90(0x14a)](_0xf69a8,_0x49a830=[],_0x5e4be0={}){const _0x10e736=a0_0x51ed90,_0x5a10ad={'rarcH':function(_0x5e1f7d,_0x63b7b2){return _0x5e1f7d===_0x63b7b2;},'wpphh':_0x10e736(0x147)},_0x1d87e9=[];return _0x49a830[_0x10e736(0x142)](_0x3ab590=>{const _0x2800a0=_0x10e736,_0x134c2d=_0xf69a8[_0x3ab590];(_0x134c2d===null||_0x134c2d===undefined||_0x5a10ad[_0x2800a0(0x157)](_0x134c2d,''))&&_0x1d87e9['push']({'field':_0x3ab590,'type':_0x5a10ad[_0x2800a0(0x158)],'message':'Required\x20field\x20is\x20empty'});}),Object['keys'](_0x5e4be0)['forEach'](_0x151e19=>{const _0x1d7eb0=_0x10e736,_0x484127=_0xf69a8[_0x151e19],_0x2b9184=_0x5e4be0[_0x151e19];if(_0x5a10ad['rarcH'](_0x484127,null)||_0x5a10ad['rarcH'](_0x484127,undefined)||_0x484127==='')return;const _0x2a2f4c=this[_0x1d7eb0(0x14f)](_0x151e19,_0x484127,_0x2b9184);_0x2a2f4c&&_0x1d87e9['push'](_0x2a2f4c);}),_0x1d87e9;}[a0_0x51ed90(0x14f)](_0x8ccced,_0x1d810f,_0x59d300){const _0x3e2fbe=a0_0x51ed90,_0x4efc52={'dLEQc':'phone','iCcxe':_0x3e2fbe(0x144)};switch(_0x59d300){case'email':return this['validateEmail'](_0x8ccced,_0x1d810f);case _0x4efc52[_0x3e2fbe(0x151)]:return this[_0x3e2fbe(0x148)](_0x8ccced,_0x1d810f);case _0x3e2fbe(0x15b):return this[_0x3e2fbe(0x150)](_0x8ccced,_0x1d810f);case _0x4efc52[_0x3e2fbe(0x153)]:return this[_0x3e2fbe(0x14c)](_0x8ccced,_0x1d810f);default:return null;}}[a0_0x51ed90(0x141)](_0x2e0446,_0x530c09){const _0x3dad44=a0_0x51ed90,_0x54df5e={'lVEaw':function(_0x63b90f,_0x4c4e38){return _0x63b90f(_0x4c4e38);},'zMJZo':_0x3dad44(0x15c),'djzjc':'Invalid\x20email\x20format'},_0x2ad393=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x2ad393[_0x3dad44(0x15d)](_0x54df5e['lVEaw'](String,_0x530c09)))return{'field':_0x2e0446,'type':_0x54df5e['zMJZo'],'message':_0x54df5e[_0x3dad44(0x13e)]};return null;}[a0_0x51ed90(0x148)](_0x2aa27a,_0x2135f1){const _0x321442=a0_0x51ed90,_0x181741={'nNwhN':function(_0x3ef926,_0x18c440){return _0x3ef926<_0x18c440;}},_0x504094=String(_0x2135f1)['replace'](/\s+/g,''),_0x5043b9=/^[\d\+\-\(\)]+$/;if(!_0x5043b9[_0x321442(0x15d)](_0x504094)||_0x181741['nNwhN'](_0x504094[_0x321442(0x13c)],0x8))return{'field':_0x2aa27a,'type':_0x321442(0x15c),'message':_0x321442(0x156)};return null;}['validateUrl'](_0x3a345a,_0x2b960d){const _0x18334b=a0_0x51ed90,_0x20f9c7={'Wqxqe':_0x18334b(0x15c)};try{return new URL(String(_0x2b960d)),null;}catch(_0x258605){return{'field':_0x3a345a,'type':_0x20f9c7['Wqxqe'],'message':'Invalid\x20URL\x20format'};}}[a0_0x51ed90(0x14c)](_0x141271,_0x3dc72d){const _0x3c2fbf=a0_0x51ed90;if(isNaN(_0x3dc72d))return{'field':_0x141271,'type':_0x3c2fbf(0x15c),'message':'Invalid\x20number\x20format'};return null;}['detectDuplicatesInFile'](_0x12f4e1,_0x320f6c){const _0x2ce870=a0_0x51ed90,_0x30f4e2=new Map(),_0x1b1baa=[];return _0x12f4e1[_0x2ce870(0x142)]((_0x46f619,_0x2e5f33)=>{const _0x1713a4=_0x2ce870,_0x19eac0=_0x320f6c['map'](_0x538c82=>_0x46f619[_0x538c82])[_0x1713a4(0x13f)]('|');_0x30f4e2['has'](_0x19eac0)?_0x1b1baa['push']({'rowIndex':_0x2e5f33,'duplicateOf':_0x30f4e2[_0x1713a4(0x14b)](_0x19eac0),'key':_0x19eac0}):_0x30f4e2[_0x1713a4(0x145)](_0x19eac0,_0x2e5f33);}),_0x1b1baa;}[a0_0x51ed90(0x149)](_0x280b4a,_0x497e11,_0x73f8d8){const _0x4ce7c3=a0_0x51ed90,_0x3aa584={'zzdOe':'batch_validation_complete','dGeMo':_0x4ce7c3(0x13d)},_0x4ca55b=[];return _0x280b4a[_0x4ce7c3(0x142)]((_0x2d85a3,_0x3775fb)=>{const _0xca5f90=_0x4ce7c3,_0x103187=this['validateRow'](_0x2d85a3,_0x497e11,_0x73f8d8);_0x103187['length']>0x0&&_0x4ca55b[_0xca5f90(0x159)]({'rowIndex':_0x3775fb,'rowData':_0x2d85a3,'errors':_0x103187});}),logger['info']({'event':_0x3aa584[_0x4ce7c3(0x146)],'totalRows':_0x280b4a[_0x4ce7c3(0x13c)],'errorCount':_0x4ca55b['length']},_0x3aa584['dGeMo']),_0x4ca55b;}}module['exports']=new ImportValidator();