@gitpod/gitpod-protocol 0.1.5-procmount.0 → 0.1.5-protected-secrets.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/data/gitpod-schema.json +149 -29
- package/lib/accounting-protocol.d.ts +163 -0
- package/lib/accounting-protocol.d.ts.map +1 -0
- package/lib/accounting-protocol.js +111 -0
- package/lib/accounting-protocol.js.map +1 -0
- package/lib/admin-protocol.d.ts +39 -4
- package/lib/admin-protocol.d.ts.map +1 -1
- package/lib/admin-protocol.js +15 -0
- package/lib/admin-protocol.js.map +1 -1
- package/lib/analytics.d.ts +44 -0
- package/lib/analytics.d.ts.map +1 -0
- package/lib/analytics.js +10 -0
- package/lib/analytics.js.map +1 -0
- package/lib/attribution.d.ts +23 -0
- package/lib/attribution.d.ts.map +1 -0
- package/lib/attribution.js +50 -0
- package/lib/attribution.js.map +1 -0
- package/lib/auth.d.ts.map +1 -1
- package/lib/billing-mode.d.ts +43 -0
- package/lib/billing-mode.d.ts.map +1 -0
- package/lib/billing-mode.js +44 -0
- package/lib/billing-mode.js.map +1 -0
- package/lib/blocked-repositories-protocol.d.ts +13 -0
- package/lib/blocked-repositories-protocol.d.ts.map +1 -0
- package/lib/blocked-repositories-protocol.js +8 -0
- package/lib/blocked-repositories-protocol.js.map +1 -0
- package/lib/context-url.d.ts +31 -0
- package/lib/context-url.d.ts.map +1 -0
- package/lib/context-url.js +102 -0
- package/lib/context-url.js.map +1 -0
- package/lib/context-url.spec.d.ts +14 -0
- package/lib/context-url.spec.d.ts.map +1 -0
- package/lib/context-url.spec.js +109 -0
- package/lib/context-url.spec.js.map +1 -0
- package/lib/encryption/container-module.d.ts.map +1 -1
- package/lib/encryption/container-module.js +5 -4
- package/lib/encryption/container-module.js.map +1 -1
- package/lib/encryption/encryption-engine.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.js +25 -26
- package/lib/encryption/encryption-engine.js.map +1 -1
- package/lib/encryption/encryption-engine.spec.d.ts.map +1 -1
- package/lib/encryption/encryption-engine.spec.js +29 -37
- package/lib/encryption/encryption-engine.spec.js.map +1 -1
- package/lib/encryption/encryption-service.d.ts.map +1 -1
- package/lib/encryption/encryption-service.js +30 -44
- package/lib/encryption/encryption-service.js.map +1 -1
- package/lib/encryption/key-provider.d.ts.map +1 -1
- package/lib/encryption/key-provider.js +31 -38
- package/lib/encryption/key-provider.js.map +1 -1
- package/lib/env.d.ts +0 -6
- package/lib/env.d.ts.map +1 -1
- package/lib/env.js +7 -27
- package/lib/env.js.map +1 -1
- package/lib/experiments/always-default.d.ts +8 -0
- package/lib/experiments/always-default.d.ts.map +1 -0
- package/lib/experiments/always-default.js +20 -0
- package/lib/experiments/always-default.js.map +1 -0
- package/lib/experiments/configcat-server.d.ts +10 -0
- package/lib/experiments/configcat-server.d.ts.map +1 -0
- package/lib/experiments/configcat-server.js +36 -0
- package/lib/experiments/configcat-server.js.map +1 -0
- package/lib/experiments/configcat.d.ts +21 -0
- package/lib/experiments/configcat.d.ts.map +1 -0
- package/lib/experiments/configcat.js +51 -0
- package/lib/experiments/configcat.js.map +1 -0
- package/lib/experiments/types.d.ts +22 -0
- package/lib/experiments/types.d.ts.map +1 -0
- package/lib/experiments/types.js +10 -0
- package/lib/experiments/types.js.map +1 -0
- package/lib/gitpod-file-parser.d.ts.map +1 -1
- package/lib/gitpod-file-parser.js +26 -42
- package/lib/gitpod-file-parser.js.map +1 -1
- package/lib/gitpod-file-parser.spec.js +145 -142
- package/lib/gitpod-file-parser.spec.js.map +1 -1
- package/lib/gitpod-service.d.ts +195 -39
- package/lib/gitpod-service.d.ts.map +1 -1
- package/lib/gitpod-service.js +204 -271
- package/lib/gitpod-service.js.map +1 -1
- package/lib/headless-workspace-log.d.ts +9 -11
- package/lib/headless-workspace-log.d.ts.map +1 -1
- package/lib/headless-workspace-log.js +6 -8
- package/lib/headless-workspace-log.js.map +1 -1
- package/lib/ide-frontend-service.d.ts +5 -1
- package/lib/ide-frontend-service.d.ts.map +1 -1
- package/lib/ide-protocol.d.ts +113 -0
- package/lib/ide-protocol.d.ts.map +1 -0
- package/lib/{util/without.js → ide-protocol.js} +2 -2
- package/lib/ide-protocol.js.map +1 -0
- package/lib/index.d.ts +16 -10
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +8 -2
- package/lib/index.js.map +1 -1
- package/lib/installation-admin-protocol.d.ts +30 -0
- package/lib/installation-admin-protocol.d.ts.map +1 -0
- package/lib/installation-admin-protocol.js +31 -0
- package/lib/installation-admin-protocol.js.map +1 -0
- package/lib/license-protocol.d.ts +7 -0
- package/lib/license-protocol.d.ts.map +1 -1
- package/lib/license-protocol.js.map +1 -1
- package/lib/messaging/browser/connection.d.ts +5 -3
- package/lib/messaging/browser/connection.d.ts.map +1 -1
- package/lib/messaging/browser/connection.js +184 -34
- package/lib/messaging/browser/connection.js.map +1 -1
- package/lib/messaging/browser/window-connection.d.ts +4 -4
- package/lib/messaging/browser/window-connection.d.ts.map +1 -1
- package/lib/messaging/browser/window-connection.js +42 -59
- package/lib/messaging/browser/window-connection.js.map +1 -1
- package/lib/messaging/client-call-metrics.d.ts +19 -0
- package/lib/messaging/client-call-metrics.d.ts.map +1 -0
- package/lib/messaging/client-call-metrics.js +82 -0
- package/lib/messaging/client-call-metrics.js.map +1 -0
- package/lib/messaging/error.d.ts +11 -2
- package/lib/messaging/error.d.ts.map +1 -1
- package/lib/messaging/error.js +22 -4
- package/lib/messaging/error.js.map +1 -1
- package/lib/messaging/handler.d.ts +10 -0
- package/lib/messaging/handler.d.ts.map +1 -1
- package/lib/messaging/handler.js +1 -1
- package/lib/messaging/node/connection.d.ts +1 -17
- package/lib/messaging/node/connection.d.ts.map +1 -1
- package/lib/messaging/node/connection.js +24 -60
- package/lib/messaging/node/connection.js.map +1 -1
- package/lib/messaging/proxy-factory.d.ts +3 -1
- package/lib/messaging/proxy-factory.d.ts.map +1 -1
- package/lib/messaging/proxy-factory.js +75 -162
- package/lib/messaging/proxy-factory.js.map +1 -1
- package/lib/oss-allowlist.d.ts +14 -0
- package/lib/oss-allowlist.d.ts.map +1 -0
- package/lib/oss-allowlist.js +8 -0
- package/lib/oss-allowlist.js.map +1 -0
- package/lib/payment-protocol.d.ts +18 -0
- package/lib/payment-protocol.d.ts.map +1 -0
- package/lib/payment-protocol.js +13 -0
- package/lib/payment-protocol.js.map +1 -0
- package/lib/permission.d.ts +10 -3
- package/lib/permission.d.ts.map +1 -1
- package/lib/permission.js +41 -31
- package/lib/permission.js.map +1 -1
- package/lib/plans.d.ts +211 -0
- package/lib/plans.d.ts.map +1 -0
- package/lib/plans.js +609 -0
- package/lib/plans.js.map +1 -0
- package/lib/protocol.d.ts +285 -95
- package/lib/protocol.d.ts.map +1 -1
- package/lib/protocol.js +383 -206
- package/lib/protocol.js.map +1 -1
- package/{src/util/without.ts → lib/protocol.spec.d.ts} +2 -3
- package/lib/protocol.spec.d.ts.map +1 -0
- package/lib/protocol.spec.js +127 -0
- package/lib/protocol.spec.js.map +1 -0
- package/lib/snapshot-url.d.ts +14 -0
- package/lib/snapshot-url.d.ts.map +1 -0
- package/lib/snapshot-url.js +26 -0
- package/lib/snapshot-url.js.map +1 -0
- package/{src/theia-plugins.ts → lib/snapshot-url.spec.d.ts} +2 -6
- package/lib/snapshot-url.spec.d.ts.map +1 -0
- package/lib/snapshot-url.spec.js +41 -0
- package/lib/snapshot-url.spec.js.map +1 -0
- package/lib/team-subscription-protocol.d.ts +92 -0
- package/lib/team-subscription-protocol.d.ts.map +1 -0
- package/lib/team-subscription-protocol.js +78 -0
- package/lib/team-subscription-protocol.js.map +1 -0
- package/lib/teams-projects-protocol.d.ts +130 -0
- package/lib/teams-projects-protocol.d.ts.map +1 -0
- package/lib/teams-projects-protocol.js +30 -0
- package/lib/teams-projects-protocol.js.map +1 -0
- package/lib/typings/globals.d.ts +2 -2
- package/lib/typings/globals.d.ts.map +1 -1
- package/lib/usage.d.ts +61 -0
- package/lib/usage.d.ts.map +1 -0
- package/lib/usage.js +14 -0
- package/lib/usage.js.map +1 -0
- package/lib/util/analytics.d.ts +8 -0
- package/lib/util/analytics.d.ts.map +1 -0
- package/lib/util/analytics.js +88 -0
- package/lib/util/analytics.js.map +1 -0
- package/lib/util/async-iterator.d.ts.map +1 -1
- package/lib/util/async-iterator.js +57 -135
- package/lib/util/async-iterator.js.map +1 -1
- package/lib/util/cancelable.js +17 -59
- package/lib/util/cancelable.js.map +1 -1
- package/lib/util/date-time.js +11 -11
- package/lib/util/date-time.js.map +1 -1
- package/lib/util/debug-app.d.ts +25 -0
- package/lib/util/debug-app.d.ts.map +1 -0
- package/lib/util/debug-app.js +100 -0
- package/lib/util/debug-app.js.map +1 -0
- package/lib/util/deferred.js +10 -12
- package/lib/util/deferred.js.map +1 -1
- package/lib/util/disposable.d.ts.map +1 -1
- package/lib/util/disposable.js +27 -40
- package/lib/util/disposable.js.map +1 -1
- package/lib/util/event.d.ts.map +1 -1
- package/lib/util/event.js +63 -77
- package/lib/util/event.js.map +1 -1
- package/lib/util/garbage-collected-cache.d.ts +1 -0
- package/lib/util/garbage-collected-cache.d.ts.map +1 -1
- package/lib/util/garbage-collected-cache.js +32 -47
- package/lib/util/garbage-collected-cache.js.map +1 -1
- package/lib/util/generate-workspace-id.d.ts +6 -1
- package/lib/util/generate-workspace-id.d.ts.map +1 -1
- package/lib/util/generate-workspace-id.js +469 -502
- package/lib/util/generate-workspace-id.js.map +1 -1
- package/lib/util/generate-workspace-id.spec.js +68 -78
- package/lib/util/generate-workspace-id.spec.js.map +1 -1
- package/lib/util/gitpod-cookie.d.ts +20 -0
- package/lib/util/gitpod-cookie.d.ts.map +1 -0
- package/lib/util/gitpod-cookie.js +41 -0
- package/lib/util/gitpod-cookie.js.map +1 -0
- package/lib/util/gitpod-host-url.d.ts +4 -2
- package/lib/util/gitpod-host-url.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.js +126 -109
- package/lib/util/gitpod-host-url.js.map +1 -1
- package/lib/util/gitpod-host-url.spec.d.ts +7 -1
- package/lib/util/gitpod-host-url.spec.d.ts.map +1 -1
- package/lib/util/gitpod-host-url.spec.js +113 -31
- package/lib/util/gitpod-host-url.spec.js.map +1 -1
- package/lib/util/grpc.d.ts +34 -0
- package/lib/util/grpc.d.ts.map +1 -0
- package/lib/util/grpc.js +90 -0
- package/lib/util/grpc.js.map +1 -0
- package/lib/util/jaeger-client-types.d.ts +68 -0
- package/lib/util/jaeger-client-types.d.ts.map +1 -0
- package/lib/{theia-plugins.js → util/jaeger-client-types.js} +1 -1
- package/lib/util/jaeger-client-types.js.map +1 -0
- package/lib/util/logging.d.ts +49 -33
- package/lib/util/logging.d.ts.map +1 -1
- package/lib/util/logging.js +132 -129
- package/lib/util/logging.js.map +1 -1
- package/lib/util/logging.spec.d.ts +7 -0
- package/lib/util/logging.spec.d.ts.map +1 -0
- package/lib/util/logging.spec.js +52 -0
- package/lib/util/logging.spec.js.map +1 -0
- package/lib/util/make-link.js +5 -5
- package/lib/util/make-link.js.map +1 -1
- package/lib/util/nice-grpc.d.ts +9 -0
- package/lib/util/nice-grpc.d.ts.map +1 -0
- package/lib/util/nice-grpc.js +119 -0
- package/lib/util/nice-grpc.js.map +1 -0
- package/lib/util/parse-workspace-id.d.ts +10 -0
- package/lib/util/parse-workspace-id.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.js +31 -7
- package/lib/util/parse-workspace-id.js.map +1 -1
- package/lib/util/parse-workspace-id.spec.d.ts +4 -0
- package/lib/util/parse-workspace-id.spec.d.ts.map +1 -1
- package/lib/util/parse-workspace-id.spec.js +123 -84
- package/lib/util/parse-workspace-id.spec.js.map +1 -1
- package/lib/util/queue.js +16 -55
- package/lib/util/queue.js.map +1 -1
- package/lib/util/queue.spec.js +147 -288
- package/lib/util/queue.spec.js.map +1 -1
- package/lib/util/repeat.d.ts +15 -0
- package/lib/util/repeat.d.ts.map +1 -0
- package/lib/util/repeat.js +55 -0
- package/lib/util/repeat.js.map +1 -0
- package/lib/util/semaphore.d.ts.map +1 -1
- package/lib/util/semaphore.js +15 -46
- package/lib/util/semaphore.js.map +1 -1
- package/lib/util/skip-if.d.ts.map +1 -1
- package/lib/util/skip-if.js +6 -6
- package/lib/util/skip-if.js.map +1 -1
- package/lib/util/timeutil.d.ts +2 -0
- package/lib/util/timeutil.d.ts.map +1 -1
- package/lib/util/timeutil.js +41 -17
- package/lib/util/timeutil.js.map +1 -1
- package/lib/util/timeutil.spec.d.ts +2 -0
- package/lib/util/timeutil.spec.d.ts.map +1 -1
- package/lib/util/timeutil.spec.js +54 -23
- package/lib/util/timeutil.spec.js.map +1 -1
- package/lib/util/tracing.d.ts +52 -6
- package/lib/util/tracing.d.ts.map +1 -1
- package/lib/util/tracing.js +197 -64
- package/lib/util/tracing.js.map +1 -1
- package/lib/util/tracing.spec.d.ts +7 -0
- package/lib/util/tracing.spec.d.ts.map +1 -0
- package/lib/util/tracing.spec.js +121 -0
- package/lib/util/tracing.spec.js.map +1 -0
- package/lib/util/workspace-port-authentication.d.ts +7 -7
- package/lib/util/workspace-port-authentication.d.ts.map +1 -1
- package/lib/util/workspace-port-authentication.js +10 -12
- package/lib/util/workspace-port-authentication.js.map +1 -1
- package/lib/webhook-event.d.ts +44 -0
- package/lib/webhook-event.d.ts.map +1 -0
- package/lib/webhook-event.js +8 -0
- package/lib/webhook-event.js.map +1 -0
- package/lib/workspace-class.d.ts +14 -0
- package/lib/workspace-class.d.ts.map +1 -0
- package/lib/workspace-class.js +8 -0
- package/lib/workspace-class.js.map +1 -0
- package/lib/workspace-cluster.d.ts +75 -0
- package/lib/workspace-cluster.d.ts.map +1 -0
- package/lib/workspace-cluster.js +31 -0
- package/lib/workspace-cluster.js.map +1 -0
- package/lib/workspace-instance.d.ts +46 -5
- package/lib/workspace-instance.d.ts.map +1 -1
- package/lib/wsready.d.ts +1 -1
- package/lib/wsready.d.ts.map +1 -1
- package/lib/wsready.js +2 -2
- package/package.json +40 -18
- package/pkg-yarn.lock +23 -10
- package/provenance-bundle.jsonl +2 -0
- package/src/accounting-protocol.ts +244 -0
- package/src/admin-protocol.ts +80 -19
- package/src/analytics.ts +52 -0
- package/src/attribution.ts +59 -0
- package/src/auth.ts +2 -2
- package/src/billing-mode.ts +81 -0
- package/src/blocked-repositories-protocol.ts +13 -0
- package/src/context-url.spec.ts +67 -0
- package/src/context-url.ts +109 -0
- package/src/encryption/container-module.ts +2 -3
- package/src/encryption/encryption-engine.spec.ts +9 -8
- package/src/encryption/encryption-engine.ts +20 -16
- package/src/encryption/encryption-service.ts +4 -5
- package/src/encryption/key-provider.ts +16 -19
- package/src/env.ts +0 -22
- package/src/experiments/always-default.ts +24 -0
- package/src/experiments/configcat-server.ts +41 -0
- package/src/experiments/configcat.ts +56 -0
- package/src/experiments/types.ts +34 -0
- package/src/gitpod-file-parser.spec.ts +55 -61
- package/src/gitpod-file-parser.ts +16 -17
- package/src/gitpod-service.ts +385 -117
- package/src/headless-workspace-log.ts +12 -14
- package/src/ide-frontend-service.ts +6 -2
- package/src/ide-protocol.ts +129 -0
- package/src/index.ts +16 -10
- package/src/installation-admin-protocol.ts +45 -0
- package/src/license-protocol.ts +12 -6
- package/src/messaging/browser/connection.ts +197 -18
- package/src/messaging/browser/window-connection.ts +39 -29
- package/src/messaging/client-call-metrics.ts +77 -0
- package/src/messaging/error.ts +32 -7
- package/src/messaging/handler.ts +13 -1
- package/src/messaging/node/connection.ts +23 -70
- package/src/messaging/proxy-factory.ts +35 -34
- package/src/oss-allowlist.ts +15 -0
- package/src/payment-protocol.ts +20 -0
- package/src/permission.ts +42 -33
- package/src/plans.ts +683 -0
- package/src/protocol.spec.ts +97 -0
- package/src/protocol.ts +680 -282
- package/src/snapshot-url.spec.ts +27 -0
- package/src/snapshot-url.ts +27 -0
- package/src/team-subscription-protocol.ts +150 -0
- package/src/teams-projects-protocol.ts +166 -0
- package/src/typings/globals.ts +4 -4
- package/src/usage.ts +71 -0
- package/src/util/analytics.ts +109 -0
- package/src/util/async-iterator.ts +4 -5
- package/src/util/cancelable.ts +3 -3
- package/src/util/date-time.ts +8 -8
- package/src/util/debug-app.ts +81 -0
- package/src/util/deferred.ts +6 -6
- package/src/util/disposable.ts +3 -6
- package/src/util/event.ts +9 -11
- package/src/util/garbage-collected-cache.ts +16 -8
- package/src/util/generate-workspace-id.spec.ts +37 -10
- package/src/util/generate-workspace-id.ts +464 -438
- package/src/util/gitpod-cookie.ts +38 -0
- package/src/util/gitpod-host-url.spec.ts +59 -8
- package/src/util/gitpod-host-url.ts +72 -39
- package/src/util/grpc.ts +104 -0
- package/src/util/jaeger-client-types.ts +102 -0
- package/src/util/logging.spec.ts +23 -0
- package/src/util/logging.ts +156 -74
- package/src/util/make-link.ts +6 -7
- package/src/util/nice-grpc.ts +93 -0
- package/src/util/parse-workspace-id.spec.ts +37 -8
- package/src/util/parse-workspace-id.ts +32 -7
- package/src/util/queue.spec.ts +28 -26
- package/src/util/repeat.ts +45 -0
- package/src/util/semaphore.ts +6 -8
- package/src/util/skip-if.ts +10 -7
- package/src/util/timeutil.spec.ts +40 -14
- package/src/util/timeutil.ts +31 -15
- package/src/util/tracing.spec.ts +88 -0
- package/src/util/tracing.ts +200 -31
- package/src/util/workspace-port-authentication.ts +10 -13
- package/src/webhook-event.ts +55 -0
- package/src/workspace-class.ts +14 -0
- package/src/workspace-cluster.ts +109 -0
- package/src/workspace-instance.ts +105 -31
- package/src/wsready.ts +3 -3
- package/data/builtin-theia-plugins.json +0 -372
- package/lib/email-protocol.d.ts +0 -50
- package/lib/email-protocol.d.ts.map +0 -1
- package/lib/email-protocol.js +0 -28
- package/lib/email-protocol.js.map +0 -1
- package/lib/messaging/connection-error-handler.d.ts +0 -27
- package/lib/messaging/connection-error-handler.d.ts.map +0 -1
- package/lib/messaging/connection-error-handler.js +0 -46
- package/lib/messaging/connection-error-handler.js.map +0 -1
- package/lib/theia-plugins.d.ts +0 -11
- package/lib/theia-plugins.d.ts.map +0 -1
- package/lib/theia-plugins.js.map +0 -1
- package/lib/util/context-url.d.ts +0 -13
- package/lib/util/context-url.d.ts.map +0 -1
- package/lib/util/context-url.js +0 -26
- package/lib/util/context-url.js.map +0 -1
- package/lib/util/context-url.spec.d.ts +0 -10
- package/lib/util/context-url.spec.d.ts.map +0 -1
- package/lib/util/context-url.spec.js +0 -52
- package/lib/util/context-url.spec.js.map +0 -1
- package/lib/util/repeater.d.ts +0 -22
- package/lib/util/repeater.d.ts.map +0 -1
- package/lib/util/repeater.js +0 -118
- package/lib/util/repeater.js.map +0 -1
- package/lib/util/safe-promise.d.ts +0 -11
- package/lib/util/safe-promise.d.ts.map +0 -1
- package/lib/util/safe-promise.js +0 -34
- package/lib/util/safe-promise.js.map +0 -1
- package/lib/util/without.d.ts +0 -7
- package/lib/util/without.d.ts.map +0 -1
- package/lib/util/without.js.map +0 -1
- package/src/email-protocol.ts +0 -67
- package/src/messaging/connection-error-handler.ts +0 -62
- package/src/util/context-url.spec.ts +0 -25
- package/src/util/context-url.ts +0 -23
- package/src/util/jaeger-client.d.ts +0 -105
- package/src/util/repeater.ts +0 -49
- package/src/util/safe-promise.ts +0 -26
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Copyright (c) 2020 Gitpod GmbH. All rights reserved.
|
|
3
|
+
* Licensed under the GNU Affero General Public License (AGPL).
|
|
4
|
+
* See License-AGPL.txt in the project root for license information.
|
|
5
|
+
*/
|
|
6
|
+
import { DeepPartial } from "./util/deep-partial";
|
|
7
|
+
import { PermissionName } from "./permission";
|
|
8
|
+
export interface WorkspaceCluster {
|
|
9
|
+
name: string;
|
|
10
|
+
applicationCluster: string;
|
|
11
|
+
url: string;
|
|
12
|
+
tls?: TLSConfig;
|
|
13
|
+
state: WorkspaceClusterState;
|
|
14
|
+
maxScore: number;
|
|
15
|
+
score: number;
|
|
16
|
+
govern: boolean;
|
|
17
|
+
admissionConstraints?: AdmissionConstraint[];
|
|
18
|
+
}
|
|
19
|
+
export declare type WorkspaceClusterState = "available" | "cordoned" | "draining";
|
|
20
|
+
export interface TLSConfig {
|
|
21
|
+
ca: string;
|
|
22
|
+
key: string;
|
|
23
|
+
crt: string;
|
|
24
|
+
}
|
|
25
|
+
export declare namespace TLSConfig {
|
|
26
|
+
const loadFromBase64File: (path: string) => string;
|
|
27
|
+
}
|
|
28
|
+
export declare type WorkspaceClusterWoTLS = Omit<WorkspaceCluster, "tls">;
|
|
29
|
+
export declare type WorkspaceManagerConnectionInfo = Pick<WorkspaceCluster, "name" | "url" | "tls">;
|
|
30
|
+
export declare type AdmissionConstraint = AdmissionConstraintFeaturePreview | AdmissionConstraintHasPermission | AdmissionConstraintHasClass;
|
|
31
|
+
export declare type AdmissionConstraintFeaturePreview = {
|
|
32
|
+
type: "has-feature-preview";
|
|
33
|
+
};
|
|
34
|
+
export declare type AdmissionConstraintHasPermission = {
|
|
35
|
+
type: "has-permission";
|
|
36
|
+
permission: PermissionName;
|
|
37
|
+
};
|
|
38
|
+
export declare type AdmissionConstraintHasClass = {
|
|
39
|
+
type: "has-class";
|
|
40
|
+
id: string;
|
|
41
|
+
displayName: string;
|
|
42
|
+
};
|
|
43
|
+
export declare namespace AdmissionConstraint {
|
|
44
|
+
function is(o: any): o is AdmissionConstraint;
|
|
45
|
+
function isHasPermissionConstraint(o: any): o is AdmissionConstraintHasPermission;
|
|
46
|
+
function hasPermission(ac: AdmissionConstraint, permission: PermissionName): boolean;
|
|
47
|
+
}
|
|
48
|
+
export declare const WorkspaceClusterDB: unique symbol;
|
|
49
|
+
export interface WorkspaceClusterDB {
|
|
50
|
+
/**
|
|
51
|
+
* Stores the given WorkspaceCluster to the cluster-local DB in a consistent manner.
|
|
52
|
+
* If there already is an entry with the same name it's merged and updated with the given state.
|
|
53
|
+
* @param cluster
|
|
54
|
+
*/
|
|
55
|
+
save(cluster: WorkspaceCluster): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Deletes the cluster identified by this name, if any.
|
|
58
|
+
* @param name
|
|
59
|
+
*/
|
|
60
|
+
deleteByName(name: string): Promise<void>;
|
|
61
|
+
/**
|
|
62
|
+
* Finds a WorkspaceCluster with the given name. If there is none, `undefined` is returned.
|
|
63
|
+
* @param name
|
|
64
|
+
*/
|
|
65
|
+
findByName(name: string): Promise<WorkspaceCluster | undefined>;
|
|
66
|
+
/**
|
|
67
|
+
* Lists all WorkspaceClusterWoTls for which the given predicate is true (does not return TLS for size/speed concerns)
|
|
68
|
+
* @param predicate
|
|
69
|
+
*/
|
|
70
|
+
findFiltered(predicate: DeepPartial<WorkspaceClusterFilter>): Promise<WorkspaceClusterWoTLS[]>;
|
|
71
|
+
}
|
|
72
|
+
export interface WorkspaceClusterFilter extends Pick<WorkspaceCluster, "state" | "govern" | "url"> {
|
|
73
|
+
minScore: number;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=workspace-cluster.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-cluster.d.ts","sourceRoot":"","sources":["../src/workspace-cluster.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,WAAW,gBAAgB;IAI7B,IAAI,EAAE,MAAM,CAAC;IAIb,kBAAkB,EAAE,MAAM,CAAC;IAG3B,GAAG,EAAE,MAAM,CAAC;IAGZ,GAAG,CAAC,EAAE,SAAS,CAAC;IAGhB,KAAK,EAAE,qBAAqB,CAAC;IAG7B,QAAQ,EAAE,MAAM,CAAC;IAGjB,KAAK,EAAE,MAAM,CAAC;IAGd,MAAM,EAAE,OAAO,CAAC;IAGhB,oBAAoB,CAAC,EAAE,mBAAmB,EAAE,CAAC;CAChD;AAED,oBAAY,qBAAqB,GAAG,WAAW,GAAG,UAAU,GAAG,UAAU,CAAC;AAC1E,MAAM,WAAW,SAAS;IAEtB,EAAE,EAAE,MAAM,CAAC;IAEX,GAAG,EAAE,MAAM,CAAC;IAEZ,GAAG,EAAE,MAAM,CAAC;CACf;AACD,yBAAiB,SAAS,CAAC;IAChB,MAAM,kBAAkB,SAAU,MAAM,KAAG,MACqB,CAAC;CAC3E;AACD,oBAAY,qBAAqB,GAAG,IAAI,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC;AAClE,oBAAY,8BAA8B,GAAG,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC,CAAC;AAE5F,oBAAY,mBAAmB,GACzB,iCAAiC,GACjC,gCAAgC,GAChC,2BAA2B,CAAC;AAClC,oBAAY,iCAAiC,GAAG;IAAE,IAAI,EAAE,qBAAqB,CAAA;CAAE,CAAC;AAChF,oBAAY,gCAAgC,GAAG;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,UAAU,EAAE,cAAc,CAAA;CAAE,CAAC;AACtG,oBAAY,2BAA2B,GAAG;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjG,yBAAiB,mBAAmB,CAAC;IACjC,SAAgB,EAAE,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,mBAAmB,CAEnD;IACD,SAAgB,yBAAyB,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,IAAI,gCAAgC,CAEvF;IACD,SAAgB,aAAa,CAAC,EAAE,EAAE,mBAAmB,EAAE,UAAU,EAAE,cAAc,GAAG,OAAO,CAE1F;CACJ;AAED,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,WAAW,kBAAkB;IAC/B;;;;OAIG;IACH,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE/C;;;OAGG;IACH,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAAC;IAEhE;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,WAAW,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;CAClG;AACD,MAAM,WAAW,sBAAuB,SAAQ,IAAI,CAAC,gBAAgB,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC9F,QAAQ,EAAE,MAAM,CAAC;CACpB"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Copyright (c) 2020 Gitpod GmbH. All rights reserved.
|
|
4
|
+
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
|
+
* See License-AGPL.txt in the project root for license information.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.WorkspaceClusterDB = exports.AdmissionConstraint = exports.TLSConfig = void 0;
|
|
9
|
+
const fs = require("fs");
|
|
10
|
+
const env_1 = require("./env");
|
|
11
|
+
var TLSConfig;
|
|
12
|
+
(function (TLSConfig) {
|
|
13
|
+
TLSConfig.loadFromBase64File = (path) => fs.readFileSync((0, env_1.filePathTelepresenceAware)(path)).toString("base64");
|
|
14
|
+
})(TLSConfig = exports.TLSConfig || (exports.TLSConfig = {}));
|
|
15
|
+
var AdmissionConstraint;
|
|
16
|
+
(function (AdmissionConstraint) {
|
|
17
|
+
function is(o) {
|
|
18
|
+
return !!o && "type" in o;
|
|
19
|
+
}
|
|
20
|
+
AdmissionConstraint.is = is;
|
|
21
|
+
function isHasPermissionConstraint(o) {
|
|
22
|
+
return is(o) && o.type === "has-permission";
|
|
23
|
+
}
|
|
24
|
+
AdmissionConstraint.isHasPermissionConstraint = isHasPermissionConstraint;
|
|
25
|
+
function hasPermission(ac, permission) {
|
|
26
|
+
return isHasPermissionConstraint(ac) && ac.permission === permission;
|
|
27
|
+
}
|
|
28
|
+
AdmissionConstraint.hasPermission = hasPermission;
|
|
29
|
+
})(AdmissionConstraint = exports.AdmissionConstraint || (exports.AdmissionConstraint = {}));
|
|
30
|
+
exports.WorkspaceClusterDB = Symbol("WorkspaceClusterDB");
|
|
31
|
+
//# sourceMappingURL=workspace-cluster.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workspace-cluster.js","sourceRoot":"","sources":["../src/workspace-cluster.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,yBAAyB;AACzB,+BAAkD;AA6ClD,IAAiB,SAAS,CAGzB;AAHD,WAAiB,SAAS;IACT,4BAAkB,GAAG,CAAC,IAAY,EAAU,EAAE,CACvD,EAAE,CAAC,YAAY,CAAC,IAAA,+BAAyB,EAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;AAC5E,CAAC,EAHgB,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGzB;AAYD,IAAiB,mBAAmB,CAUnC;AAVD,WAAiB,mBAAmB;IAChC,SAAgB,EAAE,CAAC,CAAM;QACrB,OAAO,CAAC,CAAC,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC;IAC9B,CAAC;IAFe,sBAAE,KAEjB,CAAA;IACD,SAAgB,yBAAyB,CAAC,CAAM;QAC5C,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC;IAChD,CAAC;IAFe,6CAAyB,4BAExC,CAAA;IACD,SAAgB,aAAa,CAAC,EAAuB,EAAE,UAA0B;QAC7E,OAAO,yBAAyB,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,UAAU,KAAK,UAAU,CAAC;IACzE,CAAC;IAFe,iCAAa,gBAE5B,CAAA;AACL,CAAC,EAVgB,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAUnC;AAEY,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC"}
|
|
@@ -10,6 +10,7 @@ export interface WorkspaceInstance {
|
|
|
10
10
|
creationTime: string;
|
|
11
11
|
deployedTime?: string;
|
|
12
12
|
startedTime?: string;
|
|
13
|
+
stoppingTime?: string;
|
|
13
14
|
stoppedTime?: string;
|
|
14
15
|
ideUrl: string;
|
|
15
16
|
region: string;
|
|
@@ -17,8 +18,23 @@ export interface WorkspaceInstance {
|
|
|
17
18
|
status: WorkspaceInstanceStatus;
|
|
18
19
|
configuration?: WorkspaceInstanceConfiguration;
|
|
19
20
|
readonly deleted?: boolean;
|
|
21
|
+
/**
|
|
22
|
+
* Contains information about the image build, if there was any
|
|
23
|
+
*/
|
|
24
|
+
imageBuildInfo?: ImageBuildInfo;
|
|
25
|
+
/**
|
|
26
|
+
* workspace class, also known as workspace size, determines the type of
|
|
27
|
+
* resources that are provided to the workspace.
|
|
28
|
+
*/
|
|
29
|
+
workspaceClass?: string;
|
|
30
|
+
/**
|
|
31
|
+
* Identifies the team or user to which this instance's runtime should be attributed to
|
|
32
|
+
* (e.g. for usage analytics or billing purposes).
|
|
33
|
+
*/
|
|
34
|
+
usageAttributionId?: string;
|
|
20
35
|
}
|
|
21
36
|
export interface WorkspaceInstanceStatus {
|
|
37
|
+
version?: number;
|
|
22
38
|
phase: WorkspaceInstancePhase;
|
|
23
39
|
conditions: WorkspaceInstanceConditions;
|
|
24
40
|
message?: string;
|
|
@@ -26,23 +42,25 @@ export interface WorkspaceInstanceStatus {
|
|
|
26
42
|
repo?: WorkspaceInstanceRepoStatus;
|
|
27
43
|
timeout?: string;
|
|
28
44
|
nodeName?: string;
|
|
45
|
+
podName?: string;
|
|
46
|
+
nodeIp?: string;
|
|
29
47
|
ownerToken?: string;
|
|
30
48
|
}
|
|
31
|
-
export declare type WorkspaceInstancePhase = "unknown" | "preparing" | "pending" | "creating" | "initializing" | "running" | "interrupted" | "stopping" | "stopped";
|
|
49
|
+
export declare type WorkspaceInstancePhase = "unknown" | "preparing" | "building" | "pending" | "creating" | "initializing" | "running" | "interrupted" | "stopping" | "stopped";
|
|
32
50
|
export interface WorkspaceInstanceConditions {
|
|
33
51
|
failed?: string;
|
|
34
52
|
timeout?: string;
|
|
35
53
|
pullingImages?: boolean;
|
|
36
|
-
serviceExists?: boolean;
|
|
37
54
|
deployed?: boolean;
|
|
38
55
|
neededImageBuild?: boolean;
|
|
39
56
|
firstUserActivity?: string;
|
|
57
|
+
headlessTaskFailed?: string;
|
|
58
|
+
stoppedByRequest?: boolean;
|
|
40
59
|
}
|
|
41
|
-
export declare type AdmissionLevel =
|
|
42
|
-
export declare type PortVisibility =
|
|
60
|
+
export declare type AdmissionLevel = "owner_only" | "everyone";
|
|
61
|
+
export declare type PortVisibility = "public" | "private";
|
|
43
62
|
export interface WorkspaceInstancePort {
|
|
44
63
|
port: number;
|
|
45
|
-
targetPort?: number;
|
|
46
64
|
visibility?: PortVisibility;
|
|
47
65
|
url?: string;
|
|
48
66
|
}
|
|
@@ -56,9 +74,32 @@ export interface WorkspaceInstanceRepoStatus {
|
|
|
56
74
|
unpushedCommits?: string[];
|
|
57
75
|
totalUnpushedCommits?: number;
|
|
58
76
|
}
|
|
77
|
+
export interface ConfigurationIdeConfig {
|
|
78
|
+
useLatest?: boolean;
|
|
79
|
+
desktopIdeAlias?: string;
|
|
80
|
+
}
|
|
59
81
|
export interface WorkspaceInstanceConfiguration {
|
|
60
82
|
theiaVersion?: string;
|
|
61
83
|
featureFlags?: NamedWorkspaceFeatureFlag[];
|
|
62
84
|
ideImage: string;
|
|
85
|
+
desktopIdeImage?: string;
|
|
86
|
+
desktopIdePluginImage?: string;
|
|
87
|
+
supervisorImage?: string;
|
|
88
|
+
ideConfig?: ConfigurationIdeConfig;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Holds information about the image build (if there was one) for this WorkspaceInstance
|
|
92
|
+
*/
|
|
93
|
+
export interface ImageBuildInfo {
|
|
94
|
+
log?: ImageBuildLogInfo;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Holds information about how to access logs for this an image build
|
|
98
|
+
*/
|
|
99
|
+
export interface ImageBuildLogInfo {
|
|
100
|
+
url: string;
|
|
101
|
+
headers: {
|
|
102
|
+
[key: string]: string;
|
|
103
|
+
};
|
|
63
104
|
}
|
|
64
105
|
//# sourceMappingURL=workspace-instance.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-instance.d.ts","sourceRoot":"","sources":["../src/workspace-instance.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,iBAAiB;IAE9B,EAAE,EAAE,MAAM,CAAC;IAGX,WAAW,EAAE,MAAM,CAAC;IAGpB,YAAY,EAAE,MAAM,CAAC;IAGrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,WAAW,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-instance.d.ts","sourceRoot":"","sources":["../src/workspace-instance.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAGvD,MAAM,WAAW,iBAAiB;IAE9B,EAAE,EAAE,MAAM,CAAC;IAGX,WAAW,EAAE,MAAM,CAAC;IAGpB,YAAY,EAAE,MAAM,CAAC;IAGrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,WAAW,CAAC,EAAE,MAAM,CAAC;IAGrB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,MAAM,EAAE,MAAM,CAAC;IAIf,MAAM,EAAE,MAAM,CAAC;IAIf,cAAc,EAAE,MAAM,CAAC;IAGvB,MAAM,EAAE,uBAAuB,CAAC;IAKhC,aAAa,CAAC,EAAE,8BAA8B,CAAC;IAG/C,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAE3B;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAGD,MAAM,WAAW,uBAAuB;IAIpC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,KAAK,EAAE,sBAAsB,CAAC;IAG9B,UAAU,EAAE,2BAA2B,CAAC;IAGxC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,YAAY,CAAC,EAAE,qBAAqB,EAAE,CAAC;IAGvC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IAGnC,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAGD,oBAAY,sBAAsB,GAG5B,SAAS,GAIT,WAAW,GAIX,UAAU,GAKV,SAAS,GAKT,UAAU,GAIV,cAAc,GAId,SAAS,GAIT,aAAa,GAGb,UAAU,GAGV,SAAS,CAAC;AAEhB,MAAM,WAAW,2BAA2B;IAGxC,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,aAAa,CAAC,EAAE,OAAO,CAAC;IAGxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IAGnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAG3B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAM3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAG5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;CAC9B;AAGD,oBAAY,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;AAGvD,oBAAY,cAAc,GAAG,QAAQ,GAAG,SAAS,CAAC;AAGlD,MAAM,WAAW,qBAAqB;IAElC,IAAI,EAAE,MAAM,CAAC;IAGb,UAAU,CAAC,EAAE,cAAc,CAAC;IAG5B,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,MAAM,WAAW,2BAA2B;IAExC,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAG3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAG1B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAG7B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAG3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAGD,MAAM,WAAW,sBAAsB;IACnC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC5B;AAGD,MAAM,WAAW,8BAA8B;IAG3C,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,YAAY,CAAC,EAAE,yBAAyB,EAAE,CAAC;IAG3C,QAAQ,EAAE,MAAM,CAAC;IAGjB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACtC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,GAAG,CAAC,EAAE,iBAAiB,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACtC"}
|
package/lib/wsready.d.ts
CHANGED
package/lib/wsready.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wsready.d.ts","sourceRoot":"","sources":["../src/wsready.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,oBAAY,mBAAmB;IAC3B,uBAAuB,gBAAgB;IACvC,yBAAyB,kBAAkB;IAC3C,sBAAsB,eAAe;CACxC;AACD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,mBAAmB,
|
|
1
|
+
{"version":3,"file":"wsready.d.ts","sourceRoot":"","sources":["../src/wsready.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,oBAAY,mBAAmB;IAC3B,uBAAuB,gBAAgB;IACvC,yBAAyB,kBAAkB;IAC3C,sBAAsB,eAAe;CACxC;AACD,MAAM,WAAW,qBAAqB;IAClC,MAAM,EAAE,mBAAmB,CAAC;CAC/B"}
|
package/lib/wsready.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Copyright (c)
|
|
3
|
+
* Copyright (c) 2022 Gitpod GmbH. All rights reserved.
|
|
4
4
|
* Licensed under the GNU Affero General Public License (AGPL).
|
|
5
5
|
* See License-AGPL.txt in the project root for license information.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
8
|
exports.WorkspaceInitSource = void 0;
|
|
9
|
-
// generated using github.com/32leaves/bel on
|
|
9
|
+
// generated using github.com/32leaves/bel on 2022-10-10 21:41:56.018177383 +0000 UTC m=+0.010324839
|
|
10
10
|
// DO NOT MODIFY
|
|
11
11
|
var WorkspaceInitSource;
|
|
12
12
|
(function (WorkspaceInitSource) {
|
package/package.json
CHANGED
|
@@ -1,40 +1,62 @@
|
|
|
1
1
|
{
|
|
2
2
|
"dependencies": {
|
|
3
|
+
"@types/react": "17.0.32",
|
|
4
|
+
"abort-controller-x": "^0.4.0",
|
|
3
5
|
"ajv": "^6.5.4",
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
+
"analytics-node": "^6.0.0",
|
|
7
|
+
"configcat-node": "^8.0.0",
|
|
8
|
+
"cookie": "^0.4.2",
|
|
9
|
+
"express": "^4.17.3",
|
|
10
|
+
"google-protobuf": "^3.19.1",
|
|
11
|
+
"inversify": "^5.1.1",
|
|
12
|
+
"jaeger-client": "^3.18.1",
|
|
6
13
|
"js-yaml": "^3.10.0",
|
|
7
|
-
"
|
|
8
|
-
"
|
|
14
|
+
"nice-grpc-common": "^2.0.0",
|
|
15
|
+
"opentracing": "^0.14.5",
|
|
16
|
+
"prom-client": "^13.2.0",
|
|
9
17
|
"random-number-csprng": "^1.0.2",
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
18
|
+
"react": "17.0.2",
|
|
19
|
+
"react-dom": "17.0.2",
|
|
20
|
+
"reconnecting-websocket": "^4.4.0",
|
|
21
|
+
"reflect-metadata": "^0.1.13",
|
|
22
|
+
"uuid": "^8.3.2",
|
|
23
|
+
"vscode-jsonrpc": "^5.0.1",
|
|
24
|
+
"vscode-languageserver-protocol": "3.17.0",
|
|
25
|
+
"vscode-languageserver-types": "3.17.0",
|
|
26
|
+
"vscode-uri": "^3.0.3",
|
|
14
27
|
"vscode-ws-jsonrpc": "^0.2.0",
|
|
15
|
-
"ws": "^
|
|
28
|
+
"ws": "^7.4.6"
|
|
16
29
|
},
|
|
17
30
|
"devDependencies": {
|
|
18
|
-
"@
|
|
31
|
+
"@grpc/grpc-js": "^1.3.7",
|
|
32
|
+
"@types/analytics-node": "^3.1.9",
|
|
33
|
+
"@types/chai-subset": "^1.3.3",
|
|
34
|
+
"@types/cookie": "^0.4.1",
|
|
35
|
+
"@types/express": "^4.17.13",
|
|
36
|
+
"@types/google-protobuf": "^3.15.5",
|
|
37
|
+
"@types/jaeger-client": "^3.18.3",
|
|
19
38
|
"@types/js-yaml": "^3.10.1",
|
|
39
|
+
"@types/mocha": "^5.2.7",
|
|
40
|
+
"@types/node": "^16.11.6",
|
|
20
41
|
"@types/random-number-csprng": "^1.0.0",
|
|
21
|
-
"@types/uuid": "^3.
|
|
42
|
+
"@types/uuid": "^8.3.1",
|
|
22
43
|
"@types/ws": "^5.1.2",
|
|
23
|
-
"chai": "^4.
|
|
44
|
+
"chai": "^4.3.4",
|
|
24
45
|
"chai-subset": "^1.6.0",
|
|
25
46
|
"mocha": "^5.0.0",
|
|
26
47
|
"mocha-typescript": "^1.1.11",
|
|
27
48
|
"rimraf": "^2.6.2",
|
|
28
49
|
"ts-node": "^9.0.0",
|
|
29
|
-
"typescript": "
|
|
30
|
-
"typescript-json-schema": "^0.
|
|
50
|
+
"typescript": "~4.4.2",
|
|
51
|
+
"typescript-json-schema": "^0.50.1",
|
|
31
52
|
"typescript-parser": "^2.6.1"
|
|
32
53
|
},
|
|
33
54
|
"files": [
|
|
34
55
|
"lib",
|
|
35
56
|
"data/*.json",
|
|
36
57
|
"src",
|
|
37
|
-
"pkg-yarn.lock"
|
|
58
|
+
"pkg-yarn.lock",
|
|
59
|
+
"provenance-bundle.jsonl"
|
|
38
60
|
],
|
|
39
61
|
"license": "UNLICENSED",
|
|
40
62
|
"main": "./lib/index.js",
|
|
@@ -43,9 +65,9 @@
|
|
|
43
65
|
"build": "tsc",
|
|
44
66
|
"clean": "rimraf lib",
|
|
45
67
|
"prepare": "yarn run clean && yarn run build",
|
|
46
|
-
"test": "mocha --opts mocha.opts '
|
|
68
|
+
"test": "mocha --opts mocha.opts './**/*.spec.ts' --exclude './node_modules/**'",
|
|
47
69
|
"watch": "leeway exec --package .:lib --transitive-dependencies --filter-type yarn --components --parallel -- tsc -w --preserveWatchOutput"
|
|
48
70
|
},
|
|
49
71
|
"types": "./lib/index.d.ts",
|
|
50
|
-
"version": "0.1.5-
|
|
51
|
-
}
|
|
72
|
+
"version": "0.1.5-protected-secrets.0"
|
|
73
|
+
}
|
package/pkg-yarn.lock
CHANGED
|
@@ -4,19 +4,32 @@
|
|
|
4
4
|
|
|
5
5
|
"@gitpod/gitpod-protocol@0.1.5":
|
|
6
6
|
version "0.1.5"
|
|
7
|
-
resolved "file:///tmp/cache/
|
|
7
|
+
resolved "file:///tmp/cache/0f932e2fa7c47eed64802f0bc55658128daf8d47.tar.gz"
|
|
8
8
|
dependencies:
|
|
9
|
+
"@types/react" "17.0.32"
|
|
10
|
+
abort-controller-x "^0.4.0"
|
|
9
11
|
ajv "^6.5.4"
|
|
10
|
-
|
|
11
|
-
|
|
12
|
+
analytics-node "^6.0.0"
|
|
13
|
+
configcat-node "^8.0.0"
|
|
14
|
+
cookie "^0.4.2"
|
|
15
|
+
express "^4.17.3"
|
|
16
|
+
google-protobuf "^3.19.1"
|
|
17
|
+
inversify "^5.1.1"
|
|
18
|
+
jaeger-client "^3.18.1"
|
|
12
19
|
js-yaml "^3.10.0"
|
|
13
|
-
|
|
14
|
-
|
|
20
|
+
nice-grpc-common "^2.0.0"
|
|
21
|
+
opentracing "^0.14.5"
|
|
22
|
+
prom-client "^13.2.0"
|
|
15
23
|
random-number-csprng "^1.0.2"
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
24
|
+
react "17.0.2"
|
|
25
|
+
react-dom "17.0.2"
|
|
26
|
+
reconnecting-websocket "^4.4.0"
|
|
27
|
+
reflect-metadata "^0.1.13"
|
|
28
|
+
uuid "^8.3.2"
|
|
29
|
+
vscode-jsonrpc "^5.0.1"
|
|
30
|
+
vscode-languageserver-protocol "3.17.0"
|
|
31
|
+
vscode-languageserver-types "3.17.0"
|
|
32
|
+
vscode-uri "^3.0.3"
|
|
20
33
|
vscode-ws-jsonrpc "^0.2.0"
|
|
21
|
-
ws "^
|
|
34
|
+
ws "^7.4.6"
|
|
22
35
|
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
{"payloadType":"application/vnd.in-toto+json","payload":"ewogICJfdHlwZSI6ICJodHRwczovL2luLXRvdG8uaW8vU3RhdGVtZW50L3YwLjEiLAogICJwcmVkaWNhdGVUeXBlIjogImh0dHBzOi8vc2xzYS5kZXYvcHJvdmVuYW5jZS92MC4xIiwKICAic3ViamVjdCI6IFsKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2RlZmVycmVkLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI1MjJjNGYxNzM2Nzk1YzAwMzYwNGE1ZWJmZTQyNDVhZjQ1YTI3NzdiZDViYjk2OTUxZGQzMDk2MGQ4YTM3NDVkIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2dpdHBvZC1zZXJ2aWNlLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjQ3YzU3ZGM3MGMzODQ5MDQ4Njg2NDlkMzc1MGIzYTgxM2RhMmIwZmE3YWU5NTkzODA5Y2VjZjI2MmJmNjNjZjAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlZDBmNDQ1NjYxMzhhZGY2MTcwMWEwYTNjNDg4OGE3Y2YwOWZmN2E4YzdhZDg0M2VhYjk1N2IyYzRhZGRkODM3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvc2tpcC1pZi5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjgwNDUwZWM0YjBlMTFmMTBhNjg3NzhkMTdkZTE5Mzg0OWMwMWZmNDkzZGE4YTUzYjQwNTAzNTU2NjBiYjE2ODgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZW5jcnlwdGlvbi9lbmNyeXB0aW9uLWVuZ2luZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjBjNmFkMjU1YzdjY2Q5YzQ1ZmU0MWIzNTc5MzdiZmEzNjQ2NTAwYjYwYTE1NmJkMmViZTZjNDI1NmMwMzhhNzEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kYXRlLXRpbWUuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjFkZjY2MmM4MzFjMjVkZWVkMzYyY2VlODgzZDVhZDY1MzU2ZjkxNTRlNTMzN2UzNTcyMjAxZjc1NjViYmZlZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2FuYWx5dGljcy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMmE5MWFiNTI0ODA1MWQ1ZGM0MTJkNWNmZDY5NWU3NDZiNmM3NDQwNmIyZWQ0MWE4ZmQ4NTA2NTQyNzM4OWZhZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dhcmJhZ2UtY29sbGVjdGVkLWNhY2hlLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOTk1OTBhYzM1YWQ0MTM5YjM0Yjk0ZjJlNTRhZjczODBjM2E4M2I0MTA5YTEzOTFkYzk5YjA4ZmZiY2Q1NTEwNiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pZGUtcHJvdG9jb2wuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOTc3N2ZiZWY4Nzc0MjA2ZTc1MzM2ZjFmOGY2ZmY5ZmRmMjkxYjUzMTEwNTVlYjUyNmFhZmFjMmI1Y2VlMjNhZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93b3Jrc3BhY2UtaW5zdGFuY2UuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNTBhNjQzZTBiMjM2N2E0OWNhNTU0MTBiOGQ0MzE5YWUyMWU3ZmRmZmZkNDg5OTQ5YmZhMTI5ZTY4NjBlNjZlZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9leHBlcmltZW50cy90eXBlcy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlNjBiMWJkYzRhYWQ5NzBiYTI0NjllNDljZTQ1MmIxODg4ZDYwOTRhOTUxMjEwMmJhNmY3NWUwNjMwZGQ1NGVkIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcmVwZWF0LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxNjM5NjUxZmVmMDhhNjFjNjdkZDBiOTBkNDdhNWQxNDAxNDljMzRhMjU2M2VhNWRiMGU1ZWNmNTcwMjViYTE0IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2l0cG9kLWhvc3QtdXJsLnNwZWMuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNzU1MTQ5ZmU4MzEzYjA2YjQxMjFmMmNmZDIwMDkyZGYxOTAxZDY1N2FiOTBlYzgyZDY5OTA2ZjQ5MjA1OWJiOSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2NhbmNlbGFibGUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjA1M2IwNzJjZGJkOTIyMzk1NGRkNWZkYTkyZDkyYzk5ZjgwOTlkOGVhZTUwY2ZhNmM0YmYyZGFhZGQwNjFhMGEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvc25hcHNob3QtdXJsLnNwZWMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjQ4NjhlYTI5YmY5YzZhYzlhZjQxOWJhNGU1ZTE4OGY5OGVlN2EyNzYxNDIzMzg1NzMyYzA2YWMxMmEwMWE3YzAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvb3NzLWFsbG93bGlzdC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2NzdlOTNkM2NmZTQwMzgyNGJlOTFiNTRhMTAyMTBkZjNkNjE5NWFkYzQyZmUwZDBjZWQ2OWZlYTg1NjE5MWFkIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvamFlZ2VyLWNsaWVudC10eXBlcy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJkZDcxYjJjMmI4Mjg0ZjIwZTg4YzcyMjcwOTc5YjY4ZTVmODk5OGRmODM2ZTg3YzczYzNkYzgyN2FlNmU3MDgwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3BheW1lbnQtcHJvdG9jb2wuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjY4YjQ2YjdlODlmYmRjZWNlYjdiY2YzOWQwNGMwMWIyNGNlM2YwMTEzYTAxNmVhYThmYzIwMDU1NzQwNmJlNWQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWNsdXN0ZXIuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNmQ0ZTkzZDEwYTRkZjRmOWM0YTU2OGJkY2I1NmUxYmMzMTExZjIyZjU3Y2E4MzlmZjgwZjMxMzdjN2QxNmZlOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3NlbWFwaG9yZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImU1MGNlZTcwYzMxY2FlNDM2NzIyYjE0OTdhOTUxZTAzYjJkMWY0ZjNmMjc5ZGZlY2YwYzhmYzBlOTBlYjgzODQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9wYXJzZS13b3Jrc3BhY2UtaWQuc3BlYy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxMzg2N2RjZTZkZDRmOTdhMjlmNGY4ZmZjNzQ4NWU3ZmM5ZGEzYTg4N2JiODc5ZjZhNGM4YTU4N2M1MDU3ZmE3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24vZW5jcnlwdGlvbi1lbmdpbmUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYzIwYjdlNjFkNTdmMWYyMWNmZTFmMTFhMmIyNWU1ZTM4MGEwZDYwZDY5YWJiYzYyOTllM2FlYThiYjY3YmFkNiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9naXRwb2Qtc2VydmljZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjJiZjA5YjZmN2Q3ZDA3N2U2MWI3NWQ5MDM5NDA1NTY4M2U3NzQ2MzdjYjkxNzQ3ZTU2YjZmYzFiMGZkOWQyYTIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWNsYXNzLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjAxMDU4N2FhNDNiZTcyYzlmNmVjYzhkMDczZjU0MTQ2NTY3NWU3MzU2NjFkNGYxNGJjODE0ZDU1NTI1M2U0YTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYWNjb3VudGluZy1wcm90b2NvbC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwNzEzODI5ODYyYmRlN2EwMGQ4ZmJlZTQxN2Y4NzI0YTg3MDJjZTA1OTczYjI0ZDFkY2I3ODJlZjk1ZDhkZTI3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2xpY2Vuc2UtcHJvdG9jb2wuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNTM0YzUyZmZjYzgxYjg0OTc1NzUxMzNiNmM1NWFkMzhhZmU1Y2YwMGM0ZTFkOWU5MTEwNzM3M2RjNDlkODk2MCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RpbWV1dGlsLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNDg4MDJjNmU3ODEwNmU4MjRmZGVlNzgwMThjZjVmZjgyN2MxM2M0YWNhNGQ4ODk1ZTU1YmI5MTY1NDlhNjFkYSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvZXJyb3IuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlMmUxN2E0NWIyOGY4Y2E1MDNmYjQ5ZTBiYmI3NDQwNjE0N2Q5MTYwZjQ5MGNhNDU0NGZmNDAzMDc4MjcyOWZhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FkbWluLXByb3RvY29sLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjA5YWZkZTA5MDRkZWUzMTE2NGMwNmQwNGI2N2VjN2NmNDk4NmNkZDAzZGJmNmQ0ZGI2YTFhNmJhMTY4ZGY3NzAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvY29uZmlnY2F0LmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjI0NDc4YmEwNTA3NjIzOWY0MDVlMGYzMjc0YjgwMjc2ODQ0YmZjYTAxYTU3ZjMzNjk3MzI0YmIxN2ViMmIxNzgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9naXRwb2QtaG9zdC11cmwuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyMzVjZjZmZjZjNGFhMTU0ZDNjZGNhOGI0MTdmNjUxMTdhZmU1MTExOTRhZTU4M2QzOWNmZDMxNDBhNDhkOWJhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2F0dHJpYnV0aW9uLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2NDQyMjNiZmQ1NWI3YTVjZGQzZTE0NjgyOTgzNzYzY2Q3MWFiYjgyNjJmNGQ1NzlhMjczZjcwNDNlNDU1NTYyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3VzYWdlLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImE4ODNiNmQyOGQ3NDg4YWZmMDQzZDIwMWM2OWNhOWQ0OTRlYmVjNzkwMjM5ZTZlZGNkZWMzODEzNzJiZGUyMWYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC90cmFjaW5nLnNwZWMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmM0NDBlNDkzNmQxY2MzN2Y4NWNhNzgzYTI0NmQ3N2I2ODljNTQwNTgyZWFiOTFkN2U0MTZkMWI0N2U5OGYxYSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wcm90b2NvbC5zcGVjLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZWRiMDhlMTExOTUwOTNjMzFkYWVmZTllNmFhNDE1MWRmOTdmNjVlNjk5MmQ3NmFlZWU5ZWY1OGRmMTlhMzczOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pbnN0YWxsYXRpb24tYWRtaW4tcHJvdG9jb2wuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxOGQyYmQ2NWQ2Nzk4MDEwMTdhNGIxYjkxZDIwNTA2MjExOWJiMzA4MWU1YWNkNjgzNWMwYTE2MDcwZGY4YTUwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3RlYW0tc3Vic2NyaXB0aW9uLXByb3RvY29sLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImNkOTg0Zjk1MTJmYWRlOGFmYTJhMjc2MmMxN2JlNzc0MjZiYTg2MzhhNDhlNTEwMDE4YmQ2NWVhMmMzNWJiNjciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2hhbmRsZXIuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNzI4N2M0ZTBhNDAxN2U5MDhjYjY2MDg4ZWFlNDNiZTJlZGVlM2JlMWIwMTBhZGIwMjM3NzM4NDMxMTk1MmJhZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wcm90b2NvbC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2YTAzZmU4Mjc4NzIwNjNlOTgyMGE4Yjg2ZDc5ODQ3ZDc1NjQ3OTI4ZWIzZDRkMTgzY2MzMjcyMzg1YzJjZTdiIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9icm93c2VyL2Nvbm5lY3Rpb24uZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhNzUwZDZlMGQ5ZmZlYmY0OWU4MDIwZDAwM2NjMzViM2RhNDkxNWU3NjkxZThmNTUzZGEwNmRhNjJmNTVjZTNjIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3R5cGluZ3MvZ2xvYmFscy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0YzcyZTM3MjNkYmQ5ZGY1MmNmZmU2OGNjYjhlOTdkMzY5ZWY3ZGIxYTIzYjVlNWUxNmNkOWM1YjcwNDMzOGY4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvYXN5bmMtaXRlcmF0b3IuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3YTA1NjRlMDUzMzY1YmYxZDJjZWIxYzY3YjNkY2E1NDU2MzYxMTliM2NlNTVjZjI3OGI3NWQ5ZTBmZTFkYjA3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGVlcC1wYXJ0aWFsLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJkMWUwMTJhNzFiZjJmZGYwYjhlZDViYzA0YTQ0ZGE5Mjk2ZTg4YTM3YTAzOWFiNDc5Y2Q4ZWI2ZDMzMjk4ZjY3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9ub2RlL2Nvbm5lY3Rpb24uanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZmZiZDc4ZDNmMWViZmE1NmZjODk4ZGI1YTcyMzhlMjIzOGIxNjc2ZTMxY2ZkNDM4YThmZTVmMDViMDlmMjZmYyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tZW5naW5lLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJmYjcwZGI4NThkZTU3NDYzMGZiNTU4MDFlMzQwMzIxOTUxM2EzMDk0YTNlZjBjZDkzMDg0OTM4MzFjZTM0ZDZmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9jbGllbnQtY2FsbC1tZXRyaWNzLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwNTBmYWUyMWZjNjg3MTBhNTU4NDdhNTNkYjkyMjA3ODZjMWQ4ZGRmYzA0ZmUyNzQzZDNmYjM2MGUxOTNmMGI5IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2lkZS1mcm9udGVuZC1zZXJ2aWNlLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYjgyZjI2OGExZjZiZGM2MjhiYzYyOTE2OTNlNDE2ZTY2ODA1ZGIzNjc0M2YwOGU2MWQ0MjYwYmRjMDVjNjMwOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2V2ZW50LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhNTg1ZDIwYTQ3YTJiZjA5OGI0ZGNhMjVmNDBmNmVlODk1ZTEyZGU2MzNjYzI0ZjgxYTI5OWI1MmVmMTViZmMxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24va2V5LXByb3ZpZGVyLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjI4NjYxYjY1NTUyZjdiYzJkZWJiZTU1MzBjMTg4MTMxOWRmMzk4YWQ5MjBjZjI4ZGRhZGUyYzA1NDIyYzA2YzkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9uaWNlLWdycGMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlNTE4ODMyMTM4OTczMzhlYWZhYTA1NzQxZGFjNjk0YjdiYWJjOGRlMDg1OTE5Yzc0NTdkMmIyZmVlOWM4NmM0IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FjY291bnRpbmctcHJvdG9jb2wuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5MDYxNjlmODA4MDIxYTYzMmEwYjMxMTAzM2I5Y2JlMDE5MjI5NWY0Njg0OGNkNTlkZmM3MWIwYWVmZWU3OTkxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2NvbnRleHQtdXJsLnNwZWMuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWNjOTA5YTUyYTU5MzIwNmMwM2Q2YWMxNWZkOTY4MmQwNTc4MTRjNzRmM2I5ZmE5ZTViMWE4NjBlNWEzNWFiNCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2NvbnRhaW5lci1tb2R1bGUuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzOGE2OTdiNGRiZGI1ZjFhYTg1ODk2YzE1N2QyNGNlMGQ1ZDExNWM3NGY0YWQ4YWY3MTI4ZDQzYjBkNTZhNTc4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2l0cG9kLWNvb2tpZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjFhMDdkODFlZjEyNGI5MDExNjIzMDMwOWEwMGRmM2M3YWRmZjM0ZjQ1ZGY1MGE3MzI1MTg4NzdhZDAwMDQwNWQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYmxvY2tlZC1yZXBvc2l0b3JpZXMtcHJvdG9jb2wuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImM5ZDc5NDFmMDlmMzgxOWQwZGM2YWVhNzMzZDU1MzJkMTY1Njc0ZTc5YzQwOTk5YWYwNWRiZDY5NjliMjFjZWMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaWRlLXByb3RvY29sLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImFhYzY2MDIzZTgwNzhmMzE1ZGE4ODEwMTc0MDY1MzIxNDcxMGE5OWQzNzY0YTFiZDg3YzIwODVkODhhYWUxOWQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvcHJvdG9jb2wuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI4ZTVkOTM4ODRhYjRlMTBjYTU2ZjEyNTQ3ZTNkNzhiNGIzNGFjN2QzY2QyM2VjMjkyOGVkNmU0ZDMzYjBkZTE4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL29zcy1hbGxvd2xpc3QuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiZDJjNzUxYWU3YTE4MWVhZjNmZGUzOWQ4M2I1ZDZlZjFhOTE1OWIyMDA0ZDA1MzM5ZDM3ZTU5MDdiMzYxNjFlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcXVldWUuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZDg0Y2FmNzllZmM3OTkyNGQ0ZGI1ZmRmZDYwZmM5OWNhMWZjNzBmMjNlZmIxODY2NTMxYjFiYmQ0YWMxNzlmMSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9iaWxsaW5nLW1vZGUuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhZDQ4ZDkxYmRhMGNlZjZhYTM5YTFmNDc2MWVkMDM4OGJmOWNhZTFmZDE5MjY3M2ExNGE1NWMxOTZiOTAwYjIxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9icm93c2VyL3dpbmRvdy1jb25uZWN0aW9uLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjlhYmYzYjU3YmM4MzQ2MjcyZTE0ZTQyYTIyYWZmZTIwOWRjNjNjYmU5NWM5MjAyN2E2NGM2MjRkYTAwNWY3NjQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9hc3luYy1pdGVyYXRvci5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMTc2NjUzYzQwYjAwMWZkZTU4YTU5ZDJiMjkyYTRkY2FkNWQxMWRkYzQwZjMyN2RjN2UzMGVhZGZjYjhjODhlMyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9naXRwb2QtZmlsZS1wYXJzZXIuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjRiZGM2YTc5OGE1ZmNlM2U3NDAxYWJhYTNlNjBlODA2N2U1NzgxZTk2NjdmN2VhYjg2YzQ2MGNjMTQwM2U0YmQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kYXRlLXRpbWUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjBiMmQzYmZkZTk5NDU4Mjc5MmNiZGQ3M2QyNGU5M2RhOWEzYjczYTExZWY4ZjUzNTY3NWQ0Mzk2MGFhNjBmYmMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2hhbmRsZXIuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjE0MzczMGQxNzcwY2I2NGMzMzYzMTQzZmI4ODY3ODMyZWU4ODdhNDAxYjhmYjUwMzAzNDYyYzQ5MTZjYmU5MTIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL25vZGUvY29ubmVjdGlvbi5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImNkNDE4OTlhYzI5ZTdmYjdlN2NhNzExOWIzZDJiN2UwZDE1MzUxMDY2YzE1YWMzOWQwYmM2OTZmOWY4ZWQ2ZDgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvY29uZmlnY2F0LXNlcnZlci5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3MDMwYjU0YTY1YWE3OTgyY2I0ZTZmNmRlOTczYzRiZGU0MmZlOTAxNWY0MWYyOGNhMGQzZGQ1M2Q1OGVjYTQyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2l0cG9kLWhvc3QtdXJsLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImRmODIxMDdkODFmZjI2NTY4NTViZThhNzRhNDRkMDQ2ZWEyNWViMmI3YjBmZWViNmMzZjcyM2Q2NjgxYzY1MTMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kYXRlLXRpbWUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjg3OGJlYjBmN2NlZjJmYTg5MjY2NTVlNWM1OTkwYzA5YTZiOWM4MGMwNDE2NjEwMjRiYjBiMGJmMjJjOGExOSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9zbmFwc2hvdC11cmwuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmE0NGEyNjVjZTYxZDZhOWQ4ODc3MzI3Y2YwMzE0MDExOTZlM2YyYTU3OTlmNTU1NjU3NjYwNmM4MGZkMmQ4YyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvY2xpZW50LWNhbGwtbWV0cmljcy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjRiNzRkZTcyNWMwNzEyODg0NTRiMzZkNzc3YjEyZDdhMGU1YTkyYjA3Nzk2ZWIyN2NiYTk1ZWMyYTY4YWQ2NzIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvY29udGV4dC11cmwuc3BlYy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI1NDkyNmNmM2QwOTg3ZjQzY2I0NzQzZjFiZDEzMTRlYjU5MmQ0OGNlMTM0OGQ2YmYyODIzNTNjNzAxYmJhZWEwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3dlYmhvb2stZXZlbnQuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyNWRiODA2NTRlYzE4ZjIwNTllMjRlNDFiZjM3NzFjMmRmOTk0ZTRlM2EzNDViOTIwZWExZmNhNjFjZjZmOTE4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvc2tpcC1pZi5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYTAzOTFkZGM5NjkxZTk5YmUzNWNlZGQ1MDdjZmI3MzdmZTUxNmIyZTBhZTA5NzRhZGI3MzIzNzQ5ZWZlOGQ0ZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90ZWFtcy1wcm9qZWN0cy1wcm90b2NvbC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzNmYxZTZlZTUxMmM5ZTJkYjgyOTZlNTU4NWZlNjU1NGI3NTg2OTYzY2ZhNDczOTc5ZDQ2ZDYzYmMzN2ZiMDBmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdHJhY2luZy5zcGVjLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWQ0MGE1NGJhZDIzOGE2MjczOGFhMDRmZTQ4NjdjYzBjODEzZDljMWFhYjIwYTFlMjhhYTk4ZWI2YjA1MTEwZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9oZWFkbGVzcy13b3Jrc3BhY2UtbG9nLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0NWI3YTAzODg3YTBjNGRkNGY1NGNjMTQ4NzZjYmRmZDUwOTU4ZGZkNTQwYjE4Y2Y3ZDY4YWFiY2Q3ZWY2NDIyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGVmZXJyZWQuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOTQzZGUxNTUyMDExMTU5MTcyZGJkNTFkNGI5YmQzNjBjZDUzZWVhNjBjZDFhZDA1MTJlMDQwZDFlNGQ1MmY5YiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93c3JlYWR5LmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjRiMTk1Mzk1NWVkMTY3NTlmMDI2MWIwZTgyZGEzZjNmMmI2ZWFhYzA2MmY1NDhhYmM5ZDc5MWEyYTUyZWM0MjkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kZWVwLXBhcnRpYWwuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNTZkOWQ4ZDJhZjg4Y2ExNzIyNjRlZDkwYTk1ZGRmYjM2ZGU3MWZkNzE1MWExNDRiYzY0NjNlMDZlNWY2YzEyNCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pbnN0YWxsYXRpb24tYWRtaW4tcHJvdG9jb2wuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmE4MTI5MzBjMGEyMTQxM2I4ZGVhMjgzODliZmY5NmNjNTFmYWQ3MzQ5ZmVjMzQxODNmODUxNjBiNGI2ZjUyOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90eXBpbmdzL2dsb2JhbHMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZjM1NDUyMGUxMzQ2ZDg2NzRjY2Y4NTEwNjk1NDU3OTllMDRiY2QzMjUzNjk4NGQwNDI0MDRmODIyMjE0MjJmOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2V2ZW50LmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjNhNmJjNDI2NTNiMzAyNzRmOTU0OWQ4NWIwMWQ2ZjlkMTNmNzhhNmQ2MjllZWRkNzg1OTNjYTRjNTNjNzM1YTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2hhbmRsZXIuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2YTc0YTg4MWE5OWI2MjcxOWE5ZGExYzFiM2IyNmVlZTIzZTQ5ZTYyYTdlODdjNjc1NTkwZGEwMzk1NmUwOTNiIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3Byb3RvY29sLnNwZWMuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODU3ZmMxZDE4NjMyNjZlZDE0ZDk3NjdiYzJjNTczZjQ2MTdmMjZiMDU4YTlkNDYyMzI4MGZlNzM1MmUwZTcyMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dpdHBvZC1ob3N0LXVybC5zcGVjLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjRmYTdhMDY4NjljNzg5ZDI3NDZkOTllYmNkY2RhMjg4MWI1NzBlMjk5NTI5NzdlNmI3ZTRiYTdjNTRiNTVlNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL21ha2UtbGluay5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiODY2ZWQ3ZjEwYjY2MmRlYmY3OTM2NjQwMDEyY2YyYTAyNDZmNzlmNTU4MTA4ZjNjYzQ3N2E0ODM0Mzc1OTFjIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGVidWctYXBwLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImVhNDhhM2ZmZTMyY2RjMzVhZDRiYTEzYTdlYWU1MjVmMjIxM2JjM2MxYWNiYjhmYTljNzM3ODAyMzI5NzFlNTciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZW5jcnlwdGlvbi9lbmNyeXB0aW9uLXNlcnZpY2UuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODVlYjM4YzIxZjBhN2I5ZmMzZmJkNzE3ZjdhYWFlOWFmODYwZTdlNjA4MjBlZDA1ZmQ2ODMyNzUyYTI3M2QwZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9ibG9ja2VkLXJlcG9zaXRvcmllcy1wcm90b2NvbC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0YTU1NzczNzg1MzdiZWFlNzFjMGM5YTNjOTc2ZTY0ZGVhNjY2YWU5NjI0MDA2MjM3MGQ2ZTBhZDE4NWRiNDZjIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3dvcmtzcGFjZS1pbnN0YW5jZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjk5YzY5OWEzOTFjNGZiNmJhYjdhZTM4YzcyNmU4MTk1N2ZmMzkzMDA3YTJlYjQ4NTJhYjczMjA2NTBmNTFiYzgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbGljZW5zZS1wcm90b2NvbC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjIyY2M2NjZmY2RjNTY1ODA4NmVjOTE1ZTE4NmQ1ZjZmZDQ4YmRlNTNjN2U5Y2M4MDI3ODUzYTZkZDRjZGQ1MTgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL3Byb3h5LWZhY3RvcnkuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNzk4ZjBkMzBjOTBhOWMwNTYyY2RkOWZkMzk3ZDk3ZjA1ODUxZjYwODhhZjdkZjgwMmNmNzZkYWI3YzhjMmI4ZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbnYuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjcyMmI5MjNlNGM1NTJlNzkxYjczYWVmM2RhYTBjNDNlMDMwZTU5ODM2NTk1ODkzMThkYmY2Yjc2NjQ1OGU4MiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93ZWJob29rLWV2ZW50LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjMWU4OTlkMmM2MTZlZGJiZjhiNzE0ZjBlNzZkNTk5ODJiYmEwM2U4NGJjNzdhYzlmMzJhYThkZTNjNmJkN2Y2IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3dvcmtzcGFjZS1jbHVzdGVyLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI1ZmU0MWQ2YmFkZGVhOTU5MjU3YjM2NDhlNGUxOTg0N2RjZTBiNmU2ZjMzN2E3OWQzYTRhYzI5ZWZkZmZlY2UzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24vZW5jcnlwdGlvbi1lbmdpbmUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjNlOGUyNDY2MjY5Nzk3NGM0ODIzZjYyZWZmMWQxOWMwOTliNGVkZGUzNmIxZTU4ODhlMzcxZWJiZWRjNDA1ZGEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXNhZ2UuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJmOTcyMzA5YjdhOGFmNjJiY2Q3YmUyOWNmODZiZjg4ZGVlYmM4ZjY3NWI2NjIwYTA5MjU5NDg5ZGQ2M2QzY2E0IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2VuZXJhdGUtd29ya3NwYWNlLWlkLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMDllMmE5MDIwMWRhYzdjZDI3NTRkMzFmNGMzNWVlNzE5Y2EwOTc3MDY3MGM1NDdmMzljNDk3ZTM4ZTliMzhlYyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wZXJtaXNzaW9uLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0OTM5NDBlZGVkY2NiZmM0YTM0ZjgzYTM5MGM2ZWEwNGUwNDY5MWM5NTk5YmMzMjBiMTU3YTI3ZGMxOTJlMjZmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2lkZS1mcm9udGVuZC1zZXJ2aWNlLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjNhNDVlMjVhNWQxY2VkMDllZjFiNThlNGE4ZDhhOWUyMjBiZTY0ZjQ1YWViYzMxMjhiNTU0ZGE0YzQzMDg4ZjEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9wYXJzZS13b3Jrc3BhY2UtaWQuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYzkxOGVkMDQyOWI0M2E5YmQ2MTUyNGY2YWM0Y2ZmOTAzN2JlYWE1NjQzYTU1MTI4ZTY5YTAwZTQwODliZmQ3YyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90ZWFtcy1wcm9qZWN0cy1wcm90b2NvbC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImI0MDIyYzA4YjEzNDMyMDFkMmZiOTU5YzUwODQ5NDUxM2FmNzk3ZGZkMmVmMjExM2JmMTc3OWU4OGYwZTcwNjUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZ2l0cG9kLWZpbGUtcGFyc2VyLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjNjhhZTEyMDA1OTgxOWUwZWM2ZmYzYTQ4N2Y4NDgzOGE5NmJmYzcxZTc5MGNlZGZkYzdlMmU5MjM3ZDk1NmNmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3R5cGluZ3MvZ2xvYmFscy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImY0NzFlYWRkNTczMGU2YWIxYWJkN2M1ZGJjNjZkZWExNGMzMDNiYzExMjBiMGIwOWNjYTA2YTQ3NDRhNTQ5MDUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZ2l0cG9kLXNlcnZpY2UuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjUwYjc5YmI3Yjk4OTQ0NjA3MGMzODcwZTc0YTliMTBmNjFiZWZjNWEwOTNmYWIzMWVlMTE1NzEzNzFkZjNhNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvYnJvd3Nlci9jb25uZWN0aW9uLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZmNDgyNjY4MTI2MWRhZjAxMGZkMzE5OGRjMzE0NGI4NmEzZGNhZjM2MTQ4NTU0NWJjZjU1ZWJjOTlhYmU3ODEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9ncnBjLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjAzMzk1NjgyZTk5Mzg4N2U5NTA1OTRkZDVhMWY4Njc3ZmEwZGYwZWIwYzQyYmRmYzc0ZTZiYWUyYjk4MWU3ZDUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYXV0aC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3YjI4ZjEyNzlmZDdlZjAxMDc3ODZiY2QzNzAxOGIwZGYzZmNlY2RkYzNlOTBmMTk2MWM0YzUwZWEwMmQ2YjU3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGVidWctYXBwLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhZDViMWUzNzg1ZmQ0N2I0OWQ1YThmYTA5M2Q3ODg2YmFiNjI4OTdlODg2YjMyZmNlZWQwMjczMTc4ZTJkOGUzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9wcm94eS1mYWN0b3J5LmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNmQxOGFiYTAzNzAxNWM3NzdhOGFkOTY3Y2IxZDFmNzlhMDg5MmE5NGQxNjBkYTY3ZGUzMjcwNGM2ZmUyMTNmYiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93b3Jrc3BhY2UtaW5zdGFuY2UuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImU2NjU0N2VkNmE5OTYzNTBkOTZkZjVkYmYwNzEzMjdlYjNjOTA1MjJiODc1OTY4NzljMTU3ZjcwOWQxNzYxMjEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZW52LmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjlmMjU3MTE5ZjFiNWVlMTYxNGZiN2I1YTBmMGRhMzI5NTE3MTc5Nzc3Nzg0YjQ4Mjk5ZjU5YWIzNzExODZhYmMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2NsaWVudC1jYWxsLW1ldHJpY3MuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2M5MDVjZTYwMDlhNDUyOGMyNDU4ODRjOTQ4N2YxMmYyNTY2Yzg4NTA3NGU0YTEwYzcyMGFjZDE4NjM5MGYzZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tc2VydmljZS5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJkMmVkMDBiODk4MjY5MTU4MmViZTg5OWVhMWE4NmMzOGNmYTljYjNmM2E1OWUxYWFjMjM4OTQ0NDZmOWJmZWM4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2F0dHJpYnV0aW9uLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNTNhMTMzZWJmYjE5YmEzYjY0ZTBiODBhZWY1ODE1NzRjYTEyN2M0YWFkYWJlYWY5YTRmZDNhMTE2ZTg2MTk5NCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvZXJyb3IuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOWNlNjczNjYzYmU5ODJlZTk5Y2Q5ZTg4ZjFiZDNjMWFkZjI5MDAyNTlhYmIxMjg0ZDIzZWVhMmFmZWMyYjk4YSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wcm90b2NvbC5zcGVjLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjc0MzYxM2VkOWNmNWMzMjM4ZGRhMjQxY2NiOTY3OWE4MTg1ZmU5ZmMzZTVlZmY2MzkxNTUxOTgzNmZiYTcyN2UiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9hbmFseXRpY3MuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmQwZGU2Njg4NWEwMDI4NGM5ZDEwMDRkZGRhMGVjOGFkNWYyYzhiZThkMTkwMmRmMmMyMjA2NTUwMDE1MGQ3YSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91c2FnZS5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjY2IzZTg4YTg1NzQ5OWMxM2FlODdhNDU0NTA3MTYxZGY5MzExMzdkMmZjZTNlYzg4NDdiZjI5NjRlNWYxN2UxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24vY29udGFpbmVyLW1vZHVsZS5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzZTM4NzdmYTQyNzhkOGUzMmY0YmJmMDIzY2YyZTkyZTM0OGJlNmZmZDZkOTVlZWYwM2I1MGM5ZGJiNjUzMzkyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FuYWx5dGljcy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwMjAyZWIwYTMyYzAyZTg4YjNjYjllM2MyNzYwNTY0ODQ5OWRjYjgwZDE0YzAxNWQ0MGQ0MDI0NzEwMTdlNGEwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2FyYmFnZS1jb2xsZWN0ZWQtY2FjaGUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNmU4OWU5ZGQ2ZWYzMzAwYzMwYWI1NTE0NjZjY2NhNjAxNmU0MmQ0N2JkYTU1MjQzNzMwM2UwNTFhYjQyNzUwMSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL21ha2UtbGluay5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNDNmZjQ2M2FmZTk3NWQwNWVjMWYzMjM3ZWUzMGVlYTM1MGIyNTU1OWZjYzEzNGMyNGVmYTFlNjNmNWI3YTlkMSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9hdHRyaWJ1dGlvbi5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJmZDdjZGNlN2RiMDIxNjNkNzdiNTE3ZDJmNTQxNjRkYTgxNjFlMWVmNzI1YmQwMjg5NGExMmIwNmM2OGJmMDAzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24va2V5LXByb3ZpZGVyLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2NzI5ZTNhODMzODBjNmQyMjEyMjI0YTJjZTVmMzAxY2YwMDVkOWYxZTEzNGUwYjgzYTQyMjFiZWJiMDkzOGY2IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9jbGllbnQtY2FsbC1tZXRyaWNzLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImRkYmRkY2E0YzQwZjY5YmViMWJjMWNlNDY0ZTdjNDJjOTM1MDJlOTk1NjVhNGE4YmE3Yzg0NGUwZjAyODQwZTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjc5YWU2OTAxYjQxOGRiZGYzNGY1MDg3ZmUwN2IzNzU4YjkxODk1N2MxNmI1NWY0MTlkMjM5NDk4MGMwOGMwMmUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvY29uZmlnY2F0LXNlcnZlci5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2ZTYwMTI2MDZkM2QxNzk5NDQ3Y2MzNmQzMjE5MjQ1OWEyYzFiNjY2MDlhNzRjNGEyZWQzMjQ4NWQxMTZiMWMzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3RlYW1zLXByb2plY3RzLXByb3RvY29sLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwM2M4N2Q3ZmRlMDExYWU5OWMwZWQ5ZGZlMzU1YTc0NmViMDQ2NjAzYmEzYWViMTRkMzJkYzUzNDRlNTU5OTQwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2VuZXJhdGUtd29ya3NwYWNlLWlkLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiZGVhNjdhY2VjYTI3NGViNGE0NWYxNDg2MmZhMzMxNzE0MmE3ZjM2MWVjZTlhMDUyZjRkODhmNTc2ODYzMWM1IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdHJhY2luZy5zcGVjLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhN2ZkMDI5M2Q1MmExYTI5MGZkNzcyYTJiNzdlZDZjN2I4ZTJmZjRiN2NmNTUwNGEzMTQxMDNhMTFlMDBmYzk2IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3Byb3RvY29sLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZjMmZlZDE5MThmNDUzNTA4NTNiOGUxMzMxYzU3ZjQ4ZGE4Y2EwZjZlNzI3MDIzODM2MWVlNWY4NTk3YjIzNGQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXNhZ2UuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjM2NDdkNGVmN2U1NjRlMWI2MDJkYjBjZGNhNGIyY2YwNzk2YzA1YTg1NjQ0NzVmMmU1Yjk4YzVjYjc5OTlhMWQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaW5zdGFsbGF0aW9uLWFkbWluLXByb3RvY29sLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjYzA2YTgyMDViM2I3YmM0MWNiMjQ2NDUwNzUxOWUwYzZmMmJiMzJmOGQ3Y2Q3ZWU5MjE5YjRjZGU2OWMxNmE5IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2JpbGxpbmctbW9kZS5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJmNjFjODMxZmVkYTkxMDk5NGI1ZDI5ODYyYmMyNGZjMGQ0YjdiMmU3Y2ExN2Q4MjNjMzVjYmFhZWNkZTdlOTllIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvbWFrZS1saW5rLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjE5OTk5ZjRlNmZhZjBhZjdjMzRmZTQ5YWQ0NDQ0MmU5MDlmNjE1YzJkYTE1ZmE5NTBkZjFkNTNmYTNjNmIwMjciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaWRlLXByb3RvY29sLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOGJjM2M4YTIxNTAwMmFhZmM5MjQ2ZmVhNTZkNmM4OGY4OTA3MjE3MWM3OTM4NmQwY2QyZDJhOTRlNmQ5NWQzZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9leHBlcmltZW50cy9jb25maWdjYXQtc2VydmVyLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjODhhNTViNjBjNDg2YTMyMzZmYTFkNTI5YWY0NThlMjJlNTMwODY4NDAyMjE3MzFjYjBjMDE5ZGIyYTQ3YTI5IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2V4cGVyaW1lbnRzL2NvbmZpZ2NhdC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhZDRmNjM2MTlmY2M5YWRhMjk4MWRjMDFjOGZmMWExODYyYmRlOWUxODAwMGZmMTU0YWNkNWYzYTI3MDBkZDExIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2hlYWRsZXNzLXdvcmtzcGFjZS1sb2cuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiN2M0YWIxNjc5ZWFjZmMyODZlOWY0YjQ0MTEzNjJjNjFlZWQyYjE5MGQ5OWJhZGNiZmQwZTUyNWQ0ZGEyYjNiZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pZGUtZnJvbnRlbmQtc2VydmljZS5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYWFhZDNmMThmYjA0OWY5YTUxM2MwYzg4MmRiNGEzYjFhOTQ4M2JlM2NlNmY0MjEzYzgwYjAxMWI1MWYyNmQzNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9hbmFseXRpY3MuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZTlmNTI0YjM4ZTkzNTc0M2UxYWE3NzQ1MGRiYzJjMzZiMWExY2VkZDA2NDVlYWI4ZWY2YWM3N2YyOGI0ODM1OSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tZW5naW5lLnNwZWMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImY1ZTY4NDI3YmFmZWU3ZWFhODUxNjlkYzM1YTFiNWU3ZGJmZTZhNjNmNTRmOWIyN2NiZDBiNjMzMTg0YzJiNWUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9wYXJzZS13b3Jrc3BhY2UtaWQuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMDJiNTJkODVkYWQxZWY4ZTkwMTIzZjc5YTk3YTNkYzViYjdmYzJhNmJlMmIzNzUzZTUyZGEzOGI2ZWU0MGI3ZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pbnN0YWxsYXRpb24tYWRtaW4tcHJvdG9jb2wuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMDcwMWU4ZWM0ZmE1YTU1NDdkMGExMjEwMzczYWFlZTA1ZmYxOTg2OWFlY2M4NTEyMGQ3ZmY4OWQwNzRiNDYyMSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2RlZmVycmVkLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImE4OGU4ZWViZmQzODkwOTkwOGUzMDhjNjA4NmJlMzRjMWRjOWFjNTM4YmEzOGY4NTVlOTAzMDFiNzQ3ODQ5MWEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9ldmVudC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI4ZmIwYmUwYzJkZDYzMWRjYzI5ZWQ3MmQwZWY4ODExOTg0MDA0YmNjZDExOWZlNmEyNDVkYTQ5NDA1NTBhNzUzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3NuYXBzaG90LXVybC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5OGNkZTU3NWRkN2YxODExNDAzNDliMjE1MTk3MTlkY2UzZmRiMTFiNjFjMjQ4OTY3MTExODMwZDQ5YWIxNjNhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9wcm94eS1mYWN0b3J5LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiODYyYTY2MjViYjYwMWQxOGI2NTI1ZmFkOGJmNzgzMjY1NTIyMmJjMTk1OGVmYzU5YzViMWE1YTBhZDg2MTgzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3NuYXBzaG90LXVybC5zcGVjLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImMyZjU2ZWUwYzc1MzljMzlmNjk3MWVlOWZhODFjMDQ1MGRmZjQ0YWEzZjAxZDY2NmM4YWQ2MjI5YmRmMzM0NjUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWNsYXNzLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYzk2YmJmNzFmOGNjMmI1N2I2YTUxN2Q0ODBhMDBhNjIxMWE1ZTgzYjE4NjQyOTYxY2EzOTE5NGI3ODIzZDdmMyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wYXltZW50LXByb3RvY29sLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWM4YTM5MDczZjZkZWY5ZmYyOWYyMGUwZjljMWQ2NGNjM2YxMTg1YTUxN2Y2YjAzNmY2NGJlMThjZTc3NWQzNCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wbGFucy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNDZjN2QxNmE3ZGNlMjgxZjQ3MWI4YTcxZGQ5YzIxOTNkYmY0ZWUzNTk2MTc4MzFiNjE3M2Q0MTA3YzhlYjcwYiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2phZWdlci1jbGllbnQtdHlwZXMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5MDFmYmY4MjdkMGIwZTgzNmI3NmVmYzc5M2FlNDU4MzlmZGIxZThhNjUyNmEzZjI3MDE2ZDU3NWU0ZjM4N2U1IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcXVldWUuc3BlYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZTJiNDI4Y2M2YTdlOWIyNTY1YzEyM2M4Yzc0NWQwOTRlMzA1MmE0MzY0MmVjZjliMjk3NDQ0YjBiZGJjMTU0NiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dhcmJhZ2UtY29sbGVjdGVkLWNhY2hlLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjY5NjE0YWE2NjViMjIxOTY2ZjFhZGI1N2UyNmFmNzViZjYxYzliNzgzMDQ2MjA1Mzg3NTQ0MGNhOGExNjk3YTciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL25vZGUvY29ubmVjdGlvbi5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzNThhZWVhNjVmZWRlNDEwZmI5YjcwNTY1OGYzZDk0MjAwOThhMjRhMTU1OTc3OWUyODBhNWNiMjRkNjM0NTQ3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3dvcmtzcGFjZS1jbGFzcy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODVjNjZlM2Y0NThmYTRiNWM2MTE1M2ZiYjhmNGU4MGZkNGU1ZGU1MjBhZTg4NGFhMTU2NTc1NDI0NjI1Y2YwOSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9ibG9ja2VkLXJlcG9zaXRvcmllcy1wcm90b2NvbC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjg1NzAzN2Y3OWMzMzI3NWIzYWU0ZmI3ZDYzZmY0NzI4ZWMxMjBjN2VjM2FhODliOWU3YWZlY2E0ODY2NGJlZmUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC90aW1ldXRpbC5zcGVjLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjMxYzVkZjlkOTk0OTJmY2FiOTQzNzY5OTY3NTJmMTE3NTkzZDYzNTFmMDZlZWEwMWY3N2RlMWYxYTdjMjU4NDAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9uaWNlLWdycGMuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMTdmNDcxNTlhNWYwNGZiZDg3ZTYwZTRlMDUzMTlkYTc2N2I0YWUyYzRjZGM2NmNjZjBlNDBjNGM5YTcyOGQ0OCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dhcmJhZ2UtY29sbGVjdGVkLWNhY2hlLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiNGQ3NmUyNTlkMDQ3ZmRiMTQ0OTE1OGJiNGRlYTdhNTZlMmIzMjUwOGE1MTgxYTU3Njg3ZDhlMjk2MjkzNDhlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2luZGV4LmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImQ0M2RjYzdiNDMyNDc3ODM1NWQxZjMzOWNhYmFhZDg2YjZhZDEzZGM2ZjI2ZTM4ODlkOGU0YTkzYTE4MDdkNjMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbGljZW5zZS1wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYTVmMWE2NWQ4MzM3NmUwMDMzMjgyNGUzYTNkODgzYTYxOTk3ZjUxNzgwOWM1M2E1MWQ0OTU3NzZiMWQ1MzEzMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL25pY2UtZ3JwYy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3YThkZDc3ZGU5YWUxYWVkYzlmMTk2YTc0ZjFlNDg2YzAwZjFkNmUzZWU0YzI4ZGZmOTQ1MWRhYjdjMWY0NGVmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3BheW1lbnQtcHJvdG9jb2wuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjc3YzNhZmUzNGViZWRhYzMyNTQ5YzQxMWRhZTAwMTJjYzg4YjIzY2JmNjk4MWUzNDExNjUwMDI2NzcyZmViZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvaGFuZGxlci5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3YTk3N2UwNTkzMzhmNzE1ZGY3MTU3MGRlYWZlOWMyNzlmNzg0MDAwZWZlOGVkOTQxMzNmMWM2NzhkMWJhZGM3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2V4cGVyaW1lbnRzL2Fsd2F5cy1kZWZhdWx0LmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOTIzYTI5NmNiMmU4ZDBkYWU3ZGYxNjE1YjQ4MjFiMjRjYjhlOWRmMDhiZDk3MzE3YzE3NjUzYzliZDJlZmI4OSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tZW5naW5lLnNwZWMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjAxMDM5ZGRiYjc2ZjJiNjliYTI0OWMxMjUyMWFiMjllNDdhYTk5MmM4ZWIwNWViMGUxNzczMTU3ZTlmODk4NyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9leHBlcmltZW50cy90eXBlcy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImRhMmQyYTdjMDZlN2JkODA3OTc0NTUxMDU1NzRjMjRiOGI1MzFhY2NlMjIwM2U0NjViNjhhYWZmYWMzYThhNTYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2Jyb3dzZXIvd2luZG93LWNvbm5lY3Rpb24uZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3ODY3ODhkYzhkYzljMDJkNGQ0NDI3YTZmNjJmNGM3MTg5NjI1YTA3MWE0YjBjOTUyYzhjM2JlZTA4YjU4NjE4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3BsYW5zLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjJmNzRlNGYyYzZlYzNkMmE5YmUxZTgwNTg3Yjc4NDVmYTZlMmQ3NjMxODg2MmFiMTEyZjA5NDAzOGVmNTM1YjMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjk1ZjIzZTZmZThjNTMwNGE4NTU1ODFmNGQzZmQ2YTI0MTdiY2FjODAwY2YwNjhmMmFiYTkzYWIwODEwNTM1MTkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9hc3luYy1pdGVyYXRvci5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhOGM2MDIzNWNhMTMwZTlkMjA2OGI1YTk4ZDk3MWE4ODY2NjQwOGI3Y2QxNjAzNDdkMWMyYTUwZWUxNGViNDFlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZXZlbnQuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5OTE1NzI0Yzg4NDQ0Zjc4NDA5ZmI4ZDhiZjNmOTg4ZjU2YWNiN2M0YmUyNzVmZjhjMzEyYjFkMjc4NmEwZTIzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvc2tpcC1pZi5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2NzUzNjViNDI5M2M3NzQzY2E1NGZhNDg0YjA2ZGViNjc3YjVmZGI1ZGNjNGI4Y2Q2OGRlYTE2NjZhNmMzMjFhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2Vudi5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjE1YzdmY2E0NDE4ODU1OGY0ZTQ4NzZiNGI0ODYzMTUzMzA4M2M5N2Q5N2Q1NzcwODRmMDk5ZTBlMmM4NGMxYiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2FuYWx5dGljcy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjc0NDI0NzlmYTUzMTZlZmY2MDk2OTU2OTc3NmM3ZjE3N2VhYmE3MDAwNzA4ZTFhOGViY2VjMGI0YzFmOWZkNTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaW5kZXguanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWZjMGNlMzJmNGUwZmI4Y2JmZDNkNzEyM2JhMjU1YTUyZWZjZTcwMTQ0ZGZmNjFlNzU2MjI0OTY4OGI0NmQ2YSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dpdHBvZC1ob3N0LXVybC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYzliZWQxZDVmN2RiNjMxYjg5NjczODA0MDRmMTI0OTAzNmFhZjI0YjcxZjM1ZWE0NmQ0YTk0MTZkY2RhOGQ3ZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wYXltZW50LXByb3RvY29sLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjdmMmQ0NjczOGI5MTczZDNiNDNmYzMyZTMyMGFhZjE3YmRmZWQyNWRkOTk2NGNmMTc0MDkyNTIxY2RkYmIyOWYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9zZW1hcGhvcmUuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjY0ZTc4NDQ2M2EwZWYwMWQxYjliYzE5MWI3Y2UyMTEzYzEzZjkyZTgyYmEwMTQzZTJhYjJjMDU0MWJhZjI1YSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tc2VydmljZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImYyNTkwODQyZGQ3NjdlZjkwOTU3NmJiYWI4MTEwNWY1MDQ1OTRiNDZlY2JhOTJkNmJmZmRkYTBlNjZmMGUxMDciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvc25hcHNob3QtdXJsLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0MDUzNGQ1NTg5ZTVmYjc4NTdlODQ1NGUyNjM2Nzk2NGNmODAxMzg2ZDFmYjhmYzA1MTVjZTJlNDFiMTA5ZThlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcXVldWUuc3BlYy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImY0YmFkMjQ4Njk1M2VkYTFkNTZiNWE2Y2VjOWRhMWUzMmJlYWM1NGEwNGUxYTBjMzQzNDE2MWM0YTc2MDA1OTQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYWNjb3VudGluZy1wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZmE3NzM2NzEwNTg2YjA5Mjk2ZGJmYzk2NmFhNjZlMDAyNTlhNGU4MzNhMTEwYTg2NWQxZWZhMjhlODk5ZDFkZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RyYWNpbmcuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNTM2NTk2YmZmYWFlNGNjMTRmMGVkMmE1ZjkwYWY5MWFjODljZDhjMmYyZWVjMzA3MjczNWQwOTAzZjY4OTA3MCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RpbWV1dGlsLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZlMTQzM2Y4NTM0YzUxNDZiZTA1MTk3ODc2NzRmNTllOGEyZmI5OWRlNmUxOTNiMDcxMTljNTU5MDA2MDE3NTkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC93b3Jrc3BhY2UtcG9ydC1hdXRoZW50aWNhdGlvbi5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImI1NjljNmQ3NWFhNDgzNWIyOTIwN2JmZWI1ZTJjMzkzZGMyYTVkYzUzZGYxNGQ1YzVlYTAzOTQ4OGZiNjAyNGMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9jYW5jZWxhYmxlLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZWRmNWJjNTM5MGJkMzlmNGZhMjRjMWRjOGU1NmM2NWE1NWIxYzUzYWQ4N2NhYmMwNTZlZjJhNGQwY2ZkYzI2OCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3F1ZXVlLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZDliYWJjNWI0OTM2MDM5NzVkODhkYWZkZWM0ZWI5MTVmNTUxNGQ4ZjBhMjZiZjRkZjBiNjhiMDUwZTJiMzU2MyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9pZGUtZnJvbnRlbmQtc2VydmljZS5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyNzA5YjJjZDQwN2Q3MzQwNGU1YmI3NTdmMzRhNTIxMWU5Mzk4NzhiNDRkYTJkZjk0MjJmZWFhODY1YWVhYjU4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvbG9nZ2luZy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjM5YWQ0ZDg5OWNlNTg4YTBlYTVhNDFjY2IxNjk0ODQ1NWE4M2YwNDU5YWZmNzRiNTI2Y2ZmZDQ0NDRhMzY1YzAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvYWx3YXlzLWRlZmF1bHQuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMWE5MmIxZjFmMzY4YjVlMzg0OTExMjgyMDJlYjMxNzM4MDVlY2JmOGI2NDhiMzg5MDA5MWZhZjNjN2U1MDY2OCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2xvZ2dpbmcuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyOTY2MTcxNjA1YmUzNDRkZTc3YzJjOTM4ZTQ2ZTQxMWViZTM3MWJkMmI5ZTg4ZDFhNzRlZmIxOTIyOTQ5OWY3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdGltZXV0aWwuc3BlYy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjE1MmVmYzkxYmUyOGQ2Mjc3ZjQ3NDAxOTQ0MGMyNmZmYTcxYTNhYzgyOWZjN2Y5OTM4ZWU1YzA4OWZjOTI5OGUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kaXNwb3NhYmxlLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImFlOTkxNGY3YjJkMmMxZjg0YjliMDk4ODVhYTEzNzFiMDg3YzE2YjE3N2Q4NGY0ZDFjNjA0ZjJhNWE0YzgwOWYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWNsYXNzLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjEwZjU2MDI5NTI3YjNiNjRlNWY2MGEyMjI0NTMzYWZmOTZiOGI0NDYzODVhNWVkNWQ1MjQzMjU3M2ExZGU1ZjQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9nZW5lcmF0ZS13b3Jrc3BhY2UtaWQuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNGY4ZDQxMTYxMWIwYjIxNDRiOWQ5MTEyYjFhZGQ5YjQwMzIzOWZjNDg5YzQzOTIzMGJjYTYyYzgwNjVlZTQzZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dlbmVyYXRlLXdvcmtzcGFjZS1pZC5zcGVjLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0ODFkODAxMDcyM2Q4NDIyMGFlY2E4ZWM0MjRmMjYwZTIwMWU0MmQwODZkZDBhNzc0NjBmOTFiOGUxMTI3YWQzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2JpbGxpbmctbW9kZS5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjODkyODNlZjdjZjdiYTM1M2ExMWZmNzllZDZjMGU0YTRjOWM1MmNkODdiMWUwNzUxYTZkMDMxODU3ZWIzOWY4IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3BsYW5zLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjk1YTRlZGEyNGVhMDk2ZTc4YjNlYjU3MmI4YzY4NmNkNjU3NzI0NTY0YWRmMDc4NDU0NzFjZTc5OGEyZWQ3NTUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvdHlwZXMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWQ0ZmIzNWFhMmIwZDY4NmIyODM5NWI1ZTQzNTFkMGEwM2EwYjFjM2Q4YWIxNmViMWQ2ZWNmOTNkZjE3NDNkOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMDAzOWZlYjYwNDEwNjZjMzQ0NTExY2VmMzVjYzllMjZjOWUwOTkyYTFiNzEzZDE5N2Q2MDY0MTkwZWY2ZjYwNCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9naXRwb2QtZmlsZS1wYXJzZXIuc3BlYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMTViOGExODM2ZmFjMDRmYzdhMzg2MDhmMjQ0NGJiODZmMzBlNDJjZTJiZDhiMjhmN2MxNWVhZWI0NWMyN2NiMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9leHBlcmltZW50cy9hbHdheXMtZGVmYXVsdC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMTQ3ZjZmNzczNzg2YjA3NjBhY2UzMzc3OWZkNjFhYThjZWUzMjBmNjc5MTY1OGEyNzZhMzQ0YzNkNmMzMjllZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wbGFucy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImRjYjljNTc2ZmJhZjhiZjZjZjgzNWVmOTk4ZjA4YzMwNTBjNzVmYmU2OGVmYTIwMjAyZmRhODMxOTYzMDJiYjIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZ2l0cG9kLWZpbGUtcGFyc2VyLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImI5NjFkMzA1MDMyZTE1N2FiNmUzYmJlMzdiNDFhYzRmMWQ0MzBlYzUyMTM2N2YwYThmMjI4ZWEzZTk3YzAyMzciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd2ViaG9vay1ldmVudC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiNzY3ZTMxNDRiYzBhZGU5ZThmNzY2OGRhNDNmNDMxY2NjMTEyNTVmNWJhZTU2YjkyMGY0NTVjMjk4NjQ3YWUxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdGltZXV0aWwuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjk5NDIyMzU4NmNhNThiMzNhYzUzYTE1ODZkNzg1NGFjYjM3MjY2MzlhYzNlYTYzZWQ0ZmJkMTIxOTk1NWM3Y2IiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9nZW5lcmF0ZS13b3Jrc3BhY2UtaWQuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOGYyODhlZTAxOGQ3MmUyNmI4ZTI3NTU2MTQ2NzBkZDhhMmU1MmRlZDE0YzM1NTM4ZjI5NTgwMmY2YzQ5Y2EyZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9hbmFseXRpY3MuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyYTZkMDJmNjJhMGRiNzA1OTAzMGRhYzc3NGUxMGY1NzczNWQ4M2RjNzAyMWU5NzdlNTg1NGQwMGFmY2IyMzczIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FuYWx5dGljcy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNDRmYWQ3M2Q1OWQ4NTQyYmM1OTBkYzNlZGM0NjAyN2RiYjEyOGZlZjNhM2E5ODZjZDIxYWY5Y2ZmZDA1ZTQwZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90ZWFtLXN1YnNjcmlwdGlvbi1wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYjY5MTY0ZWRkMjYxN2FjNjA5M2YyNDc1OTMxOWQxYWI4ZmUwYTBhYTE3ZWY3MjkwZGQ1ZDhiYWFlOTc5ZDhhZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9saWNlbnNlLXByb3RvY29sLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImY0ZWFmMDllMjVjZGI0NjAzOWNmZDA2ZjZjYTExZjkzYWYwN2NiZmZiNmMzZjZmZjlhOTU0ODk2NWFjZTA0NjIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvYWx3YXlzLWRlZmF1bHQuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMTU0NTM1NTFkNzBiMjY3M2QwYjUzMGI5NzFjMTMzZDQ5ZmQ1MWVlMWVhMzFlMDZmMDMzYjRjMzI0MmUyMTdhMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2RlYnVnLWFwcC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjczZTA3MjJlZGJlYTJiMTJmMDlmNjJhNGQzM2JlMmMzMmZiYmMyM2U2ZWI4ODBiMzc0N2M2MTE5YjRlZjA1NzQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kZWVwLXBhcnRpYWwuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5NjRhMjkzMWMxNzkzZGRlYTVhODZmMjU3NmNmYmU0M2IzMmFlMDIwZjZkYTk1OGFlNGY2OTA1ZjlmNTFmMjEwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9icm93c2VyL2Nvbm5lY3Rpb24uZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMDFmYWY3YTcwOWE5YTgyYjg1YWZiYzYwNzQ0YWViZGI1YzVjOTJkOWY5ZTA4NDk2YmM0NmUwNWE1N2U5NGMyZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3BhcnNlLXdvcmtzcGFjZS1pZC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjdlZWMyMGIxYmFiMjAyYjY1ZjYyMDkxYjlkNWNjN2U1OTUxZmM3MjQzZTVkNzM0ZDEzN2VmMGVkOTNkOGJjNyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90ZWFtLXN1YnNjcmlwdGlvbi1wcm90b2NvbC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjlmMThlZmUwOGJkN2FiNTRlZGI3NTk2MjliOGU2ODc5OGQyNGIzNTEzMjRjNmM3ZWY1ZjRiYjEwNzc3ZTQxOTkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvbWVzc2FnaW5nL2Vycm9yLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImIxNjViOGJlMDMxNDQxMTBmYWFiNjllYjcxODQ1OWI0M2ZjOGEzODg2NzQ1OGI4ZTQ1NzgyNTY1MmI5MjZmZDUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaW5kZXguZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjZTYwNGNkOTE2Y2MwMTY5NWIyZDMwMDA4ODRkYzA1MTZkNDIyYTBkYzY1NjE5MzQ3Yzk2N2MyNmIxZmU5ZWRlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGlzcG9zYWJsZS5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZGYwZDc5NzRkYWYzMjUxYTQ1MDY2NjU3NTk5YTA2NDE5ZWIwZGU1NmU3MDE5MWU0ZDM1YTU0MDFiYjU1ZDY2NCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9zbmFwc2hvdC11cmwuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI4YmM4NGY1MTUxM2I0NTExNzU5ZTI3ODQ1NjM0MDFjY2M5NzYyOTVlOTc1NGM4Y2Y1MDRkYzg1MDg3MjA2MWIyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2luZGV4LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzOWE4ZTU5YmM2YjQwNTBjNzVjZTgzNjI5NTJjYjk3Yzk2OTU0OTY2OTExNTNmYmNhMTE3OTY3YTg4NmE4OTYxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3Byb3RvY29sLnNwZWMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjUzMTY5MjYxNGJiYTZiYjQyZmJkMWU3ZTA3OWM5YjBjMTA5OTg2NmY3OGRiZWIzMzA2NjU1N2ZkY2VjYmJmYjkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9hbmFseXRpY3MuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMGJhNWJkNjE0OTM0OWY3NTExNWUyNzQ4YzU5OWZkMGZmZDU2YTE1Yzk4Zjg1NjlhNjZjNDZkOThjYjU3ZGVhYiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvZXJyb3IuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjg1MWE4OWVkOWQ3NjI2OWMyZDY3MGEzNDM5OWQ0OGZhMjIxNGEzZDhiYmNlYWVjOTgyMGEwZDViMTJmYmU5ZmUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYWNjb3VudGluZy1wcm90b2NvbC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyNTAwYmM3NGM4OGNmZDE3MGY2ODczMzMwYjE3YWViNTNkMzRkM2JmZjNiZGQyNmVmZTFkMGU2Y2VkODBmOWQyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcXVldWUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODZkYzc3OTUxMTA3MThkNmVhN2IxOWUxYjAzMTdjNzYwZjNkZGY2NzJjMTE5ZDc3NzhjOWYyMmI5YThhMGY2NCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9vc3MtYWxsb3dsaXN0LmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjcyMmYzM2E3NDc3NTQwMTg1YTYxZWFlNjg3ZjI5ZjFkM2NhYWNmYTQ0MmM4YTRkZDEzYjZlZjc0NWUwZmY4YWEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLnNwZWMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOWY5NDg1YTgwZWM0MzJiNTIxMzM0ODVjZTc4YzE2ZTJlM2M1ZmRkZjA5MWNiODg4ZTA1ZDQzZThlYTQ4YzNkZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dlbmVyYXRlLXdvcmtzcGFjZS1pZC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWIwN2NkMjhiY2Q2Y2I1NDg2NzFmMzJkMjU0OWE2YzQ2MTJjYmM0YjMzOGM4ZmI5ZGY3NDAzMDczOGRjMjI3MyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93b3Jrc3BhY2UtY2x1c3Rlci5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2YzBlMDgzOWJlMDBmZWM4NjBkNGRiNzJkZWRhMTU1MmUzNzU2YzgxYWY3OTNhM2U1ODM2YjczNTFkMzcyNGFiIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvamFlZ2VyLWNsaWVudC10eXBlcy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOWQ4NzVhM2M2ZjQ5N2VkMWY5ZTNiOTgwMDE5NDVmOGJkMTk3YjE5OTlmYjZhZDg3ZTE3OWQ0NzdkMjJmZDc4MSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9hdHRyaWJ1dGlvbi5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwODM2NjEzNjU5ZDdkYWNlNGVjMTk5MDM2OWJhMDhkOGQwNzljNjA5ZTE0NDkyZWM2MjZmYWJlNzlkYzY2MTliIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ3JwYy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI1ODdkMzhjNzliZDAxMzJmOTdkYWExMzJlZDg5MTlkMDRlNDExZTI1MzBhMzQ1NDU2ZGE2OTI4ZmViNWJjMjA0IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdGltZXV0aWwuc3BlYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNzBjNWU1MjMzODRlNzViNDM4YzVkYTk3YjllOTI1OTNlYzlkM2RiNmIzNzk3N2M0NmE0OTgxZjc0ZDYzMGQyMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dlbmVyYXRlLXdvcmtzcGFjZS1pZC5zcGVjLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjAwNjdkYzgzMGIyYTVkZTBkNTJlNzRlMzIzODEyN2U2NzlhOTM2ZTBhNzcwYWFjYmNlNjYxNjJiMjIwMDMxNGIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9jYW5jZWxhYmxlLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjJhYTg2OWVkMzk4MGI2YTBmN2NjOTcyMDdjZTkxZjI5ZjdjZGMyZTM3NzI2YjNiNTcxN2QwZjYyYzJlMTA1MTgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9wYXJzZS13b3Jrc3BhY2UtaWQuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxMjY1ZjY4MzMzZWI0Mjg3MmYyYTI0NjRlMDE2NGRlNWJmOGZmYzQ0NjFkYTNlYzFhMTlkYTQ1NDllNDcyMjZhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FkbWluLXByb3RvY29sLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2JkOGMzOGRiYmIxYWNmMjhjMzg3MWZmNDcwYTQ3MzgwNDE0ZTRkN2Q1MjYyYzg4YjQ4MmEyYjY1NTA0MWNjMiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2RhdGUtdGltZS5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZhNDJhZWI1NzNhMTZjNGFkZmUwMzNiY2E5MWU2YTJkMjJlNjUzNGNiYTBkOGUxYzFjNDc0ZmM4NjZiN2FjZDgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvcGVybWlzc2lvbi5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImU4Zjk1MDAwYTk0ZTM5Njk4MTBmYjAwNGVhOTU0ZTYzZWY1MTAwMzgxNDFjNGRhZTBkYTE0NjQ5ZjJjYjIxNTQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC93b3Jrc3BhY2UtcG9ydC1hdXRoZW50aWNhdGlvbi5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiYWYwODcxMDU3ODEwMDYwYjdlZDc1ZDYwM2I0NGUxMTJmZmRmMWE0NDQ2NWU1YWEyMGUyNzIzZDI1YWQwMjYzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL21lc3NhZ2luZy9wcm94eS1mYWN0b3J5LmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImZmYzdiNmFiY2EwNjNlYzI1YTBiYjYyMTk3ZWQyZTk0MDFlMGQ4ZDJiNDcxZTg1MGI2MWZjMmE3YzY3MGFiZTkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kZWZlcnJlZC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjYwYTJkNjI2ODAxNTkyY2JiYjNkMzEzMTAzNzI2MWI2YjUxYjVjZmMyYzI5NTRlMjNjNTJlZDFkMzBkYjQ2MjEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLnNwZWMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImIwNTExODJhODAwMmFhMmZiYjk3OWJhZjRhOWMzNmJkMThjMGZjYzE3YmU1NDBkOWNjOTk0NzYyYzIwMzUyN2UiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZXhwZXJpbWVudHMvY29uZmlnY2F0LmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2JiYjI3MmE4NzEyOTA1MjRhZmRhOGI4ZThhOWYwNjhhYWRkOTBmM2JjNGFmYmY0MDU2YTM1ODNmMzdiZjY2ZSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2VuY3J5cHRpb24tc2VydmljZS5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMGI1MTI5MThkNjBhZDIxZDE2ZGQxYzc3ZDc4ZDVmNDlmYzRlYmMwMmM0MGMyYTMzOTFhNGNlYjg0NDg5MmVlZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9jb250ZXh0LXVybC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImY3Y2MwYTY4MjVmMzk2NGM3MDgwOWU5YzY5MmIyMjU1ZmIzM2I2ZGI1MGQ1NTAxNTg2YmI3ZDkyMTAzODJjNzYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvcGVybWlzc2lvbi5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyYmU5MjkyZGQ3NjQ0NjFhNWRlZDJlMjczYzEyYmM3MGQ5ZWNkYWI2ZmUwZWIxZTgxNjQ2OWY3ZGY2MDVmZTM0IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3dzcmVhZHkuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNWM4ZTQxY2QxMDAzZGI4YWIzZjExZGYxNTdlZmIyNmY0MzA2ODQ2ZTQ1MGJiYWEyMzMyMDAxZWQ3MTIxZWEzZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93c3JlYWR5LmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODMyMDcyYTkwNThkZjQxMjNhMWNmYzJmMjZlZTc2ODA2NDdmMzQ1ZTU3OGNhZTkzZGQzNWI4MTNjOTRlZGU5ZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3dvcmtzcGFjZS1wb3J0LWF1dGhlbnRpY2F0aW9uLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImViMzM4YWIwNmJiNDNkYWMxODY2NDZkOTgyYjY4YjViMWViZjRjODQ4MzhlOWFlY2QzNjVmYjdlMmQ2ZGM3ZjMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZW5jcnlwdGlvbi9lbmNyeXB0aW9uLWVuZ2luZS5zcGVjLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImU0YThlZDRjYjg4NzI2MDQ4MjNiMWY3NjljNDA2MTA3NjQzZDg2ZGVjN2RlNDQ5ZTMwMWJiNDYxNWFmZDVmMTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvY29udGV4dC11cmwuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImM0MzEwN2UyMTYzNDVkMTQ3MmJjYzQwYjA3Yjk5N2E1ODE3Zjk5ZTk1YWNhMWE2YTAxMGU0OTAxYmI3OTdiYTUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9ncnBjLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxMWQ2NzAxMTEyYzg3NzcxMjM5ZjE3NzQ4MjU2ZDRmYjcyYzg3MTYxM2I4MTBlOTdhNjFlMzEyNmFjNWZiMmQ1IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3RlYW1zLXByb2plY3RzLXByb3RvY29sLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImRmOTIxMTRkN2RlZTYxZTU2ZjRmZGFiZDkyYmUyOGI0NjlkN2ExMGNlODFlNjQyZDNjZTRmNTI1NTJjOGY2MmYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9jYW5jZWxhYmxlLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImYzYmFjYjY4MmM5MGNmODBlZWEyMmVlYjg3NDI5MDk5MTAzMzUwY2IzZTZlZTlhZGMzOWZjMTA1OTg1MzhhOWIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvY29udGV4dC11cmwuc3BlYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmE3NjE1YWFhN2M3ZmE0MzQ2ZWNjNzY5OWQyYTBjZjA4MzQ2Y2RmOWM2ZTFhODM4MmVlZmZhNDJkMTk2NzM5OSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9ibG9ja2VkLXJlcG9zaXRvcmllcy1wcm90b2NvbC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwYjkwODhjODg5MjM0NTcyZmI4NGExZDc5N2JjMzIzN2YwYmUwMWVmNjFmOWVjMzdkOWFkMGE3OTk3MjQ4MmU3IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcGFyc2Utd29ya3NwYWNlLWlkLnNwZWMuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2RhOTVhYjBkMmJmMjRkNzQ0NmZhNTM4YjExZDI5ZDQ5ZDA5NTkwOWMxOTgxZWYyNzhlYjZjNzNhNTE2OGNhNyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3F1ZXVlLnNwZWMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMWIxOWJhNWY2ZDk5M2ZjY2Q0N2VjNmE2Nzg4MDU1MzM2YTQyZTY5MjJmYTRjYmU4OWMyYjQ3NjVmMzIyMWIwYiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9hZG1pbi1wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2YyMzYxYWYwYzhkNjhkNWM3ZDNlNGQ3MGUyZDE1Njg5ZGM4YjVjNGU0NzIyZTdhMDE3ZWE0YTE5OWI5NDA0OSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvYnJvd3Nlci93aW5kb3ctY29ubmVjdGlvbi5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiN2ZkNTIxYjcwYjc3M2ZiODQ4ZDEyNjlkYzc1NWFhNGE2NjkzZGEyYjE4M2E4NjgxNDYzZTU0YWFkMDgyMzBmNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvYnJvd3Nlci9jb25uZWN0aW9uLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlZGNkNDY1YWM4M2QxMjBiN2UxNjFmN2RjYmM4ZjZkZTNmNzFjOGFlYWIwYjY0NzMzYWYzOTFjYjFhOTgxYTFjIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24vY29udGFpbmVyLW1vZHVsZS5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYTRmZDExZjE3MzIwNmE2YzE5Yjc2NWQ4ZjQ4ZDE0M2M1MDVhOGNkNzNiMGMzZDA5NTY4MGI4NGQ3ZjhmNzcxYyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9wZXJtaXNzaW9uLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjMwZjYwZTI0NDdmNTgzYTZhYjhmNDkzZmVjZmE4ZTk5ZjgzYTEyYzNlMzg5ZGZkYTVkYzdiNDMwMThlMGRiZTUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9naXRwb2QtY29va2llLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjM2YjZlOTJlYTU4NWMxOGZjYTllNDUyMmU1ZmViNmQ1MjVkNTE0NDhmNjk3YzExNzhhYjVmYjZmNTcwYjJmZWUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9naXRwb2QtaG9zdC11cmwuc3BlYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMThkZDU2YzIzNWQwNTQ2NWFkZmRiMDk3NGRmZTg5M2NmNTQwZDQ5NzQ5OWVmNDc3OGMyOTc3MDFhMDM3NGNkNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RyYWNpbmcuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwZGE1YzEyYjRmN2QwZmM3ZDI4YjJhMGE2MDdkNDI0Yzk2NGE1MmU3OTY0ZjkyZDI5Nzk1N2Q5ZTViNTQ2YzExIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2NvbnRleHQtdXJsLnNwZWMuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJlMWM0ZjcyZGFjNjdjNGNlZjg1MjQyNzgxYzkxOGQzZGY0MzIwY2VhMjA2YWVkNzE4ZjFlNmMxZDRmMGU2MDIxIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24va2V5LXByb3ZpZGVyLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2FlZWFlZTg4Y2Q3YjE2Mjk3Nzk0OGM1NGNhNzNiOTMxY2RmODNmMDA5ZjFiN2UwZTNiNjYzYTYxMjAyY2FjOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL25pY2UtZ3JwYy5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMWYzOGM2MzkxZTY4N2QzOWQ1ODc2NTNlNGYyYzhjNWRjOTVkZTk0MzczNGNjZDc4MGQ3OTJhZDc0Nzk1MjhiNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9leHBlcmltZW50cy9jb25maWdjYXQuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImNkZDc1MTcxM2QyYzNkYjk0YzUxZDliZWIyYTZiYWJkMzlmY2EyNTgzZmE3ZWMwYTVjYWU0ZTA0MDQ1Y2E1MDEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvaGVhZGxlc3Mtd29ya3NwYWNlLWxvZy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjBhMWJhYmJkZTEwOWNmMjA1ZGFmODA0NDlkMTU0YWU1Y2Y1NGU2ZWExNjU5MTRkNjZmMGQ2YzY0NWM2ZmE4NmQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWluc3RhbmNlLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImI3ZmQ1OTgzYzA3NTgzZWY2YjRlOGQ5YTgyZmIzNzBlNDE3NDRhYzk0NWViNTM1OTMyNTFhMDhmYjU4MmI0NmEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9nZW5lcmF0ZS13b3Jrc3BhY2UtaWQuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI3MWE3MzM4NDdlNTdmNTgzMjk0ZDc1NWRmMDhjYTkyODM3OGZhZDQxYTlhZTMxODgyZmQ2ZjViNGM2MDBlMTcyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ2l0cG9kLWhvc3QtdXJsLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImNjNWNkN2E4MzdhYmU0Y2NhZDJmOTM5ZGUzMDU5YzgyOWMzOGU0NGY1OTc1MzlkZDZjMmY5Y2ExNzRmNmQ5NGUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvYXV0aC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjg4OTIxMTZjMjI2MjA2MmI5ZTljMzI0MDBkN2M4YWFlYjc2ZDYyN2U4Nzk0OWY4NTU0YWY4ZWYwZjdmZWNkYyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvbm9kZS9jb25uZWN0aW9uLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjM2VkZjFlYmUwNWQzZTBiMzAzZTcwMTAzNzhiZWFhZTdkZjdjMTUwMjgxZjk5ZDk4NGFiNzliM2EyNmE3YWNhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdGltZXV0aWwuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyYmU0ODkwNWNhYWRhNzUxMWNjZDI2M2JjM2ZiNTgwYTg1OTZkMGJhYTNkZmY2MThjMDU1N2RiYTE1ZWZiM2U2IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcXVldWUuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0M2U2ZmMyMTQxODMyZWZiZGUxYjA5YTg2NzQ4NzY3NTVjMTgyNDI4YzU5ZjVjNGQwZjQzNDUzMTQ0NDU5ZjZjIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvd29ya3NwYWNlLXBvcnQtYXV0aGVudGljYXRpb24uanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZhYjg5MjNhNDFkNTVlZDY2MjBmYzdhMjNjNDE5OWRjNWIzODk5OTA4MjRmZjQyNzM2NjI4NmU4N2VhNzk4ZmMiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9zZW1hcGhvcmUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYTRmNmQ5ZjcxYTk3OTljNzk3MTg1N2RhZGE5YzZkODNmNTg0ZTc0MDg5NGUwNTg5ZjZjYjZlOTZiY2YxODFmOSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dpdHBvZC1jb29raWUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImFiYjVhZTU5OTg4ZTM1MzA5YzNlNGRiYmEyN2ZmYzhjMjMwZjliOWRkMTNhMmFjOWRmZTVlMmNmMWVkYmYwMzgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd2ViaG9vay1ldmVudC5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwNmExMWUxNmJkMjI4MzQyNjA2NDEyNTZhMGFiNTJkOGRmMjA1ZTUxYWM0Nzc3YjUwYjg2ZTFmMDA2ZDlkOWRmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2V4cGVyaW1lbnRzL2NvbmZpZ2NhdC1zZXJ2ZXIuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0YTMwNWNhZmYxZDVlYjgxODJmNTA3NjhhOGI2NWEyN2I1YzM1MzQ5NzYyMjM3ZWI1MTE5YjkwYTc2NDg3NWZkIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZ3JwYy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImVmMzBlODg2NWYxZTg2OWZiNDA0ZmVjYjk4MDQ1ZjY2NTc4YmEwODYzM2M2Mjg2ZmI1NjQ3ZDFhNDlmYjg0ZTEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9sb2dnaW5nLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJkYWE3YjUyY2E2YmUxNDEyZTIwZTcyYTlmYmM4MzgzNGQ1YWYxMTUwNjgyMTNiYTRkNjc2OGEzOTRlMzVhNGFkIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2FkbWluLXByb3RvY29sLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImZkMjU2NmI5M2M3ZjEwNzVjMGI0NTJmYjcyYzYyZjM2MjQwMTY2ZWQxODE4YTY0ZGI0YWIyZWFmZGI4NmFlZWYiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvd29ya3NwYWNlLWNsdXN0ZXIuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzODU5OGZkMzIwMjNhNDVlODlkNjFiNWUwNThjNDQ2OTI0ODRkZmJjMDE3ZWQyZjA4NjA5MDViNGFmMzBjZmY5IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2dpdHBvZC1maWxlLXBhcnNlci5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjkzMTE5ODI0MDQ3ZmEzNjliMmI4Y2U2MGFiYjMxZjVkZjYxZDc4MDgxNDU4ODU1YmY0ODM4MzZhYjRkZmEwZDciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9kaXNwb3NhYmxlLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZDgwOGZkMjc4MTBkY2E2ZjliMDY0NTZiZjEzMGVlMGViMWUyNzI2MmY2Y2EwYjYzNGYyZDUyYTU2NzZlYjc2YiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RyYWNpbmcuc3BlYy5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJjYWFlN2MxNzk3ZWNiZjNhZDU1MzZhMzE4MTI5MjRmMjUwM2YyODQ0Y2ZkYzBlNGNhNDc1NDI0ZDVlNzY2YzEwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvc2tpcC1pZi5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiMzQ5OWE0NzE4YjcxZTVmMTg3NThjNjQ4OGEyZDNhNWZmZGRiMTc4N2QzN2FiZDlkMWI3Yjc0NmNlMGEwN2NhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3NuYXBzaG90LXVybC5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImNiYjhiNjBlNmY1YTdjYmE1ZWY1YjU3NTNhMzZmZGM2OGFhMzJjZmQyZTllYzI1OTkwYzNjZjY4NWQ0MTA4NDkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZW5jcnlwdGlvbi9rZXktcHJvdmlkZXIuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiOWNhOWNhMWJmYTU0ZGQ2NWRkOTIyZjk3MDAyMjg1NmRiODJiOTQ4ZjI0MGI3NmViYTBiMTZiZGU2MDA4OTdmOCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi93c3JlYWR5LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI2ZTg4N2ZhMzY5ZjhkNjg1NTVjM2E1ZjJlYmU2ODEyMGNhN2QzNTJkMzNhZTc2ZGFhNmM5Yjg5MTAwZjIwMmYyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2lkZS1wcm90b2NvbC5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjVkYmE3YmUxOGQwMWU4ZjRlN2Y3YzZiYjAxNTcyNDdiMWVkZDY4YWQ2N2MwNzIyYTU4YzBlNWRlYzkxN2M1ZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2dpdHBvZC1jb29raWUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjQ3MWZmMTU0ZjVjYjkxZTNhNTk4ZmZkNWFjMzYxYTE3MTZmYzcwYzhiZmQ5MDEyZDVkMTkyNGM1MmMzNDlkNCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9iaWxsaW5nLW1vZGUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjZmZGMyMzRhMWVhYzliZTI1MmVhMWZkYzVjZTlhYTRjM2ZkMzRiMzVkZWIwMTcyN2UyZWM2OWIzODE4OWNkYjgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9naXRwb2QtaG9zdC11cmwuc3BlYy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIyMTIxNzY0ZjBhMWU2NTAyNzA2MTc3MjhhMDI1MmZlODQ0Y2NkZjRjNmNkOTM5MTlmZTg4N2ZiN2NiYWEzNzhlIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvZGVlcC1wYXJ0aWFsLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjA1ZTY4MTEzODI3MDUxY2RkOTE5NTdkMjlhZTYzYTgxZWQwZTg0N2JhODkxOWM3YmY4Zjk3ZTliZjY5YTBkNGEiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9hc3luYy1pdGVyYXRvci5qcyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIxMTNiMGU2NTk1YjRjMGY5NWM1MzhiMTVmNTVjNTIyZjQxODQyZjYxYTQ4ZWZmODg1ZDRjODA5ZGJhOTcwODgyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3RlYW0tc3Vic2NyaXB0aW9uLXByb3RvY29sLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImVlMGExZTZhZDQzOTcxZDBiMDQ0Yzg3MmEwMGQzY2EzNTRiOWUwZGY0N2I2NTUzMTBkOTk0NTYxZWYzMjhiYzciCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9zZW1hcGhvcmUuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImFiOWVhNWIwOWNhNzllYjJhNmZmYmQzZTQzM2I4ZmI5MzQ0NTQwMTA2ZTMxMGM4YTg2OTI1MzdhZWExMTk1NzIiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvY29udGV4dC11cmwuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmYwNGI5ZDM3ZGQ1NTFmMzEwYmIxYWNjZmNhZGM1ZGVjZmRiM2U1YmNiZWY0YTVmMjNkN2ViZTcxZjg1NGIzNiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9jb250ZXh0LXVybC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwNjExYmYzNTNhZDBmYjMxYzJiYjQ3ODQ1NDc5YWU5YWRlY2FkMjk0Zjc1ZDI3NzE3NTAzMmE3ZjExMTRlNDY1IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2hlYWRsZXNzLXdvcmtzcGFjZS1sb2cuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNzA5NzQwN2IzODdiNDIzYTkxODllMGZjZTc0Mjk5NzY5MDAyYmI1YjdkMzVkY2E0ZGM2YzNjNWIxZTc3MTYyZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9lbmNyeXB0aW9uL2NvbnRhaW5lci1tb2R1bGUuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYmRlYzIyODg0ZmNiZTEyZWU0ODNkOTNjZWQyMmUyYjk4YmU2MTNhNWYwOWY3NjI1Zjc2MTMxNzUxZTIzMjk1OCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9tZXNzYWdpbmcvYnJvd3Nlci93aW5kb3ctY29ubmVjdGlvbi5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIwZWJhMmM1NjA2YTk1NTk2ZmQwMjE0ZDg1MzIzM2RiZmI3YTRlNDM1Y2UwY2NmODZlNWJkNjA4Y2E3ZDQ0MjExIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2Vudi5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjNhNmFkZmY1NGZjNTI5NTMwNTI2YTcwYjNiZGJiZjczYzdlZjRlMWFkMDJmNDExZDY3OWMyZGNlOTE5ZDJkZDUiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC90cmFjaW5nLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI0MjFiYjE2NGUyYWRlYzYyZjAwY2VjYTQyODUxODAyZDc0ODQ2MWM4YzA2MTgyNTQ3OTJjYjgwODg3MzQ3YjAzIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2dpdHBvZC1zZXJ2aWNlLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiMmRkZDJkNmIwNGRjMDcwMTMwMmIzNTMxZTJkMGNjY2MzYTBmNmY1YTAxNmRiYTNiZDZkM2NmMjA4YTRlMmUwIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2F1dGguZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI1YjM5OGRlNDljYjRkZDI1ZWQyMzczNjgzMzFkN2M0MjVkYjUwY2I4ZTZhZGJkODI4ZWUzZjFmMGMwMTNlYzQ5IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvbWFrZS1saW5rLmQudHMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNmE4YmJmOGRjZTljZjUyMjc2OTFhMDZhNGJlN2ViNzU2ZjgxZDE4NDVlMWExOGU1ODA5YzYyMzg5ZTg0OGIzOSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi90eXBpbmdzL2dsb2JhbHMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjNkNjcxOTIwN2JmOWE4OTY0NDk3Y2NmODQ1ZjRiOTk1ZjcxMjE2ZjJlNzc4NGU5NjAyZWJmNWYzNDllNjRiZDAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9wYXJzZS13b3Jrc3BhY2UtaWQuc3BlYy5kLnRzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjM4NmY0MGI4N2Y4ZGJhYjA1OGY1NWFmYTI1MjVmY2UyNzk1N2UyNWM4NDQyYjEwNzk0ZmU2ZDU2MGVhYTk1YTgiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9yZXBlYXQuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiODcwMmY0ODkyMGU5MWEyMWVjZWFmOTMzZTczMTUzZGE1MTEwZmMyN2E2OTNlZWE1MDJhZDZiODkyMWYwZGE5YiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2RlYnVnLWFwcC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJiN2FlZTEwMjJjZmVlY2FiNjliYTBjNWIwOTE1NmI3MGFmMzA4MzM2NzQ5Nzg2ZDUzY2VjZGRjMDM5MzlhYTRhIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2V4cGVyaW1lbnRzL3R5cGVzLmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI4MGRkMjZhYzA5OWZmODI0OTM3NTc4NjkxMGZmYzJmZDVhNDRhNzE1NGQ2ZGYwNmE3YTMzMzg2M2Y1ZTQ3MTVmIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2dpdHBvZC1maWxlLXBhcnNlci5zcGVjLmpzIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjg1OWU5ZGRiZGY0NTg3OGFkM2UyYzFmYTE4MWMwMGY1N2YyZTk5OGUxYWQxMmE1NDQ0YTU5MTRjZGIzZTJiMzAiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9xdWV1ZS5qcy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjEzMDM5ZTVmZWExOTAyOTEwNjA1YTM2Y2IyZjVkM2FmMDRlMGU3ZTUwMzM2OTJlM2QxZDllZmE1NzM1ZWNmMyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3RpbWV1dGlsLmQudHMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImE5NzNkMWU0MDFhYWMzZjA4M2M2NTA4NmQzMWFiNTEwZGY1YTM5MzkxMzc1MjUwZDc4ZThjMDY5YTMwNWU5YjkiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvZ2l0cG9kLWZpbGUtcGFyc2VyLnNwZWMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiNjQyYzJjYmQxY2MzYjBjNWZkMDBjODE4ODczMjFlYjc5M2U0YzE2YTYzMGU2OGMyMmRjZDBjMWY2ZDYzYmRhNyIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9vc3MtYWxsb3dsaXN0LmpzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICI5MTAwMmFlMzRkZjIxMzFmNjAzZGVjMmZjMTMzOTY4OTc5NWExMGI3YWFhNGVmNjc0ZWIyOGRlZTdlMWIzZDFiIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvcGFyc2Utd29ya3NwYWNlLWlkLnNwZWMuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogImFkZGI5OGI2ZmExNjU4NzNjZDAzYTA2N2UwNDk5YTJkMWE5ZDRiZmNiNmFkYzQ4ZmRmNDkyMTYyMDM4MjAxNTQiCiAgICAgIH0KICAgIH0sCiAgICB7CiAgICAgICJuYW1lIjogIi9saWIvdXRpbC9yZXBlYXQuZC50cyIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJhN2NhNjAzNGI5NTdmZTI4NWY3NmYxY2RjNDUyMDU5NDhkYmY5YTczMDExOGMzMjkyNjBmYWQzODQ5NTdmZTg2IgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2F1dGguanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiYzJkZDY3MDU2NGMwNDJlZTAzZmE4MDJiMGE3ZTNkYjM2YTM4MDFiMzdkYWYzYzA4NTEyODBiMzViNzE4OTJjYSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL3JlcGVhdC5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICJkOTkwNTkxNWNjYTk1YTE5ZjU0ZmRmZWRmNzdlZGIyMTI2NWU2MDRmZThiYjY1NGZmZmU4N2IzMjMwZWE3ODcyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL3V0aWwvdHJhY2luZy5kLnRzLm1hcCIsCiAgICAgICJkaWdlc3QiOiB7CiAgICAgICAgInNoYTI1NiI6ICIzNTcwNzhlZTBlMzEzOTAxOWQzMmEzYTA4OGQ5YmVjYzAwNTgzMWM1MjA0MjljZjI2NmE3YmM1ODFlZGIzNTAyIgogICAgICB9CiAgICB9LAogICAgewogICAgICAibmFtZSI6ICIvbGliL2VuY3J5cHRpb24vZW5jcnlwdGlvbi1lbmdpbmUuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiY2Q0ZDFmZDhiMTNiYjEwMGFlZTY3NTNhZDZlZGEwZDRhN2Q3Yzg4NGE1YWQyNzk0MjQwZTM0NzMyNTI4NzJhNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9naXRwb2QtZmlsZS1wYXJzZXIuanMiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMzA4NGNlMzNiMGNjN2FmMGZjMWI0ZDVkM2RjZDY2NjI3Y2M1ZTAyY2UyN2E0ZGRmYTBlMDk4NTEzZTIzMjU1ZCIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2Rpc3Bvc2FibGUuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiMjg1Zjg1ZTk5NDg3ZDRmZDhhZWQ5NjZmYjIzMTc5OWUyYTllOWZmNDhlOTRjYmVmY2Y2YzNlZWI3N2NiOTBkNSIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi91dGlsL2phZWdlci1jbGllbnQtdHlwZXMuZC50cy5tYXAiLAogICAgICAiZGlnZXN0IjogewogICAgICAgICJzaGEyNTYiOiAiZjZmZDE0OTEwNTc2MzU0NmRjMzZhOTg2N2UzNDczMTkwMzhlZWZlNDIyOTk2ZjY1Y2FjN2YxYzFiZmZlYmZkZiIKICAgICAgfQogICAgfSwKICAgIHsKICAgICAgIm5hbWUiOiAiL2xpYi9zbmFwc2hvdC11cmwuanMubWFwIiwKICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAic2hhMjU2IjogIjVhYjhkMDhhMzdiNDYyNzY4MGI5MjY2YWNiMTlhNTY4ZWRlMzgyNmFlNDNmZmUxMjY0ODRiNjlmNzhlNjc1N2YiCiAgICAgIH0KICAgIH0KICBdLAogICJwcmVkaWNhdGUiOiB7CiAgICAiYnVpbGRlciI6IHsKICAgICAgImlkIjogImdpdGh1Yi5jb20vZ2l0cG9kLWlvL2xlZXdheTowLjMuMS0xMmNhNThkQHNoYTI1NjoxNTUzMTkwNzE5OGZiODllN2VmZTU1MmZlOGMzYWFhZmUxNzI0M2Y5MjJjYTkzYTc1MzBlYjdhMWIyZDM1YjI0IgogICAgfSwKICAgICJyZWNpcGUiOiB7CiAgICAgICJ0eXBlIjogImh0dHBzOi8vZ2l0aHViLmNvbS9naXRwb2QtaW8vbGVld2F5L2J1aWxkQHlhcm46NyIsCiAgICAgICJkZWZpbmVkSW5NYXRlcmlhbCI6IDAsCiAgICAgICJlbnRyeVBvaW50IjogImNvbXBvbmVudHMvZ2l0cG9kLXByb3RvY29sOmxpYiIsCiAgICAgICJhcmd1bWVudHMiOiBbCiAgICAgICAgImxlZXdheSIsCiAgICAgICAgImJ1aWxkIiwKICAgICAgICAiLS1kb2NrZXItYnVpbGQtb3B0aW9ucyIsCiAgICAgICAgIm5ldHdvcms9aG9zdCIsCiAgICAgICAgIi0td2VyZnQ9dHJ1ZSIsCiAgICAgICAgIi1jIiwKICAgICAgICAicmVtb3RlIiwKICAgICAgICAiLS1kb250LXJldGFnIiwKICAgICAgICAiLS1jb3ZlcmFnZS1vdXRwdXQtcGF0aD0vdG1wL3RtcC5Ia1BQRmphOVVuIiwKICAgICAgICAiLUR2ZXJzaW9uPXByb3RlY3RlZC1zZWNyZXRzLjAiLAogICAgICAgICItRHJlbW92ZVNvdXJjZXM9ZmFsc2UiLAogICAgICAgICItRGltYWdlUmVwb0Jhc2U9ZXUuZ2NyLmlvL2dpdHBvZC1jb3JlLWRldi9idWlsZCIsCiAgICAgICAgIi1EbG9jYWxBcHBWZXJzaW9uPXVua25vd24iLAogICAgICAgICItRFNFR01FTlRfSU9fVE9LRU49WDNiTmF0WVB1ZElKY0N6NmtGbFRuNTRwcnVtUUFxR2giLAogICAgICAgICItRFJFUExJQ0FURURfQVBJX1RPS0VOPWRlYTEwYzhmYjU4NzU1ZmQ1MWFiOTk2Y2NiYWFiODk2MmY1ZTkwNmFiNDQxMmFlNjc3OTk2ZWE3NGU4NWFlMzUiLAogICAgICAgICItRFJFUExJQ0FURURfQVBQPWdpdHBvZCIsCiAgICAgICAgIi1EbnBtUHVibGlzaFRyaWdnZXI9ZmFsc2UiCiAgICAgIF0sCiAgICAgICJlbnZpcm9ubWVudCI6IHsKICAgICAgICAibWFuaWZlc3QiOiB7CiAgICAgICAgICAiYXJjaCI6ICJhbWQ2NCIsCiAgICAgICAgICAiZ28iOiAiZ28gdmVyc2lvbiBnbzEuMTkuMiBsaW51eC9hbWQ2NCIsCiAgICAgICAgICAibm9kZSI6ICJ2MTYuMTYuMCIsCiAgICAgICAgICAib3MiOiAibGludXgiLAogICAgICAgICAgInlhcm4iOiAiMS4yMi4xOSIKICAgICAgICB9CiAgICAgIH0KICAgIH0sCiAgICAibWV0YWRhdGEiOiB7CiAgICAgICJidWlsZFN0YXJ0ZWRPbiI6ICIyMDIyLTEwLTIxVDEwOjM4OjExLjY5MjAxMjE2OVoiLAogICAgICAiYnVpbGRGaW5pc2hlZE9uIjogIjIwMjItMTAtMjFUMTA6Mzg6NTQuMTgxNjgzMjY1WiIsCiAgICAgICJjb21wbGV0ZW5lc3MiOiB7CiAgICAgICAgImFyZ3VtZW50cyI6IHRydWUsCiAgICAgICAgImVudmlyb25tZW50IjogZmFsc2UsCiAgICAgICAgIm1hdGVyaWFscyI6IHRydWUKICAgICAgfSwKICAgICAgInJlcHJvZHVjaWJsZSI6IGZhbHNlCiAgICB9LAogICAgIm1hdGVyaWFscyI6IFsKICAgICAgewogICAgICAgICJ1cmkiOiAiZ2l0K2h0dHBzOi8vZ2l0aHViLmNvbS9naXRwb2QtaW8vZ2l0cG9kLmdpdCIsCiAgICAgICAgImRpZ2VzdCI6IHsKICAgICAgICAgICJzaGEyNTYiOiAiZDIzY2Q1YTIxYzJkM2I5OWYwYmZlYzIzMjEzYzMyZTIzZjUwYzg2MSIKICAgICAgICB9CiAgICAgIH0KICAgIF0KICB9Cn0=","signatures":null}
|
|
2
|
+
|