@restforgejs/platform 4.1.0 → 4.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. package/LICENSE.md +5 -1
  2. package/README.md +30 -14
  3. package/build-info.json +2 -2
  4. package/cli/consumer-deploy.js +1 -1
  5. package/cli/consumer.js +1 -1
  6. package/integrity-manifest.json +8 -8
  7. package/package.json +4 -4
  8. package/scripts/check-install.js +45 -45
  9. package/scripts/verify-integrity.js +1 -1
  10. package/server.js +1 -1
  11. package/src/components/handlers/adjust_handler.js +1 -1
  12. package/src/components/handlers/audit_handler.js +1 -1
  13. package/src/components/handlers/delete_handler.js +1 -1
  14. package/src/components/handlers/export_handler.js +1 -1
  15. package/src/components/handlers/import_handler.js +1 -1
  16. package/src/components/handlers/insert_handler.js +1 -1
  17. package/src/components/handlers/update_handler.js +1 -1
  18. package/src/components/handlers/upload_handler.js +1 -1
  19. package/src/components/handlers/workflow_handler.js +1 -1
  20. package/src/components/integrations/webhook.js +1 -1
  21. package/src/consumers/baseConsumer.js +1 -1
  22. package/src/consumers/declarativeMapper.js +1 -1
  23. package/src/consumers/handlers/apiHandler.js +1 -1
  24. package/src/consumers/handlers/consoleHandler.js +1 -1
  25. package/src/consumers/handlers/databaseHandler.js +1 -1
  26. package/src/consumers/handlers/index.js +1 -1
  27. package/src/consumers/handlers/kafkaHandler.js +1 -1
  28. package/src/consumers/index.js +1 -1
  29. package/src/consumers/messageTransformer.js +1 -1
  30. package/src/consumers/validator.js +1 -1
  31. package/src/core/db/dialect/base-dialect.js +1 -1
  32. package/src/core/db/dialect/index.js +1 -1
  33. package/src/core/db/dialect/mysql-dialect.js +1 -1
  34. package/src/core/db/dialect/oracle-dialect.js +1 -1
  35. package/src/core/db/dialect/postgres-dialect.js +1 -1
  36. package/src/core/db/dialect/sqlite-dialect.js +1 -1
  37. package/src/core/db/flatten-helper.js +1 -1
  38. package/src/core/db/query-builder-error.js +1 -1
  39. package/src/core/db/query-builder.js +1 -1
  40. package/src/core/db/relation-helper.js +1 -1
  41. package/src/core/handlers/delete_handler.js +1 -1
  42. package/src/core/handlers/insert_handler.js +1 -1
  43. package/src/core/handlers/update_handler.js +1 -1
  44. package/src/core/models/base-model.js +1 -1
  45. package/src/core/utils/cache-manager.js +1 -1
  46. package/src/core/utils/component-engine.js +1 -1
  47. package/src/core/utils/context-builder.js +1 -1
  48. package/src/core/utils/datetime-formatter.js +1 -1
  49. package/src/core/utils/datetime-parser.js +1 -1
  50. package/src/core/utils/db.js +1 -1
  51. package/src/core/utils/logger.js +1 -1
  52. package/src/core/utils/payload-loader.js +1 -1
  53. package/src/core/utils/security-checks.js +1 -1
  54. package/src/middleware/body-options.js +1 -1
  55. package/src/middleware/cors.js +1 -1
  56. package/src/middleware/idempotency.js +1 -1
  57. package/src/middleware/rate-limiter.js +1 -1
  58. package/src/middleware/request-logger.js +1 -1
  59. package/src/middleware/security-headers.js +1 -1
  60. package/src/models/base-model-mysql.js +1 -1
  61. package/src/models/base-model-oracle.js +1 -1
  62. package/src/models/base-model-sqlite.js +1 -1
  63. package/src/models/base-model.js +1 -1
  64. package/src/pro/caching/redis-client.js +1 -1
  65. package/src/pro/caching/redis-helper.js +1 -1
  66. package/src/pro/consumers/baseConsumer.js +1 -1
  67. package/src/pro/consumers/declarativeMapper.js +1 -1
  68. package/src/pro/consumers/handlers/apiHandler.js +1 -1
  69. package/src/pro/consumers/handlers/consoleHandler.js +1 -1
  70. package/src/pro/consumers/handlers/databaseHandler.js +1 -1
  71. package/src/pro/consumers/handlers/index.js +1 -1
  72. package/src/pro/consumers/handlers/kafkaHandler.js +1 -1
  73. package/src/pro/consumers/index.js +1 -1
  74. package/src/pro/consumers/messageTransformer.js +1 -1
  75. package/src/pro/consumers/validator.js +1 -1
  76. package/src/pro/database/base-model-mysql.js +1 -1
  77. package/src/pro/database/base-model-oracle.js +1 -1
  78. package/src/pro/database/base-model-sqlite.js +1 -1
  79. package/src/pro/database/db-mysql.js +1 -1
  80. package/src/pro/database/db-oracle.js +1 -1
  81. package/src/pro/database/db-sqlite.js +1 -1
  82. package/src/pro/excel/excel-generator.js +1 -1
  83. package/src/pro/excel/excel-parser.js +1 -1
  84. package/src/pro/excel/export-service.js +1 -1
  85. package/src/pro/excel/export_handler.js +1 -1
  86. package/src/pro/excel/import-service.js +1 -1
  87. package/src/pro/excel/import-validator.js +1 -1
  88. package/src/pro/excel/import_handler.js +1 -1
  89. package/src/pro/excel/upsert-builder.js +1 -1
  90. package/src/pro/idgen/idgen-routes.js +1 -1
  91. package/src/pro/integrations/lookup-resolver.js +1 -1
  92. package/src/pro/integrations/upload-handler-v2.js +1 -1
  93. package/src/pro/integrations/upload-handler.js +1 -1
  94. package/src/pro/integrations/webhook.js +1 -1
  95. package/src/pro/locking/lock-routes.js +1 -1
  96. package/src/pro/locking/resource-lock-manager.js +1 -1
  97. package/src/pro/messaging/kafkaConsumerService.js +1 -1
  98. package/src/pro/messaging/kafkaService.js +1 -1
  99. package/src/pro/messaging/messagehubService.js +1 -1
  100. package/src/pro/messaging/rabbitmqService.js +1 -1
  101. package/src/pro/scheduler/job-manager.js +1 -1
  102. package/src/pro/scheduler/job-routes.js +1 -1
  103. package/src/pro/scheduler/job-validator.js +1 -1
  104. package/src/pro/storage/base-storage-provider.js +1 -1
  105. package/src/pro/storage/file-metadata-helper.js +1 -1
  106. package/src/pro/storage/index.js +1 -1
  107. package/src/pro/storage/local-storage-provider.js +1 -1
  108. package/src/pro/storage/s3-storage-provider.js +1 -1
  109. package/src/pro/storage/upload-cleanup-job.js +1 -1
  110. package/src/pro/storage/upload-cleanup-scheduler.js +1 -1
  111. package/src/pro/storage/upload-pending-tracker.js +1 -1
  112. package/src/pro/websocket/broadcast-helper.js +1 -1
  113. package/src/pro/websocket/index.js +1 -1
  114. package/src/pro/websocket/livesync-server.js +1 -1
  115. package/src/pro/websocket/ws-broadcaster.js +1 -1
  116. package/src/services/export-service.js +1 -1
  117. package/src/services/import-service.js +1 -1
  118. package/src/services/kafkaConsumerService.js +1 -1
  119. package/src/services/kafkaService.js +1 -1
  120. package/src/services/messagehubService.js +1 -1
  121. package/src/services/rabbitmqService.js +1 -1
  122. package/src/utils/cache-invalidation-registry.js +1 -1
  123. package/src/utils/cache-manager.js +1 -1
  124. package/src/utils/component-engine.js +1 -1
  125. package/src/utils/config-extractor.js +1 -1
  126. package/src/utils/consumerLogger.js +1 -1
  127. package/src/utils/context-builder.js +1 -1
  128. package/src/utils/dashboard-helpers.js +1 -1
  129. package/src/utils/dateHelper.js +1 -1
  130. package/src/utils/datetime-formatter.js +1 -1
  131. package/src/utils/datetime-parser.js +1 -1
  132. package/src/utils/db-bootstrap.js +1 -1
  133. package/src/utils/db-mysql.js +1 -1
  134. package/src/utils/db-oracle.js +1 -1
  135. package/src/utils/db-sqlite.js +1 -1
  136. package/src/utils/db.js +1 -1
  137. package/src/utils/demo-generator.js +1 -1
  138. package/src/utils/excel-generator.js +1 -1
  139. package/src/utils/excel-parser.js +1 -1
  140. package/src/utils/file-watcher.js +1 -1
  141. package/src/utils/id-generator.js +1 -1
  142. package/src/utils/idempotency-manager.js +1 -1
  143. package/src/utils/import-validator.js +1 -1
  144. package/src/utils/license-client.js +1 -1
  145. package/src/utils/lock-manager.js +1 -1
  146. package/src/utils/logger.js +1 -1
  147. package/src/utils/lookup-resolver.js +1 -1
  148. package/src/utils/payload-loader.js +1 -1
  149. package/src/utils/processor-response.js +1 -1
  150. package/src/utils/rabbitmq.js +1 -1
  151. package/src/utils/redis-client.js +1 -1
  152. package/src/utils/redis-helper.js +1 -1
  153. package/src/utils/request-scope.js +1 -1
  154. package/src/utils/security-checks.js +1 -1
  155. package/src/utils/service-resolver.js +1 -1
  156. package/src/utils/shutdown-coordinator.js +1 -1
  157. package/src/utils/trusted-keys.js +1 -1
  158. package/src/utils/upload-handler.js +1 -1
  159. package/src/utils/upsert-builder.js +1 -1
  160. package/src/utils/workflow-hook-executor.js +1 -1
@@ -1 +1 @@
1
- function a0_0x5ce6(){const _0xb84f7d=['z2v0q2XPzw50','DLbcre8','zw5HyMXLza','DvzMAwe','DM56quu','C3vIC3rYAw5N','CMvQzwn0','CMvSzwfZzuXVy2S','ntb2AhPKq3i','otKYntLSBLbyAMe','x2vUC3vYzuLUAxrPywXPEMvK','x3bYzwzPEa','te9ds19esvnuuKLcvvrfrf9srvrswv9eruXbwq','mJfdqNHuz0W','zgvIDwC','C2XLzxa','zgvMyxvSDfruta','x3jLDhj5q291BNq','D3jPDgvFBg9JA190Aw1LB3v0','ChjLzML4','wNLwyLa','te9ds19esvnuuKLcvvrfrf9tvfjbvevhwq','uKvbrcbSB2nRigfJCxvPCMuGDgLTzw91Da','x2vUywjSzwq','EvnRsKG','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','BenwvgC','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','oNjLywq6','Cg93','thrhr24','tg9JAYbuveWGzxH0zw5Kzwq','v1jjveuGBg9JAYbYzwXLyxnLza','nJeXotrTsvLyzxO','D3jPDgu','CMv0CNK','tg9JAYbYzwXLyxnLigvYCM9Y','v0rYuxK','zgvJCG','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','ndi3whfvAefM','C2v0zxG','nZm3odKYoxzvwgP5AG','mtm0mde3mMHIBNrrqq','x2LUAxrdB25MAwC','Bg9JA19LEhrLBMrFzxjYB3i','ogXdv1jgva','Aw5JCG','D2fYBG','mtjcs2vrA2S','mhW2FdD8mNW1Fdr8mxWZ','te9ds19esvnuuKLcvvrfrf9ftKfcteve','zxzHBa','ywnXDwLYzvDYAxrLtg9JAW','uKvbrcbSB2nRigfJCxvPCMvK','tg9JAYbLEhrLBMqGzxjYB3i','v1jjveuGBg9JAYbHy3f1AxjLihrPBwvVDxq','C2v0','s2jAuNG','zxjYB3i','C3rYyxrLz3K','C0XYquu','EvzMALa','DxPosLG','D3jPDgvFBg9JA19YzwXLyxnLza','yNvPBgrmB2nRs2v5','lcbZDhjHDgvNEtOG','x3DVCMTLCKLK','lI9SB2DNzxi','t0nrENC','BwvZC2fNzq','uuPODwq','CMvHza','Der1Bwq','u3jov2K','qvjMwwy','uKvbrcbSB2nRihjLBgvHC2vK','D3jPDgvFBg9JA19LCNjVCG','CMy6Bg9JAZO','rxvYwvq','rhzkzfe','lI9YzwrPCY1JBgLLBNq','CMv0CNLdB3vUDa','z2v0','zw52','BhbvA0K','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','D29YA2vYswq','mJK0odm1zMzAAMro','ChLSweW','x3jLDhj5rgvSyxK','ywXS','AxnfBMfIBgvK','ndCYnJm3ELfQuwrk','A3LKvuG','DKvZCgy','x2rLzMf1BhruveW','z2vUzxjHDgvmB2nRvMfSDwu','nZKXotblD25yrNi'];a0_0x5ce6=function(){return _0xb84f7d;};return a0_0x5ce6();}const a0_0xb8578a=a0_0x1fe3;(function(_0x366874,_0x42d22b){const _0xf3e2d8=a0_0x1fe3,_0x1c424d=_0x366874();while(!![]){try{const _0x24c3b8=parseInt(_0xf3e2d8(0x12f))/0x1+-parseInt(_0xf3e2d8(0x125))/0x2*(-parseInt(_0xf3e2d8(0x133))/0x3)+-parseInt(_0xf3e2d8(0xf4))/0x4*(-parseInt(_0xf3e2d8(0x11b))/0x5)+parseInt(_0xf3e2d8(0x147))/0x6*(parseInt(_0xf3e2d8(0x14e))/0x7)+-parseInt(_0xf3e2d8(0x154))/0x8*(parseInt(_0xf3e2d8(0x150))/0x9)+parseInt(_0xf3e2d8(0x12e))/0xa*(parseInt(_0xf3e2d8(0x120))/0xb)+-parseInt(_0xf3e2d8(0x151))/0xc;if(_0x24c3b8===_0x42d22b)break;else _0x1c424d['push'](_0x1c424d['shift']());}catch(_0x3c11f8){_0x1c424d['push'](_0x1c424d['shift']());}}}(a0_0x5ce6,0x6fff1));const redisClient=require(a0_0xb8578a(0x114)),{logger}=require(a0_0xb8578a(0x107)),{v4:uuidv4}=require('uuid');class LockManager{constructor(){const _0xc41042=a0_0xb8578a,_0x5d7380={'ySkJH':_0xc41042(0xf5)},_0x11fc24=_0x5d7380[_0xc41042(0x13e)]['split']('|');let _0x2bd37a=0x0;while(!![]){switch(_0x11fc24[_0x2bd37a++]){case'0':this[_0xc41042(0x131)]=null;continue;case'1':this[_0xc41042(0x106)]=null;continue;case'2':this[_0xc41042(0x137)]=null;continue;case'3':this['_initialized']=![];continue;case'4':this['_strategy']=null;continue;case'5':this['_retryDelay']=null;continue;case'6':this[_0xc41042(0x13d)]=null;continue;case'7':this['_defaultTTL']=null;continue;}break;}}[a0_0xb8578a(0x152)](){const _0x4f3f14=a0_0xb8578a,_0x508d04={'uVfia':function(_0x34a5b8,_0x1bdf6a){return _0x34a5b8===_0x1bdf6a;},'SrNWi':function(_0x904090,_0xbf2392,_0x492079){return _0x904090(_0xbf2392,_0x492079);},'vnzAE':function(_0x5369e1,_0x2e2387,_0xab2885){return _0x5369e1(_0x2e2387,_0xab2885);},'DsGqk':function(_0x4d2c73,_0x5a9c36,_0x20a774){return _0x4d2c73(_0x5a9c36,_0x20a774);},'ORqtW':_0x4f3f14(0x149),'ZyVbP':'lock_config_init'};this[_0x4f3f14(0x131)]=_0x4f3f14(0x111),this[_0x4f3f14(0x13d)]=_0x508d04[_0x4f3f14(0x129)](process[_0x4f3f14(0x117)][_0x4f3f14(0xf6)],'true'),this['_defaultTTL']=_0x508d04[_0x4f3f14(0x10d)](parseInt,process[_0x4f3f14(0x117)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa,this[_0x4f3f14(0x137)]=_0x508d04[_0x4f3f14(0x12a)](parseInt,process[_0x4f3f14(0x117)]['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3,this['_retryDelay']=_0x508d04['DsGqk'](parseInt,process['env'][_0x4f3f14(0x132)],0xa)||0x64,this['_strategy']=process[_0x4f3f14(0x117)][_0x4f3f14(0x13b)]||_0x508d04['ORqtW'],this['_workerId']='worker-'+process['pid'],this['_initialized']=!![],logger['info']({'event':_0x508d04[_0x4f3f14(0x13a)],'enabled':this['_enabled'],'strategy':this['_strategy'],'ttl':this[_0x4f3f14(0x123)],'retryCount':this[_0x4f3f14(0x137)],'retryDelay':this[_0x4f3f14(0x11d)],'workerId':this[_0x4f3f14(0x106)]},_0x4f3f14(0x14d)+this[_0x4f3f14(0x13d)]+_0x4f3f14(0x105)+this['_strategy']);}['_ensureInitialized'](){const _0x5bb3c6=a0_0xb8578a;!this['_initialized']&&this[_0x5bb3c6(0x152)]();}get[a0_0xb8578a(0x139)](){const _0x18955e=a0_0xb8578a;return this[_0x18955e(0x130)](),this[_0x18955e(0x131)];}get['enabled'](){const _0x1beec5=a0_0xb8578a;return this[_0x1beec5(0x130)](),this['_enabled'];}get[a0_0xb8578a(0x136)](){const _0x4250ba=a0_0xb8578a;return this[_0x4250ba(0x130)](),this[_0x4250ba(0x123)];}get['retryCount'](){const _0x4a9f82=a0_0xb8578a;return this['_ensureInitialized'](),this[_0x4a9f82(0x137)];}get['retryDelay'](){const _0x524b0c=a0_0xb8578a;return this[_0x524b0c(0x130)](),this['_retryDelay'];}get['strategy'](){const _0x5bbfc2=a0_0xb8578a;return this[_0x5bbfc2(0x130)](),this['_strategy'];}get[a0_0xb8578a(0x11a)](){const _0x38662f=a0_0xb8578a;return this[_0x38662f(0x130)](),this['_workerId'];}[a0_0xb8578a(0x104)](_0x63189f){const _0x30562a=a0_0xb8578a,{module:_0x3d8ecc,endpoint:_0x2f1e6b,lockType:_0xcb0ed7,recordId:_0x7ff911}=_0x63189f;if(_0x7ff911)return''+this['prefix']+_0x3d8ecc+':'+_0x2f1e6b+':'+_0x7ff911+':'+_0xcb0ed7;return''+this[_0x30562a(0x139)]+_0x3d8ecc+':'+_0x2f1e6b+':'+_0xcb0ed7;}[a0_0xb8578a(0x124)](){const _0x1da936=a0_0xb8578a;return this[_0x1da936(0x11a)]+':'+uuidv4()+':'+Date['now']();}async['acquireReadLock'](_0x3c89f3){const _0x1706e6=a0_0xb8578a,_0x4e039e={'OCQzw':_0x1706e6(0x148),'kydUH':_0x1706e6(0x10b),'QJhud':'read_lock_acquired','WDrQy':'read_lock_waiting','vPBDO':function(_0x3b3ba0,_0x5f2909){return _0x3b3ba0*_0x5f2909;},'yVfjP':'read_lock_error','ruzND':'READ\x20lock\x20error'};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x248141=this['buildLockKey']({..._0x3c89f3,'lockType':_0x4e039e[_0x1706e6(0x108)]}),_0x23548c=this[_0x1706e6(0x104)]({..._0x3c89f3,'lockType':_0x4e039e[_0x1706e6(0x121)]}),_0x49bf22=this[_0x1706e6(0x124)]();try{const _0x722056=redisClient[_0x1706e6(0x126)]();for(let _0x5afa39=0x0;_0x5afa39<this[_0x1706e6(0x115)];_0x5afa39++){const _0x432adf=await _0x722056[_0x1706e6(0x116)](_0x248141);if(!_0x432adf){await _0x722056[_0x1706e6(0x155)](_0x23548c),await _0x722056['expire'](_0x23548c,this['defaultTTL']);const _0x3a6115=_0x23548c+':'+_0x49bf22;return await _0x722056[_0x1706e6(0x14f)](_0x3a6115,this[_0x1706e6(0x136)],_0x49bf22),logger['debug']({'event':_0x4e039e[_0x1706e6(0x10a)],'key':_0x23548c,'value':_0x49bf22},_0x1706e6(0xf9)),{'success':!![],'lockValue':_0x49bf22,'lockKey':_0x3a6115};}logger['debug']({'event':_0x4e039e[_0x1706e6(0x14b)],'writeKey':_0x248141,'attempt':_0x5afa39},'Waiting\x20for\x20WRITE\x20lock\x20to\x20release'),await this[_0x1706e6(0x135)](_0x4e039e[_0x1706e6(0x127)](this['retryDelay'],Math[_0x1706e6(0x143)](0x2,_0x5afa39)));}return logger['warn']({'event':'read_lock_timeout','key':_0x23548c},_0x1706e6(0x13c)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x409a0d){return logger['error']({'event':_0x4e039e[_0x1706e6(0x101)],'error':_0x409a0d['message']},_0x4e039e['ruzND']),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0xb8578a(0xf8)](_0xd79af5){const _0x44bc7e=a0_0xb8578a,_0x21da5a={'ARfYf':_0x44bc7e(0x148),'sLrAE':_0x44bc7e(0x10b),'LtGGn':'reject','bKiBY':function(_0x1a74af,_0x320688){return _0x1a74af===_0x320688;},'TTCNK':'write_lock_rejected','lCVTg':'WRITE\x20lock\x20rejected\x20-\x20record\x20busy','uVtLj':function(_0x1a24a0,_0x14c624){return _0x1a24a0<_0x14c624;},'mnVpE':function(_0x13cde3,_0x49210d){return _0x13cde3===_0x49210d;},'vxnYW':_0x44bc7e(0x149),'balGD':'write_lock_waiting','KbZRx':'Waiting\x20for\x20locks\x20to\x20release','EurYT':_0x44bc7e(0x138)};if(!this['enabled'])return{'success':!![],'lockValue':null,'lockKey':null};const _0x42efd8=this[_0x44bc7e(0x104)]({..._0xd79af5,'lockType':_0x21da5a[_0x44bc7e(0x10e)]}),_0x2fef92=this[_0x44bc7e(0x104)]({..._0xd79af5,'lockType':_0x21da5a[_0x44bc7e(0x100)]}),_0x26d2f4=this[_0x44bc7e(0x124)]();try{const _0x2817cf=redisClient[_0x44bc7e(0x126)]();if(this[_0x44bc7e(0xff)]===_0x21da5a[_0x44bc7e(0x144)]){const _0x1dc8fc=await _0x2817cf[_0x44bc7e(0xfc)](_0x42efd8,_0x26d2f4,'EX',this['defaultTTL'],'NX');if(_0x21da5a['bKiBY'](_0x1dc8fc,'OK'))return logger[_0x44bc7e(0x134)]({'event':'write_lock_acquired','key':_0x42efd8,'value':_0x26d2f4,'strategy':_0x44bc7e(0x12c)},_0x44bc7e(0x141)),{'success':!![],'lockValue':_0x26d2f4,'lockKey':_0x42efd8};return logger['debug']({'event':_0x21da5a['TTCNK'],'key':_0x42efd8},_0x21da5a[_0x44bc7e(0x140)]),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x16a8e9=0x0;_0x21da5a['uVtLj'](_0x16a8e9,this['retryCount']);_0x16a8e9++){const [_0x57b1d0,_0x3a0610]=await Promise[_0x44bc7e(0x11e)]([_0x2817cf['get'](_0x2fef92),_0x2817cf['get'](_0x42efd8)]);if(!_0x3a0610&&(!_0x57b1d0||_0x21da5a['mnVpE'](parseInt(_0x57b1d0),0x0))){const _0x1a7532=await _0x2817cf['set'](_0x42efd8,_0x26d2f4,'EX',this[_0x44bc7e(0x136)],'NX');if(_0x1a7532==='OK')return logger[_0x44bc7e(0x134)]({'event':'write_lock_acquired','key':_0x42efd8,'value':_0x26d2f4,'strategy':_0x21da5a['vxnYW']},_0x44bc7e(0x119)),{'success':!![],'lockValue':_0x26d2f4,'lockKey':_0x42efd8};}logger['debug']({'event':_0x21da5a['balGD'],'writeKey':_0x42efd8,'readCount':_0x57b1d0,'attempt':_0x16a8e9},_0x21da5a[_0x44bc7e(0xfd)]),await this[_0x44bc7e(0x135)](this['retryDelay']*Math[_0x44bc7e(0x143)](0x2,_0x16a8e9));}return logger[_0x44bc7e(0x156)]({'event':_0x21da5a[_0x44bc7e(0x112)],'key':_0x42efd8},_0x44bc7e(0xfb)),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x41b976){return logger[_0x44bc7e(0xfe)]({'event':_0x44bc7e(0x110),'error':_0x41b976[_0x44bc7e(0x109)]},'WRITE\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async[a0_0xb8578a(0x12d)](_0x112d0e,_0xf1735d){const _0x3e744d=a0_0xb8578a,_0x24f79e={'lEIMH':_0x3e744d(0x142),'tDumd':function(_0x361fb6,_0x1cf2a6){return _0x361fb6>_0x1cf2a6;},'qzhks':function(_0x1f311e,_0x2a00b7){return _0x1f311e(_0x2a00b7);},'tUaKB':_0x3e744d(0x146),'lpUkI':'Cannot\x20release\x20lock\x20-\x20not\x20owner','DvJdQ':_0x3e744d(0x14a)};if(!this[_0x3e744d(0x128)]||!_0x112d0e)return!![];try{const _0x4e9473=redisClient['getClient']();if(_0x112d0e['includes'](_0x24f79e['lEIMH'])){await _0x4e9473['del'](_0x112d0e);const _0xda8e70=_0x112d0e[_0x3e744d(0x12b)](0x0,_0x112d0e['lastIndexOf'](':')),_0x1c7a08=await _0x4e9473[_0x3e744d(0x116)](_0xda8e70);return _0x1c7a08&&_0x24f79e[_0x3e744d(0x10c)](_0x24f79e['qzhks'](parseInt,_0x1c7a08),0x0)&&await _0x4e9473[_0x3e744d(0x14c)](_0xda8e70),logger['debug']({'event':'read_lock_released','key':_0x112d0e},_0x3e744d(0x10f)),!![];}const _0x5b6904=_0x3e744d(0x13f),_0x541050=await _0x4e9473[_0x3e744d(0xf7)](_0x5b6904,0x1,_0x112d0e,_0xf1735d);if(_0x541050===0x1)return logger[_0x3e744d(0x134)]({'event':_0x3e744d(0x103),'key':_0x112d0e},_0x24f79e['tUaKB']),!![];return logger[_0x3e744d(0x156)]({'event':'lock_release_not_owner','key':_0x112d0e},_0x24f79e[_0x3e744d(0x118)]),![];}catch(_0x7d257d){return logger['error']({'event':'lock_release_error','key':_0x112d0e,'error':_0x7d257d['message']},_0x24f79e[_0x3e744d(0x113)]),![];}}async['extendLock'](_0x4226cc,_0x13e287,_0x53d4fc=null){const _0x5b5c3b=a0_0xb8578a,_0x14c710={'uzNJX':function(_0xea007d,_0x1d4486){return _0xea007d===_0x1d4486;},'RxYpf':_0x5b5c3b(0x145),'vEspf':_0x5b5c3b(0xfa)};if(!this['enabled']||!_0x4226cc)return!![];try{const _0x47eee3=redisClient[_0x5b5c3b(0x126)](),_0x3e1908='\x0a\x20\x20\x20\x20\x20\x20\x20\x20if\x20redis.call(\x22get\x22,\x20KEYS[1])\x20==\x20ARGV[1]\x20then\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x20redis.call(\x22expire\x22,\x20KEYS[1],\x20ARGV[2])\x0a\x20\x20\x20\x20\x20\x20\x20\x20else\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20return\x200\x0a\x20\x20\x20\x20\x20\x20\x20\x20end\x0a\x20\x20\x20\x20\x20\x20',_0x504f78=await _0x47eee3[_0x5b5c3b(0xf7)](_0x3e1908,0x1,_0x4226cc,_0x13e287,_0x53d4fc||this[_0x5b5c3b(0x136)]);if(_0x14c710[_0x5b5c3b(0x102)](_0x504f78,0x1))return logger[_0x5b5c3b(0x134)]({'event':'lock_extended','key':_0x4226cc,'ttl':_0x53d4fc||this[_0x5b5c3b(0x136)]},_0x14c710['RxYpf']),!![];return![];}catch(_0x9a7e48){return logger['error']({'event':_0x5b5c3b(0x153),'key':_0x4226cc,'error':_0x9a7e48['message']},_0x14c710[_0x5b5c3b(0x122)]),![];}}[a0_0xb8578a(0x11f)](){const _0x403f8e=a0_0xb8578a;return this[_0x403f8e(0x128)];}[a0_0xb8578a(0x135)](_0x28c0bf){return new Promise(_0x45feee=>setTimeout(_0x45feee,_0x28c0bf));}async['getLockInfo'](_0x711dbe){const _0x1bb06c=a0_0xb8578a,_0x2e711f={'dyRIW':function(_0x4af3ca,_0x3a732c){return _0x4af3ca||_0x3a732c;},'pylXL':function(_0x2a9ebb,_0x4292f7){return _0x2a9ebb(_0x4292f7);}};if(!this[_0x1bb06c(0x128)])return{'enabled':![]};try{const _0x1c5ba6=redisClient['getClient'](),_0x4469e4=this[_0x1bb06c(0x104)]({..._0x711dbe,'lockType':'write'}),_0x408ef5=this['buildLockKey']({..._0x711dbe,'lockType':_0x1bb06c(0x10b)}),[_0x15b81f,_0x412b1c]=await Promise['all']([_0x1c5ba6[_0x1bb06c(0x116)](_0x4469e4),_0x1c5ba6['get'](_0x408ef5)]);return{'enabled':!![],'writeLock':_0x2e711f['dyRIW'](_0x15b81f,null),'readCount':_0x2e711f[_0x1bb06c(0x11c)](parseInt,_0x412b1c)||0x0,'writeKey':_0x4469e4,'readKey':_0x408ef5};}catch(_0x1c6b35){return{'enabled':!![],'error':_0x1c6b35['message']};}}}function a0_0x1fe3(_0xdf636d,_0x136c7c){_0xdf636d=_0xdf636d-0xf4;const _0x5ce63c=a0_0x5ce6();let _0x1fe328=_0x5ce63c[_0xdf636d];if(a0_0x1fe3['AxMsgu']===undefined){var _0x278427=function(_0x2070f6){const _0x463c51='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1edca6='',_0x22971b='';for(let _0x1495fe=0x0,_0x47d421,_0x538b3f,_0x36545d=0x0;_0x538b3f=_0x2070f6['charAt'](_0x36545d++);~_0x538b3f&&(_0x47d421=_0x1495fe%0x4?_0x47d421*0x40+_0x538b3f:_0x538b3f,_0x1495fe++%0x4)?_0x1edca6+=String['fromCharCode'](0xff&_0x47d421>>(-0x2*_0x1495fe&0x6)):0x0){_0x538b3f=_0x463c51['indexOf'](_0x538b3f);}for(let _0x52d56d=0x0,_0x5ee7ce=_0x1edca6['length'];_0x52d56d<_0x5ee7ce;_0x52d56d++){_0x22971b+='%'+('00'+_0x1edca6['charCodeAt'](_0x52d56d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x22971b);};a0_0x1fe3['DXseee']=_0x278427,a0_0x1fe3['VDfEiC']={},a0_0x1fe3['AxMsgu']=!![];}const _0x12b8a3=_0x5ce63c[0x0],_0x59b5f4=_0xdf636d+_0x12b8a3,_0xb7d54e=a0_0x1fe3['VDfEiC'][_0x59b5f4];return!_0xb7d54e?(_0x1fe328=a0_0x1fe3['DXseee'](_0x1fe328),a0_0x1fe3['VDfEiC'][_0x59b5f4]=_0x1fe328):_0x1fe328=_0xb7d54e,_0x1fe328;}module['exports']=new LockManager();
1
+ const a0_0x3e0bc5=a0_0x168c;(function(_0x5a8c8b,_0x49ae86){const _0x5eebfd=a0_0x168c,_0x5cd56d=_0x5a8c8b();while(!![]){try{const _0x77152d=parseInt(_0x5eebfd(0x112))/0x1+parseInt(_0x5eebfd(0xed))/0x2*(parseInt(_0x5eebfd(0xec))/0x3)+-parseInt(_0x5eebfd(0xe7))/0x4+-parseInt(_0x5eebfd(0xb8))/0x5*(-parseInt(_0x5eebfd(0xf2))/0x6)+-parseInt(_0x5eebfd(0xf9))/0x7*(-parseInt(_0x5eebfd(0xca))/0x8)+parseInt(_0x5eebfd(0xfb))/0x9+parseInt(_0x5eebfd(0xbb))/0xa*(-parseInt(_0x5eebfd(0x113))/0xb);if(_0x77152d===_0x49ae86)break;else _0x5cd56d['push'](_0x5cd56d['shift']());}catch(_0x27b5df){_0x5cd56d['push'](_0x5cd56d['shift']());}}}(a0_0x5da8,0x6f0a1));const redisClient=require('./redis-client'),{logger}=require(a0_0x3e0bc5(0xd5)),{v4:uuidv4}=require(a0_0x3e0bc5(0x100));function a0_0x5da8(){const _0xfba436=['zw52','zw5HyMXLza','Bg9JA19LEhrLBMrLza','CgLK','x3jLDhj5rgvSyxK','BM93','D3jPDgu','x2vUywjSzwq','mZu5mtC5rMXsrw9g','mtfMvM1pz3O','v1jjveuGBg9JAYbYzwPLy3rLzcaTihjLy29YzcbIDxn5','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMvQzwn0ig1VzguP','ndbZy2HTuLa','rxb6vKe','tg9JAYbYzwXLyxnLigvYCM9Y','mtG4mtK1ndbRuwDPrKq','x3n0CMf0zwD5','C2v0','Bg9JA19YzwXLyxnLx25VDf9VD25LCG','x3DVCMTLCKLK','B2T5s1O','D3jPDgvFBg9JA190Aw1LB3v0','Cg93','te9ds19esvnuuKLcvvrfrf9ftKfcteve','C2XLzxa','rwj2DLi','AxnfBMfIBgvK','v1jjveuGBg9JAYbLCNjVCG','D3jPDgvFBg9JA19YzwPLy3rLza','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzxHWAxjLiIWGs0vzu1SXxsWGqvjhvLSYxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','og91CwDKrW','CgrytLK','zxjYB3i','D2fYBG','D3jPDgvFBg9JA193ywL0Aw5N','x2vUC3vYzuLUAxrPywXPEMvK','CMv0CNLdB3vUDa','Bg9JA19YzwXLyxnLx2vYCM9Y','Aw5JBhvKzxm','x2LUAxrPywXPEMvK','zgvMyxvSDfruta','lI9SB2DNzxi','BwHntuq','CMvHza','x3jLDhj5q291BNq','zxzHBa','zgvIDwC','z2v0tg9JA0LUzM8','CMv0CNK','cIaGicaGicaGAwyGCMvKAxmUy2fSBcGIz2v0iIWGs0vzu1SXxsKGpt0GqvjhvLSXxsb0AgvUcIaGicaGicaGicbYzxr1CM4GCMvKAxmUy2fSBcGIzgvSiIWGs0vzu1SXxsKkicaGicaGicbLBhnLcIaGicaGicaGicbYzxr1CM4GmaOGicaGicaGigvUzaOGicaGica','Dhj1zq','rhvUvNK','AMrUENm','zxHWAxjL','zxv3rMK','CMvHzf9SB2nRx2vYCM9Y','C2v0zxG','n3W1Fdr8mhWZFdz8mxW4Fdi','CvrlqwW','nte3nZG0wwrtruv1','D3jPDgvFBg9JA19Hy3f1AxjLza','re55BLO','Aw5MBW','CMvHzf9SB2nRx3jLBgvHC2vK','mtu5zgvJqMnL','mtmWodjKt0LcwNG','D29YA2vYlq','CMv0CNLezwXHEq','BxHKwK0','tg9JAYbJB25MAwD1CMf0Aw9UigLUAxrPywXPEMvKic0Gzw5HyMXLzdOG','ndC5nda2uxfABLPY','BwvZC2fNzq','tg9JAYbLEhrLBMqGzxjYB3i','zgvJCG','v1jjveuGBg9JAYbYzwXLyxnLza','zxHWB3j0CW','z2vUzxjHDgvmB2nRvMfSDwu','ntiZody2n1rZBMvsuG','CMvHzf9SB2nRx3DHAxrPBMC','mZm1ndK4nhPVDgHYtG','D3jPDgvFBg9JA19LCNjVCG','yNvPBgrmB2nRs2v5','ChjLzML4','z2v0q2XPzw50','DxvPza','v2fPDgLUzYbMB3iGBg9JA3mGDg8GCMvSzwfZzq','CMvHzf9SB2nRx3rPBwvVDxq','CMvQzwn0','C3bSAxq','z2v0','C3vIC3rYAw5N','v1jjveuGBg9JAYbHy3f1AxjLzcaOCMv0CNKGBw9KzsK','uKvbrcbSB2nRigfJCxvPCMvK','Aw5JCG'];a0_0x5da8=function(){return _0xfba436;};return a0_0x5da8();}class LockManager{constructor(){const _0x118f54=a0_0x3e0bc5;this['_prefix']=null,this[_0x118f54(0x111)]=null,this['_defaultTTL']=null,this['_retryCount']=null,this[_0x118f54(0x10e)]=null,this[_0x118f54(0xbc)]=null,this['_workerId']=null,this['_initialized']=![];}['_initConfig'](){const _0x4efbad=a0_0x3e0bc5,_0x4be8ec={'FPiYw':_0x4efbad(0xe5),'ybxvz':function(_0x3c88f5,_0xb47b50,_0x131e4d){return _0x3c88f5(_0xb47b50,_0x131e4d);},'EbvvR':'lock_config_init','qTKAl':function(_0x5d3939,_0x2e296f){return _0x5d3939===_0x2e296f;},'HqLSW':_0x4efbad(0xde),'mxdZM':_0x4efbad(0xdc),'EbIlW':'rf:lock:'},_0x1e2f65=_0x4be8ec['FPiYw'][_0x4efbad(0x104)]('|');let _0x2b7a74=0x0;while(!![]){switch(_0x1e2f65[_0x2b7a74++]){case'0':this['_retryCount']=_0x4be8ec['ybxvz'](parseInt,process['env']['LOCK_DISTRIBUTED_RETRY'],0xa)||0x3;continue;case'1':this['_workerId']=_0x4efbad(0xee)+process[_0x4efbad(0x10d)];continue;case'2':logger[_0x4efbad(0xea)]({'event':_0x4be8ec[_0x4efbad(0xc5)],'enabled':this[_0x4efbad(0x111)],'strategy':this['_strategy'],'ttl':this['_defaultTTL'],'retryCount':this[_0x4efbad(0xd8)],'retryDelay':this[_0x4efbad(0x10e)],'workerId':this[_0x4efbad(0xbf)]},_0x4efbad(0xf1)+this['_enabled']+',\x20strategy:\x20'+this['_strategy']);continue;case'3':this['_retryDelay']=parseInt(process['env']['LOCK_DISTRIBUTED_RETRY_DELAY'],0xa)||0x64;continue;case'4':this['_defaultTTL']=parseInt(process[_0x4efbad(0x10a)]['LOCK_DISTRIBUTED_TTL'],0xa)||0xa;continue;case'5':this['_enabled']=_0x4be8ec[_0x4efbad(0xe6)](process[_0x4efbad(0x10a)][_0x4efbad(0xc3)],_0x4be8ec['HqLSW']);continue;case'6':this[_0x4efbad(0xbc)]=process[_0x4efbad(0x10a)]['LOCK_DISTRIBUTED_STRATEGY']||_0x4be8ec[_0x4efbad(0xf0)];continue;case'7':this['_prefix']=_0x4be8ec['EbIlW'];continue;case'8':this['_initialized']=!![];continue;}break;}}[a0_0x3e0bc5(0xcf)](){const _0x3c0411=a0_0x3e0bc5;!this[_0x3c0411(0xd3)]&&this['_initConfig']();}get[a0_0x3e0bc5(0xfe)](){return this['_ensureInitialized'](),this['_prefix'];}get[a0_0x3e0bc5(0x10b)](){const _0xd0959b=a0_0x3e0bc5;return this[_0xd0959b(0xcf)](),this[_0xd0959b(0x111)];}get['defaultTTL'](){const _0x3767d5=a0_0x3e0bc5;return this[_0x3767d5(0xcf)](),this['_defaultTTL'];}get['retryCount'](){const _0xd0ccfe=a0_0x3e0bc5;return this[_0xd0ccfe(0xcf)](),this[_0xd0ccfe(0xd8)];}get[a0_0x3e0bc5(0xef)](){const _0x5f11eb=a0_0x3e0bc5;return this['_ensureInitialized'](),this[_0x5f11eb(0x10e)];}get['strategy'](){return this['_ensureInitialized'](),this['_strategy'];}get['workerId'](){return this['_ensureInitialized'](),this['_workerId'];}['buildLockKey'](_0x527bd7){const _0x50d7b3=a0_0x3e0bc5,{module:_0xe4822c,endpoint:_0xd6bad4,lockType:_0x49e03e,recordId:_0x481a28}=_0x527bd7;if(_0x481a28)return''+this['prefix']+_0xe4822c+':'+_0xd6bad4+':'+_0x481a28+':'+_0x49e03e;return''+this[_0x50d7b3(0xfe)]+_0xe4822c+':'+_0xd6bad4+':'+_0x49e03e;}['generateLockValue'](){const _0x59bdcb=a0_0x3e0bc5;return this['workerId']+':'+uuidv4()+':'+Date[_0x59bdcb(0x10f)]();}async['acquireReadLock'](_0x40a6cb){const _0x325a15=a0_0x3e0bc5,_0xe437dc={'okyKZ':_0x325a15(0x110),'leYvi':'read_lock_acquired','bfGiT':_0x325a15(0x108),'MGbmY':_0x325a15(0xfa),'VpkQY':'Waiting\x20for\x20WRITE\x20lock\x20to\x20release','jdnzs':_0x325a15(0x102),'SQhyV':'READ\x20lock\x20acquire\x20timeout'};if(!this[_0x325a15(0x10b)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x41d48e=this['buildLockKey']({..._0x40a6cb,'lockType':_0xe437dc[_0x325a15(0xc0)]}),_0x1de3fa=this['buildLockKey']({..._0x40a6cb,'lockType':'read'}),_0x2bd98c=this['generateLockValue']();try{const _0x53f984=redisClient[_0x325a15(0xff)]();for(let _0x5abdb8=0x0;_0x5abdb8<this['retryCount'];_0x5abdb8++){const _0x100642=await _0x53f984['get'](_0x41d48e);if(!_0x100642){await _0x53f984[_0x325a15(0x109)](_0x1de3fa),await _0x53f984[_0x325a15(0xe1)](_0x1de3fa,this[_0x325a15(0xd4)]);const _0x409c4c=_0x1de3fa+':'+_0x2bd98c;return await _0x53f984[_0x325a15(0xe4)](_0x409c4c,this[_0x325a15(0xd4)],_0x2bd98c),logger['debug']({'event':_0xe437dc['leYvi'],'key':_0x1de3fa,'value':_0x2bd98c},_0xe437dc['bfGiT']),{'success':!![],'lockValue':_0x2bd98c,'lockKey':_0x409c4c};}logger[_0x325a15(0xda)]({'event':_0xe437dc['MGbmY'],'writeKey':_0x41d48e,'attempt':_0x5abdb8},_0xe437dc['VpkQY']),await this[_0x325a15(0xc4)](this['retryDelay']*Math['pow'](0x2,_0x5abdb8));}return logger['warn']({'event':_0xe437dc[_0x325a15(0xe0)],'key':_0x1de3fa},_0xe437dc['SQhyV']),{'success':![],'lockValue':null,'lockKey':null};}catch(_0xcc6834){return logger['error']({'event':_0x325a15(0xe3),'error':_0xcc6834[_0x325a15(0xf3)]},'READ\x20lock\x20error'),{'success':![],'lockValue':null,'lockKey':null};}}async['acquireWriteLock'](_0x178b92){const _0x22e4fc=a0_0x3e0bc5,_0x288cdb={'fUGjc':_0x22e4fc(0x110),'euwFi':function(_0x4024d0,_0x523fb7){return _0x4024d0===_0x523fb7;},'pdXNY':'reject','vfcwA':_0x22e4fc(0xe8),'DQbIh':_0x22e4fc(0xb7),'AiFGw':function(_0x500a4f,_0xeab23){return _0x500a4f<_0xeab23;},'DNynZ':'retry','DunVy':_0x22e4fc(0x107),'kBgTS':_0x22e4fc(0xce),'QOznw':_0x22e4fc(0xfc),'VJXYa':_0x22e4fc(0xc7)};if(!this[_0x22e4fc(0x10b)])return{'success':!![],'lockValue':null,'lockKey':null};const _0x48f1a8=this['buildLockKey']({..._0x178b92,'lockType':_0x288cdb['fUGjc']}),_0x236102=this[_0x22e4fc(0xfd)]({..._0x178b92,'lockType':_0x22e4fc(0xd7)}),_0x2ad82f=this[_0x22e4fc(0xf8)]();try{const _0x1913ea=redisClient['getClient']();if(_0x288cdb[_0x22e4fc(0xe2)](this['strategy'],_0x288cdb[_0x22e4fc(0xcb)])){const _0x1b6ea1=await _0x1913ea['set'](_0x48f1a8,_0x2ad82f,'EX',this['defaultTTL'],'NX');if(_0x1b6ea1==='OK')return logger['debug']({'event':_0x288cdb['vfcwA'],'key':_0x48f1a8,'value':_0x2ad82f,'strategy':_0x22e4fc(0x103)},_0x288cdb['DQbIh']),{'success':!![],'lockValue':_0x2ad82f,'lockKey':_0x48f1a8};return logger['debug']({'event':_0x22e4fc(0xc8),'key':_0x48f1a8},_0x22e4fc(0x114)),{'success':![],'lockValue':null,'lockKey':null};}for(let _0x3f84bf=0x0;_0x288cdb['AiFGw'](_0x3f84bf,this[_0x22e4fc(0xd0)]);_0x3f84bf++){const [_0x3897ed,_0x4e1c72]=await Promise['all']([_0x1913ea[_0x22e4fc(0x105)](_0x236102),_0x1913ea['get'](_0x48f1a8)]);if(!_0x4e1c72&&(!_0x3897ed||_0x288cdb['euwFi'](parseInt(_0x3897ed),0x0))){const _0xc47e39=await _0x1913ea[_0x22e4fc(0xbd)](_0x48f1a8,_0x2ad82f,'EX',this[_0x22e4fc(0xd4)],'NX');if(_0xc47e39==='OK')return logger[_0x22e4fc(0xda)]({'event':_0x288cdb['vfcwA'],'key':_0x48f1a8,'value':_0x2ad82f,'strategy':_0x288cdb[_0x22e4fc(0xe9)]},_0x288cdb[_0x22e4fc(0xdf)]),{'success':!![],'lockValue':_0x2ad82f,'lockKey':_0x48f1a8};}logger[_0x22e4fc(0xda)]({'event':_0x288cdb['kBgTS'],'writeKey':_0x48f1a8,'readCount':_0x3897ed,'attempt':_0x3f84bf},_0x22e4fc(0x101)),await this[_0x22e4fc(0xc4)](this['retryDelay']*Math[_0x22e4fc(0xc2)](0x2,_0x3f84bf));}return logger[_0x22e4fc(0xcd)]({'event':_0x22e4fc(0xc1),'key':_0x48f1a8},'WRITE\x20lock\x20acquire\x20timeout'),{'success':![],'lockValue':null,'lockKey':null};}catch(_0x324cc6){return logger[_0x22e4fc(0xcc)]({'event':_0x288cdb['QOznw'],'error':_0x324cc6['message']},_0x288cdb['VJXYa']),{'success':![],'lockValue':null,'lockKey':null};}}async['releaseLock'](_0x2427ad,_0x46acb1){const _0x328654=a0_0x3e0bc5,_0x5e9589={'vHshX':function(_0x15eb75,_0x476023){return _0x15eb75>_0x476023;},'NKVhA':function(_0x127749,_0x1a9cf5){return _0x127749(_0x1a9cf5);},'SaGEO':_0x328654(0xeb),'Jrxmm':'READ\x20lock\x20released','EpzVA':_0x328654(0xf6),'qbdkq':_0x328654(0xd1),'mhMMD':_0x328654(0xba)};if(!this[_0x328654(0x10b)]||!_0x2427ad)return!![];try{const _0x4edc81=redisClient['getClient']();if(_0x2427ad[_0x328654(0xd2)](':read:')){await _0x4edc81['del'](_0x2427ad);const _0x521174=_0x2427ad[_0x328654(0x106)](0x0,_0x2427ad['lastIndexOf'](':')),_0x3a5b58=await _0x4edc81[_0x328654(0x105)](_0x521174);return _0x3a5b58&&_0x5e9589['vHshX'](_0x5e9589['NKVhA'](parseInt,_0x3a5b58),0x0)&&await _0x4edc81[_0x328654(0xf5)](_0x521174),logger[_0x328654(0xda)]({'event':_0x5e9589['SaGEO'],'key':_0x2427ad},_0x5e9589['Jrxmm']),!![];}const _0x4ca86d=_0x328654(0xdd),_0x342a73=await _0x4edc81['eval'](_0x4ca86d,0x1,_0x2427ad,_0x46acb1);if(_0x342a73===0x1)return logger[_0x328654(0xda)]({'event':'write_lock_released','key':_0x2427ad},_0x5e9589[_0x328654(0xb9)]),!![];return logger['warn']({'event':_0x328654(0xbe),'key':_0x2427ad},'Cannot\x20release\x20lock\x20-\x20not\x20owner'),![];}catch(_0x2c46f4){return logger['error']({'event':_0x5e9589['qbdkq'],'key':_0x2427ad,'error':_0x2c46f4['message']},_0x5e9589[_0x328654(0xd6)]),![];}}async['extendLock'](_0x942eda,_0x449ec0,_0x294b42=null){const _0x56fa56=a0_0x3e0bc5,_0x5e9253={'DXUqj':'lock_extend_error','cbnyh':_0x56fa56(0xf4)};if(!this['enabled']||!_0x942eda)return!![];try{const _0x58bf8a=redisClient[_0x56fa56(0xff)](),_0xfcabb6=_0x56fa56(0xc9),_0x18e62d=await _0x58bf8a[_0x56fa56(0xd9)](_0xfcabb6,0x1,_0x942eda,_0x449ec0,_0x294b42||this['defaultTTL']);if(_0x18e62d===0x1)return logger[_0x56fa56(0xda)]({'event':_0x56fa56(0x10c),'key':_0x942eda,'ttl':_0x294b42||this[_0x56fa56(0xd4)]},'Lock\x20TTL\x20extended'),!![];return![];}catch(_0x1560ed){return logger['error']({'event':_0x5e9253['DXUqj'],'key':_0x942eda,'error':_0x1560ed['message']},_0x5e9253['cbnyh']),![];}}[a0_0x3e0bc5(0xc6)](){const _0x3cf042=a0_0x3e0bc5;return this[_0x3cf042(0x10b)];}[a0_0x3e0bc5(0xc4)](_0x10f6d6){return new Promise(_0x445ede=>setTimeout(_0x445ede,_0x10f6d6));}async[a0_0x3e0bc5(0xdb)](_0x2491e6){const _0x4cd72f=a0_0x3e0bc5,_0x2fa988={'GYLkX':'write'};if(!this[_0x4cd72f(0x10b)])return{'enabled':![]};try{const _0x143cca=redisClient['getClient'](),_0x58e68f=this[_0x4cd72f(0xfd)]({..._0x2491e6,'lockType':_0x2fa988['GYLkX']}),_0x231e57=this['buildLockKey']({..._0x2491e6,'lockType':'read'}),[_0x22192c,_0x44b735]=await Promise['all']([_0x143cca['get'](_0x58e68f),_0x143cca[_0x4cd72f(0x105)](_0x231e57)]);return{'enabled':!![],'writeLock':_0x22192c||null,'readCount':parseInt(_0x44b735)||0x0,'writeKey':_0x58e68f,'readKey':_0x231e57};}catch(_0x4e8adb){return{'enabled':!![],'error':_0x4e8adb['message']};}}}function a0_0x168c(_0x27aa61,_0x4cd42e){_0x27aa61=_0x27aa61-0xb7;const _0x5da81b=a0_0x5da8();let _0x168c28=_0x5da81b[_0x27aa61];if(a0_0x168c['TKGqKx']===undefined){var _0xdc1eca=function(_0x4e478e){const _0x188f96='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4f40ce='',_0x202f93='';for(let _0x3a5a07=0x0,_0x371c5e,_0x22ce67,_0x1b25fd=0x0;_0x22ce67=_0x4e478e['charAt'](_0x1b25fd++);~_0x22ce67&&(_0x371c5e=_0x3a5a07%0x4?_0x371c5e*0x40+_0x22ce67:_0x22ce67,_0x3a5a07++%0x4)?_0x4f40ce+=String['fromCharCode'](0xff&_0x371c5e>>(-0x2*_0x3a5a07&0x6)):0x0){_0x22ce67=_0x188f96['indexOf'](_0x22ce67);}for(let _0x3d2a8d=0x0,_0x5e55f2=_0x4f40ce['length'];_0x3d2a8d<_0x5e55f2;_0x3d2a8d++){_0x202f93+='%'+('00'+_0x4f40ce['charCodeAt'](_0x3d2a8d)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x202f93);};a0_0x168c['ZTzKAw']=_0xdc1eca,a0_0x168c['KEYVDr']={},a0_0x168c['TKGqKx']=!![];}const _0x4d4237=_0x5da81b[0x0],_0x434b55=_0x27aa61+_0x4d4237,_0xd1502d=a0_0x168c['KEYVDr'][_0x434b55];return!_0xd1502d?(_0x168c28=a0_0x168c['ZTzKAw'](_0x168c28),a0_0x168c['KEYVDr'][_0x434b55]=_0x168c28):_0x168c28=_0xd1502d,_0x168c28;}module[a0_0x3e0bc5(0xf7)]=new LockManager();
@@ -1 +1 @@
1
- const a0_0xc69f3=a0_0x337a;function a0_0x5427(){const _0x2731a0=['uMP4zLm','z0Pcs1q','q1zgrfy','yMfZzvvYBa','rfjpua','Aw5MBW','yxbWlMXVzW','Aw5MBZPIBhvLlhDHCM46EwvSBg93lgvYCM9YoNjLzcXKzwj1zZPNCMf5','u0vmrunu','B3jPz2LUywXvCMW','ANPuzvG','y29Kzq','u25IqNK','y29UBMvJDgLVBG','cUkvOokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvOWRILzeGievUDMLYB25Tzw50idOG','ChjPDMf0zwTLEq','Ec1Yzxf1zxn0lwLK','Bw9KDwXL','Cej4CgO','sgDLyvu','tI9b','t2fkC2u','ntGYnZaXENzfsM9H','qujqsxy','w1jfrefdvevexq','DhLWzq','ig9UihbVCNqG','D2fYBG','icbvuKW6icaGia','C3rYAw5N','vvbeqvrf','Ahj0Aw1L','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','vNDrDfa','CMvWBgfJzq','mZqXvefrCeXx','tK9erv9ftLy','icbizwfSDgG6ia','qunusvzf','ic0G','mZaWndG0mePwDhjiEq','rgf0ywjHC2u6ia','zxjYB3iUBg9N','tMPYs2e','A2v5CW','w1jfrefdveveoNrVA2vUxq','CMvZDgzVCMDL','iokvKqRILzeGienVBMzPzYaGicaGidOG','mtaWmZGWtfLzEgjn','vvLnrK0','BxjNCve','y29UzMLNrMLSzq','y0LvELy','qNLir2i','C2vJCMv0','Cgf0Aa','Bwf0y2G','Ahr0Cf9Yzxf1zxn0','wNrWuMO','E21Zz30','iokvKqRILzeGifbVCNqGicaGicaGidOG','veLYEfm','C3rHDhvZq29Kzq','u01dBgy','ChjPDMf0zv9RzxK','rermx0rst1a','D0HTB28','icbjBMzVoIaGia','vu5ltK9xtG','Dxb0Aw1L','y3jLzgvUDgLHBa','C2vYDMLJzuLUzM8','zMP1wMW','u1rbuLqGvfjbtLnbq1rjt04','rxjYB3i','C3rHy2S','AxnVvgLTzq','u1fmx0Xpr19ftKfcteve','DvrrzMK','ywLqDvu','tuTlruG','q09ntuLu','CgfYyw1Z','qKvhsu4','ChjVzhvJDgLVBG','EKX0wMG','Aw5JBhvKzxm','y3z2','zxHPC3rZu3LUyW','yxbPA2v5','zw52AxjVBM1LBNq','CMvWzwf0','Dg9gAxHLza','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','cUkvLokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvKokvLWO','zMfSC2u','BwTKAxjtEw5J','mtu1mJyXnNrVvKDmsq','u1LtoKHioK1noNnZ','BK1RCw4','lI9SB2DZlW','zgf0ywjHC2vFy29UzMLN','shr4AeC','CgLUBY1WCMv0DhK','Dhj1zq','yxbPs2v5','nw5nz01Stq','reiGuxvLCNK','vuTPEMG','uK9mtejbq0S','yxbPx2TLEq','zMLSzv9SB2DNAw5Nx2vUywjSzwq','yxLItM4','C2vYDMvYx3n0yxj0Aw5N','BwfW','zMf0ywW','t1n5zeC','ChjVAMvJDa','C3rHCNrZv2L0Aa','Dg9ju09tDhjPBMC','r2jxyxu','Ag9ZDa','AgvHBhrOq2HLy2S','t1zjCuG','C3vIC3rYAw5N','ovL4t1rguq','Bwv0Ag9K','zgvIDwC','ChjVy2vZC193yxjUAw5N','BMfTzq','tM9Kzs5QCW','zhvYyxrPB25nCW','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','tLjvCKO','su5trvju','C1fIzNa','uffswNi','vhLhsLq','yMfqtvG','yxjQAxm','rfnAt28','z3jKvMW','iokvKqRILzeGifbYB2PLy3qGicaGidOG','rhLlD3O','Cg9ZDgDYzxnXBa','Ahr0Cf9LCNjVCG','zw52','CgfZC3DVCMq','ChjVAMvJDf9SB2fKzwq','mti5odHADgLzA0q','C3rKu2vYAwfSAxPLCNm','yKv1Ewi','wwH5zMG','mJm0otyWyK1vBe1y','zxjYB3i','zxjY','ms4WlJu','DgvZDa','zgv2zwXVCg1LBNq','y3jLzgL0x2nHCMq','Bwf4','zxHPDa','CMvZB2X2zq','zMXVB3i','y3jLyxrLv3jPDgvtDhjLyw0','BwvZC2fNzq','vhjHBNnHy3rPB24G','vfjbtLnbq1rjt05Fq09ntuLu','DhjPBq','te9hx0rjuG','C3fSx3f1zxj5','yu1bD3a','DMLntvK','r3HHv1e','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','C3nU','CgfZC3DK','vuros3y','CMvTB3rLqwrKCMvZCW','Cg9YDa','DxjS','iokvKqRILzeGiefqssblzxKGicaGidOG','CgfKrw5K','EKnQwui','u2vYDMvYihn0yxj0Aw5NoIa','u1fmx0Xpr19qqvjbtvm','C2vYDMvYx3jLywr5','ChDK','CgLKlgHVC3rUyw1LlhnLCNzPy2uSDMvYC2LVBIXLBNySzxzLBNqSBw9KDwXLlhbVCNqSy29UzMLNlgfWAuTLEuvUywjSzwqSCgf0AcX3B3jRAw5NrgLYlgLZugTNlgLZtM9KzvnJCMLWDcXMAwXLlgvTywLSlhr5CguSy29YCYXSB2DNAw5NlgfWAuTLEsXJB3vUDcXLBMrWB2LUDcXYB3v0zq','ANnVBG','y1zbugW','zvrwwgy','zgjFDhjHBNnHy3rPB24','uhjVy2vZCYbxyxjUAw5NoIa','ugfzyxO','wuXwBwG','q1jjveLdquW','qxLqwg0','qvbqx1zfuLnjt04','te9hx1rpx0zjteu','ndv4y0rfC2u','rhn3C2O','C29Tzq','zgf0ywjHC2u','ywnJzxnZx3rVA2vU','Dg9mB3DLCKnHC2u','BgvUz3rO','uePqEKe','AgvHzgvYCW','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','Dg9vChbLCKnHC2u','vfjbtLnbq1rjt05FuK9mtejbq0S','Bg9N','oI8V','C3rHDhvZ','ndCYmZqXEMfHr29A','B2jQzwn0','oejHy0DNzW','wKPHy0u','z2v0sgvHzgvYCW'];a0_0x5427=function(){return _0x2731a0;};return a0_0x5427();}(function(_0x4b18d6,_0xf0a113){const _0x283dc9=a0_0x337a,_0x55e7ed=_0x4b18d6();while(!![]){try{const _0x37d756=parseInt(_0x283dc9(0x133))/0x1*(-parseInt(_0x283dc9(0x82))/0x2)+parseInt(_0x283dc9(0xc4))/0x3*(parseInt(_0x283dc9(0xc6))/0x4)+-parseInt(_0x283dc9(0xb5))/0x5*(parseInt(_0x283dc9(0xf9))/0x6)+-parseInt(_0x283dc9(0xdf))/0x7+-parseInt(_0x283dc9(0x12a))/0x8+parseInt(_0x283dc9(0x6a))/0x9*(-parseInt(_0x283dc9(0xf1))/0xa)+parseInt(_0x283dc9(0xec))/0xb*(parseInt(_0x283dc9(0x86))/0xc);if(_0x37d756===_0xf0a113)break;else _0x55e7ed['push'](_0x55e7ed['shift']());}catch(_0x322626){_0x55e7ed['push'](_0x55e7ed['shift']());}}}(a0_0x5427,0x27506));const pino=require('pino'),fs=require('fs'),path=require('path');let logToFile=![],logDir='./logs',serviceName='restforge',sqlLogEnabled=![],sqlLogLevel='debug',sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;function a0_0x337a(_0x4a68b4,_0x4a5bd7){_0x4a68b4=_0x4a68b4-0x6a;const _0x542774=a0_0x5427();let _0x337a29=_0x542774[_0x4a68b4];if(a0_0x337a['XdFfIQ']===undefined){var _0x5e69b7=function(_0x43796f){const _0x52cf40='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1b8e1e='',_0x8a25ac='';for(let _0x10c9e7=0x0,_0x301eef,_0xe165b7,_0x23cdc9=0x0;_0xe165b7=_0x43796f['charAt'](_0x23cdc9++);~_0xe165b7&&(_0x301eef=_0x10c9e7%0x4?_0x301eef*0x40+_0xe165b7:_0xe165b7,_0x10c9e7++%0x4)?_0x1b8e1e+=String['fromCharCode'](0xff&_0x301eef>>(-0x2*_0x10c9e7&0x6)):0x0){_0xe165b7=_0x52cf40['indexOf'](_0xe165b7);}for(let _0x207e72=0x0,_0x5ec543=_0x1b8e1e['length'];_0x207e72<_0x5ec543;_0x207e72++){_0x8a25ac+='%'+('00'+_0x1b8e1e['charCodeAt'](_0x207e72)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x8a25ac);};a0_0x337a['mEevHK']=_0x5e69b7,a0_0x337a['KMFVQR']={},a0_0x337a['XdFfIQ']=!![];}const _0x3eaf44=_0x542774[0x0],_0x45914f=_0x4a68b4+_0x3eaf44,_0x47e027=a0_0x337a['KMFVQR'][_0x45914f];return!_0x47e027?(_0x337a29=a0_0x337a['mEevHK'](_0x337a29),a0_0x337a['KMFVQR'][_0x45914f]=_0x337a29):_0x337a29=_0x47e027,_0x337a29;}const prettyPrintOptions={'colorize':!![],'translateTime':a0_0xc69f3(0x12b),'ignore':a0_0xc69f3(0xa9),'singleLine':![],'levelFirst':!![],'messageFormat':a0_0xc69f3(0x104),'customColors':a0_0xc69f3(0xd0),'hideObject':!![]},isDevelopment=process['env'][a0_0xc69f3(0xed)]!==a0_0xc69f3(0x11d),logLevel=process['env']['LOG_LEVEL']||a0_0xc69f3(0xce);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':a0_0xc69f3(0x130),'options':prettyPrintOptions}:undefined,'base':{'service':a0_0xc69f3(0xf7),'version':process['env'][a0_0xc69f3(0xb3)]||a0_0xc69f3(0x89),'env':process['env']['NODE_ENV']||a0_0xc69f3(0x8b)},'timestamp':pino['stdTimeFunctions'][a0_0xc69f3(0x115)],'redact':{'paths':['req.headers.authorization',a0_0xc69f3(0x9b),a0_0xc69f3(0x80),'token',a0_0xc69f3(0x132),'DB_PASSWORD','JWT_SECRET'],'censor':'[REDACTED]'},'serializers':{'req':_0x1ac3fc=>({'id':_0x1ac3fc['id'],'method':_0x1ac3fc['method'],'url':_0x1ac3fc['url'],'path':_0x1ac3fc['path'],'remoteAddress':_0x1ac3fc['ip']||_0x1ac3fc['connection']?.[a0_0xc69f3(0x9f)]}),'res':_0x4e52cd=>({'statusCode':_0x4e52cd['statusCode'],'headers':_0x4e52cd[a0_0xc69f3(0xc8)]?.()}),'err':pino[a0_0xc69f3(0x83)][a0_0xc69f3(0x88)]}});function initFileLogging(){const _0x41a49a=a0_0xc69f3,_0x3e9b01={'NLaIo':'true','CVFDV':'debug','ZbAfY':function(_0x453924,_0xd8e7a3){return _0x453924!==_0xd8e7a3;},'NRUrJ':_0x41a49a(0xcf),'kSshc':_0x41a49a(0xf3)};if(fileLoggingInitialized)return;logToFile=process[_0x41a49a(0x7f)][_0x41a49a(0xb4)]===_0x3e9b01['NLaIo'];const _0x44a7b6=process[_0x41a49a(0x7f)]['RESTFORGE_PROJECT_NAME']||'default';logDir=process['env'][_0x41a49a(0x96)]||_0x41a49a(0x12d)+_0x44a7b6,serviceName=process['env']['SERVICE_NAME']||_0x41a49a(0xf7),sqlLogEnabled=process[_0x41a49a(0x7f)][_0x41a49a(0x116)]===_0x41a49a(0x131),sqlLogLevel=process['env']['SQL_LOG_LEVEL']||_0x3e9b01[_0x41a49a(0xcb)],sqlLogParams=_0x3e9b01['ZbAfY'](process['env'][_0x41a49a(0xa6)],_0x41a49a(0x128)),sqlLogSlowThreshold=parseInt(process[_0x41a49a(0x7f)]['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x376659=path[_0x41a49a(0x8f)](process['cwd'](),logDir);try{!fs[_0x41a49a(0x121)](_0x376659)&&fs[_0x41a49a(0x129)](_0x376659,{'recursive':!![]});}catch(_0x417240){console[_0x41a49a(0x87)]('Failed\x20to\x20create\x20log\x20directory\x20'+_0x376659+':',_0x417240['message']),fileLoggingInitialized=!![];return;}const _0xe02f84=path['join'](_0x376659,_0x3e9b01[_0x41a49a(0x72)]),_0xc5cd77=path['join'](_0x376659,_0x41a49a(0xf3));try{appLogStream=fs['createWriteStream'](_0xe02f84,{'flags':'a'}),errorLogStream=fs[_0x41a49a(0x91)](_0xc5cd77,{'flags':'a'}),fileLoggingInitialized=!![];const _0xd15521={'event':_0x41a49a(0x138),'logDir':_0x376659,'files':[_0x3e9b01['NRUrJ'],_0x3e9b01['kSshc']]},_0xc6762a=_0x41a49a(0xe9)+_0x376659;logger[_0x41a49a(0xce)](_0xd15521,_0xc6762a),writeToFileLog({..._0xd15521,'level':_0x41a49a(0xce),'msg':_0xc6762a,'time':new Date()[_0x41a49a(0x140)]()},'info');}catch(_0x14ee1d){console['error']('Failed\x20to\x20create\x20log\x20streams:',_0x14ee1d[_0x41a49a(0x92)]),fileLoggingInitialized=!![];}}function writeToFileLog(_0x514618,_0x52c6b5){const _0x5bbe88=a0_0xc69f3,_0x84fccb={'grdVl':function(_0x2304db,_0x4e8c96){return _0x2304db===_0x4e8c96;},'arjis':_0x5bbe88(0x87)};if(!logToFile||!appLogStream)return;const _0x16b569={'service':serviceName,..._0x514618},_0x534542=JSON['stringify'](_0x16b569)+'\x0a';appLogStream['write'](_0x534542),(_0x84fccb[_0x5bbe88(0x7a)](_0x52c6b5,_0x84fccb[_0x5bbe88(0x78)])||_0x52c6b5===_0x5bbe88(0x13c))&&(errorLogStream&&errorLogStream['write'](_0x534542));}const createRequestLogger=(_0x142627={})=>{return logger['child'](_0x142627);},logServerStart=_0xd9ec84=>{const _0x219d23=a0_0xc69f3,_0x4ebcbc={'DyKwz':_0x219d23(0x126),'FEvPp':function(_0x30738f,_0x4ab698){return _0x30738f/_0x4ab698;},'LvOYx':'Default','baPMX':_0x219d23(0xef),'IDagv':'NOT\x20ACTIVE','DSZOo':_0x219d23(0xce)},_0x187574=_0x4ebcbc[_0x219d23(0x7c)],_0x555b54=Math[_0x219d23(0x8d)](0x0,0x37-_0x187574[_0x219d23(0xbb)]),_0x434cf6=Math[_0x219d23(0x90)](_0x4ebcbc['FEvPp'](_0x555b54,0x2)),_0x52d295=_0x555b54-_0x434cf6,_0x22434f='║'+'\x20'[_0x219d23(0x124)](_0x434cf6)+_0x187574+'\x20'['repeat'](_0x52d295)+'║',_0x375249=_0x219d23(0x127)+_0x22434f+_0x219d23(0xd7)+(_0xd9ec84[_0x219d23(0x123)]||_0x219d23(0x6f))['padEnd'](0x26)+_0x219d23(0x7b)+(_0xd9ec84[_0x219d23(0x13e)]||_0x219d23(0xdd))['padEnd'](0x26)+_0x219d23(0x105)+String(_0xd9ec84[_0x219d23(0xa0)]||0xbb8)[_0x219d23(0xa3)](0x26)+_0x219d23(0xf8)+(_0xd9ec84[_0x219d23(0xfc)]||_0x4ebcbc['LvOYx'])[_0x219d23(0xa3)](0x26)+_0x219d23(0xa2)+(_0xd9ec84['apiKey']?_0x4ebcbc[_0x219d23(0x77)]:_0x4ebcbc['IDagv'])[_0x219d23(0xa3)](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console[_0x219d23(0xc1)](_0x375249);const _0x47904b={'event':_0x219d23(0x13a),'project':_0xd9ec84['project'],'port':_0xd9ec84['port'],'config':_0xd9ec84[_0x219d23(0xfc)],'apiKeyEnabled':!!_0xd9ec84['apiKey']};logger[_0x219d23(0xce)](_0x47904b),writeToFileLog({..._0x47904b,'level':_0x4ebcbc['DSZOo'],'msg':_0x219d23(0xa5)+_0xd9ec84[_0x219d23(0x13e)]+_0x219d23(0xe3)+_0xd9ec84[_0x219d23(0xa0)],'time':new Date()[_0x219d23(0x140)]()},_0x4ebcbc[_0x219d23(0x79)]);},logServerReady=_0x2cb42a=>{const _0x4f550b=a0_0xc69f3,_0x34f0ae={'sxDIv':_0x4f550b(0xa7)},_0x3f4b6f={'event':_0x34f0ae['sxDIv'],'port':_0x2cb42a[_0x4f550b(0xa0)],'module':_0x2cb42a[_0x4f550b(0xda)],'healthCheck':_0x2cb42a['healthCheck'],'serviceInfo':_0x2cb42a['serviceInfo'],'baseUrl':_0x2cb42a[_0x4f550b(0xcc)]},_0x16d8bc='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x2cb42a['port'];logger['info'](_0x3f4b6f,_0x16d8bc),writeToFileLog({..._0x3f4b6f,'level':'info','msg':_0x16d8bc,'time':new Date()[_0x4f550b(0x140)]()},_0x4f550b(0xce)),_0x2cb42a['healthCheck']&&logger['info'](_0x4f550b(0xee)+_0x2cb42a[_0x4f550b(0x143)]),_0x2cb42a[_0x4f550b(0x110)]&&logger[_0x4f550b(0xce)](_0x4f550b(0x10c)+_0x2cb42a['serviceInfo']),_0x2cb42a['baseUrl']&&logger[_0x4f550b(0xce)](_0x4f550b(0xe5)+_0x2cb42a['baseUrl']);},logProjectLoaded=(_0x49ecb1,_0x3ece07)=>{const _0x28e39a=a0_0xc69f3,_0x5ca0fc={'UOOll':_0x28e39a(0x81),'AyPXm':function(_0xf8fe7a,_0xbfa633,_0x10bac5){return _0xf8fe7a(_0xbfa633,_0x10bac5);},'PQRZr':'info'},_0x34672b={'event':_0x5ca0fc['UOOll'],'project':_0x49ecb1,'path':_0x3ece07},_0x2ab795='[OK]\x20Project\x20loaded:\x20'+_0x49ecb1;logger[_0x28e39a(0xce)](_0x34672b,_0x2ab795),_0x5ca0fc[_0x28e39a(0xb2)](writeToFileLog,{..._0x34672b,'level':_0x5ca0fc['PQRZr'],'msg':_0x2ab795,'time':new Date()[_0x28e39a(0x140)]()},_0x5ca0fc[_0x28e39a(0x75)]);},logEndpointRegistered=(_0x157a6b,_0x72aad5)=>{const _0x1b184d=a0_0xc69f3,_0x1a67b5={'qWHYZ':'debug'},_0x356963={'event':'endpoint_registered','endpoint':_0x157a6b,'route':_0x72aad5},_0x9bb17e='\x20\x20→\x20'+_0x157a6b+':\x20'+_0x72aad5;logger['debug'](_0x356963,_0x9bb17e),writeToFileLog({..._0x356963,'level':'debug','msg':_0x9bb17e,'time':new Date()[_0x1b184d(0x140)]()},_0x1a67b5['qWHYZ']);},logDatabaseConfig=_0x43715f=>{const _0x262a01=a0_0xc69f3,_0x40c9d9={'gFflE':_0x262a01(0x12e),'GQefw':function(_0x405bcb,_0x45a790,_0x20c32b){return _0x405bcb(_0x45a790,_0x20c32b);},'GxaWQ':_0x262a01(0x6c)},_0x3b3343={'event':_0x40c9d9['gFflE'],'host':_0x43715f[_0x262a01(0x142)],'port':_0x43715f[_0x262a01(0xa0)],'database':_0x43715f[_0x262a01(0xb8)],'type':_0x43715f['type'],'user':_0x43715f['user']},_0x1da5ba=_0x262a01(0xf2)+_0x43715f[_0x262a01(0xe2)]+_0x262a01(0xc2)+_0x43715f['host']+':'+_0x43715f['port']+'/'+_0x43715f['database'];logger['debug'](_0x3b3343,_0x1da5ba),_0x40c9d9['GQefw'](writeToFileLog,{..._0x3b3343,'level':_0x40c9d9[_0x262a01(0x9a)],'msg':_0x1da5ba,'time':new Date()['toISOString']()},_0x40c9d9['GxaWQ']);},logRequest=(_0x1b9ab4,_0xb3cb90,_0x3af855)=>{const _0x382466=a0_0xc69f3,_0x1bf294={'SlSPn':_0x382466(0x87),'aiPuU':function(_0x37ef3b,_0x1cccb5){return _0x37ef3b>=_0x1cccb5;},'hVwMF':_0x382466(0xe4),'wHmoo':function(_0x2262f9,_0x5a879a,_0x5cc192){return _0x2262f9(_0x5a879a,_0x5cc192);}},_0x5b97b1={'event':_0x382466(0x102),'method':_0x1b9ab4['method'],'path':_0x1b9ab4['path'],'statusCode':_0xb3cb90[_0x382466(0x107)],'durationMs':_0x3af855,'ip':_0x1b9ab4['ip']},_0x12b721=_0x1b9ab4[_0x382466(0x6b)]+'\x20'+_0x1b9ab4[_0x382466(0x100)]+_0x382466(0xf0)+_0xb3cb90['statusCode']+'\x20('+_0x3af855+'ms)';let _0x5c3338=_0x382466(0xce);if(_0xb3cb90[_0x382466(0x107)]>=0x1f4)_0x5c3338=_0x1bf294['SlSPn'],logger[_0x382466(0x87)](_0x5b97b1,_0x12b721);else _0x1bf294[_0x382466(0x118)](_0xb3cb90[_0x382466(0x107)],0x190)?(_0x5c3338=_0x1bf294['hVwMF'],logger[_0x382466(0xe4)](_0x5b97b1,_0x12b721)):logger['info'](_0x5b97b1,_0x12b721);_0x1bf294[_0x382466(0x10b)](writeToFileLog,{..._0x5b97b1,'level':_0x5c3338,'msg':_0x12b721,'time':new Date()[_0x382466(0x140)]()},_0x5c3338);},SENSITIVE_PARAM_PATTERNS=[a0_0xc69f3(0x80),a0_0xc69f3(0x9d),a0_0xc69f3(0xa8),'token',a0_0xc69f3(0xb9),'refresh_token',a0_0xc69f3(0xff),'api_secret',a0_0xc69f3(0x122),a0_0xc69f3(0x137),a0_0xc69f3(0x10f),'credentials','pin','otp','private_key',a0_0xc69f3(0xd8)],redactSensitiveParams=(_0x5bd144,_0x25a3a5)=>{const _0x42b0cc=a0_0xc69f3,_0x4f7c6e={'hANXR':function(_0x2e23e9,_0x2e6d92){return _0x2e23e9>_0x2e6d92;},'ABPIv':'[REDACTED:hash]'};if(!_0x5bd144||_0x5bd144['length']===0x0)return _0x5bd144;const _0x284593=_0x25a3a5[_0x42b0cc(0xba)](),_0xc07bf5=_0x284593['match'](/\(([^)]+)\)\s*values/i);let _0x41fd30=[];_0xc07bf5&&(_0x41fd30=_0xc07bf5[0x1]['split'](',')['map'](_0x3d0d63=>_0x3d0d63[_0x42b0cc(0x95)]()[_0x42b0cc(0xba)]()));const _0x120c87=_0x284593['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x120c87){const _0x11c323=_0x120c87[0x1],_0x50b334=_0x11c323['match'](/(\w+)\s*=/g);_0x50b334&&(_0x41fd30=_0x50b334['map'](_0x1a58c1=>_0x1a58c1[_0x42b0cc(0xeb)](/\s*=/,'')['trim']()[_0x42b0cc(0xba)]()));}return _0x5bd144[_0x42b0cc(0x13b)]((_0x168921,_0x5a954d)=>{const _0xa04d2=_0x42b0cc;if(_0x41fd30[_0x5a954d]){const _0x58439e=_0x41fd30[_0x5a954d],_0x39f8fb=SENSITIVE_PARAM_PATTERNS['some'](_0x26f786=>_0x58439e['includes'](_0x26f786));if(_0x39f8fb)return _0xa04d2(0xe1);}if(typeof _0x168921===_0xa04d2(0xe6)&&_0x4f7c6e['hANXR'](_0x168921['length'],0x20)){if(/^[a-zA-Z0-9+/=_.-]+$/[_0xa04d2(0x8a)](_0x168921)&&_0x168921[_0xa04d2(0x11f)]('.'))return _0xa04d2(0xf6);if(/^[a-fA-F0-9]{32,}$/[_0xa04d2(0x8a)](_0x168921))return _0x4f7c6e[_0xa04d2(0xe0)];}return _0x168921;});},parseQueryMetadata=_0x39e8d0=>{const _0xa8441a=a0_0xc69f3,_0x349060={'UKizh':_0xa8441a(0xd1),'zCjYB':'UPDATE','zLtZh':_0xa8441a(0x11c),'fjuZl':'TRANSACTION_BEGIN','uTQfi':_0xa8441a(0x136),'whaeW':'CREATE','Yhyfh':'DDL_CREATE','JKnkF':'ALTER','OSydG':'DDL_ALTER','Dswsj':_0xa8441a(0x10a)},_0x29db69=_0x39e8d0['trim'](),_0x239d2b=_0x29db69[_0xa8441a(0xbf)]();let _0xd2e29e=_0xa8441a(0x10d),_0x3fa322=null;if(_0x239d2b['startsWith']('SELECT')){_0xd2e29e=_0x349060[_0xa8441a(0x135)];const _0x342a0e=_0x29db69['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x342a0e?_0x342a0e[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)]('INSERT')){_0xd2e29e=_0xa8441a(0x73);const _0x42b5aa=_0x29db69['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x42b5aa?_0x42b5aa[0x1]:null;}else{if(_0x239d2b['startsWith'](_0x349060[_0xa8441a(0xa4)])){_0xd2e29e=_0xa8441a(0xe7);const _0x34b14b=_0x29db69['match'](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x34b14b?_0x34b14b[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)]('DELETE')){_0xd2e29e='DELETE';const _0x409186=_0x29db69[_0xa8441a(0x101)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x3fa322=_0x409186?_0x409186[0x1]:null;}else{if(_0x239d2b[_0xa8441a(0x13f)](_0x349060[_0xa8441a(0x11e)])||_0x239d2b[_0xa8441a(0x13f)](_0xa8441a(0x112)))_0xd2e29e=_0x349060[_0xa8441a(0x111)];else{if(_0x239d2b['startsWith'](_0xa8441a(0x11a)))_0xd2e29e=_0xa8441a(0x94);else{if(_0x239d2b['startsWith'](_0x349060[_0xa8441a(0x117)]))_0xd2e29e=_0xa8441a(0xc0);else{if(_0x239d2b['startsWith'](_0x349060['whaeW']))_0xd2e29e=_0x349060[_0xa8441a(0x85)];else{if(_0x239d2b['startsWith'](_0x349060['JKnkF']))_0xd2e29e=_0x349060[_0xa8441a(0x13d)];else _0x239d2b[_0xa8441a(0x13f)](_0xa8441a(0xcd))&&(_0xd2e29e=_0x349060[_0xa8441a(0xb6)]);}}}}}}}}return{'type':_0xd2e29e,'table':_0x3fa322};},startQueryTimer=()=>{const _0x2f56f5=a0_0xc69f3,_0x82f25f={'NjrKa':function(_0x4832fc,_0x37cf1d){return _0x4832fc+_0x37cf1d;},'IXggG':function(_0x200f2c,_0x38f476){return _0x200f2c/_0x38f476;}},_0x5c3114=process[_0x2f56f5(0xe8)]();return()=>{const _0x51cd78=_0x2f56f5,[_0x5e1e60,_0x5a7861]=process[_0x51cd78(0xe8)](_0x5c3114);return parseFloat(_0x82f25f[_0x51cd78(0xf4)](_0x5e1e60*0x3e8,_0x82f25f['IXggG'](_0x5a7861,0xf4240))[_0x51cd78(0x125)](0x2));};},logQuery=(_0x4dd473,_0x3b60bb=[],_0x4add7f={})=>{const _0x5db08f=a0_0xc69f3,_0x4aafad={'clghv':'db_query','UDNKv':function(_0x2174ba,_0x197b29){return _0x2174ba(_0x197b29);},'empeI':function(_0x5c1b92,_0x4641e9){return _0x5c1b92>_0x4641e9;},'ZJacE':'unknown','jzTeX':function(_0x15c580,_0x4f651a){return _0x15c580!==_0x4f651a;},'SMClf':_0x5db08f(0xe4),'ByHGb':function(_0xb27521,_0x1e09f1){return _0xb27521===_0x1e09f1;},'eTVXf':_0x5db08f(0xce)};if(!sqlLogEnabled){logger['debug']({'event':_0x4aafad['clghv'],'query':_0x4dd473[_0x5db08f(0x145)](0x0,0xc8),'paramCount':_0x3b60bb['length']},_0x5db08f(0x134));return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x5db08f(0x7d)}=_0x4add7f,{type:_0x2c91b8,table:_0x57ea22}=_0x4aafad[_0x5db08f(0x9e)](parseQueryMetadata,_0x4dd473),_0x1c2687={'event':_0x5db08f(0x97),'queryType':_0x2c91b8,'table':_0x57ea22,'query':_0x4dd473,'paramCount':_0x3b60bb[_0x5db08f(0xbb)],'dbType':dbType};sqlLogParams&&_0x4aafad['empeI'](_0x3b60bb[_0x5db08f(0xbb)],0x0)&&(_0x1c2687[_0x5db08f(0x11b)]=redactSensitiveParams(_0x3b60bb,_0x4dd473));duration!==null&&(_0x1c2687[_0x5db08f(0x70)]=duration,_0x1c2687['isSlow']=duration>sqlLogSlowThreshold);rowsAffected!==null&&(_0x1c2687['rowsAffected']=rowsAffected);const _0x3e19d2=_0x57ea22||_0x4aafad[_0x5db08f(0xc7)];let _0x44ff7d='['+_0x2c91b8+']\x20'+_0x3e19d2;duration!==null&&(_0x44ff7d+='\x20('+duration+'ms)');const _0x340d67=_0x4aafad[_0x5db08f(0xd3)](duration,null)&&_0x4aafad['empeI'](duration,sqlLogSlowThreshold);let _0x489211='debug';if(_0x340d67)_0x44ff7d+='\x20[SLOW]',_0x489211=_0x4aafad[_0x5db08f(0x108)],logger[_0x5db08f(0xe4)](_0x1c2687,_0x44ff7d);else _0x4aafad[_0x5db08f(0xfe)](sqlLogLevel,_0x4aafad[_0x5db08f(0xac)])?(_0x489211=_0x4aafad[_0x5db08f(0xac)],logger['info'](_0x1c2687,_0x44ff7d)):logger[_0x5db08f(0x6c)](_0x1c2687,_0x44ff7d);writeToFileLog({..._0x1c2687,'level':_0x489211,'msg':_0x44ff7d,'time':new Date()[_0x5db08f(0x140)]()},_0x489211);},logTransaction=(_0x3e19c4,_0x2fb32c)=>{const _0x1bfa26=a0_0xc69f3,_0x551f17={'TIrxS':_0x1bfa26(0xad),'cBZwG':function(_0x4a9f6f,_0x577a45,_0x51785f){return _0x4a9f6f(_0x577a45,_0x51785f);},'HtxhG':'debug'},_0x3b9df8={'event':_0x551f17[_0x1bfa26(0x106)],'status':_0x3e19c4,'queryCount':_0x2fb32c},_0x52e5e8=_0x1bfa26(0x93)+_0x3e19c4;logger[_0x1bfa26(0x6c)](_0x3b9df8,_0x52e5e8),_0x551f17['cBZwG'](writeToFileLog,{..._0x3b9df8,'level':_0x551f17['HtxhG'],'msg':_0x52e5e8,'time':new Date()['toISOString']()},_0x551f17[_0x1bfa26(0x12f)]);},redactObject=_0x15e848=>{const _0x52d961=a0_0xc69f3,_0x435b2b={'dXaKn':function(_0x1c189f,_0x2da4db){return _0x1c189f!==_0x2da4db;},'KhNbP':_0x52d961(0xc5),'UYMFM':_0x52d961(0x80),'pBxpj':'passwd','bEuyb':_0x52d961(0xff),'ZLMoJ':_0x52d961(0x8c),'OVIqH':_0x52d961(0x120),'GbWau':_0x52d961(0x9c),'SnbBy':_0x52d961(0x109),'gjxTu':'refresh_token','cVAPl':'access_token','qPAsL':function(_0x5971ce,_0x399b21){return _0x5971ce===_0x399b21;}};if(!_0x15e848||_0x435b2b['dXaKn'](typeof _0x15e848,_0x435b2b['KhNbP']))return _0x15e848;const _0x3c058f=[_0x435b2b[_0x52d961(0xfa)],_0x435b2b[_0x52d961(0xdb)],'pwd','token',_0x435b2b[_0x52d961(0x84)],'apikey','api_key','authorization','creditcard',_0x435b2b['ZLMoJ'],_0x435b2b[_0x52d961(0x144)],_0x435b2b[_0x52d961(0x141)],'pin',_0x435b2b[_0x52d961(0xd5)],_0x52d961(0xd8),_0x435b2b['gjxTu'],_0x435b2b[_0x52d961(0xab)]],_0x46d60d=Array['isArray'](_0x15e848)?[..._0x15e848]:{..._0x15e848};for(const _0x397533 of Object[_0x52d961(0xf5)](_0x46d60d)){const _0x285a8e=_0x397533[_0x52d961(0xba)]();if(_0x3c058f[_0x52d961(0xb7)](_0x2f078c=>_0x285a8e['includes'](_0x2f078c)))_0x46d60d[_0x397533]=_0x52d961(0xe1);else _0x435b2b['qPAsL'](typeof _0x46d60d[_0x397533],_0x435b2b['KhNbP'])&&_0x435b2b['dXaKn'](_0x46d60d[_0x397533],null)&&(_0x46d60d[_0x397533]=redactObject(_0x46d60d[_0x397533]));}return _0x46d60d;},logError=(_0x46c874,_0x5318b1={},_0x433ff4=null)=>{const _0x4eb4a6=a0_0xc69f3,_0x38b3d8={'YLVmh':'error'},_0x4f3cc2={'event':'error','errorName':_0x46c874[_0x4eb4a6(0x6e)]||'Error','errorMessage':_0x46c874['message'],'errorCode':_0x46c874[_0x4eb4a6(0xd4)]||null,'stack':_0x46c874['stack'],..._0x5318b1},_0xc87ff1=_0x433ff4||'Error:\x20'+_0x46c874[_0x4eb4a6(0x92)];logger['error'](_0x4f3cc2,_0xc87ff1),writeToFileLog({..._0x4f3cc2,'level':_0x38b3d8[_0x4eb4a6(0xb0)],'msg':_0xc87ff1,'time':new Date()[_0x4eb4a6(0x140)]()},_0x38b3d8['YLVmh']);},logFatalError=(_0x5c892c,_0x5c1199={},_0x253d5f=null)=>{const _0x465486=a0_0xc69f3,_0x143c83={'thCJj':'fatal_error','aSBCk':'Error','qEkRQ':function(_0x384450,_0x3dfdc6,_0x7f96d){return _0x384450(_0x3dfdc6,_0x7f96d);},'nMkqn':_0x465486(0x13c),'mpYSn':_0x465486(0x87)},_0x1cfbb4={'event':_0x143c83['thCJj'],'errorName':_0x5c892c['name']||_0x143c83['aSBCk'],'errorMessage':_0x5c892c['message'],'errorCode':_0x5c892c[_0x465486(0xd4)]||null,'stack':_0x5c892c[_0x465486(0x114)],'severity':_0x465486(0xb1),..._0x5c1199},_0x2ae9b8=_0x253d5f||'FATAL:\x20'+_0x5c892c[_0x465486(0x92)];logger['fatal'](_0x1cfbb4,_0x2ae9b8),_0x143c83['qEkRQ'](writeToFileLog,{..._0x1cfbb4,'level':_0x143c83[_0x465486(0x12c)],'msg':_0x2ae9b8,'time':new Date()[_0x465486(0x140)]()},_0x143c83['mpYSn']);},logHttpError=(_0x4c3ed5,_0x519608,_0x11f363={})=>{const _0x946914=a0_0xc69f3,_0x4a5602={'MKKEH':_0x946914(0x7e),'oZLlo':'Error','sQbfp':_0x946914(0xd9),'gJBKT':function(_0x49a354,_0x31a8ba){return _0x49a354(_0x31a8ba);},'djVKX':function(_0xfeaccb,_0x438f9a){return _0xfeaccb>=_0x438f9a;},'jimSs':_0x946914(0x87),'viMMY':'warn'},_0xc71c4c={'event':_0x4a5602[_0x946914(0x119)],'errorName':_0x4c3ed5[_0x946914(0x6e)]||_0x4a5602['oZLlo'],'errorMessage':_0x4c3ed5['message'],'errorCode':_0x4c3ed5[_0x946914(0xd4)]||_0x4c3ed5[_0x946914(0x107)]||0x1f4,'stack':_0x4c3ed5['stack'],'method':_0x519608?.['method'],'url':_0x519608?.[_0x946914(0xa1)]||_0x519608?.[_0x946914(0xd2)],'path':_0x519608?.[_0x946914(0x100)],'ip':_0x519608?.['ip']||_0x519608?.[_0x946914(0xd6)]?.['remoteAddress'],'userAgent':_0x519608?.['get']?.('user-agent'),'requestId':_0x519608?.['id']||_0x519608?.['headers']?.[_0x4a5602[_0x946914(0x74)]],'body':_0x519608?.['body']?_0x4a5602[_0x946914(0xca)](redactObject,_0x519608['body']):undefined,'query':_0x519608?.['query'],..._0x11f363},_0x3d55da=_0x4c3ed5['statusCode']||_0x4c3ed5[_0x946914(0xc3)]||0x1f4,_0x1709a5='HTTP\x20'+_0x3d55da+':\x20'+_0x4c3ed5['message'];_0x4a5602['djVKX'](_0x3d55da,0x1f4)?logger['error'](_0xc71c4c,_0x1709a5):logger[_0x946914(0xe4)](_0xc71c4c,_0x1709a5),writeToFileLog({..._0xc71c4c,'level':_0x3d55da>=0x1f4?_0x4a5602['jimSs']:_0x4a5602[_0x946914(0x99)],'msg':_0x1709a5,'time':new Date()[_0x946914(0x140)]()},_0x3d55da>=0x1f4?'error':'warn');},logUncaughtError=(_0x1c4ff8,_0x1f1969)=>{const _0x73469e=a0_0xc69f3,_0x2c86cf={'HgeaU':function(_0x4a4d84,_0x272530){return _0x4a4d84(_0x272530);},'OrbEH':'CRITICAL','ZtpRj':function(_0x44954d,_0x26b02f,_0x12ed48){return _0x44954d(_0x26b02f,_0x12ed48);},'cIUzV':_0x73469e(0x13c)},_0x5e2ba0={'event':_0x1c4ff8,'errorName':_0x1f1969?.['name']||_0x73469e(0x113),'errorMessage':_0x1f1969?.['message']||_0x2c86cf[_0x73469e(0xdc)](String,_0x1f1969),'errorCode':_0x1f1969?.[_0x73469e(0xd4)]||null,'stack':_0x1f1969?.['stack'],'severity':_0x2c86cf['OrbEH'],'processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process[_0x73469e(0x10e)]()},_0x3846ba='['+_0x1c4ff8[_0x73469e(0xbf)]()+']\x20'+(_0x1f1969?.['message']||_0x1f1969);logger['fatal'](_0x5e2ba0,_0x3846ba),_0x2c86cf[_0x73469e(0x103)](writeToFileLog,{..._0x5e2ba0,'level':_0x2c86cf[_0x73469e(0xfd)],'msg':_0x3846ba,'time':new Date()[_0x73469e(0x140)]()},'error');},setupGlobalErrorHandlers=()=>{const _0x52acb1=a0_0xc69f3,_0x54e74f={'aMAwp':function(_0x5a86ed,_0x2f3bf3,_0x3f8b46){return _0x5a86ed(_0x2f3bf3,_0x3f8b46);},'RjxfS':'uncaughtException','UYOlE':function(_0x12690e,_0x4887e9,_0x411fe6){return _0x12690e(_0x4887e9,_0x411fe6);},'KyrBx':function(_0x32587f,_0x4a30d9){return _0x32587f instanceof _0x4a30d9;},'AdCRl':function(_0x2e7078,_0x4980c0,_0x289e5d){return _0x2e7078(_0x4980c0,_0x289e5d);},'TyGJT':_0x52acb1(0x6d),'VwQtP':'unhandledRejection','OaJse':_0x52acb1(0xbe),'mrgqQ':function(_0x22ab4f,_0x4219cc,_0xc19ec4){return _0x22ab4f(_0x4219cc,_0xc19ec4);},'PaYaz':'info'};process['on']('uncaughtException',_0x57819a=>{const _0x4849bd=_0x52acb1;_0x54e74f[_0x4849bd(0x98)](logUncaughtError,_0x54e74f[_0x4849bd(0xc9)],_0x57819a),_0x54e74f['UYOlE'](setTimeout,()=>{const _0xb0aee3=_0x4849bd;process[_0xb0aee3(0x8e)](0x1);},0x3e8);}),process['on'](_0x54e74f[_0x52acb1(0xea)],(_0xbac36a,_0x282f3a)=>{const _0x4399d7=_0x54e74f['KyrBx'](_0xbac36a,Error)?_0xbac36a:new Error(String(_0xbac36a));_0x54e74f['AdCRl'](logUncaughtError,'unhandledRejection',_0x4399d7);}),process['on']('warning',_0x1e808b=>{const _0x52caf5=_0x52acb1;logger[_0x52caf5(0xe4)]({'event':_0x54e74f[_0x52caf5(0x76)],'name':_0x1e808b['name'],'message':_0x1e808b['message'],'stack':_0x1e808b['stack']},_0x52caf5(0xae)+_0x1e808b['message']);});const _0x32692b={'event':_0x54e74f[_0x52acb1(0xde)]},_0x40f021=_0x52acb1(0x71);logger['info'](_0x32692b,_0x40f021),_0x54e74f[_0x52acb1(0xfb)](writeToFileLog,{..._0x32692b,'level':_0x54e74f[_0x52acb1(0xaf)],'msg':_0x40f021,'time':new Date()[_0x52acb1(0x140)]()},_0x54e74f['PaYaz']);},createErrorHandlerMiddleware=()=>{const _0x12c02a={'PJPzA':function(_0xa07f34,_0x2277f6){return _0xa07f34>=_0x2277f6;},'aybNn':'Internal\x20server\x20error'};return(_0x49ba91,_0x4c497e,_0x46bc3a,_0x6b151c)=>{const _0x4733a4=a0_0x337a;logHttpError(_0x49ba91,_0x4c497e);const _0x4add2c=_0x49ba91[_0x4733a4(0x107)]||_0x49ba91['status']||0x1f4;_0x46bc3a['status'](_0x4add2c)[_0x4733a4(0xaa)]({'success':![],'error':_0x12c02a[_0x4733a4(0xbc)](_0x4add2c,0x1f4)?_0x12c02a[_0x4733a4(0x139)]:_0x49ba91['message'],'requestId':_0x4c497e['id']||_0x4c497e[_0x4733a4(0xbd)]?.[_0x4733a4(0xd9)]||null});};};module['exports']={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
1
+ function a0_0x21a4(){const _0x4529b6=['CgLUBW','CgfKrw5K','CuPqtLO','r2XVyMfSigvYCM9YigHHBMrSzxjZigLUAxrPywXPEMvK','tvbeDKS','tuj4DMK','yMfZzvvYBa','yxbWlMXVzW','CM93C0fMzMvJDgvK','Bwf0y2G','r3bcuhC','Dwf0BKi','C3vIC3rYAw5N','Bwf4','zMXVB3i','wvnNC2e','y3jLzgvUDgLHBhm','vu5ltK9xtG','vvbeqvrf','vhPvB2y','uwfftNO','zxHPC3rZu3LUyW','y2HPBgq','Cg9YDa','whDut0u','zgf0ywjHC2u','C3rHCNrZv2L0Aa','thHhA1K','BgvUz3rO','zxHWB3j0CW','reLNqM4','C29Tzq','u1jeuNm','C2vJCMv0','mJuWndyYnxPfwuLpuq','CMvXlMHLywrLCNnBiNGTyxbPlwTLEsjD','ChjPDMf0zv9RzxK','AgvHzgvYCW','vLrqBuW','zw5KCg9PBNrFCMvNAxn0zxjLza','DgvZDa','iokvKqRILzeGiefqssblzxKGicaGidOG','u0vsvKLdrv9oqu1f','C3rHDhvZ','zw52','C3rYAw5NAwz5','u1rbuLqGvfjbtLnbq1rjt04','C3rHDhvZq29Kzq','ChjVy2vZC193yxjUAw5N','zMf0ywXFzxjYB3i','ANftr2G','C3nU','CMvWzwf0','Cfvrs2O','y3jLyxrLv3jPDgvtDhjLyw0','Aw5MBW','nJe2nw91ywDOCW','Cxb3Efy','DxrZBw8','mte0mZq1n3ftsfnVzG','mJK4otq0BLHJDxDI','CMvZDgzVCMDL','quXurvi','te9hx1rpx0zjteu','Dg9ju09tDhjPBMC','rermx0fmvevs','lI9SB2DZlW','C29Qq3e','BxmP','u1fmx0Xpr19ftKfcteve','A2v5CW','revmrvrf','u2vYDMvYihn0yxj0Aw5NoIa','zgf0ywjHC2vFy29UzMLN','D3jPDgu','AM9PBG','Bwv0Ag9K','ChjVzhvJDgLVBG','zgv2zwXVCg1LBNq','Dw5RBM93BG','vurvueO','rKfuquW6ia','zwT6r2K','rermx0rst1a','mZaYmJG2DgnwBLD6','Ec1Yzxf1zxn0lwLK','Ag9ZDa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','C3rYAw5N','DhjPBq','ic0G','rMLSzsbSB2DNAw5NigvUywjSzwq6ia','zMH3zvC','yxbPx2TLEq','yxbPx3nLy3jLDa','Dg9Rzw4','Dg9mB3DLCKnHC2u','w09lxsbqCM9Qzwn0igXVywrLzdOG','qM5htLK','mtuYmJKYmgzWrxLUqG','tM9TseK','uLDdCeK','ChjVAMvJDa','DwjAALG','uKvtvezpuKDfifjvtLrjtuuGu0vsvKvs','ChjPDMf0zwTLEq','Aw5JBhvKzxm','zfHtDu8','CMvTB3rLqwrKCMvZCW','rhPVChy','Ahr0Cf9LCNjVCG','zgvND0i','ote2mti0Bg92uNnK','ugDSD1u','sLDux1nfq1jfva','y3jLzgL0y2fYza','AMntqxa','svnjuw4','B05eEuy','mtC1mtjyDwD5BNy','te9hx0rjuG','w1jfrefdvevexq','ms4WlJu','zhvYyxrPB25nCW','DxnLCG','BwvZC2fNzq','CeXKwhK','vhjHBNnHy3rPB24G','tK9erv9ftLy','y3jLzgL0x2nHCMq','Cfbnvui','u1fmx0Xpr19mrvzfta','sKnms1y','yxbPA2v5','B2jQzwn0','C3rHy2S','icbjBMzVoIaGia','BwfW','yxbPs2v5','qvbqx1zfuLnjt04','y29UzMLNrMLSzq','ChDK','z2XVyMfSx2vYCM9Yx2HHBMrSzxjZx3nLDhvW','w1jfrefdveveoMHHC2HD','sw50zxjUywWGC2vYDMvYigvYCM9Y','reiGuxvLCNK','wejwDxm','DhLWzq','mtv5CeXwtfO','y29UBMvJDgLVBG','q1jjveLdquW','D2fYBG','BMfTzq','C3rKu2vYAwfSAxPLCNm','CgfZC3DVCMq','ANLIwuK','su5trvju','z2v0','Ahj0Aw1L','y29Kzq','BNvpwwO','CgLU','zMf0ywW','q09ntuLu','rxjYB3i','zxjYB3i','z2v0sgvHzgvYCW','CMvMCMvZAf90B2TLBG','Cgf0Aa','qvPevuW','qLjJqxC','zgjFDhjHBNnHy3rPB24','zgvIDwC','rfjpua','tgXZs0m','C2vYDMvYx3n0yxj0Aw5N','C2vYDMLJzuLUzM8','rMfPBgvKihrVignYzwf0zsbSB2CGzgLYzwn0B3j5ia','rgf0ywjHC2u6ia','zMLSzv9SB2DNAw5Nx2vUywjSzwq','AgvHBhrOq2HLy2S','Dg9vChbLCKnHC2u','CMvWBgfJzq','ALDUt2e','vvLiB0W','yM9KEq'];a0_0x21a4=function(){return _0x4529b6;};return a0_0x21a4();}const a0_0x34f8c3=a0_0x1fb1;(function(_0x2c2239,_0x513fb6){const _0x3c1e99=a0_0x1fb1,_0x3aba2a=_0x2c2239();while(!![]){try{const _0x31dd43=parseInt(_0x3c1e99(0x268))/0x1+parseInt(_0x3c1e99(0x280))/0x2+-parseInt(_0x3c1e99(0x24e))/0x3+parseInt(_0x3c1e99(0x1e2))/0x4*(-parseInt(_0x3c1e99(0x206))/0x5)+parseInt(_0x3c1e99(0x28f))/0x6+-parseInt(_0x3c1e99(0x267))/0x7+-parseInt(_0x3c1e99(0x1e9))/0x8*(-parseInt(_0x3c1e99(0x264))/0x9);if(_0x31dd43===_0x513fb6)break;else _0x3aba2a['push'](_0x3aba2a['shift']());}catch(_0x299f48){_0x3aba2a['push'](_0x3aba2a['shift']());}}}(a0_0x21a4,0x7e7a5));const pino=require(a0_0x34f8c3(0x22c)),fs=require('fs'),path=require(a0_0x34f8c3(0x21a));let logToFile=![],logDir='./logs',serviceName=a0_0x34f8c3(0x269),sqlLogEnabled=![],sqlLogLevel=a0_0x34f8c3(0x21e),sqlLogParams=!![],sqlLogSlowThreshold=0x3e8,fileLoggingInitialized=![],appLogStream=null,errorLogStream=null;const prettyPrintOptions={'colorize':!![],'translateTime':'SYS:HH:MM:ss','ignore':'pid,hostname,service,version,env,event,module,port,config,apiKeyEnabled,path,workingDir,isPkg,isNodeScript,file,email,type,cors,logging,apiKey,count,endpoint,route','singleLine':![],'levelFirst':!![],'messageFormat':'{msg}','customColors':'info:blue,warn:yellow,error:red,debug:gray','hideObject':!![]},isDevelopment=process['env'][a0_0x34f8c3(0x1f2)]!==a0_0x34f8c3(0x279),logLevel=process['env']['LOG_LEVEL']||a0_0x34f8c3(0x263);let logger=pino({'level':logLevel,'transport':isDevelopment?{'target':'pino-pretty','options':prettyPrintOptions}:undefined,'base':{'service':a0_0x34f8c3(0x269),'version':process['env'][a0_0x34f8c3(0x1fd)]||a0_0x34f8c3(0x1ec),'env':process[a0_0x34f8c3(0x258)]['NODE_ENV']||a0_0x34f8c3(0x27a)},'timestamp':pino['stdTimeFunctions']['isoTime'],'redact':{'paths':['req.headers.authorization',a0_0x34f8c3(0x24f),'password',a0_0x34f8c3(0x28b),a0_0x34f8c3(0x1fc),'DB_PASSWORD',a0_0x34f8c3(0x1e4)],'censor':a0_0x34f8c3(0x1eb)},'serializers':{'req':_0x139073=>({'id':_0x139073['id'],'method':_0x139073[a0_0x34f8c3(0x278)],'url':_0x139073['url'],'path':_0x139073['path'],'remoteAddress':_0x139073['ip']||_0x139073[a0_0x34f8c3(0x207)]?.[a0_0x34f8c3(0x298)]}),'res':_0x4a9e41=>({'statusCode':_0x4a9e41['statusCode'],'headers':_0x4a9e41[a0_0x34f8c3(0x218)]?.()}),'err':pino[a0_0x34f8c3(0x20b)]['err']}});function initFileLogging(){const _0x3c1c2c=a0_0x34f8c3,_0x570677={'PRELu':_0x3c1c2c(0x269),'fhweW':function(_0x43d483,_0x769f67){return _0x43d483===_0x769f67;},'YMFwN':'true','qJPNZ':function(_0x3afff0,_0x1fdb4e){return _0x3afff0!==_0x1fdb4e;},'UDUPJ':_0x3c1c2c(0x233),'LkffW':_0x3c1c2c(0x225),'lmXlI':function(_0x1f3467,_0x5e11f8,_0xbfe694){return _0x1f3467(_0x5e11f8,_0xbfe694);},'sojCq':'info'};if(fileLoggingInitialized)return;logToFile=process['env'][_0x3c1c2c(0x26b)]==='true';const _0x37f3ff=process['env'][_0x3c1c2c(0x283)]||'default';logDir=process['env'][_0x3c1c2c(0x1ea)]||_0x3c1c2c(0x26e)+_0x37f3ff,serviceName=process[_0x3c1c2c(0x258)][_0x3c1c2c(0x256)]||_0x570677['PRELu'],sqlLogEnabled=_0x570677[_0x3c1c2c(0x288)](process['env'][_0x3c1c2c(0x271)],_0x570677['YMFwN']),sqlLogLevel=process['env'][_0x3c1c2c(0x1f5)]||_0x3c1c2c(0x21e),sqlLogParams=_0x570677[_0x3c1c2c(0x22e)](process[_0x3c1c2c(0x258)]['SQL_LOG_PARAMS'],'false'),sqlLogSlowThreshold=parseInt(process['env']['SQL_LOG_SLOW_THRESHOLD'])||0x3e8;if(!logToFile){fileLoggingInitialized=!![];return;}const _0x481e02=path['resolve'](process['cwd'](),logDir);try{!fs[_0x3c1c2c(0x241)](_0x481e02)&&fs['mkdirSync'](_0x481e02,{'recursive':!![]});}catch(_0x21c5af){console[_0x3c1c2c(0x217)](_0x3c1c2c(0x223)+_0x481e02+':',_0x21c5af['message']),fileLoggingInitialized=!![];return;}const _0x58844c=path[_0x3c1c2c(0x277)](_0x481e02,_0x570677[_0x3c1c2c(0x27c)]),_0x41b55e=path['join'](_0x481e02,'error.log');try{appLogStream=fs[_0x3c1c2c(0x262)](_0x58844c,{'flags':'a'}),errorLogStream=fs[_0x3c1c2c(0x262)](_0x41b55e,{'flags':'a'}),fileLoggingInitialized=!![];const _0x494b5c={'event':_0x570677['LkffW'],'logDir':_0x481e02,'files':[_0x570677[_0x3c1c2c(0x27c)],'error.log']},_0x2fa4eb=_0x3c1c2c(0x287)+_0x481e02;logger['info'](_0x494b5c,_0x2fa4eb),_0x570677['lmXlI'](writeToFileLog,{..._0x494b5c,'level':_0x570677[_0x3c1c2c(0x26f)],'msg':_0x2fa4eb,'time':new Date()['toISOString']()},'info');}catch(_0x22977f){console[_0x3c1c2c(0x217)]('Failed\x20to\x20create\x20log\x20streams:',_0x22977f['message']),fileLoggingInitialized=!![];}}function a0_0x1fb1(_0xad57a0,_0x356703){_0xad57a0=_0xad57a0-0x1df;const _0x21a4cc=a0_0x21a4();let _0x1fb15a=_0x21a4cc[_0xad57a0];if(a0_0x1fb1['dlQrqo']===undefined){var _0x2efcce=function(_0x4f00ac){const _0x3ed77a='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x340a0a='',_0x6a5528='';for(let _0xdc4219=0x0,_0x27e342,_0x4c78f2,_0x86cb3a=0x0;_0x4c78f2=_0x4f00ac['charAt'](_0x86cb3a++);~_0x4c78f2&&(_0x27e342=_0xdc4219%0x4?_0x27e342*0x40+_0x4c78f2:_0x4c78f2,_0xdc4219++%0x4)?_0x340a0a+=String['fromCharCode'](0xff&_0x27e342>>(-0x2*_0xdc4219&0x6)):0x0){_0x4c78f2=_0x3ed77a['indexOf'](_0x4c78f2);}for(let _0x1901cd=0x0,_0x1d6b2a=_0x340a0a['length'];_0x1901cd<_0x1d6b2a;_0x1901cd++){_0x6a5528+='%'+('00'+_0x340a0a['charCodeAt'](_0x1901cd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6a5528);};a0_0x1fb1['ZEmsqW']=_0x2efcce,a0_0x1fb1['eCSnUq']={},a0_0x1fb1['dlQrqo']=!![];}const _0x5b2ce2=_0x21a4cc[0x0],_0x3c6bbc=_0xad57a0+_0x5b2ce2,_0x3601c2=a0_0x1fb1['eCSnUq'][_0x3c6bbc];return!_0x3601c2?(_0x1fb15a=a0_0x1fb1['ZEmsqW'](_0x1fb15a),a0_0x1fb1['eCSnUq'][_0x3c6bbc]=_0x1fb15a):_0x1fb15a=_0x3601c2,_0x1fb15a;}function writeToFileLog(_0x21a7ae,_0x2fec91){const _0x52ab3c=a0_0x34f8c3,_0x18c046={'QzqMz':function(_0xe2a749,_0x2ebe69){return _0xe2a749||_0x2ebe69;},'LxGkY':function(_0x1c2bfc,_0x18fb07){return _0x1c2bfc===_0x18fb07;},'loiGN':_0x52ab3c(0x214)};if(_0x18c046['QzqMz'](!logToFile,!appLogStream))return;const _0x5843e0={'service':serviceName,..._0x21a7ae},_0x3cb87c=JSON[_0x52ab3c(0x259)](_0x5843e0)+'\x0a';appLogStream[_0x52ab3c(0x276)](_0x3cb87c),(_0x18c046['LxGkY'](_0x2fec91,'error')||_0x18c046[_0x52ab3c(0x247)](_0x2fec91,_0x18c046['loiGN']))&&(errorLogStream&&errorLogStream[_0x52ab3c(0x276)](_0x3cb87c));}const createRequestLogger=(_0x3403cc={})=>{const _0x45da32=a0_0x34f8c3;return logger[_0x45da32(0x242)](_0x3403cc);},logServerStart=_0x410cd3=>{const _0x141f3e=a0_0x34f8c3,_0x51bc17={'HsgZs':'Node.js','hPcaa':function(_0x28dbf4,_0x5cbc86){return _0x28dbf4(_0x5cbc86);},'DEZtI':'Default'},_0x19a610=_0x141f3e(0x294),_0xba5f0f=Math[_0x141f3e(0x239)](0x0,0x37-_0x19a610['length']),_0x2a276b=Math[_0x141f3e(0x23a)](_0xba5f0f/0x2),_0x54b5c7=_0xba5f0f-_0x2a276b,_0x545e13='║'+'\x20'[_0x141f3e(0x260)](_0x2a276b)+_0x19a610+'\x20'['repeat'](_0x54b5c7)+'║',_0x12790f='\x0a╔═══════════════════════════════════════════════════════╗\x0a'+_0x545e13+'\x0a╠═══════════════════════════════════════════════════════╣\x0a║\x20\x20Environment\x20:\x20'+(_0x410cd3['environment']||_0x51bc17['HsgZs'])['padEnd'](0x26)+'\x20║\x0a║\x20\x20Project\x20\x20\x20\x20\x20:\x20'+(_0x410cd3[_0x141f3e(0x292)]||'N/A')[_0x141f3e(0x22d)](0x26)+'\x20║\x0a║\x20\x20Port\x20\x20\x20\x20\x20\x20\x20\x20:\x20'+_0x51bc17['hPcaa'](String,_0x410cd3['port']||0xbb8)[_0x141f3e(0x22d)](0x26)+'\x20║\x0a║\x20\x20Config\x20\x20\x20\x20\x20\x20:\x20'+(_0x410cd3['configFile']||_0x51bc17['DEZtI'])[_0x141f3e(0x22d)](0x26)+_0x141f3e(0x255)+(_0x410cd3[_0x141f3e(0x1fc)]?'ACTIVE':'NOT\x20ACTIVE')['padEnd'](0x26)+'\x20║\x0a╚═══════════════════════════════════════════════════════╝';console['log'](_0x12790f);const _0x48f7d3={'event':_0x141f3e(0x221),'project':_0x410cd3['project'],'port':_0x410cd3['port'],'config':_0x410cd3[_0x141f3e(0x1fe)],'apiKeyEnabled':!!_0x410cd3[_0x141f3e(0x1fc)]};logger['info'](_0x48f7d3),writeToFileLog({..._0x48f7d3,'level':_0x141f3e(0x263),'msg':_0x141f3e(0x274)+_0x410cd3['project']+'\x20on\x20port\x20'+_0x410cd3[_0x141f3e(0x243)],'time':new Date()['toISOString']()},_0x141f3e(0x263));},logServerReady=_0x2fd809=>{const _0xa4e9f0=a0_0x34f8c3,_0x3b1f32={'DIgBn':'server_ready','JCLKV':_0xa4e9f0(0x263)},_0x4dcd95={'event':_0x3b1f32[_0xa4e9f0(0x24a)],'port':_0x2fd809[_0xa4e9f0(0x243)],'module':_0x2fd809['module'],'healthCheck':_0x2fd809['healthCheck'],'serviceInfo':_0x2fd809[_0xa4e9f0(0x222)],'baseUrl':_0x2fd809[_0xa4e9f0(0x232)]},_0x44493f='[OK]\x20Server\x20ready\x20on\x20port\x20'+_0x2fd809[_0xa4e9f0(0x243)];logger['info'](_0x4dcd95,_0x44493f),writeToFileLog({..._0x4dcd95,'level':_0x3b1f32[_0xa4e9f0(0x1f6)],'msg':_0x44493f,'time':new Date()[_0xa4e9f0(0x26c)]()},_0x3b1f32['JCLKV']),_0x2fd809[_0xa4e9f0(0x226)]&&logger[_0xa4e9f0(0x263)]('\x20\x20Health:\x20'+_0x2fd809[_0xa4e9f0(0x226)]),_0x2fd809[_0xa4e9f0(0x222)]&&logger[_0xa4e9f0(0x263)](_0xa4e9f0(0x1fa)+_0x2fd809[_0xa4e9f0(0x222)]),_0x2fd809[_0xa4e9f0(0x232)]&&logger['info']('\x20\x20URL:\x20\x20\x20\x20'+_0x2fd809['baseUrl']);},logProjectLoaded=(_0x338eba,_0x9249f0)=>{const _0x22137c=a0_0x34f8c3,_0x5d153c={'degwB':function(_0x9aac94,_0x2268ed,_0x1d31f7){return _0x9aac94(_0x2268ed,_0x1d31f7);},'tdtxS':'info'},_0x8fa06e={'event':'project_loaded','project':_0x338eba,'path':_0x9249f0},_0x2707aa=_0x22137c(0x28d)+_0x338eba;logger['info'](_0x8fa06e,_0x2707aa),_0x5d153c[_0x22137c(0x1e1)](writeToFileLog,{..._0x8fa06e,'level':_0x5d153c['tdtxS'],'msg':_0x2707aa,'time':new Date()[_0x22137c(0x26c)]()},_0x22137c(0x263));},logEndpointRegistered=(_0x30a619,_0x3e43e3)=>{const _0xd769e7=a0_0x34f8c3,_0x49d1f2={'ZUXlC':_0xd769e7(0x253),'CbpGj':function(_0x259984,_0x1cf706,_0xa97a24){return _0x259984(_0x1cf706,_0xa97a24);},'XwTOE':'debug'},_0x2ed990={'event':_0x49d1f2['ZUXlC'],'endpoint':_0x30a619,'route':_0x3e43e3},_0x4a7c8e='\x20\x20→\x20'+_0x30a619+':\x20'+_0x3e43e3;logger[_0xd769e7(0x21e)](_0x2ed990,_0x4a7c8e),_0x49d1f2['CbpGj'](writeToFileLog,{..._0x2ed990,'level':_0x49d1f2[_0xd769e7(0x244)],'msg':_0x4a7c8e,'time':new Date()[_0xd769e7(0x26c)]()},_0x49d1f2[_0xd769e7(0x244)]);},logDatabaseConfig=_0x5bf781=>{const _0x55f8db=a0_0x34f8c3,_0x283785={'BnGNY':_0x55f8db(0x275),'ytaxo':function(_0x408567,_0x5d0782,_0xa83fdd){return _0x408567(_0x5d0782,_0xa83fdd);}},_0x450a6c={'event':_0x283785[_0x55f8db(0x28e)],'host':_0x5bf781[_0x55f8db(0x282)],'port':_0x5bf781['port'],'database':_0x5bf781[_0x55f8db(0x245)],'type':_0x5bf781['type'],'user':_0x5bf781[_0x55f8db(0x1ee)]},_0x43df80=_0x55f8db(0x224)+_0x5bf781[_0x55f8db(0x205)]+'://'+_0x5bf781['host']+':'+_0x5bf781[_0x55f8db(0x243)]+'/'+_0x5bf781['database'];logger[_0x55f8db(0x21e)](_0x450a6c,_0x43df80),_0x283785['ytaxo'](writeToFileLog,{..._0x450a6c,'level':_0x55f8db(0x21e),'msg':_0x43df80,'time':new Date()['toISOString']()},_0x55f8db(0x21e));},logRequest=(_0x356983,_0x427417,_0x4165fa)=>{const _0x1eb1d2=a0_0x34f8c3,_0x48f187={'jyYiF':'info','ekzGi':function(_0x3158ad,_0x1bfe11){return _0x3158ad>=_0x1bfe11;},'MBxvi':_0x1eb1d2(0x209)},_0x52a5d4={'event':'http_request','method':_0x356983[_0x1eb1d2(0x278)],'path':_0x356983[_0x1eb1d2(0x21a)],'statusCode':_0x427417['statusCode'],'durationMs':_0x4165fa,'ip':_0x356983['ip']},_0x47f163=_0x356983['method']+'\x20'+_0x356983['path']+_0x1eb1d2(0x286)+_0x427417['statusCode']+'\x20('+_0x4165fa+_0x1eb1d2(0x270);let _0x2612ea=_0x48f187['jyYiF'];if(_0x48f187['ekzGi'](_0x427417['statusCode'],0x1f4))_0x2612ea='error',logger[_0x1eb1d2(0x217)](_0x52a5d4,_0x47f163);else _0x48f187[_0x1eb1d2(0x27e)](_0x427417[_0x1eb1d2(0x25b)],0x190)?(_0x2612ea=_0x48f187[_0x1eb1d2(0x231)],logger['warn'](_0x52a5d4,_0x47f163)):logger['info'](_0x52a5d4,_0x47f163);writeToFileLog({..._0x52a5d4,'level':_0x2612ea,'msg':_0x47f163,'time':new Date()[_0x1eb1d2(0x26c)]()},_0x2612ea);},SENSITIVE_PARAM_PATTERNS=[a0_0x34f8c3(0x20c),'passwd',a0_0x34f8c3(0x1ff),a0_0x34f8c3(0x28b),'access_token',a0_0x34f8c3(0x219),a0_0x34f8c3(0x24d),a0_0x34f8c3(0x28a),a0_0x34f8c3(0x1f7),a0_0x34f8c3(0x289),'credential',a0_0x34f8c3(0x23c),'pin','otp','private_key','privatekey'],redactSensitiveParams=(_0x3156f1,_0x1a822f)=>{const _0x5c1418=a0_0x34f8c3,_0x45f6a5={'orHXf':_0x5c1418(0x284),'COFDi':_0x5c1418(0x201)};if(!_0x3156f1||_0x3156f1[_0x5c1418(0x248)]===0x0)return _0x3156f1;const _0x4c7a92=_0x1a822f['toLowerCase'](),_0xa6465d=_0x4c7a92['match'](/\(([^)]+)\)\s*values/i);let _0x3cad43=[];_0xa6465d&&(_0x3cad43=_0xa6465d[0x1]['split'](',')[_0x5c1418(0x1fb)](_0x2f738f=>_0x2f738f[_0x5c1418(0x285)]()[_0x5c1418(0x28c)]()));const _0x1ce2a4=_0x4c7a92['match'](/set\s+(.+?)(?:\s+where|$)/i);if(_0x1ce2a4){const _0x573201=_0x1ce2a4[0x1],_0x339747=_0x573201['match'](/(\w+)\s*=/g);_0x339747&&(_0x3cad43=_0x339747[_0x5c1418(0x1fb)](_0x371a51=>_0x371a51[_0x5c1418(0x228)](/\s*=/,'')[_0x5c1418(0x285)]()[_0x5c1418(0x28c)]()));}return _0x3156f1['map']((_0x3ac284,_0x559057)=>{const _0x2fc117=_0x5c1418;if(_0x3cad43[_0x559057]){const _0x3c0a1c=_0x3cad43[_0x559057],_0x5b321d=SENSITIVE_PARAM_PATTERNS[_0x2fc117(0x24b)](_0x134114=>_0x3c0a1c['includes'](_0x134114));if(_0x5b321d)return _0x2fc117(0x1eb);}if(typeof _0x3ac284===_0x45f6a5['orHXf']&&_0x3ac284[_0x2fc117(0x248)]>0x20){if(/^[a-zA-Z0-9+/=_.-]+$/['test'](_0x3ac284)&&_0x3ac284[_0x2fc117(0x296)]('.'))return'[REDACTED:token]';if(/^[a-fA-F0-9]{32,}$/[_0x2fc117(0x254)](_0x3ac284))return _0x45f6a5['COFDi'];}return _0x3ac284;});},parseQueryMetadata=_0x90cf3b=>{const _0x410419=a0_0x34f8c3,_0xefd1a3={'uatnB':_0x410419(0x23d),'UYHoL':_0x410419(0x20e),'oNDyF':'BEGIN','RWCpI':_0x410419(0x25a),'zOhAz':'TRANSACTION_BEGIN','UAhpi':_0x410419(0x215),'XBVus':'TRANSACTION_COMMIT','pLdXy':'ROLLBACK','TMazJ':'DDL_CREATE','YSgsa':_0x410419(0x26a),'fbpXV':_0x410419(0x26d),'MkCfn':_0x410419(0x27f)},_0x3183a0=_0x90cf3b['trim'](),_0x491145=_0x3183a0['toUpperCase']();let _0x457a32=_0xefd1a3[_0x410419(0x237)],_0x398833=null;if(_0x491145[_0x410419(0x246)]('SELECT')){_0x457a32='SELECT';const _0x5287aa=_0x3183a0[_0x410419(0x235)](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x398833=_0x5287aa?_0x5287aa[0x1]:null;}else{if(_0x491145['startsWith'](_0xefd1a3[_0x410419(0x22a)])){_0x457a32=_0xefd1a3['UYHoL'];const _0x17da23=_0x3183a0['match'](/INTO\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x398833=_0x17da23?_0x17da23[0x1]:null;}else{if(_0x491145['startsWith']('UPDATE')){_0x457a32=_0x410419(0x23e);const _0x45ca34=_0x3183a0[_0x410419(0x235)](/UPDATE\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x398833=_0x45ca34?_0x45ca34[0x1]:null;}else{if(_0x491145['startsWith'](_0x410419(0x273))){_0x457a32='DELETE';const _0x49e3f3=_0x3183a0['match'](/FROM\s+["']?([a-zA-Z_][a-zA-Z0-9_]*(?:\.[a-zA-Z_][a-zA-Z0-9_]*)?)["']?/i);_0x398833=_0x49e3f3?_0x49e3f3[0x1]:null;}else{if(_0x491145['startsWith'](_0xefd1a3[_0x410419(0x1e8)])||_0x491145['startsWith'](_0xefd1a3[_0x410419(0x291)]))_0x457a32=_0xefd1a3['zOhAz'];else{if(_0x491145['startsWith'](_0xefd1a3['UAhpi']))_0x457a32=_0xefd1a3[_0x410419(0x204)];else{if(_0x491145[_0x410419(0x246)](_0xefd1a3[_0x410419(0x1f0)]))_0x457a32='TRANSACTION_ROLLBACK';else{if(_0x491145['startsWith']('CREATE'))_0x457a32=_0xefd1a3['TMazJ'];else{if(_0x491145['startsWith'](_0xefd1a3[_0x410419(0x23b)]))_0x457a32=_0xefd1a3['fbpXV'];else _0x491145[_0x410419(0x246)](_0x410419(0x21f))&&(_0x457a32=_0xefd1a3['MkCfn']);}}}}}}}}return{'type':_0x457a32,'table':_0x398833};},startQueryTimer=()=>{const _0x29be2e=a0_0x34f8c3,_0x4ca390={'VTPmL':function(_0x402abc,_0x56919c){return _0x402abc(_0x56919c);},'ubZjX':function(_0xee6f37,_0x321476){return _0xee6f37+_0x321476;},'iEgZC':function(_0x171e40,_0x5ce4ef){return _0x171e40/_0x5ce4ef;}},_0x2f6e43=process[_0x29be2e(0x210)]();return()=>{const _0x62897c=_0x29be2e,[_0x1815fc,_0x5b3055]=process['hrtime'](_0x2f6e43);return _0x4ca390[_0x62897c(0x252)](parseFloat,_0x4ca390[_0x62897c(0x293)](_0x1815fc*0x3e8,_0x4ca390['iEgZC'](_0x5b3055,0xf4240))['toFixed'](0x2));};},logQuery=(_0x3d577f,_0x292494=[],_0x9108e5={})=>{const _0x2b50b7=a0_0x34f8c3,_0x296223={'QaENz':_0x2b50b7(0x203),'MPDvK':'postgresql','keVci':function(_0x5daefa,_0x48dd75){return _0x5daefa(_0x48dd75);},'qpwxV':function(_0x43dbf4,_0xc34c28,_0x47e39c){return _0x43dbf4(_0xc34c28,_0x47e39c);},'bCcuM':function(_0x38b22a,_0x5221c4){return _0x38b22a!==_0x5221c4;},'TzUof':function(_0x2589e3,_0x30271e){return _0x2589e3>_0x30271e;},'RPpte':_0x2b50b7(0x21e),'TqNUU':'\x20[SLOW]','dXSuO':_0x2b50b7(0x209),'jWnOa':'info'};if(!sqlLogEnabled){logger['debug']({'event':'db_query','query':_0x3d577f[_0x2b50b7(0x238)](0x0,0xc8),'paramCount':_0x292494['length']},_0x296223[_0x2b50b7(0x240)]);return;}const {duration:duration=null,rowsAffected:rowsAffected=null,dbType:dbType=_0x296223[_0x2b50b7(0x230)]}=_0x9108e5,{type:_0x5144ef,table:_0x46ded4}=_0x296223['keVci'](parseQueryMetadata,_0x3d577f),_0x25026a={'event':'sql_query','queryType':_0x5144ef,'table':_0x46ded4,'query':_0x3d577f,'paramCount':_0x292494['length'],'dbType':dbType};sqlLogParams&&_0x292494['length']>0x0&&(_0x25026a['params']=_0x296223['qpwxV'](redactSensitiveParams,_0x292494,_0x3d577f));duration!==null&&(_0x25026a[_0x2b50b7(0x1ed)]=duration,_0x25026a['isSlow']=duration>sqlLogSlowThreshold);_0x296223['bCcuM'](rowsAffected,null)&&(_0x25026a[_0x2b50b7(0x234)]=rowsAffected);const _0x384e80=_0x46ded4||_0x2b50b7(0x27b);let _0x3a0a57='['+_0x5144ef+']\x20'+_0x384e80;_0x296223['bCcuM'](duration,null)&&(_0x3a0a57+='\x20('+duration+_0x2b50b7(0x270));const _0x56f0db=duration!==null&&_0x296223[_0x2b50b7(0x23f)](duration,sqlLogSlowThreshold);let _0x1f94d5=_0x296223['RPpte'];if(_0x56f0db)_0x3a0a57+=_0x296223['TqNUU'],_0x1f94d5=_0x296223[_0x2b50b7(0x297)],logger['warn'](_0x25026a,_0x3a0a57);else sqlLogLevel==='info'?(_0x1f94d5=_0x296223[_0x2b50b7(0x229)],logger['info'](_0x25026a,_0x3a0a57)):logger[_0x2b50b7(0x21e)](_0x25026a,_0x3a0a57);_0x296223[_0x2b50b7(0x265)](writeToFileLog,{..._0x25026a,'level':_0x1f94d5,'msg':_0x3a0a57,'time':new Date()['toISOString']()},_0x1f94d5);},logTransaction=(_0x2012db,_0x2be225)=>{const _0x4b79a5=a0_0x34f8c3,_0x2aa2de={'awrbN':function(_0x5338f3,_0xdb2261,_0x2d51b8){return _0x5338f3(_0xdb2261,_0x2d51b8);},'Dzopv':'debug'},_0x18b657={'event':_0x4b79a5(0x21d),'status':_0x2012db,'queryCount':_0x2be225},_0xd2899d=_0x4b79a5(0x1f1)+_0x2012db;logger[_0x4b79a5(0x21e)](_0x18b657,_0xd2899d),_0x2aa2de['awrbN'](writeToFileLog,{..._0x18b657,'level':_0x2aa2de[_0x4b79a5(0x1df)],'msg':_0xd2899d,'time':new Date()[_0x4b79a5(0x26c)]()},_0x4b79a5(0x21e));},redactObject=_0x2a508e=>{const _0x430fea=a0_0x34f8c3,_0x39f9e9={'NomHI':'object','YOgVm':'password','ISIQn':_0x430fea(0x24d),'VhqmK':'authorization','cOBLx':_0x430fea(0x1e5),'QLlhR':_0x430fea(0x1f3),'arFOa':'cvv','OSkbK':_0x430fea(0x25f),'GoEcM':_0x430fea(0x250),'ybCWn':_0x430fea(0x295),'jybYI':_0x430fea(0x219),'TrMKv':'access_token','pUQKj':function(_0x2b7642,_0x55e7ab){return _0x2b7642===_0x55e7ab;},'PglwU':function(_0x430ade,_0xc52271){return _0x430ade(_0xc52271);}};if(!_0x2a508e||typeof _0x2a508e!==_0x39f9e9[_0x430fea(0x290)])return _0x2a508e;const _0x1d86db=[_0x39f9e9['YOgVm'],'passwd',_0x430fea(0x1ff),'token',_0x39f9e9[_0x430fea(0x1e7)],'apikey','api_key',_0x39f9e9['VhqmK'],_0x39f9e9['cOBLx'],_0x39f9e9['QLlhR'],_0x39f9e9['arFOa'],_0x39f9e9['OSkbK'],_0x430fea(0x213),_0x39f9e9['GoEcM'],_0x39f9e9['ybCWn'],_0x39f9e9[_0x430fea(0x20d)],_0x39f9e9['TrMKv']],_0x1cd53c=Array['isArray'](_0x2a508e)?[..._0x2a508e]:{..._0x2a508e};for(const _0x3f72ed of Object[_0x430fea(0x272)](_0x1cd53c)){const _0x272b29=_0x3f72ed['toLowerCase']();if(_0x1d86db['some'](_0x16a08b=>_0x272b29[_0x430fea(0x296)](_0x16a08b)))_0x1cd53c[_0x3f72ed]='[REDACTED]';else _0x39f9e9[_0x430fea(0x261)](typeof _0x1cd53c[_0x3f72ed],_0x430fea(0x1f8))&&_0x1cd53c[_0x3f72ed]!==null&&(_0x1cd53c[_0x3f72ed]=_0x39f9e9[_0x430fea(0x1e3)](redactObject,_0x1cd53c[_0x3f72ed]));}return _0x1cd53c;},logError=(_0x4c1107,_0x5aa6db={},_0x52b346=null)=>{const _0x44a4d9=a0_0x34f8c3,_0x122e1d={'AZDUL':'error','jcSAp':function(_0x2dee59,_0x2d860a,_0x71707d){return _0x2dee59(_0x2d860a,_0x71707d);}},_0x5c6dc2={'event':_0x122e1d[_0x44a4d9(0x21b)],'errorName':_0x4c1107[_0x44a4d9(0x20a)]||'Error','errorMessage':_0x4c1107['message'],'errorCode':_0x4c1107['code']||null,'stack':_0x4c1107[_0x44a4d9(0x1f9)],..._0x5aa6db},_0x80cf30=_0x52b346||'Error:\x20'+_0x4c1107[_0x44a4d9(0x1ef)];logger['error'](_0x5c6dc2,_0x80cf30),_0x122e1d[_0x44a4d9(0x1e6)](writeToFileLog,{..._0x5c6dc2,'level':_0x122e1d[_0x44a4d9(0x21b)],'msg':_0x80cf30,'time':new Date()['toISOString']()},'error');},logFatalError=(_0x4628ed,_0x8fb05a={},_0x68b26e=null)=>{const _0x24d7bb=a0_0x34f8c3,_0x4d9fc9={'event':_0x24d7bb(0x25d),'errorName':_0x4628ed[_0x24d7bb(0x20a)]||'Error','errorMessage':_0x4628ed['message'],'errorCode':_0x4628ed[_0x24d7bb(0x211)]||null,'stack':_0x4628ed[_0x24d7bb(0x1f9)],'severity':'CRITICAL',..._0x8fb05a},_0xfc404a=_0x68b26e||_0x24d7bb(0x27d)+_0x4628ed[_0x24d7bb(0x1ef)];logger['fatal'](_0x4d9fc9,_0xfc404a),writeToFileLog({..._0x4d9fc9,'level':'fatal','msg':_0xfc404a,'time':new Date()[_0x24d7bb(0x26c)]()},'error');},logHttpError=(_0x2f0dd9,_0x1b7fec,_0x407f6e={})=>{const _0x4a7916=a0_0x34f8c3,_0x336842={'Ydkic':_0x4a7916(0x216),'utsmo':'user-agent','LlsKC':function(_0x5ad9d5,_0x262206){return _0x5ad9d5>=_0x262206;},'cSEhH':function(_0x210576,_0x10dd10,_0x4a0cc7){return _0x210576(_0x10dd10,_0x4a0cc7);},'GpBPw':_0x4a7916(0x209),'JVqON':function(_0x226d2e,_0x943a14){return _0x226d2e>=_0x943a14;},'BRcAw':'error'},_0x1a07d1={'event':_0x4a7916(0x1e0),'errorName':_0x2f0dd9[_0x4a7916(0x20a)]||_0x336842['Ydkic'],'errorMessage':_0x2f0dd9[_0x4a7916(0x1ef)],'errorCode':_0x2f0dd9[_0x4a7916(0x211)]||_0x2f0dd9['statusCode']||0x1f4,'stack':_0x2f0dd9['stack'],'method':_0x1b7fec?.[_0x4a7916(0x278)],'url':_0x1b7fec?.['url']||_0x1b7fec?.['originalUrl'],'path':_0x1b7fec?.['path'],'ip':_0x1b7fec?.['ip']||_0x1b7fec?.[_0x4a7916(0x207)]?.['remoteAddress'],'userAgent':_0x1b7fec?.[_0x4a7916(0x20f)]?.(_0x336842[_0x4a7916(0x266)]),'requestId':_0x1b7fec?.['id']||_0x1b7fec?.[_0x4a7916(0x251)]?.[_0x4a7916(0x281)],'body':_0x1b7fec?.[_0x4a7916(0x22b)]?redactObject(_0x1b7fec[_0x4a7916(0x22b)]):undefined,'query':_0x1b7fec?.['query'],..._0x407f6e},_0x364eda=_0x2f0dd9[_0x4a7916(0x25b)]||_0x2f0dd9[_0x4a7916(0x257)]||0x1f4,_0x490a18='HTTP\x20'+_0x364eda+':\x20'+_0x2f0dd9[_0x4a7916(0x1ef)];_0x336842[_0x4a7916(0x220)](_0x364eda,0x1f4)?logger['error'](_0x1a07d1,_0x490a18):logger[_0x4a7916(0x209)](_0x1a07d1,_0x490a18),_0x336842['cSEhH'](writeToFileLog,{..._0x1a07d1,'level':_0x336842['LlsKC'](_0x364eda,0x1f4)?'error':_0x336842['GpBPw'],'msg':_0x490a18,'time':new Date()['toISOString']()},_0x336842['JVqON'](_0x364eda,0x1f4)?_0x336842[_0x4a7916(0x21c)]:_0x336842[_0x4a7916(0x236)]);},logUncaughtError=(_0x3b03e0,_0x1ea006)=>{const _0x39112e=a0_0x34f8c3,_0xe8c59c={'event':_0x3b03e0,'errorName':_0x1ea006?.['name']||'Error','errorMessage':_0x1ea006?.[_0x39112e(0x1ef)]||String(_0x1ea006),'errorCode':_0x1ea006?.['code']||null,'stack':_0x1ea006?.['stack'],'severity':_0x39112e(0x208),'processId':process['pid'],'memoryUsage':process['memoryUsage'](),'uptime':process['uptime']()},_0x4b34d2='['+_0x3b03e0[_0x39112e(0x227)]()+']\x20'+(_0x1ea006?.['message']||_0x1ea006);logger[_0x39112e(0x214)](_0xe8c59c,_0x4b34d2),writeToFileLog({..._0xe8c59c,'level':'fatal','msg':_0x4b34d2,'time':new Date()[_0x39112e(0x26c)]()},_0x39112e(0x217));},setupGlobalErrorHandlers=()=>{const _0x24854b=a0_0x34f8c3,_0x3ce4c4={'leSkF':function(_0x4cd6ff,_0x370dc8,_0x4ada9f){return _0x4cd6ff(_0x370dc8,_0x4ada9f);},'nuOYj':function(_0x1f682d,_0x167edf){return _0x1f682d(_0x167edf);},'jqSGh':'unhandledRejection','dvqre':_0x24854b(0x25c),'SRDRs':'warning','NStiG':_0x24854b(0x22f),'HXrQZ':_0x24854b(0x263)};process['on']('uncaughtException',_0x4ef97a=>{_0x3ce4c4['leSkF'](logUncaughtError,'uncaughtException',_0x4ef97a),setTimeout(()=>{process['exit'](0x1);},0x3e8);}),process['on'](_0x3ce4c4[_0x24854b(0x25e)],(_0x188272,_0xcc39d7)=>{const _0x50bd41=_0x24854b,_0xf2b378=_0x188272 instanceof Error?_0x188272:new Error(_0x3ce4c4[_0x50bd41(0x212)](String,_0x188272));_0x3ce4c4['leSkF'](logUncaughtError,_0x3ce4c4['jqSGh'],_0xf2b378);}),process['on'](_0x3ce4c4[_0x24854b(0x24c)],_0x1f8171=>{const _0x3347d8=_0x24854b;logger[_0x3347d8(0x209)]({'event':_0x3ce4c4['dvqre'],'name':_0x1f8171[_0x3347d8(0x20a)],'message':_0x1f8171['message'],'stack':_0x1f8171[_0x3347d8(0x1f9)]},'Process\x20Warning:\x20'+_0x1f8171[_0x3347d8(0x1ef)]);});const _0x3dbc97={'event':_0x24854b(0x200)},_0x1efc66=_0x3ce4c4['NStiG'];logger['info'](_0x3dbc97,_0x1efc66),writeToFileLog({..._0x3dbc97,'level':_0x3ce4c4['HXrQZ'],'msg':_0x1efc66,'time':new Date()['toISOString']()},_0x3ce4c4['HXrQZ']);},createErrorHandlerMiddleware=()=>{const _0x2f5039=a0_0x34f8c3,_0x112784={'pPMUB':function(_0x32fd69,_0x738a74){return _0x32fd69>=_0x738a74;},'uhoGV':_0x2f5039(0x202)};return(_0xfdc738,_0x2ca59b,_0x142faf,_0x1c00dd)=>{const _0x1e6c74=_0x2f5039;logHttpError(_0xfdc738,_0x2ca59b);const _0x31a11b=_0xfdc738['statusCode']||_0xfdc738['status']||0x1f4;_0x142faf[_0x1e6c74(0x257)](_0x31a11b)['json']({'success':![],'error':_0x112784[_0x1e6c74(0x1f4)](_0x31a11b,0x1f4)?_0x112784['uhoGV']:_0xfdc738['message'],'requestId':_0x2ca59b['id']||_0x2ca59b[_0x1e6c74(0x251)]?.[_0x1e6c74(0x281)]||null});};};module[a0_0x34f8c3(0x249)]={'logger':logger,'createRequestLogger':createRequestLogger,'logServerStart':logServerStart,'logServerReady':logServerReady,'logProjectLoaded':logProjectLoaded,'logEndpointRegistered':logEndpointRegistered,'logDatabaseConfig':logDatabaseConfig,'logRequest':logRequest,'logQuery':logQuery,'logTransaction':logTransaction,'startQueryTimer':startQueryTimer,'parseQueryMetadata':parseQueryMetadata,'redactSensitiveParams':redactSensitiveParams,'initFileLogging':initFileLogging,'logError':logError,'logFatalError':logFatalError,'logHttpError':logHttpError,'logUncaughtError':logUncaughtError,'setupGlobalErrorHandlers':setupGlobalErrorHandlers,'createErrorHandlerMiddleware':createErrorHandlerMiddleware,'redactObject':redactObject,'SQL_LOG_CONFIG':{'enabled':sqlLogEnabled,'level':sqlLogLevel,'logParams':sqlLogParams,'slowThreshold':sqlLogSlowThreshold},'FILE_LOG_CONFIG':{'enabled':logToFile,'directory':logDir,'serviceName':serviceName}};
@@ -1 +1 @@
1
- const a0_0x4260d0=a0_0x101e;(function(_0x3b4c8f,_0x6cd6fa){const _0x333541=a0_0x101e,_0x197d2e=_0x3b4c8f();while(!![]){try{const _0x4fa131=parseInt(_0x333541(0xf9))/0x1*(-parseInt(_0x333541(0xfe))/0x2)+-parseInt(_0x333541(0x104))/0x3*(parseInt(_0x333541(0x118))/0x4)+-parseInt(_0x333541(0x113))/0x5*(parseInt(_0x333541(0x101))/0x6)+-parseInt(_0x333541(0xf3))/0x7*(-parseInt(_0x333541(0x106))/0x8)+-parseInt(_0x333541(0x112))/0x9*(-parseInt(_0x333541(0x111))/0xa)+parseInt(_0x333541(0x115))/0xb+parseInt(_0x333541(0x11a))/0xc;if(_0x4fa131===_0x6cd6fa)break;else _0x197d2e['push'](_0x197d2e['shift']());}catch(_0x3e5d1d){_0x197d2e['push'](_0x197d2e['shift']());}}}(a0_0x5e31,0x5c9ae));function a0_0x101e(_0xd86046,_0x12d4f9){_0xd86046=_0xd86046-0xf3;const _0x5e3138=a0_0x5e31();let _0x101e88=_0x5e3138[_0xd86046];if(a0_0x101e['EzmVvZ']===undefined){var _0x59da96=function(_0x1b11d6){const _0x37746e='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x300ba2='',_0x177629='';for(let _0x436202=0x0,_0x315071,_0x1653b8,_0x4b9966=0x0;_0x1653b8=_0x1b11d6['charAt'](_0x4b9966++);~_0x1653b8&&(_0x315071=_0x436202%0x4?_0x315071*0x40+_0x1653b8:_0x1653b8,_0x436202++%0x4)?_0x300ba2+=String['fromCharCode'](0xff&_0x315071>>(-0x2*_0x436202&0x6)):0x0){_0x1653b8=_0x37746e['indexOf'](_0x1653b8);}for(let _0x3403fd=0x0,_0x4be3ce=_0x300ba2['length'];_0x3403fd<_0x4be3ce;_0x3403fd++){_0x177629+='%'+('00'+_0x300ba2['charCodeAt'](_0x3403fd)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x177629);};a0_0x101e['FoiciX']=_0x59da96,a0_0x101e['tcpJlp']={},a0_0x101e['EzmVvZ']=!![];}const _0x4f1c28=_0x5e3138[0x0],_0x2d0039=_0xd86046+_0x4f1c28,_0x1f73d3=a0_0x101e['tcpJlp'][_0x2d0039];return!_0x1f73d3?(_0x101e88=a0_0x101e['FoiciX'](_0x101e88),a0_0x101e['tcpJlp'][_0x2d0039]=_0x101e88):_0x101e88=_0x1f73d3,_0x101e88;}const dbType=(process['env']['DB_TYPE']||a0_0x4260d0(0x103))[a0_0x4260d0(0x11f)]();function a0_0x5e31(){const _0x3903d1=['mtKZodqYmhrruu1xvW','y2XLyxjdywnOzq','DhjPBq','mti0DeTZs2P6','r1zMCKO','mtq5mZaXnM5eBgPnyG','ihzHBhvLkhmPig5VDcbMB3vUzcbPBIa','Dg9vChbLCKnHC2u','iIbUB3qGzM91BMqGAw4G','z2v0','Dg9mB3DLCKnHC2u','lI9KyG','CMvZB2X2zuXVB2T1CfzHBhvL','Bg9VA3vWx3rHyMXLx2XVywrLza','nJG2yK5qr2fR','Cw1TueS','ywrK','BgvUz3rO','z2v0rgLZDgLUy3rwywX1zxm','vMfSDwuGiG','mtvoswHVwfe','zM9YrwfJAa','Bg9HzeXVB2T1CfrHyMXL','Bg9VA3vWq2fJAgu','iezst00G','mtiYnZHeyMD4zeG','zgvIDwC','y2XLyxi','ntKYoe9tyLHNDG','lI9KyI1VCMfJBgu','Cg9ZDgDYzxnXBa','nJy4mZD3tLbtsvu','CMPgs3u','mJKXnZzmr3Dywfe','tg9VA3vWignHy2HLignSzwfYzwq','AgfZ','B2zyr04','ChvZAa','uLfQz0S','rurlvMm','A2v5CW','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','zxHLy3v0zvf1zxj5','zw50CMLLCW','ntGWAw9Hrg5U','odqXodzfuwzbseS','mtK1wxjsv091','whHIv0m'];a0_0x5e31=function(){return _0x3903d1;};return a0_0x5e31();}let executeQuery;if(dbType==='oracle'){const oracleDb=require(a0_0x4260d0(0x102));executeQuery=(_0x2a3feb,_0x1fb8dd)=>oracleDb[a0_0x4260d0(0x10f)](_0x2a3feb,_0x1fb8dd);}else{if(dbType==='mysql'){const mysqlDb=require('./db-mysql');executeQuery=(_0x4ebb21,_0x4e441d)=>mysqlDb['executeQuery'](_0x4ebb21,_0x4e441d);}else executeQuery=require(a0_0x4260d0(0x120))['executeQuery'];}const {logger}=require('./logger');class LookupResolver{constructor(){this['lookupCache']=new Map();}[a0_0x4260d0(0x116)](){const _0x58ad5a=a0_0x4260d0;this[_0x58ad5a(0xfc)][_0x58ad5a(0x100)](),logger[_0x58ad5a(0xff)]({'event':'lookup_cache_cleared'},_0x58ad5a(0x107));}async[a0_0x4260d0(0xfb)](_0x3012df,_0x2f415a,_0x2c3947){const _0x47760f=a0_0x4260d0,_0x3aefc9={'CkApx':function(_0x556982,_0x9990e6){return _0x556982!==_0x9990e6;},'mdMdy':function(_0x5af9e4,_0x41645c){return _0x5af9e4(_0x41645c);},'OBIki':_0x47760f(0x122)},_0x26f3dc=_0x3012df+':'+_0x2f415a+':'+_0x2c3947;if(this[_0x47760f(0xfc)]['has'](_0x26f3dc))return this['lookupCache']['get'](_0x26f3dc);try{const _0x29830d='SELECT\x20'+_0x2c3947+',\x20'+_0x2f415a+_0x47760f(0xfd)+_0x3012df,_0x47cb0f=await _0x3aefc9['mdMdy'](executeQuery,_0x29830d),_0x381b36=new Map();return _0x47cb0f['forEach'](_0x197c8b=>{const _0x19db99=_0x47760f,_0x58406a=_0x197c8b[_0x2f415a]!==undefined?_0x197c8b[_0x2f415a]:_0x197c8b[_0x2f415a[_0x19db99(0x11c)]()],_0x59886d=_0x197c8b[_0x2c3947]!==undefined?_0x197c8b[_0x2c3947]:_0x197c8b[_0x2c3947['toUpperCase']()];_0x58406a!==null&&_0x3aefc9['CkApx'](_0x58406a,undefined)&&(_0x381b36['set'](String(_0x58406a)['toLowerCase']()['trim'](),_0x59886d),_0x381b36['set'](String(_0x58406a)['trim'](),_0x59886d));}),this['lookupCache']['set'](_0x26f3dc,_0x381b36),logger['info']({'event':_0x3aefc9['OBIki'],'table':_0x3012df,'column':_0x2f415a,'count':_0x47cb0f['length']},'Lookup\x20table\x20loaded:\x20'+_0x3012df),_0x381b36;}catch(_0x4de24){logger['error']({'event':'lookup_table_load_error','table':_0x3012df,'error':_0x4de24['message']},'Failed\x20to\x20load\x20lookup\x20table:\x20'+_0x3012df);throw _0x4de24;}}['resolveLookupValue'](_0x4ff026,_0x1272b3){const _0x14b0cc=a0_0x4260d0,_0x57623a={'XxbWC':function(_0xaaba,_0x3b699d){return _0xaaba===_0x3b699d;},'qmmPK':function(_0xe2267d,_0x33844a){return _0xe2267d(_0x33844a);}};if(_0x4ff026===null||_0x57623a[_0x14b0cc(0x114)](_0x4ff026,undefined)||_0x4ff026==='')return null;const _0xdbca5=_0x57623a[_0x14b0cc(0xf4)](String,_0x4ff026)[_0x14b0cc(0x117)]();if(_0x1272b3['has'](_0xdbca5))return _0x1272b3['get'](_0xdbca5);const _0x326493=_0xdbca5['toLowerCase']();if(_0x1272b3[_0x14b0cc(0x108)](_0x326493))return _0x1272b3['get'](_0x326493);return null;}async['processLookupFields'](_0x10d1ab,_0x10ccaf){const _0x52ea94=a0_0x4260d0,_0x1476a0={'ofXGN':function(_0x2aae5b,_0x42aa0b){return _0x2aae5b===_0x42aa0b;},'cTeVI':function(_0x205164,_0x36b5c7){return _0x205164!==_0x36b5c7;},'LqsNv':'lookup_fields_processed'};if(!_0x10ccaf||Object[_0x52ea94(0x10d)](_0x10ccaf)[_0x52ea94(0xf6)]===0x0)return{'processedRows':_0x10d1ab,'errors':[]};const _0x4223e6=[],_0x24c8f6=new Map();for(const [_0x5abfd8,_0x295a35]of Object[_0x52ea94(0x110)](_0x10ccaf)){const {lookupTable:_0x1a7040,lookupColumn:_0x264410,lookupIdColumn:_0x592bae}=_0x295a35,_0x3241e7=_0x1a7040+':'+_0x264410+':'+_0x592bae;if(!_0x24c8f6['has'](_0x3241e7)){const _0x31cb6a=await this[_0x52ea94(0xfb)](_0x1a7040,_0x264410,_0x592bae);_0x24c8f6['set'](_0x3241e7,_0x31cb6a);}}const _0x5d3ca0=_0x10d1ab['map']((_0x2c9113,_0x29bade)=>{const _0x29644=_0x52ea94,_0x1e653b={..._0x2c9113};for(const [_0x1fdbe5,_0x1da2c6]of Object[_0x29644(0x110)](_0x10ccaf)){const {lookupTable:_0x5c6c0f,lookupColumn:_0x2f7e1e,lookupIdColumn:_0x21ce67,targetField:_0x1891ad,required:_0x5e061e}=_0x1da2c6,_0x5489fc=_0x5c6c0f+':'+_0x2f7e1e+':'+_0x21ce67,_0xd50a48=_0x24c8f6[_0x29644(0x11e)](_0x5489fc),_0x155533=_0x2c9113[_0x1fdbe5];if((_0x1476a0[_0x29644(0x109)](_0x155533,null)||_0x155533===undefined||_0x155533==='')&&!_0x5e061e){_0x1e653b[_0x1891ad]=null;continue;}const _0x5f0a75=this[_0x29644(0x121)](_0x155533,_0xd50a48);_0x1476a0['cTeVI'](_0x5f0a75,null)?_0x1e653b[_0x1891ad]=_0x5f0a75:(_0x5e061e&&_0x4223e6[_0x29644(0x10a)]({'rowIndex':_0x29bade,'field':_0x1fdbe5,'value':_0x155533,'targetField':_0x1891ad,'lookupTable':_0x5c6c0f,'message':_0x29644(0xf8)+_0x155533+_0x29644(0x11d)+_0x5c6c0f}),_0x1e653b[_0x1891ad]=null);}return _0x1e653b;});return logger['info']({'event':_0x1476a0['LqsNv'],'totalRows':_0x10d1ab['length'],'errorCount':_0x4223e6['length'],'lookupFieldCount':Object['keys'](_0x10ccaf)['length']},_0x52ea94(0x10e)),{'processedRows':_0x5d3ca0,'errors':_0x4223e6};}[a0_0x4260d0(0xf7)](_0x5f1756,_0x5c53f3){const _0x5f48f7=a0_0x4260d0,_0x2bdc3b={'RQjgK':function(_0x5823fa,_0x5b6be4){return _0x5823fa!==_0x5b6be4;},'rjFKu':function(_0x866633,_0x3535b2){return _0x866633!==_0x3535b2;},'GVfrJ':function(_0x3d29d4,_0x3c1cff){return _0x3d29d4(_0x3c1cff);}},_0x1bca9e=new Set();return _0x5f1756[_0x5f48f7(0xfa)](_0x5c8fd4=>{const _0x57a466=_0x5f48f7,_0x32a9cb=_0x5c8fd4[_0x5c53f3];_0x2bdc3b[_0x57a466(0x10b)](_0x32a9cb,null)&&_0x2bdc3b[_0x57a466(0x105)](_0x32a9cb,undefined)&&_0x32a9cb!==''&&_0x1bca9e[_0x57a466(0xf5)](_0x2bdc3b[_0x57a466(0x119)](String,_0x32a9cb)[_0x57a466(0x117)]());}),Array['from'](_0x1bca9e);}async['validateLookupValues'](_0x5ab751,_0x500083){const _0x1136fa=a0_0x4260d0,_0x45291a={'ySSNy':function(_0x322c18,_0x5bc969){return _0x322c18!==_0x5bc969;},'EDKVc':function(_0x317535,_0x3666a2){return _0x317535===_0x3666a2;},'AzyYC':function(_0x3093b4,_0x5549cb){return _0x3093b4>_0x5549cb;}};if(!_0x500083||Object['keys'](_0x500083)['length']===0x0)return{'valid':!![],'errors':[],'suggestions':{}};const _0x20b9c2=[],_0x49de33={};for(const [_0x570550,_0x1b7779]of Object['entries'](_0x500083)){const {lookupTable:_0x2e6bb3,lookupColumn:_0x229e42,lookupIdColumn:_0x538bb8,required:_0x4b483d}=_0x1b7779,_0x6a4a48=this[_0x1136fa(0xf7)](_0x5ab751,_0x570550),_0x4365ee=await this[_0x1136fa(0xfb)](_0x2e6bb3,_0x229e42,_0x538bb8),_0x1ee683=[],_0xc300c6=[];_0x6a4a48['forEach'](_0x42777e=>{const _0x184c0d=_0x1136fa,_0x17ba5c=this[_0x184c0d(0x121)](_0x42777e,_0x4365ee);_0x45291a['ySSNy'](_0x17ba5c,null)?_0xc300c6['push'](_0x42777e):_0x1ee683[_0x184c0d(0x10a)](_0x42777e);});if(_0x45291a['AzyYC'](_0x1ee683['length'],0x0)&&_0x4b483d){_0x20b9c2['push']({'field':_0x570550,'lookupTable':_0x2e6bb3,'invalidValues':_0x1ee683,'message':_0x1ee683[_0x1136fa(0xf6)]+_0x1136fa(0x11b)+_0x2e6bb3});const _0x255fd5=[];_0x4365ee[_0x1136fa(0xfa)]((_0x288d70,_0x5e68f8)=>{const _0x20479a=_0x1136fa;if(_0x45291a[_0x20479a(0x10c)](_0x5e68f8,_0x5e68f8['toLowerCase']()))return;_0x255fd5['push'](_0x5e68f8);}),_0x49de33[_0x570550]={'invalidValues':_0x1ee683,'availableValues':_0x255fd5['slice'](0x0,0x32)};}}return{'valid':_0x45291a['EDKVc'](_0x20b9c2[_0x1136fa(0xf6)],0x0),'errors':_0x20b9c2,'suggestions':_0x49de33};}}module['exports']=new LookupResolver();
1
+ const a0_0x3f5f56=a0_0x2639;function a0_0x2639(_0x1a545e,_0x48f212){_0x1a545e=_0x1a545e-0x107;const _0x286664=a0_0x2866();let _0x263918=_0x286664[_0x1a545e];if(a0_0x2639['tKoKbm']===undefined){var _0x13ce40=function(_0x3e8a4f){const _0xb919d9='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2f8c9f='',_0x2b9c89='';for(let _0x5df0db=0x0,_0x3f1b21,_0x3d8d5e,_0x306a91=0x0;_0x3d8d5e=_0x3e8a4f['charAt'](_0x306a91++);~_0x3d8d5e&&(_0x3f1b21=_0x5df0db%0x4?_0x3f1b21*0x40+_0x3d8d5e:_0x3d8d5e,_0x5df0db++%0x4)?_0x2f8c9f+=String['fromCharCode'](0xff&_0x3f1b21>>(-0x2*_0x5df0db&0x6)):0x0){_0x3d8d5e=_0xb919d9['indexOf'](_0x3d8d5e);}for(let _0x1492d0=0x0,_0x284ccc=_0x2f8c9f['length'];_0x1492d0<_0x284ccc;_0x1492d0++){_0x2b9c89+='%'+('00'+_0x2f8c9f['charCodeAt'](_0x1492d0)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2b9c89);};a0_0x2639['cGQxeT']=_0x13ce40,a0_0x2639['dinglG']={},a0_0x2639['tKoKbm']=!![];}const _0x5c8c81=_0x286664[0x0],_0x1d8061=_0x1a545e+_0x5c8c81,_0x57a777=a0_0x2639['dinglG'][_0x1d8061];return!_0x57a777?(_0x263918=a0_0x2639['cGQxeT'](_0x263918),a0_0x2639['dinglG'][_0x1d8061]=_0x263918):_0x263918=_0x57a777,_0x263918;}(function(_0x2d755e,_0x2d321d){const _0x5efce4=a0_0x2639,_0x22a3f6=_0x2d755e();while(!![]){try{const _0x57ed7f=parseInt(_0x5efce4(0x109))/0x1+-parseInt(_0x5efce4(0x133))/0x2+-parseInt(_0x5efce4(0x117))/0x3+-parseInt(_0x5efce4(0x110))/0x4*(-parseInt(_0x5efce4(0x118))/0x5)+parseInt(_0x5efce4(0x123))/0x6+parseInt(_0x5efce4(0x119))/0x7+-parseInt(_0x5efce4(0x12d))/0x8*(parseInt(_0x5efce4(0x131))/0x9);if(_0x57ed7f===_0x2d321d)break;else _0x22a3f6['push'](_0x22a3f6['shift']());}catch(_0x35210f){_0x22a3f6['push'](_0x22a3f6['shift']());}}}(a0_0x2866,0xc0bbc));const dbType=(process['env']['DB_TYPE']||a0_0x3f5f56(0x10c))['toLowerCase']();let executeQuery;if(dbType===a0_0x3f5f56(0x138)){const oracleDb=require('./db-oracle');executeQuery=(_0xbda1ff,_0x5537b7)=>oracleDb[a0_0x3f5f56(0x107)](_0xbda1ff,_0x5537b7);}else{if(dbType===a0_0x3f5f56(0x12f)){const mysqlDb=require(a0_0x3f5f56(0x11a));executeQuery=(_0x14e88c,_0x23a267)=>mysqlDb[a0_0x3f5f56(0x107)](_0x14e88c,_0x23a267);}else executeQuery=require('./db')['executeQuery'];}const {logger}=require('./logger');class LookupResolver{constructor(){const _0x54f0d0=a0_0x3f5f56;this[_0x54f0d0(0x124)]=new Map();}[a0_0x3f5f56(0x10a)](){const _0x4f42c0=a0_0x3f5f56,_0x175b9f={'FUCeT':'lookup_cache_cleared','pnEzz':'Lookup\x20cache\x20cleared'};this[_0x4f42c0(0x124)]['clear'](),logger['debug']({'event':_0x175b9f[_0x4f42c0(0x12a)]},_0x175b9f[_0x4f42c0(0x112)]);}async[a0_0x3f5f56(0x11f)](_0x4c369a,_0x398f6a,_0x413f32){const _0x514bb5=a0_0x3f5f56,_0x21f6c0={'bSfkr':function(_0x27ee3d,_0x1034d9){return _0x27ee3d!==_0x1034d9;},'PRHpj':function(_0x3e405c,_0x55bf40){return _0x3e405c(_0x55bf40);},'WLYdG':function(_0x2e07b9,_0x1a2362){return _0x2e07b9(_0x1a2362);},'baxxM':_0x514bb5(0x129)},_0x4680bf=_0x4c369a+':'+_0x398f6a+':'+_0x413f32;if(this['lookupCache'][_0x514bb5(0x116)](_0x4680bf))return this[_0x514bb5(0x124)][_0x514bb5(0x11e)](_0x4680bf);try{const _0x512881=_0x514bb5(0x11b)+_0x413f32+',\x20'+_0x398f6a+'\x20FROM\x20'+_0x4c369a,_0x508f25=await _0x21f6c0[_0x514bb5(0x113)](executeQuery,_0x512881),_0x53f8a7=new Map();return _0x508f25['forEach'](_0x1b7378=>{const _0x5ebaad=_0x514bb5,_0x17c164=_0x1b7378[_0x398f6a]!==undefined?_0x1b7378[_0x398f6a]:_0x1b7378[_0x398f6a[_0x5ebaad(0x125)]()],_0x36c916=_0x1b7378[_0x413f32]!==undefined?_0x1b7378[_0x413f32]:_0x1b7378[_0x413f32['toUpperCase']()];_0x17c164!==null&&_0x21f6c0['bSfkr'](_0x17c164,undefined)&&(_0x53f8a7[_0x5ebaad(0x136)](_0x21f6c0[_0x5ebaad(0x111)](String,_0x17c164)[_0x5ebaad(0x10d)]()['trim'](),_0x36c916),_0x53f8a7[_0x5ebaad(0x136)](_0x21f6c0['PRHpj'](String,_0x17c164)[_0x5ebaad(0x114)](),_0x36c916));}),this['lookupCache']['set'](_0x4680bf,_0x53f8a7),logger['info']({'event':_0x21f6c0[_0x514bb5(0x130)],'table':_0x4c369a,'column':_0x398f6a,'count':_0x508f25[_0x514bb5(0x10f)]},'Lookup\x20table\x20loaded:\x20'+_0x4c369a),_0x53f8a7;}catch(_0x13732b){logger['error']({'event':'lookup_table_load_error','table':_0x4c369a,'error':_0x13732b[_0x514bb5(0x115)]},_0x514bb5(0x10e)+_0x4c369a);throw _0x13732b;}}['resolveLookupValue'](_0x10e780,_0x5b3106){const _0x2f7ea9=a0_0x3f5f56,_0x39f892={'Tokxp':function(_0x4d6b25,_0x2b5329){return _0x4d6b25===_0x2b5329;},'optqJ':function(_0x295164,_0x502773){return _0x295164(_0x502773);}};if(_0x39f892[_0x2f7ea9(0x121)](_0x10e780,null)||_0x10e780===undefined||_0x10e780==='')return null;const _0x164da2=_0x39f892['optqJ'](String,_0x10e780)['trim']();if(_0x5b3106['has'](_0x164da2))return _0x5b3106[_0x2f7ea9(0x11e)](_0x164da2);const _0x39d0af=_0x164da2[_0x2f7ea9(0x10d)]();if(_0x5b3106['has'](_0x39d0af))return _0x5b3106['get'](_0x39d0af);return null;}async[a0_0x3f5f56(0x12c)](_0x4d7f34,_0x5b1bf4){const _0x24b736=a0_0x3f5f56,_0x48183d={'uQPpH':function(_0x5c2654,_0x23b870){return _0x5c2654===_0x23b870;},'HHZBc':function(_0x5907d5,_0x34f64d){return _0x5907d5!==_0x34f64d;}};if(!_0x5b1bf4||Object[_0x24b736(0x135)](_0x5b1bf4)[_0x24b736(0x10f)]===0x0)return{'processedRows':_0x4d7f34,'errors':[]};const _0xc17f00=[],_0x34da5a=new Map();for(const [_0x177105,_0x242bc9]of Object[_0x24b736(0x132)](_0x5b1bf4)){const {lookupTable:_0x201b3c,lookupColumn:_0x3a3336,lookupIdColumn:_0x446a72}=_0x242bc9,_0x156499=_0x201b3c+':'+_0x3a3336+':'+_0x446a72;if(!_0x34da5a[_0x24b736(0x116)](_0x156499)){const _0x405f93=await this[_0x24b736(0x11f)](_0x201b3c,_0x3a3336,_0x446a72);_0x34da5a['set'](_0x156499,_0x405f93);}}const _0xeb02d5=_0x4d7f34[_0x24b736(0x134)]((_0x2111f9,_0x48512d)=>{const _0x5c2c32=_0x24b736,_0x1c58fc={..._0x2111f9};for(const [_0x55feca,_0xe7e0d8]of Object[_0x5c2c32(0x132)](_0x5b1bf4)){const {lookupTable:_0x3c0455,lookupColumn:_0x29ea35,lookupIdColumn:_0x1c6572,targetField:_0x5469c1,required:_0x3c6381}=_0xe7e0d8,_0x3522c6=_0x3c0455+':'+_0x29ea35+':'+_0x1c6572,_0x19eaee=_0x34da5a[_0x5c2c32(0x11e)](_0x3522c6),_0x375560=_0x2111f9[_0x55feca];if((_0x48183d[_0x5c2c32(0x10b)](_0x375560,null)||_0x375560===undefined||_0x375560==='')&&!_0x3c6381){_0x1c58fc[_0x5469c1]=null;continue;}const _0x3d20c0=this[_0x5c2c32(0x12e)](_0x375560,_0x19eaee);_0x48183d['HHZBc'](_0x3d20c0,null)?_0x1c58fc[_0x5469c1]=_0x3d20c0:(_0x3c6381&&_0xc17f00[_0x5c2c32(0x126)]({'rowIndex':_0x48512d,'field':_0x55feca,'value':_0x375560,'targetField':_0x5469c1,'lookupTable':_0x3c0455,'message':'Value\x20\x22'+_0x375560+'\x22\x20not\x20found\x20in\x20'+_0x3c0455}),_0x1c58fc[_0x5469c1]=null);}return _0x1c58fc;});return logger[_0x24b736(0x122)]({'event':'lookup_fields_processed','totalRows':_0x4d7f34[_0x24b736(0x10f)],'errorCount':_0xc17f00['length'],'lookupFieldCount':Object['keys'](_0x5b1bf4)[_0x24b736(0x10f)]},_0x24b736(0x11d)),{'processedRows':_0xeb02d5,'errors':_0xc17f00};}[a0_0x3f5f56(0x128)](_0x818310,_0x1adae5){const _0x39eacb=a0_0x3f5f56,_0x595dd3={'EpgxA':function(_0x498997,_0x346b7d){return _0x498997!==_0x346b7d;},'oPmsm':function(_0x5dd35c,_0xb22c0d){return _0x5dd35c!==_0xb22c0d;}},_0x3a36ae=new Set();return _0x818310[_0x39eacb(0x12b)](_0x3a610=>{const _0x4ba739=_0x39eacb,_0x5d939e=_0x3a610[_0x1adae5];_0x595dd3['EpgxA'](_0x5d939e,null)&&_0x595dd3['oPmsm'](_0x5d939e,undefined)&&_0x595dd3[_0x4ba739(0x137)](_0x5d939e,'')&&_0x3a36ae[_0x4ba739(0x108)](String(_0x5d939e)[_0x4ba739(0x114)]());}),Array[_0x39eacb(0x120)](_0x3a36ae);}async[a0_0x3f5f56(0x11c)](_0x4b3786,_0x10a8dc){const _0x28f5f7=a0_0x3f5f56,_0x5ed125={'xngac':function(_0x30cbf1,_0x5cedf0){return _0x30cbf1===_0x5cedf0;},'hHmQZ':function(_0x143708,_0x4f2bda){return _0x143708>_0x4f2bda;}};if(!_0x10a8dc||_0x5ed125['xngac'](Object['keys'](_0x10a8dc)[_0x28f5f7(0x10f)],0x0))return{'valid':!![],'errors':[],'suggestions':{}};const _0x3b516f=[],_0x5db465={};for(const [_0x38bfeb,_0x46e709]of Object[_0x28f5f7(0x132)](_0x10a8dc)){const {lookupTable:_0x1e9e7f,lookupColumn:_0x415ea1,lookupIdColumn:_0x3623da,required:_0xfce604}=_0x46e709,_0x286ba1=this[_0x28f5f7(0x128)](_0x4b3786,_0x38bfeb),_0x3ff6f1=await this[_0x28f5f7(0x11f)](_0x1e9e7f,_0x415ea1,_0x3623da),_0x43df80=[],_0x3f3dc0=[];_0x286ba1[_0x28f5f7(0x12b)](_0x55f694=>{const _0x4f4bab=this['resolveLookupValue'](_0x55f694,_0x3ff6f1);_0x4f4bab!==null?_0x3f3dc0['push'](_0x55f694):_0x43df80['push'](_0x55f694);});if(_0x5ed125[_0x28f5f7(0x127)](_0x43df80['length'],0x0)&&_0xfce604){_0x3b516f['push']({'field':_0x38bfeb,'lookupTable':_0x1e9e7f,'invalidValues':_0x43df80,'message':_0x43df80[_0x28f5f7(0x10f)]+'\x20value(s)\x20not\x20found\x20in\x20'+_0x1e9e7f});const _0x4f6a5a=[];_0x3ff6f1[_0x28f5f7(0x12b)]((_0x3f738,_0x412307)=>{const _0x468e09=_0x28f5f7;if(_0x412307===_0x412307['toLowerCase']())return;_0x4f6a5a[_0x468e09(0x126)](_0x412307);}),_0x5db465[_0x38bfeb]={'invalidValues':_0x43df80,'availableValues':_0x4f6a5a['slice'](0x0,0x32)};}}return{'valid':_0x3b516f[_0x28f5f7(0x10f)]===0x0,'errors':_0x3b516f,'suggestions':_0x5db465};}}function a0_0x2866(){const _0x39b19c=['ChjVy2vZC0XVB2T1CezPzwXKCW','mte2ogTyEfnzEG','CMvZB2X2zuXVB2T1CfzHBhvL','BxLZCwW','yMf4Ee0','mtC3nJi0u29uvfPQ','zw50CMLLCW','mti1ntm4mg5UtxvhBa','BwfW','A2v5CW','C2v0','rxbNEee','B3jHy2XL','zxHLy3v0zvf1zxj5','ywrK','mtiWnJu0mvjfz3jZtq','y2XLyxjdywnOzq','DvfqCeG','Cg9ZDgDYzxnXBa','Dg9mB3DLCKnHC2u','rMfPBgvKihrVigXVywqGBg9VA3vWihrHyMXLoIa','BgvUz3rO','oti0ndC2veTXBwPJ','ufjiCgO','Cg5fENO','v0XzzeC','DhjPBq','BwvZC2fNzq','AgfZ','nJm2nJuXqM96zNDL','mJbZDwDYu3q','odC2nZu2m1j2weLPBG','lI9KyI1TExnXBa','u0vmrunuia','DMfSAwrHDgvmB29RDxbwywX1zxm','tg9VA3vWigzPzwXKCYbWCM9JzxnZzwq','z2v0','Bg9HzeXVB2T1CfrHyMXL','zNjVBq','vg9REha','Aw5MBW','nJC2mZyZoePZq0LNta','Bg9VA3vWq2fJAgu','Dg9vChbLCKnHC2u','ChvZAa','AeHTuvO','z2v0rgLZDgLUy3rwywX1zxm','Bg9VA3vWx3rHyMXLx2XVywrLza','rLvdzvq','zM9YrwfJAa'];a0_0x2866=function(){return _0x39b19c;};return a0_0x2866();}module['exports']=new LookupResolver();
@@ -1 +1 @@
1
- const a0_0x1d27ec=a0_0x4216;(function(_0x96014b,_0xe76ba9){const _0x1eb0eb=a0_0x4216,_0x57d153=_0x96014b();while(!![]){try{const _0x46d855=parseInt(_0x1eb0eb(0xa4))/0x1*(-parseInt(_0x1eb0eb(0xba))/0x2)+-parseInt(_0x1eb0eb(0xa2))/0x3+parseInt(_0x1eb0eb(0xc2))/0x4+-parseInt(_0x1eb0eb(0xbd))/0x5+-parseInt(_0x1eb0eb(0xb9))/0x6+-parseInt(_0x1eb0eb(0xa8))/0x7*(parseInt(_0x1eb0eb(0xaa))/0x8)+-parseInt(_0x1eb0eb(0xb7))/0x9*(-parseInt(_0x1eb0eb(0xc1))/0xa);if(_0x46d855===_0xe76ba9)break;else _0x57d153['push'](_0x57d153['shift']());}catch(_0x2c52f4){_0x57d153['push'](_0x57d153['shift']());}}}(a0_0x4d69,0x44e4e));function a0_0x4216(_0x2c2f82,_0x3c34be){_0x2c2f82=_0x2c2f82-0x9f;const _0x4d692e=a0_0x4d69();let _0x42169e=_0x4d692e[_0x2c2f82];if(a0_0x4216['Ymeccl']===undefined){var _0x462669=function(_0x1f1259){const _0x3a0005='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x3023cf='',_0x303780='';for(let _0x2e6814=0x0,_0xb5e5eb,_0x31e4a5,_0x4fef43=0x0;_0x31e4a5=_0x1f1259['charAt'](_0x4fef43++);~_0x31e4a5&&(_0xb5e5eb=_0x2e6814%0x4?_0xb5e5eb*0x40+_0x31e4a5:_0x31e4a5,_0x2e6814++%0x4)?_0x3023cf+=String['fromCharCode'](0xff&_0xb5e5eb>>(-0x2*_0x2e6814&0x6)):0x0){_0x31e4a5=_0x3a0005['indexOf'](_0x31e4a5);}for(let _0x20a88e=0x0,_0x5c0641=_0x3023cf['length'];_0x20a88e<_0x5c0641;_0x20a88e++){_0x303780+='%'+('00'+_0x3023cf['charCodeAt'](_0x20a88e)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x303780);};a0_0x4216['lHEewM']=_0x462669,a0_0x4216['BAiPug']={},a0_0x4216['Ymeccl']=!![];}const _0x248df8=_0x4d692e[0x0],_0xe13bb=_0x2c2f82+_0x248df8,_0x3017a8=a0_0x4216['BAiPug'][_0xe13bb];return!_0x3017a8?(_0x42169e=a0_0x4216['lHEewM'](_0x42169e),a0_0x4216['BAiPug'][_0xe13bb]=_0x42169e):_0x42169e=_0x3017a8,_0x42169e;}const fs=require('fs')['promises'],path=require(a0_0x1d27ec(0xb2)),{logger}=require(a0_0x1d27ec(0xb1));class PayloadLoader{constructor(){const _0x147c55=a0_0x1d27ec,_0x4288a1={'LHxpr':'../../payload'};this[_0x147c55(0xa6)]=path['join'](__dirname,_0x4288a1['LHxpr']),this['cache']=new Map();}async['loadPayload'](_0x16ae0a,_0x1fb501){const _0x49d450=a0_0x1d27ec,_0x5e7c09={'uOfVh':_0x49d450(0xb3),'WBVLE':_0x49d450(0xa9),'lgbYg':'payload_load_error','JpQBL':_0x49d450(0xc0)},_0x3036ff=_0x16ae0a+':'+_0x1fb501;if(this[_0x49d450(0xa3)][_0x49d450(0xad)](_0x3036ff))return this[_0x49d450(0xa3)][_0x49d450(0xae)](_0x3036ff);const _0x52004c=path[_0x49d450(0xab)](this[_0x49d450(0xa6)],_0x16ae0a+'_'+_0x1fb501+'.json');try{const _0x3cfc8c=await fs[_0x49d450(0xbb)](_0x52004c,_0x5e7c09['uOfVh']),_0x21c290=JSON['parse'](_0x3cfc8c);return this['cache'][_0x49d450(0xc5)](_0x3036ff,_0x21c290),logger[_0x49d450(0xa0)]({'event':_0x49d450(0xb0),'project':_0x16ae0a,'resource':_0x1fb501},_0x5e7c09[_0x49d450(0xbe)]),_0x21c290;}catch(_0x42e71b){logger[_0x49d450(0xa1)]({'event':_0x5e7c09['lgbYg'],'project':_0x16ae0a,'resource':_0x1fb501,'error':_0x42e71b['message']},_0x5e7c09['JpQBL']);throw new Error(_0x49d450(0xb5)+_0x16ae0a+'_'+_0x1fb501);}}async['loadPayloadByName'](_0x2b3147){const _0x58be7c=a0_0x1d27ec,_0x41446c={'QnDtO':'payload_loaded','Mubhf':_0x58be7c(0xb6),'DuSqB':_0x58be7c(0xbc),'EzMML':_0x58be7c(0x9f)},_0x555495='payload:'+_0x2b3147;if(this['cache'][_0x58be7c(0xad)](_0x555495))return this['cache']['get'](_0x555495);const _0x50717c=path[_0x58be7c(0xab)](this['payloadDir'],_0x2b3147+'.json');try{const _0x437e34=await fs[_0x58be7c(0xbb)](_0x50717c,_0x58be7c(0xb3)),_0x99c022=JSON['parse'](_0x437e34);return this[_0x58be7c(0xa3)]['set'](_0x555495,_0x99c022),logger[_0x58be7c(0xa0)]({'event':_0x41446c['QnDtO'],'payloadName':_0x2b3147},_0x41446c[_0x58be7c(0xa7)]),_0x99c022;}catch(_0x2da48f){logger['error']({'event':_0x41446c['DuSqB'],'payloadName':_0x2b3147,'error':_0x2da48f[_0x58be7c(0xaf)]},_0x41446c['EzMML']);throw new Error('Payload\x20not\x20found:\x20'+_0x2b3147);}}[a0_0x1d27ec(0xac)](_0x5b4ff8,_0x56962b){const _0x2d2f53=a0_0x1d27ec;return _0x5b4ff8['action']&&_0x5b4ff8[_0x2d2f53(0xbf)][_0x56962b]===!![];}['getExportConfig'](_0x41f560){const _0x19567d=a0_0x1d27ec;return{'columns':_0x41f560[_0x19567d(0xb8)]||[],'filename':_0x41f560['tableName'][_0x19567d(0xb4)]('.','-')+'-export','datatablesQuery':_0x41f560[_0x19567d(0xa5)]||null,'columnFormats':_0x41f560['columnFormats']||null,'fieldLabels':_0x41f560[_0x19567d(0xc4)]||null};}['clearCache'](){const _0x40dcd5=a0_0x1d27ec,_0xc198bf={'WrnBD':'payload_cache_cleared','CncAl':'Payload\x20cache\x20cleared'};this[_0x40dcd5(0xa3)]['clear'](),logger[_0x40dcd5(0xc3)]({'event':_0xc198bf['WrnBD']},_0xc198bf['CncAl']);}}function a0_0x4d69(){const _0x1c97b5=['y2fJAgu','ndflwxPkDem','zgf0yxrHyMXLC1f1zxj5','Cgf5Bg9HzerPCG','txvIAgy','mti2n21oshrvDq','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','mJeYntzdswXurvu','AM9PBG','Axnby3rPB25fBMfIBgvK','AgfZ','z2v0','BwvZC2fNzq','Cgf5Bg9Hzf9SB2fKzwq','lI9SB2DNzxi','Cgf0Aa','DxrMoa','CMvWBgfJzq','ugf5Bg9HzcbUB3qGzM91BMq6ia','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','mJC5wNDXDLvQ','zMLLBgroyw1L','nJK3odm2yKnUtNnd','mtq5mZHADeDdru4','CMvHzezPBgu','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','nJu0odqWz0Dtte9U','v0jwteu','ywn0Aw9U','rMfPBgvKihrVigXVywqGCgf5Bg9Hza','nteWmdeWt1b2s0Lr','mta3mdy2og1LrKnQDG','Aw5MBW','zMLLBgrmywjLBhm','C2v0','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','zgvIDwC','zxjYB3i','mtu5nJi2ngHgz1Pyza'];a0_0x4d69=function(){return _0x1c97b5;};return a0_0x4d69();}module['exports']=new PayloadLoader();
1
+ const a0_0x3dd83a=a0_0x3919;function a0_0x5102(){const _0x2fda21=['quv1y0W','zfjIC0m','mtGYmtv2vfvJv1q','zxjYB3i','mty1nJa0mNzTANjyyq','mtqWmZa2nMXeBxvNtG','z2v0rxHWB3j0q29UzMLN','ugf5Bg9HzcbJywnOzsbJBgvHCMvK','Axnby3rPB25fBMfIBgvK','rMfPBgvKihrVigXVywqGCgf5Bg9HzcbIEsbUyw1L','mJK5ndGWoevOtLbXwq','C2v0','Cgf5Bg9HzerPCG','mZbmvhfmBNu','zMLLBgrmywjLBhm','CMvWBgfJzq','ChjVBwLZzxm','CMvHzezPBgu','nZu0mZa0wwPnu0TM','lMPZB24','zLP1zxi','ufLyCwC','y2fJAgu','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5igj5ig5HBwu','DKHMreu','nJjWtgvVC3a','zgvIDwC','lI9SB2DNzxi','y29SDw1UrM9YBwf0CW','Cgf5Bg9Hzf9SB2fKzwq','AM9PBG','ywn0Aw9U','ugf5Bg9HzcbSB2fKzwqGC3vJy2vZC2z1BgX5','mJu2mtq1meDAwe94uG','CgfYC2u','lI4VlI4VCgf5Bg9Hza','DxrMoa','Cgf5Bg9HzdO','nde4ndy1DeTZAg9L','Cgf5Bg9Hzf9SB2fKx2vYCM9Y','mJDRDePbu00','y2XLyxi','zgf0yxrHyMXLC1f1zxj5'];a0_0x5102=function(){return _0x2fda21;};return a0_0x5102();}(function(_0x55e043,_0x119cec){const _0x4290fa=a0_0x3919,_0x61ab80=_0x55e043();while(!![]){try{const _0x7a49ea=-parseInt(_0x4290fa(0x201))/0x1*(-parseInt(_0x4290fa(0x1ed))/0x2)+parseInt(_0x4290fa(0x203))/0x3+parseInt(_0x4290fa(0x1e6))/0x4+-parseInt(_0x4290fa(0x1fa))/0x5*(parseInt(_0x4290fa(0x20c))/0x6)+-parseInt(_0x4290fa(0x204))/0x7+parseInt(_0x4290fa(0x209))/0x8+parseInt(_0x4290fa(0x1fc))/0x9*(-parseInt(_0x4290fa(0x1f5))/0xa);if(_0x7a49ea===_0x119cec)break;else _0x61ab80['push'](_0x61ab80['shift']());}catch(_0x3c83a6){_0x61ab80['push'](_0x61ab80['shift']());}}}(a0_0x5102,0x475ac));const fs=require('fs')[a0_0x3dd83a(0x1e4)],path=require('path'),{logger}=require(a0_0x3dd83a(0x1ef));class PayloadLoader{constructor(){const _0xeb61c4=a0_0x3dd83a,_0x26cc05={'dRbsC':_0xeb61c4(0x1f7)};this[_0xeb61c4(0x20b)]=path['join'](__dirname,_0x26cc05[_0xeb61c4(0x200)]),this[_0xeb61c4(0x1ea)]=new Map();}async['loadPayload'](_0x1807d5,_0x44ecb4){const _0x337a1a=a0_0x3dd83a,_0x30cfea={'LKUtY':_0x337a1a(0x1f8),'vHfDE':_0x337a1a(0x1f1)},_0x4a00a5=_0x1807d5+':'+_0x44ecb4;if(this[_0x337a1a(0x1ea)]['has'](_0x4a00a5))return this['cache']['get'](_0x4a00a5);const _0x29e694=path[_0x337a1a(0x1f2)](this['payloadDir'],_0x1807d5+'_'+_0x44ecb4+_0x337a1a(0x1e7));try{const _0x166119=await fs['readFile'](_0x29e694,_0x30cfea['LKUtY']),_0x7bcd8=JSON[_0x337a1a(0x1f6)](_0x166119);return this['cache'][_0x337a1a(0x20a)](_0x4a00a5,_0x7bcd8),logger['debug']({'event':_0x30cfea[_0x337a1a(0x1ec)],'project':_0x1807d5,'resource':_0x44ecb4},_0x337a1a(0x1f4)),_0x7bcd8;}catch(_0x3b5f13){logger[_0x337a1a(0x202)]({'event':_0x337a1a(0x1fb),'project':_0x1807d5,'resource':_0x44ecb4,'error':_0x3b5f13['message']},'Failed\x20to\x20load\x20payload');throw new Error('Payload\x20not\x20found:\x20'+_0x1807d5+'_'+_0x44ecb4);}}async['loadPayloadByName'](_0x536aeb){const _0xc83bd=a0_0x3dd83a,_0x7b863b={'fZuer':_0xc83bd(0x1f8),'MwuUS':'payload_loaded','AEucL':_0xc83bd(0x1eb),'dNmLo':_0xc83bd(0x208)},_0x11146e=_0xc83bd(0x1f9)+_0x536aeb;if(this['cache']['has'](_0x11146e))return this['cache']['get'](_0x11146e);const _0x9d567d=path['join'](this['payloadDir'],_0x536aeb+_0xc83bd(0x1e7));try{const _0x4176c6=await fs[_0xc83bd(0x1e5)](_0x9d567d,_0x7b863b[_0xc83bd(0x1e8)]),_0x19c765=JSON['parse'](_0x4176c6);return this[_0xc83bd(0x1ea)]['set'](_0x11146e,_0x19c765),logger[_0xc83bd(0x1ee)]({'event':_0x7b863b['MwuUS'],'payloadName':_0x536aeb},_0x7b863b[_0xc83bd(0x1ff)]),_0x19c765;}catch(_0x29bb98){logger[_0xc83bd(0x202)]({'event':_0xc83bd(0x1fb),'payloadName':_0x536aeb,'error':_0x29bb98['message']},_0x7b863b['dNmLo']);throw new Error('Payload\x20not\x20found:\x20'+_0x536aeb);}}[a0_0x3dd83a(0x207)](_0xebcc3f,_0x1c4695){const _0x130269=a0_0x3dd83a,_0x453eda={'PYXqg':function(_0x25f5be,_0x4b05e6){return _0x25f5be===_0x4b05e6;}};return _0xebcc3f['action']&&_0x453eda[_0x130269(0x1e9)](_0xebcc3f[_0x130269(0x1f3)][_0x1c4695],!![]);}[a0_0x3dd83a(0x205)](_0x349c04){const _0x432ebe=a0_0x3dd83a;return{'columns':_0x349c04['fieldName']||[],'filename':_0x349c04['tableName'][_0x432ebe(0x1e3)]('.','-')+'-export','datatablesQuery':_0x349c04[_0x432ebe(0x1fe)]||null,'columnFormats':_0x349c04[_0x432ebe(0x1f0)]||null,'fieldLabels':_0x349c04[_0x432ebe(0x1e2)]||null};}['clearCache'](){const _0x320339=a0_0x3dd83a,_0x1819dd={'kayKo':'payload_cache_cleared'};this['cache'][_0x320339(0x1fd)](),logger['info']({'event':_0x1819dd['kayKo']},_0x320339(0x206));}}function a0_0x3919(_0x2c57d2,_0x3e4982){_0x2c57d2=_0x2c57d2-0x1e2;const _0x510230=a0_0x5102();let _0x3919c2=_0x510230[_0x2c57d2];if(a0_0x3919['DDHpAP']===undefined){var _0x5f5337=function(_0x26e990){const _0x224296='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x27429f='',_0x6c14a4='';for(let _0x315f21=0x0,_0x185269,_0x1f3c74,_0xb5533a=0x0;_0x1f3c74=_0x26e990['charAt'](_0xb5533a++);~_0x1f3c74&&(_0x185269=_0x315f21%0x4?_0x185269*0x40+_0x1f3c74:_0x1f3c74,_0x315f21++%0x4)?_0x27429f+=String['fromCharCode'](0xff&_0x185269>>(-0x2*_0x315f21&0x6)):0x0){_0x1f3c74=_0x224296['indexOf'](_0x1f3c74);}for(let _0x32ccce=0x0,_0x2e8daa=_0x27429f['length'];_0x32ccce<_0x2e8daa;_0x32ccce++){_0x6c14a4+='%'+('00'+_0x27429f['charCodeAt'](_0x32ccce)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x6c14a4);};a0_0x3919['Ujbmuj']=_0x5f5337,a0_0x3919['zEwQJV']={},a0_0x3919['DDHpAP']=!![];}const _0x2a657f=_0x510230[0x0],_0x473d83=_0x2c57d2+_0x2a657f,_0x2ae19e=a0_0x3919['zEwQJV'][_0x473d83];return!_0x2ae19e?(_0x3919c2=a0_0x3919['Ujbmuj'](_0x3919c2),a0_0x3919['zEwQJV'][_0x473d83]=_0x3919c2):_0x3919c2=_0x2ae19e,_0x3919c2;}module['exports']=new PayloadLoader();
@@ -1 +1 @@
1
- 'use strict';(function(_0x37a270,_0x12360c){var _0x3d7b40=a0_0x5035,_0x1e88ba=_0x37a270();while(!![]){try{var _0x42b3cb=-parseInt(_0x3d7b40(0x1b2))/0x1+-parseInt(_0x3d7b40(0x1b1))/0x2+parseInt(_0x3d7b40(0x1b5))/0x3*(parseInt(_0x3d7b40(0x1ae))/0x4)+-parseInt(_0x3d7b40(0x1b4))/0x5+parseInt(_0x3d7b40(0x1ab))/0x6*(parseInt(_0x3d7b40(0x1b0))/0x7)+parseInt(_0x3d7b40(0x1b3))/0x8*(-parseInt(_0x3d7b40(0x1ac))/0x9)+-parseInt(_0x3d7b40(0x1af))/0xa*(-parseInt(_0x3d7b40(0x1aa))/0xb);if(_0x42b3cb===_0x12360c)break;else _0x1e88ba['push'](_0x1e88ba['shift']());}catch(_0x3bcb92){_0x1e88ba['push'](_0x1e88ba['shift']());}}}(a0_0x1f8a,0x53c52));function createResponse(_0x43ece5,_0x28fcd8,_0x184f1a=null){var _0x576092=a0_0x5035;return{'success':!![],'statusCode':_0x43ece5,'message':_0x28fcd8,'data':_0x184f1a,'timestamp':new Date()[_0x576092(0x1ad)]()};}function createError(_0xc2305f,_0x2d9445,_0x54f1a8=null){return{'success':![],'statusCode':_0xc2305f,'message':_0x2d9445,'data':_0x54f1a8,'timestamp':new Date()['toISOString']()};}function a0_0x1f8a(){var _0x21ea7b=['oty1nZjUDuPNz24','mJm3ndm4wwrkzhzr','mti5mJC3yMvVvgnN','mJr3ueHyz1y','oti4nda1t2DNCMvb','mtvYzeX3B0q','mtf3Aw1fyMq','mJuYrK1sALfv','odG0mtK2ugL2rxn0','Dg9ju09tDhjPBMC','mJaXmZCYEuzPtu12','mJqWmZG0mfL2veLMra'];a0_0x1f8a=function(){return _0x21ea7b;};return a0_0x1f8a();}function a0_0x5035(_0x10878d,_0x5b9721){_0x10878d=_0x10878d-0x1aa;var _0x1f8a20=a0_0x1f8a();var _0x5035ca=_0x1f8a20[_0x10878d];if(a0_0x5035['LWwIwZ']===undefined){var _0xd6b51d=function(_0x3e8197){var _0x19b52c='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x1797bc='',_0x589c95='';for(var _0x58db8e=0x0,_0x4343e5,_0x21b329,_0x5e1d3e=0x0;_0x21b329=_0x3e8197['charAt'](_0x5e1d3e++);~_0x21b329&&(_0x4343e5=_0x58db8e%0x4?_0x4343e5*0x40+_0x21b329:_0x21b329,_0x58db8e++%0x4)?_0x1797bc+=String['fromCharCode'](0xff&_0x4343e5>>(-0x2*_0x58db8e&0x6)):0x0){_0x21b329=_0x19b52c['indexOf'](_0x21b329);}for(var _0x55815c=0x0,_0x3e19d0=_0x1797bc['length'];_0x55815c<_0x3e19d0;_0x55815c++){_0x589c95+='%'+('00'+_0x1797bc['charCodeAt'](_0x55815c)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x589c95);};a0_0x5035['vvGHZR']=_0xd6b51d,a0_0x5035['YyoQQQ']={},a0_0x5035['LWwIwZ']=!![];}var _0x37d407=_0x1f8a20[0x0],_0x29c8c1=_0x10878d+_0x37d407,_0x1a8f96=a0_0x5035['YyoQQQ'][_0x29c8c1];return!_0x1a8f96?(_0x5035ca=a0_0x5035['vvGHZR'](_0x5035ca),a0_0x5035['YyoQQQ'][_0x29c8c1]=_0x5035ca):_0x5035ca=_0x1a8f96,_0x5035ca;}function createValidationError(_0x37f3e6,_0x42f970){var _0x22caed=a0_0x5035;return{'success':![],'statusCode':0x190,'message':_0x37f3e6,'data':{'errors':_0x42f970},'timestamp':new Date()[_0x22caed(0x1ad)]()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
1
+ 'use strict';(function(_0x534912,_0x50e393){var _0x35159a=a0_0x1379,_0x27579f=_0x534912();while(!![]){try{var _0x957fe0=parseInt(_0x35159a(0xde))/0x1+parseInt(_0x35159a(0xdd))/0x2+parseInt(_0x35159a(0xe1))/0x3+parseInt(_0x35159a(0xe5))/0x4+parseInt(_0x35159a(0xdb))/0x5*(-parseInt(_0x35159a(0xe4))/0x6)+parseInt(_0x35159a(0xdc))/0x7*(-parseInt(_0x35159a(0xdf))/0x8)+-parseInt(_0x35159a(0xe2))/0x9*(parseInt(_0x35159a(0xe3))/0xa);if(_0x957fe0===_0x50e393)break;else _0x27579f['push'](_0x27579f['shift']());}catch(_0x1f6025){_0x27579f['push'](_0x27579f['shift']());}}}(a0_0x240a,0x42704));function createResponse(_0x128b84,_0x5adaf5,_0x3ba37c=null){return{'success':!![],'statusCode':_0x128b84,'message':_0x5adaf5,'data':_0x3ba37c,'timestamp':new Date()['toISOString']()};}function createError(_0x1c18da,_0x3229e1,_0x4f1ddc=null){var _0x34f381=a0_0x1379;return{'success':![],'statusCode':_0x1c18da,'message':_0x3229e1,'data':_0x4f1ddc,'timestamp':new Date()[_0x34f381(0xe0)]()};}function a0_0x1379(_0x4fb049,_0x1ce687){_0x4fb049=_0x4fb049-0xdb;var _0x240a9d=a0_0x240a();var _0x1379e4=_0x240a9d[_0x4fb049];if(a0_0x1379['siikFE']===undefined){var _0x1b0e78=function(_0x59b2bf){var _0x2881ee='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';var _0x918621='',_0x422a16='';for(var _0x45f9a2=0x0,_0x3dfa60,_0x49673a,_0x1e57e5=0x0;_0x49673a=_0x59b2bf['charAt'](_0x1e57e5++);~_0x49673a&&(_0x3dfa60=_0x45f9a2%0x4?_0x3dfa60*0x40+_0x49673a:_0x49673a,_0x45f9a2++%0x4)?_0x918621+=String['fromCharCode'](0xff&_0x3dfa60>>(-0x2*_0x45f9a2&0x6)):0x0){_0x49673a=_0x2881ee['indexOf'](_0x49673a);}for(var _0x201b76=0x0,_0x515c0c=_0x918621['length'];_0x201b76<_0x515c0c;_0x201b76++){_0x422a16+='%'+('00'+_0x918621['charCodeAt'](_0x201b76)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x422a16);};a0_0x1379['mOhkVI']=_0x1b0e78,a0_0x1379['fpXwxD']={},a0_0x1379['siikFE']=!![];}var _0x1a045e=_0x240a9d[0x0],_0x125b59=_0x4fb049+_0x1a045e,_0x82000e=a0_0x1379['fpXwxD'][_0x125b59];return!_0x82000e?(_0x1379e4=a0_0x1379['mOhkVI'](_0x1379e4),a0_0x1379['fpXwxD'][_0x125b59]=_0x1379e4):_0x1379e4=_0x82000e,_0x1379e4;}function a0_0x240a(){var _0xe279bc=['mJmWmdy4m2Lbzef5zq','ota4odyWzwTIz0PL','ndK1nZG3ze5Nwxbz','ofrSA3rRDW','Dg9ju09tDhjPBMC','ntKZmJvMqMzNswm','mtq1mtDvsNrfy3m','nZeWwwTPD25A','mtmWmdu2DhzPAwX2','ndu1mJK2tvzQu2vS','odvwsgXZqwW'];a0_0x240a=function(){return _0xe279bc;};return a0_0x240a();}function createValidationError(_0x5ed9b4,_0x1e4860){return{'success':![],'statusCode':0x190,'message':_0x5ed9b4,'data':{'errors':_0x1e4860},'timestamp':new Date()['toISOString']()};}module['exports']={'createResponse':createResponse,'createError':createError,'createValidationError':createValidationError};
@@ -1 +1 @@
1
- const a0_0x3b2aad=a0_0x490c;(function(_0xc3b551,_0x11ae80){const _0x5064f5=a0_0x490c,_0x5f3c45=_0xc3b551();while(!![]){try{const _0x50f818=parseInt(_0x5064f5(0x1dc))/0x1*(parseInt(_0x5064f5(0x1cc))/0x2)+-parseInt(_0x5064f5(0x1cb))/0x3*(parseInt(_0x5064f5(0x1d4))/0x4)+-parseInt(_0x5064f5(0x1df))/0x5*(parseInt(_0x5064f5(0x1d8))/0x6)+-parseInt(_0x5064f5(0x1c4))/0x7+parseInt(_0x5064f5(0x1d0))/0x8*(-parseInt(_0x5064f5(0x1d3))/0x9)+-parseInt(_0x5064f5(0x1ba))/0xa*(parseInt(_0x5064f5(0x1b8))/0xb)+parseInt(_0x5064f5(0x1ce))/0xc;if(_0x50f818===_0x11ae80)break;else _0x5f3c45['push'](_0x5f3c45['shift']());}catch(_0x30a7ff){_0x5f3c45['push'](_0x5f3c45['shift']());}}}(a0_0x25d6,0x37127),require('dotenv')[a0_0x3b2aad(0x1bb)]());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process[a0_0x3b2aad(0x1d6)][a0_0x3b2aad(0x1e0)],EXCHANGE=process[a0_0x3b2aad(0x1d6)][a0_0x3b2aad(0x1cf)],ROUTING_KEY=process[a0_0x3b2aad(0x1d6)]['RABBITMQ_ROUTING_KEY'],QUEUE=process[a0_0x3b2aad(0x1d6)]['RABBITMQ_QUEUE'];async function createConnection(){const _0x756643=a0_0x3b2aad,_0x5f2f13={'yDPgd':function(_0x6e2260,_0x7cfb0a){return _0x6e2260(_0x7cfb0a);}};try{const _0x151a78=await amqp['connect'](RABBITMQ_URL);return console[_0x756643(0x1dd)]('['+_0x5f2f13['yDPgd'](formatDate,new Date())+_0x756643(0x1be)),_0x151a78;}catch(_0x3efc06){console['error']('['+formatDate(new Date())+_0x756643(0x1bf)+_0x3efc06['message']);throw _0x3efc06;}}async function createChannel(_0x58fb74){const _0x519a43=a0_0x3b2aad,_0x28b312={'wfmbH':function(_0x4c62d3,_0x367963){return _0x4c62d3(_0x367963);}};try{const _0x214c53=await _0x58fb74[_0x519a43(0x1d5)]();return console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0x214c53;}catch(_0x2b8e4b){console[_0x519a43(0x1c8)]('['+_0x28b312['wfmbH'](formatDate,new Date())+_0x519a43(0x1c2)+_0x2b8e4b[_0x519a43(0x1c9)]);throw _0x2b8e4b;}}function a0_0x490c(_0x3453d1,_0x436c02){_0x3453d1=_0x3453d1-0x1b5;const _0x25d6f8=a0_0x25d6();let _0x490cbb=_0x25d6f8[_0x3453d1];if(a0_0x490c['qnHUat']===undefined){var _0x27efbe=function(_0x1a4b61){const _0x1837a1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0xc2c7d7='',_0x34632a='';for(let _0x26945e=0x0,_0x74c89a,_0x793ac2,_0x13967d=0x0;_0x793ac2=_0x1a4b61['charAt'](_0x13967d++);~_0x793ac2&&(_0x74c89a=_0x26945e%0x4?_0x74c89a*0x40+_0x793ac2:_0x793ac2,_0x26945e++%0x4)?_0xc2c7d7+=String['fromCharCode'](0xff&_0x74c89a>>(-0x2*_0x26945e&0x6)):0x0){_0x793ac2=_0x1837a1['indexOf'](_0x793ac2);}for(let _0x244e56=0x0,_0x596580=_0xc2c7d7['length'];_0x244e56<_0x596580;_0x244e56++){_0x34632a+='%'+('00'+_0xc2c7d7['charCodeAt'](_0x244e56)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x34632a);};a0_0x490c['uVlheF']=_0x27efbe,a0_0x490c['RDDPIg']={},a0_0x490c['qnHUat']=!![];}const _0x39e8c9=_0x25d6f8[0x0],_0x4e2ba2=_0x3453d1+_0x39e8c9,_0x1fc246=a0_0x490c['RDDPIg'][_0x4e2ba2];return!_0x1fc246?(_0x490cbb=a0_0x490c['uVlheF'](_0x490cbb),a0_0x490c['RDDPIg'][_0x4e2ba2]=_0x490cbb):_0x490cbb=_0x1fc246,_0x490cbb;}async function setupInfrastructure(_0x33c3ae){const _0x132799=a0_0x3b2aad,_0x446c64={'mEhjV':'direct','oHdQU':function(_0x417caf,_0x3fdd33){return _0x417caf(_0x3fdd33);},'zWyuV':function(_0x5d6a14,_0x55bb40){return _0x5d6a14(_0x55bb40);},'dLVfJ':function(_0x4b90fb,_0x3818f9){return _0x4b90fb===_0x3818f9;},'dOPwO':function(_0xbe250,_0x2daf93){return _0xbe250(_0x2daf93);},'DQquJ':_0x132799(0x1c3)};try{await _0x33c3ae[_0x132799(0x1bd)]('retry-exchange',_0x446c64['mEhjV'],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x436e77){console['error']('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x436e77[_0x132799(0x1c9)]);throw _0x436e77;}try{await _0x33c3ae[_0x132799(0x1bd)](EXCHANGE,_0x446c64[_0x132799(0x1d9)],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Exchange\x20'+EXCHANGE+'\x20created/ready');}catch(_0x4b14ad){console['error']('['+_0x446c64[_0x132799(0x1c0)](formatDate,new Date())+']\x20Error\x20creating\x20exchange\x20'+EXCHANGE+':',_0x4b14ad['message']);throw _0x4b14ad;}const _0x14f65c=ROUTING_KEY+'_retry';try{const _0x49f0fc={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x33c3ae[_0x132799(0x1c1)](_0x14f65c,_0x49f0fc),console['log']('['+_0x446c64[_0x132799(0x1c0)](formatDate,new Date())+']\x20Retry\x20queue\x20'+_0x14f65c+_0x132799(0x1b9)),await _0x33c3ae['bindQueue'](_0x14f65c,_0x132799(0x1d1),ROUTING_KEY),console[_0x132799(0x1dd)]('['+_0x446c64['zWyuV'](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+'\x20created');}catch(_0x92f9f8){console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20creating\x20retry\x20queue:',_0x92f9f8[_0x132799(0x1c9)]);throw _0x92f9f8;}try{const _0x19cdf0={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x132799(0x1d1),'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x15f4f4=await _0x33c3ae[_0x132799(0x1c1)](QUEUE,_0x19cdf0);console['log']('['+formatDate(new Date())+_0x132799(0x1b6)+QUEUE+'\x20'+(_0x446c64['dLVfJ'](_0x15f4f4[_0x132799(0x1ca)],QUEUE)?'created/ready':_0x132799(0x1d2))+_0x132799(0x1c5)),await _0x33c3ae['bindQueue'](QUEUE,EXCHANGE,ROUTING_KEY),console['log']('['+_0x446c64[_0x132799(0x1c7)](formatDate,new Date())+']\x20Binding\x20'+EXCHANGE+_0x132799(0x1cd)+QUEUE+'\x20('+ROUTING_KEY+_0x132799(0x1db));}catch(_0x5a0316){if(_0x5a0316['message']['includes'](_0x132799(0x1b5))&&_0x5a0316['message'][_0x132799(0x1c6)](_0x446c64['DQquJ']))console[_0x132799(0x1c8)]('\x0a['+formatDate(new Date())+_0x132799(0x1da)+QUEUE+_0x132799(0x1b7)),console['error']('Queue\x20'+QUEUE+_0x132799(0x1bc)),console['error']('Solution:\x20Use\x20a\x20different\x20queue\x20name\x20for\x20different\x20routing\x20keys.'),process['exit'](0x1);else{console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x5a0316[_0x132799(0x1c9)]);throw _0x5a0316;}}}catch(_0x30b2f0){if(!_0x30b2f0[_0x132799(0x1c9)][_0x132799(0x1c6)]('inequivalent\x20arg')){console[_0x132799(0x1c8)]('['+formatDate(new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x30b2f0[_0x132799(0x1c9)]);throw _0x30b2f0;}process[_0x132799(0x1de)](0x1);}}async function closeConnection(_0x4ba751){const _0x183398=a0_0x3b2aad;if(_0x4ba751)try{await _0x4ba751['close'](),console[_0x183398(0x1dd)]('['+formatDate(new Date())+']\x20RabbitMQ\x20connection\x20closed');}catch(_0x6052e){console[_0x183398(0x1c8)]('['+formatDate(new Date())+_0x183398(0x1d7)+_0x6052e[_0x183398(0x1c9)]);}}function a0_0x25d6(){const _0x313578=['ic0+ia','nZG2ote1nMTSAfvcCa','uKfcqKLutvfFrvHdsefor0u','ntzgsK1HD1y','CMv0CNKTzxHJAgfUz2u','zM91BMq','nZm5mZvsC1zvBMq','mtiYnJC1nKvwzMv4va','y3jLyxrLq2HHBM5LBa','zw52','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','mtjWBhnfwMS','BuvOALy','xsbfuLjpuJOGuxvLDwuG','ksbJCMvHDgvK','m0rSt2v2Ba','Bg9N','zxHPDa','nta3mty1tMPqvfzI','uKfcqKLutvfFvvjm','Aw5LCxvPDMfSzw50igfYzW','xsbrDwv1zsa','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','nZDkEwfjyNy','ignYzwf0zwqVCMvHzhK','mtaXmteWANbgrNL4','y29UzMLN','ihDHCYbJCMvHDgvKihDPDgGGysbKAwzMzxjLBNqGEc1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEs4','yxnZzxj0rxHJAgfUz2u','xsbtDwnJzxnZzNvSBhKGy29UBMvJDgvKihrVifjHyMjPDe1r','xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','B0HKuvu','yxnZzxj0uxvLDwu','xsbgywLSzwqGDg8Gy3jLyxrLifjHyMjPDe1rignOyw5UzwW6ia','Ec1KzwfKlwXLDhrLCI1YB3v0Aw5NlwTLEq','nZCXoteXBvffv2Dk','ihDPDgGGreXy','Aw5JBhvKzxm','ze9qD08','zxjYB3i','BwvZC2fNzq','CxvLDwu','m2PNCMTTra','mJeXotq4BwXytLjk'];a0_0x25d6=function(){return _0x313578;};return a0_0x25d6();}module['exports']={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
1
+ const a0_0x41020a=a0_0x53b4;(function(_0x85ec10,_0x377c90){const _0x3f5c3b=a0_0x53b4,_0x3c2ec8=_0x85ec10();while(!![]){try{const _0x840f85=parseInt(_0x3f5c3b(0xfa))/0x1+parseInt(_0x3f5c3b(0xd7))/0x2*(-parseInt(_0x3f5c3b(0xf9))/0x3)+parseInt(_0x3f5c3b(0xd4))/0x4+-parseInt(_0x3f5c3b(0xdf))/0x5*(parseInt(_0x3f5c3b(0xe4))/0x6)+-parseInt(_0x3f5c3b(0xd5))/0x7*(parseInt(_0x3f5c3b(0xee))/0x8)+-parseInt(_0x3f5c3b(0xe2))/0x9+parseInt(_0x3f5c3b(0xea))/0xa;if(_0x840f85===_0x377c90)break;else _0x3c2ec8['push'](_0x3c2ec8['shift']());}catch(_0xb4372a){_0x3c2ec8['push'](_0x3c2ec8['shift']());}}}(a0_0x47ec,0xcdce6),require(a0_0x41020a(0x101))[a0_0x41020a(0xdb)]());const amqp=require('amqplib'),{formatDate}=require('./dateHelper'),RABBITMQ_URL=process['env']['RABBITMQ_URL'],EXCHANGE=process[a0_0x41020a(0xe9)][a0_0x41020a(0xd9)],ROUTING_KEY=process[a0_0x41020a(0xe9)][a0_0x41020a(0xe3)],QUEUE=process['env'][a0_0x41020a(0xda)];async function createConnection(){const _0x503159=a0_0x41020a,_0x1dfd15={'JUptB':function(_0x573909,_0x3c6525){return _0x573909(_0x3c6525);}};try{const _0x3cc01b=await amqp['connect'](RABBITMQ_URL);return console['log']('['+formatDate(new Date())+']\x20Successfully\x20connected\x20to\x20RabbitMQ'),_0x3cc01b;}catch(_0x4f66fa){console['error']('['+_0x1dfd15[_0x503159(0xe8)](formatDate,new Date())+_0x503159(0xf5)+_0x4f66fa['message']);throw _0x4f66fa;}}async function createChannel(_0x20e8e1){const _0x2a1ca4=a0_0x41020a;try{const _0xdc3af0=await _0x20e8e1['createChannel']();return console['log']('['+formatDate(new Date())+']\x20RabbitMQ\x20channel\x20created\x20successfully'),_0xdc3af0;}catch(_0x43ebe5){console['error']('['+formatDate(new Date())+']\x20Failed\x20to\x20create\x20RabbitMQ\x20channel:\x20'+_0x43ebe5[_0x2a1ca4(0x103)]);throw _0x43ebe5;}}async function setupInfrastructure(_0x5b9042){const _0x486def=a0_0x41020a,_0x559d93={'DEEzh':_0x486def(0x100),'BWUKK':function(_0x6c5bb5,_0x1a5985){return _0x6c5bb5(_0x1a5985);},'pOlVG':function(_0x1e34de,_0x18668b){return _0x1e34de(_0x18668b);},'eSJXI':'retry-exchange','xeYbe':function(_0x13b516,_0x8a3cf4){return _0x13b516(_0x8a3cf4);},'WOLac':function(_0x314906,_0x1b1893){return _0x314906(_0x1b1893);},'MmVCC':'found','uGKup':function(_0x54914e,_0x421b0e){return _0x54914e(_0x421b0e);},'OmSiB':_0x486def(0xde),'saAQG':'x-dead-letter-routing-key'};try{await _0x5b9042[_0x486def(0xd2)]('retry-exchange',_0x559d93['DEEzh'],{'durable':!![],'autoDelete':![]}),console['log']('['+formatDate(new Date())+']\x20Retry\x20exchange\x20created/ready');}catch(_0x4b5b5b){console[_0x486def(0xf1)]('['+_0x559d93['BWUKK'](formatDate,new Date())+']\x20Error\x20creating\x20retry\x20exchange:',_0x4b5b5b[_0x486def(0x103)]);throw _0x4b5b5b;}try{await _0x5b9042[_0x486def(0xd2)](EXCHANGE,_0x559d93[_0x486def(0xf2)],{'durable':!![],'autoDelete':![]}),console['log']('['+_0x559d93[_0x486def(0xdd)](formatDate,new Date())+']\x20Exchange\x20'+EXCHANGE+_0x486def(0xdc));}catch(_0xbd4250){console['error']('['+formatDate(new Date())+_0x486def(0xd6)+EXCHANGE+':',_0xbd4250['message']);throw _0xbd4250;}const _0x45ffb1=ROUTING_KEY+'_retry';try{const _0x29b677={'durable':!![],'autoDelete':![],'arguments':{'x-message-ttl':0x2710,'x-dead-letter-exchange':EXCHANGE,'x-dead-letter-routing-key':ROUTING_KEY}};await _0x5b9042[_0x486def(0xf3)](_0x45ffb1,_0x29b677),console['log']('['+formatDate(new Date())+']\x20Retry\x20queue\x20'+_0x45ffb1+_0x486def(0xdc)),await _0x5b9042['bindQueue'](_0x45ffb1,_0x559d93['eSJXI'],ROUTING_KEY),console[_0x486def(0xd3)]('['+_0x559d93['xeYbe'](formatDate,new Date())+']\x20Retry\x20binding\x20for\x20'+ROUTING_KEY+_0x486def(0xf6));}catch(_0x1ef52a){console[_0x486def(0xf1)]('['+formatDate(new Date())+_0x486def(0xfb),_0x1ef52a['message']);throw _0x1ef52a;}try{const _0x536b62={'durable':!![],'arguments':{'x-dead-letter-exchange':_0x559d93['eSJXI'],'x-dead-letter-routing-key':ROUTING_KEY}};try{const _0x5916b2=await _0x5b9042[_0x486def(0xf3)](QUEUE,_0x536b62);console[_0x486def(0xd3)]('['+_0x559d93['WOLac'](formatDate,new Date())+']\x20Queue\x20'+QUEUE+'\x20'+(_0x5916b2['queue']===QUEUE?_0x486def(0xd8):_0x559d93[_0x486def(0xeb)])+'\x20with\x20DLX'),await _0x5b9042[_0x486def(0x102)](QUEUE,EXCHANGE,ROUTING_KEY),console[_0x486def(0xd3)]('['+_0x559d93[_0x486def(0xec)](formatDate,new Date())+_0x486def(0xf4)+EXCHANGE+_0x486def(0xed)+QUEUE+'\x20('+ROUTING_KEY+')\x20created');}catch(_0x4ef91e){if(_0x4ef91e[_0x486def(0x103)]['includes'](_0x559d93['OmSiB'])&&_0x4ef91e[_0x486def(0x103)]['includes'](_0x559d93[_0x486def(0xe6)]))console[_0x486def(0xf1)]('\x0a['+_0x559d93[_0x486def(0xe0)](formatDate,new Date())+_0x486def(0xe5)+QUEUE+_0x486def(0xfe)),console[_0x486def(0xf1)]('Queue\x20'+QUEUE+'\x20was\x20created\x20with\x20a\x20different\x20x-dead-letter-routing-key.'),console[_0x486def(0xf1)](_0x486def(0xe7)),process['exit'](0x1);else{console[_0x486def(0xf1)]('['+formatDate(new Date())+']\x20Error\x20creating\x20queue\x20'+QUEUE+':',_0x4ef91e[_0x486def(0x103)]);throw _0x4ef91e;}}}catch(_0x3ea6d2){if(!_0x3ea6d2[_0x486def(0x103)][_0x486def(0xfc)](_0x559d93[_0x486def(0xef)])){console['error']('['+_0x559d93[_0x486def(0xe0)](formatDate,new Date())+']\x20Error\x20setting\x20up\x20main\x20queue:',_0x3ea6d2[_0x486def(0x103)]);throw _0x3ea6d2;}process[_0x486def(0xf0)](0x1);}}function a0_0x53b4(_0x2485a9,_0xd771e0){_0x2485a9=_0x2485a9-0xd2;const _0x47ec47=a0_0x47ec();let _0x53b4cc=_0x47ec47[_0x2485a9];if(a0_0x53b4['bTXhRA']===undefined){var _0x81baf=function(_0x4bfd3e){const _0x3a5c33='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x207e49='',_0x4f0b23='';for(let _0x309760=0x0,_0x2ded0e,_0x39f228,_0x3d1486=0x0;_0x39f228=_0x4bfd3e['charAt'](_0x3d1486++);~_0x39f228&&(_0x2ded0e=_0x309760%0x4?_0x2ded0e*0x40+_0x39f228:_0x39f228,_0x309760++%0x4)?_0x207e49+=String['fromCharCode'](0xff&_0x2ded0e>>(-0x2*_0x309760&0x6)):0x0){_0x39f228=_0x3a5c33['indexOf'](_0x39f228);}for(let _0x324494=0x0,_0x110958=_0x207e49['length'];_0x324494<_0x110958;_0x324494++){_0x4f0b23+='%'+('00'+_0x207e49['charCodeAt'](_0x324494)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4f0b23);};a0_0x53b4['SPVdep']=_0x81baf,a0_0x53b4['HciUKk']={},a0_0x53b4['bTXhRA']=!![];}const _0x58ad56=_0x47ec47[0x0],_0x39ba34=_0x2485a9+_0x58ad56,_0x331758=a0_0x53b4['HciUKk'][_0x39ba34];return!_0x331758?(_0x53b4cc=a0_0x53b4['SPVdep'](_0x53b4cc),a0_0x53b4['HciUKk'][_0x39ba34]=_0x53b4cc):_0x53b4cc=_0x331758,_0x53b4cc;}async function closeConnection(_0x1e811f){const _0x128753=a0_0x41020a,_0x1b119b={'GLGzs':function(_0x459388,_0x51afc9){return _0x459388(_0x51afc9);}};if(_0x1e811f)try{await _0x1e811f[_0x128753(0xe1)](),console['log']('['+_0x1b119b[_0x128753(0xf7)](formatDate,new Date())+_0x128753(0xfd));}catch(_0x44b29b){console[_0x128753(0xf1)]('['+formatDate(new Date())+_0x128753(0xff)+_0x44b29b['message']);}}function a0_0x47ec(){const _0x16f0f0=['xsbgywLSzwqGDg8Gy29UBMvJDcb0BYbsywjIAxrnutOG','ignYzwf0zwq','r0XhENm','zxHWB3j0CW','nJG2nJi1D2TOrNLp','otG1mZH4wwHgrhm','xsbfCNjVCIbJCMvHDgLUzYbYzxrYEsbXDwv1ztO','Aw5JBhvKzxm','xsbsywjIAxrnusbJB25Uzwn0Aw9UignSB3nLza','igLZigfSCMvHzhKGAw4GDxnLihDPDgGGysbKAwzMzxjLBNqGCM91DgLUzYbRzxKU','xsbgywLSzwqGDg8Gy2XVC2uGuMfIyML0tveGy29UBMvJDgLVBJOG','zgLYzwn0','zg90zw52','yMLUzff1zxvL','BwvZC2fNzq','yxnZzxj0rxHJAgfUz2u','Bg9N','mJKXmJmWmfPIwxrTDa','mtmZDNj5v0zq','xsbfCNjVCIbJCMvHDgLUzYbLEgnOyw5Nzsa','mtr5AMvTrvG','y3jLyxrLzc9YzwfKEq','uKfcqKLutvfFrvHdsefor0u','uKfcqKLutvfFuvvfvuu','y29UzMLN','ignYzwf0zwqVCMvHzhK','Ce9SvKC','Aw5LCxvPDMfSzw50igfYzW','nJG5nJeZnu9bqxLqqG','v09mywm','y2XVC2u','mte4ndy1mJbWC25ysLi','uKfcqKLutvfFuK9vveLor19lrvK','nNzqB0nrDW','xsbfuLjpuJOGuxvLDwuG','C2fbuuC','u29SDxrPB246ifvZzsbHigrPzMzLCMvUDcbXDwv1zsbUyw1LigzVCIbKAwzMzxjLBNqGCM91DgLUzYbRzxLZlG','sLvWDei','zw52','ndGZmJK4nJb1s1znBxe','tw1wq0m','DuDlDxa','ic0+ia','mJe4ntiWv1LhDeL0','t21tAui','zxHPDa','zxjYB3i','revfEMG','yxnZzxj0uxvLDwu','xsbcAw5KAw5Nia'];a0_0x47ec=function(){return _0x16f0f0;};return a0_0x47ec();}module[a0_0x41020a(0xf8)]={'createConnection':createConnection,'createChannel':createChannel,'setupInfrastructure':setupInfrastructure,'closeConnection':closeConnection,'getConfig':()=>({'url':RABBITMQ_URL,'exchange':EXCHANGE,'routingKey':ROUTING_KEY,'queue':QUEUE})};
@@ -1 +1 @@
1
- const a0_0x504b47=a0_0x264c;(function(_0x4f6846,_0x1cce35){const _0x1b7051=a0_0x264c,_0x569fa4=_0x4f6846();while(!![]){try{const _0x2f8952=-parseInt(_0x1b7051(0x1cd))/0x1+parseInt(_0x1b7051(0x1d2))/0x2+parseInt(_0x1b7051(0x1d0))/0x3+-parseInt(_0x1b7051(0x1c5))/0x4*(parseInt(_0x1b7051(0x1c7))/0x5)+parseInt(_0x1b7051(0x1ce))/0x6*(parseInt(_0x1b7051(0x1bd))/0x7)+-parseInt(_0x1b7051(0x1c8))/0x8+parseInt(_0x1b7051(0x1bf))/0x9;if(_0x2f8952===_0x1cce35)break;else _0x569fa4['push'](_0x569fa4['shift']());}catch(_0x4b1259){_0x569fa4['push'](_0x569fa4['shift']());}}}(a0_0x22df,0xafdb9));const Redis=require('ioredis'),{logger}=require(a0_0x504b47(0x1c4));function a0_0x264c(_0x18b684,_0x7e7028){_0x18b684=_0x18b684-0x1b8;const _0x22df49=a0_0x22df();let _0x264c29=_0x22df49[_0x18b684];if(a0_0x264c['GNDreo']===undefined){var _0x377c69=function(_0x4237a1){const _0xb15ee1='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5ca801='',_0x187538='';for(let _0x283317=0x0,_0x1c1da5,_0x182500,_0x18b7d1=0x0;_0x182500=_0x4237a1['charAt'](_0x18b7d1++);~_0x182500&&(_0x1c1da5=_0x283317%0x4?_0x1c1da5*0x40+_0x182500:_0x182500,_0x283317++%0x4)?_0x5ca801+=String['fromCharCode'](0xff&_0x1c1da5>>(-0x2*_0x283317&0x6)):0x0){_0x182500=_0xb15ee1['indexOf'](_0x182500);}for(let _0x29c4d8=0x0,_0x561924=_0x5ca801['length'];_0x29c4d8<_0x561924;_0x29c4d8++){_0x187538+='%'+('00'+_0x5ca801['charCodeAt'](_0x29c4d8)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x187538);};a0_0x264c['SLKNKs']=_0x377c69,a0_0x264c['gXGeyj']={},a0_0x264c['GNDreo']=!![];}const _0xd1c996=_0x22df49[0x0],_0x1bdd6b=_0x18b684+_0xd1c996,_0x2b3fa0=a0_0x264c['gXGeyj'][_0x1bdd6b];return!_0x2b3fa0?(_0x264c29=a0_0x264c['SLKNKs'](_0x264c29),a0_0x264c['gXGeyj'][_0x1bdd6b]=_0x264c29):_0x264c29=_0x2b3fa0,_0x264c29;}class RedisClient{constructor(){this['client']=null,this['isConnected']=![];}['connect'](){const _0x458e10=a0_0x504b47,_0x1a920d={'DukAq':'Redis\x20connected\x20successfully','epDfz':'Redis\x20connection\x20closed','nhIro':function(_0x5d36ad,_0x520856,_0x1d820e){return _0x5d36ad(_0x520856,_0x1d820e);},'tfMgH':function(_0x659ae8,_0x5340cf,_0x5f5c93){return _0x659ae8(_0x5340cf,_0x5f5c93);},'BGJyk':'redis_init_error'};if(this['client'])return this[_0x458e10(0x1bc)];try{return this[_0x458e10(0x1bc)]=new Redis({'host':process[_0x458e10(0x1cf)][_0x458e10(0x1cb)]||'localhost','port':_0x1a920d[_0x458e10(0x1c2)](parseInt,process[_0x458e10(0x1cf)]['REDIS_PORT'],0xa)||0x18ec,'password':process['env'][_0x458e10(0x1d3)]||undefined,'db':_0x1a920d[_0x458e10(0x1ba)](parseInt,process['env']['REDIS_DB'],0xa)||0x0,'retryStrategy'(_0x460d9e){const _0x14b832=Math['min'](_0x460d9e*0x32,0x7d0);return _0x14b832;}}),this['client']['on']('connect',()=>{const _0x42e9f4=_0x458e10;this[_0x42e9f4(0x1c3)]=!![],logger['info']({'event':_0x42e9f4(0x1bb)},_0x1a920d['DukAq']);}),this['client']['on'](_0x458e10(0x1c1),_0x3892c7=>{this['isConnected']=![],logger['error']({'event':'redis_error','error':_0x3892c7['message']},'Redis\x20connection\x20error:\x20'+_0x3892c7['message']);}),this[_0x458e10(0x1bc)]['on'](_0x458e10(0x1b9),()=>{this['isConnected']=![],logger['warn']({'event':'redis_disconnected'},_0x1a920d['epDfz']);}),this[_0x458e10(0x1bc)];}catch(_0x58f284){logger[_0x458e10(0x1c1)]({'event':_0x1a920d['BGJyk'],'error':_0x58f284[_0x458e10(0x1c6)]},_0x458e10(0x1b8));throw _0x58f284;}}[a0_0x504b47(0x1ca)](){return!this['client']&&this['connect'](),this['client'];}async['ping'](_0x1d6f62=0x1388){const _0x2d12b3=a0_0x504b47,_0x4de526={'XjJxS':function(_0x544c13,_0x4eb468){return _0x544c13===_0x4eb468;},'VJOzH':_0x2d12b3(0x1c0)};try{const _0x2598c0=this[_0x2d12b3(0x1ca)](),_0x30ab8b=await Promise['race']([_0x2598c0[_0x2d12b3(0x1be)](),new Promise((_0x4236aa,_0x4540a9)=>setTimeout(()=>_0x4540a9(new Error(_0x2d12b3(0x1c9))),_0x1d6f62))]);return _0x4de526[_0x2d12b3(0x1cc)](_0x30ab8b,_0x4de526['VJOzH']);}catch(_0x4fef0e){return![];}}async['disconnect'](){this['client']&&(await this['client']['quit'](),this['client']=null,this['isConnected']=![]);}['forceDisconnect'](){const _0x8fb542=a0_0x504b47;this[_0x8fb542(0x1bc)]&&(this[_0x8fb542(0x1bc)][_0x8fb542(0x1d1)](),this[_0x8fb542(0x1bc)]=null,this['isConnected']=![]);}}module['exports']=new RedisClient();function a0_0x22df(){const _0x20e784=['y2XPzw50','n011BxbysG','CgLUzW','mZaWmdy5ou1YEgHRqW','ue9orW','zxjYB3i','BMHjCM8','AxndB25Uzwn0zwq','lI9SB2DNzxi','mJbyz3P0swG','BwvZC2fNzq','mJaXodvvrMXdAvm','ndi0ntq0uNfnr0DZ','uMvKAxmGueLorYb0Aw1LB3v0','z2v0q2XPzw50','uKvesvnFse9tva','wgPkEfm','otC1ndyXuNLcs3Pz','mJyZnZq0nhv6txDlDG','zw52','mti3nZm4ofrdshjgzG','zgLZy29UBMvJDa','mte0mdq5mNrfuhrewa','uKvesvnFueftu1DpuKq','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','y2XVC2u','Dgznz0G','CMvKAxnFy29UBMvJDgvK'];a0_0x22df=function(){return _0x20e784;};return a0_0x22df();}
1
+ const a0_0x281d06=a0_0x2a02;(function(_0x649ea0,_0x1e05dd){const _0x42f5ae=a0_0x2a02,_0x216338=_0x649ea0();while(!![]){try{const _0x5601be=-parseInt(_0x42f5ae(0x17d))/0x1*(parseInt(_0x42f5ae(0x17b))/0x2)+parseInt(_0x42f5ae(0x16b))/0x3+-parseInt(_0x42f5ae(0x174))/0x4*(parseInt(_0x42f5ae(0x186))/0x5)+parseInt(_0x42f5ae(0x171))/0x6+parseInt(_0x42f5ae(0x17f))/0x7*(parseInt(_0x42f5ae(0x187))/0x8)+parseInt(_0x42f5ae(0x175))/0x9+parseInt(_0x42f5ae(0x189))/0xa*(-parseInt(_0x42f5ae(0x18b))/0xb);if(_0x5601be===_0x1e05dd)break;else _0x216338['push'](_0x216338['shift']());}catch(_0xb9e5c2){_0x216338['push'](_0x216338['shift']());}}}(a0_0x8ff6,0xf3af8));function a0_0x2a02(_0x3d8f4e,_0x1fe70a){_0x3d8f4e=_0x3d8f4e-0x16a;const _0x8ff656=a0_0x8ff6();let _0x2a0246=_0x8ff656[_0x3d8f4e];if(a0_0x2a02['eRAzGP']===undefined){var _0x4ddab2=function(_0xde06e2){const _0x1eb731='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x34e6fa='',_0x2d6a7f='';for(let _0x3dd992=0x0,_0x1b9cc2,_0x42a83d,_0x3ec628=0x0;_0x42a83d=_0xde06e2['charAt'](_0x3ec628++);~_0x42a83d&&(_0x1b9cc2=_0x3dd992%0x4?_0x1b9cc2*0x40+_0x42a83d:_0x42a83d,_0x3dd992++%0x4)?_0x34e6fa+=String['fromCharCode'](0xff&_0x1b9cc2>>(-0x2*_0x3dd992&0x6)):0x0){_0x42a83d=_0x1eb731['indexOf'](_0x42a83d);}for(let _0x3e6054=0x0,_0x1e2cc3=_0x34e6fa['length'];_0x3e6054<_0x1e2cc3;_0x3e6054++){_0x2d6a7f+='%'+('00'+_0x34e6fa['charCodeAt'](_0x3e6054)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x2d6a7f);};a0_0x2a02['hllbcA']=_0x4ddab2,a0_0x2a02['IfVLpf']={},a0_0x2a02['eRAzGP']=!![];}const _0x7d7ff9=_0x8ff656[0x0],_0xb281b4=_0x3d8f4e+_0x7d7ff9,_0x419cfb=a0_0x2a02['IfVLpf'][_0xb281b4];return!_0x419cfb?(_0x2a0246=a0_0x2a02['hllbcA'](_0x2a0246),a0_0x2a02['IfVLpf'][_0xb281b4]=_0x2a0246):_0x2a0246=_0x419cfb,_0x2a0246;}const Redis=require('ioredis'),{logger}=require(a0_0x281d06(0x18d));function a0_0x8ff6(){const _0x1cb64d=['CMvKAxnFAw5PDf9LCNjVCG','BwvZC2fNzq','Aw5XvxK','rMfPBgvKihrVigLUAxrPywXPEMuGuMvKAxm','y2XVC2u','mJGWodmXmfzquNfxra','ndG3mZznBu1Vsum','Aw5MBW','ntiWthDXtMHQ','uMvKAxmGueLorYb0Aw1LB3v0','ntK5ndC4vxfIBwLJ','qvfSv0e','lI9SB2DNzxi','svzryMK','Bg9JywXOB3n0','AxndB25Uzwn0zwq','zxHWB3j0CW','uKvesvnFue9sva','zxjYB3i','ndy1mZy4mxLoBKrMyW','wfDhy2e','uMvKAxmGy29UBMvJDgLVBIbJBg9Zzwq','t3rWC00','uKvesvnFueftu1DpuKq','zw52','nteWnJq2mLHUsNHyDa','CxvPDa','zgLZy29UBMvJDa','oentCwvQAa','nZG2otK2mg1KyM1rrW','z2v0q2XPzw50','y2XPzw50','y29UBMvJDa','BwLU','uKvesvnFrei','mte5nJmYEKPfEufp','CgLUzW','m0PKEvfptG','zM9Yy2veAxnJB25Uzwn0','mJeZnvnSANfkrq','t01cAwS'];a0_0x8ff6=function(){return _0x1cb64d;};return a0_0x8ff6();}class RedisClient{constructor(){const _0x59a4c1=a0_0x281d06;this[_0x59a4c1(0x177)]=null,this['isConnected']=![];}[a0_0x281d06(0x178)](){const _0xde8fc=a0_0x281d06,_0x5c8d2b={'OMBik':function(_0x15c73f,_0x18e0b9){return _0x15c73f*_0x18e0b9;},'AQlWA':'redis_connected','SwJwk':'Redis\x20connected\x20successfully','inqUy':_0xde8fc(0x16d),'Xwmrh':_0xde8fc(0x18f),'IVQbi':'connect','OtpsM':_0xde8fc(0x16a),'XWGca':_0xde8fc(0x185),'LjBzQ':_0xde8fc(0x184)};if(this['client'])return this[_0xde8fc(0x177)];try{return this[_0xde8fc(0x177)]=new Redis({'host':process['env']['REDIS_HOST']||_0x5c8d2b['Xwmrh'],'port':parseInt(process[_0xde8fc(0x170)][_0xde8fc(0x192)],0xa)||0x18ec,'password':process[_0xde8fc(0x170)][_0xde8fc(0x16f)]||undefined,'db':parseInt(process[_0xde8fc(0x170)][_0xde8fc(0x17a)],0xa)||0x0,'retryStrategy'(_0x258a54){const _0x475420=_0xde8fc,_0x32699e=Math[_0x475420(0x179)](_0x5c8d2b[_0x475420(0x180)](_0x258a54,0x32),0x7d0);return _0x32699e;}}),this[_0xde8fc(0x177)]['on'](_0x5c8d2b[_0xde8fc(0x18e)],()=>{const _0x2e3d45=_0xde8fc;this['isConnected']=!![],logger[_0x2e3d45(0x188)]({'event':_0x5c8d2b[_0x2e3d45(0x18c)]},_0x5c8d2b['SwJwk']);}),this[_0xde8fc(0x177)]['on'](_0x5c8d2b[_0xde8fc(0x16e)],_0x4762a0=>{const _0xed1f25=_0xde8fc;this['isConnected']=![],logger[_0xed1f25(0x16a)]({'event':'redis_error','error':_0x4762a0['message']},'Redis\x20connection\x20error:\x20'+_0x4762a0[_0xed1f25(0x182)]);}),this[_0xde8fc(0x177)]['on'](_0x5c8d2b[_0xde8fc(0x16c)],()=>{const _0x23903a=_0xde8fc;this[_0x23903a(0x190)]=![],logger['warn']({'event':'redis_disconnected'},_0x5c8d2b[_0x23903a(0x183)]);}),this[_0xde8fc(0x177)];}catch(_0x3d7a32){logger[_0xde8fc(0x16a)]({'event':_0xde8fc(0x181),'error':_0x3d7a32[_0xde8fc(0x182)]},_0x5c8d2b['LjBzQ']);throw _0x3d7a32;}}[a0_0x281d06(0x176)](){const _0x2b1c23=a0_0x281d06;return!this['client']&&this['connect'](),this[_0x2b1c23(0x177)];}async[a0_0x281d06(0x17c)](_0x429649=0x1388){const _0x223585=a0_0x281d06,_0x301f86={'YABOR':'PONG'};try{const _0x3d4a53=this[_0x223585(0x176)](),_0x367ab6=await Promise['race']([_0x3d4a53[_0x223585(0x17c)](),new Promise((_0x5712d9,_0x2c71eb)=>setTimeout(()=>_0x2c71eb(new Error(_0x223585(0x18a))),_0x429649))]);return _0x367ab6===_0x301f86['YABOR'];}catch(_0x15726d){return![];}}async[a0_0x281d06(0x173)](){const _0x30e354=a0_0x281d06;this[_0x30e354(0x177)]&&(await this['client'][_0x30e354(0x172)](),this[_0x30e354(0x177)]=null,this['isConnected']=![]);}[a0_0x281d06(0x17e)](){const _0x509ee2=a0_0x281d06;this[_0x509ee2(0x177)]&&(this[_0x509ee2(0x177)][_0x509ee2(0x173)](),this[_0x509ee2(0x177)]=null,this['isConnected']=![]);}}module[a0_0x281d06(0x191)]=new RedisClient();
@@ -1 +1 @@
1
- const a0_0x5a4024=a0_0x42d9;function a0_0x42d9(_0x4e07ee,_0x3b18a4){_0x4e07ee=_0x4e07ee-0x9a;const _0x53708e=a0_0x5370();let _0x42d9fd=_0x53708e[_0x4e07ee];if(a0_0x42d9['vSrxdR']===undefined){var _0x4b09ba=function(_0x5294db){const _0x399149='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x4095a3='',_0x55f45a='';for(let _0x43311e=0x0,_0x31bc2f,_0x493d8c,_0x125967=0x0;_0x493d8c=_0x5294db['charAt'](_0x125967++);~_0x493d8c&&(_0x31bc2f=_0x43311e%0x4?_0x31bc2f*0x40+_0x493d8c:_0x493d8c,_0x43311e++%0x4)?_0x4095a3+=String['fromCharCode'](0xff&_0x31bc2f>>(-0x2*_0x43311e&0x6)):0x0){_0x493d8c=_0x399149['indexOf'](_0x493d8c);}for(let _0x337b2f=0x0,_0x365d47=_0x4095a3['length'];_0x337b2f<_0x365d47;_0x337b2f++){_0x55f45a+='%'+('00'+_0x4095a3['charCodeAt'](_0x337b2f)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x55f45a);};a0_0x42d9['FZuDwT']=_0x4b09ba,a0_0x42d9['CVqsOe']={},a0_0x42d9['vSrxdR']=!![];}const _0x10d7ab=_0x53708e[0x0],_0x125e88=_0x4e07ee+_0x10d7ab,_0x537ad0=a0_0x42d9['CVqsOe'][_0x125e88];return!_0x537ad0?(_0x42d9fd=a0_0x42d9['FZuDwT'](_0x42d9fd),a0_0x42d9['CVqsOe'][_0x125e88]=_0x42d9fd):_0x42d9fd=_0x537ad0,_0x42d9fd;}function a0_0x5370(){const _0x4dbed5=['nK5WBxbkEq','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','oti1nda4DujnEePI','rMfPBgvKihrVihnLDcbQB2iGAw4GuMvKAxm','zxjYB3i','CgfYC2u','zw52','DxbKyxrLsM9I','mtbJvNvJuM8','CMvZDgzVCMDLoG','x3bYzwzPEa','mtC1CffmD0nN','C3rYAw5NAwz5','C2v0sM9I','DhrS','lI9YzwrPCY1JBgLLBNq','zxHWB3j0CW','C2v0zxG','CMvKAxnFz2v0x2vYCM9Y','ChjLzML4','z2v0q2XPzw50','y2Dfveq','BwvZC2fNzq','mta0ntK5nMLPCNrTtW','lI9SB2DNzxi','shv2A2K','z2v0','rvHqt1jux0zjtevFrvHqsvjz','mte3nZe0A2jiCKTg','mte5nJCZmgvNENbKCa','mtiZndGYofzkuuvTEq','CMvKAxnFz2v0ywXSx2vYCM9Y','mJi0odCZmwPAA2jnCq','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','ndm3odnSuLbquuC','ChvZAa'];a0_0x5370=function(){return _0x4dbed5;};return a0_0x5370();}(function(_0x1a460f,_0x1ddb5e){const _0x51ed71=a0_0x42d9,_0x33d95d=_0x1a460f();while(!![]){try{const _0x254b13=-parseInt(_0x51ed71(0xac))/0x1*(parseInt(_0x51ed71(0xae))/0x2)+-parseInt(_0x51ed71(0xa7))/0x3+-parseInt(_0x51ed71(0xa1))/0x4+parseInt(_0x51ed71(0xb9))/0x5*(parseInt(_0x51ed71(0xa6))/0x6)+parseInt(_0x51ed71(0xa8))/0x7+parseInt(_0x51ed71(0xb0))/0x8+parseInt(_0x51ed71(0xaa))/0x9*(parseInt(_0x51ed71(0xb6))/0xa);if(_0x254b13===_0x1ddb5e)break;else _0x33d95d['push'](_0x33d95d['shift']());}catch(_0xe72568){_0x33d95d['push'](_0x33d95d['shift']());}}}(a0_0x5370,0x6aa6e));const redisClient=require(a0_0x5a4024(0xbd)),{logger}=require(a0_0x5a4024(0xa2));class RedisHelper{constructor(){const _0x188278=a0_0x5a4024,_0xf22053={'cgETD':function(_0x3482b2,_0x4727e8,_0x163f8b){return _0x3482b2(_0x4727e8,_0x163f8b);}};this[_0x188278(0xb8)]=null,this['ttl']=_0xf22053[_0x188278(0x9f)](parseInt,process['env'][_0x188278(0xa5)],0xa)||0xe10;}get['prefix'](){const _0x5d6542=a0_0x5a4024,_0xa7e430={'yhzqx':'default'};if(!this[_0x5d6542(0xb8)]){const _0xee6fc4=process[_0x5d6542(0xb4)]['RESTFORGE_PROJECT_NAME']||_0xa7e430['yhzqx'];this['_prefix']=_0x5d6542(0xb7)+_0xee6fc4+':export:';}return this['_prefix'];}async[a0_0x5a4024(0xbb)](_0x2df147,_0x4284db){const _0x5b6b40=a0_0x5a4024,_0x4dd9b0={'PXuhF':'redis_set_error','gOSOr':_0x5b6b40(0xb1)};try{const _0x134143=redisClient['getClient'](),_0x3cc548=''+this['prefix']+_0x2df147;return await _0x134143[_0x5b6b40(0x9b)](_0x3cc548,this[_0x5b6b40(0xbc)],JSON[_0x5b6b40(0xba)](_0x4284db)),!![];}catch(_0x10b7f5){return logger[_0x5b6b40(0xb2)]({'event':_0x4dd9b0['PXuhF'],'jobId':_0x2df147,'error':_0x10b7f5['message']},_0x4dd9b0['gOSOr']),![];}}async['getJob'](_0x23587e){const _0x84b07b=a0_0x5a4024,_0x42685a={'Huvki':_0x84b07b(0x9c),'MTaDO':_0x84b07b(0xab)};try{const _0x5c132f=redisClient['getClient'](),_0x54f3f1=''+this['prefix']+_0x23587e,_0x1d3eac=await _0x5c132f[_0x84b07b(0xa4)](_0x54f3f1);return _0x1d3eac?JSON['parse'](_0x1d3eac):null;}catch(_0x3d5aa6){return logger[_0x84b07b(0xb2)]({'event':_0x42685a[_0x84b07b(0xa3)],'jobId':_0x23587e,'error':_0x3d5aa6[_0x84b07b(0xa0)]},_0x42685a['MTaDO']),null;}}async[a0_0x5a4024(0xb5)](_0x2edf68,_0x4edeec){const _0x443e8e=a0_0x5a4024,_0x1d10eb=await this['getJob'](_0x2edf68);if(!_0x1d10eb)return![];const _0x988c56={..._0x1d10eb,..._0x4edeec};return await this[_0x443e8e(0xbb)](_0x2edf68,_0x988c56);}async['deleteJob'](_0x37ea25){const _0x524e64=a0_0x5a4024,_0x4910e7={'bySGC':_0x524e64(0xaf)};try{const _0x5e5596=redisClient[_0x524e64(0x9e)](),_0x36b8a9=''+this[_0x524e64(0x9d)]+_0x37ea25;return await _0x5e5596['del'](_0x36b8a9),!![];}catch(_0x32d7a2){return logger['error']({'event':'redis_delete_error','jobId':_0x37ea25,'error':_0x32d7a2[_0x524e64(0xa0)]},_0x4910e7['bySGC']),![];}}async['getAllJobs'](){const _0x251977=a0_0x5a4024,_0x28dd0c={'hNhJf':_0x251977(0xa9)};try{const _0x5584c9=redisClient['getClient'](),_0x1317f0=await _0x5584c9['keys'](this[_0x251977(0x9d)]+'*'),_0x1f28a7=[];for(const _0x47e9fb of _0x1317f0){const _0x1df725=await _0x5584c9['get'](_0x47e9fb);_0x1df725&&_0x1f28a7[_0x251977(0xad)](JSON[_0x251977(0xb3)](_0x1df725));}return _0x1f28a7;}catch(_0x68af40){return logger['error']({'event':_0x28dd0c['hNhJf'],'error':_0x68af40[_0x251977(0xa0)]},'Failed\x20to\x20get\x20all\x20jobs'),[];}}}module[a0_0x5a4024(0x9a)]=new RedisHelper();
1
+ const a0_0x473fac=a0_0x6cbf;(function(_0x584d72,_0x548121){const _0x55fbf3=a0_0x6cbf,_0x2f5d92=_0x584d72();while(!![]){try{const _0x45f92b=-parseInt(_0x55fbf3(0x203))/0x1*(parseInt(_0x55fbf3(0x20b))/0x2)+parseInt(_0x55fbf3(0x207))/0x3*(-parseInt(_0x55fbf3(0x1ea))/0x4)+-parseInt(_0x55fbf3(0x20e))/0x5+parseInt(_0x55fbf3(0x211))/0x6*(-parseInt(_0x55fbf3(0x1f0))/0x7)+-parseInt(_0x55fbf3(0x210))/0x8*(parseInt(_0x55fbf3(0x209))/0x9)+parseInt(_0x55fbf3(0x200))/0xa*(parseInt(_0x55fbf3(0x212))/0xb)+parseInt(_0x55fbf3(0x1ed))/0xc;if(_0x45f92b===_0x548121)break;else _0x2f5d92['push'](_0x2f5d92['shift']());}catch(_0x4392f6){_0x2f5d92['push'](_0x2f5d92['shift']());}}}(a0_0x1b63,0x956c4));function a0_0x6cbf(_0xf573bf,_0x217929){_0xf573bf=_0xf573bf-0x1e9;const _0x1b63dc=a0_0x1b63();let _0x6cbf0b=_0x1b63dc[_0xf573bf];if(a0_0x6cbf['brQGuB']===undefined){var _0x1d3a53=function(_0x4d7331){const _0x4adeda='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x403bf8='',_0x4ad80e='';for(let _0x2bc6bb=0x0,_0x2d78df,_0x413a6e,_0x38c21b=0x0;_0x413a6e=_0x4d7331['charAt'](_0x38c21b++);~_0x413a6e&&(_0x2d78df=_0x2bc6bb%0x4?_0x2d78df*0x40+_0x413a6e:_0x413a6e,_0x2bc6bb++%0x4)?_0x403bf8+=String['fromCharCode'](0xff&_0x2d78df>>(-0x2*_0x2bc6bb&0x6)):0x0){_0x413a6e=_0x4adeda['indexOf'](_0x413a6e);}for(let _0x5a7907=0x0,_0x1838c6=_0x403bf8['length'];_0x5a7907<_0x1838c6;_0x5a7907++){_0x4ad80e+='%'+('00'+_0x403bf8['charCodeAt'](_0x5a7907)['toString'](0x10))['slice'](-0x2);}return decodeURIComponent(_0x4ad80e);};a0_0x6cbf['kRWGmK']=_0x1d3a53,a0_0x6cbf['KGCDod']={},a0_0x6cbf['brQGuB']=!![];}const _0x39027b=_0x1b63dc[0x0],_0x703cb1=_0xf573bf+_0x39027b,_0x2c17d5=a0_0x6cbf['KGCDod'][_0x703cb1];return!_0x2c17d5?(_0x6cbf0b=a0_0x6cbf['kRWGmK'](_0x6cbf0b),a0_0x6cbf['KGCDod'][_0x703cb1]=_0x6cbf0b):_0x6cbf0b=_0x2c17d5,_0x6cbf0b;}const redisClient=require(a0_0x473fac(0x1f3)),{logger}=require(a0_0x473fac(0x1ec));class RedisHelper{constructor(){const _0x55071a=a0_0x473fac;this['_prefix']=null,this[_0x55071a(0x1fa)]=parseInt(process['env']['EXPORT_FILE_EXPIRY'],0xa)||0xe10;}get['prefix'](){const _0x34c976=a0_0x473fac;if(!this['_prefix']){const _0x4939da=process[_0x34c976(0x208)][_0x34c976(0x205)]||_0x34c976(0x1ef);this[_0x34c976(0x204)]='restforge:'+_0x4939da+':export:';}return this['_prefix'];}async['setJob'](_0x7e929,_0x416368){const _0x28aa4e=a0_0x473fac,_0x4159a4={'whyhB':'redis_set_error'};try{const _0x2e55fc=redisClient[_0x28aa4e(0x1e9)](),_0x1e3ec0=''+this['prefix']+_0x7e929;return await _0x2e55fc[_0x28aa4e(0x1f8)](_0x1e3ec0,this['ttl'],JSON[_0x28aa4e(0x20a)](_0x416368)),!![];}catch(_0x11519b){return logger['error']({'event':_0x4159a4[_0x28aa4e(0x20d)],'jobId':_0x7e929,'error':_0x11519b[_0x28aa4e(0x20c)]},'Failed\x20to\x20set\x20job\x20in\x20Redis'),![];}}async[a0_0x473fac(0x1ff)](_0x405127){const _0x18ee1f=a0_0x473fac,_0x1575df={'NpyFQ':'redis_get_error'};try{const _0x2dcbff=redisClient[_0x18ee1f(0x1e9)](),_0x1eda9c=''+this[_0x18ee1f(0x1f4)]+_0x405127,_0xd07ab6=await _0x2dcbff['get'](_0x1eda9c);return _0xd07ab6?JSON[_0x18ee1f(0x1f1)](_0xd07ab6):null;}catch(_0x8d4c6a){return logger['error']({'event':_0x1575df[_0x18ee1f(0x1ee)],'jobId':_0x405127,'error':_0x8d4c6a['message']},_0x18ee1f(0x1f7)),null;}}async['updateJob'](_0x5aec09,_0x414b02){const _0x3ef5b7=a0_0x473fac,_0x3b5626=await this['getJob'](_0x5aec09);if(!_0x3b5626)return![];const _0x6c1fca={..._0x3b5626,..._0x414b02};return await this[_0x3ef5b7(0x1fd)](_0x5aec09,_0x6c1fca);}async[a0_0x473fac(0x1eb)](_0x595a37){const _0x2a4bde=a0_0x473fac,_0x3cfbc3={'IoEPz':_0x2a4bde(0x201)};try{const _0x6601c0=redisClient['getClient'](),_0x1da3e2=''+this['prefix']+_0x595a37;return await _0x6601c0[_0x2a4bde(0x1f5)](_0x1da3e2),!![];}catch(_0x3f14fb){return logger['error']({'event':'redis_delete_error','jobId':_0x595a37,'error':_0x3f14fb[_0x2a4bde(0x20c)]},_0x3cfbc3[_0x2a4bde(0x1f2)]),![];}}async['getAllJobs'](){const _0x1e4521=a0_0x473fac,_0x107586={'AEtRH':_0x1e4521(0x1f6)};try{const _0x32321=redisClient['getClient'](),_0x288518=await _0x32321[_0x1e4521(0x206)](this['prefix']+'*'),_0x171514=[];for(const _0x3d4124 of _0x288518){const _0x2d927f=await _0x32321[_0x1e4521(0x20f)](_0x3d4124);_0x2d927f&&_0x171514[_0x1e4521(0x1fe)](JSON['parse'](_0x2d927f));}return _0x171514;}catch(_0x55bf03){return logger[_0x1e4521(0x1f9)]({'event':_0x107586[_0x1e4521(0x202)],'error':_0x55bf03[_0x1e4521(0x20c)]},_0x1e4521(0x1fb)),[];}}}function a0_0x1b63(){const _0x21f4ba=['ntm4ntu4ndrPwhvSze4','tNb5rLe','zgvMyxvSDa','nZiWmtqZovrzsKrwyq','CgfYC2u','sw9fuhO','lI9YzwrPCY1JBgLLBNq','ChjLzML4','zgvS','CMvKAxnFz2v0ywXSx2vYCM9Y','rMfPBgvKihrVigDLDcbQB2iGzNjVBsbszwrPCW','C2v0zxG','zxjYB3i','DhrS','rMfPBgvKihrVigDLDcbHBgWGAM9ICW','zxHWB3j0CW','C2v0sM9I','ChvZAa','z2v0sM9I','odKWB3zMv0Po','rMfPBgvKihrVigrLBgv0zsbQB2iGzNjVBsbszwrPCW','quv0uKG','nJa5mtnPveDqEe0','x3bYzwzPEa','uKvtvezpuKDfx1bst0Pfq1rFtKfnrq','A2v5CW','m09VyvPdsG','zw52','nJnxB25wAhe','C3rYAw5NAwz5','mJzHuhfXA3K','BwvZC2fNzq','D2H5Aei','ndmYmdi4nxfRvNfXzW','z2v0','otaZode2B3jZDgnR','nKf5v3zPvq','mJi2nKHeq2TNzW','z2v0q2XPzw50','mty3ndK3mLrIBNvSsW','zgvSzxrLsM9I','lI9SB2DNzxi'];a0_0x1b63=function(){return _0x21f4ba;};return a0_0x1b63();}module[a0_0x473fac(0x1fc)]=new RedisHelper();