@restforgejs/platform 5.1.21 → 5.2.4
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.
- package/build-info.json +2 -2
- package/cli/consumer-deploy.js +2 -2
- package/cli/consumer.js +2 -2
- package/generators/cli/catalog/dashboard.js +1 -1
- package/generators/cli/catalog/dbschema.js +3 -3
- package/generators/cli/catalog/field-validation.js +1 -1
- package/generators/cli/catalog/query-declarative.js +1 -1
- package/generators/cli/config/clear-default.js +1 -1
- package/generators/cli/config/get-default.js +1 -1
- package/generators/cli/config/list.js +1 -1
- package/generators/cli/config/schema.js +1 -1
- package/generators/cli/config/set-default.js +2 -2
- package/generators/cli/config/template.js +1 -1
- package/generators/cli/dashboard/create.js +7 -7
- package/generators/cli/data/pull.js +12 -12
- package/generators/cli/data/push.js +9 -9
- package/generators/cli/endpoint/create.js +11 -11
- package/generators/cli/endpoint/list.js +3 -3
- package/generators/cli/fast-track.js +65 -12
- package/generators/cli/init.js +2 -2
- package/generators/cli/kafka/consumer-create.js +5 -5
- package/generators/cli/key/generate.js +3 -3
- package/generators/cli/key/list.js +2 -2
- package/generators/cli/key/revoke.js +3 -3
- package/generators/cli/payload/diff.js +3 -3
- package/generators/cli/payload/generate.js +5 -5
- package/generators/cli/payload/sync.js +5 -5
- package/generators/cli/payload/validate.js +3 -3
- package/generators/cli/processor/create.js +7 -7
- package/generators/cli/processor/list.js +3 -3
- package/generators/cli/project/delete.js +2 -2
- package/generators/cli/project/list.js +1 -1
- package/generators/cli/query/validate.js +3 -3
- package/generators/cli/schema/apply.js +13 -13
- package/generators/cli/schema/describe.js +6 -6
- package/generators/cli/schema/diff.js +10 -10
- package/generators/cli/schema/generate-ddl.js +11 -11
- package/generators/cli/schema/init.js +95 -95
- package/generators/cli/schema/introspect.js +8 -8
- package/generators/cli/schema/list.js +6 -6
- package/generators/cli/schema/migrate.js +91 -13
- package/generators/cli/schema/models.js +6 -6
- package/generators/cli/schema/template.js +223 -222
- package/generators/cli/schema/validate.js +6 -6
- package/generators/cli/test/generate.js +6 -6
- package/generators/lib/dbschema-kit/introspect-mapper.js +20 -0
- package/generators/lib/migrate/migrate-runner.js +12 -2
- package/generators/lib/migrate/sql-parser.js +5 -3
- package/generators/lib/payload/payload-runner.js +31 -5
- package/generators/lib/templates/dashboard-catalog.js +1 -1
- package/generators/lib/templates/db-connection-env.js +1 -1
- package/generators/lib/templates/dbschema-catalog.js +1 -1
- package/generators/lib/templates/field-validation-catalog.js +1 -1
- package/generators/lib/templates/mysql-template.js +1 -1
- package/generators/lib/templates/oracle-template.js +1 -1
- package/generators/lib/templates/postgres-template.js +1 -1
- package/generators/lib/templates/query-declarative-catalog.js +1 -1
- package/generators/lib/templates/sqlite-template.js +1 -1
- package/integrity-manifest.json +18 -18
- package/package.json +1 -1
- package/scripts/verify-integrity.js +1 -1
- package/server.js +2 -2
- package/src/components/handlers/adjust_handler.js +1 -1
- package/src/components/handlers/audit_handler.js +1 -1
- package/src/components/handlers/delete_handler.js +1 -1
- package/src/components/handlers/export_handler.js +1 -1
- package/src/components/handlers/import_handler.js +1 -1
- package/src/components/handlers/insert_handler.js +1 -1
- package/src/components/handlers/update_handler.js +1 -1
- package/src/components/handlers/upload_handler.js +1 -1
- package/src/components/handlers/workflow_handler.js +1 -1
- package/src/components/integrations/webhook.js +1 -1
- package/src/consumers/baseConsumer.js +1 -1
- package/src/consumers/declarativeMapper.js +1 -1
- package/src/consumers/handlers/apiHandler.js +1 -1
- package/src/consumers/handlers/consoleHandler.js +1 -1
- package/src/consumers/handlers/databaseHandler.js +1 -1
- package/src/consumers/handlers/index.js +1 -1
- package/src/consumers/handlers/kafkaHandler.js +1 -1
- package/src/consumers/index.js +1 -1
- package/src/consumers/messageTransformer.js +1 -1
- package/src/consumers/validator.js +1 -1
- package/src/core/db/dialect/base-dialect.js +1 -1
- package/src/core/db/dialect/index.js +1 -1
- package/src/core/db/dialect/mysql-dialect.js +1 -1
- package/src/core/db/dialect/oracle-dialect.js +1 -1
- package/src/core/db/dialect/postgres-dialect.js +1 -1
- package/src/core/db/dialect/sqlite-dialect.js +1 -1
- package/src/core/db/flatten-helper.js +1 -1
- package/src/core/db/query-builder-error.js +1 -1
- package/src/core/db/query-builder.js +1 -1
- package/src/core/db/relation-helper.js +1 -1
- package/src/core/handlers/delete_handler.js +1 -1
- package/src/core/handlers/insert_handler.js +1 -1
- package/src/core/handlers/update_handler.js +1 -1
- package/src/core/models/base-model.js +1 -1
- package/src/core/utils/cache-manager.js +1 -1
- package/src/core/utils/component-engine.js +1 -1
- package/src/core/utils/context-builder.js +1 -1
- package/src/core/utils/datetime-formatter.js +1 -1
- package/src/core/utils/datetime-parser.js +1 -1
- package/src/core/utils/db.js +1 -1
- package/src/core/utils/logger.js +1 -1
- package/src/core/utils/payload-loader.js +1 -1
- package/src/core/utils/security-checks.js +1 -1
- package/src/middleware/body-options.js +1 -1
- package/src/middleware/cors.js +1 -1
- package/src/middleware/idempotency.js +1 -1
- package/src/middleware/rate-limiter.js +1 -1
- package/src/middleware/request-logger.js +1 -1
- package/src/middleware/security-headers.js +1 -1
- package/src/models/base-model-mysql.js +1 -1
- package/src/models/base-model-oracle.js +1 -1
- package/src/models/base-model-sqlite.js +1 -1
- package/src/models/base-model.js +1 -1
- package/src/pro/caching/redis-client.js +1 -1
- package/src/pro/caching/redis-helper.js +1 -1
- package/src/pro/consumers/baseConsumer.js +1 -1
- package/src/pro/consumers/declarativeMapper.js +1 -1
- package/src/pro/consumers/handlers/apiHandler.js +1 -1
- package/src/pro/consumers/handlers/consoleHandler.js +1 -1
- package/src/pro/consumers/handlers/databaseHandler.js +1 -1
- package/src/pro/consumers/handlers/index.js +1 -1
- package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
- package/src/pro/consumers/index.js +1 -1
- package/src/pro/consumers/messageTransformer.js +1 -1
- package/src/pro/consumers/validator.js +1 -1
- package/src/pro/database/base-model-mysql.js +1 -1
- package/src/pro/database/base-model-oracle.js +1 -1
- package/src/pro/database/base-model-sqlite.js +1 -1
- package/src/pro/database/db-mysql.js +1 -1
- package/src/pro/database/db-oracle.js +1 -1
- package/src/pro/database/db-sqlite.js +1 -1
- package/src/pro/excel/excel-generator.js +1 -1
- package/src/pro/excel/excel-parser.js +1 -1
- package/src/pro/excel/export-service.js +1 -1
- package/src/pro/excel/export_handler.js +1 -1
- package/src/pro/excel/import-service.js +1 -1
- package/src/pro/excel/import-validator.js +1 -1
- package/src/pro/excel/import_handler.js +1 -1
- package/src/pro/excel/upsert-builder.js +1 -1
- package/src/pro/idgen/idgen-routes.js +1 -1
- package/src/pro/integrations/lookup-resolver.js +1 -1
- package/src/pro/integrations/upload-handler-v2.js +1 -1
- package/src/pro/integrations/upload-handler.js +1 -1
- package/src/pro/integrations/webhook.js +1 -1
- package/src/pro/locking/lock-routes.js +1 -1
- package/src/pro/locking/resource-lock-manager.js +1 -1
- package/src/pro/messaging/kafkaConsumerService.js +1 -1
- package/src/pro/messaging/kafkaService.js +1 -1
- package/src/pro/messaging/messagehubService.js +1 -1
- package/src/pro/messaging/rabbitmqService.js +1 -1
- package/src/pro/scheduler/job-manager.js +1 -1
- package/src/pro/scheduler/job-routes.js +1 -1
- package/src/pro/scheduler/job-validator.js +1 -1
- package/src/pro/storage/base-storage-provider.js +1 -1
- package/src/pro/storage/file-metadata-helper.js +1 -1
- package/src/pro/storage/index.js +1 -1
- package/src/pro/storage/local-storage-provider.js +1 -1
- package/src/pro/storage/s3-storage-provider.js +1 -1
- package/src/pro/storage/upload-cleanup-job.js +1 -1
- package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
- package/src/pro/storage/upload-pending-tracker.js +1 -1
- package/src/pro/websocket/broadcast-helper.js +1 -1
- package/src/pro/websocket/index.js +1 -1
- package/src/pro/websocket/livesync-server.js +1 -1
- package/src/pro/websocket/ws-broadcaster.js +1 -1
- package/src/services/export-service.js +1 -1
- package/src/services/import-service.js +1 -1
- package/src/services/kafkaConsumerService.js +1 -1
- package/src/services/kafkaService.js +1 -1
- package/src/services/messagehubService.js +1 -1
- package/src/services/rabbitmqService.js +1 -1
- package/src/utils/cache-invalidation-registry.js +1 -1
- package/src/utils/cache-manager.js +1 -1
- package/src/utils/component-engine.js +1 -1
- package/src/utils/config-extractor.js +1 -1
- package/src/utils/consumerLogger.js +1 -1
- package/src/utils/context-builder.js +1 -1
- package/src/utils/dashboard-helpers.js +1 -1
- package/src/utils/dateHelper.js +1 -1
- package/src/utils/datetime-formatter.js +1 -1
- package/src/utils/datetime-parser.js +1 -1
- package/src/utils/db-bootstrap.js +1 -1
- package/src/utils/db-mysql.js +1 -1
- package/src/utils/db-oracle.js +1 -1
- package/src/utils/db-sqlite.js +1 -1
- package/src/utils/db.js +1 -1
- package/src/utils/demo-generator.js +1 -1
- package/src/utils/excel-generator.js +1 -1
- package/src/utils/excel-parser.js +1 -1
- package/src/utils/file-watcher.js +1 -1
- package/src/utils/id-generator.js +1 -1
- package/src/utils/idempotency-manager.js +1 -1
- package/src/utils/import-validator.js +1 -1
- package/src/utils/license-client.js +1 -1
- package/src/utils/lock-manager.js +1 -1
- package/src/utils/logger.js +1 -1
- package/src/utils/lookup-resolver.js +1 -1
- package/src/utils/payload-loader.js +1 -1
- package/src/utils/processor-response.js +1 -1
- package/src/utils/rabbitmq.js +1 -1
- package/src/utils/redis-client.js +1 -1
- package/src/utils/redis-helper.js +1 -1
- package/src/utils/request-scope.js +1 -1
- package/src/utils/security-checks.js +1 -1
- package/src/utils/service-resolver.js +1 -1
- package/src/utils/shutdown-coordinator.js +1 -1
- package/src/utils/soft-delete-dashboard-guard.js +1 -1
- package/src/utils/sql-table-extractor.js +1 -1
- package/src/utils/trusted-keys.js +1 -1
- package/src/utils/upload-handler.js +1 -1
- package/src/utils/upsert-builder.js +1 -1
- package/src/utils/workflow-hook-executor.js +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';function
|
|
1
|
+
'use strict';function a0_0x2fe2(_0x391f35,_0x5d95db){_0x391f35=_0x391f35-0x1f0;const _0x1fe05b=a0_0x1fe0();let _0x2fe24e=_0x1fe05b[_0x391f35];if(a0_0x2fe2['wRBBzJ']===undefined){var _0x150dfe=function(_0x4d6bd6){const _0x221818='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x9ab688='',_0x6fc95e='';for(let _0x14e206=0x0,_0x407a09,_0x4660e5,_0x5376c8=0x0;_0x4660e5=_0x4d6bd6['charAt'](_0x5376c8++);~_0x4660e5&&(_0x407a09=_0x14e206%0x4?_0x407a09*0x40+_0x4660e5:_0x4660e5,_0x14e206++%0x4)?_0x9ab688+=String['fromCharCode'](0xff&_0x407a09>>(-0x2*_0x14e206&0x6)):0x0){_0x4660e5=_0x221818['indexOf'](_0x4660e5);}for(let _0x17d5aa=0x0,_0x3bf43f=_0x9ab688['length'];_0x17d5aa<_0x3bf43f;_0x17d5aa++){_0x6fc95e+='%'+('00'+_0x9ab688['charCodeAt'](_0x17d5aa)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6fc95e);};a0_0x2fe2['kOkJNj']=_0x150dfe,a0_0x2fe2['ywjsTd']={},a0_0x2fe2['wRBBzJ']=!![];}const _0x49c52c=_0x1fe05b[0x0],_0x13a6c4=_0x391f35+_0x49c52c,_0x4a22da=a0_0x2fe2['ywjsTd'][_0x13a6c4];return!_0x4a22da?(_0x2fe24e=a0_0x2fe2['kOkJNj'](_0x2fe24e),a0_0x2fe2['ywjsTd'][_0x13a6c4]=_0x2fe24e):_0x2fe24e=_0x4a22da,_0x2fe24e;}const a0_0x1be280=a0_0x2fe2;(function(_0x52bbcd,_0x49368f){const _0x5ce785=a0_0x2fe2,_0x16e1db=_0x52bbcd();while(!![]){try{const _0x2416c8=-parseInt(_0x5ce785(0x210))/0x1*(parseInt(_0x5ce785(0x20d))/0x2)+-parseInt(_0x5ce785(0x1f5))/0x3*(parseInt(_0x5ce785(0x1f0))/0x4)+parseInt(_0x5ce785(0x1f6))/0x5+-parseInt(_0x5ce785(0x204))/0x6+parseInt(_0x5ce785(0x200))/0x7*(parseInt(_0x5ce785(0x20b))/0x8)+parseInt(_0x5ce785(0x1f2))/0x9*(-parseInt(_0x5ce785(0x1f8))/0xa)+-parseInt(_0x5ce785(0x1f9))/0xb*(-parseInt(_0x5ce785(0x207))/0xc);if(_0x2416c8===_0x49368f)break;else _0x16e1db['push'](_0x16e1db['shift']());}catch(_0x44dd74){_0x16e1db['push'](_0x16e1db['shift']());}}}(a0_0x1fe0,0xc432c));const fs=require('fs'),path=require(a0_0x1be280(0x20e));class FileWatcher{constructor(_0x28af78={}){const _0x46a2ae=a0_0x1be280,_0x34e500={'kfQLW':'.js'};this[_0x46a2ae(0x1fb)]=_0x28af78[_0x46a2ae(0x1fb)]||[],this[_0x46a2ae(0x205)]=_0x28af78['extensions']||[_0x34e500[_0x46a2ae(0x1ff)],_0x46a2ae(0x1fa)],this[_0x46a2ae(0x211)]=_0x28af78[_0x46a2ae(0x211)]||0x1f4,this[_0x46a2ae(0x1fe)]=_0x28af78[_0x46a2ae(0x1fe)]||(()=>{}),this[_0x46a2ae(0x208)]=[],this['debounceTimer']=null;}['start'](){const _0x55fbc4=a0_0x1be280,_0x1613fc={'NaVRG':_0x55fbc4(0x1fd)};for(const _0x5bec50 of this[_0x55fbc4(0x1fb)]){if(!fs['existsSync'](_0x5bec50)){console[_0x55fbc4(0x20f)](_0x55fbc4(0x201)+(path['relative'](process['cwd'](),_0x5bec50)||_0x5bec50));continue;}try{const _0x44333b=fs['watch'](_0x5bec50,{'recursive':!![]},(_0x17f559,_0x530d91)=>{const _0x35a756=_0x55fbc4;if(!_0x530d91)return;const _0x3280cf=path[_0x35a756(0x1fc)](_0x530d91)[_0x35a756(0x1f1)]();if(!this['extensions'][_0x35a756(0x203)](_0x3280cf))return;this[_0x35a756(0x1f3)](_0x530d91);});_0x44333b['on'](_0x1613fc[_0x55fbc4(0x206)],_0x18add5=>{const _0x5e24a4=_0x55fbc4;console[_0x5e24a4(0x20f)]('\x20\x20[WATCH]\x20Warning:\x20Watcher\x20error\x20on\x20'+path['relative'](process['cwd'](),_0x5bec50)+':\x20'+_0x18add5[_0x5e24a4(0x20c)]);}),this['watchers'][_0x55fbc4(0x1f4)](_0x44333b);const _0x356ad9=path['relative'](process['cwd'](),_0x5bec50)||_0x5bec50;console[_0x55fbc4(0x20f)]('\x20\x20[WATCH]\x20Watching:\x20'+_0x356ad9+'/\x20(recursive)');}catch(_0x218357){console['log'](_0x55fbc4(0x209)+path[_0x55fbc4(0x20a)](process['cwd'](),_0x5bec50)+':\x20'+_0x218357['message']);}}}['stop'](){const _0x56a646=a0_0x1be280,_0x4e4152={'tLJRX':function(_0x41d8ac,_0x26c298){return _0x41d8ac(_0x26c298);}};for(const _0x21b6af of this[_0x56a646(0x208)]){try{_0x21b6af['close']();}catch(_0xc5eaa){}}this['watchers']=[],this['debounceTimer']&&(_0x4e4152['tLJRX'](clearTimeout,this[_0x56a646(0x1f7)]),this[_0x56a646(0x1f7)]=null);}['_debounce'](_0x578fea){const _0x3279b8=a0_0x1be280,_0x5d267c={'rQPiF':function(_0x1675e3,_0x223f7e){return _0x1675e3(_0x223f7e);},'NRSBb':function(_0x486ba9,_0x468c74,_0x1d2b93){return _0x486ba9(_0x468c74,_0x1d2b93);}};this['debounceTimer']&&_0x5d267c['rQPiF'](clearTimeout,this[_0x3279b8(0x1f7)]),this[_0x3279b8(0x1f7)]=_0x5d267c['NRSBb'](setTimeout,()=>{this['debounceTimer']=null,this['onChange'](_0x578fea);},this[_0x3279b8(0x211)]);}}module[a0_0x1be280(0x202)]=FileWatcher;function a0_0x1fe0(){const _0x358652=['zxHWB3j0CW','Aw5JBhvKzxm','ndK4nJyWmhf1yNn3vW','zxH0zw5ZAw9UCW','tMfwuKC','mJCZmZzXtMnwq2W','D2f0y2HLCNm','icbBv0fuq0HDifDHCM5PBMC6iezHAwXLzcb0BYbZzxr1Ccb3yxrJAgvYigzVCIa','CMvSyxrPDMu','ndHnswfxs3i','BwvZC2fNzq','nJy3mZC0ywLry0Le','Cgf0Aa','Bg9N','neHUvhLHzG','zgvIB3vUy2vnCW','nJuYqvnfrK5b','Dg9mB3DLCKnHC2u','nZe5mJu1n2X5qwTWuW','x2rLyM91BMnL','ChvZAa','mtq0otzPwNvVBui','nJu2mZKWmhvRrgDJEa','zgvIB3vUy2vuAw1LCG','mJbeDhnXB2K','mtK0otjYDeH5EKu','lMPZB24','zgLYzwn0B3jPzxm','zxH0BMfTzq','zxjYB3i','B25dAgfUz2u','A2zrtfC','nZa0ovLNrMfiEa','icbBv0fuq0HDifDHCM5PBMC6ierPCMvJDg9YEsbUB3qGzM91BMqSihnRAxbWAw5NoIa'];a0_0x1fe0=function(){return _0x358652;};return a0_0x1fe0();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const a0_0x7c9815=a0_0x39fa;(function(_0x560650,_0x498722){const _0x346ec1=a0_0x39fa,_0x10d117=_0x560650();while(!![]){try{const _0x360dd1=-parseInt(_0x346ec1(0xbd))/0x1+-parseInt(_0x346ec1(0x119))/0x2*(-parseInt(_0x346ec1(0x92))/0x3)+-parseInt(_0x346ec1(0x13b))/0x4+-parseInt(_0x346ec1(0xb1))/0x5+parseInt(_0x346ec1(0x121))/0x6*(parseInt(_0x346ec1(0xff))/0x7)+-parseInt(_0x346ec1(0xb5))/0x8+parseInt(_0x346ec1(0x10e))/0x9;if(_0x360dd1===_0x498722)break;else _0x10d117['push'](_0x10d117['shift']());}catch(_0x2e4717){_0x10d117['push'](_0x10d117['shift']());}}}(a0_0x4709,0x870ef));function a0_0x39fa(_0x22ec58,_0x225ae6){_0x22ec58=_0x22ec58-0x86;const _0x470934=a0_0x4709();let _0x39faa3=_0x470934[_0x22ec58];if(a0_0x39fa['jnBXkF']===undefined){var _0x431939=function(_0x74a1f2){const _0x42398d='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4c7875='',_0x2ae8b7='';for(let _0x89ce8b=0x0,_0x192846,_0x1b3a80,_0xdc82cc=0x0;_0x1b3a80=_0x74a1f2['charAt'](_0xdc82cc++);~_0x1b3a80&&(_0x192846=_0x89ce8b%0x4?_0x192846*0x40+_0x1b3a80:_0x1b3a80,_0x89ce8b++%0x4)?_0x4c7875+=String['fromCharCode'](0xff&_0x192846>>(-0x2*_0x89ce8b&0x6)):0x0){_0x1b3a80=_0x42398d['indexOf'](_0x1b3a80);}for(let _0x15f772=0x0,_0x46af21=_0x4c7875['length'];_0x15f772<_0x46af21;_0x15f772++){_0x2ae8b7+='%'+('00'+_0x4c7875['charCodeAt'](_0x15f772)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2ae8b7);};a0_0x39fa['mQdgTs']=_0x431939,a0_0x39fa['HXzbdy']={},a0_0x39fa['jnBXkF']=!![];}const _0x4e4e74=_0x470934[0x0],_0x2a5ae9=_0x22ec58+_0x4e4e74,_0x4b2e26=a0_0x39fa['HXzbdy'][_0x2a5ae9];return!_0x4b2e26?(_0x39faa3=a0_0x39fa['mQdgTs'](_0x39faa3),a0_0x39fa['HXzbdy'][_0x2a5ae9]=_0x39faa3):_0x39faa3=_0x4b2e26,_0x39faa3;}const crypto=require('crypto'),redisClient=require(a0_0x7c9815(0xd9)),{logger}=require('./logger'),idempotencyManager=require(a0_0x7c9815(0x147)),ALLOWED_FORMATS=new Set([a0_0x7c9815(0xe1),a0_0x7c9815(0x13e),'yyyymm','yyyymmdd']),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT=a0_0x7c9815(0xdb),CHARSET_UPPER='ABCDEFGHIJKLMNOPQRSTUVWXYZ',CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER=a0_0x7c9815(0xc8),PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20reused\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#reused\x20>\x200\x20then\x0a\x20\x20\x20\x20return\x20{tonumber(reused[1]),\x201}\x0a\x20\x20end\x0aend\x0alocal\x20n\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20and\x20n\x20==\x201\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x20{n,\x200}\x0a',LUA_RELEASE_NUMBER=a0_0x7c9815(0xf7),LUA_RESERVE_NUMBER='\x0alocal\x20unpk\x20=\x20unpack\x20or\x20table.unpack\x0a\x0a--\x20Step\x201:\x20lazy\x20reap\x20expired\x20reservations\x20(cap\x20RESERVE_REAP_BATCH)\x0alocal\x20reaped\x20=\x200\x0alocal\x20nowMs\x20=\x20ARGV[7]\x0alocal\x20rsvPrefix\x20=\x20ARGV[8]\x0alocal\x20expired\x20=\x20redis.call(\x27ZRANGEBYSCORE\x27,\x20KEYS[3],\x20\x27-inf\x27,\x20\x27(\x27\x20..\x20nowMs,\x20\x27LIMIT\x27,\x200,\x2064)\x0afor\x20i\x20=\x201,\x20#expired\x20do\x0a\x20\x20local\x20expToken\x20=\x20expired[i]\x0a\x20\x20local\x20expRsvKey\x20=\x20rsvPrefix\x20..\x20expToken\x0a\x20\x20local\x20expCounter\x20=\x20redis.call(\x27HGET\x27,\x20expRsvKey,\x20\x27counter\x27)\x0a\x20\x20if\x20expCounter\x20then\x0a\x20\x20\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[2],\x20expCounter,\x20expCounter)\x0a\x20\x20end\x0a\x20\x20redis.call(\x27DEL\x27,\x20expRsvKey)\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[3],\x20expToken)\x0a\x20\x20reaped\x20=\x20reaped\x20+\x201\x0aend\x0a\x0a--\x20Step\x202:\x20allocate\x20counter\x20(ZPOPMIN\x20reuse\x20atau\x20INCR\x20seq)\x0alocal\x20counterInt\x0alocal\x20isReused\x20=\x200\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20r\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#r\x20>\x200\x20then\x0a\x20\x20\x20\x20counterInt\x20=\x20tonumber(r[1])\x0a\x20\x20\x20\x20isReused\x20=\x201\x0a\x20\x20end\x0aend\x0aif\x20not\x20counterInt\x20then\x0a\x20\x20counterInt\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0a\x20\x20local\x20cttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20cttl\x20>\x200\x20and\x20counterInt\x20==\x201\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20cttl)\x0a\x20\x20end\x0aend\x0a\x0a--\x20Step\x203:\x20write\x20reservation\x20hash\x20+\x20index\x20+\x20TTL\x0alocal\x20rsvKey\x20=\x20ARGV[4]\x0alocal\x20rsvTtlMs\x20=\x20tonumber(ARGV[5])\x0alocal\x20expiresAtMs\x20=\x20tonumber(ARGV[6])\x0alocal\x20nargs\x20=\x20#ARGV\x0alocal\x20fields\x20=\x20{}\x0afor\x20i\x20=\x209,\x20nargs\x20do\x0a\x20\x20fields[#fields\x20+\x201]\x20=\x20ARGV[i]\x0aend\x0aredis.call(\x27HSET\x27,\x20rsvKey,\x20\x27counter\x27,\x20counterInt,\x20\x27isReused\x27,\x20isReused,\x20unpk(fields))\x0aredis.call(\x27PEXPIRE\x27,\x20rsvKey,\x20rsvTtlMs)\x0aredis.call(\x27ZADD\x27,\x20KEYS[3],\x20expiresAtMs,\x20ARGV[3])\x0aredis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20math.floor(rsvTtlMs\x20/\x201000)\x20+\x2060)\x0a\x0areturn\x20{\x20counterInt,\x20isReused,\x20reaped\x20}\x0a',LUA_CONFIRM_RESERVATION=a0_0x7c9815(0x126),LUA_CANCEL_RESERVATION='\x0aif\x20redis.call(\x27EXISTS\x27,\x20KEYS[1])\x20==\x200\x20then\x0a\x20\x20redis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0a\x20\x20return\x20{\x200\x20}\x0aend\x0alocal\x20h\x20=\x20redis.call(\x27HMGET\x27,\x20KEYS[1],\x20\x27counter\x27,\x20\x27value\x27,\x20\x27formatKey\x27)\x0alocal\x20counter\x20=\x20h[1]\x0aif\x20counter\x20then\x0a\x20\x20redis.call(\x27ZADD\x27,\x20KEYS[3],\x20counter,\x20counter)\x0a\x20\x20local\x20ttl\x20=\x20tonumber(ARGV[2])\x0a\x20\x20if\x20ttl\x20>\x200\x20then\x0a\x20\x20\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[3],\x20ttl)\x0a\x20\x20end\x0aend\x0aredis.call(\x27DEL\x27,\x20KEYS[1])\x0aredis.call(\x27ZREM\x27,\x20KEYS[2],\x20ARGV[1])\x0areturn\x20{\x201,\x20counter,\x20h[2],\x20h[3]\x20}\x0a',LUA_EXTEND_RESERVATION=a0_0x7c9815(0xa6);function a0_0x4709(){const _0x350da9=['suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','x3vWzgf0zu1LDge','x3bHCNnLtNvTyMvY','uwvIuNm','x2j1AwXKqwn0AxzLs2v5','C2nHCMq','x2vUC3vYzuLUAxrPywXPEMvK','Bwf4uMv0CNK','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSicDJB3vUDgvYjYWGj3zHBhvLjYWGj2zVCM1HDeTLEsCSicDPC1jLDxnLzcCSicDJCMvHDgvKqxqNkqPSB2nHBcbWCMv2rxHWAxjLC0f0id0GAfSXxqPSB2nHBcbUzxDuDgXnCYa9ihrVBNvTyMvYkefsr1zBmL0PcMXVy2fSig5LD0v4Ce1Zid0GDg9UDw1IzxiOqvjhvLSZxsKkCMvKAxmUy2fSBcGNuevyueLsrsCSieTfwvnBmv0Sig5LD1r0Be1ZkqPYzwrPCY5JywXSkcDiu0vujYWGs0vzu1SXxsWGj2v4CgLYzxnbDcCSiefsr1zBnf0PcNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZjDlcbUzxDfEhbnCYWGqvjhvLSXxsKkCMvKAxmUy2fSBcGNrvHqsvjfjYWGs0vzu1SYxsWGBwf0Ac5MBg9VCIHUzxDuDgXnCYaVideWmdaPicSGnJaPcNjLDhvYBIb7ideSihbYzxzfEhbPCMvZqxqSigHBmL0SigHBm10SigHBnf0SigHBnv0SigHBnL0GFqO','z016B0q','surhru5FuKvtrvrFtK9ux0fmte9xruq','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','z2v0uMvZzxj2yxrPB24','Aw1jt0u','AwrNzw5FBNvTyMvYx2LKzw1FBg9Zzxi','qxH5zLG','BgHwvxu','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','Cg93','mtGZmdu0nwvbDhPtAq','q1jYsue','x2j1AwXKu2vXs2v5','qwTftvO','oteYnJGWvNvmuMnI','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignVBMzPCM1LzdOG','wwn2B2S','r0DJshO','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9Uigv4DgvUzgvKoIa','C2fKza','A2vUwKi','qxLpuKm','nZK0ntGYy1nhufPe','BgvUz3rO','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','x2j1AwXKtwv0yuTLEq','CNn2oG','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','AxnjBNrLz2vY','x3jLDhjPzxzLswrLBunHy2HL','x2j1AwXKuMvZzxj2yxrPB25lzxLqCMvMAxG','z2v0','mdeYmZq1nJC4owfIy2rLzG','lwrPz2L0ignHCgfJAxr5icG','uvn0uMi','suqGr2vUzxjHDg9YihjHBMrVBtOG','AxnZDwvK','z252zvm','y29Kzq','DhrS','CMvZB3vYy2u','Bg5duLC','CgLWzwXPBMu','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','AhnVu1y','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','x2nVDw50zxjuveXnyxa','CgfKzgvKicHNB3q6ia','Bwv0ytO','lI9YzwrPCY1JBgLLBNq','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','mdeYmZq1nJC4oq','surhru5Fsu5wquXjrf9nt0rf','x2j1AwXKsxnZDwvKs2v5','AuHXrLC','CMfUzg9T','q0zZCgi','Dgv4Da','tuLrwMC','x2TLEvbYzwzPEa','suqGr2vUzxjHDg9YignVBMzPzYbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','yM9VBgvHBG','CgfKu3rHCNq','Dg9ju09tDhjPBMC','CNn2s2v5','lcbNB3qG','x3rLEhq','tNvTyMvYignVDw50zxiGCgfYDcbTDxn0igjLigv4ywn0BhKG','C2v0zxG','x3zHBgLKyxrLuMvZB3vYy2u','x3zHBgLKyxrLvfrm','x3zHBgLKyxrLtwf4uMv0CNK','x2j1AwXKrM9YBwf0s2v5','vgPcC28','icHNB3q6ia','CgLU','sLLNwMu','AwrNzw5Fy29UzMLNx2LUAxq','q255CKi','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','AwrNzw5FAwrLBv9UEf9YywnLx2XVC3rFyNv0x2vTChr5','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','EK9cDLa','zwvUrfe','yKjPyxm','mteXndm2nvjdB01qAa','BwvZC2fNzq','x2zVCM1HDe51BwjLCG','qNrRseW','u0vuie5yigzHAwXLzcbIDxqGy2fJAguGr0vuihjLDhvYBMvKigvTChr5iokaLcbMywXSAw5NigjHy2SGDg8GB3DUihjLC3vSDa','sw52ywXPzcbKAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','C3rYAw5N','z2v0sw5MBW','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','vw5RBM93BIbMB3jTyxq6ia','x2rLzMf1BhrqAw5eAwDPDhm','surhru5Fsu5wquXjrf9gt1jnqvq','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','x3n0B3jLswrLBunHy2HLtLG','BNvTyMvY','mtyWnZq1odviB01irvy','vwPJrxq','Dg9Rzw4','DhrStxm','z2vcqMK','uvfUzhy','x3zHBgLKyxrLugf0DgvYBG','x2j1AwXKuMv1C2vlzxK','BM93','xLXKEW','DhLhqvC','mZiWmhLQtwLXwq','x3n0B3jLswrLBunHy2HL','surhru5Fsu5wquXjrf9trvbbuKfut1i','AgDLDgfSBa','tNvTyMvYigrHDgvqCMvMAxGGAw52ywXPzcbMB3iGzM9YBwf0ia','x2LUAxrdB25MAwC','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKihrLEhqGzM9YBwf0icHNB3q6ia','AwrNzw5FBNvTyMvYx3jLBgvHC2vK','nMT4CuHOqG','CMvZzxj2zv9Jyw5JzwW','y2fUy2vSuMvZzxj2yxrPB24','C2XWCfK','CMvSzwfZzwrbDa','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYWGj2LZuMv1C2vKjYWGj2nYzwf0zwrbDcCSicDLEhbPCMvZqxqNkqPYzwrPCY5JywXSkcDeruWNlcblrvLtwZfDkqPYzwrPCY5JywXSkcDAuKvnjYWGs0vzu1SYxsWGqvjhvLSXxsKkCMv0DxjUihSGmsWGAfSXxsWGAfSYxsWGAfSZxsWGAfS0xsWGAfS1xsWGAfS2xsb9cG','AhnLDa','seXjz0m','ChjLzML4','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','Bw9Kzq','wujbEeC','wuvdDNm','surhru5FreLtqujmruq','whDsAu4','x3vUzg9syw5KB21szxnLCNzHDgLVBG','uuz6qNO','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','BMfTzq','Bwf0y2G','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','AgfZ','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','A21dr1u','oty4mZqWDgT1Cfzh','ignOyxjZicHNB3qGBgvUz3rOoIa','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','ExL5Eq','x2LKzw1uveW','Dhj1zq','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','serPu1a','u3bRyK8','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','C2HuAhK','ze90Cem','lI9PzgvTCg90zw5JEs1Tyw5Hz2vY','surhru5Fq09vtLrfuL9uveXFrefjtfK','CgfYC2u','zgf0zvbYzwzPEa','zw5HyMXLza','DvvyDgG','zxH0zw5KuMvZzxj2yxrPB24','t3LzEva','B0fUzMC','icH0B2TLBJ0','AM9PBG','vxLpEhG','y291BNrLCKLUDcbTDxn0igjLihbVC2L0AxzLigLUDgvNzxiGkgDVDdOG','CMDJt2u','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','rMfPBgvKihrVignHBMnLBcbYzxnLCNzHDgLVBIbMB3iGAwrLBxbVDgvUy3KGBg9Zzxi','CMvZzxj2zurLzMf1BhruveW','zM9YBwf0s2v5','x2DLDenVDw50zxjuveW','zM9YBwf0','x2rLzMf1BhrdB2rLugf0DgvYBG','ywXS','sw52ywXPzcbWyxr0zxjUoIbTDxn0igjLihn0CMLUzYaXlq','x2j1AwXKuMvZzxj2yxrPB25lzxK','surhru5Fq09vtLrfuL9uveXFtu9oveHmwq','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','AxnszxvZzwq','EurVrfi','z2v0q2XPzw50','AwrLBxbVDgvUy3LlzxK','zgvS','lcaR','x2rLzMf1BhrtzxjPywXqyxr0zxjU','x2rLzMf1BhrnyxHszxrYEq','D21grNq','CMv1C2u6','x2j1AwXKswrLBuTLEq','surhru5Fsu5wquXjrf9qqvrurvjo','v0XXAMK','zw52','CunUC3m','CNn2swr4s2v5','C3rYAw5NAwz5','wejHs2G','x2vUywjSzwq','A2v5uhjLzML4','Dg9mB3DLCKnHC2u','surhru5Fsu5wquXjrf9srvnpvvjdrq','CwfJs0K','y1PyA1G','Dhz4u2W','x2DLBMvYyxrLrNjVBvbHDhrLCM4','Cgf0DgvYBG','CMy6AwrNzw46','x3jLC2vYDMvnyxHuveW','Efburee','AwrNzw5FCMvZzxq','CMvZzxj2zq','ChvZAa','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','vLjjr0e','AwrLBvruta','surhru5Fq09vtLrfuL9pvKvsrKXpvW','sw52ywXPzcbYzxnLCNzHDgLVBIb0B2TLBJOGBxvZDcbIzsbHihzHBgLKifvvsuqGzM9YBwf0icHNB3q6ia','veTSAxq','C2vXoG','C2vWyxjHDg9Y','z2vUzxjHDgvKqxq','x2fSBg93uMvZzxq','z2v0tw9UDgG','BNvTrgLNAxrZ','rKT3vuy','v1vgEvq','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','zgvMyxvSDfnLCMLHBfbHDhrLCM4','C3rVCMvK','x3L5ExLTBv8','CMv1C2u','x3zHBgLKyxrLuMvZzxj2zvruta','rKPytge','z3jdA2C','y3jLyxrLzef0','ExL5Ew1T','x3bHzdi','y2TMrvq','suqGr2vUzxjHDg9YihjLC2v0oIa','CMvZzxq','wxnSD28','surhru5Fsu5wquXjrf9ovu1crvi','ExL5Ew1Tzgq','y291BNrLCKLUDa','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','x3jLC2vYDMvezwzHDwX0vfrm','x2LUAxrPywXPEMvK','C2vX','q25Uv1C','ywXSB3DszxnLDa','Aw5MBW','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','AxnZDwvKoG','vwP5zMC','yNb1zNy','zxzHBa','sw52ywXPzcbMB3jTyxq6ia','z2v0rgf0zq','surhru5Fsu5wquXjrf9esuDjvfm','mJm0zuHcs0rs','DMfSDwu','DgvZDa','zgvMyxvSDenVzgvqyxr0zxjU','suqGr2vUzxjHDg9YihjLC2vYDMuGAwrLBsbYywnLigXVC3qSihjLDhvYBMLUzYb3Aw5UzxiGzw52zwXVCgu','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcbWCMvMAxG','sMv5zhe','sLzsrvG','AwrNzw4','DgLNC2q','D2fYBG','zgLNAxrZ'];a0_0x4709=function(){return _0x350da9;};return a0_0x4709();}class IdGeneratorError extends Error{constructor(_0x5ba9b5,_0x461b56,_0x2bf8c1=null){const _0x3acc86=a0_0x7c9815,_0x6af0db={'BtkHL':function(_0x421549,_0x33eb21){return _0x421549||_0x33eb21;}};super(_0x6af0db[_0x3acc86(0x102)](_0x461b56,_0x5ba9b5)),this[_0x3acc86(0x135)]='IdGeneratorError',this[_0x3acc86(0xce)]=_0x5ba9b5,this['details']=_0x2bf8c1;}}class IdGenerator{constructor(){const _0x4ba892=a0_0x7c9815;this[_0x4ba892(0x1a5)]=![],this['_enabled']=null,this['_keyPrefix']=null,this[_0x4ba892(0x13f)]=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this[_0x4ba892(0x109)]=null,this[_0x4ba892(0x167)]=null,this[_0x4ba892(0x15b)]=null,this[_0x4ba892(0xd6)]=null,this['_reserveDefaultTTL']=null,this['_reserveMaxTTL']=null;}['_initConfig'](){const _0x4b0f35=a0_0x7c9815,_0x1e57ef={'zOBvP':_0x4b0f35(0x140),'poDXe':function(_0x1b028a,_0x1eb79b,_0x37359d){return _0x1b028a(_0x1eb79b,_0x37359d);},'rllfr':'9999-9999','UyOxx':function(_0x52ae43,_0x2f8604,_0x27bf4b){return _0x52ae43(_0x2f8604,_0x27bf4b);}};this['_keyPrefix']=_0x4b0f35(0x17c),this[_0x4b0f35(0x173)]=process[_0x4b0f35(0x16e)]['IDGEN_ENABLED']===_0x1e57ef[_0x4b0f35(0xfc)],this[_0x4b0f35(0x13f)]=parseInt(process['env']['IDGEN_IDEM_TTL'],0xa)||0x258,this[_0x4b0f35(0x18c)]=process['env']['IDGEN_ALLOW_RESET']===_0x1e57ef['zOBvP'],this[_0x4b0f35(0x168)]=_0x1e57ef['poDXe'](parseInt,process[_0x4b0f35(0x16e)]['IDGEN_DEFAULT_MAX_RETRY'],0xa)||0xa,this['_defaultPinDigits']=parseInt(process['env']['IDGEN_DEFAULT_PIN_DIGITS'],0xa)||0x6,this['_defaultSerialPattern']=process[_0x4b0f35(0x16e)][_0x4b0f35(0x191)]||'XXXX-XXXX-XXXX-XXXX',this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||_0x1e57ef['rllfr'],this[_0x4b0f35(0xd6)]={'yyyymm':parseInt(process['env'][_0x4b0f35(0x15f)],0xa)||0x2a3000,'yyyymmdd':parseInt(process['env'][_0x4b0f35(0x148)],0xa)||0x2a300},this['_reserveDefaultTTL']=parseInt(process['env'][_0x4b0f35(0x12a)],0xa)||DEFAULT_RESERVE_TTL,this[_0x4b0f35(0x17d)]=_0x1e57ef[_0x4b0f35(0x152)](parseInt,process[_0x4b0f35(0x16e)]['IDGEN_RESERVE_MAX_TTL'],0xa)||MAX_RESERVE_TTL,this['_initialized']=!![],logger[_0x4b0f35(0x89)]({'event':_0x4b0f35(0xf5),'enabled':this['_enabled'],'idemTTL':this[_0x4b0f35(0x13f)],'allowReset':this[_0x4b0f35(0x18c)],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this[_0x4b0f35(0x109)],'reserveDefaultTTL':this[_0x4b0f35(0x1a4)],'reserveMaxTTL':this[_0x4b0f35(0x17d)]},_0x4b0f35(0xe4)+this[_0x4b0f35(0x173)]);}['_ensureInitialized'](){const _0x5bf09f=a0_0x7c9815;if(!this['_initialized'])this[_0x5bf09f(0x11e)]();}get[a0_0x7c9815(0x14b)](){const _0x4c0ff9=a0_0x7c9815;return this[_0x4c0ff9(0xa4)](),this['_enabled'];}get[a0_0x7c9815(0x174)](){const _0x6f8f32=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x6f8f32(0xe3)];}get[a0_0x7c9815(0x185)](){const _0x57cdd5=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x57cdd5(0x13f)];}get['allowReset'](){const _0x3dd36a=a0_0x7c9815;return this[_0x3dd36a(0xa4)](),this[_0x3dd36a(0x18c)];}get['defaultMaxRetry'](){const _0x366cf3=a0_0x7c9815;return this['_ensureInitialized'](),this[_0x366cf3(0x168)];}get['defaultPinDigits'](){const _0x2d39f0=a0_0x7c9815;return this[_0x2d39f0(0xa4)](),this[_0x2d39f0(0x109)];}get[a0_0x7c9815(0x192)](){const _0x57a028=a0_0x7c9815;return this[_0x57a028(0xa4)](),this[_0x57a028(0x167)];}get['defaultCodePattern'](){const _0x304e7f=a0_0x7c9815;return this[_0x304e7f(0xa4)](),this['_defaultCodePattern'];}get[a0_0x7c9815(0x157)](){const _0x3dd64d=a0_0x7c9815;return this[_0x3dd64d(0xa4)](),this['_reserveDefaultTTL'];}get['reserveMaxTTL'](){const _0x21c65e=a0_0x7c9815;return this[_0x21c65e(0xa4)](),this['_reserveMaxTTL'];}['isEnabled'](){const _0x5577ad=a0_0x7c9815;return this[_0x5577ad(0x14b)];}[a0_0x7c9815(0xed)](_0x40e100){const _0x48605b=a0_0x7c9815,_0x262bde={'Yslwo':function(_0x481989,_0x9d85f6){return _0x481989!==_0x9d85f6;}};if(_0x262bde[_0x48605b(0x19f)](typeof _0x40e100,_0x48605b(0x105))||!RESOURCE_REGEX[_0x48605b(0x94)](_0x40e100))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x40e100)+')');}['_validateNumberParams'](_0x106236){const _0x3a5948=a0_0x7c9815,_0x40e600={'YECvs':function(_0x1e428e,_0x495b40){return _0x1e428e===_0x495b40;},'xUmxe':function(_0x4a42c1,_0x462778){return _0x4a42c1<_0x462778;},'HxJQq':function(_0x5314f1,_0x50ea0d){return _0x5314f1>_0x50ea0d;},'rhqrS':function(_0x2fb266,_0x5469c5){return _0x2fb266!==_0x5469c5;},'FJXLa':_0x3a5948(0x105),'PMCbu':'IDGEN_INVALID_PREFIX','YqIva':_0x3a5948(0x11b),'hsoSV':function(_0x4588a1,_0x5d6cb8){return _0x4588a1!==_0x5d6cb8;},'KoFjz':_0x3a5948(0xe5),'ZsLen':_0x3a5948(0x176)},{resource:_0x10801b,format:_0x327492,prefix:_0x33382f,separator:_0x896e1f,numDigits:_0xf4b09d,reuseDelete:_0x16f9c2}=_0x106236;this['_validateResource'](_0x10801b);const _0xcd6ee7=_0x40e600[_0x3a5948(0x12f)](typeof _0x327492,'string')?_0x327492['toLowerCase']():'';if(!ALLOWED_FORMATS['has'](_0xcd6ee7))throw new IdGeneratorError('IDGEN_INVALID_FORMAT','Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x3a5948(0x151)](',\x20')+'\x20(got:\x20'+_0x327492+')');if(!Number[_0x3a5948(0xc4)](_0xf4b09d)||_0x40e600['xUmxe'](_0xf4b09d,MIN_NUM_DIGITS)||_0x40e600['HxJQq'](_0xf4b09d,MAX_NUM_DIGITS))throw new IdGeneratorError('IDGEN_INVALID_NUM_DIGITS',_0x3a5948(0x12b)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+_0x3a5948(0xf2)+_0xf4b09d+')');const _0x32d609=_0x33382f==null?'':_0x33382f;if(_0x40e600['rhqrS'](typeof _0x32d609,_0x40e600[_0x3a5948(0x197)])||!PREFIX_REGEX[_0x3a5948(0x94)](_0x32d609))throw new IdGeneratorError(_0x40e600['PMCbu'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON[_0x3a5948(0x171)](_0x33382f)+')');const _0x49e864=_0x896e1f==null?'':_0x896e1f;if(typeof _0x49e864!=='string'||_0x49e864[_0x3a5948(0xbe)]>0x3||SEPARATOR_FORBIDDEN[_0x3a5948(0x94)](_0x49e864))throw new IdGeneratorError(_0x40e600['YqIva'],'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x3a5948(0x171)](_0x896e1f)+')');if(_0x16f9c2!=null&&_0x40e600[_0x3a5948(0xd4)](typeof _0x16f9c2,_0x40e600['KoFjz']))throw new IdGeneratorError(_0x40e600['ZsLen'],'Invalid\x20reuseDelete:\x20must\x20be\x20boolean\x20(got:\x20'+typeof _0x16f9c2+')');return{'resource':_0x10801b,'format':_0xcd6ee7,'prefix':_0x32d609,'separator':_0x49e864,'numDigits':_0xf4b09d,'reuseDelete':_0x16f9c2===!![]};}[a0_0x7c9815(0x114)](_0x6e4d){const _0x25fcdf=a0_0x7c9815,_0x5066fd={'AyORC':function(_0x17d413,_0x4dd276){return _0x17d413!==_0x4dd276;},'xsipo':_0x25fcdf(0x105),'PZYrE':function(_0x4d24bf,_0x5365a4){return _0x4d24bf>_0x5365a4;},'FTwMH':'IDGEN_INVALID_PATTERN'};if(_0x5066fd[_0x25fcdf(0xbc)](typeof _0x6e4d,_0x5066fd['xsipo'])||_0x6e4d[_0x25fcdf(0xbe)]===0x0||_0x5066fd['PZYrE'](_0x6e4d['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x5066fd['FTwMH'],_0x25fcdf(0x15d)+MAX_PATTERN_LENGTH+_0x25fcdf(0x13c)+(_0x6e4d&&_0x6e4d['length'])+')');let _0x45023a=![];for(const _0x238851 of _0x6e4d){if(PLACEHOLDER_MAP[_0x238851]){_0x45023a=!![];break;}}if(!_0x45023a)throw new IdGeneratorError(_0x25fcdf(0x16c),_0x25fcdf(0xda));}[a0_0x7c9815(0xee)](_0x23d404){const _0x23e551=a0_0x7c9815;if(_0x23d404==null)return undefined;if(!Number[_0x23e551(0xc4)](_0x23d404)||_0x23d404<0x1||_0x23d404>MAX_TTL)throw new IdGeneratorError('IDGEN_INVALID_TTL','Invalid\x20ttl:\x20must\x20be\x20integer\x201-'+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x23d404+')');return _0x23d404;}['_validateMaxRetry'](_0x5a63e5){const _0x4966ad=a0_0x7c9815,_0x359dd4={'kmCGU':function(_0x12f9e7,_0x2a6cec){return _0x12f9e7==_0x2a6cec;},'DtBFa':function(_0x47eff8,_0x264e0b){return _0x47eff8<_0x264e0b;}};if(_0x359dd4[_0x4966ad(0x13a)](_0x5a63e5,null))return this['defaultMaxRetry'];if(!Number['isInteger'](_0x5a63e5)||_0x359dd4['DtBFa'](_0x5a63e5,0x1)||_0x5a63e5>MAX_RETRY_LIMIT)throw new IdGeneratorError('IDGEN_INVALID_MAX_RETRY','Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+'\x20(got:\x20'+_0x5a63e5+')');return _0x5a63e5;}['_validateIdempotencyKey'](_0x295f78){const _0x41d0f9=a0_0x7c9815,_0x3d22a8={'sFAbC':_0x41d0f9(0x105),'rgcOe':function(_0x401143,_0x265b30){return _0x401143>_0x265b30;},'FeIfi':'IDGEN_INVALID_RESOURCE'};if(_0x295f78==null)return undefined;if(typeof _0x295f78!==_0x3d22a8['sFAbC']||_0x295f78[_0x41d0f9(0xbe)]===0x0||_0x3d22a8[_0x41d0f9(0x154)](_0x295f78[_0x41d0f9(0xbe)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x3d22a8['FeIfi'],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+'\x20chars');return _0x295f78;}['_validateReserveTTL'](_0x194625){const _0x204ef1=a0_0x7c9815,_0x4620a3={'lFLlK':function(_0x27f6d1,_0x3d4458){return _0x27f6d1==_0x3d4458;},'CRrIA':'IDGEN_INVALID_RESERVE_TTL'};if(_0x4620a3['lFLlK'](_0x194625,null))return this['reserveDefaultTTL'];if(!Number[_0x204ef1(0xc4)](_0x194625)||_0x194625<MIN_RESERVE_TTL||_0x194625>this['reserveMaxTTL'])throw new IdGeneratorError(_0x4620a3[_0x204ef1(0xb2)],_0x204ef1(0x12c)+MIN_RESERVE_TTL+'-'+this['reserveMaxTTL']+'\x20seconds\x20(got:\x20'+_0x194625+')');return _0x194625;}['_validateReservationToken'](_0x4a8cb6){const _0x1eb74b=a0_0x7c9815,_0x4f7b08={'CnnWW':function(_0x113253,_0x45bf51){return _0x113253!==_0x45bf51;}};if(_0x4f7b08[_0x1eb74b(0x87)](typeof _0x4a8cb6,_0x1eb74b(0x105))||!RESERVATION_TOKEN_REGEX[_0x1eb74b(0x94)](_0x4a8cb6))throw new IdGeneratorError('IDGEN_INVALID_TOKEN',_0x1eb74b(0x187)+JSON['stringify'](_0x4a8cb6)+')');return _0x4a8cb6;}['_pad2'](_0x5c7337){const _0x14c7c3=a0_0x7c9815;return String(_0x5c7337)[_0x14c7c3(0xe6)](0x2,'0');}['_buildFormatKey'](_0x319056,_0x265edc,_0x402205=new Date()){const _0x507a9b=a0_0x7c9815,_0x15a206={'gBhms':function(_0x4ce434,_0x5e0d45){return _0x4ce434+_0x5e0d45;},'shThy':_0x507a9b(0xe1),'yXley':_0x507a9b(0x19a)},_0x18c9fb=_0x402205['getFullYear'](),_0x1271d4=this[_0x507a9b(0x19b)](_0x15a206['gBhms'](_0x402205[_0x507a9b(0x18d)](),0x1)),_0xc701ad=this['_pad2'](_0x402205[_0x507a9b(0x90)]()),_0x9cd8fa=_0x265edc||'_';let _0x1a34e0,_0x24d3f1='';switch(_0x319056){case _0x15a206[_0x507a9b(0x145)]:_0x1a34e0=_0x9cd8fa+'_text';break;case _0x507a9b(0x13e):_0x24d3f1=''+_0x18c9fb,_0x1a34e0=_0x9cd8fa+'_yyyy_'+_0x24d3f1;break;case _0x15a206['yXley']:_0x24d3f1=''+_0x18c9fb+_0x1271d4,_0x1a34e0=_0x9cd8fa+_0x507a9b(0x194)+_0x24d3f1;break;case _0x507a9b(0x1a1):_0x24d3f1=''+_0x18c9fb+_0x1271d4+_0xc701ad,_0x1a34e0=_0x9cd8fa+'_yyyymmdd_'+_0x24d3f1;break;default:throw new IdGeneratorError(_0x507a9b(0x10a),_0x507a9b(0x108)+_0x319056);}return{'formatKey':_0x1a34e0,'datePrefix':_0x24d3f1};}['_buildSeqKey'](_0x5abeac,_0x3f6c19){const _0x30512c=a0_0x7c9815;return this[_0x30512c(0x174)]+_0x30512c(0x189)+_0x5abeac+':'+_0x3f6c19;}[a0_0x7c9815(0x115)](_0x29a48c,_0x3632b5){const _0x4287d0=a0_0x7c9815;return this[_0x4287d0(0x174)]+_0x4287d0(0x16a)+_0x29a48c+':'+_0x3632b5;}[a0_0x7c9815(0xc1)](_0x18434f,_0x46ef4c){const _0x56979b=a0_0x7c9815;return this[_0x56979b(0x174)]+_0x56979b(0xd8)+_0x18434f+':'+_0x46ef4c;}[a0_0x7c9815(0xdd)](_0x371377){const _0x9cc39b=a0_0x7c9815;return this[_0x9cc39b(0x174)]+_0x9cc39b(0x8b)+_0x371377;}['_buildActiveKey'](_0x1db70d,_0xa487b9){return this['keyPrefix']+'active:'+_0x1db70d+':'+_0xa487b9;}[a0_0x7c9815(0x15e)](_0x237287){const _0x3d5790=a0_0x7c9815;return this[_0x3d5790(0x174)]+'rsv:'+_0x237287;}[a0_0x7c9815(0x155)](_0x42a4b0,_0x5ca4c0){const _0x381b0d=a0_0x7c9815;return this[_0x381b0d(0x174)]+'rsv_idx:'+_0x42a4b0+':'+_0x5ca4c0;}['_buildReservationKeyPrefix'](){const _0x1d47f2=a0_0x7c9815;return this[_0x1d47f2(0x174)]+_0x1d47f2(0xc2);}['_buildIdemKey'](_0xdc611a,_0x4e9193,_0x4f11f8,_0x3f3365){const _0x5dd4b3=a0_0x7c9815,_0x5b04c9={'TKlit':'idgen'};if(_0x4f11f8)return idempotencyManager['buildDeterministicKey'](_0x5b04c9[_0x5dd4b3(0x188)],_0xdc611a,_0x4e9193+':'+_0x4f11f8+':'+_0x3f3365);return idempotencyManager[_0x5dd4b3(0xf8)](_0x5b04c9['TKlit'],_0xdc611a,_0x4e9193+':'+_0x3f3365);}['_getCounterTTL'](_0x3a19c3){return this['_counterTTLMap'][_0x3a19c3]||0x0;}['_formatNumber']({format:_0x48ec7b,prefix:_0x402533,datePrefix:_0xe9372d,separator:_0x2c818f,numDigits:_0x198ddf,counterInt:_0x506784}){const _0x4e5fed=a0_0x7c9815,_0x40c542={'YBAxG':_0x4e5fed(0x186),'kenZB':function(_0x5910a3,_0x3be9a3){return _0x5910a3(_0x3be9a3);},'blwHP':function(_0x432b1b,_0x339da3){return _0x432b1b===_0x339da3;},'aLmNX':'text'},_0x20cf94=Math[_0x4e5fed(0xb0)](0xa,_0x198ddf)-0x1;if(_0x506784>_0x20cf94)throw new IdGeneratorError(_0x40c542[_0x4e5fed(0x12e)],'Counter\x20overflow:\x20'+_0x506784+'\x20exceeds\x20'+_0x198ddf+_0x4e5fed(0xc9)+_0x20cf94+').\x20Increase\x20numDigits.',{'counterInt':_0x506784,'numDigits':_0x198ddf,'max':_0x20cf94});const _0x527b36=_0x40c542[_0x4e5fed(0xbb)](String,_0x506784)[_0x4e5fed(0xe6)](_0x198ddf,'0');if(_0x40c542['blwHP'](_0x48ec7b,_0x40c542['aLmNX']))return _0x402533?''+_0x402533+_0x2c818f+_0x527b36:_0x527b36;return _0x402533?''+_0x402533+_0x2c818f+_0xe9372d+_0x2c818f+_0x527b36:''+_0xe9372d+_0x2c818f+_0x527b36;}['_parseNumber']({format:_0x1a47f5,prefix:_0x45d7da,separator:_0x29550c,numDigits:_0x46774c,number:_0x37e3a4}){const _0x427ece=a0_0x7c9815,_0xd33ef={'gsKFf':function(_0x309141,_0x251634){return _0x309141!==_0x251634;},'slppY':function(_0x45c427,_0x79adaa){return _0x45c427===_0x79adaa;},'bpufv':'IDGEN_INVALID_NUMBER','xPTDA':function(_0x582624,_0xb5c035){return _0x582624||_0xb5c035;},'VRIGA':function(_0x2a9c80,_0x46468f){return _0x2a9c80!==_0x46468f;},'AkEMZ':function(_0xfae35d,_0x1a984d){return _0xfae35d!==_0x1a984d;},'lnCRW':_0x427ece(0x13e),'FKwUF':_0x427ece(0x19a),'BuQvk':function(_0x484cdd,_0x540646,_0x3315a8){return _0x484cdd(_0x540646,_0x3315a8);},'jhCeb':function(_0x51a98b,_0x3ef207){return _0x51a98b||_0x3ef207;},'kJlKj':_0x427ece(0xe1)};if(_0xd33ef['gsKFf'](typeof _0x37e3a4,_0x427ece(0x105))||_0xd33ef['slppY'](_0x37e3a4['length'],0x0))throw new IdGeneratorError(_0xd33ef['bpufv'],'Invalid\x20number:\x20must\x20be\x20non-empty\x20string');const _0x29d656=_0xd33ef[_0x427ece(0x17e)](_0x29550c,''),_0x14c34b=_0x29d656===''?[_0x37e3a4]:_0x37e3a4['split'](_0x29d656);let _0x11f62e='',_0x56b669;if(_0x1a47f5===_0x427ece(0xe1)){if(_0x45d7da){if(_0xd33ef[_0x427ece(0x184)](_0x14c34b[_0x427ece(0xbe)],0x2)||_0x14c34b[0x0]!==_0x45d7da)throw new IdGeneratorError(_0xd33ef[_0x427ece(0x8d)],_0x427ece(0x97)+_0x29d656+_0x427ece(0xd7)+_0x37e3a4+')');_0x56b669=_0x14c34b[0x1];}else{if(_0xd33ef['gsKFf'](_0x14c34b['length'],0x1))throw new IdGeneratorError(_0x427ece(0x1a0),_0x427ece(0x11f)+_0x37e3a4+')');_0x56b669=_0x14c34b[0x0];}}else{const _0x5af9e1=_0x45d7da?0x3:0x2;if(_0x14c34b['length']!==_0x5af9e1)throw new IdGeneratorError(_0x427ece(0x1a0),'Number\x20does\x20not\x20match\x20expected\x20format\x20(got:\x20'+_0x37e3a4+',\x20expected\x20'+_0x5af9e1+'\x20parts)');let _0x47db04=0x0;if(_0x45d7da){if(_0xd33ef[_0x427ece(0xb4)](_0x14c34b[_0x47db04],_0x45d7da))throw new IdGeneratorError(_0xd33ef['bpufv'],_0x427ece(0x1a3)+_0x45d7da+_0x427ece(0xe9)+_0x14c34b[_0x47db04]);_0x47db04++;}_0x11f62e=_0x14c34b[_0x47db04++];const _0x3e7bf5=_0xd33ef[_0x427ece(0x124)](_0x1a47f5,_0xd33ef[_0x427ece(0xd1)])?/^\d{4}$/:_0xd33ef['slppY'](_0x1a47f5,_0xd33ef[_0x427ece(0x18f)])?/^\d{6}$/:/^\d{8}$/;if(!_0x3e7bf5['test'](_0x11f62e))throw new IdGeneratorError(_0xd33ef['bpufv'],_0x427ece(0x11d)+_0x1a47f5+':\x20'+_0x11f62e);_0x56b669=_0x14c34b[_0x47db04];}if(!new RegExp(_0x427ece(0x117)+_0x46774c+'}$')[_0x427ece(0x94)](_0x56b669))throw new IdGeneratorError(_0x427ece(0x1a0),_0x427ece(0xeb)+_0x46774c+'\x20digits\x20(got:\x20'+_0x56b669+')');const _0x33f7e0=_0xd33ef['BuQvk'](parseInt,_0x56b669,0xa),_0x5d09f3=_0xd33ef['jhCeb'](_0x45d7da,'_');let _0x5bf9ff;return _0x1a47f5===_0xd33ef['kJlKj']?_0x5bf9ff=_0x5d09f3+_0x427ece(0xea):_0x5bf9ff=_0x5d09f3+'_'+_0x1a47f5+'_'+_0x11f62e,{'formatKey':_0x5bf9ff,'counterInt':_0x33f7e0,'datePrefix':_0x11f62e};}[a0_0x7c9815(0x17a)](_0x5c2891){const _0x3961b4=a0_0x7c9815;let _0x1e304b='';for(const _0x12a3fb of _0x5c2891){const _0x35b904=PLACEHOLDER_MAP[_0x12a3fb];if(_0x35b904){const _0x1dcc85=crypto['randomInt'](0x0,_0x35b904[_0x3961b4(0xbe)]);_0x1e304b+=_0x35b904[_0x1dcc85];}else _0x1e304b+=_0x12a3fb;}return _0x1e304b;}async['_retrieveIdemCache'](_0xc21067){const _0xb49751=a0_0x7c9815,_0x1abe7c={'XBaKh':'Idempotency\x20cache\x20HIT','YcbLX':'idgen_idem_retrieve_error'};if(!_0xc21067)return null;try{const _0x5d67f9=redisClient['getClient'](),_0x3660e6=await _0x5d67f9[_0xb49751(0xc7)](_0xc21067);if(_0x3660e6)return logger[_0xb49751(0x89)]({'event':'idgen_idem_hit','key':_0xc21067},_0x1abe7c[_0xb49751(0x172)]),JSON['parse'](_0x3660e6);return null;}catch(_0x6b454a){return logger[_0xb49751(0x9c)]({'event':_0x1abe7c['YcbLX'],'error':_0x6b454a['message']},'Idempotency\x20retrieve\x20error'),null;}}async['_storeIdemCache'](_0x22e8e8,_0x225271){const _0x22e9f3=a0_0x7c9815,_0x331517={'HLIgC':_0x22e9f3(0xc0)};if(!_0x22e8e8)return;try{const _0x2042a8=redisClient[_0x22e9f3(0x163)]();await _0x2042a8[_0x22e9f3(0xec)](_0x22e8e8,this['idemTTL'],JSON['stringify'](_0x225271));}catch(_0x5b4e75){logger['warn']({'event':'idgen_idem_store_error','error':_0x5b4e75['message']},_0x331517[_0x22e9f3(0x128)]);}}async[a0_0x7c9815(0x10c)](_0x7e3a9e,_0x14d7cb){const _0x3c4fa2=a0_0x7c9815,_0x3b4211={'pzmYp':_0x3c4fa2(0xfa),'YaTZO':_0x3c4fa2(0x103),'JYgZe':'Idempotency\x20SET\x20NX\x20error'};if(!_0x7e3a9e)return{'stored':!![],'winnerResult':null};try{const _0x35dc9a=redisClient[_0x3c4fa2(0x163)](),_0x3aeb2c=JSON[_0x3c4fa2(0x171)](_0x14d7cb),_0x58557f=await _0x35dc9a['set'](_0x7e3a9e,_0x3aeb2c,'EX',this[_0x3c4fa2(0x185)],'NX');if(_0x58557f==='OK')return{'stored':!![],'winnerResult':null};const _0x180db7=await _0x35dc9a['get'](_0x7e3a9e);if(_0x180db7)return{'stored':![],'winnerResult':JSON[_0x3c4fa2(0x149)](_0x180db7)};return logger['warn']({'event':_0x3b4211['pzmYp'],'key':_0x7e3a9e},_0x3b4211['YaTZO']),{'stored':!![],'winnerResult':null};}catch(_0xb7d0b4){return logger['warn']({'event':'idgen_idem_storenx_error','error':_0xb7d0b4['message']},_0x3b4211[_0x3c4fa2(0xf4)]),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x5be92d,_0x44e94b,_0x1b4071){const _0x1c918b=a0_0x7c9815,_0x424f6e={'zeXPe':_0x1c918b(0xa9)};try{const _0x262b02=redisClient[_0x1c918b(0x163)]();if(_0x1b4071){const _0x5a62f2=this['_buildActiveKey'](_0x5be92d,_0x44e94b);await _0x262b02[_0x1c918b(0x165)](_0x5a62f2);}else{const _0x42c625=this['_buildIssuedKey'](_0x5be92d);await _0x262b02['srem'](_0x42c625,_0x44e94b);}}catch(_0x285d0f){logger[_0x1c918b(0x9c)]({'event':'idgen_random_undo_error','error':_0x285d0f[_0x1c918b(0x100)]},_0x424f6e['zeXPe']);}}async['_updateMeta'](_0x3529ce,_0x36ac13,_0x1fef0d,_0x51e660=0x0){const _0x53f874=a0_0x7c9815,_0x464fc3={'tigsd':function(_0x4ba72f,_0x5c5156){return _0x4ba72f>_0x5c5156;},'QRTJY':'idgen_meta_update_error','rVfle':'Meta\x20update\x20error'};try{const _0x48400f=redisClient['getClient'](),_0x267d13=this[_0x53f874(0xc1)](_0x3529ce,_0x36ac13),_0x3c2f3e=[];for(const [_0x2f7d03,_0x2c55a8]of Object['entries'](_0x1fef0d)){_0x3c2f3e['push'](_0x2f7d03,String(_0x2c55a8));}if(_0x464fc3[_0x53f874(0x9b)](_0x3c2f3e['length'],0x0)){await _0x48400f['hset'](_0x267d13,..._0x3c2f3e);if(_0x51e660>0x0)await _0x48400f['expire'](_0x267d13,_0x51e660);}}catch(_0x4aafe3){logger['warn']({'event':_0x464fc3['QRTJY'],'error':_0x4aafe3[_0x53f874(0x100)]},_0x464fc3['rVfle']);}}async[a0_0x7c9815(0x10d)](_0xffd377){const _0xfdcf99=a0_0x7c9815,_0x471dcc={'MIQZg':'number','iDZtT':function(_0x26e6f6,_0x1e2296){return _0x26e6f6(_0x1e2296);},'LHfpc':'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser','sNsYR':_0xfdcf99(0xac),'SpkbO':'idgen_number_generated'};if(!this[_0xfdcf99(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0xfdcf99(0x134));const _0x4704ea=this[_0xfdcf99(0xc3)](_0xffd377),_0x510445=this['_validateIdempotencyKey'](_0xffd377['idempotencyKey']),{resource:_0x55c804,format:_0x411643,prefix:_0x1d586b,separator:_0x2377ee,numDigits:_0x57764b,reuseDelete:_0xbc63a6}=_0x4704ea,{formatKey:_0x53a431,datePrefix:_0x585994}=this[_0xfdcf99(0xf0)](_0x411643,_0x1d586b),_0x27b83d=this['_buildSeqKey'](_0x55c804,_0x53a431),_0x2027b9=this['_buildReuseKey'](_0x55c804,_0x53a431),_0xb2fbf9=this[_0xfdcf99(0x159)](_0x411643);let _0x107f4c=null;if(_0x510445){_0x107f4c=this[_0xfdcf99(0x16b)](_0x471dcc[_0xfdcf99(0xe2)],_0x55c804,_0x53a431,_0x510445);const _0xb3864b=await this['_retrieveIdemCache'](_0x107f4c);if(_0xb3864b)return _0xb3864b;}const _0x531ce9=redisClient[_0xfdcf99(0x163)](),_0x3f09ef=await _0x531ce9['eval'](LUA_GENERATE_NUMBER,0x2,_0x27b83d,_0x2027b9,_0xbc63a6?'1':'0',String(_0xb2fbf9)),_0x1ec31f=_0x3f09ef[0x0],_0x30bf97=_0x3f09ef[0x1]===0x1,_0x537c3b=this[_0xfdcf99(0x101)]({'format':_0x411643,'prefix':_0x1d586b,'datePrefix':_0x585994,'separator':_0x2377ee,'numDigits':_0x57764b,'counterInt':_0x1ec31f}),_0x499010={'value':_0x537c3b,'counter':_0x1ec31f,'resource':_0x55c804,'formatKey':_0x53a431,'isReused':_0x30bf97,'generatedAt':new Date()['toISOString']()},_0x335c68=await this[_0xfdcf99(0x10c)](_0x107f4c,_0x499010);if(!_0x335c68[_0xfdcf99(0x193)]){try{await _0x531ce9[_0xfdcf99(0x8e)](LUA_RELEASE_NUMBER,0x1,_0x2027b9,String(_0x1ec31f),_0x471dcc['iDZtT'](String,_0xb2fbf9));}catch(_0x144fb4){logger['warn']({'event':_0xfdcf99(0x137),'error':_0x144fb4['message'],'resource':_0x55c804,'formatKey':_0x53a431,'counterInt':_0x1ec31f},_0x471dcc['LHfpc']);}return logger[_0xfdcf99(0x89)]({'event':_0x471dcc['sNsYR'],'resource':_0x55c804,'formatKey':_0x53a431,'counter':_0x1ec31f},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x335c68['winnerResult'];}return this['_updateMeta'](_0x55c804,_0x53a431,{'lastValue':_0x537c3b,'lastCounter':_0x1ec31f,'lastIsReused':_0x30bf97,'lastGeneratedAt':_0x499010[_0xfdcf99(0x18b)]},_0xb2fbf9),logger[_0xfdcf99(0x89)]({'event':_0x471dcc[_0xfdcf99(0x143)],'resource':_0x55c804,'formatKey':_0x53a431,'counter':_0x1ec31f,'isReused':_0x30bf97},'ID\x20Generator\x20number:\x20'+_0x537c3b),_0x499010;}async['releaseNumber'](_0x4b0bf4){const _0x33f355=a0_0x7c9815,_0xbea464={'yMagg':'ID\x20Generator\x20is\x20disabled','QStRb':function(_0x420de0,_0x3c1ecb){return _0x420de0!==_0x3c1ecb;},'QebRs':function(_0x3ab31e,_0x2927a5){return _0x3ab31e!==_0x2927a5;},'Ycvok':function(_0x4f60d4,_0x1e172c){return _0x4f60d4<_0x1e172c;},'qCnss':'IDGEN_INVALID_NUMBER','NyIVO':'text','jiUwX':'release'};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0xbea464['yMagg']);let _0x5ddeae,_0x141a9f,_0x389e9b,_0x1a0713;const _0x273397=this[_0x33f355(0x13d)](_0x4b0bf4['idempotencyKey']);if(_0xbea464[_0x33f355(0xca)](_0x4b0bf4[_0x33f355(0x1a2)],undefined)&&_0x4b0bf4[_0x33f355(0x1a2)]!==null){this['_validateResource'](_0x4b0bf4['resource']),_0x5ddeae=_0x4b0bf4['resource'];if(_0xbea464[_0x33f355(0xa1)](typeof _0x4b0bf4[_0x33f355(0x158)],_0x33f355(0x105))||_0x4b0bf4[_0x33f355(0x158)]['length']===0x0)throw new IdGeneratorError(_0x33f355(0x1a0),'formatKey\x20is\x20required\x20in\x20low-level\x20release');_0x141a9f=_0x4b0bf4[_0x33f355(0x158)];if(!Number[_0x33f355(0xc4)](_0x4b0bf4['counterInt'])||_0xbea464[_0x33f355(0xb7)](_0x4b0bf4[_0x33f355(0x1a2)],0x1))throw new IdGeneratorError(_0xbea464[_0x33f355(0x16f)],_0x33f355(0x153)+_0x4b0bf4[_0x33f355(0x1a2)]+')');_0x389e9b=_0x4b0bf4[_0x33f355(0x1a2)];const _0x33e83c=_0x141a9f['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x1a0713=_0x33e83c?_0x33e83c[0x1]:_0xbea464['NyIVO'];}else{const _0x1a1f5b=this['_validateNumberParams'](_0x4b0bf4),_0x4e3f5b=this[_0x33f355(0xa0)]({'format':_0x1a1f5b[_0x33f355(0x15a)],'prefix':_0x1a1f5b[_0x33f355(0x129)],'separator':_0x1a1f5b[_0x33f355(0x18a)],'numDigits':_0x1a1f5b[_0x33f355(0x18e)],'number':_0x4b0bf4['number']});_0x5ddeae=_0x1a1f5b['resource'],_0x141a9f=_0x4e3f5b['formatKey'],_0x389e9b=_0x4e3f5b[_0x33f355(0x1a2)],_0x1a0713=_0x1a1f5b['format'];}const _0x5a7304=this[_0x33f355(0x115)](_0x5ddeae,_0x141a9f),_0x3903a6=this[_0x33f355(0x159)](_0x1a0713);let _0x4395ed=null;if(_0x273397){_0x4395ed=this['_buildIdemKey'](_0xbea464['jiUwX'],_0x5ddeae,_0x141a9f,_0x273397);const _0x27f226=await this['_retrieveIdemCache'](_0x4395ed);if(_0x27f226)return _0x27f226;}const _0x4064e9=redisClient[_0x33f355(0x163)]();await _0x4064e9[_0x33f355(0x8e)](LUA_RELEASE_NUMBER,0x1,_0x5a7304,String(_0x389e9b),String(_0x3903a6));const _0xcb9ad0={'released':!![],'resource':_0x5ddeae,'formatKey':_0x141a9f,'counter':_0x389e9b,'releasedAt':new Date()[_0x33f355(0xe7)]()};return await this[_0x33f355(0x11a)](_0x4395ed,_0xcb9ad0),this[_0x33f355(0x9f)](_0x5ddeae,_0x141a9f,{'lastReleasedCounter':_0x389e9b,'lastReleasedAt':_0xcb9ad0[_0x33f355(0x125)]},_0x3903a6),logger[_0x33f355(0x89)]({'event':_0x33f355(0x120),'resource':_0x5ddeae,'formatKey':_0x141a9f,'counter':_0x389e9b},'ID\x20Generator\x20number\x20released:\x20'+_0x389e9b),_0xcb9ad0;}async['reserveNumber'](_0x2a3e5c){const _0x3231d2=a0_0x7c9815,_0x131b0b={'WegMt':_0x3231d2(0x134),'vfITy':function(_0x1431a0,_0x484ddd){return _0x1431a0*_0x484ddd;},'grCkg':'resource','oAnfg':'formatKey','AxyfX':'format','KXfiT':_0x3231d2(0x18a),'ckfET':function(_0x1bccf3,_0x26fad2){return _0x1bccf3(_0x26fad2);},'HDiSP':'expiresAt','woKEb':function(_0x653f5e,_0x5a639c){return _0x653f5e(_0x5a639c);},'OyYyP':function(_0x3c4e7a,_0x24cdd2){return _0x3c4e7a(_0x24cdd2);},'WLqji':_0x3231d2(0x160),'RzESA':'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow','imIOE':_0x3231d2(0xbf),'BCbMg':function(_0x2cb081,_0x2b80c0){return _0x2cb081(_0x2b80c0);},'tvxSl':_0x3231d2(0x8a),'TnbAo':_0x3231d2(0x156)};if(!this[_0x3231d2(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0x131b0b['WegMt']);const _0x386378=this[_0x3231d2(0xc3)](_0x2a3e5c),_0x32d1d8=this[_0x3231d2(0x196)](_0x2a3e5c['ttl']),_0x3c2b83=this['_validateIdempotencyKey'](_0x2a3e5c['idempotencyKey']),{resource:_0x21318e,format:_0x3cf036,prefix:_0x1b0fd7,separator:_0x2740f3,numDigits:_0x5b39d1,reuseDelete:_0x101532}=_0x386378,{formatKey:_0x30e8ed,datePrefix:_0x5bdbcb}=this[_0x3231d2(0xf0)](_0x3cf036,_0x1b0fd7),_0x25bbee=this[_0x3231d2(0xb3)](_0x21318e,_0x30e8ed),_0x8aa18f=this['_buildReuseKey'](_0x21318e,_0x30e8ed),_0x37c5c2=this[_0x3231d2(0x155)](_0x21318e,_0x30e8ed),_0x5613af=this[_0x3231d2(0x159)](_0x3cf036);let _0x33c3b0=null;if(_0x3c2b83){_0x33c3b0=this['_buildIdemKey'](_0x3231d2(0x180),_0x21318e,_0x30e8ed,_0x3c2b83);const _0x5ad38c=await this['_retrieveIdemCache'](_0x33c3b0);if(_0x5ad38c)return _0x5ad38c;}const _0x3c9257=crypto['randomUUID'](),_0x4a0a9b=this[_0x3231d2(0x15e)](_0x3c9257),_0x3ef1cc=this[_0x3231d2(0xc6)](),_0x1c90d0=Date[_0x3231d2(0x116)](),_0x17d091=_0x1c90d0+_0x131b0b['vfITy'](_0x32d1d8,0x3e8),_0x4b2d1c=_0x131b0b['vfITy'](_0x32d1d8,0x3e8),_0x41c0b2=new Date(_0x1c90d0)['toISOString'](),_0x3f508a=new Date(_0x17d091)['toISOString'](),_0x4dd802=[_0x131b0b[_0x3231d2(0x198)],_0x21318e,_0x131b0b[_0x3231d2(0x14f)],_0x30e8ed,_0x131b0b[_0x3231d2(0xad)],_0x3cf036,'prefix',_0x1b0fd7,_0x131b0b['KXfiT'],_0x2740f3,'numDigits',_0x131b0b[_0x3231d2(0x19c)](String,_0x5b39d1),'datePrefix',_0x5bdbcb||'',_0x3231d2(0x199),_0x41c0b2,_0x131b0b[_0x3231d2(0x142)],_0x3f508a,_0x3231d2(0x111),_0x131b0b['ckfET'](String,_0x4b2d1c)];_0x3c2b83&&_0x4dd802[_0x3231d2(0x181)]('idemKey',_0x3c2b83);const _0x2a727c=redisClient[_0x3231d2(0x163)](),_0x3367f2=await _0x2a727c['eval'](LUA_RESERVE_NUMBER,0x3,_0x25bbee,_0x8aa18f,_0x37c5c2,_0x101532?'1':'0',String(_0x5613af),_0x3c9257,_0x4a0a9b,_0x131b0b['woKEb'](String,_0x4b2d1c),String(_0x17d091),String(_0x1c90d0),_0x3ef1cc,..._0x4dd802),_0x134623=_0x3367f2[0x0],_0x4902b6=_0x3367f2[0x1]===0x1,_0xefd5fa=_0x3367f2[0x2]||0x0;let _0x41e662;try{_0x41e662=this['_formatNumber']({'format':_0x3cf036,'prefix':_0x1b0fd7,'datePrefix':_0x5bdbcb,'separator':_0x2740f3,'numDigits':_0x5b39d1,'counterInt':_0x134623});}catch(_0x6dac86){try{await _0x2a727c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x4a0a9b,_0x37c5c2,_0x8aa18f,_0x3c9257,_0x131b0b[_0x3231d2(0x14e)](String,_0x5613af));}catch(_0xf81263){logger[_0x3231d2(0x9c)]({'event':_0x131b0b[_0x3231d2(0x16d)],'error':_0xf81263[_0x3231d2(0x100)],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},_0x131b0b['RzESA']);}throw _0x6dac86;}try{await _0x2a727c[_0x3231d2(0x127)](_0x4a0a9b,'value',_0x41e662);}catch(_0x2dd316){logger['warn']({'event':_0x131b0b[_0x3231d2(0xab)],'error':_0x2dd316['message'],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},'Failed\x20to\x20persist\x20formatted\x20value\x20to\x20reservation\x20hash');}const _0xc816b1={'token':_0x3c9257,'value':_0x41e662,'counter':_0x134623,'resource':_0x21318e,'formatKey':_0x30e8ed,'isReused':_0x4902b6,'createdAt':_0x41c0b2,'expiresAt':_0x3f508a,'reapedCount':_0xefd5fa},_0x56b44a=await this['_storeIdemCacheNX'](_0x33c3b0,_0xc816b1);if(!_0x56b44a[_0x3231d2(0x193)]){try{await _0x2a727c['eval'](LUA_CANCEL_RESERVATION,0x3,_0x4a0a9b,_0x37c5c2,_0x8aa18f,_0x3c9257,_0x131b0b['BCbMg'](String,_0x5613af));}catch(_0x485b6b){logger[_0x3231d2(0x9c)]({'event':_0x131b0b[_0x3231d2(0x179)],'error':_0x485b6b[_0x3231d2(0x100)],'resource':_0x21318e,'formatKey':_0x30e8ed,'counterInt':_0x134623,'token':_0x3c9257},_0x131b0b['TnbAo']);}return logger['info']({'event':_0x3231d2(0x182),'resource':_0x21318e,'formatKey':_0x30e8ed,'counter':_0x134623,'token':_0x3c9257},_0x3231d2(0x96)),_0x56b44a['winnerResult'];}return this['_updateMeta'](_0x21318e,_0x30e8ed,{'lastReservedCounter':_0x134623,'lastReservedAt':_0x41c0b2,'lastReapedCount':_0xefd5fa},_0x5613af),logger[_0x3231d2(0x89)]({'event':'idgen_number_reserved','resource':_0x21318e,'formatKey':_0x30e8ed,'counter':_0x134623,'isReused':_0x4902b6,'token':_0x3c9257,'ttl':_0x32d1d8,'reapedCount':_0xefd5fa},'ID\x20Generator\x20number\x20reserved:\x20'+_0x41e662+_0x3231d2(0x150)+_0x3c9257+')'),_0xc816b1;}async['confirmReservation'](_0x3eda56){const _0xaf9519=a0_0x7c9815,_0x485a8a={'zfIna':'idgen','QQXGI':'reserve_confirm','QQndv':'idgen_reservation_confirmed'};if(!this[_0xaf9519(0x14b)])throw new IdGeneratorError(_0xaf9519(0x130),_0xaf9519(0xaf));const _0x491dfb=this[_0xaf9519(0x183)](_0x3eda56&&_0x3eda56['token']),_0x2055ea=this[_0xaf9519(0x13d)](_0x3eda56&&_0x3eda56[_0xaf9519(0x164)]);let _0x5e4a1b=null;if(_0x2055ea){_0x5e4a1b=idempotencyManager['buildDeterministicKey'](_0x485a8a['zfIna'],_0x485a8a['QQXGI'],_0x491dfb+':'+_0x2055ea);const _0x1da15f=await this[_0xaf9519(0xc5)](_0x5e4a1b);if(_0x1da15f)return _0x1da15f;}const _0x16b8f1=await this['_getReservationContext'](_0x491dfb),_0x5e0c78=redisClient[_0xaf9519(0x163)](),_0x65835e=await _0x5e0c78[_0xaf9519(0x8e)](LUA_CONFIRM_RESERVATION,0x2,_0x16b8f1['rsvKey'],_0x16b8f1['rsvIdxKey'],_0x491dfb);if(!_0x65835e||_0x65835e[0x0]!==0x1)throw new IdGeneratorError(_0xaf9519(0x139),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x491dfb,{'token':_0x491dfb});const _0x463f45=parseInt(_0x65835e[0x1],0xa),_0x1aecf2=_0x65835e[0x2],_0x37315b=_0x65835e[0x3],_0x1209b9=new Date()['toISOString'](),_0x4ff650={'confirmed':!![],'token':_0x491dfb,'value':_0x1aecf2,'counter':_0x463f45,'resource':_0x16b8f1[_0xaf9519(0xd0)],'formatKey':_0x37315b,'confirmedAt':_0x1209b9};await this[_0xaf9519(0x11a)](_0x5e4a1b,_0x4ff650);const _0xef1c6c=_0x37315b[_0xaf9519(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x1ed211=_0xef1c6c?_0xef1c6c[0x1]:_0xaf9519(0xe1),_0x42338b=this[_0xaf9519(0x159)](_0x1ed211);return this['_updateMeta'](_0x16b8f1[_0xaf9519(0xd0)],_0x37315b,{'lastConfirmedCounter':_0x463f45,'lastConfirmedAt':_0x1209b9},_0x42338b),logger[_0xaf9519(0x89)]({'event':_0x485a8a[_0xaf9519(0x113)],'resource':_0x16b8f1[_0xaf9519(0xd0)],'formatKey':_0x37315b,'counter':_0x463f45,'token':_0x491dfb},_0xaf9519(0xb6)+_0x1aecf2+'\x20(token='+_0x491dfb+')'),_0x4ff650;}async[a0_0x7c9815(0x123)](_0x5cb586){const _0x11cef3=a0_0x7c9815,_0x4f2961={'WUFyT':_0x11cef3(0x130),'JVREX':_0x11cef3(0xaf),'UjcEt':'idgen','Ujyfg':'text','DZMRE':function(_0x259f01,_0x45a1fa){return _0x259f01(_0x45a1fa);},'clWdY':function(_0x43723d,_0x152eb7){return _0x43723d!==_0x152eb7;},'tyGAW':'idgen_reservation_cancelled'};if(!this[_0x11cef3(0x14b)])throw new IdGeneratorError(_0x4f2961[_0x11cef3(0x190)],_0x4f2961[_0x11cef3(0x99)]);const _0x7be4b=this[_0x11cef3(0x183)](_0x5cb586&&_0x5cb586['token']),_0x439a36=this[_0x11cef3(0x13d)](_0x5cb586&&_0x5cb586[_0x11cef3(0x164)]);let _0x21b3eb=null;if(_0x439a36){_0x21b3eb=idempotencyManager['buildDeterministicKey'](_0x4f2961[_0x11cef3(0x10f)],_0x11cef3(0x122),_0x7be4b+':'+_0x439a36);const _0x4e1490=await this['_retrieveIdemCache'](_0x21b3eb);if(_0x4e1490)return _0x4e1490;}const _0x5a7ad6=await this['_getReservationContext'](_0x7be4b),_0x28fbd4=this[_0x11cef3(0x115)](_0x5a7ad6[_0x11cef3(0xd0)],_0x5a7ad6[_0x11cef3(0x158)]),_0x63b189=_0x5a7ad6['formatKey'][_0x11cef3(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3e6da9=_0x63b189?_0x63b189[0x1]:_0x4f2961[_0x11cef3(0x8c)],_0x14f85f=this[_0x11cef3(0x159)](_0x3e6da9),_0x215692=redisClient[_0x11cef3(0x163)](),_0x1304aa=await _0x215692['eval'](LUA_CANCEL_RESERVATION,0x3,_0x5a7ad6[_0x11cef3(0xe8)],_0x5a7ad6[_0x11cef3(0x170)],_0x28fbd4,_0x7be4b,_0x4f2961['DZMRE'](String,_0x14f85f));if(!_0x1304aa||_0x4f2961['clWdY'](_0x1304aa[0x0],0x1))throw new IdGeneratorError(_0x11cef3(0x139),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x7be4b,{'token':_0x7be4b});const _0x53e35f=parseInt(_0x1304aa[0x1],0xa),_0x21e5ea=_0x1304aa[0x2],_0x1d04ec=_0x1304aa[0x3],_0x28dcca=new Date()[_0x11cef3(0xe7)](),_0x45678d={'cancelled':!![],'token':_0x7be4b,'value':_0x21e5ea,'counter':_0x53e35f,'resource':_0x5a7ad6['resource'],'formatKey':_0x1d04ec,'releasedToReuse':!![],'cancelledAt':_0x28dcca};return await this[_0x11cef3(0x11a)](_0x21b3eb,_0x45678d),this[_0x11cef3(0x9f)](_0x5a7ad6['resource'],_0x1d04ec,{'lastCancelledCounter':_0x53e35f,'lastCancelledAt':_0x28dcca},_0x14f85f),logger['info']({'event':_0x4f2961[_0x11cef3(0x118)],'resource':_0x5a7ad6[_0x11cef3(0xd0)],'formatKey':_0x1d04ec,'counter':_0x53e35f,'token':_0x7be4b},'ID\x20Generator\x20reservation\x20cancelled:\x20'+_0x21e5ea+_0x11cef3(0x150)+_0x7be4b+')'),_0x45678d;}async[a0_0x7c9815(0x14d)](_0x4fe889){const _0x534fb5=a0_0x7c9815,_0x4adf87={'Jeydq':'reserve_extend','cQBnJ':function(_0x1019bf,_0x1a4532){return _0x1019bf(_0x1a4532);},'AAMpD':function(_0x4f5459,_0x1b5e67){return _0x4f5459!==_0x1b5e67;},'NBbUM':_0x534fb5(0x107)};if(!this['enabled'])throw new IdGeneratorError(_0x534fb5(0x130),_0x534fb5(0xaf));const _0x27ac16=this['_validateReservationToken'](_0x4fe889&&_0x4fe889[_0x534fb5(0x110)]),_0x42ea6e=this['_validateReserveTTL'](_0x4fe889&&_0x4fe889[_0x534fb5(0xcf)]),_0x3ed36b=this[_0x534fb5(0x13d)](_0x4fe889&&_0x4fe889['idempotencyKey']);let _0x40f8b4=null;if(_0x3ed36b){_0x40f8b4=idempotencyManager[_0x534fb5(0xf8)](_0x534fb5(0x9a),_0x4adf87[_0x534fb5(0x98)],_0x27ac16+':'+_0x3ed36b);const _0xed4cdc=await this[_0x534fb5(0xc5)](_0x40f8b4);if(_0xed4cdc)return _0xed4cdc;}const _0x308296=await this[_0x534fb5(0xf9)](_0x27ac16),_0x36701c=Date['now'](),_0x3a24db=_0x36701c+_0x42ea6e*0x3e8,_0x573523=_0x42ea6e*0x3e8,_0xb71724=new Date(_0x3a24db)['toISOString'](),_0x3f5308=redisClient[_0x534fb5(0x163)](),_0x244d6e=await _0x3f5308[_0x534fb5(0x8e)](LUA_EXTEND_RESERVATION,0x2,_0x308296['rsvKey'],_0x308296[_0x534fb5(0x170)],_0x27ac16,_0x4adf87['cQBnJ'](String,_0x573523),String(_0x3a24db),_0xb71724);if(!_0x244d6e||_0x4adf87['AAMpD'](_0x244d6e[0x0],0x1))throw new IdGeneratorError('IDGEN_RESERVATION_NOT_FOUND','Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x27ac16,{'token':_0x27ac16});const _0x3a29c5=_0x244d6e[0x1],_0x84d0c2=parseInt(_0x244d6e[0x2],0xa),_0x5245be=_0x244d6e[0x3],_0x239e7c=_0x244d6e[0x4],_0x11739c=new Date(_0x36701c)['toISOString'](),_0x2f5572={'extended':!![],'token':_0x27ac16,'previousExpiresAt':_0x3a29c5,'expiresAt':_0xb71724,'ttlMs':_0x573523,'resource':_0x308296['resource'],'formatKey':_0x239e7c,'counter':_0x84d0c2,'value':_0x5245be,'extendedAt':_0x11739c};await this[_0x534fb5(0x11a)](_0x40f8b4,_0x2f5572);const _0x346a4f=_0x239e7c[_0x534fb5(0x136)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x28894d=_0x346a4f?_0x346a4f[0x1]:_0x534fb5(0xe1),_0x2f9517=this['_getCounterTTL'](_0x28894d);return this['_updateMeta'](_0x308296[_0x534fb5(0xd0)],_0x239e7c,{'lastExtendedCounter':_0x84d0c2,'lastExtendedAt':_0x11739c},_0x2f9517),logger['info']({'event':_0x4adf87['NBbUM'],'resource':_0x308296['resource'],'formatKey':_0x239e7c,'counter':_0x84d0c2,'token':_0x27ac16,'ttl':_0x42ea6e},_0x534fb5(0xb9)+_0x5245be+_0x534fb5(0x150)+_0x27ac16+_0x534fb5(0x166)+_0x42ea6e+'s)'),_0x2f5572;}async[a0_0x7c9815(0xaa)](_0x1653d4){const _0x3b4f99=a0_0x7c9815,_0x57a61c={'mPfnq':function(_0x42fb7c,_0x43ce87,_0x256fee){return _0x42fb7c(_0x43ce87,_0x256fee);},'bBias':function(_0x10a368,_0x2329f5,_0x252c92){return _0x10a368(_0x2329f5,_0x252c92);},'iHqFW':function(_0x5ef1a8,_0x285189){return _0x5ef1a8===_0x285189;},'vxIpp':function(_0x1f9d72,_0x59bc00){return _0x1f9d72>=_0x59bc00;}};if(!this[_0x3b4f99(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED','ID\x20Generator\x20is\x20disabled');const _0x47f161=this[_0x3b4f99(0x183)](_0x1653d4&&_0x1653d4['token']),_0xaf837f=this['_buildReservationKey'](_0x47f161),_0x564dab=redisClient['getClient'](),_0x508450=_0x564dab[_0x3b4f99(0xd2)]();_0x508450[_0x3b4f99(0x11c)](_0xaf837f),_0x508450['pttl'](_0xaf837f);const _0x427d54=await _0x508450['exec'](),_0x9a9ed0=_0x427d54&&_0x427d54[0x0]&&_0x427d54[0x0][0x1],_0x132761=_0x427d54&&_0x427d54[0x1]&&_0x427d54[0x1][0x1];if(!_0x9a9ed0||Object['keys'](_0x9a9ed0)[_0x3b4f99(0xbe)]===0x0)throw new IdGeneratorError(_0x3b4f99(0x139),_0x3b4f99(0x10b)+_0x47f161,{'token':_0x47f161});return{'token':_0x47f161,'resource':_0x9a9ed0[_0x3b4f99(0xd0)]||null,'formatKey':_0x9a9ed0['formatKey']||null,'format':_0x9a9ed0[_0x3b4f99(0x15a)]||null,'prefix':_0x9a9ed0[_0x3b4f99(0x129)]||'','separator':_0x9a9ed0[_0x3b4f99(0x18a)]||'','numDigits':_0x9a9ed0[_0x3b4f99(0x18e)]?_0x57a61c['mPfnq'](parseInt,_0x9a9ed0[_0x3b4f99(0x18e)],0xa):null,'datePrefix':_0x9a9ed0[_0x3b4f99(0x14a)]||'','counter':_0x9a9ed0['counter']?_0x57a61c[_0x3b4f99(0xfe)](parseInt,_0x9a9ed0['counter'],0xa):null,'value':_0x9a9ed0[_0x3b4f99(0x93)]||null,'isReused':_0x57a61c['iHqFW'](_0x9a9ed0[_0x3b4f99(0x161)],'1')||_0x57a61c[_0x3b4f99(0xde)](_0x9a9ed0['isReused'],0x1),'createdAt':_0x9a9ed0['createdAt']||null,'expiresAt':_0x9a9ed0['expiresAt']||null,'ttlRemainingMs':typeof _0x132761==='number'&&_0x57a61c['vxIpp'](_0x132761,0x0)?_0x132761:null};}async['_getReservationContext'](_0x47aa8a){const _0x420514=a0_0x7c9815,_0x2a1358={'SVNhw':function(_0xef1402,_0x5f60a4){return _0xef1402||_0x5f60a4;},'yCWTJ':_0x420514(0x139)},_0x31a396=this['_buildReservationKey'](_0x47aa8a),_0xa9424e=redisClient['getClient'](),_0x3fd8f7=await _0xa9424e['hmget'](_0x31a396,_0x420514(0xd0),'formatKey'),_0x481359=_0x3fd8f7&&_0x3fd8f7[0x0],_0x40cc73=_0x3fd8f7&&_0x3fd8f7[0x1];if(_0x2a1358['SVNhw'](!_0x481359,!_0x40cc73))throw new IdGeneratorError(_0x2a1358['yCWTJ'],'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x47aa8a,{'token':_0x47aa8a});return{'resource':_0x481359,'formatKey':_0x40cc73,'rsvKey':_0x31a396,'rsvIdxKey':this[_0x420514(0x155)](_0x481359,_0x40cc73)};}async['random'](_0x12543c){const _0x222faf=a0_0x7c9815,_0x4acf53={'yqFdW':'ID\x20Generator\x20is\x20disabled','QFzBz':_0x222faf(0xdf),'TjBso':function(_0x53af48,_0x4b7bc0){return _0x53af48===_0x4b7bc0;},'geBBi':function(_0x13faec,_0x334cf1){return _0x13faec===_0x334cf1;},'DODkJ':_0x222faf(0x144),'CnyrB':function(_0x52522c,_0x58e50c){return _0x52522c&&_0x58e50c;},'WjfQZ':function(_0x105d51,_0x47cc56){return _0x105d51+_0x47cc56;},'gMzoD':function(_0x46517d,_0x2049e7){return _0x46517d*_0x2049e7;},'AfRBb':_0x222faf(0xd5)};if(!this[_0x222faf(0x14b)])throw new IdGeneratorError('IDGEN_DISABLED',_0x4acf53['yqFdW']);this[_0x222faf(0xed)](_0x12543c[_0x222faf(0xd0)]),this[_0x222faf(0x114)](_0x12543c[_0x222faf(0x17b)]);const _0x3eb287=this['_validateTTL'](_0x12543c[_0x222faf(0xcf)]),_0x583107=this[_0x222faf(0xef)](_0x12543c['maxRetry']),_0x5d8a9d=this['_validateIdempotencyKey'](_0x12543c[_0x222faf(0x164)]),_0x337ac0=_0x12543c['ensureUnique']===!![],{resource:_0x5b3e81,pattern:_0x3d06ff}=_0x12543c;let _0x4e047f=null;if(_0x5d8a9d){_0x4e047f=this[_0x222faf(0x16b)](_0x4acf53[_0x222faf(0x133)],_0x5b3e81,null,_0x5d8a9d);const _0x21201b=await this['_retrieveIdemCache'](_0x4e047f);if(_0x21201b)return _0x21201b;}const _0x178374=redisClient['getClient']();let _0x28a763=null,_0xf9d440=0x0;if(!_0x337ac0)_0x28a763=this[_0x222faf(0x17a)](_0x3d06ff),_0xf9d440=0x1;else{for(let _0x1f7fae=0x0;_0x1f7fae<_0x583107;_0x1f7fae++){_0xf9d440++;const _0x5b9e94=this['_generateFromPattern'](_0x3d06ff);if(_0x3eb287){const _0x307b34=this[_0x222faf(0xa2)](_0x5b3e81,_0x5b9e94),_0x65de43=await _0x178374['set'](_0x307b34,'1','EX',_0x3eb287,'NX');if(_0x4acf53[_0x222faf(0xf1)](_0x65de43,'OK')){_0x28a763=_0x5b9e94;break;}}else{const _0x32cfbb=this['_buildIssuedKey'](_0x5b3e81),_0x13f3f4=await _0x178374[_0x222faf(0xba)](_0x32cfbb,_0x5b9e94);if(_0x4acf53[_0x222faf(0xf1)](_0x13f3f4,0x1)){_0x28a763=_0x5b9e94;break;}}}if(_0x4acf53[_0x222faf(0x112)](_0x28a763,null))throw new IdGeneratorError(_0x4acf53['DODkJ'],'Could\x20not\x20generate\x20unique\x20value\x20after\x20'+_0x583107+'\x20attempts.\x20Increase\x20pattern\x20length\x20or\x20maxRetry.',{'resource':_0x5b3e81,'pattern':_0x3d06ff,'maxRetry':_0x583107});}const _0x4ed876={'value':_0x28a763,'resource':_0x5b3e81,'pattern':_0x3d06ff,'attemptCount':_0xf9d440,'generatedAt':new Date()[_0x222faf(0xe7)]()};_0x4acf53[_0x222faf(0xf6)](_0x3eb287,_0x337ac0)&&(_0x4ed876['expiresAt']=new Date(_0x4acf53['WjfQZ'](Date['now'](),_0x4acf53[_0x222faf(0xa7)](_0x3eb287,0x3e8)))[_0x222faf(0xe7)]());const _0x2f014f=await this[_0x222faf(0x10c)](_0x4e047f,_0x4ed876);if(!_0x2f014f['stored'])return _0x337ac0&&await this[_0x222faf(0x132)](_0x5b3e81,_0x28a763,_0x3eb287),logger['info']({'event':_0x4acf53['AfRBb'],'resource':_0x5b3e81,'pattern':_0x3d06ff,'value':_0x28a763},_0x222faf(0x9e)),_0x2f014f['winnerResult'];return logger['info']({'event':_0x222faf(0xfb),'resource':_0x5b3e81,'pattern':_0x3d06ff,'attemptCount':_0xf9d440,'ensureUnique':_0x337ac0,'ttl':_0x3eb287||0x0},_0x222faf(0xcb)+_0x28a763),_0x4ed876;}async[a0_0x7c9815(0xf3)](_0x2c30d1){const _0x441f58=a0_0x7c9815,_0x4389eb={'lZyCs':function(_0x1b5697,_0x5c2305){return _0x1b5697>_0x5c2305;},'jOvod':function(_0x1724dd,_0x3b9b23){return _0x1724dd===_0x3b9b23;}},_0x5bca62=_0x2c30d1['digits']==null?this['defaultPinDigits']:_0x2c30d1[_0x441f58(0x9d)];if(!Number['isInteger'](_0x5bca62)||_0x5bca62<MIN_PIN_DIGITS||_0x4389eb['lZyCs'](_0x5bca62,MAX_PIN_DIGITS))throw new IdGeneratorError(_0x441f58(0x91),_0x441f58(0x104)+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+'\x20(got:\x20'+_0x5bca62+')');const _0x48e50c='9'['repeat'](_0x5bca62);return this['random']({'resource':_0x2c30d1['resource'],'pattern':_0x48e50c,'ensureUnique':_0x4389eb['jOvod'](_0x2c30d1['ensureUnique'],!![]),'ttl':_0x2c30d1[_0x441f58(0xcf)],'maxRetry':_0x2c30d1[_0x441f58(0xa5)],'idempotencyKey':_0x2c30d1[_0x441f58(0x164)]});}async['serial'](_0x18f0cd){const _0x5787a2=a0_0x7c9815,_0x5ac086=_0x18f0cd['pattern']||this['defaultSerialPattern'];return this[_0x5787a2(0xdf)]({'resource':_0x18f0cd['resource'],'pattern':_0x5ac086,'ensureUnique':_0x18f0cd['ensureUnique']!==![],'ttl':_0x18f0cd[_0x5787a2(0xcf)],'maxRetry':_0x18f0cd['maxRetry'],'idempotencyKey':_0x18f0cd[_0x5787a2(0x164)]});}async[a0_0x7c9815(0xce)](_0x5408c5){const _0x29bb9b=a0_0x7c9815,_0x4d607a=_0x5408c5['pattern']||this[_0x29bb9b(0x95)];return this[_0x29bb9b(0xdf)]({'resource':_0x5408c5['resource'],'pattern':_0x4d607a,'ensureUnique':_0x5408c5['ensureUnique']!==![],'ttl':_0x5408c5[_0x29bb9b(0xcf)],'maxRetry':_0x5408c5[_0x29bb9b(0xa5)],'idempotencyKey':_0x5408c5['idempotencyKey']});}async['consume'](_0x1cbfbe){const _0x570e2c=a0_0x7c9815,_0x4bb500={'tYPqg':_0x570e2c(0x130),'ikqFq':function(_0x19f9d2,_0xb1790f){return _0x19f9d2!==_0xb1790f;},'wmFFt':function(_0x18ac3d,_0x58e56f){return _0x18ac3d>_0x58e56f;},'bNpRk':function(_0xf81d07,_0x248ec9){return _0xf81d07+_0x248ec9;}};if(!this[_0x570e2c(0x14b)])throw new IdGeneratorError(_0x4bb500['tYPqg'],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x1cbfbe[_0x570e2c(0xd0)]);if(_0x4bb500['ikqFq'](typeof _0x1cbfbe[_0x570e2c(0x93)],'string')||_0x1cbfbe['value'][_0x570e2c(0xbe)]===0x0)throw new IdGeneratorError('IDGEN_INVALID_NUMBER','value\x20is\x20required');const {resource:_0x31b6e3,value:_0xbcba23}=_0x1cbfbe,_0x38d94e=redisClient[_0x570e2c(0x163)](),_0x524c83=this['_buildActiveKey'](_0x31b6e3,_0xbcba23),_0x41301e=this[_0x570e2c(0xdd)](_0x31b6e3),[_0x11b59d,_0x42a096]=await Promise[_0x570e2c(0x15c)]([_0x38d94e['del'](_0x524c83),_0x38d94e['srem'](_0x41301e,_0xbcba23)]),_0x3d1228=_0x4bb500[_0x570e2c(0x169)](_0x4bb500['bNpRk'](_0x11b59d,_0x42a096),0x0);return logger['info']({'event':'idgen_consumed','resource':_0x31b6e3,'value':_0xbcba23,'consumed':_0x3d1228},'ID\x20Generator\x20consumed:\x20'+_0xbcba23),{'consumed':_0x3d1228,'resource':_0x31b6e3,'value':_0xbcba23,'consumedAt':new Date()[_0x570e2c(0xe7)]()};}async['peek'](_0xee03da){const _0x55e528=a0_0x7c9815,_0x38304e={'CFspb':_0x55e528(0x130),'qacKI':'number','YQRfv':'text','faMiV':'IDGEN_INVALID_FORMAT','bmHoJ':function(_0x5b7071,_0x452255,_0x4c2b28){return _0x5b7071(_0x452255,_0x4c2b28);},'eenDQ':function(_0x3d0508,_0x2492c9){return _0x3d0508===_0x2492c9;},'yDoDR':_0x55e528(0xdf),'quruC':function(_0x2ab2e8,_0x1e6250){return _0x2ab2e8||_0x1e6250;}};if(!this['enabled'])throw new IdGeneratorError(_0x38304e[_0x55e528(0xe0)],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0xee03da['resource']);const _0x3c485d=_0xee03da['mode']||_0x38304e['qacKI'],_0x620587=redisClient['getClient']();if(_0x3c485d==='number'){const _0x1a5a29=(_0xee03da[_0x55e528(0x15a)]||_0x38304e['YQRfv'])['toLowerCase']();if(!ALLOWED_FORMATS[_0x55e528(0x138)](_0x1a5a29))throw new IdGeneratorError(_0x38304e['faMiV'],_0x55e528(0x8f)+_0xee03da['format']);const {formatKey:_0x19d1fc}=this[_0x55e528(0xf0)](_0x1a5a29,_0xee03da[_0x55e528(0x129)]||''),_0x121492=this['_buildSeqKey'](_0xee03da['resource'],_0x19d1fc),_0x138c8b=this['_buildReuseKey'](_0xee03da[_0x55e528(0xd0)],_0x19d1fc),[_0x145f23,_0x583c8c]=await Promise[_0x55e528(0x15c)]([_0x620587[_0x55e528(0xc7)](_0x121492),_0x620587['zcard'](_0x138c8b)]);return{'resource':_0xee03da['resource'],'mode':_0x38304e[_0x55e528(0x177)],'formatKey':_0x19d1fc,'currentCounter':_0x38304e['bmHoJ'](parseInt,_0x145f23,0xa)||0x0,'reusePoolSize':_0x583c8c||0x0};}if(_0x38304e[_0x55e528(0xfd)](_0x3c485d,_0x55e528(0xdf))){const _0x213186=this[_0x55e528(0xdd)](_0xee03da[_0x55e528(0xd0)]),_0x45b391=await _0x620587[_0x55e528(0xa3)](_0x213186);return{'resource':_0xee03da[_0x55e528(0xd0)],'mode':_0x38304e[_0x55e528(0x162)],'issuedCount':_0x38304e['quruC'](_0x45b391,0x0)};}throw new IdGeneratorError('IDGEN_INVALID_MODE','Unknown\x20mode:\x20'+_0x3c485d);}async[a0_0x7c9815(0x106)](_0x3b1284){const _0x550adc=a0_0x7c9815,_0x20c2b5={'uUXth':function(_0x502374,_0x411410){return _0x502374===_0x411410;},'Byfny':function(_0x12432e,_0x46dae4){return _0x12432e>_0x46dae4;}},_0x5076fa=await this['peek'](_0x3b1284);if(_0x20c2b5[_0x550adc(0x14c)](_0x5076fa[_0x550adc(0x12d)],_0x550adc(0x10d))){const _0x2094af=redisClient['getClient'](),_0x47b654=this[_0x550adc(0xc1)](_0x3b1284['resource'],_0x5076fa['formatKey']),_0x4981e3=this['_buildReuseKey'](_0x3b1284[_0x550adc(0xd0)],_0x5076fa['formatKey']),[_0x190336,_0x48f9e2]=await Promise[_0x550adc(0x15c)]([_0x2094af[_0x550adc(0x11c)](_0x47b654),_0x2094af['zrange'](_0x4981e3,0x0,-0x1)]);return{..._0x5076fa,'reusePoolValues':_0x48f9e2['map'](_0x5add58=>parseInt(_0x5add58,0xa)),'meta':_0x190336&&_0x20c2b5['Byfny'](Object['keys'](_0x190336)[_0x550adc(0xbe)],0x0)?_0x190336:null};}return _0x5076fa;}async[a0_0x7c9815(0x19e)](_0x35c607){const _0x4f95fe=a0_0x7c9815,_0x46fdbc={'lhVUu':_0x4f95fe(0x130),'aUayM':_0x4f95fe(0xaf),'XwRiN':function(_0x285f6b,_0x4bdf8e){return _0x285f6b===_0x4bdf8e;},'GGcHz':'meta','dOtpC':'random','cZXkX':_0x4f95fe(0x17f),'gnveS':_0x4f95fe(0xcc)};if(!this['enabled'])throw new IdGeneratorError(_0x46fdbc[_0x4f95fe(0xae)],_0x46fdbc['aUayM']);if(!this[_0x4f95fe(0x88)])throw new IdGeneratorError(_0x4f95fe(0xa8),_0x4f95fe(0x141));this[_0x4f95fe(0xed)](_0x35c607[_0x4f95fe(0xd0)]);const _0x384210=_0x35c607['mode']||_0x4f95fe(0x10d),_0x372002=redisClient[_0x4f95fe(0x163)]();if(_0x46fdbc[_0x4f95fe(0x131)](_0x384210,_0x4f95fe(0x10d))){const _0x1f7fa0=(_0x35c607['format']||'text')[_0x4f95fe(0x175)]();if(!ALLOWED_FORMATS['has'](_0x1f7fa0))throw new IdGeneratorError(_0x4f95fe(0x10a),_0x4f95fe(0x8f)+_0x35c607['format']);const {formatKey:_0x14988c}=this[_0x4f95fe(0xf0)](_0x1f7fa0,_0x35c607[_0x4f95fe(0x129)]||''),_0x3d90b7=this['_buildSeqKey'](_0x35c607['resource'],_0x14988c),_0x234cbc=this['_buildReuseKey'](_0x35c607[_0x4f95fe(0xd0)],_0x14988c),_0x4cdcd6=this['_buildMetaKey'](_0x35c607[_0x4f95fe(0xd0)],_0x14988c);return await _0x372002['del'](_0x3d90b7,_0x234cbc,_0x4cdcd6),logger[_0x4f95fe(0x9c)]({'event':'idgen_reset','resource':_0x35c607[_0x4f95fe(0xd0)],'mode':'number','formatKey':_0x14988c},_0x4f95fe(0x19d)+_0x35c607[_0x4f95fe(0xd0)]+':'+_0x14988c),{'reset':!![],'resource':_0x35c607['resource'],'mode':'number','formatKey':_0x14988c,'deletedKeys':[_0x4f95fe(0x86),_0x4f95fe(0x195),_0x46fdbc[_0x4f95fe(0xb8)]]};}if(_0x384210===_0x46fdbc[_0x4f95fe(0x146)]){const _0x537063=this['_buildIssuedKey'](_0x35c607['resource']);return await _0x372002[_0x4f95fe(0x165)](_0x537063),logger['warn']({'event':_0x46fdbc[_0x4f95fe(0x178)],'resource':_0x35c607['resource'],'mode':_0x46fdbc['dOtpC']},_0x4f95fe(0xd3)+_0x35c607[_0x4f95fe(0xd0)]),{'reset':!![],'resource':_0x35c607[_0x4f95fe(0xd0)],'mode':_0x4f95fe(0xdf),'deletedKeys':[_0x46fdbc[_0x4f95fe(0xcd)]]};}throw new IdGeneratorError(_0x4f95fe(0xdc),'Unknown\x20mode:\x20'+_0x384210);}}const instance=new IdGenerator();instance['IdGeneratorError']=IdGeneratorError,module['exports']=instance,module['exports']['IdGeneratorError']=IdGeneratorError;
|
|
1
|
+
'use strict';const a0_0x1aa1c4=a0_0x288b;(function(_0x86bb26,_0x2881a7){const _0x58d14e=a0_0x288b,_0x2d6a17=_0x86bb26();while(!![]){try{const _0x48cb68=parseInt(_0x58d14e(0x26e))/0x1*(parseInt(_0x58d14e(0x2b3))/0x2)+parseInt(_0x58d14e(0x1ec))/0x3+parseInt(_0x58d14e(0x1d2))/0x4+parseInt(_0x58d14e(0x2b8))/0x5+-parseInt(_0x58d14e(0x24f))/0x6*(parseInt(_0x58d14e(0x24c))/0x7)+-parseInt(_0x58d14e(0x285))/0x8+parseInt(_0x58d14e(0x2d0))/0x9*(parseInt(_0x58d14e(0x2d1))/0xa);if(_0x48cb68===_0x2881a7)break;else _0x2d6a17['push'](_0x2d6a17['shift']());}catch(_0x231c3c){_0x2d6a17['push'](_0x2d6a17['shift']());}}}(a0_0x520c,0xd114d));const crypto=require('crypto'),redisClient=require(a0_0x1aa1c4(0x214)),{logger}=require(a0_0x1aa1c4(0x2c0)),idempotencyManager=require('./idempotency-manager'),ALLOWED_FORMATS=new Set(['text','yyyy',a0_0x1aa1c4(0x278),a0_0x1aa1c4(0x22f)]),RESOURCE_REGEX=/^[A-Za-z0-9_-]{1,64}$/,PREFIX_REGEX=/^[A-Za-z0-9_-]{0,32}$/,SEPARATOR_FORBIDDEN=/:/,MAX_NUM_DIGITS=0xc,MIN_NUM_DIGITS=0x1,MAX_PIN_DIGITS=0xc,MIN_PIN_DIGITS=0x4,MAX_PATTERN_LENGTH=0x100,MAX_TTL=0x278d00,MAX_RETRY_LIMIT=0x64,MAX_IDEMPOTENCY_KEY_LENGTH=0x80,RESERVATION_TOKEN_REGEX=/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,MIN_RESERVE_TTL=0xa,MAX_RESERVE_TTL=0x15180,DEFAULT_RESERVE_TTL=0x258,RESERVE_REAP_BATCH=0x40,CHARSET_DIGIT='0123456789',CHARSET_UPPER=a0_0x1aa1c4(0x252),CHARSET_LOWER='abcdefghijklmnopqrstuvwxyz',CHARSET_LETTERS=CHARSET_UPPER+CHARSET_LOWER,CHARSET_UPPER_ALNUM=CHARSET_UPPER+CHARSET_DIGIT,CHARSET_MIXED_ALNUM=CHARSET_UPPER+CHARSET_LOWER+CHARSET_DIGIT,CHARSET_HEX_UPPER='0123456789ABCDEF',CHARSET_HEX_LOWER='0123456789abcdef',PLACEHOLDER_MAP={'9':CHARSET_DIGIT,'N':CHARSET_DIGIT,'A':CHARSET_UPPER,'a':CHARSET_LOWER,'L':CHARSET_LETTERS,'X':CHARSET_UPPER_ALNUM,'x':CHARSET_MIXED_ALNUM,'H':CHARSET_HEX_UPPER,'h':CHARSET_HEX_LOWER},LUA_GENERATE_NUMBER='\x0aif\x20ARGV[1]\x20==\x20\x271\x27\x20then\x0a\x20\x20local\x20reused\x20=\x20redis.call(\x27ZPOPMIN\x27,\x20KEYS[2],\x201)\x0a\x20\x20if\x20#reused\x20>\x200\x20then\x0a\x20\x20\x20\x20return\x20{tonumber(reused[1]),\x201}\x0a\x20\x20end\x0aend\x0alocal\x20n\x20=\x20redis.call(\x27INCR\x27,\x20KEYS[1])\x0alocal\x20ttl\x20=\x20tonumber(ARGV[2])\x0aif\x20ttl\x20>\x200\x20and\x20n\x20==\x201\x20then\x0a\x20\x20redis.call(\x27EXPIRE\x27,\x20KEYS[1],\x20ttl)\x0aend\x0areturn\x20{n,\x200}\x0a',LUA_RELEASE_NUMBER=a0_0x1aa1c4(0x1e5),LUA_RESERVE_NUMBER=a0_0x1aa1c4(0x1e7),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=a0_0x1aa1c4(0x27c),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(_0xd5588a,_0x4ac167,_0x519658=null){const _0x446f90=a0_0x1aa1c4,_0x2f1f7e={'nqUDP':_0x446f90(0x20d)};super(_0x4ac167||_0xd5588a),this[_0x446f90(0x2d3)]=_0x2f1f7e['nqUDP'],this[_0x446f90(0x265)]=_0xd5588a,this[_0x446f90(0x254)]=_0x519658;}}class IdGenerator{constructor(){const _0x335688=a0_0x1aa1c4;this[_0x335688(0x21e)]=![],this['_enabled']=null,this['_keyPrefix']=null,this['_idemTTL']=null,this['_allowReset']=null,this['_defaultMaxRetry']=null,this['_defaultPinDigits']=null,this[_0x335688(0x215)]=null,this[_0x335688(0x2da)]=null,this[_0x335688(0x248)]=null,this[_0x335688(0x279)]=null,this[_0x335688(0x2e2)]=null;}[a0_0x1aa1c4(0x2c1)](){const _0x4cf901=a0_0x1aa1c4,_0x54cfc3={'XJBCH':'rf:idgen:','YFZQS':function(_0xbfe2e0,_0x2e0547){return _0xbfe2e0===_0x2e0547;},'rAJhL':'true','Kqhsy':function(_0x13830b,_0x5353db,_0x33a016){return _0x13830b(_0x5353db,_0x33a016);},'ZOOpH':function(_0x35c8fd,_0x76a688,_0x16f4dd){return _0x35c8fd(_0x76a688,_0x16f4dd);},'GxXnn':function(_0x530d26,_0x2179ad,_0x1770aa){return _0x530d26(_0x2179ad,_0x1770aa);}};this[_0x4cf901(0x219)]=_0x54cfc3[_0x4cf901(0x269)],this['_enabled']=_0x54cfc3[_0x4cf901(0x26a)](process['env'][_0x4cf901(0x1f8)],_0x54cfc3['rAJhL']),this['_idemTTL']=parseInt(process['env']['IDGEN_IDEM_TTL'],0xa)||0x258,this[_0x4cf901(0x2c2)]=_0x54cfc3['YFZQS'](process['env']['IDGEN_ALLOW_RESET'],_0x54cfc3['rAJhL']),this[_0x4cf901(0x2dd)]=_0x54cfc3[_0x4cf901(0x22c)](parseInt,process[_0x4cf901(0x1fc)][_0x4cf901(0x2e4)],0xa)||0xa,this['_defaultPinDigits']=_0x54cfc3['ZOOpH'](parseInt,process['env'][_0x4cf901(0x288)],0xa)||0x6,this['_defaultSerialPattern']=process[_0x4cf901(0x1fc)][_0x4cf901(0x244)]||_0x4cf901(0x2b2),this['_defaultCodePattern']=process['env']['IDGEN_DEFAULT_CODE_PATTERN']||'9999-9999',this['_counterTTLMap']={'yyyymm':parseInt(process['env']['IDGEN_COUNTER_TTL_MONTHLY'],0xa)||0x2a3000,'yyyymmdd':parseInt(process[_0x4cf901(0x1fc)]['IDGEN_COUNTER_TTL_DAILY'],0xa)||0x2a300},this[_0x4cf901(0x279)]=parseInt(process[_0x4cf901(0x1fc)][_0x4cf901(0x245)],0xa)||DEFAULT_RESERVE_TTL,this['_reserveMaxTTL']=_0x54cfc3['GxXnn'](parseInt,process['env'][_0x4cf901(0x28e)],0xa)||MAX_RESERVE_TTL,this[_0x4cf901(0x21e)]=!![],logger[_0x4cf901(0x24d)]({'event':'idgen_config_init','enabled':this[_0x4cf901(0x27e)],'idemTTL':this[_0x4cf901(0x250)],'allowReset':this['_allowReset'],'defaultMaxRetry':this['_defaultMaxRetry'],'defaultPinDigits':this['_defaultPinDigits'],'reserveDefaultTTL':this[_0x4cf901(0x279)],'reserveMaxTTL':this[_0x4cf901(0x2e2)]},'ID\x20Generator\x20config\x20initialized\x20-\x20enabled:\x20'+this['_enabled']);}[a0_0x1aa1c4(0x29f)](){const _0xf96ff7=a0_0x1aa1c4;if(!this[_0xf96ff7(0x21e)])this['_initConfig']();}get[a0_0x1aa1c4(0x210)](){const _0x1cd53c=a0_0x1aa1c4;return this['_ensureInitialized'](),this[_0x1cd53c(0x27e)];}get['keyPrefix'](){const _0x4e750e=a0_0x1aa1c4;return this[_0x4e750e(0x29f)](),this[_0x4e750e(0x219)];}get[a0_0x1aa1c4(0x28f)](){const _0x31d43f=a0_0x1aa1c4;return this[_0x31d43f(0x29f)](),this[_0x31d43f(0x250)];}get[a0_0x1aa1c4(0x1dc)](){return this['_ensureInitialized'](),this['_allowReset'];}get[a0_0x1aa1c4(0x280)](){const _0x5a4804=a0_0x1aa1c4;return this[_0x5a4804(0x29f)](),this[_0x5a4804(0x2dd)];}get['defaultPinDigits'](){const _0x5b01c6=a0_0x1aa1c4;return this[_0x5b01c6(0x29f)](),this['_defaultPinDigits'];}get['defaultSerialPattern'](){const _0x312010=a0_0x1aa1c4;return this[_0x312010(0x29f)](),this['_defaultSerialPattern'];}get['defaultCodePattern'](){const _0x12b605=a0_0x1aa1c4;return this[_0x12b605(0x29f)](),this[_0x12b605(0x2da)];}get['reserveDefaultTTL'](){const _0x40eed7=a0_0x1aa1c4;return this['_ensureInitialized'](),this[_0x40eed7(0x279)];}get[a0_0x1aa1c4(0x2d9)](){return this['_ensureInitialized'](),this['_reserveMaxTTL'];}[a0_0x1aa1c4(0x21a)](){const _0x516643=a0_0x1aa1c4;return this[_0x516643(0x210)];}['_validateResource'](_0x284653){const _0x55aead=a0_0x1aa1c4,_0x155843={'PSolO':function(_0x144195,_0x4d3895){return _0x144195!==_0x4d3895;}};if(_0x155843[_0x55aead(0x284)](typeof _0x284653,_0x55aead(0x1e9))||!RESOURCE_REGEX['test'](_0x284653))throw new IdGeneratorError('IDGEN_INVALID_RESOURCE','Invalid\x20resource:\x20must\x20match\x20'+RESOURCE_REGEX+'\x20(got:\x20'+JSON[_0x55aead(0x201)](_0x284653)+')');}['_validateNumberParams'](_0x15c320){const _0x4bc7c3=a0_0x1aa1c4,_0x133436={'fHtly':_0x4bc7c3(0x2b6),'HHqDr':'IDGEN_INVALID_NUM_DIGITS','AnUdp':function(_0x20555a,_0x500756){return _0x20555a==_0x500756;},'PnatX':function(_0x4a6008,_0x5a1350){return _0x4a6008!==_0x5a1350;},'PvgUK':_0x4bc7c3(0x1e9),'yxAdG':'IDGEN_INVALID_PREFIX','nJprU':function(_0x4e7a86,_0x2224d4){return _0x4e7a86!=_0x2224d4;},'EOWDu':function(_0x5e0e13,_0x24b581){return _0x5e0e13===_0x24b581;}},{resource:_0x18b320,format:_0x56e61f,prefix:_0x321d25,separator:_0x323796,numDigits:_0xa1d732,reuseDelete:_0x3b4000}=_0x15c320;this[_0x4bc7c3(0x299)](_0x18b320);const _0x30a7e8=typeof _0x56e61f==='string'?_0x56e61f['toLowerCase']():'';if(!ALLOWED_FORMATS[_0x4bc7c3(0x23f)](_0x30a7e8))throw new IdGeneratorError(_0x133436[_0x4bc7c3(0x20f)],'Invalid\x20format:\x20must\x20be\x20one\x20of\x20'+[...ALLOWED_FORMATS][_0x4bc7c3(0x228)](',\x20')+_0x4bc7c3(0x2a2)+_0x56e61f+')');if(!Number['isInteger'](_0xa1d732)||_0xa1d732<MIN_NUM_DIGITS||_0xa1d732>MAX_NUM_DIGITS)throw new IdGeneratorError(_0x133436['HHqDr'],_0x4bc7c3(0x2a5)+MIN_NUM_DIGITS+'-'+MAX_NUM_DIGITS+'\x20(got:\x20'+_0xa1d732+')');const _0x553f68=_0x133436[_0x4bc7c3(0x290)](_0x321d25,null)?'':_0x321d25;if(_0x133436[_0x4bc7c3(0x27b)](typeof _0x553f68,_0x133436[_0x4bc7c3(0x1f5)])||!PREFIX_REGEX[_0x4bc7c3(0x2c5)](_0x553f68))throw new IdGeneratorError(_0x133436['yxAdG'],'Invalid\x20prefix:\x20must\x20match\x20'+PREFIX_REGEX+'\x20(got:\x20'+JSON['stringify'](_0x321d25)+')');const _0x3fb274=_0x133436[_0x4bc7c3(0x290)](_0x323796,null)?'':_0x323796;if(_0x133436[_0x4bc7c3(0x27b)](typeof _0x3fb274,'string')||_0x3fb274['length']>0x3||SEPARATOR_FORBIDDEN[_0x4bc7c3(0x2c5)](_0x3fb274))throw new IdGeneratorError(_0x4bc7c3(0x268),'Invalid\x20separator:\x20max\x203\x20char,\x20must\x20not\x20contain\x20\x27:\x27\x20(got:\x20'+JSON[_0x4bc7c3(0x201)](_0x323796)+')');if(_0x133436['nJprU'](_0x3b4000,null)&&typeof _0x3b4000!=='boolean')throw new IdGeneratorError(_0x4bc7c3(0x230),_0x4bc7c3(0x2ad)+typeof _0x3b4000+')');return{'resource':_0x18b320,'format':_0x30a7e8,'prefix':_0x553f68,'separator':_0x3fb274,'numDigits':_0xa1d732,'reuseDelete':_0x133436['EOWDu'](_0x3b4000,!![])};}['_validatePattern'](_0x32aa00){const _0x101992=a0_0x1aa1c4,_0x47d893={'StviU':'string','GAWVA':function(_0x591577,_0x3ba3c6){return _0x591577===_0x3ba3c6;},'aYSLS':function(_0x4c122c,_0x3b7c21){return _0x4c122c>_0x3b7c21;},'BUZJC':'IDGEN_INVALID_PATTERN'};if(typeof _0x32aa00!==_0x47d893['StviU']||_0x47d893['GAWVA'](_0x32aa00['length'],0x0)||_0x47d893[_0x101992(0x28d)](_0x32aa00['length'],MAX_PATTERN_LENGTH))throw new IdGeneratorError(_0x47d893['BUZJC'],'Invalid\x20pattern:\x20must\x20be\x20string\x201-'+MAX_PATTERN_LENGTH+'\x20chars\x20(got\x20length:\x20'+(_0x32aa00&&_0x32aa00['length'])+')');let _0x226cad=![];for(const _0x2dae9f of _0x32aa00){if(PLACEHOLDER_MAP[_0x2dae9f]){_0x226cad=!![];break;}}if(!_0x226cad)throw new IdGeneratorError(_0x101992(0x1e8),_0x101992(0x25c));}[a0_0x1aa1c4(0x1f9)](_0x5ba9b8){const _0x13cfb2=a0_0x1aa1c4,_0x1310ae={'BoFgW':function(_0x5bef1c,_0x2e16f5){return _0x5bef1c>_0x2e16f5;}};if(_0x5ba9b8==null)return undefined;if(!Number['isInteger'](_0x5ba9b8)||_0x5ba9b8<0x1||_0x1310ae['BoFgW'](_0x5ba9b8,MAX_TTL))throw new IdGeneratorError('IDGEN_INVALID_TTL',_0x13cfb2(0x229)+MAX_TTL+'\x20seconds\x20(got:\x20'+_0x5ba9b8+')');return _0x5ba9b8;}[a0_0x1aa1c4(0x1ef)](_0x566106){const _0x45a15e=a0_0x1aa1c4,_0x23dbff={'kiAGi':function(_0x45ccaf,_0x4730d6){return _0x45ccaf==_0x4730d6;},'BKxsV':'IDGEN_INVALID_MAX_RETRY'};if(_0x23dbff['kiAGi'](_0x566106,null))return this[_0x45a15e(0x280)];if(!Number['isInteger'](_0x566106)||_0x566106<0x1||_0x566106>MAX_RETRY_LIMIT)throw new IdGeneratorError(_0x23dbff[_0x45a15e(0x2c8)],'Invalid\x20maxRetry:\x20must\x20be\x20integer\x201-'+MAX_RETRY_LIMIT+_0x45a15e(0x2a2)+_0x566106+')');return _0x566106;}[a0_0x1aa1c4(0x233)](_0x28a18b){const _0x271493=a0_0x1aa1c4,_0x4ae161={'gCIpg':function(_0x3a6951,_0x3c96f2){return _0x3a6951!==_0x3c96f2;},'uhjVJ':function(_0xdf6639,_0x149262){return _0xdf6639===_0x149262;},'neEvo':function(_0x480260,_0x5d90ed){return _0x480260>_0x5d90ed;},'xaCtL':'IDGEN_INVALID_RESOURCE'};if(_0x28a18b==null)return undefined;if(_0x4ae161['gCIpg'](typeof _0x28a18b,_0x271493(0x1e9))||_0x4ae161['uhjVJ'](_0x28a18b[_0x271493(0x243)],0x0)||_0x4ae161[_0x271493(0x2d5)](_0x28a18b[_0x271493(0x243)],MAX_IDEMPOTENCY_KEY_LENGTH))throw new IdGeneratorError(_0x4ae161['xaCtL'],'Invalid\x20idempotencyKey:\x20must\x20be\x20string\x201-'+MAX_IDEMPOTENCY_KEY_LENGTH+_0x271493(0x2a4));return _0x28a18b;}[a0_0x1aa1c4(0x2a6)](_0x5b5edb){const _0x2c31ee=a0_0x1aa1c4,_0x4aa5cf={'vJvLc':function(_0x4dea59,_0x580733){return _0x4dea59==_0x580733;},'NYqcD':function(_0x3dae70,_0xcb27d4){return _0x3dae70<_0xcb27d4;},'WUqnS':function(_0x43b51e,_0x573af1){return _0x43b51e>_0x573af1;},'hHxxB':_0x2c31ee(0x1e1)};if(_0x4aa5cf[_0x2c31ee(0x271)](_0x5b5edb,null))return this[_0x2c31ee(0x296)];if(!Number[_0x2c31ee(0x2c9)](_0x5b5edb)||_0x4aa5cf[_0x2c31ee(0x258)](_0x5b5edb,MIN_RESERVE_TTL)||_0x4aa5cf[_0x2c31ee(0x20a)](_0x5b5edb,this['reserveMaxTTL']))throw new IdGeneratorError(_0x4aa5cf['hHxxB'],_0x2c31ee(0x1fa)+MIN_RESERVE_TTL+'-'+this[_0x2c31ee(0x2d9)]+'\x20seconds\x20(got:\x20'+_0x5b5edb+')');return _0x5b5edb;}['_validateReservationToken'](_0x50b070){const _0x1aca00=a0_0x1aa1c4,_0x3020ce={'tUoBf':_0x1aca00(0x22a)};if(typeof _0x50b070!==_0x1aca00(0x1e9)||!RESERVATION_TOKEN_REGEX['test'](_0x50b070))throw new IdGeneratorError(_0x3020ce['tUoBf'],'Invalid\x20reservation\x20token:\x20must\x20be\x20a\x20valid\x20UUID\x20format\x20(got:\x20'+JSON[_0x1aca00(0x201)](_0x50b070)+')');return _0x50b070;}['_pad2'](_0x1b99d8){const _0x61051=a0_0x1aa1c4,_0x32f609={'KeVXW':function(_0x3b5d4c,_0x213ae3){return _0x3b5d4c(_0x213ae3);}};return _0x32f609['KeVXW'](String,_0x1b99d8)[_0x61051(0x1f6)](0x2,'0');}[a0_0x1aa1c4(0x262)](_0x438acf,_0x1d7e95,_0x50881e=new Date()){const _0xb868d6=a0_0x1aa1c4,_0x1af710={'rzpPJ':function(_0x166f86,_0x43053c){return _0x166f86+_0x43053c;},'arJqT':function(_0x2e7f48,_0x7fbf82){return _0x2e7f48||_0x7fbf82;},'BslSD':'yyyy'},_0x59d81b=_0x50881e[_0xb868d6(0x267)](),_0x55fdb3=this['_pad2'](_0x1af710[_0xb868d6(0x1da)](_0x50881e['getMonth'](),0x1)),_0x952313=this['_pad2'](_0x50881e[_0xb868d6(0x1e6)]()),_0x34bd09=_0x1af710[_0xb868d6(0x237)](_0x1d7e95,'_');let _0x4b36aa,_0x2772d3='';switch(_0x438acf){case _0xb868d6(0x2e1):_0x4b36aa=_0x34bd09+'_text';break;case _0x1af710['BslSD']:_0x2772d3=''+_0x59d81b,_0x4b36aa=_0x34bd09+_0xb868d6(0x2ab)+_0x2772d3;break;case'yyyymm':_0x2772d3=''+_0x59d81b+_0x55fdb3,_0x4b36aa=_0x34bd09+'_yyyymm_'+_0x2772d3;break;case'yyyymmdd':_0x2772d3=''+_0x59d81b+_0x55fdb3+_0x952313,_0x4b36aa=_0x34bd09+'_yyyymmdd_'+_0x2772d3;break;default:throw new IdGeneratorError(_0xb868d6(0x2b6),_0xb868d6(0x223)+_0x438acf);}return{'formatKey':_0x4b36aa,'datePrefix':_0x2772d3};}[a0_0x1aa1c4(0x1f4)](_0x3783b4,_0x58c232){return this['keyPrefix']+'seq:'+_0x3783b4+':'+_0x58c232;}[a0_0x1aa1c4(0x1d8)](_0x19cf65,_0x11e484){return this['keyPrefix']+'reuse:'+_0x19cf65+':'+_0x11e484;}[a0_0x1aa1c4(0x225)](_0x24c458,_0x4c54ac){return this['keyPrefix']+'meta:'+_0x24c458+':'+_0x4c54ac;}['_buildIssuedKey'](_0x3c2628){return this['keyPrefix']+'issued:'+_0x3c2628;}['_buildActiveKey'](_0x457b0d,_0x58f087){const _0x3565f4=a0_0x1aa1c4;return this[_0x3565f4(0x231)]+_0x3565f4(0x27f)+_0x457b0d+':'+_0x58f087;}['_buildReservationKey'](_0x30cee7){const _0x4f5c53=a0_0x1aa1c4;return this['keyPrefix']+_0x4f5c53(0x213)+_0x30cee7;}[a0_0x1aa1c4(0x234)](_0x326733,_0x4e3a95){const _0x2b1e39=a0_0x1aa1c4;return this[_0x2b1e39(0x231)]+_0x2b1e39(0x1f0)+_0x326733+':'+_0x4e3a95;}['_buildReservationKeyPrefix'](){const _0x3b62c4=a0_0x1aa1c4;return this['keyPrefix']+_0x3b62c4(0x213);}[a0_0x1aa1c4(0x297)](_0x4ee1b5,_0x169873,_0x51dcae,_0xc91b7b){const _0x433e82=a0_0x1aa1c4,_0x1e5f16={'Ftjyx':'idgen'};if(_0x51dcae)return idempotencyManager[_0x433e82(0x28b)]('idgen',_0x4ee1b5,_0x169873+':'+_0x51dcae+':'+_0xc91b7b);return idempotencyManager[_0x433e82(0x28b)](_0x1e5f16['Ftjyx'],_0x4ee1b5,_0x169873+':'+_0xc91b7b);}[a0_0x1aa1c4(0x2a0)](_0x227ed0){return this['_counterTTLMap'][_0x227ed0]||0x0;}[a0_0x1aa1c4(0x2bb)]({format:_0x15cfaf,prefix:_0x377b93,datePrefix:_0x53f0bb,separator:_0x16d018,numDigits:_0x131020,counterInt:_0xb74d78}){const _0x4de7e8=a0_0x1aa1c4,_0x181c7f={'EeXng':function(_0x5459ac,_0x18b0d7){return _0x5459ac-_0x18b0d7;},'yrvSg':'IDGEN_COUNTER_OVERFLOW','IaeVf':_0x4de7e8(0x2e1)},_0x5cafa3=_0x181c7f['EeXng'](Math[_0x4de7e8(0x227)](0xa,_0x131020),0x1);if(_0xb74d78>_0x5cafa3)throw new IdGeneratorError(_0x181c7f['yrvSg'],'Counter\x20overflow:\x20'+_0xb74d78+'\x20exceeds\x20'+_0x131020+'-digit\x20capacity\x20('+_0x5cafa3+_0x4de7e8(0x283),{'counterInt':_0xb74d78,'numDigits':_0x131020,'max':_0x5cafa3});const _0xdbae1b=String(_0xb74d78)[_0x4de7e8(0x1f6)](_0x131020,'0');if(_0x15cfaf===_0x181c7f[_0x4de7e8(0x2ca)])return _0x377b93?''+_0x377b93+_0x16d018+_0xdbae1b:_0xdbae1b;return _0x377b93?''+_0x377b93+_0x16d018+_0x53f0bb+_0x16d018+_0xdbae1b:''+_0x53f0bb+_0x16d018+_0xdbae1b;}[a0_0x1aa1c4(0x1d4)]({format:_0x42dae7,prefix:_0x469008,separator:_0x371464,numDigits:_0x707ade,number:_0x4ec08f}){const _0x442219=a0_0x1aa1c4,_0x3e1bea={'MgUjK':'string','Qbrbm':function(_0x426587,_0x116ad7){return _0x426587===_0x116ad7;},'eDwyJ':function(_0x428531,_0x57080d){return _0x428531!==_0x57080d;},'qqTdP':_0x442219(0x241),'nLZQx':function(_0xc4b47f,_0x254bf5){return _0xc4b47f!==_0x254bf5;},'vcgLn':function(_0x4fb765,_0x228426){return _0x4fb765===_0x228426;},'JWCjc':'yyyymm'};if(typeof _0x4ec08f!==_0x3e1bea['MgUjK']||_0x3e1bea[_0x442219(0x29e)](_0x4ec08f[_0x442219(0x243)],0x0))throw new IdGeneratorError(_0x442219(0x241),_0x442219(0x276));const _0x4c2cc=_0x371464||'',_0x357bab=_0x3e1bea['Qbrbm'](_0x4c2cc,'')?[_0x4ec08f]:_0x4ec08f[_0x442219(0x263)](_0x4c2cc);let _0x18708a='',_0x4a9360;if(_0x42dae7==='text'){if(_0x469008){if(_0x357bab[_0x442219(0x243)]!==0x2||_0x3e1bea['eDwyJ'](_0x357bab[0x0],_0x469008))throw new IdGeneratorError('IDGEN_INVALID_NUMBER','Number\x20does\x20not\x20match\x20expected\x20format\x20prefix'+_0x4c2cc+'padded\x20(got:\x20'+_0x4ec08f+')');_0x4a9360=_0x357bab[0x1];}else{if(_0x357bab[_0x442219(0x243)]!==0x1)throw new IdGeneratorError(_0x3e1bea[_0x442219(0x1de)],'Number\x20does\x20not\x20match\x20expected\x20text\x20format\x20(got:\x20'+_0x4ec08f+')');_0x4a9360=_0x357bab[0x0];}}else{const _0x57f238=_0x469008?0x3:0x2;if(_0x357bab['length']!==_0x57f238)throw new IdGeneratorError('IDGEN_INVALID_NUMBER',_0x442219(0x24a)+_0x4ec08f+',\x20expected\x20'+_0x57f238+_0x442219(0x255));let _0x5b8f62=0x0;if(_0x469008){if(_0x3e1bea['nLZQx'](_0x357bab[_0x5b8f62],_0x469008))throw new IdGeneratorError(_0x3e1bea[_0x442219(0x1de)],_0x442219(0x2bd)+_0x469008+',\x20got\x20'+_0x357bab[_0x5b8f62]);_0x5b8f62++;}_0x18708a=_0x357bab[_0x5b8f62++];const _0x32e7c0=_0x3e1bea['Qbrbm'](_0x42dae7,_0x442219(0x2a7))?/^\d{4}$/:_0x3e1bea[_0x442219(0x1fb)](_0x42dae7,_0x3e1bea[_0x442219(0x27a)])?/^\d{6}$/:/^\d{8}$/;if(!_0x32e7c0['test'](_0x18708a))throw new IdGeneratorError(_0x3e1bea[_0x442219(0x1de)],'Number\x20datePrefix\x20invalid\x20for\x20format\x20'+_0x42dae7+':\x20'+_0x18708a);_0x4a9360=_0x357bab[_0x5b8f62];}if(!new RegExp('^\x5cd{'+_0x707ade+'}$')['test'](_0x4a9360))throw new IdGeneratorError(_0x442219(0x241),'Number\x20counter\x20part\x20must\x20be\x20exactly\x20'+_0x707ade+'\x20digits\x20(got:\x20'+_0x4a9360+')');const _0x1e3a1d=parseInt(_0x4a9360,0xa),_0xf401b8=_0x469008||'_';let _0x59929f;return _0x42dae7==='text'?_0x59929f=_0xf401b8+'_text':_0x59929f=_0xf401b8+'_'+_0x42dae7+'_'+_0x18708a,{'formatKey':_0x59929f,'counterInt':_0x1e3a1d,'datePrefix':_0x18708a};}[a0_0x1aa1c4(0x1ea)](_0x2ba75a){const _0xb3e196=a0_0x1aa1c4;let _0x2e2600='';for(const _0x3d64f8 of _0x2ba75a){const _0x1e7d0a=PLACEHOLDER_MAP[_0x3d64f8];if(_0x1e7d0a){const _0x4b5116=crypto['randomInt'](0x0,_0x1e7d0a[_0xb3e196(0x243)]);_0x2e2600+=_0x1e7d0a[_0x4b5116];}else _0x2e2600+=_0x3d64f8;}return _0x2e2600;}async[a0_0x1aa1c4(0x261)](_0x47bae6){const _0x1bac1d=a0_0x1aa1c4,_0x1e37f1={'qmTrQ':_0x1bac1d(0x2c4),'pVwuq':_0x1bac1d(0x295)};if(!_0x47bae6)return null;try{const _0x1ae85d=redisClient[_0x1bac1d(0x2ac)](),_0x591733=await _0x1ae85d['get'](_0x47bae6);if(_0x591733)return logger['info']({'event':_0x1e37f1[_0x1bac1d(0x2ae)],'key':_0x47bae6},_0x1bac1d(0x286)),JSON[_0x1bac1d(0x257)](_0x591733);return null;}catch(_0x594ab4){return logger['warn']({'event':_0x1bac1d(0x2e3),'error':_0x594ab4[_0x1bac1d(0x1fd)]},_0x1e37f1['pVwuq']),null;}}async[a0_0x1aa1c4(0x2a9)](_0x59a3ae,_0x47582f){const _0x238b8d=a0_0x1aa1c4,_0x38fbcc={'uNrKJ':_0x238b8d(0x274),'kGGMA':_0x238b8d(0x273)};if(!_0x59a3ae)return;try{const _0x1f6a5d=redisClient[_0x238b8d(0x2ac)]();await _0x1f6a5d[_0x238b8d(0x224)](_0x59a3ae,this[_0x238b8d(0x28f)],JSON[_0x238b8d(0x201)](_0x47582f));}catch(_0x487da0){logger['warn']({'event':_0x38fbcc[_0x238b8d(0x1db)],'error':_0x487da0['message']},_0x38fbcc[_0x238b8d(0x1e0)]);}}async['_storeIdemCacheNX'](_0x4d2cae,_0x36dbf6){const _0x4b8892=a0_0x1aa1c4,_0x1f042f={'Msrzk':function(_0x137569,_0x2293a9){return _0x137569===_0x2293a9;},'UZgAG':'SET\x20NX\x20failed\x20but\x20cache\x20GET\x20returned\x20empty\x20—\x20falling\x20back\x20to\x20own\x20result','dXAZF':_0x4b8892(0x298)};if(!_0x4d2cae)return{'stored':!![],'winnerResult':null};try{const _0x4e55a0=redisClient[_0x4b8892(0x2ac)](),_0x14e3fa=JSON[_0x4b8892(0x201)](_0x36dbf6),_0x508478=await _0x4e55a0['set'](_0x4d2cae,_0x14e3fa,'EX',this[_0x4b8892(0x28f)],'NX');if(_0x1f042f['Msrzk'](_0x508478,'OK'))return{'stored':!![],'winnerResult':null};const _0x1af5e4=await _0x4e55a0['get'](_0x4d2cae);if(_0x1af5e4)return{'stored':![],'winnerResult':JSON[_0x4b8892(0x257)](_0x1af5e4)};return logger[_0x4b8892(0x239)]({'event':'idgen_idem_nx_race_lost_but_empty','key':_0x4d2cae},_0x1f042f[_0x4b8892(0x25a)]),{'stored':!![],'winnerResult':null};}catch(_0x1db8e0){return logger['warn']({'event':_0x1f042f[_0x4b8892(0x2b9)],'error':_0x1db8e0[_0x4b8892(0x1fd)]},'Idempotency\x20SET\x20NX\x20error'),{'stored':!![],'winnerResult':null};}}async['_undoRandomReservation'](_0x3caa3e,_0x1d4b0b,_0x494d12){const _0x2da29c=a0_0x1aa1c4,_0x4cd177={'DyLhW':'idgen_random_undo_error'};try{const _0x4efca0=redisClient['getClient']();if(_0x494d12){const _0x1b0e98=this['_buildActiveKey'](_0x3caa3e,_0x1d4b0b);await _0x4efca0['del'](_0x1b0e98);}else{const _0x5a7fcb=this[_0x2da29c(0x256)](_0x3caa3e);await _0x4efca0['srem'](_0x5a7fcb,_0x1d4b0b);}}catch(_0x4b66c1){logger[_0x2da29c(0x239)]({'event':_0x4cd177['DyLhW'],'error':_0x4b66c1[_0x2da29c(0x1fd)]},_0x2da29c(0x1d5));}}async[a0_0x1aa1c4(0x26d)](_0x53bf64,_0x70e598,_0x35f161,_0x24967e=0x0){const _0x4a6e21=a0_0x1aa1c4,_0x3dc83b={'VyHsz':function(_0x57f76e,_0x5a622e){return _0x57f76e(_0x5a622e);},'JiNzb':function(_0x1d1f0f,_0x29f13a){return _0x1d1f0f>_0x29f13a;},'NYLAP':_0x4a6e21(0x217)};try{const _0x2e82a8=redisClient[_0x4a6e21(0x2ac)](),_0x4bf59c=this[_0x4a6e21(0x225)](_0x53bf64,_0x70e598),_0x2ecaf1=[];for(const [_0x18ce77,_0x5b1964]of Object['entries'](_0x35f161)){_0x2ecaf1['push'](_0x18ce77,_0x3dc83b['VyHsz'](String,_0x5b1964));}if(_0x3dc83b['JiNzb'](_0x2ecaf1['length'],0x0)){await _0x2e82a8[_0x4a6e21(0x292)](_0x4bf59c,..._0x2ecaf1);if(_0x3dc83b[_0x4a6e21(0x2d7)](_0x24967e,0x0))await _0x2e82a8['expire'](_0x4bf59c,_0x24967e);}}catch(_0x19e49d){logger['warn']({'event':'idgen_meta_update_error','error':_0x19e49d[_0x4a6e21(0x1fd)]},_0x3dc83b['NYLAP']);}}async[a0_0x1aa1c4(0x246)](_0x3fcfba){const _0x19d96c=a0_0x1aa1c4,_0x1f48fa={'ujMOm':'ID\x20Generator\x20is\x20disabled\x20(set\x20IDGEN_ENABLED=true)','cDsvv':function(_0x44f68f,_0x5259c1){return _0x44f68f(_0x5259c1);},'EjTbF':'Failed\x20to\x20release\x20counter\x20for\x20idempotency\x20loser','dOgQl':'idgen_number_generated'};if(!this[_0x19d96c(0x210)])throw new IdGeneratorError(_0x19d96c(0x205),_0x1f48fa[_0x19d96c(0x238)]);const _0x41d895=this[_0x19d96c(0x2be)](_0x3fcfba),_0x453f8d=this['_validateIdempotencyKey'](_0x3fcfba[_0x19d96c(0x272)]),{resource:_0x1b3c73,format:_0x292bad,prefix:_0x262b20,separator:_0x32c9a8,numDigits:_0x4986fd,reuseDelete:_0x437b0e}=_0x41d895,{formatKey:_0x4224d1,datePrefix:_0x1f3c1c}=this['_buildFormatKey'](_0x292bad,_0x262b20),_0xdd74eb=this['_buildSeqKey'](_0x1b3c73,_0x4224d1),_0x392662=this[_0x19d96c(0x1d8)](_0x1b3c73,_0x4224d1),_0x24e97c=this[_0x19d96c(0x2a0)](_0x292bad);let _0x46e33e=null;if(_0x453f8d){_0x46e33e=this['_buildIdemKey'](_0x19d96c(0x246),_0x1b3c73,_0x4224d1,_0x453f8d);const _0x5eeb1e=await this[_0x19d96c(0x261)](_0x46e33e);if(_0x5eeb1e)return _0x5eeb1e;}const _0xfaba74=redisClient['getClient'](),_0x14ce32=await _0xfaba74[_0x19d96c(0x275)](LUA_GENERATE_NUMBER,0x2,_0xdd74eb,_0x392662,_0x437b0e?'1':'0',String(_0x24e97c)),_0x1f38e7=_0x14ce32[0x0],_0x1ddac8=_0x14ce32[0x1]===0x1,_0x5b8890=this[_0x19d96c(0x2bb)]({'format':_0x292bad,'prefix':_0x262b20,'datePrefix':_0x1f3c1c,'separator':_0x32c9a8,'numDigits':_0x4986fd,'counterInt':_0x1f38e7}),_0x161897={'value':_0x5b8890,'counter':_0x1f38e7,'resource':_0x1b3c73,'formatKey':_0x4224d1,'isReused':_0x1ddac8,'generatedAt':new Date()[_0x19d96c(0x242)]()},_0x531d09=await this['_storeIdemCacheNX'](_0x46e33e,_0x161897);if(!_0x531d09['stored']){try{await _0xfaba74[_0x19d96c(0x275)](LUA_RELEASE_NUMBER,0x1,_0x392662,String(_0x1f38e7),_0x1f48fa['cDsvv'](String,_0x24e97c));}catch(_0x4bf076){logger[_0x19d96c(0x239)]({'event':_0x19d96c(0x253),'error':_0x4bf076['message'],'resource':_0x1b3c73,'formatKey':_0x4224d1,'counterInt':_0x1f38e7},_0x1f48fa[_0x19d96c(0x1df)]);}return logger['info']({'event':'idgen_number_idem_loser','resource':_0x1b3c73,'formatKey':_0x4224d1,'counter':_0x1f38e7},'ID\x20Generator\x20number\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x531d09['winnerResult'];}return this[_0x19d96c(0x26d)](_0x1b3c73,_0x4224d1,{'lastValue':_0x5b8890,'lastCounter':_0x1f38e7,'lastIsReused':_0x1ddac8,'lastGeneratedAt':_0x161897['generatedAt']},_0x24e97c),logger[_0x19d96c(0x24d)]({'event':_0x1f48fa[_0x19d96c(0x200)],'resource':_0x1b3c73,'formatKey':_0x4224d1,'counter':_0x1f38e7,'isReused':_0x1ddac8},'ID\x20Generator\x20number:\x20'+_0x5b8890),_0x161897;}async['releaseNumber'](_0x394678){const _0xb72186=a0_0x1aa1c4,_0x17767c={'pwZNo':'ID\x20Generator\x20is\x20disabled','PPquX':function(_0x48ebe6,_0x4401a7){return _0x48ebe6!==_0x4401a7;},'EkGgL':'string','mvqNn':function(_0x21f493,_0x44d64f){return _0x21f493===_0x44d64f;},'ruoPi':function(_0xe92f65,_0x49532b){return _0xe92f65<_0x49532b;},'migXj':'IDGEN_INVALID_NUMBER','pUHHe':function(_0x558de0,_0x456840){return _0x558de0(_0x456840);},'FgdFM':'idgen_number_released'};if(!this[_0xb72186(0x210)])throw new IdGeneratorError(_0xb72186(0x205),_0x17767c['pwZNo']);let _0x191ccd,_0x3c5f37,_0x142200,_0x493c31;const _0x126feb=this['_validateIdempotencyKey'](_0x394678['idempotencyKey']);if(_0x394678[_0xb72186(0x22b)]!==undefined&&_0x17767c['PPquX'](_0x394678[_0xb72186(0x22b)],null)){this['_validateResource'](_0x394678['resource']),_0x191ccd=_0x394678['resource'];if(typeof _0x394678[_0xb72186(0x21b)]!==_0x17767c['EkGgL']||_0x17767c['mvqNn'](_0x394678[_0xb72186(0x21b)]['length'],0x0))throw new IdGeneratorError(_0xb72186(0x241),_0xb72186(0x28a));_0x3c5f37=_0x394678[_0xb72186(0x21b)];if(!Number[_0xb72186(0x2c9)](_0x394678[_0xb72186(0x22b)])||_0x17767c[_0xb72186(0x289)](_0x394678[_0xb72186(0x22b)],0x1))throw new IdGeneratorError(_0x17767c['migXj'],'counterInt\x20must\x20be\x20positive\x20integer\x20(got:\x20'+_0x394678['counterInt']+')');_0x142200=_0x394678['counterInt'];const _0x186e95=_0x3c5f37[_0xb72186(0x2d2)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/);_0x493c31=_0x186e95?_0x186e95[0x1]:_0xb72186(0x2e1);}else{const _0x2c91b8=this['_validateNumberParams'](_0x394678),_0x10c1cf=this['_parseNumber']({'format':_0x2c91b8['format'],'prefix':_0x2c91b8['prefix'],'separator':_0x2c91b8['separator'],'numDigits':_0x2c91b8['numDigits'],'number':_0x394678['number']});_0x191ccd=_0x2c91b8['resource'],_0x3c5f37=_0x10c1cf[_0xb72186(0x21b)],_0x142200=_0x10c1cf['counterInt'],_0x493c31=_0x2c91b8['format'];}const _0x3d3fad=this[_0xb72186(0x1d8)](_0x191ccd,_0x3c5f37),_0x264c81=this[_0xb72186(0x2a0)](_0x493c31);let _0x5e192a=null;if(_0x126feb){_0x5e192a=this['_buildIdemKey'](_0xb72186(0x29a),_0x191ccd,_0x3c5f37,_0x126feb);const _0x40ad7e=await this['_retrieveIdemCache'](_0x5e192a);if(_0x40ad7e)return _0x40ad7e;}const _0xb0a77f=redisClient['getClient']();await _0xb0a77f['eval'](LUA_RELEASE_NUMBER,0x1,_0x3d3fad,String(_0x142200),_0x17767c['pUHHe'](String,_0x264c81));const _0x1e666d={'released':!![],'resource':_0x191ccd,'formatKey':_0x3c5f37,'counter':_0x142200,'releasedAt':new Date()[_0xb72186(0x242)]()};return await this['_storeIdemCache'](_0x5e192a,_0x1e666d),this[_0xb72186(0x26d)](_0x191ccd,_0x3c5f37,{'lastReleasedCounter':_0x142200,'lastReleasedAt':_0x1e666d[_0xb72186(0x247)]},_0x264c81),logger['info']({'event':_0x17767c[_0xb72186(0x2df)],'resource':_0x191ccd,'formatKey':_0x3c5f37,'counter':_0x142200},_0xb72186(0x2d4)+_0x142200),_0x1e666d;}async['reserveNumber'](_0x205dae){const _0x227d43=a0_0x1aa1c4,_0x373466={'RnJiY':function(_0x1c55c9,_0x11bbd5){return _0x1c55c9+_0x11bbd5;},'sRFqF':function(_0x293b28,_0x41ea1d){return _0x293b28*_0x41ea1d;},'sqQBY':'resource','FZVar':'formatKey','DRBla':'format','JdAsK':_0x227d43(0x29c),'VolFW':_0x227d43(0x2b7),'WWiPE':function(_0x568357,_0x4adc4d){return _0x568357===_0x4adc4d;},'CqCWz':function(_0x6471d0,_0x41e71b){return _0x6471d0(_0x41e71b);},'wHYzj':_0x227d43(0x218),'WsLxx':_0x227d43(0x21d),'jeejo':'Failed\x20to\x20cancel\x20reservation\x20for\x20idempotency\x20loser','NRGiM':_0x227d43(0x202)};if(!this[_0x227d43(0x210)])throw new IdGeneratorError(_0x227d43(0x205),_0x227d43(0x2b1));const _0x4e3bb5=this['_validateNumberParams'](_0x205dae),_0x258b86=this['_validateReserveTTL'](_0x205dae['ttl']),_0x2d7a48=this[_0x227d43(0x233)](_0x205dae[_0x227d43(0x272)]),{resource:_0x564e9e,format:_0x3b7a1c,prefix:_0x557e35,separator:_0x5522db,numDigits:_0x81753b,reuseDelete:_0x299a1e}=_0x4e3bb5,{formatKey:_0x52033c,datePrefix:_0x46953a}=this[_0x227d43(0x262)](_0x3b7a1c,_0x557e35),_0xb37559=this['_buildSeqKey'](_0x564e9e,_0x52033c),_0x6970f2=this[_0x227d43(0x1d8)](_0x564e9e,_0x52033c),_0x5eba36=this[_0x227d43(0x234)](_0x564e9e,_0x52033c),_0x3b25be=this['_getCounterTTL'](_0x3b7a1c);let _0x36e626=null;if(_0x2d7a48){_0x36e626=this['_buildIdemKey'](_0x227d43(0x2bf),_0x564e9e,_0x52033c,_0x2d7a48);const _0xe15bee=await this['_retrieveIdemCache'](_0x36e626);if(_0xe15bee)return _0xe15bee;}const _0x42e079=crypto['randomUUID'](),_0x3e335b=this['_buildReservationKey'](_0x42e079),_0x2c3976=this['_buildReservationKeyPrefix'](),_0x444adf=Date['now'](),_0x26c392=_0x373466['RnJiY'](_0x444adf,_0x373466[_0x227d43(0x2db)](_0x258b86,0x3e8)),_0x488892=_0x373466['sRFqF'](_0x258b86,0x3e8),_0x1756ab=new Date(_0x444adf)['toISOString'](),_0x4054cf=new Date(_0x26c392)[_0x227d43(0x242)](),_0x577a9c=[_0x373466[_0x227d43(0x20e)],_0x564e9e,_0x373466[_0x227d43(0x1d1)],_0x52033c,_0x373466[_0x227d43(0x2e0)],_0x3b7a1c,_0x227d43(0x1d3),_0x557e35,'separator',_0x5522db,'numDigits',String(_0x81753b),_0x373466['JdAsK'],_0x46953a||'','createdAt',_0x1756ab,'expiresAt',_0x4054cf,_0x373466[_0x227d43(0x26f)],String(_0x488892)];_0x2d7a48&&_0x577a9c['push']('idemKey',_0x2d7a48);const _0x11ad0a=redisClient[_0x227d43(0x2ac)](),_0x4254a8=await _0x11ad0a['eval'](LUA_RESERVE_NUMBER,0x3,_0xb37559,_0x6970f2,_0x5eba36,_0x299a1e?'1':'0',String(_0x3b25be),_0x42e079,_0x3e335b,String(_0x488892),String(_0x26c392),String(_0x444adf),_0x2c3976,..._0x577a9c),_0x174a80=_0x4254a8[0x0],_0x25e7d9=_0x373466[_0x227d43(0x291)](_0x4254a8[0x1],0x1),_0x550fd5=_0x4254a8[0x2]||0x0;let _0x58e96f;try{_0x58e96f=this['_formatNumber']({'format':_0x3b7a1c,'prefix':_0x557e35,'datePrefix':_0x46953a,'separator':_0x5522db,'numDigits':_0x81753b,'counterInt':_0x174a80});}catch(_0xd38647){try{await _0x11ad0a[_0x227d43(0x275)](LUA_CANCEL_RESERVATION,0x3,_0x3e335b,_0x5eba36,_0x6970f2,_0x42e079,_0x373466['CqCWz'](String,_0x3b25be));}catch(_0x4a5efa){logger['warn']({'event':_0x227d43(0x1ee),'error':_0x4a5efa[_0x227d43(0x1fd)],'resource':_0x564e9e,'formatKey':_0x52033c,'counterInt':_0x174a80,'token':_0x42e079},'Failed\x20to\x20compensate\x20reservation\x20after\x20counter\x20overflow');}throw _0xd38647;}try{await _0x11ad0a['hset'](_0x3e335b,'value',_0x58e96f);}catch(_0x336456){logger[_0x227d43(0x239)]({'event':_0x227d43(0x26b),'error':_0x336456['message'],'resource':_0x564e9e,'formatKey':_0x52033c,'counterInt':_0x174a80,'token':_0x42e079},_0x373466[_0x227d43(0x2a3)]);}const _0x28f8ac={'token':_0x42e079,'value':_0x58e96f,'counter':_0x174a80,'resource':_0x564e9e,'formatKey':_0x52033c,'isReused':_0x25e7d9,'createdAt':_0x1756ab,'expiresAt':_0x4054cf,'reapedCount':_0x550fd5},_0x36b968=await this['_storeIdemCacheNX'](_0x36e626,_0x28f8ac);if(!_0x36b968['stored']){try{await _0x11ad0a[_0x227d43(0x275)](LUA_CANCEL_RESERVATION,0x3,_0x3e335b,_0x5eba36,_0x6970f2,_0x42e079,String(_0x3b25be));}catch(_0x23131e){logger[_0x227d43(0x239)]({'event':_0x373466[_0x227d43(0x20b)],'error':_0x23131e[_0x227d43(0x1fd)],'resource':_0x564e9e,'formatKey':_0x52033c,'counterInt':_0x174a80,'token':_0x42e079},_0x373466['jeejo']);}return logger[_0x227d43(0x24d)]({'event':_0x373466['NRGiM'],'resource':_0x564e9e,'formatKey':_0x52033c,'counter':_0x174a80,'token':_0x42e079},'ID\x20Generator\x20reserve\x20idem\x20race\x20lost,\x20returning\x20winner\x20envelope'),_0x36b968[_0x227d43(0x25f)];}return this['_updateMeta'](_0x564e9e,_0x52033c,{'lastReservedCounter':_0x174a80,'lastReservedAt':_0x1756ab,'lastReapedCount':_0x550fd5},_0x3b25be),logger['info']({'event':'idgen_number_reserved','resource':_0x564e9e,'formatKey':_0x52033c,'counter':_0x174a80,'isReused':_0x25e7d9,'token':_0x42e079,'ttl':_0x258b86,'reapedCount':_0x550fd5},_0x227d43(0x2cd)+_0x58e96f+'\x20(token='+_0x42e079+')'),_0x28f8ac;}async[a0_0x1aa1c4(0x207)](_0x32c173){const _0xd424a6=a0_0x1aa1c4,_0x529c4c={'OukPJ':'ID\x20Generator\x20is\x20disabled','IKCIq':_0xd424a6(0x235),'eYwkv':_0xd424a6(0x2ba),'ohqBG':'IDGEN_RESERVATION_NOT_FOUND','kOtHP':function(_0x9204bd,_0x1e5102,_0x52897a){return _0x9204bd(_0x1e5102,_0x52897a);},'reJcB':'idgen_reservation_confirmed'};if(!this[_0xd424a6(0x210)])throw new IdGeneratorError(_0xd424a6(0x205),_0x529c4c['OukPJ']);const _0x67b798=this['_validateReservationToken'](_0x32c173&&_0x32c173[_0xd424a6(0x249)]),_0x307b76=this[_0xd424a6(0x233)](_0x32c173&&_0x32c173[_0xd424a6(0x272)]);let _0x3c8601=null;if(_0x307b76){_0x3c8601=idempotencyManager[_0xd424a6(0x28b)](_0x529c4c['IKCIq'],_0x529c4c['eYwkv'],_0x67b798+':'+_0x307b76);const _0x3ef40a=await this[_0xd424a6(0x261)](_0x3c8601);if(_0x3ef40a)return _0x3ef40a;}const _0x537aee=await this['_getReservationContext'](_0x67b798),_0x2611a5=redisClient['getClient'](),_0xb71886=await _0x2611a5['eval'](LUA_CONFIRM_RESERVATION,0x2,_0x537aee[_0xd424a6(0x216)],_0x537aee['rsvIdxKey'],_0x67b798);if(!_0xb71886||_0xb71886[0x0]!==0x1)throw new IdGeneratorError(_0x529c4c[_0xd424a6(0x2ce)],_0xd424a6(0x277)+_0x67b798,{'token':_0x67b798});const _0x17ad0c=_0x529c4c['kOtHP'](parseInt,_0xb71886[0x1],0xa),_0xf75856=_0xb71886[0x2],_0x1b8568=_0xb71886[0x3],_0x258d13=new Date()['toISOString'](),_0x297562={'confirmed':!![],'token':_0x67b798,'value':_0xf75856,'counter':_0x17ad0c,'resource':_0x537aee[_0xd424a6(0x236)],'formatKey':_0x1b8568,'confirmedAt':_0x258d13};await this[_0xd424a6(0x2a9)](_0x3c8601,_0x297562);const _0x37fc13=_0x1b8568['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x3b092b=_0x37fc13?_0x37fc13[0x1]:'text',_0x2eaf12=this[_0xd424a6(0x2a0)](_0x3b092b);return this[_0xd424a6(0x26d)](_0x537aee[_0xd424a6(0x236)],_0x1b8568,{'lastConfirmedCounter':_0x17ad0c,'lastConfirmedAt':_0x258d13},_0x2eaf12),logger['info']({'event':_0x529c4c['reJcB'],'resource':_0x537aee[_0xd424a6(0x236)],'formatKey':_0x1b8568,'counter':_0x17ad0c,'token':_0x67b798},'ID\x20Generator\x20reservation\x20confirmed:\x20'+_0xf75856+_0xd424a6(0x2cf)+_0x67b798+')'),_0x297562;}async['cancelReservation'](_0x24cad4){const _0x2fe53f=a0_0x1aa1c4,_0x653214={'UIzrj':'IDGEN_DISABLED','eNkMa':_0x2fe53f(0x2dc),'YBePy':'idgen','wIcsf':function(_0x5ae050,_0x3e2b27){return _0x5ae050(_0x3e2b27);},'dBVaC':function(_0x493737,_0x4d62bd){return _0x493737!==_0x4d62bd;},'UyUMz':'IDGEN_RESERVATION_NOT_FOUND','qBtSD':'idgen_reservation_cancelled'};if(!this[_0x2fe53f(0x210)])throw new IdGeneratorError(_0x653214['UIzrj'],_0x653214['eNkMa']);const _0x4eead8=this['_validateReservationToken'](_0x24cad4&&_0x24cad4['token']),_0x3c122a=this[_0x2fe53f(0x233)](_0x24cad4&&_0x24cad4[_0x2fe53f(0x272)]);let _0x2a2cf6=null;if(_0x3c122a){_0x2a2cf6=idempotencyManager[_0x2fe53f(0x28b)](_0x653214['YBePy'],_0x2fe53f(0x1f2),_0x4eead8+':'+_0x3c122a);const _0x19f148=await this['_retrieveIdemCache'](_0x2a2cf6);if(_0x19f148)return _0x19f148;}const _0xd38465=await this[_0x2fe53f(0x23a)](_0x4eead8),_0x5aff92=this['_buildReuseKey'](_0xd38465[_0x2fe53f(0x236)],_0xd38465['formatKey']),_0x2bfa87=_0xd38465['formatKey'][_0x2fe53f(0x2d2)](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x42f4b4=_0x2bfa87?_0x2bfa87[0x1]:'text',_0x3f1a5c=this['_getCounterTTL'](_0x42f4b4),_0x59a989=redisClient['getClient'](),_0x4c157c=await _0x59a989['eval'](LUA_CANCEL_RESERVATION,0x3,_0xd38465[_0x2fe53f(0x216)],_0xd38465[_0x2fe53f(0x1ed)],_0x5aff92,_0x4eead8,_0x653214[_0x2fe53f(0x226)](String,_0x3f1a5c));if(!_0x4c157c||_0x653214[_0x2fe53f(0x270)](_0x4c157c[0x0],0x1))throw new IdGeneratorError(_0x653214['UyUMz'],_0x2fe53f(0x277)+_0x4eead8,{'token':_0x4eead8});const _0x3f473f=parseInt(_0x4c157c[0x1],0xa),_0x576606=_0x4c157c[0x2],_0x4cc834=_0x4c157c[0x3],_0x34c50e=new Date()[_0x2fe53f(0x242)](),_0x1965b1={'cancelled':!![],'token':_0x4eead8,'value':_0x576606,'counter':_0x3f473f,'resource':_0xd38465['resource'],'formatKey':_0x4cc834,'releasedToReuse':!![],'cancelledAt':_0x34c50e};return await this[_0x2fe53f(0x2a9)](_0x2a2cf6,_0x1965b1),this['_updateMeta'](_0xd38465[_0x2fe53f(0x236)],_0x4cc834,{'lastCancelledCounter':_0x3f473f,'lastCancelledAt':_0x34c50e},_0x3f1a5c),logger['info']({'event':_0x653214['qBtSD'],'resource':_0xd38465['resource'],'formatKey':_0x4cc834,'counter':_0x3f473f,'token':_0x4eead8},_0x2fe53f(0x211)+_0x576606+'\x20(token='+_0x4eead8+')'),_0x1965b1;}async['extendReservation'](_0x211642){const _0x5a33f6=a0_0x1aa1c4,_0x59728b={'jMeHs':_0x5a33f6(0x25e),'kWhHY':function(_0x12f7ec,_0x4d4508){return _0x12f7ec+_0x4d4508;},'mNMdh':function(_0x125a6c,_0xe591c4){return _0x125a6c*_0xe591c4;},'xVYrf':function(_0x4229a7,_0x3cd94c){return _0x4229a7(_0x3cd94c);},'FIVsg':function(_0xf5a916,_0x15f801){return _0xf5a916!==_0x15f801;},'fCwoC':function(_0x28db9b,_0x58ea1b,_0x550a38){return _0x28db9b(_0x58ea1b,_0x550a38);}};if(!this['enabled'])throw new IdGeneratorError('IDGEN_DISABLED',_0x5a33f6(0x2dc));const _0x5cde87=this[_0x5a33f6(0x1ff)](_0x211642&&_0x211642[_0x5a33f6(0x249)]),_0x52d6d4=this[_0x5a33f6(0x2a6)](_0x211642&&_0x211642['ttl']),_0x475ef5=this[_0x5a33f6(0x233)](_0x211642&&_0x211642[_0x5a33f6(0x272)]);let _0x2130c8=null;if(_0x475ef5){_0x2130c8=idempotencyManager['buildDeterministicKey'](_0x5a33f6(0x235),_0x59728b['jMeHs'],_0x5cde87+':'+_0x475ef5);const _0x2ecf44=await this[_0x5a33f6(0x261)](_0x2130c8);if(_0x2ecf44)return _0x2ecf44;}const _0x255d29=await this['_getReservationContext'](_0x5cde87),_0x4e8d84=Date['now'](),_0x149221=_0x59728b['kWhHY'](_0x4e8d84,_0x59728b['mNMdh'](_0x52d6d4,0x3e8)),_0x5a8ddb=_0x52d6d4*0x3e8,_0x3093d6=new Date(_0x149221)['toISOString'](),_0x3b871c=redisClient['getClient'](),_0x26b903=await _0x3b871c['eval'](LUA_EXTEND_RESERVATION,0x2,_0x255d29['rsvKey'],_0x255d29[_0x5a33f6(0x1ed)],_0x5cde87,_0x59728b['xVYrf'](String,_0x5a8ddb),String(_0x149221),_0x3093d6);if(!_0x26b903||_0x59728b['FIVsg'](_0x26b903[0x0],0x1))throw new IdGeneratorError(_0x5a33f6(0x23d),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x5cde87,{'token':_0x5cde87});const _0x1aba31=_0x26b903[0x1],_0x2ea743=_0x59728b[_0x5a33f6(0x1eb)](parseInt,_0x26b903[0x2],0xa),_0x3a7ca3=_0x26b903[0x3],_0x3118c0=_0x26b903[0x4],_0x14f7be=new Date(_0x4e8d84)[_0x5a33f6(0x242)](),_0x127caa={'extended':!![],'token':_0x5cde87,'previousExpiresAt':_0x1aba31,'expiresAt':_0x3093d6,'ttlMs':_0x5a8ddb,'resource':_0x255d29['resource'],'formatKey':_0x3118c0,'counter':_0x2ea743,'value':_0x3a7ca3,'extendedAt':_0x14f7be};await this['_storeIdemCache'](_0x2130c8,_0x127caa);const _0x57a1b6=_0x3118c0['match'](/_(text|yyyy|yyyymm|yyyymmdd)(?:_|$)/),_0x43275a=_0x57a1b6?_0x57a1b6[0x1]:_0x5a33f6(0x2e1),_0x29084e=this[_0x5a33f6(0x2a0)](_0x43275a);return this['_updateMeta'](_0x255d29[_0x5a33f6(0x236)],_0x3118c0,{'lastExtendedCounter':_0x2ea743,'lastExtendedAt':_0x14f7be},_0x29084e),logger[_0x5a33f6(0x24d)]({'event':_0x5a33f6(0x2de),'resource':_0x255d29['resource'],'formatKey':_0x3118c0,'counter':_0x2ea743,'token':_0x5cde87,'ttl':_0x52d6d4},'ID\x20Generator\x20reservation\x20extended:\x20'+_0x3a7ca3+'\x20(token='+_0x5cde87+',\x20+'+_0x52d6d4+'s)'),_0x127caa;}async[a0_0x1aa1c4(0x2c6)](_0x3ebd4f){const _0x2d92f3=a0_0x1aa1c4,_0x5b566f={'AbbSD':_0x2d92f3(0x205),'EGvvk':_0x2d92f3(0x2dc),'IXvTr':function(_0x4a1a9e,_0x2a8535,_0xd2842e){return _0x4a1a9e(_0x2a8535,_0xd2842e);},'ssUeS':function(_0x19a182,_0x541063){return _0x19a182===_0x541063;},'qGKRI':function(_0x3934c1,_0x3ac856){return _0x3934c1>=_0x3ac856;}};if(!this['enabled'])throw new IdGeneratorError(_0x5b566f[_0x2d92f3(0x259)],_0x5b566f[_0x2d92f3(0x22d)]);const _0x5c4bdb=this[_0x2d92f3(0x1ff)](_0x3ebd4f&&_0x3ebd4f['token']),_0x4afe0e=this[_0x2d92f3(0x2c7)](_0x5c4bdb),_0xc27c5f=redisClient['getClient'](),_0x549276=_0xc27c5f['pipeline']();_0x549276['hgetall'](_0x4afe0e),_0x549276[_0x2d92f3(0x266)](_0x4afe0e);const _0x1918f1=await _0x549276[_0x2d92f3(0x1d9)](),_0x38b38c=_0x1918f1&&_0x1918f1[0x0]&&_0x1918f1[0x0][0x1],_0x152d63=_0x1918f1&&_0x1918f1[0x1]&&_0x1918f1[0x1][0x1];if(!_0x38b38c||Object[_0x2d92f3(0x23c)](_0x38b38c)[_0x2d92f3(0x243)]===0x0)throw new IdGeneratorError(_0x2d92f3(0x23d),_0x2d92f3(0x277)+_0x5c4bdb,{'token':_0x5c4bdb});return{'token':_0x5c4bdb,'resource':_0x38b38c['resource']||null,'formatKey':_0x38b38c[_0x2d92f3(0x21b)]||null,'format':_0x38b38c[_0x2d92f3(0x260)]||null,'prefix':_0x38b38c[_0x2d92f3(0x1d3)]||'','separator':_0x38b38c[_0x2d92f3(0x1e3)]||'','numDigits':_0x38b38c[_0x2d92f3(0x2af)]?_0x5b566f[_0x2d92f3(0x212)](parseInt,_0x38b38c[_0x2d92f3(0x2af)],0xa):null,'datePrefix':_0x38b38c[_0x2d92f3(0x29c)]||'','counter':_0x38b38c[_0x2d92f3(0x1d6)]?parseInt(_0x38b38c[_0x2d92f3(0x1d6)],0xa):null,'value':_0x38b38c[_0x2d92f3(0x2d8)]||null,'isReused':_0x38b38c['isReused']==='1'||_0x5b566f['ssUeS'](_0x38b38c['isReused'],0x1),'createdAt':_0x38b38c['createdAt']||null,'expiresAt':_0x38b38c[_0x2d92f3(0x23b)]||null,'ttlRemainingMs':_0x5b566f['ssUeS'](typeof _0x152d63,_0x2d92f3(0x246))&&_0x5b566f['qGKRI'](_0x152d63,0x0)?_0x152d63:null};}async[a0_0x1aa1c4(0x23a)](_0x58a46b){const _0x196932=a0_0x1aa1c4,_0x341dac=this['_buildReservationKey'](_0x58a46b),_0x1e0f7d=redisClient[_0x196932(0x2ac)](),_0xa689e8=await _0x1e0f7d['hmget'](_0x341dac,_0x196932(0x236),'formatKey'),_0x3e42cf=_0xa689e8&&_0xa689e8[0x0],_0x20c0ba=_0xa689e8&&_0xa689e8[0x1];if(!_0x3e42cf||!_0x20c0ba)throw new IdGeneratorError(_0x196932(0x23d),'Reservation\x20not\x20found\x20or\x20already\x20consumed:\x20'+_0x58a46b,{'token':_0x58a46b});return{'resource':_0x3e42cf,'formatKey':_0x20c0ba,'rsvKey':_0x341dac,'rsvIdxKey':this['_buildReservationIndexKey'](_0x3e42cf,_0x20c0ba)};}async[a0_0x1aa1c4(0x2d6)](_0x36977d){const _0x1f86e6=a0_0x1aa1c4,_0x425ed2={'Gxpip':'IDGEN_DISABLED','bXxDs':function(_0x16d6e9,_0x232578){return _0x16d6e9===_0x232578;},'YLKAd':_0x1f86e6(0x2d6),'jfTOP':function(_0x53d7bf,_0x5855bc){return _0x53d7bf<_0x5855bc;},'AiEEE':_0x1f86e6(0x21c),'aeuxm':function(_0x259bac,_0x8536a){return _0x259bac&&_0x8536a;},'rRyGY':function(_0x2b0c6e,_0x5e393c){return _0x2b0c6e*_0x5e393c;},'xJYUa':_0x1f86e6(0x251)};if(!this[_0x1f86e6(0x210)])throw new IdGeneratorError(_0x425ed2[_0x1f86e6(0x25d)],'ID\x20Generator\x20is\x20disabled');this[_0x1f86e6(0x299)](_0x36977d['resource']),this[_0x1f86e6(0x1f7)](_0x36977d['pattern']);const _0x46b735=this[_0x1f86e6(0x1f9)](_0x36977d['ttl']),_0x53dc72=this['_validateMaxRetry'](_0x36977d['maxRetry']),_0x2de783=this['_validateIdempotencyKey'](_0x36977d['idempotencyKey']),_0x42c694=_0x425ed2[_0x1f86e6(0x29d)](_0x36977d['ensureUnique'],!![]),{resource:_0x508216,pattern:_0x18dba5}=_0x36977d;let _0x4cb4c0=null;if(_0x2de783){_0x4cb4c0=this[_0x1f86e6(0x297)](_0x425ed2['YLKAd'],_0x508216,null,_0x2de783);const _0x23bfb8=await this[_0x1f86e6(0x261)](_0x4cb4c0);if(_0x23bfb8)return _0x23bfb8;}const _0x38d2d4=redisClient[_0x1f86e6(0x2ac)]();let _0x4f6252=null,_0x23334e=0x0;if(!_0x42c694)_0x4f6252=this['_generateFromPattern'](_0x18dba5),_0x23334e=0x1;else{for(let _0x31ebd3=0x0;_0x425ed2['jfTOP'](_0x31ebd3,_0x53dc72);_0x31ebd3++){_0x23334e++;const _0x4fa4cf=this[_0x1f86e6(0x1ea)](_0x18dba5);if(_0x46b735){const _0x40c81c=this[_0x1f86e6(0x24e)](_0x508216,_0x4fa4cf),_0x1f515c=await _0x38d2d4['set'](_0x40c81c,'1','EX',_0x46b735,'NX');if(_0x425ed2['bXxDs'](_0x1f515c,'OK')){_0x4f6252=_0x4fa4cf;break;}}else{const _0x47ade7=this[_0x1f86e6(0x256)](_0x508216),_0x4f3923=await _0x38d2d4[_0x1f86e6(0x2cb)](_0x47ade7,_0x4fa4cf);if(_0x4f3923===0x1){_0x4f6252=_0x4fa4cf;break;}}}if(_0x4f6252===null)throw new IdGeneratorError(_0x425ed2['AiEEE'],_0x1f86e6(0x1f1)+_0x53dc72+_0x1f86e6(0x222),{'resource':_0x508216,'pattern':_0x18dba5,'maxRetry':_0x53dc72});}const _0x399f29={'value':_0x4f6252,'resource':_0x508216,'pattern':_0x18dba5,'attemptCount':_0x23334e,'generatedAt':new Date()['toISOString']()};_0x425ed2['aeuxm'](_0x46b735,_0x42c694)&&(_0x399f29['expiresAt']=new Date(Date[_0x1f86e6(0x2b5)]()+_0x425ed2['rRyGY'](_0x46b735,0x3e8))[_0x1f86e6(0x242)]());const _0x411b6a=await this['_storeIdemCacheNX'](_0x4cb4c0,_0x399f29);if(!_0x411b6a['stored'])return _0x42c694&&await this['_undoRandomReservation'](_0x508216,_0x4f6252,_0x46b735),logger['info']({'event':_0x1f86e6(0x24b),'resource':_0x508216,'pattern':_0x18dba5,'value':_0x4f6252},_0x1f86e6(0x21f)),_0x411b6a[_0x1f86e6(0x25f)];return logger[_0x1f86e6(0x24d)]({'event':_0x425ed2['xJYUa'],'resource':_0x508216,'pattern':_0x18dba5,'attemptCount':_0x23334e,'ensureUnique':_0x42c694,'ttl':_0x46b735||0x0},'ID\x20Generator\x20random:\x20'+_0x4f6252),_0x399f29;}async['pin'](_0x2844b8){const _0x3ee0f6=a0_0x1aa1c4,_0x48e87e={'kXXTZ':function(_0x3f5c71,_0x55090f){return _0x3f5c71==_0x55090f;},'PRzco':_0x3ee0f6(0x220),'iccQx':function(_0x22a8a1,_0x5a6f3d){return _0x22a8a1===_0x5a6f3d;}},_0x54faa7=_0x48e87e['kXXTZ'](_0x2844b8[_0x3ee0f6(0x2a1)],null)?this[_0x3ee0f6(0x29b)]:_0x2844b8['digits'];if(!Number['isInteger'](_0x54faa7)||_0x54faa7<MIN_PIN_DIGITS||_0x54faa7>MAX_PIN_DIGITS)throw new IdGeneratorError(_0x48e87e['PRzco'],'Invalid\x20digits:\x20must\x20be\x20integer\x20'+MIN_PIN_DIGITS+'-'+MAX_PIN_DIGITS+_0x3ee0f6(0x2a2)+_0x54faa7+')');const _0x2d567b='9'['repeat'](_0x54faa7);return this['random']({'resource':_0x2844b8['resource'],'pattern':_0x2d567b,'ensureUnique':_0x48e87e[_0x3ee0f6(0x28c)](_0x2844b8[_0x3ee0f6(0x206)],!![]),'ttl':_0x2844b8[_0x3ee0f6(0x2b0)],'maxRetry':_0x2844b8[_0x3ee0f6(0x1e4)],'idempotencyKey':_0x2844b8[_0x3ee0f6(0x272)]});}async[a0_0x1aa1c4(0x294)](_0x4f4928){const _0x5127e9=a0_0x1aa1c4,_0x16bbd7={'TNFPT':function(_0x38b58b,_0x1ed808){return _0x38b58b!==_0x1ed808;}},_0x3fab56=_0x4f4928[_0x5127e9(0x2c3)]||this['defaultSerialPattern'];return this['random']({'resource':_0x4f4928['resource'],'pattern':_0x3fab56,'ensureUnique':_0x16bbd7['TNFPT'](_0x4f4928['ensureUnique'],![]),'ttl':_0x4f4928['ttl'],'maxRetry':_0x4f4928['maxRetry'],'idempotencyKey':_0x4f4928['idempotencyKey']});}async['code'](_0x6d569f){const _0xa701aa=a0_0x1aa1c4,_0x51b1bf=_0x6d569f['pattern']||this['defaultCodePattern'];return this[_0xa701aa(0x2d6)]({'resource':_0x6d569f['resource'],'pattern':_0x51b1bf,'ensureUnique':_0x6d569f[_0xa701aa(0x206)]!==![],'ttl':_0x6d569f['ttl'],'maxRetry':_0x6d569f[_0xa701aa(0x1e4)],'idempotencyKey':_0x6d569f['idempotencyKey']});}async[a0_0x1aa1c4(0x232)](_0x706972){const _0x17408f=a0_0x1aa1c4,_0x47c39d={'RZQoM':'IDGEN_DISABLED','QncGF':function(_0x459d3e,_0x432c87){return _0x459d3e!==_0x432c87;},'rtUQg':'value\x20is\x20required'};if(!this[_0x17408f(0x210)])throw new IdGeneratorError(_0x47c39d[_0x17408f(0x221)],'ID\x20Generator\x20is\x20disabled');this['_validateResource'](_0x706972['resource']);if(_0x47c39d['QncGF'](typeof _0x706972['value'],_0x17408f(0x1e9))||_0x706972[_0x17408f(0x2d8)]['length']===0x0)throw new IdGeneratorError(_0x17408f(0x241),_0x47c39d['rtUQg']);const {resource:_0xd72f47,value:_0x1a79c4}=_0x706972,_0x210057=redisClient[_0x17408f(0x2ac)](),_0x6604fa=this['_buildActiveKey'](_0xd72f47,_0x1a79c4),_0x16672f=this['_buildIssuedKey'](_0xd72f47),[_0x4ed03c,_0x2fb07b]=await Promise[_0x17408f(0x282)]([_0x210057[_0x17408f(0x1f3)](_0x6604fa),_0x210057[_0x17408f(0x287)](_0x16672f,_0x1a79c4)]),_0x5d6d3b=_0x4ed03c+_0x2fb07b>0x0;return logger[_0x17408f(0x24d)]({'event':'idgen_consumed','resource':_0xd72f47,'value':_0x1a79c4,'consumed':_0x5d6d3b},_0x17408f(0x20c)+_0x1a79c4),{'consumed':_0x5d6d3b,'resource':_0xd72f47,'value':_0x1a79c4,'consumedAt':new Date()[_0x17408f(0x242)]()};}async['peek'](_0x3735f4){const _0x3bba30=a0_0x1aa1c4,_0x3f57ad={'weZLu':'IDGEN_DISABLED','PTGoE':'ID\x20Generator\x20is\x20disabled','xghZJ':_0x3bba30(0x246),'JSDOk':_0x3bba30(0x2b6),'LKIdw':function(_0x2c76ce,_0x54d8fd){return _0x2c76ce||_0x54d8fd;},'pOWkt':function(_0xec6b25,_0x4e2dee){return _0xec6b25===_0x4e2dee;},'WJyhk':function(_0x17f0fd,_0x401315){return _0x17f0fd||_0x401315;}};if(!this['enabled'])throw new IdGeneratorError(_0x3f57ad['weZLu'],_0x3f57ad[_0x3bba30(0x27d)]);this['_validateResource'](_0x3735f4[_0x3bba30(0x236)]);const _0xa483fc=_0x3735f4[_0x3bba30(0x1fe)]||_0x3f57ad[_0x3bba30(0x203)],_0x41647a=redisClient[_0x3bba30(0x2ac)]();if(_0xa483fc===_0x3f57ad[_0x3bba30(0x203)]){const _0x2b352c=(_0x3735f4['format']||_0x3bba30(0x2e1))['toLowerCase']();if(!ALLOWED_FORMATS[_0x3bba30(0x23f)](_0x2b352c))throw new IdGeneratorError(_0x3f57ad['JSDOk'],_0x3bba30(0x204)+_0x3735f4['format']);const {formatKey:_0x16372f}=this['_buildFormatKey'](_0x2b352c,_0x3735f4['prefix']||''),_0xba6483=this['_buildSeqKey'](_0x3735f4[_0x3bba30(0x236)],_0x16372f),_0x56eaf0=this['_buildReuseKey'](_0x3735f4['resource'],_0x16372f),[_0x318a7d,_0x563a2f]=await Promise[_0x3bba30(0x282)]([_0x41647a['get'](_0xba6483),_0x41647a['zcard'](_0x56eaf0)]);return{'resource':_0x3735f4['resource'],'mode':_0x3f57ad[_0x3bba30(0x203)],'formatKey':_0x16372f,'currentCounter':parseInt(_0x318a7d,0xa)||0x0,'reusePoolSize':_0x3f57ad[_0x3bba30(0x240)](_0x563a2f,0x0)};}if(_0x3f57ad['pOWkt'](_0xa483fc,'random')){const _0x10dd9a=this['_buildIssuedKey'](_0x3735f4['resource']),_0x1115ca=await _0x41647a['scard'](_0x10dd9a);return{'resource':_0x3735f4[_0x3bba30(0x236)],'mode':'random','issuedCount':_0x3f57ad['WJyhk'](_0x1115ca,0x0)};}throw new IdGeneratorError(_0x3bba30(0x208),'Unknown\x20mode:\x20'+_0xa483fc);}async['getInfo'](_0x1d8667){const _0x136644=a0_0x1aa1c4,_0x231ffb={'WLyIl':function(_0x30976e,_0x10ae92){return _0x30976e===_0x10ae92;},'guGPo':function(_0x25f485,_0x28d074){return _0x25f485>_0x28d074;}},_0x4880e9=await this[_0x136644(0x26c)](_0x1d8667);if(_0x231ffb['WLyIl'](_0x4880e9[_0x136644(0x1fe)],'number')){const _0x59ad10=redisClient['getClient'](),_0x1a4097=this['_buildMetaKey'](_0x1d8667[_0x136644(0x236)],_0x4880e9[_0x136644(0x21b)]),_0x286c02=this[_0x136644(0x1d8)](_0x1d8667[_0x136644(0x236)],_0x4880e9['formatKey']),[_0x34f2ee,_0x342251]=await Promise['all']([_0x59ad10[_0x136644(0x209)](_0x1a4097),_0x59ad10['zrange'](_0x286c02,0x0,-0x1)]);return{..._0x4880e9,'reusePoolValues':_0x342251['map'](_0x2efc21=>parseInt(_0x2efc21,0xa)),'meta':_0x34f2ee&&_0x231ffb[_0x136644(0x1dd)](Object[_0x136644(0x23c)](_0x34f2ee)['length'],0x0)?_0x34f2ee:null};}return _0x4880e9;}async[a0_0x1aa1c4(0x2cc)](_0x28048d){const _0x143c0a=a0_0x1aa1c4,_0x2ebef7={'ZqgGz':'ID\x20Generator\x20is\x20disabled','YEvmA':'IDGEN_RESET_NOT_ALLOWED','qCZnZ':_0x143c0a(0x293),'SZwlP':function(_0x55f730,_0x10a811){return _0x55f730===_0x10a811;},'YnlaM':_0x143c0a(0x246),'RlpPA':'text','GFJrn':function(_0x5ee349,_0x54c6ba){return _0x5ee349===_0x54c6ba;},'PJWgi':'random'};if(!this[_0x143c0a(0x210)])throw new IdGeneratorError('IDGEN_DISABLED',_0x2ebef7['ZqgGz']);if(!this[_0x143c0a(0x1dc)])throw new IdGeneratorError(_0x2ebef7['YEvmA'],_0x2ebef7['qCZnZ']);this[_0x143c0a(0x299)](_0x28048d['resource']);const _0x4459c8=_0x28048d[_0x143c0a(0x1fe)]||_0x143c0a(0x246),_0x12abb4=redisClient[_0x143c0a(0x2ac)]();if(_0x2ebef7[_0x143c0a(0x2b4)](_0x4459c8,_0x2ebef7['YnlaM'])){const _0x583df6=(_0x28048d['format']||_0x2ebef7[_0x143c0a(0x25b)])['toLowerCase']();if(!ALLOWED_FORMATS['has'](_0x583df6))throw new IdGeneratorError(_0x143c0a(0x2b6),_0x143c0a(0x204)+_0x28048d[_0x143c0a(0x260)]);const {formatKey:_0x298500}=this['_buildFormatKey'](_0x583df6,_0x28048d[_0x143c0a(0x1d3)]||''),_0x29403a=this['_buildSeqKey'](_0x28048d['resource'],_0x298500),_0x304129=this['_buildReuseKey'](_0x28048d['resource'],_0x298500),_0x2fee82=this[_0x143c0a(0x225)](_0x28048d['resource'],_0x298500);return await _0x12abb4[_0x143c0a(0x1f3)](_0x29403a,_0x304129,_0x2fee82),logger['warn']({'event':'idgen_reset','resource':_0x28048d[_0x143c0a(0x236)],'mode':_0x2ebef7['YnlaM'],'formatKey':_0x298500},_0x143c0a(0x281)+_0x28048d['resource']+':'+_0x298500),{'reset':!![],'resource':_0x28048d[_0x143c0a(0x236)],'mode':_0x2ebef7[_0x143c0a(0x2a8)],'formatKey':_0x298500,'deletedKeys':['seq',_0x143c0a(0x2bc),_0x143c0a(0x264)]};}if(_0x2ebef7['GFJrn'](_0x4459c8,'random')){const _0x1a1c95=this[_0x143c0a(0x256)](_0x28048d['resource']);return await _0x12abb4['del'](_0x1a1c95),logger[_0x143c0a(0x239)]({'event':_0x143c0a(0x22e),'resource':_0x28048d['resource'],'mode':_0x2ebef7['PJWgi']},_0x143c0a(0x1d7)+_0x28048d[_0x143c0a(0x236)]),{'reset':!![],'resource':_0x28048d['resource'],'mode':_0x143c0a(0x2d6),'deletedKeys':[_0x143c0a(0x23e)]};}throw new IdGeneratorError('IDGEN_INVALID_MODE',_0x143c0a(0x2aa)+_0x4459c8);}}const instance=new IdGenerator();function a0_0x288b(_0x5c745c,_0x5722dd){_0x5c745c=_0x5c745c-0x1d1;const _0x520cc4=a0_0x520c();let _0x288b89=_0x520cc4[_0x5c745c];if(a0_0x288b['KFMzJG']===undefined){var _0x18b1f9=function(_0x1a9a88){const _0x588145='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4db9c9='',_0x4ac090='';for(let _0x161c62=0x0,_0x5921b0,_0x5da31f,_0x5dfe1b=0x0;_0x5da31f=_0x1a9a88['charAt'](_0x5dfe1b++);~_0x5da31f&&(_0x5921b0=_0x161c62%0x4?_0x5921b0*0x40+_0x5da31f:_0x5da31f,_0x161c62++%0x4)?_0x4db9c9+=String['fromCharCode'](0xff&_0x5921b0>>(-0x2*_0x161c62&0x6)):0x0){_0x5da31f=_0x588145['indexOf'](_0x5da31f);}for(let _0x1ba8d9=0x0,_0x4df9e2=_0x4db9c9['length'];_0x1ba8d9<_0x4df9e2;_0x1ba8d9++){_0x4ac090+='%'+('00'+_0x4db9c9['charCodeAt'](_0x1ba8d9)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ac090);};a0_0x288b['RAjziX']=_0x18b1f9,a0_0x288b['PnYPuw']={},a0_0x288b['KFMzJG']=!![];}const _0x4602dd=_0x520cc4[0x0],_0x970340=_0x5c745c+_0x4602dd,_0x1fbb96=a0_0x288b['PnYPuw'][_0x970340];return!_0x1fbb96?(_0x288b89=a0_0x288b['RAjziX'](_0x288b89),a0_0x288b['PnYPuw'][_0x970340]=_0x288b89):_0x288b89=_0x1fbb96,_0x288b89;}function a0_0x520c(){const _0xd99091=['B2HXqKC','icH0B2TLBJ0','mJm0CLnNrMHW','mZiYntqWzevJAhrR','Bwf0y2G','BMfTzq','suqGr2vUzxjHDg9Yig51BwjLCIbYzwXLyxnLzdOG','BMvfDM8','CMfUzg9T','sMLoEMi','DMfSDwu','CMvZzxj2zu1HEfruta','x2rLzMf1BhrdB2rLugf0DgvYBG','C1jgCuy','suqGr2vUzxjHDg9YigLZigrPC2fIBgvK','x2rLzMf1BhrnyxHszxrYEq','AwrNzw5FCMvZzxj2yxrPB25FzxH0zw5Kzwq','rMDKrK0','rfjcBge','Dgv4Da','x3jLC2vYDMvnyxHuveW','AwrNzw5FAwrLBv9YzxrYAwv2zv9LCNjVCG','surhru5Frevgqvvmvf9nqvHFuKvuuLK','rLPwyxi','odiYnJrAq3znr0y','ChjLzML4','x3bHCNnLtNvTyMvY','uMfUzg9TihjLC2vYDMf0Aw9UihvUzg8GzxjYB3iGkg9YCgHHBIbZBg90ig1HEsbYzw1HAw4P','y291BNrLCG','suqGr2vUzxjHDg9YihjLC2v0oIbYyw5KB206','x2j1AwXKuMv1C2vlzxK','zxHLyW','CNPWueO','Du5Ys0O','ywXSB3DszxnLDa','z3vhug8','Cxfuzfa','rwPuyKy','A0Dhtue','surhru5Fsu5wquXjrf9srvnfuLzfx1ruta','zxHWB3j0CW','C2vWyxjHDg9Y','Bwf4uMv0CNK','cNjLzgLZlMnHBgWOj1PbreqNlcblrvLtwZfDlcbbuKDwwZfDlcbbuKDwwZfDkqPSB2nHBcb0DgWGpsb0B251BwjLCIHbuKDwwZjDkqPPzIb0DgWGpIaWihrOzw4kicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcb0DgWPcMvUzaPYzxr1CM4GmqO','z2v0rgf0zq','cMXVy2fSihvUCgSGpsb1BNbHy2SGB3iGDgfIBguUDw5WywnRcGOTlsbtDgvWide6igXHENKGCMvHCcbLEhbPCMvKihjLC2vYDMf0Aw9UCYaOy2fWifjfu0vsvKvFuKvbuf9cqvrdscKkBg9JywWGCMvHCgvKid0GmaPSB2nHBcbUB3DnCYa9iefsr1zBn10kBg9JywWGCNn2uhjLzML4id0GqvjhvLS4xqPSB2nHBcbLEhbPCMvKid0GCMvKAxmUy2fSBcGNwLjbtKDfqLLtq09srsCSieTfwvnBm10SicCTAw5MjYWGjYGNic4Uig5VD01ZlcaNteLnsvqNlcaWlca2ncKkzM9YigKGpsaXlcaJzxHWAxjLzcbKBWOGigXVy2fSigv4CfrVA2vUid0GzxHWAxjLzfTPxqOGigXVy2fSigv4CfjZDKTLEsa9ihjZDLbYzwzPEcaUlIbLEhbuB2TLBGOGigXVy2fSigv4CenVDw50zxiGpsbYzwrPCY5JywXSkcDir0vujYWGzxHWuNn2s2v5lcaNy291BNrLCICPcIaGAwyGzxHWq291BNrLCIb0AgvUcIaGicbYzwrPCY5JywXSkcDAqurejYWGs0vzu1SYxsWGzxHWq291BNrLCIWGzxHWq291BNrLCIKkicbLBMqkicbYzwrPCY5JywXSkcDeruWNlcbLEhbsC3zlzxKPcIaGCMvKAxmUy2fSBcGNwLjftsCSieTfwvnBm10Sigv4CfrVA2vUkqOGihjLyxbLzca9ihjLyxbLzcaRidekzw5KcGOTlsbtDgvWidi6igfSBg9JyxrLignVDw50zxiGkfPqt1bnsu4GCMv1C2uGyxrHDsbjtKnsihnLCsKkBg9JywWGy291BNrLCKLUDaPSB2nHBcbPC1jLDxnLzca9idakAwyGqvjhvLSXxsa9psaNmsCGDgHLBGOGigXVy2fSihiGpsbYzwrPCY5JywXSkcDAue9qtuLojYWGs0vzu1SYxsWGmsKkicbPzIaJCIa+idaGDgHLBGOGicaGy291BNrLCKLUDca9ihrVBNvTyMvYkhjBmv0PcIaGicbPC1jLDxnLzca9idekicbLBMqkzw5KcMLMig5VDcbJB3vUDgvYsw50ihrOzw4kicbJB3vUDgvYsw50id0GCMvKAxmUy2fSBcGNsu5duICSieTfwvnBmv0PcIaGBg9JywWGy3r0Bca9ihrVBNvTyMvYkefsr1zBmL0PcIaGAwyGy3r0Bca+idaGyw5KignVDw50zxjjBNqGpt0Gmsb0AgvUcIaGicbYzwrPCY5JywXSkcDfwfbjuKuNlcblrvLtwZfDlcbJDhrSkqOGigvUzaPLBMqkcI0Tifn0zxaGmZOGD3jPDguGCMvZzxj2yxrPB24GAgfZAcaRigLUzgv4icSGvfrmcMXVy2fSihjZDKTLEsa9iefsr1zBnf0kBg9JywWGCNn2vhrStxmGpsb0B251BwjLCIHbuKDwwZvDkqPSB2nHBcbLEhbPCMvZqxrnCYa9ihrVBNvTyMvYkefsr1zBnL0PcMXVy2fSig5HCMDZid0Gi0fsr1ykBg9JywWGzMLLBgrZid0GE30kzM9YigKGpsa5lcbUyxjNCYbKBWOGigzPzwXKC1SJzMLLBgrZicSGmv0GpsbbuKDww2LDcMvUzaPYzwrPCY5JywXSkcDiu0vujYWGCNn2s2v5lcaNy291BNrLCICSignVDw50zxjjBNqSicDPC1jLDxnLzcCSigLZuMv1C2vKlcb1BNbRkgzPzwXKCYKPcNjLzgLZlMnHBgWOj1bfwfbjuKuNlcbYC3zlzxKSihjZDLr0Be1ZkqPYzwrPCY5JywXSkcDAqurejYWGs0vzu1SZxsWGzxHWAxjLC0f0txmSiefsr1zBm10PcNjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sig1HDgGUzMXVB3iOCNn2vhrStxmGlYaXmdaWksaRidyWkqOkCMv0DxjUihSGy291BNrLCKLUDcWGAxnszxvZzwqSihjLyxbLzcb9cG','surhru5Fsu5wquXjrf9qqvrurvjo','C3rYAw5N','x2DLBMvYyxrLrNjVBvbHDhrLCM4','zKn3B0m','nZu0odmWEuP4Eujm','CNn2swr4s2v5','AwrNzw5FCMvZzxj2zv9VDMvYzMXVD19JB21Wzw5ZyxrPB25FzxjYB3i','x3zHBgLKyxrLtwf4uMv0CNK','CNn2x2LKEdO','q291BgqGBM90igDLBMvYyxrLihvUAxf1zsb2ywX1zsbHzNrLCIa','CMvZzxj2zv9Jyw5JzwW','zgvS','x2j1AwXKu2vXs2v5','uhzNvuS','CgfKu3rHCNq','x3zHBgLKyxrLugf0DgvYBG','surhru5Fru5bqKXfra','x3zHBgLKyxrLvfrm','sw52ywXPzcbYzxnLCNzHDgLVBIb0DgW6ig11C3qGyMuGAw50zwDLCIa','DMnNtg4','zw52','BwvZC2fNzq','Bw9Kzq','x3zHBgLKyxrLuMvZzxj2yxrPB25uB2TLBG','ze9NuwW','C3rYAw5NAwz5','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vY','EgDOwKO','sw52ywXPzcbMB3jTyxq6ia','surhru5FreLtqujmruq','zw5ZDxjLvw5PCxvL','y29UzMLYBvjLC2vYDMf0Aw9U','surhru5Fsu5wquXjrf9nt0rf','AgDLDgfSBa','v1vXBLm','v3nmEhG','suqGr2vUzxjHDg9YignVBNn1BwvKoIa','swrhzw5LCMf0B3jfCNjVCG','C3frqLK','zKH0BhK','zw5HyMXLza','suqGr2vUzxjHDg9YihjLC2vYDMf0Aw9UignHBMnLBgXLzdOG','svH2vhi','CNn2oG','lI9YzwrPCY1JBgLLBNq','x2rLzMf1BhrtzxjPywXqyxr0zxjU','CNn2s2v5','twv0ysb1CgrHDguGzxjYB3i','rMfPBgvKihrVihbLCNnPC3qGzM9YBwf0DgvKihzHBhvLihrVihjLC2vYDMf0Aw9UigHHC2G','x2TLEvbYzwzPEa','AxnfBMfIBgvK','zM9YBwf0s2v5','surhru5Fvu5juvvfx1jfvfjzx0vysefvu1rfra','AwrNzw5FCMvZzxj2zv9PzgvTx2XVC2vYx2nHBMnLBf9LCNjVCG','x2LUAxrPywXPEMvK','suqGr2vUzxjHDg9YihjHBMrVBsbPzgvTihjHy2uGBg9ZDcWGCMv0DxjUAw5NihDPBM5LCIbLBNzLBg9Wzq','surhru5Fsu5wquXjrf9esuDjvfm','uLPrB00','igf0DgvTChrZlIbjBMnYzwfZzsbWyxr0zxjUigXLBMD0AcbVCIbTyxHszxrYEs4','vw5RBM93BIbMB3jTyxq6ia','C2v0zxG','x2j1AwXKtwv0yuTLEq','D0LJC2y','Cg93','AM9PBG','sw52ywXPzcb0DgW6ig11C3qGyMuGAw50zwDLCIaXlq','surhru5Fsu5wquXjrf9ut0TftG','y291BNrLCKLUDa','s3fOC3K','ruD2DMS','AwrNzw5FCMvZzxq','ExL5Ew1Tzgq','surhru5Fsu5wquXjrf9srvnpvvjdrq','A2v5uhjLzML4','y29UC3vTzq','x3zHBgLKyxrLswrLBxbVDgvUy3LlzxK','x2j1AwXKuMvZzxj2yxrPB25jBMrLEeTLEq','AwrNzw4','CMvZB3vYy2u','yxjkCvq','DwPnt20','D2fYBG','x2DLDfjLC2vYDMf0Aw9Uq29UDgv4Da','zxHWAxjLC0f0','A2v5CW','surhru5FuKvtrvjwqvrjt05FtK9ux0zpvu5e','AxnZDwvK','AgfZ','teTjzhC','surhru5Fsu5wquXjrf9ovu1crvi','Dg9ju09tDhjPBMC','BgvUz3rO','surhru5Frevgqvvmvf9trvjjquXFuefuvevstG','surhru5FuKvtrvjwrv9eruzbvuXux1ruta','BNvTyMvY','CMvSzwfZzwrbDa','x2nVDw50zxjuveXnyxa','Dg9Rzw4','tNvTyMvYigrVzxmGBM90ig1HDgnOigv4CgvJDgvKigzVCM1HDcaOz290oIa','AwrNzw5FCMfUzg9Tx2LKzw1FBg9Zzxi','n0rctgr4qq','Aw5MBW','x2j1AwXKqwn0AxzLs2v5','mti1mty3ohz5AhLdsq','x2LKzw1uveW','AwrNzw5FCMfUzg9Tx2DLBMvYyxrLza','qujdrevgr0HjsKTmtu5puffsu1rvvLDywvO','AwrNzw5FAwrLBv9SB3nLCL9YzwXLyxnLx2vYCM9Y','zgv0ywLSCW','ihbHCNrZkq','x2j1AwXKsxnZDwvKs2v5','CgfYC2u','tLLXy0q','qwjIu0q','vvPNquC','uMXWuee','sw52ywXPzcbWyxr0zxjUoIbTDxn0ignVBNrHAw4GyxqGBgvHC3qGB25LihbSywnLAg9SzgvYignOyxjHy3rLCIaOos9ol0eVys9ml1GVEc9il2GP','r3HWAxa','CMvZzxj2zv9LEhrLBMq','D2LUBMvYuMvZDwX0','zM9YBwf0','x3jLDhjPzxzLswrLBunHy2HL','x2j1AwXKrM9YBwf0s2v5','C3bSAxq','Bwv0yq','y29Kzq','Chr0Ba','z2v0rNvSBfLLyxi','surhru5Fsu5wquXjrf9trvbbuKfut1i','wePcq0G','wuzAuvm','AwrNzw5FCMvZzxj2zv92ywX1zv9WzxjZAxn0x2vYCM9Y','CgvLAW','x3vWzgf0zu1LDge','mJm0m1LlCKnPzG','vM9SrLC','zejwyum','DKP2tgm','AwrLBxbVDgvUy3LlzxK','swrLBxbVDgvUy3KGC3rVCMuGzxjYB3i','AwrNzw5FAwrLBv9ZDg9Yzv9LCNjVCG','zxzHBa','sw52ywXPzcbUDw1Izxi6ig11C3qGyMuGBM9UlwvTChr5ihn0CMLUzW','uMvZzxj2yxrPB24GBM90igzVDw5Kig9YigfSCMvHzhKGy29UC3vTzwq6ia','ExL5Ew1T','x3jLC2vYDMvezwzHDwX0vfrm','sLDdAMm','ug5HDfG','cMLMihjLzgLZlMnHBgWOj0vysvnuuYCSieTfwvnBmv0Pid09idaGDgHLBGOGihjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqOGihjLDhvYBIb7idaGFqPLBMqkBg9JywWGAca9ihjLzgLZlMnHBgWOj0Hnr0vujYWGs0vzu1SXxsWGj2nVDw50zxiNlcaNDMfSDwuNlcaNzM9YBwf0s2v5jYKkBg9JywWGy291BNrLCIa9igHBmv0kAwyGy291BNrLCIb0AgvUcIaGCMvKAxmUy2fSBcGNwKfercCSieTfwvnBm10SignVDw50zxiSignVDw50zxiPcIaGBg9JywWGDhrSid0GDg9UDw1IzxiOqvjhvLSYxsKkicbPzIb0DgWGpIaWihrOzw4kicaGihjLzgLZlMnHBgWOj0vyueLsrsCSieTfwvnBm10Sihr0BcKkicbLBMqkzw5KcNjLzgLZlMnHBgWOj0rftcCSieTfwvnBmv0PcNjLzgLZlMnHBgWOj1Psru0NlcblrvLtwZjDlcbbuKDwwZfDkqPYzxr1CM4GEYaXlcbJB3vUDgvYlcbOwZjDlcbOwZnDih0k','ufrhB0u','x2vUywjSzwq','ywn0AxzLoG','zgvMyxvSDe1HEfjLDhj5','suqGr2vUzxjHDg9YihjLC2v0oIa','ywXS','ks4Gsw5JCMvHC2uGBNvTrgLNAxrZlG','ufnVBe8','mta5ntmWnZjxuKHfyNq','swrLBxbVDgvUy3KGy2fJAguGseLu','C3jLBq','surhru5Frevgqvvmvf9qsu5FreLhsvrt','CNvVugK','zM9YBwf0s2v5igLZihjLCxvPCMvKigLUigXVDY1SzxzLBcbYzwXLyxnL','yNvPBgrezxrLCM1PBMLZDgLJs2v5','AwnJuxG','yvLttfm','surhru5FuKvtrvjwrv9nqvHFvfrm','AwrLBvruta','qw5vzha','v1DPueu','AhnLDa','uMvZzxqGB3bLCMf0Aw9Uig5VDcbHBgXVD2vKicHZzxqGsurhru5FquXmt1DFuKvtrvq9Dhj1zsb0BYbLBMfIBguP','C2vYAwfS','swrLBxbVDgvUy3KGCMv0CMLLDMuGzxjYB3i','CMvZzxj2zurLzMf1BhruveW','x2j1AwXKswrLBuTLEq','AwrNzw5FAwrLBv9ZDg9Yzw54x2vYCM9Y','x3zHBgLKyxrLuMvZB3vYy2u','CMvSzwfZzq','zgvMyxvSDfbPBKrPz2L0CW','zgf0zvbYzwzPEa','yLH4rhm','uwjYyM0','x2vUC3vYzuLUAxrPywXPEMvK','x2DLDenVDw50zxjuveW','zgLNAxrZ','icHNB3q6ia','D0HzEMO','ignOyxjZ','sw52ywXPzcbUDw1eAwDPDhm6ig11C3qGyMuGAw50zwDLCIa','x3zHBgLKyxrLuMvZzxj2zvruta','ExL5Eq','ww5Syu0','x3n0B3jLswrLBunHy2HL','vw5RBM93BIbTB2rLoIa','x3L5ExLF','z2v0q2XPzw50','sw52ywXPzcbYzxvZzurLBgv0ztOGBxvZDcbIzsbIB29SzwfUicHNB3q6ia','Cw1uCLe','BNvTrgLNAxrZ','DhrS','suqGr2vUzxjHDg9YigLZigrPC2fIBgvKicHZzxqGsurhru5Fru5bqKXfrd10CNvLkq','wfHywc1ywfHylvHywfGTwfHywa','mJGYD3zez290','u1P3Bfa','BM93','surhru5Fsu5wquXjrf9gt1jnqvq','DhrStxm','ndK2ntaWnw1MswjgDq','zfHbwKy','CMvZzxj2zv9JB25MAxjT','x2zVCM1HDe51BwjLCG','CMv1C2u','tNvTyMvYihbYzwzPEcbTAxnTyxrJAdOGzxHWzwn0zwqG','x3zHBgLKyxrLtNvTyMvYugfYyw1Z','CMvZzxj2zq','lI9SB2DNzxi','x2LUAxrdB25MAwC','x2fSBg93uMvZzxq','Cgf0DgvYBG','AwrNzw5FAwrLBv9OAxq','DgvZDa','z2v0uMvZzxj2yxrPB24','x2j1AwXKuMvZzxj2yxrPB25lzxK','qKT4C1y','AxnjBNrLz2vY','swfLvMy','C2fKza','CMvZzxq','suqGr2vUzxjHDg9Yig51BwjLCIbYzxnLCNzLzdOG'];a0_0x520c=function(){return _0xd99091;};return a0_0x520c();}instance[a0_0x1aa1c4(0x20d)]=IdGeneratorError,module['exports']=instance,module[a0_0x1aa1c4(0x1e2)]['IdGeneratorError']=IdGeneratorError;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
'use strict';const
|
|
1
|
+
'use strict';const a0_0x430c1b=a0_0x5a35;(function(_0x4afa19,_0x54a388){const _0x157c8d=a0_0x5a35,_0x574d61=_0x4afa19();while(!![]){try{const _0xab7400=-parseInt(_0x157c8d(0x74))/0x1+-parseInt(_0x157c8d(0x7b))/0x2*(parseInt(_0x157c8d(0x90))/0x3)+parseInt(_0x157c8d(0x7f))/0x4*(parseInt(_0x157c8d(0x69))/0x5)+parseInt(_0x157c8d(0x8b))/0x6*(parseInt(_0x157c8d(0x77))/0x7)+-parseInt(_0x157c8d(0x6e))/0x8*(parseInt(_0x157c8d(0x72))/0x9)+-parseInt(_0x157c8d(0x7d))/0xa+-parseInt(_0x157c8d(0x6c))/0xb*(-parseInt(_0x157c8d(0x89))/0xc);if(_0xab7400===_0x54a388)break;else _0x574d61['push'](_0x574d61['shift']());}catch(_0x9efdf6){_0x574d61['push'](_0x574d61['shift']());}}}(a0_0x2591,0xbdc0f));function a0_0x5a35(_0x77fcd9,_0x17eafc){_0x77fcd9=_0x77fcd9-0x66;const _0x259118=a0_0x2591();let _0x5a3525=_0x259118[_0x77fcd9];if(a0_0x5a35['CvDfpz']===undefined){var _0x184703=function(_0x178ced){const _0x462b84='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3189f9='',_0xbb995e='';for(let _0xe90777=0x0,_0x37efbc,_0x21ce2e,_0x3dd268=0x0;_0x21ce2e=_0x178ced['charAt'](_0x3dd268++);~_0x21ce2e&&(_0x37efbc=_0xe90777%0x4?_0x37efbc*0x40+_0x21ce2e:_0x21ce2e,_0xe90777++%0x4)?_0x3189f9+=String['fromCharCode'](0xff&_0x37efbc>>(-0x2*_0xe90777&0x6)):0x0){_0x21ce2e=_0x462b84['indexOf'](_0x21ce2e);}for(let _0x5033a1=0x0,_0x44433c=_0x3189f9['length'];_0x5033a1<_0x44433c;_0x5033a1++){_0xbb995e+='%'+('00'+_0x3189f9['charCodeAt'](_0x5033a1)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0xbb995e);};a0_0x5a35['yCMANe']=_0x184703,a0_0x5a35['OqEndJ']={},a0_0x5a35['CvDfpz']=!![];}const _0x3436d4=_0x259118[0x0],_0x35266e=_0x77fcd9+_0x3436d4,_0x2f33f2=a0_0x5a35['OqEndJ'][_0x35266e];return!_0x2f33f2?(_0x5a3525=a0_0x5a35['yCMANe'](_0x5a3525),a0_0x5a35['OqEndJ'][_0x35266e]=_0x5a3525):_0x5a3525=_0x2f33f2,_0x5a3525;}const redisClient=require(a0_0x430c1b(0x75)),{logger}=require('./logger'),crypto=require(a0_0x430c1b(0x84));class IdempotencyManager{constructor(){const _0x4da43c=a0_0x430c1b;this[_0x4da43c(0x67)]=null,this['_ttl']=null,this[_0x4da43c(0x83)]=![];}['_initConfig'](){const _0x3833e3=a0_0x430c1b,_0x5aad30={'PDUnP':function(_0x686913,_0x2c30e5){return _0x686913===_0x2c30e5;},'UWwft':_0x3833e3(0x6f),'lUIet':'idempotency_config_init'};this['_enabled']=_0x5aad30[_0x3833e3(0x8f)](process['env']['IDEMPOTENCY_ENABLED'],_0x5aad30['UWwft']),this[_0x3833e3(0x76)]=parseInt(process[_0x3833e3(0x78)]['IDEMPOTENCY_TTL'],0xa)||0x12c,this[_0x3833e3(0x83)]=!![],logger['info']({'event':_0x5aad30['lUIet'],'enabled':this['_enabled'],'ttl':this[_0x3833e3(0x76)]},_0x3833e3(0x8d)+this[_0x3833e3(0x67)]+',\x20TTL:\x20'+this[_0x3833e3(0x76)]+'s');}['_ensureInitialized'](){!this['_initialized']&&this['_initConfig']();}get[a0_0x430c1b(0x68)](){return this['_ensureInitialized'](),this['_enabled'];}get['ttl'](){const _0x38491a=a0_0x430c1b;return this[_0x38491a(0x87)](),this[_0x38491a(0x76)];}['isEnabled'](){const _0x1a24d9=a0_0x430c1b;return this[_0x1a24d9(0x68)];}[a0_0x430c1b(0x71)](_0x52cc3f,_0x39fd4a){const _0x4a3c4b=a0_0x430c1b,_0x30b5a8={'YyFMF':'unknown'},_0x34ab1a=_0x39fd4a['path']['split']('/')[_0x4a3c4b(0x7c)](Boolean),_0x508319=_0x34ab1a[0x0]||'default',_0x2ca02f=_0x34ab1a[0x1]||_0x4a3c4b(0x8c),_0x468dfb=_0x34ab1a[0x2]||_0x30b5a8['YyFMF'];return'rf:idem:'+_0x508319+':'+_0x2ca02f+':'+_0x468dfb+':'+_0x52cc3f;}async['store'](_0x256964,_0x4fe8de){const _0x4991cb=a0_0x430c1b,_0x338107={'rYJUy':_0x4991cb(0x6a),'bLEDn':_0x4991cb(0x82)};if(!this['enabled'])return![];try{const _0x27e9c6=redisClient['getClient']();return await _0x27e9c6['setex'](_0x256964,this['ttl'],JSON[_0x4991cb(0x73)](_0x4fe8de)),logger['debug']({'event':_0x338107[_0x4991cb(0x8e)],'key':_0x256964,'ttl':this[_0x4991cb(0x7a)],'statusCode':_0x4fe8de[_0x4991cb(0x79)]},_0x338107['bLEDn']),!![];}catch(_0x39ef5e){return logger[_0x4991cb(0x70)]({'event':'idempotency_store_error','key':_0x256964,'error':_0x39ef5e[_0x4991cb(0x85)]},'Idempotency\x20store\x20error:\x20'+_0x39ef5e['message']),![];}}async['retrieve'](_0x56c162){const _0x2226b3=a0_0x430c1b,_0x425a29={'CvrMb':_0x2226b3(0x66),'OZGnp':'Idempotency\x20cache\x20MISS'};if(!this['enabled'])return null;try{const _0x32142c=redisClient[_0x2226b3(0x80)](),_0x51fa8f=await _0x32142c['get'](_0x56c162);if(_0x51fa8f)return logger['info']({'event':'idempotency_hit','key':_0x56c162},_0x425a29[_0x2226b3(0x8a)]),JSON[_0x2226b3(0x81)](_0x51fa8f);return logger['debug']({'event':'idempotency_miss','key':_0x56c162},_0x425a29['OZGnp']),null;}catch(_0x39341f){return logger['error']({'event':_0x2226b3(0x6b),'key':_0x56c162,'error':_0x39341f['message']},'Idempotency\x20retrieve\x20error:\x20'+_0x39341f['message']),null;}}[a0_0x430c1b(0x7e)](_0x27f683=a0_0x430c1b(0x6d)){const _0x375461=a0_0x430c1b;return _0x27f683+'_'+crypto[_0x375461(0x88)]();}[a0_0x430c1b(0x86)](_0x537c08,_0x228172,_0x467278){return _0x537c08+':'+_0x228172+':'+_0x467278;}}module['exports']=new IdempotencyManager();function a0_0x2591(){const _0x425075=['mtjbD2TfzLu','zMLSDgvY','nZuXmdG2mgL3uxbRAG','z2vUzxjHDgvlzxK','mta1ndHUzgvfseO','z2v0q2XPzw50','CgfYC2u','swrLBxbVDgvUy3KGCMvZCg9UC2uGC3rVCMvK','x2LUAxrPywXPEMvK','y3j5ChrV','BwvZC2fNzq','yNvPBgrezxrLCM1PBMLZDgLJs2v5','x2vUC3vYzuLUAxrPywXPEMvK','CMfUzg9Tvvvjra','mta4BuXZCejS','q3zYtwi','mtmWoeXuCLH4Aq','Dw5RBM93BG','swrLBxbVDgvUy3KGy29UzMLNDxjHDgLVBIbPBML0AwfSAxPLzcaTigvUywjSzwq6ia','CLLkvxK','uervBLa','ntuZnJi2CuPsqK1R','swrLBxbVDgvUy3KGy2fJAguGseLu','x2vUywjSzwq','zw5HyMXLza','mtu1me5PqKHnAW','AwrLBxbVDgvUy3LFC3rVCMu','AwrLBxbVDgvUy3LFCMv0CMLLDMvFzxjYB3i','ndi4otq4m3DoExLSra','CMvX','ofLKy2fXra','Dhj1zq','zxjYB3i','yNvPBgrlzxK','mtaYndGYndzeDg5OuhO','C3rYAw5NAwz5','odqWmta4EKLvs0PA','lI9YzwrPCY1JBgLLBNq','x3r0Ba','otiYnNHysgDmsG','zw52','C3rHDhvZq29Kzq','DhrS'];a0_0x2591=function(){return _0x425075;};return a0_0x2591();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a0_0xa812(){const _0x36b269=['mtaZnJuWngzcwhvTBG','nZG0oevTvLbuAa','DMfSAwrHDgvgAwvSzezVCM1HDa','CMvWBgfJzq','sw52ywXPzcbUDw1IzxiGzM9YBwf0','mtG2nhjly2HPyG','CwnPrNq','C2v0','r0nbvhK','sw52ywXPzcbLBwfPBcbMB3jTyxq','DMfSAwrHDgvfBwfPBa','DMfSAwrHDgvsB3C','zM9YrwfJAa','zgv0zwn0rhvWBgLJyxrLC0LUrMLSzq','nty5nty5oeT6rwXIzG','mJm0mgvcr1nJwq','ChvZAa','mJe5owPvvePVvq','zw1HAwW','DMfSAwrHDgvqAg9Uzq','qMf0y2GGDMfSAwrHDgLVBIbJB21WBgv0zwq','nvrMsuTuwa','CMvXDwLYzwq','mZm2mda1nLDesg5usG','yMf0y2HwywXPzgf0zvjVD3m','mtyWotnQzNfwB1O','BgvUz3rO','zM9YBwf0','ntC0CNrUzvHH','CgHVBMu','DMfSAwrHDgvvCMW','mtqYmtaWA2jXALvb','zxHWB3j0CW','s1PJCNu','A2v5CW','yMf0y2HFDMfSAwrHDgLVBL9JB21WBgv0zq','z2v0','AgfZ','z3D1q2m','DMfSAwrHDgvoDw1Izxi','DgvZDa'];a0_0xa812=function(){return _0x36b269;};return a0_0xa812();}const a0_0x381125=a0_0x3062;(function(_0x4c3f2f,_0x593412){const _0x420631=a0_0x3062,_0x12a5d2=_0x4c3f2f();while(!![]){try{const _0x3f092d=parseInt(_0x420631(0x18b))/0x1+-parseInt(_0x420631(0x17e))/0x2*(parseInt(_0x420631(0x19c))/0x3)+parseInt(_0x420631(0x1a2))/0x4+parseInt(_0x420631(0x1a0))/0x5*(-parseInt(_0x420631(0x199))/0x6)+-parseInt(_0x420631(0x181))/0x7+-parseInt(_0x420631(0x190))/0x8*(-parseInt(_0x420631(0x18c))/0x9)+parseInt(_0x420631(0x19a))/0xa*(-parseInt(_0x420631(0x1a4))/0xb);if(_0x3f092d===_0x593412)break;else _0x12a5d2['push'](_0x12a5d2['shift']());}catch(_0x31748a){_0x12a5d2['push'](_0x12a5d2['shift']());}}}(a0_0xa812,0x88156));const {logger}=require('./logger');function a0_0x3062(_0x5e525a,_0x1530e1){_0x5e525a=_0x5e525a-0x17e;const _0xa812e=a0_0xa812();let _0x30629b=_0xa812e[_0x5e525a];if(a0_0x3062['kNLCgs']===undefined){var _0x433056=function(_0x2e6a1e){const _0x4b287e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x152bc7='',_0x29355c='';for(let _0xbff9ac=0x0,_0x324eea,_0x585527,_0x37cc82=0x0;_0x585527=_0x2e6a1e['charAt'](_0x37cc82++);~_0x585527&&(_0x324eea=_0xbff9ac%0x4?_0x324eea*0x40+_0x585527:_0x585527,_0xbff9ac++%0x4)?_0x152bc7+=String['fromCharCode'](0xff&_0x324eea>>(-0x2*_0xbff9ac&0x6)):0x0){_0x585527=_0x4b287e['indexOf'](_0x585527);}for(let _0x4a0324=0x0,_0x166dab=_0x152bc7['length'];_0x4a0324<_0x166dab;_0x4a0324++){_0x29355c+='%'+('00'+_0x152bc7['charCodeAt'](_0x4a0324)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x29355c);};a0_0x3062['aeDgwr']=_0x433056,a0_0x3062['zphbag']={},a0_0x3062['kNLCgs']=!![];}const _0x5517e1=_0xa812e[0x0],_0x4d662b=_0x5e525a+_0x5517e1,_0x192fa0=a0_0x3062['zphbag'][_0x4d662b];return!_0x192fa0?(_0x30629b=a0_0x3062['aeDgwr'](_0x30629b),a0_0x3062['zphbag'][_0x4d662b]=_0x30629b):_0x30629b=_0x192fa0,_0x30629b;}class ImportValidator{['validateRow'](_0x13b9ef,_0x12ceb9=[],_0x9b2eef={}){const _0x156406=a0_0x3062,_0x3e1375={'ClolB':function(_0x517966,_0x2893e2){return _0x517966===_0x2893e2;},'zgqaw':function(_0x5cd341,_0x211aa7){return _0x5cd341===_0x211aa7;},'lamFv':_0x156406(0x1a1),'IFpET':function(_0x5aefd6,_0x5e0d73){return _0x5aefd6===_0x5e0d73;},'TRmED':function(_0x569335,_0x389b5f){return _0x569335===_0x389b5f;}},_0x47d41d=[];return _0x12ceb9[_0x156406(0x197)](_0x585599=>{const _0x52d287=_0x156406,_0x3a6bc9=_0x13b9ef[_0x585599];(_0x3e1375['ClolB'](_0x3a6bc9,null)||_0x3e1375['zgqaw'](_0x3a6bc9,undefined)||_0x3a6bc9==='')&&_0x47d41d[_0x52d287(0x19b)]({'field':_0x585599,'type':_0x3e1375['lamFv'],'message':'Required\x20field\x20is\x20empty'});}),Object[_0x156406(0x184)](_0x9b2eef)['forEach'](_0x3a7f45=>{const _0x1cda41=_0x156406,_0x23e3e3=_0x13b9ef[_0x3a7f45],_0x1eea5b=_0x9b2eef[_0x3a7f45];if(_0x3e1375['IFpET'](_0x23e3e3,null)||_0x3e1375['TRmED'](_0x23e3e3,undefined)||_0x3e1375['zgqaw'](_0x23e3e3,''))return;const _0x871476=this[_0x1cda41(0x18d)](_0x3a7f45,_0x23e3e3,_0x1eea5b);_0x871476&&_0x47d41d['push'](_0x871476);}),_0x47d41d;}[a0_0x381125(0x18d)](_0x538124,_0x5d6977,_0x272180){const _0x200a05=a0_0x381125,_0x36457d={'XQOSy':_0x200a05(0x17f),'GCATy':'number'};switch(_0x272180){case _0x200a05(0x19d):return this[_0x200a05(0x195)](_0x538124,_0x5d6977);case _0x36457d['XQOSy']:return this[_0x200a05(0x19e)](_0x538124,_0x5d6977);case'url':return this['validateUrl'](_0x538124,_0x5d6977);case _0x36457d[_0x200a05(0x193)]:return this[_0x200a05(0x189)](_0x538124,_0x5d6977);default:return null;}}['validateEmail'](_0x5c2bff,_0x5c3a0c){const _0x2c4d31=a0_0x381125,_0x207729={'EyknK':'format','KZcru':_0x2c4d31(0x194)},_0x23d895=/^[^\s@]+@[^\s@]+\.[^\s@]+$/;if(!_0x23d895[_0x2c4d31(0x18a)](String(_0x5c3a0c)))return{'field':_0x5c2bff,'type':_0x207729['EyknK'],'message':_0x207729[_0x2c4d31(0x183)]};return null;}['validatePhone'](_0x26a06,_0x9d578d){const _0x5dd752=a0_0x381125,_0xac98ec={'gwuCc':function(_0x5b0dc0,_0x347e5e){return _0x5b0dc0<_0x347e5e;},'GBaon':_0x5dd752(0x1a6)},_0x24fb30=String(_0x9d578d)[_0x5dd752(0x18e)](/\s+/g,''),_0x2448b0=/^[\d\+\-\(\)]+$/;if(!_0x2448b0[_0x5dd752(0x18a)](_0x24fb30)||_0xac98ec[_0x5dd752(0x188)](_0x24fb30[_0x5dd752(0x1a5)],0x8))return{'field':_0x26a06,'type':_0xac98ec['GBaon'],'message':'Invalid\x20phone\x20format'};return null;}[a0_0x381125(0x180)](_0x2cf930,_0x5857e3){try{return new URL(String(_0x5857e3)),null;}catch(_0xf9a425){return{'field':_0x2cf930,'type':'format','message':'Invalid\x20URL\x20format'};}}[a0_0x381125(0x189)](_0x13d69e,_0x28fc50){const _0x57201d=a0_0x381125,_0x53b4a7={'djIBL':function(_0x3a6824,_0x2fd8b4){return _0x3a6824(_0x2fd8b4);}};if(_0x53b4a7['djIBL'](isNaN,_0x28fc50))return{'field':_0x13d69e,'type':'format','message':_0x57201d(0x18f)};return null;}[a0_0x381125(0x198)](_0x341d87,_0x350386){const _0x4fc062=a0_0x381125,_0x5ea488=new Map(),_0x1d7c5b=[];return _0x341d87[_0x4fc062(0x197)]((_0x4ec6dc,_0x3e39ba)=>{const _0x543779=_0x4fc062,_0x5c72c9=_0x350386['map'](_0x42532e=>_0x4ec6dc[_0x42532e])['join']('|');_0x5ea488[_0x543779(0x187)](_0x5c72c9)?_0x1d7c5b['push']({'rowIndex':_0x3e39ba,'duplicateOf':_0x5ea488[_0x543779(0x186)](_0x5c72c9),'key':_0x5c72c9}):_0x5ea488[_0x543779(0x192)](_0x5c72c9,_0x3e39ba);}),_0x1d7c5b;}[a0_0x381125(0x1a3)](_0x351efc,_0x2a2d59,_0xb5b5cf){const _0x56e1ae=a0_0x381125,_0x2e8c9a={'qciFt':_0x56e1ae(0x19f)},_0xfbe39b=[];return _0x351efc[_0x56e1ae(0x197)]((_0x89b59f,_0x2f2d89)=>{const _0x260783=_0x56e1ae,_0x14b8a8=this[_0x260783(0x196)](_0x89b59f,_0x2a2d59,_0xb5b5cf);_0x14b8a8['length']>0x0&&_0xfbe39b[_0x260783(0x19b)]({'rowIndex':_0x2f2d89,'rowData':_0x89b59f,'errors':_0x14b8a8});}),logger['info']({'event':_0x56e1ae(0x185),'totalRows':_0x351efc[_0x56e1ae(0x1a5)],'errorCount':_0xfbe39b['length']},_0x2e8c9a[_0x56e1ae(0x191)]),_0xfbe39b;}}module[a0_0x381125(0x182)]=new ImportValidator();
|