@cartanova/qgrid-cli 2.7.1 → 2.7.3

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 (1213) hide show
  1. package/README.ko.md +3 -2
  2. package/README.md +3 -2
  3. package/bundle/dist/application/monit/monit.frame.js +27 -14
  4. package/bundle/dist/application/monit/monit.types.js +22 -13
  5. package/bundle/dist/application/qgrid/conv-routing.js +21 -11
  6. package/bundle/dist/application/qgrid/oauth.js +1 -1
  7. package/bundle/dist/application/qgrid/qgrid-run-lifecycle.js +15 -4
  8. package/bundle/dist/application/qgrid/qgrid.dispatcher.js +18 -9
  9. package/bundle/dist/application/qgrid/qgrid.frame.js +50 -73
  10. package/bundle/dist/application/qgrid/qgrid.types.js +4 -1
  11. package/bundle/dist/application/qgrid/token-subscriber.js +5 -5
  12. package/bundle/dist/application/qgrid/tool-emulation-schema.js +13 -1
  13. package/bundle/dist/application/qgrid/tool-emulation.js +1 -1
  14. package/bundle/dist/application/queries.generated.js +3 -1
  15. package/bundle/dist/application/request-log/json-schema-type-text.js +55 -0
  16. package/bundle/dist/application/request-log/request-log.model.js +85 -3
  17. package/bundle/dist/application/request-log/request-log.types.js +3 -2
  18. package/bundle/dist/application/request-log/zod-code-format.js +71 -0
  19. package/bundle/dist/application/setting/setting.constant.js +2 -62
  20. package/bundle/dist/application/setting/setting.model.js +3 -3
  21. package/bundle/dist/application/setting/setting.store.js +2 -2
  22. package/bundle/dist/application/sonamu.generated.js +11 -4
  23. package/bundle/dist/application/sonamu.generated.sso.js +7 -3
  24. package/bundle/dist/i18n/sd.generated.js +5 -2
  25. package/bundle/dist/migrations/20260814130113_alter_request_logs_add1_alter1.js +15 -0
  26. package/bundle/dist/migrations/20260814131051_alter_request_logs_add1_alter1.js +15 -0
  27. package/bundle/dist/migrations/20260814134846_alter_request_logs_add1_alter1.js +15 -0
  28. package/bundle/dist/migrations/20260814140759_alter_request_logs_alter1.js +13 -0
  29. package/bundle/dist/node_modules/.pnpm/{vite@8.0.3_@emnapi_core@1.11.2_@emnapi_runtime@1.11.2_@types_node@25.0.7_esbuild@0.27.4_2519c2e8d8013fcbc7b443879bc9da6d → vite@8.0.3_@emnapi_core@1.11.2_@emnapi_runtime@1.11.2_@types_node@25.0.7_esbuild@0.27.4_5b35fc1fb85d2af4d105e0d74f940f50}/node_modules/vite/dist/node/module-runner.js +2 -2
  30. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/_commonjsHelpers.D26ty3Ew.js +2 -2
  31. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/benchmark.CX_oY03V.js +2 -2
  32. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/evaluatedModules.Dg1zASAC.js +3 -3
  33. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/index.Chj8NDwU.js +2 -2
  34. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/index.DdgEv5B1.js +2 -2
  35. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/rpc.MzXet3jl.js +2 -2
  36. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/test.DNmyFkvJ.js +2 -2
  37. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/chunks/utils.BX5Fg8C4.js +2 -2
  38. package/bundle/dist/node_modules/.pnpm/{vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_ms_f9cfcfeddd63e656d4010c98521af26c → vitest@4.1.10_@opentelemetry_api@1.9.0_@types_node@25.0.7_@vitest_coverage-v8@4.1.10_vi_a1977b93af7bb69308bcb1dbab39b618}/node_modules/vitest/dist/index.js +2 -2
  39. package/bundle/dist/sonamu.config.js +10 -9
  40. package/bundle/dist/testing/setup-mocks.js +2 -2
  41. package/bundle/dist/utils/providers/anthropic/anthropic-dispatcher.js +14 -2
  42. package/bundle/dist/utils/providers/anthropic/claude-session.js +1 -1
  43. package/bundle/dist/utils/providers/anthropic/stream-json-adapter.js +1 -1
  44. package/bundle/dist/utils/providers/common/model-cost.js +1 -1
  45. package/bundle/dist/utils/providers/common/schema-validation.js +1 -1
  46. package/bundle/dist/utils/providers/openai/openai-backend-protocol.js +144 -0
  47. package/bundle/dist/utils/providers/openai/openai-constants.js +4 -2
  48. package/bundle/dist/utils/providers/openai/openai-direct-client.js +327 -0
  49. package/bundle/dist/utils/providers/openai/openai-dispatcher.js +358 -781
  50. package/bundle/dist/utils/providers/openai/openai-oauth.js +84 -0
  51. package/bundle/dist/utils/providers/openai/openai-quota.js +76 -5
  52. package/bundle/dist/utils/providers/openai/openai-refresh.js +3 -3
  53. package/bundle/dist/utils/providers/openai/openai-sse.js +72 -0
  54. package/bundle/dist/utils/providers/openai/openai-transport-config.js +14 -0
  55. package/bundle/src/application/monit/monit.frame.test.ts +14 -17
  56. package/bundle/src/application/monit/monit.frame.ts +23 -12
  57. package/bundle/src/application/monit/monit.types.ts +40 -11
  58. package/bundle/src/application/qgrid/conv-routing.test.ts +67 -0
  59. package/bundle/src/application/qgrid/conv-routing.ts +46 -12
  60. package/bundle/src/application/qgrid/qgrid-oauth-redirect.test.ts +92 -2
  61. package/bundle/src/application/qgrid/qgrid-run-lifecycle.test.ts +3 -0
  62. package/bundle/src/application/qgrid/qgrid-run-lifecycle.ts +15 -1
  63. package/bundle/src/application/qgrid/qgrid.dispatcher.test.ts +36 -6
  64. package/bundle/src/application/qgrid/qgrid.dispatcher.ts +22 -9
  65. package/bundle/src/application/qgrid/qgrid.frame.ts +55 -94
  66. package/bundle/src/application/qgrid/qgrid.types.ts +11 -4
  67. package/bundle/src/application/qgrid/token-subscriber.ts +4 -4
  68. package/bundle/src/application/qgrid/tool-emulation-schema.ts +1 -1
  69. package/bundle/src/application/qgrid/tool-emulation.test.ts +1 -0
  70. package/bundle/src/application/queries.generated.ts +6 -0
  71. package/bundle/src/application/request-log/json-schema-type-text.test.ts +96 -0
  72. package/bundle/src/application/request-log/json-schema-type-text.ts +83 -0
  73. package/bundle/src/application/request-log/request-log.entity.json +147 -21
  74. package/bundle/src/application/request-log/request-log.model.ts +108 -0
  75. package/bundle/src/application/request-log/request-log.types.ts +2 -0
  76. package/bundle/src/application/request-log/zod-code-format.test.ts +31 -0
  77. package/bundle/src/application/request-log/zod-code-format.ts +73 -0
  78. package/bundle/src/application/setting/setting.constant.test.ts +22 -24
  79. package/bundle/src/application/setting/setting.constant.ts +2 -63
  80. package/bundle/src/application/setting/setting.entity.json +1 -1
  81. package/bundle/src/application/setting/setting.store.ts +1 -1
  82. package/bundle/src/application/sonamu.generated.http +20 -1
  83. package/bundle/src/application/sonamu.generated.sso.ts +4 -0
  84. package/bundle/src/application/sonamu.generated.ts +10 -0
  85. package/bundle/src/i18n/sd.generated.ts +6 -1
  86. package/bundle/src/migrations/20260814130113_alter_request_logs_add1_alter1.ts +15 -0
  87. package/bundle/src/migrations/20260814131051_alter_request_logs_add1_alter1.ts +15 -0
  88. package/bundle/src/migrations/20260814134846_alter_request_logs_add1_alter1.ts +15 -0
  89. package/bundle/src/migrations/20260814140759_alter_request_logs_alter1.ts +13 -0
  90. package/bundle/src/sonamu.config.ts +9 -13
  91. package/bundle/src/utils/providers/anthropic/anthropic-dispatcher.ts +17 -2
  92. package/bundle/src/utils/providers/anthropic/claude-session.ts +1 -3
  93. package/bundle/src/utils/providers/anthropic/stream-json-adapter.test.ts +1 -2
  94. package/bundle/src/utils/providers/anthropic/stream-json-adapter.ts +2 -3
  95. package/bundle/src/utils/providers/common/model-cost.ts +4 -9
  96. package/bundle/src/utils/providers/common/provider-dispatcher.ts +10 -8
  97. package/bundle/src/utils/providers/common/provider-types.ts +48 -0
  98. package/bundle/src/utils/providers/common/schema-validation.ts +1 -1
  99. package/bundle/src/utils/providers/openai/openai-backend-protocol.test.ts +106 -0
  100. package/bundle/src/utils/providers/openai/openai-backend-protocol.ts +255 -0
  101. package/bundle/src/utils/providers/openai/openai-constants.ts +2 -0
  102. package/bundle/src/utils/providers/openai/openai-direct-client.test.ts +610 -0
  103. package/bundle/src/utils/providers/openai/openai-direct-client.ts +478 -0
  104. package/bundle/src/utils/providers/openai/openai-dispatcher.test.ts +336 -1723
  105. package/bundle/src/utils/providers/openai/openai-dispatcher.ts +458 -1175
  106. package/bundle/src/utils/providers/openai/openai-oauth.test.ts +95 -0
  107. package/bundle/src/utils/providers/openai/openai-oauth.ts +141 -0
  108. package/bundle/src/utils/providers/openai/openai-quota.test.ts +80 -7
  109. package/bundle/src/utils/providers/openai/openai-quota.ts +105 -4
  110. package/bundle/src/utils/providers/openai/openai-refresh.test.ts +120 -0
  111. package/bundle/src/utils/providers/openai/openai-refresh.ts +3 -1
  112. package/bundle/src/utils/providers/openai/openai-sse.test.ts +52 -0
  113. package/bundle/src/utils/providers/openai/openai-sse.ts +79 -0
  114. package/bundle/src/utils/providers/openai/openai-transport-config.ts +17 -0
  115. package/bundle/web-dist/client/assets/index-BldeEvAK.css +1 -0
  116. package/bundle/web-dist/client/assets/index-QxWJK2qE.js +106 -0
  117. package/bundle/web-dist/client/assets/logs-DaNYzis5.js +1 -0
  118. package/bundle/web-dist/client/assets/monit-BngOoU4n.js +1 -0
  119. package/bundle/web-dist/client/assets/{routes-J4bnHVfl.js → routes-BnQE0rPF.js} +1 -1
  120. package/bundle/web-dist/client/assets/{services.generated-jGypfumC.js → services.generated-CSW8bhCP.js} +4 -4
  121. package/bundle/web-dist/client/assets/settings-CPeAjsL3.js +1 -0
  122. package/bundle/web-dist/client/assets/show-DUOfuZj1.js +2 -0
  123. package/bundle/web-dist/client/assets/{tokens-DDrATjGA.js → tokens-LHoEigmF.js} +1 -1
  124. package/bundle/web-dist/client/assets/{use-oauth-login-flow-CptleCFM.js → use-oauth-login-flow-YyU4TDzU.js} +1 -1
  125. package/bundle/web-dist/client/index.html +3 -3
  126. package/bundle/web-dist/server/assets/{lazyRouteComponent-DOc8TV-P.js → lazyRouteComponent-0y-znAfz.js} +2 -2
  127. package/bundle/web-dist/server/assets/{logs-CfF3nmLM.js → logs-CJBbHM3_.js} +35 -5
  128. package/bundle/web-dist/server/assets/{monit-BSaKhh5D.js → monit-8WAsPETB.js} +144 -51
  129. package/bundle/web-dist/server/assets/{plus-DLFUHsfx.js → plus-9das21ju.js} +1 -1
  130. package/bundle/web-dist/server/assets/{react-dom-BotjLnTK.js → react-dom-zmEq8BVp.js} +1 -1
  131. package/bundle/web-dist/server/assets/{routes-CHMxrTT0.js → routes-B6bX3o41.js} +3 -3
  132. package/bundle/web-dist/server/assets/{services.generated-D3Q3FYot.js → services.generated-DyPeBI00.js} +76 -2
  133. package/bundle/web-dist/server/assets/{settings-DOQjV28c.js → settings-D1u5WdpP.js} +2 -3
  134. package/bundle/web-dist/server/assets/{show-Cn_C6Qvl.js → show-Cr7vwR0l.js} +93 -8
  135. package/bundle/web-dist/server/assets/{tokens-c0EN3iCx.js → tokens-BumM0gnH.js} +3 -3
  136. package/bundle/web-dist/server/assets/{use-oauth-login-flow-B68AbMDE.js → use-oauth-login-flow-DmsHGOlx.js} +1 -1
  137. package/bundle/web-dist/server/entry-server.generated.js +12 -12
  138. package/dist/cli.d.ts +10 -1
  139. package/dist/cli.js +1 -6
  140. package/package.json +11 -5
  141. package/skills/qgrid/SKILL.md +5 -5
  142. package/skills/qgrid/references/ai-sdk-provider-contract.md +16 -10
  143. package/skills/qgrid/references/cli-env-and-server-boot.md +6 -13
  144. package/skills/qgrid/references/decision-rationale.md +15 -23
  145. package/skills/qgrid/references/docs-workflow.md +1 -1
  146. package/skills/qgrid/references/openai-codex-runtime.md +39 -156
  147. package/skills/qgrid/references/prompt-cache-and-usage.md +35 -71
  148. package/skills/qgrid/references/provider-runtime-differences.md +17 -17
  149. package/skills/qgrid/references/repo-map.md +2 -2
  150. package/skills/qgrid/references/request-log-run-lifecycle.md +12 -2
  151. package/skills/qgrid/references/sonamu-api-web-flow.md +4 -0
  152. package/skills/qgrid/references/token-auth-quota-lifecycle.md +14 -24
  153. package/skills/qgrid/references/tool-calling-and-multiturn.md +3 -3
  154. package/skills/qgrid/references/verification-and-debugging.md +17 -15
  155. package/bundle/dist/codex-protocol/AgentPath.js +0 -1
  156. package/bundle/dist/codex-protocol/ApplyPatchApprovalParams.js +0 -1
  157. package/bundle/dist/codex-protocol/ApplyPatchApprovalResponse.js +0 -1
  158. package/bundle/dist/codex-protocol/AuthMode.js +0 -1
  159. package/bundle/dist/codex-protocol/ClientInfo.js +0 -1
  160. package/bundle/dist/codex-protocol/ClientNotification.js +0 -1
  161. package/bundle/dist/codex-protocol/ClientRequest.js +0 -1
  162. package/bundle/dist/codex-protocol/CollaborationMode.js +0 -1
  163. package/bundle/dist/codex-protocol/ContentItem.js +0 -1
  164. package/bundle/dist/codex-protocol/ConversationGitInfo.js +0 -1
  165. package/bundle/dist/codex-protocol/ConversationSummary.js +0 -1
  166. package/bundle/dist/codex-protocol/ExecCommandApprovalParams.js +0 -1
  167. package/bundle/dist/codex-protocol/ExecCommandApprovalResponse.js +0 -1
  168. package/bundle/dist/codex-protocol/ExecPolicyAmendment.js +0 -1
  169. package/bundle/dist/codex-protocol/FileChange.js +0 -1
  170. package/bundle/dist/codex-protocol/ForcedLoginMethod.js +0 -1
  171. package/bundle/dist/codex-protocol/FunctionCallOutputBody.js +0 -1
  172. package/bundle/dist/codex-protocol/FunctionCallOutputContentItem.js +0 -1
  173. package/bundle/dist/codex-protocol/FuzzyFileSearchMatchType.js +0 -1
  174. package/bundle/dist/codex-protocol/FuzzyFileSearchParams.js +0 -1
  175. package/bundle/dist/codex-protocol/FuzzyFileSearchResponse.js +0 -1
  176. package/bundle/dist/codex-protocol/FuzzyFileSearchResult.js +0 -1
  177. package/bundle/dist/codex-protocol/FuzzyFileSearchSessionCompletedNotification.js +0 -1
  178. package/bundle/dist/codex-protocol/FuzzyFileSearchSessionUpdatedNotification.js +0 -1
  179. package/bundle/dist/codex-protocol/GetAuthStatusParams.js +0 -1
  180. package/bundle/dist/codex-protocol/GetAuthStatusResponse.js +0 -1
  181. package/bundle/dist/codex-protocol/GetConversationSummaryParams.js +0 -1
  182. package/bundle/dist/codex-protocol/GetConversationSummaryResponse.js +0 -1
  183. package/bundle/dist/codex-protocol/GitDiffToRemoteParams.js +0 -1
  184. package/bundle/dist/codex-protocol/GitDiffToRemoteResponse.js +0 -1
  185. package/bundle/dist/codex-protocol/GitSha.js +0 -1
  186. package/bundle/dist/codex-protocol/ImageDetail.js +0 -1
  187. package/bundle/dist/codex-protocol/InitializeCapabilities.js +0 -1
  188. package/bundle/dist/codex-protocol/InitializeParams.js +0 -1
  189. package/bundle/dist/codex-protocol/InitializeResponse.js +0 -1
  190. package/bundle/dist/codex-protocol/InputModality.js +0 -1
  191. package/bundle/dist/codex-protocol/InternalSessionSource.js +0 -1
  192. package/bundle/dist/codex-protocol/LocalShellAction.js +0 -1
  193. package/bundle/dist/codex-protocol/LocalShellExecAction.js +0 -1
  194. package/bundle/dist/codex-protocol/LocalShellStatus.js +0 -1
  195. package/bundle/dist/codex-protocol/MessagePhase.js +0 -1
  196. package/bundle/dist/codex-protocol/ModeKind.js +0 -1
  197. package/bundle/dist/codex-protocol/NetworkPolicyAmendment.js +0 -1
  198. package/bundle/dist/codex-protocol/NetworkPolicyRuleAction.js +0 -1
  199. package/bundle/dist/codex-protocol/ParsedCommand.js +0 -1
  200. package/bundle/dist/codex-protocol/Personality.js +0 -1
  201. package/bundle/dist/codex-protocol/PlanType.js +0 -1
  202. package/bundle/dist/codex-protocol/RealtimeConversationVersion.js +0 -1
  203. package/bundle/dist/codex-protocol/RealtimeOutputModality.js +0 -1
  204. package/bundle/dist/codex-protocol/RealtimeVoice.js +0 -1
  205. package/bundle/dist/codex-protocol/RealtimeVoicesList.js +0 -1
  206. package/bundle/dist/codex-protocol/ReasoningEffort.js +0 -1
  207. package/bundle/dist/codex-protocol/ReasoningItemContent.js +0 -1
  208. package/bundle/dist/codex-protocol/ReasoningItemReasoningSummary.js +0 -1
  209. package/bundle/dist/codex-protocol/ReasoningSummary.js +0 -1
  210. package/bundle/dist/codex-protocol/RequestId.js +0 -1
  211. package/bundle/dist/codex-protocol/Resource.js +0 -1
  212. package/bundle/dist/codex-protocol/ResourceContent.js +0 -1
  213. package/bundle/dist/codex-protocol/ResourceTemplate.js +0 -1
  214. package/bundle/dist/codex-protocol/ResponseItem.js +0 -1
  215. package/bundle/dist/codex-protocol/ReviewDecision.js +0 -1
  216. package/bundle/dist/codex-protocol/ServerNotification.js +0 -1
  217. package/bundle/dist/codex-protocol/ServerRequest.js +0 -1
  218. package/bundle/dist/codex-protocol/SessionSource.js +0 -1
  219. package/bundle/dist/codex-protocol/Settings.js +0 -1
  220. package/bundle/dist/codex-protocol/SubAgentSource.js +0 -1
  221. package/bundle/dist/codex-protocol/ThreadId.js +0 -1
  222. package/bundle/dist/codex-protocol/ThreadMemoryMode.js +0 -1
  223. package/bundle/dist/codex-protocol/Tool.js +0 -1
  224. package/bundle/dist/codex-protocol/Verbosity.js +0 -1
  225. package/bundle/dist/codex-protocol/WebSearchAction.js +0 -1
  226. package/bundle/dist/codex-protocol/WebSearchContextSize.js +0 -1
  227. package/bundle/dist/codex-protocol/WebSearchLocation.js +0 -1
  228. package/bundle/dist/codex-protocol/WebSearchMode.js +0 -1
  229. package/bundle/dist/codex-protocol/WebSearchToolConfig.js +0 -1
  230. package/bundle/dist/codex-protocol/index.js +0 -2
  231. package/bundle/dist/codex-protocol/serde_json/JsonValue.js +0 -1
  232. package/bundle/dist/codex-protocol/v2/Account.js +0 -1
  233. package/bundle/dist/codex-protocol/v2/AccountLoginCompletedNotification.js +0 -1
  234. package/bundle/dist/codex-protocol/v2/AccountRateLimitsUpdatedNotification.js +0 -1
  235. package/bundle/dist/codex-protocol/v2/AccountUpdatedNotification.js +0 -1
  236. package/bundle/dist/codex-protocol/v2/ActivePermissionProfile.js +0 -1
  237. package/bundle/dist/codex-protocol/v2/ActivePermissionProfileModification.js +0 -1
  238. package/bundle/dist/codex-protocol/v2/AddCreditsNudgeCreditType.js +0 -1
  239. package/bundle/dist/codex-protocol/v2/AddCreditsNudgeEmailStatus.js +0 -1
  240. package/bundle/dist/codex-protocol/v2/AdditionalFileSystemPermissions.js +0 -1
  241. package/bundle/dist/codex-protocol/v2/AdditionalNetworkPermissions.js +0 -1
  242. package/bundle/dist/codex-protocol/v2/AdditionalPermissionProfile.js +0 -1
  243. package/bundle/dist/codex-protocol/v2/AgentMessageDeltaNotification.js +0 -1
  244. package/bundle/dist/codex-protocol/v2/AnalyticsConfig.js +0 -1
  245. package/bundle/dist/codex-protocol/v2/AppBranding.js +0 -1
  246. package/bundle/dist/codex-protocol/v2/AppInfo.js +0 -1
  247. package/bundle/dist/codex-protocol/v2/AppListUpdatedNotification.js +0 -1
  248. package/bundle/dist/codex-protocol/v2/AppMetadata.js +0 -1
  249. package/bundle/dist/codex-protocol/v2/AppReview.js +0 -1
  250. package/bundle/dist/codex-protocol/v2/AppScreenshot.js +0 -1
  251. package/bundle/dist/codex-protocol/v2/AppSummary.js +0 -1
  252. package/bundle/dist/codex-protocol/v2/AppToolApproval.js +0 -1
  253. package/bundle/dist/codex-protocol/v2/AppToolsConfig.js +0 -1
  254. package/bundle/dist/codex-protocol/v2/ApprovalsReviewer.js +0 -1
  255. package/bundle/dist/codex-protocol/v2/AppsConfig.js +0 -1
  256. package/bundle/dist/codex-protocol/v2/AppsDefaultConfig.js +0 -1
  257. package/bundle/dist/codex-protocol/v2/AppsListParams.js +0 -1
  258. package/bundle/dist/codex-protocol/v2/AppsListResponse.js +0 -1
  259. package/bundle/dist/codex-protocol/v2/AskForApproval.js +0 -1
  260. package/bundle/dist/codex-protocol/v2/AutoReviewDecisionSource.js +0 -1
  261. package/bundle/dist/codex-protocol/v2/ByteRange.js +0 -1
  262. package/bundle/dist/codex-protocol/v2/CancelLoginAccountParams.js +0 -1
  263. package/bundle/dist/codex-protocol/v2/CancelLoginAccountResponse.js +0 -1
  264. package/bundle/dist/codex-protocol/v2/CancelLoginAccountStatus.js +0 -1
  265. package/bundle/dist/codex-protocol/v2/ChatgptAuthTokensRefreshParams.js +0 -1
  266. package/bundle/dist/codex-protocol/v2/ChatgptAuthTokensRefreshReason.js +0 -1
  267. package/bundle/dist/codex-protocol/v2/ChatgptAuthTokensRefreshResponse.js +0 -1
  268. package/bundle/dist/codex-protocol/v2/CodexErrorInfo.js +0 -1
  269. package/bundle/dist/codex-protocol/v2/CollabAgentState.js +0 -1
  270. package/bundle/dist/codex-protocol/v2/CollabAgentStatus.js +0 -1
  271. package/bundle/dist/codex-protocol/v2/CollabAgentTool.js +0 -1
  272. package/bundle/dist/codex-protocol/v2/CollabAgentToolCallStatus.js +0 -1
  273. package/bundle/dist/codex-protocol/v2/CollaborationModeMask.js +0 -1
  274. package/bundle/dist/codex-protocol/v2/CommandAction.js +0 -1
  275. package/bundle/dist/codex-protocol/v2/CommandExecOutputDeltaNotification.js +0 -1
  276. package/bundle/dist/codex-protocol/v2/CommandExecOutputStream.js +0 -1
  277. package/bundle/dist/codex-protocol/v2/CommandExecParams.js +0 -1
  278. package/bundle/dist/codex-protocol/v2/CommandExecResizeParams.js +0 -1
  279. package/bundle/dist/codex-protocol/v2/CommandExecResizeResponse.js +0 -1
  280. package/bundle/dist/codex-protocol/v2/CommandExecResponse.js +0 -1
  281. package/bundle/dist/codex-protocol/v2/CommandExecTerminalSize.js +0 -1
  282. package/bundle/dist/codex-protocol/v2/CommandExecTerminateParams.js +0 -1
  283. package/bundle/dist/codex-protocol/v2/CommandExecTerminateResponse.js +0 -1
  284. package/bundle/dist/codex-protocol/v2/CommandExecWriteParams.js +0 -1
  285. package/bundle/dist/codex-protocol/v2/CommandExecWriteResponse.js +0 -1
  286. package/bundle/dist/codex-protocol/v2/CommandExecutionApprovalDecision.js +0 -1
  287. package/bundle/dist/codex-protocol/v2/CommandExecutionOutputDeltaNotification.js +0 -1
  288. package/bundle/dist/codex-protocol/v2/CommandExecutionRequestApprovalParams.js +0 -1
  289. package/bundle/dist/codex-protocol/v2/CommandExecutionRequestApprovalResponse.js +0 -1
  290. package/bundle/dist/codex-protocol/v2/CommandExecutionSource.js +0 -1
  291. package/bundle/dist/codex-protocol/v2/CommandExecutionStatus.js +0 -1
  292. package/bundle/dist/codex-protocol/v2/CommandMigration.js +0 -1
  293. package/bundle/dist/codex-protocol/v2/Config.js +0 -1
  294. package/bundle/dist/codex-protocol/v2/ConfigBatchWriteParams.js +0 -1
  295. package/bundle/dist/codex-protocol/v2/ConfigEdit.js +0 -1
  296. package/bundle/dist/codex-protocol/v2/ConfigLayer.js +0 -1
  297. package/bundle/dist/codex-protocol/v2/ConfigLayerMetadata.js +0 -1
  298. package/bundle/dist/codex-protocol/v2/ConfigLayerSource.js +0 -1
  299. package/bundle/dist/codex-protocol/v2/ConfigReadParams.js +0 -1
  300. package/bundle/dist/codex-protocol/v2/ConfigReadResponse.js +0 -1
  301. package/bundle/dist/codex-protocol/v2/ConfigRequirements.js +0 -1
  302. package/bundle/dist/codex-protocol/v2/ConfigRequirementsReadResponse.js +0 -1
  303. package/bundle/dist/codex-protocol/v2/ConfigValueWriteParams.js +0 -1
  304. package/bundle/dist/codex-protocol/v2/ConfigWarningNotification.js +0 -1
  305. package/bundle/dist/codex-protocol/v2/ConfigWriteResponse.js +0 -1
  306. package/bundle/dist/codex-protocol/v2/ConfiguredHookHandler.js +0 -1
  307. package/bundle/dist/codex-protocol/v2/ConfiguredHookMatcherGroup.js +0 -1
  308. package/bundle/dist/codex-protocol/v2/ContextCompactedNotification.js +0 -1
  309. package/bundle/dist/codex-protocol/v2/CreditsSnapshot.js +0 -1
  310. package/bundle/dist/codex-protocol/v2/DeprecationNoticeNotification.js +0 -1
  311. package/bundle/dist/codex-protocol/v2/DynamicToolCallOutputContentItem.js +0 -1
  312. package/bundle/dist/codex-protocol/v2/DynamicToolCallParams.js +0 -1
  313. package/bundle/dist/codex-protocol/v2/DynamicToolCallResponse.js +0 -1
  314. package/bundle/dist/codex-protocol/v2/DynamicToolCallStatus.js +0 -1
  315. package/bundle/dist/codex-protocol/v2/DynamicToolSpec.js +0 -1
  316. package/bundle/dist/codex-protocol/v2/ErrorNotification.js +0 -1
  317. package/bundle/dist/codex-protocol/v2/ExecPolicyAmendment.js +0 -1
  318. package/bundle/dist/codex-protocol/v2/ExperimentalFeature.js +0 -1
  319. package/bundle/dist/codex-protocol/v2/ExperimentalFeatureEnablementSetParams.js +0 -1
  320. package/bundle/dist/codex-protocol/v2/ExperimentalFeatureEnablementSetResponse.js +0 -1
  321. package/bundle/dist/codex-protocol/v2/ExperimentalFeatureListParams.js +0 -1
  322. package/bundle/dist/codex-protocol/v2/ExperimentalFeatureListResponse.js +0 -1
  323. package/bundle/dist/codex-protocol/v2/ExperimentalFeatureStage.js +0 -1
  324. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigDetectParams.js +0 -1
  325. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigDetectResponse.js +0 -1
  326. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigImportCompletedNotification.js +0 -1
  327. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigImportParams.js +0 -1
  328. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigImportResponse.js +0 -1
  329. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigMigrationItem.js +0 -1
  330. package/bundle/dist/codex-protocol/v2/ExternalAgentConfigMigrationItemType.js +0 -1
  331. package/bundle/dist/codex-protocol/v2/FeedbackUploadParams.js +0 -1
  332. package/bundle/dist/codex-protocol/v2/FeedbackUploadResponse.js +0 -1
  333. package/bundle/dist/codex-protocol/v2/FileChangeApprovalDecision.js +0 -1
  334. package/bundle/dist/codex-protocol/v2/FileChangeOutputDeltaNotification.js +0 -1
  335. package/bundle/dist/codex-protocol/v2/FileChangePatchUpdatedNotification.js +0 -1
  336. package/bundle/dist/codex-protocol/v2/FileChangeRequestApprovalParams.js +0 -1
  337. package/bundle/dist/codex-protocol/v2/FileChangeRequestApprovalResponse.js +0 -1
  338. package/bundle/dist/codex-protocol/v2/FileSystemAccessMode.js +0 -1
  339. package/bundle/dist/codex-protocol/v2/FileSystemPath.js +0 -1
  340. package/bundle/dist/codex-protocol/v2/FileSystemSandboxEntry.js +0 -1
  341. package/bundle/dist/codex-protocol/v2/FileSystemSpecialPath.js +0 -1
  342. package/bundle/dist/codex-protocol/v2/FileUpdateChange.js +0 -1
  343. package/bundle/dist/codex-protocol/v2/FsChangedNotification.js +0 -1
  344. package/bundle/dist/codex-protocol/v2/FsCopyParams.js +0 -1
  345. package/bundle/dist/codex-protocol/v2/FsCopyResponse.js +0 -1
  346. package/bundle/dist/codex-protocol/v2/FsCreateDirectoryParams.js +0 -1
  347. package/bundle/dist/codex-protocol/v2/FsCreateDirectoryResponse.js +0 -1
  348. package/bundle/dist/codex-protocol/v2/FsGetMetadataParams.js +0 -1
  349. package/bundle/dist/codex-protocol/v2/FsGetMetadataResponse.js +0 -1
  350. package/bundle/dist/codex-protocol/v2/FsReadDirectoryEntry.js +0 -1
  351. package/bundle/dist/codex-protocol/v2/FsReadDirectoryParams.js +0 -1
  352. package/bundle/dist/codex-protocol/v2/FsReadDirectoryResponse.js +0 -1
  353. package/bundle/dist/codex-protocol/v2/FsReadFileParams.js +0 -1
  354. package/bundle/dist/codex-protocol/v2/FsReadFileResponse.js +0 -1
  355. package/bundle/dist/codex-protocol/v2/FsRemoveParams.js +0 -1
  356. package/bundle/dist/codex-protocol/v2/FsRemoveResponse.js +0 -1
  357. package/bundle/dist/codex-protocol/v2/FsUnwatchParams.js +0 -1
  358. package/bundle/dist/codex-protocol/v2/FsUnwatchResponse.js +0 -1
  359. package/bundle/dist/codex-protocol/v2/FsWatchParams.js +0 -1
  360. package/bundle/dist/codex-protocol/v2/FsWatchResponse.js +0 -1
  361. package/bundle/dist/codex-protocol/v2/FsWriteFileParams.js +0 -1
  362. package/bundle/dist/codex-protocol/v2/FsWriteFileResponse.js +0 -1
  363. package/bundle/dist/codex-protocol/v2/GetAccountParams.js +0 -1
  364. package/bundle/dist/codex-protocol/v2/GetAccountRateLimitsResponse.js +0 -1
  365. package/bundle/dist/codex-protocol/v2/GetAccountResponse.js +0 -1
  366. package/bundle/dist/codex-protocol/v2/GitInfo.js +0 -1
  367. package/bundle/dist/codex-protocol/v2/GrantedPermissionProfile.js +0 -1
  368. package/bundle/dist/codex-protocol/v2/GuardianApprovalReview.js +0 -1
  369. package/bundle/dist/codex-protocol/v2/GuardianApprovalReviewAction.js +0 -1
  370. package/bundle/dist/codex-protocol/v2/GuardianApprovalReviewStatus.js +0 -1
  371. package/bundle/dist/codex-protocol/v2/GuardianCommandSource.js +0 -1
  372. package/bundle/dist/codex-protocol/v2/GuardianRiskLevel.js +0 -1
  373. package/bundle/dist/codex-protocol/v2/GuardianUserAuthorization.js +0 -1
  374. package/bundle/dist/codex-protocol/v2/GuardianWarningNotification.js +0 -1
  375. package/bundle/dist/codex-protocol/v2/HookCompletedNotification.js +0 -1
  376. package/bundle/dist/codex-protocol/v2/HookErrorInfo.js +0 -1
  377. package/bundle/dist/codex-protocol/v2/HookEventName.js +0 -1
  378. package/bundle/dist/codex-protocol/v2/HookExecutionMode.js +0 -1
  379. package/bundle/dist/codex-protocol/v2/HookHandlerType.js +0 -1
  380. package/bundle/dist/codex-protocol/v2/HookMetadata.js +0 -1
  381. package/bundle/dist/codex-protocol/v2/HookMigration.js +0 -1
  382. package/bundle/dist/codex-protocol/v2/HookOutputEntry.js +0 -1
  383. package/bundle/dist/codex-protocol/v2/HookOutputEntryKind.js +0 -1
  384. package/bundle/dist/codex-protocol/v2/HookPromptFragment.js +0 -1
  385. package/bundle/dist/codex-protocol/v2/HookRunStatus.js +0 -1
  386. package/bundle/dist/codex-protocol/v2/HookRunSummary.js +0 -1
  387. package/bundle/dist/codex-protocol/v2/HookScope.js +0 -1
  388. package/bundle/dist/codex-protocol/v2/HookSource.js +0 -1
  389. package/bundle/dist/codex-protocol/v2/HookStartedNotification.js +0 -1
  390. package/bundle/dist/codex-protocol/v2/HookTrustStatus.js +0 -1
  391. package/bundle/dist/codex-protocol/v2/HooksListEntry.js +0 -1
  392. package/bundle/dist/codex-protocol/v2/HooksListParams.js +0 -1
  393. package/bundle/dist/codex-protocol/v2/HooksListResponse.js +0 -1
  394. package/bundle/dist/codex-protocol/v2/ItemCompletedNotification.js +0 -1
  395. package/bundle/dist/codex-protocol/v2/ItemGuardianApprovalReviewCompletedNotification.js +0 -1
  396. package/bundle/dist/codex-protocol/v2/ItemGuardianApprovalReviewStartedNotification.js +0 -1
  397. package/bundle/dist/codex-protocol/v2/ItemStartedNotification.js +0 -1
  398. package/bundle/dist/codex-protocol/v2/ListMcpServerStatusParams.js +0 -1
  399. package/bundle/dist/codex-protocol/v2/ListMcpServerStatusResponse.js +0 -1
  400. package/bundle/dist/codex-protocol/v2/LoginAccountParams.js +0 -1
  401. package/bundle/dist/codex-protocol/v2/LoginAccountResponse.js +0 -1
  402. package/bundle/dist/codex-protocol/v2/LogoutAccountResponse.js +0 -1
  403. package/bundle/dist/codex-protocol/v2/ManagedHooksRequirements.js +0 -1
  404. package/bundle/dist/codex-protocol/v2/MarketplaceAddParams.js +0 -1
  405. package/bundle/dist/codex-protocol/v2/MarketplaceAddResponse.js +0 -1
  406. package/bundle/dist/codex-protocol/v2/MarketplaceInterface.js +0 -1
  407. package/bundle/dist/codex-protocol/v2/MarketplaceLoadErrorInfo.js +0 -1
  408. package/bundle/dist/codex-protocol/v2/MarketplaceRemoveParams.js +0 -1
  409. package/bundle/dist/codex-protocol/v2/MarketplaceRemoveResponse.js +0 -1
  410. package/bundle/dist/codex-protocol/v2/MarketplaceUpgradeErrorInfo.js +0 -1
  411. package/bundle/dist/codex-protocol/v2/MarketplaceUpgradeParams.js +0 -1
  412. package/bundle/dist/codex-protocol/v2/MarketplaceUpgradeResponse.js +0 -1
  413. package/bundle/dist/codex-protocol/v2/McpAuthStatus.js +0 -1
  414. package/bundle/dist/codex-protocol/v2/McpElicitationArrayType.js +0 -1
  415. package/bundle/dist/codex-protocol/v2/McpElicitationBooleanSchema.js +0 -1
  416. package/bundle/dist/codex-protocol/v2/McpElicitationBooleanType.js +0 -1
  417. package/bundle/dist/codex-protocol/v2/McpElicitationConstOption.js +0 -1
  418. package/bundle/dist/codex-protocol/v2/McpElicitationEnumSchema.js +0 -1
  419. package/bundle/dist/codex-protocol/v2/McpElicitationLegacyTitledEnumSchema.js +0 -1
  420. package/bundle/dist/codex-protocol/v2/McpElicitationMultiSelectEnumSchema.js +0 -1
  421. package/bundle/dist/codex-protocol/v2/McpElicitationNumberSchema.js +0 -1
  422. package/bundle/dist/codex-protocol/v2/McpElicitationNumberType.js +0 -1
  423. package/bundle/dist/codex-protocol/v2/McpElicitationObjectType.js +0 -1
  424. package/bundle/dist/codex-protocol/v2/McpElicitationPrimitiveSchema.js +0 -1
  425. package/bundle/dist/codex-protocol/v2/McpElicitationSchema.js +0 -1
  426. package/bundle/dist/codex-protocol/v2/McpElicitationSingleSelectEnumSchema.js +0 -1
  427. package/bundle/dist/codex-protocol/v2/McpElicitationStringFormat.js +0 -1
  428. package/bundle/dist/codex-protocol/v2/McpElicitationStringSchema.js +0 -1
  429. package/bundle/dist/codex-protocol/v2/McpElicitationStringType.js +0 -1
  430. package/bundle/dist/codex-protocol/v2/McpElicitationTitledEnumItems.js +0 -1
  431. package/bundle/dist/codex-protocol/v2/McpElicitationTitledMultiSelectEnumSchema.js +0 -1
  432. package/bundle/dist/codex-protocol/v2/McpElicitationTitledSingleSelectEnumSchema.js +0 -1
  433. package/bundle/dist/codex-protocol/v2/McpElicitationUntitledEnumItems.js +0 -1
  434. package/bundle/dist/codex-protocol/v2/McpElicitationUntitledMultiSelectEnumSchema.js +0 -1
  435. package/bundle/dist/codex-protocol/v2/McpElicitationUntitledSingleSelectEnumSchema.js +0 -1
  436. package/bundle/dist/codex-protocol/v2/McpResourceReadParams.js +0 -1
  437. package/bundle/dist/codex-protocol/v2/McpResourceReadResponse.js +0 -1
  438. package/bundle/dist/codex-protocol/v2/McpServerElicitationAction.js +0 -1
  439. package/bundle/dist/codex-protocol/v2/McpServerElicitationRequestParams.js +0 -1
  440. package/bundle/dist/codex-protocol/v2/McpServerElicitationRequestResponse.js +0 -1
  441. package/bundle/dist/codex-protocol/v2/McpServerMigration.js +0 -1
  442. package/bundle/dist/codex-protocol/v2/McpServerOauthLoginCompletedNotification.js +0 -1
  443. package/bundle/dist/codex-protocol/v2/McpServerOauthLoginParams.js +0 -1
  444. package/bundle/dist/codex-protocol/v2/McpServerOauthLoginResponse.js +0 -1
  445. package/bundle/dist/codex-protocol/v2/McpServerRefreshResponse.js +0 -1
  446. package/bundle/dist/codex-protocol/v2/McpServerStartupState.js +0 -1
  447. package/bundle/dist/codex-protocol/v2/McpServerStatus.js +0 -1
  448. package/bundle/dist/codex-protocol/v2/McpServerStatusDetail.js +0 -1
  449. package/bundle/dist/codex-protocol/v2/McpServerStatusUpdatedNotification.js +0 -1
  450. package/bundle/dist/codex-protocol/v2/McpServerToolCallParams.js +0 -1
  451. package/bundle/dist/codex-protocol/v2/McpServerToolCallResponse.js +0 -1
  452. package/bundle/dist/codex-protocol/v2/McpToolCallError.js +0 -1
  453. package/bundle/dist/codex-protocol/v2/McpToolCallProgressNotification.js +0 -1
  454. package/bundle/dist/codex-protocol/v2/McpToolCallResult.js +0 -1
  455. package/bundle/dist/codex-protocol/v2/McpToolCallStatus.js +0 -1
  456. package/bundle/dist/codex-protocol/v2/MemoryCitation.js +0 -1
  457. package/bundle/dist/codex-protocol/v2/MemoryCitationEntry.js +0 -1
  458. package/bundle/dist/codex-protocol/v2/MergeStrategy.js +0 -1
  459. package/bundle/dist/codex-protocol/v2/MigrationDetails.js +0 -1
  460. package/bundle/dist/codex-protocol/v2/Model.js +0 -1
  461. package/bundle/dist/codex-protocol/v2/ModelAvailabilityNux.js +0 -1
  462. package/bundle/dist/codex-protocol/v2/ModelListParams.js +0 -1
  463. package/bundle/dist/codex-protocol/v2/ModelListResponse.js +0 -1
  464. package/bundle/dist/codex-protocol/v2/ModelProviderCapabilitiesReadParams.js +0 -1
  465. package/bundle/dist/codex-protocol/v2/ModelProviderCapabilitiesReadResponse.js +0 -1
  466. package/bundle/dist/codex-protocol/v2/ModelRerouteReason.js +0 -1
  467. package/bundle/dist/codex-protocol/v2/ModelReroutedNotification.js +0 -1
  468. package/bundle/dist/codex-protocol/v2/ModelServiceTier.js +0 -1
  469. package/bundle/dist/codex-protocol/v2/ModelUpgradeInfo.js +0 -1
  470. package/bundle/dist/codex-protocol/v2/ModelVerification.js +0 -1
  471. package/bundle/dist/codex-protocol/v2/ModelVerificationNotification.js +0 -1
  472. package/bundle/dist/codex-protocol/v2/NetworkAccess.js +0 -1
  473. package/bundle/dist/codex-protocol/v2/NetworkApprovalContext.js +0 -1
  474. package/bundle/dist/codex-protocol/v2/NetworkApprovalProtocol.js +0 -1
  475. package/bundle/dist/codex-protocol/v2/NetworkDomainPermission.js +0 -1
  476. package/bundle/dist/codex-protocol/v2/NetworkPolicyAmendment.js +0 -1
  477. package/bundle/dist/codex-protocol/v2/NetworkPolicyRuleAction.js +0 -1
  478. package/bundle/dist/codex-protocol/v2/NetworkRequirements.js +0 -1
  479. package/bundle/dist/codex-protocol/v2/NetworkUnixSocketPermission.js +0 -1
  480. package/bundle/dist/codex-protocol/v2/NonSteerableTurnKind.js +0 -1
  481. package/bundle/dist/codex-protocol/v2/OverriddenMetadata.js +0 -1
  482. package/bundle/dist/codex-protocol/v2/PatchApplyStatus.js +0 -1
  483. package/bundle/dist/codex-protocol/v2/PatchChangeKind.js +0 -1
  484. package/bundle/dist/codex-protocol/v2/PermissionGrantScope.js +0 -1
  485. package/bundle/dist/codex-protocol/v2/PermissionProfile.js +0 -1
  486. package/bundle/dist/codex-protocol/v2/PermissionProfileFileSystemPermissions.js +0 -1
  487. package/bundle/dist/codex-protocol/v2/PermissionProfileModificationParams.js +0 -1
  488. package/bundle/dist/codex-protocol/v2/PermissionProfileNetworkPermissions.js +0 -1
  489. package/bundle/dist/codex-protocol/v2/PermissionProfileSelectionParams.js +0 -1
  490. package/bundle/dist/codex-protocol/v2/PermissionsRequestApprovalParams.js +0 -1
  491. package/bundle/dist/codex-protocol/v2/PermissionsRequestApprovalResponse.js +0 -1
  492. package/bundle/dist/codex-protocol/v2/PlanDeltaNotification.js +0 -1
  493. package/bundle/dist/codex-protocol/v2/PluginAuthPolicy.js +0 -1
  494. package/bundle/dist/codex-protocol/v2/PluginAvailability.js +0 -1
  495. package/bundle/dist/codex-protocol/v2/PluginDetail.js +0 -1
  496. package/bundle/dist/codex-protocol/v2/PluginHookSummary.js +0 -1
  497. package/bundle/dist/codex-protocol/v2/PluginInstallParams.js +0 -1
  498. package/bundle/dist/codex-protocol/v2/PluginInstallPolicy.js +0 -1
  499. package/bundle/dist/codex-protocol/v2/PluginInstallResponse.js +0 -1
  500. package/bundle/dist/codex-protocol/v2/PluginInterface.js +0 -1
  501. package/bundle/dist/codex-protocol/v2/PluginListMarketplaceKind.js +0 -1
  502. package/bundle/dist/codex-protocol/v2/PluginListParams.js +0 -1
  503. package/bundle/dist/codex-protocol/v2/PluginListResponse.js +0 -1
  504. package/bundle/dist/codex-protocol/v2/PluginMarketplaceEntry.js +0 -1
  505. package/bundle/dist/codex-protocol/v2/PluginReadParams.js +0 -1
  506. package/bundle/dist/codex-protocol/v2/PluginReadResponse.js +0 -1
  507. package/bundle/dist/codex-protocol/v2/PluginShareContext.js +0 -1
  508. package/bundle/dist/codex-protocol/v2/PluginShareDeleteParams.js +0 -1
  509. package/bundle/dist/codex-protocol/v2/PluginShareDeleteResponse.js +0 -1
  510. package/bundle/dist/codex-protocol/v2/PluginShareDiscoverability.js +0 -1
  511. package/bundle/dist/codex-protocol/v2/PluginShareListItem.js +0 -1
  512. package/bundle/dist/codex-protocol/v2/PluginShareListParams.js +0 -1
  513. package/bundle/dist/codex-protocol/v2/PluginShareListResponse.js +0 -1
  514. package/bundle/dist/codex-protocol/v2/PluginSharePrincipal.js +0 -1
  515. package/bundle/dist/codex-protocol/v2/PluginSharePrincipalType.js +0 -1
  516. package/bundle/dist/codex-protocol/v2/PluginShareSaveParams.js +0 -1
  517. package/bundle/dist/codex-protocol/v2/PluginShareSaveResponse.js +0 -1
  518. package/bundle/dist/codex-protocol/v2/PluginShareTarget.js +0 -1
  519. package/bundle/dist/codex-protocol/v2/PluginShareUpdateDiscoverability.js +0 -1
  520. package/bundle/dist/codex-protocol/v2/PluginShareUpdateTargetsParams.js +0 -1
  521. package/bundle/dist/codex-protocol/v2/PluginShareUpdateTargetsResponse.js +0 -1
  522. package/bundle/dist/codex-protocol/v2/PluginSkillReadParams.js +0 -1
  523. package/bundle/dist/codex-protocol/v2/PluginSkillReadResponse.js +0 -1
  524. package/bundle/dist/codex-protocol/v2/PluginSource.js +0 -1
  525. package/bundle/dist/codex-protocol/v2/PluginSummary.js +0 -1
  526. package/bundle/dist/codex-protocol/v2/PluginUninstallParams.js +0 -1
  527. package/bundle/dist/codex-protocol/v2/PluginUninstallResponse.js +0 -1
  528. package/bundle/dist/codex-protocol/v2/PluginsMigration.js +0 -1
  529. package/bundle/dist/codex-protocol/v2/ProcessExitedNotification.js +0 -1
  530. package/bundle/dist/codex-protocol/v2/ProcessOutputDeltaNotification.js +0 -1
  531. package/bundle/dist/codex-protocol/v2/ProcessOutputStream.js +0 -1
  532. package/bundle/dist/codex-protocol/v2/ProcessTerminalSize.js +0 -1
  533. package/bundle/dist/codex-protocol/v2/ProfileV2.js +0 -1
  534. package/bundle/dist/codex-protocol/v2/RateLimitReachedType.js +0 -1
  535. package/bundle/dist/codex-protocol/v2/RateLimitSnapshot.js +0 -1
  536. package/bundle/dist/codex-protocol/v2/RateLimitWindow.js +0 -1
  537. package/bundle/dist/codex-protocol/v2/RawResponseItemCompletedNotification.js +0 -1
  538. package/bundle/dist/codex-protocol/v2/ReasoningEffortOption.js +0 -1
  539. package/bundle/dist/codex-protocol/v2/ReasoningSummaryPartAddedNotification.js +0 -1
  540. package/bundle/dist/codex-protocol/v2/ReasoningSummaryTextDeltaNotification.js +0 -1
  541. package/bundle/dist/codex-protocol/v2/ReasoningTextDeltaNotification.js +0 -1
  542. package/bundle/dist/codex-protocol/v2/RemoteControlConnectionStatus.js +0 -1
  543. package/bundle/dist/codex-protocol/v2/RemoteControlStatusChangedNotification.js +0 -1
  544. package/bundle/dist/codex-protocol/v2/RequestPermissionProfile.js +0 -1
  545. package/bundle/dist/codex-protocol/v2/ResidencyRequirement.js +0 -1
  546. package/bundle/dist/codex-protocol/v2/ReviewDelivery.js +0 -1
  547. package/bundle/dist/codex-protocol/v2/ReviewStartParams.js +0 -1
  548. package/bundle/dist/codex-protocol/v2/ReviewStartResponse.js +0 -1
  549. package/bundle/dist/codex-protocol/v2/ReviewTarget.js +0 -1
  550. package/bundle/dist/codex-protocol/v2/SandboxMode.js +0 -1
  551. package/bundle/dist/codex-protocol/v2/SandboxPolicy.js +0 -1
  552. package/bundle/dist/codex-protocol/v2/SandboxWorkspaceWrite.js +0 -1
  553. package/bundle/dist/codex-protocol/v2/SendAddCreditsNudgeEmailParams.js +0 -1
  554. package/bundle/dist/codex-protocol/v2/SendAddCreditsNudgeEmailResponse.js +0 -1
  555. package/bundle/dist/codex-protocol/v2/ServerRequestResolvedNotification.js +0 -1
  556. package/bundle/dist/codex-protocol/v2/SessionMigration.js +0 -1
  557. package/bundle/dist/codex-protocol/v2/SessionSource.js +0 -1
  558. package/bundle/dist/codex-protocol/v2/SkillDependencies.js +0 -1
  559. package/bundle/dist/codex-protocol/v2/SkillErrorInfo.js +0 -1
  560. package/bundle/dist/codex-protocol/v2/SkillInterface.js +0 -1
  561. package/bundle/dist/codex-protocol/v2/SkillMetadata.js +0 -1
  562. package/bundle/dist/codex-protocol/v2/SkillScope.js +0 -1
  563. package/bundle/dist/codex-protocol/v2/SkillSummary.js +0 -1
  564. package/bundle/dist/codex-protocol/v2/SkillToolDependency.js +0 -1
  565. package/bundle/dist/codex-protocol/v2/SkillsChangedNotification.js +0 -1
  566. package/bundle/dist/codex-protocol/v2/SkillsConfigWriteParams.js +0 -1
  567. package/bundle/dist/codex-protocol/v2/SkillsConfigWriteResponse.js +0 -1
  568. package/bundle/dist/codex-protocol/v2/SkillsListEntry.js +0 -1
  569. package/bundle/dist/codex-protocol/v2/SkillsListParams.js +0 -1
  570. package/bundle/dist/codex-protocol/v2/SkillsListResponse.js +0 -1
  571. package/bundle/dist/codex-protocol/v2/SortDirection.js +0 -1
  572. package/bundle/dist/codex-protocol/v2/SubagentMigration.js +0 -1
  573. package/bundle/dist/codex-protocol/v2/TerminalInteractionNotification.js +0 -1
  574. package/bundle/dist/codex-protocol/v2/TextElement.js +0 -1
  575. package/bundle/dist/codex-protocol/v2/TextPosition.js +0 -1
  576. package/bundle/dist/codex-protocol/v2/TextRange.js +0 -1
  577. package/bundle/dist/codex-protocol/v2/Thread.js +0 -1
  578. package/bundle/dist/codex-protocol/v2/ThreadActiveFlag.js +0 -1
  579. package/bundle/dist/codex-protocol/v2/ThreadApproveGuardianDeniedActionParams.js +0 -1
  580. package/bundle/dist/codex-protocol/v2/ThreadApproveGuardianDeniedActionResponse.js +0 -1
  581. package/bundle/dist/codex-protocol/v2/ThreadArchiveParams.js +0 -1
  582. package/bundle/dist/codex-protocol/v2/ThreadArchiveResponse.js +0 -1
  583. package/bundle/dist/codex-protocol/v2/ThreadArchivedNotification.js +0 -1
  584. package/bundle/dist/codex-protocol/v2/ThreadClosedNotification.js +0 -1
  585. package/bundle/dist/codex-protocol/v2/ThreadCompactStartParams.js +0 -1
  586. package/bundle/dist/codex-protocol/v2/ThreadCompactStartResponse.js +0 -1
  587. package/bundle/dist/codex-protocol/v2/ThreadForkParams.js +0 -1
  588. package/bundle/dist/codex-protocol/v2/ThreadForkResponse.js +0 -1
  589. package/bundle/dist/codex-protocol/v2/ThreadGoal.js +0 -1
  590. package/bundle/dist/codex-protocol/v2/ThreadGoalClearedNotification.js +0 -1
  591. package/bundle/dist/codex-protocol/v2/ThreadGoalStatus.js +0 -1
  592. package/bundle/dist/codex-protocol/v2/ThreadGoalUpdatedNotification.js +0 -1
  593. package/bundle/dist/codex-protocol/v2/ThreadInjectItemsParams.js +0 -1
  594. package/bundle/dist/codex-protocol/v2/ThreadInjectItemsResponse.js +0 -1
  595. package/bundle/dist/codex-protocol/v2/ThreadItem.js +0 -1
  596. package/bundle/dist/codex-protocol/v2/ThreadListParams.js +0 -1
  597. package/bundle/dist/codex-protocol/v2/ThreadListResponse.js +0 -1
  598. package/bundle/dist/codex-protocol/v2/ThreadLoadedListParams.js +0 -1
  599. package/bundle/dist/codex-protocol/v2/ThreadLoadedListResponse.js +0 -1
  600. package/bundle/dist/codex-protocol/v2/ThreadMetadataGitInfoUpdateParams.js +0 -1
  601. package/bundle/dist/codex-protocol/v2/ThreadMetadataUpdateParams.js +0 -1
  602. package/bundle/dist/codex-protocol/v2/ThreadMetadataUpdateResponse.js +0 -1
  603. package/bundle/dist/codex-protocol/v2/ThreadNameUpdatedNotification.js +0 -1
  604. package/bundle/dist/codex-protocol/v2/ThreadReadParams.js +0 -1
  605. package/bundle/dist/codex-protocol/v2/ThreadReadResponse.js +0 -1
  606. package/bundle/dist/codex-protocol/v2/ThreadRealtimeAudioChunk.js +0 -1
  607. package/bundle/dist/codex-protocol/v2/ThreadRealtimeClosedNotification.js +0 -1
  608. package/bundle/dist/codex-protocol/v2/ThreadRealtimeErrorNotification.js +0 -1
  609. package/bundle/dist/codex-protocol/v2/ThreadRealtimeItemAddedNotification.js +0 -1
  610. package/bundle/dist/codex-protocol/v2/ThreadRealtimeOutputAudioDeltaNotification.js +0 -1
  611. package/bundle/dist/codex-protocol/v2/ThreadRealtimeSdpNotification.js +0 -1
  612. package/bundle/dist/codex-protocol/v2/ThreadRealtimeStartTransport.js +0 -1
  613. package/bundle/dist/codex-protocol/v2/ThreadRealtimeStartedNotification.js +0 -1
  614. package/bundle/dist/codex-protocol/v2/ThreadRealtimeTranscriptDeltaNotification.js +0 -1
  615. package/bundle/dist/codex-protocol/v2/ThreadRealtimeTranscriptDoneNotification.js +0 -1
  616. package/bundle/dist/codex-protocol/v2/ThreadResumeParams.js +0 -1
  617. package/bundle/dist/codex-protocol/v2/ThreadResumeResponse.js +0 -1
  618. package/bundle/dist/codex-protocol/v2/ThreadRollbackParams.js +0 -1
  619. package/bundle/dist/codex-protocol/v2/ThreadRollbackResponse.js +0 -1
  620. package/bundle/dist/codex-protocol/v2/ThreadSetNameParams.js +0 -1
  621. package/bundle/dist/codex-protocol/v2/ThreadSetNameResponse.js +0 -1
  622. package/bundle/dist/codex-protocol/v2/ThreadShellCommandParams.js +0 -1
  623. package/bundle/dist/codex-protocol/v2/ThreadShellCommandResponse.js +0 -1
  624. package/bundle/dist/codex-protocol/v2/ThreadSortKey.js +0 -1
  625. package/bundle/dist/codex-protocol/v2/ThreadSource.js +0 -1
  626. package/bundle/dist/codex-protocol/v2/ThreadSourceKind.js +0 -1
  627. package/bundle/dist/codex-protocol/v2/ThreadStartParams.js +0 -1
  628. package/bundle/dist/codex-protocol/v2/ThreadStartResponse.js +0 -1
  629. package/bundle/dist/codex-protocol/v2/ThreadStartSource.js +0 -1
  630. package/bundle/dist/codex-protocol/v2/ThreadStartedNotification.js +0 -1
  631. package/bundle/dist/codex-protocol/v2/ThreadStatus.js +0 -1
  632. package/bundle/dist/codex-protocol/v2/ThreadStatusChangedNotification.js +0 -1
  633. package/bundle/dist/codex-protocol/v2/ThreadTokenUsage.js +0 -1
  634. package/bundle/dist/codex-protocol/v2/ThreadTokenUsageUpdatedNotification.js +0 -1
  635. package/bundle/dist/codex-protocol/v2/ThreadUnarchiveParams.js +0 -1
  636. package/bundle/dist/codex-protocol/v2/ThreadUnarchiveResponse.js +0 -1
  637. package/bundle/dist/codex-protocol/v2/ThreadUnarchivedNotification.js +0 -1
  638. package/bundle/dist/codex-protocol/v2/ThreadUnsubscribeParams.js +0 -1
  639. package/bundle/dist/codex-protocol/v2/ThreadUnsubscribeResponse.js +0 -1
  640. package/bundle/dist/codex-protocol/v2/ThreadUnsubscribeStatus.js +0 -1
  641. package/bundle/dist/codex-protocol/v2/TokenUsageBreakdown.js +0 -1
  642. package/bundle/dist/codex-protocol/v2/ToolRequestUserInputAnswer.js +0 -1
  643. package/bundle/dist/codex-protocol/v2/ToolRequestUserInputOption.js +0 -1
  644. package/bundle/dist/codex-protocol/v2/ToolRequestUserInputParams.js +0 -1
  645. package/bundle/dist/codex-protocol/v2/ToolRequestUserInputQuestion.js +0 -1
  646. package/bundle/dist/codex-protocol/v2/ToolRequestUserInputResponse.js +0 -1
  647. package/bundle/dist/codex-protocol/v2/ToolsV2.js +0 -1
  648. package/bundle/dist/codex-protocol/v2/Turn.js +0 -1
  649. package/bundle/dist/codex-protocol/v2/TurnCompletedNotification.js +0 -1
  650. package/bundle/dist/codex-protocol/v2/TurnDiffUpdatedNotification.js +0 -1
  651. package/bundle/dist/codex-protocol/v2/TurnEnvironmentParams.js +0 -1
  652. package/bundle/dist/codex-protocol/v2/TurnError.js +0 -1
  653. package/bundle/dist/codex-protocol/v2/TurnInterruptParams.js +0 -1
  654. package/bundle/dist/codex-protocol/v2/TurnInterruptResponse.js +0 -1
  655. package/bundle/dist/codex-protocol/v2/TurnItemsView.js +0 -1
  656. package/bundle/dist/codex-protocol/v2/TurnPlanStep.js +0 -1
  657. package/bundle/dist/codex-protocol/v2/TurnPlanStepStatus.js +0 -1
  658. package/bundle/dist/codex-protocol/v2/TurnPlanUpdatedNotification.js +0 -1
  659. package/bundle/dist/codex-protocol/v2/TurnStartParams.js +0 -1
  660. package/bundle/dist/codex-protocol/v2/TurnStartResponse.js +0 -1
  661. package/bundle/dist/codex-protocol/v2/TurnStartedNotification.js +0 -1
  662. package/bundle/dist/codex-protocol/v2/TurnStatus.js +0 -1
  663. package/bundle/dist/codex-protocol/v2/TurnSteerParams.js +0 -1
  664. package/bundle/dist/codex-protocol/v2/TurnSteerResponse.js +0 -1
  665. package/bundle/dist/codex-protocol/v2/UserInput.js +0 -1
  666. package/bundle/dist/codex-protocol/v2/WarningNotification.js +0 -1
  667. package/bundle/dist/codex-protocol/v2/WebSearchAction.js +0 -1
  668. package/bundle/dist/codex-protocol/v2/WindowsSandboxReadiness.js +0 -1
  669. package/bundle/dist/codex-protocol/v2/WindowsSandboxReadinessResponse.js +0 -1
  670. package/bundle/dist/codex-protocol/v2/WindowsSandboxSetupCompletedNotification.js +0 -1
  671. package/bundle/dist/codex-protocol/v2/WindowsSandboxSetupMode.js +0 -1
  672. package/bundle/dist/codex-protocol/v2/WindowsSandboxSetupStartParams.js +0 -1
  673. package/bundle/dist/codex-protocol/v2/WindowsSandboxSetupStartResponse.js +0 -1
  674. package/bundle/dist/codex-protocol/v2/WindowsWorldWritableWarningNotification.js +0 -1
  675. package/bundle/dist/codex-protocol/v2/WriteStatus.js +0 -1
  676. package/bundle/dist/codex-protocol/v2/index.js +0 -7
  677. package/bundle/dist/utils/providers/openai/codex-rpc.js +0 -153
  678. package/bundle/dist/utils/providers/openai/codex-worker.js +0 -642
  679. package/bundle/dist/utils/providers/openai/openai-worker-pool-config.js +0 -51
  680. package/bundle/src/codex-protocol/AbsolutePathBuf.ts +0 -14
  681. package/bundle/src/codex-protocol/AgentPath.ts +0 -5
  682. package/bundle/src/codex-protocol/ApplyPatchApprovalParams.ts +0 -24
  683. package/bundle/src/codex-protocol/ApplyPatchApprovalResponse.ts +0 -6
  684. package/bundle/src/codex-protocol/AuthMode.ts +0 -8
  685. package/bundle/src/codex-protocol/ClientInfo.ts +0 -5
  686. package/bundle/src/codex-protocol/ClientNotification.ts +0 -5
  687. package/bundle/src/codex-protocol/ClientRequest.ts +0 -176
  688. package/bundle/src/codex-protocol/CollaborationMode.ts +0 -10
  689. package/bundle/src/codex-protocol/ContentItem.ts +0 -9
  690. package/bundle/src/codex-protocol/ConversationGitInfo.ts +0 -9
  691. package/bundle/src/codex-protocol/ConversationSummary.ts +0 -19
  692. package/bundle/src/codex-protocol/ExecCommandApprovalParams.ts +0 -22
  693. package/bundle/src/codex-protocol/ExecCommandApprovalResponse.ts +0 -6
  694. package/bundle/src/codex-protocol/ExecPolicyAmendment.ts +0 -12
  695. package/bundle/src/codex-protocol/FileChange.ts +0 -8
  696. package/bundle/src/codex-protocol/ForcedLoginMethod.ts +0 -5
  697. package/bundle/src/codex-protocol/FunctionCallOutputBody.ts +0 -6
  698. package/bundle/src/codex-protocol/FunctionCallOutputContentItem.ts +0 -12
  699. package/bundle/src/codex-protocol/FuzzyFileSearchMatchType.ts +0 -5
  700. package/bundle/src/codex-protocol/FuzzyFileSearchParams.ts +0 -9
  701. package/bundle/src/codex-protocol/FuzzyFileSearchResponse.ts +0 -6
  702. package/bundle/src/codex-protocol/FuzzyFileSearchResult.ts +0 -16
  703. package/bundle/src/codex-protocol/FuzzyFileSearchSessionCompletedNotification.ts +0 -5
  704. package/bundle/src/codex-protocol/FuzzyFileSearchSessionUpdatedNotification.ts +0 -10
  705. package/bundle/src/codex-protocol/GetAuthStatusParams.ts +0 -5
  706. package/bundle/src/codex-protocol/GetAuthStatusResponse.ts +0 -10
  707. package/bundle/src/codex-protocol/GetConversationSummaryParams.ts +0 -6
  708. package/bundle/src/codex-protocol/GetConversationSummaryResponse.ts +0 -6
  709. package/bundle/src/codex-protocol/GitDiffToRemoteParams.ts +0 -5
  710. package/bundle/src/codex-protocol/GitDiffToRemoteResponse.ts +0 -6
  711. package/bundle/src/codex-protocol/GitSha.ts +0 -5
  712. package/bundle/src/codex-protocol/ImageDetail.ts +0 -5
  713. package/bundle/src/codex-protocol/InitializeCapabilities.ts +0 -18
  714. package/bundle/src/codex-protocol/InitializeParams.ts +0 -10
  715. package/bundle/src/codex-protocol/InitializeResponse.ts +0 -22
  716. package/bundle/src/codex-protocol/InputModality.ts +0 -8
  717. package/bundle/src/codex-protocol/InternalSessionSource.ts +0 -5
  718. package/bundle/src/codex-protocol/LocalShellAction.ts +0 -6
  719. package/bundle/src/codex-protocol/LocalShellExecAction.ts +0 -11
  720. package/bundle/src/codex-protocol/LocalShellStatus.ts +0 -5
  721. package/bundle/src/codex-protocol/MessagePhase.ts +0 -11
  722. package/bundle/src/codex-protocol/ModeKind.ts +0 -8
  723. package/bundle/src/codex-protocol/NetworkPolicyAmendment.ts +0 -6
  724. package/bundle/src/codex-protocol/NetworkPolicyRuleAction.ts +0 -5
  725. package/bundle/src/codex-protocol/ParsedCommand.ts +0 -20
  726. package/bundle/src/codex-protocol/Personality.ts +0 -5
  727. package/bundle/src/codex-protocol/PlanType.ts +0 -17
  728. package/bundle/src/codex-protocol/RealtimeConversationVersion.ts +0 -5
  729. package/bundle/src/codex-protocol/RealtimeOutputModality.ts +0 -5
  730. package/bundle/src/codex-protocol/RealtimeVoice.ts +0 -24
  731. package/bundle/src/codex-protocol/RealtimeVoicesList.ts +0 -11
  732. package/bundle/src/codex-protocol/ReasoningEffort.ts +0 -8
  733. package/bundle/src/codex-protocol/ReasoningItemContent.ts +0 -7
  734. package/bundle/src/codex-protocol/ReasoningItemReasoningSummary.ts +0 -5
  735. package/bundle/src/codex-protocol/ReasoningSummary.ts +0 -10
  736. package/bundle/src/codex-protocol/RequestId.ts +0 -5
  737. package/bundle/src/codex-protocol/Resource.ts +0 -19
  738. package/bundle/src/codex-protocol/ResourceContent.ts +0 -27
  739. package/bundle/src/codex-protocol/ResourceTemplate.ts +0 -16
  740. package/bundle/src/codex-protocol/ResponseItem.ts +0 -63
  741. package/bundle/src/codex-protocol/ReviewDecision.ts +0 -17
  742. package/bundle/src/codex-protocol/ServerNotification.ts +0 -154
  743. package/bundle/src/codex-protocol/ServerRequest.ts +0 -47
  744. package/bundle/src/codex-protocol/SessionSource.ts +0 -15
  745. package/bundle/src/codex-protocol/Settings.ts +0 -13
  746. package/bundle/src/codex-protocol/SubAgentSource.ts +0 -20
  747. package/bundle/src/codex-protocol/ThreadId.ts +0 -5
  748. package/bundle/src/codex-protocol/ThreadMemoryMode.ts +0 -5
  749. package/bundle/src/codex-protocol/Tool.ts +0 -18
  750. package/bundle/src/codex-protocol/Verbosity.ts +0 -9
  751. package/bundle/src/codex-protocol/WebSearchAction.ts +0 -9
  752. package/bundle/src/codex-protocol/WebSearchContextSize.ts +0 -5
  753. package/bundle/src/codex-protocol/WebSearchLocation.ts +0 -10
  754. package/bundle/src/codex-protocol/WebSearchMode.ts +0 -5
  755. package/bundle/src/codex-protocol/WebSearchToolConfig.ts +0 -11
  756. package/bundle/src/codex-protocol/index.ts +0 -79
  757. package/bundle/src/codex-protocol/serde_json/JsonValue.ts +0 -11
  758. package/bundle/src/codex-protocol/v2/Account.ts +0 -9
  759. package/bundle/src/codex-protocol/v2/AccountLoginCompletedNotification.ts +0 -9
  760. package/bundle/src/codex-protocol/v2/AccountRateLimitsUpdatedNotification.ts +0 -6
  761. package/bundle/src/codex-protocol/v2/AccountUpdatedNotification.ts +0 -7
  762. package/bundle/src/codex-protocol/v2/ActivePermissionProfile.ts +0 -22
  763. package/bundle/src/codex-protocol/v2/ActivePermissionProfileModification.ts +0 -9
  764. package/bundle/src/codex-protocol/v2/AddCreditsNudgeCreditType.ts +0 -5
  765. package/bundle/src/codex-protocol/v2/AddCreditsNudgeEmailStatus.ts +0 -5
  766. package/bundle/src/codex-protocol/v2/AdditionalFileSystemPermissions.ts +0 -18
  767. package/bundle/src/codex-protocol/v2/AdditionalNetworkPermissions.ts +0 -5
  768. package/bundle/src/codex-protocol/v2/AdditionalPermissionProfile.ts +0 -13
  769. package/bundle/src/codex-protocol/v2/AgentMessageDeltaNotification.ts +0 -10
  770. package/bundle/src/codex-protocol/v2/AnalyticsConfig.ts +0 -14
  771. package/bundle/src/codex-protocol/v2/AppBranding.ts +0 -15
  772. package/bundle/src/codex-protocol/v2/AppInfo.ts +0 -32
  773. package/bundle/src/codex-protocol/v2/AppListUpdatedNotification.ts +0 -9
  774. package/bundle/src/codex-protocol/v2/AppMetadata.ts +0 -20
  775. package/bundle/src/codex-protocol/v2/AppReview.ts +0 -5
  776. package/bundle/src/codex-protocol/v2/AppScreenshot.ts +0 -5
  777. package/bundle/src/codex-protocol/v2/AppSummary.ts +0 -14
  778. package/bundle/src/codex-protocol/v2/AppToolApproval.ts +0 -5
  779. package/bundle/src/codex-protocol/v2/AppToolsConfig.ts +0 -8
  780. package/bundle/src/codex-protocol/v2/ApprovalsReviewer.ts +0 -12
  781. package/bundle/src/codex-protocol/v2/AppsConfig.ts +0 -17
  782. package/bundle/src/codex-protocol/v2/AppsDefaultConfig.ts +0 -9
  783. package/bundle/src/codex-protocol/v2/AppsListParams.ts +0 -25
  784. package/bundle/src/codex-protocol/v2/AppsListResponse.ts +0 -16
  785. package/bundle/src/codex-protocol/v2/AskForApproval.ts +0 -18
  786. package/bundle/src/codex-protocol/v2/AutoReviewDecisionSource.ts +0 -8
  787. package/bundle/src/codex-protocol/v2/ByteRange.ts +0 -5
  788. package/bundle/src/codex-protocol/v2/CancelLoginAccountParams.ts +0 -5
  789. package/bundle/src/codex-protocol/v2/CancelLoginAccountResponse.ts +0 -6
  790. package/bundle/src/codex-protocol/v2/CancelLoginAccountStatus.ts +0 -5
  791. package/bundle/src/codex-protocol/v2/ChatgptAuthTokensRefreshParams.ts +0 -18
  792. package/bundle/src/codex-protocol/v2/ChatgptAuthTokensRefreshReason.ts +0 -5
  793. package/bundle/src/codex-protocol/v2/ChatgptAuthTokensRefreshResponse.ts +0 -9
  794. package/bundle/src/codex-protocol/v2/CodexErrorInfo.ts +0 -27
  795. package/bundle/src/codex-protocol/v2/CollabAgentState.ts +0 -6
  796. package/bundle/src/codex-protocol/v2/CollabAgentStatus.ts +0 -12
  797. package/bundle/src/codex-protocol/v2/CollabAgentTool.ts +0 -5
  798. package/bundle/src/codex-protocol/v2/CollabAgentToolCallStatus.ts +0 -5
  799. package/bundle/src/codex-protocol/v2/CollaborationModeMask.ts +0 -15
  800. package/bundle/src/codex-protocol/v2/CommandAction.ts +0 -10
  801. package/bundle/src/codex-protocol/v2/CommandExecOutputDeltaNotification.ts +0 -31
  802. package/bundle/src/codex-protocol/v2/CommandExecOutputStream.ts +0 -8
  803. package/bundle/src/codex-protocol/v2/CommandExecParams.ts +0 -87
  804. package/bundle/src/codex-protocol/v2/CommandExecResizeParams.ts +0 -19
  805. package/bundle/src/codex-protocol/v2/CommandExecResizeResponse.ts +0 -8
  806. package/bundle/src/codex-protocol/v2/CommandExecResponse.ts +0 -25
  807. package/bundle/src/codex-protocol/v2/CommandExecTerminalSize.ts +0 -17
  808. package/bundle/src/codex-protocol/v2/CommandExecTerminateParams.ts +0 -14
  809. package/bundle/src/codex-protocol/v2/CommandExecTerminateResponse.ts +0 -8
  810. package/bundle/src/codex-protocol/v2/CommandExecWriteParams.ts +0 -23
  811. package/bundle/src/codex-protocol/v2/CommandExecWriteResponse.ts +0 -8
  812. package/bundle/src/codex-protocol/v2/CommandExecutionApprovalDecision.ts +0 -13
  813. package/bundle/src/codex-protocol/v2/CommandExecutionOutputDeltaNotification.ts +0 -10
  814. package/bundle/src/codex-protocol/v2/CommandExecutionRequestApprovalParams.ts +0 -47
  815. package/bundle/src/codex-protocol/v2/CommandExecutionRequestApprovalResponse.ts +0 -8
  816. package/bundle/src/codex-protocol/v2/CommandExecutionSource.ts +0 -9
  817. package/bundle/src/codex-protocol/v2/CommandExecutionStatus.ts +0 -5
  818. package/bundle/src/codex-protocol/v2/CommandMigration.ts +0 -5
  819. package/bundle/src/codex-protocol/v2/Config.ts +0 -53
  820. package/bundle/src/codex-protocol/v2/ConfigBatchWriteParams.ts +0 -17
  821. package/bundle/src/codex-protocol/v2/ConfigEdit.ts +0 -7
  822. package/bundle/src/codex-protocol/v2/ConfigLayer.ts +0 -12
  823. package/bundle/src/codex-protocol/v2/ConfigLayerMetadata.ts +0 -6
  824. package/bundle/src/codex-protocol/v2/ConfigLayerSource.ts +0 -27
  825. package/bundle/src/codex-protocol/v2/ConfigReadParams.ts +0 -13
  826. package/bundle/src/codex-protocol/v2/ConfigReadResponse.ts +0 -12
  827. package/bundle/src/codex-protocol/v2/ConfigRequirements.ts +0 -15
  828. package/bundle/src/codex-protocol/v2/ConfigRequirementsReadResponse.ts +0 -11
  829. package/bundle/src/codex-protocol/v2/ConfigValueWriteParams.ts +0 -16
  830. package/bundle/src/codex-protocol/v2/ConfigWarningNotification.ts +0 -23
  831. package/bundle/src/codex-protocol/v2/ConfigWriteResponse.ts +0 -16
  832. package/bundle/src/codex-protocol/v2/ConfiguredHookHandler.ts +0 -14
  833. package/bundle/src/codex-protocol/v2/ConfiguredHookMatcherGroup.ts +0 -9
  834. package/bundle/src/codex-protocol/v2/ContextCompactedNotification.ts +0 -8
  835. package/bundle/src/codex-protocol/v2/CreditsSnapshot.ts +0 -5
  836. package/bundle/src/codex-protocol/v2/DeprecationNoticeNotification.ts +0 -14
  837. package/bundle/src/codex-protocol/v2/DynamicToolCallOutputContentItem.ts +0 -7
  838. package/bundle/src/codex-protocol/v2/DynamicToolCallParams.ts +0 -13
  839. package/bundle/src/codex-protocol/v2/DynamicToolCallResponse.ts +0 -9
  840. package/bundle/src/codex-protocol/v2/DynamicToolCallStatus.ts +0 -5
  841. package/bundle/src/codex-protocol/v2/DynamicToolSpec.ts +0 -12
  842. package/bundle/src/codex-protocol/v2/ErrorNotification.ts +0 -11
  843. package/bundle/src/codex-protocol/v2/ExecPolicyAmendment.ts +0 -5
  844. package/bundle/src/codex-protocol/v2/ExperimentalFeature.ts +0 -38
  845. package/bundle/src/codex-protocol/v2/ExperimentalFeatureEnablementSetParams.ts +0 -13
  846. package/bundle/src/codex-protocol/v2/ExperimentalFeatureEnablementSetResponse.ts +0 -10
  847. package/bundle/src/codex-protocol/v2/ExperimentalFeatureListParams.ts +0 -14
  848. package/bundle/src/codex-protocol/v2/ExperimentalFeatureListResponse.ts +0 -13
  849. package/bundle/src/codex-protocol/v2/ExperimentalFeatureStage.ts +0 -10
  850. package/bundle/src/codex-protocol/v2/ExternalAgentConfigDetectParams.ts +0 -14
  851. package/bundle/src/codex-protocol/v2/ExternalAgentConfigDetectResponse.ts +0 -6
  852. package/bundle/src/codex-protocol/v2/ExternalAgentConfigImportCompletedNotification.ts +0 -5
  853. package/bundle/src/codex-protocol/v2/ExternalAgentConfigImportParams.ts +0 -8
  854. package/bundle/src/codex-protocol/v2/ExternalAgentConfigImportResponse.ts +0 -5
  855. package/bundle/src/codex-protocol/v2/ExternalAgentConfigMigrationItem.ts +0 -15
  856. package/bundle/src/codex-protocol/v2/ExternalAgentConfigMigrationItemType.ts +0 -14
  857. package/bundle/src/codex-protocol/v2/FeedbackUploadParams.ts +0 -12
  858. package/bundle/src/codex-protocol/v2/FeedbackUploadResponse.ts +0 -5
  859. package/bundle/src/codex-protocol/v2/FileChangeApprovalDecision.ts +0 -5
  860. package/bundle/src/codex-protocol/v2/FileChangeOutputDeltaNotification.ts +0 -15
  861. package/bundle/src/codex-protocol/v2/FileChangePatchUpdatedNotification.ts +0 -11
  862. package/bundle/src/codex-protocol/v2/FileChangeRequestApprovalParams.ts +0 -22
  863. package/bundle/src/codex-protocol/v2/FileChangeRequestApprovalResponse.ts +0 -6
  864. package/bundle/src/codex-protocol/v2/FileSystemAccessMode.ts +0 -5
  865. package/bundle/src/codex-protocol/v2/FileSystemPath.ts +0 -10
  866. package/bundle/src/codex-protocol/v2/FileSystemSandboxEntry.ts +0 -7
  867. package/bundle/src/codex-protocol/v2/FileSystemSpecialPath.ts +0 -11
  868. package/bundle/src/codex-protocol/v2/FileUpdateChange.ts +0 -6
  869. package/bundle/src/codex-protocol/v2/FsChangedNotification.ts +0 -18
  870. package/bundle/src/codex-protocol/v2/FsCopyParams.ts +0 -22
  871. package/bundle/src/codex-protocol/v2/FsCopyResponse.ts +0 -8
  872. package/bundle/src/codex-protocol/v2/FsCreateDirectoryParams.ts +0 -18
  873. package/bundle/src/codex-protocol/v2/FsCreateDirectoryResponse.ts +0 -8
  874. package/bundle/src/codex-protocol/v2/FsGetMetadataParams.ts +0 -14
  875. package/bundle/src/codex-protocol/v2/FsGetMetadataResponse.ts +0 -29
  876. package/bundle/src/codex-protocol/v2/FsReadDirectoryEntry.ts +0 -21
  877. package/bundle/src/codex-protocol/v2/FsReadDirectoryParams.ts +0 -14
  878. package/bundle/src/codex-protocol/v2/FsReadDirectoryResponse.ts +0 -14
  879. package/bundle/src/codex-protocol/v2/FsReadFileParams.ts +0 -14
  880. package/bundle/src/codex-protocol/v2/FsReadFileResponse.ts +0 -13
  881. package/bundle/src/codex-protocol/v2/FsRemoveParams.ts +0 -22
  882. package/bundle/src/codex-protocol/v2/FsRemoveResponse.ts +0 -8
  883. package/bundle/src/codex-protocol/v2/FsUnwatchParams.ts +0 -13
  884. package/bundle/src/codex-protocol/v2/FsUnwatchResponse.ts +0 -8
  885. package/bundle/src/codex-protocol/v2/FsWatchParams.ts +0 -18
  886. package/bundle/src/codex-protocol/v2/FsWatchResponse.ts +0 -14
  887. package/bundle/src/codex-protocol/v2/FsWriteFileParams.ts +0 -18
  888. package/bundle/src/codex-protocol/v2/FsWriteFileResponse.ts +0 -8
  889. package/bundle/src/codex-protocol/v2/GetAccountParams.ts +0 -14
  890. package/bundle/src/codex-protocol/v2/GetAccountRateLimitsResponse.ts +0 -15
  891. package/bundle/src/codex-protocol/v2/GetAccountResponse.ts +0 -6
  892. package/bundle/src/codex-protocol/v2/GitInfo.ts +0 -5
  893. package/bundle/src/codex-protocol/v2/GrantedPermissionProfile.ts +0 -10
  894. package/bundle/src/codex-protocol/v2/GuardianApprovalReview.ts +0 -18
  895. package/bundle/src/codex-protocol/v2/GuardianApprovalReviewAction.ts +0 -34
  896. package/bundle/src/codex-protocol/v2/GuardianApprovalReviewStatus.ts +0 -13
  897. package/bundle/src/codex-protocol/v2/GuardianCommandSource.ts +0 -5
  898. package/bundle/src/codex-protocol/v2/GuardianRiskLevel.ts +0 -8
  899. package/bundle/src/codex-protocol/v2/GuardianUserAuthorization.ts +0 -8
  900. package/bundle/src/codex-protocol/v2/GuardianWarningNotification.ts +0 -14
  901. package/bundle/src/codex-protocol/v2/HookCompletedNotification.ts +0 -10
  902. package/bundle/src/codex-protocol/v2/HookErrorInfo.ts +0 -5
  903. package/bundle/src/codex-protocol/v2/HookEventName.ts +0 -13
  904. package/bundle/src/codex-protocol/v2/HookExecutionMode.ts +0 -5
  905. package/bundle/src/codex-protocol/v2/HookHandlerType.ts +0 -5
  906. package/bundle/src/codex-protocol/v2/HookMetadata.ts +0 -26
  907. package/bundle/src/codex-protocol/v2/HookMigration.ts +0 -5
  908. package/bundle/src/codex-protocol/v2/HookOutputEntry.ts +0 -6
  909. package/bundle/src/codex-protocol/v2/HookOutputEntryKind.ts +0 -5
  910. package/bundle/src/codex-protocol/v2/HookPromptFragment.ts +0 -5
  911. package/bundle/src/codex-protocol/v2/HookRunStatus.ts +0 -5
  912. package/bundle/src/codex-protocol/v2/HookRunSummary.ts +0 -28
  913. package/bundle/src/codex-protocol/v2/HookScope.ts +0 -5
  914. package/bundle/src/codex-protocol/v2/HookSource.ts +0 -15
  915. package/bundle/src/codex-protocol/v2/HookStartedNotification.ts +0 -10
  916. package/bundle/src/codex-protocol/v2/HookTrustStatus.ts +0 -5
  917. package/bundle/src/codex-protocol/v2/HooksListEntry.ts +0 -12
  918. package/bundle/src/codex-protocol/v2/HooksListParams.ts +0 -10
  919. package/bundle/src/codex-protocol/v2/HooksListResponse.ts +0 -6
  920. package/bundle/src/codex-protocol/v2/ItemCompletedNotification.ts +0 -14
  921. package/bundle/src/codex-protocol/v2/ItemGuardianApprovalReviewCompletedNotification.ts +0 -44
  922. package/bundle/src/codex-protocol/v2/ItemGuardianApprovalReviewStartedNotification.ts +0 -38
  923. package/bundle/src/codex-protocol/v2/ItemStartedNotification.ts +0 -14
  924. package/bundle/src/codex-protocol/v2/ListMcpServerStatusParams.ts +0 -20
  925. package/bundle/src/codex-protocol/v2/ListMcpServerStatusResponse.ts +0 -13
  926. package/bundle/src/codex-protocol/v2/LoginAccountParams.ts +0 -27
  927. package/bundle/src/codex-protocol/v2/LoginAccountResponse.ts +0 -27
  928. package/bundle/src/codex-protocol/v2/LogoutAccountResponse.ts +0 -5
  929. package/bundle/src/codex-protocol/v2/ManagedHooksRequirements.ts +0 -17
  930. package/bundle/src/codex-protocol/v2/MarketplaceAddParams.ts +0 -9
  931. package/bundle/src/codex-protocol/v2/MarketplaceAddResponse.ts +0 -10
  932. package/bundle/src/codex-protocol/v2/MarketplaceInterface.ts +0 -5
  933. package/bundle/src/codex-protocol/v2/MarketplaceLoadErrorInfo.ts +0 -6
  934. package/bundle/src/codex-protocol/v2/MarketplaceRemoveParams.ts +0 -5
  935. package/bundle/src/codex-protocol/v2/MarketplaceRemoveResponse.ts +0 -9
  936. package/bundle/src/codex-protocol/v2/MarketplaceUpgradeErrorInfo.ts +0 -5
  937. package/bundle/src/codex-protocol/v2/MarketplaceUpgradeParams.ts +0 -5
  938. package/bundle/src/codex-protocol/v2/MarketplaceUpgradeResponse.ts +0 -11
  939. package/bundle/src/codex-protocol/v2/McpAuthStatus.ts +0 -5
  940. package/bundle/src/codex-protocol/v2/McpElicitationArrayType.ts +0 -5
  941. package/bundle/src/codex-protocol/v2/McpElicitationBooleanSchema.ts +0 -11
  942. package/bundle/src/codex-protocol/v2/McpElicitationBooleanType.ts +0 -5
  943. package/bundle/src/codex-protocol/v2/McpElicitationConstOption.ts +0 -5
  944. package/bundle/src/codex-protocol/v2/McpElicitationEnumSchema.ts +0 -11
  945. package/bundle/src/codex-protocol/v2/McpElicitationLegacyTitledEnumSchema.ts +0 -13
  946. package/bundle/src/codex-protocol/v2/McpElicitationMultiSelectEnumSchema.ts +0 -9
  947. package/bundle/src/codex-protocol/v2/McpElicitationNumberSchema.ts +0 -13
  948. package/bundle/src/codex-protocol/v2/McpElicitationNumberType.ts +0 -5
  949. package/bundle/src/codex-protocol/v2/McpElicitationObjectType.ts +0 -5
  950. package/bundle/src/codex-protocol/v2/McpElicitationPrimitiveSchema.ts +0 -13
  951. package/bundle/src/codex-protocol/v2/McpElicitationSchema.ts +0 -18
  952. package/bundle/src/codex-protocol/v2/McpElicitationSingleSelectEnumSchema.ts +0 -9
  953. package/bundle/src/codex-protocol/v2/McpElicitationStringFormat.ts +0 -5
  954. package/bundle/src/codex-protocol/v2/McpElicitationStringSchema.ts +0 -15
  955. package/bundle/src/codex-protocol/v2/McpElicitationStringType.ts +0 -5
  956. package/bundle/src/codex-protocol/v2/McpElicitationTitledEnumItems.ts +0 -6
  957. package/bundle/src/codex-protocol/v2/McpElicitationTitledMultiSelectEnumSchema.ts +0 -15
  958. package/bundle/src/codex-protocol/v2/McpElicitationTitledSingleSelectEnumSchema.ts +0 -13
  959. package/bundle/src/codex-protocol/v2/McpElicitationUntitledEnumItems.ts +0 -9
  960. package/bundle/src/codex-protocol/v2/McpElicitationUntitledMultiSelectEnumSchema.ts +0 -15
  961. package/bundle/src/codex-protocol/v2/McpElicitationUntitledSingleSelectEnumSchema.ts +0 -12
  962. package/bundle/src/codex-protocol/v2/McpResourceReadParams.ts +0 -5
  963. package/bundle/src/codex-protocol/v2/McpResourceReadResponse.ts +0 -6
  964. package/bundle/src/codex-protocol/v2/McpServerElicitationAction.ts +0 -5
  965. package/bundle/src/codex-protocol/v2/McpServerElicitationRequestParams.ts +0 -27
  966. package/bundle/src/codex-protocol/v2/McpServerElicitationRequestResponse.ts +0 -19
  967. package/bundle/src/codex-protocol/v2/McpServerMigration.ts +0 -5
  968. package/bundle/src/codex-protocol/v2/McpServerOauthLoginCompletedNotification.ts +0 -9
  969. package/bundle/src/codex-protocol/v2/McpServerOauthLoginParams.ts +0 -9
  970. package/bundle/src/codex-protocol/v2/McpServerOauthLoginResponse.ts +0 -5
  971. package/bundle/src/codex-protocol/v2/McpServerRefreshResponse.ts +0 -5
  972. package/bundle/src/codex-protocol/v2/McpServerStartupState.ts +0 -5
  973. package/bundle/src/codex-protocol/v2/McpServerStatus.ts +0 -15
  974. package/bundle/src/codex-protocol/v2/McpServerStatusDetail.ts +0 -5
  975. package/bundle/src/codex-protocol/v2/McpServerStatusUpdatedNotification.ts +0 -10
  976. package/bundle/src/codex-protocol/v2/McpServerToolCallParams.ts +0 -12
  977. package/bundle/src/codex-protocol/v2/McpServerToolCallResponse.ts +0 -11
  978. package/bundle/src/codex-protocol/v2/McpToolCallError.ts +0 -5
  979. package/bundle/src/codex-protocol/v2/McpToolCallProgressNotification.ts +0 -10
  980. package/bundle/src/codex-protocol/v2/McpToolCallResult.ts +0 -10
  981. package/bundle/src/codex-protocol/v2/McpToolCallStatus.ts +0 -5
  982. package/bundle/src/codex-protocol/v2/MemoryCitation.ts +0 -6
  983. package/bundle/src/codex-protocol/v2/MemoryCitationEntry.ts +0 -10
  984. package/bundle/src/codex-protocol/v2/MergeStrategy.ts +0 -5
  985. package/bundle/src/codex-protocol/v2/MigrationDetails.ts +0 -18
  986. package/bundle/src/codex-protocol/v2/Model.ts +0 -30
  987. package/bundle/src/codex-protocol/v2/ModelAvailabilityNux.ts +0 -5
  988. package/bundle/src/codex-protocol/v2/ModelListParams.ts +0 -18
  989. package/bundle/src/codex-protocol/v2/ModelListResponse.ts +0 -13
  990. package/bundle/src/codex-protocol/v2/ModelProviderCapabilitiesReadParams.ts +0 -5
  991. package/bundle/src/codex-protocol/v2/ModelProviderCapabilitiesReadResponse.ts +0 -9
  992. package/bundle/src/codex-protocol/v2/ModelRerouteReason.ts +0 -5
  993. package/bundle/src/codex-protocol/v2/ModelReroutedNotification.ts +0 -12
  994. package/bundle/src/codex-protocol/v2/ModelServiceTier.ts +0 -5
  995. package/bundle/src/codex-protocol/v2/ModelUpgradeInfo.ts +0 -10
  996. package/bundle/src/codex-protocol/v2/ModelVerification.ts +0 -5
  997. package/bundle/src/codex-protocol/v2/ModelVerificationNotification.ts +0 -10
  998. package/bundle/src/codex-protocol/v2/NetworkAccess.ts +0 -5
  999. package/bundle/src/codex-protocol/v2/NetworkApprovalContext.ts +0 -6
  1000. package/bundle/src/codex-protocol/v2/NetworkApprovalProtocol.ts +0 -5
  1001. package/bundle/src/codex-protocol/v2/NetworkDomainPermission.ts +0 -5
  1002. package/bundle/src/codex-protocol/v2/NetworkPolicyAmendment.ts +0 -6
  1003. package/bundle/src/codex-protocol/v2/NetworkPolicyRuleAction.ts +0 -5
  1004. package/bundle/src/codex-protocol/v2/NetworkRequirements.ts +0 -40
  1005. package/bundle/src/codex-protocol/v2/NetworkUnixSocketPermission.ts +0 -5
  1006. package/bundle/src/codex-protocol/v2/NonSteerableTurnKind.ts +0 -5
  1007. package/bundle/src/codex-protocol/v2/OverriddenMetadata.ts +0 -11
  1008. package/bundle/src/codex-protocol/v2/PatchApplyStatus.ts +0 -5
  1009. package/bundle/src/codex-protocol/v2/PatchChangeKind.ts +0 -8
  1010. package/bundle/src/codex-protocol/v2/PermissionGrantScope.ts +0 -5
  1011. package/bundle/src/codex-protocol/v2/PermissionProfile.ts +0 -14
  1012. package/bundle/src/codex-protocol/v2/PermissionProfileFileSystemPermissions.ts +0 -8
  1013. package/bundle/src/codex-protocol/v2/PermissionProfileModificationParams.ts +0 -9
  1014. package/bundle/src/codex-protocol/v2/PermissionProfileNetworkPermissions.ts +0 -5
  1015. package/bundle/src/codex-protocol/v2/PermissionProfileSelectionParams.ts +0 -10
  1016. package/bundle/src/codex-protocol/v2/PermissionsRequestApprovalParams.ts +0 -18
  1017. package/bundle/src/codex-protocol/v2/PermissionsRequestApprovalResponse.ts +0 -14
  1018. package/bundle/src/codex-protocol/v2/PlanDeltaNotification.ts +0 -14
  1019. package/bundle/src/codex-protocol/v2/PluginAuthPolicy.ts +0 -5
  1020. package/bundle/src/codex-protocol/v2/PluginAvailability.ts +0 -5
  1021. package/bundle/src/codex-protocol/v2/PluginDetail.ts +0 -19
  1022. package/bundle/src/codex-protocol/v2/PluginHookSummary.ts +0 -6
  1023. package/bundle/src/codex-protocol/v2/PluginInstallParams.ts +0 -10
  1024. package/bundle/src/codex-protocol/v2/PluginInstallPolicy.ts +0 -5
  1025. package/bundle/src/codex-protocol/v2/PluginInstallResponse.ts +0 -10
  1026. package/bundle/src/codex-protocol/v2/PluginInterface.ts +0 -46
  1027. package/bundle/src/codex-protocol/v2/PluginListMarketplaceKind.ts +0 -5
  1028. package/bundle/src/codex-protocol/v2/PluginListParams.ts +0 -18
  1029. package/bundle/src/codex-protocol/v2/PluginListResponse.ts +0 -11
  1030. package/bundle/src/codex-protocol/v2/PluginMarketplaceEntry.ts +0 -17
  1031. package/bundle/src/codex-protocol/v2/PluginReadParams.ts +0 -10
  1032. package/bundle/src/codex-protocol/v2/PluginReadResponse.ts +0 -6
  1033. package/bundle/src/codex-protocol/v2/PluginShareContext.ts +0 -12
  1034. package/bundle/src/codex-protocol/v2/PluginShareDeleteParams.ts +0 -5
  1035. package/bundle/src/codex-protocol/v2/PluginShareDeleteResponse.ts +0 -5
  1036. package/bundle/src/codex-protocol/v2/PluginShareDiscoverability.ts +0 -5
  1037. package/bundle/src/codex-protocol/v2/PluginShareListItem.ts +0 -11
  1038. package/bundle/src/codex-protocol/v2/PluginShareListParams.ts +0 -5
  1039. package/bundle/src/codex-protocol/v2/PluginShareListResponse.ts +0 -6
  1040. package/bundle/src/codex-protocol/v2/PluginSharePrincipal.ts +0 -10
  1041. package/bundle/src/codex-protocol/v2/PluginSharePrincipalType.ts +0 -5
  1042. package/bundle/src/codex-protocol/v2/PluginShareSaveParams.ts +0 -13
  1043. package/bundle/src/codex-protocol/v2/PluginShareSaveResponse.ts +0 -5
  1044. package/bundle/src/codex-protocol/v2/PluginShareTarget.ts +0 -6
  1045. package/bundle/src/codex-protocol/v2/PluginShareUpdateDiscoverability.ts +0 -5
  1046. package/bundle/src/codex-protocol/v2/PluginShareUpdateTargetsParams.ts +0 -11
  1047. package/bundle/src/codex-protocol/v2/PluginShareUpdateTargetsResponse.ts +0 -10
  1048. package/bundle/src/codex-protocol/v2/PluginSkillReadParams.ts +0 -9
  1049. package/bundle/src/codex-protocol/v2/PluginSkillReadResponse.ts +0 -5
  1050. package/bundle/src/codex-protocol/v2/PluginSource.ts +0 -9
  1051. package/bundle/src/codex-protocol/v2/PluginSummary.ts +0 -29
  1052. package/bundle/src/codex-protocol/v2/PluginUninstallParams.ts +0 -5
  1053. package/bundle/src/codex-protocol/v2/PluginUninstallResponse.ts +0 -5
  1054. package/bundle/src/codex-protocol/v2/PluginsMigration.ts +0 -5
  1055. package/bundle/src/codex-protocol/v2/ProcessExitedNotification.ts +0 -43
  1056. package/bundle/src/codex-protocol/v2/ProcessOutputDeltaNotification.ts +0 -27
  1057. package/bundle/src/codex-protocol/v2/ProcessOutputStream.ts +0 -8
  1058. package/bundle/src/codex-protocol/v2/ProcessTerminalSize.ts +0 -17
  1059. package/bundle/src/codex-protocol/v2/ProfileV2.ts +0 -37
  1060. package/bundle/src/codex-protocol/v2/RateLimitReachedType.ts +0 -10
  1061. package/bundle/src/codex-protocol/v2/RateLimitSnapshot.ts +0 -17
  1062. package/bundle/src/codex-protocol/v2/RateLimitWindow.ts +0 -9
  1063. package/bundle/src/codex-protocol/v2/RawResponseItemCompletedNotification.ts +0 -10
  1064. package/bundle/src/codex-protocol/v2/ReasoningEffortOption.ts +0 -6
  1065. package/bundle/src/codex-protocol/v2/ReasoningSummaryPartAddedNotification.ts +0 -10
  1066. package/bundle/src/codex-protocol/v2/ReasoningSummaryTextDeltaNotification.ts +0 -11
  1067. package/bundle/src/codex-protocol/v2/ReasoningTextDeltaNotification.ts +0 -11
  1068. package/bundle/src/codex-protocol/v2/RemoteControlConnectionStatus.ts +0 -5
  1069. package/bundle/src/codex-protocol/v2/RemoteControlStatusChangedNotification.ts +0 -12
  1070. package/bundle/src/codex-protocol/v2/RequestPermissionProfile.ts +0 -10
  1071. package/bundle/src/codex-protocol/v2/ResidencyRequirement.ts +0 -5
  1072. package/bundle/src/codex-protocol/v2/ReviewDelivery.ts +0 -5
  1073. package/bundle/src/codex-protocol/v2/ReviewStartParams.ts +0 -15
  1074. package/bundle/src/codex-protocol/v2/ReviewStartResponse.ts +0 -15
  1075. package/bundle/src/codex-protocol/v2/ReviewTarget.ts +0 -16
  1076. package/bundle/src/codex-protocol/v2/SandboxMode.ts +0 -5
  1077. package/bundle/src/codex-protocol/v2/SandboxPolicy.ts +0 -17
  1078. package/bundle/src/codex-protocol/v2/SandboxWorkspaceWrite.ts +0 -10
  1079. package/bundle/src/codex-protocol/v2/SendAddCreditsNudgeEmailParams.ts +0 -6
  1080. package/bundle/src/codex-protocol/v2/SendAddCreditsNudgeEmailResponse.ts +0 -6
  1081. package/bundle/src/codex-protocol/v2/ServerRequestResolvedNotification.ts +0 -6
  1082. package/bundle/src/codex-protocol/v2/SessionMigration.ts +0 -5
  1083. package/bundle/src/codex-protocol/v2/SessionSource.ts +0 -13
  1084. package/bundle/src/codex-protocol/v2/SkillDependencies.ts +0 -6
  1085. package/bundle/src/codex-protocol/v2/SkillErrorInfo.ts +0 -5
  1086. package/bundle/src/codex-protocol/v2/SkillInterface.ts +0 -13
  1087. package/bundle/src/codex-protocol/v2/SkillMetadata.ts +0 -21
  1088. package/bundle/src/codex-protocol/v2/SkillScope.ts +0 -5
  1089. package/bundle/src/codex-protocol/v2/SkillSummary.ts +0 -14
  1090. package/bundle/src/codex-protocol/v2/SkillToolDependency.ts +0 -12
  1091. package/bundle/src/codex-protocol/v2/SkillsChangedNotification.ts +0 -11
  1092. package/bundle/src/codex-protocol/v2/SkillsConfigWriteParams.ts +0 -16
  1093. package/bundle/src/codex-protocol/v2/SkillsConfigWriteResponse.ts +0 -5
  1094. package/bundle/src/codex-protocol/v2/SkillsListEntry.ts +0 -11
  1095. package/bundle/src/codex-protocol/v2/SkillsListParams.ts +0 -14
  1096. package/bundle/src/codex-protocol/v2/SkillsListResponse.ts +0 -6
  1097. package/bundle/src/codex-protocol/v2/SortDirection.ts +0 -5
  1098. package/bundle/src/codex-protocol/v2/SubagentMigration.ts +0 -5
  1099. package/bundle/src/codex-protocol/v2/TerminalInteractionNotification.ts +0 -11
  1100. package/bundle/src/codex-protocol/v2/TextElement.ts +0 -15
  1101. package/bundle/src/codex-protocol/v2/TextPosition.ts +0 -14
  1102. package/bundle/src/codex-protocol/v2/TextRange.ts +0 -6
  1103. package/bundle/src/codex-protocol/v2/Thread.ts +0 -88
  1104. package/bundle/src/codex-protocol/v2/ThreadActiveFlag.ts +0 -5
  1105. package/bundle/src/codex-protocol/v2/ThreadApproveGuardianDeniedActionParams.ts +0 -12
  1106. package/bundle/src/codex-protocol/v2/ThreadApproveGuardianDeniedActionResponse.ts +0 -5
  1107. package/bundle/src/codex-protocol/v2/ThreadArchiveParams.ts +0 -5
  1108. package/bundle/src/codex-protocol/v2/ThreadArchiveResponse.ts +0 -5
  1109. package/bundle/src/codex-protocol/v2/ThreadArchivedNotification.ts +0 -5
  1110. package/bundle/src/codex-protocol/v2/ThreadClosedNotification.ts +0 -5
  1111. package/bundle/src/codex-protocol/v2/ThreadCompactStartParams.ts +0 -5
  1112. package/bundle/src/codex-protocol/v2/ThreadCompactStartResponse.ts +0 -5
  1113. package/bundle/src/codex-protocol/v2/ThreadForkParams.ts +0 -40
  1114. package/bundle/src/codex-protocol/v2/ThreadForkResponse.ts +0 -30
  1115. package/bundle/src/codex-protocol/v2/ThreadGoal.ts +0 -15
  1116. package/bundle/src/codex-protocol/v2/ThreadGoalClearedNotification.ts +0 -5
  1117. package/bundle/src/codex-protocol/v2/ThreadGoalStatus.ts +0 -5
  1118. package/bundle/src/codex-protocol/v2/ThreadGoalUpdatedNotification.ts +0 -10
  1119. package/bundle/src/codex-protocol/v2/ThreadInjectItemsParams.ts +0 -12
  1120. package/bundle/src/codex-protocol/v2/ThreadInjectItemsResponse.ts +0 -5
  1121. package/bundle/src/codex-protocol/v2/ThreadItem.ts +0 -156
  1122. package/bundle/src/codex-protocol/v2/ThreadListParams.ts +0 -55
  1123. package/bundle/src/codex-protocol/v2/ThreadListResponse.ts +0 -20
  1124. package/bundle/src/codex-protocol/v2/ThreadLoadedListParams.ts +0 -14
  1125. package/bundle/src/codex-protocol/v2/ThreadLoadedListResponse.ts +0 -15
  1126. package/bundle/src/codex-protocol/v2/ThreadMetadataGitInfoUpdateParams.ts +0 -21
  1127. package/bundle/src/codex-protocol/v2/ThreadMetadataUpdateParams.ts +0 -14
  1128. package/bundle/src/codex-protocol/v2/ThreadMetadataUpdateResponse.ts +0 -6
  1129. package/bundle/src/codex-protocol/v2/ThreadNameUpdatedNotification.ts +0 -5
  1130. package/bundle/src/codex-protocol/v2/ThreadReadParams.ts +0 -11
  1131. package/bundle/src/codex-protocol/v2/ThreadReadResponse.ts +0 -6
  1132. package/bundle/src/codex-protocol/v2/ThreadRealtimeAudioChunk.ts +0 -14
  1133. package/bundle/src/codex-protocol/v2/ThreadRealtimeClosedNotification.ts +0 -8
  1134. package/bundle/src/codex-protocol/v2/ThreadRealtimeErrorNotification.ts +0 -8
  1135. package/bundle/src/codex-protocol/v2/ThreadRealtimeItemAddedNotification.ts +0 -9
  1136. package/bundle/src/codex-protocol/v2/ThreadRealtimeOutputAudioDeltaNotification.ts +0 -12
  1137. package/bundle/src/codex-protocol/v2/ThreadRealtimeSdpNotification.ts +0 -8
  1138. package/bundle/src/codex-protocol/v2/ThreadRealtimeStartTransport.ts +0 -17
  1139. package/bundle/src/codex-protocol/v2/ThreadRealtimeStartedNotification.ts +0 -13
  1140. package/bundle/src/codex-protocol/v2/ThreadRealtimeTranscriptDeltaNotification.ts +0 -16
  1141. package/bundle/src/codex-protocol/v2/ThreadRealtimeTranscriptDoneNotification.ts +0 -16
  1142. package/bundle/src/codex-protocol/v2/ThreadResumeParams.ts +0 -39
  1143. package/bundle/src/codex-protocol/v2/ThreadResumeResponse.ts +0 -30
  1144. package/bundle/src/codex-protocol/v2/ThreadRollbackParams.ts +0 -14
  1145. package/bundle/src/codex-protocol/v2/ThreadRollbackResponse.ts +0 -15
  1146. package/bundle/src/codex-protocol/v2/ThreadSetNameParams.ts +0 -5
  1147. package/bundle/src/codex-protocol/v2/ThreadSetNameResponse.ts +0 -5
  1148. package/bundle/src/codex-protocol/v2/ThreadShellCommandParams.ts +0 -14
  1149. package/bundle/src/codex-protocol/v2/ThreadShellCommandResponse.ts +0 -5
  1150. package/bundle/src/codex-protocol/v2/ThreadSortKey.ts +0 -5
  1151. package/bundle/src/codex-protocol/v2/ThreadSource.ts +0 -5
  1152. package/bundle/src/codex-protocol/v2/ThreadSourceKind.ts +0 -15
  1153. package/bundle/src/codex-protocol/v2/ThreadStartParams.ts +0 -33
  1154. package/bundle/src/codex-protocol/v2/ThreadStartResponse.ts +0 -30
  1155. package/bundle/src/codex-protocol/v2/ThreadStartSource.ts +0 -5
  1156. package/bundle/src/codex-protocol/v2/ThreadStartedNotification.ts +0 -6
  1157. package/bundle/src/codex-protocol/v2/ThreadStatus.ts +0 -10
  1158. package/bundle/src/codex-protocol/v2/ThreadStatusChangedNotification.ts +0 -6
  1159. package/bundle/src/codex-protocol/v2/ThreadTokenUsage.ts +0 -10
  1160. package/bundle/src/codex-protocol/v2/ThreadTokenUsageUpdatedNotification.ts +0 -10
  1161. package/bundle/src/codex-protocol/v2/ThreadUnarchiveParams.ts +0 -5
  1162. package/bundle/src/codex-protocol/v2/ThreadUnarchiveResponse.ts +0 -6
  1163. package/bundle/src/codex-protocol/v2/ThreadUnarchivedNotification.ts +0 -5
  1164. package/bundle/src/codex-protocol/v2/ThreadUnsubscribeParams.ts +0 -5
  1165. package/bundle/src/codex-protocol/v2/ThreadUnsubscribeResponse.ts +0 -6
  1166. package/bundle/src/codex-protocol/v2/ThreadUnsubscribeStatus.ts +0 -5
  1167. package/bundle/src/codex-protocol/v2/TokenUsageBreakdown.ts +0 -11
  1168. package/bundle/src/codex-protocol/v2/ToolRequestUserInputAnswer.ts +0 -8
  1169. package/bundle/src/codex-protocol/v2/ToolRequestUserInputOption.ts +0 -8
  1170. package/bundle/src/codex-protocol/v2/ToolRequestUserInputParams.ts +0 -14
  1171. package/bundle/src/codex-protocol/v2/ToolRequestUserInputQuestion.ts +0 -16
  1172. package/bundle/src/codex-protocol/v2/ToolRequestUserInputResponse.ts +0 -11
  1173. package/bundle/src/codex-protocol/v2/ToolsV2.ts +0 -6
  1174. package/bundle/src/codex-protocol/v2/Turn.ts +0 -36
  1175. package/bundle/src/codex-protocol/v2/TurnCompletedNotification.ts +0 -6
  1176. package/bundle/src/codex-protocol/v2/TurnDiffUpdatedNotification.ts +0 -9
  1177. package/bundle/src/codex-protocol/v2/TurnEnvironmentParams.ts +0 -6
  1178. package/bundle/src/codex-protocol/v2/TurnError.ts +0 -10
  1179. package/bundle/src/codex-protocol/v2/TurnInterruptParams.ts +0 -5
  1180. package/bundle/src/codex-protocol/v2/TurnInterruptResponse.ts +0 -5
  1181. package/bundle/src/codex-protocol/v2/TurnItemsView.ts +0 -5
  1182. package/bundle/src/codex-protocol/v2/TurnPlanStep.ts +0 -6
  1183. package/bundle/src/codex-protocol/v2/TurnPlanStepStatus.ts +0 -5
  1184. package/bundle/src/codex-protocol/v2/TurnPlanUpdatedNotification.ts +0 -11
  1185. package/bundle/src/codex-protocol/v2/TurnStartParams.ts +0 -48
  1186. package/bundle/src/codex-protocol/v2/TurnStartResponse.ts +0 -6
  1187. package/bundle/src/codex-protocol/v2/TurnStartedNotification.ts +0 -6
  1188. package/bundle/src/codex-protocol/v2/TurnStatus.ts +0 -5
  1189. package/bundle/src/codex-protocol/v2/TurnSteerParams.ts +0 -13
  1190. package/bundle/src/codex-protocol/v2/TurnSteerResponse.ts +0 -5
  1191. package/bundle/src/codex-protocol/v2/UserInput.ts +0 -18
  1192. package/bundle/src/codex-protocol/v2/WarningNotification.ts +0 -14
  1193. package/bundle/src/codex-protocol/v2/WebSearchAction.ts +0 -9
  1194. package/bundle/src/codex-protocol/v2/WindowsSandboxReadiness.ts +0 -5
  1195. package/bundle/src/codex-protocol/v2/WindowsSandboxReadinessResponse.ts +0 -6
  1196. package/bundle/src/codex-protocol/v2/WindowsSandboxSetupCompletedNotification.ts +0 -10
  1197. package/bundle/src/codex-protocol/v2/WindowsSandboxSetupMode.ts +0 -5
  1198. package/bundle/src/codex-protocol/v2/WindowsSandboxSetupStartParams.ts +0 -10
  1199. package/bundle/src/codex-protocol/v2/WindowsSandboxSetupStartResponse.ts +0 -5
  1200. package/bundle/src/codex-protocol/v2/WindowsWorldWritableWarningNotification.ts +0 -9
  1201. package/bundle/src/codex-protocol/v2/WriteStatus.ts +0 -5
  1202. package/bundle/src/codex-protocol/v2/index.ts +0 -446
  1203. package/bundle/src/utils/providers/openai/codex-rpc.ts +0 -238
  1204. package/bundle/src/utils/providers/openai/codex-worker.test.ts +0 -1006
  1205. package/bundle/src/utils/providers/openai/codex-worker.ts +0 -927
  1206. package/bundle/src/utils/providers/openai/openai-worker-pool-config.ts +0 -112
  1207. package/bundle/web-dist/client/assets/index-C0594sjh.js +0 -106
  1208. package/bundle/web-dist/client/assets/index-CcMEpCgt.css +0 -1
  1209. package/bundle/web-dist/client/assets/logs-BotUcOEB.js +0 -1
  1210. package/bundle/web-dist/client/assets/monit-kk3vnGvu.js +0 -1
  1211. package/bundle/web-dist/client/assets/settings-CAAQSIyg.js +0 -1
  1212. package/bundle/web-dist/client/assets/show-BryNvjUT.js +0 -2
  1213. /package/bundle/dist/{codex-protocol/AbsolutePathBuf.js → utils/providers/common/provider-types.js} +0 -0
@@ -182,10 +182,13 @@ const entityLabels = {
182
182
  "entity.RequestLog.effort": "effort level",
183
183
  "entity.RequestLog.history": "inject_items 히스토리",
184
184
  "entity.RequestLog.tools": "요청에 장착된 tool 정의 목록",
185
+ "entity.RequestLog.json_schema": "structured output 요청의 JSON Schema 원문 (detail 의 response 타입 표시용)",
185
186
  "entity.RequestLog.status": "실행 상태",
186
187
  "entity.RequestLog.error_message": "에러 메시지",
188
+ "entity.RequestLog.response_json_ok": "structured(jsonSchema) 요청의 응답 JSON 파싱 성공 여부. 비structured 요청은 null",
187
189
  "entity.RequestLog.tool_call_count": "tool call 횟수",
188
190
  "entity.RequestLog.is_image_generation": "이미지 생성 turn 여부 (quota 귀속용)",
191
+ "entity.RequestLog.is_structured": "structured output(jsonSchema) 요청 여부 (목록 구분 표시용)",
189
192
  "enum.RequestLogOrderBy.id-desc": "ID최신순",
190
193
  "enum.RequestLogOrderBy.id-asc": "ID오래된순",
191
194
  "enum.RequestLogOrderBy.created_at-desc": "등록일시최신순",
@@ -247,7 +250,7 @@ const entityLabels = {
247
250
  "entity.Setting": "Setting",
248
251
  "entity.Setting.id": "ID",
249
252
  "entity.Setting.created_at": "등록일시",
250
- "entity.Setting.key": "설정 키 (예: openai.maxWorkersPerToken)",
253
+ "entity.Setting.key": "설정 키 (예: slack.enabled)",
251
254
  "entity.Setting.value": "설정 값 (문자열 저장, 앱에서 파싱·검증)",
252
255
  "entity.Setting.updated_at": "최종 수정일시",
253
256
  "enum.SettingOrderBy.key-asc": "키순",
@@ -385,4 +388,4 @@ SD.enumLabels = (enumName) => {
385
388
  //#endregion
386
389
  export { SD, defineLocale, localizedColumn };
387
390
 
388
- //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QuZ2VuZXJhdGVkLmpzIiwibmFtZXMiOlsia28iLCJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pMThuL3NkLmdlbmVyYXRlZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBnZW5lcmF0ZWRcbiAqIOyngeygkSDsiJjsoJXtlZjsp4Ag66eI7IS47JqULlxuICovXG5cbmltcG9ydCB7IFNvbmFtdSB9IGZyb20gXCJzb25hbXVcIjtcblxuY29uc3QgREVGQVVMVF9MT0NBTEUgPSBcImtvXCIgYXMgY29uc3Q7XG5jb25zdCBTVVBQT1JURURfTE9DQUxFUyA9IFtcImtvXCIsIFwiZW5cIl0gYXMgY29uc3Q7XG5mdW5jdGlvbiBnZXRDdXJyZW50TG9jYWxlKCk6ICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0ge1xuICB0cnkge1xuICAgIGNvbnN0IGN0eCA9IFNvbmFtdS5nZXRDb250ZXh0KCk7XG4gICAgcmV0dXJuIChjdHgubG9jYWxlIGFzICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0pID8/IERFRkFVTFRfTE9DQUxFO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gREVGQVVMVF9MT0NBTEU7XG4gIH1cbn1cblxuaW1wb3J0IGVuIGZyb20gXCIuL2VuXCI7XG5pbXBvcnQga28gZnJvbSBcIi4va29cIjtcblxuLy8gcmVhY3QtY29tcG9uZW50cyBpMThuIGtleXNcbmNvbnN0IHJjS2V5c0tvID0ge1xuICAvLyBBc3luY1NlbGVjdCBDb21wb25lbnRcbiAgXCJyYy5hc3luY1NlbGVjdC5sb2FkaW5nXCI6IFwi66Gc65SpIOykkS4uLlwiLFxuICBcInJjLmFzeW5jU2VsZWN0Lm5vT3B0aW9uc1wiOiBcIuyYteyFmOydtCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5hc3luY1NlbGVjdC5ub1Jlc3VsdHNcIjogXCLqsoDsg4kg6rKw6rO86rCAIOyXhuyKteuLiOuLpFwiLFxuICBcInJjLmFzeW5jU2VsZWN0LnNlbGVjdFBsYWNlaG9sZGVyXCI6IFwi7ISg7YOd7ZWY7IS47JqULi4uXCIsXG5cbiAgLy8gQ29tYm9ib3ggQ29tcG9uZW50XG4gIFwicmMuY29tYm9ib3gubm9SZXN1bHRzXCI6IFwi6rKA7IOJIOqysOqzvOqwgCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5jb21ib2JveC5zZWxlY3RQbGFjZWhvbGRlclwiOiBcIuyEoO2Dne2VmOyEuOyalC4uLlwiLFxuXG4gIC8vIERhdGVQaWNrZXIgQ29tcG9uZW50XG4gIFwicmMuZGF0ZVBpY2tlci5waWNrRGF0ZVwiOiBcIuuCoOynnCDshKDtg51cIixcbiAgXCJyYy5kYXRlUGlja2VyLnBsYWNlaG9sZGVyXCI6IFwi64Kg7KecIOyEoO2DnVwiLFxuICBcInJjLmRhdGVQaWNrZXIuc2VsZWN0RGF0ZVwiOiBcIuuCoOynnCDshKDtg51cIixcblxuICAvLyBEYXRlU2VsZWN0b3JNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5hZGREYXRlXCI6IFwi64Kg7KecIOy2lOqwgFwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLmRhdGVSYW5nZVwiOiBcIuq4sOqwhFwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwi64Kg7KecIOyEoO2DnVwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnNpbmdsZURhdGVcIjogXCLri6jsnbxcIixcblxuICAvLyBGaWxlSW5wdXQgQ29tcG9uZW50XG4gIFwicmMuZmlsZUlucHV0LmJyb3dzZUZpbGVzXCI6IFwi7YyM7J28IOywvuq4sFwiLFxuICBcInJjLmZpbGVJbnB1dC5kcm9wWm9uZVwiOiBcIu2MjOydvOydhCDrk5zrnpjqt7jtlZjqsbDrgpgg7YG066at7ZWY7JesIOyXheuhnOuTnFwiLFxuICBcInJjLmZpbGVJbnB1dC5maWxlUGxhY2Vob2xkZXJcIjogXCLtjIzsnbxcIixcbiAgXCJyYy5maWxlSW5wdXQuaW1hZ2VQbGFjZWhvbGRlclwiOiBcIuydtOuvuOyngFwiLFxuICBcInJjLmZpbGVJbnB1dC5tYXhGaWxlc0V4Y2VlZGVkXCI6IChtYXhGaWxlczogbnVtYmVyKSA9PlxuICAgIGDstZzrjIAgJHttYXhGaWxlc33qsJwg7YyM7J2866eMIOyXheuhnOuTnCDqsIDriqXtlanri4jri6RgLFxuICBcInJjLmZpbGVJbnB1dC5wZW5kaW5nXCI6IFwi64yA6riwIOykkVwiLFxuICBcInJjLmZpbGVJbnB1dC5yZW1vdmVcIjogXCLsoJzqsbBcIixcbiAgXCJyYy5maWxlSW5wdXQudXBsb2FkRmFpbGVkXCI6IFwi7JeF66Gc65OcIOyLpO2MqFwiLFxuICBcInJjLmZpbGVJbnB1dC51cGxvYWRpbmdcIjogXCLsl4XroZzrk5wg7KSRLi4uXCIsXG5cbiAgLy8gTW9udGhQaWNrZXJNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLmFkZE1vbnRoXCI6IFwi7JuUIOy2lOqwgFwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuZGF0ZVJhbmdlXCI6IFwi6riw6rCEXCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5lbmREYXRlXCI6IFwi7KKF66OM7J28XCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5wbGFjZWhvbGRlclwiOiBcIuyblCDshKDtg51cIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnNpbmdsZURhdGVcIjogXCLri6jsnbxcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnN0YXJ0RGF0ZVwiOiBcIuyLnOyekeydvFwiLFxuXG4gIC8vIE11bHRpU2VsZWN0IENvbXBvbmVudFxuICBcInJjLm11bHRpU2VsZWN0LmNsZWFyXCI6IFwi7KCE7LK0IO2VtOygnFwiLFxuICBcInJjLm11bHRpU2VsZWN0LmNsb3NlXCI6IFwi64ur6riwXCIsXG4gIFwicmMubXVsdGlTZWxlY3QubW9yZUl0ZW1zXCI6IChjb3VudDogbnVtYmVyKSA9PiBgKyR7Y291bnR96rCcIOuNlOuztOq4sGAsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9PcHRpb25zXCI6IFwi7Ji17IWY7J20IOyXhuyKteuLiOuLpFwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm5vT3B0aW9uc1NlbGVjdGVkXCI6IFwi7ISg7YOd65CcIOyYteyFmOydtCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5tdWx0aVNlbGVjdC5ub1Jlc3VsdHNcIjogXCLqsoDsg4kg6rKw6rO86rCAIOyXhuyKteuLiOuLpFwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm9wdGlvbnNDb3VudFwiOiAoY291bnQ6IG51bWJlcikgPT4gYCR7Y291bnR96rCcIOyYteyFmGAsXG4gIFwicmMubXVsdGlTZWxlY3Quc2VsZWN0QWxsXCI6IFwi7KCE7LK0IOyEoO2DnVwiLFxuICBcInJjLm11bHRpU2VsZWN0LnNlbGVjdFBsYWNlaG9sZGVyXCI6IFwi7ISg7YOd7ZWY7IS47JqULi4uXCIsXG5cbiAgLy8gUGFnaW5hdGlvbiBDb21wb25lbnRcbiAgXCJyYy5wYWdpbmF0aW9uLm5leHRcIjogXCLri6TsnYxcIixcbiAgXCJyYy5wYWdpbmF0aW9uLnByZXZpb3VzXCI6IFwi7J207KCEXCIsXG4gIFwicmMucGFnaW5hdGlvbi5zaG93aW5nXCI6IChzdGFydDogbnVtYmVyLCBlbmQ6IG51bWJlciwgdG90YWw6IG51bWJlcikgPT5cbiAgICBgJHt0b3RhbH3qsJwg7KSRICR7c3RhcnR9LSR7ZW5kfWAsXG5cbiAgLy8gQ2FsZW5kYXIgQ29tcG9uZW50XG4gIFwicmMuY2FsZW5kYXIubW9udGguMFwiOiBcIjHsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC4xXCI6IFwiMuyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjJcIjogXCIz7JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguM1wiOiBcIjTsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC40XCI6IFwiNeyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjVcIjogXCI27JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguNlwiOiBcIjfsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC43XCI6IFwiOOyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjhcIjogXCI57JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguOVwiOiBcIjEw7JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguMTBcIjogXCIxMeyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjExXCI6IFwiMTLsm5RcIixcblxuICAvLyBTb25hbXUgRmlsdGVyIENvbXBvbmVudFxuICBcInJjLnNvbmFtdUZpbHRlci50aXRsZVwiOiBcIuyGjOuCmOustCDtlYTthLBcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYXBwbHlcIjogXCLsoIHsmqlcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIucmVzZXRcIjogXCLstIjquLDtmZRcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYWRkUnVsZVwiOiBcIuq3nOy5mSDstpTqsIBcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm9SdWxlc1lldFwiOiAn7JWE7KeBIOq3nOy5meydtCDsl4bsirXri4jri6QuIFwiKyDqt5zsuZkg7LaU6rCAXCLrpbwg7YG066at7ZWY7JesIOyLnOyeke2VmOyEuOyalC4nLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RGaWVsZFwiOiBcIu2VhOuTnCDshKDtg51cIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuc2VsZWN0T3BlcmF0b3JcIjogXCLsl7DsgrDsnpAg7ISg7YOdXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLnNlbGVjdE9wZXJhdG9yRmlyc3RcIjogXCLrqLzsoIAg7Jew7IKw7J6Q66W8IOyEoO2Dne2VmOyEuOyalFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbnRlclZhbHVlXCI6IFwi6rCSIOyeheugpVwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbnRlck51bWJlclwiOiBcIuyIq+yekCDsnoXroKVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm90U3VwcG9ydGVkXCI6IFwi7KeA7JuQ7ZWY7KeAIOyViuydjFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5zdGFydERhdGVcIjogXCLsi5zsnpHsnbxcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuZW5kRGF0ZVwiOiBcIuyiheujjOydvFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5hcHBsaWVkRmlsdGVyc1wiOiBcIvCfjLIg7KCB7Jqp65CcIOyGjOuCmOustCDtlYTthLBcIixcblxuICAvLyBDb21tb25cbiAgXCJyYy5jb21tb24uY2FuY2VsXCI6IFwi7Leo7IaMXCIsXG4gIFwicmMuY29tbW9uLnNhdmVcIjogXCLsoIDsnqVcIixcbn07XG5cbmNvbnN0IHJjS2V5c0VuID0ge1xuICAvLyBBc3luY1NlbGVjdCBDb21wb25lbnRcbiAgXCJyYy5hc3luY1NlbGVjdC5sb2FkaW5nXCI6IFwiTG9hZGluZy4uLlwiLFxuICBcInJjLmFzeW5jU2VsZWN0Lm5vT3B0aW9uc1wiOiBcIk5vIG9wdGlvbnNcIixcbiAgXCJyYy5hc3luY1NlbGVjdC5ub1Jlc3VsdHNcIjogXCJObyByZXN1bHRzXCIsXG4gIFwicmMuYXN5bmNTZWxlY3Quc2VsZWN0UGxhY2Vob2xkZXJcIjogXCJTZWxlY3QuLi5cIixcblxuICAvLyBDb21ib2JveCBDb21wb25lbnRcbiAgXCJyYy5jb21ib2JveC5ub1Jlc3VsdHNcIjogXCJObyByZXN1bHRzXCIsXG4gIFwicmMuY29tYm9ib3guc2VsZWN0UGxhY2Vob2xkZXJcIjogXCJTZWxlY3QuLi5cIixcblxuICAvLyBEYXRlUGlja2VyIENvbXBvbmVudFxuICBcInJjLmRhdGVQaWNrZXIucGlja0RhdGVcIjogXCJQaWNrIGRhdGVcIixcbiAgXCJyYy5kYXRlUGlja2VyLnBsYWNlaG9sZGVyXCI6IFwiUGljayBkYXRlXCIsXG4gIFwicmMuZGF0ZVBpY2tlci5zZWxlY3REYXRlXCI6IFwiU2VsZWN0IGRhdGVcIixcblxuICAvLyBEYXRlU2VsZWN0b3JNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5hZGREYXRlXCI6IFwiQWRkIGRhdGVcIixcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5kYXRlUmFuZ2VcIjogXCJSYW5nZVwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwiUGljayBkYXRlXCIsXG4gIFwicmMuZGF0ZVNlbGVjdG9yTXVsdGlwbGUuc2luZ2xlRGF0ZVwiOiBcIlNpbmdsZVwiLFxuXG4gIC8vIEZpbGVJbnB1dCBDb21wb25lbnRcbiAgXCJyYy5maWxlSW5wdXQuYnJvd3NlRmlsZXNcIjogXCJCcm93c2UgZmlsZXNcIixcbiAgXCJyYy5maWxlSW5wdXQuZHJvcFpvbmVcIjogXCJEcmFnIGZpbGVzIGhlcmUgb3IgY2xpY2sgdG8gdXBsb2FkXCIsXG4gIFwicmMuZmlsZUlucHV0LmZpbGVQbGFjZWhvbGRlclwiOiBcIkZpbGVcIixcbiAgXCJyYy5maWxlSW5wdXQuaW1hZ2VQbGFjZWhvbGRlclwiOiBcIkltYWdlXCIsXG4gIFwicmMuZmlsZUlucHV0Lm1heEZpbGVzRXhjZWVkZWRcIjogKG1heEZpbGVzOiBudW1iZXIpID0+IGBNYXhpbXVtICR7bWF4RmlsZXN9IGZpbGVzIGFsbG93ZWRgLFxuICBcInJjLmZpbGVJbnB1dC5wZW5kaW5nXCI6IFwiUGVuZGluZ1wiLFxuICBcInJjLmZpbGVJbnB1dC5yZW1vdmVcIjogXCJSZW1vdmVcIixcbiAgXCJyYy5maWxlSW5wdXQudXBsb2FkRmFpbGVkXCI6IFwiVXBsb2FkIGZhaWxlZFwiLFxuICBcInJjLmZpbGVJbnB1dC51cGxvYWRpbmdcIjogXCJVcGxvYWRpbmcuLi5cIixcblxuICAvLyBNb250aFBpY2tlck11bHRpcGxlIENvbXBvbmVudFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuYWRkTW9udGhcIjogXCJBZGQgbW9udGhcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLmRhdGVSYW5nZVwiOiBcIlJhbmdlXCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5lbmREYXRlXCI6IFwiRW5kIGRhdGVcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwiUGljayBtb250aFwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuc2luZ2xlRGF0ZVwiOiBcIlNpbmdsZVwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuc3RhcnREYXRlXCI6IFwiU3RhcnQgZGF0ZVwiLFxuXG4gIC8vIE11bHRpU2VsZWN0IENvbXBvbmVudFxuICBcInJjLm11bHRpU2VsZWN0LmNsZWFyXCI6IFwiQ2xlYXIgYWxsXCIsXG4gIFwicmMubXVsdGlTZWxlY3QuY2xvc2VcIjogXCJDbG9zZVwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm1vcmVJdGVtc1wiOiAoY291bnQ6IG51bWJlcikgPT4gYCske2NvdW50fSBtb3JlYCxcbiAgXCJyYy5tdWx0aVNlbGVjdC5ub09wdGlvbnNcIjogXCJObyBvcHRpb25zXCIsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9PcHRpb25zU2VsZWN0ZWRcIjogXCJObyBvcHRpb25zIHNlbGVjdGVkXCIsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9SZXN1bHRzXCI6IFwiTm8gcmVzdWx0c1wiLFxuICBcInJjLm11bHRpU2VsZWN0Lm9wdGlvbnNDb3VudFwiOiAoY291bnQ6IG51bWJlcikgPT4gYCR7Y291bnR9IG9wdGlvbnNgLFxuICBcInJjLm11bHRpU2VsZWN0LnNlbGVjdEFsbFwiOiBcIlNlbGVjdCBhbGxcIixcbiAgXCJyYy5tdWx0aVNlbGVjdC5zZWxlY3RQbGFjZWhvbGRlclwiOiBcIlNlbGVjdC4uLlwiLFxuXG4gIC8vIFBhZ2luYXRpb24gQ29tcG9uZW50XG4gIFwicmMucGFnaW5hdGlvbi5uZXh0XCI6IFwiTmV4dFwiLFxuICBcInJjLnBhZ2luYXRpb24ucHJldmlvdXNcIjogXCJQcmV2aW91c1wiLFxuICBcInJjLnBhZ2luYXRpb24uc2hvd2luZ1wiOiAoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIsIHRvdGFsOiBudW1iZXIpID0+XG4gICAgYFNob3dpbmcgJHtzdGFydH0tJHtlbmR9IG9mICR7dG90YWx9YCxcblxuICAvLyBDYWxlbmRhciBDb21wb25lbnRcbiAgXCJyYy5jYWxlbmRhci5tb250aC4wXCI6IFwiSmFudWFyeVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjFcIjogXCJGZWJydWFyeVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjJcIjogXCJNYXJjaFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjNcIjogXCJBcHJpbFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjRcIjogXCJNYXlcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC41XCI6IFwiSnVuZVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjZcIjogXCJKdWx5XCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguN1wiOiBcIkF1Z3VzdFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjhcIjogXCJTZXB0ZW1iZXJcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC45XCI6IFwiT2N0b2JlclwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjEwXCI6IFwiTm92ZW1iZXJcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC4xMVwiOiBcIkRlY2VtYmVyXCIsXG5cbiAgLy8gU29uYW11IEZpbHRlciBDb21wb25lbnRcbiAgXCJyYy5zb25hbXVGaWx0ZXIudGl0bGVcIjogXCJTb25hbXUgRmlsdGVyXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLmFwcGx5XCI6IFwiQXBwbHlcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIucmVzZXRcIjogXCJSZXNldFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5hZGRSdWxlXCI6IFwiQWRkIFJ1bGVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm9SdWxlc1lldFwiOiAnTm8gcnVsZXMgeWV0LiBDbGljayBcIisgQWRkIFJ1bGVcIiB0byBzdGFydC4nLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RGaWVsZFwiOiBcIlNlbGVjdCBmaWVsZFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RPcGVyYXRvclwiOiBcIk9wZXJhdG9yXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLnNlbGVjdE9wZXJhdG9yRmlyc3RcIjogXCJTZWxlY3Qgb3BlcmF0b3IgZmlyc3RcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuZW50ZXJWYWx1ZVwiOiBcIkVudGVyIHZhbHVlXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLmVudGVyTnVtYmVyXCI6IFwiRW50ZXIgbnVtYmVyXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLm5vdFN1cHBvcnRlZFwiOiBcIk5vdCBzdXBwb3J0ZWRcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuc3RhcnREYXRlXCI6IFwiU3RhcnQgZGF0ZVwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbmREYXRlXCI6IFwiRW5kIGRhdGVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYXBwbGllZEZpbHRlcnNcIjogXCLwn4yyIEFwcGxpZWQgU29uYW11RmlsdGVyc1wiLFxuXG4gIC8vIENvbW1vblxuICBcInJjLmNvbW1vbi5jYW5jZWxcIjogXCJDYW5jZWxcIixcbiAgXCJyYy5jb21tb24uc2F2ZVwiOiBcIlNhdmVcIixcbn0gYXMgY29uc3Q7XG5cbi8vIGVudGl0eS5qc29u7JeQ7IScIOy2lOy2nO2VnCBlbnRpdHkgbGFiZWxzIChkZWZhdWx0TG9jYWxlIOyghOyaqSlcbmNvbnN0IGVudGl0eUxhYmVscyA9IHtcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1wiOiBcIlJlcXVlc3RMb2dcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuY3JlYXRlZF9hdFwiOiBcIuuTseuhneydvOyLnFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnRva2VuX25hbWVcIjogXCLthqDtgbAg7J2066aEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucHJvamVjdF9uYW1lXCI6IFwi7ZSE66Gc7KCd7Yq4IOydtOumhFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLm1vZGVsX25hbWVcIjogXCLrqqjrjbgg7J2066aEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucmVxdWVzdGVkX21vZGVsX25hbWVcIjogXCLsmpTssq0g66qo6424IOydtOumhCAoZmFsbGJhY2sg7KCEKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmZhbGxiYWNrX2NvdW50XCI6IFwi66qo6424IGZhbGxiYWNrIO2an+yImFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnVzZXJfcHJvbXB0XCI6IFwi7IKs7Jqp7J6QIO2UhOuhrO2UhO2KuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnN5c3RlbV9wcm9tcHRcIjogXCLsi5zsiqTthZwg7ZSE66Gs7ZSE7Yq4XCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucmVzcG9uc2VcIjogXCJsbG0g7J2R64u1IOyghOusuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmlucHV0X3Rva2Vuc1wiOiBcIuyeheugpSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5vdXRwdXRfdG9rZW5zXCI6IFwi7Lac66ClIO2GoO2BsFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNhY2hlX3JlYWRfdG9rZW5zXCI6IFwi7LqQ7IucIOydveq4sCDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5jYWNoZV9jcmVhdGlvbl90b2tlbnNcIjogXCLsupDsi5wg7IOd7ISxIO2GoO2BsFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNhY2hlX2NyZWF0aW9uXzVtX3Rva2Vuc1wiOiBcIjXrtoQgVFRMIOy6kOyLnCDsg53shLEg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuY2FjaGVfY3JlYXRpb25fMWhfdG9rZW5zXCI6IFwiMeyLnOqwhCBUVEwg7LqQ7IucIOyDneyEsSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5kdXJhdGlvbl9tc1wiOiBcIuydkeuLtSDshozsmpTsi5zqsIQobXMpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cudHRmdF9tc1wiOiBcImZpcnN0IGdlbiBUVEZUKG1zKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNvc3RfdXNkXCI6IFwiQVBJIOu5hOyaqVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNvc3Rfc291cmNlXCI6IFwi67mE7JqpIOy2nOyymChwcm92aWRlci9wcmljaW5nX3RhYmxlL21peGVkKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmltYWdlX2Nvc3RfdXNkXCI6IFwi7J2066+47KeAIOyDneyEsSDstpTsoJUg67mE7JqpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuaW1hZ2VfY29zdF9tZXRob2RcIjogXCLsnbTrr7jsp4Ag67mE7JqpIOy2lOyglSDrsKnsi51cIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5lZmZvcnRcIjogXCJlZmZvcnQgbGV2ZWxcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5oaXN0b3J5XCI6IFwiaW5qZWN0X2l0ZW1zIO2eiOyKpO2GoOumrFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnRvb2xzXCI6IFwi7JqU7LKt7JeQIOyepeywqeuQnCB0b29sIOygleydmCDrqqnroZ1cIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5zdGF0dXNcIjogXCLsi6Ttlokg7IOB7YOcXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuZXJyb3JfbWVzc2FnZVwiOiBcIuyXkOufrCDrqZTsi5zsp4BcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy50b29sX2NhbGxfY291bnRcIjogXCJ0b29sIGNhbGwg7Zqf7IiYXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuaXNfaW1hZ2VfZ2VuZXJhdGlvblwiOiBcIuydtOuvuOyngCDsg53shLEgdHVybiDsl6zrtoAgKHF1b3RhIOq3gOyGjeyaqSlcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LmlkLWRlc2NcIjogXCJJROy1nOyLoOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuaWQtYXNjXCI6IFwiSUTsmKTrnpjrkJzsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LmNyZWF0ZWRfYXQtZGVzY1wiOiBcIuuTseuhneydvOyLnOy1nOyLoOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY3JlYXRlZF9hdC1hc2NcIjogXCLrk7HroZ3snbzsi5zsmKTrnpjrkJzsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LnR0ZnRfbXMtZGVzY1wiOiBcIlRURlTquLTsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LnR0ZnRfbXMtYXNjXCI6IFwiVFRGVOynp+ydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuZHVyYXRpb25fbXMtZGVzY1wiOiBcIuyGjOyalOyLnOqwhOq4tOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuZHVyYXRpb25fbXMtYXNjXCI6IFwi7IaM7JqU7Iuc6rCE7Ken7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5pbnB1dF90b2tlbnMtZGVzY1wiOiBcIuyeheugpe2GoO2BsOunjuydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuaW5wdXRfdG9rZW5zLWFzY1wiOiBcIuyeheugpe2GoO2BsOyggeydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkub3V0cHV0X3Rva2Vucy1kZXNjXCI6IFwi7Lac66Cl7Yag7YGw66eO7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5vdXRwdXRfdG9rZW5zLWFzY1wiOiBcIuy2nOugpe2GoO2BsOyggeydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY2FjaGVfcmVhZF90b2tlbnMtZGVzY1wiOiBcIuy6kOyLnOydveq4sOunjuydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY2FjaGVfcmVhZF90b2tlbnMtYXNjXCI6IFwi7LqQ7Iuc7J296riw7KCB7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jYWNoZV9jcmVhdGlvbl90b2tlbnMtZGVzY1wiOiBcIuy6kOyLnOyDneyEseunjuydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY2FjaGVfY3JlYXRpb25fdG9rZW5zLWFzY1wiOiBcIuy6kOyLnOyDneyEseyggeydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY29zdF91c2QtZGVzY1wiOiBcIuu5hOyaqeuGkuydgOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY29zdF91c2QtYXNjXCI6IFwi67mE7Jqp64Ku7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU2VhcmNoRmllbGQuaWRcIjogXCJJRFwiLFxuICBcImVudW0uUmVxdWVzdExvZ1NlYXJjaEZpZWxkLnRva2VuX25hbWVcIjogXCLthqDtgbDsnbTrpoRcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTZWFyY2hGaWVsZC51c2VyX3Byb21wdFwiOiBcIuyCrOyaqeyekCDtlITroaztlITtirhcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGF0dXMucnVubmluZ1wiOiBcIuyLpO2WiSDspJFcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGF0dXMuc3VjY2VlZGVkXCI6IFwi7ISx6rO1XCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU3RhdHVzLmVycm9yXCI6IFwi7JeQ65+sXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU3RhdHVzLmFib3J0ZWRcIjogXCLspJHri6hcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXBcIjogXCJSZXF1ZXN0TG9nU3RlcFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNyZWF0ZWRfYXRcIjogXCLrk7HroZ3snbzsi5xcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAucmVxdWVzdF9sb2dcIjogXCLrtoDrqqggcmVxdWVzdCBsb2cgSURcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuc3RlcF9pbmRleFwiOiBcImFpLXNkayBzdGVwIG51bWJlciAoMC1iYXNlZClcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudHlwZVwiOiBcInN0ZXAg7YOA7J6FXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLm1vZGVsX25hbWVcIjogXCLsi6TsoJwgc2VydmluZyDrqqjrjbhcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAucmVxdWVzdGVkX21vZGVsX25hbWVcIjogXCLsmpTssq0g66qo6424IChmYWxsYmFjayDsoIQpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmZhbGxiYWNrX2NvdW50XCI6IFwi66qo6424IGZhbGxiYWNrIO2an+yImFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5pbnB1dF90b2tlbnNcIjogXCLsnoXroKUg7Yag7YGwIChnZW5lcmF0ZSlcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAub3V0cHV0X3Rva2Vuc1wiOiBcIuy2nOugpSDthqDtgbAgKGdlbmVyYXRlKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5jYWNoZV9yZWFkX3Rva2Vuc1wiOiBcIuy6kOyLnCDsnb3quLAg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNhY2hlX2NyZWF0aW9uX3Rva2Vuc1wiOiBcIuy6kOyLnCDsg53shLEg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNhY2hlX2NyZWF0aW9uXzVtX3Rva2Vuc1wiOiBcIjXrtoQgVFRMIOy6kOyLnCDsg53shLEg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNhY2hlX2NyZWF0aW9uXzFoX3Rva2Vuc1wiOiBcIjHsi5zqsIQgVFRMIOy6kOyLnCDsg53shLEg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNvc3RfdXNkXCI6IFwic3RlcCDruYTsmqkgKG1pY3JvLVVTRClcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY29zdF9zb3VyY2VcIjogXCLruYTsmqkg7Lac7LKYKHByb3ZpZGVyL3ByaWNpbmdfdGFibGUpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmR1cmF0aW9uX21zXCI6IFwi7IaM7JqU7Iuc6rCEKG1zKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC50dGZ0X21zXCI6IFwiR2VuIFRURlQobXMpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmZpbmlzaF9yZWFzb25cIjogXCLsmYTro4wg7IKs7JygXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnJlYXNvbmluZ190ZXh0XCI6IFwicmVhc29uaW5nIO2FjeyKpO2KuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5yZWFzb25pbmdfdG9rZW5zXCI6IFwicmVhc29uaW5nIO2GoO2BsCDsiJhcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9jYWxsX2luZGV4XCI6IFwi6rCZ7J2AIHN0ZXAg64K0IHRvb2wgY2FsbCDsiJzshJxcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9jYWxsX2lkXCI6IFwidG9vbCBjYWxsIElEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnRvb2xfbmFtZVwiOiBcInRvb2wg7J2066aEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnRvb2xfYXJnc1wiOiBcInRvb2wg7J247J6QIChKU09OIHN0cmluZylcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9yZXN1bHRcIjogXCJ0b29sIOqysOqzvCAoSlNPTiBzdHJpbmcpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnRvb2xfZHVyYXRpb25fbXNcIjogXCJ0b29sIOyLpO2WiSDshozsmpTsi5zqsIQobXMpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmVycm9yXCI6IFwic3RlcCDsl5Drn6wg66mU7Iuc7KeAXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU3RlcFR5cGUuZ2VuZXJhdGVcIjogXCJMTE0g7IOd7ISxXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU3RlcFR5cGUudG9vbF9jYWxsXCI6IFwiVG9vbCDtmLjstpxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGVwT3JkZXJCeS5pZC1hc2NcIjogXCJJROyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ1N0ZXBTZWFyY2hGaWVsZC5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlNldHRpbmdcIjogXCJTZXR0aW5nXCIsXG4gIFwiZW50aXR5LlNldHRpbmcuaWRcIjogXCJJRFwiLFxuICBcImVudGl0eS5TZXR0aW5nLmNyZWF0ZWRfYXRcIjogXCLrk7HroZ3snbzsi5xcIixcbiAgXCJlbnRpdHkuU2V0dGluZy5rZXlcIjogXCLshKTsoJUg7YKkICjsmIg6IG9wZW5haS5tYXhXb3JrZXJzUGVyVG9rZW4pXCIsXG4gIFwiZW50aXR5LlNldHRpbmcudmFsdWVcIjogXCLshKTsoJUg6rCSICjrrLjsnpDsl7Qg7KCA7J6lLCDslbHsl5DshJwg7YyM7IuxwrfqsoDspp0pXCIsXG4gIFwiZW50aXR5LlNldHRpbmcudXBkYXRlZF9hdFwiOiBcIuy1nOyihSDsiJjsoJXsnbzsi5xcIixcbiAgXCJlbnVtLlNldHRpbmdPcmRlckJ5LmtleS1hc2NcIjogXCLtgqTsiJxcIixcbiAgXCJlbnVtLlNldHRpbmdTZWFyY2hGaWVsZC5rZXlcIjogXCLtgqRcIixcbiAgXCJlbnRpdHkuVG9rZW5cIjogXCJUb2tlblwiLFxuICBcImVudGl0eS5Ub2tlbi5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlRva2VuLmNyZWF0ZWRfYXRcIjogXCLrk7HroZ3snbzsi5xcIixcbiAgXCJlbnRpdHkuVG9rZW4ucHJvdmlkZXJcIjogXCLtlITroZzrsJTsnbTrjZRcIixcbiAgXCJlbnRpdHkuVG9rZW4uY3JlZGVudGlhbHNcIjogXCLsnbjspp0g7KCV67O0IChKU09OQilcIixcbiAgXCJlbnRpdHkuVG9rZW4ubmFtZVwiOiBcIu2GoO2BsCDsnbTrpoRcIixcbiAgXCJlbnRpdHkuVG9rZW4uYWN0aXZlXCI6IFwi7Zmc7ISxIOyXrOu2gFwiLFxuICBcImVudGl0eS5Ub2tlbi5vcmRcIjogXCLsoJXroKwg7Iic7IScXCIsXG4gIFwiZW50aXR5LlRva2VuLnF1b3RhX3RocmVzaG9sZFwiOiBcInF1b3RhIOyCrOyaqeuloCDsnoTqs4TsuZgoJSkuIG51bGzsnbTrqbQg66+47ISk7KCVXCIsXG4gIFwiZW50aXR5LlRva2VuLndlaWdodFwiOiBcIuqwgOykkSDrnbzsmrTrk5zroZzruYgg65287Jqw7YyFIOqwgOykkey5mCAoMS4uMTAwKVwiLFxuICBcImVudW0uVG9rZW5PcmRlckJ5LmlkLWRlc2NcIjogXCJJROy1nOyLoOyInFwiLFxuICBcImVudW0uVG9rZW5PcmRlckJ5Lm9yZC1hc2NcIjogXCLsiJzshJzsiJxcIixcbiAgXCJlbnVtLlRva2VuU2VhcmNoRmllbGQuaWRcIjogXCJJRFwiLFxuICBcImVudW0uVG9rZW5TZWFyY2hGaWVsZC5uYW1lXCI6IFwi7J2066aEXCIsXG59IGFzIGNvbnN0O1xuXG4vLyBkZWZhdWx0TG9jYWxl7J2YIGRpY3Rpb25hcnnrpbwg6riw7KSA7Jy866GcIO2CpCDstpTstpxcbnR5cGUgUkNLZXlzID0gdHlwZW9mIHJjS2V5c0tvO1xudHlwZSBQcm9qZWN0RGljdGlvbmFyeSA9IHR5cGVvZiBrbztcbnR5cGUgRW50aXR5TGFiZWxzID0gdHlwZW9mIGVudGl0eUxhYmVscztcbnR5cGUgUmF3TWVyZ2VkRGljdGlvbmFyeSA9IFJDS2V5cyAmXG4gIE9taXQ8RW50aXR5TGFiZWxzLCBrZXlvZiAoUkNLZXlzICYgUHJvamVjdERpY3Rpb25hcnkpPiAmXG4gIFByb2plY3REaWN0aW9uYXJ5O1xuXG4vLyDtgqTripQg7Jyg7KeA7ZWY65CYLCDqsJIg7YOA7J6F7J2AIHN0cmluZyDrmJDripQg7ZWo7IiY66GcIOydvOuwmO2ZlCAo64uk66W4IGxvY2FsZeydmCDrpqzthLDrn7Qg7YOA7J6FIOy2qeuPjCDrsKnsp4ApXG5leHBvcnQgdHlwZSBNZXJnZWREaWN0aW9uYXJ5ID0ge1xuICBbSyBpbiBrZXlvZiBSYXdNZXJnZWREaWN0aW9uYXJ5XTogUmF3TWVyZ2VkRGljdGlvbmFyeVtLXSBleHRlbmRzICguLi5hcmdzOiBpbmZlciBQKSA9PiBzdHJpbmdcbiAgICA/ICguLi5hcmdzOiBQKSA9PiBzdHJpbmdcbiAgICA6IHN0cmluZztcbn07XG5leHBvcnQgdHlwZSBEaWN0S2V5ID0ga2V5b2YgTWVyZ2VkRGljdGlvbmFyeTtcbmV4cG9ydCB0eXBlIExvY2FsaXplZFN0cmluZyA9IHN0cmluZyAmIHsgX19icmFuZDogXCJMb2NhbGl6ZWRTdHJpbmdcIiB9O1xuXG5leHBvcnQgZnVuY3Rpb24gZGVmaW5lTG9jYWxlKGRpY3Q6IFBhcnRpYWw8TWVyZ2VkRGljdGlvbmFyeT4pIHtcbiAgcmV0dXJuIGRpY3Q7XG59XG5cbi8vIOqwgSBsb2NhbGXrs4TroZwgcmMta2V5cyArIGVudGl0eSBsYWJlbHMgKyDtlITroZzsoJ3tirggZGljdCDtlansuahcbmNvbnN0IGRpY3Rpb25hcmllczogUmVjb3JkPHN0cmluZywgUGFydGlhbDxNZXJnZWREaWN0aW9uYXJ5Pj4gPSB7XG4gIGtvOiB7IC4uLnJjS2V5c0tvLCAuLi5lbnRpdHlMYWJlbHMsIC4uLmtvIH0sXG4gIGVuOiB7IC4uLnJjS2V5c0VuLCAuLi5lbiB9LFxufTtcblxudHlwZSBTRFJldHVyblR5cGU8SyBleHRlbmRzIERpY3RLZXk+ID0gTWVyZ2VkRGljdGlvbmFyeVtLXSBleHRlbmRzICguLi5hcmdzOiBpbmZlciBQKSA9PiBzdHJpbmdcbiAgPyAoLi4uYXJnczogUCkgPT4gTG9jYWxpemVkU3RyaW5nXG4gIDogTG9jYWxpemVkU3RyaW5nO1xuXG5mdW5jdGlvbiBnZXREaWN0VmFsdWU8SyBleHRlbmRzIERpY3RLZXk+KGtleTogSywgbG9jYWxlOiBzdHJpbmcpOiBTRFJldHVyblR5cGU8Sz4ge1xuICAvLyAxLiDsp4DsoJXrkJwgbG9jYWxl7JeQ7IScIOyhsO2ajFxuICBjb25zdCBkaWN0ID0gZGljdGlvbmFyaWVzW2xvY2FsZV07XG4gIGlmIChkaWN0Py5ba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRpY3Rba2V5XSBhcyB1bmtub3duIGFzIFNEUmV0dXJuVHlwZTxLPjtcbiAgfVxuXG4gIC8vIDIuIGRlZmF1bHQgbG9jYWxl7JeQ7IScIOyhsO2ajFxuICBpZiAobG9jYWxlICE9PSBERUZBVUxUX0xPQ0FMRSAmJiBkaWN0aW9uYXJpZXNbREVGQVVMVF9MT0NBTEVdPy5ba2V5XSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIGRpY3Rpb25hcmllc1tERUZBVUxUX0xPQ0FMRV1ba2V5XSBhcyB1bmtub3duIGFzIFNEUmV0dXJuVHlwZTxLPjtcbiAgfVxuXG4gIC8vIDMuIHN1cHBvcnRlZCBsb2NhbGVzIOyInO2ajFxuICBmb3IgKGNvbnN0IHN1cHBvcnRlZExvY2FsZSBvZiBTVVBQT1JURURfTE9DQUxFUykge1xuICAgIGlmIChzdXBwb3J0ZWRMb2NhbGUgIT09IGxvY2FsZSAmJiBzdXBwb3J0ZWRMb2NhbGUgIT09IERFRkFVTFRfTE9DQUxFKSB7XG4gICAgICBpZiAoZGljdGlvbmFyaWVzW3N1cHBvcnRlZExvY2FsZV0/LltrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgcmV0dXJuIGRpY3Rpb25hcmllc1tzdXBwb3J0ZWRMb2NhbGVdW2tleV0gYXMgdW5rbm93biBhcyBTRFJldHVyblR5cGU8Sz47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLy8gNC4g66qo65GQIOyLpO2MqCDsi5wga2V5IOuwmO2ZmFxuICByZXR1cm4ga2V5IGFzIHVua25vd24gYXMgU0RSZXR1cm5UeXBlPEs+O1xufVxuXG4vKipcbiAqIFNvbmFtdSBEaWN0aW9uYXJ5IO2VqOyImFxuICogbG9jYWxl7JeQIOunnuuKlCDrsojsl60g7YWN7Iqk7Yq466W8IOuwmO2ZmO2VqeuLiOuLpC5cbiAqXG4gKiBAZXhhbXBsZVxuICogU0QoXCJjb21tb24uc2F2ZVwiKSAgLy8g4oaSIFwi7KCA7J6lXCIgKExvY2FsaXplZFN0cmluZylcbiAqIFNEKFwidXNlci5ub3RGb3VuZFwiKSgxKSAgLy8g4oaSIFwi7KG07J6s7ZWY7KeAIOyViuuKlCBVc2VyIElEIDFcIiAoTG9jYWxpemVkU3RyaW5nKVxuICovXG5leHBvcnQgZnVuY3Rpb24gU0Q8SyBleHRlbmRzIERpY3RLZXk+KGtleTogSyk6IFNEUmV0dXJuVHlwZTxLPiB7XG4gIGNvbnN0IGxvY2FsZSA9IGdldEN1cnJlbnRMb2NhbGUoKTtcbiAgcmV0dXJuIGdldERpY3RWYWx1ZShrZXksIGxvY2FsZSk7XG59XG5cbi8qKlxuICog7Yq57KCVIGxvY2FsZeydmCDrsojsl60g7YWN7Iqk7Yq466W8IOuwmO2ZmO2VmOuKlCDtlajsiJjrpbwg7IOd7ISx7ZWp64uI64ukLlxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBFTiA9IFNELmxvY2FsZShcImVuXCIpO1xuICogRU4oXCJjb21tb24uc2F2ZVwiKSAgLy8g4oaSIFwiU2F2ZVwiXG4gKi9cblNELmxvY2FsZSA9XG4gIChsb2NhbGU6ICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0pID0+XG4gIDxLIGV4dGVuZHMgRGljdEtleT4oa2V5OiBLKTogU0RSZXR1cm5UeXBlPEs+ID0+IHtcbiAgICByZXR1cm4gZ2V0RGljdFZhbHVlKGtleSwgbG9jYWxlKTtcbiAgfTtcblxuLy8gTG9jYWxpemVkIOqwgOuKpe2VnCBDb2x1bW4g7YOA7J6FIOqzhOyCsFxudHlwZSBMb2NhbGl6ZWRCYXNlQ29sdW1uPFQ+ID0ge1xuICBbSyBpbiBrZXlvZiBUICYgc3RyaW5nXTogSyBleHRlbmRzIGAke2luZmVyIEJhc2V9XyR7KHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXX1gXG4gICAgPyBCYXNlXG4gICAgOiBLO1xufVtrZXlvZiBUICYgc3RyaW5nXTtcblxuLyoqXG4gKiBsb2NhbGXsl5Ag65Sw6528IOyggeygiO2VnCDsu6zrn7wg6rCS7J2EIOuwmO2ZmO2VqeuLiOuLpC5cbiAqIERC7JeQIG5hbWUsIG5hbWVfa28sIG5hbWVfZW7sspjrn7wgbG9jYWxpemVkIGNvbHVtbuydtCDsnojsnYQg65WMIOyCrOyaqe2VqeuLiOuLpC5cbiAqXG4gKiDsmrDshKDsiJzsnIQgKOyngOybkCDroZzsvIDsnbzsnYAga28vanAvZW7snbTqs6AsIOyEnOu5hOyKpOydmCDquLDrs7gg66Gc7LyA7J287J2AIGtvLCDsgqzsmqnsnpDsnZgg66Gc7LyA7J287J2AIGpw7J28IOuVjCk6IGNvbHVtbl9qcCDihpIgY29sdW1uIOKGkiBjb2x1bW5fa28g4oaSIGNvbHVtbl9lblxuICog7Jqw7ISg7Iic7JyEICjsp4Dsm5Ag66Gc7LyA7J287J2AIGtvL2pwL2Vu7J206rOgLCDshJzruYTsiqTsnZgg6riw67O4IOuhnOy8gOydvOydgCBlbiwg7IKs7Jqp7J6Q7J2YIOuhnOy8gOydvOydgCBrb+ydvCDrlYwpOiBjb2x1bW5fa28g4oaSIGNvbHVtbiDihpIgY29sdW1uX2VuIOKGkiBjb2x1bW5fanBcbiAqXG4gKiBAZXhhbXBsZVxuICogbG9jYWxpemVkQ29sdW1uKHRhZywgXCJuYW1lXCIpXG4gKi9cbnR5cGUgTG9jYWxpemVkQ29sdW1uU2NhbGFyVmFsdWUgPSBzdHJpbmcgfCBudW1iZXIgfCBib29sZWFuIHwgYmlnaW50O1xudHlwZSBMb2NhbGl6ZWRDb2x1bW5WYWx1ZSA9IHN0cmluZyB8IHN0cmluZ1tdO1xudHlwZSBOZXN0ZWRMb2NhbGl6ZWRDb2x1bW5WYWx1ZUZyb208Vj4gPSBWIGV4dGVuZHMgc3RyaW5nXG4gID8gc3RyaW5nXG4gIDogViBleHRlbmRzIHJlYWRvbmx5IHN0cmluZ1tdXG4gICAgPyBzdHJpbmdbXVxuICAgIDogbmV2ZXI7XG50eXBlIExvY2FsaXplZENvbHVtblZhbHVlRnJvbTxWPiA9IFYgZXh0ZW5kcyBzdHJpbmdcbiAgPyBzdHJpbmdcbiAgOiBWIGV4dGVuZHMgcmVhZG9ubHkgc3RyaW5nW11cbiAgICA/IHN0cmluZ1tdXG4gICAgOiBWIGV4dGVuZHMgbnVtYmVyIHwgYm9vbGVhbiB8IGJpZ2ludFxuICAgICAgPyBzdHJpbmdcbiAgICAgIDogViBleHRlbmRzIFBhcnRpYWw8UmVjb3JkPCh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0sIGluZmVyIExWPj5cbiAgICAgICAgPyBOZXN0ZWRMb2NhbGl6ZWRDb2x1bW5WYWx1ZUZyb208TFY+XG4gICAgICAgIDogbmV2ZXI7XG50eXBlIExvY2FsaXplZENvbHVtbkNhbmRpZGF0ZTxULCBLIGV4dGVuZHMgc3RyaW5nPiA9XG4gIHwgKEsgZXh0ZW5kcyBrZXlvZiBUID8gVFtLXSA6IG5ldmVyKVxuICB8IHtcbiAgICAgIFtMIGluICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl1dOiBgJHtLfV8ke0x9YCBleHRlbmRzIGtleW9mIFRcbiAgICAgICAgPyBUW2Ake0t9XyR7TH1gXVxuICAgICAgICA6IG5ldmVyO1xuICAgIH1bKHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXV07XG50eXBlIExvY2FsaXplZENvbHVtblJldHVybjxULCBLIGV4dGVuZHMgc3RyaW5nPiA9XG4gIHwgTG9jYWxpemVkQ29sdW1uVmFsdWVGcm9tPExvY2FsaXplZENvbHVtbkNhbmRpZGF0ZTxULCBLPj5cbiAgfCB1bmRlZmluZWQ7XG50eXBlIExvY2FsZVZhbHVlTWFwID0gUGFydGlhbDxSZWNvcmQ8KHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXSwgdW5rbm93bj4+O1xuXG5mdW5jdGlvbiBpc0xvY2FsaXplZENvbHVtblZhbHVlKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgTG9jYWxpemVkQ29sdW1uVmFsdWUge1xuICByZXR1cm4gKFxuICAgIHR5cGVvZiB2YWx1ZSA9PT0gXCJzdHJpbmdcIiB8fFxuICAgIChBcnJheS5pc0FycmF5KHZhbHVlKSAmJiB2YWx1ZS5ldmVyeSgoaXRlbSkgPT4gdHlwZW9mIGl0ZW0gPT09IFwic3RyaW5nXCIpKVxuICApO1xufVxuXG5mdW5jdGlvbiBpc0xvY2FsaXplZENvbHVtblNjYWxhclZhbHVlKHZhbHVlOiB1bmtub3duKTogdmFsdWUgaXMgTG9jYWxpemVkQ29sdW1uU2NhbGFyVmFsdWUge1xuICByZXR1cm4gW1wic3RyaW5nXCIsIFwibnVtYmVyXCIsIFwiYm9vbGVhblwiLCBcImJpZ2ludFwiXS5pbmNsdWRlcyh0eXBlb2YgdmFsdWUpO1xufVxuXG5mdW5jdGlvbiBpc0VtcHR5TG9jYWxpemVkQ29sdW1uVmFsdWUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBudWxsIHwgdW5kZWZpbmVkIHwgXCJcIiB7XG4gIHJldHVybiB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBcIlwiO1xufVxuXG5mdW5jdGlvbiBnZXROZXN0ZWRMb2NhbGVWYWx1ZTxUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4sIEsgZXh0ZW5kcyBMb2NhbGl6ZWRCYXNlQ29sdW1uPFQ+PihcbiAgcm93OiBULFxuICBjb2x1bW46IEssXG4gIGxvY2FsZTogKHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXSxcbik6IHVua25vd24ge1xuICBjb25zdCBjb2x1bW5WYWx1ZSA9IHJvd1tjb2x1bW5dO1xuICBpZiAoY29sdW1uVmFsdWUgPT09IG51bGwgfHwgdHlwZW9mIGNvbHVtblZhbHVlICE9PSBcIm9iamVjdFwiIHx8IEFycmF5LmlzQXJyYXkoY29sdW1uVmFsdWUpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJldHVybiAoY29sdW1uVmFsdWUgYXMgTG9jYWxlVmFsdWVNYXApW2xvY2FsZV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBsb2NhbGl6ZWRDb2x1bW48XG4gIFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPixcbiAgSyBleHRlbmRzIExvY2FsaXplZEJhc2VDb2x1bW48VD4sXG4+KHJvdzogVCwgY29sdW1uOiBLKTogTG9jYWxpemVkQ29sdW1uUmV0dXJuPFQsIEs+IHtcbiAgY29uc3QgY3VycmVudExvY2FsZSA9IGdldEN1cnJlbnRMb2NhbGUoKTtcbiAgY29uc3QgbG9jYWxlID0gU1VQUE9SVEVEX0xPQ0FMRVMuaW5jbHVkZXMoY3VycmVudExvY2FsZSkgPyBjdXJyZW50TG9jYWxlIDogREVGQVVMVF9MT0NBTEU7XG4gIGNvbnN0IG90aGVyTG9jYWxlcyA9IFNVUFBPUlRFRF9MT0NBTEVTLmZpbHRlcihcbiAgICAobDogc3RyaW5nKSA9PiBsICE9PSBsb2NhbGUgJiYgbCAhPT0gREVGQVVMVF9MT0NBTEUsXG4gICk7XG4gIGNvbnN0IGxvY2FsaXplZEtleSA9IChjb2x1bW46IEssIGxvY2FsZTogKHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXSkgPT5cbiAgICBgJHtjb2x1bW59XyR7bG9jYWxlfWA7XG4gIGNvbnN0IHZhbHVlcyA9IFtcbiAgICB7IHZhbHVlOiByb3dbbG9jYWxpemVkS2V5KGNvbHVtbiwgbG9jYWxlKV0sIHNvdXJjZTogXCJkaXJlY3RcIiB9LFxuICAgIHsgdmFsdWU6IGdldE5lc3RlZExvY2FsZVZhbHVlKHJvdywgY29sdW1uLCBsb2NhbGUpLCBzb3VyY2U6IFwibmVzdGVkXCIgfSxcbiAgICB7IHZhbHVlOiByb3dbY29sdW1uXSwgc291cmNlOiBcImRpcmVjdFwiIH0sXG4gICAgeyB2YWx1ZTogcm93W2xvY2FsaXplZEtleShjb2x1bW4sIERFRkFVTFRfTE9DQUxFKV0sIHNvdXJjZTogXCJkaXJlY3RcIiB9LFxuICAgIHsgdmFsdWU6IGdldE5lc3RlZExvY2FsZVZhbHVlKHJvdywgY29sdW1uLCBERUZBVUxUX0xPQ0FMRSksIHNvdXJjZTogXCJuZXN0ZWRcIiB9LFxuICAgIC4uLm90aGVyTG9jYWxlcy5mbGF0TWFwKChsKSA9PiBbXG4gICAgICB7IHZhbHVlOiByb3dbbG9jYWxpemVkS2V5KGNvbHVtbiwgbCldLCBzb3VyY2U6IFwiZGlyZWN0XCIgfSxcbiAgICAgIHsgdmFsdWU6IGdldE5lc3RlZExvY2FsZVZhbHVlKHJvdywgY29sdW1uLCBsKSwgc291cmNlOiBcIm5lc3RlZFwiIH0sXG4gICAgXSksXG4gIF07XG5cbiAgZm9yIChjb25zdCB7IHZhbHVlLCBzb3VyY2UgfSBvZiB2YWx1ZXMpIHtcbiAgICBpZiAoIWlzRW1wdHlMb2NhbGl6ZWRDb2x1bW5WYWx1ZSh2YWx1ZSkgJiYgaXNMb2NhbGl6ZWRDb2x1bW5WYWx1ZSh2YWx1ZSkpIHtcbiAgICAgIHJldHVybiB2YWx1ZSBhcyBMb2NhbGl6ZWRDb2x1bW5SZXR1cm48VCwgSz47XG4gICAgfVxuICAgIGlmIChcbiAgICAgIHNvdXJjZSA9PT0gXCJkaXJlY3RcIiAmJlxuICAgICAgIWlzRW1wdHlMb2NhbGl6ZWRDb2x1bW5WYWx1ZSh2YWx1ZSkgJiZcbiAgICAgIGlzTG9jYWxpemVkQ29sdW1uU2NhbGFyVmFsdWUodmFsdWUpXG4gICAgKSB7XG4gICAgICByZXR1cm4gU3RyaW5nKHZhbHVlKSBhcyBMb2NhbGl6ZWRDb2x1bW5SZXR1cm48VCwgSz47XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuLyoqXG4gKiBFbnVt7J2YIGxvY2FsaXplZCBsYWJlbHPrpbwgUHJveHnroZwg67CY7ZmY7ZWp64uI64ukLlxuICogU2VsZWN0IOy7tO2PrOuEjO2KuCDrk7Hsl5DshJwgRW51bUxhYmVsW2tleV0g64yA7IugIOyCrOyaqe2VqeuLiOuLpC5cbiAqXG4gKiBAZXhhbXBsZVxuICogU0QuZW51bUxhYmVscyhcIlRhZ09yZGVyQnlcIilba2V5XSAgLy8g4oaSIO2YhOyerCBsb2NhbGXsnZgg652867KoXG4gKi9cblNELmVudW1MYWJlbHMgPSAoZW51bU5hbWU6IHN0cmluZyk6IFJlY29yZDxzdHJpbmcsIExvY2FsaXplZFN0cmluZz4gPT4ge1xuICByZXR1cm4gbmV3IFByb3h5KHt9IGFzIFJlY29yZDxzdHJpbmcsIExvY2FsaXplZFN0cmluZz4sIHtcbiAgICBnZXQoXywga2V5OiBzdHJpbmcgfCBzeW1ib2wpIHtcbiAgICAgIGlmICh0eXBlb2Yga2V5ID09PSBcInN5bWJvbFwiKSB7XG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgICB9XG5cbiAgICAgIGNvbnN0IGRpY3RLZXkgPSBgZW51bS4ke2VudW1OYW1lfS4ke2tleX1gIGFzIERpY3RLZXk7XG4gICAgICByZXR1cm4gZ2V0RGljdFZhbHVlKGRpY3RLZXksIGdldEN1cnJlbnRMb2NhbGUoKSk7XG4gICAgfSxcbiAgfSk7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQU9BLE1BQU0saUJBQWlCO0FBQ3ZCLE1BQU0sb0JBQW9CLENBQUMsTUFBTSxJQUFJO0FBQ3JDLFNBQVMsbUJBQXVEO0NBQzlELElBQUk7RUFFRixPQURZLE9BQU8sV0FDWCxDQUFBLENBQUksVUFBaUQ7Q0FDL0QsUUFBUTtFQUNOLE9BQU87Q0FDVDtBQUNGO0FBTUEsTUFBTSxXQUFXO0NBRWYsMEJBQTBCO0NBQzFCLDRCQUE0QjtDQUM1Qiw0QkFBNEI7Q0FDNUIsb0NBQW9DO0NBR3BDLHlCQUF5QjtDQUN6QixpQ0FBaUM7Q0FHakMsMEJBQTBCO0NBQzFCLDZCQUE2QjtDQUM3Qiw0QkFBNEI7Q0FHNUIsbUNBQW1DO0NBQ25DLHFDQUFxQztDQUNyQyx1Q0FBdUM7Q0FDdkMsc0NBQXNDO0NBR3RDLDRCQUE0QjtDQUM1Qix5QkFBeUI7Q0FDekIsZ0NBQWdDO0NBQ2hDLGlDQUFpQztDQUNqQyxrQ0FBa0MsYUFDaEMsTUFBTSxTQUFTO0NBQ2pCLHdCQUF3QjtDQUN4Qix1QkFBdUI7Q0FDdkIsNkJBQTZCO0NBQzdCLDBCQUEwQjtDQUcxQixtQ0FBbUM7Q0FDbkMsb0NBQW9DO0NBQ3BDLGtDQUFrQztDQUNsQyxzQ0FBc0M7Q0FDdEMscUNBQXFDO0NBQ3JDLG9DQUFvQztDQUdwQyx3QkFBd0I7Q0FDeEIsd0JBQXdCO0NBQ3hCLDZCQUE2QixVQUFrQixJQUFJLE1BQU07Q0FDekQsNEJBQTRCO0NBQzVCLG9DQUFv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
391
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QuZ2VuZXJhdGVkLmpzIiwibmFtZXMiOlsia28iLCJlbiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9pMThuL3NkLmdlbmVyYXRlZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBnZW5lcmF0ZWRcbiAqIOyngeygkSDsiJjsoJXtlZjsp4Ag66eI7IS47JqULlxuICovXG5cbmltcG9ydCB7IFNvbmFtdSB9IGZyb20gXCJzb25hbXVcIjtcblxuY29uc3QgREVGQVVMVF9MT0NBTEUgPSBcImtvXCIgYXMgY29uc3Q7XG5jb25zdCBTVVBQT1JURURfTE9DQUxFUyA9IFtcImtvXCIsIFwiZW5cIl0gYXMgY29uc3Q7XG5mdW5jdGlvbiBnZXRDdXJyZW50TG9jYWxlKCk6ICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0ge1xuICB0cnkge1xuICAgIGNvbnN0IGN0eCA9IFNvbmFtdS5nZXRDb250ZXh0KCk7XG4gICAgcmV0dXJuIChjdHgubG9jYWxlIGFzICh0eXBlb2YgU1VQUE9SVEVEX0xPQ0FMRVMpW251bWJlcl0pID8/IERFRkFVTFRfTE9DQUxFO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gREVGQVVMVF9MT0NBTEU7XG4gIH1cbn1cblxuaW1wb3J0IGVuIGZyb20gXCIuL2VuXCI7XG5pbXBvcnQga28gZnJvbSBcIi4va29cIjtcblxuLy8gcmVhY3QtY29tcG9uZW50cyBpMThuIGtleXNcbmNvbnN0IHJjS2V5c0tvID0ge1xuICAvLyBBc3luY1NlbGVjdCBDb21wb25lbnRcbiAgXCJyYy5hc3luY1NlbGVjdC5sb2FkaW5nXCI6IFwi66Gc65SpIOykkS4uLlwiLFxuICBcInJjLmFzeW5jU2VsZWN0Lm5vT3B0aW9uc1wiOiBcIuyYteyFmOydtCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5hc3luY1NlbGVjdC5ub1Jlc3VsdHNcIjogXCLqsoDsg4kg6rKw6rO86rCAIOyXhuyKteuLiOuLpFwiLFxuICBcInJjLmFzeW5jU2VsZWN0LnNlbGVjdFBsYWNlaG9sZGVyXCI6IFwi7ISg7YOd7ZWY7IS47JqULi4uXCIsXG5cbiAgLy8gQ29tYm9ib3ggQ29tcG9uZW50XG4gIFwicmMuY29tYm9ib3gubm9SZXN1bHRzXCI6IFwi6rKA7IOJIOqysOqzvOqwgCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5jb21ib2JveC5zZWxlY3RQbGFjZWhvbGRlclwiOiBcIuyEoO2Dne2VmOyEuOyalC4uLlwiLFxuXG4gIC8vIERhdGVQaWNrZXIgQ29tcG9uZW50XG4gIFwicmMuZGF0ZVBpY2tlci5waWNrRGF0ZVwiOiBcIuuCoOynnCDshKDtg51cIixcbiAgXCJyYy5kYXRlUGlja2VyLnBsYWNlaG9sZGVyXCI6IFwi64Kg7KecIOyEoO2DnVwiLFxuICBcInJjLmRhdGVQaWNrZXIuc2VsZWN0RGF0ZVwiOiBcIuuCoOynnCDshKDtg51cIixcblxuICAvLyBEYXRlU2VsZWN0b3JNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5hZGREYXRlXCI6IFwi64Kg7KecIOy2lOqwgFwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLmRhdGVSYW5nZVwiOiBcIuq4sOqwhFwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwi64Kg7KecIOyEoO2DnVwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnNpbmdsZURhdGVcIjogXCLri6jsnbxcIixcblxuICAvLyBGaWxlSW5wdXQgQ29tcG9uZW50XG4gIFwicmMuZmlsZUlucHV0LmJyb3dzZUZpbGVzXCI6IFwi7YyM7J28IOywvuq4sFwiLFxuICBcInJjLmZpbGVJbnB1dC5kcm9wWm9uZVwiOiBcIu2MjOydvOydhCDrk5zrnpjqt7jtlZjqsbDrgpgg7YG066at7ZWY7JesIOyXheuhnOuTnFwiLFxuICBcInJjLmZpbGVJbnB1dC5maWxlUGxhY2Vob2xkZXJcIjogXCLtjIzsnbxcIixcbiAgXCJyYy5maWxlSW5wdXQuaW1hZ2VQbGFjZWhvbGRlclwiOiBcIuydtOuvuOyngFwiLFxuICBcInJjLmZpbGVJbnB1dC5tYXhGaWxlc0V4Y2VlZGVkXCI6IChtYXhGaWxlczogbnVtYmVyKSA9PlxuICAgIGDstZzrjIAgJHttYXhGaWxlc33qsJwg7YyM7J2866eMIOyXheuhnOuTnCDqsIDriqXtlanri4jri6RgLFxuICBcInJjLmZpbGVJbnB1dC5wZW5kaW5nXCI6IFwi64yA6riwIOykkVwiLFxuICBcInJjLmZpbGVJbnB1dC5yZW1vdmVcIjogXCLsoJzqsbBcIixcbiAgXCJyYy5maWxlSW5wdXQudXBsb2FkRmFpbGVkXCI6IFwi7JeF66Gc65OcIOyLpO2MqFwiLFxuICBcInJjLmZpbGVJbnB1dC51cGxvYWRpbmdcIjogXCLsl4XroZzrk5wg7KSRLi4uXCIsXG5cbiAgLy8gTW9udGhQaWNrZXJNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLmFkZE1vbnRoXCI6IFwi7JuUIOy2lOqwgFwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuZGF0ZVJhbmdlXCI6IFwi6riw6rCEXCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5lbmREYXRlXCI6IFwi7KKF66OM7J28XCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5wbGFjZWhvbGRlclwiOiBcIuyblCDshKDtg51cIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnNpbmdsZURhdGVcIjogXCLri6jsnbxcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnN0YXJ0RGF0ZVwiOiBcIuyLnOyekeydvFwiLFxuXG4gIC8vIE11bHRpU2VsZWN0IENvbXBvbmVudFxuICBcInJjLm11bHRpU2VsZWN0LmNsZWFyXCI6IFwi7KCE7LK0IO2VtOygnFwiLFxuICBcInJjLm11bHRpU2VsZWN0LmNsb3NlXCI6IFwi64ur6riwXCIsXG4gIFwicmMubXVsdGlTZWxlY3QubW9yZUl0ZW1zXCI6IChjb3VudDogbnVtYmVyKSA9PiBgKyR7Y291bnR96rCcIOuNlOuztOq4sGAsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9PcHRpb25zXCI6IFwi7Ji17IWY7J20IOyXhuyKteuLiOuLpFwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm5vT3B0aW9uc1NlbGVjdGVkXCI6IFwi7ISg7YOd65CcIOyYteyFmOydtCDsl4bsirXri4jri6RcIixcbiAgXCJyYy5tdWx0aVNlbGVjdC5ub1Jlc3VsdHNcIjogXCLqsoDsg4kg6rKw6rO86rCAIOyXhuyKteuLiOuLpFwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm9wdGlvbnNDb3VudFwiOiAoY291bnQ6IG51bWJlcikgPT4gYCR7Y291bnR96rCcIOyYteyFmGAsXG4gIFwicmMubXVsdGlTZWxlY3Quc2VsZWN0QWxsXCI6IFwi7KCE7LK0IOyEoO2DnVwiLFxuICBcInJjLm11bHRpU2VsZWN0LnNlbGVjdFBsYWNlaG9sZGVyXCI6IFwi7ISg7YOd7ZWY7IS47JqULi4uXCIsXG5cbiAgLy8gUGFnaW5hdGlvbiBDb21wb25lbnRcbiAgXCJyYy5wYWdpbmF0aW9uLm5leHRcIjogXCLri6TsnYxcIixcbiAgXCJyYy5wYWdpbmF0aW9uLnByZXZpb3VzXCI6IFwi7J207KCEXCIsXG4gIFwicmMucGFnaW5hdGlvbi5zaG93aW5nXCI6IChzdGFydDogbnVtYmVyLCBlbmQ6IG51bWJlciwgdG90YWw6IG51bWJlcikgPT5cbiAgICBgJHt0b3RhbH3qsJwg7KSRICR7c3RhcnR9LSR7ZW5kfWAsXG5cbiAgLy8gQ2FsZW5kYXIgQ29tcG9uZW50XG4gIFwicmMuY2FsZW5kYXIubW9udGguMFwiOiBcIjHsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC4xXCI6IFwiMuyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjJcIjogXCIz7JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguM1wiOiBcIjTsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC40XCI6IFwiNeyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjVcIjogXCI27JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguNlwiOiBcIjfsm5RcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC43XCI6IFwiOOyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjhcIjogXCI57JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguOVwiOiBcIjEw7JuUXCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguMTBcIjogXCIxMeyblFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjExXCI6IFwiMTLsm5RcIixcblxuICAvLyBTb25hbXUgRmlsdGVyIENvbXBvbmVudFxuICBcInJjLnNvbmFtdUZpbHRlci50aXRsZVwiOiBcIuyGjOuCmOustCDtlYTthLBcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYXBwbHlcIjogXCLsoIHsmqlcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIucmVzZXRcIjogXCLstIjquLDtmZRcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYWRkUnVsZVwiOiBcIuq3nOy5mSDstpTqsIBcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm9SdWxlc1lldFwiOiAn7JWE7KeBIOq3nOy5meydtCDsl4bsirXri4jri6QuIFwiKyDqt5zsuZkg7LaU6rCAXCLrpbwg7YG066at7ZWY7JesIOyLnOyeke2VmOyEuOyalC4nLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RGaWVsZFwiOiBcIu2VhOuTnCDshKDtg51cIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuc2VsZWN0T3BlcmF0b3JcIjogXCLsl7DsgrDsnpAg7ISg7YOdXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLnNlbGVjdE9wZXJhdG9yRmlyc3RcIjogXCLrqLzsoIAg7Jew7IKw7J6Q66W8IOyEoO2Dne2VmOyEuOyalFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbnRlclZhbHVlXCI6IFwi6rCSIOyeheugpVwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbnRlck51bWJlclwiOiBcIuyIq+yekCDsnoXroKVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm90U3VwcG9ydGVkXCI6IFwi7KeA7JuQ7ZWY7KeAIOyViuydjFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5zdGFydERhdGVcIjogXCLsi5zsnpHsnbxcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuZW5kRGF0ZVwiOiBcIuyiheujjOydvFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5hcHBsaWVkRmlsdGVyc1wiOiBcIvCfjLIg7KCB7Jqp65CcIOyGjOuCmOustCDtlYTthLBcIixcblxuICAvLyBDb21tb25cbiAgXCJyYy5jb21tb24uY2FuY2VsXCI6IFwi7Leo7IaMXCIsXG4gIFwicmMuY29tbW9uLnNhdmVcIjogXCLsoIDsnqVcIixcbn07XG5cbmNvbnN0IHJjS2V5c0VuID0ge1xuICAvLyBBc3luY1NlbGVjdCBDb21wb25lbnRcbiAgXCJyYy5hc3luY1NlbGVjdC5sb2FkaW5nXCI6IFwiTG9hZGluZy4uLlwiLFxuICBcInJjLmFzeW5jU2VsZWN0Lm5vT3B0aW9uc1wiOiBcIk5vIG9wdGlvbnNcIixcbiAgXCJyYy5hc3luY1NlbGVjdC5ub1Jlc3VsdHNcIjogXCJObyByZXN1bHRzXCIsXG4gIFwicmMuYXN5bmNTZWxlY3Quc2VsZWN0UGxhY2Vob2xkZXJcIjogXCJTZWxlY3QuLi5cIixcblxuICAvLyBDb21ib2JveCBDb21wb25lbnRcbiAgXCJyYy5jb21ib2JveC5ub1Jlc3VsdHNcIjogXCJObyByZXN1bHRzXCIsXG4gIFwicmMuY29tYm9ib3guc2VsZWN0UGxhY2Vob2xkZXJcIjogXCJTZWxlY3QuLi5cIixcblxuICAvLyBEYXRlUGlja2VyIENvbXBvbmVudFxuICBcInJjLmRhdGVQaWNrZXIucGlja0RhdGVcIjogXCJQaWNrIGRhdGVcIixcbiAgXCJyYy5kYXRlUGlja2VyLnBsYWNlaG9sZGVyXCI6IFwiUGljayBkYXRlXCIsXG4gIFwicmMuZGF0ZVBpY2tlci5zZWxlY3REYXRlXCI6IFwiU2VsZWN0IGRhdGVcIixcblxuICAvLyBEYXRlU2VsZWN0b3JNdWx0aXBsZSBDb21wb25lbnRcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5hZGREYXRlXCI6IFwiQWRkIGRhdGVcIixcbiAgXCJyYy5kYXRlU2VsZWN0b3JNdWx0aXBsZS5kYXRlUmFuZ2VcIjogXCJSYW5nZVwiLFxuICBcInJjLmRhdGVTZWxlY3Rvck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwiUGljayBkYXRlXCIsXG4gIFwicmMuZGF0ZVNlbGVjdG9yTXVsdGlwbGUuc2luZ2xlRGF0ZVwiOiBcIlNpbmdsZVwiLFxuXG4gIC8vIEZpbGVJbnB1dCBDb21wb25lbnRcbiAgXCJyYy5maWxlSW5wdXQuYnJvd3NlRmlsZXNcIjogXCJCcm93c2UgZmlsZXNcIixcbiAgXCJyYy5maWxlSW5wdXQuZHJvcFpvbmVcIjogXCJEcmFnIGZpbGVzIGhlcmUgb3IgY2xpY2sgdG8gdXBsb2FkXCIsXG4gIFwicmMuZmlsZUlucHV0LmZpbGVQbGFjZWhvbGRlclwiOiBcIkZpbGVcIixcbiAgXCJyYy5maWxlSW5wdXQuaW1hZ2VQbGFjZWhvbGRlclwiOiBcIkltYWdlXCIsXG4gIFwicmMuZmlsZUlucHV0Lm1heEZpbGVzRXhjZWVkZWRcIjogKG1heEZpbGVzOiBudW1iZXIpID0+IGBNYXhpbXVtICR7bWF4RmlsZXN9IGZpbGVzIGFsbG93ZWRgLFxuICBcInJjLmZpbGVJbnB1dC5wZW5kaW5nXCI6IFwiUGVuZGluZ1wiLFxuICBcInJjLmZpbGVJbnB1dC5yZW1vdmVcIjogXCJSZW1vdmVcIixcbiAgXCJyYy5maWxlSW5wdXQudXBsb2FkRmFpbGVkXCI6IFwiVXBsb2FkIGZhaWxlZFwiLFxuICBcInJjLmZpbGVJbnB1dC51cGxvYWRpbmdcIjogXCJVcGxvYWRpbmcuLi5cIixcblxuICAvLyBNb250aFBpY2tlck11bHRpcGxlIENvbXBvbmVudFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuYWRkTW9udGhcIjogXCJBZGQgbW9udGhcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLmRhdGVSYW5nZVwiOiBcIlJhbmdlXCIsXG4gIFwicmMubW9udGhQaWNrZXJNdWx0aXBsZS5lbmREYXRlXCI6IFwiRW5kIGRhdGVcIixcbiAgXCJyYy5tb250aFBpY2tlck11bHRpcGxlLnBsYWNlaG9sZGVyXCI6IFwiUGljayBtb250aFwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuc2luZ2xlRGF0ZVwiOiBcIlNpbmdsZVwiLFxuICBcInJjLm1vbnRoUGlja2VyTXVsdGlwbGUuc3RhcnREYXRlXCI6IFwiU3RhcnQgZGF0ZVwiLFxuXG4gIC8vIE11bHRpU2VsZWN0IENvbXBvbmVudFxuICBcInJjLm11bHRpU2VsZWN0LmNsZWFyXCI6IFwiQ2xlYXIgYWxsXCIsXG4gIFwicmMubXVsdGlTZWxlY3QuY2xvc2VcIjogXCJDbG9zZVwiLFxuICBcInJjLm11bHRpU2VsZWN0Lm1vcmVJdGVtc1wiOiAoY291bnQ6IG51bWJlcikgPT4gYCske2NvdW50fSBtb3JlYCxcbiAgXCJyYy5tdWx0aVNlbGVjdC5ub09wdGlvbnNcIjogXCJObyBvcHRpb25zXCIsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9PcHRpb25zU2VsZWN0ZWRcIjogXCJObyBvcHRpb25zIHNlbGVjdGVkXCIsXG4gIFwicmMubXVsdGlTZWxlY3Qubm9SZXN1bHRzXCI6IFwiTm8gcmVzdWx0c1wiLFxuICBcInJjLm11bHRpU2VsZWN0Lm9wdGlvbnNDb3VudFwiOiAoY291bnQ6IG51bWJlcikgPT4gYCR7Y291bnR9IG9wdGlvbnNgLFxuICBcInJjLm11bHRpU2VsZWN0LnNlbGVjdEFsbFwiOiBcIlNlbGVjdCBhbGxcIixcbiAgXCJyYy5tdWx0aVNlbGVjdC5zZWxlY3RQbGFjZWhvbGRlclwiOiBcIlNlbGVjdC4uLlwiLFxuXG4gIC8vIFBhZ2luYXRpb24gQ29tcG9uZW50XG4gIFwicmMucGFnaW5hdGlvbi5uZXh0XCI6IFwiTmV4dFwiLFxuICBcInJjLnBhZ2luYXRpb24ucHJldmlvdXNcIjogXCJQcmV2aW91c1wiLFxuICBcInJjLnBhZ2luYXRpb24uc2hvd2luZ1wiOiAoc3RhcnQ6IG51bWJlciwgZW5kOiBudW1iZXIsIHRvdGFsOiBudW1iZXIpID0+XG4gICAgYFNob3dpbmcgJHtzdGFydH0tJHtlbmR9IG9mICR7dG90YWx9YCxcblxuICAvLyBDYWxlbmRhciBDb21wb25lbnRcbiAgXCJyYy5jYWxlbmRhci5tb250aC4wXCI6IFwiSmFudWFyeVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjFcIjogXCJGZWJydWFyeVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjJcIjogXCJNYXJjaFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjNcIjogXCJBcHJpbFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjRcIjogXCJNYXlcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC41XCI6IFwiSnVuZVwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjZcIjogXCJKdWx5XCIsXG4gIFwicmMuY2FsZW5kYXIubW9udGguN1wiOiBcIkF1Z3VzdFwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjhcIjogXCJTZXB0ZW1iZXJcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC45XCI6IFwiT2N0b2JlclwiLFxuICBcInJjLmNhbGVuZGFyLm1vbnRoLjEwXCI6IFwiTm92ZW1iZXJcIixcbiAgXCJyYy5jYWxlbmRhci5tb250aC4xMVwiOiBcIkRlY2VtYmVyXCIsXG5cbiAgLy8gU29uYW11IEZpbHRlciBDb21wb25lbnRcbiAgXCJyYy5zb25hbXVGaWx0ZXIudGl0bGVcIjogXCJTb25hbXUgRmlsdGVyXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLmFwcGx5XCI6IFwiQXBwbHlcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIucmVzZXRcIjogXCJSZXNldFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5hZGRSdWxlXCI6IFwiQWRkIFJ1bGVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIubm9SdWxlc1lldFwiOiAnTm8gcnVsZXMgeWV0LiBDbGljayBcIisgQWRkIFJ1bGVcIiB0byBzdGFydC4nLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RGaWVsZFwiOiBcIlNlbGVjdCBmaWVsZFwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5zZWxlY3RPcGVyYXRvclwiOiBcIk9wZXJhdG9yXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLnNlbGVjdE9wZXJhdG9yRmlyc3RcIjogXCJTZWxlY3Qgb3BlcmF0b3IgZmlyc3RcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuZW50ZXJWYWx1ZVwiOiBcIkVudGVyIHZhbHVlXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLmVudGVyTnVtYmVyXCI6IFwiRW50ZXIgbnVtYmVyXCIsXG4gIFwicmMuc29uYW11RmlsdGVyLm5vdFN1cHBvcnRlZFwiOiBcIk5vdCBzdXBwb3J0ZWRcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuc3RhcnREYXRlXCI6IFwiU3RhcnQgZGF0ZVwiLFxuICBcInJjLnNvbmFtdUZpbHRlci5lbmREYXRlXCI6IFwiRW5kIGRhdGVcIixcbiAgXCJyYy5zb25hbXVGaWx0ZXIuYXBwbGllZEZpbHRlcnNcIjogXCLwn4yyIEFwcGxpZWQgU29uYW11RmlsdGVyc1wiLFxuXG4gIC8vIENvbW1vblxuICBcInJjLmNvbW1vbi5jYW5jZWxcIjogXCJDYW5jZWxcIixcbiAgXCJyYy5jb21tb24uc2F2ZVwiOiBcIlNhdmVcIixcbn0gYXMgY29uc3Q7XG5cbi8vIGVudGl0eS5qc29u7JeQ7IScIOy2lOy2nO2VnCBlbnRpdHkgbGFiZWxzIChkZWZhdWx0TG9jYWxlIOyghOyaqSlcbmNvbnN0IGVudGl0eUxhYmVscyA9IHtcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1wiOiBcIlJlcXVlc3RMb2dcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuY3JlYXRlZF9hdFwiOiBcIuuTseuhneydvOyLnFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnRva2VuX25hbWVcIjogXCLthqDtgbAg7J2066aEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucHJvamVjdF9uYW1lXCI6IFwi7ZSE66Gc7KCd7Yq4IOydtOumhFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLm1vZGVsX25hbWVcIjogXCLrqqjrjbgg7J2066aEXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucmVxdWVzdGVkX21vZGVsX25hbWVcIjogXCLsmpTssq0g66qo6424IOydtOumhCAoZmFsbGJhY2sg7KCEKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmZhbGxiYWNrX2NvdW50XCI6IFwi66qo6424IGZhbGxiYWNrIO2an+yImFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnVzZXJfcHJvbXB0XCI6IFwi7IKs7Jqp7J6QIO2UhOuhrO2UhO2KuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnN5c3RlbV9wcm9tcHRcIjogXCLsi5zsiqTthZwg7ZSE66Gs7ZSE7Yq4XCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cucmVzcG9uc2VcIjogXCJsbG0g7J2R64u1IOyghOusuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmlucHV0X3Rva2Vuc1wiOiBcIuyeheugpSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5vdXRwdXRfdG9rZW5zXCI6IFwi7Lac66ClIO2GoO2BsFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNhY2hlX3JlYWRfdG9rZW5zXCI6IFwi7LqQ7IucIOydveq4sCDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5jYWNoZV9jcmVhdGlvbl90b2tlbnNcIjogXCLsupDsi5wg7IOd7ISxIO2GoO2BsFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNhY2hlX2NyZWF0aW9uXzVtX3Rva2Vuc1wiOiBcIjXrtoQgVFRMIOy6kOyLnCDsg53shLEg7Yag7YGwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuY2FjaGVfY3JlYXRpb25fMWhfdG9rZW5zXCI6IFwiMeyLnOqwhCBUVEwg7LqQ7IucIOyDneyEsSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5kdXJhdGlvbl9tc1wiOiBcIuydkeuLtSDshozsmpTsi5zqsIQobXMpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cudHRmdF9tc1wiOiBcImZpcnN0IGdlbiBUVEZUKG1zKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNvc3RfdXNkXCI6IFwiQVBJIOu5hOyaqVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmNvc3Rfc291cmNlXCI6IFwi67mE7JqpIOy2nOyymChwcm92aWRlci9wcmljaW5nX3RhYmxlL21peGVkKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmltYWdlX2Nvc3RfdXNkXCI6IFwi7J2066+47KeAIOyDneyEsSDstpTsoJUg67mE7JqpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuaW1hZ2VfY29zdF9tZXRob2RcIjogXCLsnbTrr7jsp4Ag67mE7JqpIOy2lOyglSDrsKnsi51cIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5lZmZvcnRcIjogXCJlZmZvcnQgbGV2ZWxcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5oaXN0b3J5XCI6IFwiaW5qZWN0X2l0ZW1zIO2eiOyKpO2GoOumrFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnRvb2xzXCI6IFwi7JqU7LKt7JeQIOyepeywqeuQnCB0b29sIOygleydmCDrqqnroZ1cIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5qc29uX3NjaGVtYVwiOlxuICAgIFwic3RydWN0dXJlZCBvdXRwdXQg7JqU7LKt7J2YIEpTT04gU2NoZW1hIOybkOusuCAoZGV0YWlsIOydmCByZXNwb25zZSDtg4DsnoUg7ZGc7Iuc7JqpKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnN0YXR1c1wiOiBcIuyLpO2WiSDsg4Htg5xcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZy5lcnJvcl9tZXNzYWdlXCI6IFwi7JeQ65+sIOuplOyLnOyngFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLnJlc3BvbnNlX2pzb25fb2tcIjpcbiAgICBcInN0cnVjdHVyZWQoanNvblNjaGVtYSkg7JqU7LKt7J2YIOydkeuLtSBKU09OIO2MjOyLsSDshLHqs7Ug7Jes67aALiDruYRzdHJ1Y3R1cmVkIOyalOyyreydgCBudWxsXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cudG9vbF9jYWxsX2NvdW50XCI6IFwidG9vbCBjYWxsIO2an+yImFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nLmlzX2ltYWdlX2dlbmVyYXRpb25cIjogXCLsnbTrr7jsp4Ag7IOd7ISxIHR1cm4g7Jes67aAIChxdW90YSDqt4Dsho3smqkpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2cuaXNfc3RydWN0dXJlZFwiOiBcInN0cnVjdHVyZWQgb3V0cHV0KGpzb25TY2hlbWEpIOyalOyyrSDsl6zrtoAgKOuqqeuhnSDqtazrtoQg7ZGc7Iuc7JqpKVwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuaWQtZGVzY1wiOiBcIklE7LWc7Iug7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5pZC1hc2NcIjogXCJJROyYpOuemOuQnOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkuY3JlYXRlZF9hdC1kZXNjXCI6IFwi65Ox66Gd7J287Iuc7LWc7Iug7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jcmVhdGVkX2F0LWFzY1wiOiBcIuuTseuhneydvOyLnOyYpOuemOuQnOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkudHRmdF9tcy1kZXNjXCI6IFwiVFRGVOq4tOyInFwiLFxuICBcImVudW0uUmVxdWVzdExvZ09yZGVyQnkudHRmdF9tcy1hc2NcIjogXCJUVEZU7Ken7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5kdXJhdGlvbl9tcy1kZXNjXCI6IFwi7IaM7JqU7Iuc6rCE6ri07IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5kdXJhdGlvbl9tcy1hc2NcIjogXCLshozsmpTsi5zqsITsp6fsnYDsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LmlucHV0X3Rva2Vucy1kZXNjXCI6IFwi7J6F66Cl7Yag7YGw66eO7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5pbnB1dF90b2tlbnMtYXNjXCI6IFwi7J6F66Cl7Yag7YGw7KCB7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5vdXRwdXRfdG9rZW5zLWRlc2NcIjogXCLstpzroKXthqDtgbDrp47snYDsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5Lm91dHB1dF90b2tlbnMtYXNjXCI6IFwi7Lac66Cl7Yag7YGw7KCB7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jYWNoZV9yZWFkX3Rva2Vucy1kZXNjXCI6IFwi7LqQ7Iuc7J296riw66eO7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jYWNoZV9yZWFkX3Rva2Vucy1hc2NcIjogXCLsupDsi5zsnb3quLDsoIHsnYDsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dPcmRlckJ5LmNhY2hlX2NyZWF0aW9uX3Rva2Vucy1kZXNjXCI6IFwi7LqQ7Iuc7IOd7ISx66eO7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jYWNoZV9jcmVhdGlvbl90b2tlbnMtYXNjXCI6IFwi7LqQ7Iuc7IOd7ISx7KCB7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jb3N0X3VzZC1kZXNjXCI6IFwi67mE7Jqp64aS7J2A7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nT3JkZXJCeS5jb3N0X3VzZC1hc2NcIjogXCLruYTsmqnrgq7snYDsiJxcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTZWFyY2hGaWVsZC5pZFwiOiBcIklEXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU2VhcmNoRmllbGQudG9rZW5fbmFtZVwiOiBcIu2GoO2BsOydtOumhFwiLFxuICBcImVudW0uUmVxdWVzdExvZ1NlYXJjaEZpZWxkLnVzZXJfcHJvbXB0XCI6IFwi7IKs7Jqp7J6QIO2UhOuhrO2UhO2KuFwiLFxuICBcImVudW0uUmVxdWVzdExvZ1N0YXR1cy5ydW5uaW5nXCI6IFwi7Iuk7ZaJIOykkVwiLFxuICBcImVudW0uUmVxdWVzdExvZ1N0YXR1cy5zdWNjZWVkZWRcIjogXCLshLHqs7VcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGF0dXMuZXJyb3JcIjogXCLsl5Drn6xcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGF0dXMuYWJvcnRlZFwiOiBcIuykkeuLqFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcFwiOiBcIlJlcXVlc3RMb2dTdGVwXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmlkXCI6IFwiSURcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY3JlYXRlZF9hdFwiOiBcIuuTseuhneydvOyLnFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5yZXF1ZXN0X2xvZ1wiOiBcIuu2gOuqqCByZXF1ZXN0IGxvZyBJRFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5zdGVwX2luZGV4XCI6IFwiYWktc2RrIHN0ZXAgbnVtYmVyICgwLWJhc2VkKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC50eXBlXCI6IFwic3RlcCDtg4DsnoVcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAubW9kZWxfbmFtZVwiOiBcIuyLpOygnCBzZXJ2aW5nIOuqqOuNuFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5yZXF1ZXN0ZWRfbW9kZWxfbmFtZVwiOiBcIuyalOyyrSDrqqjrjbggKGZhbGxiYWNrIOyghClcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuZmFsbGJhY2tfY291bnRcIjogXCLrqqjrjbggZmFsbGJhY2sg7Zqf7IiYXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmlucHV0X3Rva2Vuc1wiOiBcIuyeheugpSDthqDtgbAgKGdlbmVyYXRlKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5vdXRwdXRfdG9rZW5zXCI6IFwi7Lac66ClIO2GoO2BsCAoZ2VuZXJhdGUpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLmNhY2hlX3JlYWRfdG9rZW5zXCI6IFwi7LqQ7IucIOydveq4sCDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY2FjaGVfY3JlYXRpb25fdG9rZW5zXCI6IFwi7LqQ7IucIOyDneyEsSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY2FjaGVfY3JlYXRpb25fNW1fdG9rZW5zXCI6IFwiNeu2hCBUVEwg7LqQ7IucIOyDneyEsSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY2FjaGVfY3JlYXRpb25fMWhfdG9rZW5zXCI6IFwiMeyLnOqwhCBUVEwg7LqQ7IucIOyDneyEsSDthqDtgbBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuY29zdF91c2RcIjogXCJzdGVwIOu5hOyaqSAobWljcm8tVVNEKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC5jb3N0X3NvdXJjZVwiOiBcIuu5hOyaqSDstpzsspgocHJvdmlkZXIvcHJpY2luZ190YWJsZSlcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuZHVyYXRpb25fbXNcIjogXCLshozsmpTsi5zqsIQobXMpXCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnR0ZnRfbXNcIjogXCJHZW4gVFRGVChtcylcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuZmluaXNoX3JlYXNvblwiOiBcIuyZhOujjCDsgqzsnKBcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAucmVhc29uaW5nX3RleHRcIjogXCJyZWFzb25pbmcg7YWN7Iqk7Yq4XCIsXG4gIFwiZW50aXR5LlJlcXVlc3RMb2dTdGVwLnJlYXNvbmluZ190b2tlbnNcIjogXCJyZWFzb25pbmcg7Yag7YGwIOyImFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC50b29sX2NhbGxfaW5kZXhcIjogXCLqsJnsnYAgc3RlcCDrgrQgdG9vbCBjYWxsIOyInOyEnFwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC50b29sX2NhbGxfaWRcIjogXCJ0b29sIGNhbGwgSURcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9uYW1lXCI6IFwidG9vbCDsnbTrpoRcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9hcmdzXCI6IFwidG9vbCDsnbjsnpAgKEpTT04gc3RyaW5nKVwiLFxuICBcImVudGl0eS5SZXF1ZXN0TG9nU3RlcC50b29sX3Jlc3VsdFwiOiBcInRvb2wg6rKw6rO8IChKU09OIHN0cmluZylcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAudG9vbF9kdXJhdGlvbl9tc1wiOiBcInRvb2wg7Iuk7ZaJIOyGjOyalOyLnOqwhChtcylcIixcbiAgXCJlbnRpdHkuUmVxdWVzdExvZ1N0ZXAuZXJyb3JcIjogXCJzdGVwIOyXkOufrCDrqZTsi5zsp4BcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGVwVHlwZS5nZW5lcmF0ZVwiOiBcIkxMTSDsg53shLFcIixcbiAgXCJlbnVtLlJlcXVlc3RMb2dTdGVwVHlwZS50b29sX2NhbGxcIjogXCJUb29sIO2YuOy2nFwiLFxuICBcImVudW0uUmVxdWVzdExvZ1N0ZXBPcmRlckJ5LmlkLWFzY1wiOiBcIklE7IicXCIsXG4gIFwiZW51bS5SZXF1ZXN0TG9nU3RlcFNlYXJjaEZpZWxkLmlkXCI6IFwiSURcIixcbiAgXCJlbnRpdHkuU2V0dGluZ1wiOiBcIlNldHRpbmdcIixcbiAgXCJlbnRpdHkuU2V0dGluZy5pZFwiOiBcIklEXCIsXG4gIFwiZW50aXR5LlNldHRpbmcuY3JlYXRlZF9hdFwiOiBcIuuTseuhneydvOyLnFwiLFxuICBcImVudGl0eS5TZXR0aW5nLmtleVwiOiBcIuyEpOyglSDtgqQgKOyYiDogc2xhY2suZW5hYmxlZClcIixcbiAgXCJlbnRpdHkuU2V0dGluZy52YWx1ZVwiOiBcIuyEpOyglSDqsJIgKOusuOyekOyXtCDsoIDsnqUsIOyVseyXkOyEnCDtjIzsi7HCt+qygOymnSlcIixcbiAgXCJlbnRpdHkuU2V0dGluZy51cGRhdGVkX2F0XCI6IFwi7LWc7KKFIOyImOygleydvOyLnFwiLFxuICBcImVudW0uU2V0dGluZ09yZGVyQnkua2V5LWFzY1wiOiBcIu2CpOyInFwiLFxuICBcImVudW0uU2V0dGluZ1NlYXJjaEZpZWxkLmtleVwiOiBcIu2CpFwiLFxuICBcImVudGl0eS5Ub2tlblwiOiBcIlRva2VuXCIsXG4gIFwiZW50aXR5LlRva2VuLmlkXCI6IFwiSURcIixcbiAgXCJlbnRpdHkuVG9rZW4uY3JlYXRlZF9hdFwiOiBcIuuTseuhneydvOyLnFwiLFxuICBcImVudGl0eS5Ub2tlbi5wcm92aWRlclwiOiBcIu2UhOuhnOuwlOydtOuNlFwiLFxuICBcImVudGl0eS5Ub2tlbi5jcmVkZW50aWFsc1wiOiBcIuyduOymnSDsoJXrs7QgKEpTT05CKVwiLFxuICBcImVudGl0eS5Ub2tlbi5uYW1lXCI6IFwi7Yag7YGwIOydtOumhFwiLFxuICBcImVudGl0eS5Ub2tlbi5hY3RpdmVcIjogXCLtmZzshLEg7Jes67aAXCIsXG4gIFwiZW50aXR5LlRva2VuLm9yZFwiOiBcIuygleugrCDsiJzshJxcIixcbiAgXCJlbnRpdHkuVG9rZW4ucXVvdGFfdGhyZXNob2xkXCI6IFwicXVvdGEg7IKs7Jqp66WgIOyehOqzhOy5mCglKS4gbnVsbOydtOuptCDrr7jshKTsoJVcIixcbiAgXCJlbnRpdHkuVG9rZW4ud2VpZ2h0XCI6IFwi6rCA7KSRIOudvOyatOuTnOuhnOu5iCDrnbzsmrDtjIUg6rCA7KSR7LmYICgxLi4xMDApXCIsXG4gIFwiZW51bS5Ub2tlbk9yZGVyQnkuaWQtZGVzY1wiOiBcIklE7LWc7Iug7IicXCIsXG4gIFwiZW51bS5Ub2tlbk9yZGVyQnkub3JkLWFzY1wiOiBcIuyInOyEnOyInFwiLFxuICBcImVudW0uVG9rZW5TZWFyY2hGaWVsZC5pZFwiOiBcIklEXCIsXG4gIFwiZW51bS5Ub2tlblNlYXJjaEZpZWxkLm5hbWVcIjogXCLsnbTrpoRcIixcbn0gYXMgY29uc3Q7XG5cbi8vIGRlZmF1bHRMb2NhbGXsnZggZGljdGlvbmFyeeulvCDquLDspIDsnLzroZwg7YKkIOy2lOy2nFxudHlwZSBSQ0tleXMgPSB0eXBlb2YgcmNLZXlzS287XG50eXBlIFByb2plY3REaWN0aW9uYXJ5ID0gdHlwZW9mIGtvO1xudHlwZSBFbnRpdHlMYWJlbHMgPSB0eXBlb2YgZW50aXR5TGFiZWxzO1xudHlwZSBSYXdNZXJnZWREaWN0aW9uYXJ5ID0gUkNLZXlzICZcbiAgT21pdDxFbnRpdHlMYWJlbHMsIGtleW9mIChSQ0tleXMgJiBQcm9qZWN0RGljdGlvbmFyeSk+ICZcbiAgUHJvamVjdERpY3Rpb25hcnk7XG5cbi8vIO2CpOuKlCDsnKDsp4DtlZjrkJgsIOqwkiDtg4DsnoXsnYAgc3RyaW5nIOuYkOuKlCDtlajsiJjroZwg7J2867CY7ZmUICjri6TrpbggbG9jYWxl7J2YIOumrO2EsOuftCDtg4DsnoUg7Lap64+MIOuwqeyngClcbmV4cG9ydCB0eXBlIE1lcmdlZERpY3Rpb25hcnkgPSB7XG4gIFtLIGluIGtleW9mIFJhd01lcmdlZERpY3Rpb25hcnldOiBSYXdNZXJnZWREaWN0aW9uYXJ5W0tdIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIFApID0+IHN0cmluZ1xuICAgID8gKC4uLmFyZ3M6IFApID0+IHN0cmluZ1xuICAgIDogc3RyaW5nO1xufTtcbmV4cG9ydCB0eXBlIERpY3RLZXkgPSBrZXlvZiBNZXJnZWREaWN0aW9uYXJ5O1xuZXhwb3J0IHR5cGUgTG9jYWxpemVkU3RyaW5nID0gc3RyaW5nICYgeyBfX2JyYW5kOiBcIkxvY2FsaXplZFN0cmluZ1wiIH07XG5cbmV4cG9ydCBmdW5jdGlvbiBkZWZpbmVMb2NhbGUoZGljdDogUGFydGlhbDxNZXJnZWREaWN0aW9uYXJ5Pikge1xuICByZXR1cm4gZGljdDtcbn1cblxuLy8g6rCBIGxvY2FsZeuzhOuhnCByYy1rZXlzICsgZW50aXR5IGxhYmVscyArIO2UhOuhnOygne2KuCBkaWN0IO2Vqey5qFxuY29uc3QgZGljdGlvbmFyaWVzOiBSZWNvcmQ8c3RyaW5nLCBQYXJ0aWFsPE1lcmdlZERpY3Rpb25hcnk+PiA9IHtcbiAga286IHsgLi4ucmNLZXlzS28sIC4uLmVudGl0eUxhYmVscywgLi4ua28gfSxcbiAgZW46IHsgLi4ucmNLZXlzRW4sIC4uLmVuIH0sXG59O1xuXG50eXBlIFNEUmV0dXJuVHlwZTxLIGV4dGVuZHMgRGljdEtleT4gPSBNZXJnZWREaWN0aW9uYXJ5W0tdIGV4dGVuZHMgKC4uLmFyZ3M6IGluZmVyIFApID0+IHN0cmluZ1xuICA/ICguLi5hcmdzOiBQKSA9PiBMb2NhbGl6ZWRTdHJpbmdcbiAgOiBMb2NhbGl6ZWRTdHJpbmc7XG5cbmZ1bmN0aW9uIGdldERpY3RWYWx1ZTxLIGV4dGVuZHMgRGljdEtleT4oa2V5OiBLLCBsb2NhbGU6IHN0cmluZyk6IFNEUmV0dXJuVHlwZTxLPiB7XG4gIC8vIDEuIOyngOygleuQnCBsb2NhbGXsl5DshJwg7KGw7ZqMXG4gIGNvbnN0IGRpY3QgPSBkaWN0aW9uYXJpZXNbbG9jYWxlXTtcbiAgaWYgKGRpY3Q/LltrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZGljdFtrZXldIGFzIHVua25vd24gYXMgU0RSZXR1cm5UeXBlPEs+O1xuICB9XG5cbiAgLy8gMi4gZGVmYXVsdCBsb2NhbGXsl5DshJwg7KGw7ZqMXG4gIGlmIChsb2NhbGUgIT09IERFRkFVTFRfTE9DQUxFICYmIGRpY3Rpb25hcmllc1tERUZBVUxUX0xPQ0FMRV0/LltrZXldICE9PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gZGljdGlvbmFyaWVzW0RFRkFVTFRfTE9DQUxFXVtrZXldIGFzIHVua25vd24gYXMgU0RSZXR1cm5UeXBlPEs+O1xuICB9XG5cbiAgLy8gMy4gc3VwcG9ydGVkIGxvY2FsZXMg7Iic7ZqMXG4gIGZvciAoY29uc3Qgc3VwcG9ydGVkTG9jYWxlIG9mIFNVUFBPUlRFRF9MT0NBTEVTKSB7XG4gICAgaWYgKHN1cHBvcnRlZExvY2FsZSAhPT0gbG9jYWxlICYmIHN1cHBvcnRlZExvY2FsZSAhPT0gREVGQVVMVF9MT0NBTEUpIHtcbiAgICAgIGlmIChkaWN0aW9uYXJpZXNbc3VwcG9ydGVkTG9jYWxlXT8uW2tleV0gIT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gZGljdGlvbmFyaWVzW3N1cHBvcnRlZExvY2FsZV1ba2V5XSBhcyB1bmtub3duIGFzIFNEUmV0dXJuVHlwZTxLPjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyA0LiDrqqjrkZAg7Iuk7YyoIOyLnCBrZXkg67CY7ZmYXG4gIHJldHVybiBrZXkgYXMgdW5rbm93biBhcyBTRFJldHVyblR5cGU8Sz47XG59XG5cbi8qKlxuICogU29uYW11IERpY3Rpb25hcnkg7ZWo7IiYXG4gKiBsb2NhbGXsl5Ag66ee64qUIOuyiOyXrSDthY3siqTtirjrpbwg67CY7ZmY7ZWp64uI64ukLlxuICpcbiAqIEBleGFtcGxlXG4gKiBTRChcImNvbW1vbi5zYXZlXCIpICAvLyDihpIgXCLsoIDsnqVcIiAoTG9jYWxpemVkU3RyaW5nKVxuICogU0QoXCJ1c2VyLm5vdEZvdW5kXCIpKDEpICAvLyDihpIgXCLsobTsnqztlZjsp4Ag7JWK64qUIFVzZXIgSUQgMVwiIChMb2NhbGl6ZWRTdHJpbmcpXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBTRDxLIGV4dGVuZHMgRGljdEtleT4oa2V5OiBLKTogU0RSZXR1cm5UeXBlPEs+IHtcbiAgY29uc3QgbG9jYWxlID0gZ2V0Q3VycmVudExvY2FsZSgpO1xuICByZXR1cm4gZ2V0RGljdFZhbHVlKGtleSwgbG9jYWxlKTtcbn1cblxuLyoqXG4gKiDtirnsoJUgbG9jYWxl7J2YIOuyiOyXrSDthY3siqTtirjrpbwg67CY7ZmY7ZWY64qUIO2VqOyImOulvCDsg53shLHtlanri4jri6QuXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IEVOID0gU0QubG9jYWxlKFwiZW5cIik7XG4gKiBFTihcImNvbW1vbi5zYXZlXCIpICAvLyDihpIgXCJTYXZlXCJcbiAqL1xuU0QubG9jYWxlID1cbiAgKGxvY2FsZTogKHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXSkgPT5cbiAgPEsgZXh0ZW5kcyBEaWN0S2V5PihrZXk6IEspOiBTRFJldHVyblR5cGU8Sz4gPT4ge1xuICAgIHJldHVybiBnZXREaWN0VmFsdWUoa2V5LCBsb2NhbGUpO1xuICB9O1xuXG4vLyBMb2NhbGl6ZWQg6rCA64ql7ZWcIENvbHVtbiDtg4DsnoUg6rOE7IKwXG50eXBlIExvY2FsaXplZEJhc2VDb2x1bW48VD4gPSB7XG4gIFtLIGluIGtleW9mIFQgJiBzdHJpbmddOiBLIGV4dGVuZHMgYCR7aW5mZXIgQmFzZX1fJHsodHlwZW9mIFNVUFBPUlRFRF9MT0NBTEVTKVtudW1iZXJdfWBcbiAgICA/IEJhc2VcbiAgICA6IEs7XG59W2tleW9mIFQgJiBzdHJpbmddO1xuXG4vKipcbiAqIGxvY2FsZeyXkCDrlLDrnbwg7KCB7KCI7ZWcIOy7rOufvCDqsJLsnYQg67CY7ZmY7ZWp64uI64ukLlxuICogRELsl5AgbmFtZSwgbmFtZV9rbywgbmFtZV9lbuyymOufvCBsb2NhbGl6ZWQgY29sdW1u7J20IOyeiOydhCDrlYwg7IKs7Jqp7ZWp64uI64ukLlxuICpcbiAqIOyasOyEoOyInOychCAo7KeA7JuQIOuhnOy8gOydvOydgCBrby9qcC9lbuydtOqzoCwg7ISc67mE7Iqk7J2YIOq4sOuzuCDroZzsvIDsnbzsnYAga28sIOyCrOyaqeyekOydmCDroZzsvIDsnbzsnYAganDsnbwg65WMKTogY29sdW1uX2pwIOKGkiBjb2x1bW4g4oaSIGNvbHVtbl9rbyDihpIgY29sdW1uX2VuXG4gKiDsmrDshKDsiJzsnIQgKOyngOybkCDroZzsvIDsnbzsnYAga28vanAvZW7snbTqs6AsIOyEnOu5hOyKpOydmCDquLDrs7gg66Gc7LyA7J287J2AIGVuLCDsgqzsmqnsnpDsnZgg66Gc7LyA7J287J2AIGtv7J28IOuVjCk6IGNvbHVtbl9rbyDihpIgY29sdW1uIOKGkiBjb2x1bW5fZW4g4oaSIGNvbHVtbl9qcFxuICpcbiAqIEBleGFtcGxlXG4gKiBsb2NhbGl6ZWRDb2x1bW4odGFnLCBcIm5hbWVcIilcbiAqL1xudHlwZSBMb2NhbGl6ZWRDb2x1bW5TY2FsYXJWYWx1ZSA9IHN0cmluZyB8IG51bWJlciB8IGJvb2xlYW4gfCBiaWdpbnQ7XG50eXBlIExvY2FsaXplZENvbHVtblZhbHVlID0gc3RyaW5nIHwgc3RyaW5nW107XG50eXBlIE5lc3RlZExvY2FsaXplZENvbHVtblZhbHVlRnJvbTxWPiA9IFYgZXh0ZW5kcyBzdHJpbmdcbiAgPyBzdHJpbmdcbiAgOiBWIGV4dGVuZHMgcmVhZG9ubHkgc3RyaW5nW11cbiAgICA/IHN0cmluZ1tdXG4gICAgOiBuZXZlcjtcbnR5cGUgTG9jYWxpemVkQ29sdW1uVmFsdWVGcm9tPFY+ID0gViBleHRlbmRzIHN0cmluZ1xuICA/IHN0cmluZ1xuICA6IFYgZXh0ZW5kcyByZWFkb25seSBzdHJpbmdbXVxuICAgID8gc3RyaW5nW11cbiAgICA6IFYgZXh0ZW5kcyBudW1iZXIgfCBib29sZWFuIHwgYmlnaW50XG4gICAgICA/IHN0cmluZ1xuICAgICAgOiBWIGV4dGVuZHMgUGFydGlhbDxSZWNvcmQ8KHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXSwgaW5mZXIgTFY+PlxuICAgICAgICA/IE5lc3RlZExvY2FsaXplZENvbHVtblZhbHVlRnJvbTxMVj5cbiAgICAgICAgOiBuZXZlcjtcbnR5cGUgTG9jYWxpemVkQ29sdW1uQ2FuZGlkYXRlPFQsIEsgZXh0ZW5kcyBzdHJpbmc+ID1cbiAgfCAoSyBleHRlbmRzIGtleW9mIFQgPyBUW0tdIDogbmV2ZXIpXG4gIHwge1xuICAgICAgW0wgaW4gKHR5cGVvZiBTVVBQT1JURURfTE9DQUxFUylbbnVtYmVyXV06IGAke0t9XyR7TH1gIGV4dGVuZHMga2V5b2YgVFxuICAgICAgICA/IFRbYCR7S31fJHtMfWBdXG4gICAgICAgIDogbmV2ZXI7XG4gICAgfVsodHlwZW9mIFNVUFBPUlRFRF9MT0NBTEVTKVtudW1iZXJdXTtcbnR5cGUgTG9jYWxpemVkQ29sdW1uUmV0dXJuPFQsIEsgZXh0ZW5kcyBzdHJpbmc+ID1cbiAgfCBMb2NhbGl6ZWRDb2x1bW5WYWx1ZUZyb208TG9jYWxpemVkQ29sdW1uQ2FuZGlkYXRlPFQsIEs+PlxuICB8IHVuZGVmaW5lZDtcbnR5cGUgTG9jYWxlVmFsdWVNYXAgPSBQYXJ0aWFsPFJlY29yZDwodHlwZW9mIFNVUFBPUlRFRF9MT0NBTEVTKVtudW1iZXJdLCB1bmtub3duPj47XG5cbmZ1bmN0aW9uIGlzTG9jYWxpemVkQ29sdW1uVmFsdWUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBMb2NhbGl6ZWRDb2x1bW5WYWx1ZSB7XG4gIHJldHVybiAoXG4gICAgdHlwZW9mIHZhbHVlID09PSBcInN0cmluZ1wiIHx8XG4gICAgKEFycmF5LmlzQXJyYXkodmFsdWUpICYmIHZhbHVlLmV2ZXJ5KChpdGVtKSA9PiB0eXBlb2YgaXRlbSA9PT0gXCJzdHJpbmdcIikpXG4gICk7XG59XG5cbmZ1bmN0aW9uIGlzTG9jYWxpemVkQ29sdW1uU2NhbGFyVmFsdWUodmFsdWU6IHVua25vd24pOiB2YWx1ZSBpcyBMb2NhbGl6ZWRDb2x1bW5TY2FsYXJWYWx1ZSB7XG4gIHJldHVybiBbXCJzdHJpbmdcIiwgXCJudW1iZXJcIiwgXCJib29sZWFuXCIsIFwiYmlnaW50XCJdLmluY2x1ZGVzKHR5cGVvZiB2YWx1ZSk7XG59XG5cbmZ1bmN0aW9uIGlzRW1wdHlMb2NhbGl6ZWRDb2x1bW5WYWx1ZSh2YWx1ZTogdW5rbm93bik6IHZhbHVlIGlzIG51bGwgfCB1bmRlZmluZWQgfCBcIlwiIHtcbiAgcmV0dXJuIHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IFwiXCI7XG59XG5cbmZ1bmN0aW9uIGdldE5lc3RlZExvY2FsZVZhbHVlPFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiwgSyBleHRlbmRzIExvY2FsaXplZEJhc2VDb2x1bW48VD4+KFxuICByb3c6IFQsXG4gIGNvbHVtbjogSyxcbiAgbG9jYWxlOiAodHlwZW9mIFNVUFBPUlRFRF9MT0NBTEVTKVtudW1iZXJdLFxuKTogdW5rbm93biB7XG4gIGNvbnN0IGNvbHVtblZhbHVlID0gcm93W2NvbHVtbl07XG4gIGlmIChjb2x1bW5WYWx1ZSA9PT0gbnVsbCB8fCB0eXBlb2YgY29sdW1uVmFsdWUgIT09IFwib2JqZWN0XCIgfHwgQXJyYXkuaXNBcnJheShjb2x1bW5WYWx1ZSkpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmV0dXJuIChjb2x1bW5WYWx1ZSBhcyBMb2NhbGVWYWx1ZU1hcClbbG9jYWxlXTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGxvY2FsaXplZENvbHVtbjxcbiAgVCBleHRlbmRzIFJlY29yZDxzdHJpbmcsIHVua25vd24+LFxuICBLIGV4dGVuZHMgTG9jYWxpemVkQmFzZUNvbHVtbjxUPixcbj4ocm93OiBULCBjb2x1bW46IEspOiBMb2NhbGl6ZWRDb2x1bW5SZXR1cm48VCwgSz4ge1xuICBjb25zdCBjdXJyZW50TG9jYWxlID0gZ2V0Q3VycmVudExvY2FsZSgpO1xuICBjb25zdCBsb2NhbGUgPSBTVVBQT1JURURfTE9DQUxFUy5pbmNsdWRlcyhjdXJyZW50TG9jYWxlKSA/IGN1cnJlbnRMb2NhbGUgOiBERUZBVUxUX0xPQ0FMRTtcbiAgY29uc3Qgb3RoZXJMb2NhbGVzID0gU1VQUE9SVEVEX0xPQ0FMRVMuZmlsdGVyKFxuICAgIChsOiBzdHJpbmcpID0+IGwgIT09IGxvY2FsZSAmJiBsICE9PSBERUZBVUxUX0xPQ0FMRSxcbiAgKTtcbiAgY29uc3QgbG9jYWxpemVkS2V5ID0gKGNvbHVtbjogSywgbG9jYWxlOiAodHlwZW9mIFNVUFBPUlRFRF9MT0NBTEVTKVtudW1iZXJdKSA9PlxuICAgIGAke2NvbHVtbn1fJHtsb2NhbGV9YDtcbiAgY29uc3QgdmFsdWVzID0gW1xuICAgIHsgdmFsdWU6IHJvd1tsb2NhbGl6ZWRLZXkoY29sdW1uLCBsb2NhbGUpXSwgc291cmNlOiBcImRpcmVjdFwiIH0sXG4gICAgeyB2YWx1ZTogZ2V0TmVzdGVkTG9jYWxlVmFsdWUocm93LCBjb2x1bW4sIGxvY2FsZSksIHNvdXJjZTogXCJuZXN0ZWRcIiB9LFxuICAgIHsgdmFsdWU6IHJvd1tjb2x1bW5dLCBzb3VyY2U6IFwiZGlyZWN0XCIgfSxcbiAgICB7IHZhbHVlOiByb3dbbG9jYWxpemVkS2V5KGNvbHVtbiwgREVGQVVMVF9MT0NBTEUpXSwgc291cmNlOiBcImRpcmVjdFwiIH0sXG4gICAgeyB2YWx1ZTogZ2V0TmVzdGVkTG9jYWxlVmFsdWUocm93LCBjb2x1bW4sIERFRkFVTFRfTE9DQUxFKSwgc291cmNlOiBcIm5lc3RlZFwiIH0sXG4gICAgLi4ub3RoZXJMb2NhbGVzLmZsYXRNYXAoKGwpID0+IFtcbiAgICAgIHsgdmFsdWU6IHJvd1tsb2NhbGl6ZWRLZXkoY29sdW1uLCBsKV0sIHNvdXJjZTogXCJkaXJlY3RcIiB9LFxuICAgICAgeyB2YWx1ZTogZ2V0TmVzdGVkTG9jYWxlVmFsdWUocm93LCBjb2x1bW4sIGwpLCBzb3VyY2U6IFwibmVzdGVkXCIgfSxcbiAgICBdKSxcbiAgXTtcblxuICBmb3IgKGNvbnN0IHsgdmFsdWUsIHNvdXJjZSB9IG9mIHZhbHVlcykge1xuICAgIGlmICghaXNFbXB0eUxvY2FsaXplZENvbHVtblZhbHVlKHZhbHVlKSAmJiBpc0xvY2FsaXplZENvbHVtblZhbHVlKHZhbHVlKSkge1xuICAgICAgcmV0dXJuIHZhbHVlIGFzIExvY2FsaXplZENvbHVtblJldHVybjxULCBLPjtcbiAgICB9XG4gICAgaWYgKFxuICAgICAgc291cmNlID09PSBcImRpcmVjdFwiICYmXG4gICAgICAhaXNFbXB0eUxvY2FsaXplZENvbHVtblZhbHVlKHZhbHVlKSAmJlxuICAgICAgaXNMb2NhbGl6ZWRDb2x1bW5TY2FsYXJWYWx1ZSh2YWx1ZSlcbiAgICApIHtcbiAgICAgIHJldHVybiBTdHJpbmcodmFsdWUpIGFzIExvY2FsaXplZENvbHVtblJldHVybjxULCBLPjtcbiAgICB9XG4gIH1cblxuICByZXR1cm4gdW5kZWZpbmVkO1xufVxuXG4vKipcbiAqIEVudW3snZggbG9jYWxpemVkIGxhYmVsc+ulvCBQcm94eeuhnCDrsJjtmZjtlanri4jri6QuXG4gKiBTZWxlY3Qg7Lu07Y+s64SM7Yq4IOuTseyXkOyEnCBFbnVtTGFiZWxba2V5XSDrjIDsi6Ag7IKs7Jqp7ZWp64uI64ukLlxuICpcbiAqIEBleGFtcGxlXG4gKiBTRC5lbnVtTGFiZWxzKFwiVGFnT3JkZXJCeVwiKVtrZXldICAvLyDihpIg7ZiE7J6sIGxvY2FsZeydmCDrnbzrsqhcbiAqL1xuU0QuZW51bUxhYmVscyA9IChlbnVtTmFtZTogc3RyaW5nKTogUmVjb3JkPHN0cmluZywgTG9jYWxpemVkU3RyaW5nPiA9PiB7XG4gIHJldHVybiBuZXcgUHJveHkoe30gYXMgUmVjb3JkPHN0cmluZywgTG9jYWxpemVkU3RyaW5nPiwge1xuICAgIGdldChfLCBrZXk6IHN0cmluZyB8IHN5bWJvbCkge1xuICAgICAgaWYgKHR5cGVvZiBrZXkgPT09IFwic3ltYm9sXCIpIHtcbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICAgIH1cblxuICAgICAgY29uc3QgZGljdEtleSA9IGBlbnVtLiR7ZW51bU5hbWV9LiR7a2V5fWAgYXMgRGljdEtleTtcbiAgICAgIHJldHVybiBnZXREaWN0VmFsdWUoZGljdEtleSwgZ2V0Q3VycmVudExvY2FsZSgpKTtcbiAgICB9LFxuICB9KTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBT0EsTUFBTSxpQkFBaUI7QUFDdkIsTUFBTSxvQkFBb0IsQ0FBQyxNQUFNLElBQUk7QUFDckMsU0FBUyxtQkFBdUQ7Q0FDOUQsSUFBSTtFQUVGLE9BRFksT0FBTyxXQUNYLENBQUEsQ0FBSSxVQUFpRDtDQUMvRCxRQUFRO0VBQ04sT0FBTztDQUNUO0FBQ0Y7QUFNQSxNQUFNLFdBQVc7Q0FFZiwwQkFBMEI7Q0FDMUIsNEJBQTRCO0NBQzVCLDRCQUE0QjtDQUM1QixvQ0FBb0M7Q0FHcEMseUJBQXlCO0NBQ3pCLGlD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
@@ -0,0 +1,15 @@
1
+ //#region src/migrations/20260814130113_alter_request_logs_add1_alter1.ts
2
+ async function up(knex) {
3
+ await knex.schema.alterTable("request_logs", (table) => {
4
+ table.boolean("response_json_ok").nullable();
5
+ });
6
+ }
7
+ async function down(knex) {
8
+ await knex.schema.alterTable("request_logs", (table) => {
9
+ table.dropColumns("response_json_ok");
10
+ });
11
+ }
12
+ //#endregion
13
+ export { down, up };
14
+
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMjAyNjA4MTQxMzAxMTNfYWx0ZXJfcmVxdWVzdF9sb2dzX2FkZDFfYWx0ZXIxLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRpb25zLzIwMjYwODE0MTMwMTEzX2FsdGVyX3JlcXVlc3RfbG9nc19hZGQxX2FsdGVyMS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEtuZXggfSBmcm9tIFwia25leFwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXAoa25leDogS25leCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBrbmV4LnNjaGVtYS5hbHRlclRhYmxlKFwicmVxdWVzdF9sb2dzXCIsICh0YWJsZSkgPT4ge1xuICAgIC8vIGFkZFxuICAgIHRhYmxlLmJvb2xlYW4oXCJyZXNwb25zZV9qc29uX29rXCIpLm51bGxhYmxlKCk7XG4gIH0pO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZG93bihrbmV4OiBLbmV4KTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGtuZXguc2NoZW1hLmFsdGVyVGFibGUoXCJyZXF1ZXN0X2xvZ3NcIiwgKHRhYmxlKSA9PiB7XG4gICAgLy8gcm9sbGJhY2sgLSBhZGRcbiAgICB0YWJsZS5kcm9wQ29sdW1ucyhcInJlc3BvbnNlX2pzb25fb2tcIik7XG4gIH0pO1xufVxuIl0sIm1hcHBpbmdzIjoiO0FBRUEsZUFBc0IsR0FBRyxNQUEyQjtDQUNsRCxNQUFNLEtBQUssT0FBTyxXQUFXLGlCQUFpQixVQUFVO0VBRXRELE1BQU0sUUFBUSxrQkFBa0IsQ0FBQyxDQUFDLFNBQVM7Q0FDN0MsQ0FBQztBQUNIO0FBRUEsZUFBc0IsS0FBSyxNQUEyQjtDQUNwRCxNQUFNLEtBQUssT0FBTyxXQUFXLGlCQUFpQixVQUFVO0VBRXRELE1BQU0sWUFBWSxrQkFBa0I7Q0FDdEMsQ0FBQztBQUNIIn0=
@@ -0,0 +1,15 @@
1
+ //#region src/migrations/20260814131051_alter_request_logs_add1_alter1.ts
2
+ async function up(knex) {
3
+ await knex.schema.alterTable("request_logs", (table) => {
4
+ table.text("json_schema").nullable();
5
+ });
6
+ }
7
+ async function down(knex) {
8
+ await knex.schema.alterTable("request_logs", (table) => {
9
+ table.dropColumns("json_schema");
10
+ });
11
+ }
12
+ //#endregion
13
+ export { down, up };
14
+
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMjAyNjA4MTQxMzEwNTFfYWx0ZXJfcmVxdWVzdF9sb2dzX2FkZDFfYWx0ZXIxLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRpb25zLzIwMjYwODE0MTMxMDUxX2FsdGVyX3JlcXVlc3RfbG9nc19hZGQxX2FsdGVyMS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEtuZXggfSBmcm9tIFwia25leFwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXAoa25leDogS25leCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBrbmV4LnNjaGVtYS5hbHRlclRhYmxlKFwicmVxdWVzdF9sb2dzXCIsICh0YWJsZSkgPT4ge1xuICAgIC8vIGFkZFxuICAgIHRhYmxlLnRleHQoXCJqc29uX3NjaGVtYVwiKS5udWxsYWJsZSgpO1xuICB9KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRvd24oa25leDogS25leCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBrbmV4LnNjaGVtYS5hbHRlclRhYmxlKFwicmVxdWVzdF9sb2dzXCIsICh0YWJsZSkgPT4ge1xuICAgIC8vIHJvbGxiYWNrIC0gYWRkXG4gICAgdGFibGUuZHJvcENvbHVtbnMoXCJqc29uX3NjaGVtYVwiKTtcbiAgfSk7XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxlQUFzQixHQUFHLE1BQTJCO0NBQ2xELE1BQU0sS0FBSyxPQUFPLFdBQVcsaUJBQWlCLFVBQVU7RUFFdEQsTUFBTSxLQUFLLGFBQWEsQ0FBQyxDQUFDLFNBQVM7Q0FDckMsQ0FBQztBQUNIO0FBRUEsZUFBc0IsS0FBSyxNQUEyQjtDQUNwRCxNQUFNLEtBQUssT0FBTyxXQUFXLGlCQUFpQixVQUFVO0VBRXRELE1BQU0sWUFBWSxhQUFhO0NBQ2pDLENBQUM7QUFDSCJ9
@@ -0,0 +1,15 @@
1
+ //#region src/migrations/20260814134846_alter_request_logs_add1_alter1.ts
2
+ async function up(knex) {
3
+ await knex.schema.alterTable("request_logs", (table) => {
4
+ table.boolean("is_structured").notNullable().defaultTo(knex.raw("false"));
5
+ });
6
+ }
7
+ async function down(knex) {
8
+ await knex.schema.alterTable("request_logs", (table) => {
9
+ table.dropColumns("is_structured");
10
+ });
11
+ }
12
+ //#endregion
13
+ export { down, up };
14
+
15
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMjAyNjA4MTQxMzQ4NDZfYWx0ZXJfcmVxdWVzdF9sb2dzX2FkZDFfYWx0ZXIxLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWdyYXRpb25zLzIwMjYwODE0MTM0ODQ2X2FsdGVyX3JlcXVlc3RfbG9nc19hZGQxX2FsdGVyMS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIEtuZXggfSBmcm9tIFwia25leFwiO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gdXAoa25leDogS25leCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBrbmV4LnNjaGVtYS5hbHRlclRhYmxlKFwicmVxdWVzdF9sb2dzXCIsICh0YWJsZSkgPT4ge1xuICAgIC8vIGFkZFxuICAgIHRhYmxlLmJvb2xlYW4oXCJpc19zdHJ1Y3R1cmVkXCIpLm5vdE51bGxhYmxlKCkuZGVmYXVsdFRvKGtuZXgucmF3KFwiZmFsc2VcIikpO1xuICB9KTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRvd24oa25leDogS25leCk6IFByb21pc2U8dm9pZD4ge1xuICBhd2FpdCBrbmV4LnNjaGVtYS5hbHRlclRhYmxlKFwicmVxdWVzdF9sb2dzXCIsICh0YWJsZSkgPT4ge1xuICAgIC8vIHJvbGxiYWNrIC0gYWRkXG4gICAgdGFibGUuZHJvcENvbHVtbnMoXCJpc19zdHJ1Y3R1cmVkXCIpO1xuICB9KTtcbn1cbiJdLCJtYXBwaW5ncyI6IjtBQUVBLGVBQXNCLEdBQUcsTUFBMkI7Q0FDbEQsTUFBTSxLQUFLLE9BQU8sV0FBVyxpQkFBaUIsVUFBVTtFQUV0RCxNQUFNLFFBQVEsZUFBZSxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsVUFBVSxLQUFLLElBQUksT0FBTyxDQUFDO0NBQzFFLENBQUM7QUFDSDtBQUVBLGVBQXNCLEtBQUssTUFBMkI7Q0FDcEQsTUFBTSxLQUFLLE9BQU8sV0FBVyxpQkFBaUIsVUFBVTtFQUV0RCxNQUFNLFlBQVksZUFBZTtDQUNuQyxDQUFDO0FBQ0gifQ==
@@ -0,0 +1,13 @@
1
+ //#region src/migrations/20260814140759_alter_request_logs_alter1.ts
2
+ async function up(knex) {
3
+ await knex.raw(`CREATE INDEX request_logs_created_at_index ON request_logs USING btree(created_at ASC NULLS LAST);`);
4
+ }
5
+ async function down(knex) {
6
+ await knex.schema.alterTable("request_logs", (table) => {
7
+ table.dropIndex(["created_at"], "request_logs_created_at_index");
8
+ });
9
+ }
10
+ //#endregion
11
+ export { down, up };
12
+
13
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMjAyNjA4MTQxNDA3NTlfYWx0ZXJfcmVxdWVzdF9sb2dzX2FsdGVyMS5qcyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi9zcmMvbWlncmF0aW9ucy8yMDI2MDgxNDE0MDc1OV9hbHRlcl9yZXF1ZXN0X2xvZ3NfYWx0ZXIxLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgS25leCB9IGZyb20gXCJrbmV4XCI7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB1cChrbmV4OiBLbmV4KTogUHJvbWlzZTx2b2lkPiB7XG4gIGF3YWl0IGtuZXgucmF3KFxuICAgIGBDUkVBVEUgSU5ERVggcmVxdWVzdF9sb2dzX2NyZWF0ZWRfYXRfaW5kZXggT04gcmVxdWVzdF9sb2dzIFVTSU5HIGJ0cmVlKGNyZWF0ZWRfYXQgQVNDIE5VTExTIExBU1QpO2AsXG4gICk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb3duKGtuZXg6IEtuZXgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQga25leC5zY2hlbWEuYWx0ZXJUYWJsZShcInJlcXVlc3RfbG9nc1wiLCAodGFibGUpID0+IHtcbiAgICB0YWJsZS5kcm9wSW5kZXgoW1wiY3JlYXRlZF9hdFwiXSwgXCJyZXF1ZXN0X2xvZ3NfY3JlYXRlZF9hdF9pbmRleFwiKTtcbiAgfSk7XG59XG4iXSwibWFwcGluZ3MiOiI7QUFFQSxlQUFzQixHQUFHLE1BQTJCO0NBQ2xELE1BQU0sS0FBSyxJQUNULG9HQUNGO0FBQ0Y7QUFFQSxlQUFzQixLQUFLLE1BQTJCO0NBQ3BELE1BQU0sS0FBSyxPQUFPLFdBQVcsaUJBQWlCLFVBQVU7RUFDdEQsTUFBTSxVQUFVLENBQUMsWUFBWSxHQUFHLCtCQUErQjtDQUNqRSxDQUFDO0FBQ0gifQ==