@restforgejs/platform 5.1.16 → 5.1.20

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 (176) 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/catalog/dbschema.js +2 -1
  5. package/generators/cli/endpoint/list.js +264 -0
  6. package/generators/cli/fast-track.js +395 -37
  7. package/generators/cli/processor/create.js +7 -7
  8. package/generators/cli/processor/list.js +229 -0
  9. package/generators/lib/generators/dashboard-generator.js +5 -5
  10. package/generators/lib/payload/payload-runner.js +63 -0
  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/check-install.js +8 -8
  23. package/scripts/verify-integrity.js +1 -1
  24. package/server.js +1 -1
  25. package/src/components/handlers/adjust_handler.js +1 -1
  26. package/src/components/handlers/audit_handler.js +1 -1
  27. package/src/components/handlers/delete_handler.js +1 -1
  28. package/src/components/handlers/export_handler.js +1 -1
  29. package/src/components/handlers/import_handler.js +1 -1
  30. package/src/components/handlers/insert_handler.js +1 -1
  31. package/src/components/handlers/update_handler.js +1 -1
  32. package/src/components/handlers/upload_handler.js +1 -1
  33. package/src/components/handlers/workflow_handler.js +1 -1
  34. package/src/components/integrations/webhook.js +1 -1
  35. package/src/consumers/baseConsumer.js +1 -1
  36. package/src/consumers/declarativeMapper.js +1 -1
  37. package/src/consumers/handlers/apiHandler.js +1 -1
  38. package/src/consumers/handlers/consoleHandler.js +1 -1
  39. package/src/consumers/handlers/databaseHandler.js +1 -1
  40. package/src/consumers/handlers/index.js +1 -1
  41. package/src/consumers/handlers/kafkaHandler.js +1 -1
  42. package/src/consumers/index.js +1 -1
  43. package/src/consumers/messageTransformer.js +1 -1
  44. package/src/consumers/validator.js +1 -1
  45. package/src/core/db/dialect/base-dialect.js +1 -1
  46. package/src/core/db/dialect/index.js +1 -1
  47. package/src/core/db/dialect/mysql-dialect.js +1 -1
  48. package/src/core/db/dialect/oracle-dialect.js +1 -1
  49. package/src/core/db/dialect/postgres-dialect.js +1 -1
  50. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  51. package/src/core/db/flatten-helper.js +1 -1
  52. package/src/core/db/query-builder-error.js +1 -1
  53. package/src/core/db/query-builder.js +1 -1
  54. package/src/core/db/relation-helper.js +1 -1
  55. package/src/core/handlers/delete_handler.js +1 -1
  56. package/src/core/handlers/insert_handler.js +1 -1
  57. package/src/core/handlers/update_handler.js +1 -1
  58. package/src/core/models/base-model.js +1 -1
  59. package/src/core/utils/cache-manager.js +1 -1
  60. package/src/core/utils/component-engine.js +1 -1
  61. package/src/core/utils/context-builder.js +1 -1
  62. package/src/core/utils/datetime-formatter.js +1 -1
  63. package/src/core/utils/datetime-parser.js +1 -1
  64. package/src/core/utils/db.js +1 -1
  65. package/src/core/utils/logger.js +1 -1
  66. package/src/core/utils/payload-loader.js +1 -1
  67. package/src/core/utils/security-checks.js +1 -1
  68. package/src/middleware/body-options.js +1 -1
  69. package/src/middleware/cors.js +1 -1
  70. package/src/middleware/idempotency.js +1 -1
  71. package/src/middleware/rate-limiter.js +1 -1
  72. package/src/middleware/request-logger.js +1 -1
  73. package/src/middleware/security-headers.js +1 -1
  74. package/src/models/base-model-mysql.js +1 -1
  75. package/src/models/base-model-oracle.js +1 -1
  76. package/src/models/base-model-sqlite.js +1 -1
  77. package/src/models/base-model.js +1 -1
  78. package/src/pro/caching/redis-client.js +1 -1
  79. package/src/pro/caching/redis-helper.js +1 -1
  80. package/src/pro/consumers/baseConsumer.js +1 -1
  81. package/src/pro/consumers/declarativeMapper.js +1 -1
  82. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  83. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  84. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  85. package/src/pro/consumers/handlers/index.js +1 -1
  86. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  87. package/src/pro/consumers/index.js +1 -1
  88. package/src/pro/consumers/messageTransformer.js +1 -1
  89. package/src/pro/consumers/validator.js +1 -1
  90. package/src/pro/database/base-model-mysql.js +1 -1
  91. package/src/pro/database/base-model-oracle.js +1 -1
  92. package/src/pro/database/base-model-sqlite.js +1 -1
  93. package/src/pro/database/db-mysql.js +1 -1
  94. package/src/pro/database/db-oracle.js +1 -1
  95. package/src/pro/database/db-sqlite.js +1 -1
  96. package/src/pro/excel/excel-generator.js +1 -1
  97. package/src/pro/excel/excel-parser.js +1 -1
  98. package/src/pro/excel/export-service.js +1 -1
  99. package/src/pro/excel/export_handler.js +1 -1
  100. package/src/pro/excel/import-service.js +1 -1
  101. package/src/pro/excel/import-validator.js +1 -1
  102. package/src/pro/excel/import_handler.js +1 -1
  103. package/src/pro/excel/upsert-builder.js +1 -1
  104. package/src/pro/idgen/idgen-routes.js +1 -1
  105. package/src/pro/integrations/lookup-resolver.js +1 -1
  106. package/src/pro/integrations/upload-handler-v2.js +1 -1
  107. package/src/pro/integrations/upload-handler.js +1 -1
  108. package/src/pro/integrations/webhook.js +1 -1
  109. package/src/pro/locking/lock-routes.js +1 -1
  110. package/src/pro/locking/resource-lock-manager.js +1 -1
  111. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  112. package/src/pro/messaging/kafkaService.js +1 -1
  113. package/src/pro/messaging/messagehubService.js +1 -1
  114. package/src/pro/messaging/rabbitmqService.js +1 -1
  115. package/src/pro/scheduler/job-manager.js +1 -1
  116. package/src/pro/scheduler/job-routes.js +1 -1
  117. package/src/pro/scheduler/job-validator.js +1 -1
  118. package/src/pro/storage/base-storage-provider.js +1 -1
  119. package/src/pro/storage/file-metadata-helper.js +1 -1
  120. package/src/pro/storage/index.js +1 -1
  121. package/src/pro/storage/local-storage-provider.js +1 -1
  122. package/src/pro/storage/s3-storage-provider.js +1 -1
  123. package/src/pro/storage/upload-cleanup-job.js +1 -1
  124. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  125. package/src/pro/storage/upload-pending-tracker.js +1 -1
  126. package/src/pro/websocket/broadcast-helper.js +1 -1
  127. package/src/pro/websocket/index.js +1 -1
  128. package/src/pro/websocket/livesync-server.js +1 -1
  129. package/src/pro/websocket/ws-broadcaster.js +1 -1
  130. package/src/services/export-service.js +1 -1
  131. package/src/services/import-service.js +1 -1
  132. package/src/services/kafkaConsumerService.js +1 -1
  133. package/src/services/kafkaService.js +1 -1
  134. package/src/services/messagehubService.js +1 -1
  135. package/src/services/rabbitmqService.js +1 -1
  136. package/src/utils/cache-invalidation-registry.js +1 -1
  137. package/src/utils/cache-manager.js +1 -1
  138. package/src/utils/component-engine.js +1 -1
  139. package/src/utils/config-extractor.js +1 -1
  140. package/src/utils/consumerLogger.js +1 -1
  141. package/src/utils/context-builder.js +1 -1
  142. package/src/utils/dashboard-helpers.js +1 -1
  143. package/src/utils/dateHelper.js +1 -1
  144. package/src/utils/datetime-formatter.js +1 -1
  145. package/src/utils/datetime-parser.js +1 -1
  146. package/src/utils/db-bootstrap.js +1 -1
  147. package/src/utils/db-mysql.js +1 -1
  148. package/src/utils/db-oracle.js +1 -1
  149. package/src/utils/db-sqlite.js +1 -1
  150. package/src/utils/db.js +1 -1
  151. package/src/utils/demo-generator.js +1 -1
  152. package/src/utils/excel-generator.js +1 -1
  153. package/src/utils/excel-parser.js +1 -1
  154. package/src/utils/file-watcher.js +1 -1
  155. package/src/utils/id-generator.js +1 -1
  156. package/src/utils/idempotency-manager.js +1 -1
  157. package/src/utils/import-validator.js +1 -1
  158. package/src/utils/license-client.js +1 -1
  159. package/src/utils/lock-manager.js +1 -1
  160. package/src/utils/logger.js +1 -1
  161. package/src/utils/lookup-resolver.js +1 -1
  162. package/src/utils/payload-loader.js +1 -1
  163. package/src/utils/processor-response.js +1 -1
  164. package/src/utils/rabbitmq.js +1 -1
  165. package/src/utils/redis-client.js +1 -1
  166. package/src/utils/redis-helper.js +1 -1
  167. package/src/utils/request-scope.js +1 -1
  168. package/src/utils/security-checks.js +1 -1
  169. package/src/utils/service-resolver.js +1 -1
  170. package/src/utils/shutdown-coordinator.js +1 -1
  171. package/src/utils/soft-delete-dashboard-guard.js +1 -1
  172. package/src/utils/sql-table-extractor.js +1 -1
  173. package/src/utils/trusted-keys.js +1 -1
  174. package/src/utils/upload-handler.js +1 -1
  175. package/src/utils/upsert-builder.js +1 -1
  176. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- 'use strict';const a0_0x462573=a0_0x2de7;(function(_0x41e0bb,_0x5e1060){const _0x4a31b3=a0_0x2de7,_0x376af5=_0x41e0bb();while(!![]){try{const _0x26eeb3=parseInt(_0x4a31b3(0xf8))/0x1*(parseInt(_0x4a31b3(0xf4))/0x2)+parseInt(_0x4a31b3(0x105))/0x3+parseInt(_0x4a31b3(0xfd))/0x4*(-parseInt(_0x4a31b3(0xfe))/0x5)+parseInt(_0x4a31b3(0xef))/0x6+parseInt(_0x4a31b3(0xf5))/0x7+-parseInt(_0x4a31b3(0xf7))/0x8*(-parseInt(_0x4a31b3(0x101))/0x9)+parseInt(_0x4a31b3(0xf2))/0xa*(-parseInt(_0x4a31b3(0x100))/0xb);if(_0x26eeb3===_0x5e1060)break;else _0x376af5['push'](_0x376af5['shift']());}catch(_0x1a65c4){_0x376af5['push'](_0x376af5['shift']());}}}(a0_0x3427,0x9a374));function a0_0x3427(){const _0x356ed3=['mJKZmJC1wLvQuMHf','Aw5JBhvKzxm','mZu3nJu0zK9su3nS','mJDIzvfXrvO','Bg9N','CMvSyxrPDMu','D2f0y2G','mteZntq3rwvOwvnQ','icbBv0fuq0HDifDHCM5PBMC6ifDHDgnOzxiGzxjYB3iGB24G','zxjYB3i','q1zkz3u','y2XVC2u','zgvIB3vUy2vuAw1LCG','ChvZAa','C3bSAxq','lMPZB24','m3WYFdv8nhWWFde','zxH0zw5ZAw9UCW','nJeXnZe5ohHmuxPJqG','C3rVCa','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','mJKWue5kzwju','C3rHCNq','mZa4nMn5q21YEa','nZC1nJi2nLvyBwnAAq','s3fuwxO','mtaXmZq4oePeExvkvq','mtDtr1Hcvvq','B25dAgfUz2u','D2f0y2HLCNm','zgvIB3vUy2vnCW','zgLYzwn0B3jPzxm','nJHirLjIqwS'];a0_0x3427=function(){return _0x356ed3;};return a0_0x3427();}function a0_0x2de7(_0x2a52eb,_0x7f62c0){_0x2a52eb=_0x2a52eb-0xea;const _0x3427e8=a0_0x3427();let _0x2de72b=_0x3427e8[_0x2a52eb];if(a0_0x2de7['pRFhyn']===undefined){var _0x2fcc45=function(_0x4fe620){const _0x39b938='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x482600='',_0x1cf25a='';for(let _0x44d58d=0x0,_0x2facb1,_0x587419,_0x369084=0x0;_0x587419=_0x4fe620['charAt'](_0x369084++);~_0x587419&&(_0x2facb1=_0x44d58d%0x4?_0x2facb1*0x40+_0x587419:_0x587419,_0x44d58d++%0x4)?_0x482600+=String['fromCharCode'](0xff&_0x2facb1>>(-0x2*_0x44d58d&0x6)):0x0){_0x587419=_0x39b938['indexOf'](_0x587419);}for(let _0x3f36f9=0x0,_0x43e65c=_0x482600['length'];_0x3f36f9<_0x43e65c;_0x3f36f9++){_0x1cf25a+='%'+('00'+_0x482600['charCodeAt'](_0x3f36f9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1cf25a);};a0_0x2de7['DKDeBI']=_0x2fcc45,a0_0x2de7['LEZNZU']={},a0_0x2de7['pRFhyn']=!![];}const _0x145620=_0x3427e8[0x0],_0x5138d3=_0x2a52eb+_0x145620,_0x5aa6f4=a0_0x2de7['LEZNZU'][_0x5138d3];return!_0x5aa6f4?(_0x2de72b=a0_0x2de7['DKDeBI'](_0x2de72b),a0_0x2de7['LEZNZU'][_0x5138d3]=_0x2de72b):_0x2de72b=_0x5aa6f4,_0x2de72b;}const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x290916={}){const _0x2c7278=a0_0x2de7,_0x19b0f8={'CVJgu':_0x2c7278(0xed),'KqTYz':_0x2c7278(0xec)},_0x51e077=_0x19b0f8[_0x2c7278(0x108)][_0x2c7278(0xeb)]('|');let _0x35fe89=0x0;while(!![]){switch(_0x51e077[_0x35fe89++]){case'0':this['watchers']=[];continue;case'1':this[_0x2c7278(0x10a)]=null;continue;case'2':this[_0x2c7278(0xee)]=_0x290916['extensions']||['.js',_0x19b0f8[_0x2c7278(0xf6)]];continue;case'3':this['directories']=_0x290916[_0x2c7278(0xfc)]||[];continue;case'4':this['onChange']=_0x290916[_0x2c7278(0xf9)]||(()=>{});continue;case'5':this[_0x2c7278(0xfb)]=_0x290916[_0x2c7278(0xfb)]||0x1f4;continue;}break;}}[a0_0x462573(0xf3)](){const _0x5090c0=a0_0x462573,_0x3a1911={'zQWAr':_0x5090c0(0x107)};for(const _0x342aaf of this[_0x5090c0(0xfc)]){if(!fs['existsSync'](_0x342aaf)){console['log']('\x20\x20[WATCH]\x20Warning:\x20Directory\x20not\x20found,\x20skipping:\x20'+(path[_0x5090c0(0x103)](process['cwd'](),_0x342aaf)||_0x342aaf));continue;}try{const _0x4f2bb5=fs[_0x5090c0(0x104)](_0x342aaf,{'recursive':!![]},(_0x44fbf1,_0x76a130)=>{const _0x4d11d6=_0x5090c0;if(!_0x76a130)return;const _0x2d5b98=path['extname'](_0x76a130)['toLowerCase']();if(!this[_0x4d11d6(0xee)][_0x4d11d6(0xff)](_0x2d5b98))return;this['_debounce'](_0x76a130);});_0x4f2bb5['on'](_0x3a1911['zQWAr'],_0x299629=>{const _0x1581d6=_0x5090c0;console['log'](_0x1581d6(0x106)+path['relative'](process['cwd'](),_0x342aaf)+':\x20'+_0x299629['message']);}),this[_0x5090c0(0xfa)][_0x5090c0(0xea)](_0x4f2bb5);const _0x209662=path[_0x5090c0(0x103)](process['cwd'](),_0x342aaf)||_0x342aaf;console[_0x5090c0(0x102)]('\x20\x20[WATCH]\x20Watching:\x20'+_0x209662+'/\x20(recursive)');}catch(_0xda7c66){console[_0x5090c0(0x102)](_0x5090c0(0xf1)+path[_0x5090c0(0x103)](process['cwd'](),_0x342aaf)+':\x20'+_0xda7c66['message']);}}}[a0_0x462573(0xf0)](){const _0x1e38ba=a0_0x462573,_0x3a74da={'SeeTy':function(_0x52b536,_0x177214){return _0x52b536(_0x177214);}};for(const _0xab1f97 of this[_0x1e38ba(0xfa)]){try{_0xab1f97[_0x1e38ba(0x109)]();}catch(_0x1c03fa){}}this['watchers']=[],this[_0x1e38ba(0x10a)]&&(_0x3a74da['SeeTy'](clearTimeout,this['debounceTimer']),this['debounceTimer']=null);}['_debounce'](_0x58cd2e){const _0x50ede0=a0_0x462573;this[_0x50ede0(0x10a)]&&clearTimeout(this['debounceTimer']),this[_0x50ede0(0x10a)]=setTimeout(()=>{const _0xf705cb=_0x50ede0;this['debounceTimer']=null,this[_0xf705cb(0xf9)](_0x58cd2e);},this['debounceMs']);}}module['exports']=FileWatcher;
1
+ 'use strict';const a0_0x22054c=a0_0xd390;function a0_0x4f43(){const _0x393b49=['D2f0y2HLCNm','ndvpEhHQBwS','icbBv0fuq0HDifDHCM5PBMC6ifDHDgnOzxiGzxjYB3iGB24G','y3DK','mJe2nZmWsKrrD2jj','mte0ufrPBffj','Bg9N','ogDuAwTbDG','B25dAgfUz2u','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','C3bSAxq','lYaOCMvJDxjZAxzLkq','mteXnJCZmJrtyvLzwK4','mZaXmZG4mfzKC2vdzG','CMvSyxrPDMu','mJjJA01WvNa','C3rVCa','mZC2nJi1Cu1cu1zL','mhW0Fdf8mNW1Fdm','zxjYB3i','zgvIB3vUy2vnCW','yNPuAgq','zgLYzwn0B3jPzxm','D1rqCvO','zxH0zw5ZAw9UCW','ntGZnJuYnerTqu9VwG','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa','x2rLyM91BMnL','zxHWB3j0CW','Dg9mB3DLCKnHC2u','D0HSDNO','lMPZ','BwvZC2fNzq','BgPxtKG','otC1nZq4mgHczhbQrq','mtq4mtDPuuvOqLu','zxHPC3rZu3LUyW','icbBv0fuq0HDifDHDgnOAw5NoIa','Aw5JBhvKzxm','oti4s2ntterM','s3rIAwq','zgvIB3vUy2vuAw1LCG'];a0_0x4f43=function(){return _0x393b49;};return a0_0x4f43();}(function(_0x471949,_0xc18fbf){const _0xf673b6=a0_0xd390,_0x5d3f5d=_0x471949();while(!![]){try{const _0x277e15=-parseInt(_0xf673b6(0x7a))/0x1*(-parseInt(_0xf673b6(0x70))/0x2)+-parseInt(_0xf673b6(0x8c))/0x3*(-parseInt(_0xf673b6(0x90))/0x4)+-parseInt(_0xf673b6(0x6d))/0x5*(parseInt(_0xf673b6(0x6e))/0x6)+-parseInt(_0xf673b6(0x75))/0x7+parseInt(_0xf673b6(0x8b))/0x8+parseInt(_0xf673b6(0x94))/0x9*(-parseInt(_0xf673b6(0x76))/0xa)+-parseInt(_0xf673b6(0x78))/0xb*(-parseInt(_0xf673b6(0x82))/0xc);if(_0x277e15===_0xc18fbf)break;else _0x5d3f5d['push'](_0x5d3f5d['shift']());}catch(_0x5ef611){_0x5d3f5d['push'](_0x5d3f5d['shift']());}}}(a0_0x4f43,0xe059d));function a0_0xd390(_0x59076e,_0x5c7ab7){_0x59076e=_0x59076e-0x6d;const _0x4f43c8=a0_0x4f43();let _0xd390d3=_0x4f43c8[_0x59076e];if(a0_0xd390['TKFtwb']===undefined){var _0x22a28f=function(_0x1cf3ec){const _0xda31a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9d4fcb='',_0x3b1903='';for(let _0x4d3c9f=0x0,_0x351f20,_0x2d2533,_0x5812f6=0x0;_0x2d2533=_0x1cf3ec['charAt'](_0x5812f6++);~_0x2d2533&&(_0x351f20=_0x4d3c9f%0x4?_0x351f20*0x40+_0x2d2533:_0x2d2533,_0x4d3c9f++%0x4)?_0x9d4fcb+=String['fromCharCode'](0xff&_0x351f20>>(-0x2*_0x4d3c9f&0x6)):0x0){_0x2d2533=_0xda31a1['indexOf'](_0x2d2533);}for(let _0x158303=0x0,_0x2195e6=_0x9d4fcb['length'];_0x158303<_0x2195e6;_0x158303++){_0x3b1903+='%'+('00'+_0x9d4fcb['charCodeAt'](_0x158303)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3b1903);};a0_0xd390['eRoUub']=_0x22a28f,a0_0xd390['dGrxyL']={},a0_0xd390['TKFtwb']=!![];}const _0x9bc5=_0x4f43c8[0x0],_0x2d50f2=_0x59076e+_0x9bc5,_0x61aeba=a0_0xd390['dGrxyL'][_0x2d50f2];return!_0x61aeba?(_0xd390d3=a0_0xd390['eRoUub'](_0xd390d3),a0_0xd390['dGrxyL'][_0x2d50f2]=_0xd390d3):_0xd390d3=_0x61aeba,_0xd390d3;}const fs=require('fs'),path=require('path');class FileWatcher{constructor(_0x40e97e={}){const _0x1637a8=a0_0xd390,_0x18a2c2={'UDKov':_0x1637a8(0x7b),'wTPqZ':_0x1637a8(0x88),'wHlvz':'.json'},_0x5c7c32=_0x18a2c2['UDKov'][_0x1637a8(0x73)]('|');let _0x29c9a1=0x0;while(!![]){switch(_0x5c7c32[_0x29c9a1++]){case'0':this['directories']=_0x40e97e[_0x1637a8(0x7f)]||[];continue;case'1':this[_0x1637a8(0x7d)]=_0x40e97e['debounceMs']||0x1f4;continue;case'2':this['onChange']=_0x40e97e[_0x1637a8(0x71)]||(()=>{});continue;case'3':this[_0x1637a8(0x92)]=null;continue;case'4':this[_0x1637a8(0x81)]=_0x40e97e[_0x1637a8(0x81)]||[_0x18a2c2[_0x1637a8(0x80)],_0x18a2c2[_0x1637a8(0x87)]];continue;case'5':this['watchers']=[];continue;}break;}}['start'](){const _0x1a011d=a0_0xd390,_0x210add={'ljWNH':_0x1a011d(0x7c)};for(const _0x160b5f of this['directories']){if(!fs[_0x1a011d(0x8d)](_0x160b5f)){console[_0x1a011d(0x6f)](_0x1a011d(0x83)+(path['relative'](process[_0x1a011d(0x96)](),_0x160b5f)||_0x160b5f));continue;}try{const _0x507c1a=fs['watch'](_0x160b5f,{'recursive':!![]},(_0x48a391,_0x3465cb)=>{const _0xb54dab=_0x1a011d;if(!_0x3465cb)return;const _0x25c1b6=path['extname'](_0x3465cb)[_0xb54dab(0x86)]();if(!this['extensions'][_0xb54dab(0x8f)](_0x25c1b6))return;this[_0xb54dab(0x84)](_0x3465cb);});_0x507c1a['on'](_0x210add[_0x1a011d(0x8a)],_0x166306=>{const _0x1a4cd3=_0x1a011d;console['log'](_0x1a4cd3(0x95)+path[_0x1a4cd3(0x77)](process[_0x1a4cd3(0x96)](),_0x160b5f)+':\x20'+_0x166306[_0x1a4cd3(0x89)]);}),this['watchers']['push'](_0x507c1a);const _0x4f07a3=path[_0x1a011d(0x77)](process[_0x1a011d(0x96)](),_0x160b5f)||_0x160b5f;console['log'](_0x1a011d(0x8e)+_0x4f07a3+_0x1a011d(0x74));}catch(_0x4b7b06){console[_0x1a011d(0x6f)](_0x1a011d(0x72)+path[_0x1a011d(0x77)](process[_0x1a011d(0x96)](),_0x160b5f)+':\x20'+_0x4b7b06[_0x1a011d(0x89)]);}}}[a0_0x22054c(0x79)](){const _0x395096=a0_0x22054c;for(const _0x390b7d of this[_0x395096(0x93)]){try{_0x390b7d['close']();}catch(_0x5db091){}}this[_0x395096(0x93)]=[],this[_0x395096(0x92)]&&(clearTimeout(this[_0x395096(0x92)]),this['debounceTimer']=null);}[a0_0x22054c(0x84)](_0x1a8182){const _0x463867=a0_0x22054c,_0x5df2d9={'bzThd':function(_0x302543,_0x2ad33b){return _0x302543(_0x2ad33b);},'Ktbid':function(_0x2c3a78,_0x4ed104,_0x52bb45){return _0x2c3a78(_0x4ed104,_0x52bb45);}};this['debounceTimer']&&_0x5df2d9[_0x463867(0x7e)](clearTimeout,this[_0x463867(0x92)]),this['debounceTimer']=_0x5df2d9[_0x463867(0x91)](setTimeout,()=>{this['debounceTimer']=null,this['onChange'](_0x1a8182);},this['debounceMs']);}}module[a0_0x22054c(0x85)]=FileWatcher;
@@ -1 +1 @@
1
- 'use strict';const a0_0x2a924e=a0_0x17ae;(function(_0x4f8f1c,_0x43cb7){const _0x4882e9=a0_0x17ae,_0x528328=_0x4f8f1c();while(!![]){try{const _0x3774b1=-parseInt(_0x4882e9(0xe9))/0x1+-parseInt(_0x4882e9(0x15b))/0x2+parseInt(_0x4882e9(0x14f))/0x3+parseInt(_0x4882e9(0x131))/0x4*(-parseInt(_0x4882e9(0xc6))/0x5)+-parseInt(_0x4882e9(0x117))/0x6*(-parseInt(_0x4882e9(0x1d1))/0x7)+-parseInt(_0x4882e9(0x1a4))/0x8+parseInt(_0x4882e9(0x108))/0x9;if(_0x3774b1===_0x43cb7)break;else _0x528328['push'](_0x528328['shift']());}catch(_0x398b86){_0x528328['push'](_0x528328['shift']());}}}(a0_0x25a9,0x3be90));const crypto=require('crypto'),redisClient=require(a0_0x2a924e(0x1b0)),{logger}=require('./logger'),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text',a0_0x2a924e(0xd3),a0_0x2a924e(0xbf),a0_0x2a924e(0x173)]),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_0x2a924e(0x129),CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER=a0_0x2a924e(0x1df),CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER=a0_0x2a924e(0xcc),LUA_RELEASE_NUMBER=a0_0x2a924e(0xb5),LUA_RESERVE_NUMBER=a0_0x2a924e(0xdd),LUA_CONFIRM_RESERVATION=a0_0x2a924e(0xe1),LUA_CANCEL_RESERVATION=a0_0x2a924e(0xc7),LUA_EXTEND_RESERVATION=a0_0x2a924e(0x159);class IdGeneratorError extends Error{constructor(_0x5a86c7,_0xe40cda,_0x2029c0=null){const _0x1160ac=a0_0x2a924e,_0x1d994a={'cDsJS':_0x1160ac(0xe2)};super(_0xe40cda||_0x5a86c7),this[_0x1160ac(0xfe)]=_0x1d994a['cDsJS'],this[_0x1160ac(0xc0)]=_0x5a86c7,this[_0x1160ac(0xbd)]=_0x2029c0;}}class IdGenerator{constructor(){const _0x5e5b06=a0_0x2a924e;this['_initialized']=![],this['_enabled']=null,this[_0x5e5b06(0x141)]=null,this[_0x5e5b06(0xd7)]=null,this[_0x5e5b06(0x104)]=null,this['_defaultMaxRetry']=null,this[_0x5e5b06(0xf7)]=null,this[_0x5e5b06(0xfb)]=null,this['_defaultCodePattern']=null,this['_counterTTLMap']=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}[a0_0x2a924e(0x174)](){const _0x3a12cd=a0_0x2a924e,_0x559978={'nsleb':_0x3a12cd(0x1cb),'swREt':_0x3a12cd(0xd2),'ckLZF':function(_0x190e2c,_0x993c2e,_0x1b80b8){return _0x190e2c(_0x993c2e,_0x1b80b8);},'Vzxqv':function(_0x3419a7,_0x1945eb,_0x578345){return _0x3419a7(_0x1945eb,_0x578345);},'Xdtpp':function(_0x33f362,_0x4b869a){return _0x33f362===_0x4b869a;},'xWCVC':'true','oYfpT':function(_0x282c80,_0x5c16c1,_0x4b0c82){return _0x282c80(_0x5c16c1,_0x4b0c82);},'HhGhp':function(_0x2423ee,_0x2a888a,_0x21a23c){return _0x2423ee(_0x2a888a,_0x21a23c);}},_0x3cf231='12|6|2|5|10|8|0|9|4|7|11|3|1'['split']('|');let _0x22e837=0x0;while(!![]){switch(_0x3cf231[_0x22e837++]){case'0':this['_defaultSerialPattern']=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x559978['nsleb'];continue;case'1':logger['info']({'event':_0x559978[_0x3a12cd(0x106)],'enabled':this[_0x3a12cd(0x16a)],'idemTTL':this[_0x3a12cd(0xd7)],'allowReset':this[_0x3a12cd(0x104)],'defaultMaxRetry':this[_0x3a12cd(0x193)],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x3a12cd(0x1b3)],'reserveMaxTTL':this[_0x3a12cd(0xd8)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);continue;case'2':this['_idemTTL']=_0x559978[_0x3a12cd(0x197)](parseInt,process[_0x3a12cd(0x1c7)]['IDGEN_IDEM_TTL'],0xa)||0x258;continue;case'3':this[_0x3a12cd(0x11a)]=!![];continue;case'4':this[_0x3a12cd(0xe4)]={'yyyymm':_0x559978[_0x3a12cd(0x10a)](parseInt,process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x3a12cd(0x172)],0xa)||0x2a300};continue;case'5':this[_0x3a12cd(0x104)]=_0x559978[_0x3a12cd(0x166)](process[_0x3a12cd(0x1c7)]['IDGEN_ALLOW_RESET'],_0x559978['xWCVC']);continue;case'6':this[_0x3a12cd(0x16a)]=_0x559978['Xdtpp'](process[_0x3a12cd(0x1c7)][_0x3a12cd(0xe7)],_0x559978[_0x3a12cd(0x112)]);continue;case'7':this[_0x3a12cd(0x1b3)]=parseInt(process['env'][_0x3a12cd(0x11e)],0xa)||DEFAULT_RESERVE_TTL;continue;case'8':this[_0x3a12cd(0xf7)]=_0x559978[_0x3a12cd(0xdc)](parseInt,process[_0x3a12cd(0x1c7)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'9':this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x3a12cd(0x1d5);continue;case'10':this['_defaultMaxRetry']=parseInt(process[_0x3a12cd(0x1c7)][_0x3a12cd(0x1d7)],0xa)||0xa;continue;case'11':this[_0x3a12cd(0xd8)]=_0x559978[_0x3a12cd(0xce)](parseInt,process[_0x3a12cd(0x1c7)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'12':this['_keyPrefix']=_0x3a12cd(0x199);continue;}break;}}['_ensureInitialized'](){const _0x611e0f=a0_0x2a924e;if(!this['_initialized'])this[_0x611e0f(0x174)]();}get['enabled'](){const _0x2a47cf=a0_0x2a924e;return this['_ensureInitialized'](),this[_0x2a47cf(0x16a)];}get[a0_0x2a924e(0x1da)](){const _0x50b2c6=a0_0x2a924e;return this['_ensureInitialized'](),this[_0x50b2c6(0x141)];}get[a0_0x2a924e(0xb7)](){const _0x31a06a=a0_0x2a924e;return this['_ensureInitialized'](),this[_0x31a06a(0xd7)];}get[a0_0x2a924e(0x1a7)](){const _0x27bd7e=a0_0x2a924e;return this[_0x27bd7e(0xb0)](),this['_allowReset'];}get[a0_0x2a924e(0x10b)](){const _0x15a451=a0_0x2a924e;return this[_0x15a451(0xb0)](),this[_0x15a451(0x193)];}get[a0_0x2a924e(0x13a)](){return this['_ensureInitialized'](),this['_defaultPinDigits'];}get['defaultSerialPattern'](){const _0x5cf7bd=a0_0x2a924e;return this['_ensureInitialized'](),this[_0x5cf7bd(0xfb)];}get[a0_0x2a924e(0x1af)](){const _0x328299=a0_0x2a924e;return this[_0x328299(0xb0)](),this['_defaultCodePattern'];}get[a0_0x2a924e(0x137)](){const _0xec6ae8=a0_0x2a924e;return this[_0xec6ae8(0xb0)](),this['_reserveDefaultTTL'];}get[a0_0x2a924e(0x168)](){const _0x5a86d3=a0_0x2a924e;return this['_ensureInitialized'](),this[_0x5a86d3(0xd8)];}['isEnabled'](){const _0x1a842c=a0_0x2a924e;return this[_0x1a842c(0x158)];}[a0_0x2a924e(0xf1)](_0x281db7){const _0x951a45=a0_0x2a924e,_0x42b438={'AwKYU':_0x951a45(0x187)};if(typeof _0x281db7!==_0x42b438[_0x951a45(0x1bd)]||!RESOURCE_REGEX[_0x951a45(0x17f)](_0x281db7))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE',_0x951a45(0x118)+RESOURCE_REGEX+_0x951a45(0xea)+JSON[_0x951a45(0x147)](_0x281db7)+')');}['_validateNumberParams'](_0x178e88){const _0x3e4957=a0_0x2a924e,_0x1a3bcd={'mdlQP':'string','ttdTy':function(_0x2acaf6,_0x4ea81f){return _0x2acaf6>_0x4ea81f;},'bGDGB':function(_0x13fc43,_0x35ffbf){return _0x13fc43!==_0x35ffbf;},'HfPei':function(_0x2a4bb9,_0x2775ac){return _0x2a4bb9==_0x2775ac;},'WrDAi':function(_0x3c3082,_0x2521a8){return _0x3c3082!==_0x2521a8;},'gVKcT':function(_0x288bd7,_0x2bcd54){return _0x288bd7!=_0x2bcd54;},'Ubxoy':function(_0x191092,_0x19c1b4){return _0x191092!==_0x19c1b4;},'vCssd':'boolean','VMovR':function(_0x530eaa,_0x3e6b80){return _0x530eaa===_0x3e6b80;}},{resource:_0x5cf30e,format:_0xff0d55,prefix:_0x59a33c,separator:_0xf1e778,numDigits:_0x42a3ac,reuseDelete:_0x31f2dc}=_0x178e88;this[_0x3e4957(0xf1)](_0x5cf30e);const _0x167549=typeof _0xff0d55===_0x1a3bcd[_0x3e4957(0x17e)]?_0xff0d55['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0x167549))throw new IdGeneratorError(_0x3e4957(0x17c),_0x3e4957(0x15d)+[...ALLOWED_FORMATS]['join'](',\x20')+_0x3e4957(0xea)+_0xff0d55+')');if(!Number[_0x3e4957(0x1c9)](_0x42a3ac)||_0x42a3ac<MIN_NUM_DIGITS||_0x1a3bcd[_0x3e4957(0x138)](_0x42a3ac,MAX_NUM_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x3e4957(0x19b)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0x42a3ac+')');const _0x1414c1=_0x59a33c==null?'':_0x59a33c;if(_0x1a3bcd[_0x3e4957(0x13e)](typeof _0x1414c1,_0x1a3bcd['mdlQP'])||!PREFIX_REGEX['test'](_0x1414c1))throw new IdGeneratorError('IDGEN_INVALID_PREFIX','Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+_0x3e4957(0xea)+JSON['stringify'](_0x59a33c)+')');const _0x46c0fc=_0x1a3bcd['HfPei'](_0xf1e778,null)?'':_0xf1e778;if(_0x1a3bcd[_0x3e4957(0xd1)](typeof _0x46c0fc,_0x3e4957(0x187))||_0x46c0fc[_0x3e4957(0x160)]>0x3||SEPARATOR_FORBIDDEN['test'](_0x46c0fc))throw new IdGeneratorError('IDGEN_INVALID_SEPARATOR',_0x3e4957(0x123)+JSON[_0x3e4957(0x147)](_0xf1e778)+')');if(_0x1a3bcd['gVKcT'](_0x31f2dc,null)&&_0x1a3bcd[_0x3e4957(0x1cf)](typeof _0x31f2dc,_0x1a3bcd['vCssd']))throw new IdGeneratorError(_0x3e4957(0xb8),_0x3e4957(0x1c3)+typeof _0x31f2dc+')');return{'resource':_0x5cf30e,'format':_0x167549,'prefix':_0x1414c1,'separator':_0x46c0fc,'numDigits':_0x42a3ac,'reuseDelete':_0x1a3bcd[_0x3e4957(0xe0)](_0x31f2dc,!![])};}['_validatePattern'](_0x17d1ae){const _0x3275dc=a0_0x2a924e,_0xc170ce={'TZlwx':'string','SmfUS':function(_0x2722ff,_0x44f696){return _0x2722ff===_0x44f696;},'hyOFn':_0x3275dc(0x175)};if(typeof _0x17d1ae!==_0xc170ce[_0x3275dc(0x1ce)]||_0xc170ce[_0x3275dc(0x162)](_0x17d1ae[_0x3275dc(0x160)],0x0)||_0x17d1ae[_0x3275dc(0x160)]>MAX_PATTERN_LENGTH)throw new IdGeneratorError(_0xc170ce[_0x3275dc(0xbb)],_0x3275dc(0x188)+MAX_PATTERN_LENGTH+_0x3275dc(0x139)+(_0x17d1ae&&_0x17d1ae['length'])+')');let _0x333b9b=![];for(const _0x1c0505 of _0x17d1ae){if(PLACEHOLDER_MAP[_0x1c0505]){_0x333b9b=!![];break;}}if(!_0x333b9b)throw new IdGeneratorError(_0x3275dc(0x175),'Invalid\x20pattern:\x20must\x20contain\x20at\x20least\x20one\x20placeholder\x20character\x20(9/N/A/a/L/X/x/H/h)');}['_validateTTL'](_0x2f81f9){const _0x5b1676=a0_0x2a924e,_0x3b93cf={'LxbsE':function(_0x471a6b,_0x25ba6d){return _0x471a6b<_0x25ba6d;},'iEaVd':function(_0x27b28f,_0xcc6ae2){return _0x27b28f>_0xcc6ae2;}};if(_0x2f81f9==null)return undefined;if(!Number['isInteger'](_0x2f81f9)||_0x3b93cf[_0x5b1676(0x14a)](_0x2f81f9,0x1)||_0x3b93cf[_0x5b1676(0xd6)](_0x2f81f9,MAX_TTL))throw new IdGeneratorError('IDGEN_INVALID_TTL','Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+_0x5b1676(0x156)+_0x2f81f9+')');return _0x2f81f9;}['_validateMaxRetry'](_0x2bb479){const _0x5d4ae5=a0_0x2a924e,_0x209e6b={'TMrMc':'IDGEN_INVALID_MAX_RETRY'};if(_0x2bb479==null)return this[_0x5d4ae5(0x10b)];if(!Number[_0x5d4ae5(0x1c9)](_0x2bb479)||_0x2bb479<0x1||_0x2bb479>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x209e6b['TMrMc'],'Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x5d4ae5(0xea)+_0x2bb479+')');return _0x2bb479;}['_validateIdempotencyKey'](_0x5f44c9){const _0x30a8f8=a0_0x2a924e,_0x11b654={'jHjEs':function(_0x1ca0c,_0x4fcb6e){return _0x1ca0c===_0x4fcb6e;},'GhNyP':function(_0x5a1d41,_0x476381){return _0x5a1d41>_0x476381;}};if(_0x5f44c9==null)return undefined;if(typeof _0x5f44c9!=='string'||_0x11b654['jHjEs'](_0x5f44c9[_0x30a8f8(0x160)],0x0)||_0x11b654[_0x30a8f8(0x18c)](_0x5f44c9['length'],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x30a8f8(0xb8),_0x30a8f8(0x127)+MAX_IDEMPOTENCY_KEY_LENGTH+_0x30a8f8(0x140));return _0x5f44c9;}['_validateReserveTTL'](_0x5f00fb){const _0x4211d8=a0_0x2a924e,_0x9bb3f={'uTjNS':function(_0x45686c,_0x534fa5){return _0x45686c<_0x534fa5;},'URYIe':'IDGEN_INVALID_RESERVE_TTL'};if(_0x5f00fb==null)return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x5f00fb)||_0x9bb3f['uTjNS'](_0x5f00fb,MIN_RESERVE_TTL)||_0x5f00fb>this[_0x4211d8(0x168)])throw new IdGeneratorError(_0x9bb3f['URYIe'],_0x4211d8(0x102)+MIN_RESERVE_TTL+'-'+this[_0x4211d8(0x168)]+'\x20seconds\x20(got:\x20'+_0x5f00fb+')');return _0x5f00fb;}['_validateReservationToken'](_0x174d05){const _0x1c9c24=a0_0x2a924e;if(typeof _0x174d05!=='string'||!RESERVATION_TOKEN_REGEX['test'](_0x174d05))throw new IdGeneratorError(_0x1c9c24(0x196),'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x1c9c24(0x147)](_0x174d05)+')');return _0x174d05;}['_pad2'](_0x76d7a4){return String(_0x76d7a4)['padStart'](0x2,'0');}[a0_0x2a924e(0x12f)](_0x4aca88,_0x574e79,_0x206c0e=new Date()){const _0xb01407=a0_0x2a924e,_0x20ddc7={'yltnN':function(_0x4942f1,_0x4ee955){return _0x4942f1+_0x4ee955;},'JrjOF':function(_0x5937c5,_0x1ec5e6){return _0x5937c5||_0x1ec5e6;},'LqnbH':'yyyy','FicZH':'yyyymm','NAjqO':_0xb01407(0x173),'pjAYv':_0xb01407(0x17c)},_0x3d96d1=_0x206c0e[_0xb01407(0x109)](),_0x478150=this['_pad2'](_0x20ddc7[_0xb01407(0x19d)](_0x206c0e[_0xb01407(0x1c0)](),0x1)),_0x1bd691=this[_0xb01407(0x1d8)](_0x206c0e[_0xb01407(0x12e)]()),_0x1c9349=_0x20ddc7[_0xb01407(0x1c5)](_0x574e79,'_');let _0x148f90,_0x1d5819='';switch(_0x4aca88){case'text':_0x148f90=_0x1c9349+'_text';break;case _0x20ddc7[_0xb01407(0x1aa)]:_0x1d5819=''+_0x3d96d1,_0x148f90=_0x1c9349+_0xb01407(0x12c)+_0x1d5819;break;case _0x20ddc7[_0xb01407(0x1cc)]:_0x1d5819=''+_0x3d96d1+_0x478150,_0x148f90=_0x1c9349+'_yyyymm_'+_0x1d5819;break;case _0x20ddc7['NAjqO']:_0x1d5819=''+_0x3d96d1+_0x478150+_0x1bd691,_0x148f90=_0x1c9349+'_yyyymmdd_'+_0x1d5819;break;default:throw new IdGeneratorError(_0x20ddc7[_0xb01407(0x16e)],_0xb01407(0x13b)+_0x4aca88);}return{'formatKey':_0x148f90,'datePrefix':_0x1d5819};}[a0_0x2a924e(0xb6)](_0x73fece,_0x28b8dc){const _0x4498a7=a0_0x2a924e;return this['keyPrefix']+_0x4498a7(0x132)+_0x73fece+':'+_0x28b8dc;}[a0_0x2a924e(0x1b8)](_0x3bdde6,_0x3b8f09){const _0x4f2a29=a0_0x2a924e;return this['keyPrefix']+_0x4f2a29(0x11d)+_0x3bdde6+':'+_0x3b8f09;}['_buildMetaKey'](_0x5089fa,_0x1d04ba){const _0x147c63=a0_0x2a924e;return this[_0x147c63(0x1da)]+'meta:'+_0x5089fa+':'+_0x1d04ba;}[a0_0x2a924e(0xf3)](_0x5313c1){const _0x709f54=a0_0x2a924e;return this[_0x709f54(0x1da)]+_0x709f54(0xc1)+_0x5313c1;}[a0_0x2a924e(0x1b2)](_0xa36a5f,_0xd6a52a){const _0x145c4c=a0_0x2a924e;return this[_0x145c4c(0x1da)]+_0x145c4c(0xee)+_0xa36a5f+':'+_0xd6a52a;}[a0_0x2a924e(0xfa)](_0x393354){const _0x308b9b=a0_0x2a924e;return this['keyPrefix']+_0x308b9b(0x13c)+_0x393354;}[a0_0x2a924e(0x122)](_0x52ff28,_0x106798){const _0x101252=a0_0x2a924e;return this['keyPrefix']+_0x101252(0x195)+_0x52ff28+':'+_0x106798;}['_buildReservationKeyPrefix'](){const _0x438bb4=a0_0x2a924e;return this['keyPrefix']+_0x438bb4(0x13c);}['_buildIdemKey'](_0x4e561f,_0x31894d,_0x50c98a,_0x161dd8){const _0x465138=a0_0x2a924e,_0x3c6c7b={'GtLpH':'idgen'};if(_0x50c98a)return idempotencyManager[_0x465138(0x1d2)]('idgen',_0x4e561f,_0x31894d+':'+_0x50c98a+':'+_0x161dd8);return idempotencyManager['buildDeterministicKey'](_0x3c6c7b[_0x465138(0x1e1)],_0x4e561f,_0x31894d+':'+_0x161dd8);}['_getCounterTTL'](_0x534656){const _0x2cd2db=a0_0x2a924e;return this[_0x2cd2db(0xe4)][_0x534656]||0x0;}[a0_0x2a924e(0xe8)]({format:_0x197343,prefix:_0x1c4234,datePrefix:_0x3d9a86,separator:_0x28ccbd,numDigits:_0x552e61,counterInt:_0x2ffa9c}){const _0x1f529f=a0_0x2a924e,_0x352bed={'nMwrx':function(_0x16fab2,_0x547f43){return _0x16fab2>_0x547f43;},'teRHa':_0x1f529f(0x1d9),'xBqOS':'text'},_0x4a9f97=Math[_0x1f529f(0x100)](0xa,_0x552e61)-0x1;if(_0x352bed['nMwrx'](_0x2ffa9c,_0x4a9f97))throw new IdGeneratorError(_0x352bed[_0x1f529f(0x124)],'Counter\x20overflow:\x20'+_0x2ffa9c+_0x1f529f(0x125)+_0x552e61+'-digit\x20capacity\x20('+_0x4a9f97+').\x20Increase\x20numDigits.',{'counterInt':_0x2ffa9c,'numDigits':_0x552e61,'max':_0x4a9f97});const _0x56db57=String(_0x2ffa9c)['padStart'](_0x552e61,'0');if(_0x197343===_0x352bed[_0x1f529f(0xf2)])return _0x1c4234?''+_0x1c4234+_0x28ccbd+_0x56db57:_0x56db57;return _0x1c4234?''+_0x1c4234+_0x28ccbd+_0x3d9a86+_0x28ccbd+_0x56db57:''+_0x3d9a86+_0x28ccbd+_0x56db57;}[a0_0x2a924e(0xef)]({format:_0x776ec4,prefix:_0xc7d339,separator:_0x2f9508,numDigits:_0x4aed6d,number:_0x3bb0f5}){const _0x3446be=a0_0x2a924e,_0x2e2f66={'lzaMs':function(_0x1cde98,_0xa343b4){return _0x1cde98===_0xa343b4;},'zaWVh':_0x3446be(0x114),'XuIdL':function(_0x51730b,_0x3fce7e){return _0x51730b!==_0x3fce7e;},'XcMFS':function(_0x4d4123,_0x555c00){return _0x4d4123!==_0x555c00;},'mjsCG':'IDGEN_INVALID_NUMBER','CVeIJ':function(_0x1b529c,_0x2a20cd){return _0x1b529c!==_0x2a20cd;},'VfGPu':'yyyy','Edagp':function(_0x513036,_0x3f68dc,_0x129151){return _0x513036(_0x3f68dc,_0x129151);},'dtJla':function(_0x5b1c16,_0x4c3b6c){return _0x5b1c16||_0x4c3b6c;},'aParQ':function(_0x3a62ef,_0x44e4bb){return _0x3a62ef===_0x44e4bb;}};if(typeof _0x3bb0f5!==_0x3446be(0x187)||_0x3bb0f5['length']===0x0)throw new IdGeneratorError(_0x3446be(0x1a1),_0x3446be(0x12d));const _0x2cfa05=_0x2f9508||'',_0x56c600=_0x2e2f66[_0x3446be(0x15a)](_0x2cfa05,'')?[_0x3bb0f5]:_0x3bb0f5[_0x3446be(0x170)](_0x2cfa05);let _0x47b175='',_0x2c2464;if(_0x776ec4===_0x2e2f66[_0x3446be(0xbe)]){if(_0xc7d339){if(_0x2e2f66['XuIdL'](_0x56c600[_0x3446be(0x160)],0x2)||_0x2e2f66[_0x3446be(0xc4)](_0x56c600[0x0],_0xc7d339))throw new IdGeneratorError(_0x2e2f66['mjsCG'],'Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x2cfa05+_0x3446be(0x19a)+_0x3bb0f5+')');_0x2c2464=_0x56c600[0x1];}else{if(_0x56c600['length']!==0x1)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x3446be(0xad)+_0x3bb0f5+')');_0x2c2464=_0x56c600[0x0];}}else{const _0x4979e9=_0xc7d339?0x3:0x2;if(_0x56c600['length']!==_0x4979e9)throw new IdGeneratorError(_0x2e2f66['mjsCG'],'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x3bb0f5+_0x3446be(0xbc)+_0x4979e9+'\x20parts)');let _0x1dc295=0x0;if(_0xc7d339){if(_0x2e2f66[_0x3446be(0x14e)](_0x56c600[_0x1dc295],_0xc7d339))throw new IdGeneratorError(_0x2e2f66[_0x3446be(0x1ba)],_0x3446be(0x1bf)+_0xc7d339+_0x3446be(0xcf)+_0x56c600[_0x1dc295]);_0x1dc295++;}_0x47b175=_0x56c600[_0x1dc295++];const _0x986bd4=_0x2e2f66[_0x3446be(0x15a)](_0x776ec4,_0x2e2f66[_0x3446be(0x14c)])?/^\d{4}$/:_0x776ec4===_0x3446be(0xbf)?/^\d{6}$/:/^\d{8}$/;if(!_0x986bd4[_0x3446be(0x17f)](_0x47b175))throw new IdGeneratorError(_0x2e2f66['mjsCG'],_0x3446be(0xe3)+_0x776ec4+':\x20'+_0x47b175);_0x2c2464=_0x56c600[_0x1dc295];}if(!new RegExp('^\x5cd{'+_0x4aed6d+'}$')[_0x3446be(0x17f)](_0x2c2464))throw new IdGeneratorError(_0x2e2f66[_0x3446be(0x1ba)],_0x3446be(0xec)+_0x4aed6d+_0x3446be(0xc9)+_0x2c2464+')');const _0x4d8b7a=_0x2e2f66[_0x3446be(0x1ae)](parseInt,_0x2c2464,0xa),_0x4d8ce9=_0x2e2f66[_0x3446be(0x153)](_0xc7d339,'_');let _0x1bd92f;return _0x2e2f66[_0x3446be(0x176)](_0x776ec4,_0x3446be(0x114))?_0x1bd92f=_0x4d8ce9+_0x3446be(0xc3):_0x1bd92f=_0x4d8ce9+'_'+_0x776ec4+'_'+_0x47b175,{'formatKey':_0x1bd92f,'counterInt':_0x4d8b7a,'datePrefix':_0x47b175};}[a0_0x2a924e(0x11f)](_0x55a7c8){const _0x533da4=a0_0x2a924e;let _0x2c84aa='';for(const _0x2b2fb4 of _0x55a7c8){const _0x5e7489=PLACEHOLDER_MAP[_0x2b2fb4];if(_0x5e7489){const _0x44a2bc=crypto[_0x533da4(0xd9)](0x0,_0x5e7489[_0x533da4(0x160)]);_0x2c84aa+=_0x5e7489[_0x44a2bc];}else _0x2c84aa+=_0x2b2fb4;}return _0x2c84aa;}async['_retrieveIdemCache'](_0x3a6824){const _0x242eba=a0_0x2a924e,_0x1cf872={'cRHNd':'idgen_idem_hit','Qnopi':'idgen_idem_retrieve_error'};if(!_0x3a6824)return null;try{const _0x5a1f06=redisClient[_0x242eba(0x17d)](),_0x3f80bb=await _0x5a1f06[_0x242eba(0x14d)](_0x3a6824);if(_0x3f80bb)return logger[_0x242eba(0xac)]({'event':_0x1cf872['cRHNd'],'key':_0x3a6824},'Idempotency\x20cache\x20HIT'),JSON['parse'](_0x3f80bb);return null;}catch(_0x528f8f){return logger[_0x242eba(0x1be)]({'event':_0x1cf872[_0x242eba(0x1dc)],'error':_0x528f8f[_0x242eba(0x119)]},'Idempotency\x20retrieve\x20error'),null;}}async['_storeIdemCache'](_0x5c02ac,_0x413eab){const _0xd112ee=a0_0x2a924e,_0x5442c4={'qnidG':_0xd112ee(0x1bc)};if(!_0x5c02ac)return;try{const _0x2e6896=redisClient['getClient']();await _0x2e6896['setex'](_0x5c02ac,this['idemTTL'],JSON[_0xd112ee(0x147)](_0x413eab));}catch(_0x1bb654){logger[_0xd112ee(0x1be)]({'event':_0xd112ee(0x19f),'error':_0x1bb654[_0xd112ee(0x119)]},_0x5442c4['qnidG']);}}async[a0_0x2a924e(0x135)](_0xa863bf,_0x4ffc86){const _0x4306e8=a0_0x2a924e,_0x6f680f={'hkyrc':'idgen_idem_nx_race_lost_but_empty','EVDvz':_0x4306e8(0xda),'kEGsY':_0x4306e8(0x17a)};if(!_0xa863bf)return{'stored':!![],'winnerResult':null};try{const _0x213df5=redisClient[_0x4306e8(0x17d)](),_0x737bac=JSON[_0x4306e8(0x147)](_0x4ffc86),_0x3e2abf=await _0x213df5[_0x4306e8(0x1c1)](_0xa863bf,_0x737bac,'EX',this[_0x4306e8(0xb7)],'NX');if(_0x3e2abf==='OK')return{'stored':!![],'winnerResult':null};const _0x382bfb=await _0x213df5[_0x4306e8(0x14d)](_0xa863bf);if(_0x382bfb)return{'stored':![],'winnerResult':JSON[_0x4306e8(0xcb)](_0x382bfb)};return logger['warn']({'event':_0x6f680f['hkyrc'],'key':_0xa863bf},_0x4306e8(0x1cd)),{'stored':!![],'winnerResult':null};}catch(_0x33b833){return logger[_0x4306e8(0x1be)]({'event':_0x6f680f[_0x4306e8(0x1a3)],'error':_0x33b833[_0x4306e8(0x119)]},_0x6f680f['kEGsY']),{'stored':!![],'winnerResult':null};}}async[a0_0x2a924e(0x183)](_0x105a88,_0x2f28f1,_0x73320c){const _0x3dc718=a0_0x2a924e;try{const _0x5551ac=redisClient[_0x3dc718(0x17d)]();if(_0x73320c){const _0x3db37e=this['_buildActiveKey'](_0x105a88,_0x2f28f1);await _0x5551ac['del'](_0x3db37e);}else{const _0xad397b=this['_buildIssuedKey'](_0x105a88);await _0x5551ac['srem'](_0xad397b,_0x2f28f1);}}catch(_0x4c460e){logger['warn']({'event':'idgen_random_undo_error','error':_0x4c460e['message']},'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)');}}async['_updateMeta'](_0x48c748,_0xbc77d2,_0x309175,_0x23aefa=0x0){const _0x10a652=a0_0x2a924e,_0xd3a65e={'rThzp':'idgen_meta_update_error'};try{const _0x8e8887=redisClient['getClient'](),_0x33bfc8=this[_0x10a652(0x13f)](_0x48c748,_0xbc77d2),_0x45b7f5=[];for(const [_0x46e998,_0x2386b8]of Object[_0x10a652(0xc5)](_0x309175)){_0x45b7f5[_0x10a652(0x18e)](_0x46e998,String(_0x2386b8));}if(_0x45b7f5['length']>0x0){await _0x8e8887['hset'](_0x33bfc8,..._0x45b7f5);if(_0x23aefa>0x0)await _0x8e8887['expire'](_0x33bfc8,_0x23aefa);}}catch(_0x59720d){logger['warn']({'event':_0xd3a65e['rThzp'],'error':_0x59720d[_0x10a652(0x119)]},'Meta\x20update\x20error');}}async[a0_0x2a924e(0x18d)](_0x1cdf60){const _0x21942c=a0_0x2a924e,_0x392203={'yvCxI':_0x21942c(0x116),'KIVbo':'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser','nJLcr':'idgen_number_generated'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x5c2608=this[_0x21942c(0x148)](_0x1cdf60),_0x222c46=this[_0x21942c(0x1b5)](_0x1cdf60['idempotencyKey']),{resource:_0x324775,format:_0x50417b,prefix:_0x261192,separator:_0x47130f,numDigits:_0x5396a2,reuseDelete:_0x233adf}=_0x5c2608,{formatKey:_0x57ef39,datePrefix:_0x45e985}=this['_buildFormatKey'](_0x50417b,_0x261192),_0x1aebfe=this[_0x21942c(0xb6)](_0x324775,_0x57ef39),_0x2675bd=this['_buildReuseKey'](_0x324775,_0x57ef39),_0x525ec3=this[_0x21942c(0x130)](_0x50417b);let _0x5168a4=null;if(_0x222c46){_0x5168a4=this['_buildIdemKey'](_0x21942c(0x18d),_0x324775,_0x57ef39,_0x222c46);const _0x503454=await this['_retrieveIdemCache'](_0x5168a4);if(_0x503454)return _0x503454;}const _0x89e379=redisClient[_0x21942c(0x17d)](),_0x18d017=await _0x89e379['eval'](LUA_GENERATE_NUMBER,0x2,_0x1aebfe,_0x2675bd,_0x233adf?'1':'0',String(_0x525ec3)),_0x5c8751=_0x18d017[0x0],_0xe6be5f=_0x18d017[0x1]===0x1,_0x416956=this[_0x21942c(0xe8)]({'format':_0x50417b,'prefix':_0x261192,'datePrefix':_0x45e985,'separator':_0x47130f,'numDigits':_0x5396a2,'counterInt':_0x5c8751}),_0x25cbb2={'value':_0x416956,'counter':_0x5c8751,'resource':_0x324775,'formatKey':_0x57ef39,'isReused':_0xe6be5f,'generatedAt':new Date()[_0x21942c(0x10e)]()},_0x329828=await this['_storeIdemCacheNX'](_0x5168a4,_0x25cbb2);if(!_0x329828[_0x21942c(0x136)]){try{await _0x89e379[_0x21942c(0x15e)](LUA_RELEASE_NUMBER,0x1,_0x2675bd,String(_0x5c8751),String(_0x525ec3));}catch(_0x19b991){logger[_0x21942c(0x1be)]({'event':_0x392203['yvCxI'],'error':_0x19b991[_0x21942c(0x119)],'resource':_0x324775,'formatKey':_0x57ef39,'counterInt':_0x5c8751},_0x392203['KIVbo']);}return logger[_0x21942c(0xac)]({'event':'idgen_number_idem_loser','resource':_0x324775,'formatKey':_0x57ef39,'counter':_0x5c8751},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x329828['winnerResult'];}return this[_0x21942c(0x15c)](_0x324775,_0x57ef39,{'lastValue':_0x416956,'lastCounter':_0x5c8751,'lastIsReused':_0xe6be5f,'lastGeneratedAt':_0x25cbb2[_0x21942c(0x17b)]},_0x525ec3),logger[_0x21942c(0xac)]({'event':_0x392203['nJLcr'],'resource':_0x324775,'formatKey':_0x57ef39,'counter':_0x5c8751,'isReused':_0xe6be5f},'ID\x20Generator\x20number:\x20'+_0x416956),_0x25cbb2;}async[a0_0x2a924e(0xff)](_0x148083){const _0x23efe8=a0_0x2a924e,_0x2fd3b4={'FtIyQ':_0x23efe8(0x1a5),'qZEqa':function(_0x2098ac,_0x5611b1){return _0x2098ac!==_0x5611b1;},'sxQAt':_0x23efe8(0x187),'aWnSs':_0x23efe8(0x1a1),'lfdZh':'text','Fifnb':'release','ghHzu':function(_0x4118c8,_0x2687e6){return _0x4118c8(_0x2687e6);},'yqvjT':_0x23efe8(0x16c)};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x2fd3b4['FtIyQ']);let _0x4c658a,_0x36e450,_0x110a89,_0x425170;const _0x4d3bc6=this['_validateIdempotencyKey'](_0x148083['idempotencyKey']);if(_0x148083['counterInt']!==undefined&&_0x148083['counterInt']!==null){this['_validateResource'](_0x148083[_0x23efe8(0x19e)]),_0x4c658a=_0x148083[_0x23efe8(0x19e)];if(_0x2fd3b4[_0x23efe8(0x105)](typeof _0x148083[_0x23efe8(0x13d)],_0x2fd3b4['sxQAt'])||_0x148083['formatKey']['length']===0x0)throw new IdGeneratorError(_0x2fd3b4[_0x23efe8(0x1b1)],'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x36e450=_0x148083[_0x23efe8(0x13d)];if(!Number[_0x23efe8(0x1c9)](_0x148083['counterInt'])||_0x148083['counterInt']<0x1)throw new IdGeneratorError(_0x2fd3b4[_0x23efe8(0x1b1)],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x148083[_0x23efe8(0x11b)]+')');_0x110a89=_0x148083['counterInt'];const _0x40dd92=_0x36e450[_0x23efe8(0x1ca)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x425170=_0x40dd92?_0x40dd92[0x1]:_0x2fd3b4['lfdZh'];}else{const _0x341625=this[_0x23efe8(0x148)](_0x148083),_0x433ad4=this['_parseNumber']({'format':_0x341625['format'],'prefix':_0x341625['prefix'],'separator':_0x341625[_0x23efe8(0x181)],'numDigits':_0x341625['numDigits'],'number':_0x148083['number']});_0x4c658a=_0x341625['resource'],_0x36e450=_0x433ad4[_0x23efe8(0x13d)],_0x110a89=_0x433ad4[_0x23efe8(0x11b)],_0x425170=_0x341625[_0x23efe8(0x1a6)];}const _0x42fc01=this['_buildReuseKey'](_0x4c658a,_0x36e450),_0x304411=this['_getCounterTTL'](_0x425170);let _0x1b496f=null;if(_0x4d3bc6){_0x1b496f=this['_buildIdemKey'](_0x2fd3b4['Fifnb'],_0x4c658a,_0x36e450,_0x4d3bc6);const _0x2fc40c=await this['_retrieveIdemCache'](_0x1b496f);if(_0x2fc40c)return _0x2fc40c;}const _0x24e8bb=redisClient['getClient']();await _0x24e8bb['eval'](LUA_RELEASE_NUMBER,0x1,_0x42fc01,String(_0x110a89),_0x2fd3b4[_0x23efe8(0xf6)](String,_0x304411));const _0x404c92={'released':!![],'resource':_0x4c658a,'formatKey':_0x36e450,'counter':_0x110a89,'releasedAt':new Date()[_0x23efe8(0x10e)]()};return await this['_storeIdemCache'](_0x1b496f,_0x404c92),this[_0x23efe8(0x15c)](_0x4c658a,_0x36e450,{'lastReleasedCounter':_0x110a89,'lastReleasedAt':_0x404c92['releasedAt']},_0x304411),logger['info']({'event':_0x2fd3b4[_0x23efe8(0x15f)],'resource':_0x4c658a,'formatKey':_0x36e450,'counter':_0x110a89},'ID\x20Generator\x20number\x20released:\x20'+_0x110a89),_0x404c92;}async[a0_0x2a924e(0x1c8)](_0x1e653f){const _0x37fb47=a0_0x2a924e,_0x388e06={'pGGNT':_0x37fb47(0xe5),'urFab':'resource','zDbmP':'prefix','LGeIP':_0x37fb47(0x181),'dgoxh':function(_0x46fc76,_0x58443c){return _0x46fc76(_0x58443c);},'koQCs':'datePrefix','dFsQD':function(_0x182e64,_0x2ce44f){return _0x182e64||_0x2ce44f;},'KIMUo':'createdAt','TyFjn':function(_0x6224cb,_0x236875){return _0x6224cb(_0x236875);},'bGnKy':_0x37fb47(0x178),'LFBdP':function(_0x504ac0,_0x4ccdb9){return _0x504ac0(_0x4ccdb9);},'mAsbF':function(_0x4cabf8,_0x490ef5){return _0x4cabf8(_0x490ef5);},'xAJZQ':function(_0x423b22,_0x418194){return _0x423b22===_0x418194;},'RzTOk':'idgen_reserve_overflow_compensation_error','axzQj':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','Njksl':'value','xjVvx':'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash','GZhwb':function(_0x4449cb,_0x1ede20){return _0x4449cb(_0x1ede20);},'CsfMI':_0x37fb47(0xb1),'qRhMz':'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser','XYFGP':_0x37fb47(0x155)};if(!this['enabled'])throw new IdGeneratorError(_0x37fb47(0x10c),_0x37fb47(0x167));const _0x5d9c42=this['_validateNumberParams'](_0x1e653f),_0x237674=this['_validateReserveTTL'](_0x1e653f[_0x37fb47(0x165)]),_0x16950a=this[_0x37fb47(0x1b5)](_0x1e653f['idempotencyKey']),{resource:_0x14f94b,format:_0x26f0e5,prefix:_0x841b6,separator:_0xc97fe8,numDigits:_0x4e7a44,reuseDelete:_0x31065e}=_0x5d9c42,{formatKey:_0x28b490,datePrefix:_0x449cc8}=this['_buildFormatKey'](_0x26f0e5,_0x841b6),_0x417446=this['_buildSeqKey'](_0x14f94b,_0x28b490),_0x14ef81=this[_0x37fb47(0x1b8)](_0x14f94b,_0x28b490),_0x5b87a7=this['_buildReservationIndexKey'](_0x14f94b,_0x28b490),_0x2f7d7d=this['_getCounterTTL'](_0x26f0e5);let _0x5314e7=null;if(_0x16950a){_0x5314e7=this['_buildIdemKey'](_0x388e06['pGGNT'],_0x14f94b,_0x28b490,_0x16950a);const _0x52e392=await this[_0x37fb47(0x182)](_0x5314e7);if(_0x52e392)return _0x52e392;}const _0x282af7=crypto['randomUUID'](),_0x113f57=this['_buildReservationKey'](_0x282af7),_0xfe151f=this['_buildReservationKeyPrefix'](),_0x576159=Date['now'](),_0x287d4d=_0x576159+_0x237674*0x3e8,_0x5b876d=_0x237674*0x3e8,_0x5be6fe=new Date(_0x576159)[_0x37fb47(0x10e)](),_0x527b4c=new Date(_0x287d4d)['toISOString'](),_0x118b54=[_0x388e06['urFab'],_0x14f94b,_0x37fb47(0x13d),_0x28b490,'format',_0x26f0e5,_0x388e06[_0x37fb47(0x164)],_0x841b6,_0x388e06['LGeIP'],_0xc97fe8,'numDigits',_0x388e06['dgoxh'](String,_0x4e7a44),_0x388e06[_0x37fb47(0x184)],_0x388e06['dFsQD'](_0x449cc8,''),_0x388e06['KIMUo'],_0x5be6fe,_0x37fb47(0x1ab),_0x527b4c,'ttlMs',_0x388e06['TyFjn'](String,_0x5b876d)];_0x16950a&&_0x118b54['push'](_0x388e06[_0x37fb47(0x161)],_0x16950a);const _0x1a974a=redisClient[_0x37fb47(0x17d)](),_0x5172d5=await _0x1a974a[_0x37fb47(0x15e)](LUA_RESERVE_NUMBER,0x3,_0x417446,_0x14ef81,_0x5b87a7,_0x31065e?'1':'0',_0x388e06[_0x37fb47(0x157)](String,_0x2f7d7d),_0x282af7,_0x113f57,_0x388e06['LFBdP'](String,_0x5b876d),String(_0x287d4d),_0x388e06[_0x37fb47(0x142)](String,_0x576159),_0xfe151f,..._0x118b54),_0x4a5a9f=_0x5172d5[0x0],_0x450a4f=_0x388e06['xAJZQ'](_0x5172d5[0x1],0x1),_0x4c7976=_0x5172d5[0x2]||0x0;let _0x1976b8;try{_0x1976b8=this['_formatNumber']({'format':_0x26f0e5,'prefix':_0x841b6,'datePrefix':_0x449cc8,'separator':_0xc97fe8,'numDigits':_0x4e7a44,'counterInt':_0x4a5a9f});}catch(_0x15b853){try{await _0x1a974a['eval'](LUA_CANCEL_RESERVATION,0x3,_0x113f57,_0x5b87a7,_0x14ef81,_0x282af7,String(_0x2f7d7d));}catch(_0x4c15ce){logger['warn']({'event':_0x388e06[_0x37fb47(0x111)],'error':_0x4c15ce[_0x37fb47(0x119)],'resource':_0x14f94b,'formatKey':_0x28b490,'counterInt':_0x4a5a9f,'token':_0x282af7},_0x388e06['axzQj']);}throw _0x15b853;}try{await _0x1a974a[_0x37fb47(0x1d4)](_0x113f57,_0x388e06[_0x37fb47(0x177)],_0x1976b8);}catch(_0x185746){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x185746[_0x37fb47(0x119)],'resource':_0x14f94b,'formatKey':_0x28b490,'counterInt':_0x4a5a9f,'token':_0x282af7},_0x388e06[_0x37fb47(0x1ac)]);}const _0x529162={'token':_0x282af7,'value':_0x1976b8,'counter':_0x4a5a9f,'resource':_0x14f94b,'formatKey':_0x28b490,'isReused':_0x450a4f,'createdAt':_0x5be6fe,'expiresAt':_0x527b4c,'reapedCount':_0x4c7976},_0x50ba32=await this['_storeIdemCacheNX'](_0x5314e7,_0x529162);if(!_0x50ba32['stored']){try{await _0x1a974a[_0x37fb47(0x15e)](LUA_CANCEL_RESERVATION,0x3,_0x113f57,_0x5b87a7,_0x14ef81,_0x282af7,_0x388e06['GZhwb'](String,_0x2f7d7d));}catch(_0x391d12){logger[_0x37fb47(0x1be)]({'event':_0x388e06['CsfMI'],'error':_0x391d12['message'],'resource':_0x14f94b,'formatKey':_0x28b490,'counterInt':_0x4a5a9f,'token':_0x282af7},_0x388e06[_0x37fb47(0xb4)]);}return logger['info']({'event':_0x388e06['XYFGP'],'resource':_0x14f94b,'formatKey':_0x28b490,'counter':_0x4a5a9f,'token':_0x282af7},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x50ba32[_0x37fb47(0x180)];}return this[_0x37fb47(0x15c)](_0x14f94b,_0x28b490,{'lastReservedCounter':_0x4a5a9f,'lastReservedAt':_0x5be6fe,'lastReapedCount':_0x4c7976},_0x2f7d7d),logger['info']({'event':'idgen_number_reserved','resource':_0x14f94b,'formatKey':_0x28b490,'counter':_0x4a5a9f,'isReused':_0x450a4f,'token':_0x282af7,'ttl':_0x237674,'reapedCount':_0x4c7976},'ID\x20Generator\x20number\x20reserved:\x20'+_0x1976b8+'\x20(token='+_0x282af7+')'),_0x529162;}async[a0_0x2a924e(0xdf)](_0x13ebbe){const _0x2b7aa8=a0_0x2a924e,_0x4e31e0={'IfCVl':_0x2b7aa8(0x1a5),'Dqxcq':_0x2b7aa8(0x1a8),'YOIUK':function(_0x403593,_0x44535a){return _0x403593!==_0x44535a;},'NZgoT':'IDGEN_RESERVATION_NOT_FOUND','oDoZN':_0x2b7aa8(0x114),'haILB':'idgen_reservation_confirmed'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x4e31e0['IfCVl']);const _0x3fd68c=this[_0x2b7aa8(0x133)](_0x13ebbe&&_0x13ebbe[_0x2b7aa8(0x121)]),_0x15b51f=this[_0x2b7aa8(0x1b5)](_0x13ebbe&&_0x13ebbe['idempotencyKey']);let _0x34d4b1=null;if(_0x15b51f){_0x34d4b1=idempotencyManager['buildDeterministicKey'](_0x2b7aa8(0x198),_0x4e31e0[_0x2b7aa8(0x1d3)],_0x3fd68c+':'+_0x15b51f);const _0x276890=await this[_0x2b7aa8(0x182)](_0x34d4b1);if(_0x276890)return _0x276890;}const _0x59380b=await this['_getReservationContext'](_0x3fd68c),_0x12a3f8=redisClient[_0x2b7aa8(0x17d)](),_0x8c0049=await _0x12a3f8['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x59380b[_0x2b7aa8(0x1c4)],_0x59380b['rsvIdxKey'],_0x3fd68c);if(!_0x8c0049||_0x4e31e0['YOIUK'](_0x8c0049[0x0],0x1))throw new IdGeneratorError(_0x4e31e0['NZgoT'],_0x2b7aa8(0xf5)+_0x3fd68c,{'token':_0x3fd68c});const _0xdc382d=parseInt(_0x8c0049[0x1],0xa),_0x1e0017=_0x8c0049[0x2],_0x42c5c2=_0x8c0049[0x3],_0x33b00f=new Date()[_0x2b7aa8(0x10e)](),_0x5689a2={'confirmed':!![],'token':_0x3fd68c,'value':_0x1e0017,'counter':_0xdc382d,'resource':_0x59380b[_0x2b7aa8(0x19e)],'formatKey':_0x42c5c2,'confirmedAt':_0x33b00f};await this['_storeIdemCache'](_0x34d4b1,_0x5689a2);const _0x218ca2=_0x42c5c2[_0x2b7aa8(0x1ca)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x46b00f=_0x218ca2?_0x218ca2[0x1]:_0x4e31e0[_0x2b7aa8(0xfd)],_0x179242=this['_getCounterTTL'](_0x46b00f);return this['_updateMeta'](_0x59380b[_0x2b7aa8(0x19e)],_0x42c5c2,{'lastConfirmedCounter':_0xdc382d,'lastConfirmedAt':_0x33b00f},_0x179242),logger[_0x2b7aa8(0xac)]({'event':_0x4e31e0[_0x2b7aa8(0xde)],'resource':_0x59380b[_0x2b7aa8(0x19e)],'formatKey':_0x42c5c2,'counter':_0xdc382d,'token':_0x3fd68c},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0x1e0017+_0x2b7aa8(0x16b)+_0x3fd68c+')'),_0x5689a2;}async[a0_0x2a924e(0xf4)](_0x4df499){const _0xe8db93=a0_0x2a924e,_0x551f99={'vXuIe':'IDGEN_DISABLED','ZnEYM':_0xe8db93(0x198),'jeecz':function(_0x572154,_0xdea88){return _0x572154(_0xdea88);},'itdvJ':function(_0x1b2b2f,_0x5d2b51){return _0x1b2b2f!==_0x5d2b51;},'bejDB':function(_0x36a1f4,_0x16c831,_0x412605){return _0x36a1f4(_0x16c831,_0x412605);},'VQDCw':'idgen_reservation_cancelled'};if(!this['enabled'])throw new IdGeneratorError(_0x551f99[_0xe8db93(0x107)],'ID\x20Generator\x20is\x20disabled');const _0x54b97c=this['_validateReservationToken'](_0x4df499&&_0x4df499[_0xe8db93(0x121)]),_0x3d26d7=this['_validateIdempotencyKey'](_0x4df499&&_0x4df499['idempotencyKey']);let _0x209e49=null;if(_0x3d26d7){_0x209e49=idempotencyManager[_0xe8db93(0x1d2)](_0x551f99['ZnEYM'],_0xe8db93(0x1b7),_0x54b97c+':'+_0x3d26d7);const _0x25211c=await this['_retrieveIdemCache'](_0x209e49);if(_0x25211c)return _0x25211c;}const _0x17a125=await this[_0xe8db93(0xc8)](_0x54b97c),_0x3e35c6=this['_buildReuseKey'](_0x17a125[_0xe8db93(0x19e)],_0x17a125['formatKey']),_0x1b5b94=_0x17a125[_0xe8db93(0x13d)]['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0xe19ee7=_0x1b5b94?_0x1b5b94[0x1]:_0xe8db93(0x114),_0x51d7e5=this[_0xe8db93(0x130)](_0xe19ee7),_0x55568b=redisClient['getClient'](),_0x16fdcf=await _0x55568b[_0xe8db93(0x15e)](LUA_CANCEL_RESERVATION,0x3,_0x17a125[_0xe8db93(0x1c4)],_0x17a125[_0xe8db93(0x1d0)],_0x3e35c6,_0x54b97c,_0x551f99['jeecz'](String,_0x51d7e5));if(!_0x16fdcf||_0x551f99['itdvJ'](_0x16fdcf[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0xe8db93(0xf5)+_0x54b97c,{'token':_0x54b97c});const _0x483183=_0x551f99['bejDB'](parseInt,_0x16fdcf[0x1],0xa),_0x5a353f=_0x16fdcf[0x2],_0x5938ac=_0x16fdcf[0x3],_0x26484c=new Date()['toISOString'](),_0x2e4474={'cancelled':!![],'token':_0x54b97c,'value':_0x5a353f,'counter':_0x483183,'resource':_0x17a125['resource'],'formatKey':_0x5938ac,'releasedToReuse':!![],'cancelledAt':_0x26484c};return await this[_0xe8db93(0xc2)](_0x209e49,_0x2e4474),this['_updateMeta'](_0x17a125['resource'],_0x5938ac,{'lastCancelledCounter':_0x483183,'lastCancelledAt':_0x26484c},_0x51d7e5),logger['info']({'event':_0x551f99['VQDCw'],'resource':_0x17a125['resource'],'formatKey':_0x5938ac,'counter':_0x483183,'token':_0x54b97c},_0xe8db93(0x1c6)+_0x5a353f+_0xe8db93(0x16b)+_0x54b97c+')'),_0x2e4474;}async[a0_0x2a924e(0xba)](_0x3f286d){const _0x2e2695=a0_0x2a924e,_0x2660ac={'ryYnf':'ID\x20Generator\x20is\x20disabled','himTr':function(_0x139aa9,_0x1d8518){return _0x139aa9*_0x1d8518;},'bKoSA':function(_0x31ced5,_0x2c7ded){return _0x31ced5(_0x2c7ded);},'UqrQW':function(_0x15c766,_0x1dd4c2){return _0x15c766(_0x1dd4c2);},'IPZez':_0x2e2695(0x1bb),'glTxN':function(_0x18384b,_0x407a00,_0x164d2f){return _0x18384b(_0x407a00,_0x164d2f);},'MkBrz':'text'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x2660ac['ryYnf']);const _0xb3c4ad=this[_0x2e2695(0x133)](_0x3f286d&&_0x3f286d[_0x2e2695(0x121)]),_0x6f5072=this[_0x2e2695(0xd0)](_0x3f286d&&_0x3f286d['ttl']),_0x186352=this[_0x2e2695(0x1b5)](_0x3f286d&&_0x3f286d['idempotencyKey']);let _0x1b1d60=null;if(_0x186352){_0x1b1d60=idempotencyManager['buildDeterministicKey']('idgen',_0x2e2695(0x101),_0xb3c4ad+':'+_0x186352);const _0x4345d1=await this[_0x2e2695(0x182)](_0x1b1d60);if(_0x4345d1)return _0x4345d1;}const _0x46f920=await this[_0x2e2695(0xc8)](_0xb3c4ad),_0x339605=Date['now'](),_0x5b74bf=_0x339605+_0x2660ac['himTr'](_0x6f5072,0x3e8),_0x30612d=_0x6f5072*0x3e8,_0x502f32=new Date(_0x5b74bf)['toISOString'](),_0x1ecdc1=redisClient[_0x2e2695(0x17d)](),_0x5cce64=await _0x1ecdc1['eval'](LUA_EXTEND_RESERVATION,0x2,_0x46f920[_0x2e2695(0x1c4)],_0x46f920['rsvIdxKey'],_0xb3c4ad,_0x2660ac[_0x2e2695(0x143)](String,_0x30612d),_0x2660ac['UqrQW'](String,_0x5b74bf),_0x502f32);if(!_0x5cce64||_0x5cce64[0x0]!==0x1)throw new IdGeneratorError(_0x2660ac[_0x2e2695(0x1de)],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0xb3c4ad,{'token':_0xb3c4ad});const _0x18c4d8=_0x5cce64[0x1],_0x617b21=_0x2660ac['glTxN'](parseInt,_0x5cce64[0x2],0xa),_0x204c0c=_0x5cce64[0x3],_0x3337d1=_0x5cce64[0x4],_0x1ff31b=new Date(_0x339605)['toISOString'](),_0x4c32a6={'extended':!![],'token':_0xb3c4ad,'previousExpiresAt':_0x18c4d8,'expiresAt':_0x502f32,'ttlMs':_0x30612d,'resource':_0x46f920['resource'],'formatKey':_0x3337d1,'counter':_0x617b21,'value':_0x204c0c,'extendedAt':_0x1ff31b};await this[_0x2e2695(0xc2)](_0x1b1d60,_0x4c32a6);const _0x3ddb60=_0x3337d1[_0x2e2695(0x1ca)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x255f67=_0x3ddb60?_0x3ddb60[0x1]:_0x2660ac['MkBrz'],_0xf27066=this[_0x2e2695(0x130)](_0x255f67);return this['_updateMeta'](_0x46f920[_0x2e2695(0x19e)],_0x3337d1,{'lastExtendedCounter':_0x617b21,'lastExtendedAt':_0x1ff31b},_0xf27066),logger['info']({'event':_0x2e2695(0x126),'resource':_0x46f920['resource'],'formatKey':_0x3337d1,'counter':_0x617b21,'token':_0xb3c4ad,'ttl':_0x6f5072},_0x2e2695(0x1b9)+_0x204c0c+'\x20(token='+_0xb3c4ad+',\x20+'+_0x6f5072+'s)'),_0x4c32a6;}async[a0_0x2a924e(0x149)](_0x20495e){const _0x4a65eb=a0_0x2a924e,_0x4bfd02={'IYsXQ':_0x4a65eb(0x10c),'wSQZG':'IDGEN_RESERVATION_NOT_FOUND','gXSSK':function(_0x6b16a6,_0x3f67db,_0x2239a1){return _0x6b16a6(_0x3f67db,_0x2239a1);},'AOBul':function(_0xa4afbb,_0x345ca2){return _0xa4afbb===_0x345ca2;}};if(!this['enabled'])throw new IdGeneratorError(_0x4bfd02[_0x4a65eb(0xab)],'ID\x20Generator\x20is\x20disabled');const _0x507538=this['_validateReservationToken'](_0x20495e&&_0x20495e['token']),_0xf5236d=this['_buildReservationKey'](_0x507538),_0x4799be=redisClient[_0x4a65eb(0x17d)](),_0x2a5fcf=_0x4799be[_0x4a65eb(0xf8)]();_0x2a5fcf[_0x4a65eb(0x16f)](_0xf5236d),_0x2a5fcf['pttl'](_0xf5236d);const _0x48f781=await _0x2a5fcf[_0x4a65eb(0x171)](),_0x15187f=_0x48f781&&_0x48f781[0x0]&&_0x48f781[0x0][0x1],_0x1e4347=_0x48f781&&_0x48f781[0x1]&&_0x48f781[0x1][0x1];if(!_0x15187f||Object['keys'](_0x15187f)[_0x4a65eb(0x160)]===0x0)throw new IdGeneratorError(_0x4bfd02['wSQZG'],_0x4a65eb(0xf5)+_0x507538,{'token':_0x507538});return{'token':_0x507538,'resource':_0x15187f[_0x4a65eb(0x19e)]||null,'formatKey':_0x15187f['formatKey']||null,'format':_0x15187f['format']||null,'prefix':_0x15187f[_0x4a65eb(0x146)]||'','separator':_0x15187f[_0x4a65eb(0x181)]||'','numDigits':_0x15187f['numDigits']?_0x4bfd02['gXSSK'](parseInt,_0x15187f[_0x4a65eb(0x1dd)],0xa):null,'datePrefix':_0x15187f[_0x4a65eb(0x144)]||'','counter':_0x15187f[_0x4a65eb(0xed)]?parseInt(_0x15187f[_0x4a65eb(0xed)],0xa):null,'value':_0x15187f[_0x4a65eb(0x194)]||null,'isReused':_0x15187f['isReused']==='1'||_0x15187f[_0x4a65eb(0xfc)]===0x1,'createdAt':_0x15187f[_0x4a65eb(0x110)]||null,'expiresAt':_0x15187f[_0x4a65eb(0x1ab)]||null,'ttlRemainingMs':_0x4bfd02['AOBul'](typeof _0x1e4347,_0x4a65eb(0x18d))&&_0x1e4347>=0x0?_0x1e4347:null};}async['_getReservationContext'](_0x49208d){const _0xb7d556=a0_0x2a924e,_0x4ed3bb={'LIwPH':'formatKey'},_0x1c0731=this['_buildReservationKey'](_0x49208d),_0xa2ed91=redisClient[_0xb7d556(0x17d)](),_0x3d8c93=await _0xa2ed91[_0xb7d556(0x145)](_0x1c0731,'resource',_0x4ed3bb[_0xb7d556(0x18b)]),_0x3d5634=_0x3d8c93&&_0x3d8c93[0x0],_0x3ae383=_0x3d8c93&&_0x3d8c93[0x1];if(!_0x3d5634||!_0x3ae383)throw new IdGeneratorError(_0xb7d556(0x1bb),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x49208d,{'token':_0x49208d});return{'resource':_0x3d5634,'formatKey':_0x3ae383,'rsvKey':_0x1c0731,'rsvIdxKey':this['_buildReservationIndexKey'](_0x3d5634,_0x3ae383)};}async[a0_0x2a924e(0x179)](_0x4c0eda){const _0x344cbe=a0_0x2a924e,_0x5f5139={'NwXtj':_0x344cbe(0x1a5),'YxYLk':function(_0x588c11,_0x4139ed){return _0x588c11===_0x4139ed;},'pOViE':'random','yTcFU':function(_0x50c9eb,_0x3a4498){return _0x50c9eb===_0x3a4498;},'NdSYx':'IDGEN_UNIQUE_RETRY_EXHAUSTED','CgXWy':function(_0x4297c4,_0x1aab8e){return _0x4297c4&&_0x1aab8e;},'HaAih':function(_0x292e26,_0x4346cd){return _0x292e26*_0x4346cd;},'xkqhZ':'idgen_random_generated','zJiAU':function(_0xf90f85,_0x54591d){return _0xf90f85||_0x54591d;}};if(!this[_0x344cbe(0x158)])throw new IdGeneratorError('IDGEN_DISABLED',_0x5f5139[_0x344cbe(0x191)]);this['_validateResource'](_0x4c0eda['resource']),this['_validatePattern'](_0x4c0eda[_0x344cbe(0x1a0)]);const _0x47d3cf=this[_0x344cbe(0x18a)](_0x4c0eda['ttl']),_0x22227f=this['_validateMaxRetry'](_0x4c0eda[_0x344cbe(0x154)]),_0x12caff=this['_validateIdempotencyKey'](_0x4c0eda[_0x344cbe(0x192)]),_0x1ec97a=_0x5f5139['YxYLk'](_0x4c0eda[_0x344cbe(0xd4)],!![]),{resource:_0x4d6d7e,pattern:_0xa5fe2a}=_0x4c0eda;let _0x50cb56=null;if(_0x12caff){_0x50cb56=this['_buildIdemKey'](_0x5f5139['pOViE'],_0x4d6d7e,null,_0x12caff);const _0x5df26f=await this[_0x344cbe(0x182)](_0x50cb56);if(_0x5df26f)return _0x5df26f;}const _0x3434a5=redisClient['getClient']();let _0x4c1246=null,_0x55ecea=0x0;if(!_0x1ec97a)_0x4c1246=this['_generateFromPattern'](_0xa5fe2a),_0x55ecea=0x1;else{for(let _0x11a9ff=0x0;_0x11a9ff<_0x22227f;_0x11a9ff++){_0x55ecea++;const _0x5b4e64=this['_generateFromPattern'](_0xa5fe2a);if(_0x47d3cf){const _0x39ad44=this[_0x344cbe(0x1b2)](_0x4d6d7e,_0x5b4e64),_0x191559=await _0x3434a5['set'](_0x39ad44,'1','EX',_0x47d3cf,'NX');if(_0x5f5139[_0x344cbe(0xb2)](_0x191559,'OK')){_0x4c1246=_0x5b4e64;break;}}else{const _0x4a313b=this[_0x344cbe(0xf3)](_0x4d6d7e),_0x55e322=await _0x3434a5[_0x344cbe(0x1db)](_0x4a313b,_0x5b4e64);if(_0x55e322===0x1){_0x4c1246=_0x5b4e64;break;}}}if(_0x4c1246===null)throw new IdGeneratorError(_0x5f5139['NdSYx'],_0x344cbe(0xd5)+_0x22227f+_0x344cbe(0x1c2),{'resource':_0x4d6d7e,'pattern':_0xa5fe2a,'maxRetry':_0x22227f});}const _0x1cde6e={'value':_0x4c1246,'resource':_0x4d6d7e,'pattern':_0xa5fe2a,'attemptCount':_0x55ecea,'generatedAt':new Date()[_0x344cbe(0x10e)]()};_0x5f5139['CgXWy'](_0x47d3cf,_0x1ec97a)&&(_0x1cde6e['expiresAt']=new Date(Date[_0x344cbe(0xae)]()+_0x5f5139[_0x344cbe(0xdb)](_0x47d3cf,0x3e8))['toISOString']());const _0xc44b33=await this[_0x344cbe(0x135)](_0x50cb56,_0x1cde6e);if(!_0xc44b33[_0x344cbe(0x136)])return _0x1ec97a&&await this[_0x344cbe(0x183)](_0x4d6d7e,_0x4c1246,_0x47d3cf),logger[_0x344cbe(0xac)]({'event':'idgen_random_idem_loser','resource':_0x4d6d7e,'pattern':_0xa5fe2a,'value':_0x4c1246},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0xc44b33[_0x344cbe(0x180)];return logger[_0x344cbe(0xac)]({'event':_0x5f5139['xkqhZ'],'resource':_0x4d6d7e,'pattern':_0xa5fe2a,'attemptCount':_0x55ecea,'ensureUnique':_0x1ec97a,'ttl':_0x5f5139[_0x344cbe(0xe6)](_0x47d3cf,0x0)},_0x344cbe(0xcd)+_0x4c1246),_0x1cde6e;}async[a0_0x2a924e(0xf9)](_0x1b4222){const _0x11e2dd=a0_0x2a924e,_0x1871d2={'fibCF':function(_0x4b3bfa,_0x1a8425){return _0x4b3bfa<_0x1a8425;},'bukac':function(_0x81a275,_0x2178ec){return _0x81a275>_0x2178ec;},'Zwqha':'IDGEN_INVALID_DIGITS'},_0x356c69=_0x1b4222[_0x11e2dd(0x12b)]==null?this['defaultPinDigits']:_0x1b4222['digits'];if(!Number[_0x11e2dd(0x1c9)](_0x356c69)||_0x1871d2['fibCF'](_0x356c69,MIN_PIN_DIGITS)||_0x1871d2[_0x11e2dd(0x186)](_0x356c69,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x1871d2[_0x11e2dd(0x189)],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x356c69+')');const _0x580aed='9'[_0x11e2dd(0x10d)](_0x356c69);return this['random']({'resource':_0x1b4222['resource'],'pattern':_0x580aed,'ensureUnique':_0x1b4222[_0x11e2dd(0xd4)]===!![],'ttl':_0x1b4222[_0x11e2dd(0x165)],'maxRetry':_0x1b4222[_0x11e2dd(0x154)],'idempotencyKey':_0x1b4222[_0x11e2dd(0x192)]});}async[a0_0x2a924e(0xca)](_0x2caa9d){const _0xbc526b=a0_0x2a924e,_0x2584f0=_0x2caa9d[_0xbc526b(0x1a0)]||this['defaultSerialPattern'];return this[_0xbc526b(0x179)]({'resource':_0x2caa9d['resource'],'pattern':_0x2584f0,'ensureUnique':_0x2caa9d['ensureUnique']!==![],'ttl':_0x2caa9d[_0xbc526b(0x165)],'maxRetry':_0x2caa9d[_0xbc526b(0x154)],'idempotencyKey':_0x2caa9d['idempotencyKey']});}async[a0_0x2a924e(0xc0)](_0x2c6e4b){const _0x121239=a0_0x2a924e,_0x1652ab={'IcpJg':function(_0x5980d4,_0x1fbe38){return _0x5980d4!==_0x1fbe38;}},_0x150bdd=_0x2c6e4b['pattern']||this[_0x121239(0x1af)];return this['random']({'resource':_0x2c6e4b['resource'],'pattern':_0x150bdd,'ensureUnique':_0x1652ab['IcpJg'](_0x2c6e4b[_0x121239(0xd4)],![]),'ttl':_0x2c6e4b['ttl'],'maxRetry':_0x2c6e4b[_0x121239(0x154)],'idempotencyKey':_0x2c6e4b['idempotencyKey']});}async['consume'](_0x3e57cb){const _0x317957=a0_0x2a924e,_0x1e92d4={'DyhZa':'ID\x20Generator\x20is\x20disabled','BKpoX':function(_0xa18e3d,_0x17939b){return _0xa18e3d!==_0x17939b;},'UgnDt':function(_0x759e59,_0x3b6ce3){return _0x759e59===_0x3b6ce3;},'AWSgA':function(_0x2f8dea,_0x3de071){return _0x2f8dea>_0x3de071;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x1e92d4[_0x317957(0x152)]);this['_validateResource'](_0x3e57cb[_0x317957(0x19e)]);if(_0x1e92d4[_0x317957(0xeb)](typeof _0x3e57cb['value'],'string')||_0x1e92d4['UgnDt'](_0x3e57cb[_0x317957(0x194)]['length'],0x0))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x317957(0x120));const {resource:_0x2ae897,value:_0x2e1775}=_0x3e57cb,_0x3f31bd=redisClient[_0x317957(0x17d)](),_0x412aa2=this[_0x317957(0x1b2)](_0x2ae897,_0x2e1775),_0x15430b=this['_buildIssuedKey'](_0x2ae897),[_0x20fb98,_0x38adb9]=await Promise['all']([_0x3f31bd[_0x317957(0x134)](_0x412aa2),_0x3f31bd[_0x317957(0x163)](_0x15430b,_0x2e1775)]),_0xd0fa7c=_0x1e92d4['AWSgA'](_0x20fb98+_0x38adb9,0x0);return logger['info']({'event':'idgen_consumed','resource':_0x2ae897,'value':_0x2e1775,'consumed':_0xd0fa7c},'ID\x20Generator\x20consumed:\x20'+_0x2e1775),{'consumed':_0xd0fa7c,'resource':_0x2ae897,'value':_0x2e1775,'consumedAt':new Date()[_0x317957(0x10e)]()};}async['peek'](_0x44f1ba){const _0x114eac=a0_0x2a924e,_0x14eed0={'WjCst':_0x114eac(0x1a5),'PgWWf':function(_0x26369f,_0x500581){return _0x26369f===_0x500581;},'RvCoj':_0x114eac(0x18d),'SawFK':'IDGEN_INVALID_FORMAT','rkqQw':function(_0x5b5f66,_0x47823d,_0xc00d10){return _0x5b5f66(_0x47823d,_0xc00d10);},'yQSZD':_0x114eac(0x179),'niKZG':'IDGEN_INVALID_MODE'};if(!this['enabled'])throw new IdGeneratorError(_0x114eac(0x10c),_0x14eed0['WjCst']);this[_0x114eac(0xf1)](_0x44f1ba[_0x114eac(0x19e)]);const _0x52c8f4=_0x44f1ba[_0x114eac(0xf0)]||_0x114eac(0x18d),_0x2445d8=redisClient['getClient']();if(_0x14eed0['PgWWf'](_0x52c8f4,_0x14eed0[_0x114eac(0x113)])){const _0x43c502=(_0x44f1ba['format']||_0x114eac(0x114))['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x43c502))throw new IdGeneratorError(_0x14eed0[_0x114eac(0x16d)],'Invalid\x20format:\x20'+_0x44f1ba[_0x114eac(0x1a6)]);const {formatKey:_0x2115af}=this['_buildFormatKey'](_0x43c502,_0x44f1ba[_0x114eac(0x146)]||''),_0x2203f0=this['_buildSeqKey'](_0x44f1ba[_0x114eac(0x19e)],_0x2115af),_0x27b081=this[_0x114eac(0x1b8)](_0x44f1ba['resource'],_0x2115af),[_0x12c5b5,_0x31e732]=await Promise['all']([_0x2445d8['get'](_0x2203f0),_0x2445d8['zcard'](_0x27b081)]);return{'resource':_0x44f1ba['resource'],'mode':_0x14eed0[_0x114eac(0x113)],'formatKey':_0x2115af,'currentCounter':_0x14eed0['rkqQw'](parseInt,_0x12c5b5,0xa)||0x0,'reusePoolSize':_0x31e732||0x0};}if(_0x52c8f4===_0x14eed0['yQSZD']){const _0x5dc56d=this['_buildIssuedKey'](_0x44f1ba['resource']),_0x3f2d1a=await _0x2445d8[_0x114eac(0x115)](_0x5dc56d);return{'resource':_0x44f1ba['resource'],'mode':_0x14eed0['yQSZD'],'issuedCount':_0x3f2d1a||0x0};}throw new IdGeneratorError(_0x14eed0['niKZG'],_0x114eac(0xb3)+_0x52c8f4);}async[a0_0x2a924e(0x169)](_0x1ecf58){const _0x36e416=a0_0x2a924e,_0x395f0a={'oXBKS':function(_0xde7f8,_0x13c7cf){return _0xde7f8===_0x13c7cf;},'AtyfB':function(_0x584b3e,_0x24b16f){return _0x584b3e>_0x24b16f;}},_0x18ecd2=await this[_0x36e416(0x1b6)](_0x1ecf58);if(_0x395f0a['oXBKS'](_0x18ecd2[_0x36e416(0xf0)],'number')){const _0x2d3e6b=redisClient[_0x36e416(0x17d)](),_0x258488=this[_0x36e416(0x13f)](_0x1ecf58['resource'],_0x18ecd2[_0x36e416(0x13d)]),_0xcc2740=this[_0x36e416(0x1b8)](_0x1ecf58[_0x36e416(0x19e)],_0x18ecd2['formatKey']),[_0x4b0ba0,_0x116972]=await Promise[_0x36e416(0x18f)]([_0x2d3e6b['hgetall'](_0x258488),_0x2d3e6b[_0x36e416(0x128)](_0xcc2740,0x0,-0x1)]);return{..._0x18ecd2,'reusePoolValues':_0x116972[_0x36e416(0x11c)](_0x2d3cbd=>parseInt(_0x2d3cbd,0xa)),'meta':_0x4b0ba0&&_0x395f0a[_0x36e416(0x1a9)](Object['keys'](_0x4b0ba0)['length'],0x0)?_0x4b0ba0:null};}return _0x18ecd2;}async['reset'](_0x1bf8d1){const _0x4e4398=a0_0x2a924e,_0x3ce7ef={'svugz':_0x4e4398(0x18d),'QWNSY':'IDGEN_INVALID_FORMAT','KVhYY':_0x4e4398(0x185),'pXfHU':_0x4e4398(0x14b),'ImKAM':_0x4e4398(0x10f),'tcfpL':function(_0x222bac,_0x23c2bb){return _0x222bac===_0x23c2bb;},'OAtLl':'random'};if(!this['enabled'])throw new IdGeneratorError(_0x4e4398(0x10c),'ID\x20Generator\x20is\x20disabled');if(!this['allowReset'])throw new IdGeneratorError(_0x4e4398(0x1e0),_0x4e4398(0x1b4));this['_validateResource'](_0x1bf8d1['resource']);const _0x32a4b8=_0x1bf8d1['mode']||_0x4e4398(0x18d),_0x36a470=redisClient['getClient']();if(_0x32a4b8===_0x3ce7ef['svugz']){const _0x488c6c=(_0x1bf8d1['format']||'text')[_0x4e4398(0x1ad)]();if(!ALLOWED_FORMATS[_0x4e4398(0xaf)](_0x488c6c))throw new IdGeneratorError(_0x3ce7ef['QWNSY'],_0x4e4398(0x103)+_0x1bf8d1[_0x4e4398(0x1a6)]);const {formatKey:_0x17c514}=this['_buildFormatKey'](_0x488c6c,_0x1bf8d1['prefix']||''),_0x22c0a4=this['_buildSeqKey'](_0x1bf8d1[_0x4e4398(0x19e)],_0x17c514),_0x2fb4a4=this[_0x4e4398(0x1b8)](_0x1bf8d1['resource'],_0x17c514),_0x375e7b=this['_buildMetaKey'](_0x1bf8d1['resource'],_0x17c514);return await _0x36a470[_0x4e4398(0x134)](_0x22c0a4,_0x2fb4a4,_0x375e7b),logger['warn']({'event':_0x3ce7ef[_0x4e4398(0x150)],'resource':_0x1bf8d1['resource'],'mode':'number','formatKey':_0x17c514},_0x4e4398(0x1d6)+_0x1bf8d1[_0x4e4398(0x19e)]+':'+_0x17c514),{'reset':!![],'resource':_0x1bf8d1[_0x4e4398(0x19e)],'mode':_0x3ce7ef[_0x4e4398(0x12a)],'formatKey':_0x17c514,'deletedKeys':[_0x3ce7ef[_0x4e4398(0x1a2)],_0x3ce7ef['ImKAM'],'meta']};}if(_0x3ce7ef['tcfpL'](_0x32a4b8,_0x4e4398(0x179))){const _0x4a5259=this['_buildIssuedKey'](_0x1bf8d1[_0x4e4398(0x19e)]);return await _0x36a470[_0x4e4398(0x134)](_0x4a5259),logger[_0x4e4398(0x1be)]({'event':_0x4e4398(0x185),'resource':_0x1bf8d1['resource'],'mode':_0x3ce7ef[_0x4e4398(0x19c)]},_0x4e4398(0xb9)+_0x1bf8d1['resource']),{'reset':!![],'resource':_0x1bf8d1['resource'],'mode':_0x4e4398(0x179),'deletedKeys':[_0x4e4398(0x151)]};}throw new IdGeneratorError('IDGEN_INVALID_MODE','Unknown\x20mode:\x20'+_0x32a4b8);}}const instance=new IdGenerator();function a0_0x17ae(_0x5ae96b,_0x456aab){_0x5ae96b=_0x5ae96b-0xab;const _0x25a9c2=a0_0x25a9();let _0x17aee2=_0x25a9c2[_0x5ae96b];if(a0_0x17ae['KZOvav']===undefined){var _0xd40e26=function(_0x6d2804){const _0x487e6a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1a809d='',_0x3bb5f4='';for(let _0x3013a8=0x0,_0xa41183,_0x5b2926,_0xe8a3fc=0x0;_0x5b2926=_0x6d2804['charAt'](_0xe8a3fc++);~_0x5b2926&&(_0xa41183=_0x3013a8%0x4?_0xa41183*0x40+_0x5b2926:_0x5b2926,_0x3013a8++%0x4)?_0x1a809d+=String['fromCharCode'](0xff&_0xa41183>>(-0x2*_0x3013a8&0x6)):0x0){_0x5b2926=_0x487e6a['indexOf'](_0x5b2926);}for(let _0x1f5ac9=0x0,_0xbbd002=_0x1a809d['length'];_0x1f5ac9<_0xbbd002;_0x1f5ac9++){_0x3bb5f4+='%'+('00'+_0x1a809d['charCodeAt'](_0x1f5ac9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x3bb5f4);};a0_0x17ae['gqXxjl']=_0xd40e26,a0_0x17ae['vdaDzE']={},a0_0x17ae['KZOvav']=!![];}const _0x1c284b=_0x25a9c2[0x0],_0x20fb0f=_0x5ae96b+_0x1c284b,_0x2da572=a0_0x17ae['vdaDzE'][_0x20fb0f];return!_0x2da572?(_0x17aee2=a0_0x17ae['gqXxjl'](_0x17aee2),a0_0x17ae['vdaDzE'][_0x20fb0f]=_0x17aee2):_0x17aee2=_0x2da572,_0x17aee2;}instance[a0_0x2a924e(0xe2)]=IdGeneratorError,module['exports']=instance,module[a0_0x2a924e(0x190)]['IdGeneratorError']=IdGeneratorError;function a0_0x25a9(){const _0x30921a=['nZa4mZuWsxnfAhvh','x3vWzgf0zu1LDge','sw52ywXPzcbMB3jTyxq6ig11C3qGyMuGB25Lig9Mia','zxzHBa','Exf2ALq','BgvUz3rO','yKDUs3K','u21Mvvm','C3jLBq','EKrIBva','DhrS','wgr0Cha','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','CMvZzxj2zu1HEfruta','z2v0sw5MBW','x2vUywjSzwq','icH0B2TLBJ0','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','u2f3rKS','CgPbwxy','AgDLDgfSBa','C3bSAxq','zxHLyW','surhru5Fq09vtLrfuL9uveXFrefjtfK','ExL5Ew1Tzgq','x2LUAxrdB25MAwC','surhru5Fsu5wquXjrf9qqvrurvjo','yvbHCLe','tMPRC2W','AwrLBuTLEq','CMfUzg9T','swrLBxbVDgvUy3KGu0vuie5yigvYCM9Y','z2vUzxjHDgvKqxq','surhru5Fsu5wquXjrf9gt1jnqvq','z2v0q2XPzw50','BwrSuva','DgvZDa','D2LUBMvYuMvZDwX0','C2vWyxjHDg9Y','x3jLDhjPzxzLswrLBunHy2HL','x3vUzg9syw5KB21szxnLCNzHDgLVBG','A29rq3m','AwrNzw5FCMvZzxq','yNvRywm','C3rYAw5N','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','wNDXAge','x3zHBgLKyxrLvfrm','teL3ueG','r2HoEva','BNvTyMvY','ChvZAa','ywXS','zxHWB3j0CW','tNDyDgO','AwrLBxbVDgvUy3LlzxK','x2rLzMf1BhrnyxHszxrYEq','DMfSDwu','CNn2x2LKEdO','surhru5Fsu5wquXjrf9ut0TftG','y2TmwKy','AwrNzw4','CMy6AwrNzw46','CgfKzgvKicHNB3q6ia','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','t0f0tgW','EwX0BK4','CMvZB3vYy2u','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','Cgf0DgvYBG','surhru5Fsu5wquXjrf9ovu1crvi','CfHMsfu','rvzeDNO','mZC2mta5nLHXDhb0yG','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','zM9YBwf0','ywXSB3DszxnLDa','CMvZzxj2zv9JB25MAxjT','qxr5zKi','thfUyKG','zxHWAxjLC0f0','EgPwDNG','Dg9mB3DLCKnHC2u','rwrHz3a','zgvMyxvSDenVzgvqyxr0zxjU','lI9YzwrPCY1JBgLLBNq','yvDUu3m','x2j1AwXKqwn0AxzLs2v5','x3jLC2vYDMvezwzHDwX0vfrm','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','CgvLAW','CMvZzxj2zv9Jyw5JzwW','x2j1AwXKuMv1C2vlzxK','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','BwPZq0C','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','qxDlwvu','D2fYBG','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','z2v0tw9UDgG','C2v0','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','CNn2s2v5','sNjQt0y','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','zw52','CMvZzxj2zu51BwjLCG','AxnjBNrLz2vY','Bwf0y2G','wfHywc1ywfHylvHywfGTwfHywa','rMLJwKG','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','vfPSD3G','vwj4B3K','CNn2swr4s2v5','n2zXy3nfyW','yNvPBgrezxrLCM1PBMLZDgLJs2v5','rhf4y3e','AhnLDa','otK5os05otK5','suqGr2vUzxjHDg9YihjLC2v0oIa','surhru5Frevgqvvmvf9nqvHFuKvuuLK','x3bHzdi','surhru5Fq09vtLrfuL9pvKvsrKXpvW','A2v5uhjLzML4','C2fKza','uw5VCgK','BNvTrgLNAxrZ','svbAzxO','mdeYmZq1nJC4oufcq0rfrG','surhru5FuKvtrvrFtK9ux0fmte9xruq','r3rmCeG','svLZwfe','Aw5MBW','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','BM93','AgfZ','x2vUC3vYzuLUAxrPywXPEMvK','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','EvrJrLu','vw5RBM93BIbTB2rLoIa','CvjOtxO','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','x2j1AwXKu2vXs2v5','AwrLBvruta','surhru5Fsu5wquXjrf9srvnpvvjdrq','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','zxH0zw5KuMvZzxj2yxrPB24','AhLprM4','lcbLEhbLy3rLzca','zgv0ywLSCW','EMfxvMG','ExL5Ew1T','y29Kzq','AxnZDwvKoG','x3n0B3jLswrLBunHy2HL','x3rLEhq','wgnnrLm','zw50CMLLCW','nwfsvfLOsW','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','igrPz2L0CYaOz290oIa','C2vYAwfS','CgfYC2u','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','suqGr2vUzxjHDg9YihjHBMrVBtOG','sgHhAha','lcbNB3qG','x3zHBgLKyxrLuMvZzxj2zvruta','v3jeqwK','AwrNzw5Fy29UzMLNx2LUAxq','ExL5Eq','zw5ZDxjLvw5PCxvL','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','AuvHvMq','x2LKzw1uveW','x3jLC2vYDMvnyxHuveW','CMfUzg9Tsw50','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','sgfbAwG','B1LMCfq','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','Agfjtei','y29UzMLYBvjLC2vYDMf0Aw9U','vK1VDLi','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','swrhzw5LCMf0B3jfCNjVCG','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','x2nVDw50zxjuveXnyxa','CMvZzxj2zq','EKPPqvu','surhru5Fru5bqKXfra','x2zVCM1HDe51BwjLCG','ote5mdbQrKvjyvG','icHNB3q6ia','qKTWB1G','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','y291BNrLCG','ywn0AxzLoG','x3bHCNnLtNvTyMvY','Bw9Kzq','x3zHBgLKyxrLuMvZB3vYy2u','EejXt1m','x2j1AwXKsxnZDwvKs2v5','y2fUy2vSuMvZzxj2yxrPB24','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','z2HiENu','x2rLzMf1BhrqAw5eAwDPDhm','CgLWzwXPBMu','CgLU','x2j1AwXKuMvZzxj2yxrPB25lzxK','x2rLzMf1BhrtzxjPywXqyxr0zxjU','AxnszxvZzwq','B0rVwK4','BMfTzq','CMvSzwfZzu51BwjLCG','Cg93','CMvZzxj2zv9LEhrLBMq','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','sw52ywXPzcbMB3jTyxq6ia','x2fSBg93uMvZzxq','CvPfCwe','C3Dsrxq','DLH1swu','mti2mtKXnZLOz05tBvi','z2v0rNvSBfLLyxi','vNP4Cxy','zgvMyxvSDe1HEfjLDhj5','surhru5FreLtqujmruq','CMvWzwf0','Dg9ju09tDhjPBMC','CMv1C2u','y3jLyxrLzef0','uNPut2S','EfDdvKm','uNzdB2O','Dgv4Da','C2nHCMq','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','mJCXmtu4r0zXEuLm','sw52ywXPzcbYzxnVDxjJztOGBxvZDcbTyxrJAca','BwvZC2fNzq','x2LUAxrPywXPEMvK','y291BNrLCKLUDa','BwfW','CMv1C2u6','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','x2DLBMvYyxrLrNjVBvbHDhrLCM4','DMfSDwuGAxmGCMvXDwLYzwq','Dg9Rzw4','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','sw52ywXPzcbZzxbHCMf0B3i6ig1HEcaZignOyxiSig11C3qGBM90ignVBNrHAw4GjZONicHNB3q6ia','Dgvssge','igv4y2vLzhmG','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','sw52ywXPzcbPzgvTCg90zw5JEuTLEtOGBxvZDcbIzsbZDhjPBMCGms0','ENjHBMDL','mdeYmZq1nJC4oq','C3z1z3O','zgLNAxrZ','x3L5ExLF','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','z2v0rgf0zq','x2j1AwXKrM9YBwf0s2v5','x2DLDenVDw50zxjuveW','mtK2mdeZmNLlzer4rW','C2vXoG','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','zgvS','x3n0B3jLswrLBunHy2HLtLG','C3rVCMvK','CMvZzxj2zurLzMf1BhruveW','DhrKvhK','ignOyxjZicHNB3qGBgvUz3rOoIa','zgvMyxvSDfbPBKrPz2L0CW','vw5RBM93BIbMB3jTyxq6ia','CNn2oG','zM9YBwf0s2v5','yKDer0i','x2j1AwXKtwv0yuTLEq','ignOyxjZ','x2TLEvbYzwzPEa','BufZyKy','yKTVu0e','zgf0zvbYzwzPEa','Ag1Nzxq','ChjLzML4','C3rYAw5NAwz5','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','z2v0uMvZzxj2yxrPB24','thHIC0u','C2vX','vMzhuhu','z2v0','q1zLsuO','nJeYotm5AhHgD1fo','s1zOwvK','AxnZDwvK','rhLOwMe','zhrkBge','Bwf4uMv0CNK','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','ihnLy29UzhmGkgDVDdOG','vhLgAM4','zw5HyMXLza','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','BhPHtxm'];a0_0x25a9=function(){return _0x30921a;};return a0_0x25a9();}
1
+ 'use strict';function a0_0x2dae(_0x33e530,_0x5a8370){_0x33e530=_0x33e530-0x101;const _0x5b293e=a0_0x5b29();let _0x2dae94=_0x5b293e[_0x33e530];if(a0_0x2dae['XFXZyF']===undefined){var _0x21e548=function(_0x3cebe0){const _0x2e9c14='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x582db6='',_0x18a492='';for(let _0xdc0133=0x0,_0x1f930f,_0x33cb3c,_0x2ba175=0x0;_0x33cb3c=_0x3cebe0['charAt'](_0x2ba175++);~_0x33cb3c&&(_0x1f930f=_0xdc0133%0x4?_0x1f930f*0x40+_0x33cb3c:_0x33cb3c,_0xdc0133++%0x4)?_0x582db6+=String['fromCharCode'](0xff&_0x1f930f>>(-0x2*_0xdc0133&0x6)):0x0){_0x33cb3c=_0x2e9c14['indexOf'](_0x33cb3c);}for(let _0x3c1009=0x0,_0x1fe966=_0x582db6['length'];_0x3c1009<_0x1fe966;_0x3c1009++){_0x18a492+='%'+('00'+_0x582db6['charCodeAt'](_0x3c1009)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x18a492);};a0_0x2dae['tYVllb']=_0x21e548,a0_0x2dae['DWMCXR']={},a0_0x2dae['XFXZyF']=!![];}const _0x394715=_0x5b293e[0x0],_0x2edbc7=_0x33e530+_0x394715,_0x595c62=a0_0x2dae['DWMCXR'][_0x2edbc7];return!_0x595c62?(_0x2dae94=a0_0x2dae['tYVllb'](_0x2dae94),a0_0x2dae['DWMCXR'][_0x2edbc7]=_0x2dae94):_0x2dae94=_0x595c62,_0x2dae94;}function a0_0x5b29(){const _0x5a1c3d=['CMvZB3vYy2u','surhru5Fru5bqKXfra','DKDAugS','rgfyu3m','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','lcaR','uLLXyuC','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','vw5RBM93BIbTB2rLoIa','AwrNzw4','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','cMLMiefsr1zBmv0Gpt0GjZeNihrOzw4kicbSB2nHBcbYzxvZzwqGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCMv1C2vKid4Gmcb0AgvUcIaGicbYzxr1CM4GE3rVBNvTyMvYkhjLDxnLzfSXxsKSidf9cIaGzw5KcMvUzaPSB2nHBcbUid0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcMXVy2fSihr0Bca9ihrVBNvTyMvYkefsr1zBmL0PcMLMihr0Bca+idaGyw5Kig4Gpt0Gmsb0AgvUcIaGCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SXxsWGDhrSkqPLBMqkCMv0DxjUihTUlcaWFqO','C3rVCMvK','x3jLC2vYDMvnyxHuveW','x2j1AwXKuMv1C2vlzxK','zMzoCeq','BgXTvui','ou9huxnVwa','tuzOA1C','swrhzw5LCMf0B3jfCNjVCG','BMfTzq','D2fcAgy','surhru5Fq09vtLrfuL9uveXFrefjtfK','qM52tue','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','C2vX','BgzcwxG','CffkDg0','ww1nrMC','ExL5Eq','uKfSwuS','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','tLftEvK','BNvTyMvY','Aw5MBW','DhrS','AgDLDgfSBa','CMy6AwrNzw46','zgvMyxvSDenVzgvqyxr0zxjU','Aw93suu','mti5mJeXogPhy1fhyW','C3jLBq','x2j1AwXKuMvZzxj2yxrPB25lzxK','surhru5Fsu5wquXjrf9quKvgsvG','y29Kzq','mZe5otK3meP4vxfJAW','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','ohrQAvrPAq','otK5os05otK5','sw52ywXPzcbWCMvMAxG6ig11C3qGBwf0y2GG','x3zHBgLKyxrLvfrm','mtmWmdq5mJzmBLL1sMe','x3zHBgLKyxrLuMvZB3vYy2u','surhru5Fsu5wquXjrf9srvnpvvjdrq','x2TLEvbYzwzPEa','surhru5Fsu5wquXjrf9nt0rf','Dg9mB3DLCKnHC2u','CgLU','C3bSAxq','CMvZzxj2zv9Jyw5JzwW','swrLBxbVDgvUy3KGy2fJAguGseLu','u0rQzgi','CNn2x2LKEdO','CMvSzwfZzwrbDa','CMvZzxj2zu51BwjLCG','Dg9ju09tDhjPBMC','x3zHBgLKyxrLuMvZzxj2zvruta','Cfn2EfK','C3rYAw5NAwz5','vhL0CMC','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','CMvZzxj2zu1HEfruta','y29UzMLYBvjLC2vYDMf0Aw9U','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','BM93','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','surhru5Fsu5wquXjrf9qqvrurvjo','x2nVDw50zxjuveXnyxa','zuXftwy','CNn2s2v5','AerWwKS','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','A2v5uhjLzML4','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','surhru5Frevgqvvmvf9nqvHFuKvuuLK','u2rOEgy','zhbcsuC','CMnRyK0','qKPQANu','D2LUBMvYuMvZDwX0','vgLoEve','oxW4FdeWFdeXFdj8nxWWFdD8mxW2Fdr8mW','Aw9eCKG','qvfWt0W','vun5DM0','tg1fvue','z2v0','CMjUELK','AwrNzw5FAwrLBv9OAxq','ndjTDg1vsu8','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','CMfUzg9T','t2H6Due','y1LUq2e','x2vUC3vYzuLUAxrPywXPEMvK','CgfKu3rHCNq','AxnszxvZzwq','D2fYBG','ntDNuKTeDKu','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','mZaYotGZtwzWz3D2','x3bHzdi','surhru5Fsu5wquXjrf9ovu1FreLhsvrt','zxHWAxjLC0f0','ywjJzgvMz2HPAMTSBw5VChfYC3r1DND4ExO','Bwf0y2G','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','AwrLBvruta','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','Bw9Kzq','x3n0B3jLswrLBunHy2HL','AhnLDa','yM9VBgvHBG','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','Cg5LqNi','tfzSCfC','ExL5Ew1Tzgq','zgvMyxvSDe1HEfjLDhj5','surhru5FreLtqujmruq','ENjHBMDL','nJq5otG1nLrtzM94EG','DhrStxm','x3jLC2vYDMvezwzHDwX0vfrm','rhn5s04','zw50CMLLCW','CNn2oG','ywn0AxzLoG','y3j5ChrV','x3bHCNnLtNvTyMvY','x2j1AwXKqwn0AxzLs2v5','sMLju1C','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','lcbNB3qG','q3znsw8','rwLqDfG','zgf0zvbYzwzPEa','Chr0Ba','wLbmC0u','C3rYAw5N','zw52','surhru5FuKvtrvrFtK9ux0fmte9xruq','EfPSA2O','wxvMzfe','AxnjBNrLz2vY','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','x2LKzw1uveW','vMHZuLi','whbvA2q','EwT4A2O','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','Dg12quC','BgvUz3rO','ywXSB3DszxnLDa','r0nUrxi','zM9YBwf0','CMfUzg9Tvvvjra','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','zgvMyxvSDfbPBKrPz2L0CW','x2rLzMf1BhrqAw5eAwDPDhm','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','x2zVCM1HDe51BwjLCG','z2v0q2XPzw50','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','suqGr2vUzxjHDg9Yig51BwjLCIbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','y3jLyxrLzef0','ExL5Ew1T','rwHzD1m','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','tgr0DuK','x3n0B3jLswrLBunHy2HLtLG','x3vUzg9syw5KB21szxnLCNzHDgLVBG','zgvS','CMvSzwfZzu51BwjLCG','surhru5Frevgqvvmvf9dt0rfx1bbvfrfuK4','x2DLDenVDw50zxjuveW','EgPmwfi','BMXyr2q','CNn2swr4s2v5','rxHoqNe','uLfRBeO','x3jLDhjPzxzLswrLBunHy2HL','wNz2r2K','D1nZsw0','x2rLzMf1BhrdB2rLugf0DgvYBG','Dg9Rzw4','AwrLBxbVDgvUy3LlzxK','tNDxsvO','AMvgr3y','icH0B2TLBJ0','x2j1AwXKsxnZDwvKs2v5','tff1vue','x2j1AwXKrM9YBwf0s2v5','tujps3y','x2LUAxrdB25MAwC','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','z0H1vvK','CMvZzxq','zgvMyxvSDfnLCMLHBfbHDhrLCM4','z2v0rNvSBfLLyxi','Bwv0ytO','zw5ZDxjLvw5PCxvL','CgfYC2u','lwrPz2L0ignHCgfJAxr5icG','DvvlrgO','CMv1C2u6','zgLNAxrZ','ChvZAa','wxzkvMG','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','z2v0uMvZzxj2yxrPB24','C2vWyxjHDg9Y','y29UC3vTzq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','surhru5Fsu5wquXjrf9gt1jnqvq','BNvTrgLNAxrZ','zw5HyMXLza','CgfKzgvKicHNB3q6ia','Ag5ABLu','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','BxntBfu','q291BNrLCIbVDMvYzMXVDZOG','CMvWzwf0','wMf5uM4','wwvPy3i','q091whK','EgPjBxm','BwvZC2fNzq','x2vUywjSzwq','C2v0zxG','suqGr2vUzxjHDg9Yig51BwjLCJOG','x3rLEhq','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','nNWXmhW1FdeYFdb8nhWZFdj8mtf8oxW4FdD8mq','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','rMfPBgvKihrVihjLBgvHC2uGy291BNrLCIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','zvnqvMO','quz6s0W','DMfSDwu','surhru5Fsu5wquXjrf9ovu1crvi','AgfZ','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','x2fSBg93uMvZzxq','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CMv1C2u','y291BNrLCKLUDa','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','mtu3odC2tNf6v3zL','yNvPBgrezxrLCM1PBMLZDgLJs2v5','AhrIvKe','mtmYnJiWmejQz1zRuW','zxzHBa','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','Cgf0DgvYBG','x2rLzMf1BhrnyxHszxrYEq','z2HpwgW','AwrNzw5FBwv0yv91CgrHDgvFzxjYB3i','A1PMwgC','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','C2vXoG','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','ihnLy29UzhmGkgDVDdOG','AwrNzw5FBNvTyMvYx3jLC2vYDMvK','AwrNzw5FCMvZzxj2yxrPB25Fy29UzMLYBwvK','ueftq3i','DgvZDa','EKjzswi','x2LUAxrPywXPEMvK','icHNB3q6ia','surhru5Fsu5wquXjrf9uveW','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG','x2j1AwXKswrLBuTLEq','Dhj1zq','x3vWzgf0zu1LDge','AwrNzw5FCMfUzg9Tx3vUzg9FzxjYB3i','AxnfBMfIBgvK','zM9YBwf0s2v5','uw1Iwvu','ywXS','surhru5Fsu5wquXjrf9ut0TftG','ChjLzML4','vMTNrwi','Dgv4Da','DxviBfe'];a0_0x5b29=function(){return _0x5a1c3d;};return a0_0x5b29();}const a0_0x44aa3e=a0_0x2dae;(function(_0x11a4fd,_0x47e39d){const _0x4d9db9=a0_0x2dae,_0x31acb0=_0x11a4fd();while(!![]){try{const _0x437b90=-parseInt(_0x4d9db9(0x212))/0x1*(-parseInt(_0x4d9db9(0x1d1))/0x2)+parseInt(_0x4d9db9(0x210))/0x3*(-parseInt(_0x4d9db9(0x17d))/0x4)+-parseInt(_0x4d9db9(0x180))/0x5+parseInt(_0x4d9db9(0x1ca))/0x6*(parseInt(_0x4d9db9(0x207))/0x7)+parseInt(_0x4d9db9(0x228))/0x8+-parseInt(_0x4d9db9(0x1b3))/0x9*(parseInt(_0x4d9db9(0x1cf))/0xa)+-parseInt(_0x4d9db9(0x1d5))/0xb;if(_0x437b90===_0x47e39d)break;else _0x31acb0['push'](_0x31acb0['shift']());}catch(_0x125449){_0x31acb0['push'](_0x31acb0['shift']());}}}(a0_0x5b29,0xc318e));const crypto=require(a0_0x44aa3e(0x103)),redisClient=require('./redis-client'),{logger}=require('./logger'),idempotencyManager=require(a0_0x44aa3e(0x1ac)),ALLOWED_FORMATS=new Set([a0_0x44aa3e(0x1a0),'yyyy',a0_0x44aa3e(0x12b),'yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER=a0_0x44aa3e(0x216),CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER=a0_0x44aa3e(0x1ad),LUA_RELEASE_NUMBER='\x0aredis.call(\x27ZADD\x27,\x20KEYS[1],\x20ARGV[1],\x20ARGV[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x201\x0a',LUA_RESERVE_NUMBER=a0_0x44aa3e(0x182),LUA_CONFIRM_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27,\x20\x27expiresAt\x27)\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20h[1],\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a',LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27,\x20\x27isReused\x27,\x20\x27createdAt\x27)\x0alocal\x20prevExpiresAt\x20=\x20h[1]\x0alocal\x20newTtlMs\x20=\x20tonumber(ARGV[2])\x0alocal\x20newExpMs\x20=\x20tonumber(ARGV[3])\x0aredis.call(\x27PEXPIRE\x27,\x20KEYS[1],\x20newTtlMs)\x0aredis.call(\x27HSET\x27,\x20KEYS[1],\x20\x27expiresAt\x27,\x20ARGV[4])\x0aredis.call(\x27ZADD\x27,\x20KEYS[2],\x20newExpMs,\x20ARGV[1])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[2],\x20math.floor(newTtlMs\x20/\x201000)\x20+\x2060)\x0areturn\x20{\x201,\x20prevExpiresAt,\x20h[2],\x20h[3],\x20h[4],\x20h[5],\x20h[6]\x20}\x0a';class IdGeneratorError extends Error{constructor(_0x4aec5f,_0x33fa97,_0x511b0e=null){const _0x324429=a0_0x44aa3e,_0xa0b01a={'DaXSs':function(_0x4ec8a9,_0x5a9aec){return _0x4ec8a9||_0x5a9aec;}};super(_0xa0b01a[_0x324429(0x1a5)](_0x33fa97,_0x4aec5f)),this[_0x324429(0x1b6)]='IdGeneratorError',this[_0x324429(0x1ce)]=_0x4aec5f,this['details']=_0x511b0e;}}class IdGenerator{constructor(){const _0x50e132=a0_0x44aa3e,_0x555154={'hDpZK':_0x50e132(0x1ff)},_0x5b893a=_0x555154[_0x50e132(0x1f4)]['split']('|');let _0x57f5dc=0x0;while(!![]){switch(_0x5b893a[_0x57f5dc++]){case'0':this[_0x50e132(0x124)]=null;continue;case'1':this['_defaultCodePattern']=null;continue;case'2':this[_0x50e132(0x178)]=null;continue;case'3':this[_0x50e132(0x1af)]=null;continue;case'4':this['_reserveDefaultTTL']=null;continue;case'5':this[_0x50e132(0x184)]=null;continue;case'6':this['_counterTTLMap']=null;continue;case'7':this[_0x50e132(0x179)]=null;continue;case'8':this['_enabled']=null;continue;case'9':this[_0x50e132(0x191)]=![];continue;case'10':this[_0x50e132(0x1d8)]=null;continue;case'11':this[_0x50e132(0x115)]=null;continue;}break;}}[a0_0x44aa3e(0x147)](){const _0x1deef3=a0_0x44aa3e,_0x1d61f7={'UCHyB':_0x1deef3(0x16e),'JiISW':'idgen_config_init','iYfHj':_0x1deef3(0x1d2),'cjsPQ':'XXXX-XXXX-XXXX-XXXX','RAlYK':function(_0x4dbb0c,_0x29f5a5,_0x1f616d){return _0x4dbb0c(_0x29f5a5,_0x1f616d);},'AFzKL':function(_0x550856,_0x4c8ab0){return _0x550856===_0x4c8ab0;},'vzSHz':_0x1deef3(0x196),'rckbM':function(_0x5e69c7,_0xa7dec){return _0x5e69c7===_0xa7dec;}},_0x371ed8=_0x1d61f7['UCHyB'][_0x1deef3(0x1dc)]('|');let _0x68d12f=0x0;while(!![]){switch(_0x371ed8[_0x68d12f++]){case'0':this[_0x1deef3(0x184)]=parseInt(process['env'][_0x1deef3(0x1f8)],0xa)||0xa;continue;case'1':logger['info']({'event':_0x1d61f7[_0x1deef3(0x106)],'enabled':this['_enabled'],'idemTTL':this[_0x1deef3(0x115)],'allowReset':this[_0x1deef3(0x178)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this['_reserveDefaultTTL'],'reserveMaxTTL':this['_reserveMaxTTL']},_0x1deef3(0x171)+this['_enabled']);continue;case'2':this[_0x1deef3(0x13d)]=process['env'][_0x1deef3(0x133)]||_0x1d61f7['iYfHj'];continue;case'3':this[_0x1deef3(0x179)]=process['env']['IDGEN_DEFAULT_SERIAL_PATTERN']||_0x1d61f7['cjsPQ'];continue;case'4':this[_0x1deef3(0x124)]=parseInt(process[_0x1deef3(0x10f)]['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6;continue;case'5':this['_idemTTL']=_0x1d61f7[_0x1deef3(0x1c0)](parseInt,process['env']['IDGEN_IDEM_TTL'],0xa)||0x258;continue;case'6':this[_0x1deef3(0x1d8)]=_0x1deef3(0x1c7);continue;case'7':this[_0x1deef3(0x191)]=!![];continue;case'8':this[_0x1deef3(0x1af)]=_0x1d61f7['RAlYK'](parseInt,process[_0x1deef3(0x10f)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL;continue;case'9':this['_reserveDefaultTTL']=parseInt(process['env'][_0x1deef3(0x21c)],0xa)||DEFAULT_RESERVE_TTL;continue;case'10':this[_0x1deef3(0x169)]=_0x1d61f7[_0x1deef3(0x173)](process[_0x1deef3(0x10f)][_0x1deef3(0x1a3)],_0x1d61f7['vzSHz']);continue;case'11':this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x1deef3(0x10f)][_0x1deef3(0x1b8)],0xa)||0x2a300};continue;case'12':this['_allowReset']=_0x1d61f7[_0x1deef3(0x1fb)](process['env']['IDGEN_ALLOW_RESET'],_0x1d61f7['vzSHz']);continue;}break;}}[a0_0x44aa3e(0x20c)](){const _0x4b509c=a0_0x44aa3e;if(!this['_initialized'])this[_0x4b509c(0x147)]();}get[a0_0x44aa3e(0x15d)](){const _0x4f71c2=a0_0x44aa3e;return this[_0x4f71c2(0x20c)](),this[_0x4f71c2(0x169)];}get[a0_0x44aa3e(0x1f6)](){const _0x281b7b=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x281b7b(0x1d8)];}get[a0_0x44aa3e(0x21b)](){const _0x174530=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x174530(0x115)];}get[a0_0x44aa3e(0x11c)](){return this['_ensureInitialized'](),this['_allowReset'];}get[a0_0x44aa3e(0x225)](){const _0x204b8e=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x204b8e(0x184)];}get[a0_0x44aa3e(0x123)](){const _0x5c509b=a0_0x44aa3e;return this[_0x5c509b(0x20c)](),this[_0x5c509b(0x124)];}get[a0_0x44aa3e(0x14b)](){const _0x1993fa=a0_0x44aa3e;return this['_ensureInitialized'](),this[_0x1993fa(0x179)];}get[a0_0x44aa3e(0x1c8)](){const _0x2caf60=a0_0x44aa3e;return this[_0x2caf60(0x20c)](),this['_defaultCodePattern'];}get['reserveDefaultTTL'](){const _0x118cbd=a0_0x44aa3e;return this[_0x118cbd(0x20c)](),this[_0x118cbd(0x22a)];}get['reserveMaxTTL'](){const _0xf49563=a0_0x44aa3e;return this[_0xf49563(0x20c)](),this[_0xf49563(0x1af)];}[a0_0x44aa3e(0x199)](){return this['enabled'];}['_validateResource'](_0x4bb62d){const _0x51eec0=a0_0x44aa3e,_0x2b887b={'JqGuv':'string'};if(typeof _0x4bb62d!==_0x2b887b['JqGuv']||!RESOURCE_REGEX[_0x51eec0(0x18f)](_0x4bb62d))throw new IdGeneratorError(_0x51eec0(0x1d7),'Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x51eec0(0x1e6)](_0x4bb62d)+')');}[a0_0x44aa3e(0x148)](_0x3993fb){const _0x3f0591=a0_0x44aa3e,_0x3daf0f={'HZOjK':_0x3f0591(0x15b),'jeFGv':function(_0x385ce1,_0x90d47e){return _0x385ce1>_0x90d47e;},'HwZbW':_0x3f0591(0x214),'YmMFg':function(_0x2e0e2d,_0x5a9193){return _0x2e0e2d==_0x5a9193;},'hUSgO':_0x3f0591(0x1cd),'ykxkj':function(_0x4dfab3,_0x5a71c3){return _0x4dfab3>_0x5a71c3;},'pSvxY':'IDGEN_INVALID_SEPARATOR','MEjOB':_0x3f0591(0x220),'LmEUA':'IDGEN_INVALID_RESOURCE','qAFEo':function(_0x4f68a1,_0x5c1fe2){return _0x4f68a1===_0x5c1fe2;}},{resource:_0x3ca082,format:_0x5b5159,prefix:_0x336ce0,separator:_0x5d0cfd,numDigits:_0x2e83dc,reuseDelete:_0x38a716}=_0x3993fb;this[_0x3f0591(0x1d6)](_0x3ca082);const _0x4dabbc=typeof _0x5b5159==='string'?_0x5b5159[_0x3f0591(0x1da)]():'';if(!ALLOWED_FORMATS[_0x3f0591(0x176)](_0x4dabbc))throw new IdGeneratorError(_0x3daf0f['HZOjK'],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS]['join'](',\x20')+'\x20(got:\x20'+_0x5b5159+')');if(!Number[_0x3f0591(0x113)](_0x2e83dc)||_0x2e83dc<MIN_NUM_DIGITS||_0x3daf0f[_0x3f0591(0x141)](_0x2e83dc,MAX_NUM_DIGITS))throw new IdGeneratorError(_0x3daf0f['HwZbW'],_0x3f0591(0x121)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x3f0591(0x192)+_0x2e83dc+')');const _0x5b68fd=_0x3daf0f[_0x3f0591(0x1be)](_0x336ce0,null)?'':_0x336ce0;if(typeof _0x5b68fd!==_0x3f0591(0x10e)||!PREFIX_REGEX['test'](_0x5b68fd))throw new IdGeneratorError(_0x3daf0f['hUSgO'],_0x3f0591(0x1d3)+PREFIX_REGEX+_0x3f0591(0x192)+JSON['stringify'](_0x336ce0)+')');const _0x3062ff=_0x3daf0f['YmMFg'](_0x5d0cfd,null)?'':_0x5d0cfd;if(typeof _0x3062ff!==_0x3f0591(0x10e)||_0x3daf0f[_0x3f0591(0x118)](_0x3062ff[_0x3f0591(0x11b)],0x3)||SEPARATOR_FORBIDDEN[_0x3f0591(0x18f)](_0x3062ff))throw new IdGeneratorError(_0x3daf0f[_0x3f0591(0x1e5)],'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x3f0591(0x1e6)](_0x5d0cfd)+')');if(_0x38a716!=null&&typeof _0x38a716!==_0x3daf0f['MEjOB'])throw new IdGeneratorError(_0x3daf0f[_0x3f0591(0x203)],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x38a716+')');return{'resource':_0x3ca082,'format':_0x4dabbc,'prefix':_0x5b68fd,'separator':_0x3062ff,'numDigits':_0x2e83dc,'reuseDelete':_0x3daf0f['qAFEo'](_0x38a716,!![])};}['_validatePattern'](_0x4bdd78){const _0x5b0c60=a0_0x44aa3e,_0x106771={'xZlkj':function(_0x579b39,_0x134b7b){return _0x579b39!==_0x134b7b;},'yhXgk':_0x5b0c60(0x10e),'VhsRR':function(_0x18b8f0,_0x52f7e4){return _0x18b8f0>_0x52f7e4;},'DtIxb':_0x5b0c60(0x1f0)};if(_0x106771[_0x5b0c60(0x111)](typeof _0x4bdd78,_0x106771['yhXgk'])||_0x4bdd78['length']===0x0||_0x106771[_0x5b0c60(0x116)](_0x4bdd78['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x5b0c60(0x1f0),'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x4bdd78&&_0x4bdd78[_0x5b0c60(0x11b)])+')');let _0x3cf790=![];for(const _0x5b6ede of _0x4bdd78){if(PLACEHOLDER_MAP[_0x5b6ede]){_0x3cf790=!![];break;}}if(!_0x3cf790)throw new IdGeneratorError(_0x106771['DtIxb'],_0x5b0c60(0x16d));}[a0_0x44aa3e(0x1d4)](_0x43b1e1){const _0xf0a4f3=a0_0x44aa3e,_0x1c1c24={'VLCdJ':_0xf0a4f3(0x193)};if(_0x43b1e1==null)return undefined;if(!Number[_0xf0a4f3(0x113)](_0x43b1e1)||_0x43b1e1<0x1||_0x43b1e1>MAX_TTL)throw new IdGeneratorError(_0x1c1c24['VLCdJ'],'Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x43b1e1+')');return _0x43b1e1;}['_validateMaxRetry'](_0xc913ce){const _0x367c90=a0_0x44aa3e,_0x51d479={'tmvAG':function(_0x54561a,_0x24d525){return _0x54561a==_0x24d525;}};if(_0x51d479[_0x367c90(0x11a)](_0xc913ce,null))return this[_0x367c90(0x225)];if(!Number[_0x367c90(0x113)](_0xc913ce)||_0xc913ce<0x1||_0xc913ce>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0xc913ce+')');return _0xc913ce;}['_validateIdempotencyKey'](_0x278b09){const _0x5195d2=a0_0x44aa3e,_0x15a05d={'COuXy':function(_0x4678e2,_0x384f27){return _0x4678e2==_0x384f27;},'WmiOa':function(_0x30d07b,_0x564ba4){return _0x30d07b!==_0x564ba4;},'TIOur':function(_0x5c1448,_0x4ca831){return _0x5c1448===_0x4ca831;},'OhzuA':function(_0xf7eacb,_0x1b5117){return _0xf7eacb>_0x1b5117;}};if(_0x15a05d[_0x5195d2(0x166)](_0x278b09,null))return undefined;if(_0x15a05d['WmiOa'](typeof _0x278b09,'string')||_0x15a05d['TIOur'](_0x278b09['length'],0x0)||_0x15a05d[_0x5195d2(0x20a)](_0x278b09[_0x5195d2(0x11b)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x5195d2(0x1d7),'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x278b09;}[a0_0x44aa3e(0x1e4)](_0x47dc4f){const _0x183966=a0_0x44aa3e;if(_0x47dc4f==null)return this['reserveDefaultTTL'];if(!Number['isInteger'](_0x47dc4f)||_0x47dc4f<MIN_RESERVE_TTL||_0x47dc4f>this[_0x183966(0x1ea)])throw new IdGeneratorError('IDGEN_INVALID_RESERVE_TTL','Invalid\x20reservation\x20ttl:\x20must\x20be\x20integer\x20'+MIN_RESERVE_TTL+'-'+this[_0x183966(0x1ea)]+_0x183966(0x18b)+_0x47dc4f+')');return _0x47dc4f;}[a0_0x44aa3e(0x17c)](_0x1abc0a){const _0x2bde49=a0_0x44aa3e,_0x3dfaac={'qsKBF':function(_0x4d3601,_0x1b82b1){return _0x4d3601!==_0x1b82b1;},'ffNpD':_0x2bde49(0x10e),'NQSyY':_0x2bde49(0x19d)};if(_0x3dfaac['qsKBF'](typeof _0x1abc0a,_0x3dfaac[_0x2bde49(0x1b1)])||!RESERVATION_TOKEN_REGEX['test'](_0x1abc0a))throw new IdGeneratorError(_0x3dfaac[_0x2bde49(0x1c2)],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x2bde49(0x1e6)](_0x1abc0a)+')');return _0x1abc0a;}[a0_0x44aa3e(0x213)](_0x324494){const _0x3e6ec0=a0_0x44aa3e,_0x1b812d={'eSPVj':function(_0x328e84,_0x3dc2dd){return _0x328e84(_0x3dc2dd);}};return _0x1b812d[_0x3e6ec0(0x172)](String,_0x324494)[_0x3e6ec0(0x20d)](0x2,'0');}['_buildFormatKey'](_0x436ebc,_0x22aa0f,_0x4782fd=new Date()){const _0x37f716=a0_0x44aa3e,_0x57c8e6={'Yeicr':_0x37f716(0x1bf),'LQuUA':_0x37f716(0x12b),'LGwwr':_0x37f716(0x224)},_0x19e73b=_0x4782fd[_0x37f716(0x14c)](),_0x179418=this['_pad2'](_0x4782fd['getMonth']()+0x1),_0xe1b8b=this[_0x37f716(0x213)](_0x4782fd['getDate']()),_0x5c9dfb=_0x22aa0f||'_';let _0x3037d2,_0x262874='';switch(_0x436ebc){case _0x37f716(0x1a0):_0x3037d2=_0x5c9dfb+_0x37f716(0x16c);break;case _0x57c8e6[_0x37f716(0x165)]:_0x262874=''+_0x19e73b,_0x3037d2=_0x5c9dfb+'_yyyy_'+_0x262874;break;case _0x57c8e6[_0x37f716(0x144)]:_0x262874=''+_0x19e73b+_0x179418,_0x3037d2=_0x5c9dfb+'_yyyymm_'+_0x262874;break;case _0x57c8e6['LGwwr']:_0x262874=''+_0x19e73b+_0x179418+_0xe1b8b,_0x3037d2=_0x5c9dfb+'_yyyymmdd_'+_0x262874;break;default:throw new IdGeneratorError(_0x37f716(0x15b),'Unknown\x20format:\x20'+_0x436ebc);}return{'formatKey':_0x3037d2,'datePrefix':_0x262874};}['_buildSeqKey'](_0x3fbe90,_0x44e271){const _0x452ca2=a0_0x44aa3e;return this[_0x452ca2(0x1f6)]+_0x452ca2(0x189)+_0x3fbe90+':'+_0x44e271;}['_buildReuseKey'](_0x34bfc7,_0x55122f){const _0x931c71=a0_0x44aa3e;return this[_0x931c71(0x1f6)]+_0x931c71(0x152)+_0x34bfc7+':'+_0x55122f;}['_buildMetaKey'](_0x25349d,_0x1816ea){const _0x3364fd=a0_0x44aa3e;return this['keyPrefix']+_0x3364fd(0x14d)+_0x25349d+':'+_0x1816ea;}['_buildIssuedKey'](_0x2668c0){return this['keyPrefix']+'issued:'+_0x2668c0;}[a0_0x44aa3e(0x105)](_0x29bdfa,_0x37046f){const _0x39d331=a0_0x44aa3e;return this['keyPrefix']+_0x39d331(0x102)+_0x29bdfa+':'+_0x37046f;}['_buildReservationKey'](_0x196c48){const _0x1c7f9f=a0_0x44aa3e;return this[_0x1c7f9f(0x1f6)]+_0x1c7f9f(0x101)+_0x196c48;}[a0_0x44aa3e(0x221)](_0x72680,_0x2c212c){const _0x59b5e5=a0_0x44aa3e;return this[_0x59b5e5(0x1f6)]+_0x59b5e5(0x1e0)+_0x72680+':'+_0x2c212c;}['_buildReservationKeyPrefix'](){const _0x42dc02=a0_0x44aa3e;return this['keyPrefix']+_0x42dc02(0x101);}[a0_0x44aa3e(0x195)](_0x2037db,_0x395c22,_0x16f50f,_0x254b11){const _0x5d8ee0=a0_0x44aa3e,_0x231d4b={'AQpOL':_0x5d8ee0(0x1ab)};if(_0x16f50f)return idempotencyManager['buildDeterministicKey'](_0x231d4b[_0x5d8ee0(0x201)],_0x2037db,_0x395c22+':'+_0x16f50f+':'+_0x254b11);return idempotencyManager['buildDeterministicKey'](_0x231d4b[_0x5d8ee0(0x201)],_0x2037db,_0x395c22+':'+_0x254b11);}['_getCounterTTL'](_0x590109){const _0x848b89=a0_0x44aa3e;return this[_0x848b89(0x1f1)][_0x590109]||0x0;}['_formatNumber']({format:_0x5eb61c,prefix:_0x1e51ec,datePrefix:_0x495be0,separator:_0x3bb061,numDigits:_0x23c2c6,counterInt:_0xd749ae}){const _0x704acd=a0_0x44aa3e,_0x228aae={'TWGwQ':'IDGEN_COUNTER_OVERFLOW','dpBIG':function(_0x33f135,_0x20a2b5){return _0x33f135(_0x20a2b5);}},_0x311b57=Math['pow'](0xa,_0x23c2c6)-0x1;if(_0xd749ae>_0x311b57)throw new IdGeneratorError(_0x228aae['TWGwQ'],_0x704acd(0x162)+_0xd749ae+'\x20exceeds\x20'+_0x23c2c6+_0x704acd(0x150)+_0x311b57+').\x20Increase\x20numDigits.',{'counterInt':_0xd749ae,'numDigits':_0x23c2c6,'max':_0x311b57});const _0x474694=_0x228aae[_0x704acd(0x1fa)](String,_0xd749ae)[_0x704acd(0x20d)](_0x23c2c6,'0');if(_0x5eb61c===_0x704acd(0x1a0))return _0x1e51ec?''+_0x1e51ec+_0x3bb061+_0x474694:_0x474694;return _0x1e51ec?''+_0x1e51ec+_0x3bb061+_0x495be0+_0x3bb061+_0x474694:''+_0x495be0+_0x3bb061+_0x474694;}[a0_0x44aa3e(0x104)]({format:_0x55b69a,prefix:_0x20174e,separator:_0x45c510,numDigits:_0x22c2d0,number:_0x3159dd}){const _0x1831e2=a0_0x44aa3e,_0x34ba62={'ZvvGi':function(_0x3294ef,_0xc7d542){return _0x3294ef!==_0xc7d542;},'msSlU':_0x1831e2(0x175),'VSvXz':function(_0x487018,_0x3fa078){return _0x487018===_0x3fa078;},'Sdhxf':function(_0x1c2893,_0x2ba9b9){return _0x1c2893===_0x2ba9b9;},'MFhkW':_0x1831e2(0x1a0),'VNfxi':function(_0x4c602e,_0x110aba){return _0x4c602e!==_0x110aba;},'ZayRn':_0x1831e2(0x12b),'QmbYU':function(_0x8d5d2c,_0x59a6de){return _0x8d5d2c||_0x59a6de;}};if(_0x34ba62[_0x1831e2(0x13b)](typeof _0x3159dd,'string')||_0x3159dd[_0x1831e2(0x11b)]===0x0)throw new IdGeneratorError(_0x34ba62['msSlU'],_0x1831e2(0x107));const _0x11e434=_0x45c510||'',_0x4acca0=_0x34ba62['VSvXz'](_0x11e434,'')?[_0x3159dd]:_0x3159dd['split'](_0x11e434);let _0x3aebf5='',_0x229a5b;if(_0x34ba62[_0x1831e2(0x1f9)](_0x55b69a,_0x34ba62[_0x1831e2(0x1b4)])){if(_0x20174e){if(_0x34ba62[_0x1831e2(0x13b)](_0x4acca0['length'],0x2)||_0x34ba62['VNfxi'](_0x4acca0[0x0],_0x20174e))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x1831e2(0x208)+_0x11e434+_0x1831e2(0x15e)+_0x3159dd+')');_0x229a5b=_0x4acca0[0x1];}else{if(_0x34ba62['ZvvGi'](_0x4acca0[_0x1831e2(0x11b)],0x1))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x3159dd+')');_0x229a5b=_0x4acca0[0x0];}}else{const _0x396513=_0x20174e?0x3:0x2;if(_0x34ba62['VNfxi'](_0x4acca0[_0x1831e2(0x11b)],_0x396513))throw new IdGeneratorError(_0x34ba62['msSlU'],_0x1831e2(0x160)+_0x3159dd+',\x20expected\x20'+_0x396513+'\x20parts)');let _0x31d6f5=0x0;if(_0x20174e){if(_0x4acca0[_0x31d6f5]!==_0x20174e)throw new IdGeneratorError(_0x34ba62[_0x1831e2(0x161)],'Number\x20prefix\x20mismatch:\x20expected\x20'+_0x20174e+_0x1831e2(0x108)+_0x4acca0[_0x31d6f5]);_0x31d6f5++;}_0x3aebf5=_0x4acca0[_0x31d6f5++];const _0x14116e=_0x55b69a==='yyyy'?/^\d{4}$/:_0x55b69a===_0x34ba62[_0x1831e2(0x164)]?/^\d{6}$/:/^\d{8}$/;if(!_0x14116e['test'](_0x3aebf5))throw new IdGeneratorError(_0x34ba62[_0x1831e2(0x161)],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x55b69a+':\x20'+_0x3aebf5);_0x229a5b=_0x4acca0[_0x31d6f5];}if(!new RegExp('^\x5cd{'+_0x22c2d0+'}$')['test'](_0x229a5b))throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x1831e2(0x128)+_0x22c2d0+'\x20digits\x20(got:\x20'+_0x229a5b+')');const _0xc041a6=parseInt(_0x229a5b,0xa),_0x4d8a3e=_0x34ba62[_0x1831e2(0x19b)](_0x20174e,'_');let _0x4859f9;return _0x55b69a===_0x34ba62['MFhkW']?_0x4859f9=_0x4d8a3e+'_text':_0x4859f9=_0x4d8a3e+'_'+_0x55b69a+'_'+_0x3aebf5,{'formatKey':_0x4859f9,'counterInt':_0xc041a6,'datePrefix':_0x3aebf5};}['_generateFromPattern'](_0xbe4dab){const _0x35cdda=a0_0x44aa3e;let _0x3c8569='';for(const _0x1289d7 of _0xbe4dab){const _0x547f73=PLACEHOLDER_MAP[_0x1289d7];if(_0x547f73){const _0x1a1a47=crypto['randomInt'](0x0,_0x547f73[_0x35cdda(0x11b)]);_0x3c8569+=_0x547f73[_0x1a1a47];}else _0x3c8569+=_0x1289d7;}return _0x3c8569;}async['_retrieveIdemCache'](_0x5bb002){const _0xa2da22=a0_0x44aa3e,_0x8c1be5={'uNMNW':_0xa2da22(0x206),'EiPtX':'Idempotency\x20retrieve\x20error'};if(!_0x5bb002)return null;try{const _0x10cda8=redisClient[_0xa2da22(0x127)](),_0x58c997=await _0x10cda8['get'](_0x5bb002);if(_0x58c997)return logger['info']({'event':_0x8c1be5['uNMNW'],'key':_0x5bb002},_0xa2da22(0x1de)),JSON['parse'](_0x58c997);return null;}catch(_0x2c4b6a){return logger[_0xa2da22(0x20f)]({'event':'idgen_idem_retrieve_error','error':_0x2c4b6a['message']},_0x8c1be5[_0xa2da22(0x10a)]),null;}}async[a0_0x44aa3e(0x21e)](_0x590d17,_0x29f635){const _0x1cb8cd=a0_0x44aa3e,_0x56ce91={'YufdQ':_0x1cb8cd(0x1a6),'SQaTS':_0x1cb8cd(0x1c1)};if(!_0x590d17)return;try{const _0x33b935=redisClient['getClient']();await _0x33b935[_0x1cb8cd(0x16a)](_0x590d17,this['idemTTL'],JSON['stringify'](_0x29f635));}catch(_0x26a72a){logger[_0x1cb8cd(0x20f)]({'event':_0x56ce91[_0x1cb8cd(0x112)],'error':_0x26a72a[_0x1cb8cd(0x168)]},_0x56ce91['SQaTS']);}}async[a0_0x44aa3e(0x12f)](_0x5bccc9,_0x1e9989){const _0xdf12a6=a0_0x44aa3e,_0x901c1d={'eLEMf':function(_0x108677,_0x48f999){return _0x108677===_0x48f999;}};if(!_0x5bccc9)return{'stored':!![],'winnerResult':null};try{const _0x411557=redisClient['getClient'](),_0x5defa8=JSON['stringify'](_0x1e9989),_0x3f4495=await _0x411557['set'](_0x5bccc9,_0x5defa8,'EX',this['idemTTL'],'NX');if(_0x901c1d[_0xdf12a6(0x1f2)](_0x3f4495,'OK'))return{'stored':!![],'winnerResult':null};const _0x2043eb=await _0x411557[_0xdf12a6(0x204)](_0x5bccc9);if(_0x2043eb)return{'stored':![],'winnerResult':JSON[_0xdf12a6(0x14f)](_0x2043eb)};return logger['warn']({'event':_0xdf12a6(0x12d),'key':_0x5bccc9},_0xdf12a6(0x16f)),{'stored':!![],'winnerResult':null};}catch(_0x1489e9){return logger[_0xdf12a6(0x20f)]({'event':'idgen_idem_storenx_error','error':_0x1489e9[_0xdf12a6(0x168)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async[a0_0x44aa3e(0x130)](_0x40a95b,_0xadaf6f,_0xce8f74){const _0x41d7df=a0_0x44aa3e,_0x39a88c={'UCyvm':_0x41d7df(0x198),'TiNyQ':'Random\x20reservation\x20undo\x20error\x20(orphan\x20slot\x20may\x20remain)'};try{const _0x297020=redisClient[_0x41d7df(0x127)]();if(_0xce8f74){const _0x1e9b84=this[_0x41d7df(0x105)](_0x40a95b,_0xadaf6f);await _0x297020[_0x41d7df(0x131)](_0x1e9b84);}else{const _0xfa345d=this[_0x41d7df(0x143)](_0x40a95b);await _0x297020[_0x41d7df(0x1cb)](_0xfa345d,_0xadaf6f);}}catch(_0x2f1899){logger['warn']({'event':_0x39a88c[_0x41d7df(0x202)],'error':_0x2f1899['message']},_0x39a88c[_0x41d7df(0x1fe)]);}}async['_updateMeta'](_0x19bf5e,_0x508b35,_0x6384f0,_0x45bcf9=0x0){const _0x2035e0=a0_0x44aa3e;try{const _0x16fcd0=redisClient[_0x2035e0(0x127)](),_0x342f6d=this['_buildMetaKey'](_0x19bf5e,_0x508b35),_0x192d14=[];for(const [_0x300b32,_0x2da3d1]of Object[_0x2035e0(0x22c)](_0x6384f0)){_0x192d14[_0x2035e0(0x154)](_0x300b32,String(_0x2da3d1));}if(_0x192d14['length']>0x0){await _0x16fcd0[_0x2035e0(0x21f)](_0x342f6d,..._0x192d14);if(_0x45bcf9>0x0)await _0x16fcd0['expire'](_0x342f6d,_0x45bcf9);}}catch(_0x100eec){logger[_0x2035e0(0x20f)]({'event':_0x2035e0(0x186),'error':_0x100eec[_0x2035e0(0x168)]},'Meta\x20update\x20error');}}async['number'](_0x13d4e7){const _0x12bc26=a0_0x44aa3e,_0x3b5920={'rbnzY':_0x12bc26(0x226),'hnZnU':function(_0x3fabac,_0x14813a){return _0x3fabac(_0x14813a);},'LCPkU':function(_0x4fae3c,_0x501650){return _0x4fae3c(_0x501650);},'jbkUH':'idgen_number_idem_loser'};if(!this['enabled'])throw new IdGeneratorError(_0x3b5920[_0x12bc26(0x205)],_0x12bc26(0x211));const _0x338d1e=this['_validateNumberParams'](_0x13d4e7),_0x2dabb4=this[_0x12bc26(0x21a)](_0x13d4e7[_0x12bc26(0x13f)]),{resource:_0x1af60a,format:_0x13631b,prefix:_0x5e0a79,separator:_0x2ff11d,numDigits:_0x1f3125,reuseDelete:_0x44056b}=_0x338d1e,{formatKey:_0x53326c,datePrefix:_0xe8ab05}=this[_0x12bc26(0x145)](_0x13631b,_0x5e0a79),_0x284ba0=this['_buildSeqKey'](_0x1af60a,_0x53326c),_0x49b079=this[_0x12bc26(0x1b0)](_0x1af60a,_0x53326c),_0x12ed31=this[_0x12bc26(0x134)](_0x13631b);let _0x4c7a7c=null;if(_0x2dabb4){_0x4c7a7c=this[_0x12bc26(0x195)](_0x12bc26(0x1c3),_0x1af60a,_0x53326c,_0x2dabb4);const _0x477454=await this['_retrieveIdemCache'](_0x4c7a7c);if(_0x477454)return _0x477454;}const _0x3eb8d1=redisClient[_0x12bc26(0x127)](),_0x38af6f=await _0x3eb8d1['eval'](LUA_GENERATE_NUMBER,0x2,_0x284ba0,_0x49b079,_0x44056b?'1':'0',_0x3b5920[_0x12bc26(0x15f)](String,_0x12ed31)),_0x1c7332=_0x38af6f[0x0],_0x4d262b=_0x38af6f[0x1]===0x1,_0x497669=this[_0x12bc26(0x126)]({'format':_0x13631b,'prefix':_0x5e0a79,'datePrefix':_0xe8ab05,'separator':_0x2ff11d,'numDigits':_0x1f3125,'counterInt':_0x1c7332}),_0x26bf35={'value':_0x497669,'counter':_0x1c7332,'resource':_0x1af60a,'formatKey':_0x53326c,'isReused':_0x4d262b,'generatedAt':new Date()[_0x12bc26(0x1e3)]()},_0x4b5fbe=await this[_0x12bc26(0x12f)](_0x4c7a7c,_0x26bf35);if(!_0x4b5fbe[_0x12bc26(0x1ae)]){try{await _0x3eb8d1[_0x12bc26(0x181)](LUA_RELEASE_NUMBER,0x1,_0x49b079,String(_0x1c7332),_0x3b5920['LCPkU'](String,_0x12ed31));}catch(_0x5eb3d3){logger[_0x12bc26(0x20f)]({'event':_0x12bc26(0x1f7),'error':_0x5eb3d3[_0x12bc26(0x168)],'resource':_0x1af60a,'formatKey':_0x53326c,'counterInt':_0x1c7332},_0x12bc26(0x170));}return logger[_0x12bc26(0x1c4)]({'event':_0x3b5920['jbkUH'],'resource':_0x1af60a,'formatKey':_0x53326c,'counter':_0x1c7332},_0x12bc26(0x129)),_0x4b5fbe[_0x12bc26(0x1fd)];}return this['_updateMeta'](_0x1af60a,_0x53326c,{'lastValue':_0x497669,'lastCounter':_0x1c7332,'lastIsReused':_0x4d262b,'lastGeneratedAt':_0x26bf35['generatedAt']},_0x12ed31),logger['info']({'event':'idgen_number_generated','resource':_0x1af60a,'formatKey':_0x53326c,'counter':_0x1c7332,'isReused':_0x4d262b},_0x12bc26(0x16b)+_0x497669),_0x26bf35;}async[a0_0x44aa3e(0x132)](_0x4ebf4e){const _0x4c0c93=a0_0x44aa3e,_0x289817={'LdtuI':function(_0x8e1f09,_0x1f3410){return _0x8e1f09!==_0x1f3410;},'olzLD':'string','GHBYK':_0x4c0c93(0x175),'axdgK':function(_0x3913b0,_0x492da5){return _0x3913b0(_0x492da5);},'ExNBq':function(_0x10a6fc,_0x512c43){return _0x10a6fc(_0x512c43);},'CvMIo':_0x4c0c93(0x1e9)};if(!this[_0x4c0c93(0x15d)])throw new IdGeneratorError(_0x4c0c93(0x226),_0x4c0c93(0x114));let _0x4ea310,_0x4cfc49,_0x4e7cb6,_0x34f592;const _0xa337e=this[_0x4c0c93(0x21a)](_0x4ebf4e['idempotencyKey']);if(_0x4ebf4e[_0x4c0c93(0x17b)]!==undefined&&_0x289817[_0x4c0c93(0x12e)](_0x4ebf4e[_0x4c0c93(0x17b)],null)){this['_validateResource'](_0x4ebf4e['resource']),_0x4ea310=_0x4ebf4e['resource'];if(_0x289817[_0x4c0c93(0x12e)](typeof _0x4ebf4e['formatKey'],_0x289817['olzLD'])||_0x4ebf4e[_0x4c0c93(0x19a)][_0x4c0c93(0x11b)]===0x0)throw new IdGeneratorError(_0x289817['GHBYK'],_0x4c0c93(0x120));_0x4cfc49=_0x4ebf4e['formatKey'];if(!Number[_0x4c0c93(0x113)](_0x4ebf4e[_0x4c0c93(0x17b)])||_0x4ebf4e[_0x4c0c93(0x17b)]<0x1)throw new IdGeneratorError(_0x4c0c93(0x175),_0x4c0c93(0x218)+_0x4ebf4e[_0x4c0c93(0x17b)]+')');_0x4e7cb6=_0x4ebf4e[_0x4c0c93(0x17b)];const _0x44ff6e=_0x4cfc49[_0x4c0c93(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x34f592=_0x44ff6e?_0x44ff6e[0x1]:'text';}else{const _0x5b3cfa=this['_validateNumberParams'](_0x4ebf4e),_0x568463=this['_parseNumber']({'format':_0x5b3cfa['format'],'prefix':_0x5b3cfa['prefix'],'separator':_0x5b3cfa[_0x4c0c93(0x158)],'numDigits':_0x5b3cfa['numDigits'],'number':_0x4ebf4e[_0x4c0c93(0x1c3)]});_0x4ea310=_0x5b3cfa['resource'],_0x4cfc49=_0x568463['formatKey'],_0x4e7cb6=_0x568463[_0x4c0c93(0x17b)],_0x34f592=_0x5b3cfa['format'];}const _0x569907=this[_0x4c0c93(0x1b0)](_0x4ea310,_0x4cfc49),_0x5035f0=this['_getCounterTTL'](_0x34f592);let _0x2f68de=null;if(_0xa337e){_0x2f68de=this['_buildIdemKey']('release',_0x4ea310,_0x4cfc49,_0xa337e);const _0x313a7f=await this['_retrieveIdemCache'](_0x2f68de);if(_0x313a7f)return _0x313a7f;}const _0x447f33=redisClient[_0x4c0c93(0x127)]();await _0x447f33[_0x4c0c93(0x181)](LUA_RELEASE_NUMBER,0x1,_0x569907,_0x289817['axdgK'](String,_0x4e7cb6),_0x289817[_0x4c0c93(0x138)](String,_0x5035f0));const _0x28a139={'released':!![],'resource':_0x4ea310,'formatKey':_0x4cfc49,'counter':_0x4e7cb6,'releasedAt':new Date()['toISOString']()};return await this[_0x4c0c93(0x21e)](_0x2f68de,_0x28a139),this['_updateMeta'](_0x4ea310,_0x4cfc49,{'lastReleasedCounter':_0x4e7cb6,'lastReleasedAt':_0x28a139[_0x4c0c93(0x1e1)]},_0x5035f0),logger['info']({'event':_0x289817[_0x4c0c93(0x109)],'resource':_0x4ea310,'formatKey':_0x4cfc49,'counter':_0x4e7cb6},_0x4c0c93(0x122)+_0x4e7cb6),_0x28a139;}async[a0_0x44aa3e(0x1e2)](_0x36f5a8){const _0x40e4fb=a0_0x44aa3e,_0x4b525f={'npAna':function(_0x3ffa9d,_0x2c0f22){return _0x3ffa9d+_0x2c0f22;},'Yeqrd':function(_0x102da2,_0x40c8cb){return _0x102da2*_0x40c8cb;},'GCnEr':'format','Tytrg':'separator','DsyKN':'numDigits','NgJOe':'datePrefix','SDjdb':_0x40e4fb(0x12a),'NbdvL':_0x40e4fb(0x215),'VkgEb':_0x40e4fb(0x229),'TIqCB':function(_0x211ff6,_0x57a1a8){return _0x211ff6(_0x57a1a8);},'LVlpW':function(_0x2e72f9,_0x86a8e4){return _0x2e72f9(_0x86a8e4);},'EhYwS':function(_0x96acd7,_0x46c29c){return _0x96acd7(_0x46c29c);},'gZhLT':_0x40e4fb(0x188),'YvJVh':_0x40e4fb(0x1d0),'ydknX':_0x40e4fb(0x18c)};if(!this[_0x40e4fb(0x15d)])throw new IdGeneratorError(_0x40e4fb(0x226),'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)');const _0x2accb6=this[_0x40e4fb(0x148)](_0x36f5a8),_0x3a2e58=this[_0x40e4fb(0x1e4)](_0x36f5a8['ttl']),_0x252d43=this[_0x40e4fb(0x21a)](_0x36f5a8[_0x40e4fb(0x13f)]),{resource:_0x3ce822,format:_0x46117d,prefix:_0x28cb6d,separator:_0x3172ce,numDigits:_0x53cf72,reuseDelete:_0x1ac5cb}=_0x2accb6,{formatKey:_0x259932,datePrefix:_0x18a767}=this['_buildFormatKey'](_0x46117d,_0x28cb6d),_0x44aa0d=this['_buildSeqKey'](_0x3ce822,_0x259932),_0x3c19a8=this[_0x40e4fb(0x1b0)](_0x3ce822,_0x259932),_0x23e6d3=this['_buildReservationIndexKey'](_0x3ce822,_0x259932),_0xf68035=this['_getCounterTTL'](_0x46117d);let _0x36d2b3=null;if(_0x252d43){_0x36d2b3=this[_0x40e4fb(0x195)]('reserve',_0x3ce822,_0x259932,_0x252d43);const _0x6ba3b0=await this[_0x40e4fb(0x13a)](_0x36d2b3);if(_0x6ba3b0)return _0x6ba3b0;}const _0x35ba7e=crypto[_0x40e4fb(0x11f)](),_0x49040b=this[_0x40e4fb(0x1cc)](_0x35ba7e),_0x3a09c7=this[_0x40e4fb(0x1ec)](),_0x2a939d=Date[_0x40e4fb(0x1ed)](),_0x48fd11=_0x4b525f['npAna'](_0x2a939d,_0x3a2e58*0x3e8),_0x2af104=_0x4b525f['Yeqrd'](_0x3a2e58,0x3e8),_0x4cac05=new Date(_0x2a939d)['toISOString'](),_0x2c9c41=new Date(_0x48fd11)['toISOString'](),_0x557b6e=['resource',_0x3ce822,_0x40e4fb(0x19a),_0x259932,_0x4b525f[_0x40e4fb(0x11d)],_0x46117d,_0x40e4fb(0x19e),_0x28cb6d,_0x4b525f[_0x40e4fb(0x1e7)],_0x3172ce,_0x4b525f[_0x40e4fb(0x22b)],String(_0x53cf72),_0x4b525f['NgJOe'],_0x18a767||'',_0x4b525f[_0x40e4fb(0x1df)],_0x4cac05,_0x4b525f['NbdvL'],_0x2c9c41,_0x4b525f[_0x40e4fb(0x19f)],_0x4b525f['TIqCB'](String,_0x2af104)];_0x252d43&&_0x557b6e[_0x40e4fb(0x154)]('idemKey',_0x252d43);const _0x1a5117=redisClient[_0x40e4fb(0x127)](),_0x5d0527=await _0x1a5117['eval'](LUA_RESERVE_NUMBER,0x3,_0x44aa0d,_0x3c19a8,_0x23e6d3,_0x1ac5cb?'1':'0',String(_0xf68035),_0x35ba7e,_0x49040b,String(_0x2af104),String(_0x48fd11),_0x4b525f[_0x40e4fb(0x223)](String,_0x2a939d),_0x3a09c7,..._0x557b6e),_0x405818=_0x5d0527[0x0],_0x221edb=_0x5d0527[0x1]===0x1,_0x202120=_0x5d0527[0x2]||0x0;let _0x493553;try{_0x493553=this['_formatNumber']({'format':_0x46117d,'prefix':_0x28cb6d,'datePrefix':_0x18a767,'separator':_0x3172ce,'numDigits':_0x53cf72,'counterInt':_0x405818});}catch(_0x22433f){try{await _0x1a5117['eval'](LUA_CANCEL_RESERVATION,0x3,_0x49040b,_0x23e6d3,_0x3c19a8,_0x35ba7e,_0x4b525f[_0x40e4fb(0x12c)](String,_0xf68035));}catch(_0xb2bf27){logger[_0x40e4fb(0x20f)]({'event':_0x40e4fb(0x119),'error':_0xb2bf27['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0x22433f;}try{await _0x1a5117['hset'](_0x49040b,_0x40e4fb(0x174),_0x493553);}catch(_0x10c25c){logger['warn']({'event':'idgen_reserve_value_persist_error','error':_0x10c25c['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x156));}const _0x387029={'token':_0x35ba7e,'value':_0x493553,'counter':_0x405818,'resource':_0x3ce822,'formatKey':_0x259932,'isReused':_0x221edb,'createdAt':_0x4cac05,'expiresAt':_0x2c9c41,'reapedCount':_0x202120},_0x5a5265=await this['_storeIdemCacheNX'](_0x36d2b3,_0x387029);if(!_0x5a5265['stored']){try{await _0x1a5117[_0x40e4fb(0x181)](LUA_CANCEL_RESERVATION,0x3,_0x49040b,_0x23e6d3,_0x3c19a8,_0x35ba7e,String(_0xf68035));}catch(_0x521b7a){logger[_0x40e4fb(0x20f)]({'event':_0x4b525f['gZhLT'],'error':_0x521b7a['message'],'resource':_0x3ce822,'formatKey':_0x259932,'counterInt':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x125));}return logger[_0x40e4fb(0x1c4)]({'event':_0x4b525f[_0x40e4fb(0x155)],'resource':_0x3ce822,'formatKey':_0x259932,'counter':_0x405818,'token':_0x35ba7e},_0x40e4fb(0x1ee)),_0x5a5265['winnerResult'];}return this['_updateMeta'](_0x3ce822,_0x259932,{'lastReservedCounter':_0x405818,'lastReservedAt':_0x4cac05,'lastReapedCount':_0x202120},_0xf68035),logger['info']({'event':_0x4b525f['ydknX'],'resource':_0x3ce822,'formatKey':_0x259932,'counter':_0x405818,'isReused':_0x221edb,'token':_0x35ba7e,'ttl':_0x3a2e58,'reapedCount':_0x202120},_0x40e4fb(0x194)+_0x493553+_0x40e4fb(0x142)+_0x35ba7e+')'),_0x387029;}async[a0_0x44aa3e(0x1eb)](_0x58300b){const _0x9ff93d=a0_0x44aa3e,_0xfdc44b={'ioDrH':_0x9ff93d(0x114),'xjIms':'idgen','vHXpW':function(_0x364e4f,_0x3dc0bb,_0xb262c0){return _0x364e4f(_0x3dc0bb,_0xb262c0);}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xfdc44b[_0x9ff93d(0x200)]);const _0x397e15=this['_validateReservationToken'](_0x58300b&&_0x58300b['token']),_0x6eafd2=this[_0x9ff93d(0x21a)](_0x58300b&&_0x58300b['idempotencyKey']);let _0x49595d=null;if(_0x6eafd2){_0x49595d=idempotencyManager['buildDeterministicKey'](_0xfdc44b[_0x9ff93d(0x167)],'reserve_confirm',_0x397e15+':'+_0x6eafd2);const _0x4ee8ba=await this[_0x9ff93d(0x13a)](_0x49595d);if(_0x4ee8ba)return _0x4ee8ba;}const _0x419823=await this['_getReservationContext'](_0x397e15),_0x30bb2c=redisClient['getClient'](),_0x2bd8b3=await _0x30bb2c['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x419823[_0x9ff93d(0x1f3)],_0x419823['rsvIdxKey'],_0x397e15);if(!_0x2bd8b3||_0x2bd8b3[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x397e15,{'token':_0x397e15});const _0x1eb264=_0xfdc44b['vHXpW'](parseInt,_0x2bd8b3[0x1],0xa),_0x3fc890=_0x2bd8b3[0x2],_0xf171e0=_0x2bd8b3[0x3],_0x5ec848=new Date()[_0x9ff93d(0x1e3)](),_0x44a3d8={'confirmed':!![],'token':_0x397e15,'value':_0x3fc890,'counter':_0x1eb264,'resource':_0x419823[_0x9ff93d(0x1a2)],'formatKey':_0xf171e0,'confirmedAt':_0x5ec848};await this[_0x9ff93d(0x21e)](_0x49595d,_0x44a3d8);const _0x2c53bb=_0xf171e0[_0x9ff93d(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x5dee70=_0x2c53bb?_0x2c53bb[0x1]:'text',_0x2ac0df=this[_0x9ff93d(0x134)](_0x5dee70);return this['_updateMeta'](_0x419823['resource'],_0xf171e0,{'lastConfirmedCounter':_0x1eb264,'lastConfirmedAt':_0x5ec848},_0x2ac0df),logger[_0x9ff93d(0x1c4)]({'event':_0x9ff93d(0x18d),'resource':_0x419823['resource'],'formatKey':_0xf171e0,'counter':_0x1eb264,'token':_0x397e15},_0x9ff93d(0x1ba)+_0x3fc890+'\x20(token='+_0x397e15+')'),_0x44a3d8;}async['cancelReservation'](_0x3fd4ed){const _0x3ab76a=a0_0x44aa3e,_0x289636={'CqyrF':'IDGEN_DISABLED','uuHlQ':'idgen','ghOXl':_0x3ab76a(0x1dd),'IAJtD':function(_0x416fa5,_0x52fafa){return _0x416fa5(_0x52fafa);}};if(!this[_0x3ab76a(0x15d)])throw new IdGeneratorError(_0x289636['CqyrF'],_0x3ab76a(0x114));const _0x51dc13=this[_0x3ab76a(0x17c)](_0x3fd4ed&&_0x3fd4ed['token']),_0x19cb1b=this[_0x3ab76a(0x21a)](_0x3fd4ed&&_0x3fd4ed['idempotencyKey']);let _0x5f4a3f=null;if(_0x19cb1b){_0x5f4a3f=idempotencyManager['buildDeterministicKey'](_0x289636[_0x3ab76a(0x1a1)],_0x289636[_0x3ab76a(0x185)],_0x51dc13+':'+_0x19cb1b);const _0x303655=await this['_retrieveIdemCache'](_0x5f4a3f);if(_0x303655)return _0x303655;}const _0x447498=await this['_getReservationContext'](_0x51dc13),_0x49f686=this['_buildReuseKey'](_0x447498['resource'],_0x447498['formatKey']),_0x3ca7b8=_0x447498[_0x3ab76a(0x19a)][_0x3ab76a(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x54add5=_0x3ca7b8?_0x3ca7b8[0x1]:_0x3ab76a(0x1a0),_0x3965d6=this['_getCounterTTL'](_0x54add5),_0x25db9b=redisClient['getClient'](),_0x19df0f=await _0x25db9b[_0x3ab76a(0x181)](LUA_CANCEL_RESERVATION,0x3,_0x447498['rsvKey'],_0x447498[_0x3ab76a(0x137)],_0x49f686,_0x51dc13,_0x289636['IAJtD'](String,_0x3965d6));if(!_0x19df0f||_0x19df0f[0x0]!==0x1)throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x51dc13,{'token':_0x51dc13});const _0x43c19f=parseInt(_0x19df0f[0x1],0xa),_0x5e9b15=_0x19df0f[0x2],_0x537ebf=_0x19df0f[0x3],_0x3536a1=new Date()[_0x3ab76a(0x1e3)](),_0x353947={'cancelled':!![],'token':_0x51dc13,'value':_0x5e9b15,'counter':_0x43c19f,'resource':_0x447498[_0x3ab76a(0x1a2)],'formatKey':_0x537ebf,'releasedToReuse':!![],'cancelledAt':_0x3536a1};return await this[_0x3ab76a(0x21e)](_0x5f4a3f,_0x353947),this[_0x3ab76a(0x197)](_0x447498[_0x3ab76a(0x1a2)],_0x537ebf,{'lastCancelledCounter':_0x43c19f,'lastCancelledAt':_0x3536a1},_0x3965d6),logger['info']({'event':'idgen_reservation_cancelled','resource':_0x447498['resource'],'formatKey':_0x537ebf,'counter':_0x43c19f,'token':_0x51dc13},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x5e9b15+'\x20(token='+_0x51dc13+')'),_0x353947;}async['extendReservation'](_0x6767c8){const _0x42aa8e=a0_0x44aa3e,_0x355529={'RQklJ':_0x42aa8e(0x226),'uUKDj':'idgen','wSsIm':function(_0x33ab4e,_0x17c987){return _0x33ab4e+_0x17c987;},'llmUB':function(_0x23a768,_0x256eba){return _0x23a768*_0x256eba;},'gHuUY':function(_0x193831,_0x5dafad){return _0x193831(_0x5dafad);},'kZfXg':function(_0x2e6335,_0x1ffa16){return _0x2e6335!==_0x1ffa16;},'SGqSA':function(_0x3afe32,_0x134325,_0x324dfb){return _0x3afe32(_0x134325,_0x324dfb);}};if(!this['enabled'])throw new IdGeneratorError(_0x355529[_0x42aa8e(0x139)],'ID\x20Generator\x20is\x20disabled');const _0xd44b2a=this[_0x42aa8e(0x17c)](_0x6767c8&&_0x6767c8['token']),_0x51f130=this['_validateReserveTTL'](_0x6767c8&&_0x6767c8['ttl']),_0x51e0e1=this['_validateIdempotencyKey'](_0x6767c8&&_0x6767c8['idempotencyKey']);let _0x2bf523=null;if(_0x51e0e1){_0x2bf523=idempotencyManager[_0x42aa8e(0x17e)](_0x355529[_0x42aa8e(0x151)],'reserve_extend',_0xd44b2a+':'+_0x51e0e1);const _0x5b08b4=await this['_retrieveIdemCache'](_0x2bf523);if(_0x5b08b4)return _0x5b08b4;}const _0x24a2ba=await this['_getReservationContext'](_0xd44b2a),_0x2b8c25=Date[_0x42aa8e(0x1ed)](),_0x1e555c=_0x355529[_0x42aa8e(0x13c)](_0x2b8c25,_0x51f130*0x3e8),_0x1614ea=_0x355529[_0x42aa8e(0x1b2)](_0x51f130,0x3e8),_0x432529=new Date(_0x1e555c)['toISOString'](),_0x3f8f7f=redisClient[_0x42aa8e(0x127)](),_0x2833e2=await _0x3f8f7f[_0x42aa8e(0x181)](LUA_EXTEND_RESERVATION,0x2,_0x24a2ba[_0x42aa8e(0x1f3)],_0x24a2ba['rsvIdxKey'],_0xd44b2a,_0x355529[_0x42aa8e(0x149)](String,_0x1614ea),_0x355529['gHuUY'](String,_0x1e555c),_0x432529);if(!_0x2833e2||_0x355529[_0x42aa8e(0x187)](_0x2833e2[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x42aa8e(0x15a)+_0xd44b2a,{'token':_0xd44b2a});const _0x31b6b6=_0x2833e2[0x1],_0x521211=_0x355529['SGqSA'](parseInt,_0x2833e2[0x2],0xa),_0xe5804c=_0x2833e2[0x3],_0x38d0bc=_0x2833e2[0x4],_0x390a25=new Date(_0x2b8c25)['toISOString'](),_0x245f8f={'extended':!![],'token':_0xd44b2a,'previousExpiresAt':_0x31b6b6,'expiresAt':_0x432529,'ttlMs':_0x1614ea,'resource':_0x24a2ba['resource'],'formatKey':_0x38d0bc,'counter':_0x521211,'value':_0xe5804c,'extendedAt':_0x390a25};await this[_0x42aa8e(0x21e)](_0x2bf523,_0x245f8f);const _0x50c96f=_0x38d0bc[_0x42aa8e(0x217)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1c9071=_0x50c96f?_0x50c96f[0x1]:'text',_0x26c31a=this[_0x42aa8e(0x134)](_0x1c9071);return this['_updateMeta'](_0x24a2ba['resource'],_0x38d0bc,{'lastExtendedCounter':_0x521211,'lastExtendedAt':_0x390a25},_0x26c31a),logger[_0x42aa8e(0x1c4)]({'event':'idgen_reservation_extended','resource':_0x24a2ba[_0x42aa8e(0x1a2)],'formatKey':_0x38d0bc,'counter':_0x521211,'token':_0xd44b2a,'ttl':_0x51f130},'ID\x20Generator\x20reservation\x20extended:\x20'+_0xe5804c+'\x20(token='+_0xd44b2a+_0x42aa8e(0x1a7)+_0x51f130+'s)'),_0x245f8f;}async[a0_0x44aa3e(0x157)](_0x5afca2){const _0x428762=a0_0x44aa3e,_0x37eec7={'DKhpp':function(_0x421f05,_0x32f77d,_0x70a2fb){return _0x421f05(_0x32f77d,_0x70a2fb);},'htbVA':function(_0x501111,_0x8fbfac,_0x3ced5b){return _0x501111(_0x8fbfac,_0x3ced5b);},'TLxVz':function(_0x219490,_0xfd845a){return _0x219490===_0xfd845a;},'GJyfl':function(_0x169085,_0x3e6dd3){return _0x169085>=_0x3e6dd3;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');const _0x4fa13b=this['_validateReservationToken'](_0x5afca2&&_0x5afca2[_0x428762(0x13e)]),_0x2be859=this['_buildReservationKey'](_0x4fa13b),_0x388e38=redisClient[_0x428762(0x127)](),_0x43822f=_0x388e38['pipeline']();_0x43822f['hgetall'](_0x2be859),_0x43822f[_0x428762(0x10c)](_0x2be859);const _0x5c80e3=await _0x43822f['exec'](),_0x4fda8e=_0x5c80e3&&_0x5c80e3[0x0]&&_0x5c80e3[0x0][0x1],_0x354706=_0x5c80e3&&_0x5c80e3[0x1]&&_0x5c80e3[0x1][0x1];if(!_0x4fda8e||Object['keys'](_0x4fda8e)[_0x428762(0x11b)]===0x0)throw new IdGeneratorError(_0x428762(0x1ef),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x4fa13b,{'token':_0x4fa13b});return{'token':_0x4fa13b,'resource':_0x4fda8e['resource']||null,'formatKey':_0x4fda8e[_0x428762(0x19a)]||null,'format':_0x4fda8e[_0x428762(0x11e)]||null,'prefix':_0x4fda8e[_0x428762(0x19e)]||'','separator':_0x4fda8e['separator']||'','numDigits':_0x4fda8e[_0x428762(0x15c)]?_0x37eec7['DKhpp'](parseInt,_0x4fda8e['numDigits'],0xa):null,'datePrefix':_0x4fda8e[_0x428762(0x10b)]||'','counter':_0x4fda8e['counter']?_0x37eec7[_0x428762(0x17f)](parseInt,_0x4fda8e['counter'],0xa):null,'value':_0x4fda8e[_0x428762(0x174)]||null,'isReused':_0x37eec7['TLxVz'](_0x4fda8e[_0x428762(0x20e)],'1')||_0x4fda8e['isReused']===0x1,'createdAt':_0x4fda8e['createdAt']||null,'expiresAt':_0x4fda8e[_0x428762(0x215)]||null,'ttlRemainingMs':typeof _0x354706===_0x428762(0x1c3)&&_0x37eec7['GJyfl'](_0x354706,0x0)?_0x354706:null};}async[a0_0x44aa3e(0x1e8)](_0x302a3d){const _0x4eb970=a0_0x44aa3e,_0x3bb511={'nfDjw':'resource','pneBr':'formatKey','nlXGd':function(_0xa112fc,_0xe27906){return _0xa112fc||_0xe27906;}},_0x3882f3=this['_buildReservationKey'](_0x302a3d),_0xf647ed=redisClient[_0x4eb970(0x127)](),_0x3c70b8=await _0xf647ed['hmget'](_0x3882f3,_0x3bb511['nfDjw'],_0x3bb511[_0x4eb970(0x222)]),_0x258cd2=_0x3c70b8&&_0x3c70b8[0x0],_0x32cc5d=_0x3c70b8&&_0x3c70b8[0x1];if(_0x3bb511[_0x4eb970(0x136)](!_0x258cd2,!_0x32cc5d))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND',_0x4eb970(0x15a)+_0x302a3d,{'token':_0x302a3d});return{'resource':_0x258cd2,'formatKey':_0x32cc5d,'rsvKey':_0x3882f3,'rsvIdxKey':this[_0x4eb970(0x221)](_0x258cd2,_0x32cc5d)};}async['random'](_0x449419){const _0x34593d=a0_0x44aa3e,_0x23778a={'vGZPk':_0x34593d(0x114),'XeZDx':_0x34593d(0x209),'pADLR':function(_0x33e622,_0x3584b6){return _0x33e622===_0x3584b6;},'gBSCZ':function(_0x495248,_0x5e4002){return _0x495248===_0x5e4002;},'RznOS':function(_0x33e875,_0x582cc0){return _0x33e875===_0x582cc0;},'zYNlk':_0x34593d(0x219),'PASCr':function(_0x242d51,_0x25f9d6){return _0x242d51&&_0x25f9d6;},'ZYRKL':function(_0x3a013a,_0x5990e6){return _0x3a013a+_0x5990e6;},'VVaWh':function(_0x586b1a,_0x3bcfa8){return _0x586b1a||_0x3bcfa8;}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x23778a[_0x34593d(0x1a4)]);this['_validateResource'](_0x449419[_0x34593d(0x1a2)]),this['_validatePattern'](_0x449419['pattern']);const _0x5e8969=this['_validateTTL'](_0x449419[_0x34593d(0x1c5)]),_0x12c164=this['_validateMaxRetry'](_0x449419['maxRetry']),_0x6fa2cd=this[_0x34593d(0x21a)](_0x449419['idempotencyKey']),_0x32a454=_0x449419[_0x34593d(0x14e)]===!![],{resource:_0x586e97,pattern:_0x22170c}=_0x449419;let _0x3f6556=null;if(_0x6fa2cd){_0x3f6556=this['_buildIdemKey'](_0x23778a['XeZDx'],_0x586e97,null,_0x6fa2cd);const _0x19fa92=await this[_0x34593d(0x13a)](_0x3f6556);if(_0x19fa92)return _0x19fa92;}const _0x59a1a8=redisClient[_0x34593d(0x127)]();let _0x36ba91=null,_0x3277be=0x0;if(!_0x32a454)_0x36ba91=this['_generateFromPattern'](_0x22170c),_0x3277be=0x1;else{for(let _0x51d0c1=0x0;_0x51d0c1<_0x12c164;_0x51d0c1++){_0x3277be++;const _0x530d20=this['_generateFromPattern'](_0x22170c);if(_0x5e8969){const _0x1fd51a=this[_0x34593d(0x105)](_0x586e97,_0x530d20),_0xefb407=await _0x59a1a8['set'](_0x1fd51a,'1','EX',_0x5e8969,'NX');if(_0x23778a['pADLR'](_0xefb407,'OK')){_0x36ba91=_0x530d20;break;}}else{const _0x41a42e=this['_buildIssuedKey'](_0x586e97),_0x29c756=await _0x59a1a8['sadd'](_0x41a42e,_0x530d20);if(_0x23778a['gBSCZ'](_0x29c756,0x1)){_0x36ba91=_0x530d20;break;}}}if(_0x23778a['RznOS'](_0x36ba91,null))throw new IdGeneratorError(_0x23778a['zYNlk'],_0x34593d(0x18a)+_0x12c164+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x586e97,'pattern':_0x22170c,'maxRetry':_0x12c164});}const _0x416035={'value':_0x36ba91,'resource':_0x586e97,'pattern':_0x22170c,'attemptCount':_0x3277be,'generatedAt':new Date()['toISOString']()};_0x23778a[_0x34593d(0x18e)](_0x5e8969,_0x32a454)&&(_0x416035['expiresAt']=new Date(_0x23778a['ZYRKL'](Date[_0x34593d(0x1ed)](),_0x5e8969*0x3e8))['toISOString']());const _0x4e588b=await this['_storeIdemCacheNX'](_0x3f6556,_0x416035);if(!_0x4e588b[_0x34593d(0x1ae)])return _0x32a454&&await this[_0x34593d(0x130)](_0x586e97,_0x36ba91,_0x5e8969),logger[_0x34593d(0x1c4)]({'event':'idgen_random_idem_loser','resource':_0x586e97,'pattern':_0x22170c,'value':_0x36ba91},'ID\x20Generator\x20random\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x4e588b['winnerResult'];return logger[_0x34593d(0x1c4)]({'event':_0x34593d(0x177),'resource':_0x586e97,'pattern':_0x22170c,'attemptCount':_0x3277be,'ensureUnique':_0x32a454,'ttl':_0x23778a['VVaWh'](_0x5e8969,0x0)},'ID\x20Generator\x20random:\x20'+_0x36ba91),_0x416035;}async[a0_0x44aa3e(0x1db)](_0x1b9fca){const _0x264f6f=a0_0x44aa3e,_0x5653de={'JZbVG':function(_0x101675,_0x53c8bb){return _0x101675==_0x53c8bb;},'lfBYx':function(_0x2a383b,_0x431513){return _0x2a383b>_0x431513;},'iowIE':'IDGEN_INVALID_DIGITS','NwWIZ':function(_0x3d067e,_0x20edc3){return _0x3d067e===_0x20edc3;}},_0x1b7921=_0x5653de['JZbVG'](_0x1b9fca[_0x264f6f(0x153)],null)?this[_0x264f6f(0x123)]:_0x1b9fca[_0x264f6f(0x153)];if(!Number['isInteger'](_0x1b7921)||_0x1b7921<MIN_PIN_DIGITS||_0x5653de[_0x264f6f(0x1bc)](_0x1b7921,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x5653de[_0x264f6f(0x1c9)],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x1b7921+')');const _0xfe87fd='9'[_0x264f6f(0x163)](_0x1b7921);return this['random']({'resource':_0x1b9fca[_0x264f6f(0x1a2)],'pattern':_0xfe87fd,'ensureUnique':_0x5653de[_0x264f6f(0x140)](_0x1b9fca['ensureUnique'],!![]),'ttl':_0x1b9fca[_0x264f6f(0x1c5)],'maxRetry':_0x1b9fca['maxRetry'],'idempotencyKey':_0x1b9fca['idempotencyKey']});}async['serial'](_0x1de6a7){const _0x408c0c=a0_0x44aa3e,_0x4e7de5=_0x1de6a7[_0x408c0c(0x183)]||this[_0x408c0c(0x14b)];return this['random']({'resource':_0x1de6a7['resource'],'pattern':_0x4e7de5,'ensureUnique':_0x1de6a7[_0x408c0c(0x14e)]!==![],'ttl':_0x1de6a7[_0x408c0c(0x1c5)],'maxRetry':_0x1de6a7['maxRetry'],'idempotencyKey':_0x1de6a7[_0x408c0c(0x13f)]});}async[a0_0x44aa3e(0x1ce)](_0x283611){const _0x1b30f1=a0_0x44aa3e,_0xe5ced5=_0x283611[_0x1b30f1(0x183)]||this[_0x1b30f1(0x1c8)];return this['random']({'resource':_0x283611['resource'],'pattern':_0xe5ced5,'ensureUnique':_0x283611[_0x1b30f1(0x14e)]!==![],'ttl':_0x283611[_0x1b30f1(0x1c5)],'maxRetry':_0x283611['maxRetry'],'idempotencyKey':_0x283611['idempotencyKey']});}async[a0_0x44aa3e(0x159)](_0x3b4611){const _0x354daf=a0_0x44aa3e,_0x21e669={'BJjju':'IDGEN_DISABLED','pkEJR':function(_0xb442b0,_0x1d8127){return _0xb442b0!==_0x1d8127;},'XpUkd':function(_0x48bd7f,_0x4a7cb6){return _0x48bd7f+_0x4a7cb6;}};if(!this[_0x354daf(0x15d)])throw new IdGeneratorError(_0x21e669[_0x354daf(0x1fc)],_0x354daf(0x114));this[_0x354daf(0x1d6)](_0x3b4611[_0x354daf(0x1a2)]);if(_0x21e669['pkEJR'](typeof _0x3b4611['value'],_0x354daf(0x10e))||_0x3b4611['value']['length']===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','value\x20is\x20required');const {resource:_0x303316,value:_0x5b63a5}=_0x3b4611,_0x56d3f7=redisClient[_0x354daf(0x127)](),_0x2a448d=this[_0x354daf(0x105)](_0x303316,_0x5b63a5),_0x18b946=this['_buildIssuedKey'](_0x303316),[_0x335f75,_0xc1af76]=await Promise['all']([_0x56d3f7[_0x354daf(0x131)](_0x2a448d),_0x56d3f7['srem'](_0x18b946,_0x5b63a5)]),_0x379f37=_0x21e669[_0x354daf(0x117)](_0x335f75,_0xc1af76)>0x0;return logger['info']({'event':'idgen_consumed','resource':_0x303316,'value':_0x5b63a5,'consumed':_0x379f37},_0x354daf(0x1a9)+_0x5b63a5),{'consumed':_0x379f37,'resource':_0x303316,'value':_0x5b63a5,'consumedAt':new Date()[_0x354daf(0x1e3)]()};}async['peek'](_0x5b7ad6){const _0x23ba44=a0_0x44aa3e,_0x550a61={'MBOKv':'ID\x20Generator\x20is\x20disabled','waBhf':function(_0x473396,_0x170eac){return _0x473396===_0x170eac;},'zBYIb':'number','BZwkT':function(_0x188d55,_0x2a093f){return _0x188d55||_0x2a093f;}};if(!this['enabled'])throw new IdGeneratorError(_0x23ba44(0x226),_0x550a61[_0x23ba44(0x146)]);this[_0x23ba44(0x1d6)](_0x5b7ad6['resource']);const _0x1feb0f=_0x5b7ad6[_0x23ba44(0x21d)]||_0x23ba44(0x1c3),_0x66c633=redisClient[_0x23ba44(0x127)]();if(_0x550a61[_0x23ba44(0x1b7)](_0x1feb0f,_0x550a61[_0x23ba44(0x190)])){const _0xc68a09=(_0x5b7ad6['format']||'text')[_0x23ba44(0x1da)]();if(!ALLOWED_FORMATS['has'](_0xc68a09))throw new IdGeneratorError(_0x23ba44(0x15b),'Invalid\x20format:\x20'+_0x5b7ad6[_0x23ba44(0x11e)]);const {formatKey:_0x5df384}=this['_buildFormatKey'](_0xc68a09,_0x5b7ad6['prefix']||''),_0x11f222=this['_buildSeqKey'](_0x5b7ad6['resource'],_0x5df384),_0x5c1cf8=this[_0x23ba44(0x1b0)](_0x5b7ad6[_0x23ba44(0x1a2)],_0x5df384),[_0x53f448,_0x2c1aa0]=await Promise[_0x23ba44(0x19c)]([_0x66c633[_0x23ba44(0x204)](_0x11f222),_0x66c633['zcard'](_0x5c1cf8)]);return{'resource':_0x5b7ad6['resource'],'mode':'number','formatKey':_0x5df384,'currentCounter':parseInt(_0x53f448,0xa)||0x0,'reusePoolSize':_0x2c1aa0||0x0};}if(_0x1feb0f===_0x23ba44(0x209)){const _0x25f134=this[_0x23ba44(0x143)](_0x5b7ad6[_0x23ba44(0x1a2)]),_0x4dc476=await _0x66c633['scard'](_0x25f134);return{'resource':_0x5b7ad6['resource'],'mode':'random','issuedCount':_0x550a61['BZwkT'](_0x4dc476,0x0)};}throw new IdGeneratorError(_0x23ba44(0x1d9),_0x23ba44(0x1aa)+_0x1feb0f);}async['getInfo'](_0x1171f3){const _0x44743b=a0_0x44aa3e,_0x25f0ff=await this['peek'](_0x1171f3);if(_0x25f0ff[_0x44743b(0x21d)]===_0x44743b(0x1c3)){const _0x2a09bf=redisClient[_0x44743b(0x127)](),_0x5677ce=this['_buildMetaKey'](_0x1171f3['resource'],_0x25f0ff['formatKey']),_0x290bf0=this['_buildReuseKey'](_0x1171f3[_0x44743b(0x1a2)],_0x25f0ff[_0x44743b(0x19a)]),[_0x20dd8b,_0x567976]=await Promise[_0x44743b(0x19c)]([_0x2a09bf[_0x44743b(0x1c6)](_0x5677ce),_0x2a09bf[_0x44743b(0x227)](_0x290bf0,0x0,-0x1)]);return{..._0x25f0ff,'reusePoolValues':_0x567976['map'](_0x14cf99=>parseInt(_0x14cf99,0xa)),'meta':_0x20dd8b&&Object['keys'](_0x20dd8b)[_0x44743b(0x11b)]>0x0?_0x20dd8b:null};}return _0x25f0ff;}async[a0_0x44aa3e(0x14a)](_0x2fe3a0){const _0x1ab616=a0_0x44aa3e,_0x212b8d={'xjLXR':_0x1ab616(0x110),'ZPLsE':'number','BnvMA':'idgen_reset','cYnCa':_0x1ab616(0x1bb),'pQJtm':_0x1ab616(0x17a),'tIPJF':'meta','RYqaG':'random'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');if(!this['allowReset'])throw new IdGeneratorError(_0x212b8d[_0x1ab616(0x135)],'Reset\x20operation\x20not\x20allowed\x20(set\x20IDGEN_ALLOW_RESET=true\x20to\x20enable)');this[_0x1ab616(0x1d6)](_0x2fe3a0['resource']);const _0x3afd3e=_0x2fe3a0[_0x1ab616(0x21d)]||_0x212b8d[_0x1ab616(0x10d)],_0x1d9fc3=redisClient['getClient']();if(_0x3afd3e==='number'){const _0x1ebc24=(_0x2fe3a0['format']||_0x1ab616(0x1a0))['toLowerCase']();if(!ALLOWED_FORMATS[_0x1ab616(0x176)](_0x1ebc24))throw new IdGeneratorError(_0x1ab616(0x15b),'Invalid\x20format:\x20'+_0x2fe3a0[_0x1ab616(0x11e)]);const {formatKey:_0x32b0f1}=this[_0x1ab616(0x145)](_0x1ebc24,_0x2fe3a0[_0x1ab616(0x19e)]||''),_0x31003c=this['_buildSeqKey'](_0x2fe3a0['resource'],_0x32b0f1),_0x22eb6c=this[_0x1ab616(0x1b0)](_0x2fe3a0[_0x1ab616(0x1a2)],_0x32b0f1),_0x185398=this['_buildMetaKey'](_0x2fe3a0[_0x1ab616(0x1a2)],_0x32b0f1);return await _0x1d9fc3[_0x1ab616(0x131)](_0x31003c,_0x22eb6c,_0x185398),logger[_0x1ab616(0x20f)]({'event':_0x212b8d[_0x1ab616(0x1b9)],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d['ZPLsE'],'formatKey':_0x32b0f1},'ID\x20Generator\x20reset:\x20'+_0x2fe3a0[_0x1ab616(0x1a2)]+':'+_0x32b0f1),{'reset':!![],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d[_0x1ab616(0x10d)],'formatKey':_0x32b0f1,'deletedKeys':[_0x212b8d[_0x1ab616(0x20b)],_0x212b8d[_0x1ab616(0x1bd)],_0x212b8d['tIPJF']]};}if(_0x3afd3e==='random'){const _0xfc417c=this['_buildIssuedKey'](_0x2fe3a0['resource']);return await _0x1d9fc3['del'](_0xfc417c),logger[_0x1ab616(0x20f)]({'event':_0x212b8d['BnvMA'],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d[_0x1ab616(0x1a8)]},_0x1ab616(0x1f5)+_0x2fe3a0[_0x1ab616(0x1a2)]),{'reset':!![],'resource':_0x2fe3a0['resource'],'mode':_0x212b8d['RYqaG'],'deletedKeys':['issued']};}throw new IdGeneratorError(_0x1ab616(0x1d9),'Unknown\x20mode:\x20'+_0x3afd3e);}}const instance=new IdGenerator();instance[a0_0x44aa3e(0x1b5)]=IdGeneratorError,module['exports']=instance,module['exports'][a0_0x44aa3e(0x1b5)]=IdGeneratorError;
@@ -1 +1 @@
1
- 'use strict';const a0_0x56d515=a0_0x5084;function a0_0x16bb(){const _0xec5d3=['C3bSAxq','CMy6AwrLBtO','C3rYAw5NAwz5','zxjYB3i','Aw5MBW','x2vUC3vYzuLUAxrPywXPEMvK','C2v0zxG','ndq0odC3m1PuzLPeBG','x3r0Ba','zxHWB3j0CW','lI9YzwrPCY1JBgLLBNq','ogLVuMvRza','BwvZC2fNzq','zw5HyMXLza','DhrS','mZe5nZa0B2jWAufd','yNvPBgrezxrLCM1PBMLZDgLJs2v5','mJy2ode4mffZzMzeCW','otuYnJy0qvLhy1Hp','CgfYC2u','lcbuveW6ia','x2vUywjSzwq','AwrLBxbVDgvUy3LFy29UzMLNx2LUAxq','y3j5ChrV','zgvMyxvSDa','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','mti3mJaWmgPzr3rRCq','AMvNyNO','ntC5nJjQC0Hmwxy','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i6ia','Dhj1zq','CMvX','AwrLBxbVDgvUy3LFC3rVCMvFzxjYB3i','mtm2mJq3nLjpyM1Vqq','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','yNvPBgrlzxK','Cgf0Aa','x2LUAxrPywXPEMvK','swrLBxbVDgvUy3KGy2fJAguGseLu'];a0_0x16bb=function(){return _0xec5d3;};return a0_0x16bb();}(function(_0x5dc272,_0x3aee44){const _0x53b0bb=a0_0x5084,_0x513875=_0x5dc272();while(!![]){try{const _0x2430a6=parseInt(_0x53b0bb(0x8f))/0x1+parseInt(_0x53b0bb(0x85))/0x2+-parseInt(_0x53b0bb(0x8d))/0x3+parseInt(_0x53b0bb(0x6d))/0x4+parseInt(_0x53b0bb(0x84))/0x5+-parseInt(_0x53b0bb(0x82))/0x6+-parseInt(_0x53b0bb(0x7a))/0x7*(parseInt(_0x53b0bb(0x7e))/0x8);if(_0x2430a6===_0x3aee44)break;else _0x513875['push'](_0x513875['shift']());}catch(_0x5bf8df){_0x513875['push'](_0x513875['shift']());}}}(a0_0x16bb,0x4832e));const redisClient=require(a0_0x56d515(0x7d)),{logger}=require('./logger'),crypto=require(a0_0x56d515(0x8a));class IdempotencyManager{constructor(){const _0x32883c=a0_0x56d515;this['_enabled']=null,this[_0x32883c(0x7b)]=null,this['_initialized']=![];}['_initConfig'](){const _0x305350=a0_0x56d515,_0x388b56={'VIaIT':_0x305350(0x6a),'vmdNk':function(_0x2a4aaf,_0x340272,_0x37364f){return _0x2a4aaf(_0x340272,_0x37364f);}};this[_0x305350(0x88)]=process['env']['IDEMPOTENCY_ENABLED']===_0x388b56['VIaIT'],this['_ttl']=_0x388b56['vmdNk'](parseInt,process['env']['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x305350(0x71)]=!![],logger[_0x305350(0x77)]({'event':_0x305350(0x89),'enabled':this['_enabled'],'ttl':this[_0x305350(0x7b)]},_0x305350(0x90)+this['_enabled']+_0x305350(0x87)+this[_0x305350(0x7b)]+'s');}[a0_0x56d515(0x78)](){!this['_initialized']&&this['_initConfig']();}get[a0_0x56d515(0x80)](){const _0x6b2428=a0_0x56d515;return this[_0x6b2428(0x78)](),this[_0x6b2428(0x88)];}get[a0_0x56d515(0x81)](){const _0x322b6d=a0_0x56d515;return this[_0x322b6d(0x78)](),this['_ttl'];}['isEnabled'](){return this['enabled'];}[a0_0x56d515(0x6f)](_0xd7dc3e,_0x24c5bd){const _0x572bf9=a0_0x56d515,_0x5a0a63={'HEBwA':'unknown'},_0x5571d2=_0x24c5bd[_0x572bf9(0x70)][_0x572bf9(0x73)]('/')['filter'](Boolean),_0x47c312=_0x5571d2[0x0]||_0x572bf9(0x8b),_0x3a2a1=_0x5571d2[0x1]||'unknown',_0x39c643=_0x5571d2[0x2]||_0x5a0a63['HEBwA'];return _0x572bf9(0x74)+_0x47c312+':'+_0x3a2a1+':'+_0x39c643+':'+_0xd7dc3e;}async['store'](_0x1abf86,_0x4ecde4){const _0x2b2292=a0_0x56d515,_0x1a5d08={'jegbz':'Idempotency\x20response\x20stored'};if(!this['enabled'])return![];try{const _0x69494=redisClient['getClient']();return await _0x69494[_0x2b2292(0x79)](_0x1abf86,this['ttl'],JSON[_0x2b2292(0x75)](_0x4ecde4)),logger['debug']({'event':'idempotency_store','key':_0x1abf86,'ttl':this[_0x2b2292(0x81)],'statusCode':_0x4ecde4['statusCode']},_0x1a5d08[_0x2b2292(0x8e)]),!![];}catch(_0x17b0ee){return logger[_0x2b2292(0x76)]({'event':_0x2b2292(0x6c),'key':_0x1abf86,'error':_0x17b0ee[_0x2b2292(0x7f)]},_0x2b2292(0x8c)+_0x17b0ee[_0x2b2292(0x7f)]),![];}}async['retrieve'](_0x34cdf8){const _0x385cc9=a0_0x56d515,_0x19f6ea={'iDdQn':'idempotency_hit','LNnuI':'idempotency_miss','SErHw':'Idempotency\x20cache\x20MISS'};if(!this['enabled'])return null;try{const _0x35c31f=redisClient['getClient'](),_0xdf6c4b=await _0x35c31f['get'](_0x34cdf8);if(_0xdf6c4b)return logger[_0x385cc9(0x77)]({'event':_0x19f6ea['iDdQn'],'key':_0x34cdf8},_0x385cc9(0x72)),JSON[_0x385cc9(0x86)](_0xdf6c4b);return logger['debug']({'event':_0x19f6ea['LNnuI'],'key':_0x34cdf8},_0x19f6ea['SErHw']),null;}catch(_0x27d8d9){return logger[_0x385cc9(0x76)]({'event':_0x385cc9(0x6e),'key':_0x34cdf8,'error':_0x27d8d9[_0x385cc9(0x7f)]},_0x385cc9(0x91)+_0x27d8d9[_0x385cc9(0x7f)]),null;}}['generateKey'](_0x234547=a0_0x56d515(0x6b)){return _0x234547+'_'+crypto['randomUUID']();}[a0_0x56d515(0x83)](_0x2e101f,_0x5c6bd3,_0x46ced9){return _0x2e101f+':'+_0x5c6bd3+':'+_0x46ced9;}}function a0_0x5084(_0x3fa4cd,_0x472dde){_0x3fa4cd=_0x3fa4cd-0x6a;const _0x16bb44=a0_0x16bb();let _0x50844b=_0x16bb44[_0x3fa4cd];if(a0_0x5084['HxmNMi']===undefined){var _0x4e18ba=function(_0x4d067b){const _0x114f83='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x866070='',_0x45c95a='';for(let _0xdbf5a4=0x0,_0x1a18a7,_0xe203d0,_0x486b7c=0x0;_0xe203d0=_0x4d067b['charAt'](_0x486b7c++);~_0xe203d0&&(_0x1a18a7=_0xdbf5a4%0x4?_0x1a18a7*0x40+_0xe203d0:_0xe203d0,_0xdbf5a4++%0x4)?_0x866070+=String['fromCharCode'](0xff&_0x1a18a7>>(-0x2*_0xdbf5a4&0x6)):0x0){_0xe203d0=_0x114f83['indexOf'](_0xe203d0);}for(let _0x188e5f=0x0,_0x21bcf8=_0x866070['length'];_0x188e5f<_0x21bcf8;_0x188e5f++){_0x45c95a+='%'+('00'+_0x866070['charCodeAt'](_0x188e5f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x45c95a);};a0_0x5084['acpieD']=_0x4e18ba,a0_0x5084['ZmbRKT']={},a0_0x5084['HxmNMi']=!![];}const _0x2912f7=_0x16bb44[0x0],_0x58f888=_0x3fa4cd+_0x2912f7,_0x11e4a7=a0_0x5084['ZmbRKT'][_0x58f888];return!_0x11e4a7?(_0x50844b=a0_0x5084['acpieD'](_0x50844b),a0_0x5084['ZmbRKT'][_0x58f888]=_0x50844b):_0x50844b=_0x11e4a7,_0x50844b;}module[a0_0x56d515(0x7c)]=new IdempotencyManager();
1
+ 'use strict';function a0_0x23c7(_0x166c4b,_0x4daa6a){_0x166c4b=_0x166c4b-0x1c8;const _0x5a5eef=a0_0x5a5e();let _0x23c79a=_0x5a5eef[_0x166c4b];if(a0_0x23c7['aJpSmx']===undefined){var _0x204947=function(_0x4f2aed){const _0x284a36='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4ea7b2='',_0x104417='';for(let _0x546ffd=0x0,_0x29b7cd,_0x4d8c50,_0x476bed=0x0;_0x4d8c50=_0x4f2aed['charAt'](_0x476bed++);~_0x4d8c50&&(_0x29b7cd=_0x546ffd%0x4?_0x29b7cd*0x40+_0x4d8c50:_0x4d8c50,_0x546ffd++%0x4)?_0x4ea7b2+=String['fromCharCode'](0xff&_0x29b7cd>>(-0x2*_0x546ffd&0x6)):0x0){_0x4d8c50=_0x284a36['indexOf'](_0x4d8c50);}for(let _0x1f94ff=0x0,_0x38ce37=_0x4ea7b2['length'];_0x1f94ff<_0x38ce37;_0x1f94ff++){_0x104417+='%'+('00'+_0x4ea7b2['charCodeAt'](_0x1f94ff)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x104417);};a0_0x23c7['tQcUGG']=_0x204947,a0_0x23c7['ktapPH']={},a0_0x23c7['aJpSmx']=!![];}const _0x4c060d=_0x5a5eef[0x0],_0x4d6860=_0x166c4b+_0x4c060d,_0x21c2dd=a0_0x23c7['ktapPH'][_0x4d6860];return!_0x21c2dd?(_0x23c79a=a0_0x23c7['tQcUGG'](_0x23c79a),a0_0x23c7['ktapPH'][_0x4d6860]=_0x23c79a):_0x23c79a=_0x21c2dd,_0x23c79a;}const a0_0x136e8c=a0_0x23c7;(function(_0xe51fa2,_0x400080){const _0x5cabf3=a0_0x23c7,_0x405e4e=_0xe51fa2();while(!![]){try{const _0x1c4f53=parseInt(_0x5cabf3(0x1e4))/0x1+-parseInt(_0x5cabf3(0x1e7))/0x2*(-parseInt(_0x5cabf3(0x1ee))/0x3)+-parseInt(_0x5cabf3(0x1d3))/0x4+parseInt(_0x5cabf3(0x1d6))/0x5+parseInt(_0x5cabf3(0x1ef))/0x6+-parseInt(_0x5cabf3(0x1de))/0x7+-parseInt(_0x5cabf3(0x1d7))/0x8;if(_0x1c4f53===_0x400080)break;else _0x405e4e['push'](_0x405e4e['shift']());}catch(_0x4d30c9){_0x405e4e['push'](_0x405e4e['shift']());}}}(a0_0x5a5e,0xd3bfc));function a0_0x5a5e(){const _0x73b9eb=['swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','swrLBxbVDgvUy3KGy2fJAguGseLu','DhrS','mZGZnJK4BKr4rfDH','z2v0q2XPzw50','yNvPBgrlzxK','nhzlENrAyG','zw5HyMXLza','lI9SB2DNzxi','zw52','A2foAxi','x2LUAxrdB25MAwC','lcbuveW6ia','mte2nZqYC2D1Dufj','mJC3odCWmLn3AvziEq','CMy6AwrLBtO','zMLSDgvY','zxjYB3i','C3bSAxq','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','AwrLBxbVDgvUy3LFC3rVCMu','su9fwNy','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i6ia','AwrLBxbVDgvUy3LFAgL0','surftvbpvevoq1LFru5bqKXfra','lI9YzwrPCY1JBgLLBNq','Cgf0Aa','rLvTDgu','AxnfBMfIBgvK','x2LUAxrPywXPEMvK','Dw5RBM93BG','mZuXnZK5nKj4tNr6wa','AwrLBxbVDgvUy3LFBwLZCW','wKvRtLq','odi5mtK3mfjrBwrMyW','mtCXnJy5nMnNvunytq','C3rHDhvZq29Kzq','swrLBxbVDgvUy3KGy2fJAguGtuLtuW','zgvIDwC','Aw5MBW','x3r0Ba','BwvZC2fNzq','ndm1mtm4ouDQC1Hnwa','wNv0uxq','y3j5ChrV'];a0_0x5a5e=function(){return _0x73b9eb;};return a0_0x5a5e();}const redisClient=require(a0_0x136e8c(0x1cd)),{logger}=require(a0_0x136e8c(0x1e9)),crypto=require(a0_0x136e8c(0x1e0));class IdempotencyManager{constructor(){const _0x5b1118=a0_0x136e8c;this['_enabled']=null,this[_0x5b1118(0x1dc)]=null,this['_initialized']=![];}[a0_0x136e8c(0x1ec)](){const _0x5beccc=a0_0x136e8c;this['_enabled']=process['env'][_0x5beccc(0x1cc)]==='true',this[_0x5beccc(0x1dc)]=parseInt(process[_0x5beccc(0x1ea)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this['_initialized']=!![],logger[_0x5beccc(0x1db)]({'event':'idempotency_config_init','enabled':this['_enabled'],'ttl':this[_0x5beccc(0x1dc)]},_0x5beccc(0x1f4)+this['_enabled']+_0x5beccc(0x1ed)+this['_ttl']+'s');}['_ensureInitialized'](){const _0xf3d61a=a0_0x136e8c;!this[_0xf3d61a(0x1d1)]&&this['_initConfig']();}get['enabled'](){return this['_ensureInitialized'](),this['_enabled'];}get[a0_0x136e8c(0x1e3)](){return this['_ensureInitialized'](),this['_ttl'];}[a0_0x136e8c(0x1d0)](){const _0x36dc76=a0_0x136e8c;return this[_0x36dc76(0x1e8)];}[a0_0x136e8c(0x1e6)](_0x50d675,_0x3851b3){const _0x22a619=a0_0x136e8c,_0x3725a0={'ZEkNT':'default','IOEZv':_0x22a619(0x1d2)},_0x23ce3a=_0x3851b3[_0x22a619(0x1ce)][_0x22a619(0x1f3)]('/')[_0x22a619(0x1f1)](Boolean),_0x307953=_0x23ce3a[0x0]||_0x3725a0[_0x22a619(0x1d5)],_0x85820b=_0x23ce3a[0x1]||_0x3725a0[_0x22a619(0x1c9)],_0x30cafa=_0x23ce3a[0x2]||_0x22a619(0x1d2);return _0x22a619(0x1f0)+_0x307953+':'+_0x85820b+':'+_0x30cafa+':'+_0x50d675;}async['store'](_0x217d01,_0x2020ae){const _0x97e313=a0_0x136e8c,_0x36d0f9={'FUmte':_0x97e313(0x1c8),'ARVYb':'idempotency_store_error'};if(!this[_0x97e313(0x1e8)])return![];try{const _0x30da35=redisClient[_0x97e313(0x1e5)]();return await _0x30da35['setex'](_0x217d01,this['ttl'],JSON['stringify'](_0x2020ae)),logger[_0x97e313(0x1da)]({'event':_0x36d0f9[_0x97e313(0x1cf)],'key':_0x217d01,'ttl':this['ttl'],'statusCode':_0x2020ae[_0x97e313(0x1d8)]},_0x97e313(0x1e1)),!![];}catch(_0x12929e){return logger[_0x97e313(0x1f2)]({'event':_0x36d0f9['ARVYb'],'key':_0x217d01,'error':_0x12929e['message']},_0x97e313(0x1ca)+_0x12929e[_0x97e313(0x1dd)]),![];}}async['retrieve'](_0x40b92e){const _0xf45ae=a0_0x136e8c,_0x388c0a={'zCcMs':_0xf45ae(0x1e2),'kaNir':_0xf45ae(0x1d4),'wmvte':_0xf45ae(0x1d9),'ZutQt':'idempotency_retrieve_error'};if(!this[_0xf45ae(0x1e8)])return null;try{const _0x4d7f9e=redisClient['getClient'](),_0x490a8d=await _0x4d7f9e['get'](_0x40b92e);if(_0x490a8d)return logger['info']({'event':_0xf45ae(0x1cb),'key':_0x40b92e},_0x388c0a['zCcMs']),JSON['parse'](_0x490a8d);return logger[_0xf45ae(0x1da)]({'event':_0x388c0a[_0xf45ae(0x1eb)],'key':_0x40b92e},_0x388c0a['wmvte']),null;}catch(_0x495975){return logger[_0xf45ae(0x1f2)]({'event':_0x388c0a[_0xf45ae(0x1df)],'key':_0x40b92e,'error':_0x495975[_0xf45ae(0x1dd)]},'Idempotency\x20retrieve\x20error:\x20'+_0x495975['message']),null;}}['generateKey'](_0x3af227='req'){return _0x3af227+'_'+crypto['randomUUID']();}['buildDeterministicKey'](_0x259176,_0x93c8c9,_0x36a1b9){return _0x259176+':'+_0x93c8c9+':'+_0x36a1b9;}}module['exports']=new IdempotencyManager();
@@ -1 +1 @@
1
- const a0_0x5bf2e6=a0_0x5363;(function(_0x42b5a6,_0x2026f9){const _0xb867f9=a0_0x5363,_0x2c9817=_0x42b5a6();while(!![]){try{const _0x464bf9=parseInt(_0xb867f9(0x95))/0x1+-parseInt(_0xb867f9(0xa3))/0x2*(-parseInt(_0xb867f9(0x99))/0x3)+parseInt(_0xb867f9(0x8f))/0x4*(-parseInt(_0xb867f9(0x8e))/0x5)+parseInt(_0xb867f9(0x9c))/0x6*(-parseInt(_0xb867f9(0xb2))/0x7)+-parseInt(_0xb867f9(0xb1))/0x8*(-parseInt(_0xb867f9(0xae))/0x9)+parseInt(_0xb867f9(0x90))/0xa+parseInt(_0xb867f9(0xa9))/0xb*(parseInt(_0xb867f9(0x9a))/0xc);if(_0x464bf9===_0x2026f9)break;else _0x2c9817['push'](_0x2c9817['shift']());}catch(_0x1d21e9){_0x2c9817['push'](_0x2c9817['shift']());}}}(a0_0x5739,0x72e5f));const {logger}=require(a0_0x5bf2e6(0xa6));class ImportValidator{['validateRow'](_0x576cf6,_0x49f186=[],_0x157ed7={}){const _0x289c1d=a0_0x5bf2e6,_0x48d82b={'EyXom':function(_0x4715d1,_0x3af6eb){return _0x4715d1===_0x3af6eb;}},_0x46072e=[];return _0x49f186['forEach'](_0x328416=>{const _0x4feeff=a0_0x5363,_0x394121=_0x576cf6[_0x328416];(_0x394121===null||_0x394121===undefined||_0x394121==='')&&_0x46072e['push']({'field':_0x328416,'type':_0x4feeff(0xad),'message':'Required\x20field\x20is\x20empty'});}),Object[_0x289c1d(0xa0)](_0x157ed7)[_0x289c1d(0x91)](_0x5356e5=>{const _0x8235ba=_0x576cf6[_0x5356e5],_0x206732=_0x157ed7[_0x5356e5];if(_0x8235ba===null||_0x8235ba===undefined||_0x48d82b['EyXom'](_0x8235ba,''))return;const _0x1c6115=this['validateFieldFormat'](_0x5356e5,_0x8235ba,_0x206732);_0x1c6115&&_0x46072e['push'](_0x1c6115);}),_0x46072e;}['validateFieldFormat'](_0x4d33dd,_0x40a8ab,_0x435bb0){const _0x1a72f4=a0_0x5bf2e6,_0x45741f={'wlhWY':_0x1a72f4(0xac),'JEGzC':_0x1a72f4(0x9b)};switch(_0x435bb0){case _0x1a72f4(0x97):return this['validateEmail'](_0x4d33dd,_0x40a8ab);case _0x45741f[_0x1a72f4(0xa4)]:return this[_0x1a72f4(0x9f)](_0x4d33dd,_0x40a8ab);case _0x1a72f4(0x93):return this[_0x1a72f4(0xa1)](_0x4d33dd,_0x40a8ab);case _0x45741f['JEGzC']:return this['validateNumber'](_0x4d33dd,_0x40a8ab);default:return null;}}['validateEmail'](_0x5163c5,_0x20c4bc){const _0x5b4494=a0_0x5bf2e6,_0x1b3da4={'hQDSY':_0x5b4494(0xaa)},_0x3fa254=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x3fa254[_0x5b4494(0xa2)](String(_0x20c4bc)))return{'field':_0x5163c5,'type':'format','message':_0x1b3da4['hQDSY']};return null;}[a0_0x5bf2e6(0x9f)](_0x4333eb,_0x305b2c){const _0x24fde3=a0_0x5bf2e6,_0x4f89fd={'FkPBh':function(_0xfa5cb8,_0x1694a2){return _0xfa5cb8(_0x1694a2);},'xXzgX':_0x24fde3(0xb0)},_0x1e79aa=_0x4f89fd['FkPBh'](String,_0x305b2c)['replace'](/\s+/g,''),_0x89baa3=/^[\d\+\-\(\)]+$/;if(!_0x89baa3[_0x24fde3(0xa2)](_0x1e79aa)||_0x1e79aa['length']<0x8)return{'field':_0x4333eb,'type':'format','message':_0x4f89fd['xXzgX']};return null;}['validateUrl'](_0x486ece,_0x450ae6){const _0x4dd9c2=a0_0x5bf2e6,_0x530e77={'arzQO':_0x4dd9c2(0xa8)};try{return new URL(String(_0x450ae6)),null;}catch(_0xfe3dc7){return{'field':_0x486ece,'type':_0x4dd9c2(0x92),'message':_0x530e77['arzQO']};}}['validateNumber'](_0x1f0785,_0x99ed34){const _0x5ed136=a0_0x5bf2e6,_0x31ab54={'hwOOi':function(_0x493029,_0x39abf3){return _0x493029(_0x39abf3);}};if(_0x31ab54[_0x5ed136(0x9d)](isNaN,_0x99ed34))return{'field':_0x1f0785,'type':_0x5ed136(0x92),'message':_0x5ed136(0x9e)};return null;}['detectDuplicatesInFile'](_0x593753,_0x593525){const _0x49e369=new Map(),_0x587d3d=[];return _0x593753['forEach']((_0x4bfc66,_0x41d8ad)=>{const _0xf073ad=a0_0x5363,_0x386f50=_0x593525[_0xf073ad(0xa5)](_0x46c9ee=>_0x4bfc66[_0x46c9ee])[_0xf073ad(0xb3)]('|');_0x49e369['has'](_0x386f50)?_0x587d3d['push']({'rowIndex':_0x41d8ad,'duplicateOf':_0x49e369[_0xf073ad(0xb4)](_0x386f50),'key':_0x386f50}):_0x49e369[_0xf073ad(0xab)](_0x386f50,_0x41d8ad);}),_0x587d3d;}['batchValidateRows'](_0x21afe6,_0x3ecda5,_0x32dc1e){const _0x8d7d44=a0_0x5bf2e6,_0x13a0c0=[];return _0x21afe6['forEach']((_0x1fd024,_0x380936)=>{const _0x166bc4=a0_0x5363,_0x53c084=this[_0x166bc4(0xaf)](_0x1fd024,_0x3ecda5,_0x32dc1e);_0x53c084['length']>0x0&&_0x13a0c0['push']({'rowIndex':_0x380936,'rowData':_0x1fd024,'errors':_0x53c084});}),logger[_0x8d7d44(0xa7)]({'event':_0x8d7d44(0x96),'totalRows':_0x21afe6['length'],'errorCount':_0x13a0c0['length']},_0x8d7d44(0x98)),_0x13a0c0;}}function a0_0x5363(_0x44719f,_0x13017e){_0x44719f=_0x44719f-0x8e;const _0x5739e4=a0_0x5739();let _0x536388=_0x5739e4[_0x44719f];if(a0_0x5363['VnQsRh']===undefined){var _0x160688=function(_0x4625b4){const _0x10c2a7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x562571='',_0x2b51ac='';for(let _0x43c758=0x0,_0x3facfa,_0x1fa447,_0x3d62bf=0x0;_0x1fa447=_0x4625b4['charAt'](_0x3d62bf++);~_0x1fa447&&(_0x3facfa=_0x43c758%0x4?_0x3facfa*0x40+_0x1fa447:_0x1fa447,_0x43c758++%0x4)?_0x562571+=String['fromCharCode'](0xff&_0x3facfa>>(-0x2*_0x43c758&0x6)):0x0){_0x1fa447=_0x10c2a7['indexOf'](_0x1fa447);}for(let _0xba522f=0x0,_0x172526=_0x562571['length'];_0xba522f<_0x172526;_0xba522f++){_0x2b51ac+='%'+('00'+_0x562571['charCodeAt'](_0xba522f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b51ac);};a0_0x5363['sTSUHL']=_0x160688,a0_0x5363['LCZWsa']={},a0_0x5363['VnQsRh']=!![];}const _0x6331db=_0x5739e4[0x0],_0x220355=_0x44719f+_0x6331db,_0x3fe02c=a0_0x5363['LCZWsa'][_0x220355];return!_0x3fe02c?(_0x536388=a0_0x5363['sTSUHL'](_0x536388),a0_0x5363['LCZWsa'][_0x220355]=_0x536388):_0x536388=_0x3fe02c,_0x536388;}function a0_0x5739(){const _0x34b6a9=['DMfSAwrHDgvqAg9Uzq','A2v5CW','DMfSAwrHDgvvCMW','DgvZDa','mtK0ogfyt2rWBq','D2XOv1K','BwfW','lI9SB2DNzxi','Aw5MBW','sw52ywXPzcbvuKWGzM9YBwf0','mtfuCLPyqKK','sw52ywXPzcbLBwfPBcbMB3jTyxq','C2v0','CgHVBMu','CMvXDwLYzwq','ndC0oda0ovHRwhfUqW','DMfSAwrHDgvsB3C','sw52ywXPzcbWAg9UzsbMB3jTyxq','ogjQCu14BG','n1D6t2PmCG','AM9PBG','z2v0','ntK1D3n6rKHT','mJiXmZj4wLDtDMG','nJK3mZGWsK1MAKLL','zM9YrwfJAa','zM9YBwf0','DxjS','zxHWB3j0CW','ntC5mJf0zhDbu1q','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','zw1HAwW','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','otKZAuDWALHI','ndCYnde3mNfLy0vtwq','BNvTyMvY','mtq1mZq3mgzVtLHtqW','AhDpt2K','sw52ywXPzcbUDw1IzxiGzM9YBwf0'];a0_0x5739=function(){return _0x34b6a9;};return a0_0x5739();}module[a0_0x5bf2e6(0x94)]=new ImportValidator();
1
+ const a0_0x5941e0=a0_0x5327;function a0_0x5327(_0x31e47f,_0x21155e){_0x31e47f=_0x31e47f-0x1d5;const _0x329bb1=a0_0x329b();let _0x53279a=_0x329bb1[_0x31e47f];if(a0_0x5327['ICLhbV']===undefined){var _0xbe5af=function(_0x196ef5){const _0x39c8e7='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x31f39d='',_0x1ac904='';for(let _0x372816=0x0,_0x19b9f6,_0x5b197a,_0x4a253c=0x0;_0x5b197a=_0x196ef5['charAt'](_0x4a253c++);~_0x5b197a&&(_0x19b9f6=_0x372816%0x4?_0x19b9f6*0x40+_0x5b197a:_0x5b197a,_0x372816++%0x4)?_0x31f39d+=String['fromCharCode'](0xff&_0x19b9f6>>(-0x2*_0x372816&0x6)):0x0){_0x5b197a=_0x39c8e7['indexOf'](_0x5b197a);}for(let _0x544b9f=0x0,_0x5ad7df=_0x31f39d['length'];_0x544b9f<_0x5ad7df;_0x544b9f++){_0x1ac904+='%'+('00'+_0x31f39d['charCodeAt'](_0x544b9f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x1ac904);};a0_0x5327['rqwpoo']=_0xbe5af,a0_0x5327['KHKDYM']={},a0_0x5327['ICLhbV']=!![];}const _0x295533=_0x329bb1[0x0],_0x33c5b4=_0x31e47f+_0x295533,_0x26c761=a0_0x5327['KHKDYM'][_0x33c5b4];return!_0x26c761?(_0x53279a=a0_0x5327['rqwpoo'](_0x53279a),a0_0x5327['KHKDYM'][_0x33c5b4]=_0x53279a):_0x53279a=_0x26c761,_0x53279a;}(function(_0x533f19,_0x437d97){const _0xf31c10=a0_0x5327,_0x405d4c=_0x533f19();while(!![]){try{const _0x3aa4ee=-parseInt(_0xf31c10(0x1e6))/0x1*(parseInt(_0xf31c10(0x1d5))/0x2)+-parseInt(_0xf31c10(0x1e4))/0x3+parseInt(_0xf31c10(0x1e9))/0x4*(parseInt(_0xf31c10(0x1d6))/0x5)+-parseInt(_0xf31c10(0x1f3))/0x6*(parseInt(_0xf31c10(0x1e3))/0x7)+-parseInt(_0xf31c10(0x1f9))/0x8*(-parseInt(_0xf31c10(0x1e0))/0x9)+parseInt(_0xf31c10(0x1f6))/0xa*(-parseInt(_0xf31c10(0x1da))/0xb)+parseInt(_0xf31c10(0x1eb))/0xc;if(_0x3aa4ee===_0x437d97)break;else _0x405d4c['push'](_0x405d4c['shift']());}catch(_0x51a119){_0x405d4c['push'](_0x405d4c['shift']());}}}(a0_0x329b,0xee377));function a0_0x329b(){const _0x7672b7=['AM9PBG','AfLhyNe','nJm1mtK4mfLJzwTSuW','Agnhvfe','ChvZAa','ohz2sfLiyG','CgHVBMu','BgvUz3rO','mLrgrwfSBa','odbptMjNv2i','DMfSAwrHDgvsB3C','rwnLDwS','DMfSAwrHDgvoDw1Izxi','mtfPD3fKC2u','sw52ywXPzcbUDw1IzxiGzM9YBwf0','DNnzv2i','BwfW','uMvXDwLYzwqGzMLLBgqGAxmGzw1WDhK','sw52ywXPzcbLBwfPBcbMB3jTyxq','mte2ntm1odDvt2n6ruG','sw52ywXPzcbWAg9UzsbMB3jTyxq','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','odaXnZeWBM1gwg1p','mJi2mdC0owTKAujAvW','A2v5CW','mte5nZa2n29dCLLMqq','sw52ywXPzcbvuKWGzM9YBwf0','CMvWBgfJzq','mZK3odmYsLbwywzv','zM9YBwf0','mJe4ndG1ndrZy1zIALq','zw1HAwW','CMvXDwLYzwq','zM9YrwfJAa','C2v0','DxjS','yKnJB1i','Aw5MBW','nJbyt0PcEeG'];a0_0x329b=function(){return _0x7672b7;};return a0_0x329b();}const {logger}=require('./logger');class ImportValidator{[a0_0x5941e0(0x1d7)](_0x59c99e,_0x5557dd=[],_0x56e9ca={}){const _0x3b6df1=a0_0x5941e0,_0x4255cc={'Eceuk':function(_0x430b6d,_0x6004cb){return _0x430b6d===_0x6004cb;},'vsYWb':_0x3b6df1(0x1ed)},_0x6ab2cb=[];return _0x5557dd['forEach'](_0x594ff9=>{const _0x156afa=_0x3b6df1,_0x3f19f6=_0x59c99e[_0x594ff9];(_0x4255cc['Eceuk'](_0x3f19f6,null)||_0x3f19f6===undefined||_0x4255cc[_0x156afa(0x1d8)](_0x3f19f6,''))&&_0x6ab2cb[_0x156afa(0x1f8)]({'field':_0x594ff9,'type':_0x4255cc[_0x156afa(0x1dc)],'message':_0x156afa(0x1de)});}),Object[_0x3b6df1(0x1e5)](_0x56e9ca)[_0x3b6df1(0x1ee)](_0x5b5e4d=>{const _0x215b97=_0x3b6df1,_0x4bc815=_0x59c99e[_0x5b5e4d],_0x5c3f07=_0x56e9ca[_0x5b5e4d];if(_0x4bc815===null||_0x4255cc[_0x215b97(0x1d8)](_0x4bc815,undefined)||_0x4255cc['Eceuk'](_0x4bc815,''))return;const _0x276f37=this['validateFieldFormat'](_0x5b5e4d,_0x4bc815,_0x5c3f07);_0x276f37&&_0x6ab2cb[_0x215b97(0x1f8)](_0x276f37);}),_0x6ab2cb;}['validateFieldFormat'](_0x428338,_0x3d4648,_0x4b7d8b){const _0x105997=a0_0x5941e0,_0xdb94e7={'hGZBM':'number'};switch(_0x4b7d8b){case _0x105997(0x1ec):return this['validateEmail'](_0x428338,_0x3d4648);case _0x105997(0x1fa):return this['validatePhone'](_0x428338,_0x3d4648);case _0x105997(0x1f0):return this['validateUrl'](_0x428338,_0x3d4648);case _0xdb94e7['hGZBM']:return this[_0x105997(0x1d9)](_0x428338,_0x3d4648);default:return null;}}['validateEmail'](_0x146b87,_0x2d026f){const _0x53ceab=a0_0x5941e0,_0x24dff9={'nMbUg':_0x53ceab(0x1df)},_0xef131b=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0xef131b['test'](String(_0x2d026f)))return{'field':_0x146b87,'type':'format','message':_0x24dff9['nMbUg']};return null;}['validatePhone'](_0xd61167,_0x3fc9c4){const _0x16a9b9=a0_0x5941e0,_0xc571a1={'iHzWy':_0x16a9b9(0x1ea)},_0x7412c9=String(_0x3fc9c4)[_0x16a9b9(0x1e8)](/\s+/g,''),_0x49d959=/^[\d\+\-\(\)]+$/;if(!_0x49d959['test'](_0x7412c9)||_0x7412c9['length']<0x8)return{'field':_0xd61167,'type':_0xc571a1['iHzWy'],'message':_0x16a9b9(0x1e1)};return null;}['validateUrl'](_0x25d371,_0x1c2d86){const _0x542a4b=a0_0x5941e0,_0x2195b2={'hcGTQ':function(_0x1c5f69,_0xc84ba3){return _0x1c5f69(_0xc84ba3);},'bCcoR':_0x542a4b(0x1e7)};try{return new URL(_0x2195b2[_0x542a4b(0x1f7)](String,_0x1c2d86)),null;}catch(_0x15cdbe){return{'field':_0x25d371,'type':_0x542a4b(0x1ea),'message':_0x2195b2[_0x542a4b(0x1f1)]};}}[a0_0x5941e0(0x1d9)](_0x488b26,_0x434080){const _0x1baf30=a0_0x5941e0,_0x16fbed={'OIeMP':_0x1baf30(0x1ea),'fuXeP':_0x1baf30(0x1db)};if(isNaN(_0x434080))return{'field':_0x488b26,'type':_0x16fbed['OIeMP'],'message':_0x16fbed['fuXeP']};return null;}['detectDuplicatesInFile'](_0x4d94f7,_0x382c5e){const _0x48fcff=a0_0x5941e0,_0xf937b7=new Map(),_0x4e0e08=[];return _0x4d94f7[_0x48fcff(0x1ee)]((_0x5ea9da,_0x215461)=>{const _0x361611=_0x48fcff,_0x1df159=_0x382c5e[_0x361611(0x1dd)](_0x42ff9b=>_0x5ea9da[_0x42ff9b])[_0x361611(0x1f4)]('|');_0xf937b7['has'](_0x1df159)?_0x4e0e08['push']({'rowIndex':_0x215461,'duplicateOf':_0xf937b7['get'](_0x1df159),'key':_0x1df159}):_0xf937b7[_0x361611(0x1ef)](_0x1df159,_0x215461);}),_0x4e0e08;}['batchValidateRows'](_0x293b5a,_0x52c72f,_0x5df7b9){const _0x15a3bc=a0_0x5941e0,_0x4aeae4={'hYGbq':_0x15a3bc(0x1e2)},_0x453df1=[];return _0x293b5a[_0x15a3bc(0x1ee)]((_0x4ae6c4,_0x49cd30)=>{const _0x5a3c9e=_0x15a3bc,_0x33d99c=this['validateRow'](_0x4ae6c4,_0x52c72f,_0x5df7b9);_0x33d99c['length']>0x0&&_0x453df1[_0x5a3c9e(0x1f8)]({'rowIndex':_0x49cd30,'rowData':_0x4ae6c4,'errors':_0x33d99c});}),logger[_0x15a3bc(0x1f2)]({'event':_0x4aeae4[_0x15a3bc(0x1f5)],'totalRows':_0x293b5a[_0x15a3bc(0x1fb)],'errorCount':_0x453df1[_0x15a3bc(0x1fb)]},'Batch\x20validation\x20completed'),_0x453df1;}}module['exports']=new ImportValidator();